hyperframes 0.8.185 → 0.8.188
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{add-ODTNPRGG.js → add-UORF6235.js} +12 -12
- package/dist/{animatedGifPrep-PEP5GWOJ.js → animatedGifPrep-23MLSEXF.js} +7 -7
- package/dist/api.js +16 -16
- package/dist/{asset-EZG42XPA.js → asset-DOKDVHCW.js} +2 -2
- package/dist/{assetCataloger-OHAJFCA7.js → assetCataloger-CD27MHEY.js} +7 -7
- package/dist/audio-3NMZHNNU.js +2317 -0
- package/dist/{auth-VP2SIZFN.js → auth-AWKTSKGC.js} +1 -1
- package/dist/{autoUpdate-RVSUX4SS.js → autoUpdate-VBOI4CNU.js} +2 -2
- package/dist/{backgroundChecks-LEHK74NS.js → backgroundChecks-S4R454YU.js} +3 -3
- package/dist/backgroundChecksWorker.js +3 -3
- package/dist/{batchRender-3X6CL7PK.js → batchRender-EGPYNDHK.js} +4 -4
- package/dist/{beats-66VPQLSC.js → beats-YENEQUOA.js} +5 -5
- package/dist/{benchmark-PBJVTOJP.js → benchmark-THSJIQG7.js} +9 -9
- package/dist/{browser-TPL5MWGC.js → browser-BDMVQ6WJ.js} +3 -3
- package/dist/{bundleWithLocalizedFonts-67MLTHKM.js → bundleWithLocalizedFonts-3QG722YD.js} +2 -2
- package/dist/{capture-YYRE7EV3.js → capture-WM4XDMFX.js} +2 -2
- package/dist/{capture-F3GNMRZM.js → capture-Z6BGCTK3.js} +10 -10
- package/dist/{captureCompositionFrame-PXV2ISHD.js → captureCompositionFrame-EMHSAIBZ.js} +15 -11
- package/dist/{catalog-6SDD3OHF.js → catalog-7TV6UNCG.js} +12 -12
- package/dist/{catch-up-CWIVA5VG.js → catch-up-63IUDZRW.js} +4 -4
- package/dist/{check-YQ6REK2S.js → check-7RHZL4DV.js} +32 -32
- package/dist/{checkBrowser-5XZCBRXM.js → checkBrowser-PF56CT5X.js} +29 -29
- package/dist/{chunk-TAX2ZJAP.js → chunk-2DHCCBCN.js} +9 -9
- package/dist/{chunk-K73RJB23.js → chunk-2WUDFZCR.js} +2 -2
- package/dist/{chunk-4CTNDBE3.js → chunk-44QWRPGE.js} +2 -2
- package/dist/{chunk-X6L6MD5B.js → chunk-46VJ2UAV.js} +6 -6
- package/dist/{chunk-BRAPBUPQ.js → chunk-57XL23DE.js} +1 -1
- package/dist/{chunk-J36JVBLR.js → chunk-5C7R55BJ.js} +1 -1
- package/dist/{chunk-SKYPMHQC.js → chunk-5DPV7LU3.js} +3 -3
- package/dist/{chunk-D42NU3DZ.js → chunk-5OZI55AC.js} +1 -1
- package/dist/{chunk-5UBZPG74.js → chunk-6A45RKAK.js} +1 -1
- package/dist/{chunk-I7QMXZSB.js → chunk-6HYPEIH7.js} +2 -2
- package/dist/{chunk-KQ4JEJLF.js → chunk-6HZ7TSJJ.js} +14 -8
- package/dist/{chunk-6ASIXMFP.js → chunk-6OWNUXTU.js} +1 -1
- package/dist/{chunk-WQLKDL35.js → chunk-6Q5CFUAP.js} +1 -1
- package/dist/{chunk-G2UANIDX.js → chunk-B2P4JRUJ.js} +1 -1
- package/dist/chunk-BPX7LZG6.js +3896 -0
- package/dist/{chunk-EMAWIZ54.js → chunk-BU4HRISA.js} +58 -21
- package/dist/{chunk-ESBMUZXZ.js → chunk-BWEZDN6U.js} +1 -1
- package/dist/{chunk-5UDRPPN2.js → chunk-CE7EQUBV.js} +8 -5
- package/dist/{chunk-UPR3MU6Z.js → chunk-DA4TQFSF.js} +1 -1
- package/dist/{chunk-HDIRZGK4.js → chunk-DG4ME554.js} +1 -1
- package/dist/{chunk-RTBSA3EA.js → chunk-DLFAVRF3.js} +1 -1
- package/dist/{chunk-TTVHYD5R.js → chunk-EI7FP7F3.js} +1 -1
- package/dist/{chunk-RUEGYANA.js → chunk-FOLMMQF3.js} +11 -11
- package/dist/{chunk-5GUKZRQN.js → chunk-FSTLXRIN.js} +1 -1
- package/dist/{chunk-CX3USX23.js → chunk-FWVILDOZ.js} +3 -3
- package/dist/{chunk-IVEFOUZI.js → chunk-GYBPAKBM.js} +2287 -2264
- package/dist/{chunk-HXUTX5GR.js → chunk-HKUZCSNZ.js} +2 -2
- package/dist/{chunk-PMMQRJDE.js → chunk-HPQSUPR7.js} +1 -1
- package/dist/{chunk-7RAY4WZP.js → chunk-I7C5GUEQ.js} +3 -3
- package/dist/{chunk-55YELV7B.js → chunk-IA2IDJAG.js} +1 -1
- package/dist/{chunk-7PS6RVWD.js → chunk-IJYR4TTA.js} +1 -1
- package/dist/{chunk-6RIZY7OP.js → chunk-JWRT2IXO.js} +1 -1
- package/dist/{chunk-2TAS5O4P.js → chunk-JYC53CW4.js} +108 -20
- package/dist/{chunk-IDFNKFPL.js → chunk-KDBPZOXK.js} +18 -7
- package/dist/{chunk-ISTRDGIX.js → chunk-KWSEIVR6.js} +1 -1
- package/dist/{chunk-IPDKZ5IN.js → chunk-KY7375C4.js} +1 -1
- package/dist/{chunk-F3OPUWQX.js → chunk-L243NE72.js} +7 -7
- package/dist/{chunk-H6UY725W.js → chunk-LWY3PFJ7.js} +2 -2
- package/dist/{chunk-6GPR3G3C.js → chunk-LWYZN7HS.js} +1 -1
- package/dist/{chunk-OAG47RE6.js → chunk-MJKUCR3C.js} +1 -1
- package/dist/{chunk-SQVRXHOW.js → chunk-MTPPEEYZ.js} +3 -3
- package/dist/{chunk-TOI35GN2.js → chunk-MXXX6WVC.js} +1 -1
- package/dist/{chunk-BH7TTIPN.js → chunk-NFHRGHCJ.js} +5 -5
- package/dist/{chunk-IDGLGXPA.js → chunk-NFLZNSUZ.js} +1 -1
- package/dist/{chunk-K2ZKXTVL.js → chunk-NMOTNNP2.js} +1 -1
- package/dist/{chunk-LYKSTRAY.js → chunk-OJOZXWLC.js} +3 -3
- package/dist/{chunk-FX6RUJUY.js → chunk-OKSYDQHY.js} +3 -3
- package/dist/{chunk-H5SM5PJI.js → chunk-PMXR3IUH.js} +1 -1
- package/dist/{chunk-A6QCO474.js → chunk-PQLFJYGP.js} +5 -5
- package/dist/{chunk-PFD25NAC.js → chunk-RIJHDTM5.js} +4 -0
- package/dist/{chunk-Q47FAYYK.js → chunk-SMF6YAUL.js} +9 -11
- package/dist/{chunk-EMSDWBG3.js → chunk-T3OXKSRG.js} +2 -2
- package/dist/{chunk-VHZ6DL3M.js → chunk-TMK4Q7JA.js} +10 -7
- package/dist/{chunk-Q447CX26.js → chunk-TSFA2Y5C.js} +60 -47
- package/dist/{chunk-XWC7CNPY.js → chunk-UF6RCYA5.js} +1 -1
- package/dist/{chunk-I45HL3VP.js → chunk-V6NM4KL3.js} +3 -3
- package/dist/{chunk-FFJ5TDRD.js → chunk-VHBBV5DH.js} +10 -3
- package/dist/{chunk-HHSJJFVM.js → chunk-W2KGJHUL.js} +2 -2
- package/dist/{chunk-37CNYTQQ.js → chunk-X556BGL7.js} +1 -1
- package/dist/{chunk-UJKQWGFF.js → chunk-X7HBSTCZ.js} +8 -0
- package/dist/{chunk-CML25PAF.js → chunk-XNFDDVJS.js} +27 -3
- package/dist/{chunk-J5XEZ24I.js → chunk-XPVN4R66.js} +3 -3
- package/dist/{chunk-I3IH5MV5.js → chunk-YCW345M4.js} +222 -118
- package/dist/{chunk-KROXPHXX.js → chunk-YV4WT7CJ.js} +5 -9
- package/dist/{chunk-PHMBMOXF.js → chunk-YZ73IPW2.js} +48 -4
- package/dist/{clean-7J6ZCCGV.js → clean-43O47OTN.js} +16 -16
- package/dist/cli.js +53 -53
- package/dist/{cloud-7IJCJCDD.js → cloud-ZFWKFFSU.js} +4 -4
- package/dist/{cloudrun-UNZRIIDB.js → cloudrun-XBBESKEU.js} +5 -5
- package/dist/{compare-Q7VW5JZT.js → compare-OW4ELTFZ.js} +26 -26
- package/dist/{compiler-KPHYGFXL.js → compiler-23MT6CX6.js} +4 -4
- package/dist/{component-UUBREJKN.js → component-SDV7LWH6.js} +3 -3
- package/dist/{compositions-T4FTKIDP.js → compositions-DI5QZCEK.js} +11 -11
- package/dist/{delete-WZQF2IIA.js → delete-QY2NSQ2G.js} +4 -4
- package/dist/deploy-MJVC4EFY.js +300 -0
- package/dist/{destroy-4B5HW5FH.js → destroy-SSPAKADI.js} +13 -3
- package/dist/{dist-LM7AVHOU.js → dist-JH32CBQL.js} +1 -1
- package/dist/{dist-ULGTPSU4.js → dist-RFTGYT26.js} +7 -5
- package/dist/{doctor-VSNGRKXJ.js → doctor-7ZOECPHR.js} +11 -11
- package/dist/{events-E63YBUL2.js → events-WIX4JM2K.js} +3 -3
- package/dist/{events-CRW2DYUT.js → events-XVQQGECC.js} +2 -2
- package/dist/{feedback-OSZWVR6N.js → feedback-GBYBR6UO.js} +7 -7
- package/dist/{ffmpeg-JLH3Z7G7.js → ffmpeg-QGQBYMO3.js} +7 -7
- package/dist/{figma-2BQNNR53.js → figma-2CMKUGJQ.js} +3 -3
- package/dist/fontLocalizeCli.js +9 -9
- package/dist/{get-P2XI53QW.js → get-RWCNUOHU.js} +4 -4
- package/dist/{gpuPolicy-NTKQJY75.js → gpuPolicy-UGWSN32D.js} +7 -7
- package/dist/{grade-compare-OYASIHIB.js → grade-compare-J2MX7HZL.js} +27 -27
- package/dist/{help-HK6K2N4G.js → help-SH3ID7MV.js} +1 -1
- package/dist/{history-JMTYKLXW.js → history-C7V5QH7J.js} +6 -6
- package/dist/hyperframe.manifest.json +1 -1
- package/dist/hyperframe.runtime.iife.js +70 -69
- package/dist/hyperframes-player.global.js +3 -3
- package/dist/{info-AW7CIVRE.js → info-ZN3JJ3IN.js} +8 -8
- package/dist/{init-6KIDG4LB.js → init-KRNGSRNH.js} +65 -47
- package/dist/{inspect-B7BLYMRZ.js → inspect-AYDZXTX7.js} +27 -27
- package/dist/{installer-ZP2LQZUQ.js → installer-N6AIK6XQ.js} +5 -5
- package/dist/{keyframes-EQ36A5JE.js → keyframes-2RFUCEDK.js} +6 -6
- package/dist/{lambda-E6VURLIS.js → lambda-VW3CF6EE.js} +20 -13
- package/dist/{layout-XYC64QQQ.js → layout-OE64APE7.js} +27 -27
- package/dist/{lint-V5DJYWBX.js → lint-UXJTX5WS.js} +7 -7
- package/dist/{lintProject-JATQKR64.js → lintProject-XM3DLUKG.js} +1 -1
- package/dist/{list-RUGVRTVD.js → list-KOL6JPZJ.js} +7 -7
- package/dist/{login-ZTKGKXGS.js → login-MAQXOPDG.js} +4 -4
- package/dist/{manager-JUP7PM6N.js → manager-3LZKRK7P.js} +8 -8
- package/dist/{media-treatment-VIUPK4OR.js → media-treatment-COLSXXQJ.js} +13 -13
- package/dist/{models-LJS2HBOZ.js → models-XXWMGOD7.js} +11 -11
- package/dist/{motionShot-3UAXZ7SN.js → motionShot-RECBNTBZ.js} +14 -14
- package/dist/{normalize-4UDISLPL.js → normalize-3AYFSN2F.js} +1 -1
- package/dist/{normalize-audio-SBYI4YIH.js → normalize-audio-LKVGHZWR.js} +6 -6
- package/dist/{open-S27TUD3A.js → open-UEQVSRKH.js} +12 -12
- package/dist/{parakeetRunner-ETLMLJ4L.js → parakeetRunner-QVPCZ36U.js} +12 -12
- package/dist/{pipeline-I2M22M24.js → pipeline-5VSMQBKW.js} +8 -8
- package/dist/{play-COJU6VJK.js → play-MNEABYN4.js} +19 -19
- package/dist/{policies-XXNGXWHV.js → policies-MBWGLMWB.js} +17 -0
- package/dist/{preflight-FZ24NCHH.js → preflight-ONJ74DWQ.js} +8 -8
- package/dist/{present-YAHKLC5D.js → present-GQ24GTYX.js} +15 -15
- package/dist/{preview-KQOEU5YE.js → preview-ALL7O4RG.js} +18 -18
- package/dist/{producer-DTNNG4T6.js → producer-43L2UDF6.js} +1 -1
- package/dist/{progress-NHJIHAAG.js → progress-PX3PVAIM.js} +5 -3
- package/dist/{projectConfig-4A76VYUP.js → projectConfig-VJXUXK7U.js} +7 -7
- package/dist/{publication-SQPMC2W3.js → publication-L6E5NTFV.js} +3 -3
- package/dist/{publish-QUEJBGGT.js → publish-LCLBJEPR.js} +9 -9
- package/dist/{remove-background-FP2ETAQH.js → remove-background-PDL4KPR4.js} +9 -9
- package/dist/{render-P664SMC7.js → render-7HVKJ7T4.js} +9 -7
- package/dist/{render-BIFIL4U6.js → render-J33ZHR6I.js} +44 -28
- package/dist/{render-GQFXJWLV.js → render-OPCRLZVL.js} +31 -22
- package/dist/{render-batch-ZCPMYH6Z.js → render-batch-ZHHIGXU3.js} +5 -5
- package/dist/renderSetupWorker.js +1 -1
- package/dist/{resolver-BUC2GFZQ.js → resolver-KNNIMMBM.js} +5 -5
- package/dist/{sam-MC24SZHC.js → sam-FHJ7IL7T.js} +3 -1
- package/dist/{sherpa-HFT6XEP6.js → sherpa-GI62H3H5.js} +11 -11
- package/dist/{sites-MAVH57MO.js → sites-5PWHAMEG.js} +1 -1
- package/dist/skills/hyperframes/references/motion.md +1 -0
- package/dist/{skills-3WEVO3NU.js → skills-IUTD6VQO.js} +5 -5
- package/dist/{skillsUpdateCheck-BFPWFOK5.js → skillsUpdateCheck-XZE7MJG6.js} +3 -3
- package/dist/{snapshot-WDQ6S7CJ.js → snapshot-XEXTHLZP.js} +37 -34
- package/dist/{src-NPR2JZOJ.js → src-6STRGCDC.js} +8 -8
- package/dist/{src-RZ574OKP.js → src-ZPIV4PGX.js} +10 -6
- package/dist/{state-ORRPOLMQ.js → state-JPNCCXAV.js} +3 -1
- package/dist/{staticProjectServer-FTGTEZI4.js → staticProjectServer-HJLT7MHE.js} +15 -15
- package/dist/studio/assets/{hyperframes-player-CoOdf435.js → hyperframes-player-DwWIKKZG.js} +1 -1
- package/dist/studio/assets/{index-CR85xg2x.js → index-Cjwz7_13.js} +1 -1
- package/dist/studio/assets/{index-C_6rTpaB.js → index-M8lEpS0Q.js} +131 -131
- package/dist/studio/index.html +1 -1
- package/dist/{studio-api-TAWB7B23.js → studio-api-OBHEB5ND.js} +9 -9
- package/dist/{studioServer-HRQGJTBU.js → studioServer-KRIZFYML.js} +47 -46
- package/dist/{telemetry-QZ6HJF4W.js → telemetry-N5OOVBCP.js} +3 -3
- package/dist/templates/_shared/AGENTS.md +5 -0
- package/dist/templates/_shared/CLAUDE.md +5 -0
- package/dist/{timeline-IKUEW42T.js → timeline-YUFH65OG.js} +17 -17
- package/dist/{tokens-AUGUEWHS.js → tokens-K4VYLSWJ.js} +2 -2
- package/dist/{transcribe-7734CG3N.js → transcribe-CY4CVO54.js} +17 -17
- package/dist/{transcribe-FWU6EMEO.js → transcribe-GMQXKDYN.js} +10 -10
- package/dist/{updateCheck-VIPQ3FPW.js → updateCheck-2625RXK4.js} +2 -2
- package/dist/{upgrade-4VNDQTVO.js → upgrade-6ZY5MSBQ.js} +2 -2
- package/dist/{urlDownloader-6CXL4CL7.js → urlDownloader-PVJWG7V3.js} +6 -6
- package/dist/{validate-QWCMVWID.js → validate-XSRHEE7E.js} +21 -21
- package/dist/{video-245Q5WN4.js → video-MBFHC54F.js} +7 -7
- package/dist/warmCheck.js +34 -34
- package/package.json +18 -2
- package/dist/audio-65R4T74I.js +0 -1154
- package/dist/chunk-3NPOFC43.js +0 -3805
- package/dist/deploy-JU7A3XNC.js +0 -196
|
@@ -1,34 +1,34 @@
|
|
|
1
|
-
"use strict";(()=>{var
|
|
2
|
-
`+_+
|
|
3
|
-
`+
|
|
1
|
+
"use strict";(()=>{var IA=Object.create;var Bl=Object.defineProperty;var DA=Object.getOwnPropertyDescriptor;var PA=Object.getOwnPropertyNames;var OA=Object.getPrototypeOf,HA=Object.prototype.hasOwnProperty;var GA=(e,t,n)=>t in e?Bl(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var xe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var BA=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of PA(t))!HA.call(e,o)&&o!==n&&Bl(e,o,{get:()=>t[o],enumerable:!(r=DA(t,o))||r.enumerable});return e};var UA=(e,t,n)=>(n=e!=null?IA(OA(e)):{},BA(t||!e||!e.__esModule?Bl(n,"default",{value:e,enumerable:!0}):n,e));var fe=(e,t,n)=>GA(e,typeof t!="symbol"?t+"":t,n);var T0=xe((kG,xc)=>{var de=String,C0=function(){return{isColorSupported:!1,reset:de,bold:de,dim:de,italic:de,underline:de,inverse:de,hidden:de,strikethrough:de,black:de,red:de,green:de,yellow:de,blue:de,magenta:de,cyan:de,white:de,gray:de,bgBlack:de,bgRed:de,bgGreen:de,bgYellow:de,bgBlue:de,bgMagenta:de,bgCyan:de,bgWhite:de,blackBright:de,redBright:de,greenBright:de,yellowBright:de,blueBright:de,magentaBright:de,cyanBright:de,whiteBright:de,bgBlackBright:de,bgRedBright:de,bgGreenBright:de,bgYellowBright:de,bgBlueBright:de,bgMagentaBright:de,bgCyanBright:de,bgWhiteBright:de}};xc.exports=C0();xc.exports.createColors=C0});var yc=xe(()=>{});var cs=xe((FG,k0)=>{"use strict";var R0=T0(),M0=yc(),Zo=class e extends Error{constructor(t,n,r,o,i,a){super(t),this.name="CssSyntaxError",this.reason=t,i&&(this.file=i),o&&(this.source=o),a&&(this.plugin=a),typeof n<"u"&&typeof r<"u"&&(typeof n=="number"?(this.line=n,this.column=r):(this.line=n.line,this.column=n.column,this.endLine=r.line,this.endColumn=r.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,e)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(t){if(!this.source)return"";let n=this.source;t==null&&(t=R0.isColorSupported);let r=d=>d,o=d=>d,i=d=>d;if(t){let{bold:d,gray:f,red:m}=R0.createColors(!0);o=p=>d(m(p)),r=p=>f(p),M0&&(i=p=>M0(p))}let a=n.split(/\r?\n/),l=Math.max(this.line-3,0),s=Math.min(this.line+2,a.length),c=String(s).length;return a.slice(l,s).map((d,f)=>{let m=l+1+f,p=" "+(" "+m).slice(-c)+" | ";if(m===this.line){if(d.length>160){let b=20,y=Math.max(0,this.column-b),E=Math.max(this.column+b,this.endColumn+b),v=d.slice(y,E),_=r(p.replace(/\d/g," "))+d.slice(0,Math.min(this.column-1,b-1)).replace(/[^\t]/g," ");return o(">")+r(p)+i(v)+`
|
|
2
|
+
`+_+o("^")}let x=r(p.replace(/\d/g," "))+d.slice(0,this.column-1).replace(/[^\t]/g," ");return o(">")+r(p)+i(d)+`
|
|
3
|
+
`+x+o("^")}return" "+r(p)+i(d)}).join(`
|
|
4
4
|
`)}toString(){let t=this.showSourceCode();return t&&(t=`
|
|
5
5
|
|
|
6
6
|
`+t+`
|
|
7
|
-
`),this.name+": "+this.message+t}};
|
|
7
|
+
`),this.name+": "+this.message+t}};k0.exports=Zo;Zo.default=Zo});var Sc=xe((IG,D0)=>{"use strict";var RT=/(<)(\/?style\b)/gi,MT=/(<)(!--)/g,kT=/[\t\n\f\r "#'()/;[\\\]{}]/;function Mt(e){return typeof e!="string"||!e.includes("<")?e:e.replace(RT,"\\3c $2").replace(MT,"\\3c $2")}var L0={after:`
|
|
8
8
|
`,beforeClose:`
|
|
9
9
|
`,beforeComment:`
|
|
10
10
|
`,beforeDecl:`
|
|
11
11
|
`,beforeOpen:" ",beforeRule:`
|
|
12
|
-
`,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function
|
|
13
|
-
`)){let a=this.raw(t,null,"indent");if(a.length)for(let l=0;l<
|
|
14
|
-
`)&&(n=n.replace(/[^\n]+$/,"")),!1}),n&&(n=n.replace(/\S/g,"")),n}rawBeforeComment(t,n){let r;return t.walkComments(
|
|
15
|
-
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(n,null,"beforeDecl"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeDecl(t,n){let r;return t.walkDecls(
|
|
12
|
+
`,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function LT(e){return e[0].toUpperCase()+e.slice(1)}function N0(e,t){let n="@"+t.name,r=t.params?e.rawValue(t,"params"):"",o=t.raws.afterName;return typeof o>"u"?o=r?" ":"":o===""&&r&&!kT.test(r[0])&&(o=" "),n+o+r}function NT(e){if(!e.prop.startsWith("--"))return!1;let t=e.raws.before;return typeof t>"u"||!/\S$/.test(t)}function I0(e,t,n){let r=n.nodes,o=r.length-1;for(;o>0&&r[o].type==="comment";)o-=1;let i=e.raw(n,"semicolon"),a=n.type==="document";for(let l=r.length-1;l>=0;l--){let s=r[l],c=o!==l||i;!c&&l<r.length-1&&(s.type==="atrule"&&!s.nodes||s.type==="decl"&&NT(s))&&(c=!0),t.push({document:a,node:s,semicolon:c})}}function F0(e,t,n,r){let o=e.raw(n,"between","beforeOpen");e.builder(Mt(r+o)+"{",n,"start");let i=n.nodes&&n.nodes.length,a=()=>{let l=i?e.raw(n,"after"):e.raw(n,"after","emptyBody");l&&e.builder(Mt(l)),e.builder("}",n,"end"),n.type==="rule"&&n.raws.ownSemicolon&&e.builder(Mt(n.raws.ownSemicolon),n,"end")};i?(t.push(a),I0(e,t,n)):a()}var ei=class e{constructor(t){this.builder=t}atrule(t,n){let r=N0(this,t);if(t.nodes)this.block(t,r);else{let o=(t.raws.between||"")+(n?";":"");this.builder(Mt(r+o),t)}}beforeAfter(t,n){let r;t.type==="decl"?r=this.raw(t,null,"beforeDecl"):t.type==="comment"?r=this.raw(t,null,"beforeComment"):n==="before"?r=this.raw(t,null,"beforeRule"):r=this.raw(t,null,"beforeClose");let o=t.parent,i=0;for(;o&&o.type!=="root";)i+=1,o=o.parent;if(r.includes(`
|
|
13
|
+
`)){let a=this.raw(t,null,"indent");if(a.length)for(let l=0;l<i;l++)r+=a}return r}block(t,n){let r=this.raw(t,"between","beforeOpen");this.builder(Mt(n+r)+"{",t,"start");let o;t.nodes&&t.nodes.length?(this.body(t),o=this.raw(t,"after")):o=this.raw(t,"after","emptyBody"),o&&this.builder(Mt(o)),this.builder("}",t,"end")}body(t){let n=e.prototype,r=["atrule","block","body","rule","stringify"].every(i=>this[i]===n[i]),o=[];for(I0(this,o,t);o.length>0;){let i=o.pop();if(typeof i=="function"){i();continue}let a=i.node,l=this.raw(a,"before");l&&this.builder(i.document?l:Mt(l)),r&&a.type==="rule"?F0(this,o,a,this.rawValue(a,"selector")):r&&a.type==="atrule"&&a.nodes?F0(this,o,a,N0(this,a)):this.stringify(a,i.semicolon)}}comment(t){let n=this.raw(t,"left","commentLeft"),r=this.raw(t,"right","commentRight");this.builder(Mt("/*"+n+t.text+r+"*/"),t)}decl(t,n){let r=t.raws,o=this.raw(t,"between","colon"),i=t.prop+o+this.rawValue(t,"value");t.important&&(i+=r.important||" !important"),n&&(i+=";"),this.builder(Mt(i),t)}document(t){this.body(t)}raw(t,n,r){let o;if(r||(r=n),n&&(o=t.raws[n],typeof o<"u"))return o;let i=t.parent;if(r==="before"&&(!i||i.type==="root"&&i.first===t||i&&i.type==="document"))return"";if(!i)return L0[r];let a=t.root(),l=a.rawCache||(a.rawCache={});if(typeof l[r]<"u")return l[r];if(r==="before"||r==="after")return this.beforeAfter(t,r);{let s="raw"+LT(r);this[s]?o=this[s](a,t):a.walk(c=>{if(o=c.raws[n],typeof o<"u")return!1})}return typeof o>"u"&&(o=L0[r]),l[r]=o,o}rawBeforeClose(t){let n;return t.walk(r=>{if(r.nodes&&r.nodes.length>0&&typeof r.raws.after<"u")return n=r.raws.after,n.includes(`
|
|
14
|
+
`)&&(n=n.replace(/[^\n]+$/,"")),!1}),n&&(n=n.replace(/\S/g,"")),n}rawBeforeComment(t,n){let r;return t.walkComments(o=>{if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
|
|
15
|
+
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(n,null,"beforeDecl"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeDecl(t,n){let r;return t.walkDecls(o=>{if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
|
|
16
16
|
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(n,null,"beforeRule"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeOpen(t){let n;return t.walk(r=>{if(r.type!=="decl"&&(n=r.raws.between,typeof n<"u"))return!1}),n}rawBeforeRule(t){let n;return t.walk(r=>{if(r.nodes&&(r.parent!==t||t.first!==r)&&typeof r.raws.before<"u")return n=r.raws.before,n.includes(`
|
|
17
|
-
`)&&(n=n.replace(/[^\n]+$/,"")),!1}),n&&(n=n.replace(/\S/g,"")),n}rawColon(t){let n;return t.walkDecls(r=>{if(typeof r.raws.between<"u")return n=r.raws.between.replace(/[^\s:]/g,""),!1}),n}rawEmptyBody(t){let n;return t.walk(r=>{if(r.nodes&&r.nodes.length===0&&(n=r.raws.after,typeof n<"u"))return!1}),n}rawIndent(t){if(t.raws.indent)return t.raws.indent;let n;return t.walk(r=>{let
|
|
18
|
-
`);return n=
|
|
19
|
-
`?(n=1,r+=1):n+=1}return
|
|
20
|
-
`?(n=1,r+=1):n+=1;return{column:n,line:r,offset:a}}prev(){if(!this.parent)return;let t=this.parent.index(this);return this.parent.nodes[t-1]}rangeBy(t={}){let n="document"in this.source.input?this.source.input.document:this.source.input.css,r={column:this.source.start.column,line:this.source.start.line,offset:Ht(n,this.source.start)},i=this.source.end?{column:this.source.end.column+1,line:this.source.end.line,offset:typeof this.source.end.offset=="number"?this.source.end.offset:Ht(n,this.source.end)+1}:{column:r.column+1,line:r.line,offset:r.offset+1};if(t.word){let a=n.slice(Ht(n,this.source.start),Ht(n,this.source.end)).indexOf(t.word);a!==-1&&(r=this.positionInside(a),i=this.positionInside(a+t.word.length))}else t.start?r={column:t.start.column,line:t.start.line,offset:Ht(n,t.start)}:typeof t.index=="number"&&(r=this.positionInside(t.index)),t.end?i={column:t.end.column,line:t.end.line,offset:Ht(n,t.end)}:typeof t.endIndex=="number"?i=this.positionInside(t.endIndex):typeof t.index=="number"&&(i=this.positionInside(t.index+1));return(i.line<r.line||i.line===r.line&&i.column<=r.column)&&(i={column:r.column+1,line:r.line,offset:r.offset+1}),{end:i,start:r}}raw(t,n){return new XC().raw(this,t,n)}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}replaceWith(...t){if(this.parent){let n=this,r=!1;for(let i of t)i===this?r=!0:r?(this.parent.insertAfter(n,i),n=i):this.parent.insertBefore(n,i);r||this.remove()}return this}root(){let t=this;for(;t.parent&&t.parent.type!=="document";)t=t.parent;return t}toJSON(t,n){let r=n==null;n=n||new Map;let i=[],o=[[this,i,0]];for(let l=0;l<o.length;l++){let[s,c,d]=o[l],m={};c[d]=m;for(let f in s){if(!Object.prototype.hasOwnProperty.call(s,f)||f==="parent"||f==="proxyCache")continue;let p=s[f];if(Array.isArray(p)){let y=[];m[f]=y;for(let b=0;b<p.length;b++){let g=p[b];typeof g=="object"&&g.toJSON?g.toJSON===e.prototype.toJSON?o.push([g,y,b]):y[b]=g.toJSON(null,n):y[b]=g}}else if(typeof p=="object"&&p.toJSON)p.toJSON===e.prototype.toJSON?o.push([p,m,f]):m[f]=p.toJSON(null,n);else if(f==="source"){if(p==null)continue;let y=n.get(p.input);y==null&&(y=n.size,n.set(p.input,y)),m[f]={end:p.end,inputId:y,start:p.start}}else m[f]=p}}let a=i[0];return r&&(a.inputs=[...n.keys()].map(l=>l.toJSON())),a}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}toString(t=JC){t.stringify&&(t=t.stringify);let n="";return t(this,r=>{n+=r}),n}warn(t,n,r={}){let i={node:this};for(let o in r)i[o]=r[o];return t.warn(n,i)}};h0.exports=Xi;Xi.default=Xi});var Zi=be((b2,g0)=>{"use strict";var e1=Ji(),Qi=class extends e1{constructor(t){super(t),this.type="comment"}};g0.exports=Qi;Qi.default=Qi});var to=be((x2,b0)=>{"use strict";var t1=Ji(),eo=class extends t1{get variable(){return this.prop.startsWith("--")||this.prop[0]==="$"}constructor(t){t&&typeof t.value<"u"&&typeof t.value!="string"&&(t={...t,value:String(t.value)}),super(t),this.type="decl"}};b0.exports=eo;eo.default=eo});var Zt=be((y2,w0)=>{"use strict";var y0=Zi(),S0=to(),x0=Ji(),{isClean:v0,my:E0}=Ki(),nc,A0,_0,rc;function n1(e){let t=e.slice();for(;t.length>0;){let n=t.pop();if(delete n.source,n.nodes){n.nodes=n.nodes.slice();for(let r of n.nodes)t.push(r)}}return e.slice()}function r1(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[v0]=!1,n.proxyOf.nodes)for(let r of n.proxyOf.nodes)t.push(r)}}var Gt=class e extends x0{get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}append(...t){for(let n of t){let r=this.normalize(n,this.last);for(let i of r)this.proxyOf.nodes.push(i)}return this.markDirty(),this}cleanRaws(t){let n=[this];for(;n.length>0;){let r=n.pop();if(r!==this&&r.cleanRaws!==e.prototype.cleanRaws){r.cleanRaws(t);continue}if(x0.prototype.cleanRaws.call(r,t),r.nodes)for(let i of r.nodes)n.push(i)}}each(t){if(!this.proxyOf.nodes)return;let n=this.getIterator(),r,i;for(;this.indexes[n]<this.proxyOf.nodes.length&&(r=this.indexes[n],i=t(this.proxyOf.nodes[r],r),i!==!1);)this.indexes[n]+=1;return delete this.indexes[n],i}every(t){return this.nodes.every(t)}getIterator(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;let t=this.lastEach;return this.indexes[t]=0,t}getProxyProcessor(){return{get(t,n){return n==="proxyOf"?t:t[n]?n==="each"||typeof n=="string"&&n.startsWith("walk")?(...r)=>t[n](...r.map(i=>typeof i=="function"?(o,a)=>i(o.toProxy(),a):i)):n==="every"||n==="some"?r=>t[n]((i,...o)=>r(i.toProxy(),...o)):n==="root"?()=>t.root().toProxy():n==="nodes"?t.nodes.map(r=>r.toProxy()):n==="first"||n==="last"?t[n].toProxy():t[n]:t[n]},set(t,n,r){return t[n]===r||(t[n]=r,(n==="name"||n==="params"||n==="selector")&&t.markDirty()),!0}}}index(t){return typeof t=="number"?t:(t.proxyOf&&(t=t.proxyOf),this.proxyOf.nodes.indexOf(t))}insertAfter(t,n){let r=this.index(t),i=this.normalize(n,this.proxyOf.nodes[r]).reverse();r=this.index(t);for(let a of i)this.proxyOf.nodes.splice(r+1,0,a);let o;for(let a in this.indexes)o=this.indexes[a],r<o&&(this.indexes[a]=o+i.length);return this.markDirty(),this}insertBefore(t,n){let r=this.index(t),i=r===0?"prepend":!1,o=this.normalize(n,this.proxyOf.nodes[r],i).reverse();r=this.index(t);for(let l of o)this.proxyOf.nodes.splice(r,0,l);let a;for(let l in this.indexes)a=this.indexes[l],r<=a&&(this.indexes[l]=a+o.length);return this.markDirty(),this}normalize(t,n){if(typeof t=="string")t=n1(A0(t).nodes);else if(typeof t>"u")t=[];else if(Array.isArray(t)){t=t.slice(0);for(let i of t)i.parent&&i.parent.removeChild(i,"ignore")}else if(t.type==="root"&&this.type!=="document"){t=t.nodes.slice(0);for(let i of t)i.parent&&i.parent.removeChild(i,"ignore")}else if(t.type)t=[t];else if(t.prop){if(typeof t.value>"u")throw new Error("Value field is missed in node creation");typeof t.value!="string"&&(t.value=String(t.value)),t=[new S0(t)]}else if(t.selector||t.selectors)t=[new rc(t)];else if(t.name)t=[new nc(t)];else if(t.text)t=[new y0(t)];else throw new Error("Unknown node type in node creation");return t.map(i=>(i[E0]||e.rebuild(i),i=i.proxyOf,i.parent&&i.parent.removeChild(i),i[v0]&&r1(i),i.raws||(i.raws={}),typeof i.raws.before>"u"&&n&&typeof n.raws.before<"u"&&(i.raws.before=n.raws.before.replace(/\S/g,"")),i.parent=this.proxyOf,i))}prepend(...t){t=t.reverse();for(let n of t){let r=this.normalize(n,this.first,"prepend").reverse();for(let i of r)this.proxyOf.nodes.unshift(i);for(let i in this.indexes)this.indexes[i]=this.indexes[i]+r.length}return this.markDirty(),this}push(t){return t.parent=this,this.proxyOf.nodes.push(t),this}removeAll(){for(let t of this.proxyOf.nodes)t.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}removeChild(t){t=this.index(t),this.proxyOf.nodes[t].parent=void 0,this.proxyOf.nodes.splice(t,1);let n;for(let r in this.indexes)n=this.indexes[r],n>=t&&(this.indexes[r]=n-1);return this.markDirty(),this}replaceValues(t,n,r){return r||(r=n,n={}),this.walkDecls(i=>{n.props&&!n.props.includes(i.prop)||n.fast&&!i.value.includes(n.fast)||(i.value=i.value.replace(t,r))}),this.markDirty(),this}some(t){return this.nodes.some(t)}walk(t){if(!this.proxyOf.nodes)return;let n=[{iterator:this.getIterator(),node:this.proxyOf}];for(;n.length>0;){let{iterator:r,node:i}=n[n.length-1],o=i.indexes[r];if(o>=i.proxyOf.nodes.length){delete i.indexes[r],n.pop();let s=n[n.length-1];s&&(s.node.indexes[s.iterator]+=1);continue}let a=i.proxyOf.nodes[o],l;try{l=t(a,o)}catch(s){throw a.addToError(s)}if(l===!1){for(let s of n)delete s.node.indexes[s.iterator];return!1}a.walk&&a.proxyOf.nodes?n.push({iterator:a.getIterator(),node:a}):i.indexes[r]+=1}}walkAtRules(t,n){return n?t instanceof RegExp?this.walk((r,i)=>{if(r.type==="atrule"&&t.test(r.name))return n(r,i)}):this.walk((r,i)=>{if(r.type==="atrule"&&r.name===t)return n(r,i)}):(n=t,this.walk((r,i)=>{if(r.type==="atrule")return n(r,i)}))}walkComments(t){return this.walk((n,r)=>{if(n.type==="comment")return t(n,r)})}walkDecls(t,n){return n?t instanceof RegExp?this.walk((r,i)=>{if(r.type==="decl"&&t.test(r.prop))return n(r,i)}):this.walk((r,i)=>{if(r.type==="decl"&&r.prop===t)return n(r,i)}):(n=t,this.walk((r,i)=>{if(r.type==="decl")return n(r,i)}))}walkRules(t,n){return n?t instanceof RegExp?this.walk((r,i)=>{if(r.type==="rule"&&t.test(r.selector))return n(r,i)}):this.walk((r,i)=>{if(r.type==="rule"&&r.selector===t)return n(r,i)}):(n=t,this.walk((r,i)=>{if(r.type==="rule")return n(r,i)}))}};Gt.registerParse=e=>{A0=e};Gt.registerRule=e=>{rc=e};Gt.registerAtRule=e=>{nc=e};Gt.registerRoot=e=>{_0=e};w0.exports=Gt;Gt.default=Gt;Gt.rebuild=e=>{let t=[e];for(;t.length>0;){let n=t.pop();if(n.type==="atrule"?Object.setPrototypeOf(n,nc.prototype):n.type==="rule"?Object.setPrototypeOf(n,rc.prototype):n.type==="decl"?Object.setPrototypeOf(n,S0.prototype):n.type==="comment"?Object.setPrototypeOf(n,y0.prototype):n.type==="root"&&Object.setPrototypeOf(n,_0.prototype),n[E0]=!0,n.nodes)for(let r of n.nodes)t.push(r)}}});var Ka=be((S2,T0)=>{"use strict";var C0=Zt(),Dr=class extends C0{constructor(t){super(t),this.type="atrule"}append(...t){return this.proxyOf.nodes||(this.nodes=[]),super.append(...t)}prepend(...t){return this.proxyOf.nodes||(this.nodes=[]),super.prepend(...t)}};T0.exports=Dr;Dr.default=Dr;C0.registerAtRule(Dr)});var Ya=be((v2,k0)=>{"use strict";var i1=Zt(),R0,M0,jn=class extends i1{constructor(t){super({type:"document",...t}),this.nodes||(this.nodes=[])}toResult(t={}){return new R0(new M0,this,t).stringify()}};jn.registerLazyResult=e=>{R0=e};jn.registerProcessor=e=>{M0=e};k0.exports=jn;jn.default=jn});var N0=be((E2,L0)=>{var o1="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",a1=(e,t=21)=>(n=t)=>{let r="",i=n|0;for(;i-- >0;)r+=e[Math.random()*e.length|0];return r},s1=(e=21)=>{let t="",n=e|0;for(;n-- >0;)t+=o1[Math.random()*64|0];return t};L0.exports={nanoid:s1,customAlphabet:a1}});var Xa=be(()=>{});var Ja=be(()=>{});var ic=be(()=>{});var F0=be(()=>{});var oc=be((L2,O0)=>{"use strict";var{existsSync:l1,readFileSync:u1,realpathSync:c1}=F0(),{dirname:Qa,isAbsolute:d1,join:f1,relative:m1,sep:p1}=Xa(),{SourceMapConsumer:I0,SourceMapGenerator:D0}=Ja();function P0(e){try{return c1(e)}catch{return e}}function h1(e){return Buffer?Buffer.from(e,"base64").toString():window.atob(e)}var no=class{constructor(t,n){if(n.map===!1)return;n.unsafeMap&&(this.unsafeMap=!0),this.loadAnnotation(t),this.inline=this.startWith(this.annotation,"data:");let r=n.map?n.map.prev:void 0,i=this.loadMap(n.from,r);!this.mapFile&&n.from&&(this.mapFile=n.from),this.mapFile&&(this.root=Qa(this.mapFile)),i&&(this.text=i)}consumer(){return this.consumerCache||(this.consumerCache=new I0(this.json||this.text)),this.consumerCache}decodeInline(t){let n=/^data:application\/json;charset=utf-?8;base64,/,r=/^data:application\/json;base64,/,i=/^data:application\/json;charset=utf-?8,/,o=/^data:application\/json,/,a=t.match(i)||t.match(o);if(a)return decodeURIComponent(t.substr(a[0].length));let l=t.match(n)||t.match(r);if(l)return h1(t.substr(l[0].length));let s=t.slice(22);throw s=s.slice(0,s.indexOf(",")),new Error("Unsupported source map encoding "+s)}getAnnotationURL(t){return t.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()}isMap(t){return typeof t!="object"?!1:typeof t.mappings=="string"||typeof t._mappings=="string"||Array.isArray(t.sections)}loadAnnotation(t){let n=t.match(/\/\*\s*# sourceMappingURL=/g);if(!n)return;let r=t.lastIndexOf(n.pop()),i=t.indexOf("*/",r);r>-1&&i>-1&&(this.annotation=this.getAnnotationURL(t.substring(r,i)))}loadFile(t,n,r){if(!r&&!this.unsafeMap){if(!/\.map$/i.test(t)||!n)return;let i=m1(P0(Qa(n)),P0(t));if(i===".."||i.startsWith(".."+p1)||d1(i))return}if(this.root=Qa(t),l1(t))return this.mapFile=t,u1(t,"utf-8").toString().trim()}loadMap(t,n){if(n===!1)return!1;if(n){if(typeof n=="string")return n;if(typeof n=="function"){let r=n(t);if(r){let i=this.loadFile(r,t,!0);if(!i)throw new Error("Unable to load previous source map: "+r.toString());return i}}else{if(n instanceof I0)return D0.fromSourceMap(n).toString();if(n instanceof D0)return n.toString();if(this.isMap(n))return JSON.stringify(n);throw new Error("Unsupported previous source map format: "+n.toString())}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){let r=this.annotation;t&&(r=f1(Qa(t),r));let i=this.loadFile(r,t,!1);if(i)try{this.json=JSON.parse(i.replace(/^\)]}'[^\n]*\n/,""))}catch{return}return i}}}startWith(t,n){return t?t.substr(0,n.length)===n:!1}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}};O0.exports=no;no.default=no});var ro=be((N2,W0)=>{"use strict";var{nanoid:g1}=N0(),{isAbsolute:lc,resolve:uc}=Xa(),{SourceMapConsumer:b1,SourceMapGenerator:x1}=Ja(),{fileURLToPath:H0,pathToFileURL:Za}=ic(),G0=ja(),y1=oc(),ac=Qu(),sc=Symbol("lineToIndexCache"),S1=!!(b1&&x1),B0=!!(uc&&lc);function U0(e){if(e[sc])return e[sc];let t=e.css.split(`
|
|
21
|
-
`),n=new Array(t.length),r=0;for(let
|
|
22
|
-
`," "];return
|
|
17
|
+
`)&&(n=n.replace(/[^\n]+$/,"")),!1}),n&&(n=n.replace(/\S/g,"")),n}rawColon(t){let n;return t.walkDecls(r=>{if(typeof r.raws.between<"u")return n=r.raws.between.replace(/[^\s:]/g,""),!1}),n}rawEmptyBody(t){let n;return t.walk(r=>{if(r.nodes&&r.nodes.length===0&&(n=r.raws.after,typeof n<"u"))return!1}),n}rawIndent(t){if(t.raws.indent)return t.raws.indent;let n;return t.walk(r=>{let o=r.parent;if(o&&o!==t&&o.parent&&o.parent===t&&typeof r.raws.before<"u"){let i=r.raws.before.split(`
|
|
18
|
+
`);return n=i[i.length-1],n=n.replace(/\S/g,""),!1}}),n}rawSemicolon(t){let n;return t.walk(r=>{if(r.nodes&&r.nodes.length&&r.last.type==="decl"&&(n=r.raws.semicolon,typeof n<"u"))return!1}),n}rawValue(t,n){let r=t[n],o=t.raws[n];return o&&o.value===r?o.raw:r}root(t){if(t.source&&t.source.input.hasBOM&&this.builder("\uFEFF",t,"start"),this.body(t),t.raws.after){let n=t.raws.after,r=t.parent&&t.parent.type==="document";this.builder(r?n:Mt(n))}}rule(t){this.block(t,this.rawValue(t,"selector")),t.raws.ownSemicolon&&this.builder(Mt(t.raws.ownSemicolon),t,"end")}stringify(t,n){if(!this[t.type])throw new Error("Unknown AST node type "+t.type+". Maybe you need to change PostCSS stringifier.");this[t.type](t,n)}};D0.exports=ei;ei.default=ei});var ti=xe((DG,P0)=>{"use strict";var FT=Sc();function vc(e,t){new FT(t).stringify(e)}P0.exports=vc;vc.default=vc});var ni=xe((PG,Ec)=>{"use strict";Ec.exports.isClean=Symbol("isClean");Ec.exports.my=Symbol("my")});var ii=xe((OG,O0)=>{"use strict";var IT=cs(),DT=Sc(),PT=ti(),{isClean:ri,my:OT}=ni();function HT(e,t){let n=new e.constructor,r=[[e,n,t]];for(;r.length>0;){let[o,i,a]=r.pop();for(let l in o){if(!Object.prototype.hasOwnProperty.call(o,l)||l==="proxyCache")continue;let s=o[l],c=typeof s;if(l==="parent"&&c==="object")a&&(i[l]=a);else if(l==="source")i[l]=s;else if(Array.isArray(s)){let d=[];i[l]=d;for(let f of s){let m=new f.constructor;d.push(m),r.push([f,m,i])}}else{if(c==="object"&&s!==null){let d=new s.constructor;r.push([s,d,void 0]),s=d}i[l]=s}}}return n}function $t(e,t){if(t&&typeof t.offset<"u")return t.offset;let n=1,r=1,o=0;for(let i=0;i<e.length;i++){if(r===t.line&&n===t.column){o=i;break}e[i]===`
|
|
19
|
+
`?(n=1,r+=1):n+=1}return o}var oi=class e{get proxyOf(){return this}constructor(t={}){this.raws={},this[ri]=!1,this[OT]=!0;for(let n of Object.keys(t))if(n!=="__proto__")if(n==="nodes"){this.nodes=[];for(let r of t[n])typeof r.clone=="function"&&r.parent?this.append(r.clone()):this.append(r)}else this[n]=t[n]}addToError(t){if(t.postcssNode=this,t.stack&&this.source&&/\n\s{4}at /.test(t.stack)){let n=this.source;t.stack=t.stack.replace(/\n\s{4}at /,`$&${n.input.from}:${n.start.line}:${n.start.column}$&`)}return t}after(t){return this.parent.insertAfter(this,t),this}assign(t={}){for(let n in t)this[n]=t[n];return this}before(t){return this.parent.insertBefore(this,t),this}cleanRaws(t){delete this.raws.before,delete this.raws.after,t||delete this.raws.between}clone(t={}){let n=HT(this);for(let r in t)n[r]=t[r];return n}cloneAfter(t={}){let n=this.clone(t);return this.parent.insertAfter(this,n),n}cloneBefore(t={}){let n=this.clone(t);return this.parent.insertBefore(this,n),n}error(t,n={}){if(this.source){let{end:r,start:o}=this.rangeBy(n);return this.source.input.error(t,{column:o.column,line:o.line},{column:r.column,line:r.line},n)}return new IT(t)}getProxyProcessor(){return{get(t,n){return n==="proxyOf"?t:n==="root"?()=>t.root().toProxy():t[n]},set(t,n,r){return t[n]===r||(t[n]=r,(n==="prop"||n==="value"||n==="name"||n==="params"||n==="important"||n==="text")&&t.markDirty()),!0}}}markClean(){this[ri]=!0}markDirty(){if(this[ri]){this[ri]=!1;let t=this;for(;t=t.parent;)t[ri]=!1}}next(){if(!this.parent)return;let t=this.parent.index(this);return this.parent.nodes[t+1]}positionBy(t={}){let n="document"in this.source.input?this.source.input.document:this.source.input.css,r={column:this.source.start.column,line:this.source.start.line,offset:$t(n,this.source.start)};if(t.index)r=this.positionInside(t.index);else if(t.word){let i=n.slice($t(n,this.source.start),$t(n,this.source.end)).indexOf(t.word);i!==-1&&(r=this.positionInside(i))}return r}positionInside(t){let n=this.source.start.column,r=this.source.start.line,o="document"in this.source.input?this.source.input.document:this.source.input.css,i=$t(o,this.source.start),a=i+t;for(let l=i;l<a;l++)o[l]===`
|
|
20
|
+
`?(n=1,r+=1):n+=1;return{column:n,line:r,offset:a}}prev(){if(!this.parent)return;let t=this.parent.index(this);return this.parent.nodes[t-1]}rangeBy(t={}){let n="document"in this.source.input?this.source.input.document:this.source.input.css,r={column:this.source.start.column,line:this.source.start.line,offset:$t(n,this.source.start)},o=this.source.end?{column:this.source.end.column+1,line:this.source.end.line,offset:typeof this.source.end.offset=="number"?this.source.end.offset:$t(n,this.source.end)+1}:{column:r.column+1,line:r.line,offset:r.offset+1};if(t.word){let a=n.slice($t(n,this.source.start),$t(n,this.source.end)).indexOf(t.word);a!==-1&&(r=this.positionInside(a),o=this.positionInside(a+t.word.length))}else t.start?r={column:t.start.column,line:t.start.line,offset:$t(n,t.start)}:typeof t.index=="number"&&(r=this.positionInside(t.index)),t.end?o={column:t.end.column,line:t.end.line,offset:$t(n,t.end)}:typeof t.endIndex=="number"?o=this.positionInside(t.endIndex):typeof t.index=="number"&&(o=this.positionInside(t.index+1));return(o.line<r.line||o.line===r.line&&o.column<=r.column)&&(o={column:r.column+1,line:r.line,offset:r.offset+1}),{end:o,start:r}}raw(t,n){return new DT().raw(this,t,n)}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}replaceWith(...t){if(this.parent){let n=this,r=!1;for(let o of t)o===this?r=!0:r?(this.parent.insertAfter(n,o),n=o):this.parent.insertBefore(n,o);r||this.remove()}return this}root(){let t=this;for(;t.parent&&t.parent.type!=="document";)t=t.parent;return t}toJSON(t,n){let r=n==null;n=n||new Map;let o=[],i=[[this,o,0]];for(let l=0;l<i.length;l++){let[s,c,d]=i[l],f={};c[d]=f;for(let m in s){if(!Object.prototype.hasOwnProperty.call(s,m)||m==="parent"||m==="proxyCache")continue;let p=s[m];if(Array.isArray(p)){let x=[];f[m]=x;for(let b=0;b<p.length;b++){let y=p[b];typeof y=="object"&&y.toJSON?y.toJSON===e.prototype.toJSON?i.push([y,x,b]):x[b]=y.toJSON(null,n):x[b]=y}}else if(typeof p=="object"&&p.toJSON)p.toJSON===e.prototype.toJSON?i.push([p,f,m]):f[m]=p.toJSON(null,n);else if(m==="source"){if(p==null)continue;let x=n.get(p.input);x==null&&(x=n.size,n.set(p.input,x)),f[m]={end:p.end,inputId:x,start:p.start}}else f[m]=p}}let a=o[0];return r&&(a.inputs=[...n.keys()].map(l=>l.toJSON())),a}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}toString(t=PT){t.stringify&&(t=t.stringify);let n="";return t(this,r=>{n+=r}),n}warn(t,n,r={}){let o={node:this};for(let i in r)o[i]=r[i];return t.warn(n,o)}};O0.exports=oi;oi.default=oi});var si=xe((HG,H0)=>{"use strict";var GT=ii(),ai=class extends GT{constructor(t){super(t),this.type="comment"}};H0.exports=ai;ai.default=ai});var ui=xe((GG,G0)=>{"use strict";var BT=ii(),li=class extends BT{get variable(){return this.prop.startsWith("--")||this.prop[0]==="$"}constructor(t){t&&typeof t.value<"u"&&typeof t.value!="string"&&(t={...t,value:String(t.value)}),super(t),this.type="decl"}};G0.exports=li;li.default=li});var nn=xe((BG,j0)=>{"use strict";var U0=si(),W0=ui(),B0=ii(),{isClean:V0,my:$0}=ni(),Ac,q0,z0,wc;function UT(e){let t=e.slice();for(;t.length>0;){let n=t.pop();if(delete n.source,n.nodes){n.nodes=n.nodes.slice();for(let r of n.nodes)t.push(r)}}return e.slice()}function WT(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[V0]=!1,n.proxyOf.nodes)for(let r of n.proxyOf.nodes)t.push(r)}}var qt=class e extends B0{get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}append(...t){for(let n of t){let r=this.normalize(n,this.last);for(let o of r)this.proxyOf.nodes.push(o)}return this.markDirty(),this}cleanRaws(t){let n=[this];for(;n.length>0;){let r=n.pop();if(r!==this&&r.cleanRaws!==e.prototype.cleanRaws){r.cleanRaws(t);continue}if(B0.prototype.cleanRaws.call(r,t),r.nodes)for(let o of r.nodes)n.push(o)}}each(t){if(!this.proxyOf.nodes)return;let n=this.getIterator(),r,o;for(;this.indexes[n]<this.proxyOf.nodes.length&&(r=this.indexes[n],o=t(this.proxyOf.nodes[r],r),o!==!1);)this.indexes[n]+=1;return delete this.indexes[n],o}every(t){return this.nodes.every(t)}getIterator(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;let t=this.lastEach;return this.indexes[t]=0,t}getProxyProcessor(){return{get(t,n){return n==="proxyOf"?t:t[n]?n==="each"||typeof n=="string"&&n.startsWith("walk")?(...r)=>t[n](...r.map(o=>typeof o=="function"?(i,a)=>o(i.toProxy(),a):o)):n==="every"||n==="some"?r=>t[n]((o,...i)=>r(o.toProxy(),...i)):n==="root"?()=>t.root().toProxy():n==="nodes"?t.nodes.map(r=>r.toProxy()):n==="first"||n==="last"?t[n].toProxy():t[n]:t[n]},set(t,n,r){return t[n]===r||(t[n]=r,(n==="name"||n==="params"||n==="selector")&&t.markDirty()),!0}}}index(t){return typeof t=="number"?t:(t.proxyOf&&(t=t.proxyOf),this.proxyOf.nodes.indexOf(t))}insertAfter(t,n){let r=this.index(t),o=this.normalize(n,this.proxyOf.nodes[r]).reverse();r=this.index(t);for(let a of o)this.proxyOf.nodes.splice(r+1,0,a);let i;for(let a in this.indexes)i=this.indexes[a],r<i&&(this.indexes[a]=i+o.length);return this.markDirty(),this}insertBefore(t,n){let r=this.index(t),o=r===0?"prepend":!1,i=this.normalize(n,this.proxyOf.nodes[r],o).reverse();r=this.index(t);for(let l of i)this.proxyOf.nodes.splice(r,0,l);let a;for(let l in this.indexes)a=this.indexes[l],r<=a&&(this.indexes[l]=a+i.length);return this.markDirty(),this}normalize(t,n){if(typeof t=="string")t=UT(q0(t).nodes);else if(typeof t>"u")t=[];else if(Array.isArray(t)){t=t.slice(0);for(let o of t)o.parent&&o.parent.removeChild(o,"ignore")}else if(t.type==="root"&&this.type!=="document"){t=t.nodes.slice(0);for(let o of t)o.parent&&o.parent.removeChild(o,"ignore")}else if(t.type)t=[t];else if(t.prop){if(typeof t.value>"u")throw new Error("Value field is missed in node creation");typeof t.value!="string"&&(t.value=String(t.value)),t=[new W0(t)]}else if(t.selector||t.selectors)t=[new wc(t)];else if(t.name)t=[new Ac(t)];else if(t.text)t=[new U0(t)];else throw new Error("Unknown node type in node creation");return t.map(o=>(o[$0]||e.rebuild(o),o=o.proxyOf,o.parent&&o.parent.removeChild(o),o[V0]&&WT(o),o.raws||(o.raws={}),typeof o.raws.before>"u"&&n&&typeof n.raws.before<"u"&&(o.raws.before=n.raws.before.replace(/\S/g,"")),o.parent=this.proxyOf,o))}prepend(...t){t=t.reverse();for(let n of t){let r=this.normalize(n,this.first,"prepend").reverse();for(let o of r)this.proxyOf.nodes.unshift(o);for(let o in this.indexes)this.indexes[o]=this.indexes[o]+r.length}return this.markDirty(),this}push(t){return t.parent=this,this.proxyOf.nodes.push(t),this}removeAll(){for(let t of this.proxyOf.nodes)t.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}removeChild(t){t=this.index(t),this.proxyOf.nodes[t].parent=void 0,this.proxyOf.nodes.splice(t,1);let n;for(let r in this.indexes)n=this.indexes[r],n>=t&&(this.indexes[r]=n-1);return this.markDirty(),this}replaceValues(t,n,r){return r||(r=n,n={}),this.walkDecls(o=>{n.props&&!n.props.includes(o.prop)||n.fast&&!o.value.includes(n.fast)||(o.value=o.value.replace(t,r))}),this.markDirty(),this}some(t){return this.nodes.some(t)}walk(t){if(!this.proxyOf.nodes)return;let n=[{iterator:this.getIterator(),node:this.proxyOf}];for(;n.length>0;){let{iterator:r,node:o}=n[n.length-1],i=o.indexes[r];if(i>=o.proxyOf.nodes.length){delete o.indexes[r],n.pop();let s=n[n.length-1];s&&(s.node.indexes[s.iterator]+=1);continue}let a=o.proxyOf.nodes[i],l;try{l=t(a,i)}catch(s){throw a.addToError(s)}if(l===!1){for(let s of n)delete s.node.indexes[s.iterator];return!1}a.walk&&a.proxyOf.nodes?n.push({iterator:a.getIterator(),node:a}):o.indexes[r]+=1}}walkAtRules(t,n){return n?t instanceof RegExp?this.walk((r,o)=>{if(r.type==="atrule"&&t.test(r.name))return n(r,o)}):this.walk((r,o)=>{if(r.type==="atrule"&&r.name===t)return n(r,o)}):(n=t,this.walk((r,o)=>{if(r.type==="atrule")return n(r,o)}))}walkComments(t){return this.walk((n,r)=>{if(n.type==="comment")return t(n,r)})}walkDecls(t,n){return n?t instanceof RegExp?this.walk((r,o)=>{if(r.type==="decl"&&t.test(r.prop))return n(r,o)}):this.walk((r,o)=>{if(r.type==="decl"&&r.prop===t)return n(r,o)}):(n=t,this.walk((r,o)=>{if(r.type==="decl")return n(r,o)}))}walkRules(t,n){return n?t instanceof RegExp?this.walk((r,o)=>{if(r.type==="rule"&&t.test(r.selector))return n(r,o)}):this.walk((r,o)=>{if(r.type==="rule"&&r.selector===t)return n(r,o)}):(n=t,this.walk((r,o)=>{if(r.type==="rule")return n(r,o)}))}};qt.registerParse=e=>{q0=e};qt.registerRule=e=>{wc=e};qt.registerAtRule=e=>{Ac=e};qt.registerRoot=e=>{z0=e};j0.exports=qt;qt.default=qt;qt.rebuild=e=>{let t=[e];for(;t.length>0;){let n=t.pop();if(n.type==="atrule"?Object.setPrototypeOf(n,Ac.prototype):n.type==="rule"?Object.setPrototypeOf(n,wc.prototype):n.type==="decl"?Object.setPrototypeOf(n,W0.prototype):n.type==="comment"?Object.setPrototypeOf(n,U0.prototype):n.type==="root"&&Object.setPrototypeOf(n,z0.prototype),n[$0]=!0,n.nodes)for(let r of n.nodes)t.push(r)}}});var ds=xe((UG,Y0)=>{"use strict";var K0=nn(),Gr=class extends K0{constructor(t){super(t),this.type="atrule"}append(...t){return this.proxyOf.nodes||(this.nodes=[]),super.append(...t)}prepend(...t){return this.proxyOf.nodes||(this.nodes=[]),super.prepend(...t)}};Y0.exports=Gr;Gr.default=Gr;K0.registerAtRule(Gr)});var fs=xe((WG,Q0)=>{"use strict";var VT=nn(),X0,J0,Jn=class extends VT{constructor(t){super({type:"document",...t}),this.nodes||(this.nodes=[])}toResult(t={}){return new X0(new J0,this,t).stringify()}};Jn.registerLazyResult=e=>{X0=e};Jn.registerProcessor=e=>{J0=e};Q0.exports=Jn;Jn.default=Jn});var eb=xe((VG,Z0)=>{var $T="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",qT=(e,t=21)=>(n=t)=>{let r="",o=n|0;for(;o-- >0;)r+=e[Math.random()*e.length|0];return r},zT=(e=21)=>{let t="",n=e|0;for(;n-- >0;)t+=$T[Math.random()*64|0];return t};Z0.exports={nanoid:zT,customAlphabet:qT}});var ms=xe(()=>{});var ps=xe(()=>{});var _c=xe(()=>{});var tb=xe(()=>{});var Cc=xe((QG,ib)=>{"use strict";var{existsSync:jT,readFileSync:KT,realpathSync:YT}=tb(),{dirname:hs,isAbsolute:XT,join:JT,relative:QT,sep:ZT}=ms(),{SourceMapConsumer:nb,SourceMapGenerator:rb}=ps();function ob(e){try{return YT(e)}catch{return e}}function e1(e){return Buffer?Buffer.from(e,"base64").toString():window.atob(e)}var ci=class{constructor(t,n){if(n.map===!1)return;n.unsafeMap&&(this.unsafeMap=!0),this.loadAnnotation(t),this.inline=this.startWith(this.annotation,"data:");let r=n.map?n.map.prev:void 0,o=this.loadMap(n.from,r);!this.mapFile&&n.from&&(this.mapFile=n.from),this.mapFile&&(this.root=hs(this.mapFile)),o&&(this.text=o)}consumer(){return this.consumerCache||(this.consumerCache=new nb(this.json||this.text)),this.consumerCache}decodeInline(t){let n=/^data:application\/json;charset=utf-?8;base64,/,r=/^data:application\/json;base64,/,o=/^data:application\/json;charset=utf-?8,/,i=/^data:application\/json,/,a=t.match(o)||t.match(i);if(a)return decodeURIComponent(t.substr(a[0].length));let l=t.match(n)||t.match(r);if(l)return e1(t.substr(l[0].length));let s=t.slice(22);throw s=s.slice(0,s.indexOf(",")),new Error("Unsupported source map encoding "+s)}getAnnotationURL(t){return t.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()}isMap(t){return typeof t!="object"?!1:typeof t.mappings=="string"||typeof t._mappings=="string"||Array.isArray(t.sections)}loadAnnotation(t){let n=t.match(/\/\*\s*# sourceMappingURL=/g);if(!n)return;let r=t.lastIndexOf(n.pop()),o=t.indexOf("*/",r);r>-1&&o>-1&&(this.annotation=this.getAnnotationURL(t.substring(r,o)))}loadFile(t,n,r){if(!r&&!this.unsafeMap){if(!/\.map$/i.test(t)||!n)return;let o=QT(ob(hs(n)),ob(t));if(o===".."||o.startsWith(".."+ZT)||XT(o))return}if(this.root=hs(t),jT(t))return this.mapFile=t,KT(t,"utf-8").toString().trim()}loadMap(t,n){if(n===!1)return!1;if(n){if(typeof n=="string")return n;if(typeof n=="function"){let r=n(t);if(r){let o=this.loadFile(r,t,!0);if(!o)throw new Error("Unable to load previous source map: "+r.toString());return o}}else{if(n instanceof nb)return rb.fromSourceMap(n).toString();if(n instanceof rb)return n.toString();if(this.isMap(n))return JSON.stringify(n);throw new Error("Unsupported previous source map format: "+n.toString())}}else{if(this.inline)return this.decodeInline(this.annotation);if(this.annotation){let r=this.annotation;t&&(r=JT(hs(t),r));let o=this.loadFile(r,t,!1);if(o)try{this.json=JSON.parse(o.replace(/^\)]}'[^\n]*\n/,""))}catch{return}return o}}}startWith(t,n){return t?t.substr(0,n.length)===n:!1}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}};ib.exports=ci;ci.default=ci});var di=xe((ZG,cb)=>{"use strict";var{nanoid:t1}=eb(),{isAbsolute:Mc,resolve:kc}=ms(),{SourceMapConsumer:n1,SourceMapGenerator:r1}=ps(),{fileURLToPath:ab,pathToFileURL:gs}=_c(),sb=cs(),o1=Cc(),Tc=yc(),Rc=Symbol("lineToIndexCache"),i1=!!(n1&&r1),lb=!!(kc&&Mc);function ub(e){if(e[Rc])return e[Rc];let t=e.css.split(`
|
|
21
|
+
`),n=new Array(t.length),r=0;for(let o=0,i=t.length;o<i;o++)n[o]=r,r+=t[o].length+1;return e[Rc]=n,n}var Br=class{get from(){return this.file||this.id}constructor(t,n={}){if(t===null||typeof t>"u"||typeof t=="object"&&!t.toString)throw new Error(`PostCSS received ${t} instead of CSS string`);if(this.css=t.toString(),this.css[0]==="\uFEFF"||this.css[0]==="\uFFFE"?(this.hasBOM=!0,this.css=this.css.slice(1)):this.hasBOM=!1,this.document=this.css,n.document&&(this.document=n.document.toString()),n.from&&(!lb||/^\w+:\/\//.test(n.from)||Mc(n.from)?this.file=n.from:this.file=kc(n.from)),lb&&i1){let r=new o1(this.css,n);if(r.text){this.map=r;let o=r.consumer().file;!this.file&&o&&(this.file=this.mapResolve(o))}}this.file||(this.id="<input css "+t1(6)+">"),this.map&&(this.map.file=this.from)}error(t,n,r,o={}){let i,a,l,s,c;if(n&&typeof n=="object"){let f=n,m=r;if(typeof f.offset=="number"){s=f.offset;let p=this.fromOffset(s);n=p.line,r=p.col}else n=f.line,r=f.column,s=this.fromLineAndColumn(n,r);if(typeof m.offset=="number"){l=m.offset;let p=this.fromOffset(l);a=p.line,i=p.col}else a=m.line,i=m.column,l=this.fromLineAndColumn(m.line,m.column)}else if(r)s=this.fromLineAndColumn(n,r);else{s=n;let f=this.fromOffset(s);n=f.line,r=f.col}let d=this.origin(n,r,a,i);return d?c=new sb(t,d.endLine===void 0?d.line:{column:d.column,line:d.line},d.endLine===void 0?d.column:{column:d.endColumn,line:d.endLine},d.source,d.file,o.plugin):c=new sb(t,a===void 0?n:{column:r,line:n},a===void 0?r:{column:i,line:a},this.css,this.file,o.plugin),c.input={column:r,endColumn:i,endLine:a,endOffset:l,line:n,offset:s,source:this.css},this.file&&(gs&&(c.input.url=gs(this.file).toString()),c.input.file=this.file),c}fromLineAndColumn(t,n){return ub(this)[t-1]+n-1}fromOffset(t){let n=ub(this),r=n[n.length-1],o=0;if(t>=r)o=n.length-1;else{let i=n.length-2,a;for(;o<i;)if(a=o+(i-o>>1),t<n[a])i=a-1;else if(t>=n[a+1])o=a+1;else{o=a;break}}return{col:t-n[o]+1,line:o+1}}mapResolve(t){return/^\w+:\/\//.test(t)?t:kc(this.map.consumer().sourceRoot||this.map.root||".",t)}origin(t,n,r,o){if(!this.map)return!1;let i=this.map.consumer(),a=i.originalPositionFor({column:n-1,line:t});if(!a.source)return!1;let l;if(typeof r=="number"){let f=i.originalPositionFor({column:o-1,line:r});f.source&&(l=f)}let s;Mc(a.source)?s=gs(a.source):s=new URL(a.source,this.map.consumer().sourceRoot||gs(this.map.mapFile));let c={column:a.column+1,endColumn:l&&l.column+1,endLine:l&&l.line,line:a.line,url:s.toString()};if(s.protocol==="file:")if(ab)c.file=ab(s);else throw new Error("file: protocol is not available in this PostCSS build");let d=i.sourceContentFor(a.source);return d&&(c.source=d),c}toJSON(){let t={};for(let n of["hasBOM","css","file","id"])this[n]!=null&&(t[n]=this[n]);return this.map&&(t.map={...this.map},t.map.consumerCache&&(t.map.consumerCache=void 0)),t}};cb.exports=Br;Br.default=Br;Tc&&Tc.registerInput&&Tc.registerInput(Br)});var Ur=xe((eB,pb)=>{"use strict";var db=nn(),fb,mb,wn=class extends db{constructor(t){super(t),this.type="root",this.nodes||(this.nodes=[])}normalize(t,n,r){let o=new Set;for(let a of Array.isArray(t)?t:[t])a&&typeof a=="object"&&!a.parent&&a.raws&&typeof a.raws.before<"u"&&o.add(a.raws);let i=super.normalize(t);if(n){if(r==="prepend")this.nodes.length>1?n.raws.before=this.nodes[1].raws.before:delete n.raws.before;else if(this.first!==n)for(let a of i)o.has(a.raws)||(a.raws.before=n.raws.before)}return i}removeChild(t,n){let r=this.index(t);return!n&&r===0&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[r].raws.before),super.removeChild(t)}toResult(t={}){return new fb(new mb,this,t).stringify()}};wn.registerLazyResult=e=>{fb=e};wn.registerProcessor=e=>{mb=e};pb.exports=wn;wn.default=wn;db.registerRoot(wn)});var Lc=xe((tB,hb)=>{"use strict";var fi={comma(e){return fi.split(e,[","],!0)},space(e){let t=[" ",`
|
|
22
|
+
`," "];return fi.split(e,t)},split(e,t,n){if(typeof e!="string")return[];let r=[],o="",i=!1,a=0,l=!1,s="",c=!1;for(let f of e)if(c?c=!1:f==="\\"?c=!0:l?f===s&&(l=!1):f==='"'||f==="'"?(l=!0,s=f):f==="("?a+=1:f===")"?a>0&&(a-=1):a===0&&t.includes(f)&&(i=!0),i){let m=o.trim();(n||m!=="")&&r.push(m),o="",i=!1}else o+=f;let d=o.trim();return(n||d!=="")&&r.push(d),r}};hb.exports=fi;fi.default=fi});var bs=xe((nB,bb)=>{"use strict";var gb=nn(),a1=Lc(),Wr=class extends gb{get selectors(){return a1.comma(this.selector)}set selectors(t){let n=this.selector?this.selector.match(/,\s*/):null,r=n?n[0]:","+this.raw("between","beforeOpen");this.selector=t.join(r)}constructor(t){super(t),this.type="rule",this.nodes||(this.nodes=[])}};bb.exports=Wr;Wr.default=Wr;gb.registerRule(Wr)});var Sb=xe((rB,yb)=>{"use strict";var s1=ds(),l1=si(),u1=ui(),c1=di(),d1=Cc(),f1=Ur(),m1=bs();function xb(e,t){return e.inputs?e.inputs.map(n=>{let r={...n,__proto__:c1.prototype};return r.map&&(r.map={...r.map,__proto__:d1.prototype}),r}):t}function p1(e,t,n){let r={...e};if(delete r.inputs,delete r.nodes,r.source){let{inputId:i,...a}=r.source;r.source=a,i!=null&&(r.source.input=t[i])}let o;if(r.type==="root")o=new f1(r);else if(r.type==="decl")o=new u1(r);else if(r.type==="rule")o=new m1(r);else if(r.type==="comment")o=new l1(r);else if(r.type==="atrule")o=new s1(r);else throw new Error("Unknown node type: "+e.type);if(n){o.nodes=n;for(let i of n)i.parent=o}return o}function xs(e,t){if(Array.isArray(e))return e.map(o=>xs(o));let n,r=[{childIndex:0,children:[],inputs:xb(e,t),json:e}];for(;r.length>0;){let o=r[r.length-1],i=o.json.nodes;if(i&&o.childIndex<i.length){let l=i[o.childIndex];o.childIndex+=1,r.push({childIndex:0,children:[],inputs:xb(l,o.inputs),json:l});continue}r.pop();let a=p1(o.json,o.inputs,i?o.children:void 0);r.length>0?r[r.length-1].children.push(a):n=a}return n}yb.exports=xs;xs.default=xs});var Fc=xe((oB,Cb)=>{"use strict";var{dirname:ys,relative:Eb,resolve:Ab,sep:wb}=ms(),{SourceMapConsumer:_b,SourceMapGenerator:Ss}=ps(),{pathToFileURL:vb}=_c(),h1=di(),g1=!!(_b&&Ss),b1=!!(ys&&Ab&&Eb&&wb),Nc=class{constructor(t,n,r,o){this.stringify=t,this.mapOpts=r.map||{},this.root=n,this.opts=r,this.css=o,this.originalCSS=o,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute,this.memoizedFileURLs=new Map,this.memoizedPaths=new Map,this.memoizedURLs=new Map}addAnnotation(){let t;this.isInline()?t="data:application/json;base64,"+this.toBase64(this.map.toString()):typeof this.mapOpts.annotation=="string"?t=this.mapOpts.annotation:typeof this.mapOpts.annotation=="function"?t=this.mapOpts.annotation(this.opts.to,this.root):t=this.outputFile()+".map";let n=`
|
|
23
23
|
`;this.css.includes(`\r
|
|
24
24
|
`)&&(n=`\r
|
|
25
|
-
`),this.css+=n+"/*# sourceMappingURL="+t+" */"}applyPrevMaps(){for(let t of this.previous()){let n=this.toUrl(this.path(t.file)),r=t.root||
|
|
26
|
-
`;)n--;this.css=this.css.slice(0,n)+this.css.slice(r+2)}}}}generate(){if(this.clearAnnotation(),
|
|
27
|
-
`),n=l.length-o):n+=l.length,s&&c!=="start"){let d=s.parent||{raws:{}};(!(s.type==="decl"||s.type==="atrule"&&!s.nodes)||s!==d.last||d.raws.semicolon)&&(s.source&&s.source.end?(i.source=this.sourcePath(s),i.original.line=s.source.end.line,i.original.column=s.source.end.column-1,i.generated.line=t,i.generated.column=n-2,this.map.addMapping(i)):(i.source=r,i.original.line=1,i.original.column=0,i.generated.line=t,i.generated.column=n-1,this.map.addMapping(i)))}})}isAnnotation(){return this.isInline()?!0:typeof this.mapOpts.annotation<"u"?this.mapOpts.annotation:this.previous().length?this.previous().some(t=>t.annotation):!0}isInline(){if(typeof this.mapOpts.inline<"u")return this.mapOpts.inline;let t=this.mapOpts.annotation;return typeof t<"u"&&t!==!0?!1:this.previous().length?this.previous().some(n=>n.inline):!0}isMap(){return typeof this.opts.map<"u"?!!this.opts.map:this.previous().length>0}isSourcesContent(){return typeof this.mapOpts.sourcesContent<"u"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(t=>t.withContent()):!0}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}path(t){if(this.mapOpts.absolute||t.charCodeAt(0)===60||/^\w+:\/\//.test(t))return t;let n=this.memoizedPaths.get(t);if(n)return n;let r=this.opts.to?ns(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(r=ns(tb(r,this.mapOpts.annotation)));let i=eb(r,t);return this.memoizedPaths.set(t,i),i}previous(){if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk(t=>{if(t.source&&t.source.input.map){let n=t.source.input.map;this.previousMaps.includes(n)||this.previousMaps.push(n)}});else{let t=new k1(this.originalCSS,this.opts);t.map&&this.previousMaps.push(t.map)}return this.previousMaps}setSourcesContent(){let t={};if(this.root)this.root.walk(n=>{if(n.source){let r=n.source.input.from;if(r&&!t[r]){t[r]=!0;let i=this.usesFileUrls?this.toFileUrl(r):this.toUrl(this.path(r));this.map.setSourceContent(i,n.source.input.css)}}});else if(this.css){let n=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(n,this.css)}}sourcePath(t){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(t.source.input.from):this.toUrl(this.path(t.source.input.from))}toBase64(t){return Buffer?Buffer.from(t).toString("base64"):window.btoa(unescape(encodeURIComponent(t)))}toFileUrl(t){let n=this.memoizedFileURLs.get(t);if(n)return n;if(Z0){let r=Z0(t).toString();return this.memoizedFileURLs.set(t,r),r}else throw new Error("`map.absolute` option is not available in this PostCSS build")}toUrl(t){let n=this.memoizedURLs.get(t);if(n)return n;nb==="\\"&&(t=t.replace(/\\/g,"/"));let r=encodeURI(t).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(t,r),r}};ib.exports=dc});var sb=be((H2,ab)=>{"use strict";var is=/[\t\n\f\r "#'()/;[\\\]{}]/g,os=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,F1=/.[\r\n"'(/\\]/,ob=/[\da-f]/i;ab.exports=function(t,n={}){let r=t.css.valueOf(),i=n.ignoreErrors,o,a,l,s,c,d,m,f,p,y,b=r.length,g=0,v=[],E=[],_=-1;function F(){return g}function D(O){throw t.error("Unclosed "+O,g)}function k(){return E.length===0&&g>=b}function w(O){if(E.length)return E.pop();if(g>=b)return;let K=O?O.ignoreUnclosed:!1;switch(o=r.charCodeAt(g),o){case 10:case 32:case 9:case 13:case 12:{s=g;do s+=1,o=r.charCodeAt(s);while(o===32||o===10||o===9||o===13||o===12);d=["space",r.slice(g,s)],g=s-1;break}case 91:case 93:case 123:case 125:case 58:case 59:case 41:{let Z=String.fromCharCode(o);d=[Z,Z,g];break}case 40:{if(y=v.length?v.pop()[1]:"",p=r.charCodeAt(g+1),y==="url"&&p!==39&&p!==34&&p!==32&&p!==10&&p!==9&&p!==12&&p!==13){s=g;do{if(m=!1,s=r.indexOf(")",s+1),s===-1)if(i||K){s=g;break}else D("bracket");for(f=s;r.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);d=["brackets",r.slice(g,s+1),g,s],g=s}else g<=_?d=["(","(",g]:(s=r.indexOf(")",g+1),a=r.slice(g,s+1),s===-1||F1.test(a)?(_=s===-1?b:s,d=["(","(",g]):(d=["brackets",a,g,s],g=s));break}case 39:case 34:{c=o===39?"'":'"',s=g;do{if(m=!1,s=r.indexOf(c,s+1),s===-1)if(i||K){s=g+1;break}else D("string");for(f=s;r.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);d=["string",r.slice(g,s+1),g,s],g=s;break}case 64:{is.lastIndex=g+1,is.test(r),is.lastIndex===0?s=r.length-1:s=is.lastIndex-2,d=["at-word",r.slice(g,s+1),g,s],g=s;break}case 92:{for(s=g,l=!0;r.charCodeAt(s+1)===92;)s+=1,l=!l;if(o=r.charCodeAt(s+1),l&&o!==47&&o!==32&&o!==10&&o!==9&&o!==13&&o!==12&&(s+=1,ob.test(r.charAt(s)))){for(;ob.test(r.charAt(s+1));)s+=1;r.charCodeAt(s+1)===32&&(s+=1)}d=["word",r.slice(g,s+1),g,s],g=s;break}default:{o===47&&r.charCodeAt(g+1)===42?(s=r.indexOf("*/",g+2)+1,s===0&&(i||K?s=r.length:D("comment")),d=["comment",r.slice(g,s+1),g,s],g=s):(os.lastIndex=g+1,os.test(r),os.lastIndex===0?s=r.length-1:s=os.lastIndex-2,d=["word",r.slice(g,s+1),g,s],v.push(d),g=s);break}}return g++,d}function L(O){E.push(O)}return{back:L,endOfFile:k,nextToken:w,position:F}}});var db=be((G2,cb)=>{"use strict";var I1=Ka(),D1=Zi(),P1=to(),O1=Or(),lb=es(),H1=sb(),ub={empty:!0,space:!0};function G1(e){for(let t=e.length-1;t>=0;t--){let n=e[t],r=n[3]||n[2];if(r)return r}}function mc(e,t,n){let r="";for(let i=t;i<n;i++)r+=e[i][1];return r}var pc=class{constructor(t){this.input=t,this.root=new O1,this.current=this.root,this.spaces="",this.semicolon=!1,this.createTokenizer(),this.root.source={input:t,start:{column:1,line:1,offset:0}}}atrule(t){let n=new I1;n.name=t[1].slice(1),n.name===""&&this.unnamedAtrule(n,t),this.init(n,t[2]);let r,i,o,a=!1,l=!1,s=[],c=[];for(;!this.tokenizer.endOfFile();){if(t=this.tokenizer.nextToken(),r=t[0],r==="("||r==="["?c.push(r==="("?")":"]"):r==="{"&&c.length>0?c.push("}"):r===c[c.length-1]&&c.pop(),c.length===0)if(r===";"){n.source.end=this.getPosition(t[2]),n.source.end.offset++,this.semicolon=!0;break}else if(r==="{"){l=!0;break}else if(r==="}"){if(s.length>0){for(o=s.length-1,i=s[o];i&&i[0]==="space";)i=s[--o];i&&(n.source.end=this.getPosition(i[3]||i[2]),n.source.end.offset++)}this.end(t);break}else s.push(t);else s.push(t);if(this.tokenizer.endOfFile()){a=!0;break}}n.raws.between=this.spacesAndCommentsFromEnd(s),s.length?(n.raws.afterName=this.spacesAndCommentsFromStart(s),this.raw(n,"params",s),a&&(t=s[s.length-1],n.source.end=this.getPosition(t[3]||t[2]),n.source.end.offset++,this.spaces=n.raws.between,n.raws.between="")):(n.raws.afterName="",n.params=""),l&&(n.nodes=[],this.current=n)}checkMissedSemicolon(t){let n=this.colon(t);if(n===!1)return;let r=0,i;for(let o=n-1;o>=0&&(i=t[o],!(i[0]!=="space"&&(r+=1,r===2)));o--);throw this.input.error("Missed semicolon",i[0]==="word"?i[3]+1:i[2])}colon(t){let n=0,r,i,o;for(let[a,l]of t.entries()){if(i=l,o=i[0],o==="("&&(n+=1),o===")"&&(n-=1),n===0&&o===":")if(!r)this.doubleColon(i);else{if(r[0]==="word"&&r[1]==="progid")continue;return a}r=i}return!1}comment(t){let n=new D1;this.init(n,t[2]),n.source.end=this.getPosition(t[3]||t[2]),n.source.end.offset++;let r=t[1].slice(2,-2);if(!r.trim())n.text="",n.raws.left=r,n.raws.right="";else{let i=r.match(/^(\s*)([^]*\S)(\s*)$/);n.text=i[2],n.raws.left=i[1],n.raws.right=i[3]}}createTokenizer(){this.tokenizer=H1(this.input)}decl(t,n){let r=new P1;this.init(r,t[0][2]);let i=t[t.length-1];i[0]===";"&&(this.semicolon=!0,t.pop()),r.source.end=this.getPosition(i[3]||i[2]||G1(t)),r.source.end.offset++;let o=0;for(;t[o][0]!=="word";)o===t.length-1&&this.unknownWord([t[o]]),o++;r.raws.before+=mc(t,0,o),r.source.start=this.getPosition(t[o][2]);let a=o;for(;o<t.length;){let f=t[o][0];if(f===":"||f==="space"||f==="comment")break;o++}r.prop=mc(t,a,o);let l=o,s;for(;o<t.length&&(s=t[o],o++,s[0]!==":");)s[0]==="word"&&/\w/.test(s[1])&&this.unknownWord([s]);r.raws.between=mc(t,l,o),(r.prop[0]==="_"||r.prop[0]==="*")&&(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));let c=o;for(;o<t.length;){let f=t[o][0];if(f!=="space"&&f!=="comment")break;o++}let d=t.slice(c,o);t=t.slice(o),this.precheckMissedSemicolon(t);for(let f=t.length-1;f>=0;f--){if(s=t[f],s[1].toLowerCase()==="!important"){r.important=!0;let p=this.stringFrom(t,f);p=this.spacesFromEnd(t)+p,p!==" !important"&&(r.raws.important=p);break}else if(s[1].toLowerCase()==="important"){let p=t.slice(0),y="";for(let b=f;b>0;b--){let g=p[b][0];if(y.trim().startsWith("!")&&g!=="space")break;y=p.pop()[1]+y}y.trim().startsWith("!")&&(r.important=!0,r.raws.important=y,t=p)}if(s[0]!=="space"&&s[0]!=="comment")break}t.some(f=>f[0]!=="space"&&f[0]!=="comment")&&(r.raws.between+=d.map(f=>f[1]).join(""),d=[]),this.raw(r,"value",d.concat(t),n),r.value.includes(":")&&!n&&this.checkMissedSemicolon(t)}doubleColon(t){throw this.input.error("Double colon",{offset:t[2]},{offset:t[2]+t[1].length})}emptyRule(t){let n=new lb;this.init(n,t[2]),n.selector="",n.raws.between="",this.current=n}end(t){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(t[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(t)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())}freeSemicolon(t){if(this.spaces+=t[1],this.current.nodes){let n=this.current.nodes[this.current.nodes.length-1];n&&n.type==="rule"&&!n.raws.ownSemicolon&&(n.raws.ownSemicolon=this.spaces,this.spaces="",n.source.end=this.getPosition(t[2]),n.source.end.offset++)}}getPosition(t){let n=this.input.fromOffset(t);return{column:n.col,line:n.line,offset:t}}init(t,n){this.current.push(t),t.source={input:this.input,start:this.getPosition(n)},t.raws.before=this.spaces,this.spaces="",t.type!=="comment"&&(this.semicolon=!1)}other(t){let n=!1,r=null,i=!1,o=null,a=[],l=t[1].startsWith("--"),s=[],c=t;for(;c;){if(r=c[0],s.push(c),r==="("||r==="[")o||(o=c),a.push(r==="("?")":"]");else if(l&&i&&r==="{")o||(o=c),a.push("}");else if(a.length===0)if(r===";")if(i){this.decl(s,l);return}else break;else if(r==="{"){this.rule(s);return}else if(r==="}"){this.tokenizer.back(s.pop()),n=!0;break}else r===":"&&(i=!0);else r===a[a.length-1]&&(a.pop(),a.length===0&&(o=null));c=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(n=!0),a.length>0&&this.unclosedBracket(o),n&&i){if(!l)for(;s.length&&(c=s[s.length-1][0],!(c!=="space"&&c!=="comment"));)this.tokenizer.back(s.pop());this.decl(s,l)}else this.unknownWord(s)}parse(){let t;for(;!this.tokenizer.endOfFile();)switch(t=this.tokenizer.nextToken(),t[0]){case"space":this.spaces+=t[1];break;case";":this.freeSemicolon(t);break;case"}":this.end(t);break;case"comment":this.comment(t);break;case"at-word":this.atrule(t);break;case"{":this.emptyRule(t);break;default:this.other(t);break}this.endFile()}precheckMissedSemicolon(){}raw(t,n,r,i){let o,a,l=r.length,s="",c=!0,d,m;for(let f=0;f<l;f+=1)o=r[f],a=o[0],a==="space"&&f===l-1&&!i?c=!1:a==="comment"?(m=r[f-1]?r[f-1][0]:"empty",d=r[f+1]?r[f+1][0]:"empty",!ub[m]&&!ub[d]?s.slice(-1)===","?c=!1:s+=o[1]:c=!1):s+=o[1];if(!c){let f=r.reduce((p,y)=>p+y[1],"");t.raws[n]={raw:f,value:s}}t[n]=s}rule(t){t.pop();let n=new lb;this.init(n,t[0][2]),n.raws.between=this.spacesAndCommentsFromEnd(t),this.raw(n,"selector",t),this.current=n}spacesAndCommentsFromEnd(t){let n,r="";for(;t.length&&(n=t[t.length-1][0],!(n!=="space"&&n!=="comment"));)r=t.pop()[1]+r;return r}spacesAndCommentsFromStart(t){let n,r="";for(;t.length&&(n=t[0][0],!(n!=="space"&&n!=="comment"));)r+=t.shift()[1];return r}spacesFromEnd(t){let n,r="";for(;t.length&&(n=t[t.length-1][0],n==="space");)r=t.pop()[1]+r;return r}stringFrom(t,n){let r="";for(let i=n;i<t.length;i++)r+=t[i][1];return t.splice(n,t.length-n),r}unclosedBlock(){let t=this.current.source.start;throw this.input.error("Unclosed block",t.line,t.column)}unclosedBracket(t){throw this.input.error("Unclosed bracket",{offset:t[2]},{offset:t[2]+1})}unexpectedClose(t){throw this.input.error("Unexpected }",{offset:t[2]},{offset:t[2]+1})}unknownWord(t){throw this.input.error("Unknown word "+t[0][1],{offset:t[0][2]},{offset:t[0][2]+t[0][1].length})}unnamedAtrule(t,n){throw this.input.error("At-rule without name",{offset:n[2]},{offset:n[2]+n[1].length})}};cb.exports=pc});var ss=be((B2,fb)=>{"use strict";var B1=Zt(),U1=ro(),W1=db();function as(e,t){let n=new U1(e,t),r=new W1(n);try{r.parse()}catch(i){throw i}return r.root}fb.exports=as;as.default=as;B1.registerParse(as)});var hc=be((U2,mb)=>{"use strict";var V1=Zt(),{my:$1}=Ki(),oo=class{constructor(t,n={}){if(this.type="warning",this.text=t,n.node&&n.node.source){n.node[$1]||V1.rebuild(n.node);let r=n.node.rangeBy(n);this.line=r.start.line,this.column=r.start.column,this.endLine=r.end.line,this.endColumn=r.end.column}for(let r in n)this[r]=n[r]}toString(){return this.node?this.node.error(this.text,{index:this.index,plugin:this.plugin,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text}};mb.exports=oo;oo.default=oo});var ls=be((W2,pb)=>{"use strict";var q1=hc(),ao=class{get content(){return this.css}constructor(t,n,r){this.processor=t,this.messages=[],this.root=n,this.opts=r,this.css="",this.map=void 0}toString(){return this.css}warn(t,n={}){n.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(n.plugin=this.lastPlugin.postcssPlugin);let r=new q1(t,n);return this.messages.push(r),r}warnings(){return this.messages.filter(t=>t.type==="warning")}};pb.exports=ao;ao.default=ao});var gc=be((V2,gb)=>{"use strict";var hb={};gb.exports=function(t){hb[t]||(hb[t]=!0,typeof console<"u"&&console.warn&&console.warn(t))}});var yc=be((q2,Sb)=>{"use strict";var z1=Zt(),j1=Ya(),K1=fc(),Y1=ss(),bb=ls(),X1=Or(),J1=ji(),{isClean:wt,my:Q1}=Ki(),$2=gc(),Z1={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},eT={AtRule:!0,AtRuleExit:!0,Comment:!0,CommentExit:!0,Declaration:!0,DeclarationExit:!0,Document:!0,DocumentExit:!0,Once:!0,OnceExit:!0,postcssPlugin:!0,prepare:!0,Root:!0,RootExit:!0,Rule:!0,RuleExit:!0},tT={Once:!0,postcssPlugin:!0,prepare:!0},Gr=0;function so(e){return typeof e=="object"&&typeof e.then=="function"}function bc(e){let t=!1,n=Z1[e.type];return e.type==="decl"?t=e.prop.toLowerCase():e.type==="atrule"&&(t=e.name.toLowerCase()),t&&e.append?[n,n+"-"+t,Gr,n+"Exit",n+"Exit-"+t]:t?[n,n+"-"+t,n+"Exit",n+"Exit-"+t]:e.append?[n,Gr,n+"Exit"]:[n,n+"Exit"]}function xb(e){let t;return e.type==="document"?t=["Document",Gr,"DocumentExit"]:e.type==="root"?t=["Root",Gr,"RootExit"]:t=bc(e),{eventIndex:0,events:t,iterator:0,node:e,visitorIndex:0,visitors:[]}}function yb(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[wt]=!1,n.nodes)for(let r of n.nodes)t.push(r)}return e}var xc={},En=class e{get content(){return this.stringify().content}get css(){return this.stringify().css}get map(){return this.stringify().map}get messages(){return this.sync().messages}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){return this.sync().root}get[Symbol.toStringTag](){return"LazyResult"}constructor(t,n,r){this.stringified=!1,this.processed=!1;let i;if(typeof n=="object"&&n!==null&&(n.type==="root"||n.type==="document"))i=yb(n);else if(n instanceof e||n instanceof bb)i=yb(n.root),n.map&&(typeof r.map>"u"&&(r.map={}),r.map.inline||(r.map.inline=!1),r.map.prev=n.map);else{let o=Y1;r.syntax&&(o=r.syntax.parse),r.parser&&(o=r.parser),o.parse&&(o=o.parse);try{i=o(n,r)}catch(a){this.processed=!0,this.error=a}i&&!i[Q1]&&z1.rebuild(i)}this.result=new bb(t,i,r),this.helpers={...xc,postcss:xc,result:this.result},this.plugins=this.processor.plugins.map(o=>typeof o=="object"&&o.prepare?{...o,...o.prepare(this.result)}:o)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}catch(t){return this.async().catch(t)}finally(t){return this.async().then(t,t)}getAsyncError(){throw new Error("Use process(css).then(cb) to work with async plugins")}handleError(t,n){let r=this.result.lastPlugin;try{n&&n.addToError(t),this.error=t,t.name==="CssSyntaxError"&&!t.plugin?(t.plugin=r.postcssPlugin,t.setMessage()):r.postcssVersion}catch(i){console&&console.error&&console.error(i)}return t}prepareVisitors(){this.listeners={};let t=(n,r,i)=>{this.listeners[r]||(this.listeners[r]=[]),this.listeners[r].push([n,i])};for(let n of this.plugins)if(typeof n=="object")for(let r in n){if(!eT[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${n.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!tT[r])if(typeof n[r]=="object")for(let i in n[r])i==="*"?t(n,r,n[r][i]):t(n,r+"-"+i.toLowerCase(),n[r][i]);else typeof n[r]=="function"&&t(n,r,n[r])}this.hasListener=Object.keys(this.listeners).length>0}async runAsync(){this.plugin=0;for(let t=0;t<this.plugins.length;t++){let n=this.plugins[t],r=this.runOnRoot(n);if(so(r))try{await r}catch(i){throw this.handleError(i)}}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[wt];){t[wt]=!0;let n=[xb(t)];for(;n.length>0;){let r=this.visitTick(n);if(so(r))try{await r}catch(i){let o=n[n.length-1].node;throw this.handleError(i,o)}}}if(this.listeners.OnceExit)for(let[n,r]of this.listeners.OnceExit){this.result.lastPlugin=n;try{if(t.type==="document"){let i=t.nodes.map(o=>r(o,this.helpers));await Promise.all(i)}else await r(t,this.helpers)}catch(i){throw this.handleError(i)}}}return this.processed=!0,this.stringify()}runOnRoot(t){this.result.lastPlugin=t;try{if(typeof t=="object"&&t.Once){if(this.result.root.type==="document"){let n=this.result.root.nodes.map(r=>t.Once(r,this.helpers));return so(n[0])?Promise.all(n):n}return t.Once(this.result.root,this.helpers)}else if(typeof t=="function")return t(this.result.root,this.result)}catch(n){throw this.handleError(n)}}stringify(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();let t=this.result.opts,n=J1;t.syntax&&(n=t.syntax.stringify),t.stringifier&&(n=t.stringifier),n.stringify&&(n=n.stringify);let r=this.result.root.source;if(t.map===void 0&&!(r&&r.input&&r.input.map)){let a="";return n(this.result.root,l=>{a+=l}),this.result.css=a,this.result}let o=new K1(n,this.result.root,this.result.opts).generate();return this.result.css=o[0],this.result.map=o[1],this.result}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let t of this.plugins){let n=this.runOnRoot(t);if(so(n))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[wt];)t[wt]=!0,this.walkSync(t);if(this.listeners.OnceExit)if(t.type==="document")for(let n of t.nodes)this.visitSync(this.listeners.OnceExit,n);else this.visitSync(this.listeners.OnceExit,t)}return this.result}then(t,n){return this.async().then(t,n)}toString(){return this.css}visitSync(t,n){for(let[r,i]of t){this.result.lastPlugin=r;let o;try{o=i(n,this.helpers)}catch(a){throw this.handleError(a,n.proxyOf)}if(n.type!=="root"&&n.type!=="document"&&!n.parent)return!0;if(so(o))throw this.getAsyncError()}}visitTick(t){let n=t[t.length-1],{node:r,visitors:i}=n;if(r.type!=="root"&&r.type!=="document"&&!r.parent){t.pop();return}if(i.length>0&&n.visitorIndex<i.length){let[a,l]=i[n.visitorIndex];n.visitorIndex+=1,n.visitorIndex===i.length&&(n.visitors=[],n.visitorIndex=0),this.result.lastPlugin=a;try{return l(r.toProxy(),this.helpers)}catch(s){throw this.handleError(s,r)}}if(n.iterator!==0){let a=n.iterator;n.descending&&(n.descending=!1,r.indexes[a]+=1);let l;for(;l=r.nodes[r.indexes[a]];){if(!l[wt]){l[wt]=!0,n.descending=!0,t.push(xb(l));return}r.indexes[a]+=1}n.iterator=0,delete r.indexes[a]}let o=n.events;for(;n.eventIndex<o.length;){let a=o[n.eventIndex];if(n.eventIndex+=1,a===Gr){r.nodes&&r.nodes.length&&(r[wt]=!0,n.iterator=r.getIterator());return}else if(this.listeners[a]){n.visitors=this.listeners[a];return}}t.pop()}walkSync(t){t[wt]=!0;let n=[{eventIndex:0,events:bc(t),iterator:0,node:t}];for(;n.length>0;){let r=n[n.length-1],i=r.node;if(r.iterator!==0){let o=r.iterator;r.descending&&(r.descending=!1,i.indexes[o]+=1);let a,l=!1;for(;a=i.nodes[i.indexes[o]];){if(!a[wt]){a[wt]=!0,r.descending=!0,n.push({eventIndex:0,events:bc(a),iterator:0,node:a}),l=!0;break}i.indexes[o]+=1}if(l)continue;r.iterator=0,delete i.indexes[o]}if(r.eventIndex<r.events.length){let o=r.events[r.eventIndex];if(r.eventIndex+=1,o===Gr)i.nodes&&i.nodes.length&&(r.iterator=i.getIterator());else{let a=this.listeners[o];a&&this.visitSync(a,i.toProxy())&&n.pop()}continue}n.pop()}}warnings(){return this.sync().warnings()}};En.registerPostcss=e=>{xc=e};Sb.exports=En;En.default=En;X1.registerLazyResult(En);j1.registerLazyResult(En)});var Eb=be((j2,vb)=>{"use strict";var nT=fc(),rT=ss(),iT=ls(),oT=ji(),z2=gc(),lo=class{get content(){return this.result.css}get css(){return this.result.css}get map(){return this.result.map}get messages(){return[]}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){if(this._root)return this._root;let t,n=rT;try{t=n(this._css,this._opts)}catch(r){this.error=r}if(this.error)throw this.error;return this._root=t,t}get[Symbol.toStringTag](){return"NoWorkResult"}constructor(t,n,r){n=n.toString(),this.stringified=!1,this._processor=t,this._css=n,this._opts=r,this._map=void 0;let i=oT;this.result=new iT(this._processor,void 0,this._opts),this.result.css=n;let o=this;Object.defineProperty(this.result,"root",{get(){return o.root}});let a=new nT(i,void 0,this._opts,n);if(a.isMap()){let[l,s]=a.generate();l&&(this.result.css=l),s&&(this.result.map=s)}else a.clearAnnotation(),this.result.css=a.css}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}catch(t){return this.async().catch(t)}finally(t){return this.async().then(t,t)}sync(){if(this.error)throw this.error;return this.result}then(t,n){return this.async().then(t,n)}toString(){return this._css}warnings(){return[]}};vb.exports=lo;lo.default=lo});var _b=be((K2,Ab)=>{"use strict";var aT=Ya(),sT=yc(),lT=Eb(),uT=Or(),Kn=class{constructor(t=[]){this.version="8.5.28",this.plugins=this.normalize(t)}normalize(t){let n=[];for(let r of t)if(r.postcss===!0?r=r():r.postcss&&(r=r.postcss),typeof r=="object"&&Array.isArray(r.plugins))n=n.concat(r.plugins);else if(typeof r=="object"&&r.postcssPlugin)n.push(r);else if(typeof r=="function")n.push(r);else if(!(typeof r=="object"&&(r.parse||r.stringify)))throw new Error(r+" is not a PostCSS plugin");return n}process(t,n={}){return!this.plugins.length&&!n.parser&&!n.stringifier&&!n.syntax?new lT(this,t,n):new sT(this,t,n)}use(t){return this.plugins=this.plugins.concat(this.normalize([t])),this}};Ab.exports=Kn;Kn.default=Kn;uT.registerProcessor(Kn);aT.registerProcessor(Kn)});var Nb=be((Y2,Lb)=>{"use strict";var wb=Ka(),Cb=Zi(),cT=Zt(),dT=ja(),Tb=to(),Rb=Ya(),fT=Q0(),mT=ro(),pT=yc(),hT=cc(),gT=Ji(),bT=ss(),Sc=_b(),xT=ls(),Mb=Or(),kb=es(),yT=ji(),ST=hc();function _e(...e){return e.length===1&&Array.isArray(e[0])&&(e=e[0]),new Sc(e)}_e.plugin=function(t,n){let r=!1;function i(...a){console&&console.warn&&!r&&(r=!0,console.warn(t+`: postcss.plugin was deprecated. Migration guide:
|
|
28
|
-
https://evilmartians.com/chronicles/postcss-8-plugin-migration`),process.env.LANG&&process.env.LANG.startsWith("zh")&&console.warn(t+`: \u91CC\u9762 postcss.plugin \u88AB\u5F03\u7528. \u8FC1\u79FB\u6307\u5357:
|
|
29
|
-
https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.postcssVersion=new
|
|
30
|
-
`||e==="\r"||e==="\f"}var
|
|
31
|
-
`?t+2:Em(e[t])?t+1:t}function Sl(e,t){let n=e[t+1];if(n===void 0||/[\n\r\f]/.test(n))return null;let r=oA.exec(e.slice(t+1,t+7));if(!r)return{value:n,end:t+2};let i=aA(Number.parseInt(r[0],16));return{value:String.fromCodePoint(i),end:Am(e,t+1+r[0].length)}}function sA(e,t){let n=i=>vm(i)&&!/[0-9-]/.test(i),r=i=>e[i]==="\\"&&Sl(e,i)!==null;return e[t]==="-"?e[t+1]==="-"||n(e[t+1])||r(t+1):n(e[t])||r(t)}function Yo(e,t){let n=t;for(;e.startsWith("/*",n);){let r=e.indexOf("*/",n+2);n=r<0?e.length:r+2}return n}function ci(e,t){let n=Yo(e,t);for(;Em(e[n]);)n=Yo(e,n+1);return n}function di(e,t){if(!sA(e,t))return null;let n=t,r="";for(;n<e.length;){let i=e[n];if(i==="\\"){let o=Sl(e,n);if(!o)break;r+=o.value,n=o.end;continue}if(!vm(i))break;r+=i,n+=1}return n===t?null:{value:r,end:n}}var vl=45;function _m(e){return e>=48&&e<=57}function lA(e){return e>=128||e===vl||e===95||_m(e)||e>=65&&e<=90||e>=97&&e<=122}function uA(e,t){let n=e.charCodeAt(t);return n>=1&&n<=31||n===127?!0:_m(n)?t===0||t===1&&e.charCodeAt(0)===vl:!1}function qt(e){let t="";for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n),i=e[n];r===0?t+="\uFFFD":uA(e,n)?t+=`\\${r.toString(16)} `:n===0&&e.length===1&&r===vl?t+=`\\${i}`:lA(r)?t+=i:t+=`\\${i}`}return t}var wm=/\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:[0-9a-fA-F]{1,6}(?:\r\n|[ \t\r\n\f])?|[\s\S])|"(?:[^"\\]|\\[\s\S])*"|'(?:[^'\\]|\\[\s\S])*'|\[(?:\/\*(?:[^*]|\*(?!\/))*\*\/|\\[\s\S]|"(?:[^"\\]|\\[\s\S])*"|'(?:[^'\\]|\\[\s\S])*'|[^\]"'\\/]|\/(?!\*))*\]/g;function cA(e){let t=new Array(e.length).fill(!0);for(let n of e.matchAll(wm)){let r=n.index;t.fill(!1,r,r+n[0].length)}return t}function Xo(e,t,n){if(t.length===0||!e.includes("#"))return e;let r=new Set(t),i=cA(e),o="",a=0;for(;a<e.length;){let l=i[a]&&e[a]==="#"?di(e,a+1):null;l&&r.has(l.value)?(o+=n(l.value),a=l.end):(o+=e[a],a+=1)}return o}function dA(e){let t="";for(let n=0;n<e.length;n+=1){if(e[n]==="\\"){let r=e[n+1];if(r!==void 0&&/[\n\r\f]/.test(r)){n=Am(e,n+1)-1;continue}let i=Sl(e,n);if(i){t+=i.value,n=i.end-1;continue}}t+=e[n]}return t}function El(e){return Array.from(e,t=>{let n=t.charCodeAt(0);return n===0?"\uFFFD":n<32||n===127?`\\${n.toString(16)} `:t==='"'||t==="\\"?`\\${t}`:t}).join("")}function fA(e,t){return e?{kind:"any"}:t===void 0?{kind:"none"}:{kind:"named",prefix:t}}function mA(e,t){return e[t]==="|"&&e[t+1]!=="="}function pA(e,t){let n=e[t]==="*",r=n?{value:"*",end:t+1}:di(e,t),i=Yo(e,r?.end??t);if(!mA(e,i))return n?null:r?{token:r,namespace:{kind:"none"}}:null;let o=di(e,Yo(e,i+1));return o?{token:o,namespace:fA(n,r?.value)}:null}function hA(e){if(e[0]!=="[")return null;let t=ci(e,1),n=pA(e,t);if(!n)return null;let{token:r,namespace:i}=n;return{name:r.value,rawName:e.slice(t,r.end),namespace:i,end:r.end}}function gA(e,t){let n=/^(?:"((?:\\[\s\S]|[^"\\])*)"|'((?:\\[\s\S]|[^'\\])*)')/.exec(e.slice(t));return n?{value:dA(n[1]??n[2]),end:t+n[0].length}:di(e,t)}function bA(e,t){let n=ci(e,t),r=di(e,n);if(r){if(!/^[is]$/i.test(r.value))return null;n=ci(e,r.end)}return e[n]!=="]"||n!==e.length-1?null:{flag:r?.value}}function Cm(e){let t=hA(e);if(!t)return null;let n=ci(e,t.end),i=["=","~=","|=","^=","$=","*="].find(l=>e.startsWith(l,n));if(!i)return null;let o=gA(e,ci(e,n+i.length));if(!o)return null;let a=bA(e,o.end);return a?{name:t.name,rawName:t.rawName,namespace:t.namespace,operator:i,value:o.value,flag:a.flag}:null}function Al(e,t){return e.replace(wm,n=>n.startsWith("[")?t(n):n)}var St="data-hf-svg-reference-aliases";function Jo(e,t,n,r){let i={"=":(m,f)=>m===f,"~=":(m,f)=>m.split(/[ \t\r\n\f]+/).includes(f),"|=":(m,f)=>m===f||m.startsWith(f+"-"),"^=":(m,f)=>m.startsWith(f),"$=":(m,f)=>m.endsWith(f),"*=":(m,f)=>m.includes(f)},o=(m,f,p)=>!f&&p!=="="&&p!=="|="?!1:i[p](m,f),a=m=>m.replace(/[A-Z]/g,f=>f.toLowerCase()),l=m=>{let f=Cm(m);if(!f)return m;let{name:p,rawName:y,namespace:b,operator:g,value:v,flag:E}=f;if(b.kind==="named"!=(r!==void 0))return m;let _=E?.toLowerCase()==="i"?a:w=>w,F=a(p),D=n.filter(w=>{let L=b.kind==="none"?w.name:w.localName,O=b.kind==="named"?r.get(b.prefix):null;return(b.kind==="any"||w.namespaceURI===O)&&a(L)===F}),k=new Set([m]);for(let w of D)o(_(w.before),_(v),g)&&k.add(`[${y}="${El(w.after)}"${E?` ${E}`:""}]`);return k.size===1?m:`:is(${[...k].join(", ")})`};if(r)return Al(e,l);let s=new Map(t.map(({id:m,replacement:f})=>[m,f])),c=new Map;for(let m of n){if(m.name!=="id"||m.before===m.after||s.has(m.before))continue;let f=c.get(m.before);f||(f=new Set([`#${qt(m.before)}`]),c.set(m.before,f)),f.add(`#${qt(m.after)}`)}for(let[m,f]of c)s.set(m,`:is(${[...f].join(", ")})`);let d=Xo(e,[...s.keys()],m=>s.get(m));return Al(d,l)}function Hn(e,t,n=!0){let r=[],o=(n?[...e.querySelectorAll(`[${t}]`)]:[]).map(l=>l.getAttribute(t)),a=e.getAttribute?.(t);a&&o.unshift(a);for(let l of o){let s;try{s=JSON.parse(l)}catch{continue}if(!Array.isArray(s))continue;let c=s;for(let d of c){if(!yA(d))continue;let{name:m,localName:f,namespaceURI:p,before:y,after:b}=d;r.push({name:m,localName:f,namespaceURI:p,before:y,after:b})}}return r}function yA(e){if(!e||typeof e!="object")return!1;let{name:t,localName:n,namespaceURI:r,before:i,after:o}=e;return typeof t=="string"&&typeof n=="string"&&(r===null||typeof r=="string")&&typeof i=="string"&&typeof o=="string"}function SA(e){let t=[],n=[],r=!1,i,o=new WeakMap,a=(c,d)=>{for(let m of c){if("selectorText"in m){let f=m,p=o.get(f),y=f.selectorText,b=p?.applied===y?p.authored:y,g=Jo(b,[],n,d);g!==y&&(f.selectorText=g),g===b?o.delete(f):o.set(f,{authored:b,applied:f.selectorText})}"cssRules"in m&&a(m.cssRules,d)}},l=()=>{if(n.length)for(let c of e.document.styleSheets){let d;try{d=c.cssRules}catch{continue}let m=new Map;for(let f of d){if(!("namespaceURI"in f))continue;let{prefix:p,namespaceURI:y}=f;p&&m.set(p,y||null)}m.size&&a(d,m)}},s={rewrite:(c,d=[])=>{if(typeof c!="string"||!c.includes("#")&&!c.includes("["))return c;let m=Jo(c,d.length?[...d,...t]:t,n);if(m!==c){if(!i){let f=e.document.createElement("div");i=f.matches.bind(f)}i(c)}return m},refresh(){n=Hn(e.document,St).filter(f=>f.before!==f.after);let c=new Set(n.filter(f=>f.name==="id").map(f=>f.before)),d=new Set;t=[];for(let f of e.document.querySelectorAll("[data-hf-authored-id][id]")){let p=f.getAttribute("data-hf-authored-id");if(!p||p===f.id||d.has(p)||c.has(p))continue;d.add(p);let y=El(p);t.push({id:p,replacement:`:is(#${qt(p)}, [data-hf-authored-id="${y}"])`})}if(l(),r||!t.length&&!n.length)return;let m=e.Element.prototype;m.querySelector=new Proxy(m.querySelector,{apply(f,p,y){return Reflect.apply(f,p,[s.rewrite(y[0])])}}),m.querySelectorAll=new Proxy(m.querySelectorAll,{apply(f,p,y){return Reflect.apply(f,p,[s.rewrite(y[0])])}}),r=!0}};e.__hfSvgSelectorAliases=s,s.refresh()}function ar(){let e=window;e.__hfSvgSelectorAliases?e.__hfSvgSelectorAliases.refresh():SA(e)}function Qo(){return globalThis}function fi(e){let t="unknown error";try{t=e instanceof Error?`${e.name}: ${e.message}`:String(e)}catch(n){H("runtime.startupError",n)}window.__hfStartupError=`HyperFrames runtime failed: ${t}. Check the composition's scripts and window.__timelines entries; if they look right, report this as a HyperFrames bug.`}function H(e,t){if(typeof window>"u")return;let n=Qo(),r=n.__hf?.onSwallowed;if(r)try{r({label:e,error:t})}catch(i){}(n.__hfDebug||n.__HYPERFRAMES_DEBUG)&&console.debug(`[hyperframes] ${e} swallowed:`,t)}var Zo="hyperframes-studio-preview",Gn="data-hf-upcoming",ea="data-hf-preview-lazy";var st="data-hf-preview-raster",Nt="data-hf-autostamped",ta=[Gn,ea,st,Nt];var Tm="http://www.w3.org/1999/xhtml";function Ie(e){return e!=null&&e.nodeType===1}function Se(e){return Ie(e)&&e.namespaceURI===Tm}function sr(e,t){return Se(e)&&e.localName===t}function Ce(e){return sr(e,"video")}function na(e){return sr(e,"audio")}function pe(e){return Ce(e)||na(e)}function $e(e){return sr(e,"img")}function zt(e){return sr(e,"canvas")}function Rm(e){return sr(e,"style")}function Mm(e){return sr(e,"link")}function lr(e){return Ie(e)&&(e.namespaceURI===Tm||e.namespaceURI==="http://www.w3.org/2000/svg")}var Nm="data-hf-first-pass-hide",km="[data-start]:not(video, audio, img) { visibility: hidden !important; }",vA='img[loading="lazy"] { display: none !important; }',Fm="data-hf-skip-hidden-images",pi=`[data-start]:not(video, audio, img, [${Gn}], [${Nt}])[style*="visibility: hidden"]`,EA=`${pi} img { display: none !important; }`,AA=`meta[name="${Zo}"]`,Bn="data-hf-clip-hidden",Lm="data-hf-hidden-clip-contents",mi=`[${Bn}][style*="visibility: hidden"]`,_A=`${mi} * { visibility: hidden !important; }`,wA=`svg${mi}, svg${mi} *, ${mi} svg, ${mi} svg * { filter: none !important; }`;function Im(){let e=Array.from(document.querySelectorAll(`[${Bn}]`));for(let t of e)t.style.visibility="visible";return()=>{for(let t of e)t.style.visibility="hidden"}}function _l(e,t,n){let r=document.createElement("style");r.setAttribute(t,""),r.textContent=n,e.appendChild(r)}function hi(){return document.querySelector(`style[${Fm}]`)!==null}function Dm(){if(typeof document>"u")return;let e=document.head??document.documentElement;if(!e)return;let t=document.querySelector(AA)!==null;t&&!hi()&&_l(e,Fm,EA),document.querySelector(`style[${Lm}]`)||_l(e,Lm,`${_A} ${wA}`);let n=window;if(n.__hfFirstPassHidden||n.__hyperframeRuntimeBootstrapped)return;let r=t?`${km} ${vA}`:km;_l(e,Nm,r),n.__hfFirstPassHidden=!0}function Pm(){let e=window;if(!e.__hfFirstPassHidden)return!1;e.__hfFirstPassHidden=!1;for(let t of document.querySelectorAll(`style[${Nm}]`))t.remove();return!0}var CA=new Set(["transform","translate","rotate","scale"]),ra=`[${st}]`,TA=`${ra} { will-change: auto !important; }`,Om=new Set([...ta,Bn]),ur=null,cr=null,Hm=new WeakMap;function RA(e){return e.willChange.split(",").every(t=>CA.has(t.trim()))}function wl(e,t,n=!0){for(let r of n?[null,"::before","::after"]:["::before","::after"]){let i=getComputedStyle(e,r);if(!(r&&i.content==="none")&&(i.position==="fixed"||!t&&(i.zIndex!=="auto"||i.mixBlendMode!=="normal")))return!0}return!1}function MA(e,t){if(t.position==="static")return!1;let n=t.zIndex!=="auto";if(wl(e,n,!1))return!1;for(let r of e.querySelectorAll("*"))if(wl(r,n))return!1;return!0}function Gm(e,t){return`${t.zIndex}|${e.style?.willChange??""}`}function Tl(e,t){if(e===ur)return!1;let n=e.hasAttribute(st);n&&t&&e.removeAttribute(st);let r=getComputedStyle(e),o=(n&&!t||RA(r))&&MA(e,r);return o&&Hm.set(e,Gm(e,r)),o}function Bm(e,t){t!==e.hasAttribute(st)&&e.toggleAttribute(st,t)}function kA(e,t){Bm(e,Tl(e,t))}function Um(e){let t=e.parentElement?.closest(ra);for(;t;)wl(e,getComputedStyle(t).zIndex!=="auto")&&t.removeAttribute(st),t=t.parentElement?.closest(ra)}function Wm(e,t){let n=[];for(let r of[e,...e.querySelectorAll("*")])t.checked.has(r)||(t.checked.add(r),n.push([r,Tl(r,r===e||t.changed.has(r))]));for(let[r,i]of n)Bm(r,i);for(let[r]of n)Um(r)}function LA(e){if(e.hasAttribute(st)){let t=getComputedStyle(e);(t.position==="static"||Gm(e,t)!==Hm.get(e))&&kA(e,!0)}Um(e)}function Vm(){for(let e of document.querySelectorAll(ra))e.removeAttribute(st)}function Cl(){Vm();let e=[...document.querySelectorAll("*")].filter(t=>Tl(t,!0));for(let t of e)t.setAttribute(st,"")}function NA(e,t){!Ie(e.target)||Om.has(e.attributeName??"")||(e.attributeName==="style"?LA(e.target):Wm(e.target,t))}function FA(e){return[...e.addedNodes].filter(t=>Ie(t)&&(t.localName==="style"||t.localName==="link"))}function IA(e){let t=new Set;for(let n of e){let r=n.attributeName;r===null||r==="style"||Om.has(r)||Ie(n.target)&&t.add(n.target)}return t}function DA(e){let t=e.flatMap(FA);for(let r of t)r.addEventListener("load",()=>cr&&Cl(),{once:!0});if(t.length)return Cl();let n={changed:IA(e),checked:new Set};for(let r of e)if(r.type==="attributes")NA(r,n);else for(let i of r.addedNodes)Ie(i)&&Wm(i,n)}function PA(){cr?.disconnect(),cr=null,ur?.remove(),ur=null,Vm()}function $m(e){if(!(!(e>0)||!Number.isFinite(e))){if(e>=1)return PA();cr||(ur=document.createElement("style"),ur.textContent=TA,(document.head??document.documentElement).append(ur),Cl(),cr=new MutationObserver(DA),cr.observe(document.documentElement,{subtree:!0,childList:!0,attributes:!0}))}}var gi="hf-runtime-filler",OA=["seconds-time","rational-fps","seek-keep-playing","composition-manifest-v1","runtime-data","play-range"];function HA(e,t){let n=Math.abs(e),r=Math.abs(t);for(;r!==0;){let i=n%r;n=r,r=i}return n||1}function GA(e){let t=Number.isFinite(e)&&e>0?e:30,n=Number.isInteger(t)?1:1e6,r=Math.round(t*n),i=HA(r,n);return{numerator:r/i,denominator:n/i}}function qm(e,t,n){return Math.max(e,(Math.ceil(t*n-1e-6)-1)/n)}function Rl(e){if(typeof e!="object"||e===null)return null;let t=e;return!Number.isFinite(t.numerator)||!Number.isFinite(t.denominator)||(t.numerator??0)<=0||(t.denominator??0)<=0?null:Number(t.numerator)/Number(t.denominator)}function ia(e){return{protocolVersion:1,capabilities:OA,fps:GA(e)}}function BA(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function zm(e,t=30){if(typeof e!="object"||e===null)return{status:"legacy",fps:t};let n=e;if(n.protocolVersion===void 0)return{status:"legacy",fps:t};if(n.protocolVersion!==1)return{status:"unsupported",code:"unsupported_protocol_version",receivedVersion:n.protocolVersion};let r=Rl(n.fps);return r===null||!BA(n.capabilities)?{status:"unsupported",code:"invalid_protocol_metadata",receivedVersion:n.protocolVersion}:{status:"supported",fps:r,metadata:n}}var dr=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),YI=Object.freeze([dr.start,dr.duration,dr.trackIndex]),XI=Object.freeze([dr.derivedEnd]),JI=Object.freeze([dr.derivedEnd,dr.legacyTrack]);function fn(e){if(e==null||e.trim()==="")return null;let t=Number(e);return Number.isFinite(t)?t:null}var Km=/^[A-Za-z0-9_.:-]+$/;function Ym(e,t){let n=e.charCodeAt(t);return n>=48&&n<=57}function jm(e,t){let n=t;for(;n>=0&&Ym(e,n);)n--;return n}function UA(e,t){let n=t;for(;n>=0&&(e[n]??"").trim()==="";)n--;return n}function WA(e){let t=e.length-1;if(!Ym(e,t))return null;let n=jm(e,t);return e[n]==="."&&(n=jm(e,n-1)),n+1}function VA(e){let t=WA(e);if(t==null)return null;let n=UA(e,t-1),r=e[n];if(r!=="+"&&r!=="-")return null;let i=e.slice(0,n).trim();if(!Km.test(i))return null;let o=Number(e.slice(t));return Number.isFinite(o)?{refId:i,operator:r,magnitude:o}:null}function oa(e){let t=(e??"").trim();if(!t)return null;let n=fn(t);if(n!=null)return{kind:"absolute",value:n};if(Km.test(t))return{kind:"reference",refId:t,offset:0};let r=VA(t);return r?{kind:"reference",refId:r.refId,offset:r.operator==="-"?-r.magnitude:r.magnitude}:null}var Xm=e=>{let t=fn(e);return t!==null&&t>=0?t:null};function aa(e){return Xm(e("data-playback-start"))??Xm(e("data-media-start"))??0}var bi=.1,xi=10;function Ml(e){return Number.isFinite(e)&&e>0?Math.max(bi,Math.min(xi,e)):1}function Jm(e,t=1){let n=Number.parseFloat(e("data-playback-rate")??"");return Ml(Number.isFinite(n)&&n>0?n:t)}function kl(e){let t=fn(e("data-duration"));return t!==null&&t>0?t:null}function Qm(e,t){let n=kl(e);if(n!==null)return n;let r=fn(e("data-end"));return r!==null?r-t:null}var $A=3;function Ll(e,t,n){return Number.isFinite(e)?Math.max(0,e-t)/Ml(n):null}function Nl(e){let{tag:t,authoredDurationSeconds:n,sourceDurationSeconds:r,mediaStartSeconds:i,playbackRate:o}=e;if(n!==null&&n>0)return{seconds:n,source:"authored"};if(t==="img")return{seconds:$A,source:"default"};if(r===null)return{seconds:null,source:"pending",reason:"source duration not yet probed"};let a=Ll(r,i,o);return a===null?{seconds:null,source:"pending",reason:"source reported a non-finite duration"}:{seconds:a,source:"media"}}var jt="data-fx-chain",nD=jt.slice(5),Zm=1,yi=(e="frequency",t="Frequency",n=1e3,r=20,i=2e4)=>({kind:"number",key:e,label:t,unit:"Hz",min:r,max:i,step:1,default:n,scale:"log",automatable:!0}),Fl=(e=.707,t="Bandwidth: higher is narrower.")=>({kind:"number",key:"q",label:"Q",unit:"",min:.1,max:20,step:.01,default:e,scale:"log",automatable:!0,hint:t}),sa=(e=-40,t=40,n=0)=>({kind:"number",key:"gain",label:"Gain",unit:"dB",min:e,max:t,step:.1,default:n,automatable:!0}),ep={kind:"enum",key:"poles",label:"Slope",options:[{value:"1",label:"6 dB/oct"},{value:"2",label:"12 dB/oct"}],default:"2",hint:"Two poles is the usual biquad; one pole is gentler."},np=[{id:"gain",label:"Gain",group:"dynamics",description:"Raise or lower the whole signal. Automate it to duck under something else.",params:[sa(-60,12,0)],web:"gain-node"},{id:"peaking",label:"Peaking EQ",group:"filter",description:"Boost or cut a band, leaving everything either side alone.",params:[yi("frequency","Frequency",1e3),sa(-40,40,0),Fl(1)],web:"biquad-peaking"},{id:"lowshelf",label:"Low Shelf",group:"filter",description:"Lift or drop everything below the corner frequency.",params:[yi("frequency","Frequency",200,20,2e3),sa(-40,40,0)],web:"biquad-lowshelf"},{id:"highshelf",label:"High Shelf",group:"filter",description:"Lift or drop everything above the corner frequency.",params:[yi("frequency","Frequency",4e3,500,2e4),sa(-40,40,0)],web:"biquad-highshelf"},{id:"highpass",label:"High-pass",group:"filter",description:"Remove low frequencies: the usual fix for rumble on a voice.",params:[yi("frequency","Cutoff",300,20,2e4),Fl(.707),ep],web:"biquad-highpass"},{id:"lowpass",label:"Low-pass",group:"filter",description:"Remove high frequencies, which darkens or muffles a track.",params:[yi("frequency","Cutoff",8e3,100,2e4),Fl(.707),ep],web:"biquad-lowpass"},{id:"compressor",label:"Compressor",group:"dynamics",description:"Pull loud parts down so the quiet ones can come up.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-60,max:0,step:.5,default:-24,hint:"Level above which the compressor starts working."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:4},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:2e3,step:.1,default:20,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:250,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83,hint:"1 is a hard corner; higher eases into it."},{kind:"number",key:"makeup",label:"Makeup",unit:"dB",min:0,max:36,step:.1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1,hint:"Below 1 blends the dry signal back in."}],web:"worklet-compressor"},{id:"limiter",label:"Limiter",group:"dynamics",description:"Peak limiter that follows the signal's level. It has no lookahead, so a fast peak or an inter-sample peak can pass the ceiling; use the true-peak limiter for a delivery limit.",params:[{kind:"number",key:"limit",label:"Ceiling",unit:"dB",min:-24,max:0,step:.1,default:-1},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.1,max:80,step:.1,default:5},{kind:"number",key:"release",label:"Release",unit:"ms",min:1,max:8e3,step:1,default:50,scale:"log"},{kind:"number",key:"level_out",label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0}],web:"worklet-limiter"},{id:"truepeak",label:"True-peak limiter",group:"dynamics",description:"Lookahead limiter that holds a 4x estimate of the inter-sample peak at a dBTP ceiling; full-band noise can land up to about 1.7 dB above it. Adds lookahead plus about 0.3 ms of latency.",params:[{kind:"number",key:"ceiling",label:"Ceiling",unit:"dBTP",min:-24,max:0,step:.1,default:-1,hint:"Target true peak, measured on a 4x oversampled signal. Dense full-band sound can end up to about 1.7 dB above it."},{kind:"number",key:"lookahead",label:"Lookahead",unit:"ms",min:.5,max:10,step:.1,default:3,hint:"How far ahead the gain starts falling. Longer is smoother and adds the same latency."},{kind:"number",key:"release",label:"Release",unit:"ms",min:10,max:2e3,step:1,default:80,scale:"log"}],web:"worklet-truepeak"},{id:"gate",label:"Noise Gate",group:"dynamics",description:"Silence the track when it drops below the threshold.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-80,max:0,step:.5,default:-35},{kind:"number",key:"range",label:"Range",unit:"dB",min:-80,max:0,step:.5,default:-24,hint:"How far down the gate pulls when closed."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:10},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:9e3,step:.1,default:1,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:100,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83}],web:"worklet-gate"},{id:"saturate",label:"Saturation",group:"nonlinear",description:"Soft-clip the waveform for warmth or outright distortion.",params:[{kind:"enum",key:"type",label:"Curve",options:[{value:"tanh",label:"Tanh"},{value:"atan",label:"Arctan"},{value:"cubic",label:"Cubic"},{value:"exp",label:"Exponential"},{value:"alg",label:"Algebraic"},{value:"quintic",label:"Quintic"},{value:"sin",label:"Sine"},{value:"erf",label:"Error function"},{value:"hard",label:"Hard clip"}],default:"tanh"},{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-40,max:0,step:.1,default:-6},{kind:"number",key:"output",automatable:!0,label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0},{kind:"number",key:"oversample",label:"Oversample",unit:"x",min:1,max:8,step:1,default:4,hint:"Higher costs more but keeps aliasing down."}],web:"waveshaper"},{id:"bitcrush",label:"Bitcrush",group:"nonlinear",description:"Drop bit depth and sample rate for a lo-fi, digital sound.",params:[{kind:"number",key:"bits",label:"Bit depth",unit:"bit",min:1,max:32,step:.1,default:8},{kind:"number",key:"samples",label:"Sample hold",unit:"x",min:1,max:250,step:1,default:1,hint:"Repeats each sample N times, a crude downsample."},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-bitcrush"},{id:"pitchshift",label:"Pitch shift",group:"time",description:"Shifts pitch up or down without changing playback speed. Adds ~50 ms of latency.",params:[{kind:"number",key:"semitones",label:"Semitones",unit:"st",min:-12,max:12,step:1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-pitchshift"},{id:"delay",label:"Delay",group:"time",description:"Repeating echoes behind the dry signal.",params:[{kind:"number",key:"time",automatable:!0,label:"Time",unit:"ms",min:1,max:5e3,step:1,default:250,scale:"log"},{kind:"number",key:"feedback",automatable:!0,label:"Feedback",unit:"",min:.01,max:.95,step:.01,default:.35},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.4}],web:"delay-feedback"},{id:"chorus",label:"Chorus",group:"time",description:"Detuned copies of the signal for width and thickness.",params:[{kind:"number",key:"delay",automatable:!0,label:"Delay",unit:"ms",min:1,max:100,step:.1,default:7},{kind:"number",key:"depth",automatable:!0,label:"Depth",unit:"ms",min:0,max:10,step:.01,default:2},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.01,max:10,step:.01,default:1},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.5}],web:"chorus-lfo"},{id:"phaser",label:"Phaser",group:"time",description:"Sweeping notches moving through the spectrum.",params:[{kind:"number",key:"in_gain",automatable:!0,label:"Input",unit:"",min:0,max:1,step:.01,default:.4},{kind:"number",key:"out_gain",automatable:!0,label:"Output",unit:"",min:0,max:2,step:.01,default:.74},{kind:"number",key:"delay",label:"Delay",unit:"ms",min:.1,max:5,step:.1,default:3},{kind:"number",key:"decay",label:"Decay",unit:"",min:0,max:.99,step:.01,default:.4},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.1,max:2,step:.01,default:.5},{kind:"enum",key:"type",label:"Waveform",options:[{value:"0",label:"Triangular"},{value:"1",label:"Sinusoidal"}],default:"0"}],web:"allpass-phaser"},{id:"reverb",label:"Reverb",group:"time",description:"Room tail. Both ends convolve the same generated impulse, so preview matches render.",params:[{kind:"number",key:"size",label:"Room size",unit:"",min:.05,max:1,step:.01,default:.7},{kind:"number",key:"damping",label:"Damping",unit:"",min:0,max:1,step:.01,default:.5,hint:"Higher rolls the top off the tail faster."},{kind:"number",key:"wet",automatable:!0,label:"Wet",unit:"",min:0,max:1,step:.01,default:.35},{kind:"number",key:"dry",automatable:!0,label:"Dry",unit:"",min:0,max:1,step:.01,default:.7}],web:"convolver"}],Il=new Map(np.map(e=>[e.id,e]));function Si(e){return Il.get(e)}var rD=np.map(e=>e.id);function vi(e,t){let n=Il.get(e);if(!n)return{};let r={};for(let i of n.params){let o=t?.[i.key];if(i.kind==="enum"){let l=i.options.some(s=>s.value===o);r[i.key]=l?o:i.default;continue}let a=typeof o=="number"?o:typeof o=="string"&&o.trim()!==""?Number(o):Number.NaN;r[i.key]=Number.isFinite(a)?Math.min(i.max,Math.max(i.min,a)):i.default}return r}var mn=class extends Error{constructor(t){super(t),this.name="AudioFxChainError"}};function rp(e){let t;try{t=JSON.parse(e)}catch(i){throw new mn(`Chain file is not valid JSON: ${i.message}`)}if(typeof t!="object"||t===null)throw new mn("Chain file must be a JSON object.");let n=t;if(n.version!==Zm)throw new mn(`Unsupported chain version: ${String(n.version)}`);if(!Array.isArray(n.nodes))throw new mn("Chain file is missing a `nodes` array.");let r=n.nodes.map(qA);return{version:Zm,nodes:r}}function Ei(e){return e.nodes.filter(t=>t.enabled!==!1)}function qA(e,t){if(typeof e!="object"||e===null)throw new mn(`Node ${t} is not an object.`);let n=e;if(typeof n.type!="string"||!Il.has(n.type))throw new mn(`Node ${t} has unknown effect type: ${String(n.type)}`);return jA({type:n.type,id:la(n.id),fromCarve:tp(n.fromCarve),fromPreset:la(n.fromPreset),label:la(n.label),fromEq:la(n.fromEq),fromLeveller:tp(n.fromLeveller),presetAmount:zA(n.presetAmount),enabled:n.enabled!==!1,params:vi(n.type,n.params??void 0)})}function la(e){return typeof e=="string"&&e?e:void 0}function tp(e){return e===!0?!0:void 0}function zA(e){if(!(typeof e!="number"||!Number.isFinite(e)))return Math.min(1,Math.max(0,e))}function jA(e){for(let t of Object.keys(e))e[t]===void 0&&delete e[t];return e}function KA(e){return 10**(e/20)}var Dl=KA(12);function ft(e){return Number.isFinite(e)?Math.max(0,Math.min(Dl,e)):1}function ua(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function ip(e,t){let n=typeof HTMLMediaElement>"u"?void 0:Object.getOwnPropertyDescriptor(HTMLMediaElement.prototype,"volume"),r=n?.get,i=n?.set;if(!r||!i)return t();let o=Number(r.call(e));Object.defineProperty(e,"volume",{configurable:!0,get:()=>o,set:a=>{o=Number(a),i.call(e,ua(o))}});try{return t()}finally{delete e.volume,i.call(e,ua(o))}}var Yt="data-automation",dD=Yt.slice(5),ca=1,YA=512,Kt=class extends Error{constructor(t){super(t),this.name="AudioAutomationError"}},fr="volume",da="rate";function _i(e){if(e===fr)return{kind:"volume"};if(e===da)return{kind:"rate"};let t=e.split(".");if(t.length===3&&t[0]==="fx"&&t[1]===XA){let i=t[2];return i?{kind:"preset",presetId:i}:null}if(t.length!==3||t[0]!=="fx")return null;let[,n,r]=t;return!n||!r?null:{kind:"fx",nodeId:n,param:r}}var XA="preset";var JA={min:0,max:1,step:.01,unit:"",label:"Amount",scale:"linear",default:1},fa={min:0,max:Dl,step:.01,unit:"",label:"Volume",scale:"linear",default:1},op={min:bi,max:xi,step:.05,unit:"x",label:"Speed",scale:"log",default:1};function Pl(e,t){let n=_i(e);if(!n)return null;if(n.kind==="volume")return fa;if(n.kind==="rate")return op;if(n.kind==="preset")return t?.nodes.some(l=>l.fromPreset===n.presetId)?{...JA,label:`${n.presetId} \xB7 Amount`}:null;let r=t?.nodes.find(a=>a.id===n.nodeId);if(!r)return null;let i=Si(r.type),o=i?.params.find(a=>a.key===n.param);return!o||o.kind!=="number"?null:{min:o.min,max:o.max,step:o.step,unit:o.unit,label:`${i?.label??r.type} \xB7 ${o.label}`,scale:o.scale==="log"&&o.min>0?"log":"linear",default:o.default}}function Ai(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(typeof e=="string"&&e.trim()!==""){let t=Number(e);return Number.isFinite(t)?t:null}return null}function QA(e){let t=Ai(e);return t===null||t===0?0:Math.min(1,Math.max(-1,t))}function ap(e,t){let n=Ai(e),r=Ai(t);if(n===null||r===null)return null;let i=l=>Math.min(.999,Math.max(.001,l)),o=i(n),a=i(r);return Math.abs(o-a)<1e-6?null:{x:o,y:a}}function ZA(e){let t=QA(e?.curve),n=ap(e?.viaX,e?.viaY);return{...t?{curve:t}:{},...n?{viaX:n.x,viaY:n.y}:{}}}function e_(e,t){let n=Ai(e?.t),r=Ai(e?.v);if(n===null||r===null)return null;let i=t?Math.min(t.max,Math.max(t.min,r)):r;return{t:Math.max(0,n),v:i,...ZA(e)}}function sp(e,t){let n=e.map(i=>e_(i,t)).filter(i=>i!==null).sort((i,o)=>i.t-o.t),r=[];for(let i of n)r.length>0&&r[r.length-1].t===i.t?r[r.length-1]=i:r.push(i);return r.slice(0,YA)}function t_(e){let t=[];for(let n of e.lanes){if(!_i(n.target))continue;let r=n.target===fr?fa:n.target===da?op:null,i=sp(n.points??[],r);i.length>0&&t.push({target:n.target,points:i})}return{version:ca,lanes:t}}function lp(e,t){let n=[];for(let r of e.lanes){let i=Pl(r.target,t);if(!i)continue;let o=sp(r.points,i);o.length>0&&n.push({target:r.target,points:o})}return{version:ca,lanes:n}}function ma(e){let t;try{t=JSON.parse(e)}catch(i){throw new Kt(`Automation is not valid JSON: ${i.message}`)}if(typeof t!="object"||t===null)throw new Kt("Automation must be a JSON object.");let n=t;if(n.version!==ca)throw new Kt(`Unsupported automation version: ${String(n.version)}`);if(!Array.isArray(n.lanes))throw new Kt("Automation is missing a `lanes` array.");let r=n.lanes.map((i,o)=>{if(typeof i!="object"||i===null)throw new Kt(`Lane ${o} is not an object.`);let a=i;if(typeof a.target!="string"||!_i(a.target))throw new Kt(`Lane ${o} has an unreadable target: ${String(a.target)}`);if(!Array.isArray(a.points))throw new Kt(`Lane ${o} is missing a \`points\` array.`);return{target:a.target,points:a.points}});return t_({version:ca,lanes:r})}function n_(e,t){return t?Math.pow(e,Math.pow(2,2*t)):e}function r_(e,t){let n=e-.5,r=t-.5,i=.999,o=1e6,a=n>0?n/(i-e):n<0?-n/(e-(1-i)):0,l=r>0?r/(i-t):r<0?-r/(t-(1-i)):0,s=Math.min(o,Math.max(1,a,l));return{cx:e+n/s,cy:t+r/s,w:s}}function i_(e,t,n){let{cx:r,cy:i,w:o}=r_(t,n),a=2-2*o,l=e*a-1+2*o*r,s=-e*a-2*o*r,c=o_(l,s,e),d=1-c,m=d*d+2*o*c*d+c*c;return m>0?(2*o*i*c*d+c*c)/m:e}function o_(e,t,n){if(Math.abs(e)<1e-12)return Math.abs(t)<1e-12?n:-n/t;let r=Math.sqrt(Math.max(0,t*t-4*e*n)),i=(-t+r)/(2*e),o=(-t-r)/(2*e),a=l=>l>=-1e-9&&l<=1+1e-9;return a(i)?Math.min(1,Math.max(0,i)):a(o)?Math.min(1,Math.max(0,o)):n}function a_(e,t){let n=ap(t.viaX,t.viaY);return n?i_(Math.min(1,Math.max(0,e)),n.x,n.y):n_(e,t.curve)}function s_(e,t,n,r){return r==="log"&&e>0&&t>0?Math.exp(Math.log(e)+(Math.log(t)-Math.log(e))*n):e+(t-e)*n}function Xt(e,t,n="linear"){let r=e.points;if(r.length===0)return 0;let i=r[0];if(t<=i.t)return i.v;let o=r[r.length-1];if(t>=o.t)return o.v;let a=0,l=r.length-1;for(;l-a>1;){let m=a+l>>1;r[m].t<=t?a=m:l=m}let s=r[a],c=r[l],d=c.t-s.t;return d<=0?c.v:s_(s.v,c.v,a_((t-s.t)/d,s),n)}function up(e){return e.points.length<=1||e.points.every(t=>t.v===e.points[0].v)}function cp(e,t,n,r,i="linear"){let o=Math.max(2,Math.floor(r)),a=new Float32Array(o),l=n-t;for(let s=0;s<o;s+=1)a[s]=Xt(e,t+l*s/(o-1),i);return a}var pa=new Map,l_=64;function Ol(e,t=fr){let n=`${t}\0${e}`,r=pa.get(n);if(r!==void 0)return r;let i=null;try{i=ma(e).lanes.find(o=>o.target===t)??null}catch{i=null}return pa.size>l_&&pa.clear(),pa.set(n,i),i}function dp(e,t){let n=(typeof e.getAttribute=="function"?e.getAttribute(Yt):null)??"";if(!n)return null;let r=Ol(n);return!r||r.points.length===0?null:Xt(r,t)}var fp=48,mp=new WeakMap;function u_(e){let t=e.points,n=t[0].v,r=t[t.length-1].v,i=[0],o=[0],a=s=>{let c=i[i.length-1];if(s<=c)return;let d=Xt(e,c,"log");i.push(s),o.push(o[o.length-1]+(d+Xt(e,s,"log"))/2*(s-c))},l=Math.max(0,t[0].t);a(l);for(let s=1;s<t.length;s+=1){let c=t[s-1].t,d=t[s].t;if(!(d<=0))for(let m=1;m<=fp;m+=1)a(Math.max(c,0)+(d-c)*m/fp)}return{ts:Float64Array.from(i),ss:Float64Array.from(o),firstRate:n,lastRate:r}}function pp(e){let t=mp.get(e);return t||(t=u_(e),mp.set(e,t)),t}function Hl(e){return typeof e!="number"&&e.points.length>0}function Gl(e,t){return typeof e=="number"?e:Hl(e)?Xt(e,t,"log"):1}function hp(e,t,n){let r=0,i=e.length-1;for(;i-r>1;){let o=r+i>>1;e[o]<=n?r=o:i=o}return t[r]+(t[i]-t[r])*(n-e[r])/(e[i]-e[r])}function Un(e,t){if(typeof e=="number")return t*e;if(!Hl(e))return t;let{ts:n,ss:r,firstRate:i,lastRate:o}=pp(e),a=n.length-1;return t<=0?t*i:t>=n[a]?r[a]+(t-n[a])*o:hp(n,r,t)}function Wn(e,t){if(typeof e=="number")return t/e;if(!Hl(e))return t;let{ts:n,ss:r,firstRate:i,lastRate:o}=pp(e),a=n.length-1;return t<=0?t/i:t>=r[a]?n[a]+(t-r[a])/o:hp(r,n,t)}function c_(e){return e?Ol(e,da):null}function gp(e,t){return c_(e)??t}var xD=[{id:"montage",label:"Montage",points:[[0,.9],[.15,.3],[.5,2.5],[.85,.3],[1,.9]]},{id:"hero",label:"Hero",points:[[0,1],[.25,1.6],[.5,.25],[.75,1.6],[1,1]]},{id:"bullet",label:"Bullet",points:[[0,3],[.4,3],[.5,.15],[.6,3],[1,3]]},{id:"jump-cut",label:"Jump cut",points:[[0,.5],[.24,.5],[.26,3],[.5,3],[.52,.5],[.74,.5],[.76,3],[1,3]]},{id:"flash-in",label:"Flash in",points:[[0,.3],[.6,.6],[1,5]]},{id:"flash-out",label:"Flash out",points:[[0,5],[.4,.6],[1,.3]]},{id:"ramp-in",label:"Ramp in",points:[[0,.5],[1,1]]},{id:"ramp-out",label:"Ramp out",points:[[0,1],[1,.5]]},{id:"slowmo-middle",label:"Slow-mo middle",points:[[0,1],[1/3,.35],[2/3,.35],[1,1]]}];function Oe(e){return fn(e)}function rt(e){return Jm(t=>e.getAttribute(t),pe(e)?e.defaultPlaybackRate:1)}function Ft(e){return gp(e.getAttribute("data-automation"),rt(e))}function mr(e){return aa(t=>e.getAttribute(t))}function It(e,t){return d_(t,mr(e),Ft(e))}function pr(e){let t=Nl({tag:"video",authoredDurationSeconds:kl(n=>e.getAttribute(n)),sourceDurationSeconds:Number.isFinite(e.duration)?e.duration:null,mediaStartSeconds:mr(e),playbackRate:rt(e)});return t.source==="media"?It(e,e.duration):t.seconds}function hr(e,t=0){return!$e(e)||!e.hasAttribute("data-start")&&!e.hasAttribute("data-track-index")?null:Nl({tag:"img",authoredDurationSeconds:Qm(n=>e.getAttribute(n),t),sourceDurationSeconds:null,mediaStartSeconds:0,playbackRate:1}).seconds}function d_(e,t,n){return typeof n=="number"?Ll(e,t,n):Number.isFinite(e)?Wn(n,Math.max(0,e-t)):null}var f_=e=>e.paused?.()===!0?(e.startTime?.()??0)+(e.totalDuration?.()??0)/Math.abs(e.timeScale?.()||1):0;function Jt(e){try{if(typeof e?.duration!="function")return null;let t=e.getChildren?.(!1,!1,!0),n=Array.isArray(t)?t:[],r=Math.max(Number(e.duration()),...n.map(f_));return Number.isFinite(r)?r:null}catch(t){return H("runtime.timelineDuration",t),null}}var gr="data-hf-authored-duration",br="data-hf-authored-end";function wi(e){if(e==null||typeof e=="string"&&e.trim()==="")return null;let t=typeof e=="number"?e:Number(e);return Number.isFinite(t)?t:null}function xr(e){let t=wi(e.start);if(t==null)return null;let n=Math.max(0,t),r=wi(e.duration),i=wi(e.authoredDuration),o=r!=null&&r>0?r:i!=null&&i>0?i:null;if(o!=null)return{start:n,duration:o,end:n+o};let a=wi(e.end),l=wi(e.authoredEnd),s=a!=null&&a>n?a:l!=null&&l>n?l:null;return{start:n,duration:s==null?null:s-n,end:s}}var ha="data-hf-media-start-basis";function bp(e){return e?.trim().toLowerCase()==="global"?"global":"local"}function m_(e){return bp(e.basis)==="global"?e.authoredStart:e.hostStart+e.authoredStart}function xp(e){return Sp(e)?m_({authoredStart:e.authoredStart,hostStart:e.hostStart,basis:e.basis}):e.ordinaryStart()}function yp(e){return Sp(e)&&bp(e.basis)==="global"}function Sp(e){return!e.hasAutoStart&&e.authoredStart!=null&&e.hostStart!==0}function Bl(e){return aa(t=>e.getAttribute(t))}function vp(e,t){return e-Bl(t)}function Vn(e,t){return t.reduce((n,r)=>{let i=Math.max(n.start,r.start);return{start:i,end:Math.max(i,Math.min(n.end,r.end))}},e)}function Qe(e){let t=e.timelineRegistry??{},n=e.includeAuthoredTimingAttrs??!1,r=e.documentRef??document,i=new WeakMap,o=new WeakMap,a=new Set,l=w=>{let L=r.getElementById(w);return L||(Array.from(r.querySelectorAll("[data-composition-id]")).find(O=>O.getAttribute("data-composition-id")===w)??null)},s=(w,L)=>n?w.getAttribute(L):null,c=w=>xr({start:0,duration:w.getAttribute("data-duration"),authoredDuration:s(w,"data-hf-authored-duration")})?.duration??xr({start:E(w,0),end:w.getAttribute("data-end"),authoredEnd:s(w,"data-hf-authored-end")})?.duration??null,d=w=>w!=null&&Number.isFinite(w)&&w>0?w:null,m=w=>{let L=w.getAttribute("data-composition-id");return L?d(Jt(t[L])):null},f=w=>{let L=o.get(w);if(L!==void 0)return L;let O=c(w)??d(pe(w)?It(w,w.duration):null)??d(hr(w))??m(w);return o.set(w,O),O},p=w=>w.hasAttribute("data-composition-src")||w.hasAttribute("data-composition-id")||w.hasAttribute("data-composition-file"),y=w=>{let L=w.parentElement;return!L||!w.hasAttribute("data-composition-id")||oa(w.getAttribute("data-start"))?null:p(L)?L:null},b=(w,L)=>vp(E(w,L),y(w)??w),g=(w,L)=>{let O=w.hasAttribute("data-composition-id")?w.parentElement?.closest("[data-composition-id]"):w.closest("[data-composition-id]");return O?b(O,L):0},v=(w,L)=>{let O=oa(w.getAttribute("data-start"));if(!O){let P=y(w);return P?E(P,L):L}if(O.kind==="absolute")return g(w,L)+Math.max(0,O.value);let K=l(O.refId);if(!K)return L;let Z=E(K,0),ae=f(K)??0,ne=Math.min(0,g(w,0));return Math.max(ne,Z+ae+O.offset)},E=(w,L)=>{let O=i.get(w);if(O!==void 0)return O??L;if(a.has(w))return L;a.add(w);try{let K=v(w,L);return i.set(w,K),K}finally{a.delete(w)}},_=w=>{let L=w.closest("[data-composition-id]");return{authoredStart:Oe(w.getAttribute("data-start")),hostStart:L?b(L,0):0,hasAutoStart:w.hasAttribute("data-hf-auto-start"),basis:w.getAttribute(ha)}};return{resolveStartForElement:(w,L=0)=>E(w,Math.max(0,L)),resolveDurationForElement:w=>f(w),resolveMediaStartForElement:w=>{let L=_(w);return xp({...L,ordinaryStart:()=>E(w,L.hostStart)})},resolveHostStartForElement:w=>g(w,0),resolveHostSlotsForElement:w=>{let L=[];for(let O=w.parentElement;O;O=O.parentElement){if(!p(O)||y(O)||Bl(O)<=0)continue;let K=E(O,0),Z=c(O);L.push({start:K,end:Z?K+Z:1/0})}return L},isRootGlobalMediaStartForElement:w=>pe(w)&&yp(_(w))}}function ga(e){e.preload!=="auto"&&(e.preload="auto");let t=e.tagName==="VIDEO"&&e.networkState===2;e.readyState<3&&!t&&e.load()}function Ul(e){for(let t of e.querySelectorAll("source"))t.remove();e.removeAttribute("src"),e.load()}function Ep(e){if(e.querySelector("source"))return;let t=e.getAttribute("src");Ul(e),t!==null&&e.setAttribute("src",t)}function ba(e){return Oe(e.getAttribute("data-duration"))!=null}function Ap(){let e=window;if(e.__hfMediaDeferral?.disconnect(),e.__hfMediaDeferral=void 0,!hi())return;let t=(n,r)=>{Oe(n.getAttribute("data-start"))!=null&&ba(n)&&r(n)>0&&(n.preload="none")};e.__hfMediaDeferral=new MutationObserver(n=>{let r=Qe({}).resolveMediaStartForElement;for(let i of n)for(let o of i.addedNodes){if(o.nodeType!==1)continue;let a=o;a.matches("video, audio")&&t(a,r);for(let l of a.querySelectorAll("video, audio"))t(l,r)}}),e.__hfMediaDeferral.observe(document.documentElement,{childList:!0,subtree:!0})}var _p=30;function wp(e){_p=Number.isFinite(e)&&e>0?e:30}function Te(e){try{window.parent.postMessage({...e,...ia(_p)},"*")}catch(t){H("bridge.postMessage",t)}}var p_=new Map(Object.entries({play:(e,t)=>t.onPlay(),pause:(e,t)=>t.onPause(),"stop-media":(e,t)=>t.onStopMedia(),seek:(e,t)=>t.onSeek(h_(e,t),e.seekMode??"commit"),tick:(e,t)=>t.onTick(),"set-muted":(e,t)=>t.onSetMuted(!!e.muted),"set-volume":(e,t)=>t.onSetVolume(Math.max(0,Math.min(1,Number(e.volume??1)))),"set-media-output-muted":(e,t)=>t.onSetMediaOutputMuted(!!e.muted),"set-native-media-sync-disabled":(e,t)=>t.onSetNativeMediaSyncDisabled(!!e.disabled),"set-web-audio-media-disabled":(e,t)=>t.onSetWebAudioMediaDisabled(!!e.disabled),"set-playback-rate":(e,t)=>t.onSetPlaybackRate(Number(e.playbackRate??1)),"set-idle-heartbeat":(e,t)=>t.onSetIdleHeartbeat(!!e.slow),"set-display-scale":(e,t)=>t.onSetDisplayScale?.(Number(e.scale)),"set-root-duration":(e,t)=>t.onSetRootDuration(Number(e.durationSeconds??0)),"set-play-range":(e,t)=>t.onSetPlayRange(Number(e.startSeconds??0),e.endSeconds==null?null:Number(e.endSeconds)),"set-color-grading":(e,t)=>t.onSetColorGrading(e.target??null,e.grading??null),"set-color-grading-compare":(e,t)=>t.onSetColorGradingCompare(e.target??null,e.compare??null),"enable-pick-mode":(e,t)=>t.onEnablePickMode(),"disable-pick-mode":(e,t)=>t.onDisablePickMode(),"flash-elements":e=>b_(e),"set-runtime-data":(e,t)=>{typeof e.channel=="string"&&t.onSetRuntimeData?.(e.channel,e.payload,e.requestId)},"clear-runtime-data":(e,t)=>{typeof e.channel=="string"&&t.onClearRuntimeData?.(e.channel,e.requestId)}}));function h_(e,t){let n=Number(e.timeSeconds);if(Number.isFinite(n))return Math.max(0,n);let i=Rl(e.fps)??t.getCanonicalFps();return Math.max(0,Number(e.frame??0))/i}function g_(e){let t=zm(e);return t.status!=="unsupported"?!1:(Te({source:"hf-preview",type:"diagnostic",code:`runtime.protocol.${t.code}`,details:{receivedVersion:typeof t.receivedVersion=="string"||typeof t.receivedVersion=="number"?t.receivedVersion:null}}),!0)}function b_(e){let t=e.selectors,n=e.duration||800;t&&x_(t,n)}function Cp(e){let t=n=>{if(n.source!==window.parent&&n.source!==window)return;let r=n.data;if(!r||r.source!=="hf-parent"||r.type!=="control"||g_(r))return;let i=r.action;if(typeof i!="string")return;let o=p_.get(i);o&&o(r,e)};return window.addEventListener("message",t),Te({source:"hf-preview",type:"ready"}),t}function x_(e,t){if(!document.getElementById("__hf-flash-styles")){let n=document.createElement("style");n.id="__hf-flash-styles",n.textContent=`
|
|
25
|
+
`),this.css+=n+"/*# sourceMappingURL="+t+" */"}applyPrevMaps(){for(let t of this.previous()){let n=this.toUrl(this.path(t.file)),r=t.root||ys(t.file),o;this.mapOpts.sourcesContent===!1?(o=new _b(t.text),o.sourcesContent&&(o.sourcesContent=null)):o=t.consumer(),this.map.applySourceMap(o,n,this.toUrl(this.path(r)))}}clearAnnotation(){if(this.mapOpts.annotation!==!1){if(this.root){let t;for(let n=this.root.nodes.length-1;n>=0;n--)t=this.root.nodes[n],t.type==="comment"&&t.text.startsWith("# sourceMappingURL=")&&this.root.removeChild(n)}else if(this.css){let t="/*# sourceMappingURL=",n;for(;(n=this.css.lastIndexOf(t))!==-1;){let r=this.css.indexOf("*/",n+t.length);if(r===-1)break;for(;n>0&&this.css[n-1]===`
|
|
26
|
+
`;)n--;this.css=this.css.slice(0,n)+this.css.slice(r+2)}}}}generate(){if(this.clearAnnotation(),b1&&g1&&this.isMap())return this.generateMap();{let t="";return this.stringify(this.root,n=>{t+=n}),[t]}}generateMap(){if(this.root)this.generateString();else if(this.previous().length===1){let t=this.previous()[0].consumer();t.file=this.outputFile(),this.map=Ss.fromSourceMap(t,{ignoreInvalidMapping:!0})}else this.map=new Ss({file:this.outputFile(),ignoreInvalidMapping:!0}),this.map.addMapping({generated:{column:0,line:1},original:{column:0,line:1},source:this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>"});return this.isSourcesContent()&&this.setSourcesContent(),this.root&&this.previous().length>0&&this.applyPrevMaps(),this.isAnnotation()&&this.addAnnotation(),this.isInline()?[this.css]:[this.css,this.map]}generateString(){this.css="",this.map=new Ss({file:this.outputFile(),ignoreInvalidMapping:!0});let t=1,n=1,r="<no source>",o={generated:{column:0,line:0},original:{column:0,line:0},source:""},i,a;this.stringify(this.root,(l,s,c)=>{if(this.css+=l,s&&c!=="end"&&(o.generated.line=t,o.generated.column=n-1,s.source&&s.source.start?(o.source=this.sourcePath(s),o.original.line=s.source.start.line,o.original.column=s.source.start.column-1,this.map.addMapping(o)):(o.source=r,o.original.line=1,o.original.column=0,this.map.addMapping(o))),a=l.match(/\n/g),a?(t+=a.length,i=l.lastIndexOf(`
|
|
27
|
+
`),n=l.length-i):n+=l.length,s&&c!=="start"){let d=s.parent||{raws:{}};(!(s.type==="decl"||s.type==="atrule"&&!s.nodes)||s!==d.last||d.raws.semicolon)&&(s.source&&s.source.end?(o.source=this.sourcePath(s),o.original.line=s.source.end.line,o.original.column=s.source.end.column-1,o.generated.line=t,o.generated.column=n-2,this.map.addMapping(o)):(o.source=r,o.original.line=1,o.original.column=0,o.generated.line=t,o.generated.column=n-1,this.map.addMapping(o)))}})}isAnnotation(){return this.isInline()?!0:typeof this.mapOpts.annotation<"u"?this.mapOpts.annotation:this.previous().length?this.previous().some(t=>t.annotation):!0}isInline(){if(typeof this.mapOpts.inline<"u")return this.mapOpts.inline;let t=this.mapOpts.annotation;return typeof t<"u"&&t!==!0?!1:this.previous().length?this.previous().some(n=>n.inline):!0}isMap(){return typeof this.opts.map<"u"?!!this.opts.map:this.previous().length>0}isSourcesContent(){return typeof this.mapOpts.sourcesContent<"u"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(t=>t.withContent()):!0}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}path(t){if(this.mapOpts.absolute||t.charCodeAt(0)===60||/^\w+:\/\//.test(t))return t;let n=this.memoizedPaths.get(t);if(n)return n;let r=this.opts.to?ys(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(r=ys(Ab(r,this.mapOpts.annotation)));let o=Eb(r,t);return this.memoizedPaths.set(t,o),o}previous(){if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk(t=>{if(t.source&&t.source.input.map){let n=t.source.input.map;this.previousMaps.includes(n)||this.previousMaps.push(n)}});else{let t=new h1(this.originalCSS,this.opts);t.map&&this.previousMaps.push(t.map)}return this.previousMaps}setSourcesContent(){let t={};if(this.root)this.root.walk(n=>{if(n.source){let r=n.source.input.from;if(r&&!t[r]){t[r]=!0;let o=this.usesFileUrls?this.toFileUrl(r):this.toUrl(this.path(r));this.map.setSourceContent(o,n.source.input.css)}}});else if(this.css){let n=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(n,this.css)}}sourcePath(t){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(t.source.input.from):this.toUrl(this.path(t.source.input.from))}toBase64(t){return Buffer?Buffer.from(t).toString("base64"):window.btoa(unescape(encodeURIComponent(t)))}toFileUrl(t){let n=this.memoizedFileURLs.get(t);if(n)return n;if(vb){let r=vb(t).toString();return this.memoizedFileURLs.set(t,r),r}else throw new Error("`map.absolute` option is not available in this PostCSS build")}toUrl(t){let n=this.memoizedURLs.get(t);if(n)return n;wb==="\\"&&(t=t.replace(/\\/g,"/"));let r=encodeURI(t).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(t,r),r}};Cb.exports=Nc});var Mb=xe((iB,Rb)=>{"use strict";var vs=/[\t\n\f\r "#'()/;[\\\]{}]/g,Es=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,x1=/.[\r\n"'(/\\]/,Tb=/[\da-f]/i;Rb.exports=function(t,n={}){let r=t.css.valueOf(),o=n.ignoreErrors,i,a,l,s,c,d,f,m,p,x,b=r.length,y=0,E=[],v=[],_=-1;function H(){return y}function I(P){throw t.error("Unclosed "+P,y)}function k(){return v.length===0&&y>=b}function A(P){if(v.length)return v.pop();if(y>=b)return;let q=P?P.ignoreUnclosed:!1;switch(i=r.charCodeAt(y),i){case 10:case 32:case 9:case 13:case 12:{s=y;do s+=1,i=r.charCodeAt(s);while(i===32||i===10||i===9||i===13||i===12);d=["space",r.slice(y,s)],y=s-1;break}case 91:case 93:case 123:case 125:case 58:case 59:case 41:{let X=String.fromCharCode(i);d=[X,X,y];break}case 40:{if(x=E.length?E.pop()[1]:"",p=r.charCodeAt(y+1),x==="url"&&p!==39&&p!==34&&p!==32&&p!==10&&p!==9&&p!==12&&p!==13){s=y;do{if(f=!1,s=r.indexOf(")",s+1),s===-1)if(o||q){s=y;break}else I("bracket");for(m=s;r.charCodeAt(m-1)===92;)m-=1,f=!f}while(f);d=["brackets",r.slice(y,s+1),y,s],y=s}else y<=_?d=["(","(",y]:(s=r.indexOf(")",y+1),a=r.slice(y,s+1),s===-1||x1.test(a)?(_=s===-1?b:s,d=["(","(",y]):(d=["brackets",a,y,s],y=s));break}case 39:case 34:{c=i===39?"'":'"',s=y;do{if(f=!1,s=r.indexOf(c,s+1),s===-1)if(o||q){s=y+1;break}else I("string");for(m=s;r.charCodeAt(m-1)===92;)m-=1,f=!f}while(f);d=["string",r.slice(y,s+1),y,s],y=s;break}case 64:{vs.lastIndex=y+1,vs.test(r),vs.lastIndex===0?s=r.length-1:s=vs.lastIndex-2,d=["at-word",r.slice(y,s+1),y,s],y=s;break}case 92:{for(s=y,l=!0;r.charCodeAt(s+1)===92;)s+=1,l=!l;if(i=r.charCodeAt(s+1),l&&i!==47&&i!==32&&i!==10&&i!==9&&i!==13&&i!==12&&(s+=1,Tb.test(r.charAt(s)))){for(;Tb.test(r.charAt(s+1));)s+=1;r.charCodeAt(s+1)===32&&(s+=1)}d=["word",r.slice(y,s+1),y,s],y=s;break}default:{i===47&&r.charCodeAt(y+1)===42?(s=r.indexOf("*/",y+2)+1,s===0&&(o||q?s=r.length:I("comment")),d=["comment",r.slice(y,s+1),y,s],y=s):(Es.lastIndex=y+1,Es.test(r),Es.lastIndex===0?s=r.length-1:s=Es.lastIndex-2,d=["word",r.slice(y,s+1),y,s],E.push(d),y=s);break}}return y++,d}function L(P){v.push(P)}return{back:L,endOfFile:k,nextToken:A,position:H}}});var Fb=xe((aB,Nb)=>{"use strict";var y1=ds(),S1=si(),v1=ui(),E1=Ur(),kb=bs(),A1=Mb(),Lb={empty:!0,space:!0};function w1(e){for(let t=e.length-1;t>=0;t--){let n=e[t],r=n[3]||n[2];if(r)return r}}function Ic(e,t,n){let r="";for(let o=t;o<n;o++)r+=e[o][1];return r}var Dc=class{constructor(t){this.input=t,this.root=new E1,this.current=this.root,this.spaces="",this.semicolon=!1,this.createTokenizer(),this.root.source={input:t,start:{column:1,line:1,offset:0}}}atrule(t){let n=new y1;n.name=t[1].slice(1),n.name===""&&this.unnamedAtrule(n,t),this.init(n,t[2]);let r,o,i,a=!1,l=!1,s=[],c=[];for(;!this.tokenizer.endOfFile();){if(t=this.tokenizer.nextToken(),r=t[0],r==="("||r==="["?c.push(r==="("?")":"]"):r==="{"&&c.length>0?c.push("}"):r===c[c.length-1]&&c.pop(),c.length===0)if(r===";"){n.source.end=this.getPosition(t[2]),n.source.end.offset++,this.semicolon=!0;break}else if(r==="{"){l=!0;break}else if(r==="}"){if(s.length>0){for(i=s.length-1,o=s[i];o&&o[0]==="space";)o=s[--i];o&&(n.source.end=this.getPosition(o[3]||o[2]),n.source.end.offset++)}this.end(t);break}else s.push(t);else s.push(t);if(this.tokenizer.endOfFile()){a=!0;break}}n.raws.between=this.spacesAndCommentsFromEnd(s),s.length?(n.raws.afterName=this.spacesAndCommentsFromStart(s),this.raw(n,"params",s),a&&(t=s[s.length-1],n.source.end=this.getPosition(t[3]||t[2]),n.source.end.offset++,this.spaces=n.raws.between,n.raws.between="")):(n.raws.afterName="",n.params=""),l&&(n.nodes=[],this.current=n)}checkMissedSemicolon(t){let n=this.colon(t);if(n===!1)return;let r=0,o;for(let i=n-1;i>=0&&(o=t[i],!(o[0]!=="space"&&(r+=1,r===2)));i--);throw this.input.error("Missed semicolon",o[0]==="word"?o[3]+1:o[2])}colon(t){let n=0,r,o,i;for(let[a,l]of t.entries()){if(o=l,i=o[0],i==="("&&(n+=1),i===")"&&(n-=1),n===0&&i===":")if(!r)this.doubleColon(o);else{if(r[0]==="word"&&r[1]==="progid")continue;return a}r=o}return!1}comment(t){let n=new S1;this.init(n,t[2]),n.source.end=this.getPosition(t[3]||t[2]),n.source.end.offset++;let r=t[1].slice(2,-2);if(!r.trim())n.text="",n.raws.left=r,n.raws.right="";else{let o=r.match(/^(\s*)([^]*\S)(\s*)$/);n.text=o[2],n.raws.left=o[1],n.raws.right=o[3]}}createTokenizer(){this.tokenizer=A1(this.input)}decl(t,n){let r=new v1;this.init(r,t[0][2]);let o=t[t.length-1];o[0]===";"&&(this.semicolon=!0,t.pop()),r.source.end=this.getPosition(o[3]||o[2]||w1(t)),r.source.end.offset++;let i=0;for(;t[i][0]!=="word";)i===t.length-1&&this.unknownWord([t[i]]),i++;r.raws.before+=Ic(t,0,i),r.source.start=this.getPosition(t[i][2]);let a=i;for(;i<t.length;){let m=t[i][0];if(m===":"||m==="space"||m==="comment")break;i++}r.prop=Ic(t,a,i);let l=i,s;for(;i<t.length&&(s=t[i],i++,s[0]!==":");)s[0]==="word"&&/\w/.test(s[1])&&this.unknownWord([s]);r.raws.between=Ic(t,l,i),(r.prop[0]==="_"||r.prop[0]==="*")&&(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));let c=i;for(;i<t.length;){let m=t[i][0];if(m!=="space"&&m!=="comment")break;i++}let d=t.slice(c,i);t=t.slice(i),this.precheckMissedSemicolon(t);for(let m=t.length-1;m>=0;m--){if(s=t[m],s[1].toLowerCase()==="!important"){r.important=!0;let p=this.stringFrom(t,m);p=this.spacesFromEnd(t)+p,p!==" !important"&&(r.raws.important=p);break}else if(s[1].toLowerCase()==="important"){let p=t.slice(0),x="";for(let b=m;b>0;b--){let y=p[b][0];if(x.trim().startsWith("!")&&y!=="space")break;x=p.pop()[1]+x}x.trim().startsWith("!")&&(r.important=!0,r.raws.important=x,t=p)}if(s[0]!=="space"&&s[0]!=="comment")break}t.some(m=>m[0]!=="space"&&m[0]!=="comment")&&(r.raws.between+=d.map(m=>m[1]).join(""),d=[]),this.raw(r,"value",d.concat(t),n),r.value.includes(":")&&!n&&this.checkMissedSemicolon(t)}doubleColon(t){throw this.input.error("Double colon",{offset:t[2]},{offset:t[2]+t[1].length})}emptyRule(t){let n=new kb;this.init(n,t[2]),n.selector="",n.raws.between="",this.current=n}end(t){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(t[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(t)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())}freeSemicolon(t){if(this.spaces+=t[1],this.current.nodes){let n=this.current.nodes[this.current.nodes.length-1];n&&n.type==="rule"&&!n.raws.ownSemicolon&&(n.raws.ownSemicolon=this.spaces,this.spaces="",n.source.end=this.getPosition(t[2]),n.source.end.offset++)}}getPosition(t){let n=this.input.fromOffset(t);return{column:n.col,line:n.line,offset:t}}init(t,n){this.current.push(t),t.source={input:this.input,start:this.getPosition(n)},t.raws.before=this.spaces,this.spaces="",t.type!=="comment"&&(this.semicolon=!1)}other(t){let n=!1,r=null,o=!1,i=null,a=[],l=t[1].startsWith("--"),s=[],c=t;for(;c;){if(r=c[0],s.push(c),r==="("||r==="[")i||(i=c),a.push(r==="("?")":"]");else if(l&&o&&r==="{")i||(i=c),a.push("}");else if(a.length===0)if(r===";")if(o){this.decl(s,l);return}else break;else if(r==="{"){this.rule(s);return}else if(r==="}"){this.tokenizer.back(s.pop()),n=!0;break}else r===":"&&(o=!0);else r===a[a.length-1]&&(a.pop(),a.length===0&&(i=null));c=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(n=!0),a.length>0&&this.unclosedBracket(i),n&&o){if(!l)for(;s.length&&(c=s[s.length-1][0],!(c!=="space"&&c!=="comment"));)this.tokenizer.back(s.pop());this.decl(s,l)}else this.unknownWord(s)}parse(){let t;for(;!this.tokenizer.endOfFile();)switch(t=this.tokenizer.nextToken(),t[0]){case"space":this.spaces+=t[1];break;case";":this.freeSemicolon(t);break;case"}":this.end(t);break;case"comment":this.comment(t);break;case"at-word":this.atrule(t);break;case"{":this.emptyRule(t);break;default:this.other(t);break}this.endFile()}precheckMissedSemicolon(){}raw(t,n,r,o){let i,a,l=r.length,s="",c=!0,d,f;for(let m=0;m<l;m+=1)i=r[m],a=i[0],a==="space"&&m===l-1&&!o?c=!1:a==="comment"?(f=r[m-1]?r[m-1][0]:"empty",d=r[m+1]?r[m+1][0]:"empty",!Lb[f]&&!Lb[d]?s.slice(-1)===","?c=!1:s+=i[1]:c=!1):s+=i[1];if(!c){let m=r.reduce((p,x)=>p+x[1],"");t.raws[n]={raw:m,value:s}}t[n]=s}rule(t){t.pop();let n=new kb;this.init(n,t[0][2]),n.raws.between=this.spacesAndCommentsFromEnd(t),this.raw(n,"selector",t),this.current=n}spacesAndCommentsFromEnd(t){let n,r="";for(;t.length&&(n=t[t.length-1][0],!(n!=="space"&&n!=="comment"));)r=t.pop()[1]+r;return r}spacesAndCommentsFromStart(t){let n,r="";for(;t.length&&(n=t[0][0],!(n!=="space"&&n!=="comment"));)r+=t.shift()[1];return r}spacesFromEnd(t){let n,r="";for(;t.length&&(n=t[t.length-1][0],n==="space");)r=t.pop()[1]+r;return r}stringFrom(t,n){let r="";for(let o=n;o<t.length;o++)r+=t[o][1];return t.splice(n,t.length-n),r}unclosedBlock(){let t=this.current.source.start;throw this.input.error("Unclosed block",t.line,t.column)}unclosedBracket(t){throw this.input.error("Unclosed bracket",{offset:t[2]},{offset:t[2]+1})}unexpectedClose(t){throw this.input.error("Unexpected }",{offset:t[2]},{offset:t[2]+1})}unknownWord(t){throw this.input.error("Unknown word "+t[0][1],{offset:t[0][2]},{offset:t[0][2]+t[0][1].length})}unnamedAtrule(t,n){throw this.input.error("At-rule without name",{offset:n[2]},{offset:n[2]+n[1].length})}};Nb.exports=Dc});var ws=xe((sB,Ib)=>{"use strict";var _1=nn(),C1=di(),T1=Fb();function As(e,t){let n=new C1(e,t),r=new T1(n);try{r.parse()}catch(o){throw o}return r.root}Ib.exports=As;As.default=As;_1.registerParse(As)});var Pc=xe((lB,Db)=>{"use strict";var R1=nn(),{my:M1}=ni(),mi=class{constructor(t,n={}){if(this.type="warning",this.text=t,n.node&&n.node.source){n.node[M1]||R1.rebuild(n.node);let r=n.node.rangeBy(n);this.line=r.start.line,this.column=r.start.column,this.endLine=r.end.line,this.endColumn=r.end.column}for(let r in n)this[r]=n[r]}toString(){return this.node?this.node.error(this.text,{index:this.index,plugin:this.plugin,word:this.word}).message:this.plugin?this.plugin+": "+this.text:this.text}};Db.exports=mi;mi.default=mi});var _s=xe((uB,Pb)=>{"use strict";var k1=Pc(),pi=class{get content(){return this.css}constructor(t,n,r){this.processor=t,this.messages=[],this.root=n,this.opts=r,this.css="",this.map=void 0}toString(){return this.css}warn(t,n={}){n.plugin||this.lastPlugin&&this.lastPlugin.postcssPlugin&&(n.plugin=this.lastPlugin.postcssPlugin);let r=new k1(t,n);return this.messages.push(r),r}warnings(){return this.messages.filter(t=>t.type==="warning")}};Pb.exports=pi;pi.default=pi});var Oc=xe((cB,Hb)=>{"use strict";var Ob={};Hb.exports=function(t){Ob[t]||(Ob[t]=!0,typeof globalThis.console<"u"&&globalThis.console.warn&&globalThis.console.warn(t))}});var Bc=xe((fB,Wb)=>{"use strict";var L1=nn(),N1=fs(),F1=Fc(),I1=ws(),Gb=_s(),D1=Ur(),P1=ti(),{isClean:kt,my:O1}=ni(),dB=Oc(),H1={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},G1={AtRule:!0,AtRuleExit:!0,Comment:!0,CommentExit:!0,Declaration:!0,DeclarationExit:!0,Document:!0,DocumentExit:!0,Once:!0,OnceExit:!0,postcssPlugin:!0,prepare:!0,Root:!0,RootExit:!0,Rule:!0,RuleExit:!0},B1={Once:!0,postcssPlugin:!0,prepare:!0},Vr=0;function hi(e){return typeof e=="object"&&typeof e.then=="function"}function Hc(e){let t=!1,n=H1[e.type];return e.type==="decl"?t=e.prop.toLowerCase():e.type==="atrule"&&(t=e.name.toLowerCase()),t&&e.append?[n,n+"-"+t,Vr,n+"Exit",n+"Exit-"+t]:t?[n,n+"-"+t,n+"Exit",n+"Exit-"+t]:e.append?[n,Vr,n+"Exit"]:[n,n+"Exit"]}function Bb(e){let t;return e.type==="document"?t=["Document",Vr,"DocumentExit"]:e.type==="root"?t=["Root",Vr,"RootExit"]:t=Hc(e),{eventIndex:0,events:t,iterator:0,node:e,visitorIndex:0,visitors:[]}}function Ub(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[kt]=!1,n.nodes)for(let r of n.nodes)t.push(r)}return e}var Gc={},_n=class e{get content(){return this.stringify().content}get css(){return this.stringify().css}get map(){return this.stringify().map}get messages(){return this.sync().messages}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){return this.sync().root}get[Symbol.toStringTag](){return"LazyResult"}constructor(t,n,r){this.stringified=!1,this.processed=!1;let o;if(typeof n=="object"&&n!==null&&(n.type==="root"||n.type==="document"))o=Ub(n);else if(n instanceof e||n instanceof Gb)o=Ub(n.root),n.map&&(typeof r.map>"u"&&(r.map={}),r.map.inline||(r.map.inline=!1),r.map.prev=n.map);else{let i=I1;r.syntax&&(i=r.syntax.parse),r.parser&&(i=r.parser),i.parse&&(i=i.parse);try{o=i(n,r)}catch(a){this.processed=!0,this.error=a}o&&!o[O1]&&L1.rebuild(o)}this.result=new Gb(t,o,r),this.helpers={...Gc,postcss:Gc,result:this.result},this.plugins=this.processor.plugins.map(i=>typeof i=="object"&&i.prepare?{...i,...i.prepare(this.result)}:i)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}catch(t){return this.async().catch(t)}finally(t){return this.async().then(t,t)}getAsyncError(){throw new Error("Use process(css).then(cb) to work with async plugins")}handleError(t,n){let r=this.result.lastPlugin;try{n&&n.addToError(t),this.error=t,t.name==="CssSyntaxError"&&!t.plugin?(t.plugin=r.postcssPlugin,t.setMessage()):r.postcssVersion}catch(o){globalThis.console&&globalThis.console.error&&globalThis.console.error(o)}return t}prepareVisitors(){this.listeners={};let t=(n,r,o)=>{this.listeners[r]||(this.listeners[r]=[]),this.listeners[r].push([n,o])};for(let n of this.plugins)if(typeof n=="object")for(let r in n){if(!G1[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${n.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!B1[r])if(typeof n[r]=="object")for(let o in n[r])o==="*"?t(n,r,n[r][o]):t(n,r+"-"+o.toLowerCase(),n[r][o]);else typeof n[r]=="function"&&t(n,r,n[r])}this.hasListener=Object.keys(this.listeners).length>0}async runAsync(){this.plugin=0;for(let t=0;t<this.plugins.length;t++){let n=this.plugins[t],r=this.runOnRoot(n);if(hi(r))try{await r}catch(o){throw this.handleError(o)}}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[kt];){t[kt]=!0;let n=[Bb(t)];for(;n.length>0;){let r=this.visitTick(n);if(hi(r))try{await r}catch(o){let i=n[n.length-1].node;throw this.handleError(o,i)}}}if(this.listeners.OnceExit)for(let[n,r]of this.listeners.OnceExit){this.result.lastPlugin=n;try{if(t.type==="document"){let o=t.nodes.map(i=>r(i,this.helpers));await Promise.all(o)}else await r(t,this.helpers)}catch(o){throw this.handleError(o)}}}return this.processed=!0,this.stringify()}runOnRoot(t){this.result.lastPlugin=t;try{if(typeof t=="object"&&t.Once){if(this.result.root.type==="document"){let n=this.result.root.nodes.map(r=>t.Once(r,this.helpers));return hi(n[0])?Promise.all(n):n}return t.Once(this.result.root,this.helpers)}else if(typeof t=="function")return t(this.result.root,this.result)}catch(n){throw this.handleError(n)}}stringify(){if(this.error)throw this.error;if(this.stringified)return this.result;this.stringified=!0,this.sync();let t=this.result.opts,n=P1;t.syntax&&(n=t.syntax.stringify),t.stringifier&&(n=t.stringifier),n.stringify&&(n=n.stringify);let r=this.result.root.source;if(t.map===void 0&&!(r&&r.input&&r.input.map)){let a="";return n(this.result.root,l=>{a+=l}),this.result.css=a,this.result}let i=new F1(n,this.result.root,this.result.opts).generate();return this.result.css=i[0],this.result.map=i[1],this.result}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let t of this.plugins){let n=this.runOnRoot(t);if(hi(n))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[kt];)t[kt]=!0,this.walkSync(t);if(this.listeners.OnceExit)if(t.type==="document")for(let n of t.nodes)this.visitSync(this.listeners.OnceExit,n);else this.visitSync(this.listeners.OnceExit,t)}return this.result}then(t,n){return this.async().then(t,n)}toString(){return this.css}visitSync(t,n){for(let[r,o]of t){this.result.lastPlugin=r;let i;try{i=o(n,this.helpers)}catch(a){throw this.handleError(a,n.proxyOf)}if(n.type!=="root"&&n.type!=="document"&&!n.parent)return!0;if(hi(i))throw this.getAsyncError()}}visitTick(t){let n=t[t.length-1],{node:r,visitors:o}=n;if(r.type!=="root"&&r.type!=="document"&&!r.parent){t.pop();return}if(o.length>0&&n.visitorIndex<o.length){let[a,l]=o[n.visitorIndex];n.visitorIndex+=1,n.visitorIndex===o.length&&(n.visitors=[],n.visitorIndex=0),this.result.lastPlugin=a;try{return l(r.toProxy(),this.helpers)}catch(s){throw this.handleError(s,r)}}if(n.iterator!==0){let a=n.iterator;n.descending&&(n.descending=!1,r.indexes[a]+=1);let l;for(;l=r.nodes[r.indexes[a]];){if(!l[kt]){l[kt]=!0,n.descending=!0,t.push(Bb(l));return}r.indexes[a]+=1}n.iterator=0,delete r.indexes[a]}let i=n.events;for(;n.eventIndex<i.length;){let a=i[n.eventIndex];if(n.eventIndex+=1,a===Vr){r.nodes&&r.nodes.length&&(r[kt]=!0,n.iterator=r.getIterator());return}else if(this.listeners[a]){n.visitors=this.listeners[a];return}}t.pop()}walkSync(t){t[kt]=!0;let n=[{eventIndex:0,events:Hc(t),iterator:0,node:t}];for(;n.length>0;){let r=n[n.length-1],o=r.node;if(r.iterator!==0){let i=r.iterator;r.descending&&(r.descending=!1,o.indexes[i]+=1);let a,l=!1;for(;a=o.nodes[o.indexes[i]];){if(!a[kt]){a[kt]=!0,r.descending=!0,n.push({eventIndex:0,events:Hc(a),iterator:0,node:a}),l=!0;break}o.indexes[i]+=1}if(l)continue;r.iterator=0,delete o.indexes[i]}if(r.eventIndex<r.events.length){let i=r.events[r.eventIndex];if(r.eventIndex+=1,i===Vr)o.nodes&&o.nodes.length&&(r.iterator=o.getIterator());else{let a=this.listeners[i];a&&this.visitSync(a,o.toProxy())&&n.pop()}continue}n.pop()}}warnings(){return this.sync().warnings()}};_n.registerPostcss=e=>{Gc=e};Wb.exports=_n;_n.default=_n;D1.registerLazyResult(_n);N1.registerLazyResult(_n)});var $b=xe((pB,Vb)=>{"use strict";var U1=Fc(),W1=ws(),V1=_s(),$1=ti(),mB=Oc(),gi=class{get content(){return this.result.css}get css(){return this.result.css}get map(){return this.result.map}get messages(){return[]}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){if(this._root)return this._root;let t,n=W1;try{t=n(this._css,this._opts)}catch(r){this.error=r}if(this.error)throw this.error;return this._root=t,t}get[Symbol.toStringTag](){return"NoWorkResult"}constructor(t,n,r){n=n.toString(),this.stringified=!1,this._processor=t,this._css=n,this._opts=r,this._map=void 0;let o=$1;this.result=new V1(this._processor,void 0,this._opts),this.result.css=n;let i=this;Object.defineProperty(this.result,"root",{get(){return i.root}});let a=new U1(o,void 0,this._opts,n);if(a.isMap()){let[l,s]=a.generate();l&&(this.result.css=l),s&&(this.result.map=s)}else a.clearAnnotation(),this.result.css=a.css}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}catch(t){return this.async().catch(t)}finally(t){return this.async().then(t,t)}sync(){if(this.error)throw this.error;return this.result}then(t,n){return this.async().then(t,n)}toString(){return this._css}warnings(){return[]}};Vb.exports=gi;gi.default=gi});var zb=xe((hB,qb)=>{"use strict";var q1=fs(),z1=Bc(),j1=$b(),K1=Ur(),Qn=class{constructor(t=[]){this.version="8.5.28",this.plugins=this.normalize(t)}normalize(t){let n=[];for(let r of t)if(r.postcss===!0?r=r():r.postcss&&(r=r.postcss),typeof r=="object"&&Array.isArray(r.plugins))n=n.concat(r.plugins);else if(typeof r=="object"&&r.postcssPlugin)n.push(r);else if(typeof r=="function")n.push(r);else if(!(typeof r=="object"&&(r.parse||r.stringify)))throw new Error(r+" is not a PostCSS plugin");return n}process(t,n={}){return!this.plugins.length&&!n.parser&&!n.stringifier&&!n.syntax?new j1(this,t,n):new z1(this,t,n)}use(t){return this.plugins=this.plugins.concat(this.normalize([t])),this}};qb.exports=Qn;Qn.default=Qn;K1.registerProcessor(Qn);q1.registerProcessor(Qn)});var ex=xe((gB,Zb)=>{"use strict";var jb=ds(),Kb=si(),Y1=nn(),X1=cs(),Yb=ui(),Xb=fs(),J1=Sb(),Q1=di(),Z1=Bc(),eR=Lc(),tR=ii(),nR=ws(),Uc=zb(),rR=_s(),Jb=Ur(),Qb=bs(),oR=ti(),iR=Pc();function Te(...e){return e.length===1&&Array.isArray(e[0])&&(e=e[0]),new Uc(e)}Te.plugin=function(t,n){let r=!1;function o(...a){globalThis.console&&globalThis.console.warn&&!r&&(r=!0,globalThis.console.warn(t+`: postcss.plugin was deprecated. Migration guide:
|
|
28
|
+
https://evilmartians.com/chronicles/postcss-8-plugin-migration`),process.env.LANG&&process.env.LANG.startsWith("zh")&&globalThis.console.warn(t+`: \u91CC\u9762 postcss.plugin \u88AB\u5F03\u7528. \u8FC1\u79FB\u6307\u5357:
|
|
29
|
+
https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.postcssVersion=new Uc().version,l}let i;return Object.defineProperty(o,"postcss",{get(){return i||(i=o()),i}}),o.process=function(a,l,s){return Te([o(s)]).process(a,l)},o};Te.stringify=oR;Te.parse=nR;Te.fromJSON=J1;Te.list=eR;Te.comment=e=>new Kb(e);Te.atRule=e=>new jb(e);Te.decl=e=>new Yb(e);Te.rule=e=>new Qb(e);Te.root=e=>new Jb(e);Te.document=e=>new Xb(e);Te.CssSyntaxError=X1;Te.Declaration=Yb;Te.Container=Y1;Te.Processor=Uc;Te.Document=Xb;Te.Comment=Kb;Te.Warning=iR;Te.AtRule=jb;Te.Result=rR;Te.Input=Q1;Te.Rule=Qb;Te.Root=Jb;Te.Node=tR;Z1.registerPostcss(Te);Zb.exports=Te;Te.default=Te});function Um(e){return e?/[\w-]/.test(e)||e.charCodeAt(0)>=128:!1}function Wm(e){return e===" "||e===" "||e===`
|
|
30
|
+
`||e==="\r"||e==="\f"}var WA=/^[0-9a-fA-F]{1,6}/;function VA(e){let t=e>=55296&&e<=57343;return e===0||e>1114111||t?65533:e}function Vm(e,t){return e[t]==="\r"&&e[t+1]===`
|
|
31
|
+
`?t+2:Wm(e[t])?t+1:t}function Ul(e,t){let n=e[t+1];if(n===void 0||/[\n\r\f]/.test(n))return null;let r=WA.exec(e.slice(t+1,t+7));if(!r)return{value:n,end:t+2};let o=VA(Number.parseInt(r[0],16));return{value:String.fromCodePoint(o),end:Vm(e,t+1+r[0].length)}}function $A(e,t){let n=o=>Um(o)&&!/[0-9-]/.test(o),r=o=>e[o]==="\\"&&Ul(e,o)!==null;return e[t]==="-"?e[t+1]==="-"||n(e[t+1])||r(t+1):n(e[t])||r(t)}function ca(e,t){let n=t;for(;e.startsWith("/*",n);){let r=e.indexOf("*/",n+2);n=r<0?e.length:r+2}return n}function xo(e,t){let n=ca(e,t);for(;Wm(e[n]);)n=ca(e,n+1);return n}function yo(e,t){if(!$A(e,t))return null;let n=t,r="";for(;n<e.length;){let o=e[n];if(o==="\\"){let i=Ul(e,n);if(!i)break;r+=i.value,n=i.end;continue}if(!Um(o))break;r+=o,n+=1}return n===t?null:{value:r,end:n}}var Wl=45;function $m(e){return e>=48&&e<=57}function qA(e){return e>=128||e===Wl||e===95||$m(e)||e>=65&&e<=90||e>=97&&e<=122}function zA(e,t){let n=e.charCodeAt(t);return n>=1&&n<=31||n===127?!0:$m(n)?t===0||t===1&&e.charCodeAt(0)===Wl:!1}function Xt(e){let t="";for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n),o=e[n];r===0?t+="\uFFFD":zA(e,n)?t+=`\\${r.toString(16)} `:n===0&&e.length===1&&r===Wl?t+=`\\${o}`:qA(r)?t+=o:t+=`\\${o}`}return t}var qm=/\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:[0-9a-fA-F]{1,6}(?:\r\n|[ \t\r\n\f])?|[\s\S])|"(?:[^"\\]|\\[\s\S])*"|'(?:[^'\\]|\\[\s\S])*'|\[(?:\/\*(?:[^*]|\*(?!\/))*\*\/|\\[\s\S]|"(?:[^"\\]|\\[\s\S])*"|'(?:[^'\\]|\\[\s\S])*'|[^\]"'\\/]|\/(?!\*))*\]/g;function jA(e){let t=new Array(e.length).fill(!0);for(let n of e.matchAll(qm)){let r=n.index;t.fill(!1,r,r+n[0].length)}return t}function da(e,t,n){if(t.length===0||!e.includes("#"))return e;let r=new Set(t),o=jA(e),i="",a=0;for(;a<e.length;){let l=o[a]&&e[a]==="#"?yo(e,a+1):null;l&&r.has(l.value)?(i+=n(l.value),a=l.end):(i+=e[a],a+=1)}return i}function KA(e){let t="";for(let n=0;n<e.length;n+=1){if(e[n]==="\\"){let r=e[n+1];if(r!==void 0&&/[\n\r\f]/.test(r)){n=Vm(e,n+1)-1;continue}let o=Ul(e,n);if(o){t+=o.value,n=o.end-1;continue}}t+=e[n]}return t}function Vl(e){return Array.from(e,t=>{let n=t.charCodeAt(0);return n===0?"\uFFFD":n<32||n===127?`\\${n.toString(16)} `:t==='"'||t==="\\"?`\\${t}`:t}).join("")}function YA(e,t){return e?{kind:"any"}:t===void 0?{kind:"none"}:{kind:"named",prefix:t}}function XA(e,t){return e[t]==="|"&&e[t+1]!=="="}function JA(e,t){let n=e[t]==="*",r=n?{value:"*",end:t+1}:yo(e,t),o=ca(e,r?.end??t);if(!XA(e,o))return n?null:r?{token:r,namespace:{kind:"none"}}:null;let i=yo(e,ca(e,o+1));return i?{token:i,namespace:YA(n,r?.value)}:null}function QA(e){if(e[0]!=="[")return null;let t=xo(e,1),n=JA(e,t);if(!n)return null;let{token:r,namespace:o}=n;return{name:r.value,rawName:e.slice(t,r.end),namespace:o,end:r.end}}function ZA(e,t){let n=/^(?:"((?:\\[\s\S]|[^"\\])*)"|'((?:\\[\s\S]|[^'\\])*)')/.exec(e.slice(t));return n?{value:KA(n[1]??n[2]),end:t+n[0].length}:yo(e,t)}function ew(e,t){let n=xo(e,t),r=yo(e,n);if(r){if(!/^[is]$/i.test(r.value))return null;n=xo(e,r.end)}return e[n]!=="]"||n!==e.length-1?null:{flag:r?.value}}function zm(e){let t=QA(e);if(!t)return null;let n=xo(e,t.end),o=["=","~=","|=","^=","$=","*="].find(l=>e.startsWith(l,n));if(!o)return null;let i=ZA(e,xo(e,n+o.length));if(!i)return null;let a=ew(e,i.end);return a?{name:t.name,rawName:t.rawName,namespace:t.namespace,operator:o,value:i.value,flag:a.flag}:null}function $l(e,t){return e.replace(qm,n=>n.startsWith("[")?t(n):n)}var _t="data-hf-svg-reference-aliases";function fa(e,t,n,r){let o={"=":(f,m)=>f===m,"~=":(f,m)=>f.split(/[ \t\r\n\f]+/).includes(m),"|=":(f,m)=>f===m||f.startsWith(m+"-"),"^=":(f,m)=>f.startsWith(m),"$=":(f,m)=>f.endsWith(m),"*=":(f,m)=>f.includes(m)},i=(f,m,p)=>!m&&p!=="="&&p!=="|="?!1:o[p](f,m),a=f=>f.replace(/[A-Z]/g,m=>m.toLowerCase()),l=f=>{let m=zm(f);if(!m)return f;let{name:p,rawName:x,namespace:b,operator:y,value:E,flag:v}=m;if(b.kind==="named"!=(r!==void 0))return f;let _=v?.toLowerCase()==="i"?a:A=>A,H=a(p),I=n.filter(A=>{let L=b.kind==="none"?A.name:A.localName,P=b.kind==="named"?r.get(b.prefix):null;return(b.kind==="any"||A.namespaceURI===P)&&a(L)===H}),k=new Set([f]);for(let A of I)i(_(A.before),_(E),y)&&k.add(`[${x}="${Vl(A.after)}"${v?` ${v}`:""}]`);return k.size===1?f:`:is(${[...k].join(", ")})`};if(r)return $l(e,l);let s=new Map(t.map(({id:f,replacement:m})=>[f,m])),c=new Map;for(let f of n){if(f.name!=="id"||f.before===f.after||s.has(f.before))continue;let m=c.get(f.before);m||(m=new Set([`#${Xt(f.before)}`]),c.set(f.before,m)),m.add(`#${Xt(f.after)}`)}for(let[f,m]of c)s.set(f,`:is(${[...m].join(", ")})`);let d=da(e,[...s.keys()],f=>s.get(f));return $l(d,l)}function Un(e,t,n=!0){let r=[],i=(n?[...e.querySelectorAll(`[${t}]`)]:[]).map(l=>l.getAttribute(t)),a=e.getAttribute?.(t);a&&i.unshift(a);for(let l of i){let s;try{s=JSON.parse(l)}catch{continue}if(!Array.isArray(s))continue;let c=s;for(let d of c){if(!nw(d))continue;let{name:f,localName:m,namespaceURI:p,before:x,after:b}=d;r.push({name:f,localName:m,namespaceURI:p,before:x,after:b})}}return r}function nw(e){if(!e||typeof e!="object")return!1;let{name:t,localName:n,namespaceURI:r,before:o,after:i}=e;return typeof t=="string"&&typeof n=="string"&&(r===null||typeof r=="string")&&typeof o=="string"&&typeof i=="string"}function rw(e){let t=[],n=[],r=!1,o,i=new WeakMap,a=(c,d)=>{for(let f of c){if("selectorText"in f){let m=f,p=i.get(m),x=m.selectorText,b=p?.applied===x?p.authored:x,y=fa(b,[],n,d);y!==x&&(m.selectorText=y),y===b?i.delete(m):i.set(m,{authored:b,applied:m.selectorText})}"cssRules"in f&&a(f.cssRules,d)}},l=()=>{if(n.length)for(let c of e.document.styleSheets){let d;try{d=c.cssRules}catch{continue}let f=new Map;for(let m of d){if(!("namespaceURI"in m))continue;let{prefix:p,namespaceURI:x}=m;p&&f.set(p,x||null)}f.size&&a(d,f)}},s={rewrite:(c,d=[])=>{if(typeof c!="string"||!c.includes("#")&&!c.includes("["))return c;let f=fa(c,d.length?[...d,...t]:t,n);if(f!==c){if(!o){let m=e.document.createElement("div");o=m.matches.bind(m)}o(c)}return f},refresh(){n=Un(e.document,_t).filter(m=>m.before!==m.after);let c=new Set(n.filter(m=>m.name==="id").map(m=>m.before)),d=new Set;t=[];for(let m of e.document.querySelectorAll("[data-hf-authored-id][id]")){let p=m.getAttribute("data-hf-authored-id");if(!p||p===m.id||d.has(p)||c.has(p))continue;d.add(p);let x=Vl(p);t.push({id:p,replacement:`:is(#${Xt(p)}, [data-hf-authored-id="${x}"])`})}if(l(),r||!t.length&&!n.length)return;let f=e.Element.prototype;f.querySelector=new Proxy(f.querySelector,{apply(m,p,x){return Reflect.apply(m,p,[s.rewrite(x[0])])}}),f.querySelectorAll=new Proxy(f.querySelectorAll,{apply(m,p,x){return Reflect.apply(m,p,[s.rewrite(x[0])])}}),r=!0}};e.__hfSvgSelectorAliases=s,s.refresh()}function cr(){let e=window;e.__hfSvgSelectorAliases?e.__hfSvgSelectorAliases.refresh():rw(e)}function ma(){return globalThis}function So(e){let t="unknown error";try{t=e instanceof Error?`${e.name}: ${e.message}`:String(e)}catch(n){G("runtime.startupError",n)}window.__hfStartupError=`HyperFrames runtime failed: ${t}. Check the composition's scripts and window.__timelines entries; if they look right, report this as a HyperFrames bug.`}function G(e,t){if(typeof window>"u")return;let n=ma(),r=n.__hf?.onSwallowed;if(r)try{r({label:e,error:t})}catch(o){}(n.__hfDebug||n.__HYPERFRAMES_DEBUG)&&globalThis.console.debug(`[hyperframes] ${e} swallowed:`,t)}var pa="hyperframes-studio-preview",Wn="data-hf-upcoming",ha="data-hf-preview-lazy";var dt="data-hf-preview-raster",Ot="data-hf-autostamped",ga=[Wn,ha,dt,Ot];var jm="http://www.w3.org/1999/xhtml";function Pe(e){return e!=null&&e.nodeType===1}function ve(e){return Pe(e)&&e.namespaceURI===jm}function dr(e,t){return ve(e)&&e.localName===t}function Me(e){return dr(e,"video")}function ba(e){return dr(e,"audio")}function pe(e){return Me(e)||ba(e)}function Je(e){return dr(e,"img")}function Jt(e){return dr(e,"canvas")}function Km(e){return dr(e,"style")}function Ym(e){return dr(e,"link")}function fr(e){return Pe(e)&&(e.namespaceURI===jm||e.namespaceURI==="http://www.w3.org/2000/svg")}var Qm="data-hf-first-pass-hide",Xm="[data-start]:not(video, audio, img) { visibility: hidden !important; }",ow='img[loading="lazy"] { display: none !important; }',Zm="data-hf-skip-hidden-images",vo=`[data-start]:not(video, audio, img, [${Wn}], [${Ot}])[style*="visibility: hidden"]`,iw=`${vo} img { display: none !important; }`,aw=`meta[name="${pa}"]`,Vn="data-hf-clip-hidden",Jm="data-hf-hidden-clip-contents",zl=`[${Vn}][style*="visibility: hidden"]`,sw=`${zl} * { visibility: hidden !important; }`,lw=[zl,`${zl} *`].flatMap(e=>[e,`${e}::before`,`${e}::after`]).join(", "),uw=`${lw} { filter: none !important; }`;function ep(){let e=Array.from(document.querySelectorAll(`[${Vn}]`));for(let t of e)t.style.visibility="visible";return()=>{for(let t of e)t.style.visibility="hidden"}}function ql(e,t,n){let r=document.createElement("style");r.setAttribute(t,""),r.textContent=n,e.appendChild(r)}function Eo(){return document.querySelector(`style[${Zm}]`)!==null}function tp(){if(typeof document>"u")return;let e=document.head??document.documentElement;if(!e)return;let t=document.querySelector(aw)!==null;t&&!Eo()&&ql(e,Zm,iw),document.querySelector(`style[${Jm}]`)||ql(e,Jm,`${sw} ${uw}`);let n=window;if(n.__hfFirstPassHidden||n.__hyperframeRuntimeBootstrapped)return;let r=t?`${Xm} ${ow}`:Xm;ql(e,Qm,r),n.__hfFirstPassHidden=!0}function np(){let e=window;if(!e.__hfFirstPassHidden)return!1;e.__hfFirstPassHidden=!1;for(let t of document.querySelectorAll(`style[${Qm}]`))t.remove();return!0}var cw=new Set(["transform","translate","rotate","scale"]),xa=`[${dt}]`,dw=`${xa} { will-change: auto !important; }`,rp=new Set([...ga,Vn]),mr=null,pr=null,op=new WeakMap;function fw(e){return e.willChange.split(",").every(t=>cw.has(t.trim()))}function jl(e,t,n=!0){for(let r of n?[null,"::before","::after"]:["::before","::after"]){let o=getComputedStyle(e,r);if(!(r&&o.content==="none")&&(o.position==="fixed"||!t&&(o.zIndex!=="auto"||o.mixBlendMode!=="normal")))return!0}return!1}function mw(e,t){if(t.position==="static")return!1;let n=t.zIndex!=="auto";if(jl(e,n,!1))return!1;for(let r of e.querySelectorAll("*"))if(jl(r,n))return!1;return!0}function ip(e,t){return`${t.zIndex}|${e.style?.willChange??""}`}function Yl(e,t){if(e===mr)return!1;let n=e.hasAttribute(dt);n&&t&&e.removeAttribute(dt);let r=getComputedStyle(e),i=(n&&!t||fw(r))&&mw(e,r);return i&&op.set(e,ip(e,r)),i}function ap(e,t){t!==e.hasAttribute(dt)&&e.toggleAttribute(dt,t)}function pw(e,t){ap(e,Yl(e,t))}function sp(e){let t=e.parentElement?.closest(xa);for(;t;)jl(e,getComputedStyle(t).zIndex!=="auto")&&t.removeAttribute(dt),t=t.parentElement?.closest(xa)}function lp(e,t){let n=[];for(let r of[e,...e.querySelectorAll("*")])t.checked.has(r)||(t.checked.add(r),n.push([r,Yl(r,r===e||t.changed.has(r))]));for(let[r,o]of n)ap(r,o);for(let[r]of n)sp(r)}function hw(e){if(e.hasAttribute(dt)){let t=getComputedStyle(e);(t.position==="static"||ip(e,t)!==op.get(e))&&pw(e,!0)}sp(e)}function up(){for(let e of document.querySelectorAll(xa))e.removeAttribute(dt)}function Kl(){up();let e=[...document.querySelectorAll("*")].filter(t=>Yl(t,!0));for(let t of e)t.setAttribute(dt,"")}function gw(e,t){!Pe(e.target)||rp.has(e.attributeName??"")||(e.attributeName==="style"?hw(e.target):lp(e.target,t))}function bw(e){return[...e.addedNodes].filter(t=>Pe(t)&&(t.localName==="style"||t.localName==="link"))}function xw(e){let t=new Set;for(let n of e){let r=n.attributeName;r===null||r==="style"||rp.has(r)||Pe(n.target)&&t.add(n.target)}return t}function yw(e){let t=e.flatMap(bw);for(let r of t)r.addEventListener("load",()=>pr&&Kl(),{once:!0});if(t.length)return Kl();let n={changed:xw(e),checked:new Set};for(let r of e)if(r.type==="attributes")gw(r,n);else for(let o of r.addedNodes)Pe(o)&&lp(o,n)}function Sw(){pr?.disconnect(),pr=null,mr?.remove(),mr=null,up()}function cp(e){if(!(!(e>0)||!Number.isFinite(e))){if(e>=1)return Sw();pr||(mr=document.createElement("style"),mr.textContent=dw,(document.head??document.documentElement).append(mr),Kl(),pr=new MutationObserver(yw),pr.observe(document.documentElement,{subtree:!0,childList:!0,attributes:!0}))}}var Ao="hf-runtime-filler",vw=["seconds-time","rational-fps","seek-keep-playing","composition-manifest-v1","runtime-data","play-range"];function Ew(e,t){let n=Math.abs(e),r=Math.abs(t);for(;r!==0;){let o=n%r;n=r,r=o}return n||1}function Aw(e){let t=Number.isFinite(e)&&e>0?e:30,n=Number.isInteger(t)?1:1e6,r=Math.round(t*n),o=Ew(r,n);return{numerator:r/o,denominator:n/o}}function dp(e,t,n){return Math.max(e,(Math.ceil(t*n-1e-6)-1)/n)}function Xl(e){if(typeof e!="object"||e===null)return null;let t=e;return!Number.isFinite(t.numerator)||!Number.isFinite(t.denominator)||(t.numerator??0)<=0||(t.denominator??0)<=0?null:Number(t.numerator)/Number(t.denominator)}function ya(e){return{protocolVersion:1,capabilities:vw,fps:Aw(e)}}function ww(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function fp(e,t=30){if(typeof e!="object"||e===null)return{status:"legacy",fps:t};let n=e;if(n.protocolVersion===void 0)return{status:"legacy",fps:t};if(n.protocolVersion!==1)return{status:"unsupported",code:"unsupported_protocol_version",receivedVersion:n.protocolVersion};let r=Xl(n.fps);return r===null||!ww(n.capabilities)?{status:"unsupported",code:"invalid_protocol_metadata",receivedVersion:n.protocolVersion}:{status:"supported",fps:r,metadata:n}}var hr=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),gP=Object.freeze([hr.start,hr.duration,hr.trackIndex]),bP=Object.freeze([hr.derivedEnd]),xP=Object.freeze([hr.derivedEnd,hr.legacyTrack]);function pn(e){if(e==null||e.trim()==="")return null;let t=Number(e);return Number.isFinite(t)?t:null}var pp=/^[A-Za-z0-9_.:-]+$/;function hp(e,t){let n=e.charCodeAt(t);return n>=48&&n<=57}function mp(e,t){let n=t;for(;n>=0&&hp(e,n);)n--;return n}function _w(e,t){let n=t;for(;n>=0&&(e[n]??"").trim()==="";)n--;return n}function Cw(e){let t=e.length-1;if(!hp(e,t))return null;let n=mp(e,t);return e[n]==="."&&(n=mp(e,n-1)),n+1}function Tw(e){let t=Cw(e);if(t==null)return null;let n=_w(e,t-1),r=e[n];if(r!=="+"&&r!=="-")return null;let o=e.slice(0,n).trim();if(!pp.test(o))return null;let i=Number(e.slice(t));return Number.isFinite(i)?{refId:o,operator:r,magnitude:i}:null}function Sa(e){let t=(e??"").trim();if(!t)return null;let n=pn(t);if(n!=null)return{kind:"absolute",value:n};if(pp.test(t))return{kind:"reference",refId:t,offset:0};let r=Tw(t);return r?{kind:"reference",refId:r.refId,offset:r.operator==="-"?-r.magnitude:r.magnitude}:null}var gp=e=>{let t=pn(e);return t!==null&&t>=0?t:null};function va(e){return gp(e("data-playback-start"))??gp(e("data-media-start"))??0}var wo=.1,_o=10;function Jl(e){return Number.isFinite(e)&&e>0?Math.max(wo,Math.min(_o,e)):1}function bp(e,t=1){let n=Number.parseFloat(e("data-playback-rate")??"");return Jl(Number.isFinite(n)&&n>0?n:t)}function Ql(e){let t=pn(e("data-duration"));return t!==null&&t>0?t:null}function xp(e,t){let n=Ql(e);if(n!==null)return n;let r=pn(e("data-end"));return r!==null?r-t:null}var Rw=3;function Zl(e,t,n){return Number.isFinite(e)?Math.max(0,e-t)/Jl(n):null}function eu(e){let{tag:t,authoredDurationSeconds:n,sourceDurationSeconds:r,mediaStartSeconds:o,playbackRate:i}=e;if(n!==null&&n>0)return{seconds:n,source:"authored"};if(t==="img")return{seconds:Rw,source:"default"};if(r===null)return{seconds:null,source:"pending",reason:"source duration not yet probed"};let a=Zl(r,o,i);return a===null?{seconds:null,source:"pending",reason:"source reported a non-finite duration"}:{seconds:a,source:"media"}}var gn="data-fx-chain",AP=gn.slice(5),yp=1,Co=(e="frequency",t="Frequency",n=1e3,r=20,o=2e4)=>({kind:"number",key:e,label:t,unit:"Hz",min:r,max:o,step:1,default:n,scale:"log",automatable:!0}),tu=(e=.707,t="Bandwidth: higher is narrower.")=>({kind:"number",key:"q",label:"Q",unit:"",min:.1,max:20,step:.01,default:e,scale:"log",automatable:!0,hint:t}),Ea=(e=-40,t=40,n=0)=>({kind:"number",key:"gain",label:"Gain",unit:"dB",min:e,max:t,step:.1,default:n,automatable:!0}),Sp={kind:"enum",key:"poles",label:"Slope",options:[{value:"1",label:"6 dB/oct"},{value:"2",label:"12 dB/oct"}],default:"2",hint:"Two poles is the usual biquad; one pole is gentler."},Ep=[{id:"gain",label:"Gain",group:"dynamics",description:"Raise or lower the whole signal. Automate it to duck under something else.",params:[Ea(-60,12,0)],web:"gain-node"},{id:"peaking",label:"Peaking EQ",group:"filter",description:"Boost or cut a band, leaving everything either side alone.",params:[Co("frequency","Frequency",1e3),Ea(-40,40,0),tu(1)],web:"biquad-peaking"},{id:"lowshelf",label:"Low Shelf",group:"filter",description:"Lift or drop everything below the corner frequency.",params:[Co("frequency","Frequency",200,20,2e3),Ea(-40,40,0)],web:"biquad-lowshelf"},{id:"highshelf",label:"High Shelf",group:"filter",description:"Lift or drop everything above the corner frequency.",params:[Co("frequency","Frequency",4e3,500,2e4),Ea(-40,40,0)],web:"biquad-highshelf"},{id:"highpass",label:"High-pass",group:"filter",description:"Remove low frequencies: the usual fix for rumble on a voice.",params:[Co("frequency","Cutoff",300,20,2e4),tu(.707),Sp],web:"biquad-highpass"},{id:"lowpass",label:"Low-pass",group:"filter",description:"Remove high frequencies, which darkens or muffles a track.",params:[Co("frequency","Cutoff",8e3,100,2e4),tu(.707),Sp],web:"biquad-lowpass"},{id:"compressor",label:"Compressor",group:"dynamics",description:"Pull loud parts down so the quiet ones can come up.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-60,max:0,step:.5,default:-24,hint:"Level above which the compressor starts working."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:4},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:2e3,step:.1,default:20,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:250,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83,hint:"1 is a hard corner; higher eases into it."},{kind:"number",key:"makeup",label:"Makeup",unit:"dB",min:0,max:36,step:.1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1,hint:"Below 1 blends the dry signal back in."}],web:"worklet-compressor"},{id:"limiter",label:"Limiter",group:"dynamics",description:"Peak limiter that follows the signal's level. It has no lookahead, so a fast peak or an inter-sample peak can pass the ceiling; use the true-peak limiter for a delivery limit.",params:[{kind:"number",key:"limit",label:"Ceiling",unit:"dB",min:-24,max:0,step:.1,default:-1},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.1,max:80,step:.1,default:5},{kind:"number",key:"release",label:"Release",unit:"ms",min:1,max:8e3,step:1,default:50,scale:"log"},{kind:"number",key:"level_out",label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0}],web:"worklet-limiter"},{id:"truepeak",label:"True-peak limiter",group:"dynamics",description:"Lookahead limiter that holds a 4x estimate of the inter-sample peak at a dBTP ceiling; full-band noise can land up to about 1.7 dB above it. Adds lookahead plus about 0.3 ms of latency.",params:[{kind:"number",key:"ceiling",label:"Ceiling",unit:"dBTP",min:-24,max:0,step:.1,default:-1,hint:"Target true peak, measured on a 4x oversampled signal. Dense full-band sound can end up to about 1.7 dB above it."},{kind:"number",key:"lookahead",label:"Lookahead",unit:"ms",min:.5,max:10,step:.1,default:3,hint:"How far ahead the gain starts falling. Longer is smoother and adds the same latency."},{kind:"number",key:"release",label:"Release",unit:"ms",min:10,max:2e3,step:1,default:80,scale:"log"}],web:"worklet-truepeak"},{id:"gate",label:"Noise Gate",group:"dynamics",description:"Silence the track when it drops below the threshold.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-80,max:0,step:.5,default:-35},{kind:"number",key:"range",label:"Range",unit:"dB",min:-80,max:0,step:.5,default:-24,hint:"How far down the gate pulls when closed."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:10},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:9e3,step:.1,default:1,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:100,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83}],web:"worklet-gate"},{id:"saturate",label:"Saturation",group:"nonlinear",description:"Soft-clip the waveform for warmth or outright distortion.",params:[{kind:"enum",key:"type",label:"Curve",options:[{value:"tanh",label:"Tanh"},{value:"atan",label:"Arctan"},{value:"cubic",label:"Cubic"},{value:"exp",label:"Exponential"},{value:"alg",label:"Algebraic"},{value:"quintic",label:"Quintic"},{value:"sin",label:"Sine"},{value:"erf",label:"Error function"},{value:"hard",label:"Hard clip"}],default:"tanh"},{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-40,max:0,step:.1,default:-6},{kind:"number",key:"output",automatable:!0,label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0},{kind:"number",key:"oversample",label:"Oversample",unit:"x",min:1,max:8,step:1,default:4,hint:"Higher costs more but keeps aliasing down."}],web:"waveshaper"},{id:"bitcrush",label:"Bitcrush",group:"nonlinear",description:"Drop bit depth and sample rate for a lo-fi, digital sound.",params:[{kind:"number",key:"bits",label:"Bit depth",unit:"bit",min:1,max:32,step:.1,default:8},{kind:"number",key:"samples",label:"Sample hold",unit:"x",min:1,max:250,step:1,default:1,hint:"Repeats each sample N times, a crude downsample."},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-bitcrush"},{id:"pitchshift",label:"Pitch shift",group:"time",description:"Shifts pitch up or down without changing playback speed. Adds ~50 ms of latency.",params:[{kind:"number",key:"semitones",label:"Semitones",unit:"st",min:-12,max:12,step:1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-pitchshift"},{id:"delay",label:"Delay",group:"time",description:"Repeating echoes behind the dry signal.",params:[{kind:"number",key:"time",automatable:!0,label:"Time",unit:"ms",min:1,max:5e3,step:1,default:250,scale:"log"},{kind:"number",key:"feedback",automatable:!0,label:"Feedback",unit:"",min:.01,max:.95,step:.01,default:.35},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.4}],web:"delay-feedback"},{id:"chorus",label:"Chorus",group:"time",description:"Detuned copies of the signal for width and thickness.",params:[{kind:"number",key:"delay",automatable:!0,label:"Delay",unit:"ms",min:1,max:100,step:.1,default:7},{kind:"number",key:"depth",automatable:!0,label:"Depth",unit:"ms",min:0,max:10,step:.01,default:2},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.01,max:10,step:.01,default:1},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.5}],web:"chorus-lfo"},{id:"phaser",label:"Phaser",group:"time",description:"Sweeping notches moving through the spectrum.",params:[{kind:"number",key:"in_gain",automatable:!0,label:"Input",unit:"",min:0,max:1,step:.01,default:.4},{kind:"number",key:"out_gain",automatable:!0,label:"Output",unit:"",min:0,max:2,step:.01,default:.74},{kind:"number",key:"delay",label:"Delay",unit:"ms",min:.1,max:5,step:.1,default:3},{kind:"number",key:"decay",label:"Decay",unit:"",min:0,max:.99,step:.01,default:.4},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.1,max:2,step:.01,default:.5},{kind:"enum",key:"type",label:"Waveform",options:[{value:"0",label:"Triangular"},{value:"1",label:"Sinusoidal"}],default:"0"}],web:"allpass-phaser"},{id:"reverb",label:"Reverb",group:"time",description:"Room tail. Both ends convolve the same generated impulse, so preview matches render.",params:[{kind:"number",key:"size",label:"Room size",unit:"",min:.05,max:1,step:.01,default:.7},{kind:"number",key:"damping",label:"Damping",unit:"",min:0,max:1,step:.01,default:.5,hint:"Higher rolls the top off the tail faster."},{kind:"number",key:"wet",automatable:!0,label:"Wet",unit:"",min:0,max:1,step:.01,default:.35},{kind:"number",key:"dry",automatable:!0,label:"Dry",unit:"",min:0,max:1,step:.01,default:.7}],web:"convolver"}],nu=new Map(Ep.map(e=>[e.id,e]));function To(e){return nu.get(e)}var wP=Ep.map(e=>e.id);function Ro(e,t){let n=nu.get(e);if(!n)return{};let r={};for(let o of n.params){let i=t?.[o.key];if(o.kind==="enum"){let l=o.options.some(s=>s.value===i);r[o.key]=l?i:o.default;continue}let a=typeof i=="number"?i:typeof i=="string"&&i.trim()!==""?Number(i):Number.NaN;r[o.key]=Number.isFinite(a)?Math.min(o.max,Math.max(o.min,a)):o.default}return r}var hn=class extends Error{constructor(t){super(t),this.name="AudioFxChainError"}};function Ap(e){let t;try{t=JSON.parse(e)}catch(o){throw new hn(`Chain file is not valid JSON: ${o.message}`)}if(typeof t!="object"||t===null)throw new hn("Chain file must be a JSON object.");let n=t;if(n.version!==yp)throw new hn(`Unsupported chain version: ${String(n.version)}`);if(!Array.isArray(n.nodes))throw new hn("Chain file is missing a `nodes` array.");let r=n.nodes.map(Mw);return{version:yp,nodes:r}}function Mo(e){return e.nodes.filter(t=>t.enabled!==!1)}function Mw(e,t){if(typeof e!="object"||e===null)throw new hn(`Node ${t} is not an object.`);let n=e;if(typeof n.type!="string"||!nu.has(n.type))throw new hn(`Node ${t} has unknown effect type: ${String(n.type)}`);return Lw({type:n.type,id:Aa(n.id),fromCarve:vp(n.fromCarve),fromPreset:Aa(n.fromPreset),label:Aa(n.label),fromEq:Aa(n.fromEq),fromLeveller:vp(n.fromLeveller),presetAmount:kw(n.presetAmount),enabled:n.enabled!==!1,params:Ro(n.type,n.params??void 0)})}function Aa(e){return typeof e=="string"&&e?e:void 0}function vp(e){return e===!0?!0:void 0}function kw(e){if(!(typeof e!="number"||!Number.isFinite(e)))return Math.min(1,Math.max(0,e))}function Lw(e){for(let t of Object.keys(e))e[t]===void 0&&delete e[t];return e}function Nw(e){return 10**(e/20)}var $n=Nw(12);function Ve(e){return Number.isFinite(e)?Math.max(0,Math.min($n,e)):1}function _a(e,t){return Ve(e*t)}function wp(e,t){return t?1:Ve(e)}function wa(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function _p(e,t){let n=typeof HTMLMediaElement>"u"?void 0:Object.getOwnPropertyDescriptor(HTMLMediaElement.prototype,"volume"),r=n?.get,o=n?.set;if(!r||!o)return t();let i=Number(r.call(e));Object.defineProperty(e,"volume",{configurable:!0,get:()=>i,set:a=>{i=Number(a),o.call(e,wa(i))}});try{return t()}finally{delete e.volume,o.call(e,wa(i))}}var Zt="data-automation",NP=Zt.slice(5),Ta=1,Fw=512,Qt=class extends Error{constructor(t){super(t),this.name="AudioAutomationError"}},gr="volume",Ra="rate";function Lo(e){if(e===gr)return{kind:"volume"};if(e===Ra)return{kind:"rate"};let t=e.split(".");if(t.length===3&&t[0]==="fx"&&t[1]===Iw){let o=t[2];return o?{kind:"preset",presetId:o}:null}if(t.length!==3||t[0]!=="fx")return null;let[,n,r]=t;return!n||!r?null:{kind:"fx",nodeId:n,param:r}}var Iw="preset";var Dw={min:0,max:1,step:.01,unit:"",label:"Amount",scale:"linear",default:1},Ma={min:0,max:$n,step:.01,unit:"",label:"Volume",scale:"linear",default:1};function Pw(e){return Math.min(4096,Math.max(2,Math.ceil(e*30)))}function ru(e){return!!e.curve||e.viaX!==void 0&&e.viaY!==void 0}function Ca(e,t,n=!1){let r=Ve(t),o=_a(r,e);return n&&r>0?o/r:o}function Cp(e,t,n=!1){let r=[],o=e.points,i=Ve(t);for(let a=0;a<o.length;a+=1){let l=o[a],s=o[a+1];if(!(s!==void 0&&(i*l.v-$n)*(i*s.v-$n)<0)){r.push({...l,v:Ca(l.v,t,n)});continue}if(r.push({t:l.t,v:Ca(l.v,t,n)}),ru(l)){let d=Pw(s.t-l.t);for(let f=1;f<d;f+=1){let m=l.t+(s.t-l.t)*f/d;r.push({t:m,v:Ca(Ht(e,m),t,n)})}}else{let d=l.t+($n/i-l.v)/(s.v-l.v)*(s.t-l.t);r.push({t:d,v:Ca($n/i,i,n)})}}return r}var Tp={min:wo,max:_o,step:.05,unit:"x",label:"Speed",scale:"log",default:1};function ou(e,t){let n=Lo(e);if(!n)return null;if(n.kind==="volume")return Ma;if(n.kind==="rate")return Tp;if(n.kind==="preset")return t?.nodes.some(l=>l.fromPreset===n.presetId)?{...Dw,label:`${n.presetId} \xB7 Amount`}:null;let r=t?.nodes.find(a=>a.id===n.nodeId);if(!r)return null;let o=To(r.type),i=o?.params.find(a=>a.key===n.param);return!i||i.kind!=="number"?null:{min:i.min,max:i.max,step:i.step,unit:i.unit,label:`${o?.label??r.type} \xB7 ${i.label}`,scale:i.scale==="log"&&i.min>0?"log":"linear",default:i.default}}function ko(e){if(typeof e=="number")return Number.isFinite(e)?e:null;if(typeof e=="string"&&e.trim()!==""){let t=Number(e);return Number.isFinite(t)?t:null}return null}function Ow(e){let t=ko(e);return t===null||t===0?0:Math.min(1,Math.max(-1,t))}function Rp(e,t){let n=ko(e),r=ko(t);if(n===null||r===null)return null;let o=l=>Math.min(.999,Math.max(.001,l)),i=o(n),a=o(r);return Math.abs(i-a)<1e-6?null:{x:i,y:a}}function Hw(e){let t=Ow(e?.curve),n=Rp(e?.viaX,e?.viaY);return{...t?{curve:t}:{},...n?{viaX:n.x,viaY:n.y}:{}}}function Gw(e,t){let n=ko(e?.t),r=ko(e?.v);if(n===null||r===null)return null;let o=t?Math.min(t.max,Math.max(t.min,r)):r;return{t:Math.max(0,n),v:o,...Hw(e)}}function Mp(e,t){let n=e.map(o=>Gw(o,t)).filter(o=>o!==null).sort((o,i)=>o.t-i.t),r=[];for(let o of n)r.length>0&&r[r.length-1].t===o.t?r[r.length-1]=o:r.push(o);return r.slice(0,Fw)}function Bw(e){let t=[];for(let n of e.lanes){if(!Lo(n.target))continue;let r=n.target===gr?Ma:n.target===Ra?Tp:null,o=Mp(n.points??[],r);o.length>0&&t.push({target:n.target,points:o})}return{version:Ta,lanes:t}}function kp(e,t){let n=[];for(let r of e.lanes){let o=ou(r.target,t);if(!o)continue;let i=Mp(r.points,o);i.length>0&&n.push({target:r.target,points:i})}return{version:Ta,lanes:n}}function ka(e){let t;try{t=JSON.parse(e)}catch(o){throw new Qt(`Automation is not valid JSON: ${o.message}`)}if(typeof t!="object"||t===null)throw new Qt("Automation must be a JSON object.");let n=t;if(n.version!==Ta)throw new Qt(`Unsupported automation version: ${String(n.version)}`);if(!Array.isArray(n.lanes))throw new Qt("Automation is missing a `lanes` array.");let r=n.lanes.map((o,i)=>{if(typeof o!="object"||o===null)throw new Qt(`Lane ${i} is not an object.`);let a=o;if(typeof a.target!="string"||!Lo(a.target))throw new Qt(`Lane ${i} has an unreadable target: ${String(a.target)}`);if(!Array.isArray(a.points))throw new Qt(`Lane ${i} is missing a \`points\` array.`);return{target:a.target,points:a.points}});return Bw({version:Ta,lanes:r})}function Uw(e,t){return t?Math.pow(e,Math.pow(2,2*t)):e}function Ww(e,t){let n=e-.5,r=t-.5,o=.999,i=1e6,a=n>0?n/(o-e):n<0?-n/(e-(1-o)):0,l=r>0?r/(o-t):r<0?-r/(t-(1-o)):0,s=Math.min(i,Math.max(1,a,l));return{cx:e+n/s,cy:t+r/s,w:s}}function Vw(e,t,n){let{cx:r,cy:o,w:i}=Ww(t,n),a=2-2*i,l=e*a-1+2*i*r,s=-e*a-2*i*r,c=$w(l,s,e),d=1-c,f=d*d+2*i*c*d+c*c;return f>0?(2*i*o*c*d+c*c)/f:e}function $w(e,t,n){if(Math.abs(e)<1e-12)return Math.abs(t)<1e-12?n:-n/t;let r=Math.sqrt(Math.max(0,t*t-4*e*n)),o=(-t+r)/(2*e),i=(-t-r)/(2*e),a=l=>l>=-1e-9&&l<=1+1e-9;return a(o)?Math.min(1,Math.max(0,o)):a(i)?Math.min(1,Math.max(0,i)):n}function qw(e,t){let n=Rp(t.viaX,t.viaY);return n?Vw(Math.min(1,Math.max(0,e)),n.x,n.y):Uw(e,t.curve)}function zw(e,t,n,r){return r==="log"&&e>0&&t>0?Math.exp(Math.log(e)+(Math.log(t)-Math.log(e))*n):e+(t-e)*n}function Ht(e,t,n="linear"){let r=e.points;if(r.length===0)return 0;let o=r[0];if(t<=o.t)return o.v;let i=r[r.length-1];if(t>=i.t)return i.v;let a=0,l=r.length-1;for(;l-a>1;){let f=a+l>>1;r[f].t<=t?a=f:l=f}let s=r[a],c=r[l],d=c.t-s.t;return d<=0?c.v:zw(s.v,c.v,qw((t-s.t)/d,s),n)}function Lp(e){return e.points.length<=1||e.points.every(t=>t.v===e.points[0].v)}function Np(e,t,n,r,o="linear"){let i=Math.max(2,Math.floor(r)),a=new Float32Array(i),l=n-t;for(let s=0;s<i;s+=1)a[s]=Ht(e,t+l*s/(i-1),o);return a}var La=new Map,jw=64;function iu(e,t=gr){let n=`${t}\0${e}`,r=La.get(n);if(r!==void 0)return r;let o=null;try{o=ka(e).lanes.find(i=>i.target===t)??null}catch{o=null}return La.size>jw&&La.clear(),La.set(n,o),o}function Fp(e,t){let n=(typeof e.getAttribute=="function"?e.getAttribute(Zt):null)??"";if(!n)return null;let r=iu(n);return!r||r.points.length===0?null:Ht(r,t)}var Ip=48,Dp=new WeakMap;function Kw(e){let t=e.points,n=t[0].v,r=t[t.length-1].v,o=[0],i=[0],a=s=>{let c=o[o.length-1];if(s<=c)return;let d=Ht(e,c,"log");o.push(s),i.push(i[i.length-1]+(d+Ht(e,s,"log"))/2*(s-c))},l=Math.max(0,t[0].t);a(l);for(let s=1;s<t.length;s+=1){let c=t[s-1].t,d=t[s].t;if(!(d<=0))for(let f=1;f<=Ip;f+=1)a(Math.max(c,0)+(d-c)*f/Ip)}return{ts:Float64Array.from(o),ss:Float64Array.from(i),firstRate:n,lastRate:r}}function Pp(e){let t=Dp.get(e);return t||(t=Kw(e),Dp.set(e,t)),t}function au(e){return typeof e!="number"&&e.points.length>0}function su(e,t){return typeof e=="number"?e:au(e)?Ht(e,t,"log"):1}function Op(e,t,n){let r=0,o=e.length-1;for(;o-r>1;){let i=r+o>>1;e[i]<=n?r=i:o=i}return t[r]+(t[o]-t[r])*(n-e[r])/(e[o]-e[r])}function qn(e,t){if(typeof e=="number")return t*e;if(!au(e))return t;let{ts:n,ss:r,firstRate:o,lastRate:i}=Pp(e),a=n.length-1;return t<=0?t*o:t>=n[a]?r[a]+(t-n[a])*i:Op(n,r,t)}function zn(e,t){if(typeof e=="number")return t/e;if(!au(e))return t;let{ts:n,ss:r,firstRate:o,lastRate:i}=Pp(e),a=n.length-1;return t<=0?t/o:t>=r[a]?n[a]+(t-r[a])/i:Op(r,n,t)}function Yw(e){return e?iu(e,Ra):null}function Hp(e,t){return Yw(e)??t}var GP=[{id:"montage",label:"Montage",points:[[0,.9],[.15,.3],[.5,2.5],[.85,.3],[1,.9]]},{id:"hero",label:"Hero",points:[[0,1],[.25,1.6],[.5,.25],[.75,1.6],[1,1]]},{id:"bullet",label:"Bullet",points:[[0,3],[.4,3],[.5,.15],[.6,3],[1,3]]},{id:"jump-cut",label:"Jump cut",points:[[0,.5],[.24,.5],[.26,3],[.5,3],[.52,.5],[.74,.5],[.76,3],[1,3]]},{id:"flash-in",label:"Flash in",points:[[0,.3],[.6,.6],[1,5]]},{id:"flash-out",label:"Flash out",points:[[0,5],[.4,.6],[1,.3]]},{id:"ramp-in",label:"Ramp in",points:[[0,.5],[1,1]]},{id:"ramp-out",label:"Ramp out",points:[[0,1],[1,.5]]},{id:"slowmo-middle",label:"Slow-mo middle",points:[[0,1],[1/3,.35],[2/3,.35],[1,1]]}];function Ge(e){return pn(e)}function st(e){return bp(t=>e.getAttribute(t),pe(e)?e.defaultPlaybackRate:1)}function Gt(e){return Hp(e.getAttribute("data-automation"),st(e))}function br(e){return va(t=>e.getAttribute(t))}function Bt(e,t){return Xw(t,br(e),Gt(e))}function xr(e){let t=eu({tag:"video",authoredDurationSeconds:Ql(n=>e.getAttribute(n)),sourceDurationSeconds:Number.isFinite(e.duration)?e.duration:null,mediaStartSeconds:br(e),playbackRate:st(e)});return t.source==="media"?Bt(e,e.duration):t.seconds}function yr(e,t=0){return!Je(e)||!e.hasAttribute("data-start")&&!e.hasAttribute("data-track-index")?null:eu({tag:"img",authoredDurationSeconds:xp(n=>e.getAttribute(n),t),sourceDurationSeconds:null,mediaStartSeconds:0,playbackRate:1}).seconds}function Xw(e,t,n){return typeof n=="number"?Zl(e,t,n):Number.isFinite(e)?zn(n,Math.max(0,e-t)):null}var Jw=e=>e.paused?.()===!0?(e.startTime?.()??0)+(e.totalDuration?.()??0)/Math.abs(e.timeScale?.()||1):0;function en(e){try{if(typeof e?.duration!="function")return null;let t=e.getChildren?.(!1,!1,!0),n=Array.isArray(t)?t:[],r=Math.max(Number(e.duration()),...n.map(Jw));return Number.isFinite(r)?r:null}catch(t){return G("runtime.timelineDuration",t),null}}var Sr="data-hf-authored-duration",vr="data-hf-authored-end";function No(e){if(e==null||typeof e=="string"&&e.trim()==="")return null;let t=typeof e=="number"?e:Number(e);return Number.isFinite(t)?t:null}function Er(e){let t=No(e.start);if(t==null)return null;let n=Math.max(0,t),r=No(e.duration),o=No(e.authoredDuration),i=r!=null&&r>0?r:o!=null&&o>0?o:null;if(i!=null)return{start:n,duration:i,end:n+i};let a=No(e.end),l=No(e.authoredEnd),s=a!=null&&a>n?a:l!=null&&l>n?l:null;return{start:n,duration:s==null?null:s-n,end:s}}var Na="data-hf-media-start-basis";function Gp(e){return e?.trim().toLowerCase()==="global"?"global":"local"}function Qw(e){return Gp(e.basis)==="global"?e.authoredStart:e.hostStart+e.authoredStart}function Bp(e){return Wp(e)?Qw({authoredStart:e.authoredStart,hostStart:e.hostStart,basis:e.basis}):e.ordinaryStart()}function Up(e){return Wp(e)&&Gp(e.basis)==="global"}function Wp(e){return!e.hasAutoStart&&e.authoredStart!=null&&e.hostStart!==0}function lu(e){return va(t=>e.getAttribute(t))}function Vp(e,t){return e-lu(t)}function jn(e,t){return t.reduce((n,r)=>{let o=Math.max(n.start,r.start);return{start:o,end:Math.max(o,Math.min(n.end,r.end))}},e)}function it(e){let t=e.timelineRegistry??{},n=e.includeAuthoredTimingAttrs??!1,r=e.documentRef??document,o=new WeakMap,i=new WeakMap,a=new Set,l=A=>{let L=r.getElementById(A);return L||(Array.from(r.querySelectorAll("[data-composition-id]")).find(P=>P.getAttribute("data-composition-id")===A)??null)},s=(A,L)=>n?A.getAttribute(L):null,c=A=>Er({start:0,duration:A.getAttribute("data-duration"),authoredDuration:s(A,"data-hf-authored-duration")})?.duration??Er({start:v(A,0),end:A.getAttribute("data-end"),authoredEnd:s(A,"data-hf-authored-end")})?.duration??null,d=A=>A!=null&&Number.isFinite(A)&&A>0?A:null,f=A=>{let L=A.getAttribute("data-composition-id");return L?d(en(t[L])):null},m=A=>{let L=i.get(A);if(L!==void 0)return L;let P=c(A)??d(pe(A)?Bt(A,A.duration):null)??d(yr(A))??f(A);return i.set(A,P),P},p=A=>A.hasAttribute("data-composition-src")||A.hasAttribute("data-composition-id")||A.hasAttribute("data-composition-file"),x=A=>{let L=A.parentElement;return!L||!A.hasAttribute("data-composition-id")||Sa(A.getAttribute("data-start"))?null:p(L)?L:null},b=(A,L)=>Vp(v(A,L),x(A)??A),y=(A,L)=>{let P=A.hasAttribute("data-composition-id")?A.parentElement?.closest("[data-composition-id]"):A.closest("[data-composition-id]");return P?b(P,L):0},E=(A,L)=>{let P=Sa(A.getAttribute("data-start"));if(!P){let D=x(A);return D?v(D,L):L}if(P.kind==="absolute")return y(A,L)+Math.max(0,P.value);let q=l(P.refId);if(!q)return L;let X=v(q,0),Z=m(q)??0,J=Math.min(0,y(A,0));return Math.max(J,X+Z+P.offset)},v=(A,L)=>{let P=o.get(A);if(P!==void 0)return P??L;if(a.has(A))return L;a.add(A);try{let q=E(A,L);return o.set(A,q),q}finally{a.delete(A)}},_=A=>{let L=A.closest("[data-composition-id]");return{authoredStart:Ge(A.getAttribute("data-start")),hostStart:L?b(L,0):0,hasAutoStart:A.hasAttribute("data-hf-auto-start"),basis:A.getAttribute(Na)}};return{resolveStartForElement:(A,L=0)=>v(A,Math.max(0,L)),resolveDurationForElement:A=>m(A),resolveMediaStartForElement:A=>{let L=_(A);return Bp({...L,ordinaryStart:()=>v(A,L.hostStart)})},resolveHostStartForElement:A=>y(A,0),resolveHostSlotsForElement:A=>{let L=[];for(let P=A.parentElement;P;P=P.parentElement){if(!p(P)||x(P)||lu(P)<=0)continue;let q=v(P,0),X=c(P);L.push({start:q,end:X?q+X:1/0})}return L},isRootGlobalMediaStartForElement:A=>pe(A)&&Up(_(A))}}function Fa(e){e.preload!=="auto"&&(e.preload="auto");let t=e.tagName==="VIDEO"&&e.networkState===2;e.readyState<3&&!t&&e.load()}function uu(e){for(let t of e.querySelectorAll("source"))t.remove();e.removeAttribute("src"),e.load()}function $p(e){if(e.querySelector("source"))return;let t=e.getAttribute("src");uu(e),t!==null&&e.setAttribute("src",t)}function Ia(e){return Ge(e.getAttribute("data-duration"))!=null}function qp(){let e=window;if(e.__hfMediaDeferral?.disconnect(),e.__hfMediaDeferral=void 0,!Eo())return;let t=(n,r)=>{Ge(n.getAttribute("data-start"))!=null&&Ia(n)&&r(n)>0&&(n.preload="none")};e.__hfMediaDeferral=new MutationObserver(n=>{let r=it({}).resolveMediaStartForElement;for(let o of n)for(let i of o.addedNodes){if(i.nodeType!==1)continue;let a=i;a.matches("video, audio")&&t(a,r);for(let l of a.querySelectorAll("video, audio"))t(l,r)}}),e.__hfMediaDeferral.observe(document.documentElement,{childList:!0,subtree:!0})}var zp=30;function jp(e){zp=Number.isFinite(e)&&e>0?e:30}function ke(e){try{window.parent.postMessage({...e,...ya(zp)},"*")}catch(t){G("bridge.postMessage",t)}}var Zw=new Map(Object.entries({play:(e,t)=>t.onPlay(),pause:(e,t)=>t.onPause(),"stop-media":(e,t)=>t.onStopMedia(),seek:(e,t)=>t.onSeek(e_(e,t),e.seekMode??"commit"),tick:(e,t)=>t.onTick(),"set-muted":(e,t)=>t.onSetMuted(!!e.muted),"set-volume":(e,t)=>t.onSetVolume(Math.max(0,Math.min(1,Number(e.volume??1)))),"set-media-output-muted":(e,t)=>t.onSetMediaOutputMuted(!!e.muted),"set-native-media-sync-disabled":(e,t)=>t.onSetNativeMediaSyncDisabled(!!e.disabled),"set-web-audio-media-disabled":(e,t)=>t.onSetWebAudioMediaDisabled(!!e.disabled),"set-playback-rate":(e,t)=>t.onSetPlaybackRate(Number(e.playbackRate??1)),"set-idle-heartbeat":(e,t)=>t.onSetIdleHeartbeat(!!e.slow),"set-display-scale":(e,t)=>t.onSetDisplayScale?.(Number(e.scale)),"set-root-duration":(e,t)=>t.onSetRootDuration(Number(e.durationSeconds??0)),"set-play-range":(e,t)=>t.onSetPlayRange(Number(e.startSeconds??0),e.endSeconds==null?null:Number(e.endSeconds)),"set-color-grading":(e,t)=>t.onSetColorGrading(e.target??null,e.grading??null),"set-color-grading-compare":(e,t)=>t.onSetColorGradingCompare(e.target??null,e.compare??null),"enable-pick-mode":(e,t)=>t.onEnablePickMode(),"disable-pick-mode":(e,t)=>t.onDisablePickMode(),"flash-elements":e=>n_(e),"set-runtime-data":(e,t)=>{typeof e.channel=="string"&&t.onSetRuntimeData?.(e.channel,e.payload,e.requestId)},"clear-runtime-data":(e,t)=>{typeof e.channel=="string"&&t.onClearRuntimeData?.(e.channel,e.requestId)}}));function e_(e,t){let n=Number(e.timeSeconds);if(Number.isFinite(n))return Math.max(0,n);let o=Xl(e.fps)??t.getCanonicalFps();return Math.max(0,Number(e.frame??0))/o}function t_(e){let t=fp(e);return t.status!=="unsupported"?!1:(ke({source:"hf-preview",type:"diagnostic",code:`runtime.protocol.${t.code}`,details:{receivedVersion:typeof t.receivedVersion=="string"||typeof t.receivedVersion=="number"?t.receivedVersion:null}}),!0)}function n_(e){let t=e.selectors,n=e.duration||800;t&&r_(t,n)}function Kp(e){let t=n=>{if(n.source!==window.parent&&n.source!==window)return;let r=n.data;if(!r||r.source!=="hf-parent"||r.type!=="control"||t_(r))return;let o=r.action;if(typeof o!="string")return;let i=Zw.get(o);i&&i(r,e)};return window.addEventListener("message",t),ke({source:"hf-preview",type:"ready"}),t}function r_(e,t){if(!document.getElementById("__hf-flash-styles")){let n=document.createElement("style");n.id="__hf-flash-styles",n.textContent=`
|
|
32
32
|
.__hf-flash {
|
|
33
33
|
outline: 2px solid rgba(59, 130, 246, 0.6) !important;
|
|
34
34
|
outline-offset: 2px !important;
|
|
@@ -38,8 +38,8 @@ https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.p
|
|
|
38
38
|
0% { outline-color: rgba(59, 130, 246, 0.8); }
|
|
39
39
|
100% { outline-color: transparent; }
|
|
40
40
|
}
|
|
41
|
-
`,document.head.appendChild(n)}for(let n of e)try{document.querySelectorAll(n).forEach(i=>{i.classList.add("__hf-flash"),setTimeout(()=>i.classList.remove("__hf-flash"),t)})}catch(r){H("bridge.flashElements.querySelector",r)}}var Ci=e=>4*Number.EPSILON*Math.max(1,Math.abs(e));function yr(e,t){return!Number.isFinite(e)||!Number.isFinite(t)?e===t:Math.abs(e-t)<=Ci(Math.max(Math.abs(e),Math.abs(t)))}var Tp=(e,t)=>e>=t||yr(e,t),pn=(e,t,n)=>Tp(e,t)&&e<n&&!yr(e,n),y_=1e-6,Sr=(e,t,n,r)=>pn(e,t,n)||Tp(e,t)&&r>0&&n>=r-y_;var Wl=null;function Rp(e){Wl=e}function mt(e,t){if(Wl)try{Wl({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(n){H("runtime.analytics.site1",n)}}function S_(e){let t=e.toLowerCase().replace(/[^a-z0-9]+/g,"-"),n=0,r=t.length;for(;n<r&&t[n]==="-";)n++;for(;r>n&&t[r-1]==="-";)r--;let i=t.slice(n,r);return i.length>0?i:"node"}function vr(e){return`--${S_(e)}`}function Mp(e){let t=new Map;for(let n of e){let r=vr(n),i=t.get(r);i?i.includes(n)||i.push(n):t.set(r,[n])}return[...t.values()].filter(n=>n.length>1)}function Lp(){if(typeof document>"u")return{};let e=new Set;document.documentElement?.hasAttribute("data-composition-variables")&&e.add(document.documentElement);for(let i of Array.from(document.querySelectorAll("[data-composition-variables]")))e.add(i);let t={};for(let i of e)Object.assign(t,Ti(i));let n=ya(),r={...t,...n};for(let i of e)$l(i,r);return r}var kp=new Set;function Np(e){let t=e?.getAttribute("data-composition-variables");if(!t)return[];let n;try{n=JSON.parse(t)}catch{return[]}return Array.isArray(n)?n.filter(r=>!!r&&typeof r=="object"):[]}function v_(e,t){return t?.trim()||e.getAttribute("data-composition-id")?.trim()||e.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()||"composition"}function E_(e){return Array.isArray(e.options)?e.options.map(t=>t&&typeof t=="object"?t.value:t).filter(t=>typeof t=="string"||typeof t=="number"):[]}function A_(e,t){if(typeof e.id!="string")return null;let n=t[e.id];if(n==null||"default"in e&&String(n)===String(e.default))return null;let r=E_(e);return r.length===0||r.some(i=>String(i)===String(n))?null:{id:e.id,value:n,allowed:r}}function $l(e,t,n){if(!e)return;let r=Np(e);if(r.length===0)return;let i=v_(e,n);for(let o of r){let a=A_(o,t);if(!a)continue;let l=`${i}|${a.id}|${String(a.value)}`;if(kp.has(l))continue;kp.add(l);let s="default"in o?JSON.stringify(o.default):"the composition default";console.warn(`[hyperframes] runtime_unknown_enum_value: ${i} variable "${a.id}" got ${JSON.stringify(a.value)}, which is not a declared option (${a.allowed.join(", ")}). Rendering ${s} instead.`)}}function Ti(e){let t={};for(let n of Np(e))typeof n.id!="string"||!("default"in n)||(t[n.id]=n.default);return t}var Vl="data-hf-css-vars";function xa(e){return"style"in e&&typeof e.style?.setProperty=="function"}function ql(e,t){if(!xa(e))return;let n=[];for(let[r,i]of Object.entries(t))if(typeof i=="string"&&i!==""||typeof i=="number"){let o=vr(r);e.style.setProperty(o,String(i)),n.push(o)}n.length>0&&e.setAttribute(Vl,n.join(" "))}function Fp(e,t,n){let r={};for(let[i,o]of Object.entries(t)){let a=vr(i);((xa(e)?e.style.getPropertyValue(a):"")||(n?n.getComputedStyle(e).getPropertyValue(a):"")).trim()===""&&(r[i]=o)}return r}function Ip(e){if(!xa(e))return;let t=e.getAttribute(Vl);if(t){for(let n of t.split(" "))n.startsWith("--")&&e.style.removeProperty(n);e.removeAttribute(Vl)}}function Dp(e){let t=new Set;e.documentElement?.hasAttribute("data-composition-variables")&&t.add(e.documentElement);for(let i of Array.from(e.querySelectorAll("[data-composition-variables]")))t.add(i);let n=ya(),r=[];for(let i of t)r.push(...__(i,n,e.defaultView));for(let i of Mp(r))console.warn(`composition variables ${i.join(", ")} collapse to the same CSS property ${vr(i[0]??"")}. Rename one to avoid cross-talk`)}function __(e,t,n){if(!xa(e))return[];let r=Ti(e),i={};for(let[o,a]of Object.entries(r)){if(o in t)continue;let l=vr(o);(e.style.getPropertyValue(l)||(n?n.getComputedStyle(e).getPropertyValue(l):"")).trim()===""&&(i[o]=a)}for(let[o,a]of Object.entries(t))o in r&&(i[o]=a);return ql(e,i),Object.keys(r)}function Pp(e){let t=e.getAttribute("data-variable-values");if(!t)return{};let n;try{n=JSON.parse(t)}catch{return{}}return!n||typeof n!="object"||Array.isArray(n)?{}:n}function ya(){if(typeof window>"u")return{};let e=window.__hfVariables;return!e||typeof e!="object"||Array.isArray(e)?{}:e}function Sa(e,t,n,r){let i=!1;try{e.pause()}catch(o){i=!0,H(r,o)}try{e.currentTime=t}catch(o){H(n,o)}if(i)try{e.pause()}catch(o){H(r,o)}}function Op(e){let t=[],n=(f,p=()=>f.getAnimations())=>{if(typeof f.getAnimations!="function")return[];try{return p()}catch{return[]}},r=f=>{let p=new Map;if(t.length===0)return p;let y=typeof CSSAnimation<"u";for(let b of n(document,f)){if(y&&!(b instanceof CSSAnimation))continue;let g=b.effect;if(!g?.target||g.pseudoElement)continue;let v=p.get(g.target);v?v.push(b):p.set(g.target,[b])}return p},i=(f=[],p=[])=>[...p,...f.filter(y=>!p.includes(y)&&y.playState!=="idle")],o=f=>{let p=f.closest("[data-start]")??f;return e?.resolveStartSeconds?e.resolveStartSeconds(p):Number.parseFloat(p.getAttribute("data-start")??"0")||0},a=f=>{let p=E=>(E||"").split(",").map(_=>Number.parseFloat(_)/(_.trim().endsWith("ms")?1e3:1)),y=p(f.animationDuration),b=p(f.animationDelay),g=f.animationName.split(","),v=0;return g.forEach((E,_)=>{if(E.trim()==="none")return;let F=b[_%b.length]+y[_%y.length];F>v&&(v=F)}),{cycleSeconds:v,delays:g.map((E,_)=>b[_%b.length]||0)}},l=(f,p)=>{let y=null;try{y=f.effect?.getComputedTiming?.()??null}catch(g){H("runtime.adapters.css.site5",g)}if(!y)return{};let b=Number(y.endTime);return Number.isFinite(b)?{endSeconds:p+b/1e3}:{unbounded:!0}},s=(f,p)=>{for(let y of f)Sa(y,p,"runtime.adapters.css.site1","runtime.adapters.css.site2")},c=f=>{for(let p of f)try{p.play()}catch(y){H("runtime.adapters.css.site3",y)}},d=f=>{for(let p of f)try{p.pause()}catch(y){H("runtime.adapters.css.site4",y)}},m=f=>{f.baseDelay?f.el.style.animationDelay=f.baseDelay:f.el.style.removeProperty("animation-delay"),f.basePlayState?f.el.style.animationPlayState=f.basePlayState:f.el.style.removeProperty("animation-play-state")};return{name:"css",discover:()=>{for(let y of t)m(y);let f=new Map(t.map(y=>[y.el,y.handles]));t=[];let p=document.querySelectorAll("*");for(let y of p){if(!Se(y))continue;let b=window.getComputedStyle(y);!b.animationName||b.animationName==="none"||t.push({el:y,baseDelay:y.style.animationDelay||"",basePlayState:y.style.animationPlayState||"",...a(b),handles:f.get(y)})}},getAnimationCycleEndSeconds:()=>{let f=0;for(let p of t)!p.el.isConnected||p.cycleSeconds<=0||(f=Math.max(f,o(p.el)+p.cycleSeconds));return f>0?f:null},getInferredDurationSeconds:()=>{let f=0;for(let p of t){if(!p.el.isConnected)continue;let y=o(p.el);for(let b of n(p.el)){let g=l(b,y);g.endSeconds!=null&&(f=Math.max(f,g.endSeconds))}}return f>0?f:null},seek:f=>{let p=Number(f.time)||0,y=r(f.pageAnimations);for(let b of t)b.handles=i(b.handles,y.get(b.el));for(let b of t){if(!b.el.isConnected)continue;let g=o(b.el),v=Math.max(0,p-g)*1e3;if(b.handles?.length){b.el.style.animationDelay!==b.baseDelay&&m(b),s(b.handles,v);continue}b.el.style.animationPlayState="paused",b.el.style.animationDelay=b.delays.map(E=>`${Number((E-v/1e3).toFixed(3))}s`).join(", ")}},pause:f=>{let p=r(f?.pageAnimations);for(let y of t){if(!y.el.isConnected)continue;let b=p.get(y.el);b&&(d(b),m(y))}},play:()=>{let f=r();for(let p of t)p.el.isConnected&&(m(p),c(f.get(p.el)??[]))},revert:()=>{t=[]}}}function Aa(e,t,n){e.totalDuration?.();let r=e.getChildren?.(!1,!0,!0)??[],i=k_(e,n,t).map(s=>[s,s.ratio,s._zTime,s._act]),o=Up(r,t).map(s=>[s,s._ts]),a=new Set;for(let[s]of o)for(let c=s.parent;c&&!a.has(c);c=c.parent)a.add(c);let l=[...a].map(s=>[s,s._dur,s._tDur,s._end,s._dirty]);for(let[s]of o)s._ts=0;try{w_(e,r,t,n)}finally{for(let[s,c]of o)s._ts=c;for(let[s,c,d,m,f]of l)Object.assign(s,{_dur:c,_tDur:d,_end:m,_dirty:f})}for(let[s,c,d,m]of i)s.ratio=c,s._zTime=d,s._act=m}function w_(e,t,n,r){let i=n>=va;e.totalTime(i?n-va:n+va,!0),qp(t,n,i?va:0),e.totalTime(n,!0),!i&&r&&Bp(e,r,n)}function Bp(e,t,n){for(let r of M_(e,t,n)){let{ratio:i,_zTime:o,_act:a}=r;r.render(0,!0,!0),Object.assign(r,{ratio:i,_zTime:o,_act:a})}}function C_(e){let t=e,[n]="_first"in t?t._first?[t._first]:[]:e.getChildren?.(!1,!0,!0)??[],r=n?.parent;return r!==void 0&&!r._initted}function Ri(e,t,n,r){if(typeof e.totalTime!="function")return e.seek(t,n),!1;let i=Number(e.totalTime());return e.totalTime(t,n),t<i&&r&&Bp(e,r,t),i!==t||!C_(e)?!1:(Aa({totalTime:e.totalTime.bind(e),totalDuration:e.totalDuration?.bind(e),getChildren:e.getChildren?.bind(e)},t,r),!0)}var zl=1e-6;function Up(e,t,n=[]){for(let r of e)r.startTime()>t+zl?n.push(r):r.getChildren&&r.endTime()>=t&&Up(r.getChildren(!1,!0,!0),r.time(),n);return n}function Wp(e){return(e.getChildren?.(!0,!0,!0)??[]).filter(t=>{let n=t;return typeof n.getChildren=="function"||n.totalDuration?.()===0})}var Hp=new WeakMap,Gp=.05;function T_(e,t){let n=Number(e._start);for(let r=e.parent;r&&r!==t;r=r.parent){if(r._repeat||!r._ts)return null;n=Number(r._start)+n/r._ts}return Number.isFinite(n)?n:null}function R_(e,t){let n={version:t.version,always:[],points:[]};for(let r of Wp(e)){let i=r,o=typeof i.getChildren=="function"?null:T_(i,t.owner);o===null?n.always.push(r):n.points.push({at:o,mark:r})}return n.points.sort((r,i)=>r.at-i.at),n}function Vp(e,t){let n=0,r=e.length;for(;n<r;){let i=n+r>>1;e[i].at<t?n=i+1:r=i}return n}function $p(e,t){let n=Hp.get(t.owner);return n?.version!==t.version&&(n=R_(e,t),Hp.set(t.owner,n)),n}function M_(e,t,n){let{points:r}=$p(e,t),i=[];for(let o=Vp(r,n-zl);o<r.length&&!(r[o].at>n+zl);o++)i.push(r[o].mark);return i}function k_(e,t,n){if(!t)return Wp(e);let r=$p(e,t),{points:i}=r,o=[...r.always],a=n+Gp;for(let l=Vp(i,n-Gp);l<i.length&&!(i[l].at>a);l++)o.push(i[l].mark);return o}var Ea=2e-8,va=.001,L_=e=>{let t=e;return typeof t?.render=="function"&&typeof t.startTime=="function"&&typeof t.paused=="function"&&typeof t.timeScale=="function"&&t.timeScale()>0&&!t.paused()};function N_(e){return e.vars?.keyframes&&(e.render(Ea,!0),e.render(-Ea,!0)),e._startAt&&e._startAt.render(Ea,!0,!0),!!(e.vars?.keyframes||e._startAt)}function qp(e,t,n){for(let r of e.filter(L_)){let i=(t-r.startTime())*r.timeScale();Math.abs(i)<1e-9&&N_(r)||i>0&&F_(r,i,n*r.timeScale())}}function F_(e,t,n){t<n&&e._startAt&&e._startAt.render(Ea,!0,!0);let r=e.getChildren?e:e.timeline;r?.getChildren&&t<=e.totalDuration()&&qp(r.getChildren(!1,!0,!0),t,n)}function zp(e){return{name:"gsap",discover:()=>{},seek:t=>{let n=e.getTimeline();if(!n)return;n.pause();let r=Math.max(0,Number(t.time)||0),i=t.suppressEvents===!0;typeof n.totalTime=="function"?(n.totalTime(r,i),Aa({totalTime:n.totalTime.bind(n),totalDuration:n.totalDuration?.bind(n),getChildren:n.getChildren?.bind(n)},r)):n.seek(r,i)},pause:()=>{let t=e.getTimeline();t&&t.pause()}}}function jp(){return{name:"animejs",discover:()=>{try{let e=window.anime;if(!e||typeof e.running>"u")return;let t=e.running;if(!Array.isArray(t)||t.length===0)return;let n=window.__hfAnime??[],r=new Set(n);for(let i of t)r.has(i)||n.push(i);window.__hfAnime=n}catch(e){H("runtime.adapters.animejs.site1",e)}},seek:e=>{let t=Math.max(0,(Number(e.time)||0)*1e3),n=window.__hfAnime;if(!(!n||n.length===0))for(let r of n)try{typeof r.seek=="function"&&r.seek(t)}catch(i){H("runtime.adapters.animejs.site2",i)}},pause:()=>{let e=window.__hfAnime;if(!(!e||e.length===0))for(let t of e)try{typeof t.pause=="function"&&t.pause()}catch(n){H("runtime.adapters.animejs.site3",n)}},play:()=>{let e=window.__hfAnime;if(!(!e||e.length===0))for(let t of e)try{typeof t.play=="function"&&t.play()}catch(n){H("runtime.adapters.animejs.site4",n)}},revert:()=>{}}}function Jp(e){let t=r=>{let i=Yp(r),o=i&&typeof i.closest=="function"?i.closest("[data-composition-id]"):null;return o&&e?.resolveStartSeconds?e.resolveStartSeconds(o):0},n=(r,i)=>Math.max(0,i-t(r));return{name:"lottie",discover:()=>{try{let r=window.lottie;if(r&&typeof r.getRegisteredAnimations=="function"){let i=r.getRegisteredAnimations();if(Array.isArray(i)&&i.length>0){let o=window.__hfLottie??[],a=new Set(o);for(let l of i)a.has(l)||o.push(l);window.__hfLottie=o}}}catch(r){H("runtime.adapters.lottie.site1",r)}},seek:r=>{let i=Math.max(0,Number(r.time)||0),o=window.__hfLottie;if(!(!o||o.length===0))for(let a of o)try{let l=n(a,i),s=a.loop===!0;if(_a(a)){let c=l*a.frameRate;a.totalFrames>0&&s?a.goToAndStop(jl(c,a.totalFrames),!0):a.totalFrames>0&&c>=a.totalFrames?a.goToAndStop(a.totalFrames-1,!0):a.goToAndStop(l*1e3,!1)}else if(Kl(a)){if(typeof a.setFrame=="function"){let c=a.totalFrames??0,d=a.duration??0;if(!Number.isFinite(c)||c<=0||!Number.isFinite(d)||d<=0)continue;let m=l*c/d;a.setFrame(Math.min(s?jl(m,c):m,c-1))}else if(typeof a.setCurrentRawFrameValue=="function"){let c=a.totalFrames??0,d=a.frameRate??30,m=s&&c>0?jl(l*d,c):l*d;c>0&&a.setCurrentRawFrameValue(Math.min(m,c-1))}else if(typeof a.seek=="function"){let c=a.duration??0;if(Number.isFinite(c)&&c>0){let d=Math.min(100,(s?l%c:l)/c*100);a.seek(d)}}}}catch(l){H("runtime.adapters.lottie.site2",l)}},pause:()=>{let r=window.__hfLottie;if(!(!r||r.length===0))for(let i of r)try{(_a(i)||Kl(i))&&i.pause()}catch(o){H("runtime.adapters.lottie.site3",o)}},revert:()=>{},getInferredDurationSeconds:()=>Kp((r,i)=>i),getAnimationCycleEndSeconds:()=>Kp((r,i)=>Yp(r)?.isConnected===!1?null:t(r)+i)}}function Kp(e){let t=window.__hfLottie;if(!t||t.length===0)return null;let n=0,r=!1;for(let i of t){let o=null;try{let a=I_(i);o=a==null?null:e(i,a)}catch(a){H("runtime.adapters.lottie.site4",a)}o!=null&&(r=!0,n=Math.max(n,o))}return r?n:null}function Yp(e){return _a(e)?e.wrapper:e.canvas}function jl(e,t){let n=e%t;return t-n<1e-6?0:n}function Xp(e,t){return!Number.isFinite(e)||!e||e<=0||!Number.isFinite(t)||!t||t<=0?null:e/t}function I_(e){return _a(e)?Xp(e.totalFrames,e.frameRate):Kl(e)?Number.isFinite(e.duration)&&(e.duration??0)>0?e.duration??null:Xp(e.totalFrames,e.frameRate):null}function _a(e){return typeof e=="object"&&e!==null&&typeof e.goToAndStop=="function"}function Kl(e){return typeof e=="object"&&e!==null&&typeof e.pause=="function"&&("totalFrames"in e||"duration"in e)}var Yl=-1,Ar=new Set,Qp=new WeakSet,Er,Xl=0;function Zp(e){let t=[],n=!0,r={time:e,waitUntil:i=>{if(!n)throw new Error("hf-seek waitUntil() must be called synchronously from the event listener");t.push(i)}};try{window.dispatchEvent(new CustomEvent("hf-seek",{detail:r}))}catch(i){H("runtime.adapters.seek-dispatch.site1",i)}finally{n=!1}t.length!==0&&it(Promise.all(t))}function it(e,t){let n=e.then(()=>({status:"fulfilled"})).catch(r=>({status:"rejected",reason:r}));Ar.add(n),t==="video-frame"&&Qp.add(n),n.then(r=>{Ar.delete(n)&&r.status==="rejected"&&Er===void 0&&(Er={reason:r.reason})})}function wa(e){e!==Yl&&(Yl=e,Zp(e))}function Ca(e){Yl=e,Zp(e)}function eh(){return Xl>0}async function th(){for(let e=[...Ar];e.length>0;e=[...Ar])await Promise.all(e)}function nh(){return Ar.size>0}async function rh(e){let t=()=>[...Ar].filter(r=>e?.videoFrames!==!1||!Qp.has(r));Xl+=1;let n=Er;try{await Promise.resolve();for(let i=t();i.length>0;i=t()){let a=(await Promise.all(i)).find(l=>l.status==="rejected");n===void 0&&a?.status==="rejected"&&(n={reason:a.reason})}let r=Er;if(n===void 0&&(n=r),Er===r&&(Er=void 0),n)throw n.reason}finally{Xl-=1}}function ih(){let e=null,t=0,n=null,r=null,i=null,o=null,a=()=>{if(typeof window>"u")return null;let d=window.THREE?.DefaultLoadingManager;return!d||typeof d!="object"||typeof d.itemsLoaded!="number"||typeof d.itemsTotal!="number"?null:d},l=c=>{o||c.itemsTotal<=c.itemsLoaded||(o=new Promise(d=>{c.onLoad=function(){try{i?.call(this)}finally{o=null,c.onLoad=i??null,d()}}}))},s=c=>{n!==c&&(n=c,r=c.onStart??null,i=c.onLoad??null,c.onStart=function(d,m,f){try{r?.call(this,d,m,f)}finally{l(c)}})};return{name:"three",discover:()=>{let c=a();c&&(s(c),l(c))},seek:c=>{e=Math.max(0,Number(c.time)||0),t=e,window.__hfThreeTime=e,wa(e)},pause:()=>{e==null&&(e=Math.max(0,t))},play:()=>{e=null},revert:()=>{e=null,t=0},getReadyPromise:()=>{let c=a();return!c||c.itemsTotal<=c.itemsLoaded?null:(o||l(c),o)}}}function Dt(e){let t=null,n=new WeakSet;return{name:e.name,discover:()=>{},seek:()=>{},pause:()=>{},play:()=>{},revert:()=>{},getReadyPromise:()=>{let r=e.getInstances();if(r.length===0)return null;let i=r.filter(o=>!n.has(o));return i.length===0?null:t||(t=Promise.allSettled(i.map(o=>e.waitFor(o).then(()=>{n.add(o)}))).then(()=>{t=null}),t)}}}function oh(){return Dt({name:"mapbox",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfMapbox;return Array.isArray(e)?e:[]},waitFor:e=>new Promise(t=>{if(e.loaded()){t();return}e.on("load",t)})})}function ah(){return Dt({name:"leaflet",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfLeaflet;return Array.isArray(e)?e:[]},waitFor:e=>new Promise(t=>e.whenReady(t))})}function sh(){return Dt({name:"google-maps",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfGoogleMaps;return Array.isArray(e)?e:[]},waitFor:e=>new Promise(t=>{let n=e.addListener("tilesloaded",()=>{n.remove(),t()})})})}function lh(){return Dt({name:"maplibre",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfMaplibre;return Array.isArray(e)?e:[]},waitFor:e=>new Promise(t=>{if(e.loaded()){t();return}e.on("load",t)})})}function uh(){return Dt({name:"d3",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfD3;return Array.isArray(e)?e:[]},waitFor:e=>e.end()})}var D_=250;function ch(){let e=null,t=0,n=null,r=()=>{n!==null&&(window.clearInterval(n),n=null)},i=()=>{n===null&&document.querySelector("[data-composition-id][data-requires-webgpu]")&&(n=window.setInterval(()=>{e!==null&&(eh()||(window.__hfTypegpuTime=e,Ca(e)))},D_))};return{name:"typegpu",discover:()=>{},seek:o=>{e=Math.max(0,Number(o.time)||0),t=e,window.__hfTypegpuTime=e,wa(e)},pause:()=>{e==null&&(e=Math.max(0,t)),i()},play:()=>{r(),e=null},revert:()=>{r(),e=null,t=0}}}var P_=["width","height","top","left","right","bottom","inset","object-fit","object-position","z-index","opacity","visibility","filter","mix-blend-mode","backdrop-filter","border-width","border-style","border-color","border-radius","overflow","clip-path","mask","mask-image","mask-size","mask-position","mask-repeat","transform","transform-origin","translate","rotate","scale","box-sizing"];function Jl(e){return Number.isFinite(e)&&e>0?e:30}function Ql(e){return Number.isFinite(e)&&e>0?e:0}function Zl(e,t){let n=Jl(t);return Math.floor(Ql(e)*n+1e-9)/n}function fh(e,t,n){let r=Number.isInteger(n)?n:1;if(r<=1)return Zl(e,t);let i=Jl(t)*r;return Math.round(Ql(e)*i)/i}function dh(e,t){let n=Jl(t),r=Ql(e),i=r*n,o=Math.round(i);return Math.abs(i-o)<=.001?o/n:r}function Ta(e,t,n){return{start:dh(e,n),end:Number.isFinite(t)?dh(t,n):t}}function mh(e,t,n=P_){for(let r of n){let i=t.getPropertyValue(r);i&&e.setProperty(r,i)}}var _r=new Map,ph=()=>_r.size>0;function hh(e){if(_r.has(e.element))throw new Error("This element already has a frame source");let t=e.sourceRange;if(t&&(!Number.isFinite(t.start)||t.start<0||!Number.isFinite(t.duration)||t.duration<=0||!Number.isFinite(t.fps)||t.fps<=0))throw new Error("Frame source ranges require a nonnegative start, positive duration and FPS");let n=new AbortController,r=new Promise(c=>{n.signal.addEventListener("abort",()=>c(),{once:!0})}),i=Promise.race([Promise.resolve(e.ready),r]);i.catch(()=>{});let o=null,a=null,l=async()=>{let c;try{for(await i;!n.signal.aborted&&o!==null;){let d=o;o=null;try{await Promise.race([e.render(d,n.signal),r])}catch(m){c??(c={reason:m})}}if(c)throw c.reason}finally{o=null,a=null}},s={element:e.element,ready:i,seek(c){return o=t?t.start+Math.min(Math.max(0,c),Math.max(0,t.duration-1/t.fps)):c,a??(a=l()),a},dispose(){n.signal.aborted||(n.abort(),o=null,_r.delete(e.element),e.dispose?.())}};return _r.set(e.element,s),s.dispose}function gh(e){let t=new Set,n=[],r=null,i=()=>{for(let l of t)_r.get(l.element)!==l&&t.delete(l);let a=[];for(let[l,s]of _r){if(!l.isConnected){s.dispose();continue}t.has(s)||(t.add(s),it(s.ready)),a.push([l,s])}return a},o=new MutationObserver(()=>{i()});return o.observe(document,{childList:!0,subtree:!0}),{name:"frame-source",discover:()=>{i()},pause:()=>{},seek:({time:a})=>{for(let[l,s]of i()){let c=e.start(l),d=e.duration(l),m=c+(d??1/0),f=e.exportRenderSeek()?Ta(c,m,e.canonicalFps()):{start:c,end:m};if(!Sr(a,f.start,f.end,e.compositionDuration()))continue;let p=Math.max(0,a-c),y=mr(l)+Un(Ft(l),p);it(s.seek(y))}},getReadyPromise:()=>{let a=i().map(([,l])=>l);return a.length===0?null:((a.length!==n.length||a.some((l,s)=>l!==n[s]))&&(n=a,r=Promise.all(a.map(l=>l.ready))),r)},revert:()=>{o.disconnect();for(let a of t)a.dispose();t.clear()}}}var bh=':not([muted]):is(:not([data-has-audio]),[data-has-audio="true"])',WP=`audio[data-start], video[data-start]${bh}`;function Ra(e){if(e.tagName.toLowerCase()!=="video"||e.hasAttribute("muted"))return!1;let t=e.getAttribute("data-has-audio");return t===null||t==="true"}function xh(e){return(e.volume??1)>1||!!(e.fxChain||e.automation||e.audioGroup||e.masterChain)}var Mi="data-hf-render-id",yh="data-hf-group-render-id";function O_(e){return e.getAttribute(Mi)||e.id||null}var H_="__render_frame_",G_="__";function B_(e){return`${H_}${e}${G_}`}function U_(e){let t=O_(e);return t?B_(t):null}function vt(e){let t=U_(e),n=t?document.getElementById(t):null;if(!n)return null;let r=e.nextElementSibling;for(;r&&r.id!==t;)r=r.nextElementSibling;return r??(r=n),$e(r)?r:null}function Sh(e){let t=e.nextElementSibling;if($e(t)&&t.classList.contains("__render_frame__")&&t.complete&&t.naturalWidth>0)return t;let n=vt(e);return n&&n.complete&&n.naturalWidth>0?n:null}function vh(){let e=globalThis.GPUQueue;if(!e?.prototype?.copyExternalImageToTexture)return;let t=e.prototype.copyExternalImageToTexture;e.prototype.copyExternalImageToTexture=function(n,r,i){if(Ce(n?.source)){let o=Sh(n.source);if(o)return t.call(this,{...n,source:o},r,i)}return t.call(this,n,r,i)}}function Eh(){let e=[globalThis.WebGL2RenderingContext,globalThis.WebGLRenderingContext],t=["texImage2D","texSubImage2D"];for(let n of e){let r=n?.prototype;if(r)for(let i of t){let o=r[i];if(typeof o!="function"||o.__hfVideoPatched)continue;let a=function(...l){let s=l.length-1,c=l[s];if(Ce(c)){let d=Sh(c);d&&(l[s]=d)}return o.apply(this,l)};a.__hfVideoPatched=!0,r[i]=a}}}var W_=e=>typeof CSSAnimation<"u"&&e instanceof CSSAnimation||typeof CSSTransition<"u"&&e instanceof CSSTransition;function Ah(){let e=!1,t=0,n=!1,r,i,o,a=new Set,l=new WeakMap,s=(g=()=>document.getAnimations())=>{if(!document.getAnimations)return[];try{return g()}catch{return[]}},c=g=>{let v=Number(g.currentTime);return Number.isFinite(v)&&v>0?v:0},d=(g,v)=>v<=0?g:g>=v?Math.max(0,g-v):g,m=(g,v)=>{let E=l.get(g);if(E)return E;let _={compositionTimeMs:v,animationTimeMs:e?d(c(g),v):c(g)};return l.set(g,_),_},f=(g,v)=>{if(!a.has(g)){a.add(g);let E=()=>{a.delete(g)};try{g.addEventListener("finish",E,{once:!0}),g.addEventListener("cancel",E,{once:!0})}catch(_){H("runtime.adapters.waapi.site4",_)}}m(g,v)},p=(g,v)=>{for(let E of g)f(E,v)},y=()=>{if(n||typeof Element>"u")return;let g=Element.prototype;if(typeof g.animate!="function"||g.__hfOriginalAnimate)return;let v=g.animate;try{Object.defineProperty(g,"__hfOriginalAnimate",{value:v,configurable:!0});let E=function(..._){let F=v.apply(this,_);return f(F,t),F};g.animate=E,r=g,i=v,o=E,n=!0}catch{}},b=g=>{let v=null;try{v=g.effect?.getComputedTiming?.()??null}catch(F){H("runtime.adapters.waapi.site4",F)}if(!v)return{};let E=Number(v.endTime);return Number.isFinite(E)?{endSeconds:(l.get(g)?.compositionTimeMs??0)/1e3+E/1e3}:{unbounded:!0}};return{name:"waapi",discover:()=>{e=!0,y(),p(s(),t)},seek:g=>{let v=Math.max(0,(Number(g.time)||0)*1e3);t=v,(!e||a.size>0)&&p(s(g.pageAnimations),e?v:0);for(let E of a){if(E.playState==="idle"&&W_(E)){a.delete(E);continue}let _=e?m(E,v):m(E,0),F=_.animationTimeMs+Math.max(0,v-_.compositionTimeMs);Sa(E,F,"runtime.adapters.waapi.site1","runtime.adapters.waapi.site2")}},pause:g=>{e||p(s(g?.pageAnimations),t);for(let v of a)try{v.pause()}catch(E){H("runtime.adapters.waapi.site3",E)}},revert:()=>{if(a.clear(),l=new WeakMap,e=!1,t=0,r&&i&&o&&r.animate===o)try{r.animate=i,r.__hfOriginalAnimate===i&&delete r.__hfOriginalAnimate}catch(g){H("runtime.adapters.waapi.site5",g)}r=void 0,i=void 0,o=void 0,n=!1},getInferredDurationSeconds:()=>{let g=0;for(let v of s()){let E=b(v);E.endSeconds!=null&&(g=Math.max(g,E.endSeconds))}return g>0?g:null}}}function V_(e,t,n){let r=e.filter(o=>Number.isFinite(o.time)&&Number.isFinite(o.volume)).map(o=>({time:Math.max(0,o.time-t),volume:ft(o.volume)})).sort((o,a)=>o.time-a.time),i=[];for(let o of r){let a=i.at(-1);a&&Math.abs(a.time-o.time)<1e-9?a.volume=o.volume:i.push(o)}return i.length===0||i[0].time>0&&i.unshift({time:0,volume:ft(n)}),i}function _h(e,t){if(e.length===0)return 1;let n=0;for(;n<e.length-2&&t>=e[n+1].time;)n+=1;let r=e[n],i=e[n+1]??r,o=i.time-r.time,a=o<=0?0:Math.min(1,Math.max(0,(t-r.time)/o));return r.volume+(i.volume-r.volume)*a}function $_(e,t,n,r){let i=e.at(-1);!i||Math.abs(i.volume-n.volume)>1e-4?(i&&t&&t.time>i.time&&e.push(t),e.push(n)):r&&n.time>i.time&&e.push(n)}function q_(e){let t=Number.parseFloat(e??"");return Number.isFinite(t)?t:void 0}function z_(e,t){let n=Qe({timelineRegistry:window.__timelines,includeAuthoredTimingAttrs:!0}).resolveMediaStartForElement(e),r=Oe(e.dataset.end)??void 0,i=Oe(e.dataset.duration)??void 0,o=t;i!==void 0&&i>0?o=n+i:r!==void 0&&r>n&&(o=r);let a=q_(e.dataset.volume)??1;return{start:n,end:o,staticVolume:ft(a)}}function j_(e,t,n,r,{start:i,end:o,staticVolume:a}){let l=1/Math.min(60,Math.max(1,r)),s=Math.max(0,i),c=Math.min(n,o),d=ip(e,()=>{e.volume=a;let f=[],p;for(let y=s;y<=c+1e-6;y=Math.min(c,y+l)){t(y);let b=Number(e.volume);if(Number.isFinite(b)){let g={time:Number(y.toFixed(6)),volume:Number(ft(b).toFixed(6))};$_(f,p,g,y===c),p=g}if(y===c)break}return f});return d.some(f=>Math.abs(f.volume-a)>1e-4)?d:null}function Ma(e,t,n=0){return n>3||e===null||typeof e!="object"?!1:Array.isArray(e)?e.some(r=>Ma(r,t,n+1)):Object.getPrototypeOf(e)!==Object.prototype?!1:Object.entries(e).some(([r,i])=>t(r)||Ma(i,t,n+1))}var K_=e=>typeof e?.nodeType=="number";function Y_(e,t){for(let n=Object(e);n;n=Object.getPrototypeOf(n)){let r=Object.getOwnPropertyDescriptor(n,t);if(r)return typeof r.set=="function"}return!1}function eu(e){let t={elements:new Set,anySetter:!1,unknown:!0};if(typeof e.getChildren!="function")return t;try{let n={elements:new Set,anySetter:!1,unknown:!1};for(let r of e.getChildren(!0,!0,!1)){let i=r.targets?.()??[];for(let o of i)K_(o)?Ma(r.vars,a=>a==="volume")&&n.elements.add(o):!n.anySetter&&Ma(r.vars,a=>Y_(o,a))&&(n.anySetter=!0)}return n}catch{return t}}var X_=(e,t)=>e.unknown||e.anySetter||e.elements.has(t);function wh(e,t,n,r,i={}){if(i.allowLiveTimelineSeek===!1||!t||!pe(e)||n<=0||!X_(i.movers?.()??eu(t),e))return;let o=c=>{try{typeof t.totalTime=="function"?t.totalTime(c,!0):typeof t.seek=="function"&&t.seek(c,!0)}catch{}},a=typeof t.totalTime=="function"?Number(t.totalTime()):typeof t.seek=="function"?Number(t.seek()):0,l=z_(e,n),s=j_(e,o,n,60,l);if(Number.isFinite(a)&&o(a),s){let c=V_(s,l.start,l.staticVolume);c.length>0&&r.set(e,c)}}var Rh="data-fade-in",Mh="data-fade-out",aO=Rh.slice(5),sO=Mh.slice(5),kh=Object.freeze({fadeIn:0,fadeOut:0});function tu(e){return Number.isFinite(e)&&e>0?e:0}function Ch(e){return e==null||e===""?0:tu(Number.parseFloat(e))}function Lh(e){return{fadeIn:Ch(e.getAttribute(Rh)),fadeOut:Ch(e.getAttribute(Mh))}}function J_(e,t){let n=tu(e.fadeIn),r=tu(e.fadeOut);if(!Number.isFinite(t)||t<=0)return{fadeIn:n,fadeOut:r};let i=n+r;if(i<=t)return{fadeIn:n,fadeOut:r};let o=t/i;return{fadeIn:n*o,fadeOut:r*o}}function Nh(e,t,n){if(!Number.isFinite(e))return 1;let{fadeIn:r,fadeOut:i}=J_(n,t),o=1;return r>0&&(o*=Th(e/r)),i>0&&Number.isFinite(t)&&(o*=Th((t-e)/i)),o}function Th(e){return!Number.isFinite(e)||e<0?0:e>1?1:e}var wr="hf-audio-group",ka="data-audio-group";function nu(e){let t=e?.getAttribute("data-volume"),n=t?parseFloat(t):1;return Number.isFinite(n)?n:1}function ru(e,t){let n=Array.from(e?.querySelectorAll?.(`${wr}[${Mi}]`)??[]).find(i=>i.getAttribute(Mi)===t);if(n)return n;let r=e?.getElementById(t)??null;return r&&r.tagName?.toLowerCase()===wr?r:null}function La(e,t){let n=t?.getAttribute?.(yh)??t?.getAttribute?.(ka);return n?ru(e,n)?.hasAttribute("data-hidden")??!1:!1}function iu(e){let t=e.querySelector("[data-composition-id]");return t&&!t.parentElement?.closest("[data-composition-id]")?t:null}function Fh(e){return iu(e)?.getAttribute(jt)||void 0}function Na(e){return typeof e.tagName!="string"||typeof e.getAttribute!="function"||!Q_(e)?null:e.getAttribute(ka)||null}function Q_(e){return e.tagName.toLowerCase()==="audio"?!0:typeof e.hasAttribute=="function"&&Ra(e)}function Ih(e){let t="__hf-audio-group-inert";if(!e?.head||e.getElementById(t))return;let n=e.createElement("style");n.id=t,n.textContent=`${wr}{display:none!important}`,e.head.appendChild(n)}function Pt(e){return mr(e)}var Dh=["seeked","loadeddata","error","emptied","abort"],cu=5e3,Fa=new WeakMap;function Ph(e){let t=e.readyState<e.HAVE_CURRENT_DATA&&e.networkState===e.NETWORK_LOADING&&!window.__HF_EXPORT_RENDER_SEEK_CONFIG;e.tagName!=="VIDEO"||!(e.seeking||t)||vt(e)||(Fa.get(e)?.(),it(new Promise(n=>{let r=o=>{if(!(o?.type==="loadeddata"&&e.seeking)){clearTimeout(i);for(let a of Dh)e.removeEventListener(a,r,!0);Fa.get(e)===r&&Fa.delete(e),n()}},i=setTimeout(r,cu);for(let o of Dh)e.addEventListener(o,r,!0);Fa.set(e,r)}),"video-frame"))}function Hh(e){let t=e.isVideo?e.explicitDuration??e.sourceDuration:e.sourceDuration,n=(e.isVideo?[t,e.hostRemaining]:[t,e.hostRemaining,e.explicitDuration]).filter(r=>r!=null&&Number.isFinite(r)&&r>=0);return n.length>0?Math.min(...n):null}function Gh(e){let t=e?.elements??Array.from(document.querySelectorAll("video, audio")),n=e?.shouldIncludeElement?t.filter(a=>e.shouldIncludeElement?.(a)):t.filter(a=>a.hasAttribute("data-start")),r=[],i=[],o=0;for(let a of n){let l=e?.resolveStartSeconds?e.resolveStartSeconds(a):Number.parseFloat(a.dataset.start??"0");if(!Number.isFinite(l))continue;let s=Pt(a),c=rt(a),d=Ft(a),m=a.loop,f=Number.isFinite(a.duration)&&a.duration>0?a.duration:null,p=e?.resolveDurationSeconds?.(a)??Number.parseFloat(a.dataset.duration??"");(!Number.isFinite(p)||p<0)&&f!=null&&(p=Math.max(0,Wn(d,f-s)));let b=Number.isFinite(p)&&p>=0?l+p:Number.POSITIVE_INFINITY,g=l,v=Vn({start:l,end:b},e?.resolveHostSlots?.(a)??[]);(v.start!==l||v.end!==b)&&({start:l,end:b}=v,p=b-l);let E=Number.parseFloat(a.dataset.volume??""),_={el:a,start:l,origin:g,mediaStart:s,duration:Number.isFinite(b)?p:Number.POSITIVE_INFINITY,end:b,volume:Number.isFinite(E)?E:null,playbackRate:c,rate:d,loop:m,sourceDuration:f,fades:Lh(a)};r.push(_),a.tagName==="VIDEO"&&i.push(_),Number.isFinite(b)&&(o=Math.max(o,b))}return{timedMediaEls:n,mediaClips:r,videoClips:i,maxMediaEnd:o}}var su=new WeakMap,Ia=new WeakMap,ki=new WeakMap,lu=new WeakSet,Cr=new WeakSet,ou=new WeakSet;function Z_(e){if(Cr.has(e))return;Cr.add(e);let t=()=>Cr.delete(e);e.addEventListener("playing",t,{once:!0}),e.addEventListener("pause",t,{once:!0}),e.addEventListener("error",t,{once:!0})}var ew=3;function du(e){return e.error!=null||e.networkState===ew}var uu=new WeakMap;function au(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function fu(e){su.delete(e),Ia.delete(e),ki.delete(e),lu.delete(e),uu.delete(e),Li.delete(e)}var mu=.5,pu=1.5;function tw(e,t,n,r){let{el:i}=e,o=e.start-t;if(!n||i.tagName!=="VIDEO"||o<=0||o>pu*r||!i.paused||i.seeking||i.readyState<i.HAVE_METADATA||vt(i)||"__HF_EXPORT_RENDER_SEEK_CONFIG"in window&&window.__HF_EXPORT_RENDER_SEEK_CONFIG)return;let a=e.mediaStart+Un(e.rate??e.playbackRate,e.start-(e.origin??e.start));if(e.sourceDuration!=null){let l=e.sourceDuration-e.mediaStart;e.loop&&l>0&&a>=e.sourceDuration?a=e.mediaStart+(a-e.mediaStart)%l:e.loop||(a=Math.min(a,e.sourceDuration))}if(!(!Number.isFinite(a)||a<0||Math.abs(i.currentTime-a)<=.001))try{i.currentTime=a}catch(l){H("runtime.media.preseek",l)}}var hn=.04,Oh=1/16,nw=.03,rw=.01,Li=new WeakMap;function iw(e,t,n){let r=Math.sign(t),i=Li.get(e);if(Math.abs(t)>hn)Li.set(e,r);else if(i!==r||Math.abs(t)<=rw)return Li.delete(e),n;return n*(1+r*nw)}function Bh(e){let t=!!(e.outputMuted||e.userMuted);for(let n of e.clips){let{el:r}=n;if(!r.isConnected)continue;let i=n.rate??n.playbackRate,o=n.origin??n.start,a=r.tagName==="VIDEO"&&!n.loop,l=pn(e.timeSeconds,n.start,n.end),s=n.start-e.timeSeconds,c=r.tagName==="AUDIO"&&!l&&s>0&&s*Math.max(1,Gl(i,n.start-o))<=Math.max(e.cueAheadSeconds??0,ou.has(r)?hn:0);c?ou.add(r):ou.delete(r);let d=a&&!l&&(e.timeSeconds>=n.end||yr(e.timeSeconds,n.end))&&Sr(e.timeSeconds,n.start,n.end,e.getCompositionDuration()),m=Un(i,Math.max(0,Math.min(e.timeSeconds,n.end)-o))+n.mediaStart,f=d||a&&n.sourceDuration!=null&&m>=n.sourceDuration&&l;f&&n.sourceDuration!=null&&(m=Math.min(m,n.sourceDuration));let p=Ia.get(r),y=r.tagName==="AUDIO"&&(p===void 0||m<p-.04),b=!n.loop&&n.sourceDuration!=null&&m>=n.mediaStart&&m<n.sourceDuration&&(a||y);if((l||d||c)&&m>=0&&(!r.ended||n.loop||f||b)){if(Ia.set(r,m),n.loop&&n.sourceDuration!=null&&n.sourceDuration>0){let J=n.sourceDuration-n.mediaStart;J>0&&m>=n.sourceDuration&&(m=n.mediaStart+(m-n.mediaStart)%J)}let E=au(e.userVolume??1),_=ft(n.volume??1),F=uu.get(r),D=au(r.volume),k,w=dp(r,e.timeSeconds-o);if(w!==null)k=ft(w);else if(n.volumeKeyframes&&n.volumeKeyframes.length>0){let J=e.timeSeconds-o;k=ft(_h(n.volumeKeyframes,J))}else e.isWebAudioRouted?.(r)?k=_:F===void 0?k=_>1?_:D:Math.abs(D-F)>1e-4?k=D:k=_;let L=n.fades??kh;(L.fadeIn>0||L.fadeOut>0)&&(k*=Nh(e.timeSeconds-o,n.duration+n.start-o,L));let K=r.closest("[data-hidden]")!==null||La(r.ownerDocument,r)?0:au(k*E);Math.abs(r.volume-K)>1e-6&&(r.volume=K),uu.set(r,K),e.onElementVolume?.(r,K,k),(t||e.isWebAudioOwned?.(r))&&!r.muted&&(r.muted=!0),r.preload!=="auto"&&(r.preload="auto");let Z=Gl(i,e.timeSeconds-o)*e.playbackRate,ae=e.playing&&Z>=Oh,ne=2,P=r.currentTime||0,R=Math.abs(P-m),M=m-P,z=su.get(r);su.set(r,M);let V=z===void 0,ee=!V&&Math.abs(M-z)>.5,C=R>3,N=r.tagName==="AUDIO"&&V&&P-m>hn,j=f&&R>.001||r.ended&&b&&R>.001||N||R>mu&&(V||ee||C),W=r.tagName==="VIDEO"&&!r.paused&&ae,q=e.playing&&!ae||z!==void 0&&Math.abs(M-z)<.004,re=!1;if(!W&&!j&&!V&&q&&R>hn){let J=(ki.get(r)??0)+1;ki.set(r,J),J>=ne&&(re=!0,ki.set(r,0))}else R<=hn&&ki.set(r,0);let oe=!W&&e.forceSync&&R>.02;try{(!W||j)&&Li.delete(r);let J=Math.max(Oh,W&&!j?iw(r,M,Z):Z);Math.abs(r.playbackRate-J)>1e-6&&(r.playbackRate=J)}catch(J){H("runtime.media.site1",J)}if(j||re||oe){if(!(r.tagName==="VIDEO"&&!!vt(r))){try{r.currentTime=m}catch(Q){H("runtime.media.site2",Q)}if(Math.abs(r.currentTime-m)>.5&&!lu.has(r)){lu.add(r),r.load();try{r.currentTime=m}catch(Q){H("runtime.media.site3",Q)}}Ph(r)}Cr.delete(r)}else ae||Ph(r);f?r.paused||r.pause():ae&&r.paused&&!Cr.has(r)&&!du(r)?(Z_(r),r.play().catch(J=>{Cr.delete(r),(J&&typeof J=="object"&&"name"in J?String(J.name??""):"")==="NotAllowedError"&&e.onAutoplayBlocked?.()})):!ae&&!r.paused&&r.pause();continue}let v=pn(e.timeSeconds,n.start,n.end);fu(r),v&&Ia.set(r,m),r.paused||r.pause(),tw(n,e.timeSeconds,e.playing,e.playbackRate)}}var gn=new WeakMap;function Ni(e){return gn.has(e)?gn.get(e)??null:e.getAttribute("src")}async function hu(e,t){let n=0;for(;t();){let r=await fetch(e,{headers:{Range:"bytes=0-0"},cache:"no-store"}).catch(()=>null);r?.body?.cancel().catch(()=>{});let i=r?.status===202||r?.status===503;if(!i&&r?.ok)return!0;if(!i&&++n>3)return!1;let o=Math.min(Number(r?.headers.get("Retry-After"))||2,30);await new Promise(a=>setTimeout(a,o*1e3))}return!1}var Wh="hf-proxy-box",ow=[256,362,512,724,1024,1448,2048,2896,4096,5792,8192];function Uh(e){return e>0?ow.find(t=>t>=e)??null:null}function Vh(e,t){let n=Uh(e),r=Uh(t);return n&&r?{width:n,height:r}:null}function $h(e){return`${e.width}x${e.height}`}var aw="hf-proxy",qh="runtime_media_proxy_fallback",zh="runtime_media_proxy_unavailable",jh=new WeakSet,Fi=new WeakMap;function Da(e){return e.currentSrc||e.src}var Tr=window.parent===window?1:null,Kh=()=>{},sw=new Promise(e=>Kh=e),lw=1e3,Di=new Map,Ii=new WeakMap;function uw(){return Tr!==null?Promise.resolve(Tr):Promise.race([sw.then(()=>Tr),new Promise(e=>setTimeout(()=>e(null),lw))])}function Yh(e,t){if(getComputedStyle(e).objectFit==="none")return null;let n=e.getBoundingClientRect(),r=document.documentElement,i=t*(window.devicePixelRatio||1);return Vh(Math.max(n.width,r.clientWidth)*i,Math.max(n.height,r.clientHeight)*i)}function Xh(e){if(!(!(e>0)||!Number.isFinite(e))){Tr=e,Kh();for(let t of Di.keys())Jh(t,e)}}function Jh(e,t){let n=Di.get(e);if(!n)return;if(!e.isConnected||e.getAttribute("src")!==n.href){Di.delete(e);return}let r=Yh(e,t);if(r&&r.width<=n.box.width&&r.height<=n.box.height)return;let i=r&&{width:Math.max(r.width,n.box.width),height:Math.max(r.height,n.box.height)},o=Zh(n.originalSrc,n.variant,i);if(Ii.get(e)===o)return;Ii.set(e,o);let a=()=>Ii.get(e)===o&&e.isConnected&&e.getAttribute("src")===n.href;hu(o,a).then(l=>{l&&a()&&Qh(e,o,n.originalSrc,n.variant,i),Ii.get(e)===o&&Ii.delete(e)})}function Qh(e,t,n,r,i){i?Di.set(e,{originalSrc:n,variant:r,href:t,box:i}):Di.delete(e),fu(e),e.src=t,e.load()}function Pi(e){return window.__HF_EXPORT_RENDER_SEEK_CONFIG?!0:Ce(e)&&!!vt(e)}function gu(e){let t=Da(e);if(!t)return null;let n;try{n=new URL(t,document.baseURI)}catch{return null}if(n.origin!==window.location.origin)return null;try{return decodeURIComponent(n.pathname)}catch{return n.pathname}}function cw(e,t){let n=null;for(let r of Object.keys(t))e.endsWith(r)&&(n===null||r.length>n.length)&&(n=r);return n?t[n]??null:null}function dw(e,t){let n=e.normalize("NFC").toLowerCase(),r=-1,i=null,o=!1;for(let[a,l]of Object.entries(t)){let s=a.normalize("NFC").toLowerCase();n.endsWith(s)&&(s.length>r?(r=s.length,i=l,o=!1):s.length===r&&(o=!0))}return o?null:i}function bu(e,t){return t[e]??cw(e,t)??dw(e,t)}function Zh(e,t,n){let r=new URL(e,document.baseURI);return r.searchParams.set(aw,t),n&&r.searchParams.set(Wh,$h(n)),r.href}var fw={cross_origin:"video reports zero decodable width but its source is cross-origin; no local proxy can be served for it",proxy_playback_failed:"the authoring proxy itself failed to decode; render output is unaffected",browser_safe_codec:"the file errored but its codec is browser-decodable; a proxy cannot help (the file itself is likely corrupt)",invalid_source_url:"the media source URL is malformed and cannot be proxied"};function bn(e,t,n){if(jh.has(e))return;jh.add(e);let r=fw[t];Te({source:"hf-preview",type:"diagnostic",code:zh,details:{asset:n,codecName:null,reason:t,note:r}}),console.info(`[hyperframes] ${zh}: "${n}" (${t}): ${r}`)}function xu(e,t=null,n="reactive"){if(gn.has(e)||Fi.has(e)&&Fi.get(e)===e.getAttribute("src"))return;let r=Da(e),i=t?t.hasAlpha?"vp8":"h264":"auto";try{new URL(r,document.baseURI)}catch(d){H("runtime.mediaProxy.swap",d),bn(e,"invalid_source_url",r);return}let o=e.getAttribute("src");Fi.set(e,o);let a=()=>e.isConnected&&e.getAttribute("src")===o,l=uw().then(async d=>{let m=d===null?null:Yh(e,d),f=Zh(r,i,m),p=await hu(f,a);if(!a()){Fi.get(e)===o&&Fi.delete(e);return}if(!p){bn(e,"proxy_playback_failed",r);return}return gn.set(e,o),Qh(e,f,r,i,m),Tr!==null&&Jh(e,Tr),new Promise(y=>{e.addEventListener("loadeddata",y,{once:!0}),e.addEventListener("error",y,{once:!0})})});it(Promise.race([l,new Promise(d=>setTimeout(d,cu))]),"video-frame");let s=t?.codecName??null;Te({source:"hf-preview",type:"diagnostic",code:qh,details:{asset:r,codecName:s,trigger:n,note:"render output is unaffected; only this preview element was swapped to an authoring proxy"}}),console.info(`[hyperframes] ${qh}: "${r}" uses a codec (${s??"unknown"}) this browser can't decode; auto-swapped to an authoring proxy for this preview only. Render output is unaffected.`)}function eg(e){if(Pi(e)||!Ce(e)||gn.has(e))return;let t=window.__HF_MEDIA_CODEC_MAP__;if(!t)return;let n=gu(e);if(n===null)return;let r=bu(n,t);if(!r||!r.browserHostile)return;let i=r.representativeMime?e.canPlayType(r.representativeMime):"";i==="probably"||i==="maybe"||xu(e,r,"proactive")}function tg(e){if(Pi(e)||!Ce(e)||e.videoWidth!==0)return;let t=Da(e);if(gn.has(e)){bn(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=gu(e);if(r===null){bn(e,"cross_origin",t);return}let i=bu(r,n);if(i&&!i.browserHostile){bn(e,"browser_safe_codec",t);return}xu(e,i,"reactive")}function ng(e){if(Pi(e)||!Ce(e))return;let t=Da(e);if(gn.has(e)){bn(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=gu(e);if(r===null){bn(e,"cross_origin",t);return}let i=bu(r,n);if(i&&!i.browserHostile){bn(e,"browser_safe_codec",t);return}xu(e,i,"tertiary")}var Be=class extends Error{constructor(n,r=null){super(r==null?n:`${n} at line ${r}`);fe(this,"lineNumber");this.name="CubeLutParseError",this.lineNumber=r}},mw=[0,0,0],pw=[1,1,1],Pa=64;function hw(e){let t=!1;for(let n=0;n<e.length;n++){let r=e[n];if(r==='"'&&(t=!t),r==="#"&&!t)return e.slice(0,n)}return e}function xn(e,t){let n=Number(e);if(!Number.isFinite(n))throw new Be(`Invalid number "${e}"`,t);return n}function rg(e,t,n){if(e.length!==3)throw new Be(`${t} expects three numbers`,n);return[xn(e[0],n),xn(e[1],n),xn(e[2],n)]}function ig(e,t,n){if(!e)throw new Be(`${t} expects a size`,n);let r=Number(e);if(!Number.isInteger(r)||r<2)throw new Be(`${t} must be an integer greater than 1`,n);return r}function gw(e,t){if(t[0]<=e[0]||t[1]<=e[1]||t[2]<=e[2])throw new Be("DOMAIN_MAX values must be greater than DOMAIN_MIN values")}function bw(e){let t=/^TITLE\s+"([^"]*)"\s*$/i.exec(e);if(t)return t[1]??null;let n=/^TITLE\s+(.+)\s*$/i.exec(e);return n&&(n[1]??"").trim()||null}function xw(e){return/^[+-]?(?:\d|\.\d)/.test(e)}function og(e,t={}){let n=t.maxSize??Pa,r=null,i=mw,o=pw,a=null,l=null,s=[],c=e.replace(/^\uFEFF/,"").split(/\r?\n/);for(let m=0;m<c.length;m++){let f=m+1,p=hw(c[m]??"").trim();if(!p)continue;let y=p.split(/\s+/),b=(y[0]??"").toUpperCase(),g=y.slice(1);if(b==="TITLE"){r=bw(p);continue}if(b==="DOMAIN_MIN"){i=rg(g,b,f);continue}if(b==="DOMAIN_MAX"){o=rg(g,b,f);continue}if(b==="LUT_3D_INPUT_RANGE"){if(g.length!==2)throw new Be(`${b} expects two numbers`,f);let v=xn(g[0],f),E=xn(g[1],f);if(E<=v)throw new Be("LUT_3D_INPUT_RANGE max must exceed min",f);i=[v,v,v],o=[E,E,E];continue}if(b==="LUT_1D_SIZE"){a=ig(g[0],b,f);continue}if(b==="LUT_3D_SIZE"){if(l=ig(g[0],b,f),l>n)throw new Be(`LUT_3D_SIZE ${l} exceeds max ${n}`,f);continue}if(!xw(b)){if(b.startsWith("LUT_"))throw new Be(`Unsupported cube keyword ${b}`,f);continue}if(!l)throw a?new Be("1D cube LUTs are not supported yet",f):new Be("LUT data appears before LUT_3D_SIZE",f);if(y.length!==3)throw new Be("LUT data rows must contain three numbers",f);s.push(xn(y[0],f),xn(y[1],f),xn(y[2],f))}if(a&&l)throw new Be("Mixed 1D and 3D cube LUTs are not supported yet");if(!l)throw a?new Be("1D cube LUTs are not supported yet"):new Be("Missing LUT_3D_SIZE");gw(i,o);let d=l*l*l;if(s.length!==d*3)throw new Be(`Expected ${d} LUT rows for size ${l}, found ${s.length/3}`);return{title:r,size:l,domainMin:i,domainMax:o,data:new Float32Array(s)}}function yw(e){return Number.isFinite(e)?Math.min(1,Math.max(0,e)):0}function Oi(e){return Math.round(yw(e)*255)}function yu(e){let t=e.size,n=t*t,r=t,i=new Uint8Array(n*r*4);for(let o=0;o<t;o++)for(let a=0;a<t;a++)for(let l=0;l<t;l++){let s=((o*t+a)*t+l)*3,c=(a*n+o*t+l)*4;i[c]=Oi(e.data[s]??0),i[c+1]=Oi(e.data[s+1]??0),i[c+2]=Oi(e.data[s+2]??0),i[c+3]=255}return{width:n,height:r,data:i}}var ag="rec709";var sg=["video","img","canvas"],ke={hueDegrees:{min:0,max:360,inclusiveMax:!1},unit:{min:0,max:1},signedUnit:{min:-1,max:1},secondaryHueRange:{min:0,max:180},secondaryHueSoftness:{min:0,max:180},secondaryHueCombinedMax:180,secondarySoftRangeSoftness:{min:0,max:.5},secondaryHueShift:{min:-180,max:180},effects:{asciiStyle:{min:0,max:7},bloom:{min:0,max:3},bloomRadius:{min:1,max:100},monoScreenShape:{min:0,max:4}}};var lg=["exposure","contrast","highlights","shadows","whites","blacks","temperature","tint","vibrance","saturation"];var ug=["shadows","midtones","highlights"],cg=["master","red","green","blue"],dg=["hueVsHue","hueVsSaturation","hueVsLuma"];var fg=["vignette","vignetteMidpoint","vignetteRoundness","vignetteFeather","grain","grainSize","grainRoughness"],mg=["blur","pixelate","chromaBleed","tapeDamage","tapeTracking","tapeNoise","tapeSpeed","filmArtifacts","halftone","halftoneSize","twoInkPrint","twoInkPrintSize","ascii","asciiSize","asciiInvert","asciiStyle","asciiColor","asciiRotation","dither","ditherSize","bloom","bloomRadius","monoScreen","monoScreenSize","monoScreenAngle","monoScreenSpread","monoScreenShape","monoScreenInvert","scanlines","scanlineCount","scanlineSoftness","chromaticAberration","chromaticAngle","crtCurvature","digitalGlitch","digitalGlitchColorSplit","digitalGlitchLineTear","digitalGlitchPixelate","digitalGlitchBlockAmount","digitalGlitchBlockDisplacement","digitalGlitchBlockOpacity","digitalGlitchSpeed","engraving","engravingSpacing","engravingMinThickness","engravingMaxThickness","engravingAngle","engravingContrast","engravingSharpness","engravingWave","engravingWaveFrequency","crosshatch","crosshatchSpacing","crosshatchThickness","crosshatchAngle","crosshatchContrast","crosshatchEdges","crosshatchLineWeight","crosshatchWave","crosshatchWaveFrequency","kuwahara","kuwaharaRadius","kuwaharaSharpness","kuwaharaSaturation"];var $O=ke.unit,qO=ke.signedUnit,zO=ke.effects;var Ot=1024,Hi=16;function pg(e,t,n,r){let i=((2*e+t)*n-e*r)/(e+t);return Math.sign(i)!==Math.sign(n)?0:Math.sign(n)!==Math.sign(r)&&Math.abs(i)>3*Math.abs(n)?3*n:i}function Ue(e,t){let n=e[t];if(n===void 0)throw new RangeError("Color curve points must be contiguous");return n}function Sw(e){let t=[],n=[],r=Ue(e,0);for(let a of e.slice(1)){let l=a[0]-r[0];t.push(l),n.push((a[1]-r[1])/l),r=a}let i=Ue(n,0);if(e.length===2)return[i,i];let o=new Array(e.length);o[0]=pg(Ue(t,0),Ue(t,1),i,Ue(n,1)),o[o.length-1]=pg(Ue(t,t.length-1),Ue(t,t.length-2),Ue(n,n.length-1),Ue(n,n.length-2));for(let a=1;a<e.length-1;a+=1){let l=Ue(n,a-1),s=Ue(n,a);if(l===0||s===0||Math.sign(l)!==Math.sign(s)){o[a]=0;continue}let c=Ue(t,a-1),d=Ue(t,a),m=2*d+c,f=d+2*c;o[a]=(m+f)/(m/l+f/s)}return o}function hg(e,t){if(e.length<2)throw new RangeError("A color curve requires at least two points");if(!Number.isInteger(t)||t<2)throw new RangeError("Curve LUT size must be at least 2");let n=Number.NEGATIVE_INFINITY;for(let[r,i]of e){if(!Number.isFinite(r)||!Number.isFinite(i))throw new TypeError("Color curve points must be finite");if(r<=n)throw new RangeError("Color curve inputs must be strictly increasing");n=r}}function vw(e,t,n){if(!Number.isFinite(t)||!Number.isFinite(n)||t>=n)throw new RangeError("Curve output bounds must be finite and increasing");if(e.some(([,r])=>r<t||r>n))throw new RangeError(`Curve outputs must be between ${t} and ${n}`)}function Ew(e,t,n,r,i){let o=n[0]-t[0],a=Math.min(1,Math.max(0,(e-t[0])/o)),l=a*a,s=l*a;return(2*s-3*l+1)*t[1]+(s-2*l+a)*o*r+(-2*s+3*l)*n[1]+(s-l)*o*i}function gg(e,t,n,r,i){vw(e,r,i);let o=Sw(e),a=new Float32Array(t),l=0;for(let s=0;s<t;s+=1){let c=n(s);for(;l<e.length-2&&c>Ue(e,l+1)[0];)l+=1;let d=Ue(e,l),m=Ue(e,l+1),f=Ew(c,d,m,Ue(o,l),Ue(o,l+1));a[s]=Math.min(i,Math.max(r,f))}return a}function Rr(e,t=Ot){if(hg(e,t),e.length>Hi)throw new RangeError(`A color curve supports at most ${Hi} points`);if(e.some(([n])=>n<0||n>1))throw new RangeError("Color curve inputs must be between 0 and 1");if(e[0]?.[0]!==0||e[e.length-1]?.[0]!==1)throw new RangeError("Color curves must include input endpoints 0 and 1");return gg(e,t,n=>n/(t-1),0,1)}function vu(e,t,n,r=Ot){if(e.length<3)throw new RangeError("A hue curve requires at least three points");if(e.length>Hi)throw new RangeError(`A hue curve supports at most ${Hi} points`);let i=[...e].sort((s,c)=>s[0]-c[0]);for(let s=0;s<i.length;s+=1){let c=i[s];if(!c||c[0]<0||c[0]>=360)throw new RangeError("Hue curve inputs must be from 0 up to 360 degrees");if(s>0&&c[0]===i[s-1]?.[0])throw new RangeError("Hue curve inputs must be unique")}let o=i.slice(-2).map(([s,c])=>[s-360,c]),a=i.slice(0,2).map(([s,c])=>[s+360,c]),l=[...o,...i,...a];return hg(l,r),gg(l,r,s=>s/r*360,t,n)}var Ga="data-color-grading",$n="data-hf-color-grading-source-hidden",qn="data-hf-authored-opacity",vg="__hf_color_grading_",_w=ag,Ru=sg,_u={exposure:0,contrast:0,highlights:0,shadows:0,whites:0,blacks:0,temperature:0,tint:0,vibrance:0,saturation:0},wu={vignette:0,vignetteMidpoint:.5,vignetteRoundness:0,vignetteFeather:.65,grain:0,grainSize:.25,grainRoughness:.5},Cu={blur:0,pixelate:0,chromaBleed:0,tapeDamage:0,tapeTracking:0,tapeNoise:1,tapeSpeed:.5,filmArtifacts:0,halftone:0,halftoneSize:0,twoInkPrint:0,twoInkPrintSize:0,ascii:0,asciiSize:5/76,asciiInvert:0,asciiStyle:0,asciiColor:1,asciiRotation:0,dither:0,ditherSize:0,bloom:0,bloomRadius:8,monoScreen:0,monoScreenSize:0,monoScreenAngle:0,monoScreenSpread:0,monoScreenShape:0,monoScreenInvert:0,scanlines:0,scanlineCount:0,scanlineSoftness:0,chromaticAberration:0,chromaticAngle:0,crtCurvature:0,digitalGlitch:0,digitalGlitchColorSplit:0,digitalGlitchLineTear:0,digitalGlitchPixelate:0,digitalGlitchBlockAmount:0,digitalGlitchBlockDisplacement:0,digitalGlitchBlockOpacity:0,digitalGlitchSpeed:0,engraving:0,engravingSpacing:7/17,engravingMinThickness:.2,engravingMaxThickness:3.2/7,engravingAngle:.25,engravingContrast:7/15,engravingSharpness:.59,engravingWave:.2,engravingWaveFrequency:2/9,crosshatch:0,crosshatchSpacing:7/25,crosshatchThickness:.25,crosshatchAngle:.25,crosshatchContrast:1/3,crosshatchEdges:.5,crosshatchLineWeight:0,crosshatchWave:.33,crosshatchWaveFrequency:2/9,kuwahara:0,kuwaharaRadius:1/7,kuwaharaSharpness:5/16,kuwaharaSaturation:.5};var Ba=lg,Eg=ug,Ag=cg,_g=dg,Mu=fg,ku=mg,bg={exposure:.03,contrast:-.12,highlights:-.1,shadows:.16,whites:-.04,blacks:.08,temperature:.13,vibrance:-.08,saturation:-.08},xg={vignette:.18};function We(e,t,n={},r={},i={},o=1){return{id:e,label:t,intensity:o,adjust:{..._u,...n},details:{...wu,...r},effects:{...Cu,...i}}}var Lu=[We("neutral","Neutral"),We("warm-daylight","Warm Daylight",{exposure:.06,contrast:.07,highlights:-.06,shadows:.08,temperature:.18,saturation:.08}),We("clean-studio","Clean Studio",{contrast:.08,highlights:-.08,shadows:.06,temperature:-.08,tint:.03,saturation:.04}),We("skin-soft","Skin Soft",{exposure:.04,contrast:-.03,highlights:-.12,shadows:.12,temperature:.08,tint:.02,saturation:.04}),We("food-pop","Food Pop",{exposure:.06,contrast:.1,shadows:.06,temperature:.14,vibrance:.1,saturation:.18}),We("night-lift","Night Lift",{exposure:.08,contrast:.08,highlights:-.18,shadows:.2,blacks:-.08,saturation:.04},{vignette:.12}),We("muted-editorial","Muted Editorial",{exposure:-.02,contrast:.08,highlights:-.08,shadows:.06,blacks:-.05,temperature:-.03,saturation:-.12},{vignette:.1}),We("vintage-wash","Vintage Wash",bg,xg),We("mono-clean","Mono Clean",{contrast:.12,highlights:-.04,shadows:.04,blacks:-.08,saturation:-1}),We("mono-fade","Mono Fade",{contrast:-.04,highlights:-.06,shadows:.1,blacks:.12,saturation:-1},{vignette:.08}),We("soft-boost","Soft Boost",{exposure:.06,contrast:-.04,highlights:-.14,shadows:.16,vibrance:.08,saturation:.1}),We("bright-pop","Bright Pop",{exposure:.12,contrast:.12,whites:.08,blacks:-.04,vibrance:.08,saturation:.14}),We("deep-contrast","Deep Contrast",{exposure:-.03,contrast:.2,highlights:-.08,shadows:-.08,blacks:-.12,saturation:.06}),We("creator-camcorder","Creator Camcorder",{contrast:.08,highlights:-.05,shadows:.02,whites:.03,blacks:-.04,temperature:-.03,tint:-.015,vibrance:-.03,saturation:-.06},{vignette:.06,grain:.08,grainSize:.18,grainRoughness:.58},{chromaBleed:.55},.72),We("vhs-playback","VHS Playback",{contrast:-.04,saturation:-.08},{grain:.16,grainSize:.12,grainRoughness:.72},{tapeDamage:.82,tapeTracking:.85,tapeNoise:.3,tapeSpeed:.5,chromaBleed:.5,chromaticAberration:.18,scanlines:.35,scanlineCount:.17,scanlineSoftness:1,digitalGlitch:.32,digitalGlitchLineTear:.08,digitalGlitchSpeed:.5}),We("home-movie-8mm","8mm Home Movie",bg,{...xg,vignette:.28,vignetteMidpoint:.54,vignetteFeather:.72,grain:.34,grainSize:.18,grainRoughness:.72},{filmArtifacts:.62},.72),We("editorial-halftone","Editorial Halftone",{contrast:.04,saturation:.04},{},{halftone:.94,halftoneSize:.36}),We("two-ink-print","Two-Ink Print",{contrast:.08,highlights:-.06,shadows:.04},{},{twoInkPrint:1,twoInkPrintSize:.42})],ww=new Map(Lu.map(e=>[e.id,e])),Cw=/^\$(?:\{([A-Za-z0-9_.:-]+)\}|([A-Za-z0-9_.:-]+))$/,Tw={exposure:{min:-2,max:2},contrast:{min:-1,max:1},highlights:{min:-1,max:1},shadows:{min:-1,max:1},whites:{min:-1,max:1},blacks:{min:-1,max:1},temperature:{min:-1,max:1},tint:{min:-1,max:1},vibrance:{min:-1,max:1},saturation:{min:-1,max:1}},Mr={hue:0,amount:0,level:0},yg={amount:ke.unit,level:ke.signedUnit},yn=[[0,0],[1,1]],kr=[],Rw={hueVsHue:ke.secondaryHueShift,hueVsSaturation:ke.signedUnit,hueVsLuma:ke.signedUnit},Eu={center:0,range:180,softness:0},Au={min:0,max:1,softness:.05},Mw={vignette:ke.unit,vignetteMidpoint:ke.unit,vignetteRoundness:ke.signedUnit,vignetteFeather:ke.unit,grain:ke.unit,grainSize:ke.unit,grainRoughness:ke.unit},Tu=ke.unit,kw=ke.effects,wg=["blur","pixelate","chromaBleed","tapeDamage","filmArtifacts","halftone","twoInkPrint","ascii","dither","bloom","monoScreen","scanlines","chromaticAberration","crtCurvature","digitalGlitch","engraving","crosshatch","kuwahara"];var Lw=Lu.filter(e=>wg.some(t=>e.effects[t]>1e-4)),tH=Lu.filter(e=>!Lw.includes(e)),nH={blur:{blur:.45},pixelate:{pixelate:.55},bloom:{bloom:.55,bloomRadius:8},chromaBleed:{chromaBleed:.55},tapeDamage:{tapeDamage:.65,tapeTracking:.55,tapeNoise:.25,tapeSpeed:.5},filmArtifacts:{filmArtifacts:.55},scanlines:{scanlines:.35,scanlineCount:.17,scanlineSoftness:1},chromaticAberration:{chromaticAberration:.15,chromaticAngle:0},crtCurvature:{crtCurvature:.2},digitalGlitch:{digitalGlitch:.55,digitalGlitchColorSplit:.25,digitalGlitchLineTear:.25,digitalGlitchPixelate:.15,digitalGlitchBlockAmount:.5,digitalGlitchBlockDisplacement:.25,digitalGlitchBlockOpacity:0,digitalGlitchSpeed:.5},halftone:{halftone:.94,halftoneSize:.36},twoInkPrint:{twoInkPrint:1,twoInkPrintSize:.42},ascii:{ascii:1,asciiSize:5/76,asciiInvert:0,asciiStyle:0,asciiColor:1,asciiRotation:0},dither:{dither:1,ditherSize:.5},monoScreen:{monoScreen:1,monoScreenSize:.35,monoScreenAngle:.25,monoScreenSpread:.3,monoScreenShape:0,monoScreenInvert:0},engraving:{engraving:1,engravingSpacing:7/17,engravingMinThickness:.2,engravingMaxThickness:3.2/7,engravingAngle:.25,engravingContrast:7/15,engravingSharpness:.59,engravingWave:.2,engravingWaveFrequency:2/9},crosshatch:{crosshatch:1,crosshatchSpacing:7/25,crosshatchThickness:.25,crosshatchAngle:.25,crosshatchContrast:1/3,crosshatchEdges:.5,crosshatchLineWeight:0,crosshatchWave:.33,crosshatchWaveFrequency:2/9},kuwahara:{kuwahara:1,kuwaharaRadius:1/7,kuwaharaSharpness:5/16,kuwaharaSaturation:.5}},Cg=[{path:"intensity",name:"--hf-color-grading-intensity",min:0,max:1},{path:"lut.intensity",name:"--hf-color-grading-lut-intensity",min:0,max:1},{path:"adjust.exposure",name:"--hf-color-grading-exposure",min:-2,max:2},{path:"effects.blur",name:"--hf-color-grading-blur",min:0,max:1},{path:"effects.bloom",name:"--hf-color-grading-bloom",min:0,max:3},{path:"effects.kuwahara",name:"--hf-color-grading-kuwahara",min:0,max:1},{path:"effects.pixelate",name:"--hf-color-grading-pixelate",min:0,max:1},{path:"effects.ascii",name:"--hf-color-grading-ascii",min:0,max:1},{path:"effects.dither",name:"--hf-color-grading-dither",min:0,max:1}];var Nw=/^#[0-9a-f]{6}$/i;function Fw(e){return!Array.isArray(e)||e.length<2||e.length>6||!e.every(t=>typeof t=="string"&&Nw.test(t))?null:e.map(t=>t.toLowerCase())}function qe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ha(e,t,n){return Number.isFinite(e)?Math.min(n,Math.max(t,e)):0}function Tg(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?Math.min(1,Math.max(0,n)):t}function Ze(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?Ha(n,t.min,t.max):0}function Nu(e,t=0){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?(n%360+360)%360:t}function Iw(e){let t=qe(e)?e:{};return Eg.reduce((n,r)=>{let i=qe(t[r])?t[r]:{};return n[r]={hue:Nu(i.hue,Mr.hue),amount:Ze(i.amount??Mr.amount,yg.amount),level:Ze(i.level??Mr.level,yg.level)},n},{shadows:{...Mr},midtones:{...Mr},highlights:{...Mr}})}function Dw(e){if(!Array.isArray(e)||e.length!==2)return null;let t=Number(e[0]),n=Number(e[1]);return Number.isFinite(t)&&Number.isFinite(n)?[Ha(t,0,1),Ha(n,0,1)]:null}function Rg(e){return e.some((t,n)=>n>0&&t[0]===e[n-1]?.[0])}function Pw(e){(e[0]?.[0]??0)>0&&e.unshift([0,0]),(e.at(-1)?.[0]??1)<1&&e.push([1,1])}function Ow(e){if(!Array.isArray(e)||e.length<2)return yn;let t=[];for(let n of e){let r=Dw(n);if(!r)return yn;t.push(r)}return t.sort((n,r)=>n[0]-r[0]),Rg(t)||(Pw(t),t.length>16)?yn:t}function Hw(e){let t=qe(e)?e:{};return Ag.reduce((n,r)=>(n[r]=Ow(t[r]),n),{master:yn,red:yn,green:yn,blue:yn})}function Gw(e,t){if(!Array.isArray(e)||e.length!==2)return null;let n=Number(e[0]),r=Number(e[1]);return Number.isFinite(n)&&Number.isFinite(r)?[Nu(n),Ha(r,t.min,t.max)]:null}function Bw(e,t){if(!Array.isArray(e)||e.length<3||e.length>16)return kr;let n=[];for(let r of e){let i=Gw(r,t);if(!i)return kr;n.push(i)}return n.sort((r,i)=>r[0]-i[0]),Rg(n)?kr:n}function Uw(e){let t=qe(e)?e:{};return _g.reduce((n,r)=>(n[r]=Bw(t[r],Rw[r]),n),{hueVsHue:kr,hueVsSaturation:kr,hueVsLuma:kr})}function Sg(e){let t=qe(e)?e:{},n=Ze(t.min??Au.min,Tu),r=Ze(t.max??Au.max,Tu);return{min:Math.min(n,r),max:Math.max(n,r),softness:Ze(t.softness??Au.softness,ke.secondarySoftRangeSoftness)}}function Ww(e){let t=qe(e)?e:{},n=Ze(t.range??Eu.range,ke.secondaryHueRange);return{center:Nu(t.center,Eu.center),range:n,softness:Ze(t.softness??Eu.softness,{min:ke.secondaryHueSoftness.min,max:ke.secondaryHueCombinedMax-n})}}function Vw(e){return{hueShift:Ze(e.hueShift??0,ke.secondaryHueShift),saturation:Ze(e.saturation??0,ke.signedUnit),luma:Ze(e.luma??0,ke.signedUnit),temperature:Ze(e.temperature??0,ke.signedUnit),tint:Ze(e.tint??0,ke.signedUnit)}}function $w(e){return!qe(e)||!qe(e.key)||!qe(e.correction)?null:{enabled:e.enabled!==!1,key:{hue:Ww(e.key.hue),saturation:Sg(e.key.saturation),luma:Sg(e.key.luma)},correction:Vw(e.correction)}}function qw(e){if(!Array.isArray(e))return[];let t=[];for(let n of e.slice(0,4)){let r=$w(n);r&&t.push(r)}return t}function zw(e){if(e==null)return null;let t=String(e).trim();return t||null}function jw(e){if(e==null)return null;if(typeof e=="string"){let n=e.trim();return n?{src:n,intensity:1}:null}if(!qe(e))return null;let t=e.src;return typeof t!="string"||t.trim()===""?null:{src:t.trim(),intensity:Tg(e.intensity,1)}}function Kw(e){if(typeof e=="string"){let t=e.trim();if(!t)return null;if(t.startsWith("{"))try{let n=JSON.parse(t);return qe(n)?n:null}catch{return null}return{preset:t}}return qe(e)?e:null}function Yw(e,t){let n=e.trim().match(Cw);if(!n)return e;let r=n[1]??n[2]??"";return r&&Object.hasOwn(t,r)?t[r]:e}function Oa(e,t){if(typeof e=="string"){let r=Yw(e,t);if(r!==e)return r;let i=e.trim();if(!i.startsWith("{"))return e;try{return Oa(JSON.parse(i),t)}catch{return e}}if(Array.isArray(e))return e.map(r=>Oa(r,t));if(!qe(e))return e;let n={};for(let[r,i]of Object.entries(e))n[r]=Oa(i,t);return n}function Xw(e){return e?ww.get(e)??null:null}function Ua(e){let t=Kw(e);if(!t||t.enabled===!1)return null;let n=zw(t.preset),r=Xw(n),i=r?.adjust??_u,o=r?.details??wu,a=r?.effects??Cu,l=qe(t.adjust)?t.adjust:{},s=qe(t.details)?t.details:{},c=qe(t.effects)?t.effects:{},d=Ba.reduce((p,y)=>(p[y]=Ze(l[y]??i[y],Tw[y]),p),{..._u}),m=Mu.reduce((p,y)=>(p[y]=Ze(s[y]??o[y],Mw[y]),p),{...wu}),f=ku.reduce((p,y)=>(p[y]=Ze(c[y]??a[y],kw[y]??Tu),p),{...Cu});return{enabled:!0,preset:n,intensity:Tg(t.intensity,r?.intensity??1),adjust:d,wheels:Iw(t.wheels),curves:Hw(t.curves),hueCurves:Uw(t.hueCurves),secondaries:qw(t.secondaries),details:m,effects:f,palette:Fw(t.palette),lut:jw(t.lut),colorSpace:typeof t.colorSpace=="string"&&t.colorSpace.trim()?t.colorSpace.trim():_w}}function Mg(e,t){return Ua(Oa(e,t))}function Jw(e){return Eg.some(t=>Math.abs(e[t].amount)>1e-4||Math.abs(e[t].level)>1e-4)}function Fu(e){return Ag.some(t=>e[t].some(([n,r])=>Math.abs(n-r)>1e-4))}function Iu(e){return _g.some(t=>e[t].some(([,n])=>Math.abs(n)>1e-4))}function Du(e){return e.some(t=>t.enabled&&Object.values(t.correction).some(n=>Math.abs(n)>1e-4))}function kg(e){return e?.enabled?Math.abs(e.details.vignette)>1e-4||Math.abs(e.details.grain)>1e-4||wg.some(n=>Math.abs(e.effects[n])>1e-4)?!0:e.intensity===0?!1:e.lut&&e.lut.intensity!==0?!0:Ba.some(n=>Math.abs(e.adjust[n])>1e-4)||(e.wheels?Jw(e.wheels):!1)||(e.curves?Fu(e.curves):!1)||(e.hueCurves?Iu(e.hueCurves):!1)||(e.secondaries?Du(e.secondaries):!1):!1}var Wa=/^(|transparent|rgba\(.*,\s*0\)|.*\/\s*0%?\s*\))$/,Qw=new Set(["IMG","VIDEO","IFRAME","EMBED","OBJECT","CANVAS"]),Lg="http://www.w3.org/2000/svg",Zw=new Set(["svg","g","foreignObject"]),eC=["Top","Right","Bottom","Left"],tC={left:-1/0,right:1/0,top:-1/0,bottom:1/0},Ng=e=>!!e.backgroundImage&&e.backgroundImage!=="none"||!Wa.test(e.backgroundColor),nC=e=>{let t=e.getPropertyValue("-webkit-text-fill-color")||e.color,n=Number.parseFloat(e.getPropertyValue("-webkit-text-stroke-width"))||0,r=e.getPropertyValue("-webkit-text-stroke-color")||e.color;return!Wa.test(t)||n>0&&!Wa.test(r)},Fg=e=>eC.map(t=>e[`border${t}Style`]!=="none"&&!Wa.test(e[`border${t}Color`])&&Number.parseFloat(e[`border${t}Width`])||0),Va=e=>e.bottom-e.top,Pu=(e,t,n)=>t>=e.left&&t<=e.right&&n>=e.top&&n<=e.bottom,Ig=(e,t)=>({left:Math.min(e.left,t.left),right:Math.max(e.right,t.right),top:Math.min(e.top,t.top),bottom:Math.max(e.bottom,t.bottom)}),rC=(e,t)=>t.display==="none"||t.position==="absolute"||t.position==="fixed"||Number.parseFloat(t.opacity)<=.01&&!e.hasAttribute($n);function iC(e,t,n){if(e.width<=0&&e.height<=0)return!1;let r=3*(Number.parseFloat(t.fontSize)||16),i=Math.max(r,Math.min(2*e.height,20*r/3));return n<e.top-i||n>e.bottom+i}function oC(e,t,n,r){let[i,o,a,l]=Fg(t);if(!(i||o||a||l))return!1;let s=e.getBoundingClientRect(),{offsetWidth:c,offsetHeight:d}=e,m=c>0?s.width/c:1,f=d>0?s.height/d:1,p={left:s.left+l*m,right:s.right-o*m,top:s.top+i*f,bottom:s.bottom-a*f};return!Pu(p,n,r)}function aC(e){let t=[];for(let n of[...e].sort((r,i)=>r.left-i.left)){let r=t.findIndex(i=>n.top<i.bottom&&n.bottom>i.top&&n.left-i.right<=2*Math.max(Va(i),Va(n)));r<0?t.push(n):t[r]=Ig(t[r],n)}return t}function sC(e){let t=[...e].sort((n,r)=>n.top-r.top);return t.flatMap((n,r)=>t.slice(r+1).flatMap(i=>{let o=i.left<n.right&&i.right>n.left,a=i.top-n.bottom<=2*Math.min(Va(n),Va(i));return o&&a&&i.top>n.bottom?[Ig(n,i)]:[]}))}function Dg(e,t,n){let r=e.defaultView,i=typeof e.createRange().getClientRects=="function",o=e.createRange(),a=new Map,l=new Map,s=new Map,c=g=>{let v=l.get(g);if(v===void 0){let E=r.getComputedStyle(g);v=rC(g,E)||i&&iC(g.getBoundingClientRect(),E,n),l.set(g,v)}return v},d=g=>{let v=s.get(g);if(v===void 0){let E=g.parentElement,_=E&&g.nodeValue?.trim()?r.getComputedStyle(E):null;v=!!_&&_.visibility!=="hidden"&&nC(_),s.set(g,v)}return v},m=g=>{if(!i)return[tC];let v=[];o.selectNodeContents(g);for(let E of o.getClientRects()){let _=E.bottom-E.top;E.width>0&&_>0&&n>=E.top-2*_&&n<=E.bottom+2*_&&v.push(E)}return v},f=g=>{let v=a.get(g);if(v)return v;v=[];for(let E of g.childNodes)E.nodeType===3?d(E)&&v.push(...m(E)):E.nodeType===1&&E.hasChildNodes()&&!c(E)&&v.push(...f(E));return a.set(g,v),v};function p(g){let v=aC(f(g));return v.some(E=>Pu(E,t,n))||sC(v).some(E=>Pu(E,t,n))}function y(g,v){let E=r.getComputedStyle(g,v);return!E.content||E.content==="none"||E.content==="normal"||E.display==="none"?!1:E.content!=='""'||Ng(E)||Fg(E).some(_=>_>0)}let b=(g,v)=>/inset/.test(v.boxShadow)||oC(g,v,t,n)||y(g,"::before")||y(g,"::after");return g=>{if(Qw.has(g.tagName)||!(g.namespaceURI!==Lg||Zw.has(g.localName))||!r)return!0;let E=r.getComputedStyle(g);return Ng(E)||b(g,E)||g.namespaceURI!==Lg&&p(g)}}var lC=["[data-hyperframes-ignore]","[data-hyperframes-picker-ignore]","[data-hf-ignore]","[data-no-inspect]","[data-no-pick]","[data-hyper-shader-loading]"].join(","),uC=["[data-hyperframes-picker-block]","[data-hyper-shader-loading]"].join(","),Pg="[data-hf-inner-root],[data-composition-id]:not([data-composition-id] *)",Og=`${Pg}{pointer-events:auto!important}`,cC=`@layer hf-picker{${Og}}`;function Hg(e){let t=!1,n=null,r=null,i=null,o=null,a,l=new Set;function s(C,N){try{window.dispatchEvent(new CustomEvent(C,{detail:N}))}catch(j){H("runtime.picker.site1",j)}}function c(C){i=C,s("hyperframe:picker:hovered",{elementInfo:i,isPickMode:t,timestamp:Date.now()})}function d(C){o=C,s("hyperframe:picker:selected",{elementInfo:o,isPickMode:t,timestamp:Date.now()})}function m(C){if(l=new Set(Array.from(document.querySelectorAll(Pg)).filter(W=>getComputedStyle(W).pointerEvents==="none")),l.size===0)return C();let N=f(),j=N?p(N):y();try{return C()}finally{j(),l=new Set}}function f(){if(a!==void 0)return a;if(a=null,!Array.isArray(document.adoptedStyleSheets)||typeof CSSStyleSheet>"u")return null;try{let C=new CSSStyleSheet;C.replaceSync(cC),a=C}catch(C){H("runtime.picker.site2",C)}return a}function p(C){return document.adoptedStyleSheets=[...document.adoptedStyleSheets,C],()=>{document.adoptedStyleSheets=document.adoptedStyleSheets.filter(N=>N!==C)}}function y(){let C=document.createElement("style");return C.textContent=Og,(document.head??document.documentElement).appendChild(C),()=>C.remove()}function b(C,N){let j=N.getComputedStyle(C),W=Number.parseFloat(j.opacity||"1");if(Number.isFinite(W)&&W<.2&&!(C.textContent??"").trim()){let q=j.backgroundImage;if(q&&q!=="none")return!0}return F(C,N)}function g(C){if(C.namespaceURI!=="http://www.w3.org/2000/svg")return!1;let N=C.tagName.toLowerCase();return N==="filter"||N==="defs"||N.startsWith("fe")}function v(C){if(C.namespaceURI!=="http://www.w3.org/2000/svg"||C.tagName.toLowerCase()!=="rect")return!1;let N=(C.getAttribute("filter")??"").trim();return N&&N!=="none"?!0:(C.ownerDocument.defaultView?.getComputedStyle(C).filter??"none").startsWith("url(")}function E(C){if((C.textContent??"").trim())return!1;if(g(C)||v(C))return!0;let N=[...C.children];return N.length>0&&N.every(j=>E(j))}function _(C,N){let j=Number.parseFloat(N.getComputedStyle(C).opacity||"1");return Number.isFinite(j)&&j<.2}function F(C,N){if(!E(C))return!1;for(let j=C;j&&j!==document.body&&j!==document.documentElement;j=j.parentElement)if(_(j,N)&&E(j))return!0;return!1}function D(C){let N=C.ownerDocument.defaultView;if(!N)return!1;let j=C;if(N.getComputedStyle(C).visibility==="hidden"||b(C,N))return!0;for(;j&&j!==document.body&&j!==document.documentElement;){let W=N.getComputedStyle(j);if(W.display==="none"||W.pointerEvents==="none")return!0;let U=Number.parseFloat(W.opacity);if(Number.isFinite(U)&&U<=.01&&!j.hasAttribute($n))return!0;j=j.parentElement}return!1}function k(C){if(!C||C===document.body||C===document.documentElement)return!1;let N=C.tagName.toLowerCase();return!(N==="script"||N==="style"||N==="link"||N==="meta"||l.has(C)||C.closest(lC)||D(C))}function w(C){return!!C?.closest(uC)}function L(C){let N=C.parentElement?.getAttribute("data-composition-id");return!C.hasAttribute("data-hf-inner-root")||!N?null:`[data-composition-id="${CSS.escape(N)}"] > [data-hf-inner-root]`}function O(C){let N=L(C);if(N)return N;let j=C;if(j.id)return`#${CSS.escape(j.id)}`;let W=C.getAttribute("data-composition-id");if(W)return`[data-composition-id="${CSS.escape(W)}"]`;let U=C.getAttribute("data-composition-src");if(U)return`[data-composition-src="${CSS.escape(U)}"]`;let q=C.getAttribute("data-track-index");if(q)return`[data-track-index="${CSS.escape(q)}"]`;let re=C.tagName.toLowerCase(),oe=C.parentElement;if(!oe)return re;let J=oe.querySelectorAll(`:scope > ${re}`);if(J.length===1)return re;for(let Q=0;Q<J.length;Q+=1)if(J[Q]===C)return`${re}:nth-of-type(${Q+1})`;return re}function K(C){let N=C.tagName.toLowerCase(),j=(C.textContent??"").trim().replace(/\s+/g," "),W=(q,re)=>{let oe=Array.from(q);return oe.length>re?`${oe.slice(0,re-1).join("")}\u2026`:q},U=/^h[1-6]$/.test(N);return U||N==="p"||N==="span"||N==="div"?j.length>0?W(j,56):U?"Heading":"Text":N==="img"?"Image":N==="video"?"Video":N==="audio"?"Audio":N==="svg"?"Shape":C.getAttribute("data-composition-src")?"Composition":N==="section"?"Section":`${N.charAt(0).toUpperCase()}${N.slice(1)}`}function Z(C,N,j){let W=typeof j=="number"&&j>0?j:8,U=[];if(document.elementsFromPoint)U=document.elementsFromPoint(C,N);else if(document.elementFromPoint){let Q=document.elementFromPoint(C,N);U=Q?[Q]:[]}if(w(U[0]??null))return[];let q={},re=[],oe=[],J=Dg(document,C,N);for(let[Q,Y]of U.entries()){if(!k(Y))continue;let Ne=`${Y.tagName}::${Y.id||""}::${Q}`;if(!q[Ne]&&(q[Ne]=!0,re.push(Y),(oe.some(tt=>Y.contains(tt))||J(Y))&&(oe.push(Y),oe.length>=W)))break}return oe.length>0?oe:re.slice(0,W)}function ae(C){let N=C.getBoundingClientRect(),j={};for(let U of Array.from(C.attributes))U.name.startsWith("data-")&&(j[U.name]=U.value);return{id:C.id||null,tagName:C.tagName.toLowerCase(),selector:O(C),label:K(C),boundingBox:{x:N.left,y:N.top,width:N.width,height:N.height},textContent:C.textContent?C.textContent.trim().slice(0,200):null,src:C.getAttribute("src")||C.getAttribute("data-composition-src")||null,dataAttributes:j}}function ne(C,N,j){return m(()=>Z(C,N,j)).map(ae)}function P(C){if(!t)return;let N=m(()=>{let W=Z(C.clientX,C.clientY,1)[0]??(Ie(C.target)?C.target:null);return k(W)?W:null});if(!N||n===N)return;n&&n.classList.remove("__hf-pick-highlight"),n=N,N.classList.add("__hf-pick-highlight");let j=ae(N);c(j),e.postMessage({source:"hf-preview",type:"element-hovered",elementInfo:j})}function R(C){if(!t)return;C.preventDefault(),C.stopPropagation(),C.stopImmediatePropagation();let N=ne(C.clientX,C.clientY,8);N.length!==0&&(c(N[0]??null),e.postMessage({source:"hf-preview",type:"element-pick-candidates",candidates:N,selectedIndex:0,point:{x:C.clientX,y:C.clientY}}))}function M(C){C.key==="Escape"&&(V(),e.postMessage({source:"hf-preview",type:"pick-mode-cancelled"}))}function z(){t||(t=!0,r=document.createElement("style"),r.textContent=[".__hf-pick-highlight { outline: 2px solid #4f8cf7 !important; outline-offset: 2px; cursor: crosshair !important; }",".__hf-pick-active * { cursor: crosshair !important; }"].join(`
|
|
42
|
-
`),document.head.appendChild(r),document.body.classList.add("__hf-pick-active"),document.addEventListener("mousemove",P,!0),document.addEventListener("click",R,!0),document.addEventListener("keydown",M,!0),s("hyperframe:picker:mode",{isPickMode:!0,timestamp:Date.now()}))}function V(){t&&(t=!1,n&&(n.classList.remove("__hf-pick-highlight"),n=null),r&&(r.remove(),r=null),document.body.classList.remove("__hf-pick-active"),document.removeEventListener("mousemove",P,!0),document.removeEventListener("click",R,!0),document.removeEventListener("keydown",M,!0),s("hyperframe:picker:mode",{isPickMode:!1,timestamp:Date.now()}))}function ee(){window.__HF_PICKER_API={enable:z,disable:V,isActive:()=>t,getHovered:()=>i,getSelected:()=>o,getCandidatesAtPoint:(C,N,j)=>Number.isFinite(C)&&Number.isFinite(N)?ne(C,N,j):[],pickAtPoint:(C,N,j)=>{if(!Number.isFinite(C)||!Number.isFinite(N))return null;let W=ne(C,N,8);if(!W.length)return null;let U=Math.max(0,Math.min(W.length-1,Number(j??0))),q=W[U]??null;return q?(d(q),e.postMessage({source:"hf-preview",type:"element-picked",elementInfo:q}),V(),q):null},describe:C=>Ie(C)?ae(C):null,pickManyAtPoint:(C,N,j)=>{if(!Number.isFinite(C)||!Number.isFinite(N))return[];let W=ne(C,N,8);if(!W.length)return[];let U=[],q=Array.isArray(j)?j:[0];for(let re of q){let oe=Math.max(0,Math.min(W.length-1,Math.floor(Number(re)))),J=W[oe];if(!J)continue;U.some(Y=>Y.selector===J.selector&&Y.tagName===J.tagName)||U.push(J)}return U.length?(d(U[0]??null),e.postMessage({source:"hf-preview",type:"element-picked-many",elementInfos:U}),V(),U):[]}},s("hyperframe:picker:api-ready",{hasApi:!0,timestamp:Date.now()})}return{enablePickMode:z,disablePickMode:V,installPickerApi:ee}}function Gi(e,t,n){let r=e?.[t];return typeof r=="function"?Number(r.call(e))||n:typeof r=="number"&&Number.isFinite(r)?r:(r!=null&&H("runtime.player.nonConformantNum",{prop:t,actual:typeof r}),n)}function Et(e,t){let n=e?.[t];if(typeof n=="function"){n.call(e);return}n!==void 0&&H("runtime.player.nonConformantVoid",{method:t,actual:typeof n})}function Bi(e,t,n){if(e){for(let r of Object.values(e))if(!(!r||r===t))try{n(r)}catch(i){H("runtime.player.site1",i)}}}function $a(e,t,n){return n?.exact===!0?Number.isFinite(e)&&e>0?e:0:fh(e,t,n?.subFrameDivisions)}function Gg(e,t,n,r){let i=$a(t,n,r),o=r?.suppressEvents===!0;return Et(e,"pause"),typeof e.totalTime=="function"?e.totalTime(i,o):typeof e.seek=="function"&&e.seek(i,o),i}function dC(e,t,n,r,i){let o=[];Bi(e,t,a=>{Et(a,"play"),o.push(a)});try{return Gg(t,n,r,i)}finally{for(let a of o)try{Et(a,"pause")}catch(l){H("runtime.player.site2",l)}}}function fC(e,t){Bi(e,t,n=>{Et(n,"play")})}function Bg(e){let t=e.transport;return t?{_timeline:null,play:()=>t.play(),pause:()=>t.pause(),seek:(n,r)=>t.seek(n,r),renderSeek:(n,r)=>t.renderSeek(n,r),getTime:()=>t.getTime(),getDuration:()=>t.getDuration(),isPlaying:()=>t.isPlaying(),setPlaybackRate:n=>t.setPlaybackRate(n),getPlaybackRate:()=>t.getPlaybackRate()}:{_timeline:null,play:()=>{let n=e.getTimeline();if(!n||e.getIsPlaying())return;let r=Math.max(0,Number(e.getSafeDuration?.()??Gi(n,"duration",0))||0);r>0&&Math.max(0,Gi(n,"time",0))>=r&&(Et(n,"pause"),typeof n.seek=="function"&&n.seek(0,!1),e.onDeterministicSeek(0),e.setIsPlaying(!1),e.onSyncMedia(0,!1),e.onRenderFrameSeek(0)),typeof n.timeScale=="function"&&n.timeScale(e.getPlaybackRate()),Et(n,"play"),Bi(e.getTimelineRegistry?.(),n,i=>{typeof i.timeScale=="function"&&i.timeScale(e.getPlaybackRate()),Et(i,"play")}),e.onDeterministicPlay(),e.setIsPlaying(!0),e.onShowNativeVideos(),e.onStatePost(!0)},pause:()=>{let n=e.getTimeline();if(!n)return;Et(n,"pause"),Bi(e.getTimelineRegistry?.(),n,i=>{Et(i,"pause")});let r=Math.max(0,Gi(n,"time",0));e.onDeterministicSeek(r),e.onDeterministicPause(),e.setIsPlaying(!1),e.onSyncMedia(r,!1),e.onRenderFrameSeek(r),e.onStatePost(!0)},seek:(n,r)=>{let i=e.getTimeline();if(!i)return;let o=Math.max(0,Number(n)||0),a=e.getIsPlaying(),l=dC(e.getTimelineRegistry?.(),i,o,e.getCanonicalFps());e.onDeterministicSeek(l),r?.keepPlaying&&a?(typeof i.timeScale=="function"&&i.timeScale(e.getPlaybackRate()),Et(i,"play"),Bi(e.getTimelineRegistry?.(),i,s=>{typeof s.timeScale=="function"&&s.timeScale(e.getPlaybackRate()),Et(s,"play")}),e.onDeterministicPlay(),e.onShowNativeVideos(),e.onSyncMedia(l,!0)):(e.setIsPlaying(!1),e.onSyncMedia(l,!1)),e.onRenderFrameSeek(l),e.onStatePost(!0)},renderSeek:(n,r)=>{let i=e.getTimeline(),o=e.getCanonicalFps(),a=i?(fC(e.getTimelineRegistry?.(),i),Gg(i,n,o,r)):$a(Math.max(0,Number(n)||0),o,r);e.onDeterministicSeek(a,r),e.setIsPlaying(!1),e.onSyncMedia(a,!1),e.onRenderFrameSeek(a),e.onStatePost(!0)},getTime:()=>Gi(e.getTimeline(),"time",0),getDuration:()=>Gi(e.getTimeline(),"duration",0),isPlaying:()=>e.getIsPlaying(),setPlaybackRate:n=>e.setPlaybackRate(n),getPlaybackRate:()=>e.getPlaybackRate()}}function Ou(){return{capturedTimeline:null,isPlaying:!1,currentTime:0,deterministicAdapters:[],canonicalFps:30,bridgeMuted:!1,bridgeVolume:1,mediaOutputMuted:!1,nativeMediaSyncDisabled:!1,webAudioMediaDisabled:!1,mediaAutoplayBlockedPosted:!1,mediaForceSyncNextTick:!1,playbackRate:1,bridgeLastPostedFrame:-1,bridgeLastPostedAt:0,bridgeLastPostedPlaying:!1,bridgeLastPostedMuted:!1,bridgeMaxPostIntervalMs:80,controlBridgeHandler:null,beforeUnloadHandler:null,injectedCompStyles:[],injectedCompScripts:[],injectedCompLinks:[],cachedTimedMediaEls:[],cachedMediaClips:[],cachedVideoClips:[],cachedMediaTimelineDurationSeconds:0,tornDown:!1,transportClock:null,transportRafId:null}}function zn(e){if(e==null||e.trim()==="")return null;let t=Number.parseFloat(e);return Number.isFinite(t)&&t>0?t:null}function Lr(e){if(e==null||e.trim()==="")return null;let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:null}function At(e=document){let t=e.querySelector('[data-composition-id][data-root="true"]');return Se(t)?t:e.querySelector("[data-composition-id]")}var mC=new Set(["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"]);function Hu(e){return e.id||e.getAttribute("data-hf-id")||null}function pC(e){return Oe(e)}function hC(e,t){let n=e.getAttribute("data-composition-id");if(!n)return null;let r=Jt(t[n]);return r!=null&&r>0?r:null}function gC(e){return pe(e)?Number.isFinite(e.duration)?It(e,e.duration):null:hr(e)}function bC(e,t,n,r){let i=pC(e.getAttribute("data-duration"));return i!=null&&i>0?i:hC(e,t)??gC(e)??Math.max(0,n-r)}function xC(e){for(let[t,n]of e){let r=t.parentElement;for(;r;){let i=e.get(r);if(i){n.parentId=i.id,i.children.push(n);break}r=r.parentElement}}}function Ug(e){let{startResolver:t,timelineRegistry:n,rootDuration:r}=e,i=new Map,o=At(),a=0;for(let l of document.querySelectorAll("[data-start]")){if(l===o||mC.has(l.tagName))continue;let s=t.resolveStartForElement(l,0);if(bC(l,n,r,s)<=0)continue;let c={id:Hu(l)??`__clip-${a++}`,element:l,parentId:null,children:[]};i.set(l,c)}return xC(i),{roots:Array.from(i.values()).filter(l=>l.parentId===null)}}var Gu="css:root",Wg=["backdrop-filter","clip-path","filter","mask","mask-border-source","mask-image","perspective","rotate","scale","transform","translate","-webkit-mask-image"],yC=new Set([...Wg,"contain","isolation","mask-border","mix-blend-mode","opacity"]),SC=new Set(["absolute","relative"]),vC=new Set(["flex","inline-flex","grid","inline-grid"]),EC=new Set(["layout","paint","strict","content"]),AC=new Set(["size","inline-size"]);function _C(e){return e.position==="fixed"||e.position==="sticky"}function wC(e,t){if(t.zIndex==="auto"||t.zIndex==="")return!1;if(SC.has(t.position))return!0;let n=e.parentElement?e.ownerDocument.defaultView?.getComputedStyle(e.parentElement).display:null;return n!=null&&vC.has(n)}function CC(e){let t=Number.parseFloat(e.opacity);if(Number.isFinite(t)&&t<1||e.getPropertyValue("isolation")==="isolate")return!0;let n=e.getPropertyValue("mix-blend-mode");return n&&n!=="normal"?!0:Wg.some(r=>{let i=e.getPropertyValue(r);return i!==""&&i!=="none"})}function TC(e){return e.getPropertyValue("contain").split(/\s+/).some(n=>EC.has(n))?!0:AC.has(e.getPropertyValue("container-type"))}function RC(e){return e.getPropertyValue("will-change").split(",").map(t=>t.trim()).some(t=>yC.has(t))}function MC(e,t){return e.hasAttribute(st)||_C(t)||wC(e,t)||CC(t)||TC(t)?!0:RC(t)}function kC(e){let t=[],n=e;for(;n?.parentElement;)t.push(Array.prototype.indexOf.call(n.parentElement.children,n)),n=n.parentElement;return`css:${t.reverse().join(".")}`}function qa(e,t){let n=t?.get(e.parentElement);if(n!==void 0)return n;let r=LC(e);return t?.set(e.parentElement,r),r}function LC(e){let t=e.ownerDocument.defaultView;if(!t)return Gu;let n=e.parentElement;for(;n&&n!==e.ownerDocument.documentElement;){try{if(MC(n,t.getComputedStyle(n)))return kC(n)}catch{return Gu}n=n.parentElement}return Gu}function Bu(e){let t=e.trim().toLowerCase();return!(!t||t==="main"||t.includes("caption")||t.includes("ambient"))}var Vg=e=>e!==null&&Number.isFinite(e)&&e>0;function Nr(e){let t=e.clipEndsSeconds.filter(r=>r===null).length;if(Vg(e.authoredDurationSeconds))return{seconds:e.authoredDurationSeconds,source:"authored",pendingClips:t};let n=e.clipEndsSeconds.filter(Vg);return n.length>0?{seconds:Math.max(...n),source:"derived",pendingClips:t}:{seconds:null,source:"unresolved",pendingClips:t,reason:t>0?"every clip's length is still pending":"no authored duration and no clip with a length"}}var Fr=7200,Qt=1/60,Ui=e=>e!==null&&e>Qt?e:null;function $g(e){return{width:Lr(e.getAttribute("data-width")),height:Lr(e.getAttribute("data-height"))}}function qg(e,t){let n=[];for(let r of e.querySelectorAll("video[data-start], audio[data-start]")){let i=t.mediaStart(r);if(!Number.isFinite(i))continue;let o=t.mediaDuration(r);o==null||o<=Qt||n.push(Math.max(0,i)+o)}return Ui(Nr({authoredDurationSeconds:null,clipEndsSeconds:n}).seconds)}function zg(e,t){let n=[];for(let i of e.querySelectorAll("[data-composition-id][data-start]")){if(i.parentElement?.closest("[data-composition-id]")!==e)continue;let o=t.resolveStartForElement(i,0),a=t.resolveDurationForElement(i);!Number.isFinite(o)||a==null||a<=0||n.push(Math.max(0,o)+a)}let r=Oe(e.getAttribute("data-duration"));return Ui(Nr({authoredDurationSeconds:null,clipEndsSeconds:[r,...n]}).seconds)}var NC=e=>e.hasAttribute("data-composition-id")||e.hasAttribute("data-composition-src");function jg(e,t,{unregisteredLottie:n}){let r=[];for(let o of e.querySelectorAll("[data-start]")){let a=t.resolveStartForElement(o,0);if(!Number.isFinite(a))continue;let l=t.resolveDurationForElement(o);l!=null?r.push(Math.max(0,a)+l):(pe(o)||NC(o))&&r.push(null)}(n||e.querySelector("[data-lottie-src]"))&&r.push(null);let i=Nr({authoredDurationSeconds:null,clipEndsSeconds:r});return i.pendingClips>0?{...i,seconds:null,source:"unresolved",reason:"a clip's length is pending"}:i}function Kg(e){if(e.declared!==null&&Number.isFinite(e.declared)&&e.declared>0)return e.declared;let t=Ui(e.timeline()),n=Math.max(0,...e.floors().map(s=>s??0)),r=Number.isFinite(e.fallback)&&e.fallback>Qt?e.fallback:0,i=Math.max(n,r),a=t!==null&&t>=Fr&&Ui(i)!==null?null:t,l;return a!==null?l=Math.max(a,i):Ui(n)!==null?l=i:r>0?l=r:l=e.derived(),l>0?l:0}function $u(e,t){let n=e.tagName.toLowerCase();if(n==="script"||n==="style"||n==="link"||n==="meta")return null;let i=n==="video"||n==="audio"?t.resolver.resolveMediaStartForElement(e):t.resolver.resolveStartForElement(e,0),o=t.resolver.resolveDurationForElement(e),a=e.getAttribute("data-composition-id");if(a){let l=t.timelineRegistry[a],s=Jt(l);!(e.hasAttribute("data-duration")||e.hasAttribute("data-end")||e.hasAttribute(gr)||e.hasAttribute(br))&&(o==null||o<=0)&&s!=null&&s>0&&(o=s)}return{start:i,end:o!=null&&o>0?i+o:Number.POSITIVE_INFINITY}}function za(e,t){let n=$u(e,t);if(!n)return!1;let r=t.exportRenderSeek?Ta(n.start,n.end,t.canonicalFps):n;return Sr(t.currentTime,r.start,r.end,t.compositionDuration)}function Vi(e){return Oe(e)}function Uu(e){let t=e.getAttribute("data-duration"),n=e.getAttribute(gr),r=xr({start:0,duration:t,authoredDuration:n})?.duration;return r??([t,n].map(Vi).some(o=>o!=null&&o<=0)?0:null)}function Yg(e){return xr({start:0,end:e.getAttribute("data-end"),authoredEnd:e.getAttribute(br)})?.end??null}function Wu(e){try{let t=e.style?.zIndex;if(t&&t!=="auto"){let n=parseInt(t,10);if(Number.isFinite(n))return n}return 0}catch{return 0}}function Vu(...e){let t=e.filter(n=>Number.isFinite(n??null));return t.length===0?null:Math.max(...t)}function Ir(e,t){let n=e.getAttribute("data-track-index")??e.getAttribute("data-track");if(n==null)return t;let r=Number.parseInt(n,10);return Number.isFinite(r)?r:t}function $i(e){let t=String(e??"").trim();if(!t)return null;let n=t.toLowerCase();if(n.startsWith("data:")||n.startsWith("javascript:"))return null;try{return new URL(t,document.baseURI).toString()}catch{return t}}function Xg(e){let t=e.getAttribute("src")??e.getAttribute("data-src");if(t)return $i(t);let n=e.getAttribute("data-composition-src");if(n)return $i(n);let r=e.querySelector("img[src], video[src], audio[src], source[src]");return r?$i(r.getAttribute("src")):null}function IC(e){let t=e.className;return typeof t!="string"?null:t.split(/\s+/).map(n=>n.trim()).find(n=>n&&n!=="clip"&&!n.startsWith("__hf-"))??null}function DC(e){if(!e)return null;let t;try{t=new URL(e,document.baseURI).pathname.split("/").filter(Boolean).at(-1)}catch{t=e.replace(/[?#].*$/,"").split(/[\\/]/).filter(Boolean).at(-1)}if(!t)return null;try{return decodeURIComponent(t)}catch{return t}}function PC(e){let t=e.textContent?.replace(/\s+/g," ").trim();return t?t.length>32?`${t.slice(0,31)}...`:t:null}function Wi(e){let t=e.replace(/\.[^.]+$/i,"").replace(/[-_]+/g," ").replace(/\s+/g," ").trim();return t?t.replace(/\b\w/g,n=>n.toUpperCase()):e}function Jg(e){return e.getAttribute("data-hf-original-composition-id")??e.getAttribute("data-composition-id")}function OC(e,t,n){let r=e.getAttribute("data-timeline-label")??e.getAttribute("data-label")??e.getAttribute("aria-label")??null;if(r?.trim())return r.trim();let i=Jg(e);if(i)return Wi(i);let o=e.id;if(o)return Wi(o);let a=IC(e);if(a)return Wi(a);let l=DC(Xg(e));if(l)return Wi(l);let s=PC(e);return s||`${Wi(t)} ${n+1}`}function qu(e){let t=new Map,r=window.__timelines??{},i=Qe({timelineRegistry:r,includeAuthoredTimingAttrs:!0}),o=W=>{if(!W)return null;let U=Jt(r[W]);return U!=null&&U>0?U:null},a=()=>{let W=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if(W.length===0)return null;let U=0;for(let q of W){let re=i.resolveMediaStartForElement(q);if(!Number.isFinite(re))continue;let oe=pr(q);oe==null||oe<=0||(U=Math.max(U,Math.max(0,re)+oe))}return U>0?U:null},l=(W,U)=>{let q=[],re=null,oe=null,J=null,Q=W.parentElement;for(;Q;){let Y=Q.getAttribute("data-composition-id");Y&&(q.push(Y),!J&&Q!==U&&(J=Y),re==null&&(re=i.resolveStartForElement(Q,0)),oe==null&&(oe=Vi(Q.getAttribute("data-duration"))??o(Y)??null)),Q=Q.parentElement}return{parentCompositionId:J,compositionAncestors:q.reverse(),inheritedStart:re,inheritedDuration:oe}},s=At(),c=Array.from(document.querySelectorAll("[data-composition-id]")),d=s?.getAttribute("data-composition-id")??null,m=s?i.resolveStartForElement(s,0):0,f=a(),p=f!=null?Math.max(0,f-Math.max(0,m)):null,y=o(d),b=Uu(s??document.body),g=Vu(...c.filter(W=>W!==s).map(W=>{let U=i.resolveStartForElement(W,0),q=i.resolveDurationForElement(W)??o(W.getAttribute("data-composition-id"))??null;return!Number.isFinite(U)||q==null||q<=0?null:Math.max(0,U)+q})),v=g!=null?Math.max(0,g-Math.max(0,m)):null,E=typeof y=="number"&&Number.isFinite(y)&&y>0?y:null,_=typeof b=="number"&&Number.isFinite(b)&&b>0?b:null,F=typeof p=="number"&&Number.isFinite(p)&&p>0?p:null,D=typeof v=="number"&&Number.isFinite(v)&&v>0?v:null,k=Vu(F,D),w=E!=null&&k!=null&&E>=Fr,O=_??(w?k:Vu(E,F,D))??null,Z=(O!=null?m+O:null)??(typeof f=="number"&&Number.isFinite(f)&&f>0?f:null),ae=(W,U)=>!Number.isFinite(U)||U<=0?0:Z==null||!Number.isFinite(Z)?U:!Number.isFinite(W)||W>=Z?0:Math.max(0,Math.min(U,Z-W)),ne=[],P=[],R=Array.from(document.querySelectorAll("[data-start], [data-track-index], [data-composition-id], video, audio, img")),M=0;for(let[W,U]of R.entries()){if(U===s||["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"].includes(U.tagName))continue;let q=l(U,s),re=U.tagName.toLowerCase(),oe=re==="video"||re==="audio"?i.resolveMediaStartForElement(U):i.resolveStartForElement(U,q.inheritedStart??0),J=U.getAttribute("data-composition-id"),Q=!!J&&J!==d,Y=Uu(U);if(Y==null&&Q&&(Y=o(J)),Y==null&&pe(U)&&Number.isFinite(U.duration)&&(Y=It(U,U.duration)),Y==null&&(Y=hr(U,oe)),Y==null){let De=q.inheritedDuration;if(De!=null&&De>0){let ie=(q.inheritedStart??0)+De;Y=Math.max(0,ie-oe)}}if(Y==null||Y<=0||(Y=ae(oe,Y),Y<=0))continue;let Ne=i.resolveHostSlotsForElement(U);if(Ne.length>0){let De=Vn({start:oe,end:oe+Y},Ne),X=Q;if(De.end<=De.start&&!X)continue;oe=De.start,Y=De.end-De.start}let tt=oe+Y;M=Math.max(M,tt);let bt=J&&J!==d?"composition":re==="video"?"video":re==="audio"?"audio":re==="img"?"image":"element";ne.push({id:Hu(U)??J??null,label:OC(U,bt,ne.length),start:oe,duration:Y,track:Ir(U,W),zIndex:Wu(U),stackingContextId:qa(U,t),kind:bt,tagName:re,compositionId:U.getAttribute("data-composition-id"),compositionAncestors:q.compositionAncestors,parentCompositionId:q.parentCompositionId,nodePath:null,compositionSrc:$i(U.getAttribute("data-composition-src")),playbackStart:Pt(U),playbackRate:rt(U),assetUrl:Xg(U),timelineRole:U.getAttribute("data-timeline-role"),timelineLabel:U.getAttribute("data-timeline-label"),timelineGroup:U.getAttribute("data-timeline-group"),timelinePriority:Vi(U.getAttribute("data-timeline-priority"))})}let z=new Set(ne.map(W=>W.id)),V=s?.getAttribute("data-composition-id")??null,ee=V?r[V]??null:null;if(ee&&s){let W=ee;if(typeof W.getChildren=="function")try{let U=W.getChildren(!0,!0,!1)??[],q=new Map;for(let J of s.children){let Q=J;if(!Q.id)continue;let Y=Q.tagName.toLowerCase();Y==="script"||Y==="style"||Y==="link"||q.set(Q,{id:Q.id,start:1/0,end:-1/0})}let re=J=>{let Q=J;for(;Q;){if(q.has(Q))return Q;if(Q===s)return null;Q=Q.parentElement}return null};for(let J of U){if(typeof J.targets!="function"||typeof J.startTime!="function"||typeof J.duration!="function")continue;let Q=J.startTime(),Y=J.parent;for(;Y&&Y!==ee&&typeof Y.startTime=="function";)Q+=Y.startTime(),Y=Y.parent;let Ne=Q+J.duration();if(!(!Number.isFinite(Q)||!Number.isFinite(Ne)))for(let tt of J.targets()){if(!Ie(tt))continue;let bt=re(tt);if(!bt)continue;let De=q.get(bt);De&&(De.start=Math.min(De.start,Q),De.end=Math.max(De.end,Ne))}}let oe=ne.length>0?Math.max(...ne.map(J=>J.track))+1:0;for(let[J,Q]of q){if(Q.start===1/0||Q.end===-1/0)continue;let Y=J;if(z.has(Y.id))continue;let Ne=Math.max(0,Q.end-Q.start);if(Ne<=0)continue;let tt=ae(Q.start,Ne);tt<=0||(M=Math.max(M,Q.start+tt),ne.push({id:Y.id,label:Y.getAttribute("data-timeline-label")??Y.getAttribute("data-label")??Y.getAttribute("aria-label")??Y.id,start:Q.start,duration:tt,track:Ir(Y,oe),zIndex:Wu(Y),stackingContextId:qa(Y,t),kind:"element",tagName:Y.tagName.toLowerCase(),compositionId:Y.getAttribute("data-composition-id"),compositionAncestors:V?[V]:[],parentCompositionId:V,nodePath:null,compositionSrc:null,playbackStart:Pt(Y),playbackRate:rt(Y),assetUrl:null,timelineRole:Y.getAttribute("data-timeline-role"),timelineLabel:Y.getAttribute("data-timeline-label"),timelineGroup:Y.getAttribute("data-timeline-group"),timelinePriority:Vi(Y.getAttribute("data-timeline-priority"))}),z.add(Y.id))}}catch(U){H("runtime.timeline.site1",U)}}if(s&&O!=null&&O>0){let W=ne.length>0?Math.max(...ne.map(U=>U.track))+1:0;for(let U of s.children){let q=U;if(!q.id||z.has(q.id))continue;let re=q.getAttribute("data-timeline-role");if(re!=="overlay"&&re!=="persistent-overlay")continue;let oe=q.tagName.toLowerCase();if(oe==="script"||oe==="style"||oe==="link"||oe==="meta"||window.getComputedStyle(q).display==="none")continue;let Q=ae(0,O);Q<=0||(M=Math.max(M,Q),ne.push({id:q.id,label:q.getAttribute("data-timeline-label")??q.getAttribute("data-label")??q.getAttribute("aria-label")??q.id,start:0,duration:Q,track:Ir(q,W),zIndex:Wu(q),stackingContextId:qa(q,t),kind:"element",tagName:oe,compositionId:q.getAttribute("data-composition-id"),compositionAncestors:V?[V]:[],parentCompositionId:V,nodePath:null,compositionSrc:null,playbackStart:Pt(q),playbackRate:rt(q),assetUrl:null,timelineRole:re,timelineLabel:q.getAttribute("data-timeline-label"),timelineGroup:q.getAttribute("data-timeline-group"),timelinePriority:Vi(q.getAttribute("data-timeline-priority"))}),z.add(q.id))}}for(let W of c){if(W===s)continue;let U=W.getAttribute("data-composition-id");if(!U||!Bu(U))continue;let q=i.resolveStartForElement(W,0),re=Uu(W);if((re==null||re<=0)&&Yg(W)!=null){let Y=Yg(W);re=Math.max(0,Y-q)}let oe=o(U),J=re&&re>0?re:oe;if(J==null||J<=0)continue;let Q=ae(q,J);Q<=0||P.push({id:U,label:W.getAttribute("data-label")??Jg(W)??U,start:q,duration:Q,thumbnailUrl:$i(W.getAttribute("data-thumbnail-url")),avatarName:null})}let C=Math.max(M||0,O??0),N=C>0?C:1,j=Math.max(1,Math.ceil(N*Math.max(1,e.canonicalFps)));return{...ia(e.canonicalFps),source:"hf-preview",type:"timeline",compositionContractVersion:1,durationSeconds:N,durationInFrames:j,clips:ne,scenes:P,compositionWidth:Lr(s?.getAttribute("data-width"))??1920,compositionHeight:Lr(s?.getAttribute("data-height"))??1080}}var ju="data-composition-id",HC="data-composition-src",GC=`[${ju}]`,a2=`[${HC}]`,Ku="style",Qg="script",Yu='link[rel="stylesheet"], link[rel="preconnect"]',BC=new Set(["","application/ecmascript","application/javascript","application/x-ecmascript","application/x-javascript","text/ecmascript","text/javascript","text/javascript1.0","text/javascript1.1","text/javascript1.2","text/javascript1.3","text/javascript1.4","text/javascript1.5","text/jscript","text/livescript","text/x-ecmascript","text/x-javascript"]),UC=e=>(e.getAttribute("type")||"").trim().toLowerCase();function Zg(e){let t=UC(e);return t==="module"||t==="importmap"?!0:BC.has(t)&&e.getAttribute("nomodule")===null}function zu(e){return Sn(e?.querySelectorAll(Qg)).filter(t=>!Zg(t))}function Xu(e){return Sn(e?.querySelectorAll(Qg)).filter(Zg)}function e0(e){return[...Sn(e.querySelectorAll(`${Ku}, ${Yu}`)),...Xu(e)]}function Sn(e){return e?Array.from(e):[]}function t0(e){let{contentNode:t,head:n,documentElement:r,hasTemplate:i,compositionId:o}=e,a=Sn(t.querySelectorAll(GC)),l=o?a.find(m=>m.getAttribute(ju)===o)??null:a[0]??null,s=(l??a[0])?.getAttribute(ju)?.trim()||"",c=i?null:n??null,d=l?zu(l):[];return{innerRoot:l,authoredCompositionId:o||s||null,scriptCompositionId:s||o||null,authoredRootId:l?.getAttribute("id")?.trim()||null,styleSources:[...Sn(c?.querySelectorAll(Ku)),...Sn(t.querySelectorAll(Ku))],scriptSources:[...Xu(c),...Xu(t)],linkSources:[...Sn(n?.querySelectorAll(Yu)),...Sn(t.querySelectorAll(Yu))],inertScriptsOutsideRoot:[...zu(c),...l?zu(t).filter(m=>!d.includes(m)):[]],variableDefaultCarriers:[r,l].filter(m=>m!=null)}}function n0(e,t){let n=t[0]?.ownerDocument.querySelector("[data-composition-id]"),r=n&&!t.includes(n)?n.getAttribute("data-composition-id"):null,i=r?e.get(r):void 0;r&&i&&e.set(r,i+1)}var WC='"use strict";(()=>{function I(e){return e?/[\\w-]/.test(e)||e.charCodeAt(0)>=128:!1}function _(e){return e===" "||e===" "||e===`\n`||e==="\\r"||e==="\\f"}var j=/^[0-9a-fA-F]{1,6}/;function G(e){let n=e>=55296&&e<=57343;return e===0||e>1114111||n?65533:e}function $(e,n){return e[n]==="\\r"&&e[n+1]===`\n`?n+2:_(e[n])?n+1:n}function R(e,n){let t=e[n+1];if(t===void 0||/[\\n\\r\\f]/.test(t))return null;let i=j.exec(e.slice(n+1,n+7));if(!i)return{value:t,end:n+2};let o=G(Number.parseInt(i[0],16));return{value:String.fromCodePoint(o),end:$(e,n+1+i[0].length)}}function H(e,n){let t=o=>I(o)&&!/[0-9-]/.test(o),i=o=>e[o]==="\\\\"&&R(e,o)!==null;return e[n]==="-"?e[n+1]==="-"||t(e[n+1])||i(n+1):t(e[n])||i(n)}function y(e,n){let t=n;for(;e.startsWith("/*",t);){let i=e.indexOf("*/",t+2);t=i<0?e.length:i+2}return t}function A(e,n){let t=y(e,n);for(;_(e[t]);)t=y(e,t+1);return t}function h(e,n){if(!H(e,n))return null;let t=n,i="";for(;t<e.length;){let o=e[t];if(o==="\\\\"){let a=R(e,t);if(!a)break;i+=a.value,t=a.end;continue}if(!I(o))break;i+=o,t+=1}return t===n?null:{value:i,end:t}}var C=45;function T(e){return e>=48&&e<=57}function z(e){return e>=128||e===C||e===95||T(e)||e>=65&&e<=90||e>=97&&e<=122}function J(e,n){let t=e.charCodeAt(n);return t>=1&&t<=31||t===127?!0:T(t)?n===0||n===1&&e.charCodeAt(0)===C:!1}function k(e){let n="";for(let t=0;t<e.length;t+=1){let i=e.charCodeAt(t),o=e[t];i===0?n+="\\uFFFD":J(e,t)?n+=`\\\\${i.toString(16)} `:t===0&&e.length===1&&i===C?n+=`\\\\${o}`:z(i)?n+=o:n+=`\\\\${o}`}return n}var W=/\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|\\\\(?:[0-9a-fA-F]{1,6}(?:\\r\\n|[ \\t\\r\\n\\f])?|[\\s\\S])|"(?:[^"\\\\]|\\\\[\\s\\S])*"|\'(?:[^\'\\\\]|\\\\[\\s\\S])*\'|\\[(?:\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|\\\\[\\s\\S]|"(?:[^"\\\\]|\\\\[\\s\\S])*"|\'(?:[^\'\\\\]|\\\\[\\s\\S])*\'|[^\\]"\'\\\\/]|\\/(?!\\*))*\\]/g;function Q(e){let n=new Array(e.length).fill(!0);for(let t of e.matchAll(W)){let i=t.index;n.fill(!1,i,i+t[0].length)}return n}function q(e,n,t){if(n.length===0||!e.includes("#"))return e;let i=new Set(n),o=Q(e),a="",u=0;for(;u<e.length;){let d=o[u]&&e[u]==="#"?h(e,u+1):null;d&&i.has(d.value)?(a+=t(d.value),u=d.end):(a+=e[u],u+=1)}return a}function X(e){let n="";for(let t=0;t<e.length;t+=1){if(e[t]==="\\\\"){let i=e[t+1];if(i!==void 0&&/[\\n\\r\\f]/.test(i)){t=$(e,t+1)-1;continue}let o=R(e,t);if(o){n+=o.value,t=o.end-1;continue}}n+=e[t]}return n}function N(e){return Array.from(e,n=>{let t=n.charCodeAt(0);return t===0?"\\uFFFD":t<32||t===127?`\\\\${t.toString(16)} `:n===\'"\'||n==="\\\\"?`\\\\${n}`:n}).join("")}function Y(e,n){return e?{kind:"any"}:n===void 0?{kind:"none"}:{kind:"named",prefix:n}}function Z(e,n){return e[n]==="|"&&e[n+1]!=="="}function B(e,n){let t=e[n]==="*",i=t?{value:"*",end:n+1}:h(e,n),o=y(e,i?.end??n);if(!Z(e,o))return t?null:i?{token:i,namespace:{kind:"none"}}:null;let a=h(e,y(e,o+1));return a?{token:a,namespace:Y(t,i?.value)}:null}function K(e){if(e[0]!=="[")return null;let n=A(e,1),t=B(e,n);if(!t)return null;let{token:i,namespace:o}=t;return{name:i.value,rawName:e.slice(n,i.end),namespace:o,end:i.end}}function ee(e,n){let t=/^(?:"((?:\\\\[\\s\\S]|[^"\\\\])*)"|\'((?:\\\\[\\s\\S]|[^\'\\\\])*)\')/.exec(e.slice(n));return t?{value:X(t[1]??t[2]),end:n+t[0].length}:h(e,n)}function ne(e,n){let t=A(e,n),i=h(e,t);if(i){if(!/^[is]$/i.test(i.value))return null;t=A(e,i.end)}return e[t]!=="]"||t!==e.length-1?null:{flag:i?.value}}function F(e){let n=K(e);if(!n)return null;let t=A(e,n.end),o=["=","~=","|=","^=","$=","*="].find(d=>e.startsWith(d,t));if(!o)return null;let a=ee(e,A(e,t+o.length));if(!a)return null;let u=ne(e,a.end);return u?{name:n.name,rawName:n.rawName,namespace:n.namespace,operator:o,value:a.value,flag:u.flag}:null}function E(e,n){return e.replace(W,t=>t.startsWith("[")?n(t):t)}var re="data-hf-svg-reference-aliases";function O(e,n,t,i){let o={"=":(s,r)=>s===r,"~=":(s,r)=>s.split(/[ \\t\\r\\n\\f]+/).includes(r),"|=":(s,r)=>s===r||s.startsWith(r+"-"),"^=":(s,r)=>s.startsWith(r),"$=":(s,r)=>s.endsWith(r),"*=":(s,r)=>s.includes(r)},a=(s,r,l)=>!r&&l!=="="&&l!=="|="?!1:o[l](s,r),u=s=>s.replace(/[A-Z]/g,r=>r.toLowerCase()),d=s=>{let r=F(s);if(!r)return s;let{name:l,rawName:g,namespace:m,operator:b,value:D,flag:w}=r;if(m.kind==="named"!=(i!==void 0))return s;let x=w?.toLowerCase()==="i"?u:S=>S,L=u(l),P=t.filter(S=>{let V=m.kind==="none"?S.name:S.localName,U=m.kind==="named"?i.get(m.prefix):null;return(m.kind==="any"||S.namespaceURI===U)&&u(V)===L}),v=new Set([s]);for(let S of P)a(x(S.before),x(D),b)&&v.add(`[${g}="${N(S.after)}"${w?` ${w}`:""}]`);return v.size===1?s:`:is(${[...v].join(", ")})`};if(i)return E(e,d);let p=new Map(n.map(({id:s,replacement:r})=>[s,r])),f=new Map;for(let s of t){if(s.name!=="id"||s.before===s.after||p.has(s.before))continue;let r=f.get(s.before);r||(r=new Set([`#${k(s.before)}`]),f.set(s.before,r)),r.add(`#${k(s.after)}`)}for(let[s,r]of f)p.set(s,`:is(${[...r].join(", ")})`);let c=q(e,[...p.keys()],s=>p.get(s));return E(c,d)}function se(e,n,t=!0){let i=[],a=(t?[...e.querySelectorAll(`[${n}]`)]:[]).map(d=>d.getAttribute(n)),u=e.getAttribute?.(n);u&&a.unshift(u);for(let d of a){let p;try{p=JSON.parse(d)}catch{continue}if(!Array.isArray(p))continue;let f=p;for(let c of f){if(!ie(c))continue;let{name:s,localName:r,namespaceURI:l,before:g,after:m}=c;i.push({name:s,localName:r,namespaceURI:l,before:g,after:m})}}return i}function ie(e){if(!e||typeof e!="object")return!1;let{name:n,localName:t,namespaceURI:i,before:o,after:a}=e;return typeof n=="string"&&typeof t=="string"&&(i===null||typeof i=="string")&&typeof o=="string"&&typeof a=="string"}function oe(e){let n=[],t=[],i=!1,o,a=new WeakMap,u=(f,c)=>{for(let s of f){if("selectorText"in s){let r=s,l=a.get(r),g=r.selectorText,m=l?.applied===g?l.authored:g,b=O(m,[],t,c);b!==g&&(r.selectorText=b),b===m?a.delete(r):a.set(r,{authored:m,applied:r.selectorText})}"cssRules"in s&&u(s.cssRules,c)}},d=()=>{if(t.length)for(let f of e.document.styleSheets){let c;try{c=f.cssRules}catch{continue}let s=new Map;for(let r of c){if(!("namespaceURI"in r))continue;let{prefix:l,namespaceURI:g}=r;l&&s.set(l,g||null)}s.size&&u(c,s)}},p={rewrite:(f,c=[])=>{if(typeof f!="string"||!f.includes("#")&&!f.includes("["))return f;let s=O(f,c.length?[...c,...n]:n,t);if(s!==f){if(!o){let r=e.document.createElement("div");o=r.matches.bind(r)}o(f)}return s},refresh(){t=se(e.document,re).filter(r=>r.before!==r.after);let f=new Set(t.filter(r=>r.name==="id").map(r=>r.before)),c=new Set;n=[];for(let r of e.document.querySelectorAll("[data-hf-authored-id][id]")){let l=r.getAttribute("data-hf-authored-id");if(!l||l===r.id||c.has(l)||f.has(l))continue;c.add(l);let g=N(l);n.push({id:l,replacement:`:is(#${k(l)}, [data-hf-authored-id="${g}"])`})}if(d(),i||!n.length&&!t.length)return;let s=e.Element.prototype;s.querySelector=new Proxy(s.querySelector,{apply(r,l,g){return Reflect.apply(r,l,[p.rewrite(g[0])])}}),s.querySelectorAll=new Proxy(s.querySelectorAll,{apply(r,l,g){return Reflect.apply(r,l,[p.rewrite(g[0])])}}),i=!0}};e.__hfSvgSelectorAliases=p,p.refresh()}function M(){let e=window;e.__hfSvgSelectorAliases||oe(e)}M();})();\n';function r0(){return WC}var Le=iA(Nb(),1),us=Le.default,X2=Le.default.stringify,J2=Le.default.fromJSON,Q2=Le.default.plugin,Z2=Le.default.parse,eG=Le.default.list,tG=Le.default.document,nG=Le.default.comment,rG=Le.default.atRule,iG=Le.default.rule,oG=Le.default.decl,aG=Le.default.root,sG=Le.default.CssSyntaxError,lG=Le.default.Declaration,uG=Le.default.Container,cG=Le.default.Processor,dG=Le.default.Document,fG=Le.default.Comment,mG=Le.default.Warning,pG=Le.default.AtRule,hG=Le.default.Result,gG=Le.default.Input,bG=Le.default.Rule,xG=Le.default.Root,yG=Le.default.Node;var vc="data-hf-scene",uo="hf-scene-parts",Ec="data-hf-scene-fonts",Ac=e=>e.match(/@font-face\s*\{[^}]*\}/gi)??[],_c="data-hf-scene-no-swap";var wc="data-hf-authored-id",Fb="data-hf-inner-root";function Cc(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Tc(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function vT(e){let t=e.trim();return t?Array.from(new Set([t,qt(t)])).filter(Boolean):[]}function ET(e,t,n){let r=vT(t);return Xo(e,r,()=>n)}function AT(e,t){let n=t?.trim();return n?ET(e,n,`[${wc}="${Tc(n)}"]`):e}function Ib(e){return`${e}:not(:has([${Fb}])), ${e} > [${Fb}]`}function _T(e,t,n,r,i,o){let a=AT(e,r),l=wT(a,t,n),s=l.trim();if(!s||s==="*")return e;if(/^(html|body|:root)$/i.test(s))return o?Ib(t):e;let c=new RegExp(`\\[\\s*data-composition-id\\s*[\\^\\*\\$]?=\\s*(["'])${Cc(n)}\\1\\s*\\]`,"g");if(c.test(s))return s.replace(c,"").trim()===""?Ib(t):l.replace(c,t);let d=l.match(/^\s*/)?.[0]??"",m=l.match(/\s*$/)?.[0]??"";if(i){let f=r?`[${wc}="${Tc(r)}"]`:null;if(f&&s.startsWith(f)){let p=s.slice(f.length);return`${d}${t}${f}${p}${m}`}}return`${d}${t} ${s}${m}`}function wT(e,t,n){let r=Cc(n),i=String.raw`\[\s*data-composition-id\s*=\s*(?:"${r}"|'${r}')\s*\]`,o=String.raw`\s*\[\s*data-(?:start|duration)\s*=\s*(?:"[^"]*"|'[^']*')\s*\]`;return e.replace(new RegExp(`${i}(?:${o})+`,"g"),t).replace(new RegExp(`(?:${o})+${i}`,"g"),t)}var CT=new Set(["keyframes","-webkit-keyframes","font-face"]);function TT(e){return e?.type==="atrule"}function RT(e){let t=e.parent;for(;t;){if(TT(t)&&CT.has(t.name.toLowerCase()))return!0;t=t.parent}return!1}function MT(e){let t=e.parent;for(;t;){if(t.type==="rule")return!0;t=t.parent}return!1}function Db(e,t,n,r,i){let o=t.trim();if(!e||!o)return e;let a=n||`[data-composition-id="${Tc(o)}"]`,l=kT(e);return l?NT(l,a,o,r,i):""}function kT(e){try{return us.parse(e)}catch{return null}}function LT(e,t){e.walkRules(n=>{RT(n)||MT(n)||t(n)})}function NT(e,t,n,r,i){return LT(e,o=>{o.selectors=o.selectors.map(a=>_T(a,t,n,r,i?.compoundAuthoredRoot,i?.scopeRootSelectors))}),e.toResult({map:!1}).css}var FT="hf-scope-placeholder",CG=`[data-composition-id="${FT}"]`;function pt(e){return JSON.stringify(e).replace(/</g,"\\u003c")}var Pb=`!__hfBaseHyperframes
|
|
41
|
+
`,document.head.appendChild(n)}for(let n of e)try{document.querySelectorAll(n).forEach(o=>{o.classList.add("__hf-flash"),setTimeout(()=>o.classList.remove("__hf-flash"),t)})}catch(r){G("bridge.flashElements.querySelector",r)}}var Fo=e=>4*Number.EPSILON*Math.max(1,Math.abs(e));function Ar(e,t){return!Number.isFinite(e)||!Number.isFinite(t)?e===t:Math.abs(e-t)<=Fo(Math.max(Math.abs(e),Math.abs(t)))}var Yp=(e,t)=>e>=t||Ar(e,t),bn=(e,t,n)=>Yp(e,t)&&e<n&&!Ar(e,n),o_=1e-6,wr=(e,t,n,r)=>bn(e,t,n)||Yp(e,t)&&r>0&&n>=r-o_;var cu=null;function Xp(e){cu=e}function gt(e,t){if(cu)try{cu({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(n){G("runtime.analytics.site1",n)}}function i_(e){let t=e.toLowerCase().replace(/[^a-z0-9]+/g,"-"),n=0,r=t.length;for(;n<r&&t[n]==="-";)n++;for(;r>n&&t[r-1]==="-";)r--;let o=t.slice(n,r);return o.length>0?o:"node"}function _r(e){return`--${i_(e)}`}function Jp(e){let t=new Map;for(let n of e){let r=_r(n),o=t.get(r);o?o.includes(n)||o.push(n):t.set(r,[n])}return[...t.values()].filter(n=>n.length>1)}function Zp(){if(typeof document>"u")return{};let e=new Set;document.documentElement?.hasAttribute("data-composition-variables")&&e.add(document.documentElement);for(let o of Array.from(document.querySelectorAll("[data-composition-variables]")))e.add(o);let t={};for(let o of e)Object.assign(t,Io(o));let n=Pa(),r={...t,...n};for(let o of e)fu(o,r);return r}var Qp=new Set;function eh(e){let t=e?.getAttribute("data-composition-variables");if(!t)return[];let n;try{n=JSON.parse(t)}catch{return[]}return Array.isArray(n)?n.filter(r=>!!r&&typeof r=="object"):[]}function a_(e,t){return t?.trim()||e.getAttribute("data-composition-id")?.trim()||e.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()||"composition"}function s_(e){return Array.isArray(e.options)?e.options.map(t=>t&&typeof t=="object"?t.value:t).filter(t=>typeof t=="string"||typeof t=="number"):[]}function l_(e,t){if(typeof e.id!="string")return null;let n=t[e.id];if(n==null||"default"in e&&String(n)===String(e.default))return null;let r=s_(e);return r.length===0||r.some(o=>String(o)===String(n))?null:{id:e.id,value:n,allowed:r}}function fu(e,t,n){if(!e)return;let r=eh(e);if(r.length===0)return;let o=a_(e,n);for(let i of r){let a=l_(i,t);if(!a)continue;let l=`${o}|${a.id}|${String(a.value)}`;if(Qp.has(l))continue;Qp.add(l);let s="default"in i?JSON.stringify(i.default):"the composition default";globalThis.console.warn(`[hyperframes] runtime_unknown_enum_value: ${o} variable "${a.id}" got ${JSON.stringify(a.value)}, which is not a declared option (${a.allowed.join(", ")}). Rendering ${s} instead.`)}}function Io(e){let t={};for(let n of eh(e))typeof n.id!="string"||!("default"in n)||(t[n.id]=n.default);return t}var du="data-hf-css-vars";function Da(e){return"style"in e&&typeof e.style?.setProperty=="function"}function mu(e,t){if(!Da(e))return;let n=[];for(let[r,o]of Object.entries(t))if(typeof o=="string"&&o!==""||typeof o=="number"){let i=_r(r);e.style.setProperty(i,String(o)),n.push(i)}n.length>0&&e.setAttribute(du,n.join(" "))}function th(e,t,n){let r={};for(let[o,i]of Object.entries(t)){let a=_r(o);((Da(e)?e.style.getPropertyValue(a):"")||(n?n.getComputedStyle(e).getPropertyValue(a):"")).trim()===""&&(r[o]=i)}return r}function nh(e){if(!Da(e))return;let t=e.getAttribute(du);if(t){for(let n of t.split(" "))n.startsWith("--")&&e.style.removeProperty(n);e.removeAttribute(du)}}function rh(e){let t=new Set;e.documentElement?.hasAttribute("data-composition-variables")&&t.add(e.documentElement);for(let o of Array.from(e.querySelectorAll("[data-composition-variables]")))t.add(o);let n=Pa(),r=[];for(let o of t)r.push(...u_(o,n,e.defaultView));for(let o of Jp(r))globalThis.console.warn(`composition variables ${o.join(", ")} collapse to the same CSS property ${_r(o[0]??"")}. Rename one to avoid cross-talk`)}function u_(e,t,n){if(!Da(e))return[];let r=Io(e),o={};for(let[i,a]of Object.entries(r)){if(i in t)continue;let l=_r(i);(e.style.getPropertyValue(l)||(n?n.getComputedStyle(e).getPropertyValue(l):"")).trim()===""&&(o[i]=a)}for(let[i,a]of Object.entries(t))i in r&&(o[i]=a);return mu(e,o),Object.keys(r)}function oh(e){let t=e.getAttribute("data-variable-values");if(!t)return{};let n;try{n=JSON.parse(t)}catch{return{}}return!n||typeof n!="object"||Array.isArray(n)?{}:n}function Pa(){if(typeof window>"u")return{};let e=window.__hfVariables;return!e||typeof e!="object"||Array.isArray(e)?{}:e}function Oa(e,t,n,r){let o=!1;try{e.pause()}catch(i){o=!0,G(r,i)}try{e.currentTime=t}catch(i){G(n,i)}if(o)try{e.pause()}catch(i){G(r,i)}}function ih(e){let t=[],n=(m,p=()=>m.getAnimations())=>{if(typeof m.getAnimations!="function")return[];try{return p()}catch{return[]}},r=m=>{let p=new Map;if(t.length===0)return p;let x=typeof CSSAnimation<"u";for(let b of n(document,m)){if(x&&!(b instanceof CSSAnimation))continue;let y=b.effect;if(!y?.target||y.pseudoElement)continue;let E=p.get(y.target);E?E.push(b):p.set(y.target,[b])}return p},o=(m=[],p=[])=>[...p,...m.filter(x=>!p.includes(x)&&x.playState!=="idle")],i=m=>{let p=m.closest("[data-start]")??m;return e?.resolveStartSeconds?e.resolveStartSeconds(p):Number.parseFloat(p.getAttribute("data-start")??"0")||0},a=m=>{let p=v=>(v||"").split(",").map(_=>Number.parseFloat(_)/(_.trim().endsWith("ms")?1e3:1)),x=p(m.animationDuration),b=p(m.animationDelay),y=m.animationName.split(","),E=0;return y.forEach((v,_)=>{if(v.trim()==="none")return;let H=b[_%b.length]+x[_%x.length];H>E&&(E=H)}),{cycleSeconds:E,delays:y.map((v,_)=>b[_%b.length]||0)}},l=(m,p)=>{let x=null;try{x=m.effect?.getComputedTiming?.()??null}catch(y){G("runtime.adapters.css.site5",y)}if(!x)return{};let b=Number(x.endTime);return Number.isFinite(b)?{endSeconds:p+b/1e3}:{unbounded:!0}},s=(m,p)=>{for(let x of m)Oa(x,p,"runtime.adapters.css.site1","runtime.adapters.css.site2")},c=m=>{for(let p of m)try{p.play()}catch(x){G("runtime.adapters.css.site3",x)}},d=m=>{for(let p of m)try{p.pause()}catch(x){G("runtime.adapters.css.site4",x)}},f=m=>{m.baseDelay?m.el.style.animationDelay=m.baseDelay:m.el.style.removeProperty("animation-delay"),m.basePlayState?m.el.style.animationPlayState=m.basePlayState:m.el.style.removeProperty("animation-play-state")};return{name:"css",discover:()=>{for(let x of t)f(x);let m=new Map(t.map(x=>[x.el,x.handles]));t=[];let p=document.querySelectorAll("*");for(let x of p){if(!ve(x))continue;let b=window.getComputedStyle(x);!b.animationName||b.animationName==="none"||t.push({el:x,baseDelay:x.style.animationDelay||"",basePlayState:x.style.animationPlayState||"",...a(b),handles:m.get(x)})}},getAnimationCycleEndSeconds:()=>{let m=0;for(let p of t)!p.el.isConnected||p.cycleSeconds<=0||(m=Math.max(m,i(p.el)+p.cycleSeconds));return m>0?m:null},getInferredDurationSeconds:()=>{let m=0;for(let p of t){if(!p.el.isConnected)continue;let x=i(p.el);for(let b of n(p.el)){let y=l(b,x);y.endSeconds!=null&&(m=Math.max(m,y.endSeconds))}}return m>0?m:null},seek:m=>{let p=Number(m.time)||0,x=r(m.pageAnimations);for(let b of t)b.handles=o(b.handles,x.get(b.el));for(let b of t){if(!b.el.isConnected)continue;let y=i(b.el),E=Math.max(0,p-y)*1e3;if(b.handles?.length){b.el.style.animationDelay!==b.baseDelay&&f(b),s(b.handles,E);continue}b.el.style.animationPlayState="paused",b.el.style.animationDelay=b.delays.map(v=>`${Number((v-E/1e3).toFixed(3))}s`).join(", ")}},pause:m=>{let p=r(m?.pageAnimations);for(let x of t){if(!x.el.isConnected)continue;let b=p.get(x.el);b&&(d(b),f(x))}},play:()=>{let m=r();for(let p of t)p.el.isConnected&&(f(p),c(m.get(p.el)??[]))},revert:()=>{t=[]}}}function Ba(e,t,n){e.totalDuration?.();let r=e.getChildren?.(!1,!0,!0)??[],o=h_(e,n,t).map(s=>[s,s.ratio,s._zTime,s._act]),i=uh(r,t).map(s=>[s,s._ts]),a=new Set;for(let[s]of i)for(let c=s.parent;c&&!a.has(c);c=c.parent)a.add(c);let l=[...a].map(s=>[s,s._dur,s._tDur,s._end,s._dirty]);for(let[s]of i)s._ts=0;try{c_(e,r,t,n)}finally{for(let[s,c]of i)s._ts=c;for(let[s,c,d,f,m]of l)Object.assign(s,{_dur:c,_tDur:d,_end:f,_dirty:m})}for(let[s,c,d,f]of o)s.ratio=c,s._zTime=d,s._act=f}function c_(e,t,n,r){let o=n>=Ha;e.totalTime(o?n-Ha:n+Ha,!0),mh(t,n,o?Ha:0),e.totalTime(n,!0),!o&&r&&lh(e,r,n)}function lh(e,t,n){for(let r of p_(e,t,n)){let{ratio:o,_zTime:i,_act:a}=r;r.render(0,!0,!0),Object.assign(r,{ratio:o,_zTime:i,_act:a})}}function d_(e){let t=e,[n]="_first"in t?t._first?[t._first]:[]:e.getChildren?.(!1,!0,!0)??[],r=n?.parent;return r!==void 0&&!r._initted}function Do(e,t,n,r){if(typeof e.totalTime!="function")return e.seek(t,n),!1;let o=Number(e.totalTime());return e.totalTime(t,n),t<o&&r&&lh(e,r,t),o!==t||!d_(e)?!1:(Ba({totalTime:e.totalTime.bind(e),totalDuration:e.totalDuration?.bind(e),getChildren:e.getChildren?.bind(e)},t,r),!0)}var pu=1e-6;function uh(e,t,n=[]){for(let r of e)r.startTime()>t+pu?n.push(r):r.getChildren&&r.endTime()>=t&&uh(r.getChildren(!1,!0,!0),r.time(),n);return n}function ch(e){return(e.getChildren?.(!0,!0,!0)??[]).filter(t=>{let n=t;return typeof n.getChildren=="function"||n.totalDuration?.()===0})}var ah=new WeakMap,sh=.05;function f_(e,t){let n=Number(e._start);for(let r=e.parent;r&&r!==t;r=r.parent){if(r._repeat||!r._ts)return null;n=Number(r._start)+n/r._ts}return Number.isFinite(n)?n:null}function m_(e,t){let n={version:t.version,always:[],points:[]};for(let r of ch(e)){let o=r,i=typeof o.getChildren=="function"?null:f_(o,t.owner);i===null?n.always.push(r):n.points.push({at:i,mark:r})}return n.points.sort((r,o)=>r.at-o.at),n}function dh(e,t){let n=0,r=e.length;for(;n<r;){let o=n+r>>1;e[o].at<t?n=o+1:r=o}return n}function fh(e,t){let n=ah.get(t.owner);return n?.version!==t.version&&(n=m_(e,t),ah.set(t.owner,n)),n}function p_(e,t,n){let{points:r}=fh(e,t),o=[];for(let i=dh(r,n-pu);i<r.length&&!(r[i].at>n+pu);i++)o.push(r[i].mark);return o}function h_(e,t,n){if(!t)return ch(e);let r=fh(e,t),{points:o}=r,i=[...r.always],a=n+sh;for(let l=dh(o,n-sh);l<o.length&&!(o[l].at>a);l++)i.push(o[l].mark);return i}var Ga=2e-8,Ha=.001,g_=e=>{let t=e;return typeof t?.render=="function"&&typeof t.startTime=="function"&&typeof t.paused=="function"&&typeof t.timeScale=="function"&&t.timeScale()>0&&!t.paused()};function b_(e){return e.vars?.keyframes&&(e.render(Ga,!0),e.render(-Ga,!0)),e._startAt&&e._startAt.render(Ga,!0,!0),!!(e.vars?.keyframes||e._startAt)}function mh(e,t,n){for(let r of e.filter(g_)){let o=(t-r.startTime())*r.timeScale();Math.abs(o)<1e-9&&b_(r)||o>0&&x_(r,o,n*r.timeScale())}}function x_(e,t,n){t<n&&e._startAt&&e._startAt.render(Ga,!0,!0);let r=e.getChildren?e:e.timeline;r?.getChildren&&t<=e.totalDuration()&&mh(r.getChildren(!1,!0,!0),t,n)}function ph(e){return{name:"gsap",discover:()=>{},seek:t=>{let n=e.getTimeline();if(!n)return;n.pause();let r=Math.max(0,Number(t.time)||0),o=t.suppressEvents===!0;typeof n.totalTime=="function"?(n.totalTime(r,o),Ba({totalTime:n.totalTime.bind(n),totalDuration:n.totalDuration?.bind(n),getChildren:n.getChildren?.bind(n)},r)):n.seek(r,o)},pause:()=>{let t=e.getTimeline();t&&t.pause()}}}function hh(){return{name:"animejs",discover:()=>{try{let e=window.anime;if(!e||typeof e.running>"u")return;let t=e.running;if(!Array.isArray(t)||t.length===0)return;let n=window.__hfAnime??[],r=new Set(n);for(let o of t)r.has(o)||n.push(o);window.__hfAnime=n}catch(e){G("runtime.adapters.animejs.site1",e)}},seek:e=>{let t=Math.max(0,(Number(e.time)||0)*1e3),n=window.__hfAnime;if(!(!n||n.length===0))for(let r of n)try{typeof r.seek=="function"&&r.seek(t)}catch(o){G("runtime.adapters.animejs.site2",o)}},pause:()=>{let e=window.__hfAnime;if(!(!e||e.length===0))for(let t of e)try{typeof t.pause=="function"&&t.pause()}catch(n){G("runtime.adapters.animejs.site3",n)}},play:()=>{let e=window.__hfAnime;if(!(!e||e.length===0))for(let t of e)try{typeof t.play=="function"&&t.play()}catch(n){G("runtime.adapters.animejs.site4",n)}},revert:()=>{}}}function yh(e){let t=r=>{let o=bh(r),i=o&&typeof o.closest=="function"?o.closest("[data-composition-id]"):null;return i&&e?.resolveStartSeconds?e.resolveStartSeconds(i):0},n=(r,o)=>Math.max(0,o-t(r));return{name:"lottie",discover:()=>{try{let r=window.lottie;if(r&&typeof r.getRegisteredAnimations=="function"){let o=r.getRegisteredAnimations();if(Array.isArray(o)&&o.length>0){let i=window.__hfLottie??[],a=new Set(i);for(let l of o)a.has(l)||i.push(l);window.__hfLottie=i}}}catch(r){G("runtime.adapters.lottie.site1",r)}},seek:r=>{let o=Math.max(0,Number(r.time)||0),i=window.__hfLottie;if(!(!i||i.length===0))for(let a of i)try{let l=n(a,o),s=a.loop===!0;if(Ua(a)){let c=l*a.frameRate;a.totalFrames>0&&s?a.goToAndStop(hu(c,a.totalFrames),!0):a.totalFrames>0&&c>=a.totalFrames?a.goToAndStop(a.totalFrames-1,!0):a.goToAndStop(l*1e3,!1)}else if(gu(a)){if(typeof a.setFrame=="function"){let c=a.totalFrames??0,d=a.duration??0;if(!Number.isFinite(c)||c<=0||!Number.isFinite(d)||d<=0)continue;let f=l*c/d;a.setFrame(Math.min(s?hu(f,c):f,c-1))}else if(typeof a.setCurrentRawFrameValue=="function"){let c=a.totalFrames??0,d=a.frameRate??30,f=s&&c>0?hu(l*d,c):l*d;c>0&&a.setCurrentRawFrameValue(Math.min(f,c-1))}else if(typeof a.seek=="function"){let c=a.duration??0;if(Number.isFinite(c)&&c>0){let d=Math.min(100,(s?l%c:l)/c*100);a.seek(d)}}}}catch(l){G("runtime.adapters.lottie.site2",l)}},pause:()=>{let r=window.__hfLottie;if(!(!r||r.length===0))for(let o of r)try{(Ua(o)||gu(o))&&o.pause()}catch(i){G("runtime.adapters.lottie.site3",i)}},revert:()=>{},getInferredDurationSeconds:()=>gh((r,o)=>o),getAnimationCycleEndSeconds:()=>gh((r,o)=>bh(r)?.isConnected===!1?null:t(r)+o)}}function gh(e){let t=window.__hfLottie;if(!t||t.length===0)return null;let n=0,r=!1;for(let o of t){let i=null;try{let a=y_(o);i=a==null?null:e(o,a)}catch(a){G("runtime.adapters.lottie.site4",a)}i!=null&&(r=!0,n=Math.max(n,i))}return r?n:null}function bh(e){return Ua(e)?e.wrapper:e.canvas}function hu(e,t){let n=e%t;return t-n<1e-6?0:n}function xh(e,t){return!Number.isFinite(e)||!e||e<=0||!Number.isFinite(t)||!t||t<=0?null:e/t}function y_(e){return Ua(e)?xh(e.totalFrames,e.frameRate):gu(e)?Number.isFinite(e.duration)&&(e.duration??0)>0?e.duration??null:xh(e.totalFrames,e.frameRate):null}function Ua(e){return typeof e=="object"&&e!==null&&typeof e.goToAndStop=="function"}function gu(e){return typeof e=="object"&&e!==null&&typeof e.pause=="function"&&("totalFrames"in e||"duration"in e)}var bu=-1,Tr=new Set,Sh=new WeakSet,Cr,xu=0;function vh(e){let t=[],n=!0,r={time:e,waitUntil:o=>{if(!n)throw new Error("hf-seek waitUntil() must be called synchronously from the event listener");t.push(o)}};try{window.dispatchEvent(new CustomEvent("hf-seek",{detail:r}))}catch(o){G("runtime.adapters.seek-dispatch.site1",o)}finally{n=!1}t.length!==0&<(Promise.all(t))}function lt(e,t){let n=e.then(()=>({status:"fulfilled"})).catch(r=>({status:"rejected",reason:r}));Tr.add(n),t==="video-frame"&&Sh.add(n),n.then(r=>{Tr.delete(n)&&r.status==="rejected"&&Cr===void 0&&(Cr={reason:r.reason})})}function Wa(e){e!==bu&&(bu=e,vh(e))}function Va(e){bu=e,vh(e)}function Eh(){return xu>0}async function Ah(){for(let e=[...Tr];e.length>0;e=[...Tr])await Promise.all(e)}function wh(){return Tr.size>0}async function _h(e){let t=()=>[...Tr].filter(r=>e?.videoFrames!==!1||!Sh.has(r));xu+=1;let n=Cr;try{await Promise.resolve();for(let o=t();o.length>0;o=t()){let a=(await Promise.all(o)).find(l=>l.status==="rejected");n===void 0&&a?.status==="rejected"&&(n={reason:a.reason})}let r=Cr;if(n===void 0&&(n=r),Cr===r&&(Cr=void 0),n)throw n.reason}finally{xu-=1}}function Ch(){let e=null,t=0,n=null,r=null,o=null,i=null,a=()=>{if(typeof window>"u")return null;let d=window.THREE?.DefaultLoadingManager;return!d||typeof d!="object"||typeof d.itemsLoaded!="number"||typeof d.itemsTotal!="number"?null:d},l=c=>{i||c.itemsTotal<=c.itemsLoaded||(i=new Promise(d=>{c.onLoad=function(){try{o?.call(this)}finally{i=null,c.onLoad=o??null,d()}}}))},s=c=>{n!==c&&(n=c,r=c.onStart??null,o=c.onLoad??null,c.onStart=function(d,f,m){try{r?.call(this,d,f,m)}finally{l(c)}})};return{name:"three",discover:()=>{let c=a();c&&(s(c),l(c))},seek:c=>{e=Math.max(0,Number(c.time)||0),t=e,window.__hfThreeTime=e,Wa(e)},pause:()=>{e==null&&(e=Math.max(0,t))},play:()=>{e=null},revert:()=>{e=null,t=0},getReadyPromise:()=>{let c=a();return!c||c.itemsTotal<=c.itemsLoaded?null:(i||l(c),i)}}}function Ut(e){let t=null,n=new WeakSet;return{name:e.name,discover:()=>{},seek:()=>{},pause:()=>{},play:()=>{},revert:()=>{},getReadyPromise:()=>{let r=e.getInstances();if(r.length===0)return null;let o=r.filter(i=>!n.has(i));return o.length===0?null:t||(t=Promise.allSettled(o.map(i=>e.waitFor(i).then(()=>{n.add(i)}))).then(()=>{t=null}),t)}}}function Th(){return Ut({name:"mapbox",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfMapbox;return Array.isArray(e)?e:[]},waitFor:e=>new Promise(t=>{if(e.loaded()){t();return}e.on("load",t)})})}function Rh(){return Ut({name:"leaflet",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfLeaflet;return Array.isArray(e)?e:[]},waitFor:e=>new Promise(t=>e.whenReady(t))})}function Mh(){return Ut({name:"google-maps",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfGoogleMaps;return Array.isArray(e)?e:[]},waitFor:e=>new Promise(t=>{let n=e.addListener("tilesloaded",()=>{n.remove(),t()})})})}function kh(){return Ut({name:"maplibre",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfMaplibre;return Array.isArray(e)?e:[]},waitFor:e=>new Promise(t=>{if(e.loaded()){t();return}e.on("load",t)})})}function Lh(){return Ut({name:"d3",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfD3;return Array.isArray(e)?e:[]},waitFor:e=>e.end()})}var S_=250;function Nh(){let e=null,t=0,n=null,r=()=>{n!==null&&(window.clearInterval(n),n=null)},o=()=>{n===null&&document.querySelector("[data-composition-id][data-requires-webgpu]")&&(n=window.setInterval(()=>{e!==null&&(Eh()||(window.__hfTypegpuTime=e,Va(e)))},S_))};return{name:"typegpu",discover:()=>{},seek:i=>{e=Math.max(0,Number(i.time)||0),t=e,window.__hfTypegpuTime=e,Wa(e)},pause:()=>{e==null&&(e=Math.max(0,t)),o()},play:()=>{r(),e=null},revert:()=>{r(),e=null,t=0}}}var v_=["width","height","top","left","right","bottom","inset","object-fit","object-position","z-index","opacity","visibility","filter","mix-blend-mode","backdrop-filter","border-width","border-style","border-color","border-radius","overflow","clip-path","mask","mask-image","mask-size","mask-position","mask-repeat","transform","transform-origin","translate","rotate","scale","box-sizing"];function yu(e){return Number.isFinite(e)&&e>0?e:30}function Su(e){return Number.isFinite(e)&&e>0?e:0}function vu(e,t){let n=yu(t);return Math.floor(Su(e)*n+1e-9)/n}function Ih(e,t,n){let r=Number.isInteger(n)?n:1;if(r<=1)return vu(e,t);let o=yu(t)*r;return Math.round(Su(e)*o)/o}function Fh(e,t){let n=yu(t),r=Su(e),o=r*n,i=Math.round(o);return Math.abs(o-i)<=.001?i/n:r}function $a(e,t,n){return{start:Fh(e,n),end:Number.isFinite(t)?Fh(t,n):t}}function Dh(e,t,n=v_){for(let r of n){let o=t.getPropertyValue(r);o&&e.setProperty(r,o)}}var Rr=new Map,Ph=()=>Rr.size>0;function Oh(e){if(Rr.has(e.element))throw new Error("This element already has a frame source");let t=e.sourceRange;if(t&&(!Number.isFinite(t.start)||t.start<0||!Number.isFinite(t.duration)||t.duration<=0||!Number.isFinite(t.fps)||t.fps<=0))throw new Error("Frame source ranges require a nonnegative start, positive duration and FPS");let n=new AbortController,r=new Promise(c=>{n.signal.addEventListener("abort",()=>c(),{once:!0})}),o=Promise.race([Promise.resolve(e.ready),r]);o.catch(()=>{});let i=null,a=null,l=async()=>{let c;try{for(await o;!n.signal.aborted&&i!==null;){let d=i;i=null;try{await Promise.race([e.render(d,n.signal),r])}catch(f){c??(c={reason:f})}}if(c)throw c.reason}finally{i=null,a=null}},s={element:e.element,ready:o,seek(c){return i=t?t.start+Math.min(Math.max(0,c),Math.max(0,t.duration-1/t.fps)):c,a??(a=l()),a},dispose(){n.signal.aborted||(n.abort(),i=null,Rr.delete(e.element),e.dispose?.())}};return Rr.set(e.element,s),s.dispose}function Hh(e){let t=new Set,n=[],r=null,o=()=>{for(let l of t)Rr.get(l.element)!==l&&t.delete(l);let a=[];for(let[l,s]of Rr){if(!l.isConnected){s.dispose();continue}t.has(s)||(t.add(s),lt(s.ready)),a.push([l,s])}return a},i=new MutationObserver(()=>{o()});return i.observe(document,{childList:!0,subtree:!0}),{name:"frame-source",discover:()=>{o()},pause:()=>{},seek:({time:a})=>{for(let[l,s]of o()){let c=e.start(l),d=e.duration(l),f=c+(d??1/0),m=e.exportRenderSeek()?$a(c,f,e.canonicalFps()):{start:c,end:f};if(!wr(a,m.start,m.end,e.compositionDuration()))continue;let p=Math.max(0,a-c),x=br(l)+qn(Gt(l),p);lt(s.seek(x))}},getReadyPromise:()=>{let a=o().map(([,l])=>l);return a.length===0?null:((a.length!==n.length||a.some((l,s)=>l!==n[s]))&&(n=a,r=Promise.all(a.map(l=>l.ready))),r)},revert:()=>{i.disconnect();for(let a of t)a.dispose();t.clear()}}}var Gh=':not([muted]):is(:not([data-has-audio]),[data-has-audio="true"])',uH=`audio[data-start], video[data-start]${Gh}`;function qa(e){if(e.tagName.toLowerCase()!=="video"||e.hasAttribute("muted"))return!1;let t=e.getAttribute("data-has-audio");return t===null||t==="true"}function Bh(e){return(e.volume??1)>1||!!(e.fxChain||e.automation||e.audioGroup||e.masterChain)}var Po="data-hf-render-id",Uh="data-hf-group-render-id";function E_(e){return e.getAttribute(Po)||e.id||null}var A_="__render_frame_",w_="__";function __(e){return`${A_}${e}${w_}`}function C_(e){let t=E_(e);return t?__(t):null}function Ct(e){let t=C_(e),n=t?document.getElementById(t):null;if(!n)return null;let r=e.nextElementSibling;for(;r&&r.id!==t;)r=r.nextElementSibling;return r??(r=n),Je(r)?r:null}function Wh(e){let t=e.nextElementSibling;if(Je(t)&&t.classList.contains("__render_frame__")&&t.complete&&t.naturalWidth>0)return t;let n=Ct(e);return n&&n.complete&&n.naturalWidth>0?n:null}function Vh(){let e=globalThis.GPUQueue;if(!e?.prototype?.copyExternalImageToTexture)return;let t=e.prototype.copyExternalImageToTexture;e.prototype.copyExternalImageToTexture=function(n,r,o){if(Me(n?.source)){let i=Wh(n.source);if(i)return t.call(this,{...n,source:i},r,o)}return t.call(this,n,r,o)}}function $h(){let e=[globalThis.WebGL2RenderingContext,globalThis.WebGLRenderingContext],t=["texImage2D","texSubImage2D"];for(let n of e){let r=n?.prototype;if(r)for(let o of t){let i=r[o];if(typeof i!="function"||i.__hfVideoPatched)continue;let a=function(...l){let s=l.length-1,c=l[s];if(Me(c)){let d=Wh(c);d&&(l[s]=d)}return i.apply(this,l)};a.__hfVideoPatched=!0,r[o]=a}}}var T_=e=>typeof CSSAnimation<"u"&&e instanceof CSSAnimation||typeof CSSTransition<"u"&&e instanceof CSSTransition;function qh(){let e=!1,t=0,n=!1,r,o,i,a=new Set,l=new WeakMap,s=(y=()=>document.getAnimations())=>{if(!document.getAnimations)return[];try{return y()}catch{return[]}},c=y=>{let E=Number(y.currentTime);return Number.isFinite(E)&&E>0?E:0},d=(y,E)=>E<=0?y:y>=E?Math.max(0,y-E):y,f=(y,E)=>{let v=l.get(y);if(v)return v;let _={compositionTimeMs:E,animationTimeMs:e?d(c(y),E):c(y)};return l.set(y,_),_},m=(y,E)=>{if(!a.has(y)){a.add(y);let v=()=>{a.delete(y)};try{y.addEventListener("finish",v,{once:!0}),y.addEventListener("cancel",v,{once:!0})}catch(_){G("runtime.adapters.waapi.site4",_)}}f(y,E)},p=(y,E)=>{for(let v of y)m(v,E)},x=()=>{if(n||typeof Element>"u")return;let y=Element.prototype;if(typeof y.animate!="function"||y.__hfOriginalAnimate)return;let E=y.animate;try{Object.defineProperty(y,"__hfOriginalAnimate",{value:E,configurable:!0});let v=function(..._){let H=E.apply(this,_);return m(H,t),H};y.animate=v,r=y,o=E,i=v,n=!0}catch{}},b=y=>{let E=null;try{E=y.effect?.getComputedTiming?.()??null}catch(H){G("runtime.adapters.waapi.site4",H)}if(!E)return{};let v=Number(E.endTime);return Number.isFinite(v)?{endSeconds:(l.get(y)?.compositionTimeMs??0)/1e3+v/1e3}:{unbounded:!0}};return{name:"waapi",discover:()=>{e=!0,x(),p(s(),t)},seek:y=>{let E=Math.max(0,(Number(y.time)||0)*1e3);t=E,(!e||a.size>0)&&p(s(y.pageAnimations),e?E:0);for(let v of a){if(v.playState==="idle"&&T_(v)){a.delete(v);continue}let _=e?f(v,E):f(v,0),H=_.animationTimeMs+Math.max(0,E-_.compositionTimeMs);Oa(v,H,"runtime.adapters.waapi.site1","runtime.adapters.waapi.site2")}},pause:y=>{e||p(s(y?.pageAnimations),t);for(let E of a)try{E.pause()}catch(v){G("runtime.adapters.waapi.site3",v)}},revert:()=>{if(a.clear(),l=new WeakMap,e=!1,t=0,r&&o&&i&&r.animate===i)try{r.animate=o,r.__hfOriginalAnimate===o&&delete r.__hfOriginalAnimate}catch(y){G("runtime.adapters.waapi.site5",y)}r=void 0,o=void 0,i=void 0,n=!1},getInferredDurationSeconds:()=>{let y=0;for(let E of s()){let v=b(E);v.endSeconds!=null&&(y=Math.max(y,v.endSeconds))}return y>0?y:null}}}function R_(e,t,n){let r=e.filter(i=>Number.isFinite(i.time)&&Number.isFinite(i.volume)).map(i=>({time:Math.max(0,i.time-t),volume:Ve(i.volume)})).sort((i,a)=>i.time-a.time),o=[];for(let i of r){let a=o.at(-1);a&&Math.abs(a.time-i.time)<1e-9?a.volume=i.volume:o.push(i)}return o.length===0||o[0].time>0&&o.unshift({time:0,volume:Ve(n)}),o}function zh(e,t){if(e.length===0)return 1;let n=0;for(;n<e.length-2&&t>=e[n+1].time;)n+=1;let r=e[n],o=e[n+1]??r,i=o.time-r.time,a=i<=0?0:Math.min(1,Math.max(0,(t-r.time)/i));return r.volume+(o.volume-r.volume)*a}function M_(e,t,n,r){let o=e.at(-1);!o||Math.abs(o.volume-n.volume)>1e-4?(o&&t&&t.time>o.time&&e.push(t),e.push(n)):r&&n.time>o.time&&e.push(n)}function k_(e){let t=Number.parseFloat(e??"");return Number.isFinite(t)?t:void 0}function L_(e,t){let n=it({timelineRegistry:window.__timelines,includeAuthoredTimingAttrs:!0}).resolveMediaStartForElement(e),r=Ge(e.dataset.end)??void 0,o=Ge(e.dataset.duration)??void 0,i=t;o!==void 0&&o>0?i=n+o:r!==void 0&&r>n&&(i=r);let a=k_(e.dataset.volume)??1;return{start:n,end:i,staticVolume:Ve(a)}}function N_(e,t,n,r,{start:o,end:i,staticVolume:a}){let l=1/Math.min(60,Math.max(1,r)),s=Math.max(0,o),c=Math.min(n,i),d=_p(e,()=>{e.volume=a;let m=[],p;for(let x=s;x<=c+1e-6;x=Math.min(c,x+l)){t(x);let b=Number(e.volume);if(Number.isFinite(b)){let y={time:Number(x.toFixed(6)),volume:Number(Ve(b).toFixed(6))};M_(m,p,y,x===c),p=y}if(x===c)break}return m});return d.some(m=>Math.abs(m.volume-a)>1e-4)?d:null}function za(e,t,n=0){return n>3||e===null||typeof e!="object"?!1:Array.isArray(e)?e.some(r=>za(r,t,n+1)):Object.getPrototypeOf(e)!==Object.prototype?!1:Object.entries(e).some(([r,o])=>t(r)||za(o,t,n+1))}var F_=e=>typeof e?.nodeType=="number";function I_(e,t){for(let n=Object(e);n;n=Object.getPrototypeOf(n)){let r=Object.getOwnPropertyDescriptor(n,t);if(r)return typeof r.set=="function"}return!1}function Eu(e){let t={elements:new Set,anySetter:!1,unknown:!0};if(typeof e.getChildren!="function")return t;try{let n={elements:new Set,anySetter:!1,unknown:!1};for(let r of e.getChildren(!0,!0,!1)){let o=r.targets?.()??[];for(let i of o)F_(i)?za(r.vars,a=>a==="volume")&&n.elements.add(i):!n.anySetter&&za(r.vars,a=>I_(i,a))&&(n.anySetter=!0)}return n}catch{return t}}var D_=(e,t)=>e.unknown||e.anySetter||e.elements.has(t);function jh(e,t,n,r,o={}){if(o.allowLiveTimelineSeek===!1||!t||!pe(e)||n<=0||!D_(o.movers?.()??Eu(t),e))return;let i=c=>{try{typeof t.totalTime=="function"?t.totalTime(c,!0):typeof t.seek=="function"&&t.seek(c,!0)}catch{}},a=typeof t.totalTime=="function"?Number(t.totalTime()):typeof t.seek=="function"?Number(t.seek()):0,l=L_(e,n),s=N_(e,i,n,60,l);if(Number.isFinite(a)&&i(a),s){let c=R_(s,l.start,l.staticVolume);c.length>0&&r.set(e,c)}}var Xh="data-fade-in",Jh="data-fade-out",TH=Xh.slice(5),RH=Jh.slice(5),Qh=Object.freeze({fadeIn:0,fadeOut:0});function Au(e){return Number.isFinite(e)&&e>0?e:0}function Kh(e){return e==null||e===""?0:Au(Number.parseFloat(e))}function Zh(e){return{fadeIn:Kh(e.getAttribute(Xh)),fadeOut:Kh(e.getAttribute(Jh))}}function P_(e,t){let n=Au(e.fadeIn),r=Au(e.fadeOut);if(!Number.isFinite(t)||t<=0)return{fadeIn:n,fadeOut:r};let o=n+r;if(o<=t)return{fadeIn:n,fadeOut:r};let i=t/o;return{fadeIn:n*i,fadeOut:r*i}}function eg(e,t,n){if(!Number.isFinite(e))return 1;let{fadeIn:r,fadeOut:o}=P_(n,t),i=1;return r>0&&(i*=Yh(e/r)),o>0&&Number.isFinite(t)&&(i*=Yh((t-e)/o)),i}function Yh(e){return!Number.isFinite(e)||e<0?0:e>1?1:e}var Mr="hf-audio-group",ja="data-audio-group";function Oo(e){let t=e?.getAttribute("data-volume"),n=t?parseFloat(t):1;return Number.isFinite(n)?n:1}function wu(e,t){let n=Array.from(e?.querySelectorAll?.(`${Mr}[${Po}]`)??[]).find(o=>o.getAttribute(Po)===t);if(n)return n;let r=e?.getElementById(t)??null;return r&&r.tagName?.toLowerCase()===Mr?r:null}function Ka(e,t){let n=t?.getAttribute?.(Uh)??t?.getAttribute?.(ja);return n?wu(e,n)?.hasAttribute("data-hidden")??!1:!1}function _u(e){let t=e.querySelector("[data-composition-id]");return t&&!t.parentElement?.closest("[data-composition-id]")?t:null}function tg(e){return _u(e)?.getAttribute(gn)||void 0}function Ya(e){return typeof e.tagName!="string"||typeof e.getAttribute!="function"||!O_(e)?null:e.getAttribute(ja)||null}function O_(e){return e.tagName.toLowerCase()==="audio"?!0:typeof e.hasAttribute=="function"&&qa(e)}function ng(e){let t="__hf-audio-group-inert";if(!e?.head||e.getElementById(t))return;let n=e.createElement("style");n.id=t,n.textContent=`${Mr}{display:none!important}`,e.head.appendChild(n)}function Wt(e){return br(e)}var rg=["seeked","loadeddata","error","emptied","abort"],Lu=5e3,Xa=new WeakMap;function og(e){let t=e.readyState<e.HAVE_CURRENT_DATA&&e.networkState===e.NETWORK_LOADING&&!window.__HF_EXPORT_RENDER_SEEK_CONFIG;e.tagName!=="VIDEO"||!(e.seeking||t)||Ct(e)||(Xa.get(e)?.(),lt(new Promise(n=>{let r=i=>{if(!(i?.type==="loadeddata"&&e.seeking)){clearTimeout(o);for(let a of rg)e.removeEventListener(a,r,!0);Xa.get(e)===r&&Xa.delete(e),n()}},o=setTimeout(r,Lu);for(let i of rg)e.addEventListener(i,r,!0);Xa.set(e,r)}),"video-frame"))}function ag(e){let t=e.isVideo?e.explicitDuration??e.sourceDuration:e.sourceDuration,n=(e.isVideo?[t,e.hostRemaining]:[t,e.hostRemaining,e.explicitDuration]).filter(r=>r!=null&&Number.isFinite(r)&&r>=0);return n.length>0?Math.min(...n):null}function sg(e){let t=e?.elements??Array.from(document.querySelectorAll("video, audio")),n=e?.shouldIncludeElement?t.filter(a=>e.shouldIncludeElement?.(a)):t.filter(a=>a.hasAttribute("data-start")),r=[],o=[],i=0;for(let a of n){let l=e?.resolveStartSeconds?e.resolveStartSeconds(a):Number.parseFloat(a.dataset.start??"0");if(!Number.isFinite(l))continue;let s=Wt(a),c=st(a),d=Gt(a),f=a.loop,m=Number.isFinite(a.duration)&&a.duration>0?a.duration:null,p=e?.resolveDurationSeconds?.(a)??Number.parseFloat(a.dataset.duration??"");(!Number.isFinite(p)||p<0)&&m!=null&&(p=Math.max(0,zn(d,m-s)));let b=Number.isFinite(p)&&p>=0?l+p:Number.POSITIVE_INFINITY,y=l,E=jn({start:l,end:b},e?.resolveHostSlots?.(a)??[]);(E.start!==l||E.end!==b)&&({start:l,end:b}=E,p=b-l);let v=Number.parseFloat(a.dataset.volume??""),_={el:a,start:l,origin:y,mediaStart:s,duration:Number.isFinite(b)?p:Number.POSITIVE_INFINITY,end:b,volume:Number.isFinite(v)?v:null,playbackRate:c,rate:d,loop:f,sourceDuration:m,fades:Zh(a)};r.push(_),a.tagName==="VIDEO"&&o.push(_),Number.isFinite(b)&&(i=Math.max(i,b))}return{timedMediaEls:n,mediaClips:r,videoClips:o,maxMediaEnd:i}}var Ru=new WeakMap,Ja=new WeakMap,Ho=new WeakMap,Mu=new WeakSet,kr=new WeakSet,Cu=new WeakSet;function H_(e){if(kr.has(e))return;kr.add(e);let t=()=>kr.delete(e);e.addEventListener("playing",t,{once:!0}),e.addEventListener("pause",t,{once:!0}),e.addEventListener("error",t,{once:!0})}var G_=3;function Nu(e){return e.error!=null||e.networkState===G_}var ku=new WeakMap;function Tu(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function Fu(e){Ru.delete(e),Ja.delete(e),Ho.delete(e),Mu.delete(e),ku.delete(e),Go.delete(e)}var Iu=.5,Du=1.5;function B_(e,t,n,r){let{el:o}=e,i=e.start-t;if(!n||o.tagName!=="VIDEO"||i<=0||i>Du*r||!o.paused||o.seeking||o.readyState<o.HAVE_METADATA||Ct(o)||"__HF_EXPORT_RENDER_SEEK_CONFIG"in window&&window.__HF_EXPORT_RENDER_SEEK_CONFIG)return;let a=e.mediaStart+qn(e.rate??e.playbackRate,e.start-(e.origin??e.start));if(e.sourceDuration!=null){let l=e.sourceDuration-e.mediaStart;e.loop&&l>0&&a>=e.sourceDuration?a=e.mediaStart+(a-e.mediaStart)%l:e.loop||(a=Math.min(a,e.sourceDuration))}if(!(!Number.isFinite(a)||a<0||Math.abs(o.currentTime-a)<=.001))try{o.currentTime=a}catch(l){G("runtime.media.preseek",l)}}var xn=.04,ig=1/16,U_=.03,W_=.01,Go=new WeakMap;function V_(e,t,n){let r=Math.sign(t),o=Go.get(e);if(Math.abs(t)>xn)Go.set(e,r);else if(o!==r||Math.abs(t)<=W_)return Go.delete(e),n;return n*(1+r*U_)}function lg(e){let t=!!(e.outputMuted||e.userMuted);for(let n of e.clips){let{el:r}=n;if(!r.isConnected)continue;let o=n.rate??n.playbackRate,i=n.origin??n.start,a=r.tagName==="VIDEO"&&!n.loop,l=bn(e.timeSeconds,n.start,n.end),s=n.start-e.timeSeconds,c=r.tagName==="AUDIO"&&!l&&s>0&&s*Math.max(1,su(o,n.start-i))<=Math.max(e.cueAheadSeconds??0,Cu.has(r)?xn:0);c?Cu.add(r):Cu.delete(r);let d=a&&!l&&(e.timeSeconds>=n.end||Ar(e.timeSeconds,n.end))&&wr(e.timeSeconds,n.start,n.end,e.getCompositionDuration()),f=qn(o,Math.max(0,Math.min(e.timeSeconds,n.end)-i))+n.mediaStart,m=d||a&&n.sourceDuration!=null&&f>=n.sourceDuration&&l;m&&n.sourceDuration!=null&&(f=Math.min(f,n.sourceDuration));let p=Ja.get(r),x=r.tagName==="AUDIO"&&(p===void 0||f<p-.04),b=!n.loop&&n.sourceDuration!=null&&f>=n.mediaStart&&f<n.sourceDuration&&(a||x);if((l||d||c)&&f>=0&&(!r.ended||n.loop||m||b)){if(Ja.set(r,f),n.loop&&n.sourceDuration!=null&&n.sourceDuration>0){let ue=n.sourceDuration-n.mediaStart;ue>0&&f>=n.sourceDuration&&(f=n.mediaStart+(f-n.mediaStart)%ue)}let v=Tu(e.userVolume??1),_=Ve(n.volume??1),H=ku.get(r),I=Tu(r.volume),k,A=Fp(r,e.timeSeconds-i),L=e.isWebAudioRouted?.(r)===!0,P=A===null&&(n.volumeKeyframes?.length??0)>0,q=L?wp(_,P):1;if(A!==null)k=L?1:_a(_,A);else if(n.volumeKeyframes&&n.volumeKeyframes.length>0){let ue=e.timeSeconds-i;k=Ve(zh(n.volumeKeyframes,ue))}else L?k=1:H===void 0?k=_>1?_:I:Math.abs(I-H)>1e-4?k=I:k=_;let X=n.fades??Qh;(X.fadeIn>0||X.fadeOut>0)&&(k*=eg(e.timeSeconds-i,n.duration+n.start-i,X));let J=r.closest("[data-hidden]")!==null||Ka(r.ownerDocument,r)?0:Tu(k*v);Math.abs(r.volume-J)>1e-6&&(r.volume=J),ku.set(r,J),e.onElementVolume?.(r,J,k,q),(t||e.isWebAudioOwned?.(r))&&!r.muted&&(r.muted=!0),r.preload!=="auto"&&(r.preload="auto");let D=su(o,e.timeSeconds-i)*e.playbackRate,R=e.playing&&D>=ig,M=2,j=r.currentTime||0,W=Math.abs(j-f),ee=f-j,C=Ru.get(r);Ru.set(r,ee);let N=C===void 0,K=!N&&Math.abs(ee-C)>.5,$=W>3,U=r.tagName==="AUDIO"&&N&&j-f>xn,z=m&&W>.001||r.ended&&b&&W>.001||U||W>Iu&&(N||K||$),re=r.tagName==="VIDEO"&&!r.paused&&R,ie=e.playing&&!R||C!==void 0&&Math.abs(ee-C)<.004,te=!1;if(!re&&!z&&!N&&ie&&W>xn){let ue=(Ho.get(r)??0)+1;Ho.set(r,ue),ue>=M&&(te=!0,Ho.set(r,0))}else W<=xn&&Ho.set(r,0);let Q=!re&&e.forceSync&&W>.02;try{(!re||z)&&Go.delete(r);let ue=Math.max(ig,re&&!z?V_(r,ee,D):D);Math.abs(r.playbackRate-ue)>1e-6&&(r.playbackRate=ue)}catch(ue){G("runtime.media.site1",ue)}if(z||te||Q){if(!(r.tagName==="VIDEO"&&!!Ct(r))){try{r.currentTime=f}catch(Be){G("runtime.media.site2",Be)}if(Math.abs(r.currentTime-f)>.5&&!Mu.has(r)){Mu.add(r),r.load();try{r.currentTime=f}catch(Be){G("runtime.media.site3",Be)}}og(r)}kr.delete(r)}else R||og(r);m?r.paused||r.pause():R&&r.paused&&!kr.has(r)&&!Nu(r)?(H_(r),r.play().catch(ue=>{kr.delete(r),(ue&&typeof ue=="object"&&"name"in ue?String(ue.name??""):"")==="NotAllowedError"&&e.onAutoplayBlocked?.()})):!R&&!r.paused&&r.pause();continue}let E=bn(e.timeSeconds,n.start,n.end);Fu(r),E&&Ja.set(r,f),r.paused||r.pause(),B_(n,e.timeSeconds,e.playing,e.playbackRate)}}var yn=new WeakMap;function Bo(e){return yn.has(e)?yn.get(e)??null:e.getAttribute("src")}async function Pu(e,t){let n=0;for(;t();){let r=await fetch(e,{headers:{Range:"bytes=0-0"},cache:"no-store"}).catch(()=>null);r?.body?.cancel().catch(()=>{});let o=r?.status===202||r?.status===503;if(!o&&r?.ok)return!0;if(!o&&++n>3)return!1;let i=Math.min(Number(r?.headers.get("Retry-After"))||2,30);await new Promise(a=>setTimeout(a,i*1e3))}return!1}var cg="hf-proxy-box",$_=[256,362,512,724,1024,1448,2048,2896,4096,5792,8192];function ug(e){return e>0?$_.find(t=>t>=e)??null:null}function dg(e,t){let n=ug(e),r=ug(t);return n&&r?{width:n,height:r}:null}function fg(e){return`${e.width}x${e.height}`}var q_="hf-proxy",mg="runtime_media_proxy_fallback",pg="runtime_media_proxy_unavailable",hg=new WeakSet,Uo=new WeakMap;function Qa(e){return e.currentSrc||e.src}var Lr=window.parent===window?1:null,gg=()=>{},z_=new Promise(e=>gg=e),j_=1e3,Vo=new Map,Wo=new WeakMap;function K_(){return Lr!==null?Promise.resolve(Lr):Promise.race([z_.then(()=>Lr),new Promise(e=>setTimeout(()=>e(null),j_))])}function bg(e,t){if(getComputedStyle(e).objectFit==="none")return null;let n=e.getBoundingClientRect(),r=document.documentElement,o=t*(window.devicePixelRatio||1);return dg(Math.max(n.width,r.clientWidth)*o,Math.max(n.height,r.clientHeight)*o)}function xg(e){if(!(!(e>0)||!Number.isFinite(e))){Lr=e,gg();for(let t of Vo.keys())yg(t,e)}}function yg(e,t){let n=Vo.get(e);if(!n)return;if(!e.isConnected||e.getAttribute("src")!==n.href){Vo.delete(e);return}let r=bg(e,t);if(r&&r.width<=n.box.width&&r.height<=n.box.height)return;let o=r&&{width:Math.max(r.width,n.box.width),height:Math.max(r.height,n.box.height)},i=vg(n.originalSrc,n.variant,o);if(Wo.get(e)===i)return;Wo.set(e,i);let a=()=>Wo.get(e)===i&&e.isConnected&&e.getAttribute("src")===n.href;Pu(i,a).then(l=>{l&&a()&&Sg(e,i,n.originalSrc,n.variant,o),Wo.get(e)===i&&Wo.delete(e)})}function Sg(e,t,n,r,o){o?Vo.set(e,{originalSrc:n,variant:r,href:t,box:o}):Vo.delete(e),Fu(e),e.src=t,e.load()}function $o(e){return window.__HF_EXPORT_RENDER_SEEK_CONFIG?!0:Me(e)&&!!Ct(e)}function Ou(e){let t=Qa(e);if(!t)return null;let n;try{n=new URL(t,document.baseURI)}catch{return null}if(n.origin!==window.location.origin)return null;try{return decodeURIComponent(n.pathname)}catch{return n.pathname}}function Y_(e,t){let n=null;for(let r of Object.keys(t))e.endsWith(r)&&(n===null||r.length>n.length)&&(n=r);return n?t[n]??null:null}function X_(e,t){let n=e.normalize("NFC").toLowerCase(),r=-1,o=null,i=!1;for(let[a,l]of Object.entries(t)){let s=a.normalize("NFC").toLowerCase();n.endsWith(s)&&(s.length>r?(r=s.length,o=l,i=!1):s.length===r&&(i=!0))}return i?null:o}function Hu(e,t){return t[e]??Y_(e,t)??X_(e,t)}function vg(e,t,n){let r=new URL(e,document.baseURI);return r.searchParams.set(q_,t),n&&r.searchParams.set(cg,fg(n)),r.href}var J_={cross_origin:"video reports zero decodable width but its source is cross-origin; no local proxy can be served for it",proxy_playback_failed:"the authoring proxy itself failed to decode; render output is unaffected",browser_safe_codec:"the file errored but its codec is browser-decodable; a proxy cannot help (the file itself is likely corrupt)",invalid_source_url:"the media source URL is malformed and cannot be proxied"};function Sn(e,t,n){if(hg.has(e))return;hg.add(e);let r=J_[t];ke({source:"hf-preview",type:"diagnostic",code:pg,details:{asset:n,codecName:null,reason:t,note:r}}),globalThis.console.info(`[hyperframes] ${pg}: "${n}" (${t}): ${r}`)}function Gu(e,t=null,n="reactive"){if(yn.has(e)||Uo.has(e)&&Uo.get(e)===e.getAttribute("src"))return;let r=Qa(e),o=t?t.hasAlpha?"vp8":"h264":"auto";try{new URL(r,document.baseURI)}catch(d){G("runtime.mediaProxy.swap",d),Sn(e,"invalid_source_url",r);return}let i=e.getAttribute("src");Uo.set(e,i);let a=()=>e.isConnected&&e.getAttribute("src")===i,l=K_().then(async d=>{let f=d===null?null:bg(e,d),m=vg(r,o,f),p=await Pu(m,a);if(!a()){Uo.get(e)===i&&Uo.delete(e);return}if(!p){Sn(e,"proxy_playback_failed",r);return}return yn.set(e,i),Sg(e,m,r,o,f),Lr!==null&&yg(e,Lr),new Promise(x=>{e.addEventListener("loadeddata",x,{once:!0}),e.addEventListener("error",x,{once:!0})})});lt(Promise.race([l,new Promise(d=>setTimeout(d,Lu))]),"video-frame");let s=t?.codecName??null;ke({source:"hf-preview",type:"diagnostic",code:mg,details:{asset:r,codecName:s,trigger:n,note:"render output is unaffected; only this preview element was swapped to an authoring proxy"}}),globalThis.console.info(`[hyperframes] ${mg}: "${r}" uses a codec (${s??"unknown"}) this browser can't decode; auto-swapped to an authoring proxy for this preview only. Render output is unaffected.`)}function Eg(e){if($o(e)||!Me(e)||yn.has(e))return;let t=window.__HF_MEDIA_CODEC_MAP__;if(!t)return;let n=Ou(e);if(n===null)return;let r=Hu(n,t);if(!r||!r.browserHostile)return;let o=r.representativeMime?e.canPlayType(r.representativeMime):"";o==="probably"||o==="maybe"||Gu(e,r,"proactive")}function Ag(e){if($o(e)||!Me(e)||e.videoWidth!==0)return;let t=Qa(e);if(yn.has(e)){Sn(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=Ou(e);if(r===null){Sn(e,"cross_origin",t);return}let o=Hu(r,n);if(o&&!o.browserHostile){Sn(e,"browser_safe_codec",t);return}Gu(e,o,"reactive")}function wg(e){if($o(e)||!Me(e))return;let t=Qa(e);if(yn.has(e)){Sn(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=Ou(e);if(r===null){Sn(e,"cross_origin",t);return}let o=Hu(r,n);if(o&&!o.browserHostile){Sn(e,"browser_safe_codec",t);return}Gu(e,o,"tertiary")}var ze=class extends Error{constructor(n,r=null){super(r==null?n:`${n} at line ${r}`);fe(this,"lineNumber");this.name="CubeLutParseError",this.lineNumber=r}},Q_=[0,0,0],Z_=[1,1,1],Za=64;function eC(e){let t=!1;for(let n=0;n<e.length;n++){let r=e[n];if(r==='"'&&(t=!t),r==="#"&&!t)return e.slice(0,n)}return e}function vn(e,t){let n=Number(e);if(!Number.isFinite(n))throw new ze(`Invalid number "${e}"`,t);return n}function _g(e,t,n){if(e.length!==3)throw new ze(`${t} expects three numbers`,n);return[vn(e[0],n),vn(e[1],n),vn(e[2],n)]}function Cg(e,t,n){if(!e)throw new ze(`${t} expects a size`,n);let r=Number(e);if(!Number.isInteger(r)||r<2)throw new ze(`${t} must be an integer greater than 1`,n);return r}function tC(e,t){if(t[0]<=e[0]||t[1]<=e[1]||t[2]<=e[2])throw new ze("DOMAIN_MAX values must be greater than DOMAIN_MIN values")}function nC(e){let t=/^TITLE\s+"([^"]*)"\s*$/i.exec(e);if(t)return t[1]??null;let n=/^TITLE\s+(.+)\s*$/i.exec(e);return n&&(n[1]??"").trim()||null}function rC(e){return/^[+-]?(?:\d|\.\d)/.test(e)}function Tg(e,t={}){let n=t.maxSize??Za,r=null,o=Q_,i=Z_,a=null,l=null,s=[],c=e.replace(/^\uFEFF/,"").split(/\r?\n/);for(let f=0;f<c.length;f++){let m=f+1,p=eC(c[f]??"").trim();if(!p)continue;let x=p.split(/\s+/),b=(x[0]??"").toUpperCase(),y=x.slice(1);if(b==="TITLE"){r=nC(p);continue}if(b==="DOMAIN_MIN"){o=_g(y,b,m);continue}if(b==="DOMAIN_MAX"){i=_g(y,b,m);continue}if(b==="LUT_3D_INPUT_RANGE"){if(y.length!==2)throw new ze(`${b} expects two numbers`,m);let E=vn(y[0],m),v=vn(y[1],m);if(v<=E)throw new ze("LUT_3D_INPUT_RANGE max must exceed min",m);o=[E,E,E],i=[v,v,v];continue}if(b==="LUT_1D_SIZE"){a=Cg(y[0],b,m);continue}if(b==="LUT_3D_SIZE"){if(l=Cg(y[0],b,m),l>n)throw new ze(`LUT_3D_SIZE ${l} exceeds max ${n}`,m);continue}if(!rC(b)){if(b.startsWith("LUT_"))throw new ze(`Unsupported cube keyword ${b}`,m);continue}if(!l)throw a?new ze("1D cube LUTs are not supported yet",m):new ze("LUT data appears before LUT_3D_SIZE",m);if(x.length!==3)throw new ze("LUT data rows must contain three numbers",m);s.push(vn(x[0],m),vn(x[1],m),vn(x[2],m))}if(a&&l)throw new ze("Mixed 1D and 3D cube LUTs are not supported yet");if(!l)throw a?new ze("1D cube LUTs are not supported yet"):new ze("Missing LUT_3D_SIZE");tC(o,i);let d=l*l*l;if(s.length!==d*3)throw new ze(`Expected ${d} LUT rows for size ${l}, found ${s.length/3}`);return{title:r,size:l,domainMin:o,domainMax:i,data:new Float32Array(s)}}function oC(e){return Number.isFinite(e)?Math.min(1,Math.max(0,e)):0}function qo(e){return Math.round(oC(e)*255)}function Bu(e){let t=e.size,n=t*t,r=t,o=new Uint8Array(n*r*4);for(let i=0;i<t;i++)for(let a=0;a<t;a++)for(let l=0;l<t;l++){let s=((i*t+a)*t+l)*3,c=(a*n+i*t+l)*4;o[c]=qo(e.data[s]??0),o[c+1]=qo(e.data[s+1]??0),o[c+2]=qo(e.data[s+2]??0),o[c+3]=255}return{width:n,height:r,data:o}}var Rg="rec709";var Mg=["video","img","canvas"],Ne={hueDegrees:{min:0,max:360,inclusiveMax:!1},unit:{min:0,max:1},signedUnit:{min:-1,max:1},secondaryHueRange:{min:0,max:180},secondaryHueSoftness:{min:0,max:180},secondaryHueCombinedMax:180,secondarySoftRangeSoftness:{min:0,max:.5},secondaryHueShift:{min:-180,max:180},effects:{asciiStyle:{min:0,max:7},bloom:{min:0,max:3},bloomRadius:{min:1,max:100},monoScreenShape:{min:0,max:4}}};var kg=["exposure","contrast","highlights","shadows","whites","blacks","temperature","tint","vibrance","saturation"];var Lg=["shadows","midtones","highlights"],Ng=["master","red","green","blue"],Fg=["hueVsHue","hueVsSaturation","hueVsLuma"];var Ig=["vignette","vignetteMidpoint","vignetteRoundness","vignetteFeather","grain","grainSize","grainRoughness"],Dg=["blur","pixelate","chromaBleed","tapeDamage","tapeTracking","tapeNoise","tapeSpeed","filmArtifacts","halftone","halftoneSize","twoInkPrint","twoInkPrintSize","ascii","asciiSize","asciiInvert","asciiStyle","asciiColor","asciiRotation","dither","ditherSize","bloom","bloomRadius","monoScreen","monoScreenSize","monoScreenAngle","monoScreenSpread","monoScreenShape","monoScreenInvert","scanlines","scanlineCount","scanlineSoftness","chromaticAberration","chromaticAngle","crtCurvature","digitalGlitch","digitalGlitchColorSplit","digitalGlitchLineTear","digitalGlitchPixelate","digitalGlitchBlockAmount","digitalGlitchBlockDisplacement","digitalGlitchBlockOpacity","digitalGlitchSpeed","engraving","engravingSpacing","engravingMinThickness","engravingMaxThickness","engravingAngle","engravingContrast","engravingSharpness","engravingWave","engravingWaveFrequency","crosshatch","crosshatchSpacing","crosshatchThickness","crosshatchAngle","crosshatchContrast","crosshatchEdges","crosshatchLineWeight","crosshatchWave","crosshatchWaveFrequency","kuwahara","kuwaharaRadius","kuwaharaSharpness","kuwaharaSaturation"];var d2=Ne.unit,f2=Ne.signedUnit,m2=Ne.effects;var Vt=1024,zo=16;function Pg(e,t,n,r){let o=((2*e+t)*n-e*r)/(e+t);return Math.sign(o)!==Math.sign(n)?0:Math.sign(n)!==Math.sign(r)&&Math.abs(o)>3*Math.abs(n)?3*n:o}function je(e,t){let n=e[t];if(n===void 0)throw new RangeError("Color curve points must be contiguous");return n}function iC(e){let t=[],n=[],r=je(e,0);for(let a of e.slice(1)){let l=a[0]-r[0];t.push(l),n.push((a[1]-r[1])/l),r=a}let o=je(n,0);if(e.length===2)return[o,o];let i=new Array(e.length);i[0]=Pg(je(t,0),je(t,1),o,je(n,1)),i[i.length-1]=Pg(je(t,t.length-1),je(t,t.length-2),je(n,n.length-1),je(n,n.length-2));for(let a=1;a<e.length-1;a+=1){let l=je(n,a-1),s=je(n,a);if(l===0||s===0||Math.sign(l)!==Math.sign(s)){i[a]=0;continue}let c=je(t,a-1),d=je(t,a),f=2*d+c,m=d+2*c;i[a]=(f+m)/(f/l+m/s)}return i}function Og(e,t){if(e.length<2)throw new RangeError("A color curve requires at least two points");if(!Number.isInteger(t)||t<2)throw new RangeError("Curve LUT size must be at least 2");let n=Number.NEGATIVE_INFINITY;for(let[r,o]of e){if(!Number.isFinite(r)||!Number.isFinite(o))throw new TypeError("Color curve points must be finite");if(r<=n)throw new RangeError("Color curve inputs must be strictly increasing");n=r}}function aC(e,t,n){if(!Number.isFinite(t)||!Number.isFinite(n)||t>=n)throw new RangeError("Curve output bounds must be finite and increasing");if(e.some(([,r])=>r<t||r>n))throw new RangeError(`Curve outputs must be between ${t} and ${n}`)}function sC(e,t,n,r,o){let i=n[0]-t[0],a=Math.min(1,Math.max(0,(e-t[0])/i)),l=a*a,s=l*a;return(2*s-3*l+1)*t[1]+(s-2*l+a)*i*r+(-2*s+3*l)*n[1]+(s-l)*i*o}function Hg(e,t,n,r,o){aC(e,r,o);let i=iC(e),a=new Float32Array(t),l=0;for(let s=0;s<t;s+=1){let c=n(s);for(;l<e.length-2&&c>je(e,l+1)[0];)l+=1;let d=je(e,l),f=je(e,l+1),m=sC(c,d,f,je(i,l),je(i,l+1));a[s]=Math.min(o,Math.max(r,m))}return a}function Nr(e,t=Vt){if(Og(e,t),e.length>zo)throw new RangeError(`A color curve supports at most ${zo} points`);if(e.some(([n])=>n<0||n>1))throw new RangeError("Color curve inputs must be between 0 and 1");if(e[0]?.[0]!==0||e[e.length-1]?.[0]!==1)throw new RangeError("Color curves must include input endpoints 0 and 1");return Hg(e,t,n=>n/(t-1),0,1)}function Wu(e,t,n,r=Vt){if(e.length<3)throw new RangeError("A hue curve requires at least three points");if(e.length>zo)throw new RangeError(`A hue curve supports at most ${zo} points`);let o=[...e].sort((s,c)=>s[0]-c[0]);for(let s=0;s<o.length;s+=1){let c=o[s];if(!c||c[0]<0||c[0]>=360)throw new RangeError("Hue curve inputs must be from 0 up to 360 degrees");if(s>0&&c[0]===o[s-1]?.[0])throw new RangeError("Hue curve inputs must be unique")}let i=o.slice(-2).map(([s,c])=>[s-360,c]),a=o.slice(0,2).map(([s,c])=>[s+360,c]),l=[...i,...o,...a];return Og(l,r),Hg(l,r,s=>s/r*360,t,n)}var ns="data-color-grading",Kn="data-hf-color-grading-source-hidden",Yn="data-hf-authored-opacity",Vg="__hf_color_grading_",uC=Rg,Yu=Mg,qu={exposure:0,contrast:0,highlights:0,shadows:0,whites:0,blacks:0,temperature:0,tint:0,vibrance:0,saturation:0},zu={vignette:0,vignetteMidpoint:.5,vignetteRoundness:0,vignetteFeather:.65,grain:0,grainSize:.25,grainRoughness:.5},ju={blur:0,pixelate:0,chromaBleed:0,tapeDamage:0,tapeTracking:0,tapeNoise:1,tapeSpeed:.5,filmArtifacts:0,halftone:0,halftoneSize:0,twoInkPrint:0,twoInkPrintSize:0,ascii:0,asciiSize:5/76,asciiInvert:0,asciiStyle:0,asciiColor:1,asciiRotation:0,dither:0,ditherSize:0,bloom:0,bloomRadius:8,monoScreen:0,monoScreenSize:0,monoScreenAngle:0,monoScreenSpread:0,monoScreenShape:0,monoScreenInvert:0,scanlines:0,scanlineCount:0,scanlineSoftness:0,chromaticAberration:0,chromaticAngle:0,crtCurvature:0,digitalGlitch:0,digitalGlitchColorSplit:0,digitalGlitchLineTear:0,digitalGlitchPixelate:0,digitalGlitchBlockAmount:0,digitalGlitchBlockDisplacement:0,digitalGlitchBlockOpacity:0,digitalGlitchSpeed:0,engraving:0,engravingSpacing:7/17,engravingMinThickness:.2,engravingMaxThickness:3.2/7,engravingAngle:.25,engravingContrast:7/15,engravingSharpness:.59,engravingWave:.2,engravingWaveFrequency:2/9,crosshatch:0,crosshatchSpacing:7/25,crosshatchThickness:.25,crosshatchAngle:.25,crosshatchContrast:1/3,crosshatchEdges:.5,crosshatchLineWeight:0,crosshatchWave:.33,crosshatchWaveFrequency:2/9,kuwahara:0,kuwaharaRadius:1/7,kuwaharaSharpness:5/16,kuwaharaSaturation:.5};var rs=kg,$g=Lg,qg=Ng,zg=Fg,Xu=Ig,Ju=Dg,Gg={exposure:.03,contrast:-.12,highlights:-.1,shadows:.16,whites:-.04,blacks:.08,temperature:.13,vibrance:-.08,saturation:-.08},Bg={vignette:.18};function Ke(e,t,n={},r={},o={},i=1){return{id:e,label:t,intensity:i,adjust:{...qu,...n},details:{...zu,...r},effects:{...ju,...o}}}var Qu=[Ke("neutral","Neutral"),Ke("warm-daylight","Warm Daylight",{exposure:.06,contrast:.07,highlights:-.06,shadows:.08,temperature:.18,saturation:.08}),Ke("clean-studio","Clean Studio",{contrast:.08,highlights:-.08,shadows:.06,temperature:-.08,tint:.03,saturation:.04}),Ke("skin-soft","Skin Soft",{exposure:.04,contrast:-.03,highlights:-.12,shadows:.12,temperature:.08,tint:.02,saturation:.04}),Ke("food-pop","Food Pop",{exposure:.06,contrast:.1,shadows:.06,temperature:.14,vibrance:.1,saturation:.18}),Ke("night-lift","Night Lift",{exposure:.08,contrast:.08,highlights:-.18,shadows:.2,blacks:-.08,saturation:.04},{vignette:.12}),Ke("muted-editorial","Muted Editorial",{exposure:-.02,contrast:.08,highlights:-.08,shadows:.06,blacks:-.05,temperature:-.03,saturation:-.12},{vignette:.1}),Ke("vintage-wash","Vintage Wash",Gg,Bg),Ke("mono-clean","Mono Clean",{contrast:.12,highlights:-.04,shadows:.04,blacks:-.08,saturation:-1}),Ke("mono-fade","Mono Fade",{contrast:-.04,highlights:-.06,shadows:.1,blacks:.12,saturation:-1},{vignette:.08}),Ke("soft-boost","Soft Boost",{exposure:.06,contrast:-.04,highlights:-.14,shadows:.16,vibrance:.08,saturation:.1}),Ke("bright-pop","Bright Pop",{exposure:.12,contrast:.12,whites:.08,blacks:-.04,vibrance:.08,saturation:.14}),Ke("deep-contrast","Deep Contrast",{exposure:-.03,contrast:.2,highlights:-.08,shadows:-.08,blacks:-.12,saturation:.06}),Ke("creator-camcorder","Creator Camcorder",{contrast:.08,highlights:-.05,shadows:.02,whites:.03,blacks:-.04,temperature:-.03,tint:-.015,vibrance:-.03,saturation:-.06},{vignette:.06,grain:.08,grainSize:.18,grainRoughness:.58},{chromaBleed:.55},.72),Ke("vhs-playback","VHS Playback",{contrast:-.04,saturation:-.08},{grain:.16,grainSize:.12,grainRoughness:.72},{tapeDamage:.82,tapeTracking:.85,tapeNoise:.3,tapeSpeed:.5,chromaBleed:.5,chromaticAberration:.18,scanlines:.35,scanlineCount:.17,scanlineSoftness:1,digitalGlitch:.32,digitalGlitchLineTear:.08,digitalGlitchSpeed:.5}),Ke("home-movie-8mm","8mm Home Movie",Gg,{...Bg,vignette:.28,vignetteMidpoint:.54,vignetteFeather:.72,grain:.34,grainSize:.18,grainRoughness:.72},{filmArtifacts:.62},.72),Ke("editorial-halftone","Editorial Halftone",{contrast:.04,saturation:.04},{},{halftone:.94,halftoneSize:.36}),Ke("two-ink-print","Two-Ink Print",{contrast:.08,highlights:-.06,shadows:.04},{},{twoInkPrint:1,twoInkPrintSize:.42})],cC=new Map(Qu.map(e=>[e.id,e])),dC=/^\$(?:\{([A-Za-z0-9_.:-]+)\}|([A-Za-z0-9_.:-]+))$/,fC={exposure:{min:-2,max:2},contrast:{min:-1,max:1},highlights:{min:-1,max:1},shadows:{min:-1,max:1},whites:{min:-1,max:1},blacks:{min:-1,max:1},temperature:{min:-1,max:1},tint:{min:-1,max:1},vibrance:{min:-1,max:1},saturation:{min:-1,max:1}},Fr={hue:0,amount:0,level:0},Ug={amount:Ne.unit,level:Ne.signedUnit},En=[[0,0],[1,1]],Ir=[],mC={hueVsHue:Ne.secondaryHueShift,hueVsSaturation:Ne.signedUnit,hueVsLuma:Ne.signedUnit},Vu={center:0,range:180,softness:0},$u={min:0,max:1,softness:.05},pC={vignette:Ne.unit,vignetteMidpoint:Ne.unit,vignetteRoundness:Ne.signedUnit,vignetteFeather:Ne.unit,grain:Ne.unit,grainSize:Ne.unit,grainRoughness:Ne.unit},Ku=Ne.unit,hC=Ne.effects,jg=["blur","pixelate","chromaBleed","tapeDamage","filmArtifacts","halftone","twoInkPrint","ascii","dither","bloom","monoScreen","scanlines","chromaticAberration","crtCurvature","digitalGlitch","engraving","crosshatch","kuwahara"];var gC=Qu.filter(e=>jg.some(t=>e.effects[t]>1e-4)),E2=Qu.filter(e=>!gC.includes(e)),A2={blur:{blur:.45},pixelate:{pixelate:.55},bloom:{bloom:.55,bloomRadius:8},chromaBleed:{chromaBleed:.55},tapeDamage:{tapeDamage:.65,tapeTracking:.55,tapeNoise:.25,tapeSpeed:.5},filmArtifacts:{filmArtifacts:.55},scanlines:{scanlines:.35,scanlineCount:.17,scanlineSoftness:1},chromaticAberration:{chromaticAberration:.15,chromaticAngle:0},crtCurvature:{crtCurvature:.2},digitalGlitch:{digitalGlitch:.55,digitalGlitchColorSplit:.25,digitalGlitchLineTear:.25,digitalGlitchPixelate:.15,digitalGlitchBlockAmount:.5,digitalGlitchBlockDisplacement:.25,digitalGlitchBlockOpacity:0,digitalGlitchSpeed:.5},halftone:{halftone:.94,halftoneSize:.36},twoInkPrint:{twoInkPrint:1,twoInkPrintSize:.42},ascii:{ascii:1,asciiSize:5/76,asciiInvert:0,asciiStyle:0,asciiColor:1,asciiRotation:0},dither:{dither:1,ditherSize:.5},monoScreen:{monoScreen:1,monoScreenSize:.35,monoScreenAngle:.25,monoScreenSpread:.3,monoScreenShape:0,monoScreenInvert:0},engraving:{engraving:1,engravingSpacing:7/17,engravingMinThickness:.2,engravingMaxThickness:3.2/7,engravingAngle:.25,engravingContrast:7/15,engravingSharpness:.59,engravingWave:.2,engravingWaveFrequency:2/9},crosshatch:{crosshatch:1,crosshatchSpacing:7/25,crosshatchThickness:.25,crosshatchAngle:.25,crosshatchContrast:1/3,crosshatchEdges:.5,crosshatchLineWeight:0,crosshatchWave:.33,crosshatchWaveFrequency:2/9},kuwahara:{kuwahara:1,kuwaharaRadius:1/7,kuwaharaSharpness:5/16,kuwaharaSaturation:.5}},Kg=[{path:"intensity",name:"--hf-color-grading-intensity",min:0,max:1},{path:"lut.intensity",name:"--hf-color-grading-lut-intensity",min:0,max:1},{path:"adjust.exposure",name:"--hf-color-grading-exposure",min:-2,max:2},{path:"effects.blur",name:"--hf-color-grading-blur",min:0,max:1},{path:"effects.bloom",name:"--hf-color-grading-bloom",min:0,max:3},{path:"effects.kuwahara",name:"--hf-color-grading-kuwahara",min:0,max:1},{path:"effects.pixelate",name:"--hf-color-grading-pixelate",min:0,max:1},{path:"effects.ascii",name:"--hf-color-grading-ascii",min:0,max:1},{path:"effects.dither",name:"--hf-color-grading-dither",min:0,max:1}];var bC=/^#[0-9a-f]{6}$/i;function xC(e){return!Array.isArray(e)||e.length<2||e.length>6||!e.every(t=>typeof t=="string"&&bC.test(t))?null:e.map(t=>t.toLowerCase())}function Qe(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ts(e,t,n){return Number.isFinite(e)?Math.min(n,Math.max(t,e)):0}function Yg(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?Math.min(1,Math.max(0,n)):t}function at(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?ts(n,t.min,t.max):0}function Zu(e,t=0){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?(n%360+360)%360:t}function yC(e){let t=Qe(e)?e:{};return $g.reduce((n,r)=>{let o=Qe(t[r])?t[r]:{};return n[r]={hue:Zu(o.hue,Fr.hue),amount:at(o.amount??Fr.amount,Ug.amount),level:at(o.level??Fr.level,Ug.level)},n},{shadows:{...Fr},midtones:{...Fr},highlights:{...Fr}})}function SC(e){if(!Array.isArray(e)||e.length!==2)return null;let t=Number(e[0]),n=Number(e[1]);return Number.isFinite(t)&&Number.isFinite(n)?[ts(t,0,1),ts(n,0,1)]:null}function Xg(e){return e.some((t,n)=>n>0&&t[0]===e[n-1]?.[0])}function vC(e){(e[0]?.[0]??0)>0&&e.unshift([0,0]),(e.at(-1)?.[0]??1)<1&&e.push([1,1])}function EC(e){if(!Array.isArray(e)||e.length<2)return En;let t=[];for(let n of e){let r=SC(n);if(!r)return En;t.push(r)}return t.sort((n,r)=>n[0]-r[0]),Xg(t)||(vC(t),t.length>16)?En:t}function AC(e){let t=Qe(e)?e:{};return qg.reduce((n,r)=>(n[r]=EC(t[r]),n),{master:En,red:En,green:En,blue:En})}function wC(e,t){if(!Array.isArray(e)||e.length!==2)return null;let n=Number(e[0]),r=Number(e[1]);return Number.isFinite(n)&&Number.isFinite(r)?[Zu(n),ts(r,t.min,t.max)]:null}function _C(e,t){if(!Array.isArray(e)||e.length<3||e.length>16)return Ir;let n=[];for(let r of e){let o=wC(r,t);if(!o)return Ir;n.push(o)}return n.sort((r,o)=>r[0]-o[0]),Xg(n)?Ir:n}function CC(e){let t=Qe(e)?e:{};return zg.reduce((n,r)=>(n[r]=_C(t[r],mC[r]),n),{hueVsHue:Ir,hueVsSaturation:Ir,hueVsLuma:Ir})}function Wg(e){let t=Qe(e)?e:{},n=at(t.min??$u.min,Ku),r=at(t.max??$u.max,Ku);return{min:Math.min(n,r),max:Math.max(n,r),softness:at(t.softness??$u.softness,Ne.secondarySoftRangeSoftness)}}function TC(e){let t=Qe(e)?e:{},n=at(t.range??Vu.range,Ne.secondaryHueRange);return{center:Zu(t.center,Vu.center),range:n,softness:at(t.softness??Vu.softness,{min:Ne.secondaryHueSoftness.min,max:Ne.secondaryHueCombinedMax-n})}}function RC(e){return{hueShift:at(e.hueShift??0,Ne.secondaryHueShift),saturation:at(e.saturation??0,Ne.signedUnit),luma:at(e.luma??0,Ne.signedUnit),temperature:at(e.temperature??0,Ne.signedUnit),tint:at(e.tint??0,Ne.signedUnit)}}function MC(e){return!Qe(e)||!Qe(e.key)||!Qe(e.correction)?null:{enabled:e.enabled!==!1,key:{hue:TC(e.key.hue),saturation:Wg(e.key.saturation),luma:Wg(e.key.luma)},correction:RC(e.correction)}}function kC(e){if(!Array.isArray(e))return[];let t=[];for(let n of e.slice(0,4)){let r=MC(n);r&&t.push(r)}return t}function LC(e){if(e==null)return null;let t=String(e).trim();return t||null}function NC(e){if(e==null)return null;if(typeof e=="string"){let n=e.trim();return n?{src:n,intensity:1}:null}if(!Qe(e))return null;let t=e.src;return typeof t!="string"||t.trim()===""?null:{src:t.trim(),intensity:Yg(e.intensity,1)}}function FC(e){if(typeof e=="string"){let t=e.trim();if(!t)return null;if(t.startsWith("{"))try{let n=JSON.parse(t);return Qe(n)?n:null}catch{return null}return{preset:t}}return Qe(e)?e:null}function IC(e,t){let n=e.trim().match(dC);if(!n)return e;let r=n[1]??n[2]??"";return r&&Object.hasOwn(t,r)?t[r]:e}function es(e,t){if(typeof e=="string"){let r=IC(e,t);if(r!==e)return r;let o=e.trim();if(!o.startsWith("{"))return e;try{return es(JSON.parse(o),t)}catch{return e}}if(Array.isArray(e))return e.map(r=>es(r,t));if(!Qe(e))return e;let n={};for(let[r,o]of Object.entries(e))n[r]=es(o,t);return n}function DC(e){return e?cC.get(e)??null:null}function os(e){let t=FC(e);if(!t||t.enabled===!1)return null;let n=LC(t.preset),r=DC(n),o=r?.adjust??qu,i=r?.details??zu,a=r?.effects??ju,l=Qe(t.adjust)?t.adjust:{},s=Qe(t.details)?t.details:{},c=Qe(t.effects)?t.effects:{},d=rs.reduce((p,x)=>(p[x]=at(l[x]??o[x],fC[x]),p),{...qu}),f=Xu.reduce((p,x)=>(p[x]=at(s[x]??i[x],pC[x]),p),{...zu}),m=Ju.reduce((p,x)=>(p[x]=at(c[x]??a[x],hC[x]??Ku),p),{...ju});return{enabled:!0,preset:n,intensity:Yg(t.intensity,r?.intensity??1),adjust:d,wheels:yC(t.wheels),curves:AC(t.curves),hueCurves:CC(t.hueCurves),secondaries:kC(t.secondaries),details:f,effects:m,palette:xC(t.palette),lut:NC(t.lut),colorSpace:typeof t.colorSpace=="string"&&t.colorSpace.trim()?t.colorSpace.trim():uC}}function Jg(e,t){return os(es(e,t))}function PC(e){return $g.some(t=>Math.abs(e[t].amount)>1e-4||Math.abs(e[t].level)>1e-4)}function ec(e){return qg.some(t=>e[t].some(([n,r])=>Math.abs(n-r)>1e-4))}function tc(e){return zg.some(t=>e[t].some(([,n])=>Math.abs(n)>1e-4))}function nc(e){return e.some(t=>t.enabled&&Object.values(t.correction).some(n=>Math.abs(n)>1e-4))}function Qg(e){return e?.enabled?Math.abs(e.details.vignette)>1e-4||Math.abs(e.details.grain)>1e-4||jg.some(n=>Math.abs(e.effects[n])>1e-4)?!0:e.intensity===0?!1:e.lut&&e.lut.intensity!==0?!0:rs.some(n=>Math.abs(e.adjust[n])>1e-4)||(e.wheels?PC(e.wheels):!1)||(e.curves?ec(e.curves):!1)||(e.hueCurves?tc(e.hueCurves):!1)||(e.secondaries?nc(e.secondaries):!1):!1}var is=/^(|transparent|rgba\(.*,\s*0\)|.*\/\s*0%?\s*\))$/,OC=new Set(["IMG","VIDEO","IFRAME","EMBED","OBJECT","CANVAS"]),Zg="http://www.w3.org/2000/svg",HC=new Set(["svg","g","foreignObject"]),GC=["Top","Right","Bottom","Left"],BC={left:-1/0,right:1/0,top:-1/0,bottom:1/0},e0=e=>!!e.backgroundImage&&e.backgroundImage!=="none"||!is.test(e.backgroundColor),UC=e=>{let t=e.getPropertyValue("-webkit-text-fill-color")||e.color,n=Number.parseFloat(e.getPropertyValue("-webkit-text-stroke-width"))||0,r=e.getPropertyValue("-webkit-text-stroke-color")||e.color;return!is.test(t)||n>0&&!is.test(r)},t0=e=>GC.map(t=>e[`border${t}Style`]!=="none"&&!is.test(e[`border${t}Color`])&&Number.parseFloat(e[`border${t}Width`])||0),as=e=>e.bottom-e.top,rc=(e,t,n)=>t>=e.left&&t<=e.right&&n>=e.top&&n<=e.bottom,n0=(e,t)=>({left:Math.min(e.left,t.left),right:Math.max(e.right,t.right),top:Math.min(e.top,t.top),bottom:Math.max(e.bottom,t.bottom)}),WC=(e,t)=>t.display==="none"||t.position==="absolute"||t.position==="fixed"||Number.parseFloat(t.opacity)<=.01&&!e.hasAttribute(Kn);function VC(e,t,n){if(e.width<=0&&e.height<=0)return!1;let r=3*(Number.parseFloat(t.fontSize)||16),o=Math.max(r,Math.min(2*e.height,20*r/3));return n<e.top-o||n>e.bottom+o}function $C(e,t,n,r){let[o,i,a,l]=t0(t);if(!(o||i||a||l))return!1;let s=e.getBoundingClientRect(),{offsetWidth:c,offsetHeight:d}=e,f=c>0?s.width/c:1,m=d>0?s.height/d:1,p={left:s.left+l*f,right:s.right-i*f,top:s.top+o*m,bottom:s.bottom-a*m};return!rc(p,n,r)}function qC(e){let t=[];for(let n of[...e].sort((r,o)=>r.left-o.left)){let r=t.findIndex(o=>n.top<o.bottom&&n.bottom>o.top&&n.left-o.right<=2*Math.max(as(o),as(n)));r<0?t.push(n):t[r]=n0(t[r],n)}return t}function zC(e){let t=[...e].sort((n,r)=>n.top-r.top);return t.flatMap((n,r)=>t.slice(r+1).flatMap(o=>{let i=o.left<n.right&&o.right>n.left,a=o.top-n.bottom<=2*Math.min(as(n),as(o));return i&&a&&o.top>n.bottom?[n0(n,o)]:[]}))}function r0(e,t,n){let r=e.defaultView,o=typeof e.createRange().getClientRects=="function",i=e.createRange(),a=new Map,l=new Map,s=new Map,c=y=>{let E=l.get(y);if(E===void 0){let v=r.getComputedStyle(y);E=WC(y,v)||o&&VC(y.getBoundingClientRect(),v,n),l.set(y,E)}return E},d=y=>{let E=s.get(y);if(E===void 0){let v=y.parentElement,_=v&&y.nodeValue?.trim()?r.getComputedStyle(v):null;E=!!_&&_.visibility!=="hidden"&&UC(_),s.set(y,E)}return E},f=y=>{if(!o)return[BC];let E=[];i.selectNodeContents(y);for(let v of i.getClientRects()){let _=v.bottom-v.top;v.width>0&&_>0&&n>=v.top-2*_&&n<=v.bottom+2*_&&E.push(v)}return E},m=y=>{let E=a.get(y);if(E)return E;E=[];for(let v of y.childNodes)v.nodeType===3?d(v)&&E.push(...f(v)):v.nodeType===1&&v.hasChildNodes()&&!c(v)&&E.push(...m(v));return a.set(y,E),E};function p(y){let E=qC(m(y));return E.some(v=>rc(v,t,n))||zC(E).some(v=>rc(v,t,n))}function x(y,E){let v=r.getComputedStyle(y,E);return!v.content||v.content==="none"||v.content==="normal"||v.display==="none"?!1:v.content!=='""'||e0(v)||t0(v).some(_=>_>0)}let b=(y,E)=>/inset/.test(E.boxShadow)||$C(y,E,t,n)||x(y,"::before")||x(y,"::after");return y=>{if(OC.has(y.tagName)||!(y.namespaceURI!==Zg||HC.has(y.localName))||!r)return!0;let v=r.getComputedStyle(y);return e0(v)||b(y,v)||y.namespaceURI!==Zg&&p(y)}}var jC=["[data-hyperframes-ignore]","[data-hyperframes-picker-ignore]","[data-hf-ignore]","[data-no-inspect]","[data-no-pick]","[data-hyper-shader-loading]"].join(","),KC=["[data-hyperframes-picker-block]","[data-hyper-shader-loading]"].join(","),o0="[data-hf-inner-root],[data-composition-id]:not([data-composition-id] *)",i0=`${o0}{pointer-events:auto!important}`,YC=`@layer hf-picker{${i0}}`;function a0(e){let t=!1,n=null,r=null,o=null,i=null,a,l=new Set;function s(C,N){try{window.dispatchEvent(new CustomEvent(C,{detail:N}))}catch(K){G("runtime.picker.site1",K)}}function c(C){o=C,s("hyperframe:picker:hovered",{elementInfo:o,isPickMode:t,timestamp:Date.now()})}function d(C){i=C,s("hyperframe:picker:selected",{elementInfo:i,isPickMode:t,timestamp:Date.now()})}function f(C){if(l=new Set(Array.from(document.querySelectorAll(o0)).filter($=>getComputedStyle($).pointerEvents==="none")),l.size===0)return C();let N=m(),K=N?p(N):x();try{return C()}finally{K(),l=new Set}}function m(){if(a!==void 0)return a;if(a=null,!Array.isArray(document.adoptedStyleSheets)||typeof CSSStyleSheet>"u")return null;try{let C=new CSSStyleSheet;C.replaceSync(YC),a=C}catch(C){G("runtime.picker.site2",C)}return a}function p(C){return document.adoptedStyleSheets=[...document.adoptedStyleSheets,C],()=>{document.adoptedStyleSheets=document.adoptedStyleSheets.filter(N=>N!==C)}}function x(){let C=document.createElement("style");return C.textContent=i0,(document.head??document.documentElement).appendChild(C),()=>C.remove()}function b(C,N){let K=N.getComputedStyle(C),$=Number.parseFloat(K.opacity||"1");if(Number.isFinite($)&&$<.2&&!(C.textContent??"").trim()){let z=K.backgroundImage;if(z&&z!=="none")return!0}return H(C,N)}function y(C){if(C.namespaceURI!=="http://www.w3.org/2000/svg")return!1;let N=C.tagName.toLowerCase();return N==="filter"||N==="defs"||N.startsWith("fe")}function E(C){if(C.namespaceURI!=="http://www.w3.org/2000/svg"||C.tagName.toLowerCase()!=="rect")return!1;let N=(C.getAttribute("filter")??"").trim();return N&&N!=="none"?!0:(C.ownerDocument.defaultView?.getComputedStyle(C).filter??"none").startsWith("url(")}function v(C){if((C.textContent??"").trim())return!1;if(y(C)||E(C))return!0;let N=[...C.children];return N.length>0&&N.every(K=>v(K))}function _(C,N){let K=Number.parseFloat(N.getComputedStyle(C).opacity||"1");return Number.isFinite(K)&&K<.2}function H(C,N){if(!v(C))return!1;for(let K=C;K&&K!==document.body&&K!==document.documentElement;K=K.parentElement)if(_(K,N)&&v(K))return!0;return!1}function I(C){let N=C.ownerDocument.defaultView;if(!N)return!1;let K=C;if(N.getComputedStyle(C).visibility==="hidden"||b(C,N))return!0;for(;K&&K!==document.body&&K!==document.documentElement;){let $=N.getComputedStyle(K);if($.display==="none"||$.pointerEvents==="none")return!0;let U=Number.parseFloat($.opacity);if(Number.isFinite(U)&&U<=.01&&!K.hasAttribute(Kn))return!0;K=K.parentElement}return!1}function k(C){if(!C||C===document.body||C===document.documentElement)return!1;let N=C.tagName.toLowerCase();return!(N==="script"||N==="style"||N==="link"||N==="meta"||l.has(C)||C.closest(jC)||I(C))}function A(C){return!!C?.closest(KC)}function L(C){let N=C.parentElement?.getAttribute("data-composition-id");return!C.hasAttribute("data-hf-inner-root")||!N?null:`[data-composition-id="${CSS.escape(N)}"] > [data-hf-inner-root]`}function P(C){let N=L(C);if(N)return N;let K=C;if(K.id)return`#${CSS.escape(K.id)}`;let $=C.getAttribute("data-composition-id");if($)return`[data-composition-id="${CSS.escape($)}"]`;let U=C.getAttribute("data-composition-src");if(U)return`[data-composition-src="${CSS.escape(U)}"]`;let z=C.getAttribute("data-track-index");if(z)return`[data-track-index="${CSS.escape(z)}"]`;let re=C.tagName.toLowerCase(),oe=C.parentElement;if(!oe)return re;let ie=oe.querySelectorAll(`:scope > ${re}`);if(ie.length===1)return re;for(let te=0;te<ie.length;te+=1)if(ie[te]===C)return`${re}:nth-of-type(${te+1})`;return re}function q(C){let N=C.tagName.toLowerCase(),K=(C.textContent??"").trim().replace(/\s+/g," "),$=(z,re)=>{let oe=Array.from(z);return oe.length>re?`${oe.slice(0,re-1).join("")}\u2026`:z},U=/^h[1-6]$/.test(N);return U||N==="p"||N==="span"||N==="div"?K.length>0?$(K,56):U?"Heading":"Text":N==="img"?"Image":N==="video"?"Video":N==="audio"?"Audio":N==="svg"?"Shape":C.getAttribute("data-composition-src")?"Composition":N==="section"?"Section":`${N.charAt(0).toUpperCase()}${N.slice(1)}`}function X(C,N,K){let $=typeof K=="number"&&K>0?K:8,U=[];if(document.elementsFromPoint)U=document.elementsFromPoint(C,N);else if(document.elementFromPoint){let te=document.elementFromPoint(C,N);U=te?[te]:[]}if(A(U[0]??null))return[];let z={},re=[],oe=[],ie=r0(document,C,N);for(let[te,Q]of U.entries()){if(!k(Q))continue;let ue=`${Q.tagName}::${Q.id||""}::${te}`;if(!z[ue]&&(z[ue]=!0,re.push(Q),(oe.some(Be=>Q.contains(Be))||ie(Q))&&(oe.push(Q),oe.length>=$)))break}return oe.length>0?oe:re.slice(0,$)}function Z(C){let N=C.getBoundingClientRect(),K={};for(let U of Array.from(C.attributes))U.name.startsWith("data-")&&(K[U.name]=U.value);return{id:C.id||null,tagName:C.tagName.toLowerCase(),selector:P(C),label:q(C),boundingBox:{x:N.left,y:N.top,width:N.width,height:N.height},textContent:C.textContent?C.textContent.trim().slice(0,200):null,src:C.getAttribute("src")||C.getAttribute("data-composition-src")||null,dataAttributes:K}}function J(C,N,K){return f(()=>X(C,N,K)).map(Z)}function D(C){if(!t)return;let N=f(()=>{let $=X(C.clientX,C.clientY,1)[0]??(Pe(C.target)?C.target:null);return k($)?$:null});if(!N||n===N)return;n&&n.classList.remove("__hf-pick-highlight"),n=N,N.classList.add("__hf-pick-highlight");let K=Z(N);c(K),e.postMessage({source:"hf-preview",type:"element-hovered",elementInfo:K})}function R(C){if(!t)return;C.preventDefault(),C.stopPropagation(),C.stopImmediatePropagation();let N=J(C.clientX,C.clientY,8);N.length!==0&&(c(N[0]??null),e.postMessage({source:"hf-preview",type:"element-pick-candidates",candidates:N,selectedIndex:0,point:{x:C.clientX,y:C.clientY}}))}function M(C){C.key==="Escape"&&(W(),e.postMessage({source:"hf-preview",type:"pick-mode-cancelled"}))}function j(){t||(t=!0,r=document.createElement("style"),r.textContent=[".__hf-pick-highlight { outline: 2px solid #4f8cf7 !important; outline-offset: 2px; cursor: crosshair !important; }",".__hf-pick-active * { cursor: crosshair !important; }"].join(`
|
|
42
|
+
`),document.head.appendChild(r),document.body.classList.add("__hf-pick-active"),document.addEventListener("mousemove",D,!0),document.addEventListener("click",R,!0),document.addEventListener("keydown",M,!0),s("hyperframe:picker:mode",{isPickMode:!0,timestamp:Date.now()}))}function W(){t&&(t=!1,n&&(n.classList.remove("__hf-pick-highlight"),n=null),r&&(r.remove(),r=null),document.body.classList.remove("__hf-pick-active"),document.removeEventListener("mousemove",D,!0),document.removeEventListener("click",R,!0),document.removeEventListener("keydown",M,!0),s("hyperframe:picker:mode",{isPickMode:!1,timestamp:Date.now()}))}function ee(){window.__HF_PICKER_API={enable:j,disable:W,isActive:()=>t,getHovered:()=>o,getSelected:()=>i,getCandidatesAtPoint:(C,N,K)=>Number.isFinite(C)&&Number.isFinite(N)?J(C,N,K):[],pickAtPoint:(C,N,K)=>{if(!Number.isFinite(C)||!Number.isFinite(N))return null;let $=J(C,N,8);if(!$.length)return null;let U=Math.max(0,Math.min($.length-1,Number(K??0))),z=$[U]??null;return z?(d(z),e.postMessage({source:"hf-preview",type:"element-picked",elementInfo:z}),W(),z):null},describe:C=>Pe(C)?Z(C):null,pickManyAtPoint:(C,N,K)=>{if(!Number.isFinite(C)||!Number.isFinite(N))return[];let $=J(C,N,8);if(!$.length)return[];let U=[],z=Array.isArray(K)?K:[0];for(let re of z){let oe=Math.max(0,Math.min($.length-1,Math.floor(Number(re)))),ie=$[oe];if(!ie)continue;U.some(Q=>Q.selector===ie.selector&&Q.tagName===ie.tagName)||U.push(ie)}return U.length?(d(U[0]??null),e.postMessage({source:"hf-preview",type:"element-picked-many",elementInfos:U}),W(),U):[]}},s("hyperframe:picker:api-ready",{hasApi:!0,timestamp:Date.now()})}return{enablePickMode:j,disablePickMode:W,installPickerApi:ee}}function jo(e,t,n){let r=e?.[t];return typeof r=="function"?Number(r.call(e))||n:typeof r=="number"&&Number.isFinite(r)?r:(r!=null&&G("runtime.player.nonConformantNum",{prop:t,actual:typeof r}),n)}function Tt(e,t){let n=e?.[t];if(typeof n=="function"){n.call(e);return}n!==void 0&&G("runtime.player.nonConformantVoid",{method:t,actual:typeof n})}function Ko(e,t,n){if(e){for(let r of Object.values(e))if(!(!r||r===t))try{n(r)}catch(o){G("runtime.player.site1",o)}}}function ss(e,t,n){return n?.exact===!0?Number.isFinite(e)&&e>0?e:0:Ih(e,t,n?.subFrameDivisions)}function s0(e,t,n,r){let o=ss(t,n,r),i=r?.suppressEvents===!0;return Tt(e,"pause"),typeof e.totalTime=="function"?e.totalTime(o,i):typeof e.seek=="function"&&e.seek(o,i),o}function XC(e,t,n,r,o){let i=[];Ko(e,t,a=>{Tt(a,"play"),i.push(a)});try{return s0(t,n,r,o)}finally{for(let a of i)try{Tt(a,"pause")}catch(l){G("runtime.player.site2",l)}}}function JC(e,t){Ko(e,t,n=>{Tt(n,"play")})}function l0(e){let t=e.transport;return t?{_timeline:null,play:()=>t.play(),pause:()=>t.pause(),seek:(n,r)=>t.seek(n,r),renderSeek:(n,r)=>t.renderSeek(n,r),getTime:()=>t.getTime(),getDuration:()=>t.getDuration(),isPlaying:()=>t.isPlaying(),setPlaybackRate:n=>t.setPlaybackRate(n),getPlaybackRate:()=>t.getPlaybackRate()}:{_timeline:null,play:()=>{let n=e.getTimeline();if(!n||e.getIsPlaying())return;let r=Math.max(0,Number(e.getSafeDuration?.()??jo(n,"duration",0))||0);r>0&&Math.max(0,jo(n,"time",0))>=r&&(Tt(n,"pause"),typeof n.seek=="function"&&n.seek(0,!1),e.onDeterministicSeek(0),e.setIsPlaying(!1),e.onSyncMedia(0,!1),e.onRenderFrameSeek(0)),typeof n.timeScale=="function"&&n.timeScale(e.getPlaybackRate()),Tt(n,"play"),Ko(e.getTimelineRegistry?.(),n,o=>{typeof o.timeScale=="function"&&o.timeScale(e.getPlaybackRate()),Tt(o,"play")}),e.onDeterministicPlay(),e.setIsPlaying(!0),e.onShowNativeVideos(),e.onStatePost(!0)},pause:()=>{let n=e.getTimeline();if(!n)return;Tt(n,"pause"),Ko(e.getTimelineRegistry?.(),n,o=>{Tt(o,"pause")});let r=Math.max(0,jo(n,"time",0));e.onDeterministicSeek(r),e.onDeterministicPause(),e.setIsPlaying(!1),e.onSyncMedia(r,!1),e.onRenderFrameSeek(r),e.onStatePost(!0)},seek:(n,r)=>{let o=e.getTimeline();if(!o)return;let i=Math.max(0,Number(n)||0),a=e.getIsPlaying(),l=XC(e.getTimelineRegistry?.(),o,i,e.getCanonicalFps());e.onDeterministicSeek(l),r?.keepPlaying&&a?(typeof o.timeScale=="function"&&o.timeScale(e.getPlaybackRate()),Tt(o,"play"),Ko(e.getTimelineRegistry?.(),o,s=>{typeof s.timeScale=="function"&&s.timeScale(e.getPlaybackRate()),Tt(s,"play")}),e.onDeterministicPlay(),e.onShowNativeVideos(),e.onSyncMedia(l,!0)):(e.setIsPlaying(!1),e.onSyncMedia(l,!1)),e.onRenderFrameSeek(l),e.onStatePost(!0)},renderSeek:(n,r)=>{let o=e.getTimeline(),i=e.getCanonicalFps(),a=o?(JC(e.getTimelineRegistry?.(),o),s0(o,n,i,r)):ss(Math.max(0,Number(n)||0),i,r);e.onDeterministicSeek(a,r),e.setIsPlaying(!1),e.onSyncMedia(a,!1),e.onRenderFrameSeek(a),e.onStatePost(!0)},getTime:()=>jo(e.getTimeline(),"time",0),getDuration:()=>jo(e.getTimeline(),"duration",0),isPlaying:()=>e.getIsPlaying(),setPlaybackRate:n=>e.setPlaybackRate(n),getPlaybackRate:()=>e.getPlaybackRate()}}function oc(){return{capturedTimeline:null,isPlaying:!1,currentTime:0,deterministicAdapters:[],canonicalFps:30,bridgeMuted:!1,bridgeVolume:1,mediaOutputMuted:!1,nativeMediaSyncDisabled:!1,webAudioMediaDisabled:!1,mediaAutoplayBlockedPosted:!1,mediaForceSyncNextTick:!1,playbackRate:1,bridgeLastPostedFrame:-1,bridgeLastPostedAt:0,bridgeLastPostedPlaying:!1,bridgeLastPostedMuted:!1,bridgeMaxPostIntervalMs:80,controlBridgeHandler:null,beforeUnloadHandler:null,injectedCompStyles:[],injectedCompScripts:[],injectedCompLinks:[],cachedTimedMediaEls:[],cachedMediaClips:[],cachedVideoClips:[],cachedMediaTimelineDurationSeconds:0,tornDown:!1,transportClock:null,transportRafId:null}}function Xn(e){if(e==null||e.trim()==="")return null;let t=Number.parseFloat(e);return Number.isFinite(t)&&t>0?t:null}function Dr(e){if(e==null||e.trim()==="")return null;let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:null}function Rt(e=document){let t=e.querySelector('[data-composition-id][data-root="true"]');return ve(t)?t:e.querySelector("[data-composition-id]")}var QC=new Set(["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"]);function ic(e){return e.id||e.getAttribute("data-hf-id")||null}function ZC(e){return Ge(e)}function eT(e,t){let n=e.getAttribute("data-composition-id");if(!n)return null;let r=en(t[n]);return r!=null&&r>0?r:null}function tT(e){return pe(e)?Number.isFinite(e.duration)?Bt(e,e.duration):null:yr(e)}function nT(e,t,n,r){let o=ZC(e.getAttribute("data-duration"));return o!=null&&o>0?o:eT(e,t)??tT(e)??Math.max(0,n-r)}function rT(e){for(let[t,n]of e){let r=t.parentElement;for(;r;){let o=e.get(r);if(o){n.parentId=o.id,o.children.push(n);break}r=r.parentElement}}}function u0(e){let{startResolver:t,timelineRegistry:n,rootDuration:r}=e,o=new Map,i=Rt(),a=0;for(let l of document.querySelectorAll("[data-start]")){if(l===i||QC.has(l.tagName))continue;let s=t.resolveStartForElement(l,0);if(nT(l,n,r,s)<=0)continue;let c={id:ic(l)??`__clip-${a++}`,element:l,parentId:null,children:[]};o.set(l,c)}return rT(o),{roots:Array.from(o.values()).filter(l=>l.parentId===null)}}var ac="css:root",c0=["backdrop-filter","clip-path","filter","mask","mask-border-source","mask-image","perspective","rotate","scale","transform","translate","-webkit-mask-image"],oT=new Set([...c0,"contain","isolation","mask-border","mix-blend-mode","opacity"]),iT=new Set(["absolute","relative"]),aT=new Set(["flex","inline-flex","grid","inline-grid"]),sT=new Set(["layout","paint","strict","content"]),lT=new Set(["size","inline-size"]);function uT(e){return e.position==="fixed"||e.position==="sticky"}function cT(e,t){if(t.zIndex==="auto"||t.zIndex==="")return!1;if(iT.has(t.position))return!0;let n=e.parentElement?e.ownerDocument.defaultView?.getComputedStyle(e.parentElement).display:null;return n!=null&&aT.has(n)}function dT(e){let t=Number.parseFloat(e.opacity);if(Number.isFinite(t)&&t<1||e.getPropertyValue("isolation")==="isolate")return!0;let n=e.getPropertyValue("mix-blend-mode");return n&&n!=="normal"?!0:c0.some(r=>{let o=e.getPropertyValue(r);return o!==""&&o!=="none"})}function fT(e){return e.getPropertyValue("contain").split(/\s+/).some(n=>sT.has(n))?!0:lT.has(e.getPropertyValue("container-type"))}function mT(e){return e.getPropertyValue("will-change").split(",").map(t=>t.trim()).some(t=>oT.has(t))}function pT(e,t){return e.hasAttribute(dt)||uT(t)||cT(e,t)||dT(t)||fT(t)?!0:mT(t)}function hT(e){let t=[],n=e;for(;n?.parentElement;)t.push(Array.prototype.indexOf.call(n.parentElement.children,n)),n=n.parentElement;return`css:${t.reverse().join(".")}`}function ls(e,t){let n=t?.get(e.parentElement);if(n!==void 0)return n;let r=gT(e);return t?.set(e.parentElement,r),r}function gT(e){let t=e.ownerDocument.defaultView;if(!t)return ac;let n=e.parentElement;for(;n&&n!==e.ownerDocument.documentElement;){try{if(pT(n,t.getComputedStyle(n)))return hT(n)}catch{return ac}n=n.parentElement}return ac}function sc(e){let t=e.trim().toLowerCase();return!(!t||t==="main"||t.includes("caption")||t.includes("ambient"))}var d0=e=>e!==null&&Number.isFinite(e)&&e>0;function Pr(e){let t=e.clipEndsSeconds.filter(r=>r===null).length;if(d0(e.authoredDurationSeconds))return{seconds:e.authoredDurationSeconds,source:"authored",pendingClips:t};let n=e.clipEndsSeconds.filter(d0);return n.length>0?{seconds:Math.max(...n),source:"derived",pendingClips:t}:{seconds:null,source:"unresolved",pendingClips:t,reason:t>0?"every clip's length is still pending":"no authored duration and no clip with a length"}}var Or=7200,tn=1/60,Yo=e=>e!==null&&e>tn?e:null;function f0(e){return{width:Dr(e.getAttribute("data-width")),height:Dr(e.getAttribute("data-height"))}}function m0(e,t){let n=[];for(let r of e.querySelectorAll("video[data-start], audio[data-start]")){let o=t.mediaStart(r);if(!Number.isFinite(o))continue;let i=t.mediaDuration(r);i==null||i<=tn||n.push(Math.max(0,o)+i)}return Yo(Pr({authoredDurationSeconds:null,clipEndsSeconds:n}).seconds)}function p0(e,t){let n=[];for(let o of e.querySelectorAll("[data-composition-id][data-start]")){if(o.parentElement?.closest("[data-composition-id]")!==e)continue;let i=t.resolveStartForElement(o,0),a=t.resolveDurationForElement(o);!Number.isFinite(i)||a==null||a<=0||n.push(Math.max(0,i)+a)}let r=Ge(e.getAttribute("data-duration"));return Yo(Pr({authoredDurationSeconds:null,clipEndsSeconds:[r,...n]}).seconds)}var bT=e=>e.hasAttribute("data-composition-id")||e.hasAttribute("data-composition-src");function h0(e,t,{unregisteredLottie:n}){let r=[];for(let i of e.querySelectorAll("[data-start]")){let a=t.resolveStartForElement(i,0);if(!Number.isFinite(a))continue;let l=t.resolveDurationForElement(i);l!=null?r.push(Math.max(0,a)+l):(pe(i)||bT(i))&&r.push(null)}(n||e.querySelector("[data-lottie-src]"))&&r.push(null);let o=Pr({authoredDurationSeconds:null,clipEndsSeconds:r});return o.pendingClips>0?{...o,seconds:null,source:"unresolved",reason:"a clip's length is pending"}:o}function g0(e){if(e.declared!==null&&Number.isFinite(e.declared)&&e.declared>0)return e.declared;let t=Yo(e.timeline()),n=Math.max(0,...e.floors().map(s=>s??0)),r=Number.isFinite(e.fallback)&&e.fallback>tn?e.fallback:0,o=Math.max(n,r),a=t!==null&&t>=Or&&Yo(o)!==null?null:t,l;return a!==null?l=Math.max(a,o):Yo(n)!==null?l=o:r>0?l=r:l=e.derived(),l>0?l:0}function dc(e,t){let n=e.tagName.toLowerCase();if(n==="script"||n==="style"||n==="link"||n==="meta")return null;let o=n==="video"||n==="audio"?t.resolver.resolveMediaStartForElement(e):t.resolver.resolveStartForElement(e,0),i=t.resolver.resolveDurationForElement(e),a=e.getAttribute("data-composition-id");if(a){let l=t.timelineRegistry[a],s=en(l);!(e.hasAttribute("data-duration")||e.hasAttribute("data-end")||e.hasAttribute(Sr)||e.hasAttribute(vr))&&(i==null||i<=0)&&s!=null&&s>0&&(i=s)}return{start:o,end:i!=null&&i>0?o+i:Number.POSITIVE_INFINITY}}function us(e,t){let n=dc(e,t);if(!n)return!1;let r=t.exportRenderSeek?$a(n.start,n.end,t.canonicalFps):n;return wr(t.currentTime,r.start,r.end,t.compositionDuration)}function Jo(e){return Ge(e)}function lc(e){let t=e.getAttribute("data-duration"),n=e.getAttribute(Sr),r=Er({start:0,duration:t,authoredDuration:n})?.duration;return r??([t,n].map(Jo).some(i=>i!=null&&i<=0)?0:null)}function b0(e){return Er({start:0,end:e.getAttribute("data-end"),authoredEnd:e.getAttribute(vr)})?.end??null}function uc(e){try{let t=e.style?.zIndex;if(t&&t!=="auto"){let n=parseInt(t,10);if(Number.isFinite(n))return n}return 0}catch{return 0}}function cc(...e){let t=e.filter(n=>Number.isFinite(n??null));return t.length===0?null:Math.max(...t)}function Hr(e,t){let n=e.getAttribute("data-track-index")??e.getAttribute("data-track");if(n==null)return t;let r=Number.parseInt(n,10);return Number.isFinite(r)?r:t}function Qo(e){let t=String(e??"").trim();if(!t)return null;let n=t.toLowerCase();if(n.startsWith("data:")||n.startsWith("javascript:"))return null;try{return new URL(t,document.baseURI).toString()}catch{return t}}function x0(e){let t=e.getAttribute("src")??e.getAttribute("data-src");if(t)return Qo(t);let n=e.getAttribute("data-composition-src");if(n)return Qo(n);let r=e.querySelector("img[src], video[src], audio[src], source[src]");return r?Qo(r.getAttribute("src")):null}function yT(e){let t=e.className;return typeof t!="string"?null:t.split(/\s+/).map(n=>n.trim()).find(n=>n&&n!=="clip"&&!n.startsWith("__hf-"))??null}function ST(e){if(!e)return null;let t;try{t=new URL(e,document.baseURI).pathname.split("/").filter(Boolean).at(-1)}catch{t=e.replace(/[?#].*$/,"").split(/[\\/]/).filter(Boolean).at(-1)}if(!t)return null;try{return decodeURIComponent(t)}catch{return t}}function vT(e){let t=e.textContent?.replace(/\s+/g," ").trim();return t?t.length>32?`${t.slice(0,31)}...`:t:null}function Xo(e){let t=e.replace(/\.[^.]+$/i,"").replace(/[-_]+/g," ").replace(/\s+/g," ").trim();return t?t.replace(/\b\w/g,n=>n.toUpperCase()):e}function y0(e){return e.getAttribute("data-hf-original-composition-id")??e.getAttribute("data-composition-id")}function ET(e,t,n){let r=e.getAttribute("data-timeline-label")??e.getAttribute("data-label")??e.getAttribute("aria-label")??null;if(r?.trim())return r.trim();let o=y0(e);if(o)return Xo(o);let i=e.id;if(i)return Xo(i);let a=yT(e);if(a)return Xo(a);let l=ST(x0(e));if(l)return Xo(l);let s=vT(e);return s||`${Xo(t)} ${n+1}`}function fc(e){let t=new Map,r=window.__timelines??{},o=it({timelineRegistry:r,includeAuthoredTimingAttrs:!0}),i=$=>{if(!$)return null;let U=en(r[$]);return U!=null&&U>0?U:null},a=()=>{let $=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if($.length===0)return null;let U=0;for(let z of $){let re=o.resolveMediaStartForElement(z);if(!Number.isFinite(re))continue;let oe=xr(z);oe==null||oe<=0||(U=Math.max(U,Math.max(0,re)+oe))}return U>0?U:null},l=($,U)=>{let z=[],re=null,oe=null,ie=null,te=$.parentElement;for(;te;){let Q=te.getAttribute("data-composition-id");Q&&(z.push(Q),!ie&&te!==U&&(ie=Q),re==null&&(re=o.resolveStartForElement(te,0)),oe==null&&(oe=Jo(te.getAttribute("data-duration"))??i(Q)??null)),te=te.parentElement}return{parentCompositionId:ie,compositionAncestors:z.reverse(),inheritedStart:re,inheritedDuration:oe}},s=Rt(),c=Array.from(document.querySelectorAll("[data-composition-id]")),d=s?.getAttribute("data-composition-id")??null,f=s?o.resolveStartForElement(s,0):0,m=a(),p=m!=null?Math.max(0,m-Math.max(0,f)):null,x=i(d),b=lc(s??document.body),y=cc(...c.filter($=>$!==s).map($=>{let U=o.resolveStartForElement($,0),z=o.resolveDurationForElement($)??i($.getAttribute("data-composition-id"))??null;return!Number.isFinite(U)||z==null||z<=0?null:Math.max(0,U)+z})),E=y!=null?Math.max(0,y-Math.max(0,f)):null,v=typeof x=="number"&&Number.isFinite(x)&&x>0?x:null,_=typeof b=="number"&&Number.isFinite(b)&&b>0?b:null,H=typeof p=="number"&&Number.isFinite(p)&&p>0?p:null,I=typeof E=="number"&&Number.isFinite(E)&&E>0?E:null,k=cc(H,I),A=v!=null&&k!=null&&v>=Or,P=_??(A?k:cc(v,H,I))??null,X=(P!=null?f+P:null)??(typeof m=="number"&&Number.isFinite(m)&&m>0?m:null),Z=($,U)=>!Number.isFinite(U)||U<=0?0:X==null||!Number.isFinite(X)?U:!Number.isFinite($)||$>=X?0:Math.max(0,Math.min(U,X-$)),J=[],D=[],R=Array.from(document.querySelectorAll("[data-start], [data-track-index], [data-composition-id], video, audio, img")),M=0;for(let[$,U]of R.entries()){if(U===s||["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"].includes(U.tagName))continue;let z=l(U,s),re=U.tagName.toLowerCase(),oe=re==="video"||re==="audio"?o.resolveMediaStartForElement(U):o.resolveStartForElement(U,z.inheritedStart??0),ie=U.getAttribute("data-composition-id"),te=!!ie&&ie!==d,Q=lc(U);if(Q==null&&te&&(Q=i(ie)),Q==null&&pe(U)&&Number.isFinite(U.duration)&&(Q=Bt(U,U.duration)),Q==null&&(Q=yr(U,oe)),Q==null){let Ie=z.inheritedDuration;if(Ie!=null&&Ie>0){let He=(z.inheritedStart??0)+Ie;Q=Math.max(0,He-oe)}}if(Q==null||Q<=0||(Q=Z(oe,Q),Q<=0))continue;let ue=o.resolveHostSlotsForElement(U);if(ue.length>0){let Ie=jn({start:oe,end:oe+Q},ue),Ue=te;if(Ie.end<=Ie.start&&!Ue)continue;oe=Ie.start,Q=Ie.end-Ie.start}let Be=oe+Q;M=Math.max(M,Be);let mt=ie&&ie!==d?"composition":re==="video"?"video":re==="audio"?"audio":re==="img"?"image":"element";J.push({id:ic(U)??ie??null,label:ET(U,mt,J.length),start:oe,duration:Q,track:Hr(U,$),zIndex:uc(U),stackingContextId:ls(U,t),kind:mt,tagName:re,compositionId:U.getAttribute("data-composition-id"),compositionAncestors:z.compositionAncestors,parentCompositionId:z.parentCompositionId,nodePath:null,compositionSrc:Qo(U.getAttribute("data-composition-src")),playbackStart:Wt(U),playbackRate:st(U),assetUrl:x0(U),timelineRole:U.getAttribute("data-timeline-role"),timelineLabel:U.getAttribute("data-timeline-label"),timelineGroup:U.getAttribute("data-timeline-group"),timelinePriority:Jo(U.getAttribute("data-timeline-priority"))})}let j=new Set(J.map($=>$.id)),W=s?.getAttribute("data-composition-id")??null,ee=W?r[W]??null:null;if(ee&&s){let $=ee;if(typeof $.getChildren=="function")try{let U=$.getChildren(!0,!0,!1)??[],z=new Map;for(let ie of s.children){let te=ie;if(!te.id)continue;let Q=te.tagName.toLowerCase();Q==="script"||Q==="style"||Q==="link"||z.set(te,{id:te.id,start:1/0,end:-1/0})}let re=ie=>{let te=ie;for(;te;){if(z.has(te))return te;if(te===s)return null;te=te.parentElement}return null};for(let ie of U){if(typeof ie.targets!="function"||typeof ie.startTime!="function"||typeof ie.duration!="function")continue;let te=ie.startTime(),Q=ie.parent;for(;Q&&Q!==ee&&typeof Q.startTime=="function";)te+=Q.startTime(),Q=Q.parent;let ue=te+ie.duration();if(!(!Number.isFinite(te)||!Number.isFinite(ue)))for(let Be of ie.targets()){if(!Pe(Be))continue;let mt=re(Be);if(!mt)continue;let Ie=z.get(mt);Ie&&(Ie.start=Math.min(Ie.start,te),Ie.end=Math.max(Ie.end,ue))}}let oe=J.length>0?Math.max(...J.map(ie=>ie.track))+1:0;for(let[ie,te]of z){if(te.start===1/0||te.end===-1/0)continue;let Q=ie;if(j.has(Q.id))continue;let ue=Math.max(0,te.end-te.start);if(ue<=0)continue;let Be=Z(te.start,ue);Be<=0||(M=Math.max(M,te.start+Be),J.push({id:Q.id,label:Q.getAttribute("data-timeline-label")??Q.getAttribute("data-label")??Q.getAttribute("aria-label")??Q.id,start:te.start,duration:Be,track:Hr(Q,oe),zIndex:uc(Q),stackingContextId:ls(Q,t),kind:"element",tagName:Q.tagName.toLowerCase(),compositionId:Q.getAttribute("data-composition-id"),compositionAncestors:W?[W]:[],parentCompositionId:W,nodePath:null,compositionSrc:null,playbackStart:Wt(Q),playbackRate:st(Q),assetUrl:null,timelineRole:Q.getAttribute("data-timeline-role"),timelineLabel:Q.getAttribute("data-timeline-label"),timelineGroup:Q.getAttribute("data-timeline-group"),timelinePriority:Jo(Q.getAttribute("data-timeline-priority"))}),j.add(Q.id))}}catch(U){G("runtime.timeline.site1",U)}}if(s&&P!=null&&P>0){let $=J.length>0?Math.max(...J.map(U=>U.track))+1:0;for(let U of s.children){let z=U;if(!z.id||j.has(z.id))continue;let re=z.getAttribute("data-timeline-role");if(re!=="overlay"&&re!=="persistent-overlay")continue;let oe=z.tagName.toLowerCase();if(oe==="script"||oe==="style"||oe==="link"||oe==="meta"||window.getComputedStyle(z).display==="none")continue;let te=Z(0,P);te<=0||(M=Math.max(M,te),J.push({id:z.id,label:z.getAttribute("data-timeline-label")??z.getAttribute("data-label")??z.getAttribute("aria-label")??z.id,start:0,duration:te,track:Hr(z,$),zIndex:uc(z),stackingContextId:ls(z,t),kind:"element",tagName:oe,compositionId:z.getAttribute("data-composition-id"),compositionAncestors:W?[W]:[],parentCompositionId:W,nodePath:null,compositionSrc:null,playbackStart:Wt(z),playbackRate:st(z),assetUrl:null,timelineRole:re,timelineLabel:z.getAttribute("data-timeline-label"),timelineGroup:z.getAttribute("data-timeline-group"),timelinePriority:Jo(z.getAttribute("data-timeline-priority"))}),j.add(z.id))}}for(let $ of c){if($===s)continue;let U=$.getAttribute("data-composition-id");if(!U||!sc(U))continue;let z=o.resolveStartForElement($,0),re=lc($);if((re==null||re<=0)&&b0($)!=null){let Q=b0($);re=Math.max(0,Q-z)}let oe=i(U),ie=re&&re>0?re:oe;if(ie==null||ie<=0)continue;let te=Z(z,ie);te<=0||D.push({id:U,label:$.getAttribute("data-label")??y0($)??U,start:z,duration:te,thumbnailUrl:Qo($.getAttribute("data-thumbnail-url")),avatarName:null})}let C=Math.max(M||0,P??0),N=C>0?C:1,K=Math.max(1,Math.ceil(N*Math.max(1,e.canonicalFps)));return{...ya(e.canonicalFps),source:"hf-preview",type:"timeline",compositionContractVersion:1,durationSeconds:N,durationInFrames:K,clips:J,scenes:D,compositionWidth:Dr(s?.getAttribute("data-width"))??1920,compositionHeight:Dr(s?.getAttribute("data-height"))??1080}}var pc="data-composition-id",AT="data-composition-src",wT=`[${pc}]`,TG=`[${AT}]`,hc="style",S0="script",gc='link[rel="stylesheet"], link[rel="preconnect"]',_T=new Set(["","application/ecmascript","application/javascript","application/x-ecmascript","application/x-javascript","text/ecmascript","text/javascript","text/javascript1.0","text/javascript1.1","text/javascript1.2","text/javascript1.3","text/javascript1.4","text/javascript1.5","text/jscript","text/livescript","text/x-ecmascript","text/x-javascript"]),CT=e=>(e.getAttribute("type")||"").trim().toLowerCase();function v0(e){let t=CT(e);return t==="module"||t==="importmap"?!0:_T.has(t)&&e.getAttribute("nomodule")===null}function mc(e){return An(e?.querySelectorAll(S0)).filter(t=>!v0(t))}function bc(e){return An(e?.querySelectorAll(S0)).filter(v0)}function E0(e){return[...An(e.querySelectorAll(`${hc}, ${gc}`)),...bc(e)]}function An(e){return e?Array.from(e):[]}function A0(e){let{contentNode:t,head:n,documentElement:r,hasTemplate:o,compositionId:i}=e,a=An(t.querySelectorAll(wT)),l=i?a.find(f=>f.getAttribute(pc)===i)??null:a[0]??null,s=(l??a[0])?.getAttribute(pc)?.trim()||"",c=o?null:n??null,d=l?mc(l):[];return{innerRoot:l,authoredCompositionId:i||s||null,scriptCompositionId:s||i||null,authoredRootId:l?.getAttribute("id")?.trim()||null,styleSources:[...An(c?.querySelectorAll(hc)),...An(t.querySelectorAll(hc))],scriptSources:[...bc(c),...bc(t)],linkSources:[...An(n?.querySelectorAll(gc)),...An(t.querySelectorAll(gc))],inertScriptsOutsideRoot:[...mc(c),...l?mc(t).filter(f=>!d.includes(f)):[]],variableDefaultCarriers:[r,l].filter(f=>f!=null)}}function w0(e,t){let n=t[0]?.ownerDocument.querySelector("[data-composition-id]"),r=n&&!t.includes(n)?n.getAttribute("data-composition-id"):null,o=r?e.get(r):void 0;r&&o&&e.set(r,o+1)}var TT='"use strict";(()=>{function I(e){return e?/[\\w-]/.test(e)||e.charCodeAt(0)>=128:!1}function _(e){return e===" "||e===" "||e===`\n`||e==="\\r"||e==="\\f"}var j=/^[0-9a-fA-F]{1,6}/;function G(e){let n=e>=55296&&e<=57343;return e===0||e>1114111||n?65533:e}function $(e,n){return e[n]==="\\r"&&e[n+1]===`\n`?n+2:_(e[n])?n+1:n}function R(e,n){let t=e[n+1];if(t===void 0||/[\\n\\r\\f]/.test(t))return null;let i=j.exec(e.slice(n+1,n+7));if(!i)return{value:t,end:n+2};let o=G(Number.parseInt(i[0],16));return{value:String.fromCodePoint(o),end:$(e,n+1+i[0].length)}}function H(e,n){let t=o=>I(o)&&!/[0-9-]/.test(o),i=o=>e[o]==="\\\\"&&R(e,o)!==null;return e[n]==="-"?e[n+1]==="-"||t(e[n+1])||i(n+1):t(e[n])||i(n)}function y(e,n){let t=n;for(;e.startsWith("/*",t);){let i=e.indexOf("*/",t+2);t=i<0?e.length:i+2}return t}function A(e,n){let t=y(e,n);for(;_(e[t]);)t=y(e,t+1);return t}function h(e,n){if(!H(e,n))return null;let t=n,i="";for(;t<e.length;){let o=e[t];if(o==="\\\\"){let a=R(e,t);if(!a)break;i+=a.value,t=a.end;continue}if(!I(o))break;i+=o,t+=1}return t===n?null:{value:i,end:t}}var C=45;function T(e){return e>=48&&e<=57}function z(e){return e>=128||e===C||e===95||T(e)||e>=65&&e<=90||e>=97&&e<=122}function J(e,n){let t=e.charCodeAt(n);return t>=1&&t<=31||t===127?!0:T(t)?n===0||n===1&&e.charCodeAt(0)===C:!1}function k(e){let n="";for(let t=0;t<e.length;t+=1){let i=e.charCodeAt(t),o=e[t];i===0?n+="\\uFFFD":J(e,t)?n+=`\\\\${i.toString(16)} `:t===0&&e.length===1&&i===C?n+=`\\\\${o}`:z(i)?n+=o:n+=`\\\\${o}`}return n}var W=/\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|\\\\(?:[0-9a-fA-F]{1,6}(?:\\r\\n|[ \\t\\r\\n\\f])?|[\\s\\S])|"(?:[^"\\\\]|\\\\[\\s\\S])*"|\'(?:[^\'\\\\]|\\\\[\\s\\S])*\'|\\[(?:\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|\\\\[\\s\\S]|"(?:[^"\\\\]|\\\\[\\s\\S])*"|\'(?:[^\'\\\\]|\\\\[\\s\\S])*\'|[^\\]"\'\\\\/]|\\/(?!\\*))*\\]/g;function Q(e){let n=new Array(e.length).fill(!0);for(let t of e.matchAll(W)){let i=t.index;n.fill(!1,i,i+t[0].length)}return n}function q(e,n,t){if(n.length===0||!e.includes("#"))return e;let i=new Set(n),o=Q(e),a="",u=0;for(;u<e.length;){let d=o[u]&&e[u]==="#"?h(e,u+1):null;d&&i.has(d.value)?(a+=t(d.value),u=d.end):(a+=e[u],u+=1)}return a}function X(e){let n="";for(let t=0;t<e.length;t+=1){if(e[t]==="\\\\"){let i=e[t+1];if(i!==void 0&&/[\\n\\r\\f]/.test(i)){t=$(e,t+1)-1;continue}let o=R(e,t);if(o){n+=o.value,t=o.end-1;continue}}n+=e[t]}return n}function N(e){return Array.from(e,n=>{let t=n.charCodeAt(0);return t===0?"\\uFFFD":t<32||t===127?`\\\\${t.toString(16)} `:n===\'"\'||n==="\\\\"?`\\\\${n}`:n}).join("")}function Y(e,n){return e?{kind:"any"}:n===void 0?{kind:"none"}:{kind:"named",prefix:n}}function Z(e,n){return e[n]==="|"&&e[n+1]!=="="}function B(e,n){let t=e[n]==="*",i=t?{value:"*",end:n+1}:h(e,n),o=y(e,i?.end??n);if(!Z(e,o))return t?null:i?{token:i,namespace:{kind:"none"}}:null;let a=h(e,y(e,o+1));return a?{token:a,namespace:Y(t,i?.value)}:null}function K(e){if(e[0]!=="[")return null;let n=A(e,1),t=B(e,n);if(!t)return null;let{token:i,namespace:o}=t;return{name:i.value,rawName:e.slice(n,i.end),namespace:o,end:i.end}}function ee(e,n){let t=/^(?:"((?:\\\\[\\s\\S]|[^"\\\\])*)"|\'((?:\\\\[\\s\\S]|[^\'\\\\])*)\')/.exec(e.slice(n));return t?{value:X(t[1]??t[2]),end:n+t[0].length}:h(e,n)}function ne(e,n){let t=A(e,n),i=h(e,t);if(i){if(!/^[is]$/i.test(i.value))return null;t=A(e,i.end)}return e[t]!=="]"||t!==e.length-1?null:{flag:i?.value}}function F(e){let n=K(e);if(!n)return null;let t=A(e,n.end),o=["=","~=","|=","^=","$=","*="].find(d=>e.startsWith(d,t));if(!o)return null;let a=ee(e,A(e,t+o.length));if(!a)return null;let u=ne(e,a.end);return u?{name:n.name,rawName:n.rawName,namespace:n.namespace,operator:o,value:a.value,flag:u.flag}:null}function E(e,n){return e.replace(W,t=>t.startsWith("[")?n(t):t)}var re="data-hf-svg-reference-aliases";function O(e,n,t,i){let o={"=":(s,r)=>s===r,"~=":(s,r)=>s.split(/[ \\t\\r\\n\\f]+/).includes(r),"|=":(s,r)=>s===r||s.startsWith(r+"-"),"^=":(s,r)=>s.startsWith(r),"$=":(s,r)=>s.endsWith(r),"*=":(s,r)=>s.includes(r)},a=(s,r,l)=>!r&&l!=="="&&l!=="|="?!1:o[l](s,r),u=s=>s.replace(/[A-Z]/g,r=>r.toLowerCase()),d=s=>{let r=F(s);if(!r)return s;let{name:l,rawName:g,namespace:m,operator:b,value:D,flag:w}=r;if(m.kind==="named"!=(i!==void 0))return s;let x=w?.toLowerCase()==="i"?u:S=>S,L=u(l),P=t.filter(S=>{let V=m.kind==="none"?S.name:S.localName,U=m.kind==="named"?i.get(m.prefix):null;return(m.kind==="any"||S.namespaceURI===U)&&u(V)===L}),v=new Set([s]);for(let S of P)a(x(S.before),x(D),b)&&v.add(`[${g}="${N(S.after)}"${w?` ${w}`:""}]`);return v.size===1?s:`:is(${[...v].join(", ")})`};if(i)return E(e,d);let p=new Map(n.map(({id:s,replacement:r})=>[s,r])),f=new Map;for(let s of t){if(s.name!=="id"||s.before===s.after||p.has(s.before))continue;let r=f.get(s.before);r||(r=new Set([`#${k(s.before)}`]),f.set(s.before,r)),r.add(`#${k(s.after)}`)}for(let[s,r]of f)p.set(s,`:is(${[...r].join(", ")})`);let c=q(e,[...p.keys()],s=>p.get(s));return E(c,d)}function se(e,n,t=!0){let i=[],a=(t?[...e.querySelectorAll(`[${n}]`)]:[]).map(d=>d.getAttribute(n)),u=e.getAttribute?.(n);u&&a.unshift(u);for(let d of a){let p;try{p=JSON.parse(d)}catch{continue}if(!Array.isArray(p))continue;let f=p;for(let c of f){if(!ie(c))continue;let{name:s,localName:r,namespaceURI:l,before:g,after:m}=c;i.push({name:s,localName:r,namespaceURI:l,before:g,after:m})}}return i}function ie(e){if(!e||typeof e!="object")return!1;let{name:n,localName:t,namespaceURI:i,before:o,after:a}=e;return typeof n=="string"&&typeof t=="string"&&(i===null||typeof i=="string")&&typeof o=="string"&&typeof a=="string"}function oe(e){let n=[],t=[],i=!1,o,a=new WeakMap,u=(f,c)=>{for(let s of f){if("selectorText"in s){let r=s,l=a.get(r),g=r.selectorText,m=l?.applied===g?l.authored:g,b=O(m,[],t,c);b!==g&&(r.selectorText=b),b===m?a.delete(r):a.set(r,{authored:m,applied:r.selectorText})}"cssRules"in s&&u(s.cssRules,c)}},d=()=>{if(t.length)for(let f of e.document.styleSheets){let c;try{c=f.cssRules}catch{continue}let s=new Map;for(let r of c){if(!("namespaceURI"in r))continue;let{prefix:l,namespaceURI:g}=r;l&&s.set(l,g||null)}s.size&&u(c,s)}},p={rewrite:(f,c=[])=>{if(typeof f!="string"||!f.includes("#")&&!f.includes("["))return f;let s=O(f,c.length?[...c,...n]:n,t);if(s!==f){if(!o){let r=e.document.createElement("div");o=r.matches.bind(r)}o(f)}return s},refresh(){t=se(e.document,re).filter(r=>r.before!==r.after);let f=new Set(t.filter(r=>r.name==="id").map(r=>r.before)),c=new Set;n=[];for(let r of e.document.querySelectorAll("[data-hf-authored-id][id]")){let l=r.getAttribute("data-hf-authored-id");if(!l||l===r.id||c.has(l)||f.has(l))continue;c.add(l);let g=N(l);n.push({id:l,replacement:`:is(#${k(l)}, [data-hf-authored-id="${g}"])`})}if(d(),i||!n.length&&!t.length)return;let s=e.Element.prototype;s.querySelector=new Proxy(s.querySelector,{apply(r,l,g){return Reflect.apply(r,l,[p.rewrite(g[0])])}}),s.querySelectorAll=new Proxy(s.querySelectorAll,{apply(r,l,g){return Reflect.apply(r,l,[p.rewrite(g[0])])}}),i=!0}};e.__hfSvgSelectorAliases=p,p.refresh()}function M(){let e=window;e.__hfSvgSelectorAliases||oe(e)}M();})();\n';function _0(){return TT}var Fe=UA(ex(),1),Cs=Fe.default,bB=Fe.default.stringify,xB=Fe.default.fromJSON,yB=Fe.default.plugin,SB=Fe.default.parse,vB=Fe.default.list,EB=Fe.default.document,AB=Fe.default.comment,wB=Fe.default.atRule,_B=Fe.default.rule,CB=Fe.default.decl,TB=Fe.default.root,RB=Fe.default.CssSyntaxError,MB=Fe.default.Declaration,kB=Fe.default.Container,LB=Fe.default.Processor,NB=Fe.default.Document,FB=Fe.default.Comment,IB=Fe.default.Warning,DB=Fe.default.AtRule,PB=Fe.default.Result,OB=Fe.default.Input,HB=Fe.default.Rule,GB=Fe.default.Root,BB=Fe.default.Node;var Wc="data-hf-scene",bi="hf-scene-parts",Vc="data-hf-scene-fonts",$c=e=>e.match(/@font-face\s*\{[^}]*\}/gi)??[],qc="data-hf-scene-no-swap";var zc="data-hf-authored-id",tx="data-hf-inner-root";function jc(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Kc(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function aR(e){let t=e.trim();return t?Array.from(new Set([t,Xt(t)])).filter(Boolean):[]}function sR(e,t,n){let r=aR(t);return da(e,r,()=>n)}function lR(e,t){let n=t?.trim();return n?sR(e,n,`[${zc}="${Kc(n)}"]`):e}function nx(e){return`${e}:not(:has([${tx}])), ${e} > [${tx}]`}function uR(e,t,n,r,o,i){let a=lR(e,r),l=cR(a,t,n),s=l.trim();if(!s||s==="*")return e;if(/^(html|body|:root)$/i.test(s))return i?nx(t):e;let c=new RegExp(`\\[\\s*data-composition-id\\s*[\\^\\*\\$]?=\\s*(["'])${jc(n)}\\1\\s*\\]`,"g");if(c.test(s))return s.replace(c,"").trim()===""?nx(t):l.replace(c,t);let d=l.match(/^\s*/)?.[0]??"",f=l.match(/\s*$/)?.[0]??"";if(o){let m=r?`[${zc}="${Kc(r)}"]`:null;if(m&&s.startsWith(m)){let p=s.slice(m.length);return`${d}${t}${m}${p}${f}`}}return`${d}${t} ${s}${f}`}function cR(e,t,n){let r=jc(n),o=String.raw`\[\s*data-composition-id\s*=\s*(?:"${r}"|'${r}')\s*\]`,i=String.raw`\s*\[\s*data-(?:start|duration)\s*=\s*(?:"[^"]*"|'[^']*')\s*\]`;return e.replace(new RegExp(`${o}(?:${i})+`,"g"),t).replace(new RegExp(`(?:${i})+${o}`,"g"),t)}var dR=new Set(["keyframes","-webkit-keyframes","font-face"]);function fR(e){return e?.type==="atrule"}function mR(e){let t=e.parent;for(;t;){if(fR(t)&&dR.has(t.name.toLowerCase()))return!0;t=t.parent}return!1}function pR(e){let t=e.parent;for(;t;){if(t.type==="rule")return!0;t=t.parent}return!1}function rx(e,t,n,r,o){let i=t.trim();if(!e||!i)return e;let a=n||`[data-composition-id="${Kc(i)}"]`,l=hR(e);return l?bR(l,a,i,r,o):""}function hR(e){try{return Cs.parse(e)}catch{return null}}function gR(e,t){e.walkRules(n=>{mR(n)||pR(n)||t(n)})}function bR(e,t,n,r,o){return gR(e,i=>{i.selectors=i.selectors.map(a=>uR(a,t,n,r,o?.compoundAuthoredRoot,o?.scopeRootSelectors))}),e.toResult({map:!1}).css}var xR="hf-scope-placeholder",jB=`[data-composition-id="${xR}"]`;function bt(e){return JSON.stringify(e).replace(/</g,"\\u003c")}var ox=`!__hfBaseHyperframes
|
|
43
43
|
? __hfBaseHyperframes
|
|
44
44
|
: Object.assign({}, __hfBaseHyperframes, {
|
|
45
45
|
assetUrl: function(path) {
|
|
@@ -51,27 +51,27 @@ https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.p
|
|
|
51
51
|
var scoped = byComp && __hfTimelineCompId ? byComp[__hfTimelineCompId] : null;
|
|
52
52
|
return scoped ? Object.assign({}, scoped) : {};
|
|
53
53
|
},
|
|
54
|
-
})`;function
|
|
55
|
-
return ${
|
|
56
|
-
})(window.__hyperframes, ${
|
|
57
|
-
${
|
|
58
|
-
`}function
|
|
59
|
-
${`(function(){ ${
|
|
54
|
+
})`;function ix(e,t){return`const __hyperframes = (function(__hfBaseHyperframes, __hfTimelineCompId, __hfCompositionSrc) {
|
|
55
|
+
return ${ox};
|
|
56
|
+
})(window.__hyperframes, ${bt(e)}, ${bt(t?.trim()||null)});
|
|
57
|
+
${Yc("",e)}
|
|
58
|
+
`}function Yc(e,t,n="[HyperFrames] composition script error:",r,o=t,i,a){let l=bt(t),s=bt(o),c=bt(n),d=jc(t),f=bt(i?.trim()||null),m=bt(r??null),p=bt(String.raw`\[\s*data-composition-id\s*=\s*(?:"${d}"|'${d}')\s*\]`),x=bt(String.raw`\s*\[\s*data-(?:start|duration)\s*=\s*(?:"[^"]*"|'[^']*')\s*\]`);return`(function(){
|
|
59
|
+
${`(function(){ ${_0()} })();`}
|
|
60
60
|
var __hfCompId = ${l};
|
|
61
61
|
var __hfTimelineCompId = ${s};
|
|
62
62
|
var __hfErrorLabel = ${c};
|
|
63
|
-
var __hfAuthoredRootId = ${
|
|
64
|
-
var __hfCompositionSrc = ${
|
|
65
|
-
var __hfAuthoredRootAttr = ${
|
|
63
|
+
var __hfAuthoredRootId = ${f};
|
|
64
|
+
var __hfCompositionSrc = ${bt(a?.trim()||null)};
|
|
65
|
+
var __hfAuthoredRootAttr = ${bt(zc)};
|
|
66
66
|
var __hfEscapeAttr = function(value) {
|
|
67
67
|
return (value + "").replace(/\\\\/g, "\\\\\\\\").replace(/"/g, "\\\\\\"");
|
|
68
68
|
};
|
|
69
|
-
var __hfRootSelector = ${
|
|
69
|
+
var __hfRootSelector = ${m} || (__hfCompId
|
|
70
70
|
? '[data-composition-id="' + __hfEscapeAttr(__hfCompId) + '"]'
|
|
71
71
|
: "");
|
|
72
72
|
var __hfRoot = null;
|
|
73
73
|
var __hfRootSelectorPattern = ${p};
|
|
74
|
-
var __hfTimingSelectorPattern = ${
|
|
74
|
+
var __hfTimingSelectorPattern = ${x};
|
|
75
75
|
var __hfAuthoredRootSelector = __hfAuthoredRootId
|
|
76
76
|
? "[" + __hfAuthoredRootAttr + '="' + __hfEscapeAttr(__hfAuthoredRootId) + '"]'
|
|
77
77
|
: "";
|
|
@@ -312,7 +312,7 @@ ${Rc("",e)}
|
|
|
312
312
|
},
|
|
313
313
|
});
|
|
314
314
|
var __hfBaseHyperframes = window.__hyperframes;
|
|
315
|
-
var __hfScopedHyperframes = ${
|
|
315
|
+
var __hfScopedHyperframes = ${ox};
|
|
316
316
|
var __hfRun = function() {
|
|
317
317
|
var report = window.__hfScriptState;
|
|
318
318
|
if (typeof report === "function") report("start", __hfCompositionSrc || "index.html");
|
|
@@ -330,7 +330,7 @@ ${e.replace(/<\/(script)/gi,"<\\/$1")}
|
|
|
330
330
|
// Only a page with a scene manifest can swap; elsewhere the first script stores null and none records.
|
|
331
331
|
var __hfRecordAnimations = function(run) {
|
|
332
332
|
if (window.__hfSceneAnimations === undefined) {
|
|
333
|
-
window.__hfSceneAnimations = window.document.querySelector(${
|
|
333
|
+
window.__hfSceneAnimations = window.document.querySelector(${bt(`meta[name="${bi}"]`)})
|
|
334
334
|
? {}
|
|
335
335
|
: null;
|
|
336
336
|
}
|
|
@@ -353,14 +353,14 @@ ${e.replace(/<\/(script)/gi,"<\\/$1")}
|
|
|
353
353
|
};
|
|
354
354
|
__hfFindRoot();
|
|
355
355
|
__hfRecordAnimations(__hfRun);
|
|
356
|
-
})();`}var Hb=(e,t)=>e&&Object.fromEntries(Object.entries(e).map(([n,r])=>[n,t(r)]));function Gb(e,t){let n;try{n=JSON.parse(e)}catch{return null}if(!n||typeof n!="object")return null;let{imports:r,scopes:i}=n;return{imports:Hb(r,t),scopes:i&&Object.fromEntries(Object.entries(i).map(([o,a])=>[t(o),Hb(a,t)??{}]))}}var Mc="text/hf-after-fonts",Ub=`${Mc}+module`,Wb=`script[type="${Mc}"], script[type="${Ub}"]`,Vb="__hfAfterFontsClaimed",IT="data-hf-inlined-src";var $b=`[defer][src], [defer][${IT}]`;function cs(e){let t=e.getAttribute("type");return t===Mc?null:t===Ub?"module":t}function DT(e){let t=e.getAttribute("type")??"",n=e.tagName.toLowerCase()==="link"?t.split(";")[0].trim():t;if(n!==""&&n.toLowerCase()!=="text/css")return;let r=(e.getAttribute("media")??"").trim().toLowerCase();return JSON.stringify([r==="all"?"":r,e.getAttribute("title")??""])}var LG=JSON.stringify(["",""]);function Bb(e){return JSON.stringify([e.getAttribute("href"),(e.getAttribute("rel")??"").trim().toLowerCase(),DT(e)??e.getAttribute("type"),e.hasAttribute("disabled")])}function qb(e,t){let n=Bb(t);return[...e.querySelectorAll("link[href]")].some(r=>!r.closest("noscript")&&Bb(r)===n)}var ze="id",kc="data-hf-authored-id",Br=/(url\(\s*)(["']?)#([^"')\s]+)\2(\s*\))/gi;function jb(e){return e==="href"||e.endsWith(":href")}function PT(e){return e.replace(/[^a-zA-Z0-9_-]/g,"-")}function Lc(e,t){return!e||!e.toLowerCase().includes("url(")?e:e.replace(Br,(n,r,i,o,a)=>{let l=t.get(o);return l?`${r}${i}#${l}${i}${a}`:n})}function OT(e,t,n){if(jb(e)&&t.startsWith("#")){let i=n.get(t.slice(1));return i?`#${i}`:t}Br.lastIndex=0;let r=Br.test(t);return Br.lastIndex=0,r?Lc(t,n):null}function HT(e,t,n){if(e.name===St||e.name===ze)return{kind:"skip"};let r=t&&e.value===t.after?t.before:e.value,i=OT(e.name,r,n);return i!==null?{kind:"managed",before:r,after:i}:t?{kind:"retain",alias:t}:{kind:"skip"}}function GT(e,t,n,r){let i=e.namespaceURI===void 0&&e.name==="xlink:href"&&r;return{name:e.name,localName:i?"href":e.localName,namespaceURI:i?"http://www.w3.org/1999/xlink":e.namespaceURI??null,before:t,after:n}}function BT(e,t){let n=new Map(Hn(e,St,!1).map(o=>[o.name,o])),r=[...n.values()].filter(o=>o.name===ze),i=!!e.closest("svg");for(let o of e.attributes?Array.from(e.attributes):[]){let a=HT(o,n.get(o.name),t);if(a.kind!=="skip"){if(a.kind==="retain"){r.push(a.alias);continue}a.after!==o.value&&(o.namespaceURI?e.setAttributeNS(o.namespaceURI,o.name,a.after):e.setAttribute(o.name,a.after)),r.push(GT(o,a.before,a.after,i))}}r.length&&e.setAttribute(St,JSON.stringify(r))}function zb(e,t,n){let r;for(Br.lastIndex=0;r=Br.exec(e);){let i=r[3];t.has(i)&&n.add(i)}}function UT(e,t,n){if(jb(e.name)&&e.value.startsWith("#")){let r=e.value.slice(1);t.has(r)&&n.add(r)}}function WT(e,t,n){let r=new Set;for(let i of e)for(let o of i.attributes?Array.from(i.attributes):[])!o.value||o.name===St||(UT(o,n,r),o.value.toLowerCase().includes("url(")&&zb(o.value,n,r));for(let i of t)i.toLowerCase().includes("url(")&&zb(i,n,r);return r}function Kb(e,t){return t.some(n=>n===e||n.contains(e))}function VT(e){let t=e.exclude??[],n=[...e.root.querySelectorAll("*")],r=t.length?n.filter(i=>!Kb(i,t)):n;return[e.root,...r]}function $T(e){let t=e.exclude??[],n=[...e.root.querySelectorAll("svg [id], svg[id]")];return t.length?n.filter(r=>!Kb(r,t)):n}function qT(e){let t=VT(e),n=new Set;if(!e.namespace)return{elements:t,renamable:n};let r=$T(e),i=new Set;for(let a of r){let l=a.getAttribute(ze);l&&i.add(l)}if(i.size===0)return{elements:t,renamable:n};let o=WT(t,e.cssTexts??[],i);for(let a of r){let l=a.getAttribute(ze);l&&o.has(l)&&n.add(a)}return{elements:t,renamable:n}}function Yb(e){if(!e.closest("svg"))return null;let t=Hn(e,St,!1).find(n=>n.name===ze);return t?e.getAttribute(ze)===t.after?t.before:null:e.getAttribute(kc)}function zT(e){let t=new Map,n=new Set;for(let r of e.querySelectorAll("[id]")){let i=r.getAttribute(ze);if(!i)continue;n.add(i);let o=t.get(i);o?o.push(r):t.set(i,[r]);let a=Yb(r);if(a&&a!==i){let l=t.get(a);l?l.push(r):t.set(a,[r])}}return{elementsById:t,usedIds:n}}function jT(e,t,n){let r=`${PT(e)}--${t}`,i=r;for(let o=2;n.has(i);o+=1)i=`${r}-${o}`;return n.add(i),i}function KT(e,t,n){let r=t.find(a=>!n.has(a))??t[0],o=t.filter(a=>a!==r&&a.getAttribute(ze)===e).map(a=>n.get(a));return new Set(o.filter(a=>a!==void 0))}function YT(e,t,n){let r=t.map(()=>new Map);for(let[i,o]of e.elementsById)if(!(o.length<2))for(let a of KT(i,o,n))r[a].set(i,jT(t[a].namespace,i,e.usedIds));return r}function XT(e,t,n){let r=new Map;for(let[i,o]of e.elementsById){let a=o[0],l=a.getAttribute(ze);if(l!==i){r.set(i,l);continue}let s=n.get(a),c=s===void 0?void 0:t[s].get(i);c&&r.set(i,c)}return r}function JT(e){let t=new Set(e.map(r=>r.getAttribute(ze))),n=new Map;for(let r of e){let i=Yb(r),o=r.getAttribute(ze);!i||!o||(t.add(i),n.set(i,o))}return{ids:t,renamed:n}}function QT(e,t){for(let n of e.elements){let r=n.getAttribute(ze);if(r&&e.renamable.has(n)&&t.has(r)){n.hasAttribute(kc)||n.setAttribute(kc,r);let i=t.get(r),o=Hn(n,St,!1);o.push({name:ze,localName:ze,namespaceURI:null,before:r,after:i}),n.setAttribute(St,JSON.stringify(o)),n.setAttribute(ze,i)}BT(n,t)}}function Xb(e,t,n){if(t.length===0)return[];let r=zT(e),i=t.map(qT),o=i.flatMap(({renamable:d})=>[...d]);if(n)for(let d of i)for(let m of d.renamable)n.has(m)&&d.renamable.delete(m);let a=new Map;i.forEach(({renamable:d},m)=>{for(let f of d)a.set(f,m)});let l=YT(r,t,a),s=XT(r,l,a),c=i.map((d,m)=>{let f=JT(t[m].referenceTarget==="document"?[]:d.elements),p=[...s].filter(([y])=>!f.ids.has(y));return new Map([...p,...f.renamed,...l[m]])});c.forEach((d,m)=>{QT(i[m],d)});for(let d of o)n?.add(d);return c}function Jb(e,t,n=[]){if(!e||t.size===0&&n.length===0||!e.includes("#")&&!e.includes("[")&&!e.toLowerCase().includes("url("))return e;let r;try{r=us.parse(e)}catch{return e}let i=!1,o=new Set(n.filter(l=>l.name===ze).map(l=>l.before)),a=[...t].filter(([l])=>!o.has(l)).map(([l,s])=>({id:l,replacement:`:is(#${qt(l)}, #${qt(s)})`}));return r.walkRules(l=>{let s=l.selectors.map(c=>Jo(c,a,n));s.some((c,d)=>c!==l.selectors[d])&&(l.selectors=s,i=!0)}),r.walkDecls(l=>{let s=Lc(l.value,t);s!==l.value&&(l.value=s,i=!0)}),r.walkAtRules(l=>{if(!l.params)return;let s=Lc(l.params,t);s!==l.params&&(l.params=s,i=!0)}),i?r.toResult({map:!1}).css:e}var Nc=5e3;window[Vb]=!0;async function Fc(){let e=document.fonts;if(!e)return;document.body?.offsetHeight;let t,n=await Promise.race([e.ready.then(()=>!1),new Promise(i=>t=setTimeout(i,Nc,!0))]);if(clearTimeout(t),!n)return;let r=[...new Set(Array.from(e).filter(i=>i.status==="loading").map(i=>i.family))];console.warn(`[hyperframes] fonts still loading after ${Nc} ms, composition scripts run without them: ${r.join(", ")}`),Te({source:"hf-preview",type:"diagnostic",code:"runtime_font_wait_timeout",details:{loadingFamilies:r,timeoutMs:Nc}})}function ZT(e,t){let n=Object.getOwnPropertyDescriptor(e,"addEventListener"),r=e.addEventListener,i=(o,a,l)=>{if(!a)return;o==="DOMContentLoaded"||o==="load"&&e===window&&document.readyState==="complete"?t.push({target:e,type:o,listener:a}):r.call(e,o,a,l)};return e.addEventListener=i,()=>{e.addEventListener===i&&(n?Object.defineProperty(e,"addEventListener",n):delete e.addEventListener)}}function eR(e){if(!e.isConnected)return;let t=document.createElement("script");for(let{name:r,value:i}of Array.from(e.attributes))t.setAttribute(r,i);let n=cs(e);return n===null?t.removeAttribute("type"):t.setAttribute("type",n),t.async=e.hasAttribute("async"),t.text=e.textContent??"",e.replaceWith(t),t}var tR=50,nR=()=>!window.__HF_VIRTUAL_TIME__;function rR(){let e=globalThis.scheduler;return typeof e?.yield=="function"?e.yield():new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>{n.port1.close(),t()},n.port2.postMessage(null)})}var iR=e=>new Promise(t=>{e.addEventListener("load",t),e.addEventListener("error",t)});function oR(){let e=document.createElement("script");e.type="module",e.async=!1,e.text='document.dispatchEvent(new Event("hf-after-fonts-modules"))';let t=new Promise(n=>document.addEventListener("hf-after-fonts-modules",n,{once:!0}));return document.body.appendChild(e),t.then(()=>e.remove())}async function ds(e,t){await Fc();let n=l=>cs(l)==="module"||l.matches($b),r=[],i=[document,window].map(l=>ZT(l,r)),o=nR(),a=performance.now();for(let l of[...e.filter(s=>!n(s)),...e.filter(n)]){o&&performance.now()-a>tR&&(await rR(),a=performance.now());let s=eR(l);s?.hasAttribute("src")&&!s.async&&!s.noModule?await iR(s):cs(l)==="module"&&await oR()}for(let l of i)l();t?.();for(let{target:l,type:s,listener:c}of r){let d=new Event(s);try{typeof c=="function"?c.call(l,d):c.handleEvent(d)}catch(m){reportError(m)}}}var aR=["data-composition-id","data-composition-file","data-start","data-duration","data-end","data-track-index","data-track","data-composition-src","data-hf-authored-duration","data-hf-authored-end"];function Qb(e){let t=e.getAttribute("id")?.trim();for(let n of aR)e.removeAttribute(n);t&&(e.removeAttribute("id"),e.setAttribute("data-hf-authored-id",t)),e.setAttribute("data-hf-inner-root","true")}var sR=8e3,lR=/^(?![a-zA-Z][a-zA-Z\d+\-.]*:)(?!\/\/)(?!\/)(?!\.\.?\/).+/,uR=/\burl\(\s*(["']?)([^)"']+)\1\s*\)/g,cR=["src","href"];function dR(e){return!e||e.startsWith("http://")||e.startsWith("https://")||e.startsWith("//")||e.startsWith("data:")||e.startsWith("#")||e.startsWith("/")}function ix(e,t){if(!t)return e;let n=e.trim();if(dR(n)||!n.startsWith("../")&&n!=="..")return e;try{return new URL(n,t).href}catch{return e}}function ox(e,t){return!t||!e?e:e.replace(uR,(n,r,i)=>{let o=ix(i||"",t);return o===i?n:`url(${r||""}${o}${r||""})`})}function fR(e,t){for(let n of Array.from(e.querySelectorAll("[src], [href]")))for(let r of cR){let i=n.getAttribute(r);if(i==null)continue;let o=ix(i,t);o!==i&&n.setAttribute(r,o)}}function mR(e,t){for(let n of Array.from(e.querySelectorAll("[style]"))){let r=n.getAttribute("style");if(r==null)continue;let i=ox(r,t);i!==r&&n.setAttribute("style",i)}}function pR(e,t){for(let n of Array.from(e.querySelectorAll("style"))){let r=n.textContent||"",i=ox(r,t);i!==r&&(n.textContent=i)}}function ax(e,t){if(t){fR(e,t),mR(e,t),pR(e,t);for(let n of Array.from(e.querySelectorAll("template")))ax(n.content,t)}}function Zb(e,t){return`${e}__hf${t}`}var hR=e=>new Promise(t=>{let n=!1,r=Date.now(),i=null,o=a=>{n||(n=!0,i!=null&&window.clearTimeout(i),t({status:a,elapsedMs:Math.max(0,Date.now()-r)}))};e.addEventListener("load",()=>o("load"),{once:!0}),e.addEventListener("error",()=>o("error"),{once:!0}),i=window.setTimeout(()=>o("timeout"),sR)});function Pc(e){for(;e.firstChild;)e.removeChild(e.firstChild);e.textContent=""}function Ic(e){for(let t of e0(e))t.remove()}function gR(e){let t=document.importNode(e,!0);Qb(t);let n=zn(t.getAttribute("data-width")),r=zn(t.getAttribute("data-height"));return t.style.width=n===null?"100%":`${n}px`,t.style.height=r===null?"100%":`${r}px`,t}function ex(e,t){let n=e.trim();if(!n)return e;try{return lR.test(n)&&!n.startsWith("#")&&!n.startsWith("?")?new URL(n,document.baseURI).toString():t?new URL(n,t).toString():new URL(n,document.baseURI).toString()}catch{return e}}function tx(e,t){try{let n=new URL(e),r=new URL(t);return n.search="",n.hash="",r.search="",r.hash="",n.href===r.href}catch{return!1}}function co(e){let t=(e.getAttribute("data-composition-id")||"").trim()||null;return{authoredCompositionId:(e.getAttribute("data-hf-original-composition-id")||t||"").trim()||null,runtimeCompositionId:t}}function bR(e){let t=new Map;for(let n of e){let r=co(n).authoredCompositionId||"";r&&t.set(r,(t.get(r)||0)+1)}return n0(t,e),t}function sx(e){let t=co(e).authoredCompositionId;return t?!!document.querySelector(`template#${CSS.escape(t)}-template`):!1}function xR(e){return!!e.querySelector('[data-hf-inner-root="true"]')}function nx(e){return e.hasAttribute("data-composition-src")?!0:sx(e)?e.children.length===0||e.hasAttribute("data-hf-original-composition-id")?!0:xR(e):!1}function fs(){return Array.from(document.querySelectorAll("[data-composition-src], [data-composition-id]")).filter(t=>t.hasAttribute("data-composition-src")?!0:sx(t))}function Oc(){let e=window.__hfVariablesByComp;if(!e)return;let t=new Set(fs().map(n=>co(n).runtimeCompositionId).filter(n=>!!n));for(let n of Object.keys(e))t.has(n)||delete e[n]}function lx(e,t){let n=bR(e),r=new Set(e.flatMap(a=>{let l=co(a),s=l.authoredCompositionId?[l.authoredCompositionId]:[];return(t.has(a)||!nx(a))&&l.runtimeCompositionId&&s.push(l.runtimeCompositionId),s})),i=new Map,o=new Map;for(let a of e){let{authoredCompositionId:l,runtimeCompositionId:s}=co(a),c=!t.has(a)&&nx(a);if(!l){o.set(a,{authoredCompositionId:null,runtimeCompositionId:s});continue}let d=(n.get(l)||0)>1,m=s||l;if(c){let f=d?(i.get(l)||0)+1:0;if(d){for(;r.has(Zb(l,f));)f+=1;i.set(l,f)}m=d?Zb(l,f):l,r.add(m),d?a.setAttribute("data-hf-original-composition-id",l):a.removeAttribute("data-hf-original-composition-id"),a.setAttribute("data-composition-id",m)}o.set(a,{authoredCompositionId:l,runtimeCompositionId:m})}return Oc(),o}async function ux(e){let t=t0({contentNode:e.sourceNode,head:e.head,hasTemplate:e.hasTemplate,compositionId:e.authoredCompositionId}),n=Se(t.innerRoot)?t.innerRoot:null,r=n??e.sourceNode,i=t.authoredCompositionId,o=t.scriptCompositionId,a=e.runtimeCompositionId||null,l=t.authoredRootId,s=a?`[data-composition-id="${CSS.escape(a)}"]`:void 0;for(let b of t.linkSources){let g=(b.getAttribute("href")||"").trim();if(!g)continue;let v=e.compositionUrl?new URL(g,e.compositionUrl).href:g;if(e.compositionUrl&&tx(v,e.compositionUrl))continue;let E=b.cloneNode(!0);Mm(E)&&(E.href=v,!qb(document.head,E)&&(document.head.appendChild(E),e.injectedLinks.push(E)))}let c=[];(b=>{for(let g of b){let v=g.cloneNode(!0);if(!Rm(v))continue;i&&(v.textContent=Db(v.textContent||"",i,s,l,{scopeRootSelectors:!0})),document.head.appendChild(v),e.injectedStyles.push(v);let E=v.textContent||"";c.push({element:v,authored:E,applied:E})}})(t.styleSources);let m=b=>{let g=b.getAttribute("type")?.trim()??"",v=b.getAttribute("src")?.trim()??"";if(v){let _=ex(v,e.compositionUrl);return e.compositionUrl&&tx(_,e.compositionUrl)?null:{kind:"external",src:_,type:g}}let E=b.textContent?.trim()??"";return E?{kind:"inline",content:E,type:g,scopeCompositionId:o}:null},f=t.scriptSources.map(m).filter(b=>b!==null);if(n){let b=n.getAttribute("data-width"),g=n.getAttribute("data-height"),v=e.parseDimensionPx(b),E=e.parseDimensionPx(g);b&&e.host.setAttribute("data-width",b),g&&e.host.setAttribute("data-height",g),v&&Se(e.host)&&(e.host.style.width=v),E&&Se(e.host)&&(e.host.style.height=E),n.hasAttribute("data-timeline-locked")&&e.host.setAttribute("data-timeline-locked","");let _=gR(n);!e.authoredCompositionId&&i&&_.setAttribute("data-composition-id",i),Ic(_),e.host.appendChild(_)}else if(e.hasTemplate){let b=document.importNode(r,!0);Ic(b),e.host.appendChild(b)}else e.host.innerHTML=e.fallbackBodyInnerHtml,Ic(e.host);for(let b of t.inertScriptsOutsideRoot)e.host.appendChild(document.importNode(b,!0));a&&SR(e,r,a);let p=Array.from(e.host.childNodes),y=()=>e.host.isConnected&&(p.length>0||e.host.childNodes.length===0)&&p.every(b=>b.parentNode===e.host);return{host:e.host,namespace:a||i||"",styles:c,isCurrent:y,runScripts:async()=>{if(f.length>0&&await Fc(),!!y())for(let b of f){let g=document.createElement("script");if(b.type&&(g.type=b.type),g.async=!1,b.kind==="external")g.src=b.src;else if(b.type.toLowerCase()==="importmap"){let v=Gb(b.content,E=>ex(E,e.compositionUrl));g.textContent=v?JSON.stringify(v):b.content}else if(b.type.toLowerCase()==="module"){let v=b.scopeCompositionId?Ob(a||b.scopeCompositionId,e.compositionUrl?.href):"";g.textContent=v+b.content}else b.scopeCompositionId?g.textContent=Rc(b.content,b.scopeCompositionId,"[HyperFrames] composition script error:",s,a||b.scopeCompositionId,l,e.compositionUrl?.href):g.textContent=`(function(){${b.content}})();`;if(document.body.appendChild(g),e.injectedScripts.push(g),b.kind==="external"){let v=await hR(g);v.status!=="load"&&e.onDiagnostic?.({code:"external_composition_script_load_issue",details:{hostCompositionId:e.authoredCompositionId,runtimeCompositionId:e.runtimeCompositionId,hostCompositionSrc:e.hostCompositionSrc,resolvedScriptSrc:b.src,loadStatus:v.status,elapsedMs:v.elapsedMs}})}}}}}async function rx(e,t){let n=fs();if(Oc(),n.length===0)return[];let r=lx(n,t),i=n.filter(a=>{if(t.has(a)||a.hasAttribute("data-composition-src")||a.children.length>0)return!1;let l=r.get(a)?.authoredCompositionId;return l?!!document.querySelector(`template#${CSS.escape(l)}-template`):!1}),o=[];for(let a of i){let l=r.get(a),s=l?.authoredCompositionId;if(!s)continue;let c=document.querySelector(`template#${CSS.escape(s)}-template`);Pc(a);let d=await ux({host:a,authoredCompositionId:s,runtimeCompositionId:l?.runtimeCompositionId||s,hostCompositionSrc:`template#${s}-template`,sourceNode:c.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:null,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});o.push(d)}return o}async function yR(e){let t=fs();if(Oc(),t.length===0)return[];let n=lx(t,new Set),r=t.filter(o=>o.hasAttribute("data-composition-src"));return(await Promise.all(r.map(async o=>{let a=o.getAttribute("data-composition-src");if(!a)return null;let l=n.get(o),s=l?.authoredCompositionId||null,c=l?.runtimeCompositionId||s||null,d=null;try{d=new URL(a,document.baseURI)}catch{d=null}Pc(o);let m=p=>{e.onDiagnostic?.({code:"external_composition_load_failed",details:{hostCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,errorMessage:p instanceof Error?p.message:"unknown_error"}}),Pc(o)},f=async p=>{let y=await ux(p),b=y.runScripts;return y.runScripts=async()=>{try{await b()}catch(g){m(g)}},y};try{let p=s!=null?document.querySelector(`template#${CSS.escape(s)}-template`):null;if(p)return await f({host:o,authoredCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,sourceNode:p.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:d,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});let y=await fetch(a);if(!y.ok)throw new Error(`HTTP ${y.status}`);let b=await y.text(),v=new DOMParser().parseFromString(b,"text/html");ax(v,d);let E=(s?v.querySelector(`template#${CSS.escape(s)}-template`):null)??v.querySelector("template"),_=E?E.content:v.body;return await f({host:o,authoredCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,sourceNode:_,hasTemplate:!!E,fallbackBodyInnerHtml:v.body.innerHTML,compositionUrl:d,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,head:v.head,declaredVariableDefaults:Ti(v.documentElement),variableDeclarer:v.documentElement,onDiagnostic:e.onDiagnostic})}catch(p){return m(p),null}}))).filter(o=>o!==null)}async function cx(e){let t=new Set,n={host:document.documentElement,namespace:"",referenceTarget:"document",styles:[...document.querySelectorAll("style")].map(m=>({element:m,authored:m.textContent??"",applied:m.textContent??""}))},r=await yR(e),i=await rx(e,new Set(r.map(({host:m})=>m))),o=[...r,...i];Dc([...o,n],t),await Promise.all(r.map(m=>m.runScripts()));let a=i.filter(m=>{if(m.isCurrent())return!0;for(let f of m.styles)f.element.remove();return window.__hfVariablesByComp&&delete window.__hfVariablesByComp[m.namespace],!1}),l=[...r.filter(m=>m.host.isConnected),...a],s=await rx(e,new Set(l.map(({host:m})=>m)));s.length&&Dc([...l,...s,n],t);let c=new Map([...a,...s].map(m=>[m.host,m]));for(let m of fs()){let f=c.get(m);f&&await f.runScripts()}let d=[...l,...s].filter(m=>m.host.isConnected);Dc([...d,n],t)}function Dc(e,t){for(let{styles:r}of e)for(let i of r){let o=i.element.textContent??"";o!==i.applied&&(i.authored=o,i.applied=o)}Xb(document,e.map(({host:r,namespace:i,styles:o,referenceTarget:a})=>({root:r,namespace:i,referenceTarget:a,exclude:e.filter(l=>l.host!==r&&r.contains(l.host)).map(l=>l.host),cssTexts:o.map(l=>l.authored)})),t).forEach((r,i)=>{let o=Hn(e[i].host,St);if(!(r.size===0&&o.length===0))for(let a of e[i].styles){let l=Jb(a.authored,r,o);l!==a.applied&&(a.element.textContent=l),a.applied=l}}),ar()}function SR(e,t,n){let i={...e.declaredVariableDefaults??(Ie(t)?Ti(t):{}),...Pp(e.host)};$l(e.variableDeclarer??(Ie(t)?t:null),i,n),Ip(e.host),Object.keys(i).length>0?(window.__hfVariablesByComp||(window.__hfVariablesByComp={}),window.__hfVariablesByComp[n]=i,ql(e.host,{...Fp(e.host,i,window),...ya()})):window.__hfVariablesByComp&&delete window.__hfVariablesByComp[n]}function vR(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ER(e){if(!Array.isArray(e))throw new Error("expected a JSON array");if(!e.every(vR))throw new Error("every array entry must be an object");return e}function AR(e){let n=e.vars.data?.captionState;return n==="dim"||n==="active"?n:void 0}function _R(e){return Se(e)?e.dataset.captionWrapper!=="true"?e:e.querySelector(":scope > span")??null:null}function wR(){let e=[],t=document.querySelectorAll(".caption-group");for(let n of t)for(let r of n.children){if(!Se(r))continue;let i=r.dataset.captionWrapper==="true"?r.querySelector(":scope > span"):r.tagName==="SPAN"?r:null;i&&e.push(i)}return e}function CR(e){let t=e.parentElement;if(t?.dataset.captionWrapper==="true")return t;let n=document.createElement("span");return n.style.display="inline-block",n.dataset.captionWrapper="true",e.parentNode?.insertBefore(n,e),n.appendChild(e),n}var Gc=()=>window.gsap,fx=()=>fetch("caption-overrides.json").then(e=>e.ok?e.json():null),mx=e=>e===null?[]:ER(e);function px(e){let t=e instanceof Error?e.message:String(e);console.error(`[HyperFrames] Invalid caption-overrides.json: ${t}`)}function hx(){return Gc()?fx().then(mx).catch(e=>(px(e),[])):Promise.resolve([])}function Bc(e,t){return!Gc()||document.querySelectorAll(".caption-group").length===0?Promise.resolve():fx().then(n=>Uc(mx(n),e,t)).catch(px)}function TR(e,t){return(e.wordId?_R(document.getElementById(e.wordId)):null)??(e.wordIndex!==void 0?t[e.wordIndex]??null:null)}function dx(e,t){return Object.fromEntries(t.filter(n=>e[n]!==void 0).map(n=>[n,e[n]]))}function Hc(e,t){let n=e.style.color;e.style.color=t;let r=getComputedStyle(e).color;return e.style.color=n,r}function RR(e,t){let n=t[0]?.vars.startAt;return Hc(e,n?.color===void 0?"":String(n.color))}function MR(e,t,n,r){let i=AR(e);if(i)return i;let o=String(e.vars.color);return/var\(|currentcolor/i.test(o)?Hc(t,o)===n?"dim":"active":(r.has(o)||r.set(o,Hc(t,o)),r.get(o)===n?"dim":"active")}function kR(e,t,n){if(e.dimColor)return e.dimColor;if(!(t.length===0||t.some(r=>r.vars.runBackwards)))return n}function LR(e,t,n,r){let i=e.getTweensOf(t).filter(l=>l.vars.color!==void 0).sort((l,s)=>l.startTime()-s.startTime()),o=RR(t,i);for(let l of i){let c=MR(l,t,o,r)==="dim"?n.dimColor:n.activeColor;c&&(l.vars.color=c),l.vars.runBackwards||l.invalidate?.()}let a=kR(n,i,o);a&&e.set(t,{color:a})}function NR(e,t,n,r){let i=dx(n,["x","y","scale","rotation"]),o=dx(n,["opacity","fontWeight","fontFamily"]);if(n.fontSize!==void 0&&(o.fontSize=`${n.fontSize}px`),(n.activeColor||n.dimColor)&&LR(e,t,n,r),Object.keys(o).length>0&&e.set(t,o),Object.keys(i).length>0){let a=CR(t);e.set(a,i)}}function Uc(e,t,n=()=>{}){let r=Gc();if(!r||e.length===0)return;n();let i=wR(),o=new Map;for(let a of e){let l=TR(a,i);!l||t&&!t.some(s=>s.contains(l))||NR(r,l,a,o)}}var Vc="data-hf-edit-base-x",$c="data-hf-edit-base-y",An="data-hf-edit-original-translate",ms=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},FR=e=>{let t=[],n=0,r="";for(let i of e.trim())i==="("&&(n+=1),i===")"&&(n=Math.max(0,n-1)),/\s/.test(i)&&n===0?(r&&t.push(r),r=""):r+=i;return r&&t.push(r),t},gx=/^-?(?:\d+(?:\.\d+)?|\.\d+)px$/,Wc=(e,t)=>gx.test(e)&&gx.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,IR=(e,t,n)=>{if(!e||e==="none")return`${t} ${n}`;let[r,i,o]=FR(e);if(r===void 0)return`${t} ${n}`;if(i===void 0)return`${Wc(r,t)} ${n}`;let a=o===void 0?"":` ${o}`;return`${Wc(r,t)} ${Wc(i,n)}${a}`},DR=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},PR=e=>{let t=e.style.getPropertyValue("translate").trim();if(t)return t==="none"?"":t;try{let n=e.ownerDocument.defaultView,r=n?n.getComputedStyle(e).getPropertyValue("translate").trim():"";return r==="none"?"":r}catch{return""}},ps=new WeakMap;function vx(e){ps.delete(e)}function OR(e,t){let n=ps.get(e);if(!t?.force&&n!==void 0&&e.style.getPropertyValue("translate")!==n){mt("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=ms(e.getAttribute("data-x"))-ms(e.getAttribute(Vc)),i=ms(e.getAttribute("data-y"))-ms(e.getAttribute($c));e.hasAttribute(An)||e.setAttribute(An,PR(e)),n===void 0&&DR(e);let o=e.getAttribute(An)??"",a=IR(o,`${r}px`,`${i}px`);e.style.setProperty("translate",a),ps.set(e,e.style.getPropertyValue("translate"))}function fo(e,t){let n=e.querySelectorAll(`[${An}]:not([${Vc}]):not([${$c}])`);for(let o=0;o<n.length;o++){let a=n[o];if(a===void 0||!lr(a))continue;let l=a.getAttribute(An)??"";l===""?a.style.removeProperty("translate"):a.style.setProperty("translate",l),a.removeAttribute(An),ps.delete(a)}let r=e.querySelectorAll(`[${Vc}], [${$c}]`),i=0;for(let o=0;o<r.length;o++){let a=r[o];a===void 0||!lr(a)||(OR(a,t),i+=1)}return i}var bx="__hfPositionEditsSeekReapplyWrapped",xx=new WeakSet,yx=new WeakMap,Sx=new WeakMap;function Ex(e){let t=e,n=()=>{try{fo(t.document)}catch{}},r=m=>typeof m=="function"&&(xx.has(m)||!!m[bx]),i=m=>{xx.add(m);try{Object.defineProperty(m,bx,{value:!0})}catch{}},o=m=>{if(typeof m!="function"||r(m))return m;let f=function(...p){let y=m.apply(this,p);return n(),y};return i(f),f},a=(m,f)=>{let p=yx.get(m);if(p?.has(f))return!0;let y=Object.getOwnPropertyDescriptor(m,f);if(y?.configurable===!1){let v=m[f];return typeof v=="function"&&(m[f]=o(v),n()),!1}let b=m[f],g=y?.set;return Object.defineProperty(m,f,{configurable:!0,enumerable:y?.enumerable??!0,get:()=>b,set:v=>{b=o(v),g?.call(m,v)}}),b=o(b),p??(p=new Set),p.add(f),yx.set(m,p),n(),!0},l=(m,f)=>{let p=Sx.get(t),y=Object.getOwnPropertyDescriptor(t,m);if(!p?.has(m)){if(y?.configurable===!1){let v=t[m];return v?a(v,f):!1}let g=t[m];Object.defineProperty(t,m,{configurable:!0,enumerable:y?.enumerable??!0,get:()=>g,set:v=>{g=v,g&&a(g,f)}}),p??(p=new Set),p.add(m),Sx.set(t,p)}let b=t[m];return b?a(b,f):!1},s=()=>{let m=l("__hf","seek"),f=l("__player","renderSeek");return m&&f};if(s())return;let c=120,d=t.setInterval(()=>{if(s()){t.clearInterval(d);return}c-=1,c<=0&&t.clearInterval(d)},50)}function hs(e){let t=window,r=e.closest("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()??"",i=r?t.__hfVariablesByComp?.[r]:void 0;if(i)return i;let o=t.__hyperframes?.getVariables?.();return o&&typeof o=="object"?o:t.__hfVariables??{}}function gs(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function qc(e){let t=e.replace(/[\u0000-\u0020]/g,""),n=/^([a-z][a-z0-9+.-]*):/i.exec(t);if(!n)return!0;let r=n[1]?.toLowerCase();return r?r==="https"||r==="http"||r==="blob"?!0:r==="data"?/^data:image\//i.test(t):!1:!1}var Ax=new Set(["img","video","audio","source"]);function HR(e){if(typeof e=="string"&&e.length>0)return e;if(e!==null&&typeof e=="object"){let t=e.url;if(typeof t=="string"&&t.length>0)return t}return null}function GR(e){return e.replace(/[;{}<>\r\n]/g,"")}function BR(e){if(gs(e))return String(e);if(e!==null&&typeof e=="object"){let t=e.name;if(typeof t=="string"&&t.length>0)return t}return null}function zc(e,t){let n=e.closest("[data-composition-id]"),r=t.get(n);if(r)return r;let i=hs(e);return t.set(n,i),i}function UR(e,t){if(e.childElementCount===0){e.textContent=t;return}let n=!1;for(let r of Array.from(e.childNodes))r.nodeType===Node.TEXT_NODE&&(r.nodeValue=n?"":t,n=!0);n||e.insertBefore(e.ownerDocument.createTextNode(t),e.firstChild)}function WR(e){return e.querySelector("[data-hf-root]")??e.getElementById("stage")??e.body?.firstElementChild??e.body}function VR(e,t){for(let n of new Set(e)){let r=zc(n,t);for(let[i,o]of Object.entries(r)){let a=BR(o);a!==null&&Se(n)&&n.style.setProperty(`--${i}`,GR(a))}}}function _x(e,t,n=!0){let r=e.getAttribute("data-var-src")?.trim();if(!r)return null;if(!Ax.has(e.tagName.toLowerCase()))return n&&console.warn(`[hyperframes] Ignoring data-var-src on <${e.tagName.toLowerCase()}>: variable-bound src is only allowed on ${Array.from(Ax).join("/")}.`),null;let i=HR(zc(e,t)[r]);return i===null?null:qc(i)?i:(n&&console.warn(`[hyperframes] Ignoring data-var-src="${r}": unsafe URL protocol.`),null)}function wx(e){return _x(e,new Map,!1)??Ni(e)}function bs(e,t){let n=new Map,r=o=>t?[...t.matches(o)?[t]:[],...t.querySelectorAll(o)]:Array.from(e.querySelectorAll(o)),i=t?null:WR(e);VR([...i?[i]:[],...r("[data-composition-id]")],n);for(let o of r("[data-var-src]")){let a=_x(o,n);a!==null&&Ni(o)!==a&&o.setAttribute("src",a)}for(let o of r("[data-var-text]")){let a=o.getAttribute("data-var-text")?.trim();if(!a)continue;let l=zc(o,n)[a];gs(l)&&UR(o,String(l))}}var en=new Map,$R="data-hf-color-grading-canvas",qR="__hf_color_grading_canvas__";function Px(){if(typeof MutationObserver>"u"||typeof document>"u")return;let e=document.documentElement;if(!e)return;let t=r=>{Se(r)&&(r.hasAttribute(qn)||r.setAttribute(qn,r.style.opacity))},n=r=>{if(Ie(r)){r.matches("video, img")&&t(r);for(let i of r.querySelectorAll("video, img"))t(i)}};n(e),new MutationObserver(r=>{for(let i of r)for(let o of i.addedNodes)n(o)}).observe(e,{childList:!0,subtree:!0})}var zR=16,jR=4,Jn={enabled:!1,position:.5,softness:0,lineWidth:2},jc=["#000000","#ffffff"],KR=["#1a1a1a","#f5f5dc"],xo=3,YR=xo-1,XR=5,Kc=`${Ot}.0`,Cx=`${Ot-1}.0`,JR=`${xo}.0`,QR=`${(YR+.5)/xo}`;function mo(e){let t=e.getAttribute(Ga);return t==null?null:Mg(t,hs(e))}var ZR=["attribute vec2 a_pos;","varying vec2 v_uv;","void main(){"," v_uv = a_pos * 0.5 + 0.5;"," gl_Position = vec4(a_pos, 0.0, 1.0);","}"].join(`
|
|
357
|
-
`),Ox=["#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","#else","precision mediump float;","#endif","varying vec2 v_uv;","uniform sampler2D u_source;","uniform sampler2D u_blurSource;","uniform sampler2D u_bloomSource;","uniform sampler2D u_kuwaharaSource;","uniform sampler2D u_lut;","uniform sampler2D u_advanced;","uniform vec2 u_resolution;","uniform vec2 u_uvScale;","uniform vec2 u_uvOffset;","uniform float u_blurReady;","uniform float u_bloomReady;","uniform float u_kuwaharaReady;","uniform float u_lutEnabled;","uniform float u_lutSize;","uniform vec2 u_lutTextureSize;","uniform vec3 u_lutDomainMin;","uniform vec3 u_lutDomainMax;","uniform float u_lutIntensity;","uniform vec3 u_shadowWheel;","uniform vec3 u_midtoneWheel;","uniform vec3 u_highlightWheel;","uniform float u_rgbCurvesEnabled;","uniform float u_hueCurvesEnabled;","uniform float u_secondaryCount;","uniform float u_exposure;","uniform float u_contrast;","uniform float u_highlights;","uniform float u_shadows;","uniform float u_whites;","uniform float u_blacks;","uniform float u_temperature;","uniform float u_tint;","uniform float u_vibrance;","uniform float u_saturation;","uniform float u_vignette;","uniform float u_vignetteMidpoint;","uniform float u_vignetteRoundness;","uniform float u_vignetteFeather;","uniform float u_grain;","uniform float u_grainSize;","uniform float u_grainRoughness;","uniform float u_grainSeed;","uniform float u_effectTime;","uniform float u_blur;","uniform float u_bloom;","uniform float u_kuwahara;","uniform float u_pixelate;","uniform float u_chromaBleed;","uniform float u_tapeDamage;","uniform float u_tapeTracking;","uniform float u_tapeNoise;","uniform float u_tapeSpeed;","uniform float u_filmArtifacts;","uniform float u_halftone;","uniform float u_halftoneSize;","uniform float u_twoInkPrint;","uniform float u_twoInkPrintSize;","uniform float u_ascii;","uniform float u_asciiSize;","uniform float u_asciiInvert;","uniform float u_asciiStyle;","uniform float u_asciiColor;","uniform float u_asciiRotation;","uniform float u_dither;","uniform float u_ditherSize;","uniform float u_monoScreen;","uniform float u_monoScreenSize;","uniform float u_monoScreenAngle;","uniform float u_monoScreenSpread;","uniform float u_monoScreenShape;","uniform float u_monoScreenInvert;","uniform float u_scanlines;","uniform float u_scanlineCount;","uniform float u_scanlineSoftness;","uniform float u_chromaticAberration;","uniform float u_chromaticAngle;","uniform float u_crtCurvature;","uniform float u_digitalGlitch;","uniform float u_digitalGlitchColorSplit;","uniform float u_digitalGlitchLineTear;","uniform float u_digitalGlitchPixelate;","uniform float u_digitalGlitchBlockAmount;","uniform float u_digitalGlitchBlockDisplacement;","uniform float u_digitalGlitchBlockOpacity;","uniform float u_digitalGlitchSpeed;","uniform float u_engraving;","uniform float u_engravingSpacing;","uniform float u_engravingMinThickness;","uniform float u_engravingMaxThickness;","uniform float u_engravingAngle;","uniform float u_engravingContrast;","uniform float u_engravingSharpness;","uniform float u_engravingWave;","uniform float u_engravingWaveFrequency;","uniform float u_crosshatch;","uniform float u_crosshatchSpacing;","uniform float u_crosshatchThickness;","uniform float u_crosshatchAngle;","uniform float u_crosshatchContrast;","uniform float u_crosshatchEdges;","uniform float u_crosshatchLineWeight;","uniform float u_crosshatchWave;","uniform float u_crosshatchWaveFrequency;","uniform float u_paletteSize;","uniform vec3 u_palette0;","uniform vec3 u_palette1;","uniform vec3 u_palette2;","uniform vec3 u_palette3;","uniform vec3 u_palette4;","uniform vec3 u_palette5;","uniform float u_intensity;","uniform float u_compareEnabled;","uniform float u_comparePosition;","uniform float u_compareSoftness;","uniform float u_compareLineWidth;","const float PI = 3.14159265359;","float lumaOf(vec3 c){ return dot(c, vec3(0.2126, 0.7152, 0.0722)); }","float bt601Luma(vec3 c){ return dot(c, vec3(0.299, 0.587, 0.114)); }","float grainHash(vec2 p){ return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453123); }","float digitalHash(vec2 p){"," vec2 q = mod(floor(p), 251.0);"," float x = mod(q.x * q.x * 157.0 + q.x * 89.0, 251.0);"," float y = mod(q.y * q.y * 113.0 + q.y * 47.0, 251.0);"," float xy = mod(q.x * q.y * 71.0, 251.0);"," return mod(x + y + xy + 19.0, 251.0) / 251.0;","}","float colorSaturation(vec3 c){ return max(max(c.r, c.g), c.b) - min(min(c.r, c.g), c.b); }","vec2 clampUv(vec2 uv){ return clamp(uv, vec2(0.0), vec2(1.0)); }","vec2 applyCrtWarp(vec2 uv){"," vec2 centered = uv * 2.0 - 1.0;"," float curvature = clamp(u_crtCurvature, 0.0, 1.0) * 0.5;"," float dist = dot(centered, centered);"," centered *= 1.0 + curvature * dist;"," return centered * 0.5 + 0.5;","}","vec4 sampleSource(vec2 uv){ return texture2D(u_source, clampUv(uv)); }","vec4 sampleBlur(vec2 uv){ return texture2D(u_blurSource, clampUv(uv)); }","vec3 sampleBloom(vec2 uv){ return texture2D(u_bloomSource, clampUv(uv)).rgb; }","vec3 sampleKuwahara(vec2 uv){"," vec2 displayUv = uv * u_uvScale + u_uvOffset;"," return texture2D(u_kuwaharaSource, clampUv(displayUv)).rgb;","}","vec4 samplePrepared(vec2 uv){"," vec4 base = sampleSource(uv);","#ifdef HF_STAGE_BLUR"," float blur = clamp(u_blur, 0.0, 1.0);"," if (blur > 0.0 && u_blurReady > 0.5) base = mix(base, sampleBlur(uv), blur);","#endif","#ifdef HF_STAGE_KUWAHARA"," float kuwahara = clamp(u_kuwahara, 0.0, 1.0);"," if (kuwahara > 0.0 && u_kuwaharaReady > 0.5) {"," base.rgb = mix(base.rgb, sampleKuwahara(uv), kuwahara);"," }","#endif"," return base;","}","float tapeTrackingBand(float y, float center, float width){"," float offset = fract(y - center + 0.5) - 0.5;"," float triangle = max(0.0, 1.0 - abs(offset) / max(width, 0.0001));"," return triangle * triangle * (3.0 - 2.0 * triangle);","}","vec4 sampleMedia(vec2 uv){"," float pixel = clamp(u_pixelate, 0.0, 1.0);"," vec2 sampleUv = uv;","#ifdef HF_STAGE_PIXELATE"," if (pixel > 0.0) {"," float blockSize = mix(1.0, 48.0, pixel);"," vec2 cells = max(u_resolution / blockSize, vec2(1.0));"," sampleUv = (floor(clamp(uv, vec2(0.0), vec2(0.999999)) * cells) + 0.5) / cells;"," }","#endif","#ifdef HF_STAGE_TAPE"," float tapeDamage = clamp(u_tapeDamage, 0.0, 1.0);"," float tapeTracking = clamp(u_tapeTracking, 0.0, 1.0);"," float tapeNoise = clamp(u_tapeNoise, 0.0, 1.0);"," float tapeTime = u_effectTime * mix(0.0, 2.0, clamp(u_tapeSpeed, 0.0, 1.0));"," float tapeFrame = floor(tapeTime * 60.0);"," float tapeLine = floor(sampleUv.y * u_resolution.y * 0.5);"," float lineJitter = (digitalHash(vec2(tapeLine, floor(tapeFrame * 0.5))) - 0.5) * 1.8 * tapeNoise;"," float slowWobble = sin(sampleUv.y * 32.0 + tapeTime * 2.6) * 0.55;"," float headSwitch = smoothstep(0.88, 1.0, sampleUv.y) * sin(sampleUv.y * 240.0 + tapeTime * 8.0) * 4.0;"," float trackingShift = tapeTrackingBand(sampleUv.y, fract(0.08 + tapeTime * 0.083), 0.035);"," trackingShift -= tapeTrackingBand(sampleUv.y, fract(0.28 + tapeTime * 0.061), 0.03) * 0.8;"," trackingShift += tapeTrackingBand(sampleUv.y, fract(0.5 + tapeTime * 0.047), 0.04) * 0.75;"," trackingShift -= tapeTrackingBand(sampleUv.y, fract(0.72 + tapeTime * 0.037), 0.028) * 0.65;"," trackingShift += tapeTrackingBand(sampleUv.y, fract(0.89 + tapeTime * 0.029), 0.032) * 0.55;"," trackingShift *= tapeTracking * 48.0;"," float tapeShift = (lineJitter + slowWobble + headSwitch + trackingShift) * tapeDamage;","#endif"," float texelX = 1.0 / max(u_resolution.x * max(u_uvScale.x, 0.00001), 1.0);","#ifdef HF_STAGE_TAPE"," vec2 tapeUv = sampleUv + vec2(tapeShift * texelX, 0.0);","#else"," vec2 tapeUv = sampleUv;","#endif"," vec4 base = samplePrepared(tapeUv);","#ifdef HF_STAGE_TAPE"," if (tapeDamage > 0.0) {"," vec2 lumaStep = vec2(texelX * mix(1.0, 3.5, tapeDamage), 0.0);"," vec3 leftTape = samplePrepared(tapeUv - lumaStep).rgb;"," vec3 rightTape = samplePrepared(tapeUv + lumaStep).rgb;"," float tapeLuma = (bt601Luma(leftTape) + bt601Luma(base.rgb) * 2.0 + bt601Luma(rightTape)) * 0.25;"," vec3 centerChroma = base.rgb - vec3(bt601Luma(base.rgb));"," vec3 tapeColor = vec3(tapeLuma) + centerChroma;"," vec3 ghost = samplePrepared(tapeUv - vec2(texelX * 12.0, 0.0)).rgb;"," tapeColor = mix(tapeColor, ghost, 0.045 * tapeDamage);"," float fineNoise = digitalHash(floor(gl_FragCoord.xy) + vec2(tapeFrame * 17.0, tapeFrame * 3.0)) - 0.5;"," float band = digitalHash(vec2(floor(sampleUv.y * 92.0), floor(tapeFrame / 3.0)));"," float dropout = smoothstep(0.985, 1.0, band) * (digitalHash(vec2(floor(sampleUv.x * 18.0), tapeLine)) - 0.5);"," tapeColor += (fineNoise * 0.035 + dropout * 0.12) * tapeDamage * tapeNoise;"," base.rgb = mix(base.rgb, clamp(tapeColor, 0.0, 1.0), tapeDamage);"," }","#endif","#ifdef HF_STAGE_CHROMA_BLEED"," float chromaBleed = clamp(u_chromaBleed, 0.0, 1.0);"," if (chromaBleed > 0.0) {"," float radius = mix(1.0, 4.0, chromaBleed);"," vec2 stepUv = vec2(texelX * radius, 0.0);"," vec3 c0 = base.rgb;"," vec3 c1 = samplePrepared(tapeUv - stepUv).rgb;"," vec3 c2 = samplePrepared(tapeUv + stepUv).rgb;"," vec3 c3 = samplePrepared(tapeUv - stepUv * 2.0).rgb;"," vec3 c4 = samplePrepared(tapeUv + stepUv * 2.0).rgb;"," float centerLuma = lumaOf(base.rgb);"," vec3 blurredChroma = ((c0 - vec3(lumaOf(c0))) * 6.0 + (c1 - vec3(lumaOf(c1))) * 4.0 + (c2 - vec3(lumaOf(c2))) * 4.0 + (c3 - vec3(lumaOf(c3))) + (c4 - vec3(lumaOf(c4)))) / 16.0;"," base.rgb = mix(base.rgb, clamp(vec3(centerLuma) + blurredChroma, 0.0, 1.0), chromaBleed);"," }","#endif"," return base;","}","#ifdef HF_STAGE_CHROMATIC","vec4 sampleChromaticMedia(vec2 uv, vec4 center){"," float amount = clamp(u_chromaticAberration, 0.0, 1.0);"," if (amount <= 0.0) return center;"," float angle = clamp(u_chromaticAngle, 0.0, 1.0) * PI * 2.0;"," vec2 offset = vec2(cos(angle), sin(angle)) * amount * 0.02;"," vec4 positive = sampleMedia(uv + offset);"," vec4 negative = sampleMedia(uv - offset);"," vec3 split = vec3(positive.r, center.g, negative.b);"," return vec4(split, center.a);","}","#else","vec4 sampleChromaticMedia(vec2 uv, vec4 center){ return center; }","#endif","vec3 sampleDigitalSplit(vec2 uv, vec2 block, float time, float amount){"," float split = amount * 0.06;"," float direction = digitalHash(block * 0.4 + vec2(floor(time * 3.7), floor(time * 5.3)));"," vec2 axis = direction > 0.66 ? vec2(1.0, 0.0) : direction > 0.33 ? vec2(0.0, 1.0) : vec2(0.7071);"," vec4 center = sampleMedia(uv);"," return vec3(sampleMedia(uv + axis * split).r, center.g, sampleMedia(uv - axis * split).b);","}","#ifdef HF_STAGE_GLITCH","vec3 applyDigitalGlitch(vec2 uv, vec3 source){"," float amount = clamp(u_digitalGlitch, 0.0, 1.0);"," if (amount <= 0.0) return source;"," float colorSplit = clamp(u_digitalGlitchColorSplit, 0.0, 1.0) * 2.0;"," float lineTear = clamp(u_digitalGlitchLineTear, 0.0, 1.0) * 2.0;"," float pixelate = clamp(u_digitalGlitchPixelate, 0.0, 1.0) * 2.0;"," float blockAmount = clamp(u_digitalGlitchBlockAmount, 0.0, 1.0);"," float blockDisplacement = clamp(u_digitalGlitchBlockDisplacement, 0.0, 1.0) * 2.0;"," float blockOpacity = clamp(u_digitalGlitchBlockOpacity, 0.0, 1.0);"," float speed = clamp(u_digitalGlitchSpeed, 0.0, 1.0) * 2.0;"," float time = u_effectTime * speed;"," float blockCount = 8.0 + blockAmount * 60.0;"," vec2 block = floor(uv * blockCount);"," float randomA = digitalHash(block + vec2(floor(time * 7.3), floor(time * 11.1)));"," float randomB = digitalHash(block * 0.7 + vec2(17.3 + floor(time * 6.6), 29.1));"," float randomC = digitalHash(block + vec2(floor(time * 5.7) * 13.0, 41.0));"," float randomD = digitalHash(block * 1.3 + vec2(7.0, floor(time * 3.2) * 7.0));"," vec2 displaced = uv;"," if (blockDisplacement > 0.0 && blockOpacity > 0.0) {"," float threshold = 1.0 - blockDisplacement * 0.4;"," if (randomA > threshold) {"," displaced += vec2((randomB - 0.5) * blockDisplacement * 0.5, (randomC - 0.5) * blockDisplacement * 0.3);"," }"," if (randomD > 0.92 && blockDisplacement > 0.5) {"," displaced.x += (digitalHash(vec2(block.y, floor(time * 8.0))) - 0.5) * blockDisplacement;"," }"," displaced = mix(uv, displaced, blockOpacity);"," }"," if (lineTear > 0.0) {"," float row = floor(uv.y * (50.0 + lineTear * 150.0));"," float tearA = digitalHash(vec2(row * 7.3 + floor(time * 12.0 + row * 0.1) * 3.7, 13.0));"," float tearB = digitalHash(vec2(row * 13.7 + floor(time * 8.3) * 5.1, 31.0));"," if (tearA > 1.0 - lineTear * 0.5) displaced.x += (tearB - 0.5) * lineTear * 0.4;"," if (tearB > 0.95 && lineTear > 0.3) displaced.x += (tearA - 0.5) * lineTear * 0.8;"," }"," if (pixelate > 0.0) {"," float pixelRandom = digitalHash(block * 0.5 + vec2(floor(time * 4.9), 53.0));"," if (pixelRandom > 1.0 - pixelate * 0.35) {"," float cells = 4.0 + (1.0 - pixelRandom) * pixelate * 40.0;"," displaced = (floor(clampUv(displaced) * cells) + 0.5) / cells;"," }"," }"," displaced = clampUv(displaced);"," vec3 glitch = sampleDigitalSplit(displaced, block, time, colorSplit);"," if (blockDisplacement > 0.2 && blockOpacity > 0.0) {"," float corruption = digitalHash(block * 1.1 + vec2(floor(time * 11.9), 67.0));"," vec3 changed = glitch;"," if (corruption > 0.9) changed = 1.0 - glitch;"," else if (corruption > 0.85) changed = corruption > 0.875 ? glitch.gbr : glitch.brg;"," else if (corruption > 0.8) {"," float channel = digitalHash(block + vec2(73.0));"," if (channel > 0.66) changed.r = min(changed.r * 2.0, 1.0);"," else if (channel > 0.33) changed.g = min(changed.g * 2.0, 1.0);"," else changed.b = min(changed.b * 2.0, 1.0);"," }"," glitch = mix(glitch, changed, blockOpacity);"," }"," if (blockOpacity > 0.0) {"," float flash = digitalHash(block * 0.8 + vec2(floor(time * 14.7), 83.0));"," vec3 flashed = flash > 0.97 ? min(glitch * 1.8, vec3(1.0)) : flash > 0.94 ? glitch * 0.3 : glitch;"," glitch = mix(glitch, flashed, blockOpacity * 0.6);"," }"," if (lineTear > 0.1) {"," float interference = pow(sin(uv.y * (300.0 + randomA * 200.0) + time * 30.0) * 0.5 + 0.5, 6.0);"," glitch -= interference * 0.08 * lineTear;"," }"," return mix(source, clamp(glitch, 0.0, 1.0), amount);","}","#else","vec3 applyDigitalGlitch(vec2 uv, vec3 source){ return source; }","#endif","float dustMask(vec2 uv, float frameBucket){"," vec2 grid = vec2(128.0, 72.0);"," vec2 cell = floor(uv * grid);"," vec2 local = fract(uv * grid) - 0.5;"," float chance = grainHash(cell + frameBucket * 19.13);"," float radius = mix(0.05, 0.34, grainHash(cell + 7.1));"," return step(0.9975, chance) * (1.0 - smoothstep(radius, radius + 0.08, length(local)));","}","float screenDot(vec2 p, float ink, float angle, float sharpness){"," float c = cos(angle);"," float s = sin(angle);"," vec2 q = mat2(c, -s, s, c) * p;"," vec2 d = fract(q) - 0.5;"," float radius = sqrt(clamp(ink, 0.0, 1.0)) * 0.68;"," float edge = mix(0.16, 0.025, sharpness);"," return 1.0 - smoothstep(radius - edge, radius + edge, length(d));","}","vec3 paletteColor(float index);","float monoScreenMask(vec2 local, float radius, float shape, float softness){"," vec2 centered = local - 0.5;"," float distanceToInk = length(centered);"," if (shape > 0.5 && shape < 1.5) distanceToInk = max(abs(centered.x), abs(centered.y));"," if (shape > 1.5 && shape < 2.5) distanceToInk = abs(centered.x) + abs(centered.y);"," if (shape > 2.5 && shape < 3.5) distanceToInk = max(abs(centered.x) * 0.86 + centered.y * 0.5, -centered.y);"," if (shape > 3.5) distanceToInk = abs(centered.y);"," float shapeRadius = shape > 3.5 ? radius * 0.45 : radius;"," return 1.0 - smoothstep(shapeRadius, shapeRadius + softness, distanceToInk);","}","#ifdef HF_STAGE_MONO_SCREEN","vec3 applyMonoScreen(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float invert = step(0.5, u_monoScreenInvert);"," float coverage = mix(1.0 - lumaOf(source), lumaOf(source), invert);"," coverage = pow(clamp(coverage, 0.0, 1.0), mix(1.7, 0.58, clamp(u_monoScreenSpread, 0.0, 1.0)));"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float cellPx = mix(4.0, 18.0, clamp(u_monoScreenSize, 0.0, 1.0)) * scale;"," float angle = clamp(u_monoScreenAngle, 0.0, 1.0) * PI * 0.5;"," float cosine = cos(angle);"," float sine = sin(angle);"," vec2 point = mat2(cosine, -sine, sine, cosine) * gl_FragCoord.xy / max(cellPx, 1.0);"," float radius = sqrt(coverage) * 0.68;"," float inkMask = monoScreenMask(fract(point), radius, floor(u_monoScreenShape + 0.5), 0.035);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," return mix(source, mix(paper, ink, inkMask), amount);","}","#else","vec3 applyMonoScreen(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_ENGRAVING","vec3 applyEngraving(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float spacing = mix(3.0, 20.0, clamp(u_engravingSpacing, 0.0, 1.0));"," float minThickness = mix(0.0, 2.0, clamp(u_engravingMinThickness, 0.0, 1.0));"," float maxThickness = mix(1.0, 8.0, clamp(u_engravingMaxThickness, 0.0, 1.0));"," float angle = clamp(u_engravingAngle, 0.0, 1.0) * PI;"," vec2 alongAxis = vec2(cos(angle), sin(angle));"," vec2 acrossAxis = vec2(-alongAxis.y, alongAxis.x);"," float along = dot(gl_FragCoord.xy, alongAxis);"," float across = dot(gl_FragCoord.xy, acrossAxis);"," float frequency = mix(1.0, 10.0, clamp(u_engravingWaveFrequency, 0.0, 1.0));"," float wave = sin(along * frequency * 0.01);"," across += wave * clamp(u_engravingWave, 0.0, 1.0) * 3.0;"," float lineIndex = floor(across / max(spacing, 1.0));"," float lineDistance = abs(fract(across / max(spacing, 1.0)) - 0.5) * spacing;"," float contrast = mix(0.5, 2.0, clamp(u_engravingContrast, 0.0, 1.0));"," float darkness = 1.0 - pow(clamp(lumaOf(source), 0.0, 1.0), contrast);"," float variation = mix(0.88, 1.12, digitalHash(vec2(lineIndex, 73.0)));"," float thickness = mix(minThickness, maxThickness, darkness) * variation;"," float edge = mix(1.0, 0.3, clamp(u_engravingSharpness, 0.0, 1.0));"," float inkMask = 1.0 - smoothstep(max(thickness * 0.5 - edge, 0.0), thickness * 0.5 + edge, lineDistance);"," inkMask *= smoothstep(0.015, 0.12, darkness);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," return mix(source, mix(paper, ink, inkMask), amount);","}","#else","vec3 applyEngraving(vec3 source, float amount){ return source; }","#endif","float crosshatchLine(vec2 pixel, float angle, float spacing, float thickness, float seed){"," vec2 alongAxis = vec2(cos(angle), sin(angle));"," vec2 acrossAxis = vec2(-alongAxis.y, alongAxis.x);"," float along = dot(pixel, alongAxis);"," float across = dot(pixel, acrossAxis);"," float frequency = mix(1.0, 10.0, clamp(u_crosshatchWaveFrequency, 0.0, 1.0));"," across += sin(along * frequency * 0.02 + u_effectTime + seed) * clamp(u_crosshatchWave, 0.0, 1.0) * 5.0;"," float lineIndex = floor(across / max(spacing, 1.0));"," float distanceToLine = abs(fract(across / max(spacing, 1.0)) - 0.5) * spacing;"," float variation = mix(1.0, 0.5 + digitalHash(vec2(lineIndex, seed)), clamp(u_crosshatchLineWeight, 0.0, 1.0));"," float halfWidth = thickness * variation * 0.5;"," return 1.0 - smoothstep(max(halfWidth - 0.5, 0.0), halfWidth + 0.5, distanceToLine);","}","float crosshatchEdge(vec2 uv){"," vec2 texel = 1.0 / max(u_resolution * u_uvScale, vec2(1.0));"," float tl = lumaOf(sampleMedia(uv + texel * vec2(-1.0, -1.0)).rgb);"," float tc = lumaOf(sampleMedia(uv + texel * vec2( 0.0, -1.0)).rgb);"," float tr = lumaOf(sampleMedia(uv + texel * vec2( 1.0, -1.0)).rgb);"," float ml = lumaOf(sampleMedia(uv + texel * vec2(-1.0, 0.0)).rgb);"," float mr = lumaOf(sampleMedia(uv + texel * vec2( 1.0, 0.0)).rgb);"," float bl = lumaOf(sampleMedia(uv + texel * vec2(-1.0, 1.0)).rgb);"," float bc = lumaOf(sampleMedia(uv + texel * vec2( 0.0, 1.0)).rgb);"," float br = lumaOf(sampleMedia(uv + texel * vec2( 1.0, 1.0)).rgb);"," float gx = -tl - 2.0 * ml - bl + tr + 2.0 * mr + br;"," float gy = -tl - 2.0 * tc - tr + bl + 2.0 * bc + br;"," return length(vec2(gx, gy));","}","#ifdef HF_STAGE_CROSSHATCH","vec3 applyCrosshatch(vec2 uv, vec3 source, float amount){"," if (amount <= 0.0) return source;"," float spacing = mix(5.0, 30.0, clamp(u_crosshatchSpacing, 0.0, 1.0));"," float thickness = mix(1.0, 5.0, clamp(u_crosshatchThickness, 0.0, 1.0));"," float baseAngle = -clamp(u_crosshatchAngle, 0.0, 1.0) * PI;"," float contrast = mix(0.5, 2.0, clamp(u_crosshatchContrast, 0.0, 1.0));"," float darkness = 1.0 - pow(clamp(lumaOf(source), 0.0, 1.0), contrast);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," vec3 result = paper;"," float layer = crosshatchLine(gl_FragCoord.xy, baseAngle, spacing, thickness, 1.0) * smoothstep(0.2, 0.4, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle + PI * 0.5, spacing * 0.95, thickness * 0.9, 2.0) * smoothstep(0.4, 0.6, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle + PI * 0.25, spacing * 0.9, thickness * 0.8, 3.0) * smoothstep(0.6, 0.8, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle - PI * 0.25, spacing * 0.85, thickness * 0.7, 4.0) * smoothstep(0.75, 0.9, darkness);"," result = mix(result, ink, layer);"," result = mix(result, ink, smoothstep(0.9, 1.0, darkness) * 0.8);"," float edgeStrength = mix(0.0, 2.0, clamp(u_crosshatchEdges, 0.0, 1.0));"," float edge = smoothstep(0.1, 0.3, crosshatchEdge(uv)) * edgeStrength;"," result = mix(result, ink, clamp(edge, 0.0, 1.0));"," return mix(source, result, amount);","}","#else","vec3 applyCrosshatch(vec2 uv, vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_HALFTONE","vec3 applyHalftone(vec3 source, float amount){"," if (amount <= 0.0) return source;"," vec3 cmy = 1.0 - source;"," float k = min(cmy.r, min(cmy.g, cmy.b));"," vec3 inks = max(cmy - vec3(k * 0.72), 0.0);"," float scale = min(u_resolution.x, u_resolution.y) / 540.0;"," float cellPx = mix(5.0, 14.0, clamp(u_halftoneSize, 0.0, 1.0)) * max(scale, 0.25);"," vec2 p = gl_FragCoord.xy / max(cellPx, 1.0);"," float cyan = screenDot(p, inks.r, 0.261799, 0.78);"," float magenta = screenDot(p, inks.g, 1.308997, 0.78);"," float yellow = screenDot(p, inks.b, 0.0, 0.78);"," float blackInk = screenDot(p, k, 0.785398, 0.82);"," vec3 printColor = vec3(0.975, 0.962, 0.925);"," printColor *= mix(vec3(1.0), vec3(0.05, 0.79, 0.86), cyan);"," printColor *= mix(vec3(1.0), vec3(0.91, 0.08, 0.48), magenta);"," printColor *= mix(vec3(1.0), vec3(0.98, 0.83, 0.08), yellow);"," printColor *= mix(vec3(1.0), vec3(0.035), blackInk * 0.92);"," return mix(source, printColor, amount);","}","#else","vec3 applyHalftone(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_TWO_INK_PRINT","vec3 applyTwoInkPrint(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float sourceLuma = lumaOf(source);"," float darkness = 1.0 - sourceLuma;"," float warmBias = clamp(source.r - (source.g + source.b) * 0.5, -0.35, 0.35);"," float coolBias = clamp((source.g + source.b) * 0.5 - source.r, -0.35, 0.35);"," float redTone = smoothstep(0.08, 0.72, darkness) * (1.0 - 0.68 * smoothstep(0.66, 1.0, darkness));"," float tealTone = smoothstep(0.30, 0.92, darkness);"," float redCoverage = clamp(redTone + warmBias * 1.35 - coolBias * 0.35, 0.0, 1.0);"," float tealCoverage = clamp(tealTone + coolBias * 1.1 - warmBias * 0.45, 0.0, 1.0);"," float scale = min(u_resolution.x, u_resolution.y) / 540.0;"," float cellPx = mix(4.5, 12.0, clamp(u_twoInkPrintSize, 0.0, 1.0)) * max(scale, 0.25);"," vec2 p = gl_FragCoord.xy / max(cellPx, 1.0);"," float redDot = screenDot(p, redCoverage, 0.261799, 0.84);"," float tealDot = screenDot(p + vec2(0.12, -0.08), tealCoverage, 1.308997, 0.84);"," float paperNoise = grainHash(floor(gl_FragCoord.xy * 0.5)) - 0.5;"," vec3 paper = vec3(0.955, 0.910, 0.795) + paperNoise * 0.018;"," vec3 vermilion = vec3(0.88, 0.13, 0.075);"," vec3 teal = vec3(0.035, 0.285, 0.355);"," vec3 overprint = vec3(0.045, 0.055, 0.052);"," vec3 printColor = paper * (1.0 - redDot) * (1.0 - tealDot);"," printColor += vermilion * redDot * (1.0 - tealDot);"," printColor += teal * (1.0 - redDot) * tealDot;"," printColor += overprint * redDot * tealDot;"," return mix(source, clamp(printColor, 0.0, 1.0), amount);","}","#else","vec3 applyTwoInkPrint(vec3 source, float amount){ return source; }","#endif","vec3 paletteColor(float index){"," if (index < 0.5) return u_palette0;"," if (index < 1.5) return u_palette1;"," if (index < 2.5) return u_palette2;"," if (index < 3.5) return u_palette3;"," if (index < 4.5) return u_palette4;"," return u_palette5;","}","float bayer4(vec2 point){"," vec2 cell = mod(floor(point), 4.0);"," if (cell.y < 0.5) {"," if (cell.x < 0.5) return 0.5 / 16.0;"," if (cell.x < 1.5) return 8.5 / 16.0;"," if (cell.x < 2.5) return 2.5 / 16.0;"," return 10.5 / 16.0;"," }"," if (cell.y < 1.5) {"," if (cell.x < 0.5) return 12.5 / 16.0;"," if (cell.x < 1.5) return 4.5 / 16.0;"," if (cell.x < 2.5) return 14.5 / 16.0;"," return 6.5 / 16.0;"," }"," if (cell.y < 2.5) {"," if (cell.x < 0.5) return 3.5 / 16.0;"," if (cell.x < 1.5) return 11.5 / 16.0;"," if (cell.x < 2.5) return 1.5 / 16.0;"," return 9.5 / 16.0;"," }"," if (cell.x < 0.5) return 15.5 / 16.0;"," if (cell.x < 1.5) return 7.5 / 16.0;"," if (cell.x < 2.5) return 13.5 / 16.0;"," return 5.5 / 16.0;","}","float standardAsciiSample(float brightness, vec2 grid){"," if (brightness < 0.1) return 0.0;"," if (brightness < 0.2) return grid.x == 2.0 && grid.y == 5.0 ? 1.0 : 0.0;"," if (brightness < 0.3) return grid.x == 2.0 && (grid.y == 2.0 || grid.y == 4.0) ? 1.0 : 0.0;"," if (brightness < 0.4) return (grid.y == 2.0 || grid.y == 4.0) && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.5) {"," bool cross = (grid.x == 2.0 && grid.y >= 2.0 && grid.y <= 4.0) || (grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0);"," bool diagonals = (grid.x == 1.0 || grid.x == 3.0) && (grid.y == 2.0 || grid.y == 4.0);"," return cross || diagonals ? 1.0 : 0.0;"," }"," if (brightness < 0.6) {"," bool ring = ((grid.y == 2.0 || grid.y == 4.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 1.0 || grid.x == 3.0) && grid.y == 3.0);"," return ring ? 1.0 : 0.0;"," }"," bool outline = ((grid.y == 1.0 || grid.y == 5.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 0.0 || grid.x == 4.0) && grid.y >= 2.0 && grid.y <= 4.0) || ((grid.x == 1.0 || grid.x == 3.0) && grid.y >= 1.0 && grid.y <= 5.0);"," if (brightness < 0.7) return outline ? 1.0 : 0.0;"," if (brightness < 0.8) {"," bool slash = abs(grid.x - 2.0) == abs(grid.y - 3.0) && grid.x >= 1.0 && grid.x <= 3.0;"," return outline || slash ? 1.0 : 0.0;"," }"," if (brightness < 0.9) {"," bool loops = ((grid.y == 1.0 || grid.y == 3.0 || grid.y == 5.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 1.0 || grid.x == 3.0) && (grid.y == 2.0 || grid.y == 4.0));"," return loops ? 1.0 : 0.0;"," }"," return 1.0;","}","float asciiStyleSample(float style, float brightness, vec2 uv){"," vec2 grid = floor(uv * vec2(5.0, 7.0));"," if (style < 0.5) return standardAsciiSample(brightness, grid);"," if (style < 1.5) {"," float checker = mod(grid.x + grid.y, 2.0);"," float ruled = mod(grid.x, 2.0) == 0.0 || mod(grid.y, 2.0) == 0.0 ? 1.0 : 0.0;"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return checker == 0.0 ? 0.5 : 0.0;"," if (brightness < 0.375) return ruled * 0.6;"," if (brightness < 0.5) return checker == 0.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return ruled > 0.5 ? 1.0 : 0.3;"," if (brightness < 0.75) return checker == 0.0 ? 1.0 : 0.7;"," if (brightness < 0.875) return ruled > 0.5 ? 1.0 : 0.85;"," return 1.0;"," }"," if (style < 2.5) {"," if (brightness < 0.14) return 0.0;"," if (brightness < 0.28) return grid.x == 2.0 && grid.y == 1.0 ? 1.0 : 0.0;"," if (brightness < 0.42) return grid.x == 2.0 && grid.y == 5.0 ? 1.0 : 0.0;"," if (brightness < 0.56) return grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.7) return (grid.x == 2.0 && grid.y >= 2.0 && grid.y <= 4.0) || (grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0) ? 1.0 : 0.0;"," if (brightness < 0.84) return abs(grid.x - 2.0) == abs(grid.y - 3.0) && grid.y >= 2.0 && grid.y <= 4.0 ? 1.0 : 0.0;"," return grid.x == 1.0 || grid.x == 3.0 || grid.y == 2.0 || grid.y == 4.0 ? 1.0 : 0.0;"," }"," if (style < 3.5) return grid.y >= 6.0 - brightness * 7.0 ? 1.0 : 0.0;"," if (style < 4.5) {"," vec2 dots = floor(uv * vec2(2.0, 4.0));"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return dots.y == 3.0 ? 1.0 : 0.0;"," if (brightness < 0.375) return dots.y >= 2.0 ? 1.0 : 0.0;"," if (brightness < 0.5) return dots.y >= 1.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return dots.y >= 1.0 || dots.x == 1.0 ? 1.0 : 0.0;"," if (brightness < 0.75) return 1.0;"," if (brightness < 0.875) return mod(grid.x + grid.y, 2.0) < 1.5 ? 1.0 : 0.7;"," return 1.0;"," }"," if (style < 5.5) {"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return grid.x == 2.0 && grid.y == 3.0 ? 1.0 : 0.0;"," if (brightness < 0.375) return grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.5) return grid.x + grid.y == 5.0 || grid.x + grid.y == 6.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return grid.x == 2.0 ? 1.0 : 0.0;"," if (brightness < 0.75) return abs(grid.x - grid.y / 1.4) < 0.7 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.875) return grid.x == 2.0 || grid.y == 3.0 ? 1.0 : 0.0;"," return grid.x == 1.0 || grid.x == 3.0 || grid.y == 2.0 || grid.y == 4.0 ? 1.0 : 0.0;"," }"," if (style < 6.5) {"," bool top = grid.y == 0.0 && grid.x >= 1.0 && grid.x <= 3.0;"," bool topLeft = grid.x == 1.0 && grid.y <= 3.0;"," bool topRight = grid.x == 3.0 && grid.y <= 3.0;"," bool middle = grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0;"," bool bottomLeft = grid.x == 1.0 && grid.y >= 3.0;"," bool bottomRight = grid.x == 3.0 && grid.y >= 3.0;"," bool bottom = grid.y == 6.0 && grid.x >= 1.0 && grid.x <= 3.0;"," if (brightness < 0.1) return 0.0;"," if (brightness < 0.2) return topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.3) return top || topRight || middle || bottomLeft || bottom ? 1.0 : 0.0;"," if (brightness < 0.4) return top || topRight || middle || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.5) return topLeft || middle || topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.6) return top || topLeft || middle || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.7) return top || topLeft || middle || bottomLeft || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.8) return top || topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.9) return top || topLeft || topRight || middle || bottomLeft || bottomRight || bottom ? 1.0 : 0.0;"," return top || topLeft || topRight || middle || bottomRight || bottom ? 1.0 : 0.0;"," }"," float slash = grid.x - grid.y;"," float backslash = grid.x + grid.y;"," if (brightness < 0.16) return 0.0;"," if (brightness < 0.33) return mod(slash, 3.0) < 0.5 ? 1.0 : 0.0;"," if (brightness < 0.5) return mod(slash, 2.0) < 0.5 ? 1.0 : 0.0;"," bool diagonalA = mod(slash, 2.0) < 0.5;"," bool diagonalB = mod(backslash, 2.0) < 0.5;"," if (brightness < 0.66) return diagonalA || diagonalB ? 1.0 : 0.0;"," if (brightness < 0.83) return mod(slash, 1.5) < 0.5 || mod(backslash, 1.5) < 0.5 ? 1.0 : 0.2;"," return mod(slash, 1.0) < 0.6 || mod(backslash, 1.0) < 0.6 ? 1.0 : 0.5;","}","vec3 rgbToHsv(vec3 color){"," float maximum = max(max(color.r, color.g), color.b);"," float minimum = min(min(color.r, color.g), color.b);"," float delta = maximum - minimum;"," float hue = 0.0;"," if (delta > 0.00001) {"," if (maximum == color.r) hue = mod((color.g - color.b) / delta, 6.0);"," else if (maximum == color.g) hue = (color.b - color.r) / delta + 2.0;"," else hue = (color.r - color.g) / delta + 4.0;"," hue = fract(hue / 6.0);"," }"," return vec3(hue, maximum > 0.00001 ? delta / maximum : 0.0, maximum);","}","vec3 hsvToRgb(vec3 color){"," vec3 bands = abs(fract(color.xxx + vec3(0.0, 0.6666667, 0.3333333)) * 6.0 - 3.0);"," return color.z * mix(vec3(1.0), clamp(bands - 1.0, 0.0, 1.0), color.y);","}","vec4 sampleAdvancedCurve(float coordinate, float row){",` float position = clamp(coordinate, 0.0, 1.0) * ${Cx};`," float lower = floor(position);",` float upper = min(lower + 1.0, ${Cx});`,` float y = (row + 0.5) / ${JR};`,` vec4 before = texture2D(u_advanced, vec2((lower + 0.5) / ${Kc}, y));`,` vec4 after = texture2D(u_advanced, vec2((upper + 0.5) / ${Kc}, y));`," return mix(before, after, position - lower);","}","vec4 advancedConfig(float index){",` return texture2D(u_advanced, vec2((index + 0.5) / ${Kc}, ${QR}));`,"}","vec3 wheelDirection(float hue){"," vec3 direction = hsvToRgb(vec3(fract(hue), 1.0, 1.0));"," direction -= vec3(lumaOf(direction));"," return direction / max(max(max(abs(direction.r), abs(direction.g)), abs(direction.b)), 0.0001);","}","vec3 applyTonalWheels(vec3 color){"," float luma = lumaOf(color);"," float shadows = 1.0 - smoothstep(0.0, 0.6, luma);"," float highlights = smoothstep(0.4, 1.0, luma);"," float midtones = max(0.0, 1.0 - shadows - highlights);"," float total = max(shadows + midtones + highlights, 0.0001);"," vec3 weights = vec3(shadows, midtones, highlights) / total;"," color += wheelDirection(u_shadowWheel.x) * u_shadowWheel.y * weights.x * 0.18;"," color += wheelDirection(u_midtoneWheel.x) * u_midtoneWheel.y * weights.y * 0.18;"," color += wheelDirection(u_highlightWheel.x) * u_highlightWheel.y * weights.z * 0.18;"," color += u_shadowWheel.z * weights.x * 0.25;"," color += u_midtoneWheel.z * weights.y * 0.25;"," color += u_highlightWheel.z * weights.z * 0.25;"," return color;","}","#ifdef HF_STAGE_RGB_CURVES","vec3 applyRgbCurves(vec3 color){"," if (u_rgbCurvesEnabled < 0.5) return color;"," vec3 master = vec3("," sampleAdvancedCurve(color.r, 0.0).a,"," sampleAdvancedCurve(color.g, 0.0).a,"," sampleAdvancedCurve(color.b, 0.0).a"," );"," return vec3("," sampleAdvancedCurve(master.r, 0.0).r,"," sampleAdvancedCurve(master.g, 0.0).g,"," sampleAdvancedCurve(master.b, 0.0).b"," );","}","#else","vec3 applyRgbCurves(vec3 color){ return color; }","#endif","float decodeSigned(float value){ return (value * 255.0 - 128.0) / 127.0; }","#ifdef HF_STAGE_HUE_CURVES","vec3 applyHueCurves(vec3 color){"," if (u_hueCurvesEnabled < 0.5) return color;"," vec3 hsv = rgbToHsv(clamp(color, 0.0, 1.0));"," vec3 curves = sampleAdvancedCurve(hsv.x, 1.0).rgb;"," float originalLuma = lumaOf(color);"," hsv.x = fract(hsv.x + decodeSigned(curves.r) * 0.5);"," hsv.y = clamp(hsv.y * max(0.0, 1.0 + decodeSigned(curves.g)), 0.0, 1.0);"," vec3 shifted = hsvToRgb(hsv);"," shifted += vec3(originalLuma - lumaOf(shifted) + decodeSigned(curves.b));"," return shifted;","}","#else","vec3 applyHueCurves(vec3 color){ return color; }","#endif","float softRangeMask(float value, float minimum, float maximum, float softness){"," if (value < minimum) {"," if (softness <= 0.0) return 0.0;"," return smoothstep(minimum - softness, minimum, value);"," }"," if (value > maximum) {"," if (softness <= 0.0) return 0.0;"," return 1.0 - smoothstep(maximum, maximum + softness, value);"," }"," return 1.0;","}","float hueRangeMask(float hue, float saturation, vec3 key){"," float distance = abs(fract(hue - key.x + 0.5) - 0.5) * 360.0;"," float range = key.y * 180.0;"," float softness = key.z * 180.0;"," if (range < 179.999 && saturation < 0.001) return 0.0;"," if (distance <= range) return 1.0;"," if (softness <= 0.0) return 0.0;"," return 1.0 - smoothstep(range, range + softness, distance);","}","vec3 applySecondary(vec3 color, float index){"," float base = index * 5.0;"," vec4 hueKey = advancedConfig(base);"," vec4 saturationKey = advancedConfig(base + 1.0);"," vec4 lumaKey = advancedConfig(base + 2.0);"," vec4 correction = advancedConfig(base + 3.0);"," vec4 tintCorrection = advancedConfig(base + 4.0);"," vec3 hsv = rgbToHsv(clamp(color, 0.0, 1.0));"," float luma = lumaOf(color);"," float mask = hueRangeMask(hsv.x, hsv.y, hueKey.rgb);"," mask *= softRangeMask(hsv.y, saturationKey.x, saturationKey.y, saturationKey.z * 0.5);"," mask *= softRangeMask(luma, lumaKey.x, lumaKey.y, lumaKey.z * 0.5);"," if (mask <= 0.0) return color;"," hsv.x = fract(hsv.x + decodeSigned(correction.x) * 0.5);"," vec3 corrected = hsvToRgb(hsv);"," float correctedLuma = lumaOf(corrected);"," corrected = mix(vec3(correctedLuma), corrected, max(0.0, 1.0 + decodeSigned(correction.y)));"," corrected += vec3(decodeSigned(correction.z));"," float temperature = decodeSigned(correction.w);"," float tint = decodeSigned(tintCorrection.x);"," corrected.r += temperature * 0.08 + tint * 0.04;"," corrected.b -= temperature * 0.08 - tint * 0.04;"," corrected.g -= tint * 0.08;"," return mix(color, corrected, mask);","}","vec3 applyAdvancedGrade(vec3 color){"," color = applyTonalWheels(color);"," color = applyRgbCurves(color);"," color = applyHueCurves(color);","#ifdef HF_STAGE_SECONDARIES"," if (u_secondaryCount > 0.5) color = applySecondary(color, 0.0);"," if (u_secondaryCount > 1.5) color = applySecondary(color, 1.0);"," if (u_secondaryCount > 2.5) color = applySecondary(color, 2.0);"," if (u_secondaryCount > 3.5) color = applySecondary(color, 3.0);","#endif"," return color;","}","vec3 sampleLut(float r, float g, float b){"," float size = max(u_lutSize, 2.0);"," float x = (r + b * size + 0.5) / max(u_lutTextureSize.x, 1.0);"," float y = (g + 0.5) / max(u_lutTextureSize.y, 1.0);"," return texture2D(u_lut, vec2(x, y)).rgb;","}","#ifdef HF_STAGE_LUT","vec3 applyLut(vec3 color){"," if (u_lutEnabled < 0.5) return color;"," float size = max(u_lutSize, 2.0);"," vec3 span = max(u_lutDomainMax - u_lutDomainMin, vec3(0.00001));"," vec3 scaled = clamp((color - u_lutDomainMin) / span, 0.0, 1.0) * (size - 1.0);"," vec3 lo = floor(scaled);"," vec3 hi = min(lo + 1.0, vec3(size - 1.0));"," vec3 f = scaled - lo;"," vec3 c000 = sampleLut(lo.r, lo.g, lo.b);"," vec3 c100 = sampleLut(hi.r, lo.g, lo.b);"," vec3 c010 = sampleLut(lo.r, hi.g, lo.b);"," vec3 c110 = sampleLut(hi.r, hi.g, lo.b);"," vec3 c001 = sampleLut(lo.r, lo.g, hi.b);"," vec3 c101 = sampleLut(hi.r, lo.g, hi.b);"," vec3 c011 = sampleLut(lo.r, hi.g, hi.b);"," vec3 c111 = sampleLut(hi.r, hi.g, hi.b);"," vec3 c00 = mix(c000, c100, f.r);"," vec3 c10 = mix(c010, c110, f.r);"," vec3 c01 = mix(c001, c101, f.r);"," vec3 c11 = mix(c011, c111, f.r);"," vec3 c0 = mix(c00, c10, f.g);"," vec3 c1 = mix(c01, c11, f.g);"," vec3 lutColor = mix(c0, c1, f.b);"," return mix(color, lutColor, clamp(u_lutIntensity, 0.0, 1.0));","}","#else","vec3 applyLut(vec3 color){ return color; }","#endif","vec3 applyPrimaryGrade(vec3 color){"," color *= pow(2.0, u_exposure);"," float y = lumaOf(color);"," float shadowMask = 1.0 - smoothstep(0.0, 0.65, y);"," float highlightMask = smoothstep(0.35, 1.0, y);"," color += u_shadows * 0.35 * shadowMask;"," color += u_highlights * 0.35 * highlightMask;"," float blackPoint = clamp(u_blacks * 0.18, -0.18, 0.18);"," float whitePoint = clamp(1.0 - u_whites * 0.18, 0.82, 1.18);"," color = (color - blackPoint) / max(whitePoint - blackPoint, 0.2);"," color.r += u_temperature * 0.08 + u_tint * 0.04;"," color.b -= u_temperature * 0.08 - u_tint * 0.04;"," color.g -= u_tint * 0.08;"," color = (color - 0.5) * max(0.0, 1.0 + u_contrast) + 0.5;"," float satLuma = lumaOf(color);"," float currentSat = clamp(colorSaturation(color), 0.0, 1.0);"," float skinLike = smoothstep(0.02, 0.18, color.r - color.g) * smoothstep(0.0, 0.16, color.g - color.b) * smoothstep(0.18, 0.82, satLuma);"," float vibranceWeight = (1.0 - currentSat * 0.72) * mix(1.0, 0.55, skinLike);"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_vibrance * vibranceWeight));"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_saturation));"," return color;","}","vec3 applyColorGrade(vec3 color){"," color = applyPrimaryGrade(color);"," color = applyAdvancedGrade(color);"," return clamp(applyLut(clamp(color, 0.0, 1.0)), 0.0, 1.0);","}","#ifdef HF_STAGE_DITHER","vec3 applyDither(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float pixelSize = mix(1.0, 5.0, clamp(u_ditherSize, 0.0, 1.0)) * scale;"," vec2 block = floor(gl_FragCoord.xy / max(pixelSize, 1.0));"," float levels = clamp(u_paletteSize, 2.0, 6.0);"," float index = floor(clamp(lumaOf(source) * (levels - 1.0) + bayer4(block), 0.0, levels - 1.0));"," return mix(source, paletteColor(index), amount);","}","#else","vec3 applyDither(vec3 source, float amount){ return source; }","#endif","vec2 asciiEdgeDirection(vec2 uv, vec2 stepUv){"," float topLeft = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, -stepUv.y)).rgb);"," float top = bt601Luma(sampleMedia(uv + vec2(0.0, -stepUv.y)).rgb);"," float topRight = bt601Luma(sampleMedia(uv + vec2(stepUv.x, -stepUv.y)).rgb);"," float left = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, 0.0)).rgb);"," float right = bt601Luma(sampleMedia(uv + vec2(stepUv.x, 0.0)).rgb);"," float bottomLeft = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, stepUv.y)).rgb);"," float bottom = bt601Luma(sampleMedia(uv + vec2(0.0, stepUv.y)).rgb);"," float bottomRight = bt601Luma(sampleMedia(uv + stepUv).rgb);"," float x = -topLeft - 2.0 * left - bottomLeft + topRight + 2.0 * right + bottomRight;"," float y = -topLeft - 2.0 * top - topRight + bottomLeft + 2.0 * bottom + bottomRight;"," return vec2(x, y);","}","vec2 rotateAsciiUv(vec2 uv, float angle){"," float cosine = cos(angle);"," float sine = sin(angle);"," vec2 centered = uv - 0.5;"," return vec2(centered.x * cosine - centered.y * sine, centered.x * sine + centered.y * cosine) + 0.5;","}","#ifdef HF_STAGE_ASCII","vec3 applyAscii(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float cellHeight = mix(4.0, 80.0, clamp(u_asciiSize, 0.0, 1.0)) * scale;"," vec2 cellSize = vec2(cellHeight);"," vec2 cell = floor(gl_FragCoord.xy / cellSize);"," vec2 cellVuv = (cell + 0.5) * cellSize / max(u_resolution, vec2(1.0));"," vec2 cellUv = (cellVuv - u_uvOffset) / u_uvScale;"," cellUv = applyCrtWarp(cellUv);"," vec3 cellColor = applyColorGrade(sampleMedia(cellUv).rgb);"," float brightness = bt601Luma(cellColor);"," float invert = step(0.5, u_asciiInvert);"," brightness = mix(brightness, 1.0 - brightness, invert);"," vec2 glyphUv = fract(gl_FragCoord.xy / cellSize);"," float rotation = clamp(u_asciiRotation, 0.0, 1.0);"," if (rotation > 0.0) {"," vec2 cellStepUv = cellSize / max(u_resolution * u_uvScale, vec2(1.0));"," vec2 edge = asciiEdgeDirection(cellUv, cellStepUv);"," if (length(edge) > 0.1) glyphUv = mix(glyphUv, rotateAsciiUv(glyphUv, atan(edge.y, edge.x)), rotation);"," }"," float ink = asciiStyleSample(floor(u_asciiStyle + 0.5), brightness, glyphUv);"," vec3 background = paletteColor(0.0);"," vec3 inkColor = mix(paletteColor(max(u_paletteSize - 1.0, 1.0)), cellColor, clamp(u_asciiColor, 0.0, 1.0));"," vec3 asciiColor = mix(background, inkColor, ink);"," return mix(source, asciiColor, amount);","}","#else","vec3 applyAscii(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_SCANLINES","vec3 applyScanlines(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float count = mix(50.0, 500.0, clamp(u_scanlineCount, 0.0, 1.0));"," float softness = clamp(u_scanlineSoftness, 0.0, 1.0);"," float wave = 0.5 + 0.5 * sin(v_uv.y * count * PI);"," float line = mix(1.0 - wave, pow(1.0 - wave, 2.2), softness);"," return source * (1.0 - line * amount);","}","#else","vec3 applyScanlines(vec3 source, float amount){ return source; }","#endif","void main(){"," vec2 uv = (v_uv - u_uvOffset) / u_uvScale;"," if (uv.x < 0.0 || uv.y < 0.0 || uv.x > 1.0 || uv.y > 1.0) {"," gl_FragColor = vec4(0.0);"," return;"," }"," vec4 originalSample = sampleSource(uv);"," uv = applyCrtWarp(uv);","#ifdef HF_STAGE_CRT"," vec2 displayEdge = smoothstep(vec2(0.0), vec2(0.006), uv) * (1.0 - smoothstep(vec2(0.994), vec2(1.0), uv));"," float displayMask = displayEdge.x * displayEdge.y;","#endif"," vec4 sampleColor = sampleMedia(uv);"," sampleColor = sampleChromaticMedia(uv, sampleColor);"," sampleColor.rgb = applyDigitalGlitch(uv, sampleColor.rgb);"," vec3 original = originalSample.rgb;"," vec3 color = mix(sampleColor.rgb, applyColorGrade(sampleColor.rgb), u_intensity);","#ifdef HF_STAGE_GRAIN"," float grainAmount = clamp(u_grain, 0.0, 1.0);"," if (grainAmount > 0.0) {"," float grainPixelSize = mix(1.0, 6.0, clamp(u_grainSize, 0.0, 1.0));"," vec2 grainCoord = floor(gl_FragCoord.xy / grainPixelSize) + vec2(u_grainSeed, u_grainSeed * 1.37);"," float grainBase = grainHash(grainCoord) - grainHash(grainCoord + vec2(19.19, 73.31));"," float grainFine = grainHash(gl_FragCoord.xy + vec2(u_grainSeed * 2.11, u_grainSeed * 0.71)) - 0.5;"," float grain = mix(grainBase * 0.7, grainBase + grainFine * 0.35, clamp(u_grainRoughness, 0.0, 1.0));"," float grainLuma = lumaOf(color);"," float grainMask = smoothstep(0.02, 0.55, grainLuma) * (1.0 - smoothstep(0.88, 1.0, grainLuma));"," color += grain * grainAmount * mix(0.025, 0.08, grainMask);"," }","#endif","#ifdef HF_STAGE_FILM_ARTIFACTS"," float filmArtifacts = clamp(u_filmArtifacts, 0.0, 1.0);"," if (filmArtifacts > 0.0) {"," float filmFrame = floor(u_grainSeed);"," float dust = dustMask(v_uv, floor(filmFrame / 3.0));"," float dustTone = grainHash(vec2(floor(filmFrame / 3.0), 8.0));"," color = mix(color, vec3(dustTone > 0.5 ? 0.95 : 0.02), dust * 0.72 * filmArtifacts);"," float scratchBucket = floor(filmFrame / 12.0);"," float scratchX = grainHash(vec2(scratchBucket, 4.2));"," float scratchLife = step(0.78, grainHash(vec2(scratchBucket, 8.4)));"," float scratch = (1.0 - smoothstep(0.0, 1.4 / max(u_resolution.x, 1.0), abs(v_uv.x - scratchX))) * scratchLife;"," color = mix(color, vec3(0.94, 0.88, 0.76), scratch * 0.28 * filmArtifacts);"," }","#endif"," color = applyMonoScreen(clamp(color, 0.0, 1.0), clamp(u_monoScreen, 0.0, 1.0));"," color = applyEngraving(clamp(color, 0.0, 1.0), clamp(u_engraving, 0.0, 1.0));"," color = applyCrosshatch(uv, clamp(color, 0.0, 1.0), clamp(u_crosshatch, 0.0, 1.0));"," color = applyHalftone(clamp(color, 0.0, 1.0), clamp(u_halftone, 0.0, 1.0));"," color = applyTwoInkPrint(clamp(color, 0.0, 1.0), clamp(u_twoInkPrint, 0.0, 1.0));"," color = applyDither(clamp(color, 0.0, 1.0), clamp(u_dither, 0.0, 1.0));"," color = applyAscii(clamp(color, 0.0, 1.0), clamp(u_ascii, 0.0, 1.0));","#ifdef HF_STAGE_BLOOM"," if (u_bloomReady > 0.5 && u_bloom > 0.0) color += sampleBloom(uv) * u_bloom;","#endif"," color = applyScanlines(clamp(color, 0.0, 1.0), clamp(u_scanlines, 0.0, 1.0));","#ifdef HF_STAGE_VIGNETTE"," vec2 vignetteAspect = u_resolution.x > u_resolution.y"," ? vec2(u_resolution.x / max(u_resolution.y, 1.0), 1.0)"," : vec2(1.0, u_resolution.y / max(u_resolution.x, 1.0));"," vec2 vignetteUv = abs((v_uv - vec2(0.5)) * 2.0) * vignetteAspect;"," float vignettePower = mix(8.0, 1.8, clamp(u_vignetteRoundness * 0.5 + 0.5, 0.0, 1.0));"," float vignetteDistance = pow(pow(vignetteUv.x, vignettePower) + pow(vignetteUv.y, vignettePower), 1.0 / vignettePower);"," float vignetteMidpoint = mix(0.22, 1.08, clamp(u_vignetteMidpoint, 0.0, 1.0));"," float vignetteFeather = mix(0.08, 0.72, clamp(u_vignetteFeather, 0.0, 1.0));"," float vignetteMask = smoothstep(vignetteMidpoint, vignetteMidpoint + vignetteFeather, vignetteDistance);"," color *= 1.0 - vignetteMask * clamp(u_vignette, 0.0, 1.0) * 0.75;","#endif","#ifdef HF_STAGE_CRT"," float warpActive = step(0.0001, u_crtCurvature);"," color *= mix(1.0, displayMask, warpActive);","#endif"," vec3 graded = clamp(color, 0.0, 1.0);","#ifdef HF_STAGE_COMPARE"," if (u_compareEnabled > 0.5) {"," float pos = clamp(u_comparePosition, 0.0, 1.0);"," float softness = max(u_compareSoftness, 0.00001);"," float afterMask = smoothstep(pos - softness, pos + softness, v_uv.x);"," vec3 splitColor = mix(original, graded, afterMask);"," float lineMask = 0.0;"," if (u_compareLineWidth > 0.0) {"," float lineWidth = max(u_compareLineWidth / max(u_resolution.x, 1.0), 0.00001);"," lineMask = 1.0 - smoothstep(lineWidth, lineWidth * 1.8, abs(v_uv.x - pos));"," }"," gl_FragColor = vec4(mix(splitColor, vec3(1.0), lineMask * 0.82), sampleColor.a);"," return;"," }","#endif"," gl_FragColor = vec4(graded, sampleColor.a);","}"].join(`
|
|
358
|
-
`),
|
|
359
|
-
`);return n}var
|
|
360
|
-
`).join(""),
|
|
361
|
-
`),
|
|
362
|
-
`),
|
|
363
|
-
`),oM=Ru.map(e=>`${e}[${Ga}]`).join(", ");function wn(e){return Se(e)&&Ru.includes(e.localName)}function aM(e){let t=window.getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function Rx(e,t,n){let r=e.createShader(n);return r?(e.shaderSource(r,t),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:(H("runtime.colorGrading.compileShader",e.getShaderInfoLog(r)),e.deleteShader(r),null)):null}function As(e,t=Ox){let n=Rx(e,ZR,e.VERTEX_SHADER),r=Rx(e,t,e.FRAGMENT_SHADER);if(!n||!r)return n&&e.deleteShader(n),r&&e.deleteShader(r),null;let i=e.createProgram();return i?(e.attachShader(i,n),e.attachShader(i,r),e.linkProgram(i),e.deleteShader(n),e.deleteShader(r),e.getProgramParameter(i,e.LINK_STATUS)?i:(H("runtime.colorGrading.linkProgram",e.getProgramInfoLog(i)),e.deleteProgram(i),null)):null}function xs(e,t=e.LINEAR,n=e.UNSIGNED_BYTE){let r=e.createTexture();return r?(e.bindTexture(e.TEXTURE_2D,r),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,1,1,0,e.RGBA,n,null),r):null}function sM(e,t){let n=As(e,nM);return n?{program:n,quad:t,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),resolution:e.getUniformLocation(n,"u_resolution"),direction:e.getUniformLocation(n,"u_direction"),radius:e.getUniformLocation(n,"u_radius"),bloomPass:e.getUniformLocation(n,"u_bloomPass"),threshold:e.getUniformLocation(n,"u_threshold")}:null}function lM(e,t){let n=As(e,rM);return n?{program:n,quad:t,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),blurSource:e.getUniformLocation(n,"u_blurSource"),texel:e.getUniformLocation(n,"u_texel"),uvScale:e.getUniformLocation(n,"u_uvScale"),uvOffset:e.getUniformLocation(n,"u_uvOffset"),blurReady:e.getUniformLocation(n,"u_blurReady"),blur:e.getUniformLocation(n,"u_blur"),radius:e.getUniformLocation(n,"u_kuwaharaRadius")}:null}function uM(e,t){let n=As(e,iM);return n?{program:n,quad:t,position:e.getAttribLocation(n,"a_pos"),moments:e.getUniformLocation(n,"u_kuwaharaMoments"),texel:e.getUniformLocation(n,"u_texel"),radius:e.getUniformLocation(n,"u_kuwaharaRadius"),sharpness:e.getUniformLocation(n,"u_kuwaharaSharpness"),saturation:e.getUniformLocation(n,"u_kuwaharaSaturation")}:null}function ho(e,t=e.UNSIGNED_BYTE,n=e.LINEAR){let r=xs(e,n,t),i=e.createFramebuffer();if(!r||!i)return r&&e.deleteTexture(r),i&&e.deleteFramebuffer(i),null;e.bindFramebuffer(e.FRAMEBUFFER,i),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0);let o=e.checkFramebufferStatus(e.FRAMEBUFFER);return e.bindFramebuffer(e.FRAMEBUFFER,null),o!==e.FRAMEBUFFER_COMPLETE?(e.deleteTexture(r),e.deleteFramebuffer(i),null):{texture:r,framebuffer:i,type:t,width:1,height:1}}function vs(e,t,n,r){t.width===n&&t.height===r||(t.width=n,t.height=r,e.bindTexture(e.TEXTURE_2D,t.texture),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,n,r,0,e.RGBA,t.type,null))}function Yc(e,t,n){let r=[];for(let i of n){let o=e.getUniformLocation(t,`u_${i}`);o!==null&&r.push([i,o])}return r}function Mx(e,t){for(let n of t)n&&e.deleteTexture(n)}function Bx(e,t){let n=As(e,t+Ox);return n?{program:n,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),blurSource:e.getUniformLocation(n,"u_blurSource"),bloomSource:e.getUniformLocation(n,"u_bloomSource"),kuwaharaSource:e.getUniformLocation(n,"u_kuwaharaSource"),lut:e.getUniformLocation(n,"u_lut"),advanced:e.getUniformLocation(n,"u_advanced"),resolution:e.getUniformLocation(n,"u_resolution"),uvScale:e.getUniformLocation(n,"u_uvScale"),uvOffset:e.getUniformLocation(n,"u_uvOffset"),blurReady:e.getUniformLocation(n,"u_blurReady"),bloomReady:e.getUniformLocation(n,"u_bloomReady"),kuwaharaReady:e.getUniformLocation(n,"u_kuwaharaReady"),lutEnabled:e.getUniformLocation(n,"u_lutEnabled"),lutSize:e.getUniformLocation(n,"u_lutSize"),lutTextureSize:e.getUniformLocation(n,"u_lutTextureSize"),lutDomainMin:e.getUniformLocation(n,"u_lutDomainMin"),lutDomainMax:e.getUniformLocation(n,"u_lutDomainMax"),lutIntensity:e.getUniformLocation(n,"u_lutIntensity"),shadowWheel:e.getUniformLocation(n,"u_shadowWheel"),midtoneWheel:e.getUniformLocation(n,"u_midtoneWheel"),highlightWheel:e.getUniformLocation(n,"u_highlightWheel"),rgbCurvesEnabled:e.getUniformLocation(n,"u_rgbCurvesEnabled"),hueCurvesEnabled:e.getUniformLocation(n,"u_hueCurvesEnabled"),secondaryCount:e.getUniformLocation(n,"u_secondaryCount"),adjustUniforms:Yc(e,n,Ba),detailUniforms:Yc(e,n,Mu),effectUniforms:Yc(e,n,ku),grainSeed:e.getUniformLocation(n,"u_grainSeed"),effectTime:e.getUniformLocation(n,"u_effectTime"),paletteSize:e.getUniformLocation(n,"u_paletteSize"),palette0:e.getUniformLocation(n,"u_palette0"),palette1:e.getUniformLocation(n,"u_palette1"),palette2:e.getUniformLocation(n,"u_palette2"),palette3:e.getUniformLocation(n,"u_palette3"),palette4:e.getUniformLocation(n,"u_palette4"),palette5:e.getUniformLocation(n,"u_palette5"),intensity:e.getUniformLocation(n,"u_intensity"),compareEnabled:e.getUniformLocation(n,"u_compareEnabled"),comparePosition:e.getUniformLocation(n,"u_comparePosition"),compareSoftness:e.getUniformLocation(n,"u_compareSoftness"),compareLineWidth:e.getUniformLocation(n,"u_compareLineWidth")}:null}function cM(e){let t=e.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});if(!t)return null;let n=ed(t);return n?{gl:t,program:n}:null}function ed(e){let t=Bx(e,"");if(!t)return null;let n=dM(e);return n?{...n,shaders:new Map([["",t]]),failedStageDefines:new Set}:(e.deleteProgram(t.program),null)}function dM(e){let t=xs(e),n=xs(e,e.NEAREST),r=xs(e,e.NEAREST);if(!t||!n||!r)return Mx(e,[t,n,r]),null;let i=e.createBuffer();return i?(e.bindBuffer(e.ARRAY_BUFFER,i),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),e.STATIC_DRAW),{texture:t,lutTexture:n,advancedTexture:r,advancedSignature:null,quad:i}):(Mx(e,[t,n,r]),null)}function Ux(e,t,n,r){let i=Wx(e,t,eM(n,r));return e.useProgram(i.program),i}function Wx(e,t,n){let r=t.failedStageDefines.has(n)?Tx:n;if(t.failedStageDefines.has(r))throw new Error("Color grading shader failed to compile");let i=t.shaders.get(r);if(i)return t.shaders.delete(r),t.shaders.set(r,i),i;let o=Bx(e,r);if(!o)return t.failedStageDefines.add(r),Wx(e,t,Tx);if(t.shaders.size>=tM)for(let[a,l]of t.shaders){e.deleteProgram(l.program),t.shaders.delete(a);break}return t.shaders.set(r,o),o}function fM(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function mM(e){if(!fM(e))return{...Jn};let t=(n,r,i,o)=>{let a=typeof n=="number"?n:Number(n);return Math.min(o,Math.max(i,Number.isFinite(a)?a:r))};return{enabled:e.enabled===!0,position:t(e.position,Jn.position,0,1),softness:t(e.softness,Jn.softness,0,.25),lineWidth:t(e.lineWidth,Jn.lineWidth,0,12)}}function Vx(e){try{let t=new URL(e,document.baseURI);return t.protocol==="data:"?{href:t.href}:t.protocol!=="http:"&&t.protocol!=="https:"?{error:"LUT must be project-local or a data URL"}:t.origin!==window.location.origin?{error:"Remote LUT URLs are not supported"}:{href:t.href}}catch{return{error:"Invalid LUT URL"}}}function _s(e){return e instanceof Error?e.message:"LUT failed to load"}function pM(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0)%1e4}function $x(e){let t=e.id||!zt(e)&&e.currentSrc||e.getAttribute("src")||`${e.tagName}:${Array.prototype.indexOf.call(e.parentNode?.children??[],e)}`;return pM(t)}function td(e){let t=Vx(e);if("error"in t)return{state:"error",message:t.error};let n=en.get(t.href);if(n)return n;let r=fetch(t.href,{credentials:"same-origin"}).then(o=>{if(!o.ok)throw new Error(`Failed to load LUT (${o.status})`);return o.text()}).then(o=>og(o,{maxSize:Pa})),i={state:"pending",promise:r};for(;en.size>=zR;){let o=en.keys().next().value;if(!o)break;en.delete(o)}return en.set(t.href,i),r.then(o=>{en.get(t.href)===i&&en.set(t.href,{state:"ready",lut:o})},o=>{en.get(t.href)===i&&en.set(t.href,{state:"error",message:_s(o)})}),i}function kx(e,t,n){if(e.lut?.src===t)return e.lut;let r=yu(n),{gl:i,program:o}=e;try{return qx(i,o.lutTexture,r),e.lut={src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height},e.lutError=null,e.lutLoadingSrc=null,e.lut}catch(a){return e.lut=null,e.lutError=_s(a),e.lutLoadingSrc=null,H("runtime.colorGrading.uploadLut",a),null}}async function hM(e){let t=td(e);if(t.state==="ready")return t.lut;if(t.state==="pending")return t.promise;throw new Error(t.message)}function qx(e,t,n){e.activeTexture(e.TEXTURE2),e.bindTexture(e.TEXTURE_2D,t),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,n.width,n.height,0,e.RGBA,e.UNSIGNED_BYTE,n.data)}function gM(e,t,n){let r=yu(n),{gl:i,program:o}=e;return qx(i,o.lutTexture,r),{src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height}}function Bt(e,t){e.deleteTexture(t.texture),e.deleteFramebuffer(t.framebuffer)}function nd(e){let t=e.effectTargets;t&&(e.gl.deleteProgram(t.blurProgram.program),Bt(e.gl,t.scratch),Bt(e.gl,t.blur),t.bloom&&Bt(e.gl,t.bloom),e.effectTargets=null)}function rd(e){let t=e.kuwaharaTargets;t&&(e.gl.deleteProgram(t.horizontalProgram.program),e.gl.deleteProgram(t.resolveProgram.program),Bt(e.gl,t.moments),Bt(e.gl,t.output),e.kuwaharaTargets=null)}function ys(e,t=!1){nd(e),rd(e),bM(e.gl,e.program),t&&e.gl.getExtension("WEBGL_lose_context")?.loseContext()}function bM(e,t){e.deleteTexture(t.texture),e.deleteTexture(t.lutTexture),e.deleteTexture(t.advancedTexture),e.deleteBuffer(t.quad);for(let n of t.shaders.values())e.deleteProgram(n.program);t.shaders.clear()}function xM(e){let t=ed(e.gl);return t?(ys(e),e.program=t,e.lut=null,e.lutLoadingSrc=null,e.lutError=null,e.effectError=null,!0):!1}function yM(e,t){e.borderlessFrame!==t&&zx(e),e.borderlessFrame=t,t.style.borderStyle="none"}function zx(e){let t=e.borderlessFrame;t&&(e.borderlessFrame=null,t.style.borderStyle=window.getComputedStyle(e.element).borderStyle)}function Zc(e){if(zx(e),!e.sourceHidden)return;e.element.removeAttribute($n);let t=e.element.style.getPropertyValue("opacity"),n=e.element.style.getPropertyPriority("opacity");t==="0"&&n==="important"&&(e.sourceInlineOpacity===null?e.element.style.removeProperty("opacity"):e.element.style.setProperty("opacity",e.sourceInlineOpacity,e.sourceInlineOpacityPriority)),e.sourceHidden=!1}function SM(e){if(e.effectTargets)return e.effectTargets;let{gl:t}=e,n=sM(t,e.program.quad),r=ho(t),i=ho(t);return!n||!r||!i?(n&&t.deleteProgram(n.program),r&&Bt(t,r),i&&Bt(t,i),e.effectError="Framebuffer effects unavailable",null):(e.effectError=null,e.effectTargets={blurProgram:n,scratch:r,blur:i,bloom:null},e.effectTargets)}function vM(e,t){return t.bloom||(t.bloom=ho(e.gl),e.effectError=t.bloom?null:"Framebuffer effects unavailable"),t.bloom}function Lx(e){let t=e.effectTargets;t?.bloom&&(Bt(e.gl,t.bloom),t.bloom=null)}function EM(e){if(e.kuwaharaTargets)return e.kuwaharaTargets;let{gl:t}=e,n=t.getExtension("OES_texture_half_float"),r=t.getExtension("EXT_color_buffer_half_float");if(!n||!r)return e.effectError="Kuwahara requires half-float framebuffer support",null;let i=lM(t,e.program.quad),o=uM(t,e.program.quad),a=ho(t,n.HALF_FLOAT_OES,t.NEAREST),l=ho(t);return!i||!o||!a||!l?(AM(t,i,o,a,l),e.effectError="Kuwahara framebuffer effects unavailable",null):(e.kuwaharaTargets={horizontalProgram:i,resolveProgram:o,moments:a,output:l},e.kuwaharaTargets)}function AM(e,t,n,r,i){t&&e.deleteProgram(t.program),n&&e.deleteProgram(n.program),r&&Bt(e,r),i&&Bt(e,i)}function jx(e,t,n,r,i){let o=Math.max(1,Math.ceil(r)),a=Math.max(1,Math.ceil(i));return vs(e,t,o,a),vs(e,n,o,a),{width:o,height:a}}function Es(e,t,n,r,i,o,a,l=!1,s=-1){e.bindFramebuffer(e.FRAMEBUFFER,r.framebuffer),e.viewport(0,0,i.width,i.height),e.useProgram(t.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.uniform1i(t.source,0),e.uniform2f(t.resolution,i.width,i.height),e.uniform2f(t.direction,o.x,o.y),e.uniform1f(t.radius,a),e.uniform1f(t.bloomPass,l?1:0),e.uniform1f(t.threshold,s),go(e,t)}function _M(e,t,n,r,i,o,a){let l=jx(e,t.scratch,r,i/2,o/2),s=a/2;Es(e,t.blurProgram,n,t.scratch,l,{x:1,y:0},s,!0,.5),Es(e,t.blurProgram,t.scratch.texture,r,l,{x:0,y:1},s,!0)}function wM(e,t,n,r,i,o,a){let l=n;for(let s=0;s<Math.max(1,Math.floor(a));s++)Es(e,t.blurProgram,l,t.scratch,i,{x:1,y:0},o),Es(e,t.blurProgram,t.scratch.texture,r,i,{x:0,y:1},o),l=r.texture}function go(e,t){e.bindBuffer(e.ARRAY_BUFFER,t.quad),e.enableVertexAttribArray(t.position),e.vertexAttribPointer(t.position,2,e.FLOAT,!1,0,0),e.drawArrays(e.TRIANGLE_STRIP,0,4)}function CM(e,t,n,r,i,o,a,l){vs(e,t.moments,i.width,i.height),vs(e,t.output,i.width,i.height);let s=t.horizontalProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.moments.framebuffer),e.viewport(0,0,i.width,i.height),e.useProgram(s.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.activeTexture(e.TEXTURE1),e.bindTexture(e.TEXTURE_2D,r),e.uniform1i(s.source,0),e.uniform1i(s.blurSource,1),e.uniform2f(s.texel,1/i.width,1/i.height),e.uniform2f(s.uvScale,o.scaleX,o.scaleY),e.uniform2f(s.uvOffset,o.offsetX,o.offsetY),e.uniform1f(s.blurReady,a?1:0),e.uniform1f(s.blur,l.blur),e.uniform1f(s.radius,l.kuwaharaRadius),go(e,s);let c=t.resolveProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.output.framebuffer),e.useProgram(c.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.moments.texture),e.uniform1i(c.moments,0),e.uniform2f(c.texel,1/i.width,1/i.height),e.uniform1f(c.radius,l.kuwaharaRadius),e.uniform1f(c.sharpness,l.kuwaharaSharpness),e.uniform1f(c.saturation,l.kuwaharaSaturation),go(e,c)}function TM(e,t,n,r){if(n<=0)return!1;let i=jx(e.gl,t.scratch,t.blur,r.width,r.height);return wM(e.gl,t,e.program.texture,t.blur,i,.75+Math.pow(n,1.35)*32,n>.55?3:2),!0}function RM(e,t,n,r,i,o){if(n<=0)return Lx(e),null;o||Lx(e);let a=o?vM(e,t):t.blur;return a?(_M(e.gl,t,e.program.texture,a,i.width,i.height,r),a.texture):null}function MM(e,t,n,r){let{program:i}=e,o=t.effects.blur,a=t.effects.bloom;if(o<=0&&a<=0)return e.effectTargets&&r&&nd(e),{blurReady:!1,bloomReady:!1,blurTexture:i.texture,bloomTexture:i.texture};let l=SM(e);if(!l)return{blurReady:!1,bloomReady:!1,blurTexture:i.texture,bloomTexture:i.texture};let s=TM(e,l,o,n),c=RM(e,l,a,t.effects.bloomRadius,n,s);return{blurReady:s,bloomReady:c!==null,blurTexture:l.blur.texture,bloomTexture:c??i.texture}}function kM(e,t,n,r,i,o,a){let l=t.effects.kuwahara;if(l<=0&&!o)return e.kuwaharaTargets&&a&&rd(e),{kuwaharaReady:!1,kuwaharaTexture:e.program.texture};let s=EM(e);return!s||l<=0?{kuwaharaReady:!1,kuwaharaTexture:s?.output.texture??e.program.texture}:(CM(e.gl,s,e.program.texture,e.effectTargets?.blur.texture??e.program.texture,n,r,i,t.effects),{kuwaharaReady:!0,kuwaharaTexture:s.output.texture})}function Kx(e,t,n,r,i={}){let o=i.releaseIdleTargets??!0;e.effectError=null;let a=MM(e,t,n,o),l=kM(e,t,n,r,a.blurReady,i.preserveKuwahara??!1,o);return{...a,...l}}function LM(e){let t=e.grading.lut?.src.trim()??"",n=e.grading.lut?.intensity??1;if(!t||n<=0)return e.lut=null,e.lutLoadingSrc=null,e.lutError=null,null;let r=Vx(t);if("error"in r)return e.lut=null,e.lutLoadingSrc=null,e.lutError=r.error,null;if(e.lut?.src===r.href)return e.lut;e.lut=null;let i=td(t);return i.state==="ready"?kx(e,r.href,i.lut):i.state==="error"?(e.lutError=i.message,e.lutLoadingSrc=null,null):(e.lutLoadingSrc!==r.href&&(e.lutLoadingSrc=r.href,e.lutError=null,i.promise.then(o=>{e.destroyed||e.grading.lut?.src.trim()!==t||(kx(e,r.href,o),lt(e))},o=>{e.destroyed||e.grading.lut?.src.trim()!==t||(e.lut=null,e.lutError=_s(o),e.lutLoadingSrc=null,lt(e))})),null)}function po(e){if(!e)return null;if(typeof e=="string"){let t=e.trim();if(!t)return null;let n=document.getElementById(t.replace(/^#/,""));if(n&&wn(n))return n;try{let r=document.querySelector(t);return r&&wn(r)?r:null}catch{return null}}if(e.hfId){let t=document.querySelector(`[data-hf-id="${CSS.escape(e.hfId)}"]`);if(t&&wn(t))return t}if(e.id){let t=document.getElementById(e.id);if(t&&wn(t))return t}if(!e.selector)return null;try{let t=Array.from(document.querySelectorAll(e.selector)),n=Math.max(0,Math.floor(Number(e.selectorIndex??0)||0)),r=t[n]??null;return r&&wn(r)?r:null}catch{return null}}function id(e){let[t,n]=Ce(e)?[e.videoWidth,e.videoHeight]:$e(e)?[e.naturalWidth,e.naturalHeight]:zt(e)?[e.width,e.height]:[0,0];return t>0&&n>0?{width:t,height:n}:null}function Yx(e){return Ce(e)&&e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||$e(e)&&!e.complete?!1:id(e)!==null}function NM(e){let t=vt(e);return t&&Yx(t)?t:null}function Xc(e){return aM(e)||FM(e)}function FM(e){if(!Ce(e))return!1;let t=vt(e);if(!t)return!1;let n=window.getComputedStyle(t);return n.display!=="none"&&n.visibility!=="hidden"}function IM(e){return $e(e)&&e.classList.contains("__render_frame__")}function DM(e,t){t.parentNode&&t.nextSibling!==e.canvas&&t.parentNode.insertBefore(e.canvas,t.nextSibling)}var Nx=new WeakMap;function Xx(e,t){if(!$e(e)||window.origin!=="null"||e.crossOrigin!==null||!/^https?:/i.test(e.currentSrc))return e;let n=Nx.get(e);if(n?.image.src!==e.currentSrc){let r={image:e.ownerDocument.createElement("img"),waiting:new Set},i=()=>{let o=[...r.waiting];r.waiting.clear(),o.forEach(lt)};r.image.crossOrigin="anonymous",r.image.addEventListener("load",i,{once:!0}),r.image.addEventListener("error",i,{once:!0}),r.image.src=e.currentSrc,Nx.set(e,n=r)}return n.image.complete?n.image.naturalWidth>0?n.image:e:(t&&n.waiting.add(t),null)}function Jx(e){if(Ce(e)){let t=NM(e);if(t)return t}return Yx(e)?e:null}function Fx(e,t){let n=e.toLowerCase();if(n==="center")return .5;if(t==="x"){if(n==="left")return 0;if(n==="right")return 1}else{if(n==="top")return 0;if(n==="bottom")return 1}if(n.endsWith("%")){let r=Number.parseFloat(n);return Number.isFinite(r)?r/100:null}return null}function PM(e){let t=e.trim().split(/\s+/).filter(Boolean),n=.5,r=.5;for(let i=0;i<t.length;i++){let o=t[i]??"",a=Fx(o,"x"),l=Fx(o,"y");if(a!==null&&(o==="left"||o==="right"||o.endsWith("%")&&i===0)){n=a;continue}if(l!==null&&(o==="top"||o==="bottom"||o.endsWith("%")&&i>0)){r=l;continue}}return{x:n,y:r}}function Qx(e,t,n,r,i,o){if(e<=0||t<=0||n<=0||r<=0)return{scaleX:1,scaleY:1,offsetX:0,offsetY:0};let a=i||"fill",l=e,s=t;if(a==="contain"||a==="cover"||a==="scale-down"){let f=a==="cover"?Math.max(e/n,t/r):Math.min(e/n,t/r);l=n*f,s=r*f,a==="scale-down"&&l>n&&s>r&&(l=n,s=r)}else a==="none"&&(l=n,s=r);let c=PM(o||"center"),d=(e-l)*c.x/e,m=(t-s)*c.y/t;return{scaleX:l/e,scaleY:s/t,offsetX:d,offsetY:m}}function OM(e,t){window.getComputedStyle(t).position==="static"&&(e.touchedParent||(e.touchedParent=t,e.parentInlinePosition=t.style.position||null),t.style.position="relative")}function Ix(e,t){return Math.max(0,Math.round(e>0?e:t))}function HM(e,t){let{element:n,canvas:r}=e,i=n.parentElement;i&&OM(e,i);let o=window.getComputedStyle(t);mh(r.style,o),r.style.borderStyle="none",r.style.pointerEvents="none",r.style.position="absolute",r.style.inset="auto",r.style.left=`${n.offsetLeft}px`,r.style.top=`${n.offsetTop}px`,r.style.right="auto",r.style.bottom="auto",r.style.width=`${n.offsetWidth}px`,r.style.height=`${n.offsetHeight}px`,r.style.display="block",r.style.opacity=e.sourceOpacityForCanvas,r.style.visibility=e.sourceVisibleForCanvas?"visible":"hidden";let a=n.getBoundingClientRect(),l=Ix(n.offsetWidth,a.width),s=Ix(n.offsetHeight,a.height);if(l<=0||s<=0)return r.style.display="none",null;let c=Math.max(1,window.devicePixelRatio||1),d=Math.round(l*c),m=Math.round(s*c);return r.width!==d&&(r.width=d),r.height!==m&&(r.height=m),{width:d,height:m}}function Ur(e,t,n){e.uniform3f(t,Number.parseInt(n.slice(1,3),16)/255,Number.parseInt(n.slice(3,5),16)/255,Number.parseInt(n.slice(5,7),16)/255)}function Xn(e,t,n,r){e.set(r,(t*Ot+n)*4)}function Cn(e,t){return Math.min(1,Math.max(1/255,(e*(127/t)+128)/255))}function Jc(e,t,n){return e.length>=3?vu(e,t,n):new Float32Array(Ot)}function Yn(e,t){return e[t]??0}function GM(e,t,n){let r=Rr(t.red),i=Rr(t.green),o=Rr(t.blue),a=Rr(t.master),l=Jc(n.hueVsHue,-180,180),s=Jc(n.hueVsSaturation,-1,1),c=Jc(n.hueVsLuma,-1,1);for(let d=0;d<Ot;d+=1)Xn(e,0,d,[Yn(r,d),Yn(i,d),Yn(o,d),Yn(a,d)]),Xn(e,1,d,[Cn(Yn(l,d),180),Cn(Yn(s,d),1),Cn(Yn(c,d),1),1])}function BM(e,t,n){let r=n*XR;Xn(e,2,r,[t.key.hue.center/360,t.key.hue.range/180,t.key.hue.softness/180,1]),Xn(e,2,r+1,[t.key.saturation.min,t.key.saturation.max,t.key.saturation.softness/.5,0]),Xn(e,2,r+2,[t.key.luma.min,t.key.luma.max,t.key.luma.softness/.5,0]),Xn(e,2,r+3,[Cn(t.correction.hueShift,180),Cn(t.correction.saturation,1),Cn(t.correction.luma,1),Cn(t.correction.temperature,1)]),Xn(e,2,r+4,[Cn(t.correction.tint,1),.5,.5,1])}function UM(e,t,n){let r=new Float32Array(Ot*xo*4);GM(r,e,t);let i=0;for(let o of n)o.enabled&&(BM(r,o,i),i+=1);return r}var Dx=new WeakMap;function WM(e,t,n){let r=Dx.get(e);if(r?.hueCurves===t&&r.secondaries===n)return r.signature;let i=JSON.stringify([e,t,n]);return Dx.set(e,{hueCurves:t,secondaries:n,signature:i}),i}function VM(e,t,n,r){let{curves:i,hueCurves:o}=n,a=WM(i,o,r);if(t.advancedSignature===a)return;let l=Uint8Array.from(UM(i,o,r),Oi);e.activeTexture(e.TEXTURE5),e.bindTexture(e.TEXTURE_2D,t.advancedTexture),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,Ot,xo,0,e.RGBA,e.UNSIGNED_BYTE,l),t.advancedSignature=a}function Qc(e,t,n){e.uniform3f(t,n.hue/360,n.amount,n.level)}function Ss(e){let{curves:t,hueCurves:n,secondaries:r}=e;return{rgbCurvesEnabled:Fu(t),hueCurvesEnabled:Iu(n),secondaryCount:Du(r)?r.reduce((i,o)=>i+Number(o.enabled),0):0}}function Zx(e,t,n,r,i,o,a,l,s,c,d,m,f){e.uniform1i(n.source,0),e.uniform1i(n.blurSource,1),e.uniform1i(n.lut,2),e.uniform1i(n.kuwaharaSource,3),e.uniform1i(n.bloomSource,4),e.uniform1i(n.advanced,5),e.uniform2f(n.resolution,c.width,c.height),e.uniform2f(n.uvScale,d.scaleX,d.scaleY),e.uniform2f(n.uvOffset,d.offsetX,d.offsetY),e.uniform1f(n.blurReady,o?1:0),e.uniform1f(n.bloomReady,a?1:0),e.uniform1f(n.kuwaharaReady,l?1:0),e.uniform1f(n.lutEnabled,i?1:0),e.uniform1f(n.lutSize,i?.size??2),e.uniform2f(n.lutTextureSize,i?.textureWidth??1,i?.textureHeight??1),e.uniform3f(n.lutDomainMin,i?.domainMin[0]??0,i?.domainMin[1]??0,i?.domainMin[2]??0),e.uniform3f(n.lutDomainMax,i?.domainMax[0]??1,i?.domainMax[1]??1,i?.domainMax[2]??1),e.uniform1f(n.lutIntensity,r.lut?.intensity??0);let{rgbCurvesEnabled:p,hueCurvesEnabled:y,secondaryCount:b}=Ss(r);(p||y||b>0)&&VM(e,t,r,r.secondaries),Qc(e,n.shadowWheel,r.wheels.shadows),Qc(e,n.midtoneWheel,r.wheels.midtones),Qc(e,n.highlightWheel,r.wheels.highlights),e.uniform1f(n.rgbCurvesEnabled,p?1:0),e.uniform1f(n.hueCurvesEnabled,y?1:0),e.uniform1f(n.secondaryCount,b);for(let[E,_]of n.adjustUniforms)e.uniform1f(_,r.adjust[E]);for(let[E,_]of n.detailUniforms)e.uniform1f(_,r.details[E]);e.uniform1f(n.grainSeed,m),e.uniform1f(n.effectTime,f);for(let[E,_]of n.effectUniforms)e.uniform1f(_,r.effects[E]);let g=r.palette??(r.effects.engraving>0||r.effects.crosshatch>0?KR:jc),v=g[g.length-1]??jc[1];e.uniform1f(n.paletteSize,g.length),Ur(e,n.palette0,g[0]??jc[0]),Ur(e,n.palette1,g[1]??v),Ur(e,n.palette2,g[2]??v),Ur(e,n.palette3,g[3]??v),Ur(e,n.palette4,g[4]??v),Ur(e,n.palette5,g[5]??v),e.uniform1f(n.intensity,r.intensity),e.uniform1f(n.compareEnabled,s.enabled?1:0),e.uniform1f(n.comparePosition,s.position),e.uniform1f(n.compareSoftness,s.softness),e.uniform1f(n.compareLineWidth,s.lineWidth)}function $M(e){if(!e.sourceHidden){let t=e.element.getAttribute(qn);t!==null?(e.sourceInlineOpacity=t===""?null:t,e.sourceInlineOpacityPriority=""):(e.sourceInlineOpacity=e.element.style.getPropertyValue("opacity")||null,e.sourceInlineOpacityPriority=e.element.style.getPropertyPriority("opacity"))}e.element.setAttribute($n,"true"),e.element.style.setProperty("opacity","0","important"),e.sourceHidden=!0}function tn(e){let t=Cg.find(n=>n.path===e);if(!t)throw new Error(`Missing color-grading animation property: ${e}`);return t}var ey=tn("intensity"),ty=tn("lut.intensity"),ny=tn("adjust.exposure"),ry=tn("effects.kuwahara"),iy=[["blur",tn("effects.blur")],["bloom",tn("effects.bloom")],["kuwahara",ry],["pixelate",tn("effects.pixelate")],["ascii",tn("effects.ascii")],["dither",tn("effects.dither")]],oy=[ey,ty,ny,...iy.map(([,e])=>e)];function Qn(e,t){let n=getComputedStyle(e).getPropertyValue(t.name).trim();if(!n)return null;let r=Number(n);return Number.isFinite(r)?Math.min(t.max,Math.max(t.min,r)):null}function Wr(e,t){return t!==null&&(kg(t)||oy.some(n=>Qn(e,n)!==null))}function qM(e,t){let n=null;for(let[r,i]of iy){let o=Qn(e,i);o!==null&&(n??(n={...t.effects}),n[r]=o)}return n}function zM(e){let{element:t,grading:n}=e,r=Qn(t,ey),i=Qn(t,ty),o=Qn(t,ny),a=qM(t,n);if(![r,i,o].some(c=>c!==null)&&a===null)return n;let s={...n,adjust:o===null?n.adjust:{...n.adjust,exposure:o},effects:a??n.effects};return r!==null&&(s.intensity=r),n.lut&&i!==null&&(s.lut={...n.lut,intensity:i}),s}function ay(e,t,n){e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,n)}function sy(e,t,n){let r=[t.texture,n.blurTexture,t.lutTexture,n.kuwaharaTexture,n.bloomTexture,t.advancedTexture];for(let[i,o]of r.entries())e.activeTexture(e.TEXTURE0+i),e.bindTexture(e.TEXTURE_2D,o)}function jM(e,t){e.glCanvas!==e.canvas&&(e.glCanvas.width<t.width&&(e.glCanvas.width=t.width),e.glCanvas.height<t.height&&(e.glCanvas.height=t.height))}function KM(e,t){if(e.glCanvas===e.canvas)return;let n=e.canvas.getContext("2d");if(!n)throw new Error("Canvas 2D is unavailable");let{width:r,height:i}=t;n.clearRect(0,0,r,i),n.drawImage(e.glCanvas,0,e.glCanvas.height-i,r,i,0,0,r,i)}function YM(e){let t=Jx(e.element),n=t&&Xx(t,e);if(!t||!n)return e.hasDrawn||(e.canvas.style.display="none"),null;let r=id(t);return r?{source:t,pixels:n,size:r}:null}function XM(e){if(e.sourceInlineOpacity===null){e.element.style.removeProperty("opacity");return}e.element.style.setProperty("opacity",e.sourceInlineOpacity,e.sourceInlineOpacityPriority||"")}function JM(e){let{style:t}=e.element;return e.sourceHidden&&t.getPropertyValue("opacity")==="0"&&t.getPropertyPriority("opacity")==="important"}function QM(e,t,n){let r=JM(e),i=e.element.style.getPropertyValue("visibility"),o=r&&!n;o&&XM(e);let a=window.getComputedStyle(n?t:e.element);e.sourceOpacityForCanvas=a.opacity||"1",o&&e.element.style.setProperty("opacity","0","important"),e.sourceVisibleForCanvas=(n||i!=="hidden")&&a.visibility!=="hidden"}function ZM(e){let t=window.__player?.getTime?.();return typeof t=="number"&&Number.isFinite(t)?Math.max(0,t):Ce(e)?Math.max(0,e.currentTime):0}function ek(e,t,n,r){let{gl:i,program:o}=e;jM(e,n);let a=zM(e),l=LM(e);ay(i,o.texture,t);let s=Qn(e.element,ry)!==null,c=Kx(e,a,n,r,{preserveKuwahara:s});i.bindFramebuffer(i.FRAMEBUFFER,null),i.viewport(0,0,n.width,n.height);let d=Ux(i,o,a,e.compare);sy(i,o,c);let m=ZM(e.element),f=e.grainSeed+Math.floor(m*60);Zx(i,o,d,a,l,c.blurReady,c.bloomReady,c.kuwaharaReady,e.compare,n,r,f,m),go(i,{quad:o.quad,position:d.position}),KM(e,n)}function tk(e,t,n){let r=Se(t)?t:e.element,i=HM(e,r);if(!i)return null;let o=window.getComputedStyle(r),a=Qx(i.width,i.height,n.width,n.height,o.objectFit,o.objectPosition);return{layout:i,uv:a}}function lt(e){if(e.destroyed||e.contextLost)return!1;let t=YM(e);if(!t)return!1;let{source:n,pixels:r,size:i}=t,o=IM(n);o&&DM(e,n),QM(e,n,o);let a=tk(e,n,i);if(!a)return!1;let{layout:l,uv:s}=a;try{return ek(e,r,l,s),$M(e),o&&yM(e,n),e.hasDrawn=!0,e.drawError=null,!0}catch(c){return e.drawError=c instanceof Error?c.message:"Shader draw failed",H("runtime.colorGrading.drawEntry",c),!1}}function nk(e,t,n){let r=e.getBoundingClientRect(),i=e.offsetWidth||r.width||t.width,o=e.offsetHeight||r.height||t.height,a=Math.min(320,Math.max(64,Math.round(n??160))),l=i>0&&o>0?i/o:t.width/t.height;return l>=1?{width:a,height:Math.max(1,Math.round(a/l))}:{width:Math.max(1,Math.round(a*l)),height:a}}function rk(){let e=document.createElement("canvas"),t=cM(e);return t?{canvas:e,glCanvas:e,...t,lut:null,effectTargets:null,kuwaharaTargets:null,effectError:null}:null}function ik(e,t){let n=t?void 0:window.__player?.getTime?.();return typeof n=="number"&&Number.isFinite(n)?Math.max(0,n):Ce(e)?Math.max(0,e.currentTime):0}function ok(e,t,n,r){let i=Jx(t),o=i&&Xx(i,null);if(!i||!o)return null;let a=id(i);if(!a)return null;let l=nk(t,a,n);e.canvas.width=l.width,e.canvas.height=l.height;let s=Se(i)?i:t,c=window.getComputedStyle(s),d=Qx(l.width,l.height,a.width,a.height,c.objectFit,c.objectPosition);return ay(e.gl,e.program.texture,o),{dimensions:l,uv:d,effectTime:ik(t,r),grainSeed:$x(t)+(Ce(t)?Math.floor(t.currentTime*60):0)}}async function ak(e,t,n,r,i=!1){let o=ok(e,t,r,i);if(!o)return null;let{dimensions:a,uv:l,grainSeed:s,effectTime:c}=o,d=[];for(let m of n.slice(0,Gx)){let f=Ua(m.grading);if(!f){d.push({id:m.id,dataUrl:null,error:"Invalid grading"});continue}let p=null;try{f.lut&&(e.lut?.src!==f.lut.src&&(e.lut=gM(e,f.lut.src,await hM(f.lut.src))),p=e.lut),d.push({id:m.id,dataUrl:sk(e,f,p,a,l,s,c)})}catch(y){d.push({id:m.id,dataUrl:null,error:_s(y)})}}return{...a,images:d}}function sk(e,t,n,r,i,o,a){let{canvas:l,gl:s,program:c}=e,d=Kx(e,t,r,i,{releaseIdleTargets:!1});s.bindFramebuffer(s.FRAMEBUFFER,null),s.viewport(0,0,r.width,r.height);let m=Ux(s,c,t,Jn);return sy(s,c,d),n||(e.lut=null),Zx(s,c,m,t,n,d.blurReady,d.bloomReady,d.kuwaharaReady,Jn,r,i,o,a),go(s,{quad:c.quad,position:m.position}),l.toDataURL("image/png")}function _n(e,t,n,r){t.addEventListener(n,r),e.cleanup.push(()=>t.removeEventListener(n,r))}function lk(e){return zt(e)?!0:Ce(e)&&!e.paused&&!e.ended?!1:oy.some(t=>Qn(e,t)!==null)}function uk(e){e.animationFrame!==null&&(window.cancelAnimationFrame(e.animationFrame),e.animationFrame=null),e.videoFrameHandle!==null&&Ce(e.element)&&(e.element.cancelVideoFrameCallback?.(e.videoFrameHandle),e.videoFrameHandle=null)}function bo(e){if(e.destroyed||!Ce(e.element)||e.videoFrameHandle!==null||e.animationFrame!==null)return;let t=e.element,n=t;if(typeof n.requestVideoFrameCallback=="function"){e.videoFrameHandle=n.requestVideoFrameCallback(()=>{e.videoFrameHandle=null,lt(e),!e.destroyed&&!t.paused&&!t.ended&&bo(e)});return}e.animationFrame=window.requestAnimationFrame(()=>{e.animationFrame=null,lt(e),!e.destroyed&&!t.paused&&!t.ended&&bo(e)})}function ck(e){let t=()=>{lt(e)};if(_n(e,e.element,"load",t),_n(e,e.element,"loadedmetadata",t),_n(e,e.element,"loadeddata",t),_n(e,e.element,"seeked",t),_n(e,e.element,"timeupdate",t),_n(e,window,"resize",t),Ce(e.element)&&(_n(e,e.element,"play",()=>bo(e)),_n(e,e.element,"pause",t)),typeof ResizeObserver<"u"&&(e.resizeObserver=new ResizeObserver(t),e.resizeObserver.observe(e.element)),typeof MutationObserver<"u"){let n=()=>{let a=e.element.style;return`${a.transform}|${a.translate}|${a.rotate}|${a.scale}|${a.left}|${a.top}|${a.width}|${a.height}`},r=n(),i=!1,o=new MutationObserver(()=>{i||n()!==r&&(i=!0,requestAnimationFrame(()=>{i=!1,r=n(),lt(e)}))});o.observe(e.element,{attributes:!0,attributeFilter:["style"]}),e.cleanup.push(()=>o.disconnect())}}function dk(e){if(e.destroyed)return null;e.destroyed=!0,uk(e),e.resizeObserver?.disconnect();for(let t of e.cleanup)t();return e.cleanup.length=0,e.canvas.remove(),nd(e),rd(e),Zc(e),e.touchedParent&&(e.parentInlinePosition===null?e.touchedParent.style.removeProperty("position"):e.touchedParent.style.position=e.parentInlinePosition),{canvas:e.canvas,glCanvas:e.glCanvas,gl:e.gl,program:e.program,effectTargets:null,kuwaharaTargets:null,effectError:null}}function ly(e,t){return e.removeAttribute("style"),t.id?e.id=`${vg}${t.id}`:e.removeAttribute("id"),e.className=qR,e.setAttribute($R,"true"),e.setAttribute("data-hyperframes-ignore",""),e.setAttribute("data-hyperframes-picker-ignore",""),e.setAttribute("data-hf-ignore",""),e.setAttribute("aria-hidden","true"),e.style.pointerEvents="none",e.style.display="none",t.parentNode?.insertBefore(e,t.nextSibling),e}function fk(e){return ly(document.createElement("canvas"),e)}function uy(e){let t=new WeakMap,n=new Set,r=new Set,i=[],o=null,a=null,l=Promise.resolve(),s=!1,c=null,d=()=>[...n].flatMap(P=>t.get(P)??[]),m=()=>{if(c)return c;let P=document.createElement("canvas"),R=P.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});return R?(P.addEventListener("webglcontextlost",M=>{M.preventDefault(),i.length=0;for(let z of d())z.contextLost=!0,z.drawError="WebGL context lost",z.canvas.style.display="none",Zc(z)}),P.addEventListener("webglcontextrestored",()=>{for(let M of d())M.contextLost=!xM(M),M.drawError=M.contextLost?"WebGL context restore failed":null,M.contextLost?Zc(M):lt(M)}),c={canvas:P,gl:R},c):null},f=P=>{let R=m(),M=R&&ed(R.gl);return!R||!M?null:{canvas:fk(P),glCanvas:R.canvas,gl:R.gl,program:M,effectTargets:null,kuwaharaTargets:null,effectError:null}},p=(P,R,M)=>{r.delete(P);let z=t.get(P);if(z)return z.grading=R,z.source=M,lt(z),Ce(P)&&!P.paused&&bo(z),!0;let V=i.pop();if(V)ly(V.canvas,P);else{let C=f(P);if(!C)return!1;V=C}let ee={element:P,...V,grading:R,compare:{...Jn},lut:null,lutLoadingSrc:null,lutError:null,drawError:null,effectTargets:null,kuwaharaTargets:null,effectError:null,source:M,animationFrame:null,videoFrameHandle:null,resizeObserver:null,cleanup:[],touchedParent:null,parentInlinePosition:null,sourceHidden:!1,borderlessFrame:null,sourceInlineOpacity:null,sourceInlineOpacityPriority:"",sourceOpacityForCanvas:window.getComputedStyle(P).opacity||"1",sourceVisibleForCanvas:window.getComputedStyle(P).visibility!=="hidden",hasDrawn:!1,contextLost:!1,grainSeed:$x(P),destroyed:!1};return t.set(P,ee),n.add(P),ck(ee),lt(ee),Ce(P)&&!P.paused&&bo(ee),!0},y=(P,R)=>{if(s)return!1;let M=po(P);if(!M)return!1;let z=t.get(M);if(!z){let V=mo(M);if(!Wr(M,V)||!p(M,V,"attribute"))return!1;z=t.get(M)}return z?(z.compare=mM(R),lt(z),!0):!1},b=P=>{r.delete(P);let R=t.get(P);if(!R)return;let M=dk(R);M&&(R.contextLost||i.length>=jR?ys(M):i.push(M)),t.delete(P),n.delete(P)},g=()=>{if(s)return 0;let P=new Set;r.clear(),document.querySelectorAll(oM).forEach(M=>{if(!wn(M))return;P.add(M);let z=mo(M);Wr(M,z)?Xc(M)?p(M,z,"attribute"):(b(M),r.add(M)):b(M)});for(let M of n){let z=t.get(M);z&&(!M.isConnected||z.source==="attribute"&&!P.has(M))&&b(M)}return n.size},v=()=>{for(let P of r){if(P.isConnected&&!Xc(P))continue;r.delete(P);let R=mo(P);P.isConnected&&Wr(P,R)&&p(P,R,"attribute")}},E=()=>{if(s)return 0;v();let P=0;for(let R of n){let M=t.get(R);M&<(M)&&(P+=1)}return P},_=async()=>{let P=new Set;for(let R of n){let M=t.get(R)?.grading.lut;if(!M?.src.trim()||(M.intensity??1)<=0)continue;let z=td(M.src);z.state==="pending"&&P.add(z.promise)}return P.size>0&&await Promise.allSettled(P),E(),P.size},F=()=>{if(s)return 0;v();let P=0;for(let R of n){let M=t.get(R);M&&lk(R)&<(M)&&(P+=1)}return P},D=(P,R)=>{if(s)return!1;let M=po(P);if(!M)return!1;let z=Ua(R);return Wr(M,z)?p(M,z,"live"):(b(M),!0)},k=(P,R)=>{if(!wn(P))return!1;let M=t.get(P);if(!M){if(!R)return!1;let z=mo(P);return Wr(P,z)&&p(P,z,"attribute")}return M.sourceVisibleForCanvas=R,!R&&M.source==="attribute"&&b(P),!0},w=P=>wn(P)&&t.has(P),L=P=>{let R=po(P);if(!R)return{state:"missing",message:"Media not found"};let M=t.get(R);if(M)return M.effectError?{state:"unavailable",message:M.effectError}:M.drawError?{state:"unavailable",message:M.drawError}:M.lutError?{state:"unavailable",message:`LUT error: ${M.lutError}`}:M.grading.lut&&M.lutLoadingSrc?{state:"pending",message:"Loading LUT"}:M.canvas.style.display==="none"?{state:"pending",message:"Waiting for media frame"}:{state:"active",message:M.lut?"Shader + LUT active":"Shader active"};let z=mo(R);return Wr(R,z)?Xc(R)?{state:"unavailable",message:"WebGL unavailable"}:{state:"pending",message:"Waiting for visible media"}:{state:"inactive",message:"No grading applied"}},O=async(P,R,M)=>{let z=async()=>{if(s||R.length===0)return null;let ee=po(P);return!ee||(a??(a=rk()),!a)?null:ak(a,ee,R,M?.maxDimension,M?.useMediaTime)},V=l.then(z,z);return l=V.then(()=>{},()=>{}),V},K=P=>{let R=po(P);if(!Ce(R))return null;if(!R.paused)return()=>{};let M=R.currentTime,z=R.loop,V=R.muted;return R.loop=!0,R.muted=!0,(R.ended||Number.isFinite(R.duration)&&M>=R.duration)&&(R.currentTime=0),e?.lease(R),R.play().catch(()=>{}),()=>{e?.release(R),R.pause(),R.loop=z,R.muted=V,R.currentTime=M}},Z=()=>{if(!s){s=!0,o?.disconnect(),o=null;for(let P of n)b(P);r.clear();for(let P of i)ys(P);i.length=0,c?.gl.getExtension("WEBGL_lose_context")?.loseContext(),c=null,a&&(ys(a,!0),a=null)}};document.body&&(o=new MutationObserver(()=>g()),o.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[Ga]}));let ae={refresh:g,redraw:E,redrawAnimated:F,waitForActiveLuts:_,setGrading:D,setCompare:y,setSourceVisibility:k,isGraded:w,getStatus:L,renderPreviews:O,startPreviewPlayback:K,destroy:Z},ne=window;return ne.__hf=ne.__hf||{},ne.__hf.colorGrading=ae,g(),ae}var mk={mulX:374761393,mulY:668265263,mulMix:1274126177,offset:2654435769,shift1:13,shift2:16,divisor:4294967296},{mulX:pk,mulY:hk,mulMix:cy,offset:gk,shift1:bk,shift2:xk,divisor:yk}=mk,Sk=20,dy=`#version 300 es
|
|
356
|
+
})();`}var ax=(e,t)=>e&&Object.fromEntries(Object.entries(e).map(([n,r])=>[n,t(r)]));function sx(e,t){let n;try{n=JSON.parse(e)}catch{return null}if(!n||typeof n!="object")return null;let{imports:r,scopes:o}=n;return{imports:ax(r,t),scopes:o&&Object.fromEntries(Object.entries(o).map(([i,a])=>[t(i),ax(a,t)??{}]))}}var Xc="text/hf-after-fonts",ux=`${Xc}+module`,cx=`script[type="${Xc}"], script[type="${ux}"]`,dx="__hfAfterFontsClaimed",yR="data-hf-inlined-src";var fx=`[defer][src], [defer][${yR}]`;function Ts(e){let t=e.getAttribute("type");return t===Xc?null:t===ux?"module":t}function SR(e){let t=e.getAttribute("type")??"",n=e.tagName.toLowerCase()==="link"?t.split(";")[0].trim():t;if(n!==""&&n.toLowerCase()!=="text/css")return;let r=(e.getAttribute("media")??"").trim().toLowerCase();return JSON.stringify([r==="all"?"":r,e.getAttribute("title")??""])}var QB=JSON.stringify(["",""]);function lx(e){return JSON.stringify([e.getAttribute("href"),(e.getAttribute("rel")??"").trim().toLowerCase(),SR(e)??e.getAttribute("type"),e.hasAttribute("disabled")])}function mx(e,t){let n=lx(t);return[...e.querySelectorAll("link[href]")].some(r=>!r.closest("noscript")&&lx(r)===n)}var Ze="id",Jc="data-hf-authored-id",$r=/(url\(\s*)(["']?)#([^"')\s]+)\2(\s*\))/gi;function hx(e){return e==="href"||e.endsWith(":href")}function vR(e){return e.replace(/[^a-zA-Z0-9_-]/g,"-")}function Qc(e,t){return!e||!e.toLowerCase().includes("url(")?e:e.replace($r,(n,r,o,i,a)=>{let l=t.get(i);return l?`${r}${o}#${l}${o}${a}`:n})}function ER(e,t,n){if(hx(e)&&t.startsWith("#")){let o=n.get(t.slice(1));return o?`#${o}`:t}$r.lastIndex=0;let r=$r.test(t);return $r.lastIndex=0,r?Qc(t,n):null}function AR(e,t,n){if(e.name===_t||e.name===Ze)return{kind:"skip"};let r=t&&e.value===t.after?t.before:e.value,o=ER(e.name,r,n);return o!==null?{kind:"managed",before:r,after:o}:t?{kind:"retain",alias:t}:{kind:"skip"}}function wR(e,t,n,r){let o=e.namespaceURI===void 0&&e.name==="xlink:href"&&r;return{name:e.name,localName:o?"href":e.localName,namespaceURI:o?"http://www.w3.org/1999/xlink":e.namespaceURI??null,before:t,after:n}}function _R(e,t){let n=new Map(Un(e,_t,!1).map(i=>[i.name,i])),r=[...n.values()].filter(i=>i.name===Ze),o=!!e.closest("svg");for(let i of e.attributes?Array.from(e.attributes):[]){let a=AR(i,n.get(i.name),t);if(a.kind!=="skip"){if(a.kind==="retain"){r.push(a.alias);continue}a.after!==i.value&&(i.namespaceURI?e.setAttributeNS(i.namespaceURI,i.name,a.after):e.setAttribute(i.name,a.after)),r.push(wR(i,a.before,a.after,o))}}r.length&&e.setAttribute(_t,JSON.stringify(r))}function px(e,t,n){let r;for($r.lastIndex=0;r=$r.exec(e);){let o=r[3];t.has(o)&&n.add(o)}}function CR(e,t,n){if(hx(e.name)&&e.value.startsWith("#")){let r=e.value.slice(1);t.has(r)&&n.add(r)}}function TR(e,t,n){let r=new Set;for(let o of e)for(let i of o.attributes?Array.from(o.attributes):[])!i.value||i.name===_t||(CR(i,n,r),i.value.toLowerCase().includes("url(")&&px(i.value,n,r));for(let o of t)o.toLowerCase().includes("url(")&&px(o,n,r);return r}function gx(e,t){return t.some(n=>n===e||n.contains(e))}function RR(e){let t=e.exclude??[],n=[...e.root.querySelectorAll("*")],r=t.length?n.filter(o=>!gx(o,t)):n;return[e.root,...r]}function MR(e){let t=e.exclude??[],n=[...e.root.querySelectorAll("svg [id], svg[id]")];return t.length?n.filter(r=>!gx(r,t)):n}function kR(e){let t=RR(e),n=new Set;if(!e.namespace)return{elements:t,renamable:n};let r=MR(e),o=new Set;for(let a of r){let l=a.getAttribute(Ze);l&&o.add(l)}if(o.size===0)return{elements:t,renamable:n};let i=TR(t,e.cssTexts??[],o);for(let a of r){let l=a.getAttribute(Ze);l&&i.has(l)&&n.add(a)}return{elements:t,renamable:n}}function bx(e){if(!e.closest("svg"))return null;let t=Un(e,_t,!1).find(n=>n.name===Ze);return t?e.getAttribute(Ze)===t.after?t.before:null:e.getAttribute(Jc)}function LR(e){let t=new Map,n=new Set;for(let r of e.querySelectorAll("[id]")){let o=r.getAttribute(Ze);if(!o)continue;n.add(o);let i=t.get(o);i?i.push(r):t.set(o,[r]);let a=bx(r);if(a&&a!==o){let l=t.get(a);l?l.push(r):t.set(a,[r])}}return{elementsById:t,usedIds:n}}function NR(e,t,n){let r=`${vR(e)}--${t}`,o=r;for(let i=2;n.has(o);i+=1)o=`${r}-${i}`;return n.add(o),o}function FR(e,t,n){let r=t.find(a=>!n.has(a))??t[0],i=t.filter(a=>a!==r&&a.getAttribute(Ze)===e).map(a=>n.get(a));return new Set(i.filter(a=>a!==void 0))}function IR(e,t,n){let r=t.map(()=>new Map);for(let[o,i]of e.elementsById)if(!(i.length<2))for(let a of FR(o,i,n))r[a].set(o,NR(t[a].namespace,o,e.usedIds));return r}function DR(e,t,n){let r=new Map;for(let[o,i]of e.elementsById){let a=i[0],l=a.getAttribute(Ze);if(l!==o){r.set(o,l);continue}let s=n.get(a),c=s===void 0?void 0:t[s].get(o);c&&r.set(o,c)}return r}function PR(e){let t=new Set(e.map(r=>r.getAttribute(Ze))),n=new Map;for(let r of e){let o=bx(r),i=r.getAttribute(Ze);!o||!i||(t.add(o),n.set(o,i))}return{ids:t,renamed:n}}function OR(e,t){for(let n of e.elements){let r=n.getAttribute(Ze);if(r&&e.renamable.has(n)&&t.has(r)){n.hasAttribute(Jc)||n.setAttribute(Jc,r);let o=t.get(r),i=Un(n,_t,!1);i.push({name:Ze,localName:Ze,namespaceURI:null,before:r,after:o}),n.setAttribute(_t,JSON.stringify(i)),n.setAttribute(Ze,o)}_R(n,t)}}function xx(e,t,n){if(t.length===0)return[];let r=LR(e),o=t.map(kR),i=o.flatMap(({renamable:d})=>[...d]);if(n)for(let d of o)for(let f of d.renamable)n.has(f)&&d.renamable.delete(f);let a=new Map;o.forEach(({renamable:d},f)=>{for(let m of d)a.set(m,f)});let l=IR(r,t,a),s=DR(r,l,a),c=o.map((d,f)=>{let m=PR(t[f].referenceTarget==="document"?[]:d.elements),p=[...s].filter(([x])=>!m.ids.has(x));return new Map([...p,...m.renamed,...l[f]])});c.forEach((d,f)=>{OR(o[f],d)});for(let d of i)n?.add(d);return c}function yx(e,t,n=[]){if(!e||t.size===0&&n.length===0||!e.includes("#")&&!e.includes("[")&&!e.toLowerCase().includes("url("))return e;let r;try{r=Cs.parse(e)}catch{return e}let o=!1,i=new Set(n.filter(l=>l.name===Ze).map(l=>l.before)),a=[...t].filter(([l])=>!i.has(l)).map(([l,s])=>({id:l,replacement:`:is(#${Xt(l)}, #${Xt(s)})`}));return r.walkRules(l=>{let s=l.selectors.map(c=>fa(c,a,n));s.some((c,d)=>c!==l.selectors[d])&&(l.selectors=s,o=!0)}),r.walkDecls(l=>{let s=Qc(l.value,t);s!==l.value&&(l.value=s,o=!0)}),r.walkAtRules(l=>{if(!l.params)return;let s=Qc(l.params,t);s!==l.params&&(l.params=s,o=!0)}),o?r.toResult({map:!1}).css:e}var Zc=5e3;window[dx]=!0;async function ed(){let e=document.fonts;if(!e)return;document.body?.offsetHeight;let t,n=await Promise.race([e.ready.then(()=>!1),new Promise(o=>t=setTimeout(o,Zc,!0))]);if(clearTimeout(t),!n)return;let r=[...new Set(Array.from(e).filter(o=>o.status==="loading").map(o=>o.family))];globalThis.console.warn(`[hyperframes] fonts still loading after ${Zc} ms, composition scripts run without them: ${r.join(", ")}`),ke({source:"hf-preview",type:"diagnostic",code:"runtime_font_wait_timeout",details:{loadingFamilies:r,timeoutMs:Zc}})}function HR(e,t){let n=Object.getOwnPropertyDescriptor(e,"addEventListener"),r=e.addEventListener,o=(i,a,l)=>{if(!a)return;i==="DOMContentLoaded"||i==="load"&&e===window&&document.readyState==="complete"?t.push({target:e,type:i,listener:a}):r.call(e,i,a,l)};return e.addEventListener=o,()=>{e.addEventListener===o&&(n?Object.defineProperty(e,"addEventListener",n):delete e.addEventListener)}}function GR(e){if(!e.isConnected)return;let t=document.createElement("script");for(let{name:r,value:o}of Array.from(e.attributes))t.setAttribute(r,o);let n=Ts(e);return n===null?t.removeAttribute("type"):t.setAttribute("type",n),t.async=e.hasAttribute("async"),t.text=e.textContent??"",e.replaceWith(t),t}var BR=50,UR=()=>!window.__HF_VIRTUAL_TIME__;function WR(){let e=globalThis.scheduler;return typeof e?.yield=="function"?e.yield():new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>{n.port1.close(),t()},n.port2.postMessage(null)})}var VR=e=>new Promise(t=>{e.addEventListener("load",t),e.addEventListener("error",t)});function $R(){let e=document.createElement("script");e.type="module",e.async=!1,e.text='document.dispatchEvent(new Event("hf-after-fonts-modules"))';let t=new Promise(n=>document.addEventListener("hf-after-fonts-modules",n,{once:!0}));return document.body.appendChild(e),t.then(()=>e.remove())}async function Rs(e,t){await ed();let n=l=>Ts(l)==="module"||l.matches(fx),r=[],o=[document,window].map(l=>HR(l,r)),i=UR(),a=performance.now();for(let l of[...e.filter(s=>!n(s)),...e.filter(n)]){i&&performance.now()-a>BR&&(await WR(),a=performance.now());let s=GR(l);s?.hasAttribute("src")&&!s.async&&!s.noModule?await VR(s):Ts(l)==="module"&&await $R()}for(let l of o)l();t?.();for(let{target:l,type:s,listener:c}of r){let d=new Event(s);try{typeof c=="function"?c.call(l,d):c.handleEvent(d)}catch(f){reportError(f)}}}var qR=["data-composition-id","data-composition-file","data-start","data-duration","data-end","data-track-index","data-track","data-composition-src","data-hf-authored-duration","data-hf-authored-end"];function Sx(e){let t=e.getAttribute("id")?.trim();for(let n of qR)e.removeAttribute(n);t&&(e.removeAttribute("id"),e.setAttribute("data-hf-authored-id",t)),e.setAttribute("data-hf-inner-root","true")}var zR=8e3,jR=/^(?![a-zA-Z][a-zA-Z\d+\-.]*:)(?!\/\/)(?!\/)(?!\.\.?\/).+/,KR=/\burl\(\s*(["']?)([^)"']+)\1\s*\)/g,YR=["src","href"];function XR(e){return!e||e.startsWith("http://")||e.startsWith("https://")||e.startsWith("//")||e.startsWith("data:")||e.startsWith("#")||e.startsWith("/")}function Cx(e,t){if(!t)return e;let n=e.trim();if(XR(n)||!n.startsWith("../")&&n!=="..")return e;try{return new URL(n,t).href}catch{return e}}function Tx(e,t){return!t||!e?e:e.replace(KR,(n,r,o)=>{let i=Cx(o||"",t);return i===o?n:`url(${r||""}${i}${r||""})`})}function JR(e,t){for(let n of Array.from(e.querySelectorAll("[src], [href]")))for(let r of YR){let o=n.getAttribute(r);if(o==null)continue;let i=Cx(o,t);i!==o&&n.setAttribute(r,i)}}function QR(e,t){for(let n of Array.from(e.querySelectorAll("[style]"))){let r=n.getAttribute("style");if(r==null)continue;let o=Tx(r,t);o!==r&&n.setAttribute("style",o)}}function ZR(e,t){for(let n of Array.from(e.querySelectorAll("style"))){let r=n.textContent||"",o=Tx(r,t);o!==r&&(n.textContent=o)}}function Rx(e,t){if(t){JR(e,t),QR(e,t),ZR(e,t);for(let n of Array.from(e.querySelectorAll("template")))Rx(n.content,t)}}function vx(e,t){return`${e}__hf${t}`}var eM=e=>new Promise(t=>{let n=!1,r=Date.now(),o=null,i=a=>{n||(n=!0,o!=null&&window.clearTimeout(o),t({status:a,elapsedMs:Math.max(0,Date.now()-r)}))};e.addEventListener("load",()=>i("load"),{once:!0}),e.addEventListener("error",()=>i("error"),{once:!0}),o=window.setTimeout(()=>i("timeout"),zR)});function rd(e){for(;e.firstChild;)e.removeChild(e.firstChild);e.textContent=""}function td(e){for(let t of E0(e))t.remove()}function tM(e){let t=document.importNode(e,!0);Sx(t);let n=Xn(t.getAttribute("data-width")),r=Xn(t.getAttribute("data-height"));return t.style.width=n===null?"100%":`${n}px`,t.style.height=r===null?"100%":`${r}px`,t}function Ex(e,t){let n=e.trim();if(!n)return e;try{return jR.test(n)&&!n.startsWith("#")&&!n.startsWith("?")?new URL(n,document.baseURI).toString():t?new URL(n,t).toString():new URL(n,document.baseURI).toString()}catch{return e}}function Ax(e,t){try{let n=new URL(e),r=new URL(t);return n.search="",n.hash="",r.search="",r.hash="",n.href===r.href}catch{return!1}}function xi(e){let t=(e.getAttribute("data-composition-id")||"").trim()||null;return{authoredCompositionId:(e.getAttribute("data-hf-original-composition-id")||t||"").trim()||null,runtimeCompositionId:t}}function nM(e){let t=new Map;for(let n of e){let r=xi(n).authoredCompositionId||"";r&&t.set(r,(t.get(r)||0)+1)}return w0(t,e),t}function Mx(e){let t=xi(e).authoredCompositionId;return t?!!document.querySelector(`template#${CSS.escape(t)}-template`):!1}function rM(e){return!!e.querySelector('[data-hf-inner-root="true"]')}function wx(e){return e.hasAttribute("data-composition-src")?!0:Mx(e)?e.children.length===0||e.hasAttribute("data-hf-original-composition-id")?!0:rM(e):!1}function Ms(){return Array.from(document.querySelectorAll("[data-composition-src], [data-composition-id]")).filter(t=>t.hasAttribute("data-composition-src")?!0:Mx(t))}function od(){let e=window.__hfVariablesByComp;if(!e)return;let t=new Set(Ms().map(n=>xi(n).runtimeCompositionId).filter(n=>!!n));for(let n of Object.keys(e))t.has(n)||delete e[n]}function kx(e,t){let n=nM(e),r=new Set(e.flatMap(a=>{let l=xi(a),s=l.authoredCompositionId?[l.authoredCompositionId]:[];return(t.has(a)||!wx(a))&&l.runtimeCompositionId&&s.push(l.runtimeCompositionId),s})),o=new Map,i=new Map;for(let a of e){let{authoredCompositionId:l,runtimeCompositionId:s}=xi(a),c=!t.has(a)&&wx(a);if(!l){i.set(a,{authoredCompositionId:null,runtimeCompositionId:s});continue}let d=(n.get(l)||0)>1,f=s||l;if(c){let m=d?(o.get(l)||0)+1:0;if(d){for(;r.has(vx(l,m));)m+=1;o.set(l,m)}f=d?vx(l,m):l,r.add(f),d?a.setAttribute("data-hf-original-composition-id",l):a.removeAttribute("data-hf-original-composition-id"),a.setAttribute("data-composition-id",f)}i.set(a,{authoredCompositionId:l,runtimeCompositionId:f})}return od(),i}async function Lx(e){let t=A0({contentNode:e.sourceNode,head:e.head,hasTemplate:e.hasTemplate,compositionId:e.authoredCompositionId}),n=ve(t.innerRoot)?t.innerRoot:null,r=n??e.sourceNode,o=t.authoredCompositionId,i=t.scriptCompositionId,a=e.runtimeCompositionId||null,l=t.authoredRootId,s=a?`[data-composition-id="${CSS.escape(a)}"]`:void 0;for(let b of t.linkSources){let y=(b.getAttribute("href")||"").trim();if(!y)continue;let E=e.compositionUrl?new URL(y,e.compositionUrl).href:y;if(e.compositionUrl&&Ax(E,e.compositionUrl))continue;let v=b.cloneNode(!0);Ym(v)&&(v.href=E,!mx(document.head,v)&&(document.head.appendChild(v),e.injectedLinks.push(v)))}let c=[];(b=>{for(let y of b){let E=y.cloneNode(!0);if(!Km(E))continue;o&&(E.textContent=rx(E.textContent||"",o,s,l,{scopeRootSelectors:!0})),document.head.appendChild(E),e.injectedStyles.push(E);let v=E.textContent||"";c.push({element:E,authored:v,applied:v})}})(t.styleSources);let f=b=>{let y=b.getAttribute("type")?.trim()??"",E=b.getAttribute("src")?.trim()??"";if(E){let _=Ex(E,e.compositionUrl);return e.compositionUrl&&Ax(_,e.compositionUrl)?null:{kind:"external",src:_,type:y}}let v=b.textContent?.trim()??"";return v?{kind:"inline",content:v,type:y,scopeCompositionId:i}:null},m=t.scriptSources.map(f).filter(b=>b!==null);if(n){let b=n.getAttribute("data-width"),y=n.getAttribute("data-height"),E=e.parseDimensionPx(b),v=e.parseDimensionPx(y);b&&e.host.setAttribute("data-width",b),y&&e.host.setAttribute("data-height",y),E&&ve(e.host)&&(e.host.style.width=E),v&&ve(e.host)&&(e.host.style.height=v),n.hasAttribute("data-timeline-locked")&&e.host.setAttribute("data-timeline-locked","");let _=tM(n);!e.authoredCompositionId&&o&&_.setAttribute("data-composition-id",o),td(_),e.host.appendChild(_)}else if(e.hasTemplate){let b=document.importNode(r,!0);td(b),e.host.appendChild(b)}else e.host.innerHTML=e.fallbackBodyInnerHtml,td(e.host);for(let b of t.inertScriptsOutsideRoot)e.host.appendChild(document.importNode(b,!0));a&&iM(e,r,a);let p=Array.from(e.host.childNodes),x=()=>e.host.isConnected&&(p.length>0||e.host.childNodes.length===0)&&p.every(b=>b.parentNode===e.host);return{host:e.host,namespace:a||o||"",styles:c,isCurrent:x,runScripts:async()=>{if(m.length>0&&await ed(),!!x())for(let b of m){let y=document.createElement("script");if(b.type&&(y.type=b.type),y.async=!1,b.kind==="external")y.src=b.src;else if(b.type.toLowerCase()==="importmap"){let E=sx(b.content,v=>Ex(v,e.compositionUrl));y.textContent=E?JSON.stringify(E):b.content}else if(b.type.toLowerCase()==="module"){let E=b.scopeCompositionId?ix(a||b.scopeCompositionId,e.compositionUrl?.href):"";y.textContent=E+b.content}else b.scopeCompositionId?y.textContent=Yc(b.content,b.scopeCompositionId,"[HyperFrames] composition script error:",s,a||b.scopeCompositionId,l,e.compositionUrl?.href):y.textContent=`(function(){${b.content}})();`;if(document.body.appendChild(y),e.injectedScripts.push(y),b.kind==="external"){let E=await eM(y);E.status!=="load"&&e.onDiagnostic?.({code:"external_composition_script_load_issue",details:{hostCompositionId:e.authoredCompositionId,runtimeCompositionId:e.runtimeCompositionId,hostCompositionSrc:e.hostCompositionSrc,resolvedScriptSrc:b.src,loadStatus:E.status,elapsedMs:E.elapsedMs}})}}}}}async function _x(e,t){let n=Ms();if(od(),n.length===0)return[];let r=kx(n,t),o=n.filter(a=>{if(t.has(a)||a.hasAttribute("data-composition-src")||a.children.length>0)return!1;let l=r.get(a)?.authoredCompositionId;return l?!!document.querySelector(`template#${CSS.escape(l)}-template`):!1}),i=[];for(let a of o){let l=r.get(a),s=l?.authoredCompositionId;if(!s)continue;let c=document.querySelector(`template#${CSS.escape(s)}-template`);rd(a);let d=await Lx({host:a,authoredCompositionId:s,runtimeCompositionId:l?.runtimeCompositionId||s,hostCompositionSrc:`template#${s}-template`,sourceNode:c.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:null,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});i.push(d)}return i}async function oM(e){let t=Ms();if(od(),t.length===0)return[];let n=kx(t,new Set),r=t.filter(i=>i.hasAttribute("data-composition-src"));return(await Promise.all(r.map(async i=>{let a=i.getAttribute("data-composition-src");if(!a)return null;let l=n.get(i),s=l?.authoredCompositionId||null,c=l?.runtimeCompositionId||s||null,d=null;try{d=new URL(a,document.baseURI)}catch{d=null}rd(i);let f=p=>{e.onDiagnostic?.({code:"external_composition_load_failed",details:{hostCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,errorMessage:p instanceof Error?p.message:"unknown_error"}}),rd(i)},m=async p=>{let x=await Lx(p),b=x.runScripts;return x.runScripts=async()=>{try{await b()}catch(y){f(y)}},x};try{let p=s!=null?document.querySelector(`template#${CSS.escape(s)}-template`):null;if(p)return await m({host:i,authoredCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,sourceNode:p.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:d,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});let x=await fetch(a);if(!x.ok)throw new Error(`HTTP ${x.status}`);let b=await x.text(),E=new DOMParser().parseFromString(b,"text/html");Rx(E,d);let v=(s?E.querySelector(`template#${CSS.escape(s)}-template`):null)??E.querySelector("template"),_=v?v.content:E.body;return await m({host:i,authoredCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,sourceNode:_,hasTemplate:!!v,fallbackBodyInnerHtml:E.body.innerHTML,compositionUrl:d,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,head:E.head,declaredVariableDefaults:Io(E.documentElement),variableDeclarer:E.documentElement,onDiagnostic:e.onDiagnostic})}catch(p){return f(p),null}}))).filter(i=>i!==null)}async function Nx(e){let t=new Set,n={host:document.documentElement,namespace:"",referenceTarget:"document",styles:[...document.querySelectorAll("style")].map(f=>({element:f,authored:f.textContent??"",applied:f.textContent??""}))},r=await oM(e),o=await _x(e,new Set(r.map(({host:f})=>f))),i=[...r,...o];nd([...i,n],t),await Promise.all(r.map(f=>f.runScripts()));let a=o.filter(f=>{if(f.isCurrent())return!0;for(let m of f.styles)m.element.remove();return window.__hfVariablesByComp&&delete window.__hfVariablesByComp[f.namespace],!1}),l=[...r.filter(f=>f.host.isConnected),...a],s=await _x(e,new Set(l.map(({host:f})=>f)));s.length&&nd([...l,...s,n],t);let c=new Map([...a,...s].map(f=>[f.host,f]));for(let f of Ms()){let m=c.get(f);m&&await m.runScripts()}let d=[...l,...s].filter(f=>f.host.isConnected);nd([...d,n],t)}function nd(e,t){for(let{styles:r}of e)for(let o of r){let i=o.element.textContent??"";i!==o.applied&&(o.authored=i,o.applied=i)}xx(document,e.map(({host:r,namespace:o,styles:i,referenceTarget:a})=>({root:r,namespace:o,referenceTarget:a,exclude:e.filter(l=>l.host!==r&&r.contains(l.host)).map(l=>l.host),cssTexts:i.map(l=>l.authored)})),t).forEach((r,o)=>{let i=Un(e[o].host,_t);if(!(r.size===0&&i.length===0))for(let a of e[o].styles){let l=yx(a.authored,r,i);l!==a.applied&&(a.element.textContent=l),a.applied=l}}),cr()}function iM(e,t,n){let o={...e.declaredVariableDefaults??(Pe(t)?Io(t):{}),...oh(e.host)};fu(e.variableDeclarer??(Pe(t)?t:null),o,n),nh(e.host),Object.keys(o).length>0?(window.__hfVariablesByComp||(window.__hfVariablesByComp={}),window.__hfVariablesByComp[n]=o,mu(e.host,{...th(e.host,o,window),...Pa()})):window.__hfVariablesByComp&&delete window.__hfVariablesByComp[n]}function aM(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function sM(e){if(!Array.isArray(e))throw new Error("expected a JSON array");if(!e.every(aM))throw new Error("every array entry must be an object");return e}function lM(e){let n=e.vars.data?.captionState;return n==="dim"||n==="active"?n:void 0}function uM(e){return ve(e)?e.dataset.captionWrapper!=="true"?e:e.querySelector(":scope > span")??null:null}function cM(){let e=[],t=document.querySelectorAll(".caption-group");for(let n of t)for(let r of n.children){if(!ve(r))continue;let o=r.dataset.captionWrapper==="true"?r.querySelector(":scope > span"):r.tagName==="SPAN"?r:null;o&&e.push(o)}return e}function dM(e){let t=e.parentElement;if(t?.dataset.captionWrapper==="true")return t;let n=document.createElement("span");return n.style.display="inline-block",n.dataset.captionWrapper="true",e.parentNode?.insertBefore(n,e),n.appendChild(e),n}var ad=()=>window.gsap,Ix=()=>fetch("caption-overrides.json").then(e=>e.ok?e.json():null),Dx=e=>e===null?[]:sM(e);function Px(e){let t=e instanceof Error?e.message:String(e);globalThis.console.error(`[HyperFrames] Invalid caption-overrides.json: ${t}`)}function Ox(){return ad()?Ix().then(Dx).catch(e=>(Px(e),[])):Promise.resolve([])}function sd(e,t){return!ad()||document.querySelectorAll(".caption-group").length===0?Promise.resolve():Ix().then(n=>ld(Dx(n),e,t)).catch(Px)}function fM(e,t){return(e.wordId?uM(document.getElementById(e.wordId)):null)??(e.wordIndex!==void 0?t[e.wordIndex]??null:null)}function Fx(e,t){return Object.fromEntries(t.filter(n=>e[n]!==void 0).map(n=>[n,e[n]]))}function id(e,t){let n=e.style.color;e.style.color=t;let r=getComputedStyle(e).color;return e.style.color=n,r}function mM(e,t){let n=t[0]?.vars.startAt;return id(e,n?.color===void 0?"":String(n.color))}function pM(e,t,n,r){let o=lM(e);if(o)return o;let i=String(e.vars.color);return/var\(|currentcolor/i.test(i)?id(t,i)===n?"dim":"active":(r.has(i)||r.set(i,id(t,i)),r.get(i)===n?"dim":"active")}function hM(e,t,n){if(e.dimColor)return e.dimColor;if(!(t.length===0||t.some(r=>r.vars.runBackwards)))return n}function gM(e,t,n,r){let o=e.getTweensOf(t).filter(l=>l.vars.color!==void 0).sort((l,s)=>l.startTime()-s.startTime()),i=mM(t,o);for(let l of o){let c=pM(l,t,i,r)==="dim"?n.dimColor:n.activeColor;c&&(l.vars.color=c),l.vars.runBackwards||l.invalidate?.()}let a=hM(n,o,i);a&&e.set(t,{color:a})}function bM(e,t,n,r){let o=Fx(n,["x","y","scale","rotation"]),i=Fx(n,["opacity","fontWeight","fontFamily"]);if(n.fontSize!==void 0&&(i.fontSize=`${n.fontSize}px`),(n.activeColor||n.dimColor)&&gM(e,t,n,r),Object.keys(i).length>0&&e.set(t,i),Object.keys(o).length>0){let a=dM(t);e.set(a,o)}}function ld(e,t,n=()=>{}){let r=ad();if(!r||e.length===0)return;n();let o=cM(),i=new Map;for(let a of e){let l=fM(a,o);!l||t&&!t.some(s=>s.contains(l))||bM(r,l,a,i)}}var cd="data-hf-edit-base-x",dd="data-hf-edit-base-y",Cn="data-hf-edit-original-translate",ks=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},xM=e=>{let t=[],n=0,r="";for(let o of e.trim())o==="("&&(n+=1),o===")"&&(n=Math.max(0,n-1)),/\s/.test(o)&&n===0?(r&&t.push(r),r=""):r+=o;return r&&t.push(r),t},Hx=/^-?(?:\d+(?:\.\d+)?|\.\d+)px$/,ud=(e,t)=>Hx.test(e)&&Hx.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,yM=(e,t,n)=>{if(!e||e==="none")return`${t} ${n}`;let[r,o,i]=xM(e);if(r===void 0)return`${t} ${n}`;if(o===void 0)return`${ud(r,t)} ${n}`;let a=i===void 0?"":` ${i}`;return`${ud(r,t)} ${ud(o,n)}${a}`},SM=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},vM=e=>{let t=e.style.getPropertyValue("translate").trim();if(t)return t==="none"?"":t;try{let n=e.ownerDocument.defaultView,r=n?n.getComputedStyle(e).getPropertyValue("translate").trim():"";return r==="none"?"":r}catch{return""}},Ls=new WeakMap;function Vx(e){Ls.delete(e)}function EM(e,t){let n=Ls.get(e);if(!t?.force&&n!==void 0&&e.style.getPropertyValue("translate")!==n){gt("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=ks(e.getAttribute("data-x"))-ks(e.getAttribute(cd)),o=ks(e.getAttribute("data-y"))-ks(e.getAttribute(dd));e.hasAttribute(Cn)||e.setAttribute(Cn,vM(e)),n===void 0&&SM(e);let i=e.getAttribute(Cn)??"",a=yM(i,`${r}px`,`${o}px`);e.style.setProperty("translate",a),Ls.set(e,e.style.getPropertyValue("translate"))}function yi(e,t){let n=e.querySelectorAll(`[${Cn}]:not([${cd}]):not([${dd}])`);for(let i=0;i<n.length;i++){let a=n[i];if(a===void 0||!fr(a))continue;let l=a.getAttribute(Cn)??"";l===""?a.style.removeProperty("translate"):a.style.setProperty("translate",l),a.removeAttribute(Cn),Ls.delete(a)}let r=e.querySelectorAll(`[${cd}], [${dd}]`),o=0;for(let i=0;i<r.length;i++){let a=r[i];a===void 0||!fr(a)||(EM(a,t),o+=1)}return o}var Gx="__hfPositionEditsSeekReapplyWrapped",Bx=new WeakSet,Ux=new WeakMap,Wx=new WeakMap;function $x(e){let t=e,n=()=>{try{yi(t.document)}catch{}},r=f=>typeof f=="function"&&(Bx.has(f)||!!f[Gx]),o=f=>{Bx.add(f);try{Object.defineProperty(f,Gx,{value:!0})}catch{}},i=f=>{if(typeof f!="function"||r(f))return f;let m=function(...p){let x=f.apply(this,p);return n(),x};return o(m),m},a=(f,m)=>{let p=Ux.get(f);if(p?.has(m))return!0;let x=Object.getOwnPropertyDescriptor(f,m);if(x?.configurable===!1){let E=f[m];return typeof E=="function"&&(f[m]=i(E),n()),!1}let b=f[m],y=x?.set;return Object.defineProperty(f,m,{configurable:!0,enumerable:x?.enumerable??!0,get:()=>b,set:E=>{b=i(E),y?.call(f,E)}}),b=i(b),p??(p=new Set),p.add(m),Ux.set(f,p),n(),!0},l=(f,m)=>{let p=Wx.get(t),x=Object.getOwnPropertyDescriptor(t,f);if(!p?.has(f)){if(x?.configurable===!1){let E=t[f];return E?a(E,m):!1}let y=t[f];Object.defineProperty(t,f,{configurable:!0,enumerable:x?.enumerable??!0,get:()=>y,set:E=>{y=E,y&&a(y,m)}}),p??(p=new Set),p.add(f),Wx.set(t,p)}let b=t[f];return b?a(b,m):!1},s=()=>{let f=l("__hf","seek"),m=l("__player","renderSeek");return f&&m};if(s())return;let c=120,d=t.setInterval(()=>{if(s()){t.clearInterval(d);return}c-=1,c<=0&&t.clearInterval(d)},50)}function Ns(e){let t=window,r=e.closest("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()??"",o=r?t.__hfVariablesByComp?.[r]:void 0;if(o)return o;let i=t.__hyperframes?.getVariables?.();return i&&typeof i=="object"?i:t.__hfVariables??{}}function Fs(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function fd(e){let t=e.replace(/[\u0000-\u0020]/g,""),n=/^([a-z][a-z0-9+.-]*):/i.exec(t);if(!n)return!0;let r=n[1]?.toLowerCase();return r?r==="https"||r==="http"||r==="blob"?!0:r==="data"?/^data:image\//i.test(t):!1:!1}var qx=new Set(["img","video","audio","source"]);function AM(e){if(typeof e=="string"&&e.length>0)return e;if(e!==null&&typeof e=="object"){let t=e.url;if(typeof t=="string"&&t.length>0)return t}return null}function wM(e){return e.replace(/[;{}<>\r\n]/g,"")}function _M(e){if(Fs(e))return String(e);if(e!==null&&typeof e=="object"){let t=e.name;if(typeof t=="string"&&t.length>0)return t}return null}function md(e,t){let n=e.closest("[data-composition-id]"),r=t.get(n);if(r)return r;let o=Ns(e);return t.set(n,o),o}function CM(e,t){if(e.childElementCount===0){e.textContent=t;return}let n=!1;for(let r of Array.from(e.childNodes))r.nodeType===Node.TEXT_NODE&&(r.nodeValue=n?"":t,n=!0);n||e.insertBefore(e.ownerDocument.createTextNode(t),e.firstChild)}function TM(e){return e.querySelector("[data-hf-root]")??e.getElementById("stage")??e.body?.firstElementChild??e.body}function RM(e,t){for(let n of new Set(e)){let r=md(n,t);for(let[o,i]of Object.entries(r)){let a=_M(i);a!==null&&ve(n)&&n.style.setProperty(`--${o}`,wM(a))}}}function zx(e,t,n=!0){let r=e.getAttribute("data-var-src")?.trim();if(!r)return null;if(!qx.has(e.tagName.toLowerCase()))return n&&globalThis.console.warn(`[hyperframes] Ignoring data-var-src on <${e.tagName.toLowerCase()}>: variable-bound src is only allowed on ${Array.from(qx).join("/")}.`),null;let o=AM(md(e,t)[r]);return o===null?null:fd(o)?o:(n&&globalThis.console.warn(`[hyperframes] Ignoring data-var-src="${r}": unsafe URL protocol.`),null)}function jx(e){return zx(e,new Map,!1)??Bo(e)}function Is(e,t){let n=new Map,r=i=>t?[...t.matches(i)?[t]:[],...t.querySelectorAll(i)]:Array.from(e.querySelectorAll(i)),o=t?null:TM(e);RM([...o?[o]:[],...r("[data-composition-id]")],n);for(let i of r("[data-var-src]")){let a=zx(i,n);a!==null&&Bo(i)!==a&&i.setAttribute("src",a)}for(let i of r("[data-var-text]")){let a=i.getAttribute("data-var-text")?.trim();if(!a)continue;let l=md(i,n)[a];Fs(l)&&CM(i,String(l))}}var rn=new Map,MM="data-hf-color-grading-canvas",kM="__hf_color_grading_canvas__";function oy(){if(typeof MutationObserver>"u"||typeof document>"u")return;let e=document.documentElement;if(!e)return;let t=r=>{ve(r)&&(r.hasAttribute(Yn)||r.setAttribute(Yn,r.style.opacity))},n=r=>{if(Pe(r)){r.matches("video, img")&&t(r);for(let o of r.querySelectorAll("video, img"))t(o)}};n(e),new MutationObserver(r=>{for(let o of r)for(let i of o.addedNodes)n(i)}).observe(e,{childList:!0,subtree:!0})}var LM=16,NM=4,tr={enabled:!1,position:.5,softness:0,lineWidth:2},pd=["#000000","#ffffff"],FM=["#1a1a1a","#f5f5dc"],_i=3,IM=_i-1,DM=5,hd=`${Vt}.0`,Kx=`${Vt-1}.0`,PM=`${_i}.0`,OM=`${(IM+.5)/_i}`;function Si(e){let t=e.getAttribute(ns);return t==null?null:Jg(t,Ns(e))}var HM=["attribute vec2 a_pos;","varying vec2 v_uv;","void main(){"," v_uv = a_pos * 0.5 + 0.5;"," gl_Position = vec4(a_pos, 0.0, 1.0);","}"].join(`
|
|
357
|
+
`),iy=["#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","#else","precision mediump float;","#endif","varying vec2 v_uv;","uniform sampler2D u_source;","uniform sampler2D u_blurSource;","uniform sampler2D u_bloomSource;","uniform sampler2D u_kuwaharaSource;","uniform sampler2D u_lut;","uniform sampler2D u_advanced;","uniform vec2 u_resolution;","uniform vec2 u_uvScale;","uniform vec2 u_uvOffset;","uniform float u_blurReady;","uniform float u_bloomReady;","uniform float u_kuwaharaReady;","uniform float u_lutEnabled;","uniform float u_lutSize;","uniform vec2 u_lutTextureSize;","uniform vec3 u_lutDomainMin;","uniform vec3 u_lutDomainMax;","uniform float u_lutIntensity;","uniform vec3 u_shadowWheel;","uniform vec3 u_midtoneWheel;","uniform vec3 u_highlightWheel;","uniform float u_rgbCurvesEnabled;","uniform float u_hueCurvesEnabled;","uniform float u_secondaryCount;","uniform float u_exposure;","uniform float u_contrast;","uniform float u_highlights;","uniform float u_shadows;","uniform float u_whites;","uniform float u_blacks;","uniform float u_temperature;","uniform float u_tint;","uniform float u_vibrance;","uniform float u_saturation;","uniform float u_vignette;","uniform float u_vignetteMidpoint;","uniform float u_vignetteRoundness;","uniform float u_vignetteFeather;","uniform float u_grain;","uniform float u_grainSize;","uniform float u_grainRoughness;","uniform float u_grainSeed;","uniform float u_effectTime;","uniform float u_blur;","uniform float u_bloom;","uniform float u_kuwahara;","uniform float u_pixelate;","uniform float u_chromaBleed;","uniform float u_tapeDamage;","uniform float u_tapeTracking;","uniform float u_tapeNoise;","uniform float u_tapeSpeed;","uniform float u_filmArtifacts;","uniform float u_halftone;","uniform float u_halftoneSize;","uniform float u_twoInkPrint;","uniform float u_twoInkPrintSize;","uniform float u_ascii;","uniform float u_asciiSize;","uniform float u_asciiInvert;","uniform float u_asciiStyle;","uniform float u_asciiColor;","uniform float u_asciiRotation;","uniform float u_dither;","uniform float u_ditherSize;","uniform float u_monoScreen;","uniform float u_monoScreenSize;","uniform float u_monoScreenAngle;","uniform float u_monoScreenSpread;","uniform float u_monoScreenShape;","uniform float u_monoScreenInvert;","uniform float u_scanlines;","uniform float u_scanlineCount;","uniform float u_scanlineSoftness;","uniform float u_chromaticAberration;","uniform float u_chromaticAngle;","uniform float u_crtCurvature;","uniform float u_digitalGlitch;","uniform float u_digitalGlitchColorSplit;","uniform float u_digitalGlitchLineTear;","uniform float u_digitalGlitchPixelate;","uniform float u_digitalGlitchBlockAmount;","uniform float u_digitalGlitchBlockDisplacement;","uniform float u_digitalGlitchBlockOpacity;","uniform float u_digitalGlitchSpeed;","uniform float u_engraving;","uniform float u_engravingSpacing;","uniform float u_engravingMinThickness;","uniform float u_engravingMaxThickness;","uniform float u_engravingAngle;","uniform float u_engravingContrast;","uniform float u_engravingSharpness;","uniform float u_engravingWave;","uniform float u_engravingWaveFrequency;","uniform float u_crosshatch;","uniform float u_crosshatchSpacing;","uniform float u_crosshatchThickness;","uniform float u_crosshatchAngle;","uniform float u_crosshatchContrast;","uniform float u_crosshatchEdges;","uniform float u_crosshatchLineWeight;","uniform float u_crosshatchWave;","uniform float u_crosshatchWaveFrequency;","uniform float u_paletteSize;","uniform vec3 u_palette0;","uniform vec3 u_palette1;","uniform vec3 u_palette2;","uniform vec3 u_palette3;","uniform vec3 u_palette4;","uniform vec3 u_palette5;","uniform float u_intensity;","uniform float u_compareEnabled;","uniform float u_comparePosition;","uniform float u_compareSoftness;","uniform float u_compareLineWidth;","const float PI = 3.14159265359;","float lumaOf(vec3 c){ return dot(c, vec3(0.2126, 0.7152, 0.0722)); }","float bt601Luma(vec3 c){ return dot(c, vec3(0.299, 0.587, 0.114)); }","float grainHash(vec2 p){ return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453123); }","float digitalHash(vec2 p){"," vec2 q = mod(floor(p), 251.0);"," float x = mod(q.x * q.x * 157.0 + q.x * 89.0, 251.0);"," float y = mod(q.y * q.y * 113.0 + q.y * 47.0, 251.0);"," float xy = mod(q.x * q.y * 71.0, 251.0);"," return mod(x + y + xy + 19.0, 251.0) / 251.0;","}","float colorSaturation(vec3 c){ return max(max(c.r, c.g), c.b) - min(min(c.r, c.g), c.b); }","vec2 clampUv(vec2 uv){ return clamp(uv, vec2(0.0), vec2(1.0)); }","vec2 applyCrtWarp(vec2 uv){"," vec2 centered = uv * 2.0 - 1.0;"," float curvature = clamp(u_crtCurvature, 0.0, 1.0) * 0.5;"," float dist = dot(centered, centered);"," centered *= 1.0 + curvature * dist;"," return centered * 0.5 + 0.5;","}","vec4 sampleSource(vec2 uv){ return texture2D(u_source, clampUv(uv)); }","vec4 sampleBlur(vec2 uv){ return texture2D(u_blurSource, clampUv(uv)); }","vec3 sampleBloom(vec2 uv){ return texture2D(u_bloomSource, clampUv(uv)).rgb; }","vec3 sampleKuwahara(vec2 uv){"," vec2 displayUv = uv * u_uvScale + u_uvOffset;"," return texture2D(u_kuwaharaSource, clampUv(displayUv)).rgb;","}","vec4 samplePrepared(vec2 uv){"," vec4 base = sampleSource(uv);","#ifdef HF_STAGE_BLUR"," float blur = clamp(u_blur, 0.0, 1.0);"," if (blur > 0.0 && u_blurReady > 0.5) base = mix(base, sampleBlur(uv), blur);","#endif","#ifdef HF_STAGE_KUWAHARA"," float kuwahara = clamp(u_kuwahara, 0.0, 1.0);"," if (kuwahara > 0.0 && u_kuwaharaReady > 0.5) {"," base.rgb = mix(base.rgb, sampleKuwahara(uv), kuwahara);"," }","#endif"," return base;","}","float tapeTrackingBand(float y, float center, float width){"," float offset = fract(y - center + 0.5) - 0.5;"," float triangle = max(0.0, 1.0 - abs(offset) / max(width, 0.0001));"," return triangle * triangle * (3.0 - 2.0 * triangle);","}","vec4 sampleMedia(vec2 uv){"," float pixel = clamp(u_pixelate, 0.0, 1.0);"," vec2 sampleUv = uv;","#ifdef HF_STAGE_PIXELATE"," if (pixel > 0.0) {"," float blockSize = mix(1.0, 48.0, pixel);"," vec2 cells = max(u_resolution / blockSize, vec2(1.0));"," sampleUv = (floor(clamp(uv, vec2(0.0), vec2(0.999999)) * cells) + 0.5) / cells;"," }","#endif","#ifdef HF_STAGE_TAPE"," float tapeDamage = clamp(u_tapeDamage, 0.0, 1.0);"," float tapeTracking = clamp(u_tapeTracking, 0.0, 1.0);"," float tapeNoise = clamp(u_tapeNoise, 0.0, 1.0);"," float tapeTime = u_effectTime * mix(0.0, 2.0, clamp(u_tapeSpeed, 0.0, 1.0));"," float tapeFrame = floor(tapeTime * 60.0);"," float tapeLine = floor(sampleUv.y * u_resolution.y * 0.5);"," float lineJitter = (digitalHash(vec2(tapeLine, floor(tapeFrame * 0.5))) - 0.5) * 1.8 * tapeNoise;"," float slowWobble = sin(sampleUv.y * 32.0 + tapeTime * 2.6) * 0.55;"," float headSwitch = smoothstep(0.88, 1.0, sampleUv.y) * sin(sampleUv.y * 240.0 + tapeTime * 8.0) * 4.0;"," float trackingShift = tapeTrackingBand(sampleUv.y, fract(0.08 + tapeTime * 0.083), 0.035);"," trackingShift -= tapeTrackingBand(sampleUv.y, fract(0.28 + tapeTime * 0.061), 0.03) * 0.8;"," trackingShift += tapeTrackingBand(sampleUv.y, fract(0.5 + tapeTime * 0.047), 0.04) * 0.75;"," trackingShift -= tapeTrackingBand(sampleUv.y, fract(0.72 + tapeTime * 0.037), 0.028) * 0.65;"," trackingShift += tapeTrackingBand(sampleUv.y, fract(0.89 + tapeTime * 0.029), 0.032) * 0.55;"," trackingShift *= tapeTracking * 48.0;"," float tapeShift = (lineJitter + slowWobble + headSwitch + trackingShift) * tapeDamage;","#endif"," float texelX = 1.0 / max(u_resolution.x * max(u_uvScale.x, 0.00001), 1.0);","#ifdef HF_STAGE_TAPE"," vec2 tapeUv = sampleUv + vec2(tapeShift * texelX, 0.0);","#else"," vec2 tapeUv = sampleUv;","#endif"," vec4 base = samplePrepared(tapeUv);","#ifdef HF_STAGE_TAPE"," if (tapeDamage > 0.0) {"," vec2 lumaStep = vec2(texelX * mix(1.0, 3.5, tapeDamage), 0.0);"," vec3 leftTape = samplePrepared(tapeUv - lumaStep).rgb;"," vec3 rightTape = samplePrepared(tapeUv + lumaStep).rgb;"," float tapeLuma = (bt601Luma(leftTape) + bt601Luma(base.rgb) * 2.0 + bt601Luma(rightTape)) * 0.25;"," vec3 centerChroma = base.rgb - vec3(bt601Luma(base.rgb));"," vec3 tapeColor = vec3(tapeLuma) + centerChroma;"," vec3 ghost = samplePrepared(tapeUv - vec2(texelX * 12.0, 0.0)).rgb;"," tapeColor = mix(tapeColor, ghost, 0.045 * tapeDamage);"," float fineNoise = digitalHash(floor(gl_FragCoord.xy) + vec2(tapeFrame * 17.0, tapeFrame * 3.0)) - 0.5;"," float band = digitalHash(vec2(floor(sampleUv.y * 92.0), floor(tapeFrame / 3.0)));"," float dropout = smoothstep(0.985, 1.0, band) * (digitalHash(vec2(floor(sampleUv.x * 18.0), tapeLine)) - 0.5);"," tapeColor += (fineNoise * 0.035 + dropout * 0.12) * tapeDamage * tapeNoise;"," base.rgb = mix(base.rgb, clamp(tapeColor, 0.0, 1.0), tapeDamage);"," }","#endif","#ifdef HF_STAGE_CHROMA_BLEED"," float chromaBleed = clamp(u_chromaBleed, 0.0, 1.0);"," if (chromaBleed > 0.0) {"," float radius = mix(1.0, 4.0, chromaBleed);"," vec2 stepUv = vec2(texelX * radius, 0.0);"," vec3 c0 = base.rgb;"," vec3 c1 = samplePrepared(tapeUv - stepUv).rgb;"," vec3 c2 = samplePrepared(tapeUv + stepUv).rgb;"," vec3 c3 = samplePrepared(tapeUv - stepUv * 2.0).rgb;"," vec3 c4 = samplePrepared(tapeUv + stepUv * 2.0).rgb;"," float centerLuma = lumaOf(base.rgb);"," vec3 blurredChroma = ((c0 - vec3(lumaOf(c0))) * 6.0 + (c1 - vec3(lumaOf(c1))) * 4.0 + (c2 - vec3(lumaOf(c2))) * 4.0 + (c3 - vec3(lumaOf(c3))) + (c4 - vec3(lumaOf(c4)))) / 16.0;"," base.rgb = mix(base.rgb, clamp(vec3(centerLuma) + blurredChroma, 0.0, 1.0), chromaBleed);"," }","#endif"," return base;","}","#ifdef HF_STAGE_CHROMATIC","vec4 sampleChromaticMedia(vec2 uv, vec4 center){"," float amount = clamp(u_chromaticAberration, 0.0, 1.0);"," if (amount <= 0.0) return center;"," float angle = clamp(u_chromaticAngle, 0.0, 1.0) * PI * 2.0;"," vec2 offset = vec2(cos(angle), sin(angle)) * amount * 0.02;"," vec4 positive = sampleMedia(uv + offset);"," vec4 negative = sampleMedia(uv - offset);"," vec3 split = vec3(positive.r, center.g, negative.b);"," return vec4(split, center.a);","}","#else","vec4 sampleChromaticMedia(vec2 uv, vec4 center){ return center; }","#endif","vec3 sampleDigitalSplit(vec2 uv, vec2 block, float time, float amount){"," float split = amount * 0.06;"," float direction = digitalHash(block * 0.4 + vec2(floor(time * 3.7), floor(time * 5.3)));"," vec2 axis = direction > 0.66 ? vec2(1.0, 0.0) : direction > 0.33 ? vec2(0.0, 1.0) : vec2(0.7071);"," vec4 center = sampleMedia(uv);"," return vec3(sampleMedia(uv + axis * split).r, center.g, sampleMedia(uv - axis * split).b);","}","#ifdef HF_STAGE_GLITCH","vec3 applyDigitalGlitch(vec2 uv, vec3 source){"," float amount = clamp(u_digitalGlitch, 0.0, 1.0);"," if (amount <= 0.0) return source;"," float colorSplit = clamp(u_digitalGlitchColorSplit, 0.0, 1.0) * 2.0;"," float lineTear = clamp(u_digitalGlitchLineTear, 0.0, 1.0) * 2.0;"," float pixelate = clamp(u_digitalGlitchPixelate, 0.0, 1.0) * 2.0;"," float blockAmount = clamp(u_digitalGlitchBlockAmount, 0.0, 1.0);"," float blockDisplacement = clamp(u_digitalGlitchBlockDisplacement, 0.0, 1.0) * 2.0;"," float blockOpacity = clamp(u_digitalGlitchBlockOpacity, 0.0, 1.0);"," float speed = clamp(u_digitalGlitchSpeed, 0.0, 1.0) * 2.0;"," float time = u_effectTime * speed;"," float blockCount = 8.0 + blockAmount * 60.0;"," vec2 block = floor(uv * blockCount);"," float randomA = digitalHash(block + vec2(floor(time * 7.3), floor(time * 11.1)));"," float randomB = digitalHash(block * 0.7 + vec2(17.3 + floor(time * 6.6), 29.1));"," float randomC = digitalHash(block + vec2(floor(time * 5.7) * 13.0, 41.0));"," float randomD = digitalHash(block * 1.3 + vec2(7.0, floor(time * 3.2) * 7.0));"," vec2 displaced = uv;"," if (blockDisplacement > 0.0 && blockOpacity > 0.0) {"," float threshold = 1.0 - blockDisplacement * 0.4;"," if (randomA > threshold) {"," displaced += vec2((randomB - 0.5) * blockDisplacement * 0.5, (randomC - 0.5) * blockDisplacement * 0.3);"," }"," if (randomD > 0.92 && blockDisplacement > 0.5) {"," displaced.x += (digitalHash(vec2(block.y, floor(time * 8.0))) - 0.5) * blockDisplacement;"," }"," displaced = mix(uv, displaced, blockOpacity);"," }"," if (lineTear > 0.0) {"," float row = floor(uv.y * (50.0 + lineTear * 150.0));"," float tearA = digitalHash(vec2(row * 7.3 + floor(time * 12.0 + row * 0.1) * 3.7, 13.0));"," float tearB = digitalHash(vec2(row * 13.7 + floor(time * 8.3) * 5.1, 31.0));"," if (tearA > 1.0 - lineTear * 0.5) displaced.x += (tearB - 0.5) * lineTear * 0.4;"," if (tearB > 0.95 && lineTear > 0.3) displaced.x += (tearA - 0.5) * lineTear * 0.8;"," }"," if (pixelate > 0.0) {"," float pixelRandom = digitalHash(block * 0.5 + vec2(floor(time * 4.9), 53.0));"," if (pixelRandom > 1.0 - pixelate * 0.35) {"," float cells = 4.0 + (1.0 - pixelRandom) * pixelate * 40.0;"," displaced = (floor(clampUv(displaced) * cells) + 0.5) / cells;"," }"," }"," displaced = clampUv(displaced);"," vec3 glitch = sampleDigitalSplit(displaced, block, time, colorSplit);"," if (blockDisplacement > 0.2 && blockOpacity > 0.0) {"," float corruption = digitalHash(block * 1.1 + vec2(floor(time * 11.9), 67.0));"," vec3 changed = glitch;"," if (corruption > 0.9) changed = 1.0 - glitch;"," else if (corruption > 0.85) changed = corruption > 0.875 ? glitch.gbr : glitch.brg;"," else if (corruption > 0.8) {"," float channel = digitalHash(block + vec2(73.0));"," if (channel > 0.66) changed.r = min(changed.r * 2.0, 1.0);"," else if (channel > 0.33) changed.g = min(changed.g * 2.0, 1.0);"," else changed.b = min(changed.b * 2.0, 1.0);"," }"," glitch = mix(glitch, changed, blockOpacity);"," }"," if (blockOpacity > 0.0) {"," float flash = digitalHash(block * 0.8 + vec2(floor(time * 14.7), 83.0));"," vec3 flashed = flash > 0.97 ? min(glitch * 1.8, vec3(1.0)) : flash > 0.94 ? glitch * 0.3 : glitch;"," glitch = mix(glitch, flashed, blockOpacity * 0.6);"," }"," if (lineTear > 0.1) {"," float interference = pow(sin(uv.y * (300.0 + randomA * 200.0) + time * 30.0) * 0.5 + 0.5, 6.0);"," glitch -= interference * 0.08 * lineTear;"," }"," return mix(source, clamp(glitch, 0.0, 1.0), amount);","}","#else","vec3 applyDigitalGlitch(vec2 uv, vec3 source){ return source; }","#endif","float dustMask(vec2 uv, float frameBucket){"," vec2 grid = vec2(128.0, 72.0);"," vec2 cell = floor(uv * grid);"," vec2 local = fract(uv * grid) - 0.5;"," float chance = grainHash(cell + frameBucket * 19.13);"," float radius = mix(0.05, 0.34, grainHash(cell + 7.1));"," return step(0.9975, chance) * (1.0 - smoothstep(radius, radius + 0.08, length(local)));","}","float screenDot(vec2 p, float ink, float angle, float sharpness){"," float c = cos(angle);"," float s = sin(angle);"," vec2 q = mat2(c, -s, s, c) * p;"," vec2 d = fract(q) - 0.5;"," float radius = sqrt(clamp(ink, 0.0, 1.0)) * 0.68;"," float edge = mix(0.16, 0.025, sharpness);"," return 1.0 - smoothstep(radius - edge, radius + edge, length(d));","}","vec3 paletteColor(float index);","float monoScreenMask(vec2 local, float radius, float shape, float softness){"," vec2 centered = local - 0.5;"," float distanceToInk = length(centered);"," if (shape > 0.5 && shape < 1.5) distanceToInk = max(abs(centered.x), abs(centered.y));"," if (shape > 1.5 && shape < 2.5) distanceToInk = abs(centered.x) + abs(centered.y);"," if (shape > 2.5 && shape < 3.5) distanceToInk = max(abs(centered.x) * 0.86 + centered.y * 0.5, -centered.y);"," if (shape > 3.5) distanceToInk = abs(centered.y);"," float shapeRadius = shape > 3.5 ? radius * 0.45 : radius;"," return 1.0 - smoothstep(shapeRadius, shapeRadius + softness, distanceToInk);","}","#ifdef HF_STAGE_MONO_SCREEN","vec3 applyMonoScreen(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float invert = step(0.5, u_monoScreenInvert);"," float coverage = mix(1.0 - lumaOf(source), lumaOf(source), invert);"," coverage = pow(clamp(coverage, 0.0, 1.0), mix(1.7, 0.58, clamp(u_monoScreenSpread, 0.0, 1.0)));"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float cellPx = mix(4.0, 18.0, clamp(u_monoScreenSize, 0.0, 1.0)) * scale;"," float angle = clamp(u_monoScreenAngle, 0.0, 1.0) * PI * 0.5;"," float cosine = cos(angle);"," float sine = sin(angle);"," vec2 point = mat2(cosine, -sine, sine, cosine) * gl_FragCoord.xy / max(cellPx, 1.0);"," float radius = sqrt(coverage) * 0.68;"," float inkMask = monoScreenMask(fract(point), radius, floor(u_monoScreenShape + 0.5), 0.035);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," return mix(source, mix(paper, ink, inkMask), amount);","}","#else","vec3 applyMonoScreen(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_ENGRAVING","vec3 applyEngraving(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float spacing = mix(3.0, 20.0, clamp(u_engravingSpacing, 0.0, 1.0));"," float minThickness = mix(0.0, 2.0, clamp(u_engravingMinThickness, 0.0, 1.0));"," float maxThickness = mix(1.0, 8.0, clamp(u_engravingMaxThickness, 0.0, 1.0));"," float angle = clamp(u_engravingAngle, 0.0, 1.0) * PI;"," vec2 alongAxis = vec2(cos(angle), sin(angle));"," vec2 acrossAxis = vec2(-alongAxis.y, alongAxis.x);"," float along = dot(gl_FragCoord.xy, alongAxis);"," float across = dot(gl_FragCoord.xy, acrossAxis);"," float frequency = mix(1.0, 10.0, clamp(u_engravingWaveFrequency, 0.0, 1.0));"," float wave = sin(along * frequency * 0.01);"," across += wave * clamp(u_engravingWave, 0.0, 1.0) * 3.0;"," float lineIndex = floor(across / max(spacing, 1.0));"," float lineDistance = abs(fract(across / max(spacing, 1.0)) - 0.5) * spacing;"," float contrast = mix(0.5, 2.0, clamp(u_engravingContrast, 0.0, 1.0));"," float darkness = 1.0 - pow(clamp(lumaOf(source), 0.0, 1.0), contrast);"," float variation = mix(0.88, 1.12, digitalHash(vec2(lineIndex, 73.0)));"," float thickness = mix(minThickness, maxThickness, darkness) * variation;"," float edge = mix(1.0, 0.3, clamp(u_engravingSharpness, 0.0, 1.0));"," float inkMask = 1.0 - smoothstep(max(thickness * 0.5 - edge, 0.0), thickness * 0.5 + edge, lineDistance);"," inkMask *= smoothstep(0.015, 0.12, darkness);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," return mix(source, mix(paper, ink, inkMask), amount);","}","#else","vec3 applyEngraving(vec3 source, float amount){ return source; }","#endif","float crosshatchLine(vec2 pixel, float angle, float spacing, float thickness, float seed){"," vec2 alongAxis = vec2(cos(angle), sin(angle));"," vec2 acrossAxis = vec2(-alongAxis.y, alongAxis.x);"," float along = dot(pixel, alongAxis);"," float across = dot(pixel, acrossAxis);"," float frequency = mix(1.0, 10.0, clamp(u_crosshatchWaveFrequency, 0.0, 1.0));"," across += sin(along * frequency * 0.02 + u_effectTime + seed) * clamp(u_crosshatchWave, 0.0, 1.0) * 5.0;"," float lineIndex = floor(across / max(spacing, 1.0));"," float distanceToLine = abs(fract(across / max(spacing, 1.0)) - 0.5) * spacing;"," float variation = mix(1.0, 0.5 + digitalHash(vec2(lineIndex, seed)), clamp(u_crosshatchLineWeight, 0.0, 1.0));"," float halfWidth = thickness * variation * 0.5;"," return 1.0 - smoothstep(max(halfWidth - 0.5, 0.0), halfWidth + 0.5, distanceToLine);","}","float crosshatchEdge(vec2 uv){"," vec2 texel = 1.0 / max(u_resolution * u_uvScale, vec2(1.0));"," float tl = lumaOf(sampleMedia(uv + texel * vec2(-1.0, -1.0)).rgb);"," float tc = lumaOf(sampleMedia(uv + texel * vec2( 0.0, -1.0)).rgb);"," float tr = lumaOf(sampleMedia(uv + texel * vec2( 1.0, -1.0)).rgb);"," float ml = lumaOf(sampleMedia(uv + texel * vec2(-1.0, 0.0)).rgb);"," float mr = lumaOf(sampleMedia(uv + texel * vec2( 1.0, 0.0)).rgb);"," float bl = lumaOf(sampleMedia(uv + texel * vec2(-1.0, 1.0)).rgb);"," float bc = lumaOf(sampleMedia(uv + texel * vec2( 0.0, 1.0)).rgb);"," float br = lumaOf(sampleMedia(uv + texel * vec2( 1.0, 1.0)).rgb);"," float gx = -tl - 2.0 * ml - bl + tr + 2.0 * mr + br;"," float gy = -tl - 2.0 * tc - tr + bl + 2.0 * bc + br;"," return length(vec2(gx, gy));","}","#ifdef HF_STAGE_CROSSHATCH","vec3 applyCrosshatch(vec2 uv, vec3 source, float amount){"," if (amount <= 0.0) return source;"," float spacing = mix(5.0, 30.0, clamp(u_crosshatchSpacing, 0.0, 1.0));"," float thickness = mix(1.0, 5.0, clamp(u_crosshatchThickness, 0.0, 1.0));"," float baseAngle = -clamp(u_crosshatchAngle, 0.0, 1.0) * PI;"," float contrast = mix(0.5, 2.0, clamp(u_crosshatchContrast, 0.0, 1.0));"," float darkness = 1.0 - pow(clamp(lumaOf(source), 0.0, 1.0), contrast);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," vec3 result = paper;"," float layer = crosshatchLine(gl_FragCoord.xy, baseAngle, spacing, thickness, 1.0) * smoothstep(0.2, 0.4, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle + PI * 0.5, spacing * 0.95, thickness * 0.9, 2.0) * smoothstep(0.4, 0.6, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle + PI * 0.25, spacing * 0.9, thickness * 0.8, 3.0) * smoothstep(0.6, 0.8, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle - PI * 0.25, spacing * 0.85, thickness * 0.7, 4.0) * smoothstep(0.75, 0.9, darkness);"," result = mix(result, ink, layer);"," result = mix(result, ink, smoothstep(0.9, 1.0, darkness) * 0.8);"," float edgeStrength = mix(0.0, 2.0, clamp(u_crosshatchEdges, 0.0, 1.0));"," float edge = smoothstep(0.1, 0.3, crosshatchEdge(uv)) * edgeStrength;"," result = mix(result, ink, clamp(edge, 0.0, 1.0));"," return mix(source, result, amount);","}","#else","vec3 applyCrosshatch(vec2 uv, vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_HALFTONE","vec3 applyHalftone(vec3 source, float amount){"," if (amount <= 0.0) return source;"," vec3 cmy = 1.0 - source;"," float k = min(cmy.r, min(cmy.g, cmy.b));"," vec3 inks = max(cmy - vec3(k * 0.72), 0.0);"," float scale = min(u_resolution.x, u_resolution.y) / 540.0;"," float cellPx = mix(5.0, 14.0, clamp(u_halftoneSize, 0.0, 1.0)) * max(scale, 0.25);"," vec2 p = gl_FragCoord.xy / max(cellPx, 1.0);"," float cyan = screenDot(p, inks.r, 0.261799, 0.78);"," float magenta = screenDot(p, inks.g, 1.308997, 0.78);"," float yellow = screenDot(p, inks.b, 0.0, 0.78);"," float blackInk = screenDot(p, k, 0.785398, 0.82);"," vec3 printColor = vec3(0.975, 0.962, 0.925);"," printColor *= mix(vec3(1.0), vec3(0.05, 0.79, 0.86), cyan);"," printColor *= mix(vec3(1.0), vec3(0.91, 0.08, 0.48), magenta);"," printColor *= mix(vec3(1.0), vec3(0.98, 0.83, 0.08), yellow);"," printColor *= mix(vec3(1.0), vec3(0.035), blackInk * 0.92);"," return mix(source, printColor, amount);","}","#else","vec3 applyHalftone(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_TWO_INK_PRINT","vec3 applyTwoInkPrint(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float sourceLuma = lumaOf(source);"," float darkness = 1.0 - sourceLuma;"," float warmBias = clamp(source.r - (source.g + source.b) * 0.5, -0.35, 0.35);"," float coolBias = clamp((source.g + source.b) * 0.5 - source.r, -0.35, 0.35);"," float redTone = smoothstep(0.08, 0.72, darkness) * (1.0 - 0.68 * smoothstep(0.66, 1.0, darkness));"," float tealTone = smoothstep(0.30, 0.92, darkness);"," float redCoverage = clamp(redTone + warmBias * 1.35 - coolBias * 0.35, 0.0, 1.0);"," float tealCoverage = clamp(tealTone + coolBias * 1.1 - warmBias * 0.45, 0.0, 1.0);"," float scale = min(u_resolution.x, u_resolution.y) / 540.0;"," float cellPx = mix(4.5, 12.0, clamp(u_twoInkPrintSize, 0.0, 1.0)) * max(scale, 0.25);"," vec2 p = gl_FragCoord.xy / max(cellPx, 1.0);"," float redDot = screenDot(p, redCoverage, 0.261799, 0.84);"," float tealDot = screenDot(p + vec2(0.12, -0.08), tealCoverage, 1.308997, 0.84);"," float paperNoise = grainHash(floor(gl_FragCoord.xy * 0.5)) - 0.5;"," vec3 paper = vec3(0.955, 0.910, 0.795) + paperNoise * 0.018;"," vec3 vermilion = vec3(0.88, 0.13, 0.075);"," vec3 teal = vec3(0.035, 0.285, 0.355);"," vec3 overprint = vec3(0.045, 0.055, 0.052);"," vec3 printColor = paper * (1.0 - redDot) * (1.0 - tealDot);"," printColor += vermilion * redDot * (1.0 - tealDot);"," printColor += teal * (1.0 - redDot) * tealDot;"," printColor += overprint * redDot * tealDot;"," return mix(source, clamp(printColor, 0.0, 1.0), amount);","}","#else","vec3 applyTwoInkPrint(vec3 source, float amount){ return source; }","#endif","vec3 paletteColor(float index){"," if (index < 0.5) return u_palette0;"," if (index < 1.5) return u_palette1;"," if (index < 2.5) return u_palette2;"," if (index < 3.5) return u_palette3;"," if (index < 4.5) return u_palette4;"," return u_palette5;","}","float bayer4(vec2 point){"," vec2 cell = mod(floor(point), 4.0);"," if (cell.y < 0.5) {"," if (cell.x < 0.5) return 0.5 / 16.0;"," if (cell.x < 1.5) return 8.5 / 16.0;"," if (cell.x < 2.5) return 2.5 / 16.0;"," return 10.5 / 16.0;"," }"," if (cell.y < 1.5) {"," if (cell.x < 0.5) return 12.5 / 16.0;"," if (cell.x < 1.5) return 4.5 / 16.0;"," if (cell.x < 2.5) return 14.5 / 16.0;"," return 6.5 / 16.0;"," }"," if (cell.y < 2.5) {"," if (cell.x < 0.5) return 3.5 / 16.0;"," if (cell.x < 1.5) return 11.5 / 16.0;"," if (cell.x < 2.5) return 1.5 / 16.0;"," return 9.5 / 16.0;"," }"," if (cell.x < 0.5) return 15.5 / 16.0;"," if (cell.x < 1.5) return 7.5 / 16.0;"," if (cell.x < 2.5) return 13.5 / 16.0;"," return 5.5 / 16.0;","}","float standardAsciiSample(float brightness, vec2 grid){"," if (brightness < 0.1) return 0.0;"," if (brightness < 0.2) return grid.x == 2.0 && grid.y == 5.0 ? 1.0 : 0.0;"," if (brightness < 0.3) return grid.x == 2.0 && (grid.y == 2.0 || grid.y == 4.0) ? 1.0 : 0.0;"," if (brightness < 0.4) return (grid.y == 2.0 || grid.y == 4.0) && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.5) {"," bool cross = (grid.x == 2.0 && grid.y >= 2.0 && grid.y <= 4.0) || (grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0);"," bool diagonals = (grid.x == 1.0 || grid.x == 3.0) && (grid.y == 2.0 || grid.y == 4.0);"," return cross || diagonals ? 1.0 : 0.0;"," }"," if (brightness < 0.6) {"," bool ring = ((grid.y == 2.0 || grid.y == 4.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 1.0 || grid.x == 3.0) && grid.y == 3.0);"," return ring ? 1.0 : 0.0;"," }"," bool outline = ((grid.y == 1.0 || grid.y == 5.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 0.0 || grid.x == 4.0) && grid.y >= 2.0 && grid.y <= 4.0) || ((grid.x == 1.0 || grid.x == 3.0) && grid.y >= 1.0 && grid.y <= 5.0);"," if (brightness < 0.7) return outline ? 1.0 : 0.0;"," if (brightness < 0.8) {"," bool slash = abs(grid.x - 2.0) == abs(grid.y - 3.0) && grid.x >= 1.0 && grid.x <= 3.0;"," return outline || slash ? 1.0 : 0.0;"," }"," if (brightness < 0.9) {"," bool loops = ((grid.y == 1.0 || grid.y == 3.0 || grid.y == 5.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 1.0 || grid.x == 3.0) && (grid.y == 2.0 || grid.y == 4.0));"," return loops ? 1.0 : 0.0;"," }"," return 1.0;","}","float asciiStyleSample(float style, float brightness, vec2 uv){"," vec2 grid = floor(uv * vec2(5.0, 7.0));"," if (style < 0.5) return standardAsciiSample(brightness, grid);"," if (style < 1.5) {"," float checker = mod(grid.x + grid.y, 2.0);"," float ruled = mod(grid.x, 2.0) == 0.0 || mod(grid.y, 2.0) == 0.0 ? 1.0 : 0.0;"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return checker == 0.0 ? 0.5 : 0.0;"," if (brightness < 0.375) return ruled * 0.6;"," if (brightness < 0.5) return checker == 0.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return ruled > 0.5 ? 1.0 : 0.3;"," if (brightness < 0.75) return checker == 0.0 ? 1.0 : 0.7;"," if (brightness < 0.875) return ruled > 0.5 ? 1.0 : 0.85;"," return 1.0;"," }"," if (style < 2.5) {"," if (brightness < 0.14) return 0.0;"," if (brightness < 0.28) return grid.x == 2.0 && grid.y == 1.0 ? 1.0 : 0.0;"," if (brightness < 0.42) return grid.x == 2.0 && grid.y == 5.0 ? 1.0 : 0.0;"," if (brightness < 0.56) return grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.7) return (grid.x == 2.0 && grid.y >= 2.0 && grid.y <= 4.0) || (grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0) ? 1.0 : 0.0;"," if (brightness < 0.84) return abs(grid.x - 2.0) == abs(grid.y - 3.0) && grid.y >= 2.0 && grid.y <= 4.0 ? 1.0 : 0.0;"," return grid.x == 1.0 || grid.x == 3.0 || grid.y == 2.0 || grid.y == 4.0 ? 1.0 : 0.0;"," }"," if (style < 3.5) return grid.y >= 6.0 - brightness * 7.0 ? 1.0 : 0.0;"," if (style < 4.5) {"," vec2 dots = floor(uv * vec2(2.0, 4.0));"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return dots.y == 3.0 ? 1.0 : 0.0;"," if (brightness < 0.375) return dots.y >= 2.0 ? 1.0 : 0.0;"," if (brightness < 0.5) return dots.y >= 1.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return dots.y >= 1.0 || dots.x == 1.0 ? 1.0 : 0.0;"," if (brightness < 0.75) return 1.0;"," if (brightness < 0.875) return mod(grid.x + grid.y, 2.0) < 1.5 ? 1.0 : 0.7;"," return 1.0;"," }"," if (style < 5.5) {"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return grid.x == 2.0 && grid.y == 3.0 ? 1.0 : 0.0;"," if (brightness < 0.375) return grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.5) return grid.x + grid.y == 5.0 || grid.x + grid.y == 6.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return grid.x == 2.0 ? 1.0 : 0.0;"," if (brightness < 0.75) return abs(grid.x - grid.y / 1.4) < 0.7 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.875) return grid.x == 2.0 || grid.y == 3.0 ? 1.0 : 0.0;"," return grid.x == 1.0 || grid.x == 3.0 || grid.y == 2.0 || grid.y == 4.0 ? 1.0 : 0.0;"," }"," if (style < 6.5) {"," bool top = grid.y == 0.0 && grid.x >= 1.0 && grid.x <= 3.0;"," bool topLeft = grid.x == 1.0 && grid.y <= 3.0;"," bool topRight = grid.x == 3.0 && grid.y <= 3.0;"," bool middle = grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0;"," bool bottomLeft = grid.x == 1.0 && grid.y >= 3.0;"," bool bottomRight = grid.x == 3.0 && grid.y >= 3.0;"," bool bottom = grid.y == 6.0 && grid.x >= 1.0 && grid.x <= 3.0;"," if (brightness < 0.1) return 0.0;"," if (brightness < 0.2) return topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.3) return top || topRight || middle || bottomLeft || bottom ? 1.0 : 0.0;"," if (brightness < 0.4) return top || topRight || middle || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.5) return topLeft || middle || topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.6) return top || topLeft || middle || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.7) return top || topLeft || middle || bottomLeft || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.8) return top || topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.9) return top || topLeft || topRight || middle || bottomLeft || bottomRight || bottom ? 1.0 : 0.0;"," return top || topLeft || topRight || middle || bottomRight || bottom ? 1.0 : 0.0;"," }"," float slash = grid.x - grid.y;"," float backslash = grid.x + grid.y;"," if (brightness < 0.16) return 0.0;"," if (brightness < 0.33) return mod(slash, 3.0) < 0.5 ? 1.0 : 0.0;"," if (brightness < 0.5) return mod(slash, 2.0) < 0.5 ? 1.0 : 0.0;"," bool diagonalA = mod(slash, 2.0) < 0.5;"," bool diagonalB = mod(backslash, 2.0) < 0.5;"," if (brightness < 0.66) return diagonalA || diagonalB ? 1.0 : 0.0;"," if (brightness < 0.83) return mod(slash, 1.5) < 0.5 || mod(backslash, 1.5) < 0.5 ? 1.0 : 0.2;"," return mod(slash, 1.0) < 0.6 || mod(backslash, 1.0) < 0.6 ? 1.0 : 0.5;","}","vec3 rgbToHsv(vec3 color){"," float maximum = max(max(color.r, color.g), color.b);"," float minimum = min(min(color.r, color.g), color.b);"," float delta = maximum - minimum;"," float hue = 0.0;"," if (delta > 0.00001) {"," if (maximum == color.r) hue = mod((color.g - color.b) / delta, 6.0);"," else if (maximum == color.g) hue = (color.b - color.r) / delta + 2.0;"," else hue = (color.r - color.g) / delta + 4.0;"," hue = fract(hue / 6.0);"," }"," return vec3(hue, maximum > 0.00001 ? delta / maximum : 0.0, maximum);","}","vec3 hsvToRgb(vec3 color){"," vec3 bands = abs(fract(color.xxx + vec3(0.0, 0.6666667, 0.3333333)) * 6.0 - 3.0);"," return color.z * mix(vec3(1.0), clamp(bands - 1.0, 0.0, 1.0), color.y);","}","vec4 sampleAdvancedCurve(float coordinate, float row){",` float position = clamp(coordinate, 0.0, 1.0) * ${Kx};`," float lower = floor(position);",` float upper = min(lower + 1.0, ${Kx});`,` float y = (row + 0.5) / ${PM};`,` vec4 before = texture2D(u_advanced, vec2((lower + 0.5) / ${hd}, y));`,` vec4 after = texture2D(u_advanced, vec2((upper + 0.5) / ${hd}, y));`," return mix(before, after, position - lower);","}","vec4 advancedConfig(float index){",` return texture2D(u_advanced, vec2((index + 0.5) / ${hd}, ${OM}));`,"}","vec3 wheelDirection(float hue){"," vec3 direction = hsvToRgb(vec3(fract(hue), 1.0, 1.0));"," direction -= vec3(lumaOf(direction));"," return direction / max(max(max(abs(direction.r), abs(direction.g)), abs(direction.b)), 0.0001);","}","vec3 applyTonalWheels(vec3 color){"," float luma = lumaOf(color);"," float shadows = 1.0 - smoothstep(0.0, 0.6, luma);"," float highlights = smoothstep(0.4, 1.0, luma);"," float midtones = max(0.0, 1.0 - shadows - highlights);"," float total = max(shadows + midtones + highlights, 0.0001);"," vec3 weights = vec3(shadows, midtones, highlights) / total;"," color += wheelDirection(u_shadowWheel.x) * u_shadowWheel.y * weights.x * 0.18;"," color += wheelDirection(u_midtoneWheel.x) * u_midtoneWheel.y * weights.y * 0.18;"," color += wheelDirection(u_highlightWheel.x) * u_highlightWheel.y * weights.z * 0.18;"," color += u_shadowWheel.z * weights.x * 0.25;"," color += u_midtoneWheel.z * weights.y * 0.25;"," color += u_highlightWheel.z * weights.z * 0.25;"," return color;","}","#ifdef HF_STAGE_RGB_CURVES","vec3 applyRgbCurves(vec3 color){"," if (u_rgbCurvesEnabled < 0.5) return color;"," vec3 master = vec3("," sampleAdvancedCurve(color.r, 0.0).a,"," sampleAdvancedCurve(color.g, 0.0).a,"," sampleAdvancedCurve(color.b, 0.0).a"," );"," return vec3("," sampleAdvancedCurve(master.r, 0.0).r,"," sampleAdvancedCurve(master.g, 0.0).g,"," sampleAdvancedCurve(master.b, 0.0).b"," );","}","#else","vec3 applyRgbCurves(vec3 color){ return color; }","#endif","float decodeSigned(float value){ return (value * 255.0 - 128.0) / 127.0; }","#ifdef HF_STAGE_HUE_CURVES","vec3 applyHueCurves(vec3 color){"," if (u_hueCurvesEnabled < 0.5) return color;"," vec3 hsv = rgbToHsv(clamp(color, 0.0, 1.0));"," vec3 curves = sampleAdvancedCurve(hsv.x, 1.0).rgb;"," float originalLuma = lumaOf(color);"," hsv.x = fract(hsv.x + decodeSigned(curves.r) * 0.5);"," hsv.y = clamp(hsv.y * max(0.0, 1.0 + decodeSigned(curves.g)), 0.0, 1.0);"," vec3 shifted = hsvToRgb(hsv);"," shifted += vec3(originalLuma - lumaOf(shifted) + decodeSigned(curves.b));"," return shifted;","}","#else","vec3 applyHueCurves(vec3 color){ return color; }","#endif","float softRangeMask(float value, float minimum, float maximum, float softness){"," if (value < minimum) {"," if (softness <= 0.0) return 0.0;"," return smoothstep(minimum - softness, minimum, value);"," }"," if (value > maximum) {"," if (softness <= 0.0) return 0.0;"," return 1.0 - smoothstep(maximum, maximum + softness, value);"," }"," return 1.0;","}","float hueRangeMask(float hue, float saturation, vec3 key){"," float distance = abs(fract(hue - key.x + 0.5) - 0.5) * 360.0;"," float range = key.y * 180.0;"," float softness = key.z * 180.0;"," if (range < 179.999 && saturation < 0.001) return 0.0;"," if (distance <= range) return 1.0;"," if (softness <= 0.0) return 0.0;"," return 1.0 - smoothstep(range, range + softness, distance);","}","vec3 applySecondary(vec3 color, float index){"," float base = index * 5.0;"," vec4 hueKey = advancedConfig(base);"," vec4 saturationKey = advancedConfig(base + 1.0);"," vec4 lumaKey = advancedConfig(base + 2.0);"," vec4 correction = advancedConfig(base + 3.0);"," vec4 tintCorrection = advancedConfig(base + 4.0);"," vec3 hsv = rgbToHsv(clamp(color, 0.0, 1.0));"," float luma = lumaOf(color);"," float mask = hueRangeMask(hsv.x, hsv.y, hueKey.rgb);"," mask *= softRangeMask(hsv.y, saturationKey.x, saturationKey.y, saturationKey.z * 0.5);"," mask *= softRangeMask(luma, lumaKey.x, lumaKey.y, lumaKey.z * 0.5);"," if (mask <= 0.0) return color;"," hsv.x = fract(hsv.x + decodeSigned(correction.x) * 0.5);"," vec3 corrected = hsvToRgb(hsv);"," float correctedLuma = lumaOf(corrected);"," corrected = mix(vec3(correctedLuma), corrected, max(0.0, 1.0 + decodeSigned(correction.y)));"," corrected += vec3(decodeSigned(correction.z));"," float temperature = decodeSigned(correction.w);"," float tint = decodeSigned(tintCorrection.x);"," corrected.r += temperature * 0.08 + tint * 0.04;"," corrected.b -= temperature * 0.08 - tint * 0.04;"," corrected.g -= tint * 0.08;"," return mix(color, corrected, mask);","}","vec3 applyAdvancedGrade(vec3 color){"," color = applyTonalWheels(color);"," color = applyRgbCurves(color);"," color = applyHueCurves(color);","#ifdef HF_STAGE_SECONDARIES"," if (u_secondaryCount > 0.5) color = applySecondary(color, 0.0);"," if (u_secondaryCount > 1.5) color = applySecondary(color, 1.0);"," if (u_secondaryCount > 2.5) color = applySecondary(color, 2.0);"," if (u_secondaryCount > 3.5) color = applySecondary(color, 3.0);","#endif"," return color;","}","vec3 sampleLut(float r, float g, float b){"," float size = max(u_lutSize, 2.0);"," float x = (r + b * size + 0.5) / max(u_lutTextureSize.x, 1.0);"," float y = (g + 0.5) / max(u_lutTextureSize.y, 1.0);"," return texture2D(u_lut, vec2(x, y)).rgb;","}","#ifdef HF_STAGE_LUT","vec3 applyLut(vec3 color){"," if (u_lutEnabled < 0.5) return color;"," float size = max(u_lutSize, 2.0);"," vec3 span = max(u_lutDomainMax - u_lutDomainMin, vec3(0.00001));"," vec3 scaled = clamp((color - u_lutDomainMin) / span, 0.0, 1.0) * (size - 1.0);"," vec3 lo = floor(scaled);"," vec3 hi = min(lo + 1.0, vec3(size - 1.0));"," vec3 f = scaled - lo;"," vec3 c000 = sampleLut(lo.r, lo.g, lo.b);"," vec3 c100 = sampleLut(hi.r, lo.g, lo.b);"," vec3 c010 = sampleLut(lo.r, hi.g, lo.b);"," vec3 c110 = sampleLut(hi.r, hi.g, lo.b);"," vec3 c001 = sampleLut(lo.r, lo.g, hi.b);"," vec3 c101 = sampleLut(hi.r, lo.g, hi.b);"," vec3 c011 = sampleLut(lo.r, hi.g, hi.b);"," vec3 c111 = sampleLut(hi.r, hi.g, hi.b);"," vec3 c00 = mix(c000, c100, f.r);"," vec3 c10 = mix(c010, c110, f.r);"," vec3 c01 = mix(c001, c101, f.r);"," vec3 c11 = mix(c011, c111, f.r);"," vec3 c0 = mix(c00, c10, f.g);"," vec3 c1 = mix(c01, c11, f.g);"," vec3 lutColor = mix(c0, c1, f.b);"," return mix(color, lutColor, clamp(u_lutIntensity, 0.0, 1.0));","}","#else","vec3 applyLut(vec3 color){ return color; }","#endif","vec3 applyPrimaryGrade(vec3 color){"," color *= pow(2.0, u_exposure);"," float y = lumaOf(color);"," float shadowMask = 1.0 - smoothstep(0.0, 0.65, y);"," float highlightMask = smoothstep(0.35, 1.0, y);"," color += u_shadows * 0.35 * shadowMask;"," color += u_highlights * 0.35 * highlightMask;"," float blackPoint = clamp(u_blacks * 0.18, -0.18, 0.18);"," float whitePoint = clamp(1.0 - u_whites * 0.18, 0.82, 1.18);"," color = (color - blackPoint) / max(whitePoint - blackPoint, 0.2);"," color.r += u_temperature * 0.08 + u_tint * 0.04;"," color.b -= u_temperature * 0.08 - u_tint * 0.04;"," color.g -= u_tint * 0.08;"," color = (color - 0.5) * max(0.0, 1.0 + u_contrast) + 0.5;"," float satLuma = lumaOf(color);"," float currentSat = clamp(colorSaturation(color), 0.0, 1.0);"," float skinLike = smoothstep(0.02, 0.18, color.r - color.g) * smoothstep(0.0, 0.16, color.g - color.b) * smoothstep(0.18, 0.82, satLuma);"," float vibranceWeight = (1.0 - currentSat * 0.72) * mix(1.0, 0.55, skinLike);"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_vibrance * vibranceWeight));"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_saturation));"," return color;","}","vec3 applyColorGrade(vec3 color){"," color = applyPrimaryGrade(color);"," color = applyAdvancedGrade(color);"," return clamp(applyLut(clamp(color, 0.0, 1.0)), 0.0, 1.0);","}","#ifdef HF_STAGE_DITHER","vec3 applyDither(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float pixelSize = mix(1.0, 5.0, clamp(u_ditherSize, 0.0, 1.0)) * scale;"," vec2 block = floor(gl_FragCoord.xy / max(pixelSize, 1.0));"," float levels = clamp(u_paletteSize, 2.0, 6.0);"," float index = floor(clamp(lumaOf(source) * (levels - 1.0) + bayer4(block), 0.0, levels - 1.0));"," return mix(source, paletteColor(index), amount);","}","#else","vec3 applyDither(vec3 source, float amount){ return source; }","#endif","vec2 asciiEdgeDirection(vec2 uv, vec2 stepUv){"," float topLeft = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, -stepUv.y)).rgb);"," float top = bt601Luma(sampleMedia(uv + vec2(0.0, -stepUv.y)).rgb);"," float topRight = bt601Luma(sampleMedia(uv + vec2(stepUv.x, -stepUv.y)).rgb);"," float left = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, 0.0)).rgb);"," float right = bt601Luma(sampleMedia(uv + vec2(stepUv.x, 0.0)).rgb);"," float bottomLeft = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, stepUv.y)).rgb);"," float bottom = bt601Luma(sampleMedia(uv + vec2(0.0, stepUv.y)).rgb);"," float bottomRight = bt601Luma(sampleMedia(uv + stepUv).rgb);"," float x = -topLeft - 2.0 * left - bottomLeft + topRight + 2.0 * right + bottomRight;"," float y = -topLeft - 2.0 * top - topRight + bottomLeft + 2.0 * bottom + bottomRight;"," return vec2(x, y);","}","vec2 rotateAsciiUv(vec2 uv, float angle){"," float cosine = cos(angle);"," float sine = sin(angle);"," vec2 centered = uv - 0.5;"," return vec2(centered.x * cosine - centered.y * sine, centered.x * sine + centered.y * cosine) + 0.5;","}","#ifdef HF_STAGE_ASCII","vec3 applyAscii(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float cellHeight = mix(4.0, 80.0, clamp(u_asciiSize, 0.0, 1.0)) * scale;"," vec2 cellSize = vec2(cellHeight);"," vec2 cell = floor(gl_FragCoord.xy / cellSize);"," vec2 cellVuv = (cell + 0.5) * cellSize / max(u_resolution, vec2(1.0));"," vec2 cellUv = (cellVuv - u_uvOffset) / u_uvScale;"," cellUv = applyCrtWarp(cellUv);"," vec3 cellColor = applyColorGrade(sampleMedia(cellUv).rgb);"," float brightness = bt601Luma(cellColor);"," float invert = step(0.5, u_asciiInvert);"," brightness = mix(brightness, 1.0 - brightness, invert);"," vec2 glyphUv = fract(gl_FragCoord.xy / cellSize);"," float rotation = clamp(u_asciiRotation, 0.0, 1.0);"," if (rotation > 0.0) {"," vec2 cellStepUv = cellSize / max(u_resolution * u_uvScale, vec2(1.0));"," vec2 edge = asciiEdgeDirection(cellUv, cellStepUv);"," if (length(edge) > 0.1) glyphUv = mix(glyphUv, rotateAsciiUv(glyphUv, atan(edge.y, edge.x)), rotation);"," }"," float ink = asciiStyleSample(floor(u_asciiStyle + 0.5), brightness, glyphUv);"," vec3 background = paletteColor(0.0);"," vec3 inkColor = mix(paletteColor(max(u_paletteSize - 1.0, 1.0)), cellColor, clamp(u_asciiColor, 0.0, 1.0));"," vec3 asciiColor = mix(background, inkColor, ink);"," return mix(source, asciiColor, amount);","}","#else","vec3 applyAscii(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_SCANLINES","vec3 applyScanlines(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float count = mix(50.0, 500.0, clamp(u_scanlineCount, 0.0, 1.0));"," float softness = clamp(u_scanlineSoftness, 0.0, 1.0);"," float wave = 0.5 + 0.5 * sin(v_uv.y * count * PI);"," float line = mix(1.0 - wave, pow(1.0 - wave, 2.2), softness);"," return source * (1.0 - line * amount);","}","#else","vec3 applyScanlines(vec3 source, float amount){ return source; }","#endif","void main(){"," vec2 uv = (v_uv - u_uvOffset) / u_uvScale;"," if (uv.x < 0.0 || uv.y < 0.0 || uv.x > 1.0 || uv.y > 1.0) {"," gl_FragColor = vec4(0.0);"," return;"," }"," vec4 originalSample = sampleSource(uv);"," uv = applyCrtWarp(uv);","#ifdef HF_STAGE_CRT"," vec2 displayEdge = smoothstep(vec2(0.0), vec2(0.006), uv) * (1.0 - smoothstep(vec2(0.994), vec2(1.0), uv));"," float displayMask = displayEdge.x * displayEdge.y;","#endif"," vec4 sampleColor = sampleMedia(uv);"," sampleColor = sampleChromaticMedia(uv, sampleColor);"," sampleColor.rgb = applyDigitalGlitch(uv, sampleColor.rgb);"," vec3 original = originalSample.rgb;"," vec3 color = mix(sampleColor.rgb, applyColorGrade(sampleColor.rgb), u_intensity);","#ifdef HF_STAGE_GRAIN"," float grainAmount = clamp(u_grain, 0.0, 1.0);"," if (grainAmount > 0.0) {"," float grainPixelSize = mix(1.0, 6.0, clamp(u_grainSize, 0.0, 1.0));"," vec2 grainCoord = floor(gl_FragCoord.xy / grainPixelSize) + vec2(u_grainSeed, u_grainSeed * 1.37);"," float grainBase = grainHash(grainCoord) - grainHash(grainCoord + vec2(19.19, 73.31));"," float grainFine = grainHash(gl_FragCoord.xy + vec2(u_grainSeed * 2.11, u_grainSeed * 0.71)) - 0.5;"," float grain = mix(grainBase * 0.7, grainBase + grainFine * 0.35, clamp(u_grainRoughness, 0.0, 1.0));"," float grainLuma = lumaOf(color);"," float grainMask = smoothstep(0.02, 0.55, grainLuma) * (1.0 - smoothstep(0.88, 1.0, grainLuma));"," color += grain * grainAmount * mix(0.025, 0.08, grainMask);"," }","#endif","#ifdef HF_STAGE_FILM_ARTIFACTS"," float filmArtifacts = clamp(u_filmArtifacts, 0.0, 1.0);"," if (filmArtifacts > 0.0) {"," float filmFrame = floor(u_grainSeed);"," float dust = dustMask(v_uv, floor(filmFrame / 3.0));"," float dustTone = grainHash(vec2(floor(filmFrame / 3.0), 8.0));"," color = mix(color, vec3(dustTone > 0.5 ? 0.95 : 0.02), dust * 0.72 * filmArtifacts);"," float scratchBucket = floor(filmFrame / 12.0);"," float scratchX = grainHash(vec2(scratchBucket, 4.2));"," float scratchLife = step(0.78, grainHash(vec2(scratchBucket, 8.4)));"," float scratch = (1.0 - smoothstep(0.0, 1.4 / max(u_resolution.x, 1.0), abs(v_uv.x - scratchX))) * scratchLife;"," color = mix(color, vec3(0.94, 0.88, 0.76), scratch * 0.28 * filmArtifacts);"," }","#endif"," color = applyMonoScreen(clamp(color, 0.0, 1.0), clamp(u_monoScreen, 0.0, 1.0));"," color = applyEngraving(clamp(color, 0.0, 1.0), clamp(u_engraving, 0.0, 1.0));"," color = applyCrosshatch(uv, clamp(color, 0.0, 1.0), clamp(u_crosshatch, 0.0, 1.0));"," color = applyHalftone(clamp(color, 0.0, 1.0), clamp(u_halftone, 0.0, 1.0));"," color = applyTwoInkPrint(clamp(color, 0.0, 1.0), clamp(u_twoInkPrint, 0.0, 1.0));"," color = applyDither(clamp(color, 0.0, 1.0), clamp(u_dither, 0.0, 1.0));"," color = applyAscii(clamp(color, 0.0, 1.0), clamp(u_ascii, 0.0, 1.0));","#ifdef HF_STAGE_BLOOM"," if (u_bloomReady > 0.5 && u_bloom > 0.0) color += sampleBloom(uv) * u_bloom;","#endif"," color = applyScanlines(clamp(color, 0.0, 1.0), clamp(u_scanlines, 0.0, 1.0));","#ifdef HF_STAGE_VIGNETTE"," vec2 vignetteAspect = u_resolution.x > u_resolution.y"," ? vec2(u_resolution.x / max(u_resolution.y, 1.0), 1.0)"," : vec2(1.0, u_resolution.y / max(u_resolution.x, 1.0));"," vec2 vignetteUv = abs((v_uv - vec2(0.5)) * 2.0) * vignetteAspect;"," float vignettePower = mix(8.0, 1.8, clamp(u_vignetteRoundness * 0.5 + 0.5, 0.0, 1.0));"," float vignetteDistance = pow(pow(vignetteUv.x, vignettePower) + pow(vignetteUv.y, vignettePower), 1.0 / vignettePower);"," float vignetteMidpoint = mix(0.22, 1.08, clamp(u_vignetteMidpoint, 0.0, 1.0));"," float vignetteFeather = mix(0.08, 0.72, clamp(u_vignetteFeather, 0.0, 1.0));"," float vignetteMask = smoothstep(vignetteMidpoint, vignetteMidpoint + vignetteFeather, vignetteDistance);"," color *= 1.0 - vignetteMask * clamp(u_vignette, 0.0, 1.0) * 0.75;","#endif","#ifdef HF_STAGE_CRT"," float warpActive = step(0.0001, u_crtCurvature);"," color *= mix(1.0, displayMask, warpActive);","#endif"," vec3 graded = clamp(color, 0.0, 1.0);","#ifdef HF_STAGE_COMPARE"," if (u_compareEnabled > 0.5) {"," float pos = clamp(u_comparePosition, 0.0, 1.0);"," float softness = max(u_compareSoftness, 0.00001);"," float afterMask = smoothstep(pos - softness, pos + softness, v_uv.x);"," vec3 splitColor = mix(original, graded, afterMask);"," float lineMask = 0.0;"," if (u_compareLineWidth > 0.0) {"," float lineWidth = max(u_compareLineWidth / max(u_resolution.x, 1.0), 0.00001);"," lineMask = 1.0 - smoothstep(lineWidth, lineWidth * 1.8, abs(v_uv.x - pos));"," }"," gl_FragColor = vec4(mix(splitColor, vec3(1.0), lineMask * 0.82), sampleColor.a);"," return;"," }","#endif"," gl_FragColor = vec4(graded, sampleColor.a);","}"].join(`
|
|
358
|
+
`),ay=[["HF_STAGE_BLUR",e=>e.effects.blur>0],["HF_STAGE_KUWAHARA",e=>e.effects.kuwahara>0],["HF_STAGE_PIXELATE",e=>e.effects.pixelate>0],["HF_STAGE_TAPE",e=>e.effects.tapeDamage>0],["HF_STAGE_CHROMA_BLEED",e=>e.effects.chromaBleed>0],["HF_STAGE_CHROMATIC",e=>e.effects.chromaticAberration>0],["HF_STAGE_CRT",e=>e.effects.crtCurvature>0],["HF_STAGE_GLITCH",e=>e.effects.digitalGlitch>0],["HF_STAGE_GRAIN",e=>e.details.grain>0],["HF_STAGE_FILM_ARTIFACTS",e=>e.effects.filmArtifacts>0],["HF_STAGE_MONO_SCREEN",e=>e.effects.monoScreen>0],["HF_STAGE_ENGRAVING",e=>e.effects.engraving>0],["HF_STAGE_CROSSHATCH",e=>e.effects.crosshatch>0],["HF_STAGE_HALFTONE",e=>e.effects.halftone>0],["HF_STAGE_TWO_INK_PRINT",e=>e.effects.twoInkPrint>0],["HF_STAGE_DITHER",e=>e.effects.dither>0],["HF_STAGE_ASCII",e=>e.effects.ascii>0],["HF_STAGE_BLOOM",e=>e.effects.bloom>0],["HF_STAGE_SCANLINES",e=>e.effects.scanlines>0],["HF_STAGE_VIGNETTE",e=>e.details.vignette>0],["HF_STAGE_RGB_CURVES",e=>Os(e).rgbCurvesEnabled],["HF_STAGE_HUE_CURVES",e=>Os(e).hueCurvesEnabled],["HF_STAGE_SECONDARIES",e=>Os(e).secondaryCount>0],["HF_STAGE_LUT",e=>e.lut!==null],["HF_STAGE_COMPARE",(e,t)=>t.enabled]];function GM(e,t){let n="";for(let[r,o]of ay)o(e,t)&&(n+=`#define ${r}
|
|
359
|
+
`);return n}var Yx=ay.map(([e])=>`#define ${e}
|
|
360
|
+
`).join(""),sy=32,BM=sy,UM=["#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","#else","precision mediump float;","#endif","varying vec2 v_uv;","uniform sampler2D u_source;","uniform vec2 u_resolution;","uniform vec2 u_direction;","uniform float u_radius;","uniform float u_bloomPass;","uniform float u_threshold;","vec4 readSource(vec2 uv){"," vec4 color = texture2D(u_source, clamp(uv, vec2(0.0), vec2(1.0)));"," if (u_bloomPass > 0.5) {"," float luminance = dot(color.rgb, vec3(0.299, 0.587, 0.114));"," if (u_threshold >= 0.0 && luminance <= u_threshold) color.rgb = vec3(0.0);"," return vec4(color.rgb, 1.0);"," }"," color.rgb *= color.a;"," return color;","}","void main(){"," if (u_bloomPass > 0.5) {"," vec2 stepUv = u_direction * max(u_radius, 0.0) / max(u_resolution, vec2(1.0)) * 0.5;"," vec4 bloom = readSource(v_uv) * 0.227027;"," bloom += readSource(v_uv + stepUv) * 0.1945946;"," bloom += readSource(v_uv - stepUv) * 0.1945946;"," bloom += readSource(v_uv + stepUv * 2.0) * 0.1216216;"," bloom += readSource(v_uv - stepUv * 2.0) * 0.1216216;"," bloom += readSource(v_uv + stepUv * 3.0) * 0.054054;"," bloom += readSource(v_uv - stepUv * 3.0) * 0.054054;"," bloom += readSource(v_uv + stepUv * 4.0) * 0.016216;"," bloom += readSource(v_uv - stepUv * 4.0) * 0.016216;"," gl_FragColor = bloom;"," return;"," }"," vec2 stepUv = u_direction * max(u_radius, 0.0) / max(u_resolution, vec2(1.0)) / 12.0;"," vec4 color = readSource(v_uv) * 0.08077993;"," color += readSource(v_uv + stepUv * 1.0) * 0.07918038;"," color += readSource(v_uv - stepUv * 1.0) * 0.07918038;"," color += readSource(v_uv + stepUv * 2.0) * 0.07456928;"," color += readSource(v_uv - stepUv * 2.0) * 0.07456928;"," color += readSource(v_uv + stepUv * 3.0) * 0.06747307;"," color += readSource(v_uv - stepUv * 3.0) * 0.06747307;"," color += readSource(v_uv + stepUv * 4.0) * 0.05865827;"," color += readSource(v_uv - stepUv * 4.0) * 0.05865827;"," color += readSource(v_uv + stepUv * 5.0) * 0.04899551;"," color += readSource(v_uv - stepUv * 5.0) * 0.04899551;"," color += readSource(v_uv + stepUv * 6.0) * 0.03931982;"," color += readSource(v_uv - stepUv * 6.0) * 0.03931982;"," color += readSource(v_uv + stepUv * 7.0) * 0.03031761;"," color += readSource(v_uv - stepUv * 7.0) * 0.03031761;"," color += readSource(v_uv + stepUv * 8.0) * 0.02245983;"," color += readSource(v_uv - stepUv * 8.0) * 0.02245983;"," color += readSource(v_uv + stepUv * 9.0) * 0.01598624;"," color += readSource(v_uv - stepUv * 9.0) * 0.01598624;"," color += readSource(v_uv + stepUv * 10.0) * 0.01093238;"," color += readSource(v_uv - stepUv * 10.0) * 0.01093238;"," color += readSource(v_uv + stepUv * 11.0) * 0.00718308;"," color += readSource(v_uv - stepUv * 11.0) * 0.00718308;"," color += readSource(v_uv + stepUv * 12.0) * 0.00453456;"," color += readSource(v_uv - stepUv * 12.0) * 0.00453456;"," if (color.a > 0.0001) color.rgb /= color.a;"," gl_FragColor = color;","}"].join(`
|
|
361
|
+
`),WM=["#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","#else","precision mediump float;","#endif","varying vec2 v_uv;","uniform sampler2D u_source;","uniform sampler2D u_blurSource;","uniform vec2 u_texel;","uniform vec2 u_uvScale;","uniform vec2 u_uvOffset;","uniform float u_blurReady;","uniform float u_blur;","uniform float u_kuwaharaRadius;","vec3 readPrepared(vec2 displayUv){"," vec2 uv = (displayUv - u_uvOffset) / u_uvScale;"," vec3 color = texture2D(u_source, clamp(uv, vec2(0.0), vec2(1.0))).rgb;"," if (u_blurReady > 0.5 && u_blur > 0.0) {"," vec3 blurred = texture2D(u_blurSource, clamp(uv, vec2(0.0), vec2(1.0))).rgb;"," color = mix(color, blurred, clamp(u_blur, 0.0, 1.0));"," }"," return color;","}","void main(){"," float radius = floor(mix(2.0, 16.0, clamp(u_kuwaharaRadius, 0.0, 1.0)) + 0.5);"," vec3 sum = vec3(0.0);"," float sumSquares = 0.0;"," float count = 0.0;"," for (int offset = 0; offset <= 16; offset++) {"," if (float(offset) > radius) continue;"," vec3 color = readPrepared(v_uv + vec2(float(offset), 0.0) * u_texel);"," sum += color;"," sumSquares += dot(color, color) / 3.0;"," count += 1.0;"," }"," gl_FragColor = vec4(sum / count, sumSquares / count);","}"].join(`
|
|
362
|
+
`),VM=["#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","#else","precision mediump float;","#endif","varying vec2 v_uv;","uniform sampler2D u_kuwaharaMoments;","uniform vec2 u_texel;","uniform float u_kuwaharaRadius;","uniform float u_kuwaharaSharpness;","uniform float u_kuwaharaSaturation;","void main(){"," float radius = floor(mix(2.0, 16.0, clamp(u_kuwaharaRadius, 0.0, 1.0)) + 0.5);"," vec2 origins[4];"," origins[0] = vec2(-radius, -radius);"," origins[1] = vec2(0.0, -radius);"," origins[2] = vec2(-radius, 0.0);"," origins[3] = vec2(0.0, 0.0);"," vec3 means[4];"," float variances[4];"," float minVariance = 1.0;"," for (int quadrant = 0; quadrant < 4; quadrant++) {"," vec4 moment = vec4(0.0);"," float count = 0.0;"," for (int offset = 0; offset <= 16; offset++) {"," if (float(offset) > radius) continue;"," vec2 sampleOffset = origins[quadrant] + vec2(0.0, float(offset));"," moment += texture2D(u_kuwaharaMoments, clamp(v_uv + sampleOffset * u_texel, vec2(0.0), vec2(1.0)));"," count += 1.0;"," }"," moment /= count;"," vec3 mean = moment.rgb;"," float meanSquare = moment.a * 3.0;"," float variance = max(meanSquare - dot(mean, mean), 0.0);"," means[quadrant] = mean;"," variances[quadrant] = variance;"," minVariance = min(minVariance, variance);"," }"," float exponent = 1.0 + clamp(u_kuwaharaSharpness, 0.0, 1.0) * 8.0;"," vec3 result = vec3(0.0);"," float totalWeight = 0.0;"," for (int quadrant = 0; quadrant < 4; quadrant++) {"," float weight = pow((minVariance + 0.0001) / (variances[quadrant] + 0.0001), exponent);"," result += means[quadrant] * weight;"," totalWeight += weight;"," }"," result /= max(totalWeight, 0.0001);"," float luma = dot(result, vec3(0.2126, 0.7152, 0.0722));"," float saturation = clamp(u_kuwaharaSaturation, 0.0, 1.0) * 2.0;"," gl_FragColor = vec4(clamp(mix(vec3(luma), result, saturation), 0.0, 1.0), 1.0);","}"].join(`
|
|
363
|
+
`),$M=Yu.map(e=>`${e}[${ns}]`).join(", ");function Rn(e){return ve(e)&&Yu.includes(e.localName)}function qM(e){let t=window.getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function Xx(e,t,n){let r=e.createShader(n);return r?(e.shaderSource(r,t),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:(G("runtime.colorGrading.compileShader",e.getShaderInfoLog(r)),e.deleteShader(r),null)):null}function Bs(e,t=iy){let n=Xx(e,HM,e.VERTEX_SHADER),r=Xx(e,t,e.FRAGMENT_SHADER);if(!n||!r)return n&&e.deleteShader(n),r&&e.deleteShader(r),null;let o=e.createProgram();return o?(e.attachShader(o,n),e.attachShader(o,r),e.linkProgram(o),e.deleteShader(n),e.deleteShader(r),e.getProgramParameter(o,e.LINK_STATUS)?o:(G("runtime.colorGrading.linkProgram",e.getProgramInfoLog(o)),e.deleteProgram(o),null)):null}function Ds(e,t=e.LINEAR,n=e.UNSIGNED_BYTE){let r=e.createTexture();return r?(e.bindTexture(e.TEXTURE_2D,r),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,t),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,1,1,0,e.RGBA,n,null),r):null}function zM(e,t){let n=Bs(e,UM);return n?{program:n,quad:t,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),resolution:e.getUniformLocation(n,"u_resolution"),direction:e.getUniformLocation(n,"u_direction"),radius:e.getUniformLocation(n,"u_radius"),bloomPass:e.getUniformLocation(n,"u_bloomPass"),threshold:e.getUniformLocation(n,"u_threshold")}:null}function jM(e,t){let n=Bs(e,WM);return n?{program:n,quad:t,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),blurSource:e.getUniformLocation(n,"u_blurSource"),texel:e.getUniformLocation(n,"u_texel"),uvScale:e.getUniformLocation(n,"u_uvScale"),uvOffset:e.getUniformLocation(n,"u_uvOffset"),blurReady:e.getUniformLocation(n,"u_blurReady"),blur:e.getUniformLocation(n,"u_blur"),radius:e.getUniformLocation(n,"u_kuwaharaRadius")}:null}function KM(e,t){let n=Bs(e,VM);return n?{program:n,quad:t,position:e.getAttribLocation(n,"a_pos"),moments:e.getUniformLocation(n,"u_kuwaharaMoments"),texel:e.getUniformLocation(n,"u_texel"),radius:e.getUniformLocation(n,"u_kuwaharaRadius"),sharpness:e.getUniformLocation(n,"u_kuwaharaSharpness"),saturation:e.getUniformLocation(n,"u_kuwaharaSaturation")}:null}function Ei(e,t=e.UNSIGNED_BYTE,n=e.LINEAR){let r=Ds(e,n,t),o=e.createFramebuffer();if(!r||!o)return r&&e.deleteTexture(r),o&&e.deleteFramebuffer(o),null;e.bindFramebuffer(e.FRAMEBUFFER,o),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0);let i=e.checkFramebufferStatus(e.FRAMEBUFFER);return e.bindFramebuffer(e.FRAMEBUFFER,null),i!==e.FRAMEBUFFER_COMPLETE?(e.deleteTexture(r),e.deleteFramebuffer(o),null):{texture:r,framebuffer:o,type:t,width:1,height:1}}function Hs(e,t,n,r){t.width===n&&t.height===r||(t.width=n,t.height=r,e.bindTexture(e.TEXTURE_2D,t.texture),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,n,r,0,e.RGBA,t.type,null))}function gd(e,t,n){let r=[];for(let o of n){let i=e.getUniformLocation(t,`u_${o}`);i!==null&&r.push([o,i])}return r}function Jx(e,t){for(let n of t)n&&e.deleteTexture(n)}function ly(e,t){let n=Bs(e,t+iy);return n?{program:n,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),blurSource:e.getUniformLocation(n,"u_blurSource"),bloomSource:e.getUniformLocation(n,"u_bloomSource"),kuwaharaSource:e.getUniformLocation(n,"u_kuwaharaSource"),lut:e.getUniformLocation(n,"u_lut"),advanced:e.getUniformLocation(n,"u_advanced"),resolution:e.getUniformLocation(n,"u_resolution"),uvScale:e.getUniformLocation(n,"u_uvScale"),uvOffset:e.getUniformLocation(n,"u_uvOffset"),blurReady:e.getUniformLocation(n,"u_blurReady"),bloomReady:e.getUniformLocation(n,"u_bloomReady"),kuwaharaReady:e.getUniformLocation(n,"u_kuwaharaReady"),lutEnabled:e.getUniformLocation(n,"u_lutEnabled"),lutSize:e.getUniformLocation(n,"u_lutSize"),lutTextureSize:e.getUniformLocation(n,"u_lutTextureSize"),lutDomainMin:e.getUniformLocation(n,"u_lutDomainMin"),lutDomainMax:e.getUniformLocation(n,"u_lutDomainMax"),lutIntensity:e.getUniformLocation(n,"u_lutIntensity"),shadowWheel:e.getUniformLocation(n,"u_shadowWheel"),midtoneWheel:e.getUniformLocation(n,"u_midtoneWheel"),highlightWheel:e.getUniformLocation(n,"u_highlightWheel"),rgbCurvesEnabled:e.getUniformLocation(n,"u_rgbCurvesEnabled"),hueCurvesEnabled:e.getUniformLocation(n,"u_hueCurvesEnabled"),secondaryCount:e.getUniformLocation(n,"u_secondaryCount"),adjustUniforms:gd(e,n,rs),detailUniforms:gd(e,n,Xu),effectUniforms:gd(e,n,Ju),grainSeed:e.getUniformLocation(n,"u_grainSeed"),effectTime:e.getUniformLocation(n,"u_effectTime"),paletteSize:e.getUniformLocation(n,"u_paletteSize"),palette0:e.getUniformLocation(n,"u_palette0"),palette1:e.getUniformLocation(n,"u_palette1"),palette2:e.getUniformLocation(n,"u_palette2"),palette3:e.getUniformLocation(n,"u_palette3"),palette4:e.getUniformLocation(n,"u_palette4"),palette5:e.getUniformLocation(n,"u_palette5"),intensity:e.getUniformLocation(n,"u_intensity"),compareEnabled:e.getUniformLocation(n,"u_compareEnabled"),comparePosition:e.getUniformLocation(n,"u_comparePosition"),compareSoftness:e.getUniformLocation(n,"u_compareSoftness"),compareLineWidth:e.getUniformLocation(n,"u_compareLineWidth")}:null}function YM(e){let t=e.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});if(!t)return null;let n=vd(t);return n?{gl:t,program:n}:null}function vd(e){let t=ly(e,"");if(!t)return null;let n=XM(e);return n?{...n,shaders:new Map([["",t]]),failedStageDefines:new Set}:(e.deleteProgram(t.program),null)}function XM(e){let t=Ds(e),n=Ds(e,e.NEAREST),r=Ds(e,e.NEAREST);if(!t||!n||!r)return Jx(e,[t,n,r]),null;let o=e.createBuffer();return o?(e.bindBuffer(e.ARRAY_BUFFER,o),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),e.STATIC_DRAW),{texture:t,lutTexture:n,advancedTexture:r,advancedSignature:null,quad:o}):(Jx(e,[t,n,r]),null)}function uy(e,t,n,r){let o=cy(e,t,GM(n,r));return e.useProgram(o.program),o}function cy(e,t,n){let r=t.failedStageDefines.has(n)?Yx:n;if(t.failedStageDefines.has(r))throw new Error("Color grading shader failed to compile");let o=t.shaders.get(r);if(o)return t.shaders.delete(r),t.shaders.set(r,o),o;let i=ly(e,r);if(!i)return t.failedStageDefines.add(r),cy(e,t,Yx);if(t.shaders.size>=BM)for(let[a,l]of t.shaders){e.deleteProgram(l.program),t.shaders.delete(a);break}return t.shaders.set(r,i),i}function JM(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function QM(e){if(!JM(e))return{...tr};let t=(n,r,o,i)=>{let a=typeof n=="number"?n:Number(n);return Math.min(i,Math.max(o,Number.isFinite(a)?a:r))};return{enabled:e.enabled===!0,position:t(e.position,tr.position,0,1),softness:t(e.softness,tr.softness,0,.25),lineWidth:t(e.lineWidth,tr.lineWidth,0,12)}}function dy(e){try{let t=new URL(e,document.baseURI);return t.protocol==="data:"?{href:t.href}:t.protocol!=="http:"&&t.protocol!=="https:"?{error:"LUT must be project-local or a data URL"}:t.origin!==window.location.origin?{error:"Remote LUT URLs are not supported"}:{href:t.href}}catch{return{error:"Invalid LUT URL"}}}function Us(e){return e instanceof Error?e.message:"LUT failed to load"}function ZM(e){let t=2166136261;for(let n=0;n<e.length;n+=1)t^=e.charCodeAt(n),t=Math.imul(t,16777619);return(t>>>0)%1e4}function fy(e){let t=e.id||!Jt(e)&&e.currentSrc||e.getAttribute("src")||`${e.tagName}:${Array.prototype.indexOf.call(e.parentNode?.children??[],e)}`;return ZM(t)}function Ed(e){let t=dy(e);if("error"in t)return{state:"error",message:t.error};let n=rn.get(t.href);if(n)return n;let r=fetch(t.href,{credentials:"same-origin"}).then(i=>{if(!i.ok)throw new Error(`Failed to load LUT (${i.status})`);return i.text()}).then(i=>Tg(i,{maxSize:Za})),o={state:"pending",promise:r};for(;rn.size>=LM;){let i=rn.keys().next().value;if(!i)break;rn.delete(i)}return rn.set(t.href,o),r.then(i=>{rn.get(t.href)===o&&rn.set(t.href,{state:"ready",lut:i})},i=>{rn.get(t.href)===o&&rn.set(t.href,{state:"error",message:Us(i)})}),o}function Qx(e,t,n){if(e.lut?.src===t)return e.lut;let r=Bu(n),{gl:o,program:i}=e;try{return my(o,i.lutTexture,r),e.lut={src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height},e.lutError=null,e.lutLoadingSrc=null,e.lut}catch(a){return e.lut=null,e.lutError=Us(a),e.lutLoadingSrc=null,G("runtime.colorGrading.uploadLut",a),null}}async function ek(e){let t=Ed(e);if(t.state==="ready")return t.lut;if(t.state==="pending")return t.promise;throw new Error(t.message)}function my(e,t,n){e.activeTexture(e.TEXTURE2),e.bindTexture(e.TEXTURE_2D,t),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,n.width,n.height,0,e.RGBA,e.UNSIGNED_BYTE,n.data)}function tk(e,t,n){let r=Bu(n),{gl:o,program:i}=e;return my(o,i.lutTexture,r),{src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height}}function zt(e,t){e.deleteTexture(t.texture),e.deleteFramebuffer(t.framebuffer)}function Ad(e){let t=e.effectTargets;t&&(e.gl.deleteProgram(t.blurProgram.program),zt(e.gl,t.scratch),zt(e.gl,t.blur),t.bloom&&zt(e.gl,t.bloom),e.effectTargets=null)}function wd(e){let t=e.kuwaharaTargets;t&&(e.gl.deleteProgram(t.horizontalProgram.program),e.gl.deleteProgram(t.resolveProgram.program),zt(e.gl,t.moments),zt(e.gl,t.output),e.kuwaharaTargets=null)}function Ps(e,t=!1){Ad(e),wd(e),nk(e.gl,e.program),t&&e.gl.getExtension("WEBGL_lose_context")?.loseContext()}function nk(e,t){e.deleteTexture(t.texture),e.deleteTexture(t.lutTexture),e.deleteTexture(t.advancedTexture),e.deleteBuffer(t.quad);for(let n of t.shaders.values())e.deleteProgram(n.program);t.shaders.clear()}function rk(e){let t=vd(e.gl);return t?(Ps(e),e.program=t,e.lut=null,e.lutLoadingSrc=null,e.lutError=null,e.effectError=null,!0):!1}function ok(e,t){e.borderlessFrame!==t&&py(e),e.borderlessFrame=t,t.style.borderStyle="none"}function py(e){let t=e.borderlessFrame;t&&(e.borderlessFrame=null,t.style.borderStyle=window.getComputedStyle(e.element).borderStyle)}function Sd(e){if(py(e),!e.sourceHidden)return;e.element.removeAttribute(Kn);let t=e.element.style.getPropertyValue("opacity"),n=e.element.style.getPropertyPriority("opacity");t==="0"&&n==="important"&&(e.sourceInlineOpacity===null?e.element.style.removeProperty("opacity"):e.element.style.setProperty("opacity",e.sourceInlineOpacity,e.sourceInlineOpacityPriority)),e.sourceHidden=!1}function ik(e){if(e.effectTargets)return e.effectTargets;let{gl:t}=e,n=zM(t,e.program.quad),r=Ei(t),o=Ei(t);return!n||!r||!o?(n&&t.deleteProgram(n.program),r&&zt(t,r),o&&zt(t,o),e.effectError="Framebuffer effects unavailable",null):(e.effectError=null,e.effectTargets={blurProgram:n,scratch:r,blur:o,bloom:null},e.effectTargets)}function ak(e,t){return t.bloom||(t.bloom=Ei(e.gl),e.effectError=t.bloom?null:"Framebuffer effects unavailable"),t.bloom}function Zx(e){let t=e.effectTargets;t?.bloom&&(zt(e.gl,t.bloom),t.bloom=null)}function sk(e){if(e.kuwaharaTargets)return e.kuwaharaTargets;let{gl:t}=e,n=t.getExtension("OES_texture_half_float"),r=t.getExtension("EXT_color_buffer_half_float");if(!n||!r)return e.effectError="Kuwahara requires half-float framebuffer support",null;let o=jM(t,e.program.quad),i=KM(t,e.program.quad),a=Ei(t,n.HALF_FLOAT_OES,t.NEAREST),l=Ei(t);return!o||!i||!a||!l?(lk(t,o,i,a,l),e.effectError="Kuwahara framebuffer effects unavailable",null):(e.kuwaharaTargets={horizontalProgram:o,resolveProgram:i,moments:a,output:l},e.kuwaharaTargets)}function lk(e,t,n,r,o){t&&e.deleteProgram(t.program),n&&e.deleteProgram(n.program),r&&zt(e,r),o&&zt(e,o)}function hy(e,t,n,r,o){let i=Math.max(1,Math.ceil(r)),a=Math.max(1,Math.ceil(o));return Hs(e,t,i,a),Hs(e,n,i,a),{width:i,height:a}}function Gs(e,t,n,r,o,i,a,l=!1,s=-1){e.bindFramebuffer(e.FRAMEBUFFER,r.framebuffer),e.viewport(0,0,o.width,o.height),e.useProgram(t.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.uniform1i(t.source,0),e.uniform2f(t.resolution,o.width,o.height),e.uniform2f(t.direction,i.x,i.y),e.uniform1f(t.radius,a),e.uniform1f(t.bloomPass,l?1:0),e.uniform1f(t.threshold,s),Ai(e,t)}function uk(e,t,n,r,o,i,a){let l=hy(e,t.scratch,r,o/2,i/2),s=a/2;Gs(e,t.blurProgram,n,t.scratch,l,{x:1,y:0},s,!0,.5),Gs(e,t.blurProgram,t.scratch.texture,r,l,{x:0,y:1},s,!0)}function ck(e,t,n,r,o,i,a){let l=n;for(let s=0;s<Math.max(1,Math.floor(a));s++)Gs(e,t.blurProgram,l,t.scratch,o,{x:1,y:0},i),Gs(e,t.blurProgram,t.scratch.texture,r,o,{x:0,y:1},i),l=r.texture}function Ai(e,t){e.bindBuffer(e.ARRAY_BUFFER,t.quad),e.enableVertexAttribArray(t.position),e.vertexAttribPointer(t.position,2,e.FLOAT,!1,0,0),e.drawArrays(e.TRIANGLE_STRIP,0,4)}function dk(e,t,n,r,o,i,a,l){Hs(e,t.moments,o.width,o.height),Hs(e,t.output,o.width,o.height);let s=t.horizontalProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.moments.framebuffer),e.viewport(0,0,o.width,o.height),e.useProgram(s.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.activeTexture(e.TEXTURE1),e.bindTexture(e.TEXTURE_2D,r),e.uniform1i(s.source,0),e.uniform1i(s.blurSource,1),e.uniform2f(s.texel,1/o.width,1/o.height),e.uniform2f(s.uvScale,i.scaleX,i.scaleY),e.uniform2f(s.uvOffset,i.offsetX,i.offsetY),e.uniform1f(s.blurReady,a?1:0),e.uniform1f(s.blur,l.blur),e.uniform1f(s.radius,l.kuwaharaRadius),Ai(e,s);let c=t.resolveProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.output.framebuffer),e.useProgram(c.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.moments.texture),e.uniform1i(c.moments,0),e.uniform2f(c.texel,1/o.width,1/o.height),e.uniform1f(c.radius,l.kuwaharaRadius),e.uniform1f(c.sharpness,l.kuwaharaSharpness),e.uniform1f(c.saturation,l.kuwaharaSaturation),Ai(e,c)}function fk(e,t,n,r){if(n<=0)return!1;let o=hy(e.gl,t.scratch,t.blur,r.width,r.height);return ck(e.gl,t,e.program.texture,t.blur,o,.75+Math.pow(n,1.35)*32,n>.55?3:2),!0}function mk(e,t,n,r,o,i){if(n<=0)return Zx(e),null;i||Zx(e);let a=i?ak(e,t):t.blur;return a?(uk(e.gl,t,e.program.texture,a,o.width,o.height,r),a.texture):null}function pk(e,t,n,r){let{program:o}=e,i=t.effects.blur,a=t.effects.bloom;if(i<=0&&a<=0)return e.effectTargets&&r&&Ad(e),{blurReady:!1,bloomReady:!1,blurTexture:o.texture,bloomTexture:o.texture};let l=ik(e);if(!l)return{blurReady:!1,bloomReady:!1,blurTexture:o.texture,bloomTexture:o.texture};let s=fk(e,l,i,n),c=mk(e,l,a,t.effects.bloomRadius,n,s);return{blurReady:s,bloomReady:c!==null,blurTexture:l.blur.texture,bloomTexture:c??o.texture}}function hk(e,t,n,r,o,i,a){let l=t.effects.kuwahara;if(l<=0&&!i)return e.kuwaharaTargets&&a&&wd(e),{kuwaharaReady:!1,kuwaharaTexture:e.program.texture};let s=sk(e);return!s||l<=0?{kuwaharaReady:!1,kuwaharaTexture:s?.output.texture??e.program.texture}:(dk(e.gl,s,e.program.texture,e.effectTargets?.blur.texture??e.program.texture,n,r,o,t.effects),{kuwaharaReady:!0,kuwaharaTexture:s.output.texture})}function gy(e,t,n,r,o={}){let i=o.releaseIdleTargets??!0;e.effectError=null;let a=pk(e,t,n,i),l=hk(e,t,n,r,a.blurReady,o.preserveKuwahara??!1,i);return{...a,...l}}function gk(e){let t=e.grading.lut?.src.trim()??"",n=e.grading.lut?.intensity??1;if(!t||n<=0)return e.lut=null,e.lutLoadingSrc=null,e.lutError=null,null;let r=dy(t);if("error"in r)return e.lut=null,e.lutLoadingSrc=null,e.lutError=r.error,null;if(e.lut?.src===r.href)return e.lut;e.lut=null;let o=Ed(t);return o.state==="ready"?Qx(e,r.href,o.lut):o.state==="error"?(e.lutError=o.message,e.lutLoadingSrc=null,null):(e.lutLoadingSrc!==r.href&&(e.lutLoadingSrc=r.href,e.lutError=null,o.promise.then(i=>{e.destroyed||e.grading.lut?.src.trim()!==t||(Qx(e,r.href,i),ft(e))},i=>{e.destroyed||e.grading.lut?.src.trim()!==t||(e.lut=null,e.lutError=Us(i),e.lutLoadingSrc=null,ft(e))})),null)}function vi(e){if(!e)return null;if(typeof e=="string"){let t=e.trim();if(!t)return null;let n=document.getElementById(t.replace(/^#/,""));if(n&&Rn(n))return n;try{let r=document.querySelector(t);return r&&Rn(r)?r:null}catch{return null}}if(e.hfId){let t=document.querySelector(`[data-hf-id="${CSS.escape(e.hfId)}"]`);if(t&&Rn(t))return t}if(e.id){let t=document.getElementById(e.id);if(t&&Rn(t))return t}if(!e.selector)return null;try{let t=Array.from(document.querySelectorAll(e.selector)),n=Math.max(0,Math.floor(Number(e.selectorIndex??0)||0)),r=t[n]??null;return r&&Rn(r)?r:null}catch{return null}}function _d(e){let[t,n]=Me(e)?[e.videoWidth,e.videoHeight]:Je(e)?[e.naturalWidth,e.naturalHeight]:Jt(e)?[e.width,e.height]:[0,0];return t>0&&n>0?{width:t,height:n}:null}function by(e){return Me(e)&&e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||Je(e)&&!e.complete?!1:_d(e)!==null}function bk(e){let t=Ct(e);return t&&by(t)?t:null}function bd(e){return qM(e)||xk(e)}function xk(e){if(!Me(e))return!1;let t=Ct(e);if(!t)return!1;let n=window.getComputedStyle(t);return n.display!=="none"&&n.visibility!=="hidden"}function yk(e){return Je(e)&&e.classList.contains("__render_frame__")}function Sk(e,t){t.parentNode&&t.nextSibling!==e.canvas&&t.parentNode.insertBefore(e.canvas,t.nextSibling)}var ey=new WeakMap;function xy(e,t){if(!Je(e)||window.origin!=="null"||e.crossOrigin!==null||!/^https?:/i.test(e.currentSrc))return e;let n=ey.get(e);if(n?.image.src!==e.currentSrc){let r={image:e.ownerDocument.createElement("img"),waiting:new Set},o=()=>{let i=[...r.waiting];r.waiting.clear(),i.forEach(ft)};r.image.crossOrigin="anonymous",r.image.addEventListener("load",o,{once:!0}),r.image.addEventListener("error",o,{once:!0}),r.image.src=e.currentSrc,ey.set(e,n=r)}return n.image.complete?n.image.naturalWidth>0?n.image:e:(t&&n.waiting.add(t),null)}function yy(e){if(Me(e)){let t=bk(e);if(t)return t}return by(e)?e:null}function ty(e,t){let n=e.toLowerCase();if(n==="center")return .5;if(t==="x"){if(n==="left")return 0;if(n==="right")return 1}else{if(n==="top")return 0;if(n==="bottom")return 1}if(n.endsWith("%")){let r=Number.parseFloat(n);return Number.isFinite(r)?r/100:null}return null}function vk(e){let t=e.trim().split(/\s+/).filter(Boolean),n=.5,r=.5;for(let o=0;o<t.length;o++){let i=t[o]??"",a=ty(i,"x"),l=ty(i,"y");if(a!==null&&(i==="left"||i==="right"||i.endsWith("%")&&o===0)){n=a;continue}if(l!==null&&(i==="top"||i==="bottom"||i.endsWith("%")&&o>0)){r=l;continue}}return{x:n,y:r}}function Sy(e,t,n,r,o,i){if(e<=0||t<=0||n<=0||r<=0)return{scaleX:1,scaleY:1,offsetX:0,offsetY:0};let a=o||"fill",l=e,s=t;if(a==="contain"||a==="cover"||a==="scale-down"){let m=a==="cover"?Math.max(e/n,t/r):Math.min(e/n,t/r);l=n*m,s=r*m,a==="scale-down"&&l>n&&s>r&&(l=n,s=r)}else a==="none"&&(l=n,s=r);let c=vk(i||"center"),d=(e-l)*c.x/e,f=(t-s)*c.y/t;return{scaleX:l/e,scaleY:s/t,offsetX:d,offsetY:f}}function Ek(e,t){window.getComputedStyle(t).position==="static"&&(e.touchedParent||(e.touchedParent=t,e.parentInlinePosition=t.style.position||null),t.style.position="relative")}function ny(e,t){return Math.max(0,Math.round(e>0?e:t))}function Ak(e,t){let{element:n,canvas:r}=e,o=n.parentElement;o&&Ek(e,o);let i=window.getComputedStyle(t);Dh(r.style,i),r.style.borderStyle="none",r.style.pointerEvents="none",r.style.position="absolute",r.style.inset="auto",r.style.left=`${n.offsetLeft}px`,r.style.top=`${n.offsetTop}px`,r.style.right="auto",r.style.bottom="auto",r.style.width=`${n.offsetWidth}px`,r.style.height=`${n.offsetHeight}px`,r.style.display="block",r.style.opacity=e.sourceOpacityForCanvas,r.style.visibility=e.sourceVisibleForCanvas?"visible":"hidden";let a=n.getBoundingClientRect(),l=ny(n.offsetWidth,a.width),s=ny(n.offsetHeight,a.height);if(l<=0||s<=0)return r.style.display="none",null;let c=Math.max(1,window.devicePixelRatio||1),d=Math.round(l*c),f=Math.round(s*c);return r.width!==d&&(r.width=d),r.height!==f&&(r.height=f),{width:d,height:f}}function qr(e,t,n){e.uniform3f(t,Number.parseInt(n.slice(1,3),16)/255,Number.parseInt(n.slice(3,5),16)/255,Number.parseInt(n.slice(5,7),16)/255)}function er(e,t,n,r){e.set(r,(t*Vt+n)*4)}function Mn(e,t){return Math.min(1,Math.max(1/255,(e*(127/t)+128)/255))}function xd(e,t,n){return e.length>=3?Wu(e,t,n):new Float32Array(Vt)}function Zn(e,t){return e[t]??0}function wk(e,t,n){let r=Nr(t.red),o=Nr(t.green),i=Nr(t.blue),a=Nr(t.master),l=xd(n.hueVsHue,-180,180),s=xd(n.hueVsSaturation,-1,1),c=xd(n.hueVsLuma,-1,1);for(let d=0;d<Vt;d+=1)er(e,0,d,[Zn(r,d),Zn(o,d),Zn(i,d),Zn(a,d)]),er(e,1,d,[Mn(Zn(l,d),180),Mn(Zn(s,d),1),Mn(Zn(c,d),1),1])}function _k(e,t,n){let r=n*DM;er(e,2,r,[t.key.hue.center/360,t.key.hue.range/180,t.key.hue.softness/180,1]),er(e,2,r+1,[t.key.saturation.min,t.key.saturation.max,t.key.saturation.softness/.5,0]),er(e,2,r+2,[t.key.luma.min,t.key.luma.max,t.key.luma.softness/.5,0]),er(e,2,r+3,[Mn(t.correction.hueShift,180),Mn(t.correction.saturation,1),Mn(t.correction.luma,1),Mn(t.correction.temperature,1)]),er(e,2,r+4,[Mn(t.correction.tint,1),.5,.5,1])}function Ck(e,t,n){let r=new Float32Array(Vt*_i*4);wk(r,e,t);let o=0;for(let i of n)i.enabled&&(_k(r,i,o),o+=1);return r}var ry=new WeakMap;function Tk(e,t,n){let r=ry.get(e);if(r?.hueCurves===t&&r.secondaries===n)return r.signature;let o=JSON.stringify([e,t,n]);return ry.set(e,{hueCurves:t,secondaries:n,signature:o}),o}function Rk(e,t,n,r){let{curves:o,hueCurves:i}=n,a=Tk(o,i,r);if(t.advancedSignature===a)return;let l=Uint8Array.from(Ck(o,i,r),qo);e.activeTexture(e.TEXTURE5),e.bindTexture(e.TEXTURE_2D,t.advancedTexture),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,Vt,_i,0,e.RGBA,e.UNSIGNED_BYTE,l),t.advancedSignature=a}function yd(e,t,n){e.uniform3f(t,n.hue/360,n.amount,n.level)}function Os(e){let{curves:t,hueCurves:n,secondaries:r}=e;return{rgbCurvesEnabled:ec(t),hueCurvesEnabled:tc(n),secondaryCount:nc(r)?r.reduce((o,i)=>o+Number(i.enabled),0):0}}function vy(e,t,n,r,o,i,a,l,s,c,d,f,m){e.uniform1i(n.source,0),e.uniform1i(n.blurSource,1),e.uniform1i(n.lut,2),e.uniform1i(n.kuwaharaSource,3),e.uniform1i(n.bloomSource,4),e.uniform1i(n.advanced,5),e.uniform2f(n.resolution,c.width,c.height),e.uniform2f(n.uvScale,d.scaleX,d.scaleY),e.uniform2f(n.uvOffset,d.offsetX,d.offsetY),e.uniform1f(n.blurReady,i?1:0),e.uniform1f(n.bloomReady,a?1:0),e.uniform1f(n.kuwaharaReady,l?1:0),e.uniform1f(n.lutEnabled,o?1:0),e.uniform1f(n.lutSize,o?.size??2),e.uniform2f(n.lutTextureSize,o?.textureWidth??1,o?.textureHeight??1),e.uniform3f(n.lutDomainMin,o?.domainMin[0]??0,o?.domainMin[1]??0,o?.domainMin[2]??0),e.uniform3f(n.lutDomainMax,o?.domainMax[0]??1,o?.domainMax[1]??1,o?.domainMax[2]??1),e.uniform1f(n.lutIntensity,r.lut?.intensity??0);let{rgbCurvesEnabled:p,hueCurvesEnabled:x,secondaryCount:b}=Os(r);(p||x||b>0)&&Rk(e,t,r,r.secondaries),yd(e,n.shadowWheel,r.wheels.shadows),yd(e,n.midtoneWheel,r.wheels.midtones),yd(e,n.highlightWheel,r.wheels.highlights),e.uniform1f(n.rgbCurvesEnabled,p?1:0),e.uniform1f(n.hueCurvesEnabled,x?1:0),e.uniform1f(n.secondaryCount,b);for(let[v,_]of n.adjustUniforms)e.uniform1f(_,r.adjust[v]);for(let[v,_]of n.detailUniforms)e.uniform1f(_,r.details[v]);e.uniform1f(n.grainSeed,f),e.uniform1f(n.effectTime,m);for(let[v,_]of n.effectUniforms)e.uniform1f(_,r.effects[v]);let y=r.palette??(r.effects.engraving>0||r.effects.crosshatch>0?FM:pd),E=y[y.length-1]??pd[1];e.uniform1f(n.paletteSize,y.length),qr(e,n.palette0,y[0]??pd[0]),qr(e,n.palette1,y[1]??E),qr(e,n.palette2,y[2]??E),qr(e,n.palette3,y[3]??E),qr(e,n.palette4,y[4]??E),qr(e,n.palette5,y[5]??E),e.uniform1f(n.intensity,r.intensity),e.uniform1f(n.compareEnabled,s.enabled?1:0),e.uniform1f(n.comparePosition,s.position),e.uniform1f(n.compareSoftness,s.softness),e.uniform1f(n.compareLineWidth,s.lineWidth)}function Mk(e){if(!e.sourceHidden){let t=e.element.getAttribute(Yn);t!==null?(e.sourceInlineOpacity=t===""?null:t,e.sourceInlineOpacityPriority=""):(e.sourceInlineOpacity=e.element.style.getPropertyValue("opacity")||null,e.sourceInlineOpacityPriority=e.element.style.getPropertyPriority("opacity"))}e.element.setAttribute(Kn,"true"),e.element.style.setProperty("opacity","0","important"),e.sourceHidden=!0}function on(e){let t=Kg.find(n=>n.path===e);if(!t)throw new Error(`Missing color-grading animation property: ${e}`);return t}var Ey=on("intensity"),Ay=on("lut.intensity"),wy=on("adjust.exposure"),_y=on("effects.kuwahara"),Cy=[["blur",on("effects.blur")],["bloom",on("effects.bloom")],["kuwahara",_y],["pixelate",on("effects.pixelate")],["ascii",on("effects.ascii")],["dither",on("effects.dither")]],Ty=[Ey,Ay,wy,...Cy.map(([,e])=>e)];function nr(e,t){let n=getComputedStyle(e).getPropertyValue(t.name).trim();if(!n)return null;let r=Number(n);return Number.isFinite(r)?Math.min(t.max,Math.max(t.min,r)):null}function zr(e,t){return t!==null&&(Qg(t)||Ty.some(n=>nr(e,n)!==null))}function kk(e,t){let n=null;for(let[r,o]of Cy){let i=nr(e,o);i!==null&&(n??(n={...t.effects}),n[r]=i)}return n}function Lk(e){let{element:t,grading:n}=e,r=nr(t,Ey),o=nr(t,Ay),i=nr(t,wy),a=kk(t,n);if(![r,o,i].some(c=>c!==null)&&a===null)return n;let s={...n,adjust:i===null?n.adjust:{...n.adjust,exposure:i},effects:a??n.effects};return r!==null&&(s.intensity=r),n.lut&&o!==null&&(s.lut={...n.lut,intensity:o}),s}function Ry(e,t,n){e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,!0),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,n)}function My(e,t,n){let r=[t.texture,n.blurTexture,t.lutTexture,n.kuwaharaTexture,n.bloomTexture,t.advancedTexture];for(let[o,i]of r.entries())e.activeTexture(e.TEXTURE0+o),e.bindTexture(e.TEXTURE_2D,i)}function Nk(e,t){e.glCanvas!==e.canvas&&(e.glCanvas.width<t.width&&(e.glCanvas.width=t.width),e.glCanvas.height<t.height&&(e.glCanvas.height=t.height))}function Fk(e,t){if(e.glCanvas===e.canvas)return;let n=e.canvas.getContext("2d");if(!n)throw new Error("Canvas 2D is unavailable");let{width:r,height:o}=t;n.clearRect(0,0,r,o),n.drawImage(e.glCanvas,0,e.glCanvas.height-o,r,o,0,0,r,o)}function Ik(e){let t=yy(e.element),n=t&&xy(t,e);if(!t||!n)return e.hasDrawn||(e.canvas.style.display="none"),null;let r=_d(t);return r?{source:t,pixels:n,size:r}:null}function Dk(e){if(e.sourceInlineOpacity===null){e.element.style.removeProperty("opacity");return}e.element.style.setProperty("opacity",e.sourceInlineOpacity,e.sourceInlineOpacityPriority||"")}function Pk(e){let{style:t}=e.element;return e.sourceHidden&&t.getPropertyValue("opacity")==="0"&&t.getPropertyPriority("opacity")==="important"}function Ok(e,t,n){let r=Pk(e),o=e.element.style.getPropertyValue("visibility"),i=r&&!n;i&&Dk(e);let a=window.getComputedStyle(n?t:e.element);e.sourceOpacityForCanvas=a.opacity||"1",i&&e.element.style.setProperty("opacity","0","important"),e.sourceVisibleForCanvas=(n||o!=="hidden")&&a.visibility!=="hidden"}function Hk(e){let t=window.__player?.getTime?.();return typeof t=="number"&&Number.isFinite(t)?Math.max(0,t):Me(e)?Math.max(0,e.currentTime):0}function Gk(e,t,n,r){let{gl:o,program:i}=e;Nk(e,n);let a=Lk(e),l=gk(e);Ry(o,i.texture,t);let s=nr(e.element,_y)!==null,c=gy(e,a,n,r,{preserveKuwahara:s});o.bindFramebuffer(o.FRAMEBUFFER,null),o.viewport(0,0,n.width,n.height);let d=uy(o,i,a,e.compare);My(o,i,c);let f=Hk(e.element),m=e.grainSeed+Math.floor(f*60);vy(o,i,d,a,l,c.blurReady,c.bloomReady,c.kuwaharaReady,e.compare,n,r,m,f),Ai(o,{quad:i.quad,position:d.position}),Fk(e,n)}function Bk(e,t,n){let r=ve(t)?t:e.element,o=Ak(e,r);if(!o)return null;let i=window.getComputedStyle(r),a=Sy(o.width,o.height,n.width,n.height,i.objectFit,i.objectPosition);return{layout:o,uv:a}}function ft(e){if(e.destroyed||e.contextLost)return!1;let t=Ik(e);if(!t)return!1;let{source:n,pixels:r,size:o}=t,i=yk(n);i&&Sk(e,n),Ok(e,n,i);let a=Bk(e,n,o);if(!a)return!1;let{layout:l,uv:s}=a;try{return Gk(e,r,l,s),Mk(e),i&&ok(e,n),e.hasDrawn=!0,e.drawError=null,!0}catch(c){return e.drawError=c instanceof Error?c.message:"Shader draw failed",G("runtime.colorGrading.drawEntry",c),!1}}function Uk(e,t,n){let r=e.getBoundingClientRect(),o=e.offsetWidth||r.width||t.width,i=e.offsetHeight||r.height||t.height,a=Math.min(320,Math.max(64,Math.round(n??160))),l=o>0&&i>0?o/i:t.width/t.height;return l>=1?{width:a,height:Math.max(1,Math.round(a/l))}:{width:Math.max(1,Math.round(a*l)),height:a}}function Wk(){let e=document.createElement("canvas"),t=YM(e);return t?{canvas:e,glCanvas:e,...t,lut:null,effectTargets:null,kuwaharaTargets:null,effectError:null}:null}function Vk(e,t){let n=t?void 0:window.__player?.getTime?.();return typeof n=="number"&&Number.isFinite(n)?Math.max(0,n):Me(e)?Math.max(0,e.currentTime):0}function $k(e,t,n,r){let o=yy(t),i=o&&xy(o,null);if(!o||!i)return null;let a=_d(o);if(!a)return null;let l=Uk(t,a,n);e.canvas.width=l.width,e.canvas.height=l.height;let s=ve(o)?o:t,c=window.getComputedStyle(s),d=Sy(l.width,l.height,a.width,a.height,c.objectFit,c.objectPosition);return Ry(e.gl,e.program.texture,i),{dimensions:l,uv:d,effectTime:Vk(t,r),grainSeed:fy(t)+(Me(t)?Math.floor(t.currentTime*60):0)}}async function qk(e,t,n,r,o=!1){let i=$k(e,t,r,o);if(!i)return null;let{dimensions:a,uv:l,grainSeed:s,effectTime:c}=i,d=[];for(let f of n.slice(0,sy)){let m=os(f.grading);if(!m){d.push({id:f.id,dataUrl:null,error:"Invalid grading"});continue}let p=null;try{m.lut&&(e.lut?.src!==m.lut.src&&(e.lut=tk(e,m.lut.src,await ek(m.lut.src))),p=e.lut),d.push({id:f.id,dataUrl:zk(e,m,p,a,l,s,c)})}catch(x){d.push({id:f.id,dataUrl:null,error:Us(x)})}}return{...a,images:d}}function zk(e,t,n,r,o,i,a){let{canvas:l,gl:s,program:c}=e,d=gy(e,t,r,o,{releaseIdleTargets:!1});s.bindFramebuffer(s.FRAMEBUFFER,null),s.viewport(0,0,r.width,r.height);let f=uy(s,c,t,tr);return My(s,c,d),n||(e.lut=null),vy(s,c,f,t,n,d.blurReady,d.bloomReady,d.kuwaharaReady,tr,r,o,i,a),Ai(s,{quad:c.quad,position:f.position}),l.toDataURL("image/png")}function Tn(e,t,n,r){t.addEventListener(n,r),e.cleanup.push(()=>t.removeEventListener(n,r))}function jk(e){return Jt(e)?!0:Me(e)&&!e.paused&&!e.ended?!1:Ty.some(t=>nr(e,t)!==null)}function Kk(e){e.animationFrame!==null&&(window.cancelAnimationFrame(e.animationFrame),e.animationFrame=null),e.videoFrameHandle!==null&&Me(e.element)&&(e.element.cancelVideoFrameCallback?.(e.videoFrameHandle),e.videoFrameHandle=null)}function wi(e){if(e.destroyed||!Me(e.element)||e.videoFrameHandle!==null||e.animationFrame!==null)return;let t=e.element,n=t;if(typeof n.requestVideoFrameCallback=="function"){e.videoFrameHandle=n.requestVideoFrameCallback(()=>{e.videoFrameHandle=null,ft(e),!e.destroyed&&!t.paused&&!t.ended&&wi(e)});return}e.animationFrame=window.requestAnimationFrame(()=>{e.animationFrame=null,ft(e),!e.destroyed&&!t.paused&&!t.ended&&wi(e)})}function Yk(e){let t=()=>{ft(e)};if(Tn(e,e.element,"load",t),Tn(e,e.element,"loadedmetadata",t),Tn(e,e.element,"loadeddata",t),Tn(e,e.element,"seeked",t),Tn(e,e.element,"timeupdate",t),Tn(e,window,"resize",t),Me(e.element)&&(Tn(e,e.element,"play",()=>wi(e)),Tn(e,e.element,"pause",t)),typeof ResizeObserver<"u"&&(e.resizeObserver=new ResizeObserver(t),e.resizeObserver.observe(e.element)),typeof MutationObserver<"u"){let n=()=>{let a=e.element.style;return`${a.transform}|${a.translate}|${a.rotate}|${a.scale}|${a.left}|${a.top}|${a.width}|${a.height}`},r=n(),o=!1,i=new MutationObserver(()=>{o||n()!==r&&(o=!0,requestAnimationFrame(()=>{o=!1,r=n(),ft(e)}))});i.observe(e.element,{attributes:!0,attributeFilter:["style"]}),e.cleanup.push(()=>i.disconnect())}}function Xk(e){if(e.destroyed)return null;e.destroyed=!0,Kk(e),e.resizeObserver?.disconnect();for(let t of e.cleanup)t();return e.cleanup.length=0,e.canvas.remove(),Ad(e),wd(e),Sd(e),e.touchedParent&&(e.parentInlinePosition===null?e.touchedParent.style.removeProperty("position"):e.touchedParent.style.position=e.parentInlinePosition),{canvas:e.canvas,glCanvas:e.glCanvas,gl:e.gl,program:e.program,effectTargets:null,kuwaharaTargets:null,effectError:null}}function ky(e,t){return e.removeAttribute("style"),t.id?e.id=`${Vg}${t.id}`:e.removeAttribute("id"),e.className=kM,e.setAttribute(MM,"true"),e.setAttribute("data-hyperframes-ignore",""),e.setAttribute("data-hyperframes-picker-ignore",""),e.setAttribute("data-hf-ignore",""),e.setAttribute("aria-hidden","true"),e.style.pointerEvents="none",e.style.display="none",t.parentNode?.insertBefore(e,t.nextSibling),e}function Jk(e){return ky(document.createElement("canvas"),e)}function Ly(e){let t=new WeakMap,n=new Set,r=new Set,o=[],i=null,a=null,l=Promise.resolve(),s=!1,c=null,d=()=>[...n].flatMap(D=>t.get(D)??[]),f=()=>{if(c)return c;let D=document.createElement("canvas"),R=D.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});return R?(D.addEventListener("webglcontextlost",M=>{M.preventDefault(),o.length=0;for(let j of d())j.contextLost=!0,j.drawError="WebGL context lost",j.canvas.style.display="none",Sd(j)}),D.addEventListener("webglcontextrestored",()=>{for(let M of d())M.contextLost=!rk(M),M.drawError=M.contextLost?"WebGL context restore failed":null,M.contextLost?Sd(M):ft(M)}),c={canvas:D,gl:R},c):null},m=D=>{let R=f(),M=R&&vd(R.gl);return!R||!M?null:{canvas:Jk(D),glCanvas:R.canvas,gl:R.gl,program:M,effectTargets:null,kuwaharaTargets:null,effectError:null}},p=(D,R,M)=>{r.delete(D);let j=t.get(D);if(j)return j.grading=R,j.source=M,ft(j),Me(D)&&!D.paused&&wi(j),!0;let W=o.pop();if(W)ky(W.canvas,D);else{let C=m(D);if(!C)return!1;W=C}let ee={element:D,...W,grading:R,compare:{...tr},lut:null,lutLoadingSrc:null,lutError:null,drawError:null,effectTargets:null,kuwaharaTargets:null,effectError:null,source:M,animationFrame:null,videoFrameHandle:null,resizeObserver:null,cleanup:[],touchedParent:null,parentInlinePosition:null,sourceHidden:!1,borderlessFrame:null,sourceInlineOpacity:null,sourceInlineOpacityPriority:"",sourceOpacityForCanvas:window.getComputedStyle(D).opacity||"1",sourceVisibleForCanvas:window.getComputedStyle(D).visibility!=="hidden",hasDrawn:!1,contextLost:!1,grainSeed:fy(D),destroyed:!1};return t.set(D,ee),n.add(D),Yk(ee),ft(ee),Me(D)&&!D.paused&&wi(ee),!0},x=(D,R)=>{if(s)return!1;let M=vi(D);if(!M)return!1;let j=t.get(M);if(!j){let W=Si(M);if(!zr(M,W)||!p(M,W,"attribute"))return!1;j=t.get(M)}return j?(j.compare=QM(R),ft(j),!0):!1},b=D=>{r.delete(D);let R=t.get(D);if(!R)return;let M=Xk(R);M&&(R.contextLost||o.length>=NM?Ps(M):o.push(M)),t.delete(D),n.delete(D)},y=()=>{if(s)return 0;let D=new Set;r.clear(),document.querySelectorAll($M).forEach(M=>{if(!Rn(M))return;D.add(M);let j=Si(M);zr(M,j)?bd(M)?p(M,j,"attribute"):(b(M),r.add(M)):b(M)});for(let M of n){let j=t.get(M);j&&(!M.isConnected||j.source==="attribute"&&!D.has(M))&&b(M)}return n.size},E=()=>{for(let D of r){if(D.isConnected&&!bd(D))continue;r.delete(D);let R=Si(D);D.isConnected&&zr(D,R)&&p(D,R,"attribute")}},v=()=>{if(s)return 0;E();let D=0;for(let R of n){let M=t.get(R);M&&ft(M)&&(D+=1)}return D},_=async()=>{let D=new Set;for(let R of n){let M=t.get(R)?.grading.lut;if(!M?.src.trim()||(M.intensity??1)<=0)continue;let j=Ed(M.src);j.state==="pending"&&D.add(j.promise)}return D.size>0&&await Promise.allSettled(D),v(),D.size},H=()=>{if(s)return 0;E();let D=0;for(let R of n){let M=t.get(R);M&&jk(R)&&ft(M)&&(D+=1)}return D},I=(D,R)=>{if(s)return!1;let M=vi(D);if(!M)return!1;let j=os(R);return zr(M,j)?p(M,j,"live"):(b(M),!0)},k=(D,R)=>{if(!Rn(D))return!1;let M=t.get(D);if(!M){if(!R)return!1;let j=Si(D);return zr(D,j)&&p(D,j,"attribute")}return M.sourceVisibleForCanvas=R,!R&&M.source==="attribute"&&b(D),!0},A=D=>Rn(D)&&t.has(D),L=D=>{let R=vi(D);if(!R)return{state:"missing",message:"Media not found"};let M=t.get(R);if(M)return M.effectError?{state:"unavailable",message:M.effectError}:M.drawError?{state:"unavailable",message:M.drawError}:M.lutError?{state:"unavailable",message:`LUT error: ${M.lutError}`}:M.grading.lut&&M.lutLoadingSrc?{state:"pending",message:"Loading LUT"}:M.canvas.style.display==="none"?{state:"pending",message:"Waiting for media frame"}:{state:"active",message:M.lut?"Shader + LUT active":"Shader active"};let j=Si(R);return zr(R,j)?bd(R)?{state:"unavailable",message:"WebGL unavailable"}:{state:"pending",message:"Waiting for visible media"}:{state:"inactive",message:"No grading applied"}},P=async(D,R,M)=>{let j=async()=>{if(s||R.length===0)return null;let ee=vi(D);return!ee||(a??(a=Wk()),!a)?null:qk(a,ee,R,M?.maxDimension,M?.useMediaTime)},W=l.then(j,j);return l=W.then(()=>{},()=>{}),W},q=D=>{let R=vi(D);if(!Me(R))return null;if(!R.paused)return()=>{};let M=R.currentTime,j=R.loop,W=R.muted;return R.loop=!0,R.muted=!0,(R.ended||Number.isFinite(R.duration)&&M>=R.duration)&&(R.currentTime=0),e?.lease(R),R.play().catch(()=>{}),()=>{e?.release(R),R.pause(),R.loop=j,R.muted=W,R.currentTime=M}},X=()=>{if(!s){s=!0,i?.disconnect(),i=null;for(let D of n)b(D);r.clear();for(let D of o)Ps(D);o.length=0,c?.gl.getExtension("WEBGL_lose_context")?.loseContext(),c=null,a&&(Ps(a,!0),a=null)}};document.body&&(i=new MutationObserver(()=>y()),i.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[ns]}));let Z={refresh:y,redraw:v,redrawAnimated:H,waitForActiveLuts:_,setGrading:I,setCompare:x,setSourceVisibility:k,isGraded:A,getStatus:L,renderPreviews:P,startPreviewPlayback:q,destroy:X},J=window;return J.__hf=J.__hf||{},J.__hf.colorGrading=Z,y(),Z}var Qk={mulX:374761393,mulY:668265263,mulMix:1274126177,offset:2654435769,shift1:13,shift2:16,divisor:4294967296},{mulX:Zk,mulY:eL,mulMix:Ny,offset:tL,shift1:nL,shift2:rL,divisor:oL}=Qk,iL=20,Fy=`#version 300 es
|
|
364
364
|
precision highp float;
|
|
365
365
|
precision highp int;
|
|
366
366
|
|
|
@@ -384,11 +384,11 @@ uniform float u_randomSeed;
|
|
|
384
384
|
uniform float u_opacity;
|
|
385
385
|
|
|
386
386
|
float hfHashUnit(int ix, int iy, int seed) {
|
|
387
|
-
uint h = ((uint(ix) * ${
|
|
388
|
-
h = h ^ (h >> ${
|
|
389
|
-
h = h * ${
|
|
390
|
-
h = h ^ (h >> ${
|
|
391
|
-
return float(h) / ${
|
|
387
|
+
uint h = ((uint(ix) * ${Zk}u) ^ (uint(iy) * ${eL}u) ^ (uint(seed) * ${Ny}u)) + ${tL}u;
|
|
388
|
+
h = h ^ (h >> ${nL}u);
|
|
389
|
+
h = h * ${Ny}u;
|
|
390
|
+
h = h ^ (h >> ${rL}u);
|
|
391
|
+
return float(h) / ${oL}.0;
|
|
392
392
|
}
|
|
393
393
|
|
|
394
394
|
float hfFade(float f, float noiseType) {
|
|
@@ -418,7 +418,7 @@ float hfFbm(vec2 p) {
|
|
|
418
418
|
float freq = 1.0;
|
|
419
419
|
float sum = 0.0;
|
|
420
420
|
float norm = 0.0;
|
|
421
|
-
for (int i = 0; i < ${
|
|
421
|
+
for (int i = 0; i < ${iL}; i++) {
|
|
422
422
|
if (float(i) >= u_complexity) break;
|
|
423
423
|
sum += amp * hfValueNoise(p * freq, seed + i);
|
|
424
424
|
norm += amp;
|
|
@@ -438,7 +438,7 @@ void main() {
|
|
|
438
438
|
float a = clamp(u_opacity / 100.0, 0.0, 1.0);
|
|
439
439
|
fragColor = vec4(v * a, v * a, v * a, a);
|
|
440
440
|
}
|
|
441
|
-
`;var
|
|
441
|
+
`;var Cd={lumaR:.299,lumaG:.587,lumaB:.114},{lumaR:aL,lumaG:sL,lumaB:lL}=Cd,Iy=`#version 300 es
|
|
442
442
|
precision highp float;
|
|
443
443
|
|
|
444
444
|
in vec2 v_uv;
|
|
@@ -473,7 +473,7 @@ float hfMapChannel(vec4 premultiplied, float selector) {
|
|
|
473
473
|
if (selector < 2.5) return rgb.g;
|
|
474
474
|
if (selector < 3.5) return rgb.b;
|
|
475
475
|
if (selector < 4.5) return premultiplied.a;
|
|
476
|
-
if (selector < 8.5) return dot(rgb, vec3(${
|
|
476
|
+
if (selector < 8.5) return dot(rgb, vec3(${aL}, ${sL}, ${lL}));
|
|
477
477
|
if (selector < 9.5) return 1.0;
|
|
478
478
|
return 0.5;
|
|
479
479
|
}
|
|
@@ -485,7 +485,7 @@ void main() {
|
|
|
485
485
|
vec2 d = vec2((h - 0.5) * 2.0 * u_maxH, (v - 0.5) * 2.0 * u_maxV);
|
|
486
486
|
fragColor = hfSampleSrc(v_uv + d / u_size);
|
|
487
487
|
}
|
|
488
|
-
`;var{lumaR:
|
|
488
|
+
`;var{lumaR:uL,lumaG:cL,lumaB:dL}=Cd;var Dy=`#version 300 es
|
|
489
489
|
precision highp float;
|
|
490
490
|
|
|
491
491
|
in vec2 v_uv;
|
|
@@ -503,7 +503,7 @@ uniform float u_mode;
|
|
|
503
503
|
float hfCoverage(vec4 matte, float mode) {
|
|
504
504
|
if (mode < 1.5) return matte.a;
|
|
505
505
|
if (mode < 2.5) return 1.0 - matte.a;
|
|
506
|
-
float luma = dot(matte.rgb, vec3(${
|
|
506
|
+
float luma = dot(matte.rgb, vec3(${uL}, ${cL}, ${dL}));
|
|
507
507
|
if (mode < 3.5) return luma;
|
|
508
508
|
return 1.0 - luma;
|
|
509
509
|
}
|
|
@@ -513,7 +513,7 @@ void main() {
|
|
|
513
513
|
vec4 matte = texture(u_src2, v_uv);
|
|
514
514
|
fragColor = src * clamp(hfCoverage(matte, u_mode), 0.0, 1.0);
|
|
515
515
|
}
|
|
516
|
-
`;var
|
|
516
|
+
`;var fL={lcgMulA:1103515245,lcgMulB:12996205,lcgAdd:12345,highMask:32640,lowMask:255,byteScale:32704},{lcgMulA:mL,lcgMulB:pL,lcgAdd:Py,highMask:hL,lowMask:gL,byteScale:bL}=fL,Oy=`#version 300 es
|
|
517
517
|
precision highp float;
|
|
518
518
|
// NOT decoration: a fragment shader's default integer precision is mediump,
|
|
519
519
|
// and a mediump uint is only guaranteed 16 bits (ESSL 3.00 \xA74.5.2). Every step
|
|
@@ -553,9 +553,9 @@ uint hfJenkinsMix(uint a, uint b, uint c) {
|
|
|
553
553
|
// The hash's 15-bit output byte for one channel.
|
|
554
554
|
float hfNoiseByte(uint a, uint y, uint seed) {
|
|
555
555
|
uint h = hfJenkinsMix(a, y, seed);
|
|
556
|
-
uint t2 = h * ${
|
|
557
|
-
uint t4 = t2 * ${
|
|
558
|
-
return float(((t4 >> 16u) & ${
|
|
556
|
+
uint t2 = h * ${mL}u + ${Py}u;
|
|
557
|
+
uint t4 = t2 * ${pL}u + ${Py}u;
|
|
558
|
+
return float(((t4 >> 16u) & ${gL}u) ^ ((t2 >> 9u) & ${hL}u));
|
|
559
559
|
}
|
|
560
560
|
|
|
561
561
|
void main() {
|
|
@@ -575,7 +575,7 @@ void main() {
|
|
|
575
575
|
} else {
|
|
576
576
|
nz = vec3(hfNoiseByte(x, y, seed));
|
|
577
577
|
}
|
|
578
|
-
nz = amount * (nz / ${
|
|
578
|
+
nz = amount * (nz / ${bL}.0 - 0.5);
|
|
579
579
|
|
|
580
580
|
vec4 out4 = vec4(src.rgb + nz, src.a);
|
|
581
581
|
// A valid premultiplied colour needs rgb <= a component-wise; noise on a
|
|
@@ -585,7 +585,7 @@ void main() {
|
|
|
585
585
|
out4.rgb = min(out4.rgb, out4.a);
|
|
586
586
|
fragColor = u_clipping > 0.5 ? clamp(out4, 0.0, 1.0) : out4;
|
|
587
587
|
}
|
|
588
|
-
`;var
|
|
588
|
+
`;var xL={tau:6.283185307179586,degreesPerTurn:360},{tau:yL,degreesPerTurn:SL}=xL,Hy=`#version 300 es
|
|
589
589
|
precision highp float;
|
|
590
590
|
|
|
591
591
|
in vec2 v_uv;
|
|
@@ -616,18 +616,19 @@ void main() {
|
|
|
616
616
|
vec2 travel = vec2(sin(dir), -cos(dir));
|
|
617
617
|
vec2 swing = vec2(-travel.y, travel.x);
|
|
618
618
|
float proj = (px.x + 1.0) * travel.x + px.y * travel.y;
|
|
619
|
-
float turns = proj / max(u_width, 1.0) + u_phase / ${
|
|
620
|
-
float disp = u_height * sin(${
|
|
619
|
+
float turns = proj / max(u_width, 1.0) + u_phase / ${SL}.0 + u_speed * u_t;
|
|
620
|
+
float disp = u_height * sin(${yL} * turns);
|
|
621
621
|
fragColor = hfSampleSrc((px + swing * disp) / u_size);
|
|
622
622
|
}
|
|
623
|
-
`;var
|
|
623
|
+
`;var Td="data-vfx-chain",Gy=1,By=[{value:1,label:"Red"},{value:2,label:"Green"},{value:3,label:"Blue"},{value:4,label:"Alpha"},{value:5,label:"Luminance"},{value:6,label:"Hue"},{value:7,label:"Lightness"},{value:8,label:"Saturation"},{value:9,label:"Full"},{value:10,label:"Half"},{value:11,label:"Off"}],vL=[{id:"fractal-noise",label:"Fractal Noise",ae:"ADBE Fractal Noise",capture:"none",frag:Fy,params:[{kind:"enum",key:"fractalType",label:"Fractal Type",options:[{value:1,label:"Basic"}],default:1,hint:"Only Basic is implemented in v1."},{kind:"enum",key:"noiseType",label:"Noise Type",options:[{value:1,label:"Block"},{value:2,label:"Linear"},{value:3,label:"Soft Linear"},{value:4,label:"Spline"}],default:3},{kind:"bool",key:"invert",label:"Invert",default:!1},{kind:"number",key:"contrast",label:"Contrast",unit:"%",min:0,max:1e3,step:1,default:100},{kind:"number",key:"brightness",label:"Brightness",unit:"",min:-1e3,max:1e3,step:1,default:0},{kind:"number",key:"scale",label:"Scale",unit:"%",min:6,max:1e4,step:1,default:100},{kind:"number",key:"complexity",label:"Complexity",unit:"",min:1,max:20,step:1,default:6},{kind:"number",key:"subInfluence",label:"Sub Influence",unit:"%",min:0,max:100,step:1,default:70},{kind:"number",key:"subScaling",label:"Sub Scaling",unit:"%",min:0,max:100,step:1,default:56},{kind:"number",key:"evolution",label:"Evolution",unit:"revolutions",min:-1e4,max:1e4,step:.01,default:0,animatable:!0},{kind:"number",key:"randomSeed",label:"Random Seed",unit:"",min:0,max:99999,step:1,default:0},{kind:"number",key:"opacity",label:"Opacity",unit:"%",min:0,max:100,step:1,default:100,animatable:!0}]},{id:"wave-warp",label:"Wave Warp",ae:"ADBE Wave Warp",capture:"self",frag:Hy,params:[{kind:"enum",key:"waveType",label:"Wave Type",options:[{value:1,label:"Sine"}],default:1,hint:"Only Sine is implemented in v1; the exporter marks the others cosmetic."},{kind:"number",key:"height",label:"Wave Height",unit:"px",min:-1e3,max:1e3,step:1,default:10,animatable:!0},{kind:"number",key:"width",label:"Wave Width",unit:"px",min:1,max:1e4,step:1,default:40,animatable:!0},{kind:"number",key:"direction",label:"Direction",unit:"deg",min:-360,max:360,step:1,default:90},{kind:"number",key:"speed",label:"Wave Speed",unit:"waves/s",min:-100,max:100,step:.1,default:1},{kind:"enum",key:"pinning",label:"Pinning",options:[{value:1,label:"None"}],default:1,hint:"Only None is implemented in v1; the exporter marks the others cosmetic."},{kind:"number",key:"phase",label:"Phase",unit:"deg",min:-360,max:360,step:1,default:0,animatable:!0}]},{id:"displacement-map",label:"Displacement Map",ae:"ADBE Displacement Map",capture:"self",frag:Iy,params:[{kind:"ref",key:"map",label:"Displacement Map Layer",optional:!0},{kind:"enum",key:"useH",label:"Use For Horizontal Displacement",options:By,default:1,hint:"Hue, Lightness and Saturation are read as Luminance in v1."},{kind:"number",key:"maxH",label:"Max Horizontal Displacement",unit:"px",min:-32e3,max:32e3,step:1,default:5,animatable:!0},{kind:"enum",key:"useV",label:"Use For Vertical Displacement",options:By,default:2,hint:"Hue, Lightness and Saturation are read as Luminance in v1."},{kind:"number",key:"maxV",label:"Max Vertical Displacement",unit:"px",min:-32e3,max:32e3,step:1,default:5,animatable:!0},{kind:"enum",key:"behavior",label:"Displacement Map Behavior",options:[{value:1,label:"Center Map"}],default:1,hint:"Only Center Map is implemented in v1."},{kind:"enum",key:"edge",label:"Edge Behavior",options:[{value:0,label:"Off"}],default:0,hint:"Only Off (transparent outside the layer) is implemented in v1."},{kind:"bool",key:"expand",label:"Expand Output",default:!0}]},{id:"luma-matte",label:"Matte",capture:"self",frag:Dy,params:[{kind:"ref",key:"matte",label:"Matte Layer"},{kind:"enum",key:"mode",label:"Matte Mode",options:[{value:1,label:"Alpha"},{value:2,label:"Alpha Inverted"},{value:3,label:"Luma"},{value:4,label:"Luma Inverted"}],default:1}]},{id:"noise",label:"Noise",ae:"ADBE Noise",capture:"self",frag:Oy,params:[{kind:"number",key:"amount",label:"Amount of Noise",unit:"%",min:0,max:400,step:.1,default:0,animatable:!0},{kind:"bool",key:"useColorNoise",label:"Use Color Noise",default:!1},{kind:"bool",key:"clipping",label:"Clip Result Values",default:!0}]}],Ws=new Map(vL.map(e=>[e.id,e]));function Vy(e){return Ws.get(e)}function $y(e,t){let n=Ws.get(e);if(!n)return{};let r={};for(let o of n.params){let i=t?.[o.key];r[o.key]=o.kind==="enum"?EL(o,i):o.kind==="bool"?AL(o,i):o.kind==="ref"?wL(i):_L(o,i)}return r}function qy(e){let t=typeof e=="number"?e:typeof e=="string"&&e.trim()!==""?Number(e):Number.NaN;return Number.isFinite(t)?t:void 0}function EL(e,t){let n=qy(t);return n!==void 0&&e.options.some(r=>r.value===n)?n:e.default}function AL(e,t){return typeof t=="boolean"?t:e.default}function wL(e){return typeof e=="string"?e:""}function _L(e,t){let n=qy(t);return n!==void 0?Math.min(e.max,Math.max(e.min,n)):e.default}var Lt=class extends Error{constructor(t){super(t),this.name="VfxChainError"}};function Rd(e){return e.nodes.filter(t=>t.enabled!==!1)}var Uy={none:0,self:1,backdrop:2};function zy(e){let t="none";for(let n of Rd(e)){let r=Ws.get(n.type);r&&Uy[r.capture]>Uy[t]&&(t=r.capture)}return t}function jy(e){let t;try{t=JSON.parse(e)}catch(o){throw new Lt(`Chain file is not valid JSON: ${o.message}`)}if(typeof t!="object"||t===null)throw new Lt("Chain file must be a JSON object.");let n=t;if(n.version!==Gy)throw new Lt(`Unsupported chain version: ${String(n.version)}`);if(!Array.isArray(n.nodes))throw new Lt("Chain file is missing a `nodes` array.");let r=n.nodes.map(RL);return{version:Gy,nodes:r}}function Wy(e){return typeof e=="object"&&e!==null}function CL(e,t){if(typeof e.type!="string"||!Ws.has(e.type))throw new Lt(`Node ${t} has unknown effect type: ${String(e.type)}`);return e.type}function TL(e,t){if(typeof e.id!="string"||e.id==="")throw new Lt(`Node ${t} is missing an id.`);return e.id}function RL(e,t){if(!Wy(e))throw new Lt(`Node ${t} is not an object.`);let n=e,r=CL(n,t),o=TL(n,t),i=Wy(n.params)?n.params:{};return ML({type:r,id:o,enabled:n.enabled===!1?!1:void 0,params:i})}function ML(e){for(let t of Object.keys(e))e[t]===void 0&&delete e[t];return e}var Ky='canvas[layoutsubtree], canvas[content="drawable"]';function jr(e=window){let t=e.CanvasRenderingContext2D?.prototype;if(!t||!("drawElementImage"in t))return null;let n=e.document.createElement("canvas");return"requestPaint"in n?"layoutSubtree"in n?"layoutsubtree":"updateElementGeometry"in n?"drawable":null:null}function Vs(e,t){t==="layoutsubtree"?e.setAttribute("layoutsubtree",""):e.setAttribute("content","drawable")}function $s(e,t){t==="drawable"&&e.setAttribute("drawable","")}function Yy(e,t){t==="drawable"&&e.removeAttribute("drawable")}var kL="data-vfx-ref-visible",tS="[HyperFrames] composition script error:",LL={preserveDrawingBuffer:!0,antialias:!1,premultipliedAlpha:!0,alpha:!0},NL=`#version 300 es
|
|
624
624
|
out vec2 v_uv;
|
|
625
625
|
void main() {
|
|
626
626
|
vec2 p = vec2(float((gl_VertexID << 1) & 2), float(gl_VertexID & 2));
|
|
627
627
|
v_uv = p;
|
|
628
628
|
gl_Position = vec4(p * 2.0 - 1.0, 0.0, 1.0);
|
|
629
629
|
}
|
|
630
|
-
`,nn=[],Ny=30,Fy=0,dd=0,Iy=-1,ld=null,ud=null;function ht(e){console.error(Ly,`vfx: ${e}`)}function Dy(e){console.error(Ly,`vfx-frame: ${e}`)}function Cy(e,t,n){let r=e.createShader(t);return r?(e.shaderSource(r,n),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:(ht(`shader failed to compile: ${e.getShaderInfoLog(r)??"(no log)"}`),e.deleteShader(r),null)):null}function Kk(e,t){let n=Cy(e,e.VERTEX_SHADER,jk),r=n?Cy(e,e.FRAGMENT_SHADER,t):null;if(!n||!r)return null;let i=e.createProgram();return i?(e.attachShader(i,n),e.attachShader(i,r),e.linkProgram(i),e.deleteShader(n),e.deleteShader(r),e.getProgramParameter(i,e.LINK_STATUS)?i:(ht(`program failed to link: ${e.getProgramInfoLog(i)??"(no log)"}`),e.deleteProgram(i),null)):null}var Ty="position:absolute;inset:0;width:100%;height:100%;pointer-events:none;";function Yk(e){let t=e.querySelector("canvas.hf-vfx-out");if(zt(t))return t.style.cssText=Ty+t.style.cssText,t;let n=document.createElement("canvas");return n.className="hf-vfx-out",n.style.cssText=Ty,e.appendChild(n),n}function Xk(e,t,n){let r={};for(let i of n.params)i.kind!=="ref"&&(r[i.key]=e.getUniformLocation(t,`u_${i.key}`));return{size:e.getUniformLocation(t,"u_size"),t:e.getUniformLocation(t,"u_t"),fps:e.getUniformLocation(t,"u_fps"),src:e.getUniformLocation(t,"u_src"),src2:e.getUniformLocation(t,"u_src2"),hasSrc2:e.getUniformLocation(t,"u_hasSrc2"),params:r}}function Jk(e,t,n,r){return r.optional?{kind:"none"}:(ht(`${Ut(e)}: node "${t.id}" (${n.id}) needs a "${r.key}" param naming the id of the element to read as its second source.`),{kind:"error"})}function Qk(e,t,n,r,i,o){let a=n.params.find(m=>m.kind==="ref");if(!a)return{kind:"none"};let l=r[a.key];if(typeof l!="string"||l==="")return Jk(e,t,n,a);let s=e.ownerDocument.getElementById(l);if(!Se(s))return ht(`${Ut(e)}: node "${t.id}" (${n.id}) names "${a.key}" element #${l}, which is not in the composition.`),{kind:"error"};if(s===e)return a.optional?{kind:"none"}:{kind:"self"};let c=o.get(s);if(c)return{kind:"source",source:c};let d=Py(s,i,`${Ut(e)}: "${a.key}" source`);return d?(d.visible=d.canvas.hasAttribute(qk),o.set(s,d),{kind:"source",source:d}):{kind:"error"}}function Zk(e,t,n){let r=[],i=new Map;for(let o of sd(t)){let a=vy(o.type);if(!a)return ht(`node "${o.id}" has unknown effect type "${o.type}"`),null;let l=Kk(e,a.frag);if(!l)return ht(`node "${o.id}" (${a.id}) has no usable program`),null;let s=Ey(a.id,o.params),c=Qk(n,o,a,s,e,i);if(c.kind==="error")return null;r.push({node:o,def:a,program:l,params:s,locations:Xk(e,l,a),...c.kind==="source"?{ref:c.source}:{},selfRef:c.kind==="self"})}return r}function eL(e){let t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),t}function tL(e){let t=e.parentElement;if(!t||e.id==="")return null;let n=t.children;for(let r=0;r<n.length;r++){let i=n.item(r);if(zt(i)&&i.classList.contains("hf-vfx-src")&&i.getAttribute("data-vfx-for")===e.id)return i}return null}function Py(e,t,n){let r=tL(e),i=r??e.querySelector("canvas.hf-vfx-src"),o=zt(i)?i.querySelector(":scope > .hf-vfx-in"):null;if(!zt(i)||!Se(o)){ht(`${n}: a capturing chain needs <canvas layoutsubtree class="hf-vfx-src"><div class="hf-vfx-in">\u2026</div></canvas> in source: inside the element for its own pixels, or beside it with data-vfx-for="${e.id}" for the layers below it.`);return}let a=i.getContext("2d");if(!a||typeof a.drawElementImage!="function"){ht(`${n}: drawElementImage is unavailable, so the layer cannot be captured. In Studio, enable chrome://flags/#canvas-draw-element.`);return}return{canvas:i,inner:o,ctx:a,texture:eL(t),backdrop:r!==null,visible:!1,emptyBoxReported:!1,laidOutEmpty:Tn(o)===null}}function nL(e){e.out.addEventListener("webglcontextlost",t=>{t.preventDefault(),!(!nn.includes(e)||e.contextLost)&&(e.contextLost=!0,ht(`${Ut(e.host)}: WebGL context lost.`))})}function rL(e){try{return wy(e.getAttribute(ad)??"")}catch(t){let n=t instanceof Ct?t.message:String(t);return ht(`${Ut(e)}: ${n}`),null}}function iL(e){let t=rL(e);if(!t)return null;let n=Yk(e),r=n.getContext("webgl2",zk);if(!r)return ht(`${Ut(e)}: WebGL2 is unavailable, so the chain cannot paint.`),n.remove(),null;let i=Zk(r,t,e);if(!i)return n.remove(),null;let o=_y(t),a=o==="none"?void 0:Py(e,r,Ut(e));if(o!=="none"&&!a)return n.remove(),null;let l=a?.backdrop?"backdrop":o,s={host:e,chain:t,capture:l,out:n,gl:r,passes:i,src:a,contextLost:!1};return nL(s),s}function fd(e){let t=getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function Oy(e){if(getComputedStyle(e.inner).visibility==="hidden")return!1;for(let t=e.inner;t;t=t.parentElement)if(getComputedStyle(t).display==="none")return!1;return!0}function Ut(e){return e.id?`#${e.id}`:`<${e.tagName.toLowerCase()}>`}function Vr(e){let t=e.src?[e.src]:[];for(let n of e.passes)n.ref&&!t.includes(n.ref)&&t.push(n.ref);return t}function md(e){return e.src?.backdrop===!0}function yo(e){let t=[];for(let n of e.passes)n.ref?.visible&&!t.includes(n.ref)&&t.push(n.ref);return t}function oL(){for(let e of nn){let{gl:t}=e;for(let n of e.passes)t.deleteProgram(n.program);for(let n of Vr(e))t.deleteTexture(n.texture);if(e.ping){for(let n of e.ping.textures)t.deleteTexture(n);for(let n of e.ping.framebuffers)t.deleteFramebuffer(n)}}}function Cs(e,t){oL(),nn=[],Ny=Number.isFinite(t)&&t>0?t:30;let n=e.querySelectorAll(`[${ad}]`);for(let r of n){if(!Se(r))continue;let i=iL(r);i&&nn.push(i)}return nn}function Tn(e){let t=typeof window>"u"?1:window.devicePixelRatio||1,n=Math.round(e.offsetWidth*t),r=Math.round(e.offsetHeight*t);return n>0&&r>0?{width:n,height:r}:null}function Ry(e,t,n){let r=e.createTexture();e.bindTexture(e.TEXTURE_2D,r),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t,n,0,e.RGBA,e.UNSIGNED_BYTE,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE);let i=e.createFramebuffer();return e.bindFramebuffer(e.FRAMEBUFFER,i),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0),[r,i]}function aL(e,t,n){let r=e.ping;if(r&&r.width===t&&r.height===n)return r;let{gl:i}=e;if(r){for(let s of r.textures)i.deleteTexture(s);for(let s of r.framebuffers)i.deleteFramebuffer(s)}let o=Ry(i,t,n),a=Ry(i,t,n),l={textures:[o[0],a[0]],framebuffers:[o[1],a[1]],width:t,height:n};return e.ping=l,l}function sL(e,t,n){if(e.kind==="ref")return null;if(e.kind==="number"&&e.animatable){let i=n.getPropertyValue(`--vfx-${t.node.id}-${e.key}`).trim(),o=i===""?Number.NaN:Number.parseFloat(i);if(Number.isFinite(o))return Math.min(e.max,Math.max(e.min,o))}let r=t.params[e.key];return typeof r=="boolean"?r?1:0:typeof r=="number"?r:0}function lL(e,t,n,r,i,o){let{gl:a}=e,{locations:l}=t;a.uniform2f(l.size,i,o),a.uniform1f(l.t,r),a.uniform1f(l.fps,Ny),a.uniform1f(l.hasSrc2,t.ref||t.selfRef?1:0);for(let s of t.def.params){let c=sL(s,t,n);c!==null&&a.uniform1f(l.params[s.key]??null,c)}}function uL(e,t,n){return e===t||!n?null:n.framebuffers[e%2]??null}function cL(e,t,n){return t===0?e.src?.texture??null:n?.textures[(t-1)%2]??null}function dL(e,t,n,r){let{gl:i}=e,o=e.passes[t];i.bindFramebuffer(i.FRAMEBUFFER,uL(t,n,r));let a=cL(e,t,r);a&&My(i,o.locations.src,a,0),o.ref?(My(i,o.locations.src2,o.ref.texture,1),i.activeTexture(i.TEXTURE0)):o.selfRef&&a&&i.uniform1i(o.locations.src2,0)}function My(e,t,n,r){e.activeTexture(r===0?e.TEXTURE0:e.TEXTURE1),e.bindTexture(e.TEXTURE_2D,n),e.uniform1i(t,r)}function pd(e,t){let n=Tn(e.host);if(!n)return;let{gl:r,out:i,passes:o}=e;i.width!==n.width&&(i.width=n.width),i.height!==n.height&&(i.height=n.height);let a=o.length>1?aL(e,n.width,n.height):null,l=getComputedStyle(e.host),s=o.length-1;for(let c=0;c<=s;c++){let d=o[c];r.useProgram(d.program),dL(e,c,s,a),r.viewport(0,0,n.width,n.height),lL(e,d,l,t,n.width,n.height),r.drawArrays(r.TRIANGLES,0,3)}}function Hy(e,t){e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.texture),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,1),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t.canvas),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,0),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,0)}var fL={upload:!0,keepBitmap:!1},mL={upload:!1,keepBitmap:!0},pL={upload:!0,keepBitmap:!0},hL={upload:!1,keepBitmap:!0};function Gy(e,t){e.canvas.width!==t.width&&(e.canvas.width=t.width),e.canvas.height!==t.height&&(e.canvas.height=t.height)}function ky(e,t,n,r){return Gy(t,n),t.ctx.clearRect(0,0,n.width,n.height),r.upload&&Hy(e.gl,t),!0}function hd(e,t,n,r,i){if(!Oy(t))return ky(e,t,n,i);if(Tn(t.inner)===null)return t.emptyBoxReported||(t.emptyBoxReported=!0,Dy(`${Ut(e.host)}: the .hf-vfx-in wrapper measures 0\xD70, so its capture would be empty. Inside a layoutsubtree canvas an inset or percentage box has no size, so the wrapper must state an explicit width and height in px.`)),ky(e,t,n,i);Gy(t,n),t.ctx.clearRect(0,0,n.width,n.height);try{t.ctx.drawElementImage(t.inner,0,0,n.width,n.height)}catch(o){return r||ht(`${Ut(e.host)}: drawElementImage failed: ${o.message} In Studio, enable chrome://flags/#canvas-draw-element.`),!1}return i.upload&&Hy(e.gl,t),i.keepBitmap||t.ctx.clearRect(0,0,n.width,n.height),!0}function By(e,t){return e.visible?Tn(e.inner)??t:t}function Uy(e,t=!1){let n=Tn(e.host),r=Vr(e);if(!n||r.length===0)return!1;let i=!0;for(let o of r){let a=o.visible?pL:fL;hd(e,o,By(o,n),t,a)||(i=!1)}return i}function Wy(e,t=!1){let n=e.src;if(!n)return!1;let r=Tn(e.host)??Tn(n.inner);return r?hd(e,n,r,t,mL):!1}function cd(e,t=!1){let n=!0;for(let r of yo(e)){let i=By(r,{width:0,height:0});hd(e,r,i,t,hL)||(n=!1)}return n}function gL(e){let t=!1;return md(e)&&Wy(e)&&(t=!0),yo(e).length>0&&cd(e)&&(t=!0),t}function bL(){let e=!1;for(let t of nn)if(!t.contextLost&&Vr(t).length!==0){if(!fd(t.host)){gL(t)&&(e=!0);continue}Uy(t)&&(pd(t,Fy),e=!0)}return Iy=dd,window.__hf_page_composite_pending=!1,e}function xL(){let e=window,t=e.__hf_page_composite_resolve;t!==ld&&(ud=typeof t=="function"?t:null,ld=()=>{let n=ud?ud():!1;return bL()||n},e.__hf_page_composite_resolve=ld),e.__hf_page_composite_pending=!0}var Vy=2e3;function yL(e){return new Promise(t=>{let n=!1,r=a=>{n||(n=!0,clearTimeout(o),e.removeEventListener("paint",i),t(a))},i=()=>r("painted"),o=setTimeout(()=>r("timeout"),Vy);e.addEventListener("paint",i,{once:!0});try{e.requestPaint?.()}catch{}if(typeof requestAnimationFrame!="function"){r("painted");return}requestAnimationFrame(()=>requestAnimationFrame(()=>r("painted")))})}async function SL(e,t){return(await Promise.all(t.map(r=>yL(r.canvas)))).includes("timeout")?(Dy(`${Ut(e.host)}: no paint arrived within ${Vy}ms, so this frame's capture was skipped (a BeginFrame-controlled compositor without a tick for this frame is a known cause).`),!1):!0}function vL(e){return fd(e.host)?"paint":md(e)?"passThrough":"refOnly"}function EL(e,t){return(t==="passThrough"?[...e.src?[e.src]:[],...yo(e)]:t==="refOnly"?yo(e):Vr(e)).filter(Oy)}function AL(e,t){return t!==dd||Iy===t?!1:nn.includes(e)&&!e.contextLost}async function _L(e,t,n,r){let i=vL(e);if(await SL(e,EL(e,i))&&AL(e,n)){if(i==="passThrough"){Wy(e,r),cd(e,r);return}if(i==="refOnly"){cd(e,r);return}Uy(e,r)&&pd(e,t)}}async function wL(e,t,n,r){await Promise.all(e.map(i=>_L(i,t,n,r)))}function CL(){for(let e of nn.flatMap(Vr)){let t=Tn(e.inner)===null;e.laidOutEmpty&&!t&&e.canvas.insertBefore(e.inner,e.inner.nextSibling),e.laidOutEmpty=t}}function gd(e,t){Fy=e;let n=++dd;CL();let r=[];for(let i of nn)if(!i.contextLost){if(!fd(i.host)){(md(i)||yo(i).length>0)&&r.push(i);continue}Vr(i).length>0?r.push(i):pd(i,e)}r.length!==0&&(t?.engineMode&&xL(),it(wL(r,e,n,t?.engineMode===!0)))}var $y="__HF_PAGE_MOTION_BLUR_OFF__",qy="__HF_DEVICE_SCALE_FACTOR__";function zy(e=window){let t=e,n=t.CanvasRenderingContext2D?.prototype,r=t.HTMLCanvasElement?.prototype;return!!n&&!!r&&"drawElementImage"in n&&"requestPaint"in r}var $r={a:1,b:0,c:0,d:1,e:0,f:0};function Ts(e,t){return{a:e.a*t.a+e.c*t.b,b:e.b*t.a+e.d*t.b,c:e.a*t.c+e.c*t.d,d:e.b*t.c+e.d*t.d,e:e.a*t.e+e.c*t.f+e.e,f:e.b*t.e+e.d*t.f+e.f}}function bd(e,t,n){return Ts(e,{a:1,b:0,c:0,d:1,e:t,f:n})}function Jy(e){let t=e.a*e.d-e.b*e.c;return!Number.isFinite(t)||Math.abs(t)<1e-12?null:{a:e.d/t,b:-e.b/t,c:-e.c/t,d:e.a/t,e:(e.c*e.f-e.d*e.e)/t,f:(e.b*e.e-e.a*e.f)/t}}function TL(e,t,n){return[[e.e,e.f],[e.a*t+e.e,e.b*t+e.f],[e.c*n+e.e,e.d*n+e.f],[e.a*t+e.c*n+e.e,e.b*t+e.d*n+e.f]]}function RL(e,t,n){let r=jy(e),i=jy(t),o=i.angle-r.angle;o>Math.PI?o-=2*Math.PI:o<-Math.PI&&(o+=2*Math.PI);let a=(l,s)=>l+(s-l)*n;return ML({angle:r.angle+o*n,sx:a(r.sx,i.sx),sy:a(r.sy,i.sy),shear:a(r.shear,i.shear),e:a(e.e,t.e),f:a(e.f,t.f)})}function jy(e){let t=Math.hypot(e.a,e.b);return t<1e-12?{angle:0,sx:0,sy:e.d,shear:e.c,e:e.e,f:e.f}:{angle:Math.atan2(e.b,e.a),sx:t,sy:(e.a*e.d-e.b*e.c)/t,shear:(e.a*e.c+e.b*e.d)/t,e:e.e,f:e.f}}function ML(e){let t=Math.cos(e.angle),n=Math.sin(e.angle);return{a:e.sx*t,b:e.sx*n,c:e.shear*t-e.sy*n,d:e.shear*n+e.sy*t,e:e.e,f:e.f}}function Qy(e,t){if(e.length===0)return[];if(e.length===1)return Array.from({length:t},()=>e[0]);let n=e.length-1;return Array.from({length:t},(r,i)=>{let o=(i+.5)/t*n,a=Math.min(n-1,Math.floor(o));return RL(e[a],e[a+1],o-a)})}function xd(e,t,n,r,i){let o=1/0,a=1/0,l=-1/0,s=-1/0,c=0,d=null;for(let g of e){let v=TL(g,t,n);for(let[E,_]of v)o=Math.min(o,E),a=Math.min(a,_),l=Math.max(l,E),s=Math.max(s,_);if(d){let E=0;for(let _=0;_<4;_++){let[F,D]=d[_],[k,w]=v[_];E=Math.max(E,Math.hypot(k-F,w-D))}c+=E}d=v}let m=Math.max(0,Math.floor(o)-2),f=Math.max(0,Math.floor(a)-2),p=Math.min(r,Math.ceil(l)+2),y=Math.min(i,Math.ceil(s)+2),b=p>m&&y>f?{x:m,y:f,w:p-m,h:y-f}:null;return{travel:c,rect:b}}function Zy(e,t,n=1.5){let r=Math.min(e.length,Math.max(2,Math.ceil(t/n)));return r>=e.length?e:Array.from({length:r},(i,o)=>{let a=Math.round((o+.5)/r*e.length-.5);return e[a]})}function eS(e,t){let n=new Map,r=new Map,i=new Map,o=s=>{if(!t.has(s)&&n.has(s))return n.get(s)??null;let d=getComputedStyle(s),m=tS([NL(d,s.offsetWidth,s.offsetHeight),FL(d.transform)]),f=null;if(m){let[p=0,y=0]=d.transformOrigin.split(" ").map(b=>parseFloat(b)||0);f=bd(Ts(bd($r,p,y),m),-p,-y)}return t.has(s)||n.set(s,f),f},a=s=>{if(!s||s===e||!Xy(s))return[0,0];let c=r.get(s);if(!c){let d=s.offsetParent,[m,f]=a(d);c=[m+s.offsetLeft+(d?.clientLeft??0),f+s.offsetTop+(d?.clientTop??0)],r.set(s,c)}return c},l=s=>{if(!s||s===e||!Xy(s))return $r;let c=i.get(s);if(!c){let d=s.parentElement,[m,f]=a(s),[p,y]=a(d),[b,g]=kL(d);c=bd(l(d),m-p-b,f-y-g);let v=o(s);v&&(c=Ts(c,v)),i.set(s,c)}return c};return{pose:l,reset(){r=new Map,i=new Map}}}function kL(e){return e?[e.scrollLeft,e.scrollTop]:[0,0]}function tS(e){let t=null;for(let n of e)n&&(t=t?Ts(t,n):n);return t}var Ky=e=>e.trim().split(/\s+(?![^(]*\))/);function Yy(e,t){let n=0;for(let r of e.matchAll(/([+-]?\s*[\d.]+(?:e[+-]?\d+)?)(px|%)?/g)){let i=Number(r[1]?.replace(/\s/g,""));n+=r[2]==="%"?i/100*t:i}return n}var LL={deg:Math.PI/180,rad:1,grad:Math.PI/200,turn:2*Math.PI};function NL(e,t,n){let r=e.translate??"none",i=e.rotate??"none",o=e.scale??"none",a=[];if(r!=="none"){let[s="0",c="0"]=Ky(r);a.push({...$r,e:Yy(s,t),f:Yy(c,n)})}let l=/^(-?[\d.]+)(deg|rad|grad|turn)$/.exec(i);if(l){let s=Number(l[1])*(LL[l[2]??"deg"]??0);a.push({a:Math.cos(s),b:Math.sin(s),c:-Math.sin(s),d:Math.cos(s),e:0,f:0})}if(o!=="none"){let[s=1,c=s]=Ky(o).map(Number);a.push({...$r,a:s,d:c})}return tS(a)}function FL(e){let t=/^matrix(3d)?\(([^)]*)\)$/.exec(e.trim());if(!t)return null;let n=(t[2]??"").split(",").map(Number);if(n.some(d=>!Number.isFinite(d)))return null;let r=t[1]?[0,1,4,5,12,13]:[0,1,2,3,4,5];if(n.length!==(t[1]?16:6))return null;let[i=1,o=0,a=0,l=1,s=0,c=0]=r.map(d=>n[d]??0);return{a:i,b:o,c:a,d:l,e:s,f:c}}function Xy(e){return typeof e.offsetLeft=="number"}function nS(e,t){let n=new OffscreenCanvas(e,t),r=null;try{r=n.getContext("2d",{colorType:"float16"})}catch{r=null}if(r=r??n.getContext("2d"),!r)throw new Error("capture motion blur: no 2D context for the accumulation buffer");return{canvas:n,ctx:r}}function IL(e,t,n){let{travel:r,rect:i}=xd(e.taps,e.w,e.h,t,n);return i!==null&&r>=1}function yd(e,t,n=1){let r=Math.max(1,Math.round(e*n)),i=Math.max(1,Math.round(t*n)),o=nS(r,i),a=[],l=e*t*4,s=(f,p,y)=>{let b=Math.ceil(p*n),g=Math.ceil(y*n),v=a[f];return(!v||v.canvas.width<b||v.canvas.height<g)&&(v=nS(Math.max(b,v?.canvas.width??1),Math.max(g,v?.canvas.height??1)),a[f]=v),v};function c(f,p){return p.map((y,b)=>{let{w:g,h:v}=y,E=Jy(y.now);if(!E||g*v>l||!IL(y,e,t))return!1;let _=s(b,g,v).ctx;return _.setTransform(1,0,0,1,0,0),_.globalCompositeOperation="source-over",_.globalAlpha=1,_.clearRect(0,0,Math.ceil(g*n),Math.ceil(v*n)),_.setTransform(n*E.a,n*E.b,n*E.c,n*E.d,n*E.e,n*E.f),_.drawImage(f,0,0,e,t),!0})}function d(f,p,y){let{w:b,h:g}=p,{travel:v,rect:E}=xd(p.taps,b,g,e,t);if(!E)return 0;let _=Zy(p.taps,v),F=Math.max(0,Math.floor(E.x*n)),D=Math.max(0,Math.floor(E.y*n)),k=Math.min(r,Math.ceil((E.x+E.w)*n))-F,w=Math.min(i,Math.ceil((E.y+E.h)*n))-D;if(k<=0||w<=0)return 0;let L=o.ctx;L.setTransform(1,0,0,1,0,0),L.globalCompositeOperation="source-over",L.globalAlpha=1,L.clearRect(F,D,k,w),L.globalCompositeOperation="lighter",L.globalAlpha=1/_.length;for(let O of _)L.setTransform(n*O.a,n*O.b,n*O.c,n*O.d,n*O.e,n*O.f),L.drawImage(y.canvas,0,0,b*n,g*n,0,0,b,g);return f.drawImage(o.canvas,F,D,k,w,F,D,k,w),_.length}function m(f,p,y,b){p.setTransform(1,0,0,1,0,0),p.globalAlpha=1,p.globalCompositeOperation="copy",p.drawImage(f,0,0),p.globalCompositeOperation="source-over";let g={blurred:0,taps:0};return y.forEach((v,E)=>{let _=a[E];if(!b[E]||!_)return;let F=d(p,v,_);F>0&&(g.blurred++,g.taps+=F)}),g}return{crop:c,draw:m}}var DL=2,PL=240,OL=new Set(["transform","translate","rotate","scale","left","top","right","bottom"]),rS=e=>e.getAttribute("style")??"";function HL(e,t){for(let n=e;n&&n!==t;n=n.parentElement)if(n.getAttribute("data-motion-blur")==="off")return!0;return!1}function GL(e,t){for(let n=e;n&&n!==t;n=n.parentElement){let r=getComputedStyle(n);if(r.transform.startsWith("matrix3d")||r.transformStyle==="preserve-3d"||r.perspective!=="none"||(r.offsetPath??"none")!=="none")return!0}return!1}function BL(e){let t=new Set;if(typeof document.getAnimations!="function")return t;for(let n of document.getAnimations()){let r=n.effect,i=r?.target;if(!Se(i)||!e.contains(i))continue;(typeof r?.getKeyframes=="function"?r.getKeyframes():[]).some(a=>Object.keys(a).some(l=>OL.has(l)))&&t.add(i)}return t}function UL(e,t){return!e||!t||!e.width||!t.width?0:Math.max(Math.abs(e.left-t.left),Math.abs(e.top-t.top),Math.abs(e.right-t.right),Math.abs(e.bottom-t.bottom))}function iS({scene:e,durationSeconds:t,fps:n,seek:r}){let i=[...e.querySelectorAll("*")].filter(Se),o=new Set(BL(e)),a=i.map(rS),l=Math.max(1,Math.round(t*n)),s=Math.min(l,PL),c=l/s,d=new Set,m=new Set,f=null;for(let b=0;b<=s;b++){r(b/s*t);let g=[];if(i.forEach((v,E)=>{!o.has(v)&&rS(v)===a[E]||(o.add(v),g[E]=v.getBoundingClientRect(),UL(f?.[E],g[E])/c>=DL&&d.add(v))}),b%10===0||b===s)for(let v of d)GL(v,e)&&m.add(v);f=g}let p=i.filter(b=>d.has(b)&&!m.has(b)&&!HL(b,e));return{movers:p.filter(b=>!p.some(g=>g!==b&&g.contains(b))),dynamic:o}}var Sd="data-hf-motion-blur-hide",WL=4,VL=8,oS=2e3,$L=3,qL=25,aS=(e,t,n)=>Math.min(n,Math.max(t,e));function zL(e){if(e.getAttribute("data-motion-blur")!=="on")return null;let t=(n,r)=>{let i=Number(e.getAttribute(n));return e.hasAttribute(n)&&Number.isFinite(i)?i:r};return{shutterDeg:aS(t("data-motion-blur-shutter",180),0,720),samples:Math.round(aS(t("data-motion-blur-samples",16),2,64)),events:e.getAttribute("data-motion-blur-events")==="on"}}var jL=new Set(["webgl","webgl2","experimental-webgl","webgpu"]),lS=new WeakSet;function uS(){let e=HTMLCanvasElement.prototype,t=e.getContext;if(typeof t!="function"||"__hfAccelTracked"in t)return;let n=function(...r){let i=Reflect.apply(t,this,r);return i&&jL.has(String(r[0]))&&lS.add(this),i};Object.defineProperty(n,"__hfAccelTracked",{value:!0}),Object.defineProperty(e,"getContext",{value:n,writable:!0,configurable:!0})}function cS(e){if(e.querySelector("canvas[layoutsubtree]"))return"the composition already uses html-in-canvas";for(let t of e.querySelectorAll("canvas"))if(lS.has(t))return"the composition draws a WebGL/WebGPU canvas, which html-in-canvas captures frozen";return null}function KL(e){let t=window[$y];return t?`the renderer turned it off (${String(t)})`:zy()?cS(e):"html-in-canvas (drawElementImage) is unavailable in this browser"}function YL(e){let t=typeof e.className=="string"&&e.className?`.${e.className.trim().split(/\s+/).join(".")}`:"";return`${e.tagName.toLowerCase()}${e.id?`#${e.id}`:""}${t}`}function XL(e){let t=Number(e.getAttribute("data-width"))||e.offsetWidth,n=Number(e.getAttribute("data-height"))||e.offsetHeight;return{width:Math.max(1,Math.round(t)),height:Math.max(1,Math.round(n))}}function Rs(){let e=Number(window[qy]),t=e>0?e:window.devicePixelRatio;return Number.isFinite(t)&&t>0?t:1}function sS(e,t,n){let r=document.createElement("canvas");return r.width=Math.max(1,Math.round(e*Rs())),r.height=Math.max(1,Math.round(t*Rs())),r.setAttribute("data-hf-ignore",""),r.setAttribute("data-hf-motion-blur",n),r.style.cssText=`position:absolute;left:0;top:0;width:${e}px;height:${t}px;`,r}function JL(e,t){let{root:n}=e,{width:r,height:i}=XL(n),o=sS(r,i,"capture"),a=sS(r,i,"output");a.style.pointerEvents="none",o.setAttribute("layoutsubtree","");let l=o.getContext("2d"),s=a.getContext("2d");if(!l||!s)throw new Error("capture motion blur: no 2D context");let c=l,d=s,m=Rs(),f=yd(r,i,m),p=document.createElement("style");p.setAttribute("data-hf-ignore",""),p.textContent=`[${Sd}] { opacity: 0 !important; }`;let y=[],b=null,g=null,v=null,E=0,_=0,F=0,D=null,k=[],w=0,L=0,O,K=!1,Z=!1,ae=!1;function ne(X){(e.ignoreMutations??(ie=>ie()))(X),e.seek(e.now(),!0)}function P(){K||(ne(()=>{n.before(o),o.append(n),o.after(a),document.head.append(p)}),K=!0,Z=!0)}function R(){v?.release(),v=null,g&&(N(g),g.settle(),g=null),K&&(K=!1,ne(()=>{p.remove(),o.before(n),o.remove(),a.remove()}))}let M=X=>e.seek(X,!t.events),z=X=>e.seek(X,!0);function V(X){O=e.timeline();let ie=performance.now(),Re=iS({scene:n,durationSeconds:e.durationSeconds(),fps:e.fps,seek:z});z(X),y=Re.movers,b=eS(n,Re.dynamic),L=Math.round(performance.now()-ie)}function ee(X,ie){let Re=b;if(!Re)return{els:[],frames:[]};let Ve=y.filter(je=>typeof je.checkVisibility!="function"||je.checkVisibility({visibilityProperty:!0})),Rt=t.shutterDeg/360/e.fps;if(Ve.length===0||Rt<=0)return{els:[],frames:[]};let Nn=X-Rt/2,Vt=Ve.map(()=>[]);for(let je=0;je<ie;je++)M(Math.max(0,Nn+je/(ie-1)*Rt)),Re.reset(),Ve.forEach((ei,Vs)=>Vt[Vs]?.push(Re.pose(ei)));M(X),Re.reset();let Zn=Ve.map((je,ei)=>({w:je.offsetWidth,h:je.offsetHeight,now:Re.pose(je),taps:Qy(Vt[ei]??[$r],t.samples)}));return Re.reset(),{els:Ve,frames:Zn}}let C=()=>{c.reset(),c.drawElementImage(n,0,0)},N=X=>{for(let ie of X.els)ie.removeAttribute(Sd)};function j(X=!1){let ie=g;if(!ie||D||!ie.armed)return;let Re=performance.now(),Ve=!0;try{Ve=U(ie,X),_=0}catch(Rt){W(Rt)}if(ie.ms+=performance.now()-Re,!Ve&&!D){o.requestPaint();return}k.push(w+ie.ms),k.length>600&&k.shift(),q(ie)}function W(X){_++,H("runtime.captureMotionBlur.compose",X),oe(X instanceof Error?X.message:String(X)),ae?R():_>=$L&&Q(`capture failed ${_} times in a row`)}function U(X,ie){C();try{return!X.kept&&(X.kept=f.crop(o,X.frames),Z&&(d.setTransform(1,0,0,1,0,0),d.globalAlpha=1,d.globalCompositeOperation="copy",d.drawImage(o,0,0),Z=!1),X.kept.some(Boolean)&&!ie)?(X.els.forEach((Re,Ve)=>X.kept?.[Ve]&&Re.setAttribute(Sd,"")),!1):(f.draw(o,d,X.frames,X.kept),!0)}finally{c.reset()}}function q(X){N(X),g===X&&(g=null),X.settle();let ie=v;v=null,ie&&!D?bt(ie.t,ie.engineMode).then(ie.release):ie?.release()}let re=()=>j();function oe(X){F++,F%qL===1&&console.info(`[motion-blur] capture failed (${F} so far): ${X}`)}function J(X){oe(`no paint within ${oS} ms`),R(),q(X)}o.addEventListener("paint",re);function Q(X){D||(D=X,console.warn(`[motion-blur] off: ${X}`),Y())}function Y(){o.removeEventListener("paint",re),R()}function Ne(X,ie){if(D)return Promise.resolve();if(ie&&(ae=!0),!ae&&document.visibilityState==="hidden")return R(),Promise.resolve();if(g&&!ie){let Re=v;return new Promise(Ve=>{v={t:X,engineMode:ie,release:()=>{Re?.release(),Ve()}}})}return bt(X,ie)}function tt(){let X=Rs();if(X!==m){m=X;for(let ie of[o,a])ie.width=Math.max(1,Math.round(r*m)),ie.height=Math.max(1,Math.round(i*m));f=yd(r,i,m),Z=!0}}function bt(X,ie){try{if(tt(),(!b||e.timeline()!==O)&&V(X),y.length===0)return R(),Promise.resolve();let Re=cS(n);if(Re)return Q(Re),Promise.resolve();P();let Ve=performance.now(),Rt=ee(X,ie?VL:WL);return w=performance.now()-Ve,g&&q(g),new Promise(Nn=>{let Vt=++E,Zn,je=()=>{Zn=setTimeout(()=>{g?.seq===Vt?J(g):Nn()},oS)};g={seq:Vt,els:Rt.els,frames:Rt.frames,kept:null,armed:!ie,startTimer:je,ms:0,settle:()=>{clearTimeout(Zn),Nn()}},!ie&&(je(),o.requestPaint())})}catch(Re){return H("runtime.captureMotionBlur.paint",Re),Q(Re instanceof Error?Re.message:String(Re)),Promise.resolve()}}function De(){let X=k.length?k.reduce((ie,Re)=>ie+Re,0)/k.length:0;return{state:D?"off":"on",reason:D,movers:y.length,moverNames:y.map(YL),scanMs:L,shutterDeg:t.shutterDeg,frames:k.length,meanMs:Math.round(X*10)/10,failures:_,failedFrames:F}}return{root:n,paint:Ne,rest:()=>ae?!1:(R(),!0),arm:()=>{!g||g.armed||(g.armed=!0,g.startTimer(),o.requestPaint())},finish:()=>{g&&(g.armed=!0),j(!0)},teardown:Y,report:De,busy:()=>g!==null,rediscover:()=>{b=null}}}var et=null,vd=null,Ed=null;function dS(e){let t=zL(e.root),n=window;if(et&&(et.root!==e.root||!t)&&(et.teardown(),et=null,delete n.__hfMotionBlur),!t)return;if(et){et.rediscover();return}let r=KL(e.root);if(r){console.info(`[motion-blur] off: ${r}`),n.__hfMotionBlur={report:()=>({state:"off",reason:r,movers:0,moverNames:[],scanMs:0,shutterDeg:t.shutterDeg,frames:0,meanMs:0,failures:0,failedFrames:0})};return}et=JL(e,t);let i=et;n.__hfMotionBlur={report:()=>i.report()}}function qr(e,t){if(!et)return null;let n=t?.engineMode===!0;if(!n&&!t?.playing&&et.rest())return null;let r=et.paint(e,n);return n&&et.busy()&&QL(),r}function fS(){return et?.busy()??!1}function mS(){et?.arm()}function QL(){let e=window,t=e.__hf_page_composite_resolve;t!==Ed&&(vd=typeof t=="function"?t:null,Ed=()=>(vd&&vd(),et?.finish(),e.__hf_page_composite_pending=!1,!0),e.__hf_page_composite_resolve=Ed),e.__hf_page_composite_pending=!0}var ZL=500,eN=33,tN=3,Ms=class{constructor(t){fe(this,"_baseTime",0);fe(this,"_playStartMs",null);fe(this,"_rate",1);fe(this,"_duration",1/0);fe(this,"_playStart",0);fe(this,"_playEnd",1/0);fe(this,"_playHold",1/0);fe(this,"_nowMs");fe(this,"_audioSource",null);fe(this,"_lastReadMs",null);fe(this,"_lastNow",0);this._baseTime=t?.initialTime??0,this._rate=t?.rate??1,this._duration=t?.duration??1/0,this._nowMs=t?.nowMs??(()=>performance.now())}now(){if(this._playStartMs===null)return this._baseTime;if(this._audioSource){let r=null;if("currentTimeSeconds"in this._audioSource?r=this._audioSource.currentTimeSeconds:r=this._elementTimeNeverBehind(this._audioSource),r!==null){let i=Math.min(r,this.getEnd());return this._baseTime=Math.max(0,i),this._playStartMs=this._nowMs(),this._lastReadMs=null,this._lastNow=this._baseTime,this._baseTime}}this._applyStallCorrection();let t=(this._nowMs()-this._playStartMs)/1e3,n=this._baseTime+t*this._rate;return this._lastNow=Math.max(0,Math.min(n,this.getEnd())),this._lastNow}_elementTimeNeverBehind(t){let{el:n,compositionStart:r,mediaStart:i,rate:o}=t;if(n.paused||!Number.isFinite(n.currentTime))return null;if(n.seeking)return this._lastNow;let a=o??1,l=Wn(a,n.currentTime-i)+r;return l>=this._lastNow?l:this._heldTimeWhenBehind(n,this._lastNow-l,a)}_heldTimeWhenBehind(t,n,r){return t.loop&&n>Wn(r,t.duration)/2?null:t.readyState<tN||n<=mu?this._lastNow:null}_applyStallCorrection(){if(this._playStartMs===null)return;let t=this._nowMs();if(this._lastReadMs!==null){let n=t-this._lastReadMs;n>ZL&&(this._playStartMs+=n-eN)}this._lastReadMs=t}play(){return this._playStartMs!==null||this._baseTime>=this.getEnd()?!1:(this._playStartMs=this._nowMs(),this._lastNow=this._baseTime,this._lastReadMs=null,!0)}pause(){return this._playStartMs===null?!1:(this._baseTime=this.now(),this._playStartMs=null,!0)}seek(t){let n=Number.isFinite(this._duration)?Math.max(0,Math.min(t,this._duration)):Math.max(0,t);this._baseTime=n,this._lastNow=n,this._playStartMs!==null&&(this._playStartMs=this._nowMs(),this._lastReadMs=null)}isPlaying(){return this._playStartMs!==null}setRate(t){let n=Number.isFinite(t)&&t>0?Math.max(.1,Math.min(5,t)):1;this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs(),this._lastReadMs=null),this._rate=n}getRate(){return this._rate}setDuration(t){this._duration=Number.isFinite(t)&&t>0?t:1/0,this._baseTime>this._duration&&(this._baseTime=this._duration)}getDuration(){return this._duration}setPlayRange(t,n,r){this._playStart=Number.isFinite(t)&&t>0?t:0,this._playEnd=n!==null&&Number.isFinite(n)&&n>this._playStart?n:1/0,this._playHold=qm(this._playStart,this._playEnd,r)}getPlayStart(){return this._playStart}getEnd(){return Math.min(this._duration,this._playEnd)}getStopTime(){return this._playEnd<this._duration?this._playHold:this.getEnd()}attachAudioSource(t){this._audioSource=t}detachAudioSource(){this._audioSource&&this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs(),this._lastReadMs=null),this._audioSource=null}audioElement(){return this._audioSource&&"el"in this._audioSource?this._audioSource.el:null}hasAudioSource(){return this._audioSource!==null}getSource(){if(this._audioSource&&this._playStartMs!==null){if("currentTimeSeconds"in this._audioSource)return"audio";let{el:t}=this._audioSource;if(!t.paused&&Number.isFinite(t.currentTime))return"audio"}return"monotonic"}snapshot(){return{time:this.now(),playing:this.isPlaying(),rate:this._rate,duration:this._duration,source:this.getSource()}}reachedEnd(){let t=this.now();return t>=this.getEnd()||this._playStartMs===null&&t>=this.getStopTime()}};var nN=100,rN=8,iN=4096,Ad=e=>e;function oN(e,t,n){return!(!!e.curve||e.viaX!==void 0&&e.viaY!==void 0)&&t==="linear"&&!n}function aN(e){let t=Math.ceil(e*nN);return Math.min(iN,Math.max(rN,t))}function sN(e,t,n,r,i){let{scheduledAt:o,elapsed:a,rate:l}=r,s=i??Ad,c=E=>o+(E-a)/l,d=e.points[t],m=e.points[t+1],f=c(m.t);if(f<=o)return null;let p=Math.max(o,c(d.t)),y=f-p;if(y<=0)return null;if(oN(d,n,i))return{kind:"ramp",time:f,value:s(m.v)};let b=aN(y),g=cp(e,Math.max(d.t,a),m.t,b,n),v=new Float32Array(b);for(let E=0;E<b;E+=1)v[E]=s(g[E]??0);return{kind:"curve",time:p,duration:y,values:v}}function lN(e,t,n,r){let i=[];for(let a=0;a+1<e.points.length;a+=1){let l=sN(e,a,t,n,r);l&&i.push(l)}let o=i[0];return o?.kind==="curve"&&o.time<=n.scheduledAt||i.unshift({kind:"set",time:n.scheduledAt,value:(r??Ad)(Xt(e,n.elapsed,t))}),i}function uN(e,t){e.cancelScheduledValues(0);for(let n of t)n.kind==="set"?e.setValueAtTime(n.value,n.time):n.kind==="ramp"?e.linearRampToValueAtTime(n.value,n.time):(e.setValueAtTime(n.values[0]??0,n.time),e.linearRampToValueAtTime(n.values[n.values.length-1]??0,n.time+n.duration))}function cN(e,t){for(let n of t)if(n.kind==="set")e.setValueAtTime(n.value,n.time);else if(n.kind==="ramp")e.linearRampToValueAtTime(n.value,n.time);else try{e.setValueCurveAtTime(n.values,n.time,n.duration)}catch{uN(e,t);return}}function So(e){for(let t of e)t.param.cancelScheduledValues(0)}function zr(e,t){for(let n of e)typeof n.param.cancelAndHoldAtTime=="function"?n.param.cancelAndHoldAtTime(t):n.param.cancelScheduledValues(t)}function _d(e,t,n,r){if(t.points.length!==0)for(let i of e){if(So([i]),up(t)){let o=(i.map??Ad)(t.points[0].v);i.param.setValueAtTime(o,r.scheduledAt);continue}cN(i.param,lN(t,n,r,i.map))}}function pS(e,t,n,r,i){let o=new Map(n.filter(l=>l.id).map(l=>[l.id,l.handle])),a=[];for(let l of e.lanes){let s=_i(l.target);if(!s)continue;let c=s.kind==="preset"?i?.[s.presetId]:s.kind==="fx"?o.get(s.nodeId)?.automation?.[s.param]:void 0;if(!c||c.length===0)continue;let d=Pl(l.target,t);d&&(_d(c,l,d.scale,r),a.push(...c))}return a}function hS(e){return e.lanes.find(t=>t.target===fr)??null}var gS=`
|
|
630
|
+
`,an=[],nS=30,rS=0,Nd=0,oS=-1,Md=null,kd=null;function xt(e){globalThis.console.error(tS,`vfx: ${e}`)}function iS(e){globalThis.console.error(tS,`vfx-frame: ${e}`)}function Xy(e,t,n){let r=e.createShader(t);return r?(e.shaderSource(r,n),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:(xt(`shader failed to compile: ${e.getShaderInfoLog(r)??"(no log)"}`),e.deleteShader(r),null)):null}function FL(e,t){let n=Xy(e,e.VERTEX_SHADER,NL),r=n?Xy(e,e.FRAGMENT_SHADER,t):null;if(!n||!r)return null;let o=e.createProgram();return o?(e.attachShader(o,n),e.attachShader(o,r),e.linkProgram(o),e.deleteShader(n),e.deleteShader(r),e.getProgramParameter(o,e.LINK_STATUS)?o:(xt(`program failed to link: ${e.getProgramInfoLog(o)??"(no log)"}`),e.deleteProgram(o),null)):null}var Jy="position:absolute;inset:0;width:100%;height:100%;pointer-events:none;";function IL(e){let t=e.querySelector("canvas.hf-vfx-out");if(Jt(t))return t.style.cssText=Jy+t.style.cssText,t;let n=document.createElement("canvas");return n.className="hf-vfx-out",n.style.cssText=Jy,e.appendChild(n),n}function DL(e,t,n){let r={};for(let o of n.params)o.kind!=="ref"&&(r[o.key]=e.getUniformLocation(t,`u_${o.key}`));return{size:e.getUniformLocation(t,"u_size"),t:e.getUniformLocation(t,"u_t"),fps:e.getUniformLocation(t,"u_fps"),src:e.getUniformLocation(t,"u_src"),src2:e.getUniformLocation(t,"u_src2"),hasSrc2:e.getUniformLocation(t,"u_hasSrc2"),params:r}}function PL(e,t,n,r){return r.optional?{kind:"none"}:(xt(`${jt(e)}: node "${t.id}" (${n.id}) needs a "${r.key}" param naming the id of the element to read as its second source.`),{kind:"error"})}function OL(e,t,n,r,o,i){let a=n.params.find(f=>f.kind==="ref");if(!a)return{kind:"none"};let l=r[a.key];if(typeof l!="string"||l==="")return PL(e,t,n,a);let s=e.ownerDocument.getElementById(l);if(!ve(s))return xt(`${jt(e)}: node "${t.id}" (${n.id}) names "${a.key}" element #${l}, which is not in the composition.`),{kind:"error"};if(s===e)return a.optional?{kind:"none"}:{kind:"self"};let c=i.get(s);if(c)return{kind:"source",source:c};let d=aS(s,o,`${jt(e)}: "${a.key}" source`);return d?(d.visible=d.canvas.hasAttribute(kL),i.set(s,d),{kind:"source",source:d}):{kind:"error"}}function HL(e,t,n){let r=[],o=new Map;for(let i of Rd(t)){let a=Vy(i.type);if(!a)return xt(`node "${i.id}" has unknown effect type "${i.type}"`),null;let l=FL(e,a.frag);if(!l)return xt(`node "${i.id}" (${a.id}) has no usable program`),null;let s=$y(a.id,i.params),c=OL(n,i,a,s,e,o);if(c.kind==="error")return null;r.push({node:i,def:a,program:l,params:s,locations:DL(e,l,a),...c.kind==="source"?{ref:c.source}:{},selfRef:c.kind==="self"})}return r}function GL(e){let t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),t}function BL(e){let t=e.parentElement;if(!t||e.id==="")return null;let n=t.children;for(let r=0;r<n.length;r++){let o=n.item(r);if(Jt(o)&&o.classList.contains("hf-vfx-src")&&o.getAttribute("data-vfx-for")===e.id)return o}return null}function UL(e,t){jr()==="drawable"&&(Vs(e,"drawable"),$s(t,"drawable"))}function aS(e,t,n){let r=BL(e),o=r??e.querySelector("canvas.hf-vfx-src"),i=Jt(o)?o.querySelector(":scope > .hf-vfx-in"):null;if(!Jt(o)||!ve(i)){xt(`${n}: a capturing chain needs <canvas layoutsubtree class="hf-vfx-src"><div class="hf-vfx-in">\u2026</div></canvas> in source: inside the element for its own pixels, or beside it with data-vfx-for="${e.id}" for the layers below it.`);return}let a=o.getContext("2d");if(!a||typeof a.drawElementImage!="function"){xt(`${n}: drawElementImage is unavailable, so the layer cannot be captured. In Studio, enable chrome://flags/#canvas-draw-element.`);return}return UL(o,i),{canvas:o,inner:i,ctx:a,texture:GL(t),backdrop:r!==null,visible:!1,emptyBoxReported:!1,laidOutEmpty:kn(i)===null}}function WL(e){e.out.addEventListener("webglcontextlost",t=>{t.preventDefault(),!(!an.includes(e)||e.contextLost)&&(e.contextLost=!0,xt(`${jt(e.host)}: WebGL context lost.`))})}function VL(e){try{return jy(e.getAttribute(Td)??"")}catch(t){let n=t instanceof Lt?t.message:String(t);return xt(`${jt(e)}: ${n}`),null}}function $L(e){let t=VL(e);if(!t)return null;let n=IL(e),r=n.getContext("webgl2",LL);if(!r)return xt(`${jt(e)}: WebGL2 is unavailable, so the chain cannot paint.`),n.remove(),null;let o=HL(r,t,e);if(!o)return n.remove(),null;let i=zy(t),a=i==="none"?void 0:aS(e,r,jt(e));if(i!=="none"&&!a)return n.remove(),null;let l=a?.backdrop?"backdrop":i,s={host:e,chain:t,capture:l,out:n,gl:r,passes:o,src:a,contextLost:!1};return WL(s),s}function Fd(e){let t=getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function sS(e){if(getComputedStyle(e.inner).visibility==="hidden")return!1;for(let t=e.inner;t;t=t.parentElement)if(getComputedStyle(t).display==="none")return!1;return!0}function jt(e){return e.id?`#${e.id}`:`<${e.tagName.toLowerCase()}>`}function Kr(e){let t=e.src?[e.src]:[];for(let n of e.passes)n.ref&&!t.includes(n.ref)&&t.push(n.ref);return t}function Id(e){return e.src?.backdrop===!0}function Ci(e){let t=[];for(let n of e.passes)n.ref?.visible&&!t.includes(n.ref)&&t.push(n.ref);return t}function qL(){for(let e of an){let{gl:t}=e;for(let n of e.passes)t.deleteProgram(n.program);for(let n of Kr(e))t.deleteTexture(n.texture);if(e.ping){for(let n of e.ping.textures)t.deleteTexture(n);for(let n of e.ping.framebuffers)t.deleteFramebuffer(n)}}}function qs(e,t){qL(),an=[],nS=Number.isFinite(t)&&t>0?t:30;let n=e.querySelectorAll(`[${Td}]`);for(let r of n){if(!ve(r))continue;let o=$L(r);o&&an.push(o)}return an}function kn(e){let t=typeof window>"u"?1:window.devicePixelRatio||1,n=Math.round(e.offsetWidth*t),r=Math.round(e.offsetHeight*t);return n>0&&r>0?{width:n,height:r}:null}function Qy(e,t,n){let r=e.createTexture();e.bindTexture(e.TEXTURE_2D,r),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t,n,0,e.RGBA,e.UNSIGNED_BYTE,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE);let o=e.createFramebuffer();return e.bindFramebuffer(e.FRAMEBUFFER,o),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0),[r,o]}function zL(e,t,n){let r=e.ping;if(r&&r.width===t&&r.height===n)return r;let{gl:o}=e;if(r){for(let s of r.textures)o.deleteTexture(s);for(let s of r.framebuffers)o.deleteFramebuffer(s)}let i=Qy(o,t,n),a=Qy(o,t,n),l={textures:[i[0],a[0]],framebuffers:[i[1],a[1]],width:t,height:n};return e.ping=l,l}function jL(e,t,n){if(e.kind==="ref")return null;if(e.kind==="number"&&e.animatable){let o=n.getPropertyValue(`--vfx-${t.node.id}-${e.key}`).trim(),i=o===""?Number.NaN:Number.parseFloat(o);if(Number.isFinite(i))return Math.min(e.max,Math.max(e.min,i))}let r=t.params[e.key];return typeof r=="boolean"?r?1:0:typeof r=="number"?r:0}function KL(e,t,n,r,o,i){let{gl:a}=e,{locations:l}=t;a.uniform2f(l.size,o,i),a.uniform1f(l.t,r),a.uniform1f(l.fps,nS),a.uniform1f(l.hasSrc2,t.ref||t.selfRef?1:0);for(let s of t.def.params){let c=jL(s,t,n);c!==null&&a.uniform1f(l.params[s.key]??null,c)}}function YL(e,t,n){return e===t||!n?null:n.framebuffers[e%2]??null}function XL(e,t,n){return t===0?e.src?.texture??null:n?.textures[(t-1)%2]??null}function JL(e,t,n,r){let{gl:o}=e,i=e.passes[t];o.bindFramebuffer(o.FRAMEBUFFER,YL(t,n,r));let a=XL(e,t,r);a&&Zy(o,i.locations.src,a,0),i.ref?(Zy(o,i.locations.src2,i.ref.texture,1),o.activeTexture(o.TEXTURE0)):i.selfRef&&a&&o.uniform1i(i.locations.src2,0)}function Zy(e,t,n,r){e.activeTexture(r===0?e.TEXTURE0:e.TEXTURE1),e.bindTexture(e.TEXTURE_2D,n),e.uniform1i(t,r)}function Dd(e,t){let n=kn(e.host);if(!n)return;let{gl:r,out:o,passes:i}=e;o.width!==n.width&&(o.width=n.width),o.height!==n.height&&(o.height=n.height);let a=i.length>1?zL(e,n.width,n.height):null,l=getComputedStyle(e.host),s=i.length-1;for(let c=0;c<=s;c++){let d=i[c];r.useProgram(d.program),JL(e,c,s,a),r.viewport(0,0,n.width,n.height),KL(e,d,l,t,n.width,n.height),r.drawArrays(r.TRIANGLES,0,3)}}function lS(e,t){e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.texture),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,1),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t.canvas),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,0),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,0)}var QL={upload:!0,keepBitmap:!1},ZL={upload:!1,keepBitmap:!0},eN={upload:!0,keepBitmap:!0},tN={upload:!1,keepBitmap:!0};function uS(e,t){e.canvas.width!==t.width&&(e.canvas.width=t.width),e.canvas.height!==t.height&&(e.canvas.height=t.height)}function eS(e,t,n,r){return uS(t,n),t.ctx.clearRect(0,0,n.width,n.height),r.upload&&lS(e.gl,t),!0}function Pd(e,t,n,r,o){if(!sS(t))return eS(e,t,n,o);if(kn(t.inner)===null)return t.emptyBoxReported||(t.emptyBoxReported=!0,iS(`${jt(e.host)}: the .hf-vfx-in wrapper measures 0\xD70, so its capture would be empty. Inside a layoutsubtree canvas an inset or percentage box has no size, so the wrapper must state an explicit width and height in px.`)),eS(e,t,n,o);uS(t,n),t.ctx.clearRect(0,0,n.width,n.height);try{t.ctx.drawElementImage(t.inner,0,0,n.width,n.height)}catch(i){return r||xt(`${jt(e.host)}: drawElementImage failed: ${i.message} In Studio, enable chrome://flags/#canvas-draw-element.`),!1}return o.upload&&lS(e.gl,t),o.keepBitmap||t.ctx.clearRect(0,0,n.width,n.height),!0}function cS(e,t){return e.visible?kn(e.inner)??t:t}function dS(e,t=!1){let n=kn(e.host),r=Kr(e);if(!n||r.length===0)return!1;let o=!0;for(let i of r){let a=i.visible?eN:QL;Pd(e,i,cS(i,n),t,a)||(o=!1)}return o}function fS(e,t=!1){let n=e.src;if(!n)return!1;let r=kn(e.host)??kn(n.inner);return r?Pd(e,n,r,t,ZL):!1}function Ld(e,t=!1){let n=!0;for(let r of Ci(e)){let o=cS(r,{width:0,height:0});Pd(e,r,o,t,tN)||(n=!1)}return n}function nN(e){let t=!1;return Id(e)&&fS(e)&&(t=!0),Ci(e).length>0&&Ld(e)&&(t=!0),t}function rN(){let e=!1;for(let t of an)if(!t.contextLost&&Kr(t).length!==0){if(!Fd(t.host)){nN(t)&&(e=!0);continue}dS(t)&&(Dd(t,rS),e=!0)}return oS=Nd,window.__hf_page_composite_pending=!1,e}function oN(){let e=window,t=e.__hf_page_composite_resolve;t!==Md&&(kd=typeof t=="function"?t:null,Md=()=>{let n=kd?kd():!1;return rN()||n},e.__hf_page_composite_resolve=Md),e.__hf_page_composite_pending=!0}var mS=2e3;function iN(e){return new Promise(t=>{let n=!1,r=a=>{n||(n=!0,clearTimeout(i),e.removeEventListener("paint",o),t(a))},o=()=>r("painted"),i=setTimeout(()=>r("timeout"),mS);e.addEventListener("paint",o,{once:!0});try{e.requestPaint?.()}catch{}if(typeof requestAnimationFrame!="function"){r("painted");return}requestAnimationFrame(()=>requestAnimationFrame(()=>r("painted")))})}async function aN(e,t){return(await Promise.all(t.map(r=>iN(r.canvas)))).includes("timeout")?(iS(`${jt(e.host)}: no paint arrived within ${mS}ms, so this frame's capture was skipped (a BeginFrame-controlled compositor without a tick for this frame is a known cause).`),!1):!0}function sN(e){return Fd(e.host)?"paint":Id(e)?"passThrough":"refOnly"}function lN(e,t){return(t==="passThrough"?[...e.src?[e.src]:[],...Ci(e)]:t==="refOnly"?Ci(e):Kr(e)).filter(sS)}function uN(e,t){return t!==Nd||oS===t?!1:an.includes(e)&&!e.contextLost}async function cN(e,t,n,r){let o=sN(e);if(await aN(e,lN(e,o))&&uN(e,n)){if(o==="passThrough"){fS(e,r),Ld(e,r);return}if(o==="refOnly"){Ld(e,r);return}dS(e,r)&&Dd(e,t)}}async function dN(e,t,n,r){await Promise.all(e.map(o=>cN(o,t,n,r)))}function fN(){for(let e of an.flatMap(Kr)){let t=kn(e.inner)===null;e.laidOutEmpty&&!t&&e.canvas.insertBefore(e.inner,e.inner.nextSibling),e.laidOutEmpty=t}}function Od(e,t){rS=e;let n=++Nd;fN();let r=[];for(let o of an)if(!o.contextLost){if(!Fd(o.host)){(Id(o)||Ci(o).length>0)&&r.push(o);continue}Kr(o).length>0?r.push(o):Dd(o,e)}r.length!==0&&(t?.engineMode&&oN(),lt(dN(r,e,n,t?.engineMode===!0)))}function hS(e=window){let t=/Chrome\/(\d+)/.exec(e.navigator.userAgent);return t?.[1]?Number(t[1]):null}var mN=(e,t)=>t.backface,pN=(e,t)=>Array.from(e.ownerDocument.querySelectorAll("canvas")).some(t.isAccelerated),hN=/^matrix\(\s*1,\s*0,\s*0,\s*1,\s*0,\s*0\s*\)$|^matrix3d\(\s*1,\s*0,\s*0,\s*0,\s*0,\s*1,\s*0,\s*0,\s*0,\s*0,\s*1,\s*0,\s*0,\s*0,\s*0,\s*1\s*\)$/,Hd=(e,t)=>!!e&&e!=="none"&&!e.split(/\s+/).every(n=>parseFloat(n)===t),gN=e=>{let t=getComputedStyle(e),n=t.transform.trim();return Hd(t.scale,1)||Hd(t.rotate,0)||Hd(t.translate,0)?!0:n!=="none"&&n!==""&&!hN.test(n)},bN=e=>{let t=getComputedStyle(e).mixBlendMode;return!!t&&t!=="normal"},xN=e=>Number.parseFloat(getComputedStyle(e).opacity)<1,yN=e=>e.querySelector("iframe, object, embed")!==null||Array.from(e.querySelectorAll("*")).some(t=>t.localName.includes("-")&&customElements.get(t.localName)!==void 0),SN=[{code:"nested-capture-canvas",reason:"the composition already uses html-in-canvas",detect:e=>e.querySelector(Ky)!==null},{code:"accelerated-canvas",reason:"the composition draws a WebGL/WebGPU canvas, which html-in-canvas captures frozen",detect:pN},{code:"backface-visibility",reason:"backface-visibility: hidden inside a 3D transform is drawn mirrored by html-in-canvas",detect:mN},{code:"iframe-in-root",reason:"the composition contains an <iframe>, <object>, <embed> or custom element, which is re-initialised when blur wraps the root",detect:yN},{code:"root-transform",reason:"html-in-canvas can ignore a transform on the composition root",detect:gN},{code:"root-opacity",reason:"html-in-canvas can ignore the composition root's own opacity",detect:xN},{code:"root-blend-mode",reason:"html-in-canvas can ignore the composition root's own mix-blend-mode",detect:bN}];function zs(e,t){let n=SN.find(r=>r.detect(e,t));return n?{code:n.code,reason:n.reason}:null}var pS=/perspective\(|rotate3d\(|rotate[XY]\(|matrix3d\(/;function gS(e){return e.getPropertyValue("backface-visibility")==="hidden"||e.getPropertyValue("-webkit-backface-visibility")==="hidden"}var vN=e=>!/^(none|-?[\d.]+[a-z]+)?$/.test(e.rotate??"")||(e.translate??"").trim().split(/\s+/).length>2;function EN(e,t){return pS.test(t.transform)||pS.test(e.style.transform)||vN(t)}function AN(e,t){for(let n=e;n;n=n.parentElement){let r=getComputedStyle(n);if(r.transformStyle==="preserve-3d"||EN(n,r)||n!==e&&r.perspective!=="none"&&r.perspective!=="")return!0;if(n===t)break}return!1}var wN=16,Bd="@keyframes ";function _N(e){let t=[],n=0,r=0;for(let o=0;o<e.length;o++){let i=e.charAt(o);i==="("||i==="["?n++:i===")"||i==="]"?n--:i===","&&n===0&&(t.push(e.slice(r,o).trim()),r=o+1)}return t.push(e.slice(r).trim()),t}function CN(e,t){if(t===null)return e;let n=`:is(${t})`;return _N(e).map(r=>r.includes("&")?r.replaceAll("&",n):`${n} ${r}`).join(", ")}function*Gd(e,t,n,r){if(!(r>wN))for(let o of Array.from(e))yield*RN(o,t,n,r)}function TN(e,t){let n="style"in e?e.style:null;return t!==null&&n instanceof CSSStyleDeclaration?{selector:t,style:n}:null}function*RN(e,t,n,r){if(e instanceof CSSStyleRule){let i=CN(e.selectorText,t);yield{selector:i,style:e.style},yield*Gd(e.cssRules,i,n,r+1);return}if(e instanceof CSSImportRule){e.styleSheet&&(yield*bS(e.styleSheet,n,r+1));return}let o=TN(e,t);if(o)yield o;else if("cssRules"in e&&e.cssRules instanceof CSSRuleList){let i=e instanceof CSSKeyframesRule?Bd+e.name:t;yield*Gd(e.cssRules,i,n,r+1)}}function MN(e){try{return e.cssRules}catch{return null}}function*bS(e,t,n){let r=t.has(e)?null:MN(e);t.add(e),r&&(yield*Gd(r,null,t,n))}function kN(e,t){try{let n=Array.from(e.querySelectorAll(t));return e.matches(t)?[e,...n]:n}catch{return[]}}function LN(e){return(document.getAnimations?.()??[]).flatMap(({effect:t})=>{if(!(t instanceof KeyframeEffect))return[];let n=t.target;return t.getKeyframes().some(o=>o.backfaceVisibility==="hidden")&&n instanceof HTMLElement&&e.contains(n)?[n]:[]})}function NN(e,t){return t.length===0?[]:[e,...e.querySelectorAll("*")].filter(n=>getComputedStyle(n).animationName.split(", ").some(r=>t.includes(Bd+r)))}function FN(){let e=new Set,t=[...Array.from(document.styleSheets),...document.adoptedStyleSheets??[]],n=[];for(let r of t)for(let o of bS(r,e,0))gS(o.style)&&n.push(o.selector);return n}function IN(e,t){let n=t.filter(o=>o.startsWith(Bd)),r=new Set([...e.querySelectorAll('[style*="backface"]'),...LN(e),...NN(e,n)]);for(let o of t)for(let i of kN(e,o))r.add(i);return r}function xS(e){let t=FN(),n=new Set,r=()=>{for(let o of n)if(gS(getComputedStyle(o))&&AN(o,e))return!0;return!1};return{scan:()=>(n=new Set([...n,...IN(e,t)]),r()),recheck:r}}function yS(e){return xS(e).scan()}var DN=10;function SS(e,t){let n=xS(e),r=null;return{sample:(o,i,a)=>{if(r)return;let l=o%DN===0||o===i,s=zs(e,{isAccelerated:t,backface:l&&n.scan()});s&&(r={...s,reason:`${s.reason} (first seen at t=${a.toFixed(1)}s)`})},result:()=>r,facesNow:n.recheck}}var vS="__HF_PAGE_MOTION_BLUR_OFF__",ES="__HF_DEVICE_SCALE_FACTOR__";function AS(e=window){return jr(e)!==null}var PN="__hfAcceleratedCanvases";function wS(){let e="__hfAcceleratedCanvases",t=Reflect.get(window,e),n=t instanceof WeakSet?t:new WeakSet;n!==t&&Object.defineProperty(window,e,{value:n});let r=["webgl","webgl2","experimental-webgl","webgpu"],o=(i,a)=>{let l=HTMLCanvasElement.prototype,s=Reflect.get(l,i);if(typeof s!="function"||"__hfAccelTracked"in s)return;let c=function(...d){let f=Reflect.apply(s,this,d);return a(this,d,f),f};Object.defineProperty(c,"__hfAccelTracked",{value:!0}),Object.defineProperty(l,i,{value:c,writable:!0,configurable:!0})};o("getContext",(i,a,l)=>{l&&r.includes(String(a[0]))&&n.add(i)}),o("transferControlToOffscreen",i=>{n.add(i)})}function _S(e){let t=Reflect.get(window,PN);return t instanceof WeakSet&&t.has(e)}var Yr={a:1,b:0,c:0,d:1,e:0,f:0};function js(e,t){return{a:e.a*t.a+e.c*t.b,b:e.b*t.a+e.d*t.b,c:e.a*t.c+e.c*t.d,d:e.b*t.c+e.d*t.d,e:e.a*t.e+e.c*t.f+e.e,f:e.b*t.e+e.d*t.f+e.f}}function Ti(e,t,n){return js(e,{a:1,b:0,c:0,d:1,e:t,f:n})}function Wd(e){let t=e.a*e.d-e.b*e.c;return!Number.isFinite(t)||Math.abs(t)<1e-12?null:{a:e.d/t,b:-e.b/t,c:-e.c/t,d:e.a/t,e:(e.c*e.f-e.d*e.e)/t,f:(e.b*e.e-e.a*e.f)/t}}function ON(e,t,n){return[[e.e,e.f],[e.a*t+e.e,e.b*t+e.f],[e.c*n+e.e,e.d*n+e.f],[e.a*t+e.c*n+e.e,e.b*t+e.d*n+e.f]]}function HN(e,t,n){let r=CS(e),o=CS(t),i=o.angle-r.angle;i>Math.PI?i-=2*Math.PI:i<-Math.PI&&(i+=2*Math.PI);let a=(l,s)=>l+(s-l)*n;return GN({angle:r.angle+i*n,sx:a(r.sx,o.sx),sy:a(r.sy,o.sy),shear:a(r.shear,o.shear),e:a(e.e,t.e),f:a(e.f,t.f)})}function CS(e){let t=Math.hypot(e.a,e.b);return t<1e-12?{angle:0,sx:0,sy:e.d,shear:e.c,e:e.e,f:e.f}:{angle:Math.atan2(e.b,e.a),sx:t,sy:(e.a*e.d-e.b*e.c)/t,shear:(e.a*e.c+e.b*e.d)/t,e:e.e,f:e.f}}function GN(e){let t=Math.cos(e.angle),n=Math.sin(e.angle);return{a:e.sx*t,b:e.sx*n,c:e.shear*t-e.sy*n,d:e.shear*n+e.sy*t,e:e.e,f:e.f}}function Ks(e,t){if(e.length===0)return[];if(e.length===1)return Array.from({length:t},()=>e[0]);let n=e.length-1;return Array.from({length:t},(r,o)=>{let i=(o+.5)/t*n,a=Math.min(n-1,Math.floor(i));return HN(e[a],e[a+1],i-a)})}function Ys(e,t,n,r,o){let i=1/0,a=1/0,l=-1/0,s=-1/0,c=0,d=null;for(let y of e){let E=ON(y,t,n);for(let[v,_]of E)i=Math.min(i,v),a=Math.min(a,_),l=Math.max(l,v),s=Math.max(s,_);if(d){let v=0;for(let _=0;_<4;_++){let[H,I]=d[_],[k,A]=E[_];v=Math.max(v,Math.hypot(k-H,A-I))}c+=v}d=E}let f=Math.max(0,Math.floor(i)-2),m=Math.max(0,Math.floor(a)-2),p=Math.min(r,Math.ceil(l)+2),x=Math.min(o,Math.ceil(s)+2),b=p>f&&x>m?{x:f,y:m,w:p-f,h:x-m}:null;return{travel:c,rect:b}}function MS(e){let t=Math.floor(255/e),n=255-t*e;return Array.from({length:e},(r,o)=>(t+Math.floor((o+1)*n/e)-Math.floor(o*n/e))/255)}var BN=16;function kS(e,t,n,r,o,i=2,a=128){let{travel:l}=Ys(Ks(e,BN),t,n,r,o);return Ks(e,Math.min(a,Math.max(2,Math.ceil(l/i))))}function LS(e,t,n=1.5){let r=Math.min(e.length,Math.max(2,Math.ceil(t/n)));return r>=e.length?e:Array.from({length:r},(o,i)=>{let a=Math.round((i+.5)/r*e.length-.5);return e[a]})}function NS(e,t){let n=new Map,r=new Map,o=new Map,i=s=>{if(!t.has(s)&&n.has(s))return n.get(s)??null;let d=getComputedStyle(s),f=FS([VN(d,s.offsetWidth,s.offsetHeight),$N(d.transform)]),m=null;if(f){let[p=0,x=0]=d.transformOrigin.split(" ").map(b=>parseFloat(b)||0);m=Ti(js(Ti(Yr,p,x),f),-p,-x)}return t.has(s)||n.set(s,m),m},a=s=>{if(!s||s===e||!RS(s))return[0,0];let c=r.get(s);if(!c){let d=s.offsetParent,[f,m]=a(d);c=[f+s.offsetLeft+(d?.clientLeft??0),m+s.offsetTop+(d?.clientTop??0)],r.set(s,c)}return c},l=s=>{if(!s||s===e||!RS(s))return Yr;let c=o.get(s);if(!c){let d=s.parentElement,[f,m]=a(s),[p,x]=a(d),[b,y]=UN(d);c=Ti(l(d),f-p-b,m-x-y);let E=i(s);E&&(c=js(c,E)),o.set(s,c)}return c};return{pose:l,reset(){r=new Map,o=new Map}}}function UN(e){return e?[e.scrollLeft,e.scrollTop]:[0,0]}function FS(e){let t=null;for(let n of e)n&&(t=t?js(t,n):n);return t}var Ud=e=>e.trim().split(/\s+(?![^(]*\))/);function TS(e,t){let n=0;for(let r of e.matchAll(/([+-]?\s*[\d.]+(?:e[+-]?\d+)?)(px|%)?/g)){let o=Number(r[1]?.replace(/\s/g,""));n+=r[2]==="%"?o/100*t:o}return n}var WN={deg:Math.PI/180,rad:1,grad:Math.PI/200,turn:2*Math.PI};function VN(e,t,n){let r=e.translate??"none",o=e.rotate??"none",i=e.scale??"none",a=[];if(r!=="none"){let[s="0",c="0"]=Ud(r);a.push({...Yr,e:TS(s,t),f:TS(c,n)})}let l=/^(-?[\d.]+)(deg|rad|grad|turn)$/.exec(o);if(l){let s=Number(l[1])*(WN[l[2]??"deg"]??0);a.push({a:Math.cos(s),b:Math.sin(s),c:-Math.sin(s),d:Math.cos(s),e:0,f:0})}if(i!=="none"){let[s=1,c=s]=Ud(i).map(Number);a.push({...Yr,a:s,d:c})}return FS(a)}function IS(e){let t=e.translate??"none",n=e.rotate??"none";return t!=="none"&&Ud(t).length>2||!/^(none|-?[\d.]+[a-z]+)$/.test(n)}function $N(e){let t=/^matrix(3d)?\(([^)]*)\)$/.exec(e.trim());if(!t)return null;let n=(t[2]??"").split(",").map(Number);if(n.some(d=>!Number.isFinite(d)))return null;let r=t[1]?[0,1,4,5,12,13]:[0,1,2,3,4,5];if(n.length!==(t[1]?16:6))return null;let[o=1,i=0,a=0,l=1,s=0,c=0]=r.map(d=>n[d]??0);return{a:o,b:i,c:a,d:l,e:s,f:c}}function RS(e){return typeof e.offsetLeft=="number"}function DS(e,t){let n=new OffscreenCanvas(e,t),r=null;try{r=n.getContext("2d",{colorType:"float16"})}catch{r=null}if(r=r??n.getContext("2d"),!r)throw new Error("capture motion blur: no 2D context for the accumulation buffer");return{canvas:n,ctx:r}}function qN(e,t,n){let{travel:r,rect:o}=Ys(e.taps,e.w,e.h,t,n);return o!==null&&r>=1}function Vd(e,t,n=1){let r=Math.max(1,Math.round(e*n)),o=Math.max(1,Math.round(t*n)),i=DS(r,o),a=[],l=e*t*4,s=(p,x,b)=>{let y=Math.ceil(x*n),E=Math.ceil(b*n),v=a[p];return(!v||v.canvas.width<y||v.canvas.height<E)&&(v=DS(Math.max(y,v?.canvas.width??1),Math.max(E,v?.canvas.height??1)),a[p]=v),v};function c(p){return p.map(x=>Wd(x.now)!==null&&x.w*x.h<=l&&qN(x,e,t))}function d(p,x,b){x.forEach((y,E)=>{let v=Wd(y.now);if(!b[E]||!v)return;let{w:_,h:H}=y,I=s(E,_,H).ctx;I.setTransform(1,0,0,1,0,0),I.globalCompositeOperation="source-over",I.globalAlpha=1,I.clearRect(0,0,Math.ceil(_*n),Math.ceil(H*n)),I.setTransform(n*v.a,n*v.b,n*v.c,n*v.d,n*v.e,n*v.f),I.drawImage(p,0,0,e,t)})}function f(p,x,b){let{w:y,h:E}=x,{travel:v,rect:_}=Ys(x.taps,y,E,e,t);if(!_)return 0;let H=LS(x.taps,v),I=Math.max(0,Math.floor(_.x*n)),k=Math.max(0,Math.floor(_.y*n)),A=Math.min(r,Math.ceil((_.x+_.w)*n))-I,L=Math.min(o,Math.ceil((_.y+_.h)*n))-k;if(A<=0||L<=0)return 0;let P=i.ctx;P.setTransform(1,0,0,1,0,0),P.globalCompositeOperation="source-over",P.globalAlpha=1,P.clearRect(I,k,A,L),P.globalCompositeOperation="lighter";let q=MS(H.length);return H.forEach((X,Z)=>{P.globalAlpha=q[Z]??0,P.setTransform(n*X.a,n*X.b,n*X.c,n*X.d,n*X.e,n*X.f),P.drawImage(b.canvas,0,0,y*n,E*n,0,0,y,E)}),p.drawImage(i.canvas,I,k,A,L,I,k,A,L),H.length}function m(p,x,b,y){x.setTransform(1,0,0,1,0,0),x.globalAlpha=1,x.globalCompositeOperation="copy",x.drawImage(p,0,0),x.globalCompositeOperation="source-over";let E={blurred:0,taps:0};return b.forEach((v,_)=>{let H=a[_];if(!y[_]||!H)return;let I=f(x,v,H);I>0&&(E.blurred++,E.taps+=I)}),E}return{plan:c,crop:d,draw:m}}var zN=256,jN=64,KN=/(?:rgba?|hsla?|hwb|lab|lch|oklab|oklch|color)\([^)]*\)/g;function HS(e){return[...e.replace(KN," ").matchAll(/-?\d*\.?\d+(?=px|\s|$)/g)].map(t=>Number(t[0]))}function YN(e){let t=[],n=0,r=0;for(let o=0;o<e.length;o++){let i=e[o];i==="("?n++:i===")"?n--:i===","&&n===0&&(t.push(e.slice(r,o)),r=o+1)}return t.push(e.slice(r)),t}function PS(e){return!e||e==="none"?0:Math.max(0,...YN(e).filter(t=>!/\binset\b/.test(t)).map(t=>{let[n=0,r=0,o=0,i=0]=HS(t);return Math.max(Math.abs(n),Math.abs(r))+o+Math.max(0,i)}))}function XN(e){if(!e||e==="none")return 0;let t=0;for(let n of e.matchAll(/drop-shadow\(((?:[^()]|\([^)]*\))*)\)/g)){let[r=0,o=0,i=0]=HS(n[1]??"");t=Math.max(t,Math.max(Math.abs(r),Math.abs(o))+i*1.5)}for(let n of e.matchAll(/(?<!-)blur\(\s*([\d.]+)px\s*\)/g))t=Math.max(t,Number(n[1])*3);return t}function OS(e){let t=getComputedStyle(e),n=t.outlineStyle!=="none"?parseFloat(t.outlineWidth)+parseFloat(t.outlineOffset):0;return Math.max(PS(t.boxShadow),PS(t.textShadow),XN(t.filter),Number.isFinite(n)?Math.max(0,n):0)}function GS(e){let t=OS(e),n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);for(let r=0;r<jN&&n.nextNode();r++){let o=n.currentNode;ve(o)&&(t=Math.max(t,OS(o)))}return Math.min(zN,Math.ceil(t))}var BS=2,JN=.5,QN=240,ZN=new Set(["transform","translate","rotate","scale","left","top","right","bottom"]),$d=e=>e.getAttribute("style")??"";function eF(e,t){for(let n=e;n&&n!==t;n=n.parentElement)if(n.getAttribute("data-motion-blur")==="off")return!0;return!1}function tF(e,t){for(let n=e;n&&n!==t;n=n.parentElement){let r=getComputedStyle(n);if(r.transform.startsWith("matrix3d")||r.transformStyle==="preserve-3d"||r.perspective!=="none"||(r.offsetPath??"none")!=="none"||IS(r))return!0}return!1}function nF(e){let t=new Set;if(typeof document.getAnimations!="function")return t;for(let n of document.getAnimations()){let r=n.effect,o=r?.target;if(!ve(o)||!e.contains(o))continue;(typeof r?.getKeyframes=="function"?r.getKeyframes():[]).some(a=>Object.keys(a).some(l=>ZN.has(l)))&&t.add(o)}return t}function rF(e){let t=/^rgba\(.*,\s*([\d.]+)\)$/.exec(e)??/\/\s*([\d.]+)(%?)\s*\)$/.exec(e);return t?t[2]?Number(t[1])/100:Number(t[1]):1}var oF=e=>e.tagName==="IMG"||e.tagName==="CANVAS",Ri=32;function iF(e){if("naturalWidth"in e&&!(e.complete&&e.naturalWidth>0))return!0;try{let t=e.ownerDocument.createElement("canvas");t.width=t.height=Ri;let n=t.getContext("2d",{willReadFrequently:!0});if(!n)return!0;n.imageSmoothingQuality="high",n.drawImage(e,0,0,Ri,Ri);let{data:r}=n.getImageData(0,0,Ri,Ri);for(let o=3;o<r.length;o+=4)if((r[o]??0)<255)return!0;return!1}catch{return!0}}function aF(e,t,n){let r=1;for(let o=e;o&&o!==t;o=o.parentElement)r*=parseFloat(getComputedStyle(o).opacity);return r<.05?!1:r<.99?!0:oF(e)?(n.has(e)||n.set(e,iF(e)),n.get(e)===!0):!/^(VIDEO|PICTURE)$/.test(e.tagName)&&sF(e)}function sF(e){let t=getComputedStyle(e);return rF(t.backgroundColor)>=.99?!1:t.backgroundImage==="none"?!0:[...t.backgroundImage.matchAll(/rgba\([^)]*,\s*([\d.]+)\)/g)].some(n=>Number(n[1])<.99)}function US(e,t){return!e||!t||!e.width||!t.width?0:Math.max(Math.abs(e.left-t.left),Math.abs(e.top-t.top),Math.abs(e.right-t.right),Math.abs(e.bottom-t.bottom))}function lF(e,t){let n=e.map($d);e.forEach((o,i)=>o.setAttribute("style",t[i]??""));let r=e.map(o=>o.getBoundingClientRect());return e.forEach((o,i)=>o.setAttribute("style",n[i]??"")),r}function WS({scene:e,durationSeconds:t,fps:n,seek:r,onStep:o}){r(0);let i=[...e.querySelectorAll("*")].filter(ve),a=new Set(nF(e)),l=i.map($d),s=i.map(A=>A.getBoundingClientRect()),c=Math.max(1,Math.round(t*n)),d=Math.min(c,QN),f=c/d,m=new Set,p=new Set,x=new Map,b=A=>{x.set(A,Math.max(x.get(A)??0,GS(A)))},y=new Set,E=new Map,v=e.getBoundingClientRect(),_=v.width*v.height*JN,H=[];for(let A=0;A<=d;A++){A>0&&r(A/d*t),o?.(A,d);let L=[],P=[];i.forEach((Z,J)=>{!a.has(Z)&&$d(Z)===l[J]||(a.has(Z)||P.push(J),a.add(Z),L[J]=Z.getBoundingClientRect())});let q=P.filter(Z=>US(s[Z],L[Z])/f>=BS),X=lF(q.map(Z=>i[Z]),q.map(Z=>l[Z]??""));if(q.forEach((Z,J)=>{H[Z]=X[J]}),L.forEach((Z,J)=>{let D=i[J];!D||US(H[J],Z)/f<BS||(m.has(D)||b(D),m.add(D),Z&&_>0&&Z.width*Z.height>=_&&aF(D,e,E)&&y.add(D))}),A%10===0||A===d)for(let Z of m)tF(Z,e)&&p.add(Z),b(Z);H=L}let I=i.filter(A=>m.has(A)&&!p.has(A)&&!y.has(A)&&!eF(A,e));return{movers:I.filter(A=>!I.some(L=>L!==A&&L.contains(A))),dynamic:a,pads:x}}var qd="data-hf-motion-blur-hide",sn="data-hf-motion-blur-only",Mi="data-hf-motion-blur-mover",uF=4,cF=8,VS=2e3,dF=3,fF=25,$S=(e,t,n)=>Math.min(n,Math.max(t,e));function mF(e){if(e.getAttribute("data-motion-blur")!=="on")return null;let t=(n,r)=>{let o=Number(e.getAttribute(n));return e.hasAttribute(n)&&Number.isFinite(o)?o:r};return{shutterDeg:$S(t("data-motion-blur-shutter",180),0,720),samples:e.hasAttribute("data-motion-blur-samples")?Math.round($S(t("data-motion-blur-samples",16),2,64)):null,events:e.getAttribute("data-motion-blur-events")==="on"}}var jS=wS,Kd=_S;function pF(e){let t=window[vS];return t?{code:"renderer-off",reason:`the renderer turned it off (${String(t)})`}:AS()?zs(e,{isAccelerated:Kd,backface:yS(e)}):{code:"unsupported-browser",reason:"html-in-canvas (drawElementImage) is unavailable in this browser"}}function hF(e){let t=typeof e.className=="string"&&e.className?`.${e.className.trim().split(/\s+/).join(".")}`:"";return`${e.tagName.toLowerCase()}${e.id?`#${e.id}`:""}${t}`}function gF(e){let t=Number(e.getAttribute("data-width"))||e.offsetWidth,n=Number(e.getAttribute("data-height"))||e.offsetHeight;return{width:Math.max(1,Math.round(t)),height:Math.max(1,Math.round(n))}}function Xs(){let e=Number(window[ES]),t=e>0?e:window.devicePixelRatio;return Number.isFinite(t)&&t>0?t:1}function qS(e,t,n){let r=document.createElement("canvas");return r.width=Math.max(1,Math.round(e*Xs())),r.height=Math.max(1,Math.round(t*Xs())),r.setAttribute("data-hf-ignore",""),r.setAttribute("data-hf-motion-blur",n),r.style.cssText=`position:absolute;left:0;top:0;width:${e}px;height:${t}px;`,r}function bF(e,t,n){let{root:r}=e,{width:o,height:i}=gF(r),a=qS(o,i,"capture"),l=qS(o,i,"output");l.style.pointerEvents="none",Vs(a,n);let s=a.getContext("2d"),c=l.getContext("2d");if(!s||!c)throw new Error("capture motion blur: no 2D context");let d=s,f=c,m=Xs(),p=Vd(o,i,m),x=document.createElement("style");x.setAttribute("data-hf-ignore",""),x.textContent=[`[${qd}] { opacity: 0 !important; }`,`[${sn}] { background: none !important; border-color: transparent !important; box-shadow: none !important; outline-color: transparent !important; }`,`[${sn}]::before, [${sn}]::after, [${sn}] * { visibility: hidden !important; }`,`[${sn}] [${Mi}], [${sn}] [${Mi}] * { visibility: visible !important; }`].join(`
|
|
631
|
+
`);let b=[],y=new Map,E=null,v=null,_=null,H=0,I=0,k=0,A=null,L=null,P=!1,q=[],X=0,Z=0,J,D=null,R=()=>!1,M=new Set,j=!1,W=!1;function ee(Y){(e.ignoreMutations??(ae=>ae()))(Y),e.seek(e.now(),!0)}function C(){j||(ee(()=>{r.before(a),a.append(r),$s(r,n),a.after(l),document.head.append(x)}),f.setTransform(1,0,0,1,0,0),f.clearRect(0,0,l.width,l.height),j=!0)}function N(){_?.release(),_=null,v&&(re(v),v.settle(),v=null),j&&(j=!1,ee(()=>{x.remove(),Yy(r,n),a.before(r),a.remove(),l.remove()}))}let K=Y=>e.seek(Y,!t.events);function $(Y){J=e.timeline();let ae=e.durationSeconds(),Ee=SS(r,Kd),Ye=performance.now(),$e=WS({scene:r,durationSeconds:ae,fps:e.fps,seek:K,onStep:(Ft,St)=>Ee.sample(Ft,St,Ft/St*ae)});K(Y),D=Ee.result(),R=Ee.facesNow,b=$e.movers,y=$e.pads,E=NS(r,$e.dynamic),Z=Math.round(performance.now()-Ye)}function U(Y,ae){let Ee=E;if(!Ee)return{els:[],frames:[]};let Ye=b.filter(we=>typeof we.checkVisibility!="function"||we.checkVisibility({visibilityProperty:!0})),$e=t.shutterDeg/360/e.fps;if(Ye.length===0||$e<=0)return{els:[],frames:[]};let Ft=Y-$e/2,St=Ye.map(()=>[]);for(let we=0;we<ae;we++)K(Math.max(0,Ft+we/(ae-1)*$e)),Ee.reset(),Ye.forEach((Xe,Yt)=>St[Yt]?.push(Ee.pose(Xe)));K(Y),Ee.reset();let Dn=Ye.map((we,Xe)=>{let Yt=y.get(we)??0,rr=we.offsetWidth+2*Yt,vt=we.offsetHeight+2*Yt,Et=fl=>Ti(fl,-Yt,-Yt),lo=(St[Xe]??[Yr]).map(Et);return{w:rr,h:vt,now:Et(Ee.pose(we)),taps:t.samples===null?kS(lo,rr,vt,o,i):Ks(lo,t.samples)}});return Ee.reset(),{els:Ye,frames:Dn}}let z=()=>{d.reset(),d.drawElementImage(r,0,0)},re=Y=>{r.removeAttribute(sn);for(let ae of Y.els)ae.removeAttribute(qd),ae.removeAttribute(Mi)},oe=Y=>{r.setAttribute(sn,""),Y.els.forEach((ae,Ee)=>Y.kept[Ee]&&ae.setAttribute(Mi,""))},ie=Y=>{r.removeAttribute(sn),Y.els.forEach((ae,Ee)=>{ae.removeAttribute(Mi),Y.kept[Ee]&&ae.setAttribute(qd,"")})};function te(Y=!1){let ae=v;if(!ae||A||!ae.armed)return;let Ee=performance.now(),Ye=!0;try{Ye=ue(ae,Y),I=0}catch($e){Q($e)}if(ae.ms+=performance.now()-Ee,!Ye&&!A){a.requestPaint();return}q.push(X+ae.ms),q.length>600&&q.shift(),Be(ae)}function Q(Y){I++,G("runtime.captureMotionBlur.compose",Y),Ie(Y instanceof Error?Y.message:String(Y)),W?N():I>=dF&&He(`capture failed ${I} times in a row`,"capture-failures",!0)}function ue(Y,ae){z();try{if(Y.phase==="sharp")return p.draw(a,f,Y.frames,Y.kept),!0;if(ae)throw new Error(`the ${Y.phase} capture did not arrive`);return Y.phase==="movers"?(p.crop(a,Y.frames,Y.kept),ie(Y),Y.phase="background",!1):(p.draw(a,f,Y.frames,Y.kept),!0)}finally{d.reset()}}function Be(Y){re(Y),v===Y&&(v=null),Y.settle();let ae=_;_=null,ae&&!A?Vi(ae.t,ae.engineMode).then(ae.release):ae?.release()}let mt=()=>te();function Ie(Y){k++,k%fF===1&&globalThis.console.info(`[motion-blur] capture failed (${k} so far): ${Y}`)}function Ue(Y){Ie(`no paint within ${VS} ms`),N(),Be(Y)}a.addEventListener("paint",mt);function He(Y,ae,Ee=!1){A||(A=Y,L=ae,P=Ee,globalThis.console.warn(`[motion-blur] off: ${Y}`),Hi())}function Hi(){a.removeEventListener("paint",mt),N()}function Gi(){!A||P||(A=null,L=null,E=null,a.addEventListener("paint",mt))}function Bi(){A&&e.timeline()!==J&&Gi()}function Ui(Y,ae){if(Bi(),A)return Promise.resolve();if(ae&&(W=!0),!W&&document.visibilityState==="hidden")return N(),Promise.resolve();if(v&&!ae){let Ee=_;return new Promise(Ye=>{_={t:Y,engineMode:ae,release:()=>{Ee?.release(),Ye()}}})}return Vi(Y,ae)}function ao(){let Y=Xs();if(Y!==m){m=Y;for(let ae of[a,l])ae.width=Math.max(1,Math.round(o*m)),ae.height=Math.max(1,Math.round(i*m));p=Vd(o,i,m)}}function Wi(Y){return(!E||e.timeline()!==J)&&$(Y),D&&He(D.reason,D.code),A!==null}function dl(Y){return N(),k++,M.has(Y.code)||(M.add(Y.code),globalThis.console.info(`[motion-blur] sharp frame: ${Y.code} appeared after a clean scan`)),Promise.resolve()}function Vi(Y,ae){try{if(ao(),Wi(Y))return Promise.resolve();if(b.length===0)return N(),Promise.resolve();let Ee=zs(r,{isAccelerated:Kd,backface:R()});if(Ee)return dl(Ee);C();let Ye=performance.now(),$e=U(Y,ae?cF:uF),Ft=p.plan($e.frames);return X=performance.now()-Ye,v&&Be(v),new Promise(St=>{let Dn=++H,we,Xe=()=>{we=setTimeout(()=>{v?.seq===Dn?Ue(v):St()},VS)};v={seq:Dn,els:$e.els,frames:$e.frames,kept:Ft,phase:Ft.some(Boolean)?"movers":"sharp",armed:!ae,startTimer:Xe,ms:0,settle:()=>{clearTimeout(we),St()}},v.phase==="movers"&&oe(v),!ae&&(Xe(),a.requestPaint())})}catch(Ee){return G("runtime.captureMotionBlur.paint",Ee),He(Ee instanceof Error?Ee.message:String(Ee),"capture-failures",!0),Promise.resolve()}}function $i(){let Y=q.length?q.reduce((ae,Ee)=>ae+Ee,0)/q.length:0;return{state:A?"off":"on",reason:A,reasonCode:L,movers:b.length,moverNames:b.map(hF),scanMs:Z,shutterDeg:t.shutterDeg,frames:q.length,meanMs:Math.round(Y*10)/10,failures:I,failedFrames:k}}function so(){return Bi(),A||Wi(e.now()),$i()}return{root:r,paint:Ui,probe:so,rest:()=>W?!1:(N(),!0),arm:()=>{!v||v.armed||(v.armed=!0,v.startTimer(),a.requestPaint())},finish:()=>{v&&(v.armed=!0),te(!0)},teardown:Hi,suspend:N,report:$i,busy:()=>v!==null,rediscover:()=>{E=null,Gi()}}}var et=null,KS=!1,zd=null,jd=null;function YS(e){let t=mF(e.root),n=window;if(et&&(et.root!==e.root||!t)&&(et.teardown(),et=null,delete n.__hfMotionBlur),!t)return;if(et){et.rediscover();return}let r=jr(),o=pF(e.root);if(!r||o){let a=o?.reason??null;globalThis.console.info(`[motion-blur] off: ${a} (Chrome ${hS()??"unknown"})`);let l=()=>({state:"off",reason:a,reasonCode:o?.code??null,movers:0,moverNames:[],scanMs:0,shutterDeg:t.shutterDeg,frames:0,meanMs:0,failures:0,failedFrames:0});n.__hfMotionBlur={report:l,probe:l,suspend:zS};return}et=bF(e,t,r);let i=et;n.__hfMotionBlur={report:()=>i.report(),probe:()=>i.probe(),suspend:zS}}function Xr(e,t){if(!et||KS)return null;let n=t?.engineMode===!0;if(!n&&!t?.playing&&et.rest())return null;let r=et.paint(e,n);return n&&et.busy()&&xF(),r}function XS(){return et?.busy()??!1}function JS(){et?.arm()}function xF(){let e=window,t=e.__hf_page_composite_resolve;t!==jd&&(zd=typeof t=="function"?t:null,jd=()=>(zd&&zd(),et?.finish(),e.__hf_page_composite_pending=!1,!0),e.__hf_page_composite_resolve=jd),e.__hf_page_composite_pending=!0}function zS(){KS=!0,et?.suspend()}var yF=500,SF=33,vF=3,Js=class{constructor(t){fe(this,"_baseTime",0);fe(this,"_playStartMs",null);fe(this,"_rate",1);fe(this,"_duration",1/0);fe(this,"_playStart",0);fe(this,"_playEnd",1/0);fe(this,"_playHold",1/0);fe(this,"_nowMs");fe(this,"_audioSource",null);fe(this,"_lastReadMs",null);fe(this,"_lastNow",0);this._baseTime=t?.initialTime??0,this._rate=t?.rate??1,this._duration=t?.duration??1/0,this._nowMs=t?.nowMs??(()=>performance.now())}now(){if(this._playStartMs===null)return this._baseTime;if(this._audioSource){let r=null;if("currentTimeSeconds"in this._audioSource?r=this._audioSource.currentTimeSeconds:r=this._elementTimeNeverBehind(this._audioSource),r!==null){let o=Math.min(r,this.getEnd());return this._baseTime=Math.max(0,o),this._playStartMs=this._nowMs(),this._lastReadMs=null,this._lastNow=this._baseTime,this._baseTime}}this._applyStallCorrection();let t=(this._nowMs()-this._playStartMs)/1e3,n=this._baseTime+t*this._rate;return this._lastNow=Math.max(0,Math.min(n,this.getEnd())),this._lastNow}_elementTimeNeverBehind(t){let{el:n,compositionStart:r,mediaStart:o,rate:i}=t;if(n.paused||!Number.isFinite(n.currentTime))return null;if(n.seeking)return this._lastNow;let a=i??1,l=zn(a,n.currentTime-o)+r;return l>=this._lastNow?l:this._heldTimeWhenBehind(n,this._lastNow-l,a)}_heldTimeWhenBehind(t,n,r){return t.loop&&n>zn(r,t.duration)/2?null:t.readyState<vF||n<=Iu?this._lastNow:null}_applyStallCorrection(){if(this._playStartMs===null)return;let t=this._nowMs();if(this._lastReadMs!==null){let n=t-this._lastReadMs;n>yF&&(this._playStartMs+=n-SF)}this._lastReadMs=t}play(){return this._playStartMs!==null||this._baseTime>=this.getEnd()?!1:(this._playStartMs=this._nowMs(),this._lastNow=this._baseTime,this._lastReadMs=null,!0)}pause(){return this._playStartMs===null?!1:(this._baseTime=this.now(),this._playStartMs=null,!0)}seek(t){let n=Number.isFinite(this._duration)?Math.max(0,Math.min(t,this._duration)):Math.max(0,t);this._baseTime=n,this._lastNow=n,this._playStartMs!==null&&(this._playStartMs=this._nowMs(),this._lastReadMs=null)}isPlaying(){return this._playStartMs!==null}setRate(t){let n=Number.isFinite(t)&&t>0?Math.max(.1,Math.min(5,t)):1;this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs(),this._lastReadMs=null),this._rate=n}getRate(){return this._rate}setDuration(t){this._duration=Number.isFinite(t)&&t>0?t:1/0,this._baseTime>this._duration&&(this._baseTime=this._duration)}getDuration(){return this._duration}setPlayRange(t,n,r){this._playStart=Number.isFinite(t)&&t>0?t:0,this._playEnd=n!==null&&Number.isFinite(n)&&n>this._playStart?n:1/0,this._playHold=dp(this._playStart,this._playEnd,r)}getPlayStart(){return this._playStart}getEnd(){return Math.min(this._duration,this._playEnd)}getStopTime(){return this._playEnd<this._duration?this._playHold:this.getEnd()}attachAudioSource(t){this._audioSource=t}detachAudioSource(){this._audioSource&&this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs(),this._lastReadMs=null),this._audioSource=null}audioElement(){return this._audioSource&&"el"in this._audioSource?this._audioSource.el:null}hasAudioSource(){return this._audioSource!==null}getSource(){if(this._audioSource&&this._playStartMs!==null){if("currentTimeSeconds"in this._audioSource)return"audio";let{el:t}=this._audioSource;if(!t.paused&&Number.isFinite(t.currentTime))return"audio"}return"monotonic"}snapshot(){return{time:this.now(),playing:this.isPlaying(),rate:this._rate,duration:this._duration,source:this.getSource()}}reachedEnd(){let t=this.now();return t>=this.getEnd()||this._playStartMs===null&&t>=this.getStopTime()}};var EF=100,AF=8,wF=4096,Yd=e=>e;function _F(e,t,n){return!ru(e)&&t==="linear"&&!n}function CF(e){let t=Math.ceil(e*EF);return Math.min(wF,Math.max(AF,t))}function TF(e,t,n,r,o){let{scheduledAt:i,elapsed:a,rate:l}=r,s=o??Yd,c=v=>i+(v-a)/l,d=e.points[t],f=e.points[t+1],m=c(f.t);if(m<=i)return null;let p=Math.max(i,c(d.t)),x=m-p;if(x<=0)return null;if(_F(d,n,o))return{kind:"ramp",time:m,value:s(f.v)};let b=CF(x),y=Np(e,Math.max(d.t,a),f.t,b,n),E=new Float32Array(b);for(let v=0;v<b;v+=1)E[v]=s(y[v]??0);return{kind:"curve",time:p,duration:x,values:E}}function RF(e,t,n,r){let o=[];for(let a=0;a+1<e.points.length;a+=1){let l=TF(e,a,t,n,r);l&&o.push(l)}let i=o[0];return i?.kind==="curve"&&i.time<=n.scheduledAt||o.unshift({kind:"set",time:n.scheduledAt,value:(r??Yd)(Ht(e,n.elapsed,t))}),o}function MF(e,t){e.cancelScheduledValues(0);for(let n of t)n.kind==="set"?e.setValueAtTime(n.value,n.time):n.kind==="ramp"?e.linearRampToValueAtTime(n.value,n.time):(e.setValueAtTime(n.values[0]??0,n.time),e.linearRampToValueAtTime(n.values[n.values.length-1]??0,n.time+n.duration))}function kF(e,t){for(let n of t)if(n.kind==="set")e.setValueAtTime(n.value,n.time);else if(n.kind==="ramp")e.linearRampToValueAtTime(n.value,n.time);else try{e.setValueCurveAtTime(n.values,n.time,n.duration)}catch{MF(e,t);return}}function Jr(e){for(let t of e)t.param.cancelScheduledValues(0)}function Qr(e,t){for(let n of e)typeof n.param.cancelAndHoldAtTime=="function"?n.param.cancelAndHoldAtTime(t):n.param.cancelScheduledValues(t)}function Xd(e,t,n,r){if(t.points.length!==0)for(let o of e){if(Jr([o]),Lp(t)){let i=(o.map??Yd)(t.points[0].v);o.param.setValueAtTime(i,r.scheduledAt);continue}kF(o.param,RF(t,n,r,o.map))}}function QS(e,t,n,r,o){let i=new Map(n.filter(l=>l.id).map(l=>[l.id,l.handle])),a=[];for(let l of e.lanes){let s=Lo(l.target);if(!s)continue;let c=s.kind==="preset"?o?.[s.presetId]:s.kind==="fx"?i.get(s.nodeId)?.automation?.[s.param]:void 0;if(!c||c.length===0)continue;let d=ou(l.target,t);d&&(Xd(c,l,d.scale,r),a.push(...c))}return a}function ZS(e){return e.lanes.find(t=>t.target===gr)??null}var ev=`
|
|
631
632
|
const TP_OS = 4;
|
|
632
633
|
const TP_HALF = 64;
|
|
633
634
|
const TP_BRANCH = 33;
|
|
@@ -773,7 +774,7 @@ class HfTruePeak extends AudioWorkletProcessor {
|
|
|
773
774
|
}
|
|
774
775
|
}
|
|
775
776
|
registerProcessor("hf-truepeak", HfTruePeak);
|
|
776
|
-
`;var
|
|
777
|
+
`;var LF=`
|
|
777
778
|
const dbToLin = (db) => Math.pow(10, db / 20);
|
|
778
779
|
|
|
779
780
|
/**
|
|
@@ -1116,10 +1117,10 @@ class HfPitchshift extends AudioWorkletProcessor {
|
|
|
1116
1117
|
}
|
|
1117
1118
|
}
|
|
1118
1119
|
registerProcessor("hf-pitchshift", HfPitchshift);
|
|
1119
|
-
`+gS,wd=new WeakMap;function Cd(e){return bS.has(e)}var bS=new WeakSet;function Td(e){let t=wd.get(e);return t||(t=(async()=>{if(!e.audioWorklet)throw new Error("AudioWorklet is unavailable: the page needs a secure context (https, localhost or file://)");let n=`data:text/javascript;base64,${btoa(String.fromCharCode(...new TextEncoder().encode(dN)))}`;await e.audioWorklet.addModule(n),bS.add(e)})().catch(n=>{throw wd.delete(e),n}),wd.set(e,t)),t}function fN(e,t,n){let r=.6+Math.max(0,Math.min(1,t))*2.6,i=Math.max(1,Math.floor(e*r)),o=new Float32Array(i),a=Math.round(t*1e3)*2654435761+Math.round(n*1e3)*40503>>>0,l=()=>(a=a*1664525+1013904223>>>0,a/4294967295*2-1),s=Math.max(.001,1-Math.max(0,Math.min(1,n))),c=0,d=0;for(let f=0;f<i;f++){c+=s*(l()-c);let p=c*Math.pow(1-f/i,2.5);o[f]=p,d+=p*p}let m=Math.sqrt(d);if(m>0)for(let f=0;f<i;f++)o[f]=(o[f]??0)/m;return o}var we=e=>typeof e=="number"?e:Number(e??0),Rd=e=>e/1e3;function vS(e,t,n,r){let i=Math.max(1,Math.round(e.sampleRate)),o=e.createBuffer(1,i,e.sampleRate),a=o.getChannelData(0);for(let c=0;c<i;c++){let d=c/i;a[c]=t==="sine"?Math.sin(2*Math.PI*d):4*Math.abs((d+.75)%1-.5)-1}let l=e.createBufferSource();l.buffer=o,l.loop=!0,l.playbackRate.value=n;let s=(r*n%1+1)%1*(i/e.sampleRate);return l.start(typeof e.currentTime=="number"?e.currentTime:0,s),l}function ES(e){try{e.stop()}catch{}e.disconnect()}function Md(e,t){return[{param:e},{param:t,map:n=>1-n}]}function AS(e,t,n){e.gain.value=n,t.gain.value=1-n}function kd(e,t,n){return{input:e,output:e,update:t,automation:n,dispose:()=>e.disconnect()}}var mN=new Set(["peaking","highpass","lowpass"]),xS=e=>Math.pow(10,e/20),pN=(e,t)=>{let n=e.createGain(),r=i=>{n.gain.value=xS(we(i.gain))};return r(t),kd(n,r,{gain:[{param:n.gain,map:xS}]})};function vo(e,t){return(n,r)=>{let i=n.createBiquadFilter();i.type=e;let o=a=>{i.frequency.value=we(a.frequency),a.q!==void 0&&(i.Q.value=we(a.q)),t&&(i.gain.value=we(a.gain))};return o(r),kd(i,o,{frequency:[{param:i.frequency}],...mN.has(e)?{q:[{param:i.Q}]}:{},...t?{gain:[{param:i.gain}]}:{}})}}function hN(e){return(t,n)=>{let r=Math.tan(Math.PI*we(n.frequency)/t.sampleRate),i=e==="highpass"?t.createIIRFilter([1/(1+r),-1/(1+r)],[1,(r-1)/(r+1)]):t.createIIRFilter([r/(1+r),r/(1+r)],[1,(r-1)/(r+1)]);return kd(i,()=>{})}}function jr(e,t=!1){return(n,r,i)=>{let o=new AudioWorkletNode(n,e,{processorOptions:{...r,__hfElapsed:i}});return{input:o,output:o,update:a=>o.port.postMessage({...a}),...t?{reset:()=>o.port.postMessage({__hfReset:!0})}:{},dispose:()=>{o.port.postMessage({__hfDispose:!0}),o.disconnect()}}}}var gN={tanh:Math.tanh,atan:e=>2/Math.PI*Math.atan(Math.PI/2*e),cubic:e=>Math.abs(e)>=1?Math.sign(e):e-e**3/3,exp:e=>Math.sign(e)*(1-Math.exp(-Math.abs(e))),alg:e=>e/Math.sqrt(1+e*e),quintic:e=>Math.abs(e)>=1?Math.sign(e):e-e**5/5,sin:e=>Math.abs(e)>=1?Math.sign(e):Math.sin(Math.PI/2*e),erf:e=>Math.tanh(1.20211*e),hard:e=>Math.max(-1,Math.min(1,e))},bN=(e,t)=>{let n=e.createWaveShaper(),r=e.createGain(),i=e.createGain();r.connect(n).connect(i);let o=a=>{let l=gN[String(a.type)]??Math.tanh,s=Math.pow(10,we(a.threshold)/20),c=8192,d=new Float32Array(c);for(let m=0;m<c;m++){let f=m/(c-1)*2-1;d[m]=l(f/Math.max(1e-6,s))*s}n.curve=d,n.oversample=we(a.oversample)>=4?"4x":we(a.oversample)>=2?"2x":"none",i.gain.value=Math.pow(10,we(a.output)/20)};return o(t),{input:r,output:i,update:o,automation:{output:[{param:i.gain,map:a=>Math.pow(10,a/20)}]},dispose:()=>{r.disconnect(),n.disconnect(),i.disconnect()}}},xN=(e,t)=>{let n=e.createGain(),r=e.createGain(),i=e.createDelay(5),o=e.createGain(),a=e.createGain(),l=e.createGain();n.connect(i),i.connect(o),o.connect(i),i.connect(a).connect(r),n.connect(l).connect(r);let s=c=>{i.delayTime.value=Math.min(5,we(c.time)/1e3),o.gain.value=we(c.feedback),AS(a,l,we(c.mix))};return s(t),{input:n,output:r,update:s,automation:{time:[{param:i.delayTime,map:c=>Math.min(5,Rd(c))}],feedback:[{param:o.gain}],mix:Md(a.gain,l.gain)},dispose:()=>[n,r,i,o,a,l].forEach(c=>c.disconnect())}},yN=(e,t,n)=>{let r=e.createGain(),i=e.createGain(),o=e.createDelay(.5),a=vS(e,"sine",we(t.speed),n),l=e.createGain(),s=e.createGain(),c=e.createGain();a.connect(l).connect(o.delayTime),r.connect(o).connect(s).connect(i),r.connect(c).connect(i);let d=m=>{o.delayTime.value=we(m.delay)/1e3,l.gain.value=we(m.depth)/1e3,a.playbackRate.value=we(m.speed),AS(s,c,we(m.mix))};return d(t),{input:r,output:i,update:d,automation:{delay:[{param:o.delayTime,map:Rd}],depth:[{param:l.gain,map:Rd}],speed:[{param:a.playbackRate}],mix:Md(s.gain,c.gain)},dispose:()=>{ES(a),[r,i,o,l,s,c].forEach(m=>m.disconnect())}}},SN=6,vN=(e,t,n)=>{let r=e.createGain(),i=e.createGain(),o=e.createGain(),a=e.createGain(),l=vS(e,String(t.type)==="1"?"sine":"triangle",we(t.speed),n),s=e.createGain(),c=e.createGain(),d=e.createGain(),m=[];r.connect(o);let f=o;for(let y=0;y<SN;y++){let b=e.createBiquadFilter();b.type="allpass",b.Q.value=.7071,s.connect(b.frequency),f.connect(b),f=b,m.push(b)}l.connect(s),f.connect(c).connect(a),o.connect(d).connect(a),a.connect(i);let p=y=>{let b=1e3/Math.max(.1,we(y.delay));for(let g of m)g.frequency.value=b;s.gain.value=b*we(y.decay),l.playbackRate.value=we(y.speed),o.gain.value=we(y.in_gain),a.gain.value=we(y.out_gain),c.gain.value=1,d.gain.value=1};return p(t),{input:r,output:i,update:p,automation:{speed:[{param:l.playbackRate}],in_gain:[{param:o.gain}],out_gain:[{param:a.gain}]},dispose:()=>{ES(l),[r,i,o,a,s,c,d,...m].forEach(y=>y.disconnect())}}},EN=(e,t)=>{let n=e.createGain(),r=e.createGain(),i=e.createConvolver(),o=e.createGain(),a=e.createGain();i.normalize=!1,n.connect(i).connect(o).connect(r),n.connect(a).connect(r);let l="",s=c=>{let d=`${we(c.size)}:${we(c.damping)}`;if(d!==l){let m=fN(e.sampleRate,we(c.size),we(c.damping)),f=e.createBuffer(1,m.length,e.sampleRate);f.getChannelData(0).set(m),i.buffer=f,l=d}o.gain.value=we(c.wet),a.gain.value=we(c.dry)};return s(t),{input:n,output:r,update:s,automation:{wet:[{param:o.gain}],dry:[{param:a.gain}]},dispose:()=>[n,r,i,o,a].forEach(c=>c.disconnect())}},AN={"gain-node":pN,"biquad-peaking":vo("peaking",!0),"biquad-lowshelf":vo("lowshelf",!0),"biquad-highshelf":vo("highshelf",!0),"biquad-highpass":vo("highpass",!1),"biquad-lowpass":vo("lowpass",!1),"worklet-compressor":jr("hf-compressor"),"worklet-limiter":jr("hf-limiter"),"worklet-truepeak":jr("hf-truepeak",!0),"worklet-gate":jr("hf-gate"),"worklet-bitcrush":jr("hf-bitcrush"),"worklet-pitchshift":jr("hf-pitchshift"),waveshaper:bN,"delay-feedback":xN,"chorus-lfo":yN,"allpass-phaser":vN,convolver:EN};function _S(e){return e.nodes.some(t=>Si(t.type)?.web.startsWith("worklet-")??!1)}function _N(e,t,n,r=0){let i=Si(t);if(!i)throw new Error(`Unknown effect type: ${t}`);let o=vi(t,n);if((t==="highpass"||t==="lowpass")&&String(o.poles)==="1")return hN(t)(e,o,r);let a=AN[i.web];if(!a)throw new Error(`No Web Audio builder for ${i.web}`);return a(e,o,r)}function yS(e){let t=[];for(let n of e){let r=n.fromPreset,i=t.at(-1);if(i&&i.preset===r)i.nodes.push(n);else{let o=typeof n.presetAmount=="number"?n.presetAmount:1;t.push({...r?{preset:r}:{},amount:Math.min(1,Math.max(0,o)),nodes:[n]})}}return t}function SS(e){return Ei(e).map(t=>{let n=vi(t.type,t.params),r=n.poles!==void 0?`:${n.poles}`:"",i=String(n.poles)==="1"?`@${n.frequency}`:"",o=t.type==="phaser"?`~${n.type}`:"",a=t.fromPreset?`%${t.fromPreset}`:"",l=t.type==="truepeak"?`^${n.lookahead}`:"";return`${t.type}${r}${i}${o}${l}${a}`}).join("|")}function wS(e,t,n=0){var m;let r=e.createGain(),i=e.createGain(),o=[],a=[],l=yS(Ei(t)),s=r;for(let f of l){let p=null;if(f.preset){let y=e.createGain(),b=e.createGain(),g=e.createGain(),v=e.createGain();g.gain.value=f.amount,b.gain.value=1-f.amount,s.connect(y),y.connect(b).connect(v),p={entry:y,wet:g,dry:b,join:v},s=y}for(let y of f.nodes){let b=_N(e,y.type,y.params??{},n);s.connect(b.input),s=b.output,o.push({...y.id?{id:y.id}:{},type:y.type,handle:b})}p&&f.preset&&(s.connect(p.wet).connect(p.join),a.push({id:f.preset,...p}),s=p.join)}s.connect(i);let c=SS(t),d={};for(let f of a)(d[m=f.id]??(d[m]=[])).push(...Md(f.wet.gain,f.dry.gain));return{input:r,output:i,presets:d,nodes:o,update(f){if(SS(f)!==c)return!1;Ei(f).forEach((y,b)=>{let g=o[b];g&&(g.handle.update(vi(y.type,y.params)),y.id===void 0?delete g.id:g.id=y.id)});let p=0;for(let y of yS(Ei(f))){if(!y.preset)continue;let b=a[p++];!b||b.id!==y.preset||(b.wet.gain.value=y.amount,b.dry.gain.value=1-y.amount)}return!0},reset(){for(let{handle:f}of o)f.reset?.()},dispose(){for(let{handle:f}of o)f.dispose();for(let{entry:f,wet:p,dry:y,join:b}of a)f.disconnect(),p.disconnect(),y.disconnect(),b.disconnect();r.disconnect(),i.disconnect()}}}var CS={version:1,nodes:[]},TS={version:1,lanes:[]};function RS(e,t,n=Yt){let r=(n&&typeof e.getAttribute=="function"?e.getAttribute(n):null)??"";if(!r)return TS;try{return lp(ma(r),t)}catch{return TS}}function Kr(e){let t=(typeof e.getAttribute=="function"?e.getAttribute(jt):null)??"";if(!t)return{chain:CS,raw:""};try{return{chain:rp(t),raw:t}}catch{return{chain:CS,raw:""}}}function MS(e){return RS(e,Kr(e).chain)}function Eo(e,t,n,r,i,o={automation:Yt}){let{chain:a}=Kr(t),l=null,s=[],c=!1,d=0,m=()=>{try{l?(n.disconnect(l.input),l.output.disconnect(r),l.dispose()):n.disconnect(r)}catch{}l=null},f=(F,D)=>{if(F.nodes.length===0){n.connect(r);return}if(_S(F)&&!Cd(e)){n.connect(r);let k=++d;Td(e).then(()=>{c||k!==d||v(Kr(t).chain)}).catch(()=>{});return}try{let k=wS(e,F,D);n.connect(k.input),k.output.connect(r),l=k}catch{n.connect(r)}},p=(F,D)=>{s=D&&l?pS(RS(t,F,o.automation),F,l.nodes,D,l.presets):[]},y=i?{...i}:null;f(a,y?.elapsed??0),p(a,y);let b=()=>{if(!y)return null;let F=typeof e.currentTime=="number"?e.currentTime:y.scheduledAt;return{scheduledAt:F,elapsed:y.elapsed+(F-y.scheduledAt)*y.rate,rate:y.rate}},g=F=>{let D=b();D&&(zr(s,D.scheduledAt),p(F,D))},v=F=>{let D=b();zr(s,D?.scheduledAt??0),m(),f(F,D?.elapsed??0),p(F,D)},E=null,_=t;return typeof MutationObserver<"u"&&typeof _?.nodeType=="number"&&(E=new MutationObserver(()=>{let F=Kr(t);s.length>0&&So(s),!l||!l.update(F.chain)?v(F.chain):g(F.chain)}),E.observe(_,{attributes:!0,attributeFilter:o.automation?[jt,o.automation]:[jt]})),{reanchor:F=>{if(c)return;let D=b();D&&zr(s,D.scheduledAt),y={...F},l?.reset(),p(Kr(t).chain,y)},setRate:F=>{let D=b();c||!D||!Number.isFinite(F)||F<=0||F===D.rate||(y={...D,rate:F},zr(s,D.scheduledAt),p(Kr(t).chain,y))},dispose:()=>{c=!0,E?.disconnect(),s.length>0&&zr(s,typeof e.currentTime=="number"?e.currentTime:0),l?.dispose()}}}function kS(e,t){e.getFloatTimeDomainData(t);let n=0;for(let r=0;r<t.length;r++)n=Math.max(n,Math.abs(t[r]??0));return n}function Ld(e,t){let n=e.createGain();n.channelCount=2,n.channelCountMode="explicit";let r=e.createChannelSplitter(2),i=e.createAnalyser(),o=e.createAnalyser();i.fftSize=o.fftSize=2048,t.connect(n),n.connect(r),r.connect(i,0),r.connect(o,1);let a=new Float32Array(new ArrayBuffer(2048*4)),l=new Float32Array(new ArrayBuffer(2048*4));return{read:()=>({l:kS(i,a),r:kS(o,l)}),dispose:()=>{try{t.disconnect(n),n.disconnect(),r.disconnect()}catch{}}}}var LS="runtime_web_audio_bypass";function Nd(e,t){return typeof e.getAttribute=="function"?e.getAttribute(t):null}function Ao(e,t){return Nd(e,t)!==null}function wN(e){return Ao(e,"crossorigin")?!0:e.crossOrigin!=null}function CN(e){return typeof e.baseURI=="string"&&e.baseURI?e.baseURI:typeof document<"u"?document.baseURI:""}function TN(e){let t=typeof e.currentSrc=="string"?e.currentSrc:"";if(t)return[t];let n=Nd(e,"src");if(n)return[n];if(typeof e.querySelectorAll!="function")return[];let r=[];for(let i of Array.from(e.querySelectorAll("source"))){let o=i.getAttribute("src");o&&r.push(o)}return r}function RN(e,t){let n;try{n=new URL(e,CN(t))}catch{return null}return n.protocol!=="http:"&&n.protocol!=="https:"?null:n}function MN(){return typeof window.origin=="string"?window.origin:window.location.origin}function kN(e,t){if(typeof window>"u")return null;let n=RN(e,t);if(!n)return null;let r=MN(),i=r==="null";return!i&&n.origin===r||wN(t)?null:i?"opaque_document_origin":"cross_origin_no_cors"}function FS(e){return(typeof e.currentSrc=="string"?e.currentSrc:"")?!0:Ao(e,"src")}function Yr(e){for(let t of TN(e)){let n=kN(t,e);if(n)return{kind:"decode-only",reason:n,asset:t}}return{kind:"web-audio"}}function LN(e){let t=[];Ao(e,jt)&&t.push("fx-chain"),Ao(e,Yt)&&t.push("automation"),Ao(e,ka)&&t.push("audio-group");let n=Number.parseFloat(Nd(e,"data-volume")??"");return Number.isFinite(n)&&n>1&&t.push("above-unity-gain"),t}function NN(){return typeof window<"u"&&!!window.__HF_EXPORT_RENDER_SEEK_CONFIG}var NS=new WeakSet,FN={cross_origin_no_cors:"cross-origin media without a `crossorigin` opt-in is silent through createMediaElementSource (Web Audio spec); using native playback instead",opaque_document_origin:"this document's security origin is opaque (a sandbox without `allow-same-origin`), so no media is same-origin with it and createMediaElementSource would be silent (Web Audio spec); using native playback instead"},IN={cross_origin_no_cors:"proxy or download the asset to a same-origin URL to keep it.",opaque_document_origin:"add `allow-same-origin` to the sandbox, or serve the asset with a `crossorigin` attribute and an `Access-Control-Allow-Origin` of `null` or `*`, to keep it."};function Xr(e,t){if(t.kind==="web-audio"||NN()||NS.has(e))return;let n=LN(e);NS.add(e);let r={asset:t.asset,reason:t.reason,lostProcessing:n,note:FN[t.reason]};Te({source:"hf-preview",type:"diagnostic",code:LS,details:r});let i=n.length>0?` Native playback cannot reproduce: ${n.join(", ")}. Fix: ${IN[t.reason]}`:"";console.info(`[hyperframes] ${LS}: "${t.asset}" (${t.reason}): Web Audio capture withheld; the track plays through native HTMLMediaElement output.${i}`)}var DN={automation:null};function Fd(e){return!Number.isFinite(e)||e<=0?1:e}function IS(e){return ft(e)}function PN(e,t){t||e.paused||!Qo().__hfDebug||console.debug("[hyperframes] webAudioTransport claimed fallback-playing element:",e.currentSrc||e.getAttribute("src")||"")}function ON(e,t){let{elapsed:n,mediaStart:r,scheduledAt:i,globalRate:o,mediaRate:a,clipDuration:l,headCut:s}=t,c=Number.isFinite(l)&&l>0,d=Math.max(n,s,0),m=(l-d)*a;if(c&&m<=0)return!1;let f=d>n?i+(d-n)/o:0;return c?e.start(f,d*a+r,m):e.start(f,d*a+r),!0}function ks(e,t,n){let r=hS(MS(e));r&&_d([{param:t.gain}],r,fa.scale,n)}function Jr(e){return e.sourceKind==="buffer"}var HN=1e4,Ls=class{constructor(){fe(this,"_ctx",null);fe(this,"_bufferCache",new Map);fe(this,"_failedSrcs",new Set);fe(this,"_mediaElementSources",new WeakMap);fe(this,"_activeSources",[]);fe(this,"_masterGain",null);fe(this,"_busOut",null);fe(this,"_master",null);fe(this,"_monitorGain",null);fe(this,"_masterVolume",1);fe(this,"_masterMuted",!1);fe(this,"_groups",new Map);fe(this,"_metering",!1);fe(this,"_masterTap",null);fe(this,"_groupTaps",new Map);fe(this,"_rateAnchorCtx",0);fe(this,"_rateAnchorComp",0);fe(this,"_rate",1);fe(this,"_paused",!0);fe(this,"_playGeneration",0);fe(this,"_playingCaptured",new Set);fe(this,"_suspendPending",!1);fe(this,"_restTimer",null)}async init(){try{return this._ctx=new AudioContext,this._ctx.onstatechange=()=>this.rest(),this._masterGain=this._ctx.createGain(),this._busOut=this._ctx.createGain(),this._monitorGain=this._ctx.createGain(),this._masterGain.connect(this._busOut),this._busOut.connect(this._monitorGain),this._monitorGain.connect(this._ctx.destination),this.applyMasterGain(),this._metering&&this.attachMasterTap(),!0}catch{return!1}}async wake(){!this._ctx||this._ctx.state==="running"&&!this._suspendPending||(this._suspendPending=!1,await this._ctx.resume())}rest(){this._restTimer!==null&&clearTimeout(this._restTimer),this._restTimer=null,!(!this._ctx||this._ctx.state!=="running"||this._suspendPending)&&(this._restTimer=setTimeout(()=>{this._restTimer=null,this.suspendIfIdle()},HN))}suspendIfIdle(){for(let t of this._playingCaptured)t.paused&&this._playingCaptured.delete(t);!this._ctx||!this._paused||this._suspendPending||this._playingCaptured.size>0||(this._suspendPending=!0,this._ctx.suspend().catch(t=>{this._suspendPending=!1,H("webAudioTransport.suspend",t)}))}get context(){return this._ctx}getTime(){return!this._ctx||this._paused?-1:this._rateAnchorComp+(this._ctx.currentTime-this._rateAnchorCtx)*this._rate}async decodeAudioElement(t){let n=t.currentSrc||t.getAttribute("src");if(!n)return null;if(this._bufferCache.has(n))return this._bufferCache.get(n);if(this._failedSrcs.has(n)||!this._ctx)return null;let r;try{let i=await fetch(n,{cache:"no-store"});if(!i.ok)return H("webAudioTransport.fetch",new Error(`${i.status} ${n}`)),null;r=await i.arrayBuffer()}catch(i){return H("webAudioTransport.fetch",i),null}try{let i=await this._ctx.decodeAudioData(r);return this._bufferCache.set(n,i),i}catch(i){return this._failedSrcs.add(n),H("webAudioTransport.decode",i),null}}startGeneration(){return this._playGeneration+=1,this._playGeneration}currentGeneration(){return this._playGeneration}acquireMediaElementSource(t){let n=this._mediaElementSources.get(t);if(n){let a=Yr(t);if(a.kind!=="web-audio"){try{n.disconnect()}catch{}return this._mediaElementSources.delete(t),Xr(t,a),null}return n}if(!this._ctx)return null;let r=Yr(t);if(r.kind!=="web-audio")return Xr(t,r),null;let i=this._ctx.createMediaElementSource(t);this._mediaElementSources.set(t,i),t.paused||this._playingCaptured.add(t),t.addEventListener("play",()=>{this._playingCaptured.add(t),this.wake()});let o=()=>{this._playingCaptured.delete(t),this.rest()};return t.addEventListener("pause",o),t.addEventListener("emptied",o),i}async scheduleMediaElementPlayback(t,n,r,i,o,a,l=1){if(!this._ctx||!this._masterGain||a!==this._playGeneration)return null;try{if(await this.wake(),a!==this._playGeneration)return null;let s=this.acquireMediaElementSource(t);if(!s)return null;s.disconnect();let c=Fd(l),d=this._ctx.createGain();d.gain.value=o;let m=this._ctx.currentTime,f=i-n,p={scheduledAt:m,elapsed:f,rate:c},y=Eo(this._ctx,t,s,d,p);d.connect(this.resolveDestination(t,m,i,c)??this._masterGain),ks(t,d,p),this._rate=c,this._rateAnchorCtx=m,this._rateAnchorComp=i;let b={fx:y,el:t,sourceNode:s,sourceKind:"media-element",gainNode:d,compositionStart:n,mediaStart:r,scheduledAt:m,priorMuted:t.muted,priorVolume:t.volume,mediaPlaybackRate:rt(t),bounded:!1};return t.volume=1,this._activeSources.push(b),this._paused=!1,b}catch(s){return H("webAudioTransport.mediaElementSource",s),null}}groupInput(t,n,r){let i=this._groups.get(t);if(i){if(i.generation!==this._playGeneration)try{i.reanchor(r),i.generation=this._playGeneration}catch(f){H("webAudioTransport.groupReanchor",f)}return i.input}if(!this._ctx||!this._masterGain)return null;let o=this._ctx.createGain(),a=this._ctx.createGain();a.connect(this._masterGain);let l=()=>ru(n,t),s=l(),c=this._ctx.createGain();c.gain.value=s?.hasAttribute("data-hidden")?0:1,c.connect(a);let d=this._ctx.createGain();d.gain.value=IS(nu(s)),d.connect(c);let m=Eo(this._ctx,s??{getAttribute:()=>null},o,d,r);return s&&ks(s,d,r),this._groups.set(t,{input:o,output:a,isPresent:()=>l()!==null,fader:d,muteGain:c,fx:m,generation:this._playGeneration,reanchor:f=>{So([{param:d.gain}]);let p=l();d.gain.value=IS(nu(p)),c.gain.value=p?.hasAttribute("data-hidden")?0:1,m?.reanchor(f),p&&ks(p,d,f)},dispose:()=>{try{m?.dispose(),o.disconnect(),d.disconnect(),c.disconnect(),a.disconnect()}catch{}}}),this.attachGroupTap(t,a),o}startMetering(){this._metering=!0,this.attachMasterTap();for(let[t,n]of this._groups)this.attachGroupTap(t,n.output)}stopMetering(){this._metering=!1,this._masterTap?.dispose(),this._masterTap=null;for(let t of this._groupTaps.values())t.dispose();this._groupTaps.clear()}readLevels(){let t={};for(let[n,r]of this._groupTaps)this._groups.get(n)?.isPresent()&&(t[n]=r.read());return{master:this._masterTap?.read()??{l:0,r:0},groups:t}}attachMasterTap(){this._ctx&&this._masterGain&&!this._masterTap&&(this._masterTap=Ld(this._ctx,this._busOut??this._masterGain))}attachGroupTap(t,n){this._metering&&this._ctx&&!this._groupTaps.has(t)&&this._groupTaps.set(t,Ld(this._ctx,n))}setGroupMuted(t,n){let r=this._groups.get(t);if(r)try{r.muteGain.gain.value=n?0:1}catch(i){H("webAudioTransport.setGroupMuted",i)}}ensureMasterBus(t,n){if(!this._ctx||!this._masterGain||!this._busOut)return;if(this._master){if(this._master.generation===this._playGeneration)return;try{this._master.fx?.reanchor(n),this._master.generation=this._playGeneration}catch(o){H("webAudioTransport.masterReanchor",o)}return}let r=iu(t);if(!r)return;this._masterGain.disconnect(this._busOut);let i=Eo(this._ctx,r,this._masterGain,this._busOut,n,DN);this._master={fx:i,generation:this._playGeneration}}resolveDestination(t,n,r,i){if(!this._masterGain)return null;let o={scheduledAt:n,elapsed:r,rate:i};this.ensureMasterBus(t.ownerDocument,o);let a=Na(t);return a?this.groupInput(a,t.ownerDocument,o)??this._masterGain:this._masterGain}handleSourceEnded(t,n,r,i){let o=this._activeSources.indexOf(n);if(o!==-1){this._activeSources.splice(o,1),r.muted=i;try{t.disconnect(),n.fx?.dispose(),n.gainNode.disconnect()}catch{}this._activeSources.length===0&&(this._paused=!0)}}async schedulePlayback(t,n,r,i,o,a,l,s=1,c=Number.POSITIVE_INFINITY,d=r){if(!this._ctx||!this._masterGain||l!==this._playGeneration)return null;try{if(await this.wake(),l!==this._playGeneration)return null;let m=o(),f=Fd(s),p=rt(t),y=f*p,b=this._ctx.createBufferSource();b.buffer=n,b.playbackRate.value=y;let g=this._ctx.createGain();g.gain.value=a;let v=m-r,E=this._ctx.currentTime,_={scheduledAt:E,elapsed:v,rate:f},F=Eo(this._ctx,t,b,g,_);if(g.connect(this.resolveDestination(t,E,m,f)??this._masterGain),ks(t,g,_),this._rate=f,this._rateAnchorCtx=E,this._rateAnchorComp=m,!ON(b,{elapsed:v,mediaStart:i,scheduledAt:E,globalRate:f,mediaRate:p,clipDuration:c,headCut:d-r}))return b.disconnect(),F?.dispose(),g.disconnect(),null;let D=t.muted;t.muted=!0,PN(t,D);let k={fx:F,el:t,sourceNode:b,sourceKind:"buffer",gainNode:g,compositionStart:r,mediaStart:i,scheduledAt:E,priorMuted:D,priorVolume:t.volume,mediaPlaybackRate:p,bounded:Number.isFinite(c)&&c>0};return this._activeSources.push(k),this._paused=!1,b.addEventListener("ended",()=>this.handleSourceEnded(b,k,t,D)),k}catch(m){return H("webAudioTransport.schedule",m),null}}setRate(t){let n=Fd(t);if(n===this._rate)return!1;this._ctx&&!this._paused&&(this._rateAnchorComp=this.getTime(),this._rateAnchorCtx=this._ctx.currentTime),this._rate=n;for(let r of this._activeSources)try{Jr(r)&&(r.sourceNode.playbackRate.value=n*r.mediaPlaybackRate),r.fx?.setRate(n)}catch(i){H("webAudioTransport.setRate",i)}return this.setBusRate(n),!0}setBusRate(t){let n=[...this._groups.values(),...this._master?[this._master]:[]];for(let r of n)try{r.fx?.setRate(t)}catch(i){H("webAudioTransport.setRate.bus",i)}}hasBoundedActiveSources(){return this._activeSources.some(t=>Jr(t)&&t.bounded)}stopAll(){for(let t of this._activeSources){try{Jr(t)&&t.sourceNode.stop(),t.sourceNode.disconnect(),t.fx?.dispose(),t.gainNode.disconnect()}catch{}Jr(t)?t.el.muted=t.priorMuted:(t.el.volume=t.priorVolume,this._ctx&&t.sourceNode.connect(this._ctx.destination))}this._activeSources=[],this._paused=!0,this._playGeneration+=1,this.rest()}setVolume(t){this._masterVolume=Math.max(0,Math.min(1,t)),this.applyMasterGain()}setElementVolume(t,n){let r=ft(n);for(let i of this._activeSources)if(i.el===t)try{i.sourceKind==="media-element"&&(i.el.volume=1),i.gainNode.gain.value=r}catch(o){H("webAudioTransport.setElementVolume",o)}}setMuted(t){this._masterMuted=t,this.applyMasterGain()}applyMasterGain(){this._monitorGain&&(this._monitorGain.gain.value=this._masterMuted?0:this._masterVolume)}ownsClock(){return!this._paused&&this._activeSources.some(Jr)}ownsElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t&&Jr(n))}routesElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t)}destroy(){this.stopAll(),this.stopMetering();for(let t of this._groups.values())t.dispose();if(this._groups.clear(),this._master?.fx?.dispose(),this._master=null,this._bufferCache.clear(),this._failedSrcs.clear(),this._mediaElementSources=new WeakMap,this._playingCaptured.clear(),this._suspendPending=!1,this._restTimer!==null&&clearTimeout(this._restTimer),this._restTimer=null,this._ctx)try{this._ctx.close()}catch{}this._ctx=null,this._masterGain=null,this._busOut=null,this._monitorGain=null,this._masterVolume=1,this._masterMuted=!1}};var _o="data-hf-studio-manual-edit-gesture";var DS=`[${_o}]`;function PS(e,t){let n=e.defaultView?.MutationObserver??globalThis.MutationObserver;if(!n||!e.documentElement)return{isActive:()=>e.querySelector(DS)!=null,observing:!1,disconnect:()=>{}};let r=new Set(e.querySelectorAll(DS)),i=l=>{for(let s of l){let c=s.target;Ie(c)&&(c.hasAttribute(_o)?r.add(c):r.delete(c))}},o=l=>{l.length!==0&&(i(l),t())},a=new n(o);return a.observe(e.documentElement,{subtree:!0,attributes:!0,attributeFilter:[_o]}),{observing:!0,isActive:()=>{o(a.takeRecords());for(let l of r){if(l.isConnected&&l.hasAttribute(_o))return!0;r.delete(l)}return!1},disconnect:()=>{a.disconnect(),r.clear()}}}var OS=333.3333333333333,Id=1e3*60/60;function HS(e){return e.isPlaying&&e.hasCapturedTimeline&&e.currentTimeSeconds<2?!1:e.compositionChanged===!0?!0:e.isPlaying?e.playingPollDue===!0:Number.isInteger(e.tick)&&e.tick>0&&e.tick%60===0}var GN=/^\s*spring\(\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+))\s*\)\s*$/;function GS(e){return Math.max(0,Math.min(1,e))}function BS(e){let t=GN.exec(e);if(!t)return null;let n=Number(t[1]);return Number.isFinite(n)?GS(n):null}function US(e,t){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let n=GS(t),r=12-n*6,i=Math.PI*2*(1+n*1.5),o=1-Math.exp(-r)*Math.cos(i);return(1-Math.exp(-r*e)*Math.cos(i*e))/o}var BN=/^\s*wiggle\(\s*(\d+)\s*,\s*(easeOut|easeInOut|anticipate|uniform)\s*(?:,\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?)\s*)?\)\s*$/,UN=Math.PI*2;function WN(e){let t=BN.exec(e);if(!t)return null;let n=Number(t[1]);if(!Number.isSafeInteger(n)||n<1)return null;let r=t[2];if(r!=="easeOut"&&r!=="easeInOut"&&r!=="anticipate"&&r!=="uniform")return null;if(t[3]===void 0)return{wiggles:n,type:r};let i=Number(t[3]);return!Number.isFinite(i)||i<0||i>1?null:{wiggles:n,type:r,amplitude:i}}function VN(e,t,n,r){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let i=r??(n==="easeInOut"?.08:n==="uniform"?.14:n==="anticipate"?.12:.16),o=n==="easeInOut"?i*Math.sin(Math.PI*e):n==="uniform"?i:i*(1-e);return e+(n==="anticipate"?-1:1)*o*Math.sin(UN*t*e)}function WS(e,t){let n=WN(e);if(!n)return null;let r=`${n.wiggles}:${n.type}:${n.amplitude??"default"}`,i=t?.get(r);if(i)return i;let o=a=>VN(a,n.wiggles,n.type,n.amplitude);return t?.set(r,o),o}var $N=24,VS=e=>e>=1?1:0,qN=e=>e,Ns=String.raw`([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?)`,zN=new RegExp(String.raw`^\s*M\s*0\s*,\s*0\s+C\s*${Ns}\s*,\s*${Ns}\s+${Ns}\s*,\s*${Ns}\s+1\s*,\s*1\s*$`,"i");function $S(e,t,n){let r=1-e;return 3*r*r*e*t+3*r*e*e*n+e*e*e}function jN(e,t,n,r,i){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let o=0,a=1;for(let l=0;l<$N;l+=1){let s=(o+a)/2;$S(s,t,r)<e?o=s:a=s}return $S((o+a)/2,n,i)}function KN(e){let t=zN.exec(e);if(!t)return null;let n=Number(t[1]),r=Number(t[2]),i=Number(t[3]),o=Number(t[4]);return Math.min(n,i)<0||Math.max(n,i)>1?null:a=>jN(a,n,r,i,o)}function YN(e,t){if(!e.startsWith("spring("))return null;let n=BS(e);if(n===null)return null;let r=t.get(n);if(r)return r;let i=o=>US(o,n);return t.set(n,i),i}function XN(e,t){if(!e.startsWith("custom(")||!e.endsWith(")"))return null;let n=e.slice(7,-1),r=t.get(n);if(r)return r;let i=KN(n);return i&&t.set(n,i),i}function qS(e){if(e.__hfCustomEaseInstalled)return!0;let t=e.parseEase;if(!t)return!1;let n=new Map,r=new Map,i=new Map,o=s=>typeof s!="string"?null:s==="hold"?VS:WS(s,i)??YN(s,r)??XN(s,n),a=(s,c,d=[])=>{let m=o(s);return m||(typeof s=="string"&&/^(?:hold|spring|wiggle|custom)(?:\(|$)/.test(s.trim())&&mt("custom_ease_parse_failed",{ease:s}),t.call(c,s,...d)??qN)};e.parseEase=function(c,...d){return a(c,this,d)};let l=e.registerEase;if(typeof l=="function"){l("hold",VS);let s=c=>{let d=m=>m;d.config=(...m)=>a(`${c}(${m.join(",")})`,e),l(c,d)};s("spring"),s("wiggle"),s("custom")}return e.__hfCustomEaseInstalled=!0,!0}var Pd="first-frame",JN=3;function QN(e){let t=e.ownerDocument?.defaultView;return t&&e instanceof t.Element?!0:e instanceof Element}function ZN(e){if(!QN(e)||e.tagName!=="AUDIO"&&e.tagName!=="VIDEO")return!1;let t=e.ownerDocument?.defaultView;return t&&e instanceof t.HTMLMediaElement?!0:e instanceof HTMLMediaElement}function eF(e){return e.hasAttribute("data-start")||e.hasAttribute("data-track-index")}function tF(e,t,n){let r=e;for(;r;){if(eF(r)&&!za(r,{currentTime:0,compositionDuration:Number.POSITIVE_INFINITY,canonicalFps:30,exportRenderSeek:!1,timelineRegistry:n,resolver:t}))return!1;r=r.parentElement}return!0}function zS(e,t,n,r){return t==="all"?!0:tF(e,n,r)}function nF(e,{scope:t="all"}={}){let n=e.defaultView,r=Qe({documentRef:e,timelineRegistry:n?.__timelines,includeAuthoredTimingAttrs:!0}),i=e.querySelector(`meta[name="${Zo}"]`)!==null,o=Array.from(e.querySelectorAll("video, audio")).filter(ZN).filter(s=>zS(s,i&&s.preload!=="auto"?Pd:t,r,n?.__timelines??{})).filter(s=>s.readyState<JN),a=Array.from(e.querySelectorAll("img")).filter(s=>zS(s,s.getAttribute("loading")?.toLowerCase()==="lazy"?Pd:t,r,n?.__timelines??{})).filter(s=>!s.complete),l=e.fonts?.status==="loading";return{pendingMedia:o,pendingImages:a,fontsLoading:l}}function rF(e,{pendingMedia:t,pendingImages:n,fontsLoading:r},i){let o=t.map(s=>new Promise(c=>{if(s.error){c();return}let d=()=>{s.removeEventListener("canplay",d),s.removeEventListener("error",d),i.removeEventListener("abort",d),c()};s.addEventListener("canplay",d),s.addEventListener("error",d),i.addEventListener("abort",d,{once:!0})})),a=n.map(s=>s.decode?s.decode().catch(()=>{}):Promise.resolve()),l=r&&e.fonts?e.fonts.ready.then(()=>{}):Promise.resolve();return Promise.all([...o,...a,l]).then(()=>{})}function iF(e,t,{scope:n="all"}={}){let r=nF(e,{scope:n});return r.pendingMedia.length===0&&r.pendingImages.length===0&&!r.fontsLoading?null:rF(e,r,t)}var oF=50;function aF(e,t){let n=e.defaultView;return!n||n.__renderReady||!n.__hf?null:new Promise(r=>{let i,o=()=>{i!==void 0&&clearTimeout(i),t.removeEventListener("abort",o),r()};if(t.aborted){o();return}t.addEventListener("abort",o,{once:!0});let a=()=>{if(n.__renderReady){o();return}i=setTimeout(a,oF)};a()})}var sF=50,lF=1.5,uF=2,cF=1500;function Dd(e,t){return new Promise(n=>{if(t.aborted){n(-1);return}let r=0,i=()=>{e.cancelAnimationFrame?.(r),n(-1)};t.addEventListener("abort",i,{once:!0}),r=e.requestAnimationFrame(o=>{t.removeEventListener("abort",i),n(o)})})}function dF(e,t){let n=e.defaultView;return n?(async()=>{let r=await Dd(n,t);if(t.aborted)return;let i=await Dd(n,t),o=i-r,a=0;for(;!t.aborted&&a<uF;){if(i-r>=cF)return;let l=await Dd(n,t);if(t.aborted)return;let s=l-i;o=Math.min(o,s),a=s<sF||s<=o*lF?a+1:0,i=l}})():null}var fF=8e3;function mF(e,t,n={}){let r=n.inputs??[(c,d)=>iF(c,d,{scope:n.scope}),aF,dF],i=new AbortController,o=r.map(c=>c(e,i.signal)).filter(c=>c!==null);if(o.length===0){t({timedOut:!1});return}let a=n.timeoutMs??fF,l,s=new Promise(c=>{l=setTimeout(()=>c("timed-out"),a)});Promise.race([Promise.all(o).then(()=>"done"),s]).then(c=>{clearTimeout(l),i.abort(),t({timedOut:c==="timed-out"})})}function jS(e,t,n={}){mF(e,t,{...n,scope:Pd})}var Gd=new Map,wo=new Map,Od=new Map,Hd=()=>{},YS=()=>{},KS=0;function Bd(e){return/^[a-z][a-z0-9-]{0,63}$/.test(e)}function XS(e){let t=(Od.get(e)??0)+1;return Od.set(e,t),t}function JS(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>0?e:(KS-=1,KS)}function Ud(e,t){let n=wo.get(e);if(!n)return;let r=()=>Od.get(e)===t.generation&&wo.get(e)===n;try{Promise.resolve(n(t.payload)).then(()=>{r()&&YS(e,t.requestId)},i=>{r()&&Hd(e,t.requestId,i)})}catch(i){r()&&Hd(e,t.requestId,i)}}function QS(e){Hd=e}function ZS(e){YS=e}function Fs(e,t,n){if(!Bd(e))return;let r={payload:t,requestId:JS(n),generation:XS(e)};Gd.set(e,r),Ud(e,r)}function Is(e,t){Bd(e)&&(Gd.delete(e),Ud(e,{payload:void 0,requestId:JS(t),generation:XS(e)}))}function ev(e,t){if(!Bd(e))throw new Error(`Invalid HyperFrames runtime-data channel: ${e}`);wo.set(e,t);let n=Gd.get(e);return n&&Ud(e,n),()=>{wo.get(e)===t&&wo.delete(e)}}var tv=!1;function Wt(e){if(e){if(typeof e.pause!="function"){tv||(tv=!0,mt("timeline_missing_pause",{}));return}try{e.pause()}catch(t){H("runtime.timeline.pause",t)}}}function gF(e){let t=e;if(typeof t.remove=="function")for(let n of e.getChildren?.(!1,!0,!1)??[])n.data===gi&&t.remove(n)}function bF(){let e=window.__HF_EXPORT_RENDER_SEEK_CONFIG,t=e?.fps,n=e?.fpsSource,r=Number(t);return!e||t==null?{fps:null,source:"default",rawFpsSource:n,rawFps:t,fallbackReason:"missing"}:!Number.isFinite(r)||r<=0?{fps:null,source:"default",rawFpsSource:n,rawFps:t,fallbackReason:"invalid"}:{fps:r,source:n==="render-options"||n==="default"?n:"unknown",rawFpsSource:n,rawFps:t,fallbackReason:e.fpsFallbackReason}}function xF(e,t){return t!==null&&e.length===t.length&&e.every((n,r)=>n===t[r])}function nv(e,t,n){let r=null,i=!0;return()=>{let o=e();if(o.length===0)return r=null,i=!0,!0;if(xF(o,r))return i;r=o,i=!1;let a=o.length===1?o[0]:Promise.all(o);return Promise.resolve(a).then(()=>{r===o&&(i=!0,t())},l=>{r===o&&(i=!0,n(l),t())}),i}}function Co(e){let t=e.querySelector(`meta[name="${uo}"]`)?.getAttribute("content");if(!t)return null;try{return JSON.parse(t)}catch{return null}}var qd=e=>JSON.stringify([Array.from(e.attributes,t=>[t.name,t.value]).filter(([t])=>t!==qn),e.innerHTML]),yF=new Set(["style","preload","src",qn,An,Bn,...ta]),SF=e=>e.split(/\s+/).filter(t=>t&&!t.startsWith("__hf-")).join(" "),rv=e=>JSON.stringify([Array.from(e.attributes,({name:t,value:n})=>[t,t==="class"?SF(n):n]).filter(([t,n])=>!yF.has(t)&&!(t==="class"&&!n)).sort(([t],[n])=>t<n?-1:1),e.hasAttribute("data-var-src")?null:Ni(e),e.innerHTML]),To=new WeakMap,ov=e=>e.localName==="video"||e.localName==="audio",Vd=e=>{if(!Ie(e))return;let t=ov(e)?[e]:e.firstElementChild?e.querySelectorAll("video, audio"):[];for(let n of t)To.has(n)||To.set(n,qd(n))},Ds=null;function av(){typeof MutationObserver>"u"||!Co(document)||(Vd(document.documentElement),Ds=new MutationObserver(e=>{for(let t of e){t.addedNodes.forEach(Vd);let{target:n}=t;Ie(n)&&ov(n)&&To.set(n,qd(n))}}),Ds.observe(document.documentElement,{childList:!0,subtree:!0}))}function sv(){let e=i=>i?.config?.({force3D:!1}),t=Object.getOwnPropertyDescriptor(window,"gsap"),n=window.gsap;if(e(n),t?.configurable===!1||t?.get?.hfFlat)return;let r=Object.assign(()=>t?.get?t.get.call(window):n,{hfFlat:!0});Object.defineProperty(window,"gsap",{configurable:!0,enumerable:!0,get:r,set:i=>{t?.set?t.set.call(window,i):n=i,e(i)}})}var vF=new Map([["image",["href","xlink:href"]],["object",["data"]]]),EF=1e3,AF=16;function _F(){let e;return()=>e??(e=document.getAnimations())}var $d=e=>na(e)||Ce(e)&&Ra(e)&&xh({volume:Number.parseFloat(e.dataset.volume??""),fxChain:e.getAttribute("data-fx-chain"),automation:e.getAttribute("data-automation"),audioGroup:e.getAttribute("data-audio-group"),masterChain:Fh(e.ownerDocument)}),lv="audio[data-start], video[data-start]",Wd=e=>Array.from(e.querySelectorAll(lv)).filter($d);function iv(e){let t=e.matches(`[${ea}]`)?[e]:Array.from(e.querySelectorAll(`img[${ea}]`)).filter(n=>n.closest("[data-start]")===e);for(let n of t)n.setAttribute("loading","eager")}function uv(){let e=Ou(),t=window.parent!==window,n=u=>t&&u.hasAttribute(Nt);Ds?.disconnect(),Ds=null,Co(document)&&Vd(document.documentElement);let r=()=>{};Rp(Te),QS((u,h,x)=>{Te({source:"hf-preview",type:"runtime-data-error",channel:u,requestId:h,message:x instanceof Error?x.message:String(x)})}),ZS((u,h)=>{try{r()}catch(x){Te({source:"hf-preview",type:"runtime-data-error",channel:u,requestId:h,message:x instanceof Error?x.message:String(x)});return}Te({source:"hf-preview",type:"runtime-data-applied",channel:u,requestId:h})}),fo(document),bs(document),Ih(document);let i=bF();if(e.canonicalFps=i.fps??e.canonicalFps,wp(e.canonicalFps),window.__HF_EXPORT_RENDER_SEEK_CONFIG){let u=JSON.stringify({canonicalFps:e.canonicalFps,source:i.source,rawFpsSource:i.rawFpsSource,rawFps:i.rawFps,fallbackReason:i.fallbackReason});console.info(`[hyperframes] render runtime fps ${u}`)}let o=null,a=null,l=null,s=[],c=new Set,d=null,m=new Set,f=(u,h,x)=>{m.has(u)||(m.add(u),mt(h,x))};if(typeof window.__hfRuntimeTeardown=="function")try{window.__hfRuntimeTeardown()}catch(u){H("runtime.init.site1",u)}let p=new Ms;e.transportClock=p;let y=new Ls,b=!1;y.init().then(u=>{b=u}),window.__hf=window.__hf||{};let g=u=>u.closest("[data-hidden]")!==null||La(u.ownerDocument,u),v=()=>{let u=window.gsap,h=window;if(!(!u?.registerPlugin||h.__hfAutoNoopRegistered))try{u.registerPlugin({name:"_auto",init:()=>!1}),h.__hfAutoNoopRegistered=!0}catch(x){f("auto_marker_install_failed","auto_marker_install_failed",{reason:"threw"}),H("runtime.autoMarker.install",x)}},E=()=>{let u=window.gsap;if(!u){f("custom_ease_missing_gsap","custom_ease_install_failed",{reason:"missing_gsap"});return}try{qS(u)||f("custom_ease_no_parse_ease","custom_ease_install_failed",{reason:"no_parseEase"})}catch(h){f("custom_ease_install_threw","custom_ease_install_failed",{reason:"threw"}),H("runtime.customEase.install",h)}};v(),E(),document.documentElement&&(document.documentElement.style.margin="0",document.documentElement.style.padding="0",document.documentElement.style.overflow="hidden"),document.body&&(document.body.style.margin="0",document.body.style.padding="0",document.body.style.overflow="hidden");try{Dp(document)}catch(u){H("runtime.init.cssVariables",u)}if(window.__timelines=window.__timelines||{},Array.isArray(window.__timelines)){let u=window.__timelines,h=At()?.getAttribute("data-composition-id")??"root",x={};if(u.length===1)x[h]=u[0];else for(let S=0;S<u.length;S++)x[`tl-${S}`]=u[S];window.__timelines=x}let _=At();_&&!_.hasAttribute("data-start")&&_.setAttribute("data-start","0");let F=u=>{s.push(u)},D=(u,h,x)=>{let S=x??`${u}:${JSON.stringify(h)}`;c.has(S)||(c.add(S),Te({source:"hf-preview",type:"diagnostic",code:u,details:h}))},k=u=>{let h={scale:1,focusX:960,focusY:540},x=[],S=[],A={time:u.getTime(),duration:u.getDuration(),isPlaying:u.isPlaying(),renderMode:!1,timelineDirty:!1};return{play:u.play,pause:u.pause,seek:u.seek,getTime:u.getTime,getDuration:u.getDuration,isPlaying:u.isPlaying,getMainTimeline:()=>null,getElementBounds:()=>{},getElementsAtPoint:()=>{},setElementPosition:()=>{},previewElementPosition:()=>{},setElementKeyframes:()=>{},setElementScale:()=>{},setElementFontSize:()=>{},setElementTextContent:()=>{},setElementTextColor:()=>{},setElementTextShadow:()=>{},setElementTextFontWeight:()=>{},setElementTextFontFamily:()=>{},setElementTextOutline:()=>{},setElementTextHighlight:()=>{},setElementVolume:()=>{},setStageZoom:()=>{},getStageZoom:()=>h,setStageZoomKeyframes:()=>{},getStageZoomKeyframes:()=>x,addElement:()=>!1,removeElement:()=>!1,updateElementTiming:()=>!1,setElementTiming:()=>{},updateElementSrc:()=>!1,updateElementLayer:()=>!1,updateElementBasePosition:()=>!1,markTimelineDirty:()=>{},isTimelineDirty:()=>!1,rebuildTimeline:()=>{},ensureTimeline:()=>{},enableRenderMode:()=>{},disableRenderMode:()=>{},renderSeek:u.renderSeek,getElementVisibility:()=>({visible:!1}),getVisibleElements:()=>S,getRenderState:()=>({...A,time:u.getTime(),duration:u.getDuration(),isPlaying:u.isPlaying()})}},w=.75,L=.05,O=100,K=240,Z=u=>{if(u instanceof Error)return u.message||String(u);if(typeof u=="string")return u;try{return JSON.stringify(u)}catch{return String(u??"")}},ae=u=>{let h=u.toLowerCase();return h.includes("cannot read properties of null")||h.includes("cannot set properties of null")?{code:"runtime_null_dom_access",category:"dom-null-access"}:h.includes("failed to execute 'queryselector'")?{code:"runtime_invalid_selector",category:"selector-invalid"}:h.includes("is not defined")?{code:"runtime_reference_missing",category:"reference-missing"}:{code:"runtime_script_error",category:"script-error"}},ne=u=>{let h=zn(u);return h===null?null:`${h}px`},P=null,R=!1,M=()=>{if(!R)return At();if(cf(),nt&&!ut&&P?.revision===$t&&(P.el===null||P.el.isConnected))return P.el;let u=At();return P={revision:$t,el:u},u},z=()=>{let u=M();if(!u)return;let h=ne(u.getAttribute("data-width")),x=ne(u.getAttribute("data-height"));h&&(u.style.width=h),x&&(u.style.height=x),h&&u.style.setProperty("--comp-width",h),x&&u.style.setProperty("--comp-height",x),h&&(document.documentElement.style.width=h),x&&(document.documentElement.style.height=x),h&&(document.body.style.width=h),x&&(document.body.style.height=x)},V=()=>{let u=M(),h=Array.from(document.querySelectorAll("[data-composition-id]")).filter(x=>x.hasAttribute("data-duration")||x.hasAttribute("data-end"));for(let x of h){if(u&&x===u)continue;let S=x.getAttribute("data-duration"),A=x.getAttribute("data-end");S!=null&&!x.hasAttribute(gr)&&x.setAttribute(gr,S),A!=null&&!x.hasAttribute(br)&&x.setAttribute(br,A),x.removeAttribute("data-duration"),x.removeAttribute("data-end")}},ee=new WeakMap,C=u=>[u.className,u.style.position,u.style.top,u.style.left,u.style.width,u.style.height,u.style.transform,u.getAttribute("data-width"),u.getAttribute("data-height")].join("|"),N=()=>{let u=M();if(!u)return;u.style.position||(u.style.position="relative"),u.style.overflow="hidden";let h=ne(u.getAttribute("data-width")),x=ne(u.getAttribute("data-height"));h&&(u.style.width=h),x&&(u.style.height=x);let S=Array.from(u.children).filter(T=>{let I=T.tagName.toLowerCase();return I==="script"||I==="style"||I==="link"||I==="meta"||!T.hasAttribute("data-start")||T.hasAttribute(Nt)?!1:ee.get(T)!==C(T)}),A=S.filter(T=>T.style.getPropertyValue("display")==="none").map(T=>({el:T,priority:T.style.getPropertyPriority("display")}));for(let{el:T}of A)T.style.removeProperty("display");for(let T of S){let I=T.tagName.toLowerCase(),B=(T.style.top==="0px"||T.style.top==="0")&&(T.style.left==="0px"||T.style.left==="0")&&T.style.width==="100%"&&T.style.height==="100%",$=/translate\(\s*-50%\s*,\s*-50%\s*\)/.test(T.style.transform);if(B&&$&&!T.hasAttribute("data-width")&&!T.hasAttribute("data-height")){let Fe=T.style.top,xe=T.style.left,ve=T.style.width,kt=T.style.height;T.style.top="",T.style.left="",T.style.width="",T.style.height="";let Xe=window.getComputedStyle(T);Xe.top!=="auto"||Xe.bottom!=="auto"||Xe.left!=="auto"||Xe.right!=="auto"||Xe.width!=="0px"||Xe.height!=="0px"||(T.style.top=Fe,T.style.left=xe,T.style.width=ve,T.style.height=kt)}let G=window.getComputedStyle(T),se=G.position;if(se!=="absolute"&&se!=="fixed"&&(T.style.position="absolute"),I!=="audio"){let Fe=ne(T.getAttribute("data-width")),xe=ne(T.getAttribute("data-height")),ve=G.width!=="0px"&&G.width!=="auto",kt=G.height!=="0px"&&G.height!=="auto";Fe?!T.style.width&&!ve&&(T.style.width=Fe):!T.style.width&&G.width==="0px"&&(T.style.width="100%"),xe?!T.style.height&&!kt&&(T.style.height=xe):!T.style.height&&G.height==="0px"&&(T.style.height="100%")}}for(let{el:T,priority:I}of A)T.style.setProperty("display","none",I);if(document.readyState==="complete")for(let T of S)ee.set(T,C(T))},j=u=>Qe({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:u}),W=null,U=u=>{let h=W;W=j(!0);try{return u()}finally{W=h}},q=u=>u&&W?W:j(u),re=(u,h=0,x)=>q(x?.includeAuthoredTimingAttrs??!0).resolveStartForElement(u,h),oe=(u,h)=>q(h?.includeAuthoredTimingAttrs??!0).resolveDurationForElement(u),J=u=>{let h=u.closest("[data-composition-id]"),x=h?re(h,0):null,S=h?oe(h,{includeAuthoredTimingAttrs:!0}):null;return{compositionRoot:h,inheritedStart:x,inheritedDuration:S}},Q=u=>q(!0).resolveHostSlotsForElement(u),Y=(u,h)=>{let x=Oe(u.dataset.duration),S=x!=null&&x>0?h+x:1/0;return Vn({start:h,end:S},Q(u))},Ne=u=>q(!0).resolveMediaStartForElement(u);window.__hfResolveMediaStartSeconds=Ne,s.push(()=>{window.__hfResolveMediaStartSeconds===Ne&&delete window.__hfResolveMediaStartSeconds});let tt=!!document.querySelector("[data-composition-src]"),bt=!1;{let u=document.querySelectorAll("[data-composition-id]:not([data-composition-src])");for(let h of u){let x=h.getAttribute("data-composition-id");if(x&&h.children.length===0&&document.querySelector(`template#${CSS.escape(x)}-template`)){bt=!0;break}}}let De=!tt&&!bt,X=u=>{let h=Jt(u);return h==null?null:Math.max(0,h)},ie=u=>typeof u=="number"&&Number.isFinite(u)&&u>Qt,Re=()=>Array.from(document.querySelectorAll("video[data-start], audio[data-start]")).length===0?null:U(()=>qg(document,{mediaStart:Ne,mediaDuration:pr})),Ve=()=>{let u=M();if(!u)return null;let h=window.__timelines??{},x=Qe({timelineRegistry:h,includeAuthoredTimingAttrs:!0});return zg(u,x)},Rt=()=>{let u=window;return!!(u.lottie||u.DotLottie)},Nn=()=>{let u=M();if(!u)return Nr({authoredDurationSeconds:null,clipEndsSeconds:[]});let h=Qe({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:!0});return jg(u,h,{unregisteredLottie:Rt()})},Vt=null,Zn=()=>{if(ut)return Nn();let u=er();return Vt?.revision!==u&&(Vt={revision:u,result:Nn()}),Vt.result},je=u=>{window.__hf=window.__hf||{},window.__hf.durationSource={source:u.source,seconds:u.seconds,pendingClips:u.pendingClips},u.source==="derived"&&D("composition_duration_derived",{source:u.source,seconds:u.seconds,pendingClips:u.pendingClips},`composition_duration_derived:${u.seconds}`)},ei=()=>{let u=Re();return typeof u!="number"||!Number.isFinite(u)||u<=Qt?null:u},Vs=u=>ie(u)?Math.max(Qt,u*w):Qt,$s=(u=!1)=>{let h=0;for(let x of e.deterministicAdapters){let S=u?x.getAnimationCycleEndSeconds:x.getInferredDurationSeconds;if(typeof S!="function")continue;let A=null;try{A=S()}catch(T){H("runtime.init.adapterDuration",T)}typeof A=="number"&&Number.isFinite(A)&&A>0&&(h=Math.max(h,A))}return h>Qt?h:null},ut=!1,tf=()=>ut&&window.__HF_EXPORT_RENDER_SEEK_CONFIG!=null,jv=["data-start","data-duration","data-end","data-composition-id","data-composition-src","data-composition-file","data-root","data-hf-authored-duration","data-hf-authored-end","data-hf-auto-start",ha,"data-playback-rate","data-automation","data-playback-start","data-media-start","id","src"],nf=["loadedmetadata","durationchange","emptied"],ko=null,rf=-1,of=null,af=Number.NEGATIVE_INFINITY,nt=null,$t=0,sf=new Map,qs=u=>{if(!nt||ut)return Array.from(document.querySelectorAll(u));nt.takeRecords().length>0&&an();let h=sf.get(u);if(h?.revision===$t)return h.nodes;let x=Array.from(document.querySelectorAll(u));return sf.set(u,{revision:$t,nodes:x}),x},on=()=>{},an=()=>{$t+=1,on()},lf=()=>({media:ei(),authoredComposition:Ve()}),Kv=()=>{let u=window.__timelines??{},h="";for(let x of Object.keys(u)){let S=u[x];S&&(h+=`${x}=${X(S)??"?"};`)}return h},uf=u=>{let h=u.target;pe(h)&&ba(h)||an()},Yv=(u,h)=>{let x=nt?.takeRecords()??[];h();let S=nt?.takeRecords()??[];(x.length>0||S.some(A=>A.target!==u))&&an()},Xv=u=>{let h=nt?.takeRecords()??[];u(),nt?.takeRecords(),h.length>0&&an()},cf=()=>{if(!(nt||typeof MutationObserver>"u")){nt=new MutationObserver(an),nt.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[...jv,"data-width","data-height"]});for(let u of nf)document.addEventListener(u,uf,!0);s.push(()=>{nt?.disconnect(),nt=null,an();for(let u of nf)document.removeEventListener(u,uf,!0)})}};R=!0;let er=()=>{cf(),nt&&nt.takeRecords().length>0&&an();let u=Date.now();if(!p.isPlaying()||u-af>=Id){af=u;let h=Kv();h!==of&&(of=h,an())}return $t},df=u=>ut?lf():(u??(u=er()),ko&&rf===u||(rf=u,ko=lf()),ko),Ke=(u,h=0,x)=>{let S=null,A=Kg({declared:Oe(M()?.getAttribute("data-duration")),timeline:()=>X(u),floors:()=>{let{media:T,authoredComposition:I}=df(x);return[T,I,$s()]},fallback:h,derived:()=>(S=Zn(),S.seconds??0)});return S?je(S):window.__hf?.durationSource&&delete window.__hf.durationSource,A},zs=new WeakMap,ti=u=>u.__hfReal??u,ff=null,js=()=>{let u=window.__timelines??{},h=ce=>{let le=Object.entries(u).filter(ge=>!!ge[1]&&typeof ge[1].play=="function"&&typeof ge[1].pause=="function");if(le.length!==1)return{timeline:null};let ue=le[0];if(!ue)return{timeline:null};let[he,Ee]=ue;return{timeline:Ee,selectedTimelineIds:[he],selectedDurationSeconds:X(Ee),diagnostics:{code:"root_timeline_sole_registered_fallback",details:{reason:ce,soleTimelineId:he}}}},x=Qe({timelineRegistry:u,includeAuthoredTimingAttrs:!0}),{media:S,authoredComposition:A}=df(),T=Math.max(S??0,A??0)||null,I=Vs(T),B=ce=>{let le=document.querySelector(`[data-composition-id="${CSS.escape(ce)}"]`);return le?x.resolveStartForElement(le,0):0},$=(ce,le)=>{let ue=B(le.compositionId);ce.add(le.timeline,ue),zs.set(ti(le.timeline),{hostId:le.compositionId,parent:ce,at:ue})},G=(ce,le)=>{let ue=ti(le.timeline),he=zs.get(ue);return he&&he.parent===ce&&ue.parent===ti(ce)?he:null},se=(ce,le)=>Math.abs(ce.at-B(le.compositionId))<1e-6,me=(ce,le)=>{let ue=G(ce,le);!ue||se(ue,le)||$(ce,le)},Fe=ce=>{let le=window.gsap;if(!le||typeof le.timeline!="function")return null;let ue=le.timeline({paused:!0});for(let he of ce)$(ue,he);return ui(ve(ue,ce)),ue},xe=(ce,le)=>{if(!ie(ce))return null;let ue=window.gsap;if(!ue||typeof ue.timeline!="function")return null;let he=ue.timeline({paused:!0});if(le){try{he.add(le,0)}catch(ge){H("runtime.init.site2",ge)}ui(ve(he,[{timeline:le}]))}let Ee=he;if(typeof Ee.to=="function")try{Ee.to({},{duration:ce,data:gi})}catch(ge){H("runtime.init.site3",ge)}return he},ve=(ce,le)=>{if(!ce||typeof ce.getChildren!="function")return[];try{let ue=ce.getChildren(!0,!0,!0);return Array.isArray(ue)?le.filter(he=>ue.includes(ti(he.timeline))):[]}catch{return[]}},kt=(ce,le)=>{let ue=ce,he={addedIds:[],nested:[]};if(typeof ue.getChildren!="function")return he;try{let Ee=ue.getChildren(!0,!0,!0)??[];if(!Array.isArray(Ee))return he;let ge=[];for(let te of le){if(Ee.includes(ti(te.timeline))){me(ce,te);continue}try{$(ce,te),ge.push(te.compositionId)}catch(ye){H("runtime.init.site4",ye)}}return{addedIds:ge,nested:ve(ce,le)}}catch{return he}},Xe=M(),Pe=Xe?.getAttribute("data-composition-id")??null;if(!Pe)return h("root_missing_composition_id");let He=u[Pe]??null,Ge=(()=>{if(!Xe)return[];let ce=new Set,le=Array.from(Xe.querySelectorAll("[data-composition-id]")),ue=[];for(let he of le){let Ee=he.getAttribute("data-composition-id");if(!Ee||Ee===Pe||ce.has(Ee))continue;ce.add(Ee);let ge=u[Ee]??null;if(!ge||typeof ge.play!="function"||typeof ge.pause!="function")continue;let te=X(ge);ue.push({compositionId:Ee,timeline:ge,durationSeconds:te??0})}return ue})(),ui=ce=>{for(let le of ce){let ue=le.timeline;if(typeof ue.paused=="function")try{ue.paused(!1)}catch(he){H("runtime.init.site5",he)}}};if(He){let ce=Ge.length>0?kt(He,Ge):{addedIds:[],nested:[]},le=ce.addedIds;if(ui(ce.nested),(Ge.length>0||!document.querySelector("[data-composition-id]:not([data-composition-id='"+Pe+"'])"))&&(tr=!0),le.length>0)try{Ri(He,He.time(),!1)}catch{}gF(He);let ue=X(He);if(!ie(ue)&&Ge.length>0){let ge=Ge.map(dt=>dt.compositionId),te=Fe(Ge),ye=X(te);if(te&&ie(ye))return{timeline:te,selectedTimelineIds:ge,selectedDurationSeconds:ye,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_fallback",details:{rootCompositionId:Pe,rootDurationSeconds:ue,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:I,selectedDurationSeconds:ye,mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:A,selectedTimelineIds:ge,autoNestedChildren:le}}};let Me=xe(T??0,He),Ae=X(Me);if(Me&&ie(Ae))return{timeline:Me,selectedTimelineIds:[Pe],selectedDurationSeconds:Ae,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Pe,rootDurationSeconds:ue,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:A,selectedDurationSeconds:Ae,selectedTimelineIds:[Pe],autoNestedChildren:le}}}}if(!ie(ue)&&Ge.length===0){let ge=xe(T??0,He),te=X(ge);if(ge&&ie(te))return{timeline:ge,selectedTimelineIds:[Pe],selectedDurationSeconds:te,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Pe,rootDurationSeconds:ue,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:A,selectedDurationSeconds:te,selectedTimelineIds:[Pe]}}}}let he=Oe(Xe?.getAttribute("data-duration")),Ee=Math.max(ie(he)?he:0,A??0);if(Ee>0&&ie(Ee)&&ie(ue)&&Ee>=ue+.5){let ge=He;if(typeof ge.to=="function")try{ge.to({},{duration:0,data:gi},Ee)}catch(ye){H("runtime.init.site6",ye)}let te=X(He);if(ie(te))return{timeline:He,selectedTimelineIds:[Pe],selectedDurationSeconds:te,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_padded_to_declared_duration",details:{rootCompositionId:Pe,rootDurationSeconds:ue,rootDeclaredDur:he,authoredCompositionDurationFloorSeconds:A,newDur:te}}}}return{timeline:He,selectedTimelineIds:[Pe],selectedDurationSeconds:ue,mediaDurationFloorSeconds:S,diagnostics:le.length>0?{code:"root_timeline_auto_nested_children",details:{rootCompositionId:Pe,selectedDurationSeconds:ue,autoNestedChildren:le}}:void 0}}if(Ge.length>0){let ce=Ge.map(ge=>ge.compositionId),le=ff,ue=le?.size===Ge.length&&ie(X(le.timeline))&&Ge.every(ge=>{let te=G(le.timeline,ge);return te!==null&&se(te,ge)})?le.timeline:null,he=ue??Fe(Ge),Ee=X(he);if(he)return ue||(ff={timeline:he,size:Ge.length}),{timeline:he,selectedTimelineIds:ce,selectedDurationSeconds:Ee,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_missing_fallback",details:{rootCompositionId:Pe,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:I,selectedDurationSeconds:Ee,mediaDurationFloorSeconds:S,selectedTimelineIds:ce}}}}return h("root_composition_id_unmatched_in_registry")},tr=!1,Jv=u=>{let h=window.gsap,x=u;if(!(!x||typeof x.getChildren!="function"||!h||typeof h.parseEase!="function"))for(let S of x.getChildren(!0,!0,!0)){let A=S,T=A.timeline;if(!T||!("_ease"in T)||typeof T._ease=="function")continue;let I=A.vars?.keyframes,$=(I&&!Array.isArray(I)?I.ease:void 0)??A.vars?.ease??"none";try{let G=h.parseEase($);typeof G=="function"&&(T._ease=G)}catch(G){mt("keyframe_ease_repair_failed",{ease:typeof $=="string"?$:String($)}),H("runtime.keyframeEase.repair",G)}}},nr=()=>{if(E(),!De)return!1;let u=e.capturedTimeline,h=X(u),x=ie(h);if(u&&x&&tr)return!1;let S=js();if(!S.timeline)return!1;if(u&&u===S.timeline)return typeof u.timeScale=="function"&&u.timeScale(e.playbackRate),!1;e.capturedTimeline=S.timeline,typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate),Jv(e.capturedTimeline);let A=Ke(e.capturedTimeline,0);if(A<=0&&typeof e.capturedTimeline.progress=="function"&&(e.capturedTimeline.progress(1,!0),e.capturedTimeline.progress(0,!1),Wt(e.capturedTimeline)),A>0){try{p.setDuration(A)}catch{}if(typeof e.capturedTimeline.totalTime=="function"){typeof e.capturedTimeline.progress=="function"&&e.capturedTimeline.progress(1e-4,!0);let B=Math.max(0,e.currentTime||0);e.capturedTimeline.totalTime(B,!1),Wt(e.capturedTimeline)}let I=window.__hfStudioManualEditsApply;typeof I=="function"&&I(),fo(document)}if(S.diagnostics&&Te({source:"hf-preview",type:"diagnostic",code:S.diagnostics.code,details:S.diagnostics.details}),Te({source:"hf-preview",type:"diagnostic",code:"timeline_bound",details:{selectedTimelineIds:S.selectedTimelineIds??[],selectedDurationSeconds:S.selectedDurationSeconds??null,mediaDurationFloorSeconds:S.mediaDurationFloorSeconds??null}}),t){let I=M(),B=A>0?A:0,$=String(B>0?B:1),G=new Set,se=xe=>xe.tagName.toLowerCase()===wr,me=new Set(document.querySelectorAll("[data-start]")),Fe=xe=>{let ve=xe.parentElement;for(;ve&&ve!==I;){if(me.has(ve))return!0;ve=ve.parentElement}return!1};if(e.capturedTimeline.getChildren)try{for(let xe of e.capturedTimeline.getChildren(!0))if(typeof xe.targets=="function")for(let ve of xe.targets())Se(ve)&&ve!==I&&(se(ve)||ve.hasAttribute("data-start")||Fe(ve)||G.has(ve)||(G.add(ve),ve.setAttribute("data-start","0"),ve.setAttribute("data-duration",$),ve.setAttribute(Nt,"1")))}catch{}if(Se(I))for(let xe of I.querySelectorAll("[id]"))Se(xe)&&xe!==I&&(xe.hasAttribute("data-start")||Fe(xe)||G.has(xe)||xe.tagName==="SCRIPT"||xe.tagName==="STYLE"||xe.tagName==="LINK"||se(xe)||(G.add(xe),xe.setAttribute("data-start","0"),xe.setAttribute("data-duration",$),xe.setAttribute(Nt,"1")))}let T=Ks();for(let I of sn)ni.delete(I),Ys(I,T);return!0},mf=()=>{if(e.tornDown)return;let u=js();if(!u.timeline){e.capturedTimeline=null,tr=!1,p.setDuration(0),In(e.currentTime);return}if(e.capturedTimeline!==u.timeline)tr=!1,nr();else{let h=Ke(e.capturedTimeline,0);h>0&&h!==p.getDuration()&&(p.setDuration(h),at())}In(e.currentTime)};r=()=>{mf(),at()},window.__hfForceTimelineRebind=mf;let Qv=()=>{let u=M();if(!Se(u))return;let h=u.getBoundingClientRect(),x=zn(u.getAttribute("data-width")),S=zn(u.getAttribute("data-height")),A=window.getComputedStyle(u),T=x!==null&&S!==null,I=h.width<=0||h.height<=0||u.clientWidth<=0||u.clientHeight<=0;!T||!I||D("root_stage_layout_zero",{compositionId:u.getAttribute("data-composition-id")??null,declaredWidth:x,declaredHeight:S,rectWidth:Math.round(h.width),rectHeight:Math.round(h.height),clientWidth:u.clientWidth,clientHeight:u.clientHeight,display:A.display,visibility:A.visibility,overflow:A.overflow},`root-stage-layout-zero:${u.getAttribute("data-composition-id")??"unknown"}`)},Zv=()=>{e.tornDown||(d!=null&&window.cancelAnimationFrame(d),d=window.requestAnimationFrame(()=>{d=null,Qv()}))},eE=()=>{a=u=>{let h=Z(u.error??u.message).slice(0,K);if(!h)return;let x=ae(h);Te({source:"hf-preview",type:"diagnostic",code:x.code,details:{category:x.category,message:h,filename:u.filename||null,line:Number.isFinite(u.lineno)?u.lineno:null,column:Number.isFinite(u.colno)?u.colno:null}})},l=u=>{let h=Z(u.reason).slice(0,K);if(!h)return;let x=ae(h);Te({source:"hf-preview",type:"diagnostic",code:`${x.code}_unhandled_rejection`,details:{category:`${x.category}-unhandled-rejection`,message:h}})},window.addEventListener("error",a),window.addEventListener("unhandledrejection",l)},pf=new WeakSet,tE=()=>{let u=Array.from(document.querySelectorAll("img, video, audio, source, link[rel='stylesheet']"));for(let x of u){if(pf.has(x))continue;pf.add(x);let S=()=>{if(!Ie(x))return;let A=x.tagName.toLowerCase(),T=x.getAttribute("src")??x.getAttribute("href")??x.getAttribute("poster")??null,I=A==="link"?"runtime_stylesheet_load_failed":"runtime_asset_load_failed";D(I,{tagName:A,assetUrl:T,currentSrc:($e(x)||pe(x))&&x.currentSrc||null,readyState:pe(x)?x.readyState:null,networkState:pe(x)?x.networkState:null},`${I}:${A}:${T??"unknown"}`)};x.addEventListener("error",S),F(()=>{x.removeEventListener("error",S)})}let h=document.fonts;h&&h.ready.then(()=>{if(e.tornDown)return;let x=Array.from(h).filter(S=>S.status==="error").map(S=>S.family).filter(S=>!!S).slice(0,10);x.length!==0&&D("runtime_font_load_issue",{failedFamilies:x,totalFaces:Array.from(h).length},`runtime-font-load-issue:${x.join("|")}`)}).catch(()=>{})},nE=(u,h)=>{if(!u.timeline)return!1;let x=e.capturedTimeline;if(x&&x===u.timeline)return!1;let S=Math.max(0,e.currentTime||0);e.capturedTimeline=u.timeline,typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate);try{Wt(e.capturedTimeline),typeof e.capturedTimeline.seek=="function"&&Ri(e.capturedTimeline,S,!1)}catch(A){H("runtime.init.site7",A)}return Te({source:"hf-preview",type:"diagnostic",code:"timeline_loop_guard_rebind",details:{reason:h,previousTime:S,selectedTimelineIds:u.selectedTimelineIds??[],selectedDurationSeconds:u.selectedDurationSeconds??null,mediaDurationFloorSeconds:u.mediaDurationFloorSeconds??null}}),!0},Fn=null,hf=!1,sn=new Set,ni=new WeakMap,Ks=()=>{let u;return()=>u??(u=eu(e.capturedTimeline??{}))},Lo=()=>{e.tornDown||(Fn!=null&&window.clearTimeout(Fn),Fn=window.setTimeout(()=>{if(e.tornDown||(Fn=null,tf()))return;let u=js();if(!u.timeline||!ie(u.mediaDurationFloorSeconds??null))return;if(!e.capturedTimeline){nr()&&(at(),Ye(!0));return}if(hf)return;let x=X(e.capturedTimeline),S=u.selectedDurationSeconds??X(u.timeline);ie(S)&&(!ie(x)||S>=x+L)&&nE(u,"manual")&&(hf=!0,Te({source:"hf-preview",type:"diagnostic",code:"timeline_rebind_after_media_metadata",details:{previousDurationSeconds:x??null,selectedDurationSeconds:S??null,selectedTimelineIds:u.selectedTimelineIds??[],mediaDurationFloorSeconds:u.mediaDurationFloorSeconds??null}}),at(),Ye(!0))},O))},gf=u=>{pe(u.currentTarget)&&tg(u.currentTarget)},bf=u=>{let h=u.currentTarget;e.tornDown||p.isPlaying()||!pe(h)||Pi(h)||(ln=null,e.mediaForceSyncNextTick=!0,ot())},xf=u=>{pe(u.currentTarget)&&ng(u.currentTarget)},yf=u=>{$d(u)&&FS(u)&&Xr(u,Yr(u))},Sf=u=>{let h=u.currentTarget;pe(h)&&yf(h)},vf=u=>{u.removeEventListener("loadedmetadata",Lo),u.removeEventListener("durationchange",Lo),u.removeEventListener("loadedmetadata",gf),u.removeEventListener("loadedmetadata",bf),u.removeEventListener("loadedmetadata",Sf),u.removeEventListener("error",xf),sn.delete(u)},rE=()=>{for(let u of sn)vf(u)},iE=()=>{for(let u of sn)u.isConnected||(vf(u),u.pause(),Ul(u))},Ef=u=>{let h=Number.parseFloat(u.dataset.volume??"");return Number.isFinite(h)?Math.max(0,Math.min(1,h)):null},No=()=>{if(e.tornDown)return;let u=Array.from(document.querySelectorAll("video, audio")),h=[],x=Ks();for(let S of u){if(sn.has(S))continue;sn.add(S);let A=Ef(S);A!==null&&(S.volume=A),S.addEventListener("loadedmetadata",Lo),S.addEventListener("durationchange",Lo),S.addEventListener("loadedmetadata",Sf),yf(S),S.addEventListener("loadedmetadata",gf),S.addEventListener("loadedmetadata",bf),S.addEventListener("error",xf),eg(S),tl(S)?h.push(S):ga(S),Ys(S,x)}h.length>0&&In(e.currentTime,h)},Ys=(u,h)=>{ni.has(u)||wh(u,e.capturedTimeline,Ke(e.capturedTimeline,0),ni,{allowLiveTimelineSeek:!window.__HF_RENDER_CAPTURE_MODE,...h&&{movers:h}})},Xs=new WeakMap,oE=u=>{let h=Xs.get(u);if(h!==void 0)return h;let x=window.getComputedStyle(u).position,S=x==="static"||x==="relative"||x==="sticky";return Xs.set(u,S),S},Js=new WeakMap,aE=u=>{let h=Js.get(u);if(h!==void 0)return h;let x=u.querySelector("[data-start]")===null;return Js.set(u,x),x},sE=()=>{Xs=new WeakMap,Js=new WeakMap},Fo=new WeakMap,Af=(u,h)=>{if(!Fo.has(u)){let x=u.style.getPropertyValue("display"),S=u.style.getPropertyPriority("display"),A=h&&x==="none"&&!S;Fo.set(u,A?{value:"",priority:""}:{value:x,priority:S})}u.style.display="none"},_f=u=>{let h=Fo.get(u);h&&(Fo.delete(u),h.value?u.style.setProperty("display",h.value,h.priority):u.style.removeProperty("display"))},Io=new WeakSet,Do=!1,wf=u=>pe(u)&&u.hasAttribute("data-start")&&($d(u)||y.routesElement(u)),Cf=u=>wf(u)||Array.from(u.querySelectorAll(lv)).some(wf),Tf=new WeakMap,lE=(u,h)=>{for(let x of Wd(document)){if(Na(x)!==u||y.routesElement(x)||g(x))continue;let S=Ne(x),A=Oe(x.dataset.duration),T=A!=null&&A>0?S+A:1/0;if(Number.isFinite(S)&&h<T)return!0}return!1},uE=u=>{let h=!1;for(let x of qs(wr)){let S=x.hasAttribute("data-hidden"),A=Tf.get(x);A!==S&&(Tf.set(x,S),x.id&&(y.setGroupMuted(x.id,S),A&&!S&&lE(x.id,u)&&(h=!0)))}return h},Rf=u=>{let h=Ke(e.capturedTimeline,0,u);return(x,S)=>za(x,{currentTime:S,compositionDuration:h,canonicalFps:e.canonicalFps,exportRenderSeek:!!window.__HF_EXPORT_RENDER_SEEK_CONFIG,timelineRegistry:window.__timelines??{},resolver:q(!0)})},Mf=(u,h,x,S)=>{for(let A=u;A&&A!==S;A=A.parentElement)if(lr(A)&&A.hasAttribute("data-start")&&!x(A,h))return!1;return!0},Qs=hi(),Zs=2,Po=4,el=(u,h,x,S=Zs)=>{let A=pe(u)?Ne(u):re(u,Number.NaN),T=A+(oe(u)??Number.NaN);return A>x&&A<=x+S||T<=x&&T>=x-S||h(u,x+S)},rr=null,tl=u=>Qs&&u.hasAttribute("data-start")&&ba(u),ri=new WeakMap,nl=new WeakMap,ii=new WeakSet,kf=u=>u.parentElement?.closest("[data-composition-id]"),cE=u=>{let h=Ir(u,Number.NaN),x=Ho(Array.from(sn).filter(T=>T.isConnected&&Ir(T,Number.NaN)===h&&kf(T)===kf(u))).mediaClips,S=x.find(T=>T.el===u)?.end??Number.NaN,A;for(let T of x)T.el!==u&&T.start>=S-Ci(S)&&!(A&&A.start<=T.start)&&(A=T);!A||!tl(A.el)||(nl.set(A.el,u),ri.get(A.el)!==!0&&(ri.set(A.el,!0),ga(A.el)))},dE=(u,h,x)=>{let S=p.isPlaying();h&&S?ii.has(u)||(ii.add(u),cE(u)):ii.delete(u);let A=nl.get(u),T=h||x||A!==void 0&&ii.has(A),I=ri.get(u);I!==T&&(ri.set(u,T),T?(!h||I===void 0)&&ga(u):u.preload!=="none"&&(u.preload="none",I&&Yv(u,()=>Ep(u))))},fE=(u,h,x)=>ri.get(u)===!0&&el(u,h,x,Po)||rr!==null&&p.isPlaying()&&(h(u,rr)||el(u,h,rr,Po)),Lf=new WeakMap,rl=new Map,Nf=-1,mE=Po+Zs+1,pE=1,hE=(u,h,x)=>{let S=x(u);if(!S||!Number.isFinite(S.start))return null;let A=[];for(let T of[0,Zs,Po])A.push(S.start-T,S.end-T,S.end+T);for(let T=u.parentElement;T&&T!==h;T=T.parentElement){if(!T.hasAttribute("data-start"))continue;let I=x(T);if(!I||!Number.isFinite(I.start))return null;A.push(I.start,I.end)}return A.filter(T=>Number.isFinite(T))},gE=(u,h,x,S)=>{if(!x||!(Math.abs(h-u)<=pE))return null;if(Nf!==S)return rl.clear(),Nf=S,null;let A={timelineRegistry:window.__timelines??{},resolver:q(!0)},T=$=>$u($,A),I=Math.min(u,h),B=Math.max(u,h);return $=>{let G=Lf.get($);if(G===void 0||pe($)&&(nl.has($)||ii.has($))||!$.hasAttribute(Nt)&&$.style.visibility!==(G?"visible":"hidden"))return!1;let se=rl.get($);if(se===void 0&&(se=hE($,x,T),rl.set($,se)),!se)return!1;for(let me of se)if(me>=I&&me<=B||rr!==null&&Math.abs(me-rr)<=mE)return!1;return!0}},bE=(u,h,x,S)=>{let A=M(),T=!1,I=Rf(x),B=S===void 0||x===void 0?null:gE(S,u,A,x);for(let G of h){if(!lr(G))continue;if(G.hasAttribute("data-hidden")){Io.has(G)||(Io.add(G),Cf(G)&&(Do=!0)),Af(G,!1),(Ce(G)||$e(G))&&o?.setSourceVisibility(G,!1);continue}if(Io.has(G)&&(_f(G),Io.delete(G),Cf(G)&&(Do=!0)),B?.(G))continue;let se=I(G,u)&&Mf(G.parentElement,u,I,A);Lf.set(G,se);let me=n(G);me||(G.style.visibility=se?"visible":"hidden"),G.toggleAttribute(Bn,!me&&!se);let Fe=Qs&&!se&&el(G,I,u);Fe&&!G.hasAttribute(Gn)&&iv(G),G.toggleAttribute(Gn,Fe),pe(G)&&sn.has(G)&&tl(G)&&dE(G,se,Fe||fE(G,I,u)),!pe(G)&&!$e(G)&&(T=!0),(Ce(G)||$e(G))&&o?.setSourceVisibility(G,se),se?_f(G):oE(G)&&aE(G)&&Af(G,!0)}T&&Pm()&&o?.refresh();let $=uE(u);if((Do||$)&&p.isPlaying()){y.stopAll();for(let G of Wd(document))g(G)&&(G.volume=0);gl()}Do=!1},In=(u,h=qs("[data-start]"),x,S)=>U(()=>bE(u,h,x,S)),xE=u=>U(()=>{if(!Qs)return[];let h=M(),x=Rf();return Array.from(document.images).filter(S=>S.closest(`[data-start]:not([${Nt}])[style*="visibility: hidden"]`)!==null&&(S.closest(pi)!==null||!S.complete)&&Mf(S,u,x,h))}),oi=null,ln=null,Oo=[],Ff=u=>u.hasAttribute("data-start")||!!J(u).compositionRoot,Ho=u=>Gh({elements:u,shouldIncludeElement:Ff,resolveStartSeconds:h=>Ne(h),resolveDurationSeconds:h=>{let x=J(h),S=Ne(h),A=x.inheritedStart!=null&&x.inheritedDuration!=null&&x.inheritedDuration>0?Math.max(0,x.inheritedStart+x.inheritedDuration-S):null,T=Number.isFinite(h.duration)?It(h,h.duration):null,I=Oe(h.dataset.duration),B=I!=null&&I>0?I:null;return Hh({isVideo:h.tagName==="VIDEO",sourceDuration:T,hostRemaining:A,explicitDuration:B})},resolveHostSlots:Q}),yE=(u=er())=>{if(oi&&oi.revision===u)return oi;let h=Ho().mediaClips;return oi={revision:u,clips:h,byStart:[...h].sort((x,S)=>x.start-S.start),byEnd:[...h].sort((x,S)=>x.end-S.end)},ln=null,Oo=[],oi},il=(u,h,x,S)=>{let A=0,T=u.length;for(;A<T;){let B=A+T>>1;h(u[B])<x?A=B+1:T=B}let I=[];for(let B=A;B<u.length&&h(u[B])<=S;B+=1)I.push(u[B]);return I},SE=(u,h,x)=>{let S=ln;if(S===null)return u.clips.map($=>$.el);let A=2*Ci(Math.max(Math.abs(S),Math.abs(h))),T=Math.min(S,h)-A,I=Math.max(S,h)+A,B=new Set;for(let $ of Oo)B.add($.el);for(let $ of il(u.byStart,G=>G.start,T,I+x))B.add($.el);for(let $ of il(u.byEnd,G=>G.end,T,I))B.add($.el);if(e.isPlaying&&!window.__HF_EXPORT_RENDER_SEEK_CONFIG)for(let $ of il(u.byStart,G=>G.start,h,h+pu*e.playbackRate))$.el.tagName==="VIDEO"&&B.add($.el);return[...B]},Go=new WeakSet,If=u=>{Go.add(u)},Df=u=>{Go.delete(u),on()};window.__hf.leasePausedMedia=If,window.__hf.releasePausedMedia=Df,window.__hf.setLoopStart=u=>{rr=u!=null&&Number.isFinite(u)&&u>=0?u:null};let vE=u=>{let h=zs.get(u)?.hostId,x=h?document.querySelector(`[data-composition-id="${CSS.escape(h)}"]`):null,S=x?oe(x):null;return x&&S?re(x,0)+S:1/0},Pf=u=>{let h=0;for(let x of u){if(x.data===gi)continue;let S=x.getChildren?x:x.timeline,A=Number(x.duration?.())/Number(S?.duration?.()),T=S?.getChildren?Pf(S.getChildren(!1,!0,!0))*(Number.isFinite(A)&&A>0?A:1):Number(x.duration?.())||0,I=Math.abs(Number(x.timeScale?.())||1),B=(Number(x.startTime?.())||0)+T/I;B>=Fr||(h=Math.max(h,Math.min(B,vE(x))))}return h};window.__hf.animationEnd=()=>{let u=e.capturedTimeline,h=u?.getChildren?Pf(u.getChildren(!1,!0,!0)):X(u)??0,x=Math.max(h,$s(!0)??0);return x>0&&x<Fr?x:null},window.__hf.audioMeter={start:()=>y.startMetering(),stop:()=>y.stopMetering(),read:()=>y.readLevels()};let EE=()=>{for(let u of document.querySelectorAll("video, audio"))if(pe(u)&&!u.paused&&Ff(u)&&!Go.has(u))return!0;return!1},Of=()=>on();document.addEventListener("play",Of,!0),s.push(()=>{document.removeEventListener("play",Of,!0)});let ol=null,ot=u=>{let h=!ut,x=e.isPlaying&&!e.mediaForceSyncNextTick&&ln!==null?Math.min(Math.max(0,e.currentTime-ln),hn*Math.min(1,e.playbackRate)):0,S=U(()=>{if(!h)return Ho().mediaClips;let B=yE(u);return Ho(SE(B,e.currentTime,x)).mediaClips});for(let B of S){let $=ni.get(B.el);$&&(B.volumeKeyframes=$)}let A=e.isPlaying?S:S.filter(B=>!Go.has(B.el)),T=e.mediaForceSyncNextTick;T&&(e.mediaForceSyncNextTick=!1),e.nativeMediaSyncDisabled||(Bh({clips:A,timeSeconds:e.currentTime,playing:e.isPlaying,playbackRate:e.playbackRate,outputMuted:e.mediaOutputMuted,userMuted:e.bridgeMuted,userVolume:e.bridgeVolume,forceSync:T,cueAheadSeconds:x,getCompositionDuration:()=>Ke(e.capturedTimeline,0,u),onElementVolume:(B,$,G)=>y.setElementVolume(B,G),isWebAudioOwned:B=>y.ownsElement(B),isWebAudioRouted:B=>y.routesElement(B),onAutoplayBlocked:()=>{e.mediaAutoplayBlockedPosted||(e.mediaAutoplayBlockedPosted=!0,Te({source:"hf-preview",type:"media-autoplay-blocked"}))}}),h?(ln=e.currentTime,Oo=S.filter(B=>pn(e.currentTime,B.start-hn,B.end))):(ln=null,Oo=[]));let I=h&&e.isPlaying&&!T&&ol!==null?ol:void 0;In(e.currentTime,void 0,u,I),ol=e.currentTime},Ye=u=>{u&&on(),u&&sl&&!p.isPlaying()&&at();let h=Math.max(0,Math.round((e.currentTime||0)*e.canonicalFps)),x=Date.now();(u||h!==e.bridgeLastPostedFrame||e.isPlaying!==e.bridgeLastPostedPlaying||e.bridgeMuted!==e.bridgeLastPostedMuted||x-e.bridgeLastPostedAt>=e.bridgeMaxPostIntervalMs)&&(e.bridgeLastPostedFrame=h,e.bridgeLastPostedPlaying=e.isPlaying,e.bridgeLastPostedMuted=e.bridgeMuted,e.bridgeLastPostedAt=x,Te({source:"hf-preview",type:"state",frame:h,currentTime:e.currentTime||0,ended:p.reachedEnd(),isPlaying:e.isPlaying,muted:e.bridgeMuted,playbackRate:e.playbackRate}))},al="",Hf=!1,Gf=!1,Bf=0,Uf="",AE=()=>{let u="";for(let h of document.querySelectorAll("[data-start]"))u+=`${h.id}:${h.tagName}|`;return u},sl=!1,Bo=!1,ll=!1,_E=()=>{ll||(ll=!0,th().then(()=>window.requestAnimationFrame(()=>setTimeout(()=>{ll=!1,Bo=!1,e.tornDown||at()}))))},at=()=>{V(),z(),N();let u=M();if(u){let{width:S,height:A}=$g(u);S!==null&&A!==null&&Te({source:"hf-preview",type:"stage-size",width:S,height:A})}if(nr(),sl=p.isPlaying(),sl)return;if(Bo&&!ut&&nh())return _E();Bo=!1;let h=qu({canonicalFps:e.canonicalFps});window.__clipManifest=h,Uf=JSON.stringify(h);let x=AE();if(al!==x&&sE(),!window.__clipTree||al!==x){let S=window;window.__clipTree=Ug({startResolver:Qe({timelineRegistry:S.__timelines??{},includeAuthoredTimingAttrs:!0}),timelineRegistry:S.__timelines??{},rootDuration:h.durationInFrames/e.canonicalFps}),al=x}Te({...h,assetsReady:Gf}),Hf||(Hf=!0,jS(document,({timedOut:S})=>{e.tornDown||(Gf=!0,Te({source:"hf-preview",type:"assets-ready",timedOut:S}))})),Zv()},wE=()=>{JSON.stringify(qu({canonicalFps:e.canonicalFps}))!==Uf&&at()},ul=u=>typeof u=="number"&&Number.isFinite(u)&&u>0?u:0,CE=u=>{let h=ul(Number(u));if(h<=0)return;let x=M(),S=ul(Oe(x?.getAttribute("data-duration"))),A=Math.max(Bf,ul(p.getDuration()),S);h<=A||(Bf=h,x?.setAttribute("data-duration",String(h)),p.setDuration(h),at(),Ye(!0))},ct=(u,h=0,x)=>{for(let S of e.deterministicAdapters){try{u==="discover"&&S.discover(),u==="pause"&&S.pause({pageAnimations:x}),u==="play"&&S.play&&S.play()}catch(A){H("runtime.init.site8",A)}if(u==="discover")try{S.seek({time:h,suppressEvents:!0})}catch(A){H("runtime.init.site9",A)}}},Dn=()=>{window.__renderReady=!1},TE=nv(()=>{let u=[];for(let h of e.deterministicAdapters){let x=h.getReadyPromise;if(typeof x=="function")try{let S=x();S&&u.push(S)}catch(S){H("runtime.init.adapterReady",S)}}return u},()=>Dn(),u=>H("runtime.init.adapterReady",u)),RE=nv(()=>{let u=window.__hf?.buildReady;return u?Object.values(u).filter(h=>h!=null&&typeof h.then=="function"):[]},()=>Dn(),u=>H("runtime.init.buildReady",u));function cl(){let u=M();u&&dS({root:u,fps:e.canonicalFps,durationSeconds:()=>Ke(e.capturedTimeline,0)||Number(u.getAttribute("data-duration"))||0,timeline:()=>e.capturedTimeline,now:()=>Math.max(0,e.currentTime||0),seek:(h,x)=>{um(e.capturedTimeline,h,{suppressEvents:x})},ignoreMutations:Xv})}let ME=()=>{No(),tE();let u=Bc();return bs(document),Cs(document.body,e.canonicalFps),cl(),u};if(De)Bc();else{let u={injectedStyles:e.injectedCompStyles,injectedScripts:e.injectedCompScripts,injectedLinks:e.injectedCompLinks,parseDimensionPx:ne,onDiagnostic:({code:h,details:x})=>{Te({source:"hf-preview",type:"diagnostic",code:h,details:x})}};cx(u).finally(()=>{De=!0,ME(),Dn()})}let Wf=u=>{let h=new Set,x=S=>{for(let A of(S??"").matchAll(/url\(\s*(['"]?)(.*?)\1\s*\)|@import\s+(['"])(.*?)\3/gi))h.add(A[2]??A[4]);for(let A of(S??"").matchAll(/image-set\((?:[^()]|\([^()]*\))*\)/gi))for(let T of A[0].matchAll(/(['"])(.*?)\1/g))h.add(T[2])};for(let S of u)if(S.tagName==="STYLE"&&x(S.textContent),!(S.tagName==="STYLE"||S.tagName==="SCRIPT"))for(let A of[S,...S.querySelectorAll("*")]){let T=vF.get(A.localName)??[],I=[wx(A),...[...T,"poster","srcset"].map(B=>A.getAttribute(B))];for(let B of I)B&&h.add(B);x(A.getAttribute("style"))}return h},dl=0,kE=(u,h,x)=>{let S=new Map;for(let A of x?u.querySelectorAll("video, audio"):[]){let T=To.get(A);if(!T||o?.isGraded(A))continue;let{srcObject:I,sinkId:B,mediaKeys:$}=A;I||B||$||S.set(T,[...S.get(T)??[],A])}for(let A of h.querySelectorAll("video, audio")){let T=qd(A),I=S.get(T)?.shift();if(!I||rv(I)!==rv(A)){To.set(A,T);continue}A.replaceWith(I),window.gsap?.set?.(I,{clearProps:"all"});let B=A.getAttribute("style");B===null?I.removeAttribute("style"):I.setAttribute("style",B),vx(I);let $=I;$.volume=Ef($)??1,$.muted=e.bridgeMuted||e.mediaOutputMuted||$.defaultMuted,$.defaultPlaybackRate=1,$.playbackRate=e.playbackRate,$.preservesPitch=!0}},Vf=u=>[u,...u.querySelectorAll("[data-composition-id]")].flatMap(h=>h.getAttribute("data-composition-id")||[]),LE=(u,h,x,S)=>{let A=new Set(Vf(h).flatMap(B=>[x[B],...S[B]??[]])),T=new Set([h,...h.querySelectorAll("*")]);for(let B of window.gsap?.globalTimeline?.getChildren?.(!0,!0,!1)??[]){if(!B.targets?.().some(G=>T.has(G)))continue;let $=B;for(;$&&!A.has($);)$=$.parent;if(!$)throw new Error(`scene ${u} cannot be swapped: an animation outside it moves its elements`)}let I=B=>typeof B?.nodeType=="number"&&!T.has(B);for(let B of A)for(let $ of B?[B,...B.getChildren?.(!0,!0,!1)??[]]:[])if($.targets?.().some(I))throw new Error(`scene ${u} cannot be swapped: its animations write outside the scene`)},NE=u=>{let h=I=>Array.from(I.querySelectorAll(`style[${Ec}]`)),x=h(document),S=new Set(x.flatMap(I=>Ac(I.textContent??""))),A=new Set(h(u).flatMap(I=>Ac(I.textContent??"")).filter(I=>!S.has(I)));if(A.size===0)return;let T=document.createElement("style");T.setAttribute(Ec,""),T.textContent=[...A].join(`
|
|
1120
|
-
`),x.length>0?x.at(-1).after(T):document.head.prepend(T)},FE=async(u,h)=>{let x=dl,S=new DOMParser().parseFromString(u,"text/html"),A=Co(document),T=Co(S);if(!A||!T)throw new Error("no scene manifest");if(A.shared!==T.shared)throw new Error("the film changed outside its scenes");let I=Object.keys(T.scenes);if(I.length!==Object.keys(A.scenes).length||I.some(te=>!(te in A.scenes)))throw new Error("scenes were added or removed");let B=I.filter(te=>T.scenes[te]!==A.scenes[te]);if(B.length===0)throw new Error("no scene changed");let $=B.map(te=>{let ye=Lt=>Array.from(Lt.querySelectorAll(`[${vc}="${CSS.escape(te)}"]`)),Me=Lt=>Lt.tagName!=="STYLE"&&Lt.tagName!=="SCRIPT",Ae=ye(document),dt=ye(S),yt=Ae.filter(Me),On=dt.filter(Me),Je=yt[0],dn=On[0];if(!Je||!dn||yt.length>1||On.length>1)throw new Error(`scene ${te} cannot be swapped: it has no single host`);if(Je.hasAttribute("data-hf-original-composition-id"))throw new Error(`scene ${te} cannot be swapped: it is a duplicated instance`);let ym=Je.getAttribute(_c)??dn.getAttribute(_c);if(ym!==null)throw new Error(`scene ${te} cannot be swapped: ${ym}`);let YE=Wf(Ae);if([...Wf(dt)].some(Lt=>!YE.has(Lt)))throw new Error(`scene ${te} cannot be swapped: it loads media this scene has not loaded`);let Sm=Lt=>Lt.filter(XE=>XE.tagName==="STYLE").length;if(Sm(Ae)!==Sm(dt))throw new Error(`scene ${te} cannot be swapped: its styles moved`);return{name:te,oldParts:Ae,homes:Ae.map(Lt=>Lt.parentNode),newParts:dt,oldHost:Je,newHost:dn}}),G=()=>{let te=M(),ye=new Set;for(let Me of document.querySelectorAll(`[${vc}]`)){if(Me.tagName==="STYLE"||Me.tagName==="SCRIPT")continue;let Ae=Me.parentElement;for(;Ae;Ae=Ae===te?null:Ae.parentElement)ye.add(Ae)}return[...ye].flatMap(Me=>[Me,...Array.from(Me.children).filter(Ae=>!Ae.hasAttribute("data-hf-ignore")),null])},se=G(),me=$.some(({newHost:te})=>te.querySelector(".caption-group"))?await hx():[];if(e.tornDown)throw new Error("the preview was torn down during the swap");if(h?.aborted)throw new Error("the swap was cancelled");if(x!==dl)throw new Error("the preview changed while this swap waited");let Fe=()=>{let te=({oldParts:Ae,homes:dt})=>Ae.some((yt,On)=>!yt.isConnected||yt.parentNode!==dt[On]),ye=G();if(ye.length!==se.length||ye.some((Ae,dt)=>Ae!==se[dt])||$.some(te))throw new Error("a scene changed while this swap waited")};Fe();let xe=()=>window.__timelines??(window.__timelines={}),ve=()=>window.__hfSceneAnimations??(window.__hfSceneAnimations={}),kt=()=>{for(let{name:te,oldHost:ye}of $)LE(te,ye,xe(),ve())};kt(),dl+=1;let Xe=e.capturedTimeline,Pe=[],He=[],xl=$.flatMap(({oldHost:te})=>Vf(te)),Ge=new Set,ui=()=>{let te=Ge.size;for(let ye of xl)for(let Me of[...(ve()[ye]??[]).slice().reverse(),xe()[ye]]){if(!Me||Ge.has(Me))continue;Ge.add(Me);let Ae=Me;Ae.revert?Ae.revert():Ae.totalTime?.(0,!0),Xe?.remove?.(Me),Ae.revert||Ae.kill?.()}return Ge.size>te},ce=0;for(;ui();)if(++ce>8)throw new Error("the old scene keeps starting animations as they stop");Fe(),kt();for(let te of xl)delete xe()[te],delete ve()[te];y.stopAll(),p.detachAudioSource();for(let{oldParts:te,newParts:ye,oldHost:Me,newHost:Ae}of $){let dt=ye.filter(Je=>Je.tagName==="STYLE");te.filter(Je=>Je.tagName==="STYLE").forEach((Je,dn)=>Je.replaceWith(document.importNode(dt[dn],!0)));for(let Je of te)Je!==Me&&Je.remove();let yt=document.importNode(Ae,!0),On=Je=>JSON.stringify(Je.flatMap(dn=>dn.tagName==="SCRIPT"?dn.textContent:[]));kE(Me,yt,On(te)===On(ye)),Me.replaceWith(yt),He.push(yt),yt.querySelector(".caption-group")&&Pe.push(yt)}NE(S),ar();let le=$.flatMap(({newParts:te})=>te.filter(ye=>ye.tagName==="SCRIPT").map(ye=>document.body.appendChild(document.importNode(ye,!0))));if(await ds(le),e.tornDown)throw new Error("the preview was torn down during the swap");document.querySelector(`meta[name="${uo}"]`)?.setAttribute("content",JSON.stringify(T));for(let te of He)bs(document,te);No();let ue=()=>{for(let te of Pe)for(let ye of[te,...te.querySelectorAll("[data-composition-id]")]){let Me=ye.getAttribute("data-composition-id");Me&&window.__timelines?.[Me]?.totalTime?.(0,!0)}};Cs(document.body,e.canonicalFps),cl(),Uc(me,Pe,ue),iE(),tr=!1,nr();let he=Ks();for(let te of He)for(let ye of te.querySelectorAll("video, audio"))ni.delete(ye),Ys(ye,he);let Ee=Ke(e.capturedTimeline,0);Ee>0&&p.setDuration(Ee),ct("discover",e.currentTime),fo(document);let ge=p.isPlaying()&&Ee>0&&e.currentTime>=Ee;Wo.seek(ge?Ee:e.currentTime,{keepPlaying:!ge}),In(e.currentTime),at()};Co(document)&&(window.__hfSwapScenes=FE,F(()=>{delete window.__hfSwapScenes}));let Uo=Hg({postMessage:u=>Te(u)});Uo.installPickerApi(),In(e.currentTime,Array.from(document.querySelectorAll("video[data-start], img[data-start]")));let Mt=uy({lease:If,release:Df});o=Mt,F(()=>{Mt.destroy(),o=null}),Cs(document.body,e.canonicalFps),cl();let fl=u=>{let h=Number(u);!Number.isFinite(h)||h<=0?e.playbackRate=1:e.playbackRate=Math.max(.1,Math.min(5,h)),e.mediaForceSyncNextTick=!0,e.capturedTimeline&&typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate);let x=document.querySelectorAll("video, audio");for(let S of x)if(pe(S))try{S.playbackRate=e.playbackRate}catch(A){H("runtime.init.site10",A)}},IE=1e3,un=null,$f=()=>{let u=un;un=null,u?.apply()},qf=(u,h)=>{y.stopAll(),p.detachAudioSource();let x=p.isPlaying();x&&p.pause(),p.seek(u),e.currentTime=p.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0;let S=h?.keepPlaying&&x;Bo=!S,S||ot();let A=e.capturedTimeline;Wt(A);let T=Pn(e.currentTime);if(ct("pause",0,T),S){Wo.play();return}Mt.redraw(),gd(e.currentTime);let I=qr(e.currentTime);I&&it(I),Ye(!0)},Wo={play:()=>{$f();let u=e.capturedTimeline;if(p.isPlaying())return;let h=Ke(u,0);if(h>0){if(p.setDuration(h),p.reachedEnd()){let x=p.getPlayStart();p.seek(x),e.currentTime=x,Pn(x)}}else{let x=M(),S=Number(x?.getAttribute("data-duration")??0);S>0&&p.setDuration(S)}Wt(u),p.play()&&(e.isPlaying=!0,e.mediaForceSyncNextTick=!0,bm(p.now()),b&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&gl(),ct("play"),ot(),Mt.redraw(),Ye(!0))},pause:()=>{if(!p.isPlaying())return;y.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1,e.currentTime=p.now(),e.mediaForceSyncNextTick=!0,bm(e.currentTime);let u=e.capturedTimeline;Wt(u),ct("pause"),ot(),Mt.redraw(),qr(e.currentTime),Ye(!0)},seek:(u,h)=>{let x=Zl(Math.max(0,Number(u)||0),e.canonicalFps);un=null;let S=p.isPlaying()?[]:xE(x);if(S.length===0){qf(x,h);return}let A={time:x,apply:()=>qf(x,h)};un=A;for(let G of S){iv(G);for(let se=G.closest(pi);se;se=G.closest(pi))se.setAttribute(Gn,"")}let T=0,I=new Promise(G=>{T=window.setTimeout(()=>{un===A&&H("runtime.init.seekHoldCap",S),G()},IE)}),B=Promise.all(S.map(G=>G.decode?G.decode().catch(()=>{}):void 0)),$=Promise.race([B,I]).then(()=>{window.clearTimeout(T),un===A&&$f()});return it($),$},renderSeek:(u,h)=>{un=null,ut=!0;let x=$a(Math.max(0,Number(u)||0),e.canonicalFps,h);y.stopAll(),p.detachAudioSource(),p.isPlaying()&&p.pause(),p.seek(x),e.currentTime=p.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0;let S=Pn(e.currentTime,{activateChildren:!0,suppressEvents:h?.suppressEvents});ct("pause",0,S),ot(),Mt.redraw(),gd(e.currentTime,{engineMode:!0});let A=qr(e.currentTime,{engineMode:!0});A&&it(A),Ye(!0)},getTime:()=>un?.time??p.now(),getDuration:()=>{let u=p.getDuration();return Number.isFinite(u)?u:0},isPlaying:()=>p.isPlaying(),setPlaybackRate:u=>{fl(u),p.setRate(e.playbackRate),xm()},getPlaybackRate:()=>e.playbackRate},zf=Ke(e.capturedTimeline,0);zf>0&&p.setDuration(zf);let xt=Bg({getTimeline:()=>e.capturedTimeline,setTimeline:u=>{e.capturedTimeline=u},getTimelineRegistry:()=>window.__timelines??{},getIsPlaying:()=>e.isPlaying,setIsPlaying:u=>{e.isPlaying!==u&&(e.mediaForceSyncNextTick=!0),e.isPlaying=u},getPlaybackRate:()=>e.playbackRate,setPlaybackRate:fl,getCanonicalFps:()=>e.canonicalFps,onSyncMedia:(u,h)=>{e.currentTime=Math.max(0,Number(u)||0),e.isPlaying!==h&&(e.mediaForceSyncNextTick=!0),e.isPlaying=h,ot()},onStatePost:Ye,onDeterministicSeek:(u,h)=>{for(let x of e.deterministicAdapters)if(!(x.name==="gsap"&&e.capturedTimeline))try{x.seek({time:Number(u)||0,suppressEvents:h?.suppressEvents})}catch(S){H("runtime.init.site11",S)}},onDeterministicPause:()=>ct("pause"),onDeterministicPlay:()=>ct("play"),onRenderFrameSeek:()=>{Mt.redraw()},onShowNativeVideos:()=>{},getSafeDuration:()=>Ke(e.capturedTimeline,0),transport:Wo});window.__player=k(xt),window.__playerReady=!0,mt("composition_loaded",{duration:xt.getDuration(),compositionId:At()?.getAttribute("data-composition-id")??null}),e.deterministicAdapters=[gh({start:u=>re(u,0),duration:u=>oe(u),compositionDuration:()=>Ke(e.capturedTimeline,0),canonicalFps:()=>e.canonicalFps,exportRenderSeek:()=>!!window.__HF_EXPORT_RENDER_SEEK_CONFIG}),Ah(),Op({resolveStartSeconds:u=>re(u,0)}),jp(),Jp({resolveStartSeconds:u=>re(u,0)}),ih(),oh(),ah(),sh(),lh(),uh(),ch(),zp({getTimeline:()=>e.capturedTimeline})],vh(),Eh(),window.__hfReseekGpu=u=>{let h=Math.max(0,Number(u)||0);window.__hfThreeTime=h,window.__hfTypegpuTime=h,Ca(h)};let jf=u=>(mS(),rh(u));window.__hfWaitForSeekCompletion=jf,s.push(()=>{window.__hfWaitForSeekCompletion===jf&&delete window.__hfWaitForSeekCompletion}),eE(),No(),ct("discover");let DE=()=>{let u=e.capturedTimeline,h=nr();e.capturedTimeline&&(h||e.capturedTimeline!==u||!xt._timeline)&&(xt._timeline=e.capturedTimeline);let x=Ke(e.capturedTimeline,0);if(x>0&&p.setDuration(x),ct("discover",e.currentTime),!e.capturedTimeline){let S=window.__timelines??{},A=Object.keys(S).filter(T=>S[T]);if(A.length>0){let I=M()?.getAttribute("data-composition-id")??null;D("root_timeline_unbound_registry_present",{reason:I?"root data-composition-id has no matching key in window.__timelines":"root composition element has no data-composition-id attribute",rootCompositionId:I,registeredTimelineKeys:A},"root_timeline_unbound_registry_present"),console.warn("[hyperframes] Root timeline not bound, so render will freeze at t=0. "+(I?`Root data-composition-id is "${I}" but window.__timelines has no such key. `:"Root composition element has no data-composition-id. ")+`Registered timeline keys: [${A.join(", ")}]. Register the root timeline under its data-composition-id (window.__timelines["${I??"<root-id>"}"] = tl).`)}}In(e.currentTime,Array.from(document.querySelectorAll("[data-start]:not(video, audio, img)"))),window.__renderReady=!0;try{at()}catch(S){throw window.__renderReady=!1,fi(S),S}Ye(!0)},ir=null,PE=()=>{if(ir)return;let u=()=>{window.removeEventListener("hf-timelines-built",u),ir=null,Dn()};ir=u,window.addEventListener("hf-timelines-built",u)};F(()=>{ir&&(window.removeEventListener("hf-timelines-built",ir),ir=null)}),Dn=()=>{if(!e.tornDown){if(!De){window.__renderReady=!1;return}if(window.__hfTimelinesBuilding){window.__renderReady=!1,PE();return}if(ct("discover",e.currentTime),!TE()){window.__renderReady=!1;return}if(!RE()){window.__renderReady=!1;return}DE()}},Dn(),De&&setTimeout(()=>{Dn()},0);let ml=0,Vo=!1,ai=Number.NaN,si={revision:Number.NaN,time:Number.NEGATIVE_INFINITY},$o=null,qo=!1,cn=null,Kf=!1,zo=!1,Yf="",Xf=-1,li=!1,Jf=Number.NEGATIVE_INFINITY,Qf=Number.NEGATIVE_INFINITY,Zf="",em=!1,tm=u=>ut?void 0:{owner:u,version:`${$t}:${u.getChildren?.(!1,!0,!0).length??0}`},OE=(u,h,x,S)=>{try{let A=S?.suppressEvents===!0;Wt(u),Ri(u,h,A,tm(u))}catch(A){H(x,A)}},nm=new Map,HE=u=>{let h=nm.get(u);if(!ut&&h){if(Ie(h)){if(h.isConnected&&h.getAttribute("data-composition-id")===u)return h}else if(h.missingAt===$t)return null}let x=document.querySelector(`[data-composition-id="${CSS.escape(u)}"]`);return nm.set(u,x??{missingAt:$t}),x},jo=new WeakMap,rm=-1,GE=(u,h)=>{if(jo.has(h))return jo.get(h);let x=HE(u),S=x?re(x,0):Number.NaN,A=x&&Number.isFinite(S)?{start:S,hiddenFrom:x.hasAttribute("data-start")&&!n(x)?S+(oe(x)??1/0):1/0,playbackStart:Pt(x),rate:Ft(x),timelineDuration:X(h)}:null;return jo.set(h,A),A},im=new WeakMap,BE=(u,h)=>{if(im.get(u)!==h)return!1;try{return u.paused()===!0&&Number(u.totalTime?.())===h}catch{return!1}},UE=(u,h,x)=>{(rm!==h||ut)&&(jo=new WeakMap,rm=h);let S=window.__timelines??{},A=M()?.getAttribute("data-composition-id")??null;for(let[T,I]of Object.entries(S)){if(!I||typeof I!="object"||T===A)continue;let B=GE(T,I);if(!B)continue;let $=B.playbackStart+Un(B.rate,Math.max(0,(x?.activateChildren?u:Math.min(u,B.hiddenFrom))-B.start)),G=Math.max(0,B.timelineDuration!=null&&B.timelineDuration>0?Math.min(B.timelineDuration,$):$);!ut&&BE(I,G)||(OE(I,G,"runtime.init.transport.childTimeline",x),im.set(I,G))}},WE=u=>{let h=window.__timelines??{},x=[];for(let S of Object.values(h))if(!(!S||S===u)){x.push(S);try{S.play()}catch(A){H("runtime.init.activateSiblings",A)}}if(x.length===0)return x;try{u.shiftChildren?.(0),u.totalDuration?.()}catch(S){H("runtime.init.remeasureRoot",S)}return x},om=u=>typeof u=="object"&&u!==null,VE=["onStart","onUpdate","onComplete","onReverseComplete","onRepeat"],am=(u,h)=>{let x=u[h];if(typeof x!="function")return null;try{let S=Number(x.call(u));return Number.isFinite(S)?S:null}catch(S){return H("runtime.init.gsapCallbackDuration",S),null}},sm=new WeakMap,$E=(u,h)=>{if(!h)return lm(u);let x=sm.get(h.owner);if(x?.version===h.version)return x.value;let S=lm(u);return sm.set(h.owner,{version:h.version,value:S}),S},lm=u=>{if(!("getChildren"in u)||typeof u.getChildren!="function")return!1;let h;try{h=u.getChildren(!0,!0,!0)}catch(x){return H("runtime.init.gsapCallbackChildren",x),!1}if(!Array.isArray(h))return!1;for(let x of h){if(!om(x))continue;let S=x.vars;if(!om(S)||!VE.some(B=>typeof S[B]=="function"))continue;let I=am(x,"totalDuration")??am(x,"duration");if(I!=null&&I<=1e-6)return!0}return!1};function Pn(u,h){let x=e.capturedTimeline,S=x&&h?.activateChildren?WE(x):[];try{let A=um(x,u,h);return ai=u,$o=x,A}finally{for(let A of S)Wt(A)}}function um(u,h,x){let S=x?.suppressEvents===!0,A=x?.revision??er();A!==si.revision&&(si={revision:A,time:Number.NEGATIVE_INFINITY});let B=!(Math.abs(h-ai)<=1.5/e.canonicalFps)&&h>si.time?Im():null;if(u){let G=h;if(typeof u.totalDuration=="function")try{let se=Number(u.totalDuration());Number.isFinite(se)&&se>0&&h>se&&(G=se)}catch(se){H("runtime.init.transport.clampDuration",se)}try{if(typeof u.totalTime=="function"){let se=tm(u);!Ri(u,G,S,se)&&!S&&!$E(u,se)&&Aa({totalTime:u.totalTime.bind(u),totalDuration:u.totalDuration?.bind(u),getChildren:u.getChildren?.bind(u)},G,se)}else u.seek(G,S)}catch(se){H("runtime.init.transport.seek",se)}}UE(h,A,x),B?.(),si.time=Math.max(si.time,h);let $=_F();for(let G of e.deterministicAdapters)if(!(G.name==="gsap"&&u))try{G.seek({time:h,suppressEvents:S,pageAnimations:$})}catch(se){H("runtime.init.transport.adapter",se)}return $}let pl=PS(document,()=>{on()});s.push(()=>pl.disconnect());let cm=()=>{try{return pl.isActive()}catch{return!1}},qE=()=>!p.isPlaying()&&!tf()&&pl.observing&&(!qo||cm())&&!li&&e.currentTime===ai&&e.capturedTimeline===$o,hl=()=>`${er()}|${$s()??""}`,dm=()=>{cn=window.setTimeout(zE,Kf&&e.capturedTimeline&&tr?EF:e.bridgeMaxPostIntervalMs)},zE=()=>{if(cn=null,!e.tornDown&&!(typeof window>"u"||typeof document>"u")){if(hl()!==Yf){on();return}Ye(!1),dm()}},or=null,fm=()=>e.transportRafId!=null||or!=null,Ko=()=>{if(document.visibilityState==="hidden"){or=window.setTimeout(()=>{or=null,gm()},AF);return}e.transportRafId=window.requestAnimationFrame(gm)},mm=()=>{e.transportRafId!=null&&(window.cancelAnimationFrame(e.transportRafId),e.transportRafId=null),or!=null&&(window.clearTimeout(or),or=null)},pm=()=>{e.tornDown||!fm()||(mm(),Ko())};document.addEventListener("visibilitychange",pm);let jE=()=>{if(e.transportRafId=null,e.tornDown)return;let u=zo;if(zo=!1,u||!qE()){Ko();return}Yf=hl(),dm()};on=()=>{e.tornDown||(zo=!0,!(Vo||fm())&&(cn!=null&&(window.clearTimeout(cn),cn=null),zo=!1,Ko()))};let KE=u=>{let h=qs("audio[data-start]"),x=null;for(let S of u?[u,...h]:h){if(!pe(S)||!S.isConnected||g(S)||du(S)||S.ended&&!S.loop||!S.hasAttribute("src")&&!S.querySelector("source[src]"))continue;let A=Ne(S),T=Y(S,A);if(!Number.isFinite(A)||!pn(e.currentTime,T.start,T.end))continue;if(S===u)return{el:S,start:A};let I=A+(pr(S)??1/0);(!x||I>x.runsUntil)&&(x={el:S,start:A,runsUntil:I})}return x};function hm(){if(p.isPlaying()&&!e.mediaOutputMuted)if(!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&y.ownsClock()&&y.context){let u=y.getTime();u>=0&&p.attachAudioSource({currentTimeSeconds:u})}else{let u=KE(p.audioElement());u&&!u.el.paused?p.attachAudioSource({el:u.el,compositionStart:u.start,mediaStart:Pt(u.el),rate:Ft(u.el)}):u&&u.el.readyState<HTMLMediaElement.HAVE_FUTURE_DATA?p.attachAudioSource({currentTimeSeconds:e.currentTime}):p.hasAudioSource()&&p.detachAudioSource()}else p.hasAudioSource()&&p.detachAudioSource()}let gm=()=>{if(!(e.tornDown||Vo)){Vo=!0;try{ml+=1;let u=er();u!==Xf&&(Xf=u,li=!0);let h=Date.now(),x=p.isPlaying(),S=x&&h-Qf>=Id,A=em&&!x;if(em=x,S){Qf=h;let me=hl();me!==Zf&&(Zf=me,li=!0)}let T=li&&h-Jf>=OS;T&&(Jf=h);let I=me=>!x&&ml%me===0;if(HS({tick:ml,isPlaying:x,hasCapturedTimeline:e.capturedTimeline!=null,currentTimeSeconds:p.now(),compositionChanged:T,playingPollDue:S})){let me=e.capturedTimeline;if(nr()){e.capturedTimeline&&!xt._timeline&&(xt._timeline=e.capturedTimeline),e.capturedTimeline&&e.capturedTimeline!==me&&Wt(e.capturedTimeline);let Fe=Ke(e.capturedTimeline,0,u);Fe>0&&p.setDuration(Fe),at()}}if(T||I(20)?(at(),li=!1):A&&wE(),(T||I(30))&&No(),e.capturedTimeline){let me=Ke(e.capturedTimeline,0,u);me>0&&(!p.isPlaying()||me>=p.getDuration())&&p.setDuration(me)}hm();let B=p.now();e.currentTime=B;let $=p.isPlaying(),G=!$&&cm(),se=$&&fS();if(G?qo=!0:!se&&($||qo||B!==ai||e.capturedTimeline!==$o)&&(Pn(B,{revision:u}),qr(B,{playing:$}),$||(qo=!1)),$&&Mt.redrawAnimated(),p.isPlaying()&&p.reachedEnd()){y.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1;let me=p.getStopTime();Number.isFinite(me)&&(p.seek(me),e.currentTime=me,Pn(me)),ct("pause"),ot(u),qr(e.currentTime),Ye(!0);return}p.isPlaying()?ot(u):EE()&&(ln=null,ot(u)),Ye(!1)}finally{Vo=!1,jE()}}},bm=u=>{let h=document.querySelectorAll("video, audio");for(let x of h){if(!pe(x)||!x.isConnected||!x.hasAttribute("data-start"))continue;let S=Ne(x);if(!Number.isFinite(S))continue;let A=Y(x,S);if(!pn(u,A.start,A.end))continue;let T=Pt(x),I=u-S+T;if(I>=0)try{x.currentTime=I}catch{}}},gl=()=>{if(e.nativeMediaSyncDisabled||e.webAudioMediaDisabled)return;let u=y.startGeneration();for(let h of Wd(document)){if(g(h))continue;let x=Ne(h);if(!Number.isFinite(x))continue;let S=Pt(h),A=Number.parseFloat(h.dataset.volume??""),T=Number.isFinite(A)?A:1,I=Oe(h.dataset.duration),B=I!=null&&I>0?I:Number.POSITIVE_INFINITY,{inheritedStart:$,inheritedDuration:G}=J(h);$!=null&&G!=null&&G>0&&(B=Math.min(B,Math.max(0,$+G-x)));let se=Q(h),me=Vn({start:x,end:x+B},se);if(se.length>0){if(me.end<=me.start)continue;B=me.end-x}let Fe=Yr(h);Xr(h,Fe),(Fe.kind==="web-audio"?y.scheduleMediaElementPlayback(h,x,S,p.now(),T,u,e.playbackRate):Promise.resolve(null)).then(ve=>{let kt=u!==y.currentGeneration();if(ve||!na(h)||!p.isPlaying()||kt||typeof Ft(h)!="number")return;let Xe=e.playbackRate*rt(h),Pe=h.hasAttribute("data-fx-chain")||h.hasAttribute("data-automation");if(Math.abs(Xe-1)>1e-9){Fe.kind==="web-audio"&&Pe&&(h.muted=!0);return}y.decodeAudioElement(h).then(He=>{!He||!p.isPlaying()||y.schedulePlayback(h,He,x,S,()=>p.now(),T,u,e.playbackRate,B,me.start)})})}};function xm(){y.setRate(e.playbackRate)&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&b&&p.isPlaying()&&y.hasBoundedActiveSources()&&(y.stopAll(),gl())}if(e.capturedTimeline){let u=Ke(e.capturedTimeline,0);u>0&&p.setDuration(u),Wt(e.capturedTimeline)}Ex(window),Ko(),at(),Ye(!0),e.controlBridgeHandler=Cp({onPlay:()=>{xt.play(),mt("composition_played",{time:xt.getTime()})},onPause:()=>{xt.pause(),mt("composition_paused",{time:xt.getTime()})},onStopMedia:()=>{y.stopAll();let u=document.querySelectorAll("video, audio");for(let h of u)pe(h)&&!h.paused&&h.pause()},onSeek:(u,h)=>{xt.seek(u),mt("composition_seeked",{time:u})},onSetMuted:u=>{e.bridgeMuted=u;let h=u||e.mediaOutputMuted;y.setMuted(h);let x=document.querySelectorAll("video, audio");for(let S of x)pe(S)&&(S.muted=h||S.defaultMuted)},onSetVolume:u=>{e.bridgeVolume=u,y.setVolume(u);let h=document.querySelectorAll("video, audio");for(let x of h){if(!pe(x))continue;let S=parseFloat(x.dataset.volume??""),A=Number.isFinite(S)?S:1;x.volume=ua(A*u)}},onSetMediaOutputMuted:u=>{e.mediaOutputMuted=u;let h=u||e.bridgeMuted;y.setMuted(h);let x=document.querySelectorAll("video, audio");for(let S of x)pe(S)&&(S.muted=h||S.defaultMuted)},onSetNativeMediaSyncDisabled:u=>{e.nativeMediaSyncDisabled!==u&&(e.nativeMediaSyncDisabled=u,e.mediaForceSyncNextTick=!0,u?(y.stopAll(),p.detachAudioSource()):ot())},onSetWebAudioMediaDisabled:u=>{e.webAudioMediaDisabled!==u&&(e.webAudioMediaDisabled=u,e.mediaForceSyncNextTick=!0,u&&(y.stopAll(),p.detachAudioSource()),ot())},onSetPlaybackRate:u=>{fl(u),e.transportClock&&e.transportClock.setRate(e.playbackRate),xm()},onSetDisplayScale:u=>{Xh(u),$m(u)},onSetIdleHeartbeat:u=>{Kf=u,on()},onSetRootDuration:CE,onSetPlayRange:(u,h)=>{p.setPlayRange(u,h,e.canonicalFps);let x=p.getPlayStart();if(p.isPlaying()&&(p.now()<x||p.reachedEnd())){Wo.seek(x,{keepPlaying:!0});return}Ye(!0)},onSetColorGrading:(u,h)=>{Mt.setGrading(u,h)},onSetColorGradingCompare:(u,h)=>{Mt.setCompare(u,h)},onTick:()=>{if(e.tornDown||!p.isPlaying())return;hm();let u=p.now();if(e.currentTime=u,(u!==ai||e.capturedTimeline!==$o)&&Pn(u),p.reachedEnd()){y.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1;let h=p.getStopTime();Number.isFinite(h)&&(p.seek(h),e.currentTime=h,Pn(h)),ct("pause"),ot(),Ye(!0)}},onEnablePickMode:()=>Uo.enablePickMode(),onDisablePickMode:()=>Uo.disablePickMode(),onSetRuntimeData:Fs,onClearRuntimeData:Is,getCanonicalFps:()=>e.canonicalFps});let bl=()=>{if(!e.tornDown){e.tornDown=!0,mm(),document.removeEventListener("visibilitychange",pm),cn!=null&&(window.clearTimeout(cn),cn=null),e.transportClock=null,y.destroy(),Fn!=null&&(window.clearTimeout(Fn),Fn=null),d!=null&&(window.cancelAnimationFrame(d),d=null),rE(),e.controlBridgeHandler&&(window.removeEventListener("message",e.controlBridgeHandler),e.controlBridgeHandler=null),a&&(window.removeEventListener("error",a),a=null),l&&(window.removeEventListener("unhandledrejection",l),l=null),e.beforeUnloadHandler&&(window.removeEventListener("beforeunload",e.beforeUnloadHandler),e.beforeUnloadHandler=null),Uo.disablePickMode();for(let u of e.deterministicAdapters)if(!(!u||typeof u.revert!="function"))try{u.revert()}catch(h){H("runtime.init.site12",h)}e.deterministicAdapters=[],window.__hf?.buildReady&&(window.__hf.buildReady={});for(let u of s.splice(0))try{u()}catch(h){H("runtime.init.site13",h)}for(let u of e.injectedCompStyles)try{u.remove()}catch(h){H("runtime.init.site14",h)}e.injectedCompStyles=[];for(let u of e.injectedCompLinks)try{u.remove()}catch(h){H("runtime.init.site15",h)}e.injectedCompLinks=[];for(let u of e.injectedCompScripts)try{u.remove()}catch(h){H("runtime.init.site16",h)}e.injectedCompScripts=[],e.capturedTimeline=null,r=()=>{},window.__hfRuntimeTeardown===bl&&(window.__hfRuntimeTeardown=null)}};window.__hfRuntimeTeardown=bl,e.beforeUnloadHandler=bl,window.addEventListener("beforeunload",e.beforeUnloadHandler)}var cv=["BN","BN","BN","BN","BN","BN","BN","BN","BN","S","B","S","WS","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","B","B","B","S","WS","ON","ON","ET","ET","ET","ON","ON","ON","ON","ON","ES","CS","ES","CS","CS","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","CS","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","BN","BN","BN","BN","BN","BN","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","CS","ON","ET","ET","ET","ET","ON","ON","ON","ON","L","ON","ON","BN","ON","ON","ET","ET","EN","EN","ON","L","ON","ON","ON","EN","L","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L"],zd=[[697,698,"ON"],[706,719,"ON"],[722,735,"ON"],[741,749,"ON"],[751,767,"ON"],[768,879,"NSM"],[884,885,"ON"],[894,894,"ON"],[900,901,"ON"],[903,903,"ON"],[1014,1014,"ON"],[1155,1161,"NSM"],[1418,1418,"ON"],[1421,1422,"ON"],[1423,1423,"ET"],[1424,1424,"R"],[1425,1469,"NSM"],[1470,1470,"R"],[1471,1471,"NSM"],[1472,1472,"R"],[1473,1474,"NSM"],[1475,1475,"R"],[1476,1477,"NSM"],[1478,1478,"R"],[1479,1479,"NSM"],[1480,1535,"R"],[1536,1541,"AN"],[1542,1543,"ON"],[1544,1544,"AL"],[1545,1546,"ET"],[1547,1547,"AL"],[1548,1548,"CS"],[1549,1549,"AL"],[1550,1551,"ON"],[1552,1562,"NSM"],[1563,1610,"AL"],[1611,1631,"NSM"],[1632,1641,"AN"],[1642,1642,"ET"],[1643,1644,"AN"],[1645,1647,"AL"],[1648,1648,"NSM"],[1649,1749,"AL"],[1750,1756,"NSM"],[1757,1757,"AN"],[1758,1758,"ON"],[1759,1764,"NSM"],[1765,1766,"AL"],[1767,1768,"NSM"],[1769,1769,"ON"],[1770,1773,"NSM"],[1774,1775,"AL"],[1776,1785,"EN"],[1786,1808,"AL"],[1809,1809,"NSM"],[1810,1839,"AL"],[1840,1866,"NSM"],[1867,1957,"AL"],[1958,1968,"NSM"],[1969,1983,"AL"],[1984,2026,"R"],[2027,2035,"NSM"],[2036,2037,"R"],[2038,2041,"ON"],[2042,2044,"R"],[2045,2045,"NSM"],[2046,2069,"R"],[2070,2073,"NSM"],[2074,2074,"R"],[2075,2083,"NSM"],[2084,2084,"R"],[2085,2087,"NSM"],[2088,2088,"R"],[2089,2093,"NSM"],[2094,2136,"R"],[2137,2139,"NSM"],[2140,2143,"R"],[2144,2191,"AL"],[2192,2193,"AN"],[2194,2198,"AL"],[2199,2207,"NSM"],[2208,2249,"AL"],[2250,2273,"NSM"],[2274,2274,"AN"],[2275,2306,"NSM"],[2362,2362,"NSM"],[2364,2364,"NSM"],[2369,2376,"NSM"],[2381,2381,"NSM"],[2385,2391,"NSM"],[2402,2403,"NSM"],[2433,2433,"NSM"],[2492,2492,"NSM"],[2497,2500,"NSM"],[2509,2509,"NSM"],[2530,2531,"NSM"],[2546,2547,"ET"],[2555,2555,"ET"],[2558,2558,"NSM"],[2561,2562,"NSM"],[2620,2620,"NSM"],[2625,2626,"NSM"],[2631,2632,"NSM"],[2635,2637,"NSM"],[2641,2641,"NSM"],[2672,2673,"NSM"],[2677,2677,"NSM"],[2689,2690,"NSM"],[2748,2748,"NSM"],[2753,2757,"NSM"],[2759,2760,"NSM"],[2765,2765,"NSM"],[2786,2787,"NSM"],[2801,2801,"ET"],[2810,2815,"NSM"],[2817,2817,"NSM"],[2876,2876,"NSM"],[2879,2879,"NSM"],[2881,2884,"NSM"],[2893,2893,"NSM"],[2901,2902,"NSM"],[2914,2915,"NSM"],[2946,2946,"NSM"],[3008,3008,"NSM"],[3021,3021,"NSM"],[3059,3064,"ON"],[3065,3065,"ET"],[3066,3066,"ON"],[3072,3072,"NSM"],[3076,3076,"NSM"],[3132,3132,"NSM"],[3134,3136,"NSM"],[3142,3144,"NSM"],[3146,3149,"NSM"],[3157,3158,"NSM"],[3170,3171,"NSM"],[3192,3198,"ON"],[3201,3201,"NSM"],[3260,3260,"NSM"],[3276,3277,"NSM"],[3298,3299,"NSM"],[3328,3329,"NSM"],[3387,3388,"NSM"],[3393,3396,"NSM"],[3405,3405,"NSM"],[3426,3427,"NSM"],[3457,3457,"NSM"],[3530,3530,"NSM"],[3538,3540,"NSM"],[3542,3542,"NSM"],[3633,3633,"NSM"],[3636,3642,"NSM"],[3647,3647,"ET"],[3655,3662,"NSM"],[3761,3761,"NSM"],[3764,3772,"NSM"],[3784,3790,"NSM"],[3864,3865,"NSM"],[3893,3893,"NSM"],[3895,3895,"NSM"],[3897,3897,"NSM"],[3898,3901,"ON"],[3953,3966,"NSM"],[3968,3972,"NSM"],[3974,3975,"NSM"],[3981,3991,"NSM"],[3993,4028,"NSM"],[4038,4038,"NSM"],[4141,4144,"NSM"],[4146,4151,"NSM"],[4153,4154,"NSM"],[4157,4158,"NSM"],[4184,4185,"NSM"],[4190,4192,"NSM"],[4209,4212,"NSM"],[4226,4226,"NSM"],[4229,4230,"NSM"],[4237,4237,"NSM"],[4253,4253,"NSM"],[4957,4959,"NSM"],[5008,5017,"ON"],[5120,5120,"ON"],[5760,5760,"WS"],[5787,5788,"ON"],[5906,5908,"NSM"],[5938,5939,"NSM"],[5970,5971,"NSM"],[6002,6003,"NSM"],[6068,6069,"NSM"],[6071,6077,"NSM"],[6086,6086,"NSM"],[6089,6099,"NSM"],[6107,6107,"ET"],[6109,6109,"NSM"],[6128,6137,"ON"],[6144,6154,"ON"],[6155,6157,"NSM"],[6158,6158,"BN"],[6159,6159,"NSM"],[6277,6278,"NSM"],[6313,6313,"NSM"],[6432,6434,"NSM"],[6439,6440,"NSM"],[6450,6450,"NSM"],[6457,6459,"NSM"],[6464,6464,"ON"],[6468,6469,"ON"],[6622,6655,"ON"],[6679,6680,"NSM"],[6683,6683,"NSM"],[6742,6742,"NSM"],[6744,6750,"NSM"],[6752,6752,"NSM"],[6754,6754,"NSM"],[6757,6764,"NSM"],[6771,6780,"NSM"],[6783,6783,"NSM"],[6832,6877,"NSM"],[6880,6891,"NSM"],[6912,6915,"NSM"],[6964,6964,"NSM"],[6966,6970,"NSM"],[6972,6972,"NSM"],[6978,6978,"NSM"],[7019,7027,"NSM"],[7040,7041,"NSM"],[7074,7077,"NSM"],[7080,7081,"NSM"],[7083,7085,"NSM"],[7142,7142,"NSM"],[7144,7145,"NSM"],[7149,7149,"NSM"],[7151,7153,"NSM"],[7212,7219,"NSM"],[7222,7223,"NSM"],[7376,7378,"NSM"],[7380,7392,"NSM"],[7394,7400,"NSM"],[7405,7405,"NSM"],[7412,7412,"NSM"],[7416,7417,"NSM"],[7616,7679,"NSM"],[8125,8125,"ON"],[8127,8129,"ON"],[8141,8143,"ON"],[8157,8159,"ON"],[8173,8175,"ON"],[8189,8190,"ON"],[8192,8202,"WS"],[8203,8205,"BN"],[8207,8207,"R"],[8208,8231,"ON"],[8232,8232,"WS"],[8233,8233,"B"],[8234,8238,"BN"],[8239,8239,"CS"],[8240,8244,"ET"],[8245,8259,"ON"],[8260,8260,"CS"],[8261,8286,"ON"],[8287,8287,"WS"],[8288,8303,"BN"],[8304,8304,"EN"],[8308,8313,"EN"],[8314,8315,"ES"],[8316,8318,"ON"],[8320,8329,"EN"],[8330,8331,"ES"],[8332,8334,"ON"],[8352,8399,"ET"],[8400,8432,"NSM"],[8448,8449,"ON"],[8451,8454,"ON"],[8456,8457,"ON"],[8468,8468,"ON"],[8470,8472,"ON"],[8478,8483,"ON"],[8485,8485,"ON"],[8487,8487,"ON"],[8489,8489,"ON"],[8494,8494,"ET"],[8506,8507,"ON"],[8512,8516,"ON"],[8522,8525,"ON"],[8528,8543,"ON"],[8585,8587,"ON"],[8592,8721,"ON"],[8722,8722,"ES"],[8723,8723,"ET"],[8724,9013,"ON"],[9083,9108,"ON"],[9110,9257,"ON"],[9280,9290,"ON"],[9312,9351,"ON"],[9352,9371,"EN"],[9450,9899,"ON"],[9901,10239,"ON"],[10496,11123,"ON"],[11126,11263,"ON"],[11493,11498,"ON"],[11503,11505,"NSM"],[11513,11519,"ON"],[11647,11647,"NSM"],[11744,11775,"NSM"],[11776,11869,"ON"],[11904,11929,"ON"],[11931,12019,"ON"],[12032,12245,"ON"],[12272,12287,"ON"],[12288,12288,"WS"],[12289,12292,"ON"],[12296,12320,"ON"],[12330,12333,"NSM"],[12336,12336,"ON"],[12342,12343,"ON"],[12349,12351,"ON"],[12441,12442,"NSM"],[12443,12444,"ON"],[12448,12448,"ON"],[12539,12539,"ON"],[12736,12773,"ON"],[12783,12783,"ON"],[12829,12830,"ON"],[12880,12895,"ON"],[12924,12926,"ON"],[12977,12991,"ON"],[13004,13007,"ON"],[13175,13178,"ON"],[13278,13279,"ON"],[13311,13311,"ON"],[19904,19967,"ON"],[42128,42182,"ON"],[42509,42511,"ON"],[42607,42610,"NSM"],[42611,42611,"ON"],[42612,42621,"NSM"],[42622,42623,"ON"],[42654,42655,"NSM"],[42736,42737,"NSM"],[42752,42785,"ON"],[42888,42888,"ON"],[43010,43010,"NSM"],[43014,43014,"NSM"],[43019,43019,"NSM"],[43045,43046,"NSM"],[43048,43051,"ON"],[43052,43052,"NSM"],[43064,43065,"ET"],[43124,43127,"ON"],[43204,43205,"NSM"],[43232,43249,"NSM"],[43263,43263,"NSM"],[43302,43309,"NSM"],[43335,43345,"NSM"],[43392,43394,"NSM"],[43443,43443,"NSM"],[43446,43449,"NSM"],[43452,43453,"NSM"],[43493,43493,"NSM"],[43561,43566,"NSM"],[43569,43570,"NSM"],[43573,43574,"NSM"],[43587,43587,"NSM"],[43596,43596,"NSM"],[43644,43644,"NSM"],[43696,43696,"NSM"],[43698,43700,"NSM"],[43703,43704,"NSM"],[43710,43711,"NSM"],[43713,43713,"NSM"],[43756,43757,"NSM"],[43766,43766,"NSM"],[43882,43883,"ON"],[44005,44005,"NSM"],[44008,44008,"NSM"],[44013,44013,"NSM"],[64285,64285,"R"],[64286,64286,"NSM"],[64287,64296,"R"],[64297,64297,"ES"],[64298,64335,"R"],[64336,64450,"AL"],[64451,64466,"ON"],[64467,64829,"AL"],[64830,64847,"ON"],[64848,64911,"AL"],[64912,64913,"ON"],[64914,64967,"AL"],[64968,64975,"ON"],[64976,65007,"BN"],[65008,65020,"AL"],[65021,65023,"ON"],[65024,65039,"NSM"],[65040,65049,"ON"],[65056,65071,"NSM"],[65072,65103,"ON"],[65104,65104,"CS"],[65105,65105,"ON"],[65106,65106,"CS"],[65108,65108,"ON"],[65109,65109,"CS"],[65110,65118,"ON"],[65119,65119,"ET"],[65120,65121,"ON"],[65122,65123,"ES"],[65124,65126,"ON"],[65128,65128,"ON"],[65129,65130,"ET"],[65131,65131,"ON"],[65136,65278,"AL"],[65279,65279,"BN"],[65281,65282,"ON"],[65283,65285,"ET"],[65286,65290,"ON"],[65291,65291,"ES"],[65292,65292,"CS"],[65293,65293,"ES"],[65294,65295,"CS"],[65296,65305,"EN"],[65306,65306,"CS"],[65307,65312,"ON"],[65339,65344,"ON"],[65371,65381,"ON"],[65504,65505,"ET"],[65506,65508,"ON"],[65509,65510,"ET"],[65512,65518,"ON"],[65520,65528,"BN"],[65529,65533,"ON"],[65534,65535,"BN"],[65793,65793,"ON"],[65856,65932,"ON"],[65936,65948,"ON"],[65952,65952,"ON"],[66045,66045,"NSM"],[66272,66272,"NSM"],[66273,66299,"EN"],[66422,66426,"NSM"],[67584,67870,"R"],[67871,67871,"ON"],[67872,68096,"R"],[68097,68099,"NSM"],[68100,68100,"R"],[68101,68102,"NSM"],[68103,68107,"R"],[68108,68111,"NSM"],[68112,68151,"R"],[68152,68154,"NSM"],[68155,68158,"R"],[68159,68159,"NSM"],[68160,68324,"R"],[68325,68326,"NSM"],[68327,68408,"R"],[68409,68415,"ON"],[68416,68863,"R"],[68864,68899,"AL"],[68900,68903,"NSM"],[68904,68911,"AL"],[68912,68921,"AN"],[68922,68927,"AL"],[68928,68937,"AN"],[68938,68968,"R"],[68969,68973,"NSM"],[68974,68974,"ON"],[68975,69215,"R"],[69216,69246,"AN"],[69247,69290,"R"],[69291,69292,"NSM"],[69293,69311,"R"],[69312,69327,"AL"],[69328,69336,"ON"],[69337,69369,"AL"],[69370,69375,"NSM"],[69376,69423,"R"],[69424,69445,"AL"],[69446,69456,"NSM"],[69457,69487,"AL"],[69488,69505,"R"],[69506,69509,"NSM"],[69510,69631,"R"],[69633,69633,"NSM"],[69688,69702,"NSM"],[69714,69733,"ON"],[69744,69744,"NSM"],[69747,69748,"NSM"],[69759,69761,"NSM"],[69811,69814,"NSM"],[69817,69818,"NSM"],[69826,69826,"NSM"],[69888,69890,"NSM"],[69927,69931,"NSM"],[69933,69940,"NSM"],[70003,70003,"NSM"],[70016,70017,"NSM"],[70070,70078,"NSM"],[70089,70092,"NSM"],[70095,70095,"NSM"],[70191,70193,"NSM"],[70196,70196,"NSM"],[70198,70199,"NSM"],[70206,70206,"NSM"],[70209,70209,"NSM"],[70367,70367,"NSM"],[70371,70378,"NSM"],[70400,70401,"NSM"],[70459,70460,"NSM"],[70464,70464,"NSM"],[70502,70508,"NSM"],[70512,70516,"NSM"],[70587,70592,"NSM"],[70606,70606,"NSM"],[70608,70608,"NSM"],[70610,70610,"NSM"],[70625,70626,"NSM"],[70712,70719,"NSM"],[70722,70724,"NSM"],[70726,70726,"NSM"],[70750,70750,"NSM"],[70835,70840,"NSM"],[70842,70842,"NSM"],[70847,70848,"NSM"],[70850,70851,"NSM"],[71090,71093,"NSM"],[71100,71101,"NSM"],[71103,71104,"NSM"],[71132,71133,"NSM"],[71219,71226,"NSM"],[71229,71229,"NSM"],[71231,71232,"NSM"],[71264,71276,"ON"],[71339,71339,"NSM"],[71341,71341,"NSM"],[71344,71349,"NSM"],[71351,71351,"NSM"],[71453,71453,"NSM"],[71455,71455,"NSM"],[71458,71461,"NSM"],[71463,71467,"NSM"],[71727,71735,"NSM"],[71737,71738,"NSM"],[71995,71996,"NSM"],[71998,71998,"NSM"],[72003,72003,"NSM"],[72148,72151,"NSM"],[72154,72155,"NSM"],[72160,72160,"NSM"],[72193,72198,"NSM"],[72201,72202,"NSM"],[72243,72248,"NSM"],[72251,72254,"NSM"],[72263,72263,"NSM"],[72273,72278,"NSM"],[72281,72283,"NSM"],[72330,72342,"NSM"],[72344,72345,"NSM"],[72544,72544,"NSM"],[72546,72548,"NSM"],[72550,72550,"NSM"],[72752,72758,"NSM"],[72760,72765,"NSM"],[72850,72871,"NSM"],[72874,72880,"NSM"],[72882,72883,"NSM"],[72885,72886,"NSM"],[73009,73014,"NSM"],[73018,73018,"NSM"],[73020,73021,"NSM"],[73023,73029,"NSM"],[73031,73031,"NSM"],[73104,73105,"NSM"],[73109,73109,"NSM"],[73111,73111,"NSM"],[73459,73460,"NSM"],[73472,73473,"NSM"],[73526,73530,"NSM"],[73536,73536,"NSM"],[73538,73538,"NSM"],[73562,73562,"NSM"],[73685,73692,"ON"],[73693,73696,"ET"],[73697,73713,"ON"],[78912,78912,"NSM"],[78919,78933,"NSM"],[90398,90409,"NSM"],[90413,90415,"NSM"],[92912,92916,"NSM"],[92976,92982,"NSM"],[94031,94031,"NSM"],[94095,94098,"NSM"],[94178,94178,"ON"],[94180,94180,"NSM"],[113821,113822,"NSM"],[113824,113827,"BN"],[117760,117973,"ON"],[118e3,118009,"EN"],[118010,118012,"ON"],[118016,118451,"ON"],[118458,118480,"ON"],[118496,118512,"ON"],[118528,118573,"NSM"],[118576,118598,"NSM"],[119143,119145,"NSM"],[119155,119162,"BN"],[119163,119170,"NSM"],[119173,119179,"NSM"],[119210,119213,"NSM"],[119273,119274,"ON"],[119296,119361,"ON"],[119362,119364,"NSM"],[119365,119365,"ON"],[119552,119638,"ON"],[120513,120513,"ON"],[120539,120539,"ON"],[120571,120571,"ON"],[120597,120597,"ON"],[120629,120629,"ON"],[120655,120655,"ON"],[120687,120687,"ON"],[120713,120713,"ON"],[120745,120745,"ON"],[120771,120771,"ON"],[120782,120831,"EN"],[121344,121398,"NSM"],[121403,121452,"NSM"],[121461,121461,"NSM"],[121476,121476,"NSM"],[121499,121503,"NSM"],[121505,121519,"NSM"],[122880,122886,"NSM"],[122888,122904,"NSM"],[122907,122913,"NSM"],[122915,122916,"NSM"],[122918,122922,"NSM"],[123023,123023,"NSM"],[123184,123190,"NSM"],[123566,123566,"NSM"],[123628,123631,"NSM"],[123647,123647,"ET"],[124140,124143,"NSM"],[124398,124399,"NSM"],[124643,124643,"NSM"],[124646,124646,"NSM"],[124654,124655,"NSM"],[124661,124661,"NSM"],[124928,125135,"R"],[125136,125142,"NSM"],[125143,125251,"R"],[125252,125258,"NSM"],[125259,126063,"R"],[126064,126143,"AL"],[126144,126207,"R"],[126208,126287,"AL"],[126288,126463,"R"],[126464,126703,"AL"],[126704,126705,"ON"],[126706,126719,"AL"],[126720,126975,"R"],[126976,127019,"ON"],[127024,127123,"ON"],[127136,127150,"ON"],[127153,127167,"ON"],[127169,127183,"ON"],[127185,127221,"ON"],[127232,127242,"EN"],[127243,127247,"ON"],[127279,127279,"ON"],[127338,127343,"ON"],[127405,127405,"ON"],[127584,127589,"ON"],[127744,128728,"ON"],[128732,128748,"ON"],[128752,128764,"ON"],[128768,128985,"ON"],[128992,129003,"ON"],[129008,129008,"ON"],[129024,129035,"ON"],[129040,129095,"ON"],[129104,129113,"ON"],[129120,129159,"ON"],[129168,129197,"ON"],[129200,129211,"ON"],[129216,129217,"ON"],[129232,129240,"ON"],[129280,129623,"ON"],[129632,129645,"ON"],[129648,129660,"ON"],[129664,129674,"ON"],[129678,129734,"ON"],[129736,129736,"ON"],[129741,129756,"ON"],[129759,129770,"ON"],[129775,129784,"ON"],[129792,129938,"ON"],[129940,130031,"ON"],[130032,130041,"EN"],[130042,130042,"ON"],[131070,131071,"BN"],[196606,196607,"BN"],[262142,262143,"BN"],[327678,327679,"BN"],[393214,393215,"BN"],[458750,458751,"BN"],[524286,524287,"BN"],[589822,589823,"BN"],[655358,655359,"BN"],[720894,720895,"BN"],[786430,786431,"BN"],[851966,851967,"BN"],[917502,917759,"BN"],[917760,917999,"NSM"],[918e3,921599,"BN"],[983038,983039,"BN"],[1048574,1048575,"BN"],[1114110,1114111,"BN"]];function wF(e){if(e<=255)return cv[e];let t=0,n=zd.length-1;for(;t<=n;){let r=t+n>>1,i=zd[r];if(e<i[0]){n=r-1;continue}if(e>i[1]){t=r+1;continue}return i[2]}return"L"}function CF(e){let t=e.length;if(t===0)return null;let n=new Array(t),r=!1;for(let c=0;c<t;){let d=e.charCodeAt(c),m=d,f=1;if(d>=55296&&d<=56319&&c+1<t){let y=e.charCodeAt(c+1);y>=56320&&y<=57343&&(m=(d-55296<<10)+(y-56320)+65536,f=2)}let p=wF(m);(p==="R"||p==="AL"||p==="AN")&&(r=!0);for(let y=0;y<f;y++)n[c+y]=p;c+=f}if(!r)return null;let i=0;for(let c=0;c<t;c++){let d=n[c];if(d==="L"){i=0;break}if(d==="R"||d==="AL"){i=1;break}}let o=new Int8Array(t);for(let c=0;c<t;c++)o[c]=i;let a=i&1?"R":"L",l=a,s=l;for(let c=0;c<t;c++)n[c]==="NSM"?n[c]=s:s=n[c];s=l;for(let c=0;c<t;c++){let d=n[c];d==="EN"?n[c]=s==="AL"?"AN":"EN":(d==="R"||d==="L"||d==="AL")&&(s=d)}for(let c=0;c<t;c++)n[c]==="AL"&&(n[c]="R");for(let c=1;c<t-1;c++)n[c]==="ES"&&n[c-1]==="EN"&&n[c+1]==="EN"&&(n[c]="EN"),n[c]==="CS"&&(n[c-1]==="EN"||n[c-1]==="AN")&&n[c+1]===n[c-1]&&(n[c]=n[c-1]);for(let c=0;c<t;c++){if(n[c]!=="EN")continue;let d;for(d=c-1;d>=0&&n[d]==="ET";d--)n[d]="EN";for(d=c+1;d<t&&n[d]==="ET";d++)n[d]="EN"}for(let c=0;c<t;c++){let d=n[c];(d==="WS"||d==="ES"||d==="ET"||d==="CS")&&(n[c]="ON")}s=l;for(let c=0;c<t;c++){let d=n[c];d==="EN"?n[c]=s==="L"?"L":"EN":(d==="R"||d==="L")&&(s=d)}for(let c=0;c<t;c++){if(n[c]!=="ON")continue;let d=c+1;for(;d<t&&n[d]==="ON";)d++;let m=c>0?n[c-1]:l,f=d<t?n[d]:l,p=m!=="L"?"R":"L";if(p===(f!=="L"?"R":"L"))for(let b=c;b<d;b++)n[b]=p;c=d-1}for(let c=0;c<t;c++)n[c]==="ON"&&(n[c]=a);for(let c=0;c<t;c++){let d=n[c];(o[c]&1)===0?d==="R"?o[c]++:(d==="AN"||d==="EN")&&(o[c]+=2):(d==="L"||d==="AN"||d==="EN")&&o[c]++}return o}function dv(e,t){let n=CF(e);if(n===null)return null;let r=new Int8Array(t.length);for(let i=0;i<t.length;i++)r[i]=n[t[i]];return r}var TF=/[ \t\n\r\f]+/g,RF=/[\t\n\r\f]| {2,}|^ | $/;function MF(e){let t=e??"normal";return t==="pre-wrap"?{mode:t,preserveOrdinarySpaces:!0,preserveHardBreaks:!0}:{mode:t,preserveOrdinarySpaces:!1,preserveHardBreaks:!1}}function kF(e){if(!RF.test(e))return e;let t=e.replace(TF," ");return t.charCodeAt(0)===32&&(t=t.slice(1)),t.length>0&&t.charCodeAt(t.length-1)===32&&(t=t.slice(0,-1)),t}function LF(e){return/[\r\f]/.test(e)?e.replace(/\r\n/g,`
|
|
1120
|
+
`+ev,Jd=new WeakMap;function Qd(e){return tv.has(e)}var tv=new WeakSet;function Zd(e){let t=Jd.get(e);return t||(t=(async()=>{if(!e.audioWorklet)throw new Error("AudioWorklet is unavailable: the page needs a secure context (https, localhost or file://)");let n=`data:text/javascript;base64,${btoa(String.fromCharCode(...new TextEncoder().encode(LF)))}`;await e.audioWorklet.addModule(n),tv.add(e)})().catch(n=>{throw Jd.delete(e),n}),Jd.set(e,t)),t}function NF(e,t,n){let r=.6+Math.max(0,Math.min(1,t))*2.6,o=Math.max(1,Math.floor(e*r)),i=new Float32Array(o),a=Math.round(t*1e3)*2654435761+Math.round(n*1e3)*40503>>>0,l=()=>(a=a*1664525+1013904223>>>0,a/4294967295*2-1),s=Math.max(.001,1-Math.max(0,Math.min(1,n))),c=0,d=0;for(let m=0;m<o;m++){c+=s*(l()-c);let p=c*Math.pow(1-m/o,2.5);i[m]=p,d+=p*p}let f=Math.sqrt(d);if(f>0)for(let m=0;m<o;m++)i[m]=(i[m]??0)/f;return i}var Re=e=>typeof e=="number"?e:Number(e??0),ef=e=>e/1e3;function iv(e,t,n,r){let o=Math.max(1,Math.round(e.sampleRate)),i=e.createBuffer(1,o,e.sampleRate),a=i.getChannelData(0);for(let c=0;c<o;c++){let d=c/o;a[c]=t==="sine"?Math.sin(2*Math.PI*d):4*Math.abs((d+.75)%1-.5)-1}let l=e.createBufferSource();l.buffer=i,l.loop=!0,l.playbackRate.value=n;let s=(r*n%1+1)%1*(o/e.sampleRate);return l.start(typeof e.currentTime=="number"?e.currentTime:0,s),l}function av(e){try{e.stop()}catch{}e.disconnect()}function tf(e,t){return[{param:e},{param:t,map:n=>1-n}]}function sv(e,t,n){e.gain.value=n,t.gain.value=1-n}function nf(e,t,n){return{input:e,output:e,update:t,automation:n,dispose:()=>e.disconnect()}}var FF=new Set(["peaking","highpass","lowpass"]),nv=e=>Math.pow(10,e/20),IF=(e,t)=>{let n=e.createGain(),r=o=>{n.gain.value=nv(Re(o.gain))};return r(t),nf(n,r,{gain:[{param:n.gain,map:nv}]})};function ki(e,t){return(n,r)=>{let o=n.createBiquadFilter();o.type=e;let i=a=>{o.frequency.value=Re(a.frequency),a.q!==void 0&&(o.Q.value=Re(a.q)),t&&(o.gain.value=Re(a.gain))};return i(r),nf(o,i,{frequency:[{param:o.frequency}],...FF.has(e)?{q:[{param:o.Q}]}:{},...t?{gain:[{param:o.gain}]}:{}})}}function DF(e){return(t,n)=>{let r=Math.tan(Math.PI*Re(n.frequency)/t.sampleRate),o=e==="highpass"?t.createIIRFilter([1/(1+r),-1/(1+r)],[1,(r-1)/(r+1)]):t.createIIRFilter([r/(1+r),r/(1+r)],[1,(r-1)/(r+1)]);return nf(o,()=>{})}}function Zr(e,t=!1){return(n,r,o)=>{let i=new AudioWorkletNode(n,e,{processorOptions:{...r,__hfElapsed:o}});return{input:i,output:i,update:a=>i.port.postMessage({...a}),...t?{reset:()=>i.port.postMessage({__hfReset:!0})}:{},dispose:()=>{i.port.postMessage({__hfDispose:!0}),i.disconnect()}}}}var PF={tanh:Math.tanh,atan:e=>2/Math.PI*Math.atan(Math.PI/2*e),cubic:e=>Math.abs(e)>=1?Math.sign(e):e-e**3/3,exp:e=>Math.sign(e)*(1-Math.exp(-Math.abs(e))),alg:e=>e/Math.sqrt(1+e*e),quintic:e=>Math.abs(e)>=1?Math.sign(e):e-e**5/5,sin:e=>Math.abs(e)>=1?Math.sign(e):Math.sin(Math.PI/2*e),erf:e=>Math.tanh(1.20211*e),hard:e=>Math.max(-1,Math.min(1,e))},OF=(e,t)=>{let n=e.createWaveShaper(),r=e.createGain(),o=e.createGain();r.connect(n).connect(o);let i=a=>{let l=PF[String(a.type)]??Math.tanh,s=Math.pow(10,Re(a.threshold)/20),c=8192,d=new Float32Array(c);for(let f=0;f<c;f++){let m=f/(c-1)*2-1;d[f]=l(m/Math.max(1e-6,s))*s}n.curve=d,n.oversample=Re(a.oversample)>=4?"4x":Re(a.oversample)>=2?"2x":"none",o.gain.value=Math.pow(10,Re(a.output)/20)};return i(t),{input:r,output:o,update:i,automation:{output:[{param:o.gain,map:a=>Math.pow(10,a/20)}]},dispose:()=>{r.disconnect(),n.disconnect(),o.disconnect()}}},HF=(e,t)=>{let n=e.createGain(),r=e.createGain(),o=e.createDelay(5),i=e.createGain(),a=e.createGain(),l=e.createGain();n.connect(o),o.connect(i),i.connect(o),o.connect(a).connect(r),n.connect(l).connect(r);let s=c=>{o.delayTime.value=Math.min(5,Re(c.time)/1e3),i.gain.value=Re(c.feedback),sv(a,l,Re(c.mix))};return s(t),{input:n,output:r,update:s,automation:{time:[{param:o.delayTime,map:c=>Math.min(5,ef(c))}],feedback:[{param:i.gain}],mix:tf(a.gain,l.gain)},dispose:()=>[n,r,o,i,a,l].forEach(c=>c.disconnect())}},GF=(e,t,n)=>{let r=e.createGain(),o=e.createGain(),i=e.createDelay(.5),a=iv(e,"sine",Re(t.speed),n),l=e.createGain(),s=e.createGain(),c=e.createGain();a.connect(l).connect(i.delayTime),r.connect(i).connect(s).connect(o),r.connect(c).connect(o);let d=f=>{i.delayTime.value=Re(f.delay)/1e3,l.gain.value=Re(f.depth)/1e3,a.playbackRate.value=Re(f.speed),sv(s,c,Re(f.mix))};return d(t),{input:r,output:o,update:d,automation:{delay:[{param:i.delayTime,map:ef}],depth:[{param:l.gain,map:ef}],speed:[{param:a.playbackRate}],mix:tf(s.gain,c.gain)},dispose:()=>{av(a),[r,o,i,l,s,c].forEach(f=>f.disconnect())}}},BF=6,UF=(e,t,n)=>{let r=e.createGain(),o=e.createGain(),i=e.createGain(),a=e.createGain(),l=iv(e,String(t.type)==="1"?"sine":"triangle",Re(t.speed),n),s=e.createGain(),c=e.createGain(),d=e.createGain(),f=[];r.connect(i);let m=i;for(let x=0;x<BF;x++){let b=e.createBiquadFilter();b.type="allpass",b.Q.value=.7071,s.connect(b.frequency),m.connect(b),m=b,f.push(b)}l.connect(s),m.connect(c).connect(a),i.connect(d).connect(a),a.connect(o);let p=x=>{let b=1e3/Math.max(.1,Re(x.delay));for(let y of f)y.frequency.value=b;s.gain.value=b*Re(x.decay),l.playbackRate.value=Re(x.speed),i.gain.value=Re(x.in_gain),a.gain.value=Re(x.out_gain),c.gain.value=1,d.gain.value=1};return p(t),{input:r,output:o,update:p,automation:{speed:[{param:l.playbackRate}],in_gain:[{param:i.gain}],out_gain:[{param:a.gain}]},dispose:()=>{av(l),[r,o,i,a,s,c,d,...f].forEach(x=>x.disconnect())}}},WF=(e,t)=>{let n=e.createGain(),r=e.createGain(),o=e.createConvolver(),i=e.createGain(),a=e.createGain();o.normalize=!1,n.connect(o).connect(i).connect(r),n.connect(a).connect(r);let l="",s=c=>{let d=`${Re(c.size)}:${Re(c.damping)}`;if(d!==l){let f=NF(e.sampleRate,Re(c.size),Re(c.damping)),m=e.createBuffer(1,f.length,e.sampleRate);m.getChannelData(0).set(f),o.buffer=m,l=d}i.gain.value=Re(c.wet),a.gain.value=Re(c.dry)};return s(t),{input:n,output:r,update:s,automation:{wet:[{param:i.gain}],dry:[{param:a.gain}]},dispose:()=>[n,r,o,i,a].forEach(c=>c.disconnect())}},VF={"gain-node":IF,"biquad-peaking":ki("peaking",!0),"biquad-lowshelf":ki("lowshelf",!0),"biquad-highshelf":ki("highshelf",!0),"biquad-highpass":ki("highpass",!1),"biquad-lowpass":ki("lowpass",!1),"worklet-compressor":Zr("hf-compressor"),"worklet-limiter":Zr("hf-limiter"),"worklet-truepeak":Zr("hf-truepeak",!0),"worklet-gate":Zr("hf-gate"),"worklet-bitcrush":Zr("hf-bitcrush"),"worklet-pitchshift":Zr("hf-pitchshift"),waveshaper:OF,"delay-feedback":HF,"chorus-lfo":GF,"allpass-phaser":UF,convolver:WF};function lv(e){return e.nodes.some(t=>To(t.type)?.web.startsWith("worklet-")??!1)}function $F(e,t,n,r=0){let o=To(t);if(!o)throw new Error(`Unknown effect type: ${t}`);let i=Ro(t,n);if((t==="highpass"||t==="lowpass")&&String(i.poles)==="1")return DF(t)(e,i,r);let a=VF[o.web];if(!a)throw new Error(`No Web Audio builder for ${o.web}`);return a(e,i,r)}function rv(e){let t=[];for(let n of e){let r=n.fromPreset,o=t.at(-1);if(o&&o.preset===r)o.nodes.push(n);else{let i=typeof n.presetAmount=="number"?n.presetAmount:1;t.push({...r?{preset:r}:{},amount:Math.min(1,Math.max(0,i)),nodes:[n]})}}return t}function ov(e){return Mo(e).map(t=>{let n=Ro(t.type,t.params),r=n.poles!==void 0?`:${n.poles}`:"",o=String(n.poles)==="1"?`@${n.frequency}`:"",i=t.type==="phaser"?`~${n.type}`:"",a=t.fromPreset?`%${t.fromPreset}`:"",l=t.type==="truepeak"?`^${n.lookahead}`:"";return`${t.type}${r}${o}${i}${l}${a}`}).join("|")}function uv(e,t,n=0){var f;let r=e.createGain(),o=e.createGain(),i=[],a=[],l=rv(Mo(t)),s=r;for(let m of l){let p=null;if(m.preset){let x=e.createGain(),b=e.createGain(),y=e.createGain(),E=e.createGain();y.gain.value=m.amount,b.gain.value=1-m.amount,s.connect(x),x.connect(b).connect(E),p={entry:x,wet:y,dry:b,join:E},s=x}for(let x of m.nodes){let b=$F(e,x.type,x.params??{},n);s.connect(b.input),s=b.output,i.push({...x.id?{id:x.id}:{},type:x.type,handle:b})}p&&m.preset&&(s.connect(p.wet).connect(p.join),a.push({id:m.preset,...p}),s=p.join)}s.connect(o);let c=ov(t),d={};for(let m of a)(d[f=m.id]??(d[f]=[])).push(...tf(m.wet.gain,m.dry.gain));return{input:r,output:o,presets:d,nodes:i,update(m){if(ov(m)!==c)return!1;Mo(m).forEach((x,b)=>{let y=i[b];y&&(y.handle.update(Ro(x.type,x.params)),x.id===void 0?delete y.id:y.id=x.id)});let p=0;for(let x of rv(Mo(m))){if(!x.preset)continue;let b=a[p++];!b||b.id!==x.preset||(b.wet.gain.value=x.amount,b.dry.gain.value=1-x.amount)}return!0},reset(){for(let{handle:m}of i)m.reset?.()},dispose(){for(let{handle:m}of i)m.dispose();for(let{entry:m,wet:p,dry:x,join:b}of a)m.disconnect(),p.disconnect(),x.disconnect(),b.disconnect();r.disconnect(),o.disconnect()}}}var cv={version:1,nodes:[]},dv={version:1,lanes:[]};function fv(e,t,n=Zt){let r=(n&&typeof e.getAttribute=="function"?e.getAttribute(n):null)??"";if(!r)return dv;try{return kp(ka(r),t)}catch{return dv}}function eo(e){let t=(typeof e.getAttribute=="function"?e.getAttribute(gn):null)??"";if(!t)return{chain:cv,raw:""};try{return{chain:Ap(t),raw:t}}catch{return{chain:cv,raw:""}}}function mv(e){return fv(e,eo(e).chain)}function rf(e,t,n){let r=ZS(t);if(!r)return[];let o=Cp(r,e.gain?.()??1,e.gainAhead);return Xd([{param:e.param}],{...r,points:o},Ma.scale,n),[{param:e.param}]}function qF(e,t){Jr([e]),e.param.setValueAtTime(e.gainAhead?1:Ve(e.gain?.()??1),t.scheduledAt)}function Qs(e,t,n,r,o,i={automation:Zt},a){let{chain:l}=eo(t),s=null,c=[],d=!1,f=0,m=()=>{try{s?(n.disconnect(s.input),s.output.disconnect(r),s.dispose()):n.disconnect(r)}catch{}s=null},p=(I,k)=>{if(I.nodes.length===0){n.connect(r);return}if(lv(I)&&!Qd(e)){n.connect(r);let A=++f;Zd(e).then(()=>{d||A!==f||v(eo(t).chain)}).catch(()=>{});return}try{let A=uv(e,I,k);n.connect(A.input),A.output.connect(r),s=A}catch{n.connect(r)}},x=(I,k)=>{if(!k){c=[];return}let A=fv(t,I,i.automation),L=s?QS(A,I,s.nodes,k,s.presets):[],P=a?rf(a,A,k):[];a&&P.length===0&&c.some(q=>q.param===a.param)&&qF(a,k),c=[...L,...P]},b=o?{...o}:null;p(l,b?.elapsed??0),x(l,b);let y=()=>{if(!b)return null;let I=typeof e.currentTime=="number"?e.currentTime:b.scheduledAt;return{scheduledAt:I,elapsed:b.elapsed+(I-b.scheduledAt)*b.rate,rate:b.rate}},E=I=>{let k=y();k&&(Qr(c,k.scheduledAt),x(I,k))},v=I=>{let k=y();Qr(c,k?.scheduledAt??0),m(),p(I,k?.elapsed??0),x(I,k)},_=null,H=t;return typeof MutationObserver<"u"&&typeof H?.nodeType=="number"&&(_=new MutationObserver(()=>{let I=eo(t);c.length>0&&Jr(c),!s||!s.update(I.chain)?v(I.chain):E(I.chain)}),_.observe(H,{attributes:!0,attributeFilter:[gn,...i.automation?[i.automation]:[],...a?.gain?["data-volume"]:[]]})),{reanchor:I=>{if(d)return;let k=y();k&&Qr(c,k.scheduledAt),b={...I},s?.reset(),x(eo(t).chain,b)},setRate:I=>{let k=y();d||!k||!Number.isFinite(I)||I<=0||I===k.rate||(b={...k,rate:I},Qr(c,k.scheduledAt),x(eo(t).chain,b))},dispose:()=>{d=!0,_?.disconnect(),c.length>0&&Qr(c,typeof e.currentTime=="number"?e.currentTime:0),s?.dispose()}}}function pv(e,t){e.getFloatTimeDomainData(t);let n=0;for(let r=0;r<t.length;r++)n=Math.max(n,Math.abs(t[r]??0));return n}function of(e,t){let n=e.createGain();n.channelCount=2,n.channelCountMode="explicit";let r=e.createChannelSplitter(2),o=e.createAnalyser(),i=e.createAnalyser();o.fftSize=i.fftSize=2048,t.connect(n),n.connect(r),r.connect(o,0),r.connect(i,1);let a=new Float32Array(new ArrayBuffer(2048*4)),l=new Float32Array(new ArrayBuffer(2048*4));return{read:()=>({l:pv(o,a),r:pv(i,l)}),dispose:()=>{try{t.disconnect(n),n.disconnect(),r.disconnect()}catch{}}}}var hv="runtime_web_audio_bypass";function af(e,t){return typeof e.getAttribute=="function"?e.getAttribute(t):null}function Li(e,t){return af(e,t)!==null}function zF(e){return Li(e,"crossorigin")?!0:e.crossOrigin!=null}function jF(e){return typeof e.baseURI=="string"&&e.baseURI?e.baseURI:typeof document<"u"?document.baseURI:""}function KF(e){let t=typeof e.currentSrc=="string"?e.currentSrc:"";if(t)return[t];let n=af(e,"src");if(n)return[n];if(typeof e.querySelectorAll!="function")return[];let r=[];for(let o of Array.from(e.querySelectorAll("source"))){let i=o.getAttribute("src");i&&r.push(i)}return r}function YF(e,t){let n;try{n=new URL(e,jF(t))}catch{return null}return n.protocol!=="http:"&&n.protocol!=="https:"?null:n}function XF(){return typeof window.origin=="string"?window.origin:window.location.origin}function JF(e,t){if(typeof window>"u")return null;let n=YF(e,t);if(!n)return null;let r=XF(),o=r==="null";return!o&&n.origin===r||zF(t)?null:o?"opaque_document_origin":"cross_origin_no_cors"}function bv(e){return(typeof e.currentSrc=="string"?e.currentSrc:"")?!0:Li(e,"src")}function to(e){for(let t of KF(e)){let n=JF(t,e);if(n)return{kind:"decode-only",reason:n,asset:t}}return{kind:"web-audio"}}function QF(e){let t=[];Li(e,gn)&&t.push("fx-chain"),Li(e,Zt)&&t.push("automation"),Li(e,ja)&&t.push("audio-group");let n=Number.parseFloat(af(e,"data-volume")??"");return Number.isFinite(n)&&n>1&&t.push("above-unity-gain"),t}function ZF(){return typeof window<"u"&&!!window.__HF_EXPORT_RENDER_SEEK_CONFIG}var gv=new WeakSet,eI={cross_origin_no_cors:"cross-origin media without a `crossorigin` opt-in is silent through createMediaElementSource (Web Audio spec); using native playback instead",opaque_document_origin:"this document's security origin is opaque (a sandbox without `allow-same-origin`), so no media is same-origin with it and createMediaElementSource would be silent (Web Audio spec); using native playback instead"},tI={cross_origin_no_cors:"proxy or download the asset to a same-origin URL to keep it.",opaque_document_origin:"add `allow-same-origin` to the sandbox, or serve the asset with a `crossorigin` attribute and an `Access-Control-Allow-Origin` of `null` or `*`, to keep it."};function no(e,t){if(t.kind==="web-audio"||ZF()||gv.has(e))return;let n=QF(e);gv.add(e);let r={asset:t.asset,reason:t.reason,lostProcessing:n,note:eI[t.reason]};ke({source:"hf-preview",type:"diagnostic",code:hv,details:r});let o=n.length>0?` Native playback cannot reproduce: ${n.join(", ")}. Fix: ${tI[t.reason]}`:"";globalThis.console.info(`[hyperframes] ${hv}: "${t.asset}" (${t.reason}): Web Audio capture withheld; the track plays through native HTMLMediaElement output.${o}`)}var nI={automation:null};function sf(e){return!Number.isFinite(e)||e<=0?1:e}function xv(e){return Ve(e)}function rI(e,t){t||e.paused||!ma().__hfDebug||globalThis.console.debug("[hyperframes] webAudioTransport claimed fallback-playing element:",e.currentSrc||e.getAttribute("src")||"")}function oI(e,t){let{elapsed:n,mediaStart:r,scheduledAt:o,globalRate:i,mediaRate:a,clipDuration:l,headCut:s}=t,c=Number.isFinite(l)&&l>0,d=Math.max(n,s,0),f=(l-d)*a;if(c&&f<=0)return!1;let m=d>n?o+(d-n)/i:0;return c?e.start(m,d*a+r,f):e.start(m,d*a+r),!0}function yv(e,t,n,r,o){let i=e.createGain();i.connect(r);let a=e.createGain();return n.connect(a),{fx:Qs(e,t,a,i,o,void 0,{param:i.gain,gain:()=>Oo(t),gainAhead:!0}),laneNode:i,clipGainNode:a}}function ro(e){return e.sourceKind==="buffer"}var iI=1e4,Zs=class{constructor(){fe(this,"_ctx",null);fe(this,"_bufferCache",new Map);fe(this,"_failedSrcs",new Set);fe(this,"_mediaElementSources",new WeakMap);fe(this,"_activeSources",[]);fe(this,"_masterGain",null);fe(this,"_busOut",null);fe(this,"_master",null);fe(this,"_monitorGain",null);fe(this,"_masterVolume",1);fe(this,"_masterMuted",!1);fe(this,"_groups",new Map);fe(this,"_metering",!1);fe(this,"_masterTap",null);fe(this,"_groupTaps",new Map);fe(this,"_rateAnchorCtx",0);fe(this,"_rateAnchorComp",0);fe(this,"_rate",1);fe(this,"_paused",!0);fe(this,"_playGeneration",0);fe(this,"_playingCaptured",new Set);fe(this,"_suspendPending",!1);fe(this,"_restTimer",null)}async init(){try{return this._ctx=new AudioContext,this._ctx.onstatechange=()=>this.rest(),this._masterGain=this._ctx.createGain(),this._busOut=this._ctx.createGain(),this._monitorGain=this._ctx.createGain(),this._masterGain.connect(this._busOut),this._busOut.connect(this._monitorGain),this._monitorGain.connect(this._ctx.destination),this.applyMasterGain(),this._metering&&this.attachMasterTap(),!0}catch{return!1}}async wake(){!this._ctx||this._ctx.state==="running"&&!this._suspendPending||(this._suspendPending=!1,await this._ctx.resume())}rest(){this._restTimer!==null&&clearTimeout(this._restTimer),this._restTimer=null,!(!this._ctx||this._ctx.state!=="running"||this._suspendPending)&&(this._restTimer=setTimeout(()=>{this._restTimer=null,this.suspendIfIdle()},iI))}suspendIfIdle(){for(let t of this._playingCaptured)t.paused&&this._playingCaptured.delete(t);!this._ctx||!this._paused||this._suspendPending||this._playingCaptured.size>0||(this._suspendPending=!0,this._ctx.suspend().catch(t=>{this._suspendPending=!1,G("webAudioTransport.suspend",t)}))}get context(){return this._ctx}getTime(){return!this._ctx||this._paused?-1:this._rateAnchorComp+(this._ctx.currentTime-this._rateAnchorCtx)*this._rate}async decodeAudioElement(t){let n=t.currentSrc||t.getAttribute("src");if(!n)return null;if(this._bufferCache.has(n))return this._bufferCache.get(n);if(this._failedSrcs.has(n)||!this._ctx)return null;let r;try{let o=await fetch(n,{cache:"no-store"});if(!o.ok)return G("webAudioTransport.fetch",new Error(`${o.status} ${n}`)),null;r=await o.arrayBuffer()}catch(o){return G("webAudioTransport.fetch",o),null}try{let o=await this._ctx.decodeAudioData(r);return this._bufferCache.set(n,o),o}catch(o){return this._failedSrcs.add(n),G("webAudioTransport.decode",o),null}}startGeneration(){return this._playGeneration+=1,this._playGeneration}currentGeneration(){return this._playGeneration}acquireMediaElementSource(t){let n=this._mediaElementSources.get(t);if(n){let a=to(t);if(a.kind!=="web-audio"){try{n.disconnect()}catch{}return this._mediaElementSources.delete(t),no(t,a),null}return n}if(!this._ctx)return null;let r=to(t);if(r.kind!=="web-audio")return no(t,r),null;let o=this._ctx.createMediaElementSource(t);this._mediaElementSources.set(t,o),t.paused||this._playingCaptured.add(t),t.addEventListener("play",()=>{this._playingCaptured.add(t),this.wake()});let i=()=>{this._playingCaptured.delete(t),this.rest()};return t.addEventListener("pause",i),t.addEventListener("emptied",i),o}async scheduleMediaElementPlayback(t,n,r,o,i,a,l=1){if(!this._ctx||!this._masterGain||a!==this._playGeneration)return null;try{if(await this.wake(),a!==this._playGeneration)return null;let s=this.acquireMediaElementSource(t);if(!s)return null;s.disconnect();let c=sf(l),d=this._ctx.createGain();d.gain.value=i;let f=this._ctx.currentTime,m=o-n,p={scheduledAt:f,elapsed:m,rate:c};d.connect(this.resolveDestination(t,f,o,c)??this._masterGain);let{fx:x,laneNode:b,clipGainNode:y}=yv(this._ctx,t,s,d,p);this._rate=c,this._rateAnchorCtx=f,this._rateAnchorComp=o;let E={fx:x,el:t,sourceNode:s,sourceKind:"media-element",gainNode:d,laneNode:b,clipGainNode:y,compositionStart:n,mediaStart:r,scheduledAt:f,priorMuted:t.muted,priorVolume:t.volume,mediaPlaybackRate:st(t),bounded:!1};return t.volume=1,this._activeSources.push(E),this._paused=!1,E}catch(s){return G("webAudioTransport.mediaElementSource",s),null}}groupInput(t,n,r){let o=this._groups.get(t);if(o){if(o.generation!==this._playGeneration)try{o.reanchor(r),o.generation=this._playGeneration}catch(p){G("webAudioTransport.groupReanchor",p)}return o.input}if(!this._ctx||!this._masterGain)return null;let i=this._ctx.createGain(),a=this._ctx.createGain();a.connect(this._masterGain);let l=()=>wu(n,t),s=l(),c=this._ctx.createGain();c.gain.value=s?.hasAttribute("data-hidden")?0:1,c.connect(a);let d=this._ctx.createGain();d.gain.value=xv(Oo(s)),d.connect(c);let f={param:d.gain,gain:()=>Oo(l())},m=Qs(this._ctx,s??{getAttribute:()=>null},i,d,r,void 0,s?f:void 0);return this._groups.set(t,{input:i,output:a,isPresent:()=>l()!==null,fader:d,muteGain:c,fx:m,generation:this._playGeneration,reanchor:p=>{Jr([{param:d.gain}]);let x=l();d.gain.value=xv(Oo(x)),c.gain.value=x?.hasAttribute("data-hidden")?0:1,m?.reanchor(p),x&&x!==s&&rf(f,mv(x),p)},dispose:()=>{try{m?.dispose(),i.disconnect(),d.disconnect(),c.disconnect(),a.disconnect()}catch{}}}),this.attachGroupTap(t,a),i}startMetering(){this._metering=!0,this.attachMasterTap();for(let[t,n]of this._groups)this.attachGroupTap(t,n.output)}stopMetering(){this._metering=!1,this._masterTap?.dispose(),this._masterTap=null;for(let t of this._groupTaps.values())t.dispose();this._groupTaps.clear()}readLevels(){let t={};for(let[n,r]of this._groupTaps)this._groups.get(n)?.isPresent()&&(t[n]=r.read());return{master:this._masterTap?.read()??{l:0,r:0},groups:t}}attachMasterTap(){this._ctx&&this._masterGain&&!this._masterTap&&(this._masterTap=of(this._ctx,this._busOut??this._masterGain))}attachGroupTap(t,n){this._metering&&this._ctx&&!this._groupTaps.has(t)&&this._groupTaps.set(t,of(this._ctx,n))}setGroupMuted(t,n){let r=this._groups.get(t);if(r)try{r.muteGain.gain.value=n?0:1}catch(o){G("webAudioTransport.setGroupMuted",o)}}ensureMasterBus(t,n){if(!this._ctx||!this._masterGain||!this._busOut)return;if(this._master){if(this._master.generation===this._playGeneration)return;try{this._master.fx?.reanchor(n),this._master.generation=this._playGeneration}catch(i){G("webAudioTransport.masterReanchor",i)}return}let r=_u(t);if(!r)return;this._masterGain.disconnect(this._busOut);let o=Qs(this._ctx,r,this._masterGain,this._busOut,n,nI);this._master={fx:o,generation:this._playGeneration}}resolveDestination(t,n,r,o){if(!this._masterGain)return null;let i={scheduledAt:n,elapsed:r,rate:o};this.ensureMasterBus(t.ownerDocument,i);let a=Ya(t);return a?this.groupInput(a,t.ownerDocument,i)??this._masterGain:this._masterGain}handleSourceEnded(t,n,r,o){let i=this._activeSources.indexOf(n);if(i!==-1){this._activeSources.splice(i,1),r.muted=o;try{t.disconnect(),n.fx?.dispose(),n.clipGainNode.disconnect(),n.laneNode.disconnect(),n.gainNode.disconnect()}catch{}this._activeSources.length===0&&(this._paused=!0)}}async schedulePlayback(t,n,r,o,i,a,l,s=1,c=Number.POSITIVE_INFINITY,d=r){if(!this._ctx||!this._masterGain||l!==this._playGeneration)return null;try{if(await this.wake(),l!==this._playGeneration)return null;let f=i(),m=sf(s),p=st(t),x=m*p,b=this._ctx.createBufferSource();b.buffer=n,b.playbackRate.value=x;let y=this._ctx.createGain();y.gain.value=a;let E=f-r,v=this._ctx.currentTime,_={scheduledAt:v,elapsed:E,rate:m};y.connect(this.resolveDestination(t,v,f,m)??this._masterGain);let{fx:H,laneNode:I,clipGainNode:k}=yv(this._ctx,t,b,y,_);if(this._rate=m,this._rateAnchorCtx=v,this._rateAnchorComp=f,!oI(b,{elapsed:E,mediaStart:o,scheduledAt:v,globalRate:m,mediaRate:p,clipDuration:c,headCut:d-r}))return b.disconnect(),H?.dispose(),k.disconnect(),I.disconnect(),y.disconnect(),null;let A=t.muted;t.muted=!0,rI(t,A);let L={fx:H,el:t,sourceNode:b,sourceKind:"buffer",gainNode:y,laneNode:I,clipGainNode:k,compositionStart:r,mediaStart:o,scheduledAt:v,priorMuted:A,priorVolume:t.volume,mediaPlaybackRate:p,bounded:Number.isFinite(c)&&c>0};return this._activeSources.push(L),this._paused=!1,b.addEventListener("ended",()=>this.handleSourceEnded(b,L,t,A)),L}catch(f){return G("webAudioTransport.schedule",f),null}}setRate(t){let n=sf(t);if(n===this._rate)return!1;this._ctx&&!this._paused&&(this._rateAnchorComp=this.getTime(),this._rateAnchorCtx=this._ctx.currentTime),this._rate=n;for(let r of this._activeSources)try{ro(r)&&(r.sourceNode.playbackRate.value=n*r.mediaPlaybackRate),r.fx?.setRate(n)}catch(o){G("webAudioTransport.setRate",o)}return this.setBusRate(n),!0}setBusRate(t){let n=[...this._groups.values(),...this._master?[this._master]:[]];for(let r of n)try{r.fx?.setRate(t)}catch(o){G("webAudioTransport.setRate.bus",o)}}hasBoundedActiveSources(){return this._activeSources.some(t=>ro(t)&&t.bounded)}stopAll(){for(let t of this._activeSources){try{ro(t)&&t.sourceNode.stop(),t.sourceNode.disconnect(),t.fx?.dispose(),t.clipGainNode.disconnect(),t.laneNode.disconnect(),t.gainNode.disconnect()}catch{}ro(t)?t.el.muted=t.priorMuted:(t.el.volume=t.priorVolume,this._ctx&&t.sourceNode.connect(this._ctx.destination))}this._activeSources=[],this._paused=!0,this._playGeneration+=1,this.rest()}setVolume(t){this._masterVolume=Math.max(0,Math.min(1,t)),this.applyMasterGain()}setElementVolume(t,n,r=1){let o=Ve(n);for(let i of this._activeSources)if(i.el===t)try{i.sourceKind==="media-element"&&(i.el.volume=1),i.gainNode.gain.value=o,i.clipGainNode.gain.value=Ve(r)}catch(a){G("webAudioTransport.setElementVolume",a)}}setMuted(t){this._masterMuted=t,this.applyMasterGain()}applyMasterGain(){this._monitorGain&&(this._monitorGain.gain.value=this._masterMuted?0:this._masterVolume)}ownsClock(){return!this._paused&&this._activeSources.some(ro)}ownsElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t&&ro(n))}routesElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t)}destroy(){this.stopAll(),this.stopMetering();for(let t of this._groups.values())t.dispose();if(this._groups.clear(),this._master?.fx?.dispose(),this._master=null,this._bufferCache.clear(),this._failedSrcs.clear(),this._mediaElementSources=new WeakMap,this._playingCaptured.clear(),this._suspendPending=!1,this._restTimer!==null&&clearTimeout(this._restTimer),this._restTimer=null,this._ctx)try{this._ctx.close()}catch{}this._ctx=null,this._masterGain=null,this._busOut=null,this._monitorGain=null,this._masterVolume=1,this._masterMuted=!1}};var Ni="data-hf-studio-manual-edit-gesture";var Sv=`[${Ni}]`;function vv(e,t){let n=e.defaultView?.MutationObserver??globalThis.MutationObserver;if(!n||!e.documentElement)return{isActive:()=>e.querySelector(Sv)!=null,observing:!1,disconnect:()=>{}};let r=new Set(e.querySelectorAll(Sv)),o=l=>{for(let s of l){let c=s.target;Pe(c)&&(c.hasAttribute(Ni)?r.add(c):r.delete(c))}},i=l=>{l.length!==0&&(o(l),t())},a=new n(i);return a.observe(e.documentElement,{subtree:!0,attributes:!0,attributeFilter:[Ni]}),{observing:!0,isActive:()=>{i(a.takeRecords());for(let l of r){if(l.isConnected&&l.hasAttribute(Ni))return!0;r.delete(l)}return!1},disconnect:()=>{a.disconnect(),r.clear()}}}var Ev=333.3333333333333,lf=1e3*60/60;function Av(e){return e.isPlaying&&e.hasCapturedTimeline&&e.currentTimeSeconds<2?!1:e.compositionChanged===!0?!0:e.isPlaying?e.playingPollDue===!0:Number.isInteger(e.tick)&&e.tick>0&&e.tick%60===0}var aI=/^\s*spring\(\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+))\s*\)\s*$/;function wv(e){return Math.max(0,Math.min(1,e))}function _v(e){let t=aI.exec(e);if(!t)return null;let n=Number(t[1]);return Number.isFinite(n)?wv(n):null}function Cv(e,t){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let n=wv(t),r=12-n*6,o=Math.PI*2*(1+n*1.5),i=1-Math.exp(-r)*Math.cos(o);return(1-Math.exp(-r*e)*Math.cos(o*e))/i}var sI=/^\s*wiggle\(\s*(\d+)\s*,\s*(easeOut|easeInOut|anticipate|uniform)\s*(?:,\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?)\s*)?\)\s*$/,lI=Math.PI*2;function uI(e){let t=sI.exec(e);if(!t)return null;let n=Number(t[1]);if(!Number.isSafeInteger(n)||n<1)return null;let r=t[2];if(r!=="easeOut"&&r!=="easeInOut"&&r!=="anticipate"&&r!=="uniform")return null;if(t[3]===void 0)return{wiggles:n,type:r};let o=Number(t[3]);return!Number.isFinite(o)||o<0||o>1?null:{wiggles:n,type:r,amplitude:o}}function cI(e,t,n,r){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let o=r??(n==="easeInOut"?.08:n==="uniform"?.14:n==="anticipate"?.12:.16),i=n==="easeInOut"?o*Math.sin(Math.PI*e):n==="uniform"?o:o*(1-e);return e+(n==="anticipate"?-1:1)*i*Math.sin(lI*t*e)}function Tv(e,t){let n=uI(e);if(!n)return null;let r=`${n.wiggles}:${n.type}:${n.amplitude??"default"}`,o=t?.get(r);if(o)return o;let i=a=>cI(a,n.wiggles,n.type,n.amplitude);return t?.set(r,i),i}var dI=24,Rv=e=>e>=1?1:0,fI=e=>e,el=String.raw`([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?)`,mI=new RegExp(String.raw`^\s*M\s*0\s*,\s*0\s+C\s*${el}\s*,\s*${el}\s+${el}\s*,\s*${el}\s+1\s*,\s*1\s*$`,"i");function Mv(e,t,n){let r=1-e;return 3*r*r*e*t+3*r*e*e*n+e*e*e}function pI(e,t,n,r,o){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let i=0,a=1;for(let l=0;l<dI;l+=1){let s=(i+a)/2;Mv(s,t,r)<e?i=s:a=s}return Mv((i+a)/2,n,o)}function hI(e){let t=mI.exec(e);if(!t)return null;let n=Number(t[1]),r=Number(t[2]),o=Number(t[3]),i=Number(t[4]);return Math.min(n,o)<0||Math.max(n,o)>1?null:a=>pI(a,n,r,o,i)}function gI(e,t){if(!e.startsWith("spring("))return null;let n=_v(e);if(n===null)return null;let r=t.get(n);if(r)return r;let o=i=>Cv(i,n);return t.set(n,o),o}function bI(e,t){if(!e.startsWith("custom(")||!e.endsWith(")"))return null;let n=e.slice(7,-1),r=t.get(n);if(r)return r;let o=hI(n);return o&&t.set(n,o),o}function kv(e){if(e.__hfCustomEaseInstalled)return!0;let t=e.parseEase;if(!t)return!1;let n=new Map,r=new Map,o=new Map,i=s=>typeof s!="string"?null:s==="hold"?Rv:Tv(s,o)??gI(s,r)??bI(s,n),a=(s,c,d=[])=>{let f=i(s);return f||(typeof s=="string"&&/^(?:hold|spring|wiggle|custom)(?:\(|$)/.test(s.trim())&>("custom_ease_parse_failed",{ease:s}),t.call(c,s,...d)??fI)};e.parseEase=function(c,...d){return a(c,this,d)};let l=e.registerEase;if(typeof l=="function"){l("hold",Rv);let s=c=>{let d=f=>f;d.config=(...f)=>a(`${c}(${f.join(",")})`,e),l(c,d)};s("spring"),s("wiggle"),s("custom")}return e.__hfCustomEaseInstalled=!0,!0}var cf="first-frame",xI=3;function yI(e){let t=e.ownerDocument?.defaultView;return t&&e instanceof t.Element?!0:e instanceof Element}function SI(e){if(!yI(e)||e.tagName!=="AUDIO"&&e.tagName!=="VIDEO")return!1;let t=e.ownerDocument?.defaultView;return t&&e instanceof t.HTMLMediaElement?!0:e instanceof HTMLMediaElement}function vI(e){return e.hasAttribute("data-start")||e.hasAttribute("data-track-index")}function EI(e,t,n){let r=e;for(;r;){if(vI(r)&&!us(r,{currentTime:0,compositionDuration:Number.POSITIVE_INFINITY,canonicalFps:30,exportRenderSeek:!1,timelineRegistry:n,resolver:t}))return!1;r=r.parentElement}return!0}function Lv(e,t,n,r){return t==="all"?!0:EI(e,n,r)}function AI(e,{scope:t="all"}={}){let n=e.defaultView,r=it({documentRef:e,timelineRegistry:n?.__timelines,includeAuthoredTimingAttrs:!0}),o=e.querySelector(`meta[name="${pa}"]`)!==null,i=Array.from(e.querySelectorAll("video, audio")).filter(SI).filter(s=>Lv(s,o&&s.preload!=="auto"?cf:t,r,n?.__timelines??{})).filter(s=>s.readyState<xI),a=Array.from(e.querySelectorAll("img")).filter(s=>Lv(s,s.getAttribute("loading")?.toLowerCase()==="lazy"?cf:t,r,n?.__timelines??{})).filter(s=>!s.complete),l=e.fonts?.status==="loading";return{pendingMedia:i,pendingImages:a,fontsLoading:l}}function wI(e,{pendingMedia:t,pendingImages:n,fontsLoading:r},o){let i=t.map(s=>new Promise(c=>{if(s.error){c();return}let d=()=>{s.removeEventListener("canplay",d),s.removeEventListener("error",d),o.removeEventListener("abort",d),c()};s.addEventListener("canplay",d),s.addEventListener("error",d),o.addEventListener("abort",d,{once:!0})})),a=n.map(s=>s.decode?s.decode().catch(()=>{}):Promise.resolve()),l=r&&e.fonts?e.fonts.ready.then(()=>{}):Promise.resolve();return Promise.all([...i,...a,l]).then(()=>{})}function _I(e,t,{scope:n="all"}={}){let r=AI(e,{scope:n});return r.pendingMedia.length===0&&r.pendingImages.length===0&&!r.fontsLoading?null:wI(e,r,t)}var CI=50;function TI(e,t){let n=e.defaultView;return!n||n.__renderReady||!n.__hf?null:new Promise(r=>{let o,i=()=>{o!==void 0&&clearTimeout(o),t.removeEventListener("abort",i),r()};if(t.aborted){i();return}t.addEventListener("abort",i,{once:!0});let a=()=>{if(n.__renderReady){i();return}o=setTimeout(a,CI)};a()})}var RI=50,MI=1.5,kI=2,LI=1500;function uf(e,t){return new Promise(n=>{if(t.aborted){n(-1);return}let r=0,o=()=>{e.cancelAnimationFrame?.(r),n(-1)};t.addEventListener("abort",o,{once:!0}),r=e.requestAnimationFrame(i=>{t.removeEventListener("abort",o),n(i)})})}function NI(e,t){let n=e.defaultView;return n?(async()=>{let r=await uf(n,t);if(t.aborted)return;let o=await uf(n,t),i=o-r,a=0;for(;!t.aborted&&a<kI;){if(o-r>=LI)return;let l=await uf(n,t);if(t.aborted)return;let s=l-o;i=Math.min(i,s),a=s<RI||s<=i*MI?a+1:0,o=l}})():null}var FI=8e3;function II(e,t,n={}){let r=n.inputs??[(c,d)=>_I(c,d,{scope:n.scope}),TI,NI],o=new AbortController,i=r.map(c=>c(e,o.signal)).filter(c=>c!==null);if(i.length===0){t({timedOut:!1});return}let a=n.timeoutMs??FI,l,s=new Promise(c=>{l=setTimeout(()=>c("timed-out"),a)});Promise.race([Promise.all(i).then(()=>"done"),s]).then(c=>{clearTimeout(l),o.abort(),t({timedOut:c==="timed-out"})})}function Nv(e,t,n={}){II(e,t,{...n,scope:cf})}var mf=new Map,Fi=new Map,df=new Map,ff=()=>{},Iv=()=>{},Fv=0;function pf(e){return/^[a-z][a-z0-9-]{0,63}$/.test(e)}function Dv(e){let t=(df.get(e)??0)+1;return df.set(e,t),t}function Pv(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>0?e:(Fv-=1,Fv)}function hf(e,t){let n=Fi.get(e);if(!n)return;let r=()=>df.get(e)===t.generation&&Fi.get(e)===n;try{Promise.resolve(n(t.payload)).then(()=>{r()&&Iv(e,t.requestId)},o=>{r()&&ff(e,t.requestId,o)})}catch(o){r()&&ff(e,t.requestId,o)}}function Ov(e){ff=e}function Hv(e){Iv=e}function tl(e,t,n){if(!pf(e))return;let r={payload:t,requestId:Pv(n),generation:Dv(e)};mf.set(e,r),hf(e,r)}function nl(e,t){pf(e)&&(mf.delete(e),hf(e,{payload:void 0,requestId:Pv(t),generation:Dv(e)}))}function Gv(e,t){if(!pf(e))throw new Error(`Invalid HyperFrames runtime-data channel: ${e}`);Fi.set(e,t);let n=mf.get(e);return n&&hf(e,n),()=>{Fi.get(e)===t&&Fi.delete(e)}}var Bv=!1;function Kt(e){if(e){if(typeof e.pause!="function"){Bv||(Bv=!0,gt("timeline_missing_pause",{}));return}try{e.pause()}catch(t){G("runtime.timeline.pause",t)}}}function OI(e){let t=e;if(typeof t.remove=="function")for(let n of e.getChildren?.(!1,!0,!1)??[])n.data===Ao&&t.remove(n)}function HI(){let e=window.__HF_EXPORT_RENDER_SEEK_CONFIG,t=e?.fps,n=e?.fpsSource,r=Number(t);return!e||t==null?{fps:null,source:"default",rawFpsSource:n,rawFps:t,fallbackReason:"missing"}:!Number.isFinite(r)||r<=0?{fps:null,source:"default",rawFpsSource:n,rawFps:t,fallbackReason:"invalid"}:{fps:r,source:n==="render-options"||n==="default"?n:"unknown",rawFpsSource:n,rawFps:t,fallbackReason:e.fpsFallbackReason}}function GI(e,t){return t!==null&&e.length===t.length&&e.every((n,r)=>n===t[r])}function Uv(e,t,n){let r=null,o=!0;return()=>{let i=e();if(i.length===0)return r=null,o=!0,!0;if(GI(i,r))return o;r=i,o=!1;let a=i.length===1?i[0]:Promise.all(i);return Promise.resolve(a).then(()=>{r===i&&(o=!0,t())},l=>{r===i&&(o=!0,n(l),t())}),o}}function Ii(e){let t=e.querySelector(`meta[name="${bi}"]`)?.getAttribute("content");if(!t)return null;try{return JSON.parse(t)}catch{return null}}var yf=e=>JSON.stringify([Array.from(e.attributes,t=>[t.name,t.value]).filter(([t])=>t!==Yn),e.innerHTML]),BI=new Set(["style","preload","src",Yn,Cn,Vn,...ga]),UI=e=>e.split(/\s+/).filter(t=>t&&!t.startsWith("__hf-")).join(" "),Wv=e=>JSON.stringify([Array.from(e.attributes,({name:t,value:n})=>[t,t==="class"?UI(n):n]).filter(([t,n])=>!BI.has(t)&&!(t==="class"&&!n)).sort(([t],[n])=>t<n?-1:1),e.hasAttribute("data-var-src")?null:Bo(e),e.innerHTML]),Di=new WeakMap,$v=e=>e.localName==="video"||e.localName==="audio",bf=e=>{if(!Pe(e))return;let t=$v(e)?[e]:e.firstElementChild?e.querySelectorAll("video, audio"):[];for(let n of t)Di.has(n)||Di.set(n,yf(n))},rl=null;function qv(){typeof MutationObserver>"u"||!Ii(document)||(bf(document.documentElement),rl=new MutationObserver(e=>{for(let t of e){t.addedNodes.forEach(bf);let{target:n}=t;Pe(n)&&$v(n)&&Di.set(n,yf(n))}}),rl.observe(document.documentElement,{childList:!0,subtree:!0}))}function zv(){let e=o=>o?.config?.({force3D:!1}),t=Object.getOwnPropertyDescriptor(window,"gsap"),n=window.gsap;if(e(n),t?.configurable===!1||t?.get?.hfFlat)return;let r=Object.assign(()=>t?.get?t.get.call(window):n,{hfFlat:!0});Object.defineProperty(window,"gsap",{configurable:!0,enumerable:!0,get:r,set:o=>{t?.set?t.set.call(window,o):n=o,e(o)}})}var WI=new Map([["image",["href","xlink:href"]],["object",["data"]]]),VI=1e3,$I=16;function qI(){let e;return()=>e??(e=document.getAnimations())}var xf=e=>ba(e)||Me(e)&&qa(e)&&Bh({volume:Number.parseFloat(e.dataset.volume??""),fxChain:e.getAttribute("data-fx-chain"),automation:e.getAttribute("data-automation"),audioGroup:e.getAttribute("data-audio-group"),masterChain:tg(e.ownerDocument)}),jv="audio[data-start], video[data-start]",gf=e=>Array.from(e.querySelectorAll(jv)).filter(xf);function Vv(e){let t=e.matches(`[${ha}]`)?[e]:Array.from(e.querySelectorAll(`img[${ha}]`)).filter(n=>n.closest("[data-start]")===e);for(let n of t)n.setAttribute("loading","eager")}function Kv(){let e=oc(),t=window.parent!==window,n=u=>t&&u.hasAttribute(Ot);rl?.disconnect(),rl=null,Ii(document)&&bf(document.documentElement);let r=()=>{};Xp(ke),Ov((u,h,g)=>{ke({source:"hf-preview",type:"runtime-data-error",channel:u,requestId:h,message:g instanceof Error?g.message:String(g)})}),Hv((u,h)=>{try{r()}catch(g){ke({source:"hf-preview",type:"runtime-data-error",channel:u,requestId:h,message:g instanceof Error?g.message:String(g)});return}ke({source:"hf-preview",type:"runtime-data-applied",channel:u,requestId:h})}),yi(document),Is(document),ng(document);let o=HI();if(e.canonicalFps=o.fps??e.canonicalFps,jp(e.canonicalFps),window.__HF_EXPORT_RENDER_SEEK_CONFIG){let u=JSON.stringify({canonicalFps:e.canonicalFps,source:o.source,rawFpsSource:o.rawFpsSource,rawFps:o.rawFps,fallbackReason:o.fallbackReason});globalThis.console.info(`[hyperframes] render runtime fps ${u}`)}let i=null,a=null,l=null,s=[],c=new Set,d=null,f=new Set,m=(u,h,g)=>{f.has(u)||(f.add(u),gt(h,g))};if(typeof window.__hfRuntimeTeardown=="function")try{window.__hfRuntimeTeardown()}catch(u){G("runtime.init.site1",u)}let p=new Js;e.transportClock=p;let x=new Zs,b=!1;x.init().then(u=>{b=u}),window.__hf=window.__hf||{};let y=u=>u.closest("[data-hidden]")!==null||Ka(u.ownerDocument,u),E=()=>{let u=window.gsap,h=window;if(!(!u?.registerPlugin||h.__hfAutoNoopRegistered))try{u.registerPlugin({name:"_auto",init:()=>!1}),h.__hfAutoNoopRegistered=!0}catch(g){m("auto_marker_install_failed","auto_marker_install_failed",{reason:"threw"}),G("runtime.autoMarker.install",g)}},v=()=>{let u=window.gsap;if(!u){m("custom_ease_missing_gsap","custom_ease_install_failed",{reason:"missing_gsap"});return}try{kv(u)||m("custom_ease_no_parse_ease","custom_ease_install_failed",{reason:"no_parseEase"})}catch(h){m("custom_ease_install_threw","custom_ease_install_failed",{reason:"threw"}),G("runtime.customEase.install",h)}};E(),v(),document.documentElement&&(document.documentElement.style.margin="0",document.documentElement.style.padding="0",document.documentElement.style.overflow="hidden"),document.body&&(document.body.style.margin="0",document.body.style.padding="0",document.body.style.overflow="hidden");try{rh(document)}catch(u){G("runtime.init.cssVariables",u)}if(window.__timelines=window.__timelines||{},Array.isArray(window.__timelines)){let u=window.__timelines,h=Rt()?.getAttribute("data-composition-id")??"root",g={};if(u.length===1)g[h]=u[0];else for(let S=0;S<u.length;S++)g[`tl-${S}`]=u[S];window.__timelines=g}let _=Rt();_&&!_.hasAttribute("data-start")&&_.setAttribute("data-start","0");let H=u=>{s.push(u)},I=(u,h,g)=>{let S=g??`${u}:${JSON.stringify(h)}`;c.has(S)||(c.add(S),ke({source:"hf-preview",type:"diagnostic",code:u,details:h}))},k=u=>{let h={scale:1,focusX:960,focusY:540},g=[],S=[],w={time:u.getTime(),duration:u.getDuration(),isPlaying:u.isPlaying(),renderMode:!1,timelineDirty:!1};return{play:u.play,pause:u.pause,seek:u.seek,getTime:u.getTime,getDuration:u.getDuration,isPlaying:u.isPlaying,getMainTimeline:()=>null,getElementBounds:()=>{},getElementsAtPoint:()=>{},setElementPosition:()=>{},previewElementPosition:()=>{},setElementKeyframes:()=>{},setElementScale:()=>{},setElementFontSize:()=>{},setElementTextContent:()=>{},setElementTextColor:()=>{},setElementTextShadow:()=>{},setElementTextFontWeight:()=>{},setElementTextFontFamily:()=>{},setElementTextOutline:()=>{},setElementTextHighlight:()=>{},setElementVolume:()=>{},setStageZoom:()=>{},getStageZoom:()=>h,setStageZoomKeyframes:()=>{},getStageZoomKeyframes:()=>g,addElement:()=>!1,removeElement:()=>!1,updateElementTiming:()=>!1,setElementTiming:()=>{},updateElementSrc:()=>!1,updateElementLayer:()=>!1,updateElementBasePosition:()=>!1,markTimelineDirty:()=>{},isTimelineDirty:()=>!1,rebuildTimeline:()=>{},ensureTimeline:()=>{},enableRenderMode:()=>{},disableRenderMode:()=>{},renderSeek:u.renderSeek,getElementVisibility:()=>({visible:!1}),getVisibleElements:()=>S,getRenderState:()=>({...w,time:u.getTime(),duration:u.getDuration(),isPlaying:u.isPlaying()})}},A=.75,L=.05,P=100,q=240,X=u=>{if(u instanceof Error)return u.message||String(u);if(typeof u=="string")return u;try{return JSON.stringify(u)}catch{return String(u??"")}},Z=u=>{let h=u.toLowerCase();return h.includes("cannot read properties of null")||h.includes("cannot set properties of null")?{code:"runtime_null_dom_access",category:"dom-null-access"}:h.includes("failed to execute 'queryselector'")?{code:"runtime_invalid_selector",category:"selector-invalid"}:h.includes("is not defined")?{code:"runtime_reference_missing",category:"reference-missing"}:{code:"runtime_script_error",category:"script-error"}},J=u=>{let h=Xn(u);return h===null?null:`${h}px`},D=null,R=!1,M=()=>{if(!R)return Rt();if(kf(),we&&!Y&&D?.revision===Xe&&(D.el===null||D.el.isConnected))return D.el;let u=Rt();return D={revision:Xe,el:u},u},j=()=>{let u=M();if(!u)return;let h=J(u.getAttribute("data-width")),g=J(u.getAttribute("data-height"));h&&(u.style.width=h),g&&(u.style.height=g),h&&u.style.setProperty("--comp-width",h),g&&u.style.setProperty("--comp-height",g),h&&(document.documentElement.style.width=h),g&&(document.documentElement.style.height=g),h&&(document.body.style.width=h),g&&(document.body.style.height=g)},W=()=>{let u=M(),h=Array.from(document.querySelectorAll("[data-composition-id]")).filter(g=>g.hasAttribute("data-duration")||g.hasAttribute("data-end"));for(let g of h){if(u&&g===u)continue;let S=g.getAttribute("data-duration"),w=g.getAttribute("data-end");S!=null&&!g.hasAttribute(Sr)&&g.setAttribute(Sr,S),w!=null&&!g.hasAttribute(vr)&&g.setAttribute(vr,w),g.removeAttribute("data-duration"),g.removeAttribute("data-end")}},ee=new WeakMap,C=u=>[u.className,u.style.position,u.style.top,u.style.left,u.style.width,u.style.height,u.style.transform,u.getAttribute("data-width"),u.getAttribute("data-height")].join("|"),N=()=>{let u=M();if(!u)return;u.style.position||(u.style.position="relative"),u.style.overflow="hidden";let h=J(u.getAttribute("data-width")),g=J(u.getAttribute("data-height"));h&&(u.style.width=h),g&&(u.style.height=g);let S=Array.from(u.children).filter(T=>{let F=T.tagName.toLowerCase();return F==="script"||F==="style"||F==="link"||F==="meta"||!T.hasAttribute("data-start")||T.hasAttribute(Ot)?!1:ee.get(T)!==C(T)}),w=S.filter(T=>T.style.getPropertyValue("display")==="none").map(T=>({el:T,priority:T.style.getPropertyPriority("display")}));for(let{el:T}of w)T.style.removeProperty("display");for(let T of S){let F=T.tagName.toLowerCase(),B=(T.style.top==="0px"||T.style.top==="0")&&(T.style.left==="0px"||T.style.left==="0")&&T.style.width==="100%"&&T.style.height==="100%",V=/translate\(\s*-50%\s*,\s*-50%\s*\)/.test(T.style.transform);if(B&&V&&!T.hasAttribute("data-width")&&!T.hasAttribute("data-height")){let De=T.style.top,ye=T.style.left,Ae=T.style.width,Dt=T.style.height;T.style.top="",T.style.left="",T.style.width="",T.style.height="";let rt=window.getComputedStyle(T);rt.top!=="auto"||rt.bottom!=="auto"||rt.left!=="auto"||rt.right!=="auto"||rt.width!=="0px"||rt.height!=="0px"||(T.style.top=De,T.style.left=ye,T.style.width=Ae,T.style.height=Dt)}let O=window.getComputedStyle(T),me=O.position;if(me!=="absolute"&&me!=="fixed"&&(T.style.position="absolute"),F!=="audio"){let De=J(T.getAttribute("data-width")),ye=J(T.getAttribute("data-height")),Ae=O.width!=="0px"&&O.width!=="auto",Dt=O.height!=="0px"&&O.height!=="auto";De?!T.style.width&&!Ae&&(T.style.width=De):!T.style.width&&O.width==="0px"&&(T.style.width="100%"),ye?!T.style.height&&!Dt&&(T.style.height=ye):!T.style.height&&O.height==="0px"&&(T.style.height="100%")}}for(let{el:T,priority:F}of w)T.style.setProperty("display","none",F);if(document.readyState==="complete")for(let T of S)ee.set(T,C(T))},K=u=>it({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:u}),$=null,U=u=>{let h=$;$=K(!0);try{return u()}finally{$=h}},z=u=>u&&$?$:K(u),re=(u,h=0,g)=>z(g?.includeAuthoredTimingAttrs??!0).resolveStartForElement(u,h),oe=(u,h)=>z(h?.includeAuthoredTimingAttrs??!0).resolveDurationForElement(u),ie=u=>{let h=u.closest("[data-composition-id]"),g=h?re(h,0):null,S=h?oe(h,{includeAuthoredTimingAttrs:!0}):null;return{compositionRoot:h,inheritedStart:g,inheritedDuration:S}},te=u=>z(!0).resolveHostSlotsForElement(u),Q=(u,h)=>{let g=Ge(u.dataset.duration),S=g!=null&&g>0?h+g:1/0;return jn({start:h,end:S},te(u))},ue=u=>z(!0).resolveMediaStartForElement(u);window.__hfResolveMediaStartSeconds=ue,s.push(()=>{window.__hfResolveMediaStartSeconds===ue&&delete window.__hfResolveMediaStartSeconds});let Be=!!document.querySelector("[data-composition-src]"),mt=!1;{let u=document.querySelectorAll("[data-composition-id]:not([data-composition-src])");for(let h of u){let g=h.getAttribute("data-composition-id");if(g&&h.children.length===0&&document.querySelector(`template#${CSS.escape(g)}-template`)){mt=!0;break}}}let Ie=!Be&&!mt,Ue=u=>{let h=en(u);return h==null?null:Math.max(0,h)},He=u=>typeof u=="number"&&Number.isFinite(u)&&u>tn,Hi=()=>Array.from(document.querySelectorAll("video[data-start], audio[data-start]")).length===0?null:U(()=>m0(document,{mediaStart:ue,mediaDuration:xr})),Gi=()=>{let u=M();if(!u)return null;let h=window.__timelines??{},g=it({timelineRegistry:h,includeAuthoredTimingAttrs:!0});return p0(u,g)},Bi=()=>{let u=window;return!!(u.lottie||u.DotLottie)},Ui=()=>{let u=M();if(!u)return Pr({authoredDurationSeconds:null,clipEndsSeconds:[]});let h=it({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:!0});return h0(u,h,{unregisteredLottie:Bi()})},ao=null,Wi=()=>{if(Y)return Ui();let u=or();return ao?.revision!==u&&(ao={revision:u,result:Ui()}),ao.result},dl=u=>{window.__hf=window.__hf||{},window.__hf.durationSource={source:u.source,seconds:u.seconds,pendingClips:u.pendingClips},u.source==="derived"&&I("composition_duration_derived",{source:u.source,seconds:u.seconds,pendingClips:u.pendingClips},`composition_duration_derived:${u.seconds}`)},Vi=()=>{let u=Hi();return typeof u!="number"||!Number.isFinite(u)||u<=tn?null:u},$i=u=>He(u)?Math.max(tn,u*A):tn,so=(u=!1)=>{let h=0;for(let g of e.deterministicAdapters){let S=u?g.getAnimationCycleEndSeconds:g.getInferredDurationSeconds;if(typeof S!="function")continue;let w=null;try{w=S()}catch(T){G("runtime.init.adapterDuration",T)}typeof w=="number"&&Number.isFinite(w)&&w>0&&(h=Math.max(h,w))}return h>tn?h:null},Y=!1,ae=()=>Y&&window.__HF_EXPORT_RENDER_SEEK_CONFIG!=null,Ee=["data-start","data-duration","data-end","data-composition-id","data-composition-src","data-composition-file","data-root","data-hf-authored-duration","data-hf-authored-end","data-hf-auto-start",Na,"data-playback-rate","data-automation","data-playback-start","data-media-start","id","src"],Ye=["loadedmetadata","durationchange","emptied"],$e=null,Ft=-1,St=null,Dn=Number.NEGATIVE_INFINITY,we=null,Xe=0,Yt=new Map,rr=u=>{if(!we||Y)return Array.from(document.querySelectorAll(u));we.takeRecords().length>0&&Et();let h=Yt.get(u);if(h?.revision===Xe)return h.nodes;let g=Array.from(document.querySelectorAll(u));return Yt.set(u,{revision:Xe,nodes:g}),g},vt=()=>{},Et=()=>{Xe+=1,vt()},lo=()=>({media:Vi(),authoredComposition:Gi()}),fl=()=>{let u=window.__timelines??{},h="";for(let g of Object.keys(u)){let S=u[g];S&&(h+=`${g}=${Ue(S)??"?"};`)}return h},Mf=u=>{let h=u.target;pe(h)&&Ia(h)||Et()},NE=(u,h)=>{let g=we?.takeRecords()??[];h();let S=we?.takeRecords()??[];(g.length>0||S.some(w=>w.target!==u))&&Et()},FE=u=>{let h=we?.takeRecords()??[];u(),we?.takeRecords(),h.length>0&&Et()},kf=()=>{if(!(we||typeof MutationObserver>"u")){we=new MutationObserver(Et),we.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[...Ee,"data-width","data-height"]});for(let u of Ye)document.addEventListener(u,Mf,!0);s.push(()=>{we?.disconnect(),we=null,Et();for(let u of Ye)document.removeEventListener(u,Mf,!0)})}};R=!0;let or=()=>{kf(),we&&we.takeRecords().length>0&&Et();let u=Date.now();if(!p.isPlaying()||u-Dn>=lf){Dn=u;let h=fl();h!==St&&(St=h,Et())}return Xe},Lf=u=>Y?lo():(u??(u=or()),$e&&Ft===u||(Ft=u,$e=lo()),$e),tt=(u,h=0,g)=>{let S=null,w=g0({declared:Ge(M()?.getAttribute("data-duration")),timeline:()=>Ue(u),floors:()=>{let{media:T,authoredComposition:F}=Lf(g);return[T,F,so()]},fallback:h,derived:()=>(S=Wi(),S.seconds??0)});return S?dl(S):window.__hf?.durationSource&&delete window.__hf.durationSource,w},ml=new WeakMap,uo=u=>u.__hfReal??u,Nf=null,pl=()=>{let u=window.__timelines??{},h=ce=>{let se=Object.entries(u).filter(be=>!!be[1]&&typeof be[1].play=="function"&&typeof be[1].pause=="function");if(se.length!==1)return{timeline:null};let le=se[0];if(!le)return{timeline:null};let[ge,_e]=le;return{timeline:_e,selectedTimelineIds:[ge],selectedDurationSeconds:Ue(_e),diagnostics:{code:"root_timeline_sole_registered_fallback",details:{reason:ce,soleTimelineId:ge}}}},g=it({timelineRegistry:u,includeAuthoredTimingAttrs:!0}),{media:S,authoredComposition:w}=Lf(),T=Math.max(S??0,w??0)||null,F=$i(T),B=ce=>{let se=document.querySelector(`[data-composition-id="${CSS.escape(ce)}"]`);return se?g.resolveStartForElement(se,0):0},V=(ce,se)=>{let le=B(se.compositionId);ce.add(se.timeline,le),ml.set(uo(se.timeline),{hostId:se.compositionId,parent:ce,at:le})},O=(ce,se)=>{let le=uo(se.timeline),ge=ml.get(le);return ge&&ge.parent===ce&&le.parent===uo(ce)?ge:null},me=(ce,se)=>Math.abs(ce.at-B(se.compositionId))<1e-6,he=(ce,se)=>{let le=O(ce,se);!le||me(le,se)||V(ce,se)},De=ce=>{let se=window.gsap;if(!se||typeof se.timeline!="function")return null;let le=se.timeline({paused:!0});for(let ge of ce)V(le,ge);return bo(Ae(le,ce)),le},ye=(ce,se)=>{if(!He(ce))return null;let le=window.gsap;if(!le||typeof le.timeline!="function")return null;let ge=le.timeline({paused:!0});if(se){try{ge.add(se,0)}catch(be){G("runtime.init.site2",be)}bo(Ae(ge,[{timeline:se}]))}let _e=ge;if(typeof _e.to=="function")try{_e.to({},{duration:ce,data:Ao})}catch(be){G("runtime.init.site3",be)}return ge},Ae=(ce,se)=>{if(!ce||typeof ce.getChildren!="function")return[];try{let le=ce.getChildren(!0,!0,!0);return Array.isArray(le)?se.filter(ge=>le.includes(uo(ge.timeline))):[]}catch{return[]}},Dt=(ce,se)=>{let le=ce,ge={addedIds:[],nested:[]};if(typeof le.getChildren!="function")return ge;try{let _e=le.getChildren(!0,!0,!0)??[];if(!Array.isArray(_e))return ge;let be=[];for(let ne of se){if(_e.includes(uo(ne.timeline))){he(ce,ne);continue}try{V(ce,ne),be.push(ne.compositionId)}catch(Se){G("runtime.init.site4",Se)}}return{addedIds:be,nested:Ae(ce,se)}}catch{return ge}},rt=M(),Oe=rt?.getAttribute("data-composition-id")??null;if(!Oe)return h("root_missing_composition_id");let We=u[Oe]??null,qe=(()=>{if(!rt)return[];let ce=new Set,se=Array.from(rt.querySelectorAll("[data-composition-id]")),le=[];for(let ge of se){let _e=ge.getAttribute("data-composition-id");if(!_e||_e===Oe||ce.has(_e))continue;ce.add(_e);let be=u[_e]??null;if(!be||typeof be.play!="function"||typeof be.pause!="function")continue;let ne=Ue(be);le.push({compositionId:_e,timeline:be,durationSeconds:ne??0})}return le})(),bo=ce=>{for(let se of ce){let le=se.timeline;if(typeof le.paused=="function")try{le.paused(!1)}catch(ge){G("runtime.init.site5",ge)}}};if(We){let ce=qe.length>0?Dt(We,qe):{addedIds:[],nested:[]},se=ce.addedIds;if(bo(ce.nested),(qe.length>0||!document.querySelector("[data-composition-id]:not([data-composition-id='"+Oe+"'])"))&&(ir=!0),se.length>0)try{Do(We,We.time(),!1)}catch{}OI(We);let le=Ue(We);if(!He(le)&&qe.length>0){let be=qe.map(ht=>ht.compositionId),ne=De(qe),Se=Ue(ne);if(ne&&He(Se))return{timeline:ne,selectedTimelineIds:be,selectedDurationSeconds:Se,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_fallback",details:{rootCompositionId:Oe,rootDurationSeconds:le,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:F,selectedDurationSeconds:Se,mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:w,selectedTimelineIds:be,autoNestedChildren:se}}};let Le=ye(T??0,We),Ce=Ue(Le);if(Le&&He(Ce))return{timeline:Le,selectedTimelineIds:[Oe],selectedDurationSeconds:Ce,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Oe,rootDurationSeconds:le,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:w,selectedDurationSeconds:Ce,selectedTimelineIds:[Oe],autoNestedChildren:se}}}}if(!He(le)&&qe.length===0){let be=ye(T??0,We),ne=Ue(be);if(be&&He(ne))return{timeline:be,selectedTimelineIds:[Oe],selectedDurationSeconds:ne,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Oe,rootDurationSeconds:le,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:w,selectedDurationSeconds:ne,selectedTimelineIds:[Oe]}}}}let ge=Ge(rt?.getAttribute("data-duration")),_e=Math.max(He(ge)?ge:0,w??0);if(_e>0&&He(_e)&&He(le)&&_e>=le+.5){let be=We;if(typeof be.to=="function")try{be.to({},{duration:0,data:Ao},_e)}catch(Se){G("runtime.init.site6",Se)}let ne=Ue(We);if(He(ne))return{timeline:We,selectedTimelineIds:[Oe],selectedDurationSeconds:ne,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_padded_to_declared_duration",details:{rootCompositionId:Oe,rootDurationSeconds:le,rootDeclaredDur:ge,authoredCompositionDurationFloorSeconds:w,newDur:ne}}}}return{timeline:We,selectedTimelineIds:[Oe],selectedDurationSeconds:le,mediaDurationFloorSeconds:S,diagnostics:se.length>0?{code:"root_timeline_auto_nested_children",details:{rootCompositionId:Oe,selectedDurationSeconds:le,autoNestedChildren:se}}:void 0}}if(qe.length>0){let ce=qe.map(be=>be.compositionId),se=Nf,le=se?.size===qe.length&&He(Ue(se.timeline))&&qe.every(be=>{let ne=O(se.timeline,be);return ne!==null&&me(ne,be)})?se.timeline:null,ge=le??De(qe),_e=Ue(ge);if(ge)return le||(Nf={timeline:ge,size:qe.length}),{timeline:ge,selectedTimelineIds:ce,selectedDurationSeconds:_e,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_missing_fallback",details:{rootCompositionId:Oe,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:F,selectedDurationSeconds:_e,mediaDurationFloorSeconds:S,selectedTimelineIds:ce}}}}return h("root_composition_id_unmatched_in_registry")},ir=!1,IE=u=>{let h=window.gsap,g=u;if(!(!g||typeof g.getChildren!="function"||!h||typeof h.parseEase!="function"))for(let S of g.getChildren(!0,!0,!0)){let w=S,T=w.timeline;if(!T||!("_ease"in T)||typeof T._ease=="function")continue;let F=w.vars?.keyframes,V=(F&&!Array.isArray(F)?F.ease:void 0)??w.vars?.ease??"none";try{let O=h.parseEase(V);typeof O=="function"&&(T._ease=O)}catch(O){gt("keyframe_ease_repair_failed",{ease:typeof V=="string"?V:String(V)}),G("runtime.keyframeEase.repair",O)}}},ar=()=>{if(v(),!Ie)return!1;let u=e.capturedTimeline,h=Ue(u),g=He(h);if(u&&g&&ir)return!1;let S=pl();if(!S.timeline)return!1;if(u&&u===S.timeline)return typeof u.timeScale=="function"&&u.timeScale(e.playbackRate),!1;e.capturedTimeline=S.timeline,typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate),IE(e.capturedTimeline);let w=tt(e.capturedTimeline,0);if(w<=0&&typeof e.capturedTimeline.progress=="function"&&(e.capturedTimeline.progress(1,!0),e.capturedTimeline.progress(0,!1),Kt(e.capturedTimeline)),w>0){try{p.setDuration(w)}catch{}if(typeof e.capturedTimeline.totalTime=="function"){typeof e.capturedTimeline.progress=="function"&&e.capturedTimeline.progress(1e-4,!0);let B=Math.max(0,e.currentTime||0);e.capturedTimeline.totalTime(B,!1),Kt(e.capturedTimeline)}let F=window.__hfStudioManualEditsApply;typeof F=="function"&&F(),yi(document)}if(S.diagnostics&&ke({source:"hf-preview",type:"diagnostic",code:S.diagnostics.code,details:S.diagnostics.details}),ke({source:"hf-preview",type:"diagnostic",code:"timeline_bound",details:{selectedTimelineIds:S.selectedTimelineIds??[],selectedDurationSeconds:S.selectedDurationSeconds??null,mediaDurationFloorSeconds:S.mediaDurationFloorSeconds??null}}),t){let F=M(),B=w>0?w:0,V=String(B>0?B:1),O=new Set,me=ye=>ye.tagName.toLowerCase()===Mr,he=new Set(document.querySelectorAll("[data-start]")),De=ye=>{let Ae=ye.parentElement;for(;Ae&&Ae!==F;){if(he.has(Ae))return!0;Ae=Ae.parentElement}return!1};if(e.capturedTimeline.getChildren)try{for(let ye of e.capturedTimeline.getChildren(!0))if(typeof ye.targets=="function")for(let Ae of ye.targets())ve(Ae)&&Ae!==F&&(me(Ae)||Ae.hasAttribute("data-start")||De(Ae)||O.has(Ae)||(O.add(Ae),Ae.setAttribute("data-start","0"),Ae.setAttribute("data-duration",V),Ae.setAttribute(Ot,"1")))}catch{}if(ve(F))for(let ye of F.querySelectorAll("[id]"))ve(ye)&&ye!==F&&(ye.hasAttribute("data-start")||De(ye)||O.has(ye)||ye.tagName==="SCRIPT"||ye.tagName==="STYLE"||ye.tagName==="LINK"||me(ye)||(O.add(ye),ye.setAttribute("data-start","0"),ye.setAttribute("data-duration",V),ye.setAttribute(Ot,"1")))}let T=hl();for(let F of un)co.delete(F),gl(F,T);return!0},Ff=()=>{if(e.tornDown)return;let u=pl();if(!u.timeline){e.capturedTimeline=null,ir=!1,p.setDuration(0),On(e.currentTime);return}if(e.capturedTimeline!==u.timeline)ir=!1,ar();else{let h=tt(e.capturedTimeline,0);h>0&&h!==p.getDuration()&&(p.setDuration(h),ct())}On(e.currentTime)};r=()=>{Ff(),ct()},window.__hfForceTimelineRebind=Ff;let DE=()=>{let u=M();if(!ve(u))return;let h=u.getBoundingClientRect(),g=Xn(u.getAttribute("data-width")),S=Xn(u.getAttribute("data-height")),w=window.getComputedStyle(u),T=g!==null&&S!==null,F=h.width<=0||h.height<=0||u.clientWidth<=0||u.clientHeight<=0;!T||!F||I("root_stage_layout_zero",{compositionId:u.getAttribute("data-composition-id")??null,declaredWidth:g,declaredHeight:S,rectWidth:Math.round(h.width),rectHeight:Math.round(h.height),clientWidth:u.clientWidth,clientHeight:u.clientHeight,display:w.display,visibility:w.visibility,overflow:w.overflow},`root-stage-layout-zero:${u.getAttribute("data-composition-id")??"unknown"}`)},PE=()=>{e.tornDown||(d!=null&&window.cancelAnimationFrame(d),d=window.requestAnimationFrame(()=>{d=null,DE()}))},OE=()=>{a=u=>{let h=X(u.error??u.message).slice(0,q);if(!h)return;let g=Z(h);ke({source:"hf-preview",type:"diagnostic",code:g.code,details:{category:g.category,message:h,filename:u.filename||null,line:Number.isFinite(u.lineno)?u.lineno:null,column:Number.isFinite(u.colno)?u.colno:null}})},l=u=>{let h=X(u.reason).slice(0,q);if(!h)return;let g=Z(h);ke({source:"hf-preview",type:"diagnostic",code:`${g.code}_unhandled_rejection`,details:{category:`${g.category}-unhandled-rejection`,message:h}})},window.addEventListener("error",a),window.addEventListener("unhandledrejection",l)},If=new WeakSet,HE=()=>{let u=Array.from(document.querySelectorAll("img, video, audio, source, link[rel='stylesheet']"));for(let g of u){if(If.has(g))continue;If.add(g);let S=()=>{if(!Pe(g))return;let w=g.tagName.toLowerCase(),T=g.getAttribute("src")??g.getAttribute("href")??g.getAttribute("poster")??null,F=w==="link"?"runtime_stylesheet_load_failed":"runtime_asset_load_failed";I(F,{tagName:w,assetUrl:T,currentSrc:(Je(g)||pe(g))&&g.currentSrc||null,readyState:pe(g)?g.readyState:null,networkState:pe(g)?g.networkState:null},`${F}:${w}:${T??"unknown"}`)};g.addEventListener("error",S),H(()=>{g.removeEventListener("error",S)})}let h=document.fonts;h&&h.ready.then(()=>{if(e.tornDown)return;let g=Array.from(h).filter(S=>S.status==="error").map(S=>S.family).filter(S=>!!S).slice(0,10);g.length!==0&&I("runtime_font_load_issue",{failedFamilies:g,totalFaces:Array.from(h).length},`runtime-font-load-issue:${g.join("|")}`)}).catch(()=>{})},GE=(u,h)=>{if(!u.timeline)return!1;let g=e.capturedTimeline;if(g&&g===u.timeline)return!1;let S=Math.max(0,e.currentTime||0);e.capturedTimeline=u.timeline,typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate);try{Kt(e.capturedTimeline),typeof e.capturedTimeline.seek=="function"&&Do(e.capturedTimeline,S,!1)}catch(w){G("runtime.init.site7",w)}return ke({source:"hf-preview",type:"diagnostic",code:"timeline_loop_guard_rebind",details:{reason:h,previousTime:S,selectedTimelineIds:u.selectedTimelineIds??[],selectedDurationSeconds:u.selectedDurationSeconds??null,mediaDurationFloorSeconds:u.mediaDurationFloorSeconds??null}}),!0},Pn=null,Df=!1,un=new Set,co=new WeakMap,hl=()=>{let u;return()=>u??(u=Eu(e.capturedTimeline??{}))},qi=()=>{e.tornDown||(Pn!=null&&window.clearTimeout(Pn),Pn=window.setTimeout(()=>{if(e.tornDown||(Pn=null,ae()))return;let u=pl();if(!u.timeline||!He(u.mediaDurationFloorSeconds??null))return;if(!e.capturedTimeline){ar()&&(ct(),nt(!0));return}if(Df)return;let g=Ue(e.capturedTimeline),S=u.selectedDurationSeconds??Ue(u.timeline);He(S)&&(!He(g)||S>=g+L)&&GE(u,"manual")&&(Df=!0,ke({source:"hf-preview",type:"diagnostic",code:"timeline_rebind_after_media_metadata",details:{previousDurationSeconds:g??null,selectedDurationSeconds:S??null,selectedTimelineIds:u.selectedTimelineIds??[],mediaDurationFloorSeconds:u.mediaDurationFloorSeconds??null}}),ct(),nt(!0))},P))},Pf=u=>{pe(u.currentTarget)&&Ag(u.currentTarget)},Of=u=>{let h=u.currentTarget;e.tornDown||p.isPlaying()||!pe(h)||$o(h)||(cn=null,e.mediaForceSyncNextTick=!0,ut())},Hf=u=>{pe(u.currentTarget)&&wg(u.currentTarget)},Gf=u=>{xf(u)&&bv(u)&&no(u,to(u))},Bf=u=>{let h=u.currentTarget;pe(h)&&Gf(h)},Uf=u=>{u.removeEventListener("loadedmetadata",qi),u.removeEventListener("durationchange",qi),u.removeEventListener("loadedmetadata",Pf),u.removeEventListener("loadedmetadata",Of),u.removeEventListener("loadedmetadata",Bf),u.removeEventListener("error",Hf),un.delete(u)},BE=()=>{for(let u of un)Uf(u)},UE=()=>{for(let u of un)u.isConnected||(Uf(u),u.pause(),uu(u))},Wf=u=>{let h=Number.parseFloat(u.dataset.volume??"");return Number.isFinite(h)?Math.max(0,Math.min(1,h)):null},zi=()=>{if(e.tornDown)return;let u=Array.from(document.querySelectorAll("video, audio")),h=[],g=hl();for(let S of u){if(un.has(S))continue;un.add(S);let w=Wf(S);w!==null&&(S.volume=w),S.addEventListener("loadedmetadata",qi),S.addEventListener("durationchange",qi),S.addEventListener("loadedmetadata",Bf),Gf(S),S.addEventListener("loadedmetadata",Pf),S.addEventListener("loadedmetadata",Of),S.addEventListener("error",Hf),Eg(S),El(S)?h.push(S):Fa(S),gl(S,g)}h.length>0&&On(e.currentTime,h)},gl=(u,h)=>{co.has(u)||jh(u,e.capturedTimeline,tt(e.capturedTimeline,0),co,{allowLiveTimelineSeek:!window.__HF_RENDER_CAPTURE_MODE,...h&&{movers:h}})},bl=new WeakMap,WE=u=>{let h=bl.get(u);if(h!==void 0)return h;let g=window.getComputedStyle(u).position,S=g==="static"||g==="relative"||g==="sticky";return bl.set(u,S),S},xl=new WeakMap,VE=u=>{let h=xl.get(u);if(h!==void 0)return h;let g=u.querySelector("[data-start]")===null;return xl.set(u,g),g},$E=()=>{bl=new WeakMap,xl=new WeakMap},ji=new WeakMap,Vf=(u,h)=>{if(!ji.has(u)){let g=u.style.getPropertyValue("display"),S=u.style.getPropertyPriority("display"),w=h&&g==="none"&&!S;ji.set(u,w?{value:"",priority:""}:{value:g,priority:S})}u.style.display="none"},$f=u=>{let h=ji.get(u);h&&(ji.delete(u),h.value?u.style.setProperty("display",h.value,h.priority):u.style.removeProperty("display"))},Ki=new WeakSet,Yi=!1,qf=u=>pe(u)&&u.hasAttribute("data-start")&&(xf(u)||x.routesElement(u)),zf=u=>qf(u)||Array.from(u.querySelectorAll(jv)).some(qf),jf=new WeakMap,qE=(u,h)=>{for(let g of gf(document)){if(Ya(g)!==u||x.routesElement(g)||y(g))continue;let S=ue(g),w=Ge(g.dataset.duration),T=w!=null&&w>0?S+w:1/0;if(Number.isFinite(S)&&h<T)return!0}return!1},zE=u=>{let h=!1;for(let g of rr(Mr)){let S=g.hasAttribute("data-hidden"),w=jf.get(g);w!==S&&(jf.set(g,S),g.id&&(x.setGroupMuted(g.id,S),w&&!S&&qE(g.id,u)&&(h=!0)))}return h},Kf=u=>{let h=tt(e.capturedTimeline,0,u);return(g,S)=>us(g,{currentTime:S,compositionDuration:h,canonicalFps:e.canonicalFps,exportRenderSeek:!!window.__HF_EXPORT_RENDER_SEEK_CONFIG,timelineRegistry:window.__timelines??{},resolver:z(!0)})},Yf=(u,h,g,S)=>{for(let w=u;w&&w!==S;w=w.parentElement)if(fr(w)&&w.hasAttribute("data-start")&&!g(w,h))return!1;return!0},yl=Eo(),Sl=2,Xi=4,vl=(u,h,g,S=Sl)=>{let w=pe(u)?ue(u):re(u,Number.NaN),T=w+(oe(u)??Number.NaN);return w>g&&w<=g+S||T<=g&&T>=g-S||h(u,g+S)},sr=null,El=u=>yl&&u.hasAttribute("data-start")&&Ia(u),fo=new WeakMap,Al=new WeakMap,mo=new WeakSet,Xf=u=>u.parentElement?.closest("[data-composition-id]"),jE=u=>{let h=Hr(u,Number.NaN),g=Qi(Array.from(un).filter(T=>T.isConnected&&Hr(T,Number.NaN)===h&&Xf(T)===Xf(u))).mediaClips,S=g.find(T=>T.el===u)?.end??Number.NaN,w;for(let T of g)T.el!==u&&T.start>=S-Fo(S)&&!(w&&w.start<=T.start)&&(w=T);!w||!El(w.el)||(Al.set(w.el,u),fo.get(w.el)!==!0&&(fo.set(w.el,!0),Fa(w.el)))},KE=(u,h,g)=>{let S=p.isPlaying();h&&S?mo.has(u)||(mo.add(u),jE(u)):mo.delete(u);let w=Al.get(u),T=h||g||w!==void 0&&mo.has(w),F=fo.get(u);F!==T&&(fo.set(u,T),T?(!h||F===void 0)&&Fa(u):u.preload!=="none"&&(u.preload="none",F&&NE(u,()=>$p(u))))},YE=(u,h,g)=>fo.get(u)===!0&&vl(u,h,g,Xi)||sr!==null&&p.isPlaying()&&(h(u,sr)||vl(u,h,sr,Xi)),Jf=new WeakMap,wl=new Map,Qf=-1,XE=Xi+Sl+1,JE=1,QE=(u,h,g)=>{let S=g(u);if(!S||!Number.isFinite(S.start))return null;let w=[];for(let T of[0,Sl,Xi])w.push(S.start-T,S.end-T,S.end+T);for(let T=u.parentElement;T&&T!==h;T=T.parentElement){if(!T.hasAttribute("data-start"))continue;let F=g(T);if(!F||!Number.isFinite(F.start))return null;w.push(F.start,F.end)}return w.filter(T=>Number.isFinite(T))},ZE=(u,h,g,S)=>{if(!g||!(Math.abs(h-u)<=JE))return null;if(Qf!==S)return wl.clear(),Qf=S,null;let w={timelineRegistry:window.__timelines??{},resolver:z(!0)},T=V=>dc(V,w),F=Math.min(u,h),B=Math.max(u,h);return V=>{let O=Jf.get(V);if(O===void 0||pe(V)&&(Al.has(V)||mo.has(V))||!V.hasAttribute(Ot)&&V.style.visibility!==(O?"visible":"hidden"))return!1;let me=wl.get(V);if(me===void 0&&(me=QE(V,g,T),wl.set(V,me)),!me)return!1;for(let he of me)if(he>=F&&he<=B||sr!==null&&Math.abs(he-sr)<=XE)return!1;return!0}},eA=(u,h,g,S)=>{let w=M(),T=!1,F=Kf(g),B=S===void 0||g===void 0?null:ZE(S,u,w,g);for(let O of h){if(!fr(O))continue;if(O.hasAttribute("data-hidden")){Ki.has(O)||(Ki.add(O),zf(O)&&(Yi=!0)),Vf(O,!1),(Me(O)||Je(O))&&i?.setSourceVisibility(O,!1);continue}if(Ki.has(O)&&($f(O),Ki.delete(O),zf(O)&&(Yi=!0)),B?.(O))continue;let me=F(O,u)&&Yf(O.parentElement,u,F,w);Jf.set(O,me);let he=n(O);he||(O.style.visibility=me?"visible":"hidden"),O.toggleAttribute(Vn,!he&&!me);let De=yl&&!me&&vl(O,F,u);De&&!O.hasAttribute(Wn)&&Vv(O),O.toggleAttribute(Wn,De),pe(O)&&un.has(O)&&El(O)&&KE(O,me,De||YE(O,F,u)),!pe(O)&&!Je(O)&&(T=!0),(Me(O)||Je(O))&&i?.setSourceVisibility(O,me),me?$f(O):WE(O)&&VE(O)&&Vf(O,!0)}T&&np()&&i?.refresh();let V=zE(u);if((Yi||V)&&p.isPlaying()){x.stopAll();for(let O of gf(document))y(O)&&(O.volume=0);Ol()}Yi=!1},On=(u,h=rr("[data-start]"),g,S)=>U(()=>eA(u,h,g,S)),tA=u=>U(()=>{if(!yl)return[];let h=M(),g=Kf();return Array.from(document.images).filter(S=>S.closest(`[data-start]:not([${Ot}])[style*="visibility: hidden"]`)!==null&&(S.closest(vo)!==null||!S.complete)&&Yf(S,u,g,h))}),po=null,cn=null,Ji=[],Zf=u=>u.hasAttribute("data-start")||!!ie(u).compositionRoot,Qi=u=>sg({elements:u,shouldIncludeElement:Zf,resolveStartSeconds:h=>ue(h),resolveDurationSeconds:h=>{let g=ie(h),S=ue(h),w=g.inheritedStart!=null&&g.inheritedDuration!=null&&g.inheritedDuration>0?Math.max(0,g.inheritedStart+g.inheritedDuration-S):null,T=Number.isFinite(h.duration)?Bt(h,h.duration):null,F=Ge(h.dataset.duration),B=F!=null&&F>0?F:null;return ag({isVideo:h.tagName==="VIDEO",sourceDuration:T,hostRemaining:w,explicitDuration:B})},resolveHostSlots:te}),nA=(u=or())=>{if(po&&po.revision===u)return po;let h=Qi().mediaClips;return po={revision:u,clips:h,byStart:[...h].sort((g,S)=>g.start-S.start),byEnd:[...h].sort((g,S)=>g.end-S.end)},cn=null,Ji=[],po},_l=(u,h,g,S)=>{let w=0,T=u.length;for(;w<T;){let B=w+T>>1;h(u[B])<g?w=B+1:T=B}let F=[];for(let B=w;B<u.length&&h(u[B])<=S;B+=1)F.push(u[B]);return F},rA=(u,h,g)=>{let S=cn;if(S===null)return u.clips.map(V=>V.el);let w=2*Fo(Math.max(Math.abs(S),Math.abs(h))),T=Math.min(S,h)-w,F=Math.max(S,h)+w,B=new Set;for(let V of Ji)B.add(V.el);for(let V of _l(u.byStart,O=>O.start,T,F+g))B.add(V.el);for(let V of _l(u.byEnd,O=>O.end,T,F))B.add(V.el);if(e.isPlaying&&!window.__HF_EXPORT_RENDER_SEEK_CONFIG)for(let V of _l(u.byStart,O=>O.start,h,h+Du*e.playbackRate))V.el.tagName==="VIDEO"&&B.add(V.el);return[...B]},Zi=new WeakSet,em=u=>{Zi.add(u)},tm=u=>{Zi.delete(u),vt()};window.__hf.leasePausedMedia=em,window.__hf.releasePausedMedia=tm,window.__hf.setLoopStart=u=>{sr=u!=null&&Number.isFinite(u)&&u>=0?u:null};let oA=u=>{let h=ml.get(u)?.hostId,g=h?document.querySelector(`[data-composition-id="${CSS.escape(h)}"]`):null,S=g?oe(g):null;return g&&S?re(g,0)+S:1/0},nm=u=>{let h=0;for(let g of u){if(g.data===Ao)continue;let S=g.getChildren?g:g.timeline,w=Number(g.duration?.())/Number(S?.duration?.()),T=S?.getChildren?nm(S.getChildren(!1,!0,!0))*(Number.isFinite(w)&&w>0?w:1):Number(g.duration?.())||0,F=Math.abs(Number(g.timeScale?.())||1),B=(Number(g.startTime?.())||0)+T/F;B>=Or||(h=Math.max(h,Math.min(B,oA(g))))}return h};window.__hf.animationEnd=()=>{let u=e.capturedTimeline,h=u?.getChildren?nm(u.getChildren(!1,!0,!0)):Ue(u)??0,g=Math.max(h,so(!0)??0);return g>0&&g<Or?g:null},window.__hf.audioMeter={start:()=>x.startMetering(),stop:()=>x.stopMetering(),read:()=>x.readLevels()};let iA=()=>{for(let u of document.querySelectorAll("video, audio"))if(pe(u)&&!u.paused&&Zf(u)&&!Zi.has(u))return!0;return!1},rm=()=>vt();document.addEventListener("play",rm,!0),s.push(()=>{document.removeEventListener("play",rm,!0)});let Cl=null,ut=u=>{let h=!Y,g=e.isPlaying&&!e.mediaForceSyncNextTick&&cn!==null?Math.min(Math.max(0,e.currentTime-cn),xn*Math.min(1,e.playbackRate)):0,S=U(()=>{if(!h)return Qi().mediaClips;let B=nA(u);return Qi(rA(B,e.currentTime,g)).mediaClips});for(let B of S){let V=co.get(B.el);V&&(B.volumeKeyframes=V)}let w=e.isPlaying?S:S.filter(B=>!Zi.has(B.el)),T=e.mediaForceSyncNextTick;T&&(e.mediaForceSyncNextTick=!1),e.nativeMediaSyncDisabled||(lg({clips:w,timeSeconds:e.currentTime,playing:e.isPlaying,playbackRate:e.playbackRate,outputMuted:e.mediaOutputMuted,userMuted:e.bridgeMuted,userVolume:e.bridgeVolume,forceSync:T,cueAheadSeconds:g,getCompositionDuration:()=>tt(e.capturedTimeline,0,u),onElementVolume:(B,V,O,me)=>x.setElementVolume(B,O,me),isWebAudioOwned:B=>x.ownsElement(B),isWebAudioRouted:B=>x.routesElement(B),onAutoplayBlocked:()=>{e.mediaAutoplayBlockedPosted||(e.mediaAutoplayBlockedPosted=!0,ke({source:"hf-preview",type:"media-autoplay-blocked"}))}}),h?(cn=e.currentTime,Ji=S.filter(B=>bn(e.currentTime,B.start-xn,B.end))):(cn=null,Ji=[]));let F=h&&e.isPlaying&&!T&&Cl!==null?Cl:void 0;On(e.currentTime,void 0,u,F),Cl=e.currentTime},nt=u=>{u&&vt(),u&&Rl&&!p.isPlaying()&&ct();let h=Math.max(0,Math.round((e.currentTime||0)*e.canonicalFps)),g=Date.now();(u||h!==e.bridgeLastPostedFrame||e.isPlaying!==e.bridgeLastPostedPlaying||e.bridgeMuted!==e.bridgeLastPostedMuted||g-e.bridgeLastPostedAt>=e.bridgeMaxPostIntervalMs)&&(e.bridgeLastPostedFrame=h,e.bridgeLastPostedPlaying=e.isPlaying,e.bridgeLastPostedMuted=e.bridgeMuted,e.bridgeLastPostedAt=g,ke({source:"hf-preview",type:"state",frame:h,currentTime:e.currentTime||0,ended:p.reachedEnd(),isPlaying:e.isPlaying,muted:e.bridgeMuted,playbackRate:e.playbackRate}))},Tl="",om=!1,im=!1,am=0,sm="",aA=()=>{let u="";for(let h of document.querySelectorAll("[data-start]"))u+=`${h.id}:${h.tagName}|`;return u},Rl=!1,ea=!1,Ml=!1,sA=()=>{Ml||(Ml=!0,Ah().then(()=>window.requestAnimationFrame(()=>setTimeout(()=>{Ml=!1,ea=!1,e.tornDown||ct()}))))},ct=()=>{W(),j(),N();let u=M();if(u){let{width:S,height:w}=f0(u);S!==null&&w!==null&&ke({source:"hf-preview",type:"stage-size",width:S,height:w})}if(ar(),Rl=p.isPlaying(),Rl)return;if(ea&&!Y&&wh())return sA();ea=!1;let h=fc({canonicalFps:e.canonicalFps});window.__clipManifest=h,sm=JSON.stringify(h);let g=aA();if(Tl!==g&&$E(),!window.__clipTree||Tl!==g){let S=window;window.__clipTree=u0({startResolver:it({timelineRegistry:S.__timelines??{},includeAuthoredTimingAttrs:!0}),timelineRegistry:S.__timelines??{},rootDuration:h.durationInFrames/e.canonicalFps}),Tl=g}ke({...h,assetsReady:im}),om||(om=!0,Nv(document,({timedOut:S})=>{e.tornDown||(im=!0,ke({source:"hf-preview",type:"assets-ready",timedOut:S}))})),PE()},lA=()=>{JSON.stringify(fc({canonicalFps:e.canonicalFps}))!==sm&&ct()},kl=u=>typeof u=="number"&&Number.isFinite(u)&&u>0?u:0,uA=u=>{let h=kl(Number(u));if(h<=0)return;let g=M(),S=kl(Ge(g?.getAttribute("data-duration"))),w=Math.max(am,kl(p.getDuration()),S);h<=w||(am=h,g?.setAttribute("data-duration",String(h)),p.setDuration(h),ct(),nt(!0))},pt=(u,h=0,g)=>{for(let S of e.deterministicAdapters){try{u==="discover"&&S.discover(),u==="pause"&&S.pause({pageAnimations:g}),u==="play"&&S.play&&S.play()}catch(w){G("runtime.init.site8",w)}if(u==="discover")try{S.seek({time:h,suppressEvents:!0})}catch(w){G("runtime.init.site9",w)}}},Hn=()=>{window.__renderReady=!1},cA=Uv(()=>{let u=[];for(let h of e.deterministicAdapters){let g=h.getReadyPromise;if(typeof g=="function")try{let S=g();S&&u.push(S)}catch(S){G("runtime.init.adapterReady",S)}}return u},()=>Hn(),u=>G("runtime.init.adapterReady",u)),dA=Uv(()=>{let u=window.__hf?.buildReady;return u?Object.values(u).filter(h=>h!=null&&typeof h.then=="function"):[]},()=>Hn(),u=>G("runtime.init.buildReady",u));function Ll(){let u=M();u&&YS({root:u,fps:e.canonicalFps,durationSeconds:()=>tt(e.capturedTimeline,0)||Number(u.getAttribute("data-duration"))||0,timeline:()=>e.capturedTimeline,now:()=>Math.max(0,e.currentTime||0),seek:(h,g)=>{Mm(e.capturedTimeline,h,{suppressEvents:g})},ignoreMutations:FE})}let fA=()=>{zi(),HE();let u=sd();return Is(document),qs(document.body,e.canonicalFps),Ll(),u};if(Ie)sd();else{let u={injectedStyles:e.injectedCompStyles,injectedScripts:e.injectedCompScripts,injectedLinks:e.injectedCompLinks,parseDimensionPx:J,onDiagnostic:({code:h,details:g})=>{ke({source:"hf-preview",type:"diagnostic",code:h,details:g})}};Nx(u).finally(()=>{Ie=!0,fA(),Hn()})}let lm=u=>{let h=new Set,g=S=>{for(let w of(S??"").matchAll(/url\(\s*(['"]?)(.*?)\1\s*\)|@import\s+(['"])(.*?)\3/gi))h.add(w[2]??w[4]);for(let w of(S??"").matchAll(/image-set\((?:[^()]|\([^()]*\))*\)/gi))for(let T of w[0].matchAll(/(['"])(.*?)\1/g))h.add(T[2])};for(let S of u)if(S.tagName==="STYLE"&&g(S.textContent),!(S.tagName==="STYLE"||S.tagName==="SCRIPT"))for(let w of[S,...S.querySelectorAll("*")]){let T=WI.get(w.localName)??[],F=[jx(w),...[...T,"poster","srcset"].map(B=>w.getAttribute(B))];for(let B of F)B&&h.add(B);g(w.getAttribute("style"))}return h},Nl=0,mA=(u,h,g)=>{let S=new Map;for(let w of g?u.querySelectorAll("video, audio"):[]){let T=Di.get(w);if(!T||i?.isGraded(w))continue;let{srcObject:F,sinkId:B,mediaKeys:V}=w;F||B||V||S.set(T,[...S.get(T)??[],w])}for(let w of h.querySelectorAll("video, audio")){let T=yf(w),F=S.get(T)?.shift();if(!F||Wv(F)!==Wv(w)){Di.set(w,T);continue}w.replaceWith(F),window.gsap?.set?.(F,{clearProps:"all"});let B=w.getAttribute("style");B===null?F.removeAttribute("style"):F.setAttribute("style",B),Vx(F);let V=F;V.volume=Wf(V)??1,V.muted=e.bridgeMuted||e.mediaOutputMuted||V.defaultMuted,V.defaultPlaybackRate=1,V.playbackRate=e.playbackRate,V.preservesPitch=!0}},um=u=>[u,...u.querySelectorAll("[data-composition-id]")].flatMap(h=>h.getAttribute("data-composition-id")||[]),pA=(u,h,g,S)=>{let w=new Set(um(h).flatMap(B=>[g[B],...S[B]??[]])),T=new Set([h,...h.querySelectorAll("*")]);for(let B of window.gsap?.globalTimeline?.getChildren?.(!0,!0,!1)??[]){if(!B.targets?.().some(O=>T.has(O)))continue;let V=B;for(;V&&!w.has(V);)V=V.parent;if(!V)throw new Error(`scene ${u} cannot be swapped: an animation outside it moves its elements`)}let F=B=>typeof B?.nodeType=="number"&&!T.has(B);for(let B of w)for(let V of B?[B,...B.getChildren?.(!0,!0,!1)??[]]:[])if(V.targets?.().some(F))throw new Error(`scene ${u} cannot be swapped: its animations write outside the scene`)},hA=u=>{let h=F=>Array.from(F.querySelectorAll(`style[${Vc}]`)),g=h(document),S=new Set(g.flatMap(F=>$c(F.textContent??""))),w=new Set(h(u).flatMap(F=>$c(F.textContent??"")).filter(F=>!S.has(F)));if(w.size===0)return;let T=document.createElement("style");T.setAttribute(Vc,""),T.textContent=[...w].join(`
|
|
1121
|
+
`),g.length>0?g.at(-1).after(T):document.head.prepend(T)},gA=async(u,h)=>{let g=Nl,S=new DOMParser().parseFromString(u,"text/html"),w=Ii(document),T=Ii(S);if(!w||!T)throw new Error("no scene manifest");if(w.shared!==T.shared)throw new Error("the film changed outside its scenes");let F=Object.keys(T.scenes);if(F.length!==Object.keys(w.scenes).length||F.some(ne=>!(ne in w.scenes)))throw new Error("scenes were added or removed");let B=F.filter(ne=>T.scenes[ne]!==w.scenes[ne]);if(B.length===0)throw new Error("no scene changed");let V=B.map(ne=>{let Se=Pt=>Array.from(Pt.querySelectorAll(`[${Wc}="${CSS.escape(ne)}"]`)),Le=Pt=>Pt.tagName!=="STYLE"&&Pt.tagName!=="SCRIPT",Ce=Se(document),ht=Se(S),wt=Ce.filter(Le),Bn=ht.filter(Le),ot=wt[0],mn=Bn[0];if(!ot||!mn||wt.length>1||Bn.length>1)throw new Error(`scene ${ne} cannot be swapped: it has no single host`);if(ot.hasAttribute("data-hf-original-composition-id"))throw new Error(`scene ${ne} cannot be swapped: it is a duplicated instance`);let Gm=ot.getAttribute(qc)??mn.getAttribute(qc);if(Gm!==null)throw new Error(`scene ${ne} cannot be swapped: ${Gm}`);let NA=lm(Ce);if([...lm(ht)].some(Pt=>!NA.has(Pt)))throw new Error(`scene ${ne} cannot be swapped: it loads media this scene has not loaded`);let Bm=Pt=>Pt.filter(FA=>FA.tagName==="STYLE").length;if(Bm(Ce)!==Bm(ht))throw new Error(`scene ${ne} cannot be swapped: its styles moved`);return{name:ne,oldParts:Ce,homes:Ce.map(Pt=>Pt.parentNode),newParts:ht,oldHost:ot,newHost:mn}}),O=()=>{let ne=M(),Se=new Set;for(let Le of document.querySelectorAll(`[${Wc}]`)){if(Le.tagName==="STYLE"||Le.tagName==="SCRIPT")continue;let Ce=Le.parentElement;for(;Ce;Ce=Ce===ne?null:Ce.parentElement)Se.add(Ce)}return[...Se].flatMap(Le=>[Le,...Array.from(Le.children).filter(Ce=>!Ce.hasAttribute("data-hf-ignore")),null])},me=O(),he=V.some(({newHost:ne})=>ne.querySelector(".caption-group"))?await Ox():[];if(e.tornDown)throw new Error("the preview was torn down during the swap");if(h?.aborted)throw new Error("the swap was cancelled");if(g!==Nl)throw new Error("the preview changed while this swap waited");let De=()=>{let ne=({oldParts:Ce,homes:ht})=>Ce.some((wt,Bn)=>!wt.isConnected||wt.parentNode!==ht[Bn]),Se=O();if(Se.length!==me.length||Se.some((Ce,ht)=>Ce!==me[ht])||V.some(ne))throw new Error("a scene changed while this swap waited")};De();let ye=()=>window.__timelines??(window.__timelines={}),Ae=()=>window.__hfSceneAnimations??(window.__hfSceneAnimations={}),Dt=()=>{for(let{name:ne,oldHost:Se}of V)pA(ne,Se,ye(),Ae())};Dt(),Nl+=1;let rt=e.capturedTimeline,Oe=[],We=[],Gl=V.flatMap(({oldHost:ne})=>um(ne)),qe=new Set,bo=()=>{let ne=qe.size;for(let Se of Gl)for(let Le of[...(Ae()[Se]??[]).slice().reverse(),ye()[Se]]){if(!Le||qe.has(Le))continue;qe.add(Le);let Ce=Le;Ce.revert?Ce.revert():Ce.totalTime?.(0,!0),rt?.remove?.(Le),Ce.revert||Ce.kill?.()}return qe.size>ne},ce=0;for(;bo();)if(++ce>8)throw new Error("the old scene keeps starting animations as they stop");De(),Dt();for(let ne of Gl)delete ye()[ne],delete Ae()[ne];x.stopAll(),p.detachAudioSource();for(let{oldParts:ne,newParts:Se,oldHost:Le,newHost:Ce}of V){let ht=Se.filter(ot=>ot.tagName==="STYLE");ne.filter(ot=>ot.tagName==="STYLE").forEach((ot,mn)=>ot.replaceWith(document.importNode(ht[mn],!0)));for(let ot of ne)ot!==Le&&ot.remove();let wt=document.importNode(Ce,!0),Bn=ot=>JSON.stringify(ot.flatMap(mn=>mn.tagName==="SCRIPT"?mn.textContent:[]));mA(Le,wt,Bn(ne)===Bn(Se)),Le.replaceWith(wt),We.push(wt),wt.querySelector(".caption-group")&&Oe.push(wt)}hA(S),cr();let se=V.flatMap(({newParts:ne})=>ne.filter(Se=>Se.tagName==="SCRIPT").map(Se=>document.body.appendChild(document.importNode(Se,!0))));if(await Rs(se),e.tornDown)throw new Error("the preview was torn down during the swap");document.querySelector(`meta[name="${bi}"]`)?.setAttribute("content",JSON.stringify(T));for(let ne of We)Is(document,ne);zi();let le=()=>{for(let ne of Oe)for(let Se of[ne,...ne.querySelectorAll("[data-composition-id]")]){let Le=Se.getAttribute("data-composition-id");Le&&window.__timelines?.[Le]?.totalTime?.(0,!0)}};qs(document.body,e.canonicalFps),Ll(),ld(he,Oe,le),UE(),ir=!1,ar();let ge=hl();for(let ne of We)for(let Se of ne.querySelectorAll("video, audio"))co.delete(Se),gl(Se,ge);let _e=tt(e.capturedTimeline,0);_e>0&&p.setDuration(_e),pt("discover",e.currentTime),yi(document);let be=p.isPlaying()&&_e>0&&e.currentTime>=_e;na.seek(be?_e:e.currentTime,{keepPlaying:!be}),On(e.currentTime),ct()};Ii(document)&&(window.__hfSwapScenes=gA,H(()=>{delete window.__hfSwapScenes}));let ta=a0({postMessage:u=>ke(u)});ta.installPickerApi(),On(e.currentTime,Array.from(document.querySelectorAll("video[data-start], img[data-start]")));let It=Ly({lease:em,release:tm});i=It,H(()=>{It.destroy(),i=null}),qs(document.body,e.canonicalFps),Ll();let Fl=u=>{let h=Number(u);!Number.isFinite(h)||h<=0?e.playbackRate=1:e.playbackRate=Math.max(.1,Math.min(5,h)),e.mediaForceSyncNextTick=!0,e.capturedTimeline&&typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate);let g=document.querySelectorAll("video, audio");for(let S of g)if(pe(S))try{S.playbackRate=e.playbackRate}catch(w){G("runtime.init.site10",w)}},bA=1e3,dn=null,cm=()=>{let u=dn;dn=null,u?.apply()},dm=(u,h)=>{x.stopAll(),p.detachAudioSource();let g=p.isPlaying();g&&p.pause(),p.seek(u),e.currentTime=p.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0;let S=h?.keepPlaying&&g;ea=!S,S||ut();let w=e.capturedTimeline;Kt(w);let T=Gn(e.currentTime);if(pt("pause",0,T),S){na.play();return}It.redraw(),Od(e.currentTime);let F=Xr(e.currentTime);F&<(F),nt(!0)},na={play:()=>{cm();let u=e.capturedTimeline;if(p.isPlaying())return;let h=tt(u,0);if(h>0){if(p.setDuration(h),p.reachedEnd()){let g=p.getPlayStart();p.seek(g),e.currentTime=g,Gn(g)}}else{let g=M(),S=Number(g?.getAttribute("data-duration")??0);S>0&&p.setDuration(S)}Kt(u),p.play()&&(e.isPlaying=!0,e.mediaForceSyncNextTick=!0,Om(p.now()),b&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&Ol(),pt("play"),ut(),It.redraw(),nt(!0))},pause:()=>{if(!p.isPlaying())return;x.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1,e.currentTime=p.now(),e.mediaForceSyncNextTick=!0,Om(e.currentTime);let u=e.capturedTimeline;Kt(u),pt("pause"),ut(),It.redraw(),Xr(e.currentTime),nt(!0)},seek:(u,h)=>{let g=vu(Math.max(0,Number(u)||0),e.canonicalFps);dn=null;let S=p.isPlaying()?[]:tA(g);if(S.length===0){dm(g,h);return}let w={time:g,apply:()=>dm(g,h)};dn=w;for(let O of S){Vv(O);for(let me=O.closest(vo);me;me=O.closest(vo))me.setAttribute(Wn,"")}let T=0,F=new Promise(O=>{T=window.setTimeout(()=>{dn===w&&G("runtime.init.seekHoldCap",S),O()},bA)}),B=Promise.all(S.map(O=>O.decode?O.decode().catch(()=>{}):void 0)),V=Promise.race([B,F]).then(()=>{window.clearTimeout(T),dn===w&&cm()});return lt(V),V},renderSeek:(u,h)=>{dn=null,Y=!0;let g=ss(Math.max(0,Number(u)||0),e.canonicalFps,h);x.stopAll(),p.detachAudioSource(),p.isPlaying()&&p.pause(),p.seek(g),e.currentTime=p.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0;let S=Gn(e.currentTime,{activateChildren:!0,suppressEvents:h?.suppressEvents});pt("pause",0,S),ut(),It.redraw(),Od(e.currentTime,{engineMode:!0});let w=Xr(e.currentTime,{engineMode:!0});w&<(w),nt(!0)},getTime:()=>dn?.time??p.now(),getDuration:()=>{let u=p.getDuration();return Number.isFinite(u)?u:0},isPlaying:()=>p.isPlaying(),setPlaybackRate:u=>{Fl(u),p.setRate(e.playbackRate),Hm()},getPlaybackRate:()=>e.playbackRate},fm=tt(e.capturedTimeline,0);fm>0&&p.setDuration(fm);let At=l0({getTimeline:()=>e.capturedTimeline,setTimeline:u=>{e.capturedTimeline=u},getTimelineRegistry:()=>window.__timelines??{},getIsPlaying:()=>e.isPlaying,setIsPlaying:u=>{e.isPlaying!==u&&(e.mediaForceSyncNextTick=!0),e.isPlaying=u},getPlaybackRate:()=>e.playbackRate,setPlaybackRate:Fl,getCanonicalFps:()=>e.canonicalFps,onSyncMedia:(u,h)=>{e.currentTime=Math.max(0,Number(u)||0),e.isPlaying!==h&&(e.mediaForceSyncNextTick=!0),e.isPlaying=h,ut()},onStatePost:nt,onDeterministicSeek:(u,h)=>{for(let g of e.deterministicAdapters)if(!(g.name==="gsap"&&e.capturedTimeline))try{g.seek({time:Number(u)||0,suppressEvents:h?.suppressEvents})}catch(S){G("runtime.init.site11",S)}},onDeterministicPause:()=>pt("pause"),onDeterministicPlay:()=>pt("play"),onRenderFrameSeek:()=>{It.redraw()},onShowNativeVideos:()=>{},getSafeDuration:()=>tt(e.capturedTimeline,0),transport:na});window.__player=k(At),window.__playerReady=!0,gt("composition_loaded",{duration:At.getDuration(),compositionId:Rt()?.getAttribute("data-composition-id")??null}),e.deterministicAdapters=[Hh({start:u=>re(u,0),duration:u=>oe(u),compositionDuration:()=>tt(e.capturedTimeline,0),canonicalFps:()=>e.canonicalFps,exportRenderSeek:()=>!!window.__HF_EXPORT_RENDER_SEEK_CONFIG}),qh(),ih({resolveStartSeconds:u=>re(u,0)}),hh(),yh({resolveStartSeconds:u=>re(u,0)}),Ch(),Th(),Rh(),Mh(),kh(),Lh(),Nh(),ph({getTimeline:()=>e.capturedTimeline})],Vh(),$h(),window.__hfReseekGpu=u=>{let h=Math.max(0,Number(u)||0);window.__hfThreeTime=h,window.__hfTypegpuTime=h,Va(h)};let mm=u=>(JS(),_h(u));window.__hfWaitForSeekCompletion=mm,s.push(()=>{window.__hfWaitForSeekCompletion===mm&&delete window.__hfWaitForSeekCompletion}),OE(),zi(),pt("discover");let xA=()=>{let u=e.capturedTimeline,h=ar();e.capturedTimeline&&(h||e.capturedTimeline!==u||!At._timeline)&&(At._timeline=e.capturedTimeline);let g=tt(e.capturedTimeline,0);if(g>0&&p.setDuration(g),pt("discover",e.currentTime),!e.capturedTimeline){let S=window.__timelines??{},w=Object.keys(S).filter(T=>S[T]);if(w.length>0){let F=M()?.getAttribute("data-composition-id")??null;I("root_timeline_unbound_registry_present",{reason:F?"root data-composition-id has no matching key in window.__timelines":"root composition element has no data-composition-id attribute",rootCompositionId:F,registeredTimelineKeys:w},"root_timeline_unbound_registry_present"),globalThis.console.warn("[hyperframes] Root timeline not bound, so render will freeze at t=0. "+(F?`Root data-composition-id is "${F}" but window.__timelines has no such key. `:"Root composition element has no data-composition-id. ")+`Registered timeline keys: [${w.join(", ")}]. Register the root timeline under its data-composition-id (window.__timelines["${F??"<root-id>"}"] = tl).`)}}On(e.currentTime,Array.from(document.querySelectorAll("[data-start]:not(video, audio, img)"))),window.__renderReady=!0;try{ct()}catch(S){throw window.__renderReady=!1,So(S),S}nt(!0)},lr=null,yA=()=>{if(lr)return;let u=()=>{window.removeEventListener("hf-timelines-built",u),lr=null,Hn()};lr=u,window.addEventListener("hf-timelines-built",u)};H(()=>{lr&&(window.removeEventListener("hf-timelines-built",lr),lr=null)}),Hn=()=>{if(!e.tornDown){if(!Ie){window.__renderReady=!1;return}if(window.__hfTimelinesBuilding){window.__renderReady=!1,yA();return}if(pt("discover",e.currentTime),!cA()){window.__renderReady=!1;return}if(!dA()){window.__renderReady=!1;return}xA()}},Hn(),Ie&&setTimeout(()=>{Hn()},0);let Il=0,ra=!1,oa=Number.NaN,ho={revision:Number.NaN,time:Number.NEGATIVE_INFINITY},ia=null,aa=!1,fn=null,pm=!1,sa=!1,hm="",gm=-1,go=!1,bm=Number.NEGATIVE_INFINITY,xm=Number.NEGATIVE_INFINITY,ym="",Sm=!1,vm=u=>Y?void 0:{owner:u,version:`${Xe}:${u.getChildren?.(!1,!0,!0).length??0}`},SA=(u,h,g,S)=>{try{let w=S?.suppressEvents===!0;Kt(u),Do(u,h,w,vm(u))}catch(w){G(g,w)}},Em=new Map,vA=u=>{let h=Em.get(u);if(!Y&&h){if(Pe(h)){if(h.isConnected&&h.getAttribute("data-composition-id")===u)return h}else if(h.missingAt===Xe)return null}let g=document.querySelector(`[data-composition-id="${CSS.escape(u)}"]`);return Em.set(u,g??{missingAt:Xe}),g},la=new WeakMap,Am=-1,EA=(u,h)=>{if(la.has(h))return la.get(h);let g=vA(u),S=g?re(g,0):Number.NaN,w=g&&Number.isFinite(S)?{start:S,hiddenFrom:g.hasAttribute("data-start")&&!n(g)?S+(oe(g)??1/0):1/0,playbackStart:Wt(g),rate:Gt(g),timelineDuration:Ue(h)}:null;return la.set(h,w),w},wm=new WeakMap,AA=(u,h)=>{if(wm.get(u)!==h)return!1;try{return u.paused()===!0&&Number(u.totalTime?.())===h}catch{return!1}},wA=(u,h,g)=>{(Am!==h||Y)&&(la=new WeakMap,Am=h);let S=window.__timelines??{},w=M()?.getAttribute("data-composition-id")??null;for(let[T,F]of Object.entries(S)){if(!F||typeof F!="object"||T===w)continue;let B=EA(T,F);if(!B)continue;let V=B.playbackStart+qn(B.rate,Math.max(0,(g?.activateChildren?u:Math.min(u,B.hiddenFrom))-B.start)),O=Math.max(0,B.timelineDuration!=null&&B.timelineDuration>0?Math.min(B.timelineDuration,V):V);!Y&&AA(F,O)||(SA(F,O,"runtime.init.transport.childTimeline",g),wm.set(F,O))}},_A=u=>{let h=window.__timelines??{},g=[];for(let S of Object.values(h))if(!(!S||S===u)){g.push(S);try{S.play()}catch(w){G("runtime.init.activateSiblings",w)}}if(g.length===0)return g;try{u.shiftChildren?.(0),u.totalDuration?.()}catch(S){G("runtime.init.remeasureRoot",S)}return g},_m=u=>typeof u=="object"&&u!==null,CA=["onStart","onUpdate","onComplete","onReverseComplete","onRepeat"],Cm=(u,h)=>{let g=u[h];if(typeof g!="function")return null;try{let S=Number(g.call(u));return Number.isFinite(S)?S:null}catch(S){return G("runtime.init.gsapCallbackDuration",S),null}},Tm=new WeakMap,TA=(u,h)=>{if(!h)return Rm(u);let g=Tm.get(h.owner);if(g?.version===h.version)return g.value;let S=Rm(u);return Tm.set(h.owner,{version:h.version,value:S}),S},Rm=u=>{if(!("getChildren"in u)||typeof u.getChildren!="function")return!1;let h;try{h=u.getChildren(!0,!0,!0)}catch(g){return G("runtime.init.gsapCallbackChildren",g),!1}if(!Array.isArray(h))return!1;for(let g of h){if(!_m(g))continue;let S=g.vars;if(!_m(S)||!CA.some(B=>typeof S[B]=="function"))continue;let F=Cm(g,"totalDuration")??Cm(g,"duration");if(F!=null&&F<=1e-6)return!0}return!1};function Gn(u,h){let g=e.capturedTimeline,S=g&&h?.activateChildren?_A(g):[];try{let w=Mm(g,u,h);return oa=u,ia=g,w}finally{for(let w of S)Kt(w)}}function Mm(u,h,g){let S=g?.suppressEvents===!0,w=g?.revision??or();w!==ho.revision&&(ho={revision:w,time:Number.NEGATIVE_INFINITY});let F=h>ho.time?ep():null;if(u){let V=h;if(typeof u.totalDuration=="function")try{let O=Number(u.totalDuration());Number.isFinite(O)&&O>0&&h>O&&(V=O)}catch(O){G("runtime.init.transport.clampDuration",O)}try{if(typeof u.totalTime=="function"){let O=vm(u);!Do(u,V,S,O)&&!S&&!TA(u,O)&&Ba({totalTime:u.totalTime.bind(u),totalDuration:u.totalDuration?.bind(u),getChildren:u.getChildren?.bind(u)},V,O)}else u.seek(V,S)}catch(O){G("runtime.init.transport.seek",O)}}wA(h,w,g),F?.(),ho.time=Math.max(ho.time,h);let B=qI();for(let V of e.deterministicAdapters)if(!(V.name==="gsap"&&u))try{V.seek({time:h,suppressEvents:S,pageAnimations:B})}catch(O){G("runtime.init.transport.adapter",O)}return B}let Dl=vv(document,()=>{vt()});s.push(()=>Dl.disconnect());let km=()=>{try{return Dl.isActive()}catch{return!1}},RA=()=>!p.isPlaying()&&!ae()&&Dl.observing&&(!aa||km())&&!go&&e.currentTime===oa&&e.capturedTimeline===ia,Pl=()=>`${or()}|${so()??""}`,Lm=()=>{fn=window.setTimeout(MA,pm&&e.capturedTimeline&&ir?VI:e.bridgeMaxPostIntervalMs)},MA=()=>{if(fn=null,!e.tornDown&&!(typeof window>"u"||typeof document>"u")){if(Pl()!==hm){vt();return}nt(!1),Lm()}},ur=null,Nm=()=>e.transportRafId!=null||ur!=null,ua=()=>{if(document.visibilityState==="hidden"){ur=window.setTimeout(()=>{ur=null,Pm()},$I);return}e.transportRafId=window.requestAnimationFrame(Pm)},Fm=()=>{e.transportRafId!=null&&(window.cancelAnimationFrame(e.transportRafId),e.transportRafId=null),ur!=null&&(window.clearTimeout(ur),ur=null)},Im=()=>{e.tornDown||!Nm()||(Fm(),ua())};document.addEventListener("visibilitychange",Im);let kA=()=>{if(e.transportRafId=null,e.tornDown)return;let u=sa;if(sa=!1,u||!RA()){ua();return}hm=Pl(),Lm()};vt=()=>{e.tornDown||(sa=!0,!(ra||Nm())&&(fn!=null&&(window.clearTimeout(fn),fn=null),sa=!1,ua()))};let LA=u=>{let h=rr("audio[data-start]"),g=null;for(let S of u?[u,...h]:h){if(!pe(S)||!S.isConnected||y(S)||Nu(S)||S.ended&&!S.loop||!S.hasAttribute("src")&&!S.querySelector("source[src]"))continue;let w=ue(S),T=Q(S,w);if(!Number.isFinite(w)||!bn(e.currentTime,T.start,T.end))continue;if(S===u)return{el:S,start:w};let F=w+(xr(S)??1/0);(!g||F>g.runsUntil)&&(g={el:S,start:w,runsUntil:F})}return g};function Dm(){if(p.isPlaying()&&!e.mediaOutputMuted)if(!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&x.ownsClock()&&x.context){let u=x.getTime();u>=0&&p.attachAudioSource({currentTimeSeconds:u})}else{let u=LA(p.audioElement());u&&!u.el.paused?p.attachAudioSource({el:u.el,compositionStart:u.start,mediaStart:Wt(u.el),rate:Gt(u.el)}):u&&u.el.readyState<HTMLMediaElement.HAVE_FUTURE_DATA?p.attachAudioSource({currentTimeSeconds:e.currentTime}):p.hasAudioSource()&&p.detachAudioSource()}else p.hasAudioSource()&&p.detachAudioSource()}let Pm=()=>{if(!(e.tornDown||ra)){ra=!0;try{Il+=1;let u=or();u!==gm&&(gm=u,go=!0);let h=Date.now(),g=p.isPlaying(),S=g&&h-xm>=lf,w=Sm&&!g;if(Sm=g,S){xm=h;let he=Pl();he!==ym&&(ym=he,go=!0)}let T=go&&h-bm>=Ev;T&&(bm=h);let F=he=>!g&&Il%he===0;if(Av({tick:Il,isPlaying:g,hasCapturedTimeline:e.capturedTimeline!=null,currentTimeSeconds:p.now(),compositionChanged:T,playingPollDue:S})){let he=e.capturedTimeline;if(ar()){e.capturedTimeline&&!At._timeline&&(At._timeline=e.capturedTimeline),e.capturedTimeline&&e.capturedTimeline!==he&&Kt(e.capturedTimeline);let De=tt(e.capturedTimeline,0,u);De>0&&p.setDuration(De),ct()}}if(T||F(20)?(ct(),go=!1):w&&lA(),(T||F(30))&&zi(),e.capturedTimeline){let he=tt(e.capturedTimeline,0,u);he>0&&(!p.isPlaying()||he>=p.getDuration())&&p.setDuration(he)}Dm();let B=p.now();e.currentTime=B;let V=p.isPlaying(),O=!V&&km(),me=V&&XS();if(O?aa=!0:!me&&(V||aa||B!==oa||e.capturedTimeline!==ia)&&(Gn(B,{revision:u}),Xr(B,{playing:V}),V||(aa=!1)),V&&It.redrawAnimated(),p.isPlaying()&&p.reachedEnd()){x.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1;let he=p.getStopTime();Number.isFinite(he)&&(p.seek(he),e.currentTime=he,Gn(he)),pt("pause"),ut(u),Xr(e.currentTime),nt(!0);return}p.isPlaying()?ut(u):iA()&&(cn=null,ut(u)),nt(!1)}finally{ra=!1,kA()}}},Om=u=>{let h=document.querySelectorAll("video, audio");for(let g of h){if(!pe(g)||!g.isConnected||!g.hasAttribute("data-start"))continue;let S=ue(g);if(!Number.isFinite(S))continue;let w=Q(g,S);if(!bn(u,w.start,w.end))continue;let T=Wt(g),F=u-S+T;if(F>=0)try{g.currentTime=F}catch{}}},Ol=()=>{if(e.nativeMediaSyncDisabled||e.webAudioMediaDisabled)return;let u=x.startGeneration();for(let h of gf(document)){if(y(h))continue;let g=ue(h);if(!Number.isFinite(g))continue;let S=Wt(h),w=Number.parseFloat(h.dataset.volume??""),T=Number.isFinite(w)?w:1,F=Ge(h.dataset.duration),B=F!=null&&F>0?F:Number.POSITIVE_INFINITY,{inheritedStart:V,inheritedDuration:O}=ie(h);V!=null&&O!=null&&O>0&&(B=Math.min(B,Math.max(0,V+O-g)));let me=te(h),he=jn({start:g,end:g+B},me);if(me.length>0){if(he.end<=he.start)continue;B=he.end-g}let De=to(h);no(h,De),(De.kind==="web-audio"?x.scheduleMediaElementPlayback(h,g,S,p.now(),T,u,e.playbackRate):Promise.resolve(null)).then(Ae=>{let Dt=u!==x.currentGeneration();if(Ae||!ba(h)||!p.isPlaying()||Dt||typeof Gt(h)!="number")return;let rt=e.playbackRate*st(h),Oe=h.hasAttribute("data-fx-chain")||h.hasAttribute("data-automation");if(Math.abs(rt-1)>1e-9){De.kind==="web-audio"&&Oe&&(h.muted=!0);return}x.decodeAudioElement(h).then(We=>{!We||!p.isPlaying()||x.schedulePlayback(h,We,g,S,()=>p.now(),T,u,e.playbackRate,B,he.start)})})}};function Hm(){x.setRate(e.playbackRate)&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&b&&p.isPlaying()&&x.hasBoundedActiveSources()&&(x.stopAll(),Ol())}if(e.capturedTimeline){let u=tt(e.capturedTimeline,0);u>0&&p.setDuration(u),Kt(e.capturedTimeline)}$x(window),ua(),ct(),nt(!0),e.controlBridgeHandler=Kp({onPlay:()=>{At.play(),gt("composition_played",{time:At.getTime()})},onPause:()=>{At.pause(),gt("composition_paused",{time:At.getTime()})},onStopMedia:()=>{x.stopAll();let u=document.querySelectorAll("video, audio");for(let h of u)pe(h)&&!h.paused&&h.pause()},onSeek:(u,h)=>{At.seek(u),gt("composition_seeked",{time:u})},onSetMuted:u=>{e.bridgeMuted=u;let h=u||e.mediaOutputMuted;x.setMuted(h);let g=document.querySelectorAll("video, audio");for(let S of g)pe(S)&&(S.muted=h||S.defaultMuted)},onSetVolume:u=>{e.bridgeVolume=u,x.setVolume(u);let h=document.querySelectorAll("video, audio");for(let g of h){if(!pe(g))continue;let S=parseFloat(g.dataset.volume??""),w=Number.isFinite(S)?S:1;g.volume=wa(w*u)}},onSetMediaOutputMuted:u=>{e.mediaOutputMuted=u;let h=u||e.bridgeMuted;x.setMuted(h);let g=document.querySelectorAll("video, audio");for(let S of g)pe(S)&&(S.muted=h||S.defaultMuted)},onSetNativeMediaSyncDisabled:u=>{e.nativeMediaSyncDisabled!==u&&(e.nativeMediaSyncDisabled=u,e.mediaForceSyncNextTick=!0,u?(x.stopAll(),p.detachAudioSource()):ut())},onSetWebAudioMediaDisabled:u=>{e.webAudioMediaDisabled!==u&&(e.webAudioMediaDisabled=u,e.mediaForceSyncNextTick=!0,u&&(x.stopAll(),p.detachAudioSource()),ut())},onSetPlaybackRate:u=>{Fl(u),e.transportClock&&e.transportClock.setRate(e.playbackRate),Hm()},onSetDisplayScale:u=>{xg(u),cp(u)},onSetIdleHeartbeat:u=>{pm=u,vt()},onSetRootDuration:uA,onSetPlayRange:(u,h)=>{p.setPlayRange(u,h,e.canonicalFps);let g=p.getPlayStart();if(p.isPlaying()&&(p.now()<g||p.reachedEnd())){na.seek(g,{keepPlaying:!0});return}nt(!0)},onSetColorGrading:(u,h)=>{It.setGrading(u,h)},onSetColorGradingCompare:(u,h)=>{It.setCompare(u,h)},onTick:()=>{if(e.tornDown||!p.isPlaying())return;Dm();let u=p.now();if(e.currentTime=u,(u!==oa||e.capturedTimeline!==ia)&&Gn(u),p.reachedEnd()){x.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1;let h=p.getStopTime();Number.isFinite(h)&&(p.seek(h),e.currentTime=h,Gn(h)),pt("pause"),ut(),nt(!0)}},onEnablePickMode:()=>ta.enablePickMode(),onDisablePickMode:()=>ta.disablePickMode(),onSetRuntimeData:tl,onClearRuntimeData:nl,getCanonicalFps:()=>e.canonicalFps});let Hl=()=>{if(!e.tornDown){e.tornDown=!0,Fm(),document.removeEventListener("visibilitychange",Im),fn!=null&&(window.clearTimeout(fn),fn=null),e.transportClock=null,x.destroy(),Pn!=null&&(window.clearTimeout(Pn),Pn=null),d!=null&&(window.cancelAnimationFrame(d),d=null),BE(),e.controlBridgeHandler&&(window.removeEventListener("message",e.controlBridgeHandler),e.controlBridgeHandler=null),a&&(window.removeEventListener("error",a),a=null),l&&(window.removeEventListener("unhandledrejection",l),l=null),e.beforeUnloadHandler&&(window.removeEventListener("beforeunload",e.beforeUnloadHandler),e.beforeUnloadHandler=null),ta.disablePickMode();for(let u of e.deterministicAdapters)if(!(!u||typeof u.revert!="function"))try{u.revert()}catch(h){G("runtime.init.site12",h)}e.deterministicAdapters=[],window.__hf?.buildReady&&(window.__hf.buildReady={});for(let u of s.splice(0))try{u()}catch(h){G("runtime.init.site13",h)}for(let u of e.injectedCompStyles)try{u.remove()}catch(h){G("runtime.init.site14",h)}e.injectedCompStyles=[];for(let u of e.injectedCompLinks)try{u.remove()}catch(h){G("runtime.init.site15",h)}e.injectedCompLinks=[];for(let u of e.injectedCompScripts)try{u.remove()}catch(h){G("runtime.init.site16",h)}e.injectedCompScripts=[],e.capturedTimeline=null,r=()=>{},window.__hfRuntimeTeardown===Hl&&(window.__hfRuntimeTeardown=null)}};window.__hfRuntimeTeardown=Hl,e.beforeUnloadHandler=Hl,window.addEventListener("beforeunload",e.beforeUnloadHandler)}var Yv=["BN","BN","BN","BN","BN","BN","BN","BN","BN","S","B","S","WS","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","B","B","B","S","WS","ON","ON","ET","ET","ET","ON","ON","ON","ON","ON","ES","CS","ES","CS","CS","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","CS","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","BN","BN","BN","BN","BN","BN","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","CS","ON","ET","ET","ET","ET","ON","ON","ON","ON","L","ON","ON","BN","ON","ON","ET","ET","EN","EN","ON","L","ON","ON","ON","EN","L","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L"],Sf=[[697,698,"ON"],[706,719,"ON"],[722,735,"ON"],[741,749,"ON"],[751,767,"ON"],[768,879,"NSM"],[884,885,"ON"],[894,894,"ON"],[900,901,"ON"],[903,903,"ON"],[1014,1014,"ON"],[1155,1161,"NSM"],[1418,1418,"ON"],[1421,1422,"ON"],[1423,1423,"ET"],[1424,1424,"R"],[1425,1469,"NSM"],[1470,1470,"R"],[1471,1471,"NSM"],[1472,1472,"R"],[1473,1474,"NSM"],[1475,1475,"R"],[1476,1477,"NSM"],[1478,1478,"R"],[1479,1479,"NSM"],[1480,1535,"R"],[1536,1541,"AN"],[1542,1543,"ON"],[1544,1544,"AL"],[1545,1546,"ET"],[1547,1547,"AL"],[1548,1548,"CS"],[1549,1549,"AL"],[1550,1551,"ON"],[1552,1562,"NSM"],[1563,1610,"AL"],[1611,1631,"NSM"],[1632,1641,"AN"],[1642,1642,"ET"],[1643,1644,"AN"],[1645,1647,"AL"],[1648,1648,"NSM"],[1649,1749,"AL"],[1750,1756,"NSM"],[1757,1757,"AN"],[1758,1758,"ON"],[1759,1764,"NSM"],[1765,1766,"AL"],[1767,1768,"NSM"],[1769,1769,"ON"],[1770,1773,"NSM"],[1774,1775,"AL"],[1776,1785,"EN"],[1786,1808,"AL"],[1809,1809,"NSM"],[1810,1839,"AL"],[1840,1866,"NSM"],[1867,1957,"AL"],[1958,1968,"NSM"],[1969,1983,"AL"],[1984,2026,"R"],[2027,2035,"NSM"],[2036,2037,"R"],[2038,2041,"ON"],[2042,2044,"R"],[2045,2045,"NSM"],[2046,2069,"R"],[2070,2073,"NSM"],[2074,2074,"R"],[2075,2083,"NSM"],[2084,2084,"R"],[2085,2087,"NSM"],[2088,2088,"R"],[2089,2093,"NSM"],[2094,2136,"R"],[2137,2139,"NSM"],[2140,2143,"R"],[2144,2191,"AL"],[2192,2193,"AN"],[2194,2198,"AL"],[2199,2207,"NSM"],[2208,2249,"AL"],[2250,2273,"NSM"],[2274,2274,"AN"],[2275,2306,"NSM"],[2362,2362,"NSM"],[2364,2364,"NSM"],[2369,2376,"NSM"],[2381,2381,"NSM"],[2385,2391,"NSM"],[2402,2403,"NSM"],[2433,2433,"NSM"],[2492,2492,"NSM"],[2497,2500,"NSM"],[2509,2509,"NSM"],[2530,2531,"NSM"],[2546,2547,"ET"],[2555,2555,"ET"],[2558,2558,"NSM"],[2561,2562,"NSM"],[2620,2620,"NSM"],[2625,2626,"NSM"],[2631,2632,"NSM"],[2635,2637,"NSM"],[2641,2641,"NSM"],[2672,2673,"NSM"],[2677,2677,"NSM"],[2689,2690,"NSM"],[2748,2748,"NSM"],[2753,2757,"NSM"],[2759,2760,"NSM"],[2765,2765,"NSM"],[2786,2787,"NSM"],[2801,2801,"ET"],[2810,2815,"NSM"],[2817,2817,"NSM"],[2876,2876,"NSM"],[2879,2879,"NSM"],[2881,2884,"NSM"],[2893,2893,"NSM"],[2901,2902,"NSM"],[2914,2915,"NSM"],[2946,2946,"NSM"],[3008,3008,"NSM"],[3021,3021,"NSM"],[3059,3064,"ON"],[3065,3065,"ET"],[3066,3066,"ON"],[3072,3072,"NSM"],[3076,3076,"NSM"],[3132,3132,"NSM"],[3134,3136,"NSM"],[3142,3144,"NSM"],[3146,3149,"NSM"],[3157,3158,"NSM"],[3170,3171,"NSM"],[3192,3198,"ON"],[3201,3201,"NSM"],[3260,3260,"NSM"],[3276,3277,"NSM"],[3298,3299,"NSM"],[3328,3329,"NSM"],[3387,3388,"NSM"],[3393,3396,"NSM"],[3405,3405,"NSM"],[3426,3427,"NSM"],[3457,3457,"NSM"],[3530,3530,"NSM"],[3538,3540,"NSM"],[3542,3542,"NSM"],[3633,3633,"NSM"],[3636,3642,"NSM"],[3647,3647,"ET"],[3655,3662,"NSM"],[3761,3761,"NSM"],[3764,3772,"NSM"],[3784,3790,"NSM"],[3864,3865,"NSM"],[3893,3893,"NSM"],[3895,3895,"NSM"],[3897,3897,"NSM"],[3898,3901,"ON"],[3953,3966,"NSM"],[3968,3972,"NSM"],[3974,3975,"NSM"],[3981,3991,"NSM"],[3993,4028,"NSM"],[4038,4038,"NSM"],[4141,4144,"NSM"],[4146,4151,"NSM"],[4153,4154,"NSM"],[4157,4158,"NSM"],[4184,4185,"NSM"],[4190,4192,"NSM"],[4209,4212,"NSM"],[4226,4226,"NSM"],[4229,4230,"NSM"],[4237,4237,"NSM"],[4253,4253,"NSM"],[4957,4959,"NSM"],[5008,5017,"ON"],[5120,5120,"ON"],[5760,5760,"WS"],[5787,5788,"ON"],[5906,5908,"NSM"],[5938,5939,"NSM"],[5970,5971,"NSM"],[6002,6003,"NSM"],[6068,6069,"NSM"],[6071,6077,"NSM"],[6086,6086,"NSM"],[6089,6099,"NSM"],[6107,6107,"ET"],[6109,6109,"NSM"],[6128,6137,"ON"],[6144,6154,"ON"],[6155,6157,"NSM"],[6158,6158,"BN"],[6159,6159,"NSM"],[6277,6278,"NSM"],[6313,6313,"NSM"],[6432,6434,"NSM"],[6439,6440,"NSM"],[6450,6450,"NSM"],[6457,6459,"NSM"],[6464,6464,"ON"],[6468,6469,"ON"],[6622,6655,"ON"],[6679,6680,"NSM"],[6683,6683,"NSM"],[6742,6742,"NSM"],[6744,6750,"NSM"],[6752,6752,"NSM"],[6754,6754,"NSM"],[6757,6764,"NSM"],[6771,6780,"NSM"],[6783,6783,"NSM"],[6832,6877,"NSM"],[6880,6891,"NSM"],[6912,6915,"NSM"],[6964,6964,"NSM"],[6966,6970,"NSM"],[6972,6972,"NSM"],[6978,6978,"NSM"],[7019,7027,"NSM"],[7040,7041,"NSM"],[7074,7077,"NSM"],[7080,7081,"NSM"],[7083,7085,"NSM"],[7142,7142,"NSM"],[7144,7145,"NSM"],[7149,7149,"NSM"],[7151,7153,"NSM"],[7212,7219,"NSM"],[7222,7223,"NSM"],[7376,7378,"NSM"],[7380,7392,"NSM"],[7394,7400,"NSM"],[7405,7405,"NSM"],[7412,7412,"NSM"],[7416,7417,"NSM"],[7616,7679,"NSM"],[8125,8125,"ON"],[8127,8129,"ON"],[8141,8143,"ON"],[8157,8159,"ON"],[8173,8175,"ON"],[8189,8190,"ON"],[8192,8202,"WS"],[8203,8205,"BN"],[8207,8207,"R"],[8208,8231,"ON"],[8232,8232,"WS"],[8233,8233,"B"],[8234,8238,"BN"],[8239,8239,"CS"],[8240,8244,"ET"],[8245,8259,"ON"],[8260,8260,"CS"],[8261,8286,"ON"],[8287,8287,"WS"],[8288,8303,"BN"],[8304,8304,"EN"],[8308,8313,"EN"],[8314,8315,"ES"],[8316,8318,"ON"],[8320,8329,"EN"],[8330,8331,"ES"],[8332,8334,"ON"],[8352,8399,"ET"],[8400,8432,"NSM"],[8448,8449,"ON"],[8451,8454,"ON"],[8456,8457,"ON"],[8468,8468,"ON"],[8470,8472,"ON"],[8478,8483,"ON"],[8485,8485,"ON"],[8487,8487,"ON"],[8489,8489,"ON"],[8494,8494,"ET"],[8506,8507,"ON"],[8512,8516,"ON"],[8522,8525,"ON"],[8528,8543,"ON"],[8585,8587,"ON"],[8592,8721,"ON"],[8722,8722,"ES"],[8723,8723,"ET"],[8724,9013,"ON"],[9083,9108,"ON"],[9110,9257,"ON"],[9280,9290,"ON"],[9312,9351,"ON"],[9352,9371,"EN"],[9450,9899,"ON"],[9901,10239,"ON"],[10496,11123,"ON"],[11126,11263,"ON"],[11493,11498,"ON"],[11503,11505,"NSM"],[11513,11519,"ON"],[11647,11647,"NSM"],[11744,11775,"NSM"],[11776,11869,"ON"],[11904,11929,"ON"],[11931,12019,"ON"],[12032,12245,"ON"],[12272,12287,"ON"],[12288,12288,"WS"],[12289,12292,"ON"],[12296,12320,"ON"],[12330,12333,"NSM"],[12336,12336,"ON"],[12342,12343,"ON"],[12349,12351,"ON"],[12441,12442,"NSM"],[12443,12444,"ON"],[12448,12448,"ON"],[12539,12539,"ON"],[12736,12773,"ON"],[12783,12783,"ON"],[12829,12830,"ON"],[12880,12895,"ON"],[12924,12926,"ON"],[12977,12991,"ON"],[13004,13007,"ON"],[13175,13178,"ON"],[13278,13279,"ON"],[13311,13311,"ON"],[19904,19967,"ON"],[42128,42182,"ON"],[42509,42511,"ON"],[42607,42610,"NSM"],[42611,42611,"ON"],[42612,42621,"NSM"],[42622,42623,"ON"],[42654,42655,"NSM"],[42736,42737,"NSM"],[42752,42785,"ON"],[42888,42888,"ON"],[43010,43010,"NSM"],[43014,43014,"NSM"],[43019,43019,"NSM"],[43045,43046,"NSM"],[43048,43051,"ON"],[43052,43052,"NSM"],[43064,43065,"ET"],[43124,43127,"ON"],[43204,43205,"NSM"],[43232,43249,"NSM"],[43263,43263,"NSM"],[43302,43309,"NSM"],[43335,43345,"NSM"],[43392,43394,"NSM"],[43443,43443,"NSM"],[43446,43449,"NSM"],[43452,43453,"NSM"],[43493,43493,"NSM"],[43561,43566,"NSM"],[43569,43570,"NSM"],[43573,43574,"NSM"],[43587,43587,"NSM"],[43596,43596,"NSM"],[43644,43644,"NSM"],[43696,43696,"NSM"],[43698,43700,"NSM"],[43703,43704,"NSM"],[43710,43711,"NSM"],[43713,43713,"NSM"],[43756,43757,"NSM"],[43766,43766,"NSM"],[43882,43883,"ON"],[44005,44005,"NSM"],[44008,44008,"NSM"],[44013,44013,"NSM"],[64285,64285,"R"],[64286,64286,"NSM"],[64287,64296,"R"],[64297,64297,"ES"],[64298,64335,"R"],[64336,64450,"AL"],[64451,64466,"ON"],[64467,64829,"AL"],[64830,64847,"ON"],[64848,64911,"AL"],[64912,64913,"ON"],[64914,64967,"AL"],[64968,64975,"ON"],[64976,65007,"BN"],[65008,65020,"AL"],[65021,65023,"ON"],[65024,65039,"NSM"],[65040,65049,"ON"],[65056,65071,"NSM"],[65072,65103,"ON"],[65104,65104,"CS"],[65105,65105,"ON"],[65106,65106,"CS"],[65108,65108,"ON"],[65109,65109,"CS"],[65110,65118,"ON"],[65119,65119,"ET"],[65120,65121,"ON"],[65122,65123,"ES"],[65124,65126,"ON"],[65128,65128,"ON"],[65129,65130,"ET"],[65131,65131,"ON"],[65136,65278,"AL"],[65279,65279,"BN"],[65281,65282,"ON"],[65283,65285,"ET"],[65286,65290,"ON"],[65291,65291,"ES"],[65292,65292,"CS"],[65293,65293,"ES"],[65294,65295,"CS"],[65296,65305,"EN"],[65306,65306,"CS"],[65307,65312,"ON"],[65339,65344,"ON"],[65371,65381,"ON"],[65504,65505,"ET"],[65506,65508,"ON"],[65509,65510,"ET"],[65512,65518,"ON"],[65520,65528,"BN"],[65529,65533,"ON"],[65534,65535,"BN"],[65793,65793,"ON"],[65856,65932,"ON"],[65936,65948,"ON"],[65952,65952,"ON"],[66045,66045,"NSM"],[66272,66272,"NSM"],[66273,66299,"EN"],[66422,66426,"NSM"],[67584,67870,"R"],[67871,67871,"ON"],[67872,68096,"R"],[68097,68099,"NSM"],[68100,68100,"R"],[68101,68102,"NSM"],[68103,68107,"R"],[68108,68111,"NSM"],[68112,68151,"R"],[68152,68154,"NSM"],[68155,68158,"R"],[68159,68159,"NSM"],[68160,68324,"R"],[68325,68326,"NSM"],[68327,68408,"R"],[68409,68415,"ON"],[68416,68863,"R"],[68864,68899,"AL"],[68900,68903,"NSM"],[68904,68911,"AL"],[68912,68921,"AN"],[68922,68927,"AL"],[68928,68937,"AN"],[68938,68968,"R"],[68969,68973,"NSM"],[68974,68974,"ON"],[68975,69215,"R"],[69216,69246,"AN"],[69247,69290,"R"],[69291,69292,"NSM"],[69293,69311,"R"],[69312,69327,"AL"],[69328,69336,"ON"],[69337,69369,"AL"],[69370,69375,"NSM"],[69376,69423,"R"],[69424,69445,"AL"],[69446,69456,"NSM"],[69457,69487,"AL"],[69488,69505,"R"],[69506,69509,"NSM"],[69510,69631,"R"],[69633,69633,"NSM"],[69688,69702,"NSM"],[69714,69733,"ON"],[69744,69744,"NSM"],[69747,69748,"NSM"],[69759,69761,"NSM"],[69811,69814,"NSM"],[69817,69818,"NSM"],[69826,69826,"NSM"],[69888,69890,"NSM"],[69927,69931,"NSM"],[69933,69940,"NSM"],[70003,70003,"NSM"],[70016,70017,"NSM"],[70070,70078,"NSM"],[70089,70092,"NSM"],[70095,70095,"NSM"],[70191,70193,"NSM"],[70196,70196,"NSM"],[70198,70199,"NSM"],[70206,70206,"NSM"],[70209,70209,"NSM"],[70367,70367,"NSM"],[70371,70378,"NSM"],[70400,70401,"NSM"],[70459,70460,"NSM"],[70464,70464,"NSM"],[70502,70508,"NSM"],[70512,70516,"NSM"],[70587,70592,"NSM"],[70606,70606,"NSM"],[70608,70608,"NSM"],[70610,70610,"NSM"],[70625,70626,"NSM"],[70712,70719,"NSM"],[70722,70724,"NSM"],[70726,70726,"NSM"],[70750,70750,"NSM"],[70835,70840,"NSM"],[70842,70842,"NSM"],[70847,70848,"NSM"],[70850,70851,"NSM"],[71090,71093,"NSM"],[71100,71101,"NSM"],[71103,71104,"NSM"],[71132,71133,"NSM"],[71219,71226,"NSM"],[71229,71229,"NSM"],[71231,71232,"NSM"],[71264,71276,"ON"],[71339,71339,"NSM"],[71341,71341,"NSM"],[71344,71349,"NSM"],[71351,71351,"NSM"],[71453,71453,"NSM"],[71455,71455,"NSM"],[71458,71461,"NSM"],[71463,71467,"NSM"],[71727,71735,"NSM"],[71737,71738,"NSM"],[71995,71996,"NSM"],[71998,71998,"NSM"],[72003,72003,"NSM"],[72148,72151,"NSM"],[72154,72155,"NSM"],[72160,72160,"NSM"],[72193,72198,"NSM"],[72201,72202,"NSM"],[72243,72248,"NSM"],[72251,72254,"NSM"],[72263,72263,"NSM"],[72273,72278,"NSM"],[72281,72283,"NSM"],[72330,72342,"NSM"],[72344,72345,"NSM"],[72544,72544,"NSM"],[72546,72548,"NSM"],[72550,72550,"NSM"],[72752,72758,"NSM"],[72760,72765,"NSM"],[72850,72871,"NSM"],[72874,72880,"NSM"],[72882,72883,"NSM"],[72885,72886,"NSM"],[73009,73014,"NSM"],[73018,73018,"NSM"],[73020,73021,"NSM"],[73023,73029,"NSM"],[73031,73031,"NSM"],[73104,73105,"NSM"],[73109,73109,"NSM"],[73111,73111,"NSM"],[73459,73460,"NSM"],[73472,73473,"NSM"],[73526,73530,"NSM"],[73536,73536,"NSM"],[73538,73538,"NSM"],[73562,73562,"NSM"],[73685,73692,"ON"],[73693,73696,"ET"],[73697,73713,"ON"],[78912,78912,"NSM"],[78919,78933,"NSM"],[90398,90409,"NSM"],[90413,90415,"NSM"],[92912,92916,"NSM"],[92976,92982,"NSM"],[94031,94031,"NSM"],[94095,94098,"NSM"],[94178,94178,"ON"],[94180,94180,"NSM"],[113821,113822,"NSM"],[113824,113827,"BN"],[117760,117973,"ON"],[118e3,118009,"EN"],[118010,118012,"ON"],[118016,118451,"ON"],[118458,118480,"ON"],[118496,118512,"ON"],[118528,118573,"NSM"],[118576,118598,"NSM"],[119143,119145,"NSM"],[119155,119162,"BN"],[119163,119170,"NSM"],[119173,119179,"NSM"],[119210,119213,"NSM"],[119273,119274,"ON"],[119296,119361,"ON"],[119362,119364,"NSM"],[119365,119365,"ON"],[119552,119638,"ON"],[120513,120513,"ON"],[120539,120539,"ON"],[120571,120571,"ON"],[120597,120597,"ON"],[120629,120629,"ON"],[120655,120655,"ON"],[120687,120687,"ON"],[120713,120713,"ON"],[120745,120745,"ON"],[120771,120771,"ON"],[120782,120831,"EN"],[121344,121398,"NSM"],[121403,121452,"NSM"],[121461,121461,"NSM"],[121476,121476,"NSM"],[121499,121503,"NSM"],[121505,121519,"NSM"],[122880,122886,"NSM"],[122888,122904,"NSM"],[122907,122913,"NSM"],[122915,122916,"NSM"],[122918,122922,"NSM"],[123023,123023,"NSM"],[123184,123190,"NSM"],[123566,123566,"NSM"],[123628,123631,"NSM"],[123647,123647,"ET"],[124140,124143,"NSM"],[124398,124399,"NSM"],[124643,124643,"NSM"],[124646,124646,"NSM"],[124654,124655,"NSM"],[124661,124661,"NSM"],[124928,125135,"R"],[125136,125142,"NSM"],[125143,125251,"R"],[125252,125258,"NSM"],[125259,126063,"R"],[126064,126143,"AL"],[126144,126207,"R"],[126208,126287,"AL"],[126288,126463,"R"],[126464,126703,"AL"],[126704,126705,"ON"],[126706,126719,"AL"],[126720,126975,"R"],[126976,127019,"ON"],[127024,127123,"ON"],[127136,127150,"ON"],[127153,127167,"ON"],[127169,127183,"ON"],[127185,127221,"ON"],[127232,127242,"EN"],[127243,127247,"ON"],[127279,127279,"ON"],[127338,127343,"ON"],[127405,127405,"ON"],[127584,127589,"ON"],[127744,128728,"ON"],[128732,128748,"ON"],[128752,128764,"ON"],[128768,128985,"ON"],[128992,129003,"ON"],[129008,129008,"ON"],[129024,129035,"ON"],[129040,129095,"ON"],[129104,129113,"ON"],[129120,129159,"ON"],[129168,129197,"ON"],[129200,129211,"ON"],[129216,129217,"ON"],[129232,129240,"ON"],[129280,129623,"ON"],[129632,129645,"ON"],[129648,129660,"ON"],[129664,129674,"ON"],[129678,129734,"ON"],[129736,129736,"ON"],[129741,129756,"ON"],[129759,129770,"ON"],[129775,129784,"ON"],[129792,129938,"ON"],[129940,130031,"ON"],[130032,130041,"EN"],[130042,130042,"ON"],[131070,131071,"BN"],[196606,196607,"BN"],[262142,262143,"BN"],[327678,327679,"BN"],[393214,393215,"BN"],[458750,458751,"BN"],[524286,524287,"BN"],[589822,589823,"BN"],[655358,655359,"BN"],[720894,720895,"BN"],[786430,786431,"BN"],[851966,851967,"BN"],[917502,917759,"BN"],[917760,917999,"NSM"],[918e3,921599,"BN"],[983038,983039,"BN"],[1048574,1048575,"BN"],[1114110,1114111,"BN"]];function zI(e){if(e<=255)return Yv[e];let t=0,n=Sf.length-1;for(;t<=n;){let r=t+n>>1,o=Sf[r];if(e<o[0]){n=r-1;continue}if(e>o[1]){t=r+1;continue}return o[2]}return"L"}function jI(e){let t=e.length;if(t===0)return null;let n=new Array(t),r=!1;for(let c=0;c<t;){let d=e.charCodeAt(c),f=d,m=1;if(d>=55296&&d<=56319&&c+1<t){let x=e.charCodeAt(c+1);x>=56320&&x<=57343&&(f=(d-55296<<10)+(x-56320)+65536,m=2)}let p=zI(f);(p==="R"||p==="AL"||p==="AN")&&(r=!0);for(let x=0;x<m;x++)n[c+x]=p;c+=m}if(!r)return null;let o=0;for(let c=0;c<t;c++){let d=n[c];if(d==="L"){o=0;break}if(d==="R"||d==="AL"){o=1;break}}let i=new Int8Array(t);for(let c=0;c<t;c++)i[c]=o;let a=o&1?"R":"L",l=a,s=l;for(let c=0;c<t;c++)n[c]==="NSM"?n[c]=s:s=n[c];s=l;for(let c=0;c<t;c++){let d=n[c];d==="EN"?n[c]=s==="AL"?"AN":"EN":(d==="R"||d==="L"||d==="AL")&&(s=d)}for(let c=0;c<t;c++)n[c]==="AL"&&(n[c]="R");for(let c=1;c<t-1;c++)n[c]==="ES"&&n[c-1]==="EN"&&n[c+1]==="EN"&&(n[c]="EN"),n[c]==="CS"&&(n[c-1]==="EN"||n[c-1]==="AN")&&n[c+1]===n[c-1]&&(n[c]=n[c-1]);for(let c=0;c<t;c++){if(n[c]!=="EN")continue;let d;for(d=c-1;d>=0&&n[d]==="ET";d--)n[d]="EN";for(d=c+1;d<t&&n[d]==="ET";d++)n[d]="EN"}for(let c=0;c<t;c++){let d=n[c];(d==="WS"||d==="ES"||d==="ET"||d==="CS")&&(n[c]="ON")}s=l;for(let c=0;c<t;c++){let d=n[c];d==="EN"?n[c]=s==="L"?"L":"EN":(d==="R"||d==="L")&&(s=d)}for(let c=0;c<t;c++){if(n[c]!=="ON")continue;let d=c+1;for(;d<t&&n[d]==="ON";)d++;let f=c>0?n[c-1]:l,m=d<t?n[d]:l,p=f!=="L"?"R":"L";if(p===(m!=="L"?"R":"L"))for(let b=c;b<d;b++)n[b]=p;c=d-1}for(let c=0;c<t;c++)n[c]==="ON"&&(n[c]=a);for(let c=0;c<t;c++){let d=n[c];(i[c]&1)===0?d==="R"?i[c]++:(d==="AN"||d==="EN")&&(i[c]+=2):(d==="L"||d==="AN"||d==="EN")&&i[c]++}return i}function Xv(e,t){let n=jI(e);if(n===null)return null;let r=new Int8Array(t.length);for(let o=0;o<t.length;o++)r[o]=n[t[o]];return r}var KI=/[ \t\n\r\f]+/g,YI=/[\t\n\r\f]| {2,}|^ | $/;function XI(e){let t=e??"normal";return t==="pre-wrap"?{mode:t,preserveOrdinarySpaces:!0,preserveHardBreaks:!0}:{mode:t,preserveOrdinarySpaces:!1,preserveHardBreaks:!1}}function JI(e){if(!YI.test(e))return e;let t=e.replace(KI," ");return t.charCodeAt(0)===32&&(t=t.slice(1)),t.length>0&&t.charCodeAt(t.length-1)===32&&(t=t.slice(0,-1)),t}function QI(e){return/[\r\f]/.test(e)?e.replace(/\r\n/g,`
|
|
1121
1122
|
`).replace(/[\r\f]/g,`
|
|
1122
1123
|
`):e.replace(/\r\n/g,`
|
|
1123
|
-
`)}var
|
|
1124
|
-
`)return"hard-break"}return e===" "?"space":e==="\xA0"||e==="\u202F"||e==="\u2060"||e==="\uFEFF"?"glue":e==="\u200B"?"zero-width-break":e==="\xAD"?"soft-hyphen":"text"}var XF=/[\x20\t\n\xA0\xAD\u200B\u202F\u2060\uFEFF]/;function gt(e){return e.length===1?e[0]:e.join("")}function JF(e,t){let n=[];for(let r=e.length-1;r>=0;r--)n.push(e[r]);return n.push(t),gt(n)}function QF(e,t,n,r){if(!XF.test(e))return[{text:e,isWordLike:t,kind:"text",start:n}];let i=[],o=null,a=[],l=n,s=!1,c=0;for(let d of e){let m=YF(d,r),f=m==="text"&&t;if(o!==null&&m===o&&f===s){a.push(d),c+=d.length;continue}o!==null&&i.push({text:gt(a),isWordLike:s,kind:o,start:l}),o=m,a=[d],l=n+c,s=f,c+=d.length}return o!==null&&i.push({text:gt(a),isWordLike:s,kind:o,start:l}),i}function Kd(e){return e==="space"||e==="preserved-space"||e==="zero-width-break"||e==="hard-break"}var ZF=/^[A-Za-z][A-Za-z0-9+.-]*:$/;function eI(e,t){let n=e.texts[t];return n.startsWith("www.")?!0:ZF.test(n)&&t+1<e.len&&e.kinds[t+1]==="text"&&e.texts[t+1]==="//"}function tI(e){return e.includes("?")&&(e.includes("://")||e.startsWith("www."))}function nI(e){let t=e.texts.slice(),n=e.isWordLike.slice(),r=e.kinds.slice(),i=e.starts.slice();for(let a=0;a<e.len;a++){if(r[a]!=="text"||!eI(e,a))continue;let l=[t[a]],s=a+1;for(;s<e.len&&!Kd(r[s]);){l.push(t[s]),n[a]=!0;let c=t[s].includes("?");if(r[s]="text",t[s]="",s++,c)break}t[a]=gt(l)}let o=0;for(let a=0;a<t.length;a++){let l=t[a];l.length!==0&&(o!==a&&(t[o]=l,n[o]=n[a],r[o]=r[a],i[o]=i[a]),o++)}return t.length=o,n.length=o,r.length=o,i.length=o,{len:o,texts:t,isWordLike:n,kinds:r,starts:i}}function rI(e){let t=[],n=[],r=[],i=[];for(let o=0;o<e.len;o++){let a=e.texts[o];if(t.push(a),n.push(e.isWordLike[o]),r.push(e.kinds[o]),i.push(e.starts[o]),!tI(a))continue;let l=o+1;if(l>=e.len||Kd(e.kinds[l]))continue;let s=[],c=e.starts[l],d=l;for(;d<e.len&&!Kd(e.kinds[d]);)s.push(e.texts[d]),d++;s.length>0&&(t.push(gt(s)),n.push(!0),r.push("text"),i.push(c),o=d-1)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}var iI=new Set([":","-","/","\xD7",",",".","+","\u2013","\u2014"]),gv=/^[A-Za-z0-9_]+[,:;]*$/,bv=/[,:;]+$/;function vv(e){for(let t of e)if(yv.test(t))return!0;return!1}function Ro(e){if(e.length===0)return!1;for(let t of e)if(!(yv.test(t)||iI.has(t)))return!1;return!0}function oI(e){let t=[],n=[],r=[],i=[];for(let o=0;o<e.len;o++){let a=e.texts[o],l=e.kinds[o];if(l==="text"&&Ro(a)&&vv(a)){let s=[a],c=o+1;for(;c<e.len&&e.kinds[c]==="text"&&Ro(e.texts[c]);)s.push(e.texts[c]),c++;t.push(gt(s)),n.push(!0),r.push("text"),i.push(e.starts[o]),o=c-1;continue}t.push(a),n.push(e.isWordLike[o]),r.push(l),i.push(e.starts[o])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function aI(e){let t=[],n=[],r=[],i=[];for(let o=0;o<e.len;o++){let a=e.texts[o],l=e.kinds[o],s=e.isWordLike[o];if(l==="text"&&s&&gv.test(a)){let c=[a],d=bv.test(a),m=o+1;for(;d&&m<e.len&&e.kinds[m]==="text"&&e.isWordLike[m]&&gv.test(e.texts[m]);){let f=e.texts[m];c.push(f),d=bv.test(f),m++}t.push(gt(c)),n.push(!0),r.push("text"),i.push(e.starts[o]),o=m-1;continue}t.push(a),n.push(s),r.push(l),i.push(e.starts[o])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function sI(e){let t=[],n=[],r=[],i=[];for(let o=0;o<e.len;o++){let a=e.texts[o];if(e.kinds[o]==="text"&&a.includes("-")){let l=a.split("-"),s=l.length>1;for(let c=0;c<l.length;c++){let d=l[c];if(!s)break;(d.length===0||!vv(d)||!Ro(d))&&(s=!1)}if(s){let c=0;for(let d=0;d<l.length;d++){let m=l[d],f=d<l.length-1?`${m}-`:m;t.push(f),n.push(!0),r.push("text"),i.push(e.starts[o]+c),c+=f.length}continue}}t.push(a),n.push(e.isWordLike[o]),r.push(e.kinds[o]),i.push(e.starts[o])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function lI(e){let t=[],n=[],r=[],i=[],o=0;for(;o<e.len;){let a=[e.texts[o]],l=e.isWordLike[o],s=e.kinds[o],c=e.starts[o];if(s==="glue"){let d=[a[0]],m=c;for(o++;o<e.len&&e.kinds[o]==="glue";)d.push(e.texts[o]),o++;let f=gt(d);if(o<e.len&&e.kinds[o]==="text")a[0]=f,a.push(e.texts[o]),l=e.isWordLike[o],s="text",c=m,o++;else{t.push(f),n.push(!1),r.push("glue"),i.push(m);continue}}else o++;if(s==="text")for(;o<e.len&&e.kinds[o]==="glue";){let d=[];for(;o<e.len&&e.kinds[o]==="glue";)d.push(e.texts[o]),o++;let m=gt(d);if(o<e.len&&e.kinds[o]==="text"){a.push(m,e.texts[o]),l=l||e.isWordLike[o],o++;continue}a.push(m)}t.push(gt(a)),n.push(l),r.push(s),i.push(c)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function uI(e){let t=e.texts.slice(),n=e.isWordLike.slice(),r=e.kinds.slice(),i=e.starts.slice();for(let o=0;o<t.length-1;o++){if(r[o]!=="text"||r[o+1]!=="text"||!Tt(t[o])||!Tt(t[o+1]))continue;let a=qF(t[o]);a!==null&&(t[o]=a.head,t[o+1]=a.tail+t[o+1],i[o+1]=i[o]+a.head.length)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function xv(e,t,n){let r=FF(),i=0,o=[],a=[],l=[],s=[],c=[],d=[],m=[],f=[],p=[],y=[],b=[],g=[];for(let k of r.segment(e))for(let w of QF(k.segment,k.isWordLike??!1,k.index,n)){let M=function(){d[R]!==null&&(a[R]=[pv(o,d,m,R)],d[R]=null),a[R].push(w.text),l[R]=l[R]||w.isWordLike,f[R]=f[R]||K,p[R]=p[R]||Z,y[R]=ne,b[R]=P,g[R]=hv(p[R],ae)},L=w.kind==="text",O=zF(w.text,w.isWordLike,w.kind),K=Tt(w.text),Z=fv(w.text),ae=Gs(w.text),ne=Bs(w.text),P=jF(w.text),R=i-1;t.carryCJKAfterClosingQuote&&L&&i>0&&s[R]==="text"&&K&&f[R]&&y[R]||L&&i>0&&s[R]==="text"&&VF(w.text)&&f[R]||L&&i>0&&s[R]==="text"&&b[R]?M():L&&i>0&&s[R]==="text"&&w.isWordLike&&Z&&g[R]?(M(),l[R]=!0):O!==null&&i>0&&s[R]==="text"&&d[R]===O?m[R]=(m[R]??1)+1:L&&!w.isWordLike&&i>0&&s[R]==="text"&&(WF(w.text)||w.text==="-"&&l[R])?M():(o[i]=w.text,a[i]=[w.text],l[i]=w.isWordLike,s[i]=w.kind,c[i]=w.start,d[i]=O,m[i]=O===null?0:1,f[i]=K,p[i]=Z,y[i]=ne,b[i]=P,g[i]=hv(Z,ae),i++)}for(let k=0;k<i;k++){if(d[k]!==null){o[k]=pv(o,d,m,k);continue}o[k]=gt(a[k])}for(let k=1;k<i;k++)s[k]==="text"&&!l[k]&&Xd(o[k])&&s[k-1]==="text"&&(o[k-1]+=o[k],l[k-1]=l[k-1]||l[k],o[k]="");let v=Array.from({length:i},()=>null),E=-1;for(let k=i-1;k>=0;k--){let w=o[k];if(w.length!==0){if(s[k]==="text"&&!l[k]&&$F(w)&&E>=0&&s[E]==="text"){let L=v[E]??[];L.push(w),v[E]=L,c[E]=c[k],o[k]="";continue}E=k}}for(let k=0;k<i;k++){let w=v[k];w!=null&&(o[k]=JF(w,o[k]))}let _=0;for(let k=0;k<i;k++){let w=o[k];w.length!==0&&(_!==k&&(o[_]=w,l[_]=l[k],s[_]=s[k],c[_]=c[k]),_++)}o.length=_,l.length=_,s.length=_,c.length=_;let F=lI({len:_,texts:o,isWordLike:l,kinds:s,starts:c}),D=uI(aI(sI(oI(rI(nI(F))))));for(let k=0;k<D.len-1;k++){let w=KF(D.texts[k]);w!==null&&(D.kinds[k]!=="space"&&D.kinds[k]!=="preserved-space"||D.kinds[k+1]!=="text"||!fv(D.texts[k+1])||(D.texts[k]=w.space,D.isWordLike[k]=!1,D.kinds[k]=D.kinds[k]==="preserved-space"?"preserved-space":"space",D.texts[k+1]=w.marks+D.texts[k+1],D.starts[k+1]=D.starts[k]+w.space.length))}return D}function cI(e,t){if(e.len===0)return[];if(!t.preserveHardBreaks)return[{startSegmentIndex:0,endSegmentIndex:e.len,consumedEndSegmentIndex:e.len}];let n=[],r=0;for(let i=0;i<e.len;i++)e.kinds[i]==="hard-break"&&(n.push({startSegmentIndex:r,endSegmentIndex:i,consumedEndSegmentIndex:i+1}),r=i+1);return r<e.len&&n.push({startSegmentIndex:r,endSegmentIndex:e.len,consumedEndSegmentIndex:e.len}),n}function dI(e){if(e.len<=1)return e;let t=[],n=[],r=[],i=[],o=null,a=!1,l=0,s=!1,c=!1;function d(){o!==null&&(t.push(gt(o)),n.push(a),r.push("text"),i.push(l),o=null)}for(let m=0;m<e.len;m++){let f=e.texts[m],p=e.kinds[m],y=e.isWordLike[m],b=e.starts[m];if(p==="text"){let g=OF(f),v=Os(f);if(o!==null&&s&&c){o.push(f),a=a||y,s=s||g,c=v;continue}d(),o=[f],a=y,l=b,s=g,c=v;continue}d(),t.push(f),n.push(y),r.push(p),i.push(b)}return d(),{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function Ev(e,t,n="normal",r="normal"){let i=MF(n),o=i.mode==="pre-wrap"?LF(e):kF(e);if(o.length===0)return{normalized:o,chunks:[],len:0,texts:[],isWordLike:[],kinds:[],starts:[]};let a=r==="keep-all"?dI(xv(o,t,i)):xv(o,t,i);return{normalized:o,chunks:cI(a,i),...a}}var Qr=null,Av=new Map,Zr=null,fI=96,mI=/\p{Emoji_Presentation}/u,pI=/[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u,Jd=null,_v=new Map;function Qd(){if(Qr!==null)return Qr;if(typeof OffscreenCanvas<"u")return Qr=new OffscreenCanvas(1,1).getContext("2d"),Qr;if(typeof document<"u")return Qr=document.createElement("canvas").getContext("2d"),Qr;throw new Error("Text measurement requires OffscreenCanvas or a DOM canvas context.")}function hI(e){let t=Av.get(e);return t||(t=new Map,Av.set(e,t)),t}function rn(e,t){let n=t.get(e);return n===void 0&&(n={width:Qd().measureText(e).width,containsCJK:Tt(e)},t.set(e,n)),n}function kn(){if(Zr!==null)return Zr;if(typeof navigator>"u")return Zr={lineFitEpsilon:.005,carryCJKAfterClosingQuote:!1,preferPrefixWidthsForBreakableRuns:!1,preferEarlySoftHyphenBreak:!1},Zr;let e=navigator.userAgent,n=navigator.vendor==="Apple Computer, Inc."&&e.includes("Safari/")&&!e.includes("Chrome/")&&!e.includes("Chromium/")&&!e.includes("CriOS/")&&!e.includes("FxiOS/")&&!e.includes("EdgiOS/"),r=e.includes("Chrome/")||e.includes("Chromium/")||e.includes("CriOS/")||e.includes("Edg/");return Zr={lineFitEpsilon:n?1/64:.005,carryCJKAfterClosingQuote:r,preferPrefixWidthsForBreakableRuns:n,preferEarlySoftHyphenBreak:n},Zr}function gI(e){let t=e.match(/(\d+(?:\.\d+)?)\s*px/);return t?parseFloat(t[1]):16}function wv(){return Jd===null&&(Jd=new Intl.Segmenter(void 0,{granularity:"grapheme"})),Jd}function bI(e){return mI.test(e)||e.includes("\uFE0F")}function Cv(e){return pI.test(e)}function xI(e,t){let n=_v.get(e);if(n!==void 0)return n;let r=Qd();r.font=e;let i=r.measureText("\u{1F600}").width;if(n=0,i>t+.5&&typeof document<"u"&&document.body!==null){let o=document.createElement("span");o.style.font=e,o.style.display="inline-block",o.style.visibility="hidden",o.style.position="absolute",o.textContent="\u{1F600}",document.body.appendChild(o);let a=o.getBoundingClientRect().width;document.body.removeChild(o),i-a>.5&&(n=i-a)}return _v.set(e,n),n}function yI(e){let t=0,n=wv();for(let r of n.segment(e))bI(r.segment)&&t++;return t}function SI(e,t){return t.emojiCount===void 0&&(t.emojiCount=yI(e)),t.emojiCount}function Mn(e,t,n){return n===0?t.width:t.width-SI(e,t)*n}function Tv(e,t,n,r,i){if(t.breakableFitAdvances!==void 0)return t.breakableFitAdvances;let o=wv(),a=[];for(let d of o.segment(e))a.push(d.segment);if(a.length<=1)return t.breakableFitAdvances=null,t.breakableFitAdvances;if(i==="sum-graphemes"){let d=[];for(let m of a){let f=rn(m,n);d.push(Mn(m,f,r))}return t.breakableFitAdvances=d,t.breakableFitAdvances}if(i==="pair-context"||a.length>fI){let d=[],m=null,f=0;for(let p of a){let y=rn(p,n),b=Mn(p,y,r);if(m===null)d.push(b);else{let g=m+p,v=rn(g,n);d.push(Mn(g,v,r)-f)}m=p,f=b}return t.breakableFitAdvances=d,t.breakableFitAdvances}let l=[],s="",c=0;for(let d of a){s+=d;let m=rn(s,n),f=Mn(s,m,r);l.push(f-c),c=f}return t.breakableFitAdvances=l,t.breakableFitAdvances}function Rv(e,t){let n=Qd();n.font=e;let r=hI(e),i=gI(e),o=t?xI(e,i):0;return{cache:r,fontSize:i,emojiCorrection:o}}function vI(e,t){for(;t<e.widths.length;){let n=e.kinds[t];if(n!=="space"&&n!=="zero-width-break"&&n!=="soft-hyphen")break;t++}return t}function Mv(e,t){if(t<=0)return 0;let n=e%t;return Math.abs(n)<=1e-6?t:t-n}function kv(e,t,n,r,i){let o=0,a=t;for(;o<e.length;){let l=a+e[o];if((o+1<e.length?l+i:l)>n+r)break;a=l,o++}return{fitCount:o,fittedWidth:a}}function EI(e,t){let n=0,r=e.chunks.length;for(;n<r;){let i=Math.floor((n+r)/2);t<e.chunks[i].consumedEndSegmentIndex?r=i:n=i+1}return n<e.chunks.length?n:-1}function Lv(e,t,n){let r=n.segmentIndex;if(n.graphemeIndex>0)return t;let i=e.chunks[t];if(i.startSegmentIndex===i.endSegmentIndex&&r===i.startSegmentIndex)return n.segmentIndex=r,n.graphemeIndex=0,t;for(r<i.startSegmentIndex&&(r=i.startSegmentIndex);r<i.endSegmentIndex;){let o=e.kinds[r];if(o!=="space"&&o!=="zero-width-break"&&o!=="soft-hyphen")return n.segmentIndex=r,n.graphemeIndex=0,t;r++}return i.consumedEndSegmentIndex>=e.widths.length?-1:(n.segmentIndex=i.consumedEndSegmentIndex,n.graphemeIndex=0,t+1)}function Nv(e,t){if(t.segmentIndex>=e.widths.length)return-1;let n=EI(e,t.segmentIndex);return n<0?-1:Lv(e,n,t)}function AI(e,t,n){if(n.segmentIndex>=e.widths.length)return-1;let r=t;for(;r<e.chunks.length&&n.segmentIndex>=e.chunks[r].consumedEndSegmentIndex;)r++;return r>=e.chunks.length?-1:Lv(e,r,n)}function Fv(e,t){return e.simpleLineWalkFastPath?Iv(e,t):Zd(e,t)}function Iv(e,t,n){let{widths:r,kinds:i,breakableFitAdvances:o}=e;if(r.length===0)return 0;let l=kn().lineFitEpsilon,s=t+l,c=0,d=0,m=!1,f=0,p=0,y=0,b=0,g=-1,v=0;function E(){g=-1,v=0}function _(O=y,K=b,Z=d){c++,n?.({startSegmentIndex:f,startGraphemeIndex:p,endSegmentIndex:O,endGraphemeIndex:K,width:Z}),d=0,m=!1,E()}function F(O,K){m=!0,f=O,p=0,y=O+1,b=0,d=K}function D(O,K,Z){m=!0,f=O,p=K,y=O,b=K+1,d=Z}function k(O,K){if(!m){F(O,K);return}d+=K,y=O+1,b=0}function w(O,K){let Z=o[O];for(let ae=K;ae<Z.length;ae++){let ne=Z[ae];m?d+ne>s?(_(),D(O,ae,ne)):(d+=ne,y=O,b=ae+1):D(O,ae,ne)}m&&y===O&&b===Z.length&&(y=O+1,b=0)}let L=0;for(;L<r.length&&!(!m&&(L=vI(e,L),L>=r.length));){let O=r[L],K=i[L],Z=K==="space"||K==="preserved-space"||K==="tab"||K==="zero-width-break"||K==="soft-hyphen";if(!m){O>t&&o[L]!==null?w(L,0):F(L,O),Z&&(g=L+1,v=d-O),L++;continue}if(d+O>s){if(Z){k(L,O),_(L+1,0,d-O),L++;continue}if(g>=0){if(y>g||y===g&&b>0){_();continue}_(g,0,v);continue}if(O>t&&o[L]!==null){_(),w(L,0),L++;continue}_();continue}k(L,O),Z&&(g=L+1,v=d-O),L++}return m&&_(),c}function Zd(e,t,n){if(e.simpleLineWalkFastPath)return Iv(e,t,n);let{widths:r,lineEndFitAdvances:i,lineEndPaintAdvances:o,kinds:a,breakableFitAdvances:l,discretionaryHyphenWidth:s,tabStopAdvance:c,chunks:d}=e;if(r.length===0||d.length===0)return 0;let m=kn(),f=m.lineFitEpsilon,p=t+f,y=0,b=0,g=!1,v=0,E=0,_=0,F=0,D=-1,k=0,w=0,L=null;function O(){D=-1,k=0,w=0,L=null}function K(V=_,ee=F,C=b){y++,n?.({startSegmentIndex:v,startGraphemeIndex:E,endSegmentIndex:V,endGraphemeIndex:ee,width:C}),b=0,g=!1,O()}function Z(V,ee){g=!0,v=V,E=0,_=V+1,F=0,b=ee}function ae(V,ee,C){g=!0,v=V,E=ee,_=V,F=ee+1,b=C}function ne(V,ee){if(!g){Z(V,ee);return}b+=ee,_=V+1,F=0}function P(V,ee,C,N){if(!ee)return;let j=V==="tab"?0:i[C],W=V==="tab"?N:o[C];D=C+1,k=b-N+j,w=b-N+W,L=V}function R(V,ee){let C=l[V];for(let N=ee;N<C.length;N++){let j=C[N];g?b+j>p?(K(),ae(V,N,j)):(b+=j,_=V,F=N+1):ae(V,N,j)}g&&_===V&&F===C.length&&(_=V+1,F=0)}function M(V){if(L!=="soft-hyphen")return!1;let ee=l[V];if(ee==null)return!1;let{fitCount:C,fittedWidth:N}=kv(ee,b,t,f,s);return C===0?!1:(b=N,_=V,F=C,O(),C===ee.length?(_=V+1,F=0,!0):(K(V,C,N+s),R(V,C),!0))}function z(V){y++,n?.({startSegmentIndex:V.startSegmentIndex,startGraphemeIndex:0,endSegmentIndex:V.consumedEndSegmentIndex,endGraphemeIndex:0,width:0}),O()}for(let V=0;V<d.length;V++){let ee=d[V];if(ee.startSegmentIndex===ee.endSegmentIndex){z(ee);continue}g=!1,b=0,v=ee.startSegmentIndex,E=0,_=ee.startSegmentIndex,F=0,O();let C=ee.startSegmentIndex;for(;C<ee.endSegmentIndex;){let N=a[C],j=N==="space"||N==="preserved-space"||N==="tab"||N==="zero-width-break"||N==="soft-hyphen",W=N==="tab"?Mv(b,c):r[C];if(N==="soft-hyphen"){g&&(_=C+1,F=0,D=C+1,k=b+s,w=b+s,L=N),C++;continue}if(!g){W>t&&l[C]!==null?R(C,0):Z(C,W),P(N,j,C,W),C++;continue}if(b+W>p){let q=b+(N==="tab"?0:i[C]),re=b+(N==="tab"?W:o[C]);if(L==="soft-hyphen"&&m.preferEarlySoftHyphenBreak&&k<=p){K(D,0,w);continue}if(L==="soft-hyphen"&&M(C)){C++;continue}if(j&&q<=p){ne(C,W),K(C+1,0,re),C++;continue}if(D>=0&&k<=p){if(_>D||_===D&&F>0){K();continue}let oe=D;K(oe,0,w),C=oe;continue}if(W>t&&l[C]!==null){K(),R(C,0),C++;continue}K();continue}ne(C,W),P(N,j,C,W),C++}if(g){let N=D===ee.consumedEndSegmentIndex?w:b;K(ee.consumedEndSegmentIndex,0,N)}}return y}function Dv(e,t,n,r){let i=e.chunks[n];if(i.startSegmentIndex===i.endSegmentIndex)return t.segmentIndex=i.consumedEndSegmentIndex,t.graphemeIndex=0,0;let{widths:o,lineEndFitAdvances:a,lineEndPaintAdvances:l,kinds:s,breakableFitAdvances:c,discretionaryHyphenWidth:d,tabStopAdvance:m}=e,f=kn(),p=f.lineFitEpsilon,y=r+p,b=0,g=!1,v=t.segmentIndex,E=t.graphemeIndex,_=-1,F=0,D=0,k=null;function w(){_=-1,F=0,D=0,k=null}function L(R=v,M=E,z=b){return g?(t.segmentIndex=R,t.graphemeIndex=M,z):null}function O(R,M){g=!0,v=R+1,E=0,b=M}function K(R,M,z){g=!0,v=R,E=M+1,b=z}function Z(R,M){if(!g){O(R,M);return}b+=M,v=R+1,E=0}function ae(R,M,z,V){if(!M)return;let ee=R==="tab"?0:a[z],C=R==="tab"?V:l[z];_=z+1,F=b-V+ee,D=b-V+C,k=R}function ne(R,M){let z=c[R];for(let V=M;V<z.length;V++){let ee=z[V];if(!g)K(R,V,ee);else{if(b+ee>y)return L();b+=ee,v=R,E=V+1}}return g&&v===R&&E===z.length&&(v=R+1,E=0),null}function P(R){if(k!=="soft-hyphen"||_<0)return null;let M=c[R]??null;if(M!==null){let{fitCount:z,fittedWidth:V}=kv(M,b,r,p,d);if(z===M.length)return b=V,v=R+1,E=0,w(),null;if(z>0)return L(R,z,V+d)}return F<=y?L(_,0,D):null}for(let R=t.segmentIndex;R<i.endSegmentIndex;R++){let M=s[R],z=M==="space"||M==="preserved-space"||M==="tab"||M==="zero-width-break"||M==="soft-hyphen",V=R===t.segmentIndex?t.graphemeIndex:0,ee=M==="tab"?Mv(b,m):o[R];if(M==="soft-hyphen"&&V===0){g&&(v=R+1,E=0,_=R+1,F=b+d,D=b+d,k=M);continue}if(!g){if(V>0){let N=ne(R,V);if(N!==null)return N}else if(ee>r&&c[R]!==null){let N=ne(R,0);if(N!==null)return N}else O(R,ee);ae(M,z,R,ee);continue}if(b+ee>y){let N=b+(M==="tab"?0:a[R]),j=b+(M==="tab"?ee:l[R]);if(k==="soft-hyphen"&&f.preferEarlySoftHyphenBreak&&F<=y)return L(_,0,D);let W=P(R);if(W!==null)return W;if(z&&N<=y)return Z(R,ee),L(R+1,0,j);if(_>=0&&F<=y)return v>_||v===_&&E>0?L():L(_,0,D);if(ee>r&&c[R]!==null){let U=L();if(U!==null)return U;let q=ne(R,0);if(q!==null)return q}return L()}Z(R,ee),ae(M,z,R,ee)}return _===i.consumedEndSegmentIndex&&E===0?L(i.consumedEndSegmentIndex,0,D):L(i.consumedEndSegmentIndex,0,b)}function _I(e,t,n){let{widths:r,kinds:i,breakableFitAdvances:o}=e,l=kn().lineFitEpsilon,s=n+l,c=0,d=!1,m=t.segmentIndex,f=t.graphemeIndex,p=-1,y=0;for(let b=t.segmentIndex;b<r.length;b++){let g=r[b],v=i[b],E=v==="space"||v==="preserved-space"||v==="tab"||v==="zero-width-break"||v==="soft-hyphen",_=b===t.segmentIndex?t.graphemeIndex:0,F=o[b];if(!d){if(_>0||g>n&&F!==null){let D=F,k=D[_];d=!0,c=k,m=b,f=_+1;for(let w=_+1;w<D.length;w++){let L=D[w];if(c+L>s)return t.segmentIndex=m,t.graphemeIndex=f,c;c+=L,m=b,f=w+1}m===b&&f===D.length&&(m=b+1,f=0)}else d=!0,c=g,m=b+1,f=0;E&&(p=b+1,y=c-g);continue}if(c+g>s)return E?(t.segmentIndex=b+1,t.graphemeIndex=0,c):p>=0?m>p||m===p&&f>0?(t.segmentIndex=m,t.graphemeIndex=f,c):(t.segmentIndex=p,t.graphemeIndex=0,y):(t.segmentIndex=m,t.graphemeIndex=f,c);c+=g,m=b+1,f=0,E&&(p=b+1,y=c-g)}return d?(t.segmentIndex=m,t.graphemeIndex=f,c):null}function wI(e,t,n){let r=Nv(e,t);return r<0?null:e.simpleLineWalkFastPath?_I(e,t,n):Dv(e,t,r,n)}function Pv(e,t){if(e.widths.length===0)return{lineCount:0,maxLineWidth:0};let n={segmentIndex:0,graphemeIndex:0},r=0,i=0;if(!e.simpleLineWalkFastPath){let o=Nv(e,n);for(;o>=0;){let a=Dv(e,n,o,t);if(a===null)return{lineCount:r,maxLineWidth:i};r++,a>i&&(i=a),o=AI(e,o,n)}return{lineCount:r,maxLineWidth:i}}for(;;){let o=wI(e,n,t);if(o===null)return{lineCount:r,maxLineWidth:i};r++,o>i&&(i=o)}}var ef=null;function CI(){return ef===null&&(ef=new Intl.Segmenter(void 0,{granularity:"grapheme"})),ef}function TI(e){return e?{widths:[],lineEndFitAdvances:[],lineEndPaintAdvances:[],kinds:[],simpleLineWalkFastPath:!0,segLevels:null,breakableFitAdvances:[],discretionaryHyphenWidth:0,tabStopAdvance:0,chunks:[],segments:[]}:{widths:[],lineEndFitAdvances:[],lineEndPaintAdvances:[],kinds:[],simpleLineWalkFastPath:!0,segLevels:null,breakableFitAdvances:[],discretionaryHyphenWidth:0,tabStopAdvance:0,chunks:[]}}function RI(e,t){let n=[],r=[],i=0,o=!1,a=!1,l=!1;function s(){r.length!==0&&(n.push({text:r.length===1?r[0]:r.join(""),start:i}),r=[],o=!1,a=!1,l=!1)}function c(m,f,p){r=[m],i=f,o=p,a=Bs(m),l=Mo.has(m)}function d(m,f){r.push(m),o=o||f;let p=Bs(m);m.length===1&&Rn.has(m)?a=a||p:a=p,l=!1}for(let m of CI().segment(e)){let f=m.segment,p=Tt(f);if(r.length===0){c(f,m.index,p);continue}if(l||Hs.has(f)||Rn.has(f)||t.carryCJKAfterClosingQuote&&p&&a){d(f,p);continue}if(!o&&!p){d(f,p);continue}s(),c(f,m.index,p)}return s(),n}function MI(e){if(e.length<=1)return e;let t=[],n=[e[0].text],r=e[0].start,i=Tt(e[0].text),o=Os(e[0].text);function a(){t.push({text:n.length===1?n[0]:n.join(""),start:r})}for(let l=1;l<e.length;l++){let s=e[l],c=Tt(s.text),d=Os(s.text);if(i&&o){n.push(s.text),i=i||c,o=d;continue}a(),n=[s.text],r=s.start,i=c,o=d}return a(),t}function kI(e,t,n,r){let i=kn(),{cache:o,emojiCorrection:a}=Rv(t,Cv(e.normalized)),l=Mn("-",rn("-",o),a),c=Mn(" ",rn(" ",o),a)*8;if(e.len===0)return TI(n);let d=[],m=[],f=[],p=[],y=e.chunks.length<=1,b=n?[]:null,g=[],v=n?[]:null,E=Array.from({length:e.len});function _(w,L,O,K,Z,ae,ne){Z!=="text"&&Z!=="space"&&Z!=="zero-width-break"&&(y=!1),d.push(L),m.push(O),f.push(K),p.push(Z),b?.push(ae),g.push(ne),v!==null&&v.push(w)}function F(w,L,O,K,Z){let ae=rn(w,o),ne=Mn(w,ae,a),P=L==="space"||L==="preserved-space"||L==="zero-width-break"?0:ne,R=L==="space"||L==="zero-width-break"?0:ne;if(Z&&K&&w.length>1){let M="sum-graphemes";Ro(w)?M="pair-context":i.preferPrefixWidthsForBreakableRuns&&(M="segment-prefixes");let z=Tv(w,ae,o,a,M);_(w,ne,P,R,L,O,z);return}_(w,ne,P,R,L,O,null)}for(let w=0;w<e.len;w++){E[w]=d.length;let L=e.texts[w],O=e.isWordLike[w],K=e.kinds[w],Z=e.starts[w];if(K==="soft-hyphen"){_(L,0,l,l,K,Z,null);continue}if(K==="hard-break"){_(L,0,0,0,K,Z,null);continue}if(K==="tab"){_(L,0,0,0,K,Z,null);continue}let ae=rn(L,o);if(K==="text"&&ae.containsCJK){let ne=RI(L,i),P=r==="keep-all"?MI(ne):ne;for(let R=0;R<P.length;R++){let M=P[R];F(M.text,"text",Z+M.start,O,r==="keep-all"||!Tt(M.text))}continue}F(L,K,Z,O,!0)}let D=LI(e.chunks,E,d.length),k=b===null?null:dv(e.normalized,b);return v!==null?{widths:d,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:p,simpleLineWalkFastPath:y,segLevels:k,breakableFitAdvances:g,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:D,segments:v}:{widths:d,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:p,simpleLineWalkFastPath:y,segLevels:k,breakableFitAdvances:g,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:D}}function LI(e,t,n){let r=[];for(let i=0;i<e.length;i++){let o=e[i],a=o.startSegmentIndex<t.length?t[o.startSegmentIndex]:n,l=o.endSegmentIndex<t.length?t[o.endSegmentIndex]:n,s=o.consumedEndSegmentIndex<t.length?t[o.consumedEndSegmentIndex]:n;r.push({startSegmentIndex:a,endSegmentIndex:l,consumedEndSegmentIndex:s})}return r}function Ov(e,t,n,r){let i=r?.wordBreak??"normal",o=Ev(e,kn(),r?.whiteSpace,i);return kI(o,t,n,i)}function Us(e,t,n){return Ov(e,t,!1,n)}function Hv(e,t,n){return Ov(e,t,!0,n)}function Ws(e,t,n){let r=Fv(e,t);return{lineCount:r,height:r*n}}function NI(e){return{width:e.width,start:{segmentIndex:e.startSegmentIndex,graphemeIndex:e.startGraphemeIndex},end:{segmentIndex:e.endSegmentIndex,graphemeIndex:e.endGraphemeIndex}}}function FI(e,t,n){return e.widths.length===0?0:Zd(e,t,r=>{n(NI(r))})}function Gv(e,t){return Pv(e,t)}function Bv(e){let t=0;return FI(e,Number.POSITIVE_INFINITY,n=>{n.width>t&&(t=n.width)}),t}var II={maxWidth:1600,baseFontSize:78,minFontSize:42,fontWeight:900,fontFamily:"Outfit",step:2};function Uv(e,t){let n={...II,...t},r=1.2;for(let i=n.baseFontSize;i>=n.minFontSize;i=Math.max(n.minFontSize,i-n.step)){let o=`${n.fontWeight} ${i}px ${n.fontFamily}`,a=Us(e,o),{lineCount:l}=Ws(a,n.maxWidth,i*r);if(l<=1)return{fontSize:i,fits:!0};if(i===n.minFontSize)break}return{fontSize:n.minFontSize,fits:!1}}var Wv={prepare:Us,layout:Ws,prepareWithSegments:Hv,measureLineStats:Gv,measureNaturalWidth:Bv};function Vv(e){return new URL(e,document.baseURI).href}var Ln="appifact-film:";function $v(e){let{iframe:t,runnerHtml:n,load:r}=e,i=(t.getAttribute("sandbox")??"").split(/\s+/);if(!i.includes("allow-scripts")||i.includes("allow-same-origin"))throw new Error('Film runners require sandbox="allow-scripts" without allow-same-origin');let o=0,a=!1,l=!1,s=null,c,d,m=new Promise((_,F)=>{c=_,d=F});m.catch(()=>{});let f=null,p=_=>{s=_,clearTimeout(y),d(_),f&&(clearTimeout(f.timer),f.reject(_),f=null)},y=setTimeout(()=>p(new Error("Film runner did not become ready within 20 s")),2e4),b=_=>{if(_.type!==Ln+"frame"&&_.type!==Ln+"frame-error"||!("seq"in _)||f===null||f.sequence!==_.seq)return;let F=f;f=null,clearTimeout(F.timer),_.type===Ln+"frame-error"?F.reject(new Error("message"in _?String(_.message):"Film frame failed")):F.resolve()},g=_=>{try{let F=t.contentWindow;if(!F)throw new Error("Film runner window is unavailable");F.postMessage(_,"*")}catch(F){p(F instanceof Error?F:new Error(String(F)))}},v=_=>{if(_.type===Ln+"hello"){if(a){p(new Error("Film runner reloaded; recreate the bridge before seeking"));return}a=!0,g({...r,type:Ln+"load"})}else _.type===Ln+"ready"&&a?(clearTimeout(y),c()):_.type===Ln+"error"&&p(new Error("message"in _?String(_.message):"Film runner failed"))},E=_=>{if(l||s||_.source!==t.contentWindow||_.origin!=="null")return;let F=_.data;!F||typeof F!="object"||!("type"in F)||(v(F),b(F))};return window.addEventListener("message",E),t.srcdoc=n,{ready:m,async render(_){if(await m,s)throw s;if(f)throw new Error("Film seeks must be serialized; use registerFrameSource");let F=++o;return new Promise((D,k)=>{let w=setTimeout(()=>{p(new Error("Film frame did not arrive within 15 s"))},15e3);f={sequence:F,resolve:D,reject:k,timer:w},g({type:Ln+"frame",t:_,seq:F})})},dispose(){l||(l=!0,window.removeEventListener("message",E),p(new Error("Film bridge was disposed")),t.srcdoc="")}}}window.__timelines=window.__timelines||{};Px();av();sv();uS();window.__hfHasFrameSources=ph;Dm();Ap();window.__hyperframes={assetUrl:Vv,fitTextFontSize:Uv,getVariables:Lp,pretext:Wv,registerRuntimeDataHandler:ev,setRuntimeData:Fs,clearRuntimeData:Is,registerFrameSource:hh,createFilmBridge:$v};function qv(){let e=window;e.__hyperframeRuntimeBootstrapped||(e.__hyperframeRuntimeBootstrapped=!0,uv())}function zv(){try{ar();let e=Array.from(document.querySelectorAll(Wb));e.length===0?qv():ds(e,qv).catch(t=>{fi(t),reportError(t)})}catch(e){throw fi(e),e}}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",zv,{once:!0}):zv();})();
|
|
1124
|
+
`)}var vf=null,ZI;function eD(){return vf===null&&(vf=new Intl.Segmenter(ZI,{granularity:"word"})),vf}var tD=/\p{Script=Arabic}/u,ol=/\p{M}/u,oE=/\p{Nd}/u;function Jv(e){return tD.test(e)}function Qv(e){return e>=19968&&e<=40959||e>=13312&&e<=19903||e>=131072&&e<=173791||e>=173824&&e<=177983||e>=177984&&e<=178207||e>=178208&&e<=183983||e>=183984&&e<=191471||e>=191472&&e<=192093||e>=194560&&e<=195103||e>=196608&&e<=201551||e>=201552&&e<=205743||e>=205744&&e<=210041||e>=63744&&e<=64255||e>=12288&&e<=12351||e>=12352&&e<=12447||e>=12448&&e<=12543||e>=44032&&e<=55215||e>=65280&&e<=65519}function Nt(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(!(n<12288)){if(n>=55296&&n<=56319&&t+1<e.length){let r=e.charCodeAt(t+1);if(r>=56320&&r<=57343){let o=(n-55296<<10)+(r-56320)+65536;if(Qv(o))return!0;t++;continue}}if(Qv(n))return!0}}return!1}function nD(e){let t=sl(e);return t!==null&&(al.has(t)||Ln.has(t))}var rD=new Set(["\xA0","\u202F","\u2060","\uFEFF"]);function oD(e){return Nt(e)}function iD(e){let t=sl(e);return t!==null&&rD.has(t)}function il(e){return!nD(e)&&!iD(e)}var al=new Set(["\uFF0C","\uFF0E","\uFF01","\uFF1A","\uFF1B","\uFF1F","\u3001","\u3002","\u30FB","\uFF09","\u3015","\u3009","\u300B","\u300D","\u300F","\u3011","\u3017","\u3019","\u301B","\u30FC","\u3005","\u303B","\u309D","\u309E","\u30FD","\u30FE"]),Oi=new Set(['"',"(","[","{","\u201C","\u2018","\xAB","\u2039","\uFF08","\u3014","\u3008","\u300A","\u300C","\u300E","\u3010","\u3016","\u3018","\u301A"]),Af=new Set(["'","\u2019"]),Ln=new Set([".",",","!","?",":",";","\u060C","\u061B","\u061F","\u0964","\u0965","\u104A","\u104B","\u104C","\u104D","\u104F",")","]","}","%",'"',"\u201D","\u2019","\xBB","\u203A","\u2026"]),aD=new Set([":",".","\u060C","\u061B"]),sD=new Set(["\u104F"]),lD=new Set(["\u201D","\u2019","\xBB","\u203A","\u300D","\u300F","\u3011","\u300B","\u3009","\u3015","\uFF09"]);function uD(e){if(wf(e))return!0;let t=!1;for(let n of e){if(Ln.has(n)){t=!0;continue}if(!(t&&ol.test(n)))return!1}return t}function cD(e){for(let t of e)if(!al.has(t)&&!Ln.has(t))return!1;return e.length>0}function dD(e){if(wf(e))return!0;for(let t of e)if(!Oi.has(t)&&!Af.has(t)&&!ol.test(t))return!1;return e.length>0}function wf(e){let t=!1;for(let n of e)if(!(n==="\\"||ol.test(n))){if(Oi.has(n)||Ln.has(n)||Af.has(n)){t=!0;continue}return!1}return t}function iE(e,t){let n=t-1;if(n<=0)return Math.max(n,0);let r=e.charCodeAt(n);if(r<56320||r>57343)return n;let o=n-1;if(o<0)return n;let i=e.charCodeAt(o);return i>=55296&&i<=56319?o:n}function sl(e){if(e.length===0)return null;let t=iE(e,e.length);return e.slice(t)}function fD(e){let t=Array.from(e),n=t.length;for(;n>0;){let r=t[n-1];if(ol.test(r)){n--;continue}if(Oi.has(r)||Af.has(r)){n--;continue}break}return n<=0||n===t.length?null:{head:t.slice(0,n).join(""),tail:t.slice(n).join("")}}function mD(e,t,n){return n==="text"&&!t&&e.length===1&&e!=="-"&&e!=="\u2014"?e:null}function Zv(e,t,n,r){let o=t[r],i=e[r];if(o==null)return i;let a=n[r];if(i.length===a)return i;let l=o.repeat(a);return e[r]=l,l}function eE(e,t){return e&&t!==null&&aD.has(t)}function pD(e){let t=sl(e);return t!==null&&sD.has(t)}function hD(e){if(e.length<2||e[0]!==" ")return null;let t=e.slice(1);return/^\p{M}+$/u.test(t)?{space:" ",marks:t}:null}function ll(e){let t=e.length;for(;t>0;){let n=iE(e,t),r=e.slice(n,t);if(lD.has(r))return!0;if(!Ln.has(r))return!1;t=n}return!1}function gD(e,t){if(t.preserveOrdinarySpaces||t.preserveHardBreaks){if(e===" ")return"preserved-space";if(e===" ")return"tab";if(t.preserveHardBreaks&&e===`
|
|
1125
|
+
`)return"hard-break"}return e===" "?"space":e==="\xA0"||e==="\u202F"||e==="\u2060"||e==="\uFEFF"?"glue":e==="\u200B"?"zero-width-break":e==="\xAD"?"soft-hyphen":"text"}var bD=/[\x20\t\n\xA0\xAD\u200B\u202F\u2060\uFEFF]/;function yt(e){return e.length===1?e[0]:e.join("")}function xD(e,t){let n=[];for(let r=e.length-1;r>=0;r--)n.push(e[r]);return n.push(t),yt(n)}function yD(e,t,n,r){if(!bD.test(e))return[{text:e,isWordLike:t,kind:"text",start:n}];let o=[],i=null,a=[],l=n,s=!1,c=0;for(let d of e){let f=gD(d,r),m=f==="text"&&t;if(i!==null&&f===i&&m===s){a.push(d),c+=d.length;continue}i!==null&&o.push({text:yt(a),isWordLike:s,kind:i,start:l}),i=f,a=[d],l=n+c,s=m,c+=d.length}return i!==null&&o.push({text:yt(a),isWordLike:s,kind:i,start:l}),o}function Ef(e){return e==="space"||e==="preserved-space"||e==="zero-width-break"||e==="hard-break"}var SD=/^[A-Za-z][A-Za-z0-9+.-]*:$/;function vD(e,t){let n=e.texts[t];return n.startsWith("www.")?!0:SD.test(n)&&t+1<e.len&&e.kinds[t+1]==="text"&&e.texts[t+1]==="//"}function ED(e){return e.includes("?")&&(e.includes("://")||e.startsWith("www."))}function AD(e){let t=e.texts.slice(),n=e.isWordLike.slice(),r=e.kinds.slice(),o=e.starts.slice();for(let a=0;a<e.len;a++){if(r[a]!=="text"||!vD(e,a))continue;let l=[t[a]],s=a+1;for(;s<e.len&&!Ef(r[s]);){l.push(t[s]),n[a]=!0;let c=t[s].includes("?");if(r[s]="text",t[s]="",s++,c)break}t[a]=yt(l)}let i=0;for(let a=0;a<t.length;a++){let l=t[a];l.length!==0&&(i!==a&&(t[i]=l,n[i]=n[a],r[i]=r[a],o[i]=o[a]),i++)}return t.length=i,n.length=i,r.length=i,o.length=i,{len:i,texts:t,isWordLike:n,kinds:r,starts:o}}function wD(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i];if(t.push(a),n.push(e.isWordLike[i]),r.push(e.kinds[i]),o.push(e.starts[i]),!ED(a))continue;let l=i+1;if(l>=e.len||Ef(e.kinds[l]))continue;let s=[],c=e.starts[l],d=l;for(;d<e.len&&!Ef(e.kinds[d]);)s.push(e.texts[d]),d++;s.length>0&&(t.push(yt(s)),n.push(!0),r.push("text"),o.push(c),i=d-1)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}var _D=new Set([":","-","/","\xD7",",",".","+","\u2013","\u2014"]),tE=/^[A-Za-z0-9_]+[,:;]*$/,nE=/[,:;]+$/;function aE(e){for(let t of e)if(oE.test(t))return!0;return!1}function Pi(e){if(e.length===0)return!1;for(let t of e)if(!(oE.test(t)||_D.has(t)))return!1;return!0}function CD(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i],l=e.kinds[i];if(l==="text"&&Pi(a)&&aE(a)){let s=[a],c=i+1;for(;c<e.len&&e.kinds[c]==="text"&&Pi(e.texts[c]);)s.push(e.texts[c]),c++;t.push(yt(s)),n.push(!0),r.push("text"),o.push(e.starts[i]),i=c-1;continue}t.push(a),n.push(e.isWordLike[i]),r.push(l),o.push(e.starts[i])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function TD(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i],l=e.kinds[i],s=e.isWordLike[i];if(l==="text"&&s&&tE.test(a)){let c=[a],d=nE.test(a),f=i+1;for(;d&&f<e.len&&e.kinds[f]==="text"&&e.isWordLike[f]&&tE.test(e.texts[f]);){let m=e.texts[f];c.push(m),d=nE.test(m),f++}t.push(yt(c)),n.push(!0),r.push("text"),o.push(e.starts[i]),i=f-1;continue}t.push(a),n.push(s),r.push(l),o.push(e.starts[i])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function RD(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i];if(e.kinds[i]==="text"&&a.includes("-")){let l=a.split("-"),s=l.length>1;for(let c=0;c<l.length;c++){let d=l[c];if(!s)break;(d.length===0||!aE(d)||!Pi(d))&&(s=!1)}if(s){let c=0;for(let d=0;d<l.length;d++){let f=l[d],m=d<l.length-1?`${f}-`:f;t.push(m),n.push(!0),r.push("text"),o.push(e.starts[i]+c),c+=m.length}continue}}t.push(a),n.push(e.isWordLike[i]),r.push(e.kinds[i]),o.push(e.starts[i])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function MD(e){let t=[],n=[],r=[],o=[],i=0;for(;i<e.len;){let a=[e.texts[i]],l=e.isWordLike[i],s=e.kinds[i],c=e.starts[i];if(s==="glue"){let d=[a[0]],f=c;for(i++;i<e.len&&e.kinds[i]==="glue";)d.push(e.texts[i]),i++;let m=yt(d);if(i<e.len&&e.kinds[i]==="text")a[0]=m,a.push(e.texts[i]),l=e.isWordLike[i],s="text",c=f,i++;else{t.push(m),n.push(!1),r.push("glue"),o.push(f);continue}}else i++;if(s==="text")for(;i<e.len&&e.kinds[i]==="glue";){let d=[];for(;i<e.len&&e.kinds[i]==="glue";)d.push(e.texts[i]),i++;let f=yt(d);if(i<e.len&&e.kinds[i]==="text"){a.push(f,e.texts[i]),l=l||e.isWordLike[i],i++;continue}a.push(f)}t.push(yt(a)),n.push(l),r.push(s),o.push(c)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function kD(e){let t=e.texts.slice(),n=e.isWordLike.slice(),r=e.kinds.slice(),o=e.starts.slice();for(let i=0;i<t.length-1;i++){if(r[i]!=="text"||r[i+1]!=="text"||!Nt(t[i])||!Nt(t[i+1]))continue;let a=fD(t[i]);a!==null&&(t[i]=a.head,t[i+1]=a.tail+t[i+1],o[i+1]=o[i]+a.head.length)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function rE(e,t,n){let r=eD(),o=0,i=[],a=[],l=[],s=[],c=[],d=[],f=[],m=[],p=[],x=[],b=[],y=[];for(let k of r.segment(e))for(let A of yD(k.segment,k.isWordLike??!1,k.index,n)){let M=function(){d[R]!==null&&(a[R]=[Zv(i,d,f,R)],d[R]=null),a[R].push(A.text),l[R]=l[R]||A.isWordLike,m[R]=m[R]||q,p[R]=p[R]||X,x[R]=J,b[R]=D,y[R]=eE(p[R],Z)},L=A.kind==="text",P=mD(A.text,A.isWordLike,A.kind),q=Nt(A.text),X=Jv(A.text),Z=sl(A.text),J=ll(A.text),D=pD(A.text),R=o-1;t.carryCJKAfterClosingQuote&&L&&o>0&&s[R]==="text"&&q&&m[R]&&x[R]||L&&o>0&&s[R]==="text"&&cD(A.text)&&m[R]||L&&o>0&&s[R]==="text"&&b[R]?M():L&&o>0&&s[R]==="text"&&A.isWordLike&&X&&y[R]?(M(),l[R]=!0):P!==null&&o>0&&s[R]==="text"&&d[R]===P?f[R]=(f[R]??1)+1:L&&!A.isWordLike&&o>0&&s[R]==="text"&&(uD(A.text)||A.text==="-"&&l[R])?M():(i[o]=A.text,a[o]=[A.text],l[o]=A.isWordLike,s[o]=A.kind,c[o]=A.start,d[o]=P,f[o]=P===null?0:1,m[o]=q,p[o]=X,x[o]=J,b[o]=D,y[o]=eE(X,Z),o++)}for(let k=0;k<o;k++){if(d[k]!==null){i[k]=Zv(i,d,f,k);continue}i[k]=yt(a[k])}for(let k=1;k<o;k++)s[k]==="text"&&!l[k]&&wf(i[k])&&s[k-1]==="text"&&(i[k-1]+=i[k],l[k-1]=l[k-1]||l[k],i[k]="");let E=Array.from({length:o},()=>null),v=-1;for(let k=o-1;k>=0;k--){let A=i[k];if(A.length!==0){if(s[k]==="text"&&!l[k]&&dD(A)&&v>=0&&s[v]==="text"){let L=E[v]??[];L.push(A),E[v]=L,c[v]=c[k],i[k]="";continue}v=k}}for(let k=0;k<o;k++){let A=E[k];A!=null&&(i[k]=xD(A,i[k]))}let _=0;for(let k=0;k<o;k++){let A=i[k];A.length!==0&&(_!==k&&(i[_]=A,l[_]=l[k],s[_]=s[k],c[_]=c[k]),_++)}i.length=_,l.length=_,s.length=_,c.length=_;let H=MD({len:_,texts:i,isWordLike:l,kinds:s,starts:c}),I=kD(TD(RD(CD(wD(AD(H))))));for(let k=0;k<I.len-1;k++){let A=hD(I.texts[k]);A!==null&&(I.kinds[k]!=="space"&&I.kinds[k]!=="preserved-space"||I.kinds[k+1]!=="text"||!Jv(I.texts[k+1])||(I.texts[k]=A.space,I.isWordLike[k]=!1,I.kinds[k]=I.kinds[k]==="preserved-space"?"preserved-space":"space",I.texts[k+1]=A.marks+I.texts[k+1],I.starts[k+1]=I.starts[k]+A.space.length))}return I}function LD(e,t){if(e.len===0)return[];if(!t.preserveHardBreaks)return[{startSegmentIndex:0,endSegmentIndex:e.len,consumedEndSegmentIndex:e.len}];let n=[],r=0;for(let o=0;o<e.len;o++)e.kinds[o]==="hard-break"&&(n.push({startSegmentIndex:r,endSegmentIndex:o,consumedEndSegmentIndex:o+1}),r=o+1);return r<e.len&&n.push({startSegmentIndex:r,endSegmentIndex:e.len,consumedEndSegmentIndex:e.len}),n}function ND(e){if(e.len<=1)return e;let t=[],n=[],r=[],o=[],i=null,a=!1,l=0,s=!1,c=!1;function d(){i!==null&&(t.push(yt(i)),n.push(a),r.push("text"),o.push(l),i=null)}for(let f=0;f<e.len;f++){let m=e.texts[f],p=e.kinds[f],x=e.isWordLike[f],b=e.starts[f];if(p==="text"){let y=oD(m),E=il(m);if(i!==null&&s&&c){i.push(m),a=a||x,s=s||y,c=E;continue}d(),i=[m],a=x,l=b,s=y,c=E;continue}d(),t.push(m),n.push(x),r.push(p),o.push(b)}return d(),{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function sE(e,t,n="normal",r="normal"){let o=XI(n),i=o.mode==="pre-wrap"?QI(e):JI(e);if(i.length===0)return{normalized:i,chunks:[],len:0,texts:[],isWordLike:[],kinds:[],starts:[]};let a=r==="keep-all"?ND(rE(i,t,o)):rE(i,t,o);return{normalized:i,chunks:LD(a,o),...a}}var oo=null,lE=new Map,io=null,FD=96,ID=/\p{Emoji_Presentation}/u,DD=/[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u,_f=null,uE=new Map;function Cf(){if(oo!==null)return oo;if(typeof OffscreenCanvas<"u")return oo=new OffscreenCanvas(1,1).getContext("2d"),oo;if(typeof document<"u")return oo=document.createElement("canvas").getContext("2d"),oo;throw new Error("Text measurement requires OffscreenCanvas or a DOM canvas context.")}function PD(e){let t=lE.get(e);return t||(t=new Map,lE.set(e,t)),t}function ln(e,t){let n=t.get(e);return n===void 0&&(n={width:Cf().measureText(e).width,containsCJK:Nt(e)},t.set(e,n)),n}function Fn(){if(io!==null)return io;if(typeof navigator>"u")return io={lineFitEpsilon:.005,carryCJKAfterClosingQuote:!1,preferPrefixWidthsForBreakableRuns:!1,preferEarlySoftHyphenBreak:!1},io;let e=navigator.userAgent,n=navigator.vendor==="Apple Computer, Inc."&&e.includes("Safari/")&&!e.includes("Chrome/")&&!e.includes("Chromium/")&&!e.includes("CriOS/")&&!e.includes("FxiOS/")&&!e.includes("EdgiOS/"),r=e.includes("Chrome/")||e.includes("Chromium/")||e.includes("CriOS/")||e.includes("Edg/");return io={lineFitEpsilon:n?1/64:.005,carryCJKAfterClosingQuote:r,preferPrefixWidthsForBreakableRuns:n,preferEarlySoftHyphenBreak:n},io}function OD(e){let t=e.match(/(\d+(?:\.\d+)?)\s*px/);return t?parseFloat(t[1]):16}function cE(){return _f===null&&(_f=new Intl.Segmenter(void 0,{granularity:"grapheme"})),_f}function HD(e){return ID.test(e)||e.includes("\uFE0F")}function dE(e){return DD.test(e)}function GD(e,t){let n=uE.get(e);if(n!==void 0)return n;let r=Cf();r.font=e;let o=r.measureText("\u{1F600}").width;if(n=0,o>t+.5&&typeof document<"u"&&document.body!==null){let i=document.createElement("span");i.style.font=e,i.style.display="inline-block",i.style.visibility="hidden",i.style.position="absolute",i.textContent="\u{1F600}",document.body.appendChild(i);let a=i.getBoundingClientRect().width;document.body.removeChild(i),o-a>.5&&(n=o-a)}return uE.set(e,n),n}function BD(e){let t=0,n=cE();for(let r of n.segment(e))HD(r.segment)&&t++;return t}function UD(e,t){return t.emojiCount===void 0&&(t.emojiCount=BD(e)),t.emojiCount}function Nn(e,t,n){return n===0?t.width:t.width-UD(e,t)*n}function fE(e,t,n,r,o){if(t.breakableFitAdvances!==void 0)return t.breakableFitAdvances;let i=cE(),a=[];for(let d of i.segment(e))a.push(d.segment);if(a.length<=1)return t.breakableFitAdvances=null,t.breakableFitAdvances;if(o==="sum-graphemes"){let d=[];for(let f of a){let m=ln(f,n);d.push(Nn(f,m,r))}return t.breakableFitAdvances=d,t.breakableFitAdvances}if(o==="pair-context"||a.length>FD){let d=[],f=null,m=0;for(let p of a){let x=ln(p,n),b=Nn(p,x,r);if(f===null)d.push(b);else{let y=f+p,E=ln(y,n);d.push(Nn(y,E,r)-m)}f=p,m=b}return t.breakableFitAdvances=d,t.breakableFitAdvances}let l=[],s="",c=0;for(let d of a){s+=d;let f=ln(s,n),m=Nn(s,f,r);l.push(m-c),c=m}return t.breakableFitAdvances=l,t.breakableFitAdvances}function mE(e,t){let n=Cf();n.font=e;let r=PD(e),o=OD(e),i=t?GD(e,o):0;return{cache:r,fontSize:o,emojiCorrection:i}}function WD(e,t){for(;t<e.widths.length;){let n=e.kinds[t];if(n!=="space"&&n!=="zero-width-break"&&n!=="soft-hyphen")break;t++}return t}function pE(e,t){if(t<=0)return 0;let n=e%t;return Math.abs(n)<=1e-6?t:t-n}function hE(e,t,n,r,o){let i=0,a=t;for(;i<e.length;){let l=a+e[i];if((i+1<e.length?l+o:l)>n+r)break;a=l,i++}return{fitCount:i,fittedWidth:a}}function VD(e,t){let n=0,r=e.chunks.length;for(;n<r;){let o=Math.floor((n+r)/2);t<e.chunks[o].consumedEndSegmentIndex?r=o:n=o+1}return n<e.chunks.length?n:-1}function gE(e,t,n){let r=n.segmentIndex;if(n.graphemeIndex>0)return t;let o=e.chunks[t];if(o.startSegmentIndex===o.endSegmentIndex&&r===o.startSegmentIndex)return n.segmentIndex=r,n.graphemeIndex=0,t;for(r<o.startSegmentIndex&&(r=o.startSegmentIndex);r<o.endSegmentIndex;){let i=e.kinds[r];if(i!=="space"&&i!=="zero-width-break"&&i!=="soft-hyphen")return n.segmentIndex=r,n.graphemeIndex=0,t;r++}return o.consumedEndSegmentIndex>=e.widths.length?-1:(n.segmentIndex=o.consumedEndSegmentIndex,n.graphemeIndex=0,t+1)}function bE(e,t){if(t.segmentIndex>=e.widths.length)return-1;let n=VD(e,t.segmentIndex);return n<0?-1:gE(e,n,t)}function $D(e,t,n){if(n.segmentIndex>=e.widths.length)return-1;let r=t;for(;r<e.chunks.length&&n.segmentIndex>=e.chunks[r].consumedEndSegmentIndex;)r++;return r>=e.chunks.length?-1:gE(e,r,n)}function xE(e,t){return e.simpleLineWalkFastPath?yE(e,t):Tf(e,t)}function yE(e,t,n){let{widths:r,kinds:o,breakableFitAdvances:i}=e;if(r.length===0)return 0;let l=Fn().lineFitEpsilon,s=t+l,c=0,d=0,f=!1,m=0,p=0,x=0,b=0,y=-1,E=0;function v(){y=-1,E=0}function _(P=x,q=b,X=d){c++,n?.({startSegmentIndex:m,startGraphemeIndex:p,endSegmentIndex:P,endGraphemeIndex:q,width:X}),d=0,f=!1,v()}function H(P,q){f=!0,m=P,p=0,x=P+1,b=0,d=q}function I(P,q,X){f=!0,m=P,p=q,x=P,b=q+1,d=X}function k(P,q){if(!f){H(P,q);return}d+=q,x=P+1,b=0}function A(P,q){let X=i[P];for(let Z=q;Z<X.length;Z++){let J=X[Z];f?d+J>s?(_(),I(P,Z,J)):(d+=J,x=P,b=Z+1):I(P,Z,J)}f&&x===P&&b===X.length&&(x=P+1,b=0)}let L=0;for(;L<r.length&&!(!f&&(L=WD(e,L),L>=r.length));){let P=r[L],q=o[L],X=q==="space"||q==="preserved-space"||q==="tab"||q==="zero-width-break"||q==="soft-hyphen";if(!f){P>t&&i[L]!==null?A(L,0):H(L,P),X&&(y=L+1,E=d-P),L++;continue}if(d+P>s){if(X){k(L,P),_(L+1,0,d-P),L++;continue}if(y>=0){if(x>y||x===y&&b>0){_();continue}_(y,0,E);continue}if(P>t&&i[L]!==null){_(),A(L,0),L++;continue}_();continue}k(L,P),X&&(y=L+1,E=d-P),L++}return f&&_(),c}function Tf(e,t,n){if(e.simpleLineWalkFastPath)return yE(e,t,n);let{widths:r,lineEndFitAdvances:o,lineEndPaintAdvances:i,kinds:a,breakableFitAdvances:l,discretionaryHyphenWidth:s,tabStopAdvance:c,chunks:d}=e;if(r.length===0||d.length===0)return 0;let f=Fn(),m=f.lineFitEpsilon,p=t+m,x=0,b=0,y=!1,E=0,v=0,_=0,H=0,I=-1,k=0,A=0,L=null;function P(){I=-1,k=0,A=0,L=null}function q(W=_,ee=H,C=b){x++,n?.({startSegmentIndex:E,startGraphemeIndex:v,endSegmentIndex:W,endGraphemeIndex:ee,width:C}),b=0,y=!1,P()}function X(W,ee){y=!0,E=W,v=0,_=W+1,H=0,b=ee}function Z(W,ee,C){y=!0,E=W,v=ee,_=W,H=ee+1,b=C}function J(W,ee){if(!y){X(W,ee);return}b+=ee,_=W+1,H=0}function D(W,ee,C,N){if(!ee)return;let K=W==="tab"?0:o[C],$=W==="tab"?N:i[C];I=C+1,k=b-N+K,A=b-N+$,L=W}function R(W,ee){let C=l[W];for(let N=ee;N<C.length;N++){let K=C[N];y?b+K>p?(q(),Z(W,N,K)):(b+=K,_=W,H=N+1):Z(W,N,K)}y&&_===W&&H===C.length&&(_=W+1,H=0)}function M(W){if(L!=="soft-hyphen")return!1;let ee=l[W];if(ee==null)return!1;let{fitCount:C,fittedWidth:N}=hE(ee,b,t,m,s);return C===0?!1:(b=N,_=W,H=C,P(),C===ee.length?(_=W+1,H=0,!0):(q(W,C,N+s),R(W,C),!0))}function j(W){x++,n?.({startSegmentIndex:W.startSegmentIndex,startGraphemeIndex:0,endSegmentIndex:W.consumedEndSegmentIndex,endGraphemeIndex:0,width:0}),P()}for(let W=0;W<d.length;W++){let ee=d[W];if(ee.startSegmentIndex===ee.endSegmentIndex){j(ee);continue}y=!1,b=0,E=ee.startSegmentIndex,v=0,_=ee.startSegmentIndex,H=0,P();let C=ee.startSegmentIndex;for(;C<ee.endSegmentIndex;){let N=a[C],K=N==="space"||N==="preserved-space"||N==="tab"||N==="zero-width-break"||N==="soft-hyphen",$=N==="tab"?pE(b,c):r[C];if(N==="soft-hyphen"){y&&(_=C+1,H=0,I=C+1,k=b+s,A=b+s,L=N),C++;continue}if(!y){$>t&&l[C]!==null?R(C,0):X(C,$),D(N,K,C,$),C++;continue}if(b+$>p){let z=b+(N==="tab"?0:o[C]),re=b+(N==="tab"?$:i[C]);if(L==="soft-hyphen"&&f.preferEarlySoftHyphenBreak&&k<=p){q(I,0,A);continue}if(L==="soft-hyphen"&&M(C)){C++;continue}if(K&&z<=p){J(C,$),q(C+1,0,re),C++;continue}if(I>=0&&k<=p){if(_>I||_===I&&H>0){q();continue}let oe=I;q(oe,0,A),C=oe;continue}if($>t&&l[C]!==null){q(),R(C,0),C++;continue}q();continue}J(C,$),D(N,K,C,$),C++}if(y){let N=I===ee.consumedEndSegmentIndex?A:b;q(ee.consumedEndSegmentIndex,0,N)}}return x}function SE(e,t,n,r){let o=e.chunks[n];if(o.startSegmentIndex===o.endSegmentIndex)return t.segmentIndex=o.consumedEndSegmentIndex,t.graphemeIndex=0,0;let{widths:i,lineEndFitAdvances:a,lineEndPaintAdvances:l,kinds:s,breakableFitAdvances:c,discretionaryHyphenWidth:d,tabStopAdvance:f}=e,m=Fn(),p=m.lineFitEpsilon,x=r+p,b=0,y=!1,E=t.segmentIndex,v=t.graphemeIndex,_=-1,H=0,I=0,k=null;function A(){_=-1,H=0,I=0,k=null}function L(R=E,M=v,j=b){return y?(t.segmentIndex=R,t.graphemeIndex=M,j):null}function P(R,M){y=!0,E=R+1,v=0,b=M}function q(R,M,j){y=!0,E=R,v=M+1,b=j}function X(R,M){if(!y){P(R,M);return}b+=M,E=R+1,v=0}function Z(R,M,j,W){if(!M)return;let ee=R==="tab"?0:a[j],C=R==="tab"?W:l[j];_=j+1,H=b-W+ee,I=b-W+C,k=R}function J(R,M){let j=c[R];for(let W=M;W<j.length;W++){let ee=j[W];if(!y)q(R,W,ee);else{if(b+ee>x)return L();b+=ee,E=R,v=W+1}}return y&&E===R&&v===j.length&&(E=R+1,v=0),null}function D(R){if(k!=="soft-hyphen"||_<0)return null;let M=c[R]??null;if(M!==null){let{fitCount:j,fittedWidth:W}=hE(M,b,r,p,d);if(j===M.length)return b=W,E=R+1,v=0,A(),null;if(j>0)return L(R,j,W+d)}return H<=x?L(_,0,I):null}for(let R=t.segmentIndex;R<o.endSegmentIndex;R++){let M=s[R],j=M==="space"||M==="preserved-space"||M==="tab"||M==="zero-width-break"||M==="soft-hyphen",W=R===t.segmentIndex?t.graphemeIndex:0,ee=M==="tab"?pE(b,f):i[R];if(M==="soft-hyphen"&&W===0){y&&(E=R+1,v=0,_=R+1,H=b+d,I=b+d,k=M);continue}if(!y){if(W>0){let N=J(R,W);if(N!==null)return N}else if(ee>r&&c[R]!==null){let N=J(R,0);if(N!==null)return N}else P(R,ee);Z(M,j,R,ee);continue}if(b+ee>x){let N=b+(M==="tab"?0:a[R]),K=b+(M==="tab"?ee:l[R]);if(k==="soft-hyphen"&&m.preferEarlySoftHyphenBreak&&H<=x)return L(_,0,I);let $=D(R);if($!==null)return $;if(j&&N<=x)return X(R,ee),L(R+1,0,K);if(_>=0&&H<=x)return E>_||E===_&&v>0?L():L(_,0,I);if(ee>r&&c[R]!==null){let U=L();if(U!==null)return U;let z=J(R,0);if(z!==null)return z}return L()}X(R,ee),Z(M,j,R,ee)}return _===o.consumedEndSegmentIndex&&v===0?L(o.consumedEndSegmentIndex,0,I):L(o.consumedEndSegmentIndex,0,b)}function qD(e,t,n){let{widths:r,kinds:o,breakableFitAdvances:i}=e,l=Fn().lineFitEpsilon,s=n+l,c=0,d=!1,f=t.segmentIndex,m=t.graphemeIndex,p=-1,x=0;for(let b=t.segmentIndex;b<r.length;b++){let y=r[b],E=o[b],v=E==="space"||E==="preserved-space"||E==="tab"||E==="zero-width-break"||E==="soft-hyphen",_=b===t.segmentIndex?t.graphemeIndex:0,H=i[b];if(!d){if(_>0||y>n&&H!==null){let I=H,k=I[_];d=!0,c=k,f=b,m=_+1;for(let A=_+1;A<I.length;A++){let L=I[A];if(c+L>s)return t.segmentIndex=f,t.graphemeIndex=m,c;c+=L,f=b,m=A+1}f===b&&m===I.length&&(f=b+1,m=0)}else d=!0,c=y,f=b+1,m=0;v&&(p=b+1,x=c-y);continue}if(c+y>s)return v?(t.segmentIndex=b+1,t.graphemeIndex=0,c):p>=0?f>p||f===p&&m>0?(t.segmentIndex=f,t.graphemeIndex=m,c):(t.segmentIndex=p,t.graphemeIndex=0,x):(t.segmentIndex=f,t.graphemeIndex=m,c);c+=y,f=b+1,m=0,v&&(p=b+1,x=c-y)}return d?(t.segmentIndex=f,t.graphemeIndex=m,c):null}function zD(e,t,n){let r=bE(e,t);return r<0?null:e.simpleLineWalkFastPath?qD(e,t,n):SE(e,t,r,n)}function vE(e,t){if(e.widths.length===0)return{lineCount:0,maxLineWidth:0};let n={segmentIndex:0,graphemeIndex:0},r=0,o=0;if(!e.simpleLineWalkFastPath){let i=bE(e,n);for(;i>=0;){let a=SE(e,n,i,t);if(a===null)return{lineCount:r,maxLineWidth:o};r++,a>o&&(o=a),i=$D(e,i,n)}return{lineCount:r,maxLineWidth:o}}for(;;){let i=zD(e,n,t);if(i===null)return{lineCount:r,maxLineWidth:o};r++,i>o&&(o=i)}}var Rf=null;function jD(){return Rf===null&&(Rf=new Intl.Segmenter(void 0,{granularity:"grapheme"})),Rf}function KD(e){return e?{widths:[],lineEndFitAdvances:[],lineEndPaintAdvances:[],kinds:[],simpleLineWalkFastPath:!0,segLevels:null,breakableFitAdvances:[],discretionaryHyphenWidth:0,tabStopAdvance:0,chunks:[],segments:[]}:{widths:[],lineEndFitAdvances:[],lineEndPaintAdvances:[],kinds:[],simpleLineWalkFastPath:!0,segLevels:null,breakableFitAdvances:[],discretionaryHyphenWidth:0,tabStopAdvance:0,chunks:[]}}function YD(e,t){let n=[],r=[],o=0,i=!1,a=!1,l=!1;function s(){r.length!==0&&(n.push({text:r.length===1?r[0]:r.join(""),start:o}),r=[],i=!1,a=!1,l=!1)}function c(f,m,p){r=[f],o=m,i=p,a=ll(f),l=Oi.has(f)}function d(f,m){r.push(f),i=i||m;let p=ll(f);f.length===1&&Ln.has(f)?a=a||p:a=p,l=!1}for(let f of jD().segment(e)){let m=f.segment,p=Nt(m);if(r.length===0){c(m,f.index,p);continue}if(l||al.has(m)||Ln.has(m)||t.carryCJKAfterClosingQuote&&p&&a){d(m,p);continue}if(!i&&!p){d(m,p);continue}s(),c(m,f.index,p)}return s(),n}function XD(e){if(e.length<=1)return e;let t=[],n=[e[0].text],r=e[0].start,o=Nt(e[0].text),i=il(e[0].text);function a(){t.push({text:n.length===1?n[0]:n.join(""),start:r})}for(let l=1;l<e.length;l++){let s=e[l],c=Nt(s.text),d=il(s.text);if(o&&i){n.push(s.text),o=o||c,i=d;continue}a(),n=[s.text],r=s.start,o=c,i=d}return a(),t}function JD(e,t,n,r){let o=Fn(),{cache:i,emojiCorrection:a}=mE(t,dE(e.normalized)),l=Nn("-",ln("-",i),a),c=Nn(" ",ln(" ",i),a)*8;if(e.len===0)return KD(n);let d=[],f=[],m=[],p=[],x=e.chunks.length<=1,b=n?[]:null,y=[],E=n?[]:null,v=Array.from({length:e.len});function _(A,L,P,q,X,Z,J){X!=="text"&&X!=="space"&&X!=="zero-width-break"&&(x=!1),d.push(L),f.push(P),m.push(q),p.push(X),b?.push(Z),y.push(J),E!==null&&E.push(A)}function H(A,L,P,q,X){let Z=ln(A,i),J=Nn(A,Z,a),D=L==="space"||L==="preserved-space"||L==="zero-width-break"?0:J,R=L==="space"||L==="zero-width-break"?0:J;if(X&&q&&A.length>1){let M="sum-graphemes";Pi(A)?M="pair-context":o.preferPrefixWidthsForBreakableRuns&&(M="segment-prefixes");let j=fE(A,Z,i,a,M);_(A,J,D,R,L,P,j);return}_(A,J,D,R,L,P,null)}for(let A=0;A<e.len;A++){v[A]=d.length;let L=e.texts[A],P=e.isWordLike[A],q=e.kinds[A],X=e.starts[A];if(q==="soft-hyphen"){_(L,0,l,l,q,X,null);continue}if(q==="hard-break"){_(L,0,0,0,q,X,null);continue}if(q==="tab"){_(L,0,0,0,q,X,null);continue}let Z=ln(L,i);if(q==="text"&&Z.containsCJK){let J=YD(L,o),D=r==="keep-all"?XD(J):J;for(let R=0;R<D.length;R++){let M=D[R];H(M.text,"text",X+M.start,P,r==="keep-all"||!Nt(M.text))}continue}H(L,q,X,P,!0)}let I=QD(e.chunks,v,d.length),k=b===null?null:Xv(e.normalized,b);return E!==null?{widths:d,lineEndFitAdvances:f,lineEndPaintAdvances:m,kinds:p,simpleLineWalkFastPath:x,segLevels:k,breakableFitAdvances:y,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:I,segments:E}:{widths:d,lineEndFitAdvances:f,lineEndPaintAdvances:m,kinds:p,simpleLineWalkFastPath:x,segLevels:k,breakableFitAdvances:y,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:I}}function QD(e,t,n){let r=[];for(let o=0;o<e.length;o++){let i=e[o],a=i.startSegmentIndex<t.length?t[i.startSegmentIndex]:n,l=i.endSegmentIndex<t.length?t[i.endSegmentIndex]:n,s=i.consumedEndSegmentIndex<t.length?t[i.consumedEndSegmentIndex]:n;r.push({startSegmentIndex:a,endSegmentIndex:l,consumedEndSegmentIndex:s})}return r}function EE(e,t,n,r){let o=r?.wordBreak??"normal",i=sE(e,Fn(),r?.whiteSpace,o);return JD(i,t,n,o)}function ul(e,t,n){return EE(e,t,!1,n)}function AE(e,t,n){return EE(e,t,!0,n)}function cl(e,t,n){let r=xE(e,t);return{lineCount:r,height:r*n}}function ZD(e){return{width:e.width,start:{segmentIndex:e.startSegmentIndex,graphemeIndex:e.startGraphemeIndex},end:{segmentIndex:e.endSegmentIndex,graphemeIndex:e.endGraphemeIndex}}}function eP(e,t,n){return e.widths.length===0?0:Tf(e,t,r=>{n(ZD(r))})}function wE(e,t){return vE(e,t)}function _E(e){let t=0;return eP(e,Number.POSITIVE_INFINITY,n=>{n.width>t&&(t=n.width)}),t}var tP={maxWidth:1600,baseFontSize:78,minFontSize:42,fontWeight:900,fontFamily:"Outfit",step:2};function CE(e,t){let n={...tP,...t},r=1.2;for(let o=n.baseFontSize;o>=n.minFontSize;o=Math.max(n.minFontSize,o-n.step)){let i=`${n.fontWeight} ${o}px ${n.fontFamily}`,a=ul(e,i),{lineCount:l}=cl(a,n.maxWidth,o*r);if(l<=1)return{fontSize:o,fits:!0};if(o===n.minFontSize)break}return{fontSize:n.minFontSize,fits:!1}}var TE={prepare:ul,layout:cl,prepareWithSegments:AE,measureLineStats:wE,measureNaturalWidth:_E};function RE(e){return new URL(e,document.baseURI).href}var In="appifact-film:";function ME(e){let{iframe:t,runnerHtml:n,load:r}=e,o=(t.getAttribute("sandbox")??"").split(/\s+/);if(!o.includes("allow-scripts")||o.includes("allow-same-origin"))throw new Error('Film runners require sandbox="allow-scripts" without allow-same-origin');let i=0,a=!1,l=!1,s=null,c,d,f=new Promise((_,H)=>{c=_,d=H});f.catch(()=>{});let m=null,p=_=>{s=_,clearTimeout(x),d(_),m&&(clearTimeout(m.timer),m.reject(_),m=null)},x=setTimeout(()=>p(new Error("Film runner did not become ready within 20 s")),2e4),b=_=>{if(_.type!==In+"frame"&&_.type!==In+"frame-error"||!("seq"in _)||m===null||m.sequence!==_.seq)return;let H=m;m=null,clearTimeout(H.timer),_.type===In+"frame-error"?H.reject(new Error("message"in _?String(_.message):"Film frame failed")):H.resolve()},y=_=>{try{let H=t.contentWindow;if(!H)throw new Error("Film runner window is unavailable");H.postMessage(_,"*")}catch(H){p(H instanceof Error?H:new Error(String(H)))}},E=_=>{if(_.type===In+"hello"){if(a){p(new Error("Film runner reloaded; recreate the bridge before seeking"));return}a=!0,y({...r,type:In+"load"})}else _.type===In+"ready"&&a?(clearTimeout(x),c()):_.type===In+"error"&&p(new Error("message"in _?String(_.message):"Film runner failed"))},v=_=>{if(l||s||_.source!==t.contentWindow||_.origin!=="null")return;let H=_.data;!H||typeof H!="object"||!("type"in H)||(E(H),b(H))};return window.addEventListener("message",v),t.srcdoc=n,{ready:f,async render(_){if(await f,s)throw s;if(m)throw new Error("Film seeks must be serialized; use registerFrameSource");let H=++i;return new Promise((I,k)=>{let A=setTimeout(()=>{p(new Error("Film frame did not arrive within 15 s"))},15e3);m={sequence:H,resolve:I,reject:k,timer:A},y({type:In+"frame",t:_,seq:H})})},dispose(){l||(l=!0,window.removeEventListener("message",v),p(new Error("Film bridge was disposed")),t.srcdoc="")}}}window.__timelines=window.__timelines||{};oy();qv();zv();jS();window.__hfHasFrameSources=Ph;tp();qp();window.__hyperframes={assetUrl:RE,fitTextFontSize:CE,getVariables:Zp,pretext:TE,registerRuntimeDataHandler:Gv,setRuntimeData:tl,clearRuntimeData:nl,registerFrameSource:Oh,createFilmBridge:ME};function kE(){let e=window;e.__hyperframeRuntimeBootstrapped||(e.__hyperframeRuntimeBootstrapped=!0,Kv())}function LE(){try{cr();let e=Array.from(document.querySelectorAll(cx));e.length===0?kE():Rs(e,kE).catch(t=>{So(t),reportError(t)})}catch(e){throw So(e),e}}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",LE,{once:!0}):LE();})();
|
|
1125
1126
|
|