@hyperframes/core 0.8.50 → 0.8.52

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.
Files changed (59) hide show
  1. package/dist/audioAutomation.d.ts +5 -0
  2. package/dist/audioAutomation.d.ts.map +1 -1
  3. package/dist/audioAutomation.js +21 -1
  4. package/dist/audioAutomation.js.map +1 -1
  5. package/dist/clipFacts.d.ts +32 -0
  6. package/dist/clipFacts.d.ts.map +1 -0
  7. package/dist/clipFacts.js +22 -0
  8. package/dist/clipFacts.js.map +1 -0
  9. package/dist/compiler/htmlBundler.d.ts +10 -0
  10. package/dist/compiler/htmlBundler.d.ts.map +1 -1
  11. package/dist/compiler/htmlBundler.js +17 -12
  12. package/dist/compiler/htmlBundler.js.map +1 -1
  13. package/dist/compiler/timingCompiler.d.ts +3 -2
  14. package/dist/compiler/timingCompiler.d.ts.map +1 -1
  15. package/dist/compiler/timingCompiler.js +23 -7
  16. package/dist/compiler/timingCompiler.js.map +1 -1
  17. package/dist/generated/audio-fx-runtime-inline.js +1 -1
  18. package/dist/generated/audio-fx-runtime-inline.js.map +1 -1
  19. package/dist/generated/runtime-inline.js +1 -1
  20. package/dist/generated/runtime-inline.js.map +1 -1
  21. package/dist/hyperframe.runtime.iife.js +30 -30
  22. package/dist/index.d.ts +3 -1
  23. package/dist/index.d.ts.map +1 -1
  24. package/dist/index.js +4 -1
  25. package/dist/index.js.map +1 -1
  26. package/dist/mediaTiming.d.ts +10 -0
  27. package/dist/mediaTiming.d.ts.map +1 -1
  28. package/dist/mediaTiming.js +13 -0
  29. package/dist/mediaTiming.js.map +1 -1
  30. package/dist/playbackRateBounds.d.ts +2 -0
  31. package/dist/playbackRateBounds.d.ts.map +1 -0
  32. package/dist/playbackRateBounds.js +2 -0
  33. package/dist/playbackRateBounds.js.map +1 -0
  34. package/dist/runtime/audioAutomationVolume.d.ts +20 -0
  35. package/dist/runtime/audioAutomationVolume.d.ts.map +1 -0
  36. package/dist/runtime/audioAutomationVolume.js +51 -0
  37. package/dist/runtime/audioAutomationVolume.js.map +1 -0
  38. package/dist/runtime/clipTree.d.ts.map +1 -1
  39. package/dist/runtime/clipTree.js +7 -4
  40. package/dist/runtime/clipTree.js.map +1 -1
  41. package/dist/runtime/clipWindow.d.ts +8 -0
  42. package/dist/runtime/clipWindow.d.ts.map +1 -0
  43. package/dist/runtime/clipWindow.js +12 -0
  44. package/dist/runtime/clipWindow.js.map +1 -0
  45. package/dist/runtime/playbackRate.d.ts +16 -8
  46. package/dist/runtime/playbackRate.d.ts.map +1 -1
  47. package/dist/runtime/playbackRate.js +50 -34
  48. package/dist/runtime/playbackRate.js.map +1 -1
  49. package/dist/runtime/startResolver.d.ts.map +1 -1
  50. package/dist/runtime/startResolver.js +9 -15
  51. package/dist/runtime/startResolver.js.map +1 -1
  52. package/dist/speedRamp.d.ts +48 -0
  53. package/dist/speedRamp.d.ts.map +1 -0
  54. package/dist/speedRamp.js +196 -0
  55. package/dist/speedRamp.js.map +1 -0
  56. package/dist/storyboard/types.d.ts +2 -2
  57. package/dist/storyboard/types.js +1 -1
  58. package/docs/core.md +1 -1
  59. package/package.json +12 -4
@@ -1,32 +1,32 @@
1
- "use strict";(()=>{var lh=Object.create;var _o=Object.defineProperty;var uh=Object.getOwnPropertyDescriptor;var ch=Object.getOwnPropertyNames;var dh=Object.getPrototypeOf,mh=Object.prototype.hasOwnProperty;var fh=(e,t,n)=>t in e?_o(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var oe=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var ph=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of ch(t))!mh.call(e,i)&&i!==n&&_o(e,i,{get:()=>t[i],enumerable:!(r=uh(t,i))||r.enumerable});return e};var hh=(e,t,n)=>(n=e!=null?lh(dh(e)):{},ph(t||!e||!e.__esModule?_o(n,"default",{value:e,enumerable:!0}):n,e));var ge=(e,t,n)=>fh(e,typeof t!="symbol"?t+"":t,n);var Fc=oe((ow,Ta)=>{var ee=String,Mc=function(){return{isColorSupported:!1,reset:ee,bold:ee,dim:ee,italic:ee,underline:ee,inverse:ee,hidden:ee,strikethrough:ee,black:ee,red:ee,green:ee,yellow:ee,blue:ee,magenta:ee,cyan:ee,white:ee,gray:ee,bgBlack:ee,bgRed:ee,bgGreen:ee,bgYellow:ee,bgBlue:ee,bgMagenta:ee,bgCyan:ee,bgWhite:ee,blackBright:ee,redBright:ee,greenBright:ee,yellowBright:ee,blueBright:ee,magentaBright:ee,cyanBright:ee,whiteBright:ee,bgBlackBright:ee,bgRedBright:ee,bgGreenBright:ee,bgYellowBright:ee,bgBlueBright:ee,bgMagentaBright:ee,bgCyanBright:ee,bgWhiteBright:ee}};Ta.exports=Mc();Ta.exports.createColors=Mc});var ka=oe(()=>{});var vi=oe((lw,Dc)=>{"use strict";var Nc=Fc(),Lc=ka(),Yn=class e extends Error{constructor(t,n,r,i,o,a){super(t),this.name="CssSyntaxError",this.reason=t,o&&(this.file=o),i&&(this.source=i),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=Nc.isColorSupported);let r=d=>d,i=d=>d,o=d=>d;if(t){let{bold:d,gray:f,red:m}=Nc.createColors(!0);i=h=>d(m(h)),r=h=>f(h),Lc&&(o=h=>Lc(h))}let a=n.split(/\r?\n/),l=Math.max(this.line-3,0),s=Math.min(this.line+2,a.length),u=String(s).length;return a.slice(l,s).map((d,f)=>{let m=l+1+f,h=" "+(" "+m).slice(-u)+" | ";if(m===this.line){if(d.length>160){let v=20,x=Math.max(0,this.column-v),_=Math.max(this.column+v,this.endColumn+v),T=d.slice(x,_),C=r(h.replace(/\d/g," "))+d.slice(0,Math.min(this.column-1,v-1)).replace(/[^\t]/g," ");return i(">")+r(h)+o(T)+`
2
- `+C+i("^")}let b=r(h.replace(/\d/g," "))+d.slice(0,this.column-1).replace(/[^\t]/g," ");return i(">")+r(h)+o(d)+`
3
- `+b+i("^")}return" "+r(h)+o(d)}).join(`
1
+ "use strict";(()=>{var qh=Object.create;var Oo=Object.defineProperty;var $h=Object.getOwnPropertyDescriptor;var jh=Object.getOwnPropertyNames;var Kh=Object.getPrototypeOf,Yh=Object.prototype.hasOwnProperty;var Xh=(e,t,n)=>t in e?Oo(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var ae=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Jh=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let i of jh(t))!Yh.call(e,i)&&i!==n&&Oo(e,i,{get:()=>t[i],enumerable:!(r=$h(t,i))||r.enumerable});return e};var Qh=(e,t,n)=>(n=e!=null?qh(Kh(e)):{},Jh(t||!e||!e.__esModule?Oo(n,"default",{value:e,enumerable:!0}):n,e));var xe=(e,t,n)=>Xh(e,typeof t!="symbol"?t+"":t,n);var ad=ae((y_,$a)=>{var ee=String,od=function(){return{isColorSupported:!1,reset:ee,bold:ee,dim:ee,italic:ee,underline:ee,inverse:ee,hidden:ee,strikethrough:ee,black:ee,red:ee,green:ee,yellow:ee,blue:ee,magenta:ee,cyan:ee,white:ee,gray:ee,bgBlack:ee,bgRed:ee,bgGreen:ee,bgYellow:ee,bgBlue:ee,bgMagenta:ee,bgCyan:ee,bgWhite:ee,blackBright:ee,redBright:ee,greenBright:ee,yellowBright:ee,blueBright:ee,magentaBright:ee,cyanBright:ee,whiteBright:ee,bgBlackBright:ee,bgRedBright:ee,bgGreenBright:ee,bgYellowBright:ee,bgBlueBright:ee,bgMagentaBright:ee,bgCyanBright:ee,bgWhiteBright:ee}};$a.exports=od();$a.exports.createColors=od});var ja=ae(()=>{});var Mi=ae((A_,ud)=>{"use strict";var sd=ad(),ld=ja(),ir=class e extends Error{constructor(t,n,r,i,o,a){super(t),this.name="CssSyntaxError",this.reason=t,o&&(this.file=o),i&&(this.source=i),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=sd.isColorSupported);let r=d=>d,i=d=>d,o=d=>d;if(t){let{bold:d,gray:f,red:m}=sd.createColors(!0);i=p=>d(m(p)),r=p=>f(p),ld&&(o=p=>ld(p))}let a=n.split(/\r?\n/),l=Math.max(this.line-3,0),s=Math.min(this.line+2,a.length),u=String(s).length;return a.slice(l,s).map((d,f)=>{let m=l+1+f,p=" "+(" "+m).slice(-u)+" | ";if(m===this.line){if(d.length>160){let y=20,x=Math.max(0,this.column-y),_=Math.max(this.column+y,this.endColumn+y),k=d.slice(x,_),C=r(p.replace(/\d/g," "))+d.slice(0,Math.min(this.column-1,y-1)).replace(/[^\t]/g," ");return i(">")+r(p)+o(k)+`
2
+ `+C+i("^")}let g=r(p.replace(/\d/g," "))+d.slice(0,this.column-1).replace(/[^\t]/g," ");return i(">")+r(p)+o(d)+`
3
+ `+g+i("^")}return" "+r(p)+o(d)}).join(`
4
4
  `)}toString(){let t=this.showSourceCode();return t&&(t=`
5
5
 
6
6
  `+t+`
7
- `),this.name+": "+this.message+t}};Dc.exports=Yn;Yn.default=Yn});var Ma=oe((uw,Pc)=>{"use strict";var Ig=/(<)(\/?style\b)/gi,Pg=/(<)(!--)/g;function At(e){return typeof e!="string"||!e.includes("<")?e:e.replace(Ig,"\\3c $2").replace(Pg,"\\3c $2")}var Ic={after:`
7
+ `),this.name+": "+this.message+t}};ud.exports=ir;ir.default=ir});var Ka=ae((E_,pd)=>{"use strict";var vb=/(<)(\/?style\b)/gi,Ab=/(<)(!--)/g,Eb=/[\t\n\f\r "#'()/;[\\\]{}]/;function Ke(e){return typeof e!="string"||!e.includes("<")?e:e.replace(vb,"\\3c $2").replace(Ab,"\\3c $2")}var cd={after:`
8
8
  `,beforeClose:`
9
9
  `,beforeComment:`
10
10
  `,beforeDecl:`
11
11
  `,beforeOpen:" ",beforeRule:`
12
- `,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function Og(e){return e[0].toUpperCase()+e.slice(1)}var Xn=class{constructor(t){this.builder=t}atrule(t,n){let r=t.raws,i="@"+t.name,o=t.params?this.rawValue(t,"params"):"";if(typeof r.afterName<"u"?i+=r.afterName:o&&(i+=" "),t.nodes)this.block(t,i+o);else{let a=(r.between||"")+(n?";":"");this.builder(At(i+o+a),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 i=t.parent,o=0;for(;i&&i.type!=="root";)o+=1,i=i.parent;if(r.includes(`
13
- `)){let a=this.raw(t,null,"indent");if(a.length)for(let l=0;l<o;l++)r+=a}return r}block(t,n){let r=this.raw(t,"between","beforeOpen");this.builder(At(n+r)+"{",t,"start");let i;t.nodes&&t.nodes.length?(this.body(t),i=this.raw(t,"after")):i=this.raw(t,"after","emptyBody"),i&&this.builder(At(i)),this.builder("}",t,"end")}body(t){let n=t.nodes,r=n.length-1;for(;r>0&&n[r].type==="comment";)r-=1;let i=this.raw(t,"semicolon"),o=t.type==="document";for(let a=0;a<n.length;a++){let l=n[a],s=this.raw(l,"before");s&&this.builder(o?s:At(s)),this.stringify(l,r!==a||i)}}comment(t){let n=this.raw(t,"left","commentLeft"),r=this.raw(t,"right","commentRight");this.builder(At("/*"+n+t.text+r+"*/"),t)}decl(t,n){let r=t.raws,i=this.raw(t,"between","colon"),o=t.prop+i+this.rawValue(t,"value");t.important&&(o+=r.important||" !important"),n&&(o+=";"),this.builder(At(o),t)}document(t){this.body(t)}raw(t,n,r){let i;if(r||(r=n),n&&(i=t.raws[n],typeof i<"u"))return i;let o=t.parent;if(r==="before"&&(!o||o.type==="root"&&o.first===t||o&&o.type==="document"))return"";if(!o)return Ic[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"+Og(r);this[s]?i=this[s](a,t):a.walk(u=>{if(i=u.raws[n],typeof i<"u")return!1})}return typeof i>"u"&&(i=Ic[r]),l[r]=i,i}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(`
12
+ `,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function wb(e){return e[0].toUpperCase()+e.slice(1)}function dd(e,t){let n="@"+t.name,r=t.params?e.rawValue(t,"params"):"",i=t.raws.afterName;return typeof i>"u"?i=r?" ":"":i===""&&r&&!Eb.test(r[0])&&(i=" "),n+i+r}function _b(e){if(!e.prop.startsWith("--"))return!1;let t=e.raws.before;return typeof t>"u"||!/\S$/.test(t)}function fd(e,t,n){let r=n.nodes,i=r.length-1;for(;i>0&&r[i].type==="comment";)i-=1;let o=e.raw(n,"semicolon"),a=n.type==="document";for(let l=r.length-1;l>=0;l--){let s=r[l],u=i!==l||o;!u&&l<r.length-1&&(s.type==="atrule"&&!s.nodes||s.type==="decl"&&_b(s))&&(u=!0),t.push({document:a,node:s,semicolon:u})}}function md(e,t,n,r){let i=e.raw(n,"between","beforeOpen");e.builder(Ke(r+i)+"{",n,"start");let o=n.nodes&&n.nodes.length,a=()=>{let l=o?e.raw(n,"after"):e.raw(n,"after","emptyBody");l&&e.builder(Ke(l)),e.builder("}",n,"end"),n.type==="rule"&&n.raws.ownSemicolon&&e.builder(Ke(n.raws.ownSemicolon),n,"end")};o?(t.push(a),fd(e,t,n)):a()}var or=class e{constructor(t){this.builder=t}atrule(t,n){let r=dd(this,t);if(t.nodes)this.block(t,r);else{let i=(t.raws.between||"")+(n?";":"");this.builder(Ke(r+i),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 i=t.parent,o=0;for(;i&&i.type!=="root";)o+=1,i=i.parent;if(r.includes(`
13
+ `)){let a=this.raw(t,null,"indent");if(a.length)for(let l=0;l<o;l++)r+=a}return r}block(t,n){let r=this.raw(t,"between","beforeOpen");this.builder(Ke(n+r)+"{",t,"start");let i;t.nodes&&t.nodes.length?(this.body(t),i=this.raw(t,"after")):i=this.raw(t,"after","emptyBody"),i&&this.builder(Ke(i)),this.builder("}",t,"end")}body(t){let n=e.prototype,r=["atrule","block","body","rule","stringify"].every(o=>this[o]===n[o]),i=[];for(fd(this,i,t);i.length>0;){let o=i.pop();if(typeof o=="function"){o();continue}let a=o.node,l=this.raw(a,"before");l&&this.builder(o.document?l:Ke(l)),r&&a.type==="rule"?md(this,i,a,this.rawValue(a,"selector")):r&&a.type==="atrule"&&a.nodes?md(this,i,a,dd(this,a)):this.stringify(a,o.semicolon)}}comment(t){let n=this.raw(t,"left","commentLeft"),r=this.raw(t,"right","commentRight");this.builder(Ke("/*"+n+t.text+r+"*/"),t)}decl(t,n){let r=t.raws,i=this.raw(t,"between","colon"),o=t.prop+i+this.rawValue(t,"value");t.important&&(o+=r.important||" !important"),n&&(o+=";"),this.builder(Ke(o),t)}document(t){this.body(t)}raw(t,n,r){let i;if(r||(r=n),n&&(i=t.raws[n],typeof i<"u"))return i;let o=t.parent;if(r==="before"&&(!o||o.type==="root"&&o.first===t||o&&o.type==="document"))return"";if(!o)return cd[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"+wb(r);this[s]?i=this[s](a,t):a.walk(u=>{if(i=u.raws[n],typeof i<"u")return!1})}return typeof i>"u"&&(i=cd[r]),l[r]=i,i}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
14
  `)&&(n=n.replace(/[^\n]+$/,"")),!1}),n&&(n=n.replace(/\S/g,"")),n}rawBeforeComment(t,n){let r;return t.walkComments(i=>{if(typeof i.raws.before<"u")return r=i.raws.before,r.includes(`
15
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(i=>{if(typeof i.raws.before<"u")return r=i.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
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 i=r.parent;if(i&&i!==t&&i.parent&&i.parent===t&&typeof r.raws.before<"u"){let o=r.raws.before.split(`
18
- `);return n=o[o.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],i=t.raws[n];return i&&i.value===r?i.raw:r}root(t){if(this.body(t),t.raws.after){let n=t.raws.after,r=t.parent&&t.parent.type==="document";this.builder(r?n:At(n))}}rule(t){this.block(t,this.rawValue(t,"selector")),t.raws.ownSemicolon&&this.builder(At(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)}};Pc.exports=Xn;Xn.default=Xn});var Jn=oe((cw,Oc)=>{"use strict";var Gg=Ma();function Fa(e,t){new Gg(t).stringify(e)}Oc.exports=Fa;Fa.default=Fa});var Si=oe((dw,Na)=>{"use strict";Na.exports.isClean=Symbol("isClean");Na.exports.my=Symbol("my")});var er=oe((mw,Gc)=>{"use strict";var Hg=vi(),Bg=Ma(),Ug=Jn(),{isClean:Qn,my:Wg}=Si();function La(e,t){let n=new e.constructor;for(let r in e){if(!Object.prototype.hasOwnProperty.call(e,r)||r==="proxyCache")continue;let i=e[r],o=typeof i;r==="parent"&&o==="object"?t&&(n[r]=t):r==="source"?n[r]=i:Array.isArray(i)?n[r]=i.map(a=>La(a,n)):(o==="object"&&i!==null&&(i=La(i)),n[r]=i)}return n}function ct(e,t){if(t&&typeof t.offset<"u")return t.offset;let n=1,r=1,i=0;for(let o=0;o<e.length;o++){if(r===t.line&&n===t.column){i=o;break}e[o]===`
19
- `?(n=1,r+=1):n+=1}return i}var Zn=class{get proxyOf(){return this}constructor(t={}){this.raws={},this[Qn]=!1,this[Wg]=!0;for(let n in t)if(n==="nodes"){this.nodes=[];for(let r of t[n])typeof r.clone=="function"?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=La(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:i}=this.rangeBy(n);return this.source.input.error(t,{column:i.column,line:i.line},{column:r.column,line:r.line},n)}return new Hg(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[Qn]=!0}markDirty(){if(this[Qn]){this[Qn]=!1;let t=this;for(;t=t.parent;)t[Qn]=!1}}next(){if(!this.parent)return;let t=this.parent.index(this);return this.parent.nodes[t+1]}positionBy(t={}){let n=this.source.start;if(t.index)n=this.positionInside(t.index);else if(t.word){let r="document"in this.source.input?this.source.input.document:this.source.input.css,o=r.slice(ct(r,this.source.start),ct(r,this.source.end)).indexOf(t.word);o!==-1&&(n=this.positionInside(o))}return n}positionInside(t){let n=this.source.start.column,r=this.source.start.line,i="document"in this.source.input?this.source.input.document:this.source.input.css,o=ct(i,this.source.start),a=o+t;for(let l=o;l<a;l++)i[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:ct(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:ct(n,this.source.end)+1}:{column:r.column+1,line:r.line,offset:r.offset+1};if(t.word){let a=n.slice(ct(n,this.source.start),ct(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:ct(n,t.start)}:t.index&&(r=this.positionInside(t.index)),t.end?i={column:t.end.column,line:t.end.line,offset:ct(n,t.end)}:typeof t.endIndex=="number"?i=this.positionInside(t.endIndex):t.index&&(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 Bg().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={},i=n==null;n=n||new Map;let o=0;for(let a in this){if(!Object.prototype.hasOwnProperty.call(this,a)||a==="parent"||a==="proxyCache")continue;let l=this[a];if(Array.isArray(l))r[a]=l.map(s=>typeof s=="object"&&s.toJSON?s.toJSON(null,n):s);else if(typeof l=="object"&&l.toJSON)r[a]=l.toJSON(null,n);else if(a==="source"){if(l==null)continue;let s=n.get(l.input);s==null&&(s=o,n.set(l.input,o),o++),r[a]={end:l.end,inputId:s,start:l.start}}else r[a]=l}return i&&(r.inputs=[...n.keys()].map(a=>a.toJSON())),r}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}toString(t=Ug){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)}};Gc.exports=Zn;Zn.default=Zn});var nr=oe((fw,Hc)=>{"use strict";var Vg=er(),tr=class extends Vg{constructor(t){super(t),this.type="comment"}};Hc.exports=tr;tr.default=tr});var ir=oe((pw,Bc)=>{"use strict";var zg=er(),rr=class extends zg{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"}};Bc.exports=rr;rr.default=rr});var Et=oe((hw,Yc)=>{"use strict";var Uc=nr(),Wc=ir(),qg=er(),{isClean:Vc,my:zc}=Si(),Da,qc,$c,Ia;function jc(e){return e.map(t=>(t.nodes&&(t.nodes=jc(t.nodes)),delete t.source,t))}function Kc(e){if(e[Vc]=!1,e.proxyOf.nodes)for(let t of e.proxyOf.nodes)Kc(t)}var je=class e extends qg{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){if(super.cleanRaws(t),this.nodes)for(let n of this.nodes)n.cleanRaws(t)}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=jc(qc(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 Wc(t)]}else if(t.selector||t.selectors)t=[new Ia(t)];else if(t.name)t=[new Da(t)];else if(t.text)t=[new Uc(t)];else throw new Error("Unknown node type in node creation");return t.map(i=>(i[zc]||e.rebuild(i),i=i.proxyOf,i.parent&&i.parent.removeChild(i),i[Vc]&&Kc(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){return this.each((n,r)=>{let i;try{i=t(n,r)}catch(o){throw n.addToError(o)}return i!==!1&&n.walk&&(i=n.walk(t)),i})}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)}))}};je.registerParse=e=>{qc=e};je.registerRule=e=>{Ia=e};je.registerAtRule=e=>{Da=e};je.registerRoot=e=>{$c=e};Yc.exports=je;je.default=je;je.rebuild=e=>{e.type==="atrule"?Object.setPrototypeOf(e,Da.prototype):e.type==="rule"?Object.setPrototypeOf(e,Ia.prototype):e.type==="decl"?Object.setPrototypeOf(e,Wc.prototype):e.type==="comment"?Object.setPrototypeOf(e,Uc.prototype):e.type==="root"&&Object.setPrototypeOf(e,$c.prototype),e[zc]=!0,e.nodes&&e.nodes.forEach(t=>{je.rebuild(t)})}});var Ai=oe((gw,Jc)=>{"use strict";var Xc=Et(),an=class extends Xc{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)}};Jc.exports=an;an.default=an;Xc.registerAtRule(an)});var Ei=oe((bw,ed)=>{"use strict";var $g=Et(),Qc,Zc,Gt=class extends $g{constructor(t){super({type:"document",...t}),this.nodes||(this.nodes=[])}toResult(t={}){return new Qc(new Zc,this,t).stringify()}};Gt.registerLazyResult=e=>{Qc=e};Gt.registerProcessor=e=>{Zc=e};ed.exports=Gt;Gt.default=Gt});var nd=oe((xw,td)=>{var jg="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Kg=(e,t=21)=>(n=t)=>{let r="",i=n|0;for(;i--;)r+=e[Math.random()*e.length|0];return r},Yg=(e=21)=>{let t="",n=e|0;for(;n--;)t+=jg[Math.random()*64|0];return t};td.exports={nanoid:Yg,customAlphabet:Kg}});var wi=oe(()=>{});var _i=oe(()=>{});var Pa=oe(()=>{});var rd=oe(()=>{});var Ga=oe((Rw,ad)=>{"use strict";var{existsSync:Xg,readFileSync:Jg}=rd(),{dirname:Oa,join:Qg}=wi(),{SourceMapConsumer:id,SourceMapGenerator:od}=_i();function Zg(e){return Buffer?Buffer.from(e,"base64").toString():window.atob(e)}var or=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=Oa(this.mapFile)),i&&(this.text=i)}consumer(){return this.consumerCache||(this.consumerCache=new id(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 Zg(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&&!/\.map$/i.test(t))&&(this.root=Oa(t),Xg(t)))return this.mapFile=t,Jg(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 id)return od.fromSourceMap(n).toString();if(n instanceof od)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=Qg(Oa(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)}};ad.exports=or;or.default=or});var ar=oe((Tw,dd)=>{"use strict";var{nanoid:eb}=nd(),{isAbsolute:Ua,resolve:Wa}=wi(),{SourceMapConsumer:tb,SourceMapGenerator:nb}=_i(),{fileURLToPath:sd,pathToFileURL:Ci}=Pa(),ld=vi(),rb=Ga(),Ha=ka(),Ba=Symbol("lineToIndexCache"),ib=!!(tb&&nb),ud=!!(Wa&&Ua);function cd(e){if(e[Ba])return e[Ba];let t=e.css.split(`
21
- `),n=new Array(t.length),r=0;for(let i=0,o=t.length;i<o;i++)n[i]=r,r+=t[i].length+1;return e[Ba]=n,n}var sn=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&&(!ud||/^\w+:\/\//.test(n.from)||Ua(n.from)?this.file=n.from:this.file=Wa(n.from)),ud&&ib){let r=new rb(this.css,n);if(r.text){this.map=r;let i=r.consumer().file;!this.file&&i&&(this.file=this.mapResolve(i))}}this.file||(this.id="<input css "+eb(6)+">"),this.map&&(this.map.file=this.from)}error(t,n,r,i={}){let o,a,l,s,u;if(n&&typeof n=="object"){let f=n,m=r;if(typeof f.offset=="number"){s=f.offset;let h=this.fromOffset(s);n=h.line,r=h.col}else n=f.line,r=f.column,s=this.fromLineAndColumn(n,r);if(typeof m.offset=="number"){l=m.offset;let h=this.fromOffset(l);a=h.line,o=h.col}else a=m.line,o=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,o);return d?u=new ld(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,i.plugin):u=new ld(t,a===void 0?n:{column:r,line:n},a===void 0?r:{column:o,line:a},this.css,this.file,i.plugin),u.input={column:r,endColumn:o,endLine:a,endOffset:l,line:n,offset:s,source:this.css},this.file&&(Ci&&(u.input.url=Ci(this.file).toString()),u.input.file=this.file),u}fromLineAndColumn(t,n){return cd(this)[t-1]+n-1}fromOffset(t){let n=cd(this),r=n[n.length-1],i=0;if(t>=r)i=n.length-1;else{let o=n.length-2,a;for(;i<o;)if(a=i+(o-i>>1),t<n[a])o=a-1;else if(t>=n[a+1])i=a+1;else{i=a;break}}return{col:t-n[i]+1,line:i+1}}mapResolve(t){return/^\w+:\/\//.test(t)?t:Wa(this.map.consumer().sourceRoot||this.map.root||".",t)}origin(t,n,r,i){if(!this.map)return!1;let o=this.map.consumer(),a=o.originalPositionFor({column:n,line:t});if(!a.source)return!1;let l;typeof r=="number"&&(l=o.originalPositionFor({column:i,line:r}));let s;Ua(a.source)?s=Ci(a.source):s=new URL(a.source,this.map.consumer().sourceRoot||Ci(this.map.mapFile));let u={column:a.column,endColumn:l&&l.column,endLine:l&&l.line,line:a.line,url:s.toString()};if(s.protocol==="file:")if(sd)u.file=sd(s);else throw new Error("file: protocol is not available in this PostCSS build");let d=o.sourceContentFor(a.source);return d&&(u.source=d),u}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}};dd.exports=sn;sn.default=sn;Ha&&Ha.registerInput&&Ha.registerInput(sn)});var ln=oe((kw,hd)=>{"use strict";var md=Et(),fd,pd,wt=class extends md{constructor(t){super(t),this.type="root",this.nodes||(this.nodes=[])}normalize(t,n,r){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 o of i)o.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 fd(new pd,this,t).stringify()}};wt.registerLazyResult=e=>{fd=e};wt.registerProcessor=e=>{pd=e};hd.exports=wt;wt.default=wt;md.registerRoot(wt)});var Va=oe((Mw,gd)=>{"use strict";var sr={comma(e){return sr.split(e,[","],!0)},space(e){let t=[" ",`
22
- `," "];return sr.split(e,t)},split(e,t,n){let r=[],i="",o=!1,a=0,l=!1,s="",u=!1;for(let d of e)u?u=!1:d==="\\"?u=!0:l?d===s&&(l=!1):d==='"'||d==="'"?(l=!0,s=d):d==="("?a+=1:d===")"?a>0&&(a-=1):a===0&&t.includes(d)&&(o=!0),o?(i!==""&&r.push(i.trim()),i="",o=!1):i+=d;return(n||i!=="")&&r.push(i.trim()),r}};gd.exports=sr;sr.default=sr});var Ri=oe((Fw,xd)=>{"use strict";var bd=Et(),ob=Va(),un=class extends bd{get selectors(){return ob.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=[])}};xd.exports=un;un.default=un;bd.registerRule(un)});var vd=oe((Nw,yd)=>{"use strict";var ab=Ai(),sb=nr(),lb=ir(),ub=ar(),cb=Ga(),db=ln(),mb=Ri();function lr(e,t){if(Array.isArray(e))return e.map(i=>lr(i));let{inputs:n,...r}=e;if(n){t=[];for(let i of n){let o={...i,__proto__:ub.prototype};o.map&&(o.map={...o.map,__proto__:cb.prototype}),t.push(o)}}if(r.nodes&&(r.nodes=e.nodes.map(i=>lr(i,t))),r.source){let{inputId:i,...o}=r.source;r.source=o,i!=null&&(r.source.input=t[i])}if(r.type==="root")return new db(r);if(r.type==="decl")return new lb(r);if(r.type==="rule")return new mb(r);if(r.type==="comment")return new sb(r);if(r.type==="atrule")return new ab(r);throw new Error("Unknown node type: "+e.type)}yd.exports=lr;lr.default=lr});var qa=oe((Lw,Cd)=>{"use strict";var{dirname:Ti,relative:Ad,resolve:Ed,sep:wd}=wi(),{SourceMapConsumer:_d,SourceMapGenerator:ki}=_i(),{pathToFileURL:Sd}=Pa(),fb=ar(),pb=!!(_d&&ki),hb=!!(Ti&&Ed&&Ad&&wd),za=class{constructor(t,n,r,i){this.stringify=t,this.mapOpts=r.map||{},this.root=n,this.opts=r,this.css=i,this.originalCSS=i,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=`
18
+ `);return n=o[o.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],i=t.raws[n];return i&&i.value===r?i.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:Ke(n))}}rule(t){this.block(t,this.rawValue(t,"selector")),t.raws.ownSemicolon&&this.builder(Ke(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)}};pd.exports=or;or.default=or});var ar=ae((w_,hd)=>{"use strict";var Cb=Ka();function Ya(e,t){new Cb(t).stringify(e)}hd.exports=Ya;Ya.default=Ya});var sr=ae((__,Xa)=>{"use strict";Xa.exports.isClean=Symbol("isClean");Xa.exports.my=Symbol("my")});var cr=ae((C_,gd)=>{"use strict";var Rb=Mi(),Tb=Ka(),kb=ar(),{isClean:lr,my:Mb}=sr();function Fb(e,t){let n=new e.constructor,r=[[e,n,t]];for(;r.length>0;){let[i,o,a]=r.pop();for(let l in i){if(!Object.prototype.hasOwnProperty.call(i,l)||l==="proxyCache")continue;let s=i[l],u=typeof s;if(l==="parent"&&u==="object")a&&(o[l]=a);else if(l==="source")o[l]=s;else if(Array.isArray(s)){let d=[];o[l]=d;for(let f of s){let m=new f.constructor;d.push(m),r.push([f,m,o])}}else{if(u==="object"&&s!==null){let d=new s.constructor;r.push([s,d,void 0]),s=d}o[l]=s}}}return n}function it(e,t){if(t&&typeof t.offset<"u")return t.offset;let n=1,r=1,i=0;for(let o=0;o<e.length;o++){if(r===t.line&&n===t.column){i=o;break}e[o]===`
19
+ `?(n=1,r+=1):n+=1}return i}var ur=class e{get proxyOf(){return this}constructor(t={}){this.raws={},this[lr]=!1,this[Mb]=!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=Fb(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:i}=this.rangeBy(n);return this.source.input.error(t,{column:i.column,line:i.line},{column:r.column,line:r.line},n)}return new Rb(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[lr]=!0}markDirty(){if(this[lr]){this[lr]=!1;let t=this;for(;t=t.parent;)t[lr]=!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:it(n,this.source.start)};if(t.index)r=this.positionInside(t.index);else if(t.word){let o=n.slice(it(n,this.source.start),it(n,this.source.end)).indexOf(t.word);o!==-1&&(r=this.positionInside(o))}return r}positionInside(t){let n=this.source.start.column,r=this.source.start.line,i="document"in this.source.input?this.source.input.document:this.source.input.css,o=it(i,this.source.start),a=o+t;for(let l=o;l<a;l++)i[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:it(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:it(n,this.source.end)+1}:{column:r.column+1,line:r.line,offset:r.offset+1};if(t.word){let a=n.slice(it(n,this.source.start),it(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:it(n,t.start)}:typeof t.index=="number"&&(r=this.positionInside(t.index)),t.end?i={column:t.end.column,line:t.end.line,offset:it(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 Tb().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,u,d]=o[l],f={};u[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 g=[];f[m]=g;for(let y=0;y<p.length;y++){let x=p[y];typeof x=="object"&&x.toJSON?x.toJSON===e.prototype.toJSON?o.push([x,g,y]):g[y]=x.toJSON(null,n):g[y]=x}}else if(typeof p=="object"&&p.toJSON)p.toJSON===e.prototype.toJSON?o.push([p,f,m]):f[m]=p.toJSON(null,n);else if(m==="source"){if(p==null)continue;let g=n.get(p.input);g==null&&(g=n.size,n.set(p.input,g)),f[m]={end:p.end,inputId:g,start:p.start}}else f[m]=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=kb){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)}};gd.exports=ur;ur.default=ur});var mr=ae((R_,bd)=>{"use strict";var Nb=cr(),dr=class extends Nb{constructor(t){super(t),this.type="comment"}};bd.exports=dr;dr.default=dr});var pr=ae((T_,xd)=>{"use strict";var Lb=cr(),fr=class extends Lb{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"}};xd.exports=fr;fr.default=fr});var pt=ae((k_,Cd)=>{"use strict";var Sd=mr(),vd=pr(),yd=cr(),{isClean:Ad,my:Ed}=sr(),Ja,wd,_d,Qa;function Db(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 Ib(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[Ad]=!1,n.proxyOf.nodes)for(let r of n.proxyOf.nodes)t.push(r)}}var ot=class e extends yd{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(yd.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=Db(wd(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 vd(t)]}else if(t.selector||t.selectors)t=[new Qa(t)];else if(t.name)t=[new Ja(t)];else if(t.text)t=[new Sd(t)];else throw new Error("Unknown node type in node creation");return t.map(i=>(i[Ed]||e.rebuild(i),i=i.proxyOf,i.parent&&i.parent.removeChild(i),i[Ad]&&Ib(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)}))}};ot.registerParse=e=>{wd=e};ot.registerRule=e=>{Qa=e};ot.registerAtRule=e=>{Ja=e};ot.registerRoot=e=>{_d=e};Cd.exports=ot;ot.default=ot;ot.rebuild=e=>{let t=[e];for(;t.length>0;){let n=t.pop();if(n.type==="atrule"?Object.setPrototypeOf(n,Ja.prototype):n.type==="rule"?Object.setPrototypeOf(n,Qa.prototype):n.type==="decl"?Object.setPrototypeOf(n,vd.prototype):n.type==="comment"?Object.setPrototypeOf(n,Sd.prototype):n.type==="root"&&Object.setPrototypeOf(n,_d.prototype),n[Ed]=!0,n.nodes)for(let r of n.nodes)t.push(r)}}});var Fi=ae((M_,Td)=>{"use strict";var Rd=pt(),mn=class extends Rd{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)}};Td.exports=mn;mn.default=mn;Rd.registerAtRule(mn)});var Ni=ae((F_,Fd)=>{"use strict";var Pb=pt(),kd,Md,Wt=class extends Pb{constructor(t){super({type:"document",...t}),this.nodes||(this.nodes=[])}toResult(t={}){return new kd(new Md,this,t).stringify()}};Wt.registerLazyResult=e=>{kd=e};Wt.registerProcessor=e=>{Md=e};Fd.exports=Wt;Wt.default=Wt});var Ld=ae((N_,Nd)=>{var Ob="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Gb=(e,t=21)=>(n=t)=>{let r="",i=n|0;for(;i-- >0;)r+=e[Math.random()*e.length|0];return r},Hb=(e=21)=>{let t="",n=e|0;for(;n-- >0;)t+=Ob[Math.random()*64|0];return t};Nd.exports={nanoid:Hb,customAlphabet:Gb}});var Li=ae(()=>{});var Di=ae(()=>{});var Za=ae(()=>{});var Dd=ae(()=>{});var es=ae((U_,Gd)=>{"use strict";var{existsSync:Bb,readFileSync:Ub,realpathSync:Wb}=Dd(),{dirname:Ii,isAbsolute:Vb,join:zb,relative:qb,sep:$b}=Li(),{SourceMapConsumer:Id,SourceMapGenerator:Pd}=Di();function Od(e){try{return Wb(e)}catch{return e}}function jb(e){return Buffer?Buffer.from(e,"base64").toString():window.atob(e)}var hr=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=Ii(this.mapFile)),i&&(this.text=i)}consumer(){return this.consumerCache||(this.consumerCache=new Id(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 jb(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=qb(Od(Ii(n)),Od(t));if(i===".."||i.startsWith(".."+$b)||Vb(i))return}if(this.root=Ii(t),Bb(t))return this.mapFile=t,Ub(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 Id)return Pd.fromSourceMap(n).toString();if(n instanceof Pd)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=zb(Ii(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)}};Gd.exports=hr;hr.default=hr});var gr=ae((W_,Vd)=>{"use strict";var{nanoid:Kb}=Ld(),{isAbsolute:rs,resolve:is}=Li(),{SourceMapConsumer:Yb,SourceMapGenerator:Xb}=Di(),{fileURLToPath:Hd,pathToFileURL:Pi}=Za(),Bd=Mi(),Jb=es(),ts=ja(),ns=Symbol("lineToIndexCache"),Qb=!!(Yb&&Xb),Ud=!!(is&&rs);function Wd(e){if(e[ns])return e[ns];let t=e.css.split(`
21
+ `),n=new Array(t.length),r=0;for(let i=0,o=t.length;i<o;i++)n[i]=r,r+=t[i].length+1;return e[ns]=n,n}var fn=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&&(!Ud||/^\w+:\/\//.test(n.from)||rs(n.from)?this.file=n.from:this.file=is(n.from)),Ud&&Qb){let r=new Jb(this.css,n);if(r.text){this.map=r;let i=r.consumer().file;!this.file&&i&&(this.file=this.mapResolve(i))}}this.file||(this.id="<input css "+Kb(6)+">"),this.map&&(this.map.file=this.from)}error(t,n,r,i={}){let o,a,l,s,u;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,o=p.col}else a=m.line,o=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,o);return d?u=new Bd(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,i.plugin):u=new Bd(t,a===void 0?n:{column:r,line:n},a===void 0?r:{column:o,line:a},this.css,this.file,i.plugin),u.input={column:r,endColumn:o,endLine:a,endOffset:l,line:n,offset:s,source:this.css},this.file&&(Pi&&(u.input.url=Pi(this.file).toString()),u.input.file=this.file),u}fromLineAndColumn(t,n){return Wd(this)[t-1]+n-1}fromOffset(t){let n=Wd(this),r=n[n.length-1],i=0;if(t>=r)i=n.length-1;else{let o=n.length-2,a;for(;i<o;)if(a=i+(o-i>>1),t<n[a])o=a-1;else if(t>=n[a+1])i=a+1;else{i=a;break}}return{col:t-n[i]+1,line:i+1}}mapResolve(t){return/^\w+:\/\//.test(t)?t:is(this.map.consumer().sourceRoot||this.map.root||".",t)}origin(t,n,r,i){if(!this.map)return!1;let o=this.map.consumer(),a=o.originalPositionFor({column:n-1,line:t});if(!a.source)return!1;let l;if(typeof r=="number"){let f=o.originalPositionFor({column:i-1,line:r});f.source&&(l=f)}let s;rs(a.source)?s=Pi(a.source):s=new URL(a.source,this.map.consumer().sourceRoot||Pi(this.map.mapFile));let u={column:a.column+1,endColumn:l&&l.column+1,endLine:l&&l.line,line:a.line,url:s.toString()};if(s.protocol==="file:")if(Hd)u.file=Hd(s);else throw new Error("file: protocol is not available in this PostCSS build");let d=o.sourceContentFor(a.source);return d&&(u.source=d),u}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}};Vd.exports=fn;fn.default=fn;ts&&ts.registerInput&&ts.registerInput(fn)});var pn=ae((V_,jd)=>{"use strict";var zd=pt(),qd,$d,Tt=class extends zd{constructor(t){super(t),this.type="root",this.nodes||(this.nodes=[])}normalize(t,n,r){let i=new Set;for(let a of Array.isArray(t)?t:[t])a&&typeof a=="object"&&!a.parent&&a.raws&&typeof a.raws.before<"u"&&i.add(a.raws);let o=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 o)i.has(a.raws)||(a.raws.before=n.raws.before)}return o}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 qd(new $d,this,t).stringify()}};Tt.registerLazyResult=e=>{qd=e};Tt.registerProcessor=e=>{$d=e};jd.exports=Tt;Tt.default=Tt;zd.registerRoot(Tt)});var os=ae((z_,Kd)=>{"use strict";var br={comma(e){return br.split(e,[","],!0)},space(e){let t=[" ",`
22
+ `," "];return br.split(e,t)},split(e,t,n){if(typeof e!="string")return[];let r=[],i="",o=!1,a=0,l=!1,s="",u=!1;for(let f of e)if(u?u=!1:f==="\\"?u=!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)&&(o=!0),o){let m=i.trim();(n||m!=="")&&r.push(m),i="",o=!1}else i+=f;let d=i.trim();return(n||d!=="")&&r.push(d),r}};Kd.exports=br;br.default=br});var Oi=ae((q_,Xd)=>{"use strict";var Yd=pt(),Zb=os(),hn=class extends Yd{get selectors(){return Zb.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=[])}};Xd.exports=hn;hn.default=hn;Yd.registerRule(hn)});var Zd=ae(($_,Qd)=>{"use strict";var ex=Fi(),tx=mr(),nx=pr(),rx=gr(),ix=es(),ox=pn(),ax=Oi();function Jd(e,t){return e.inputs?e.inputs.map(n=>{let r={...n,__proto__:rx.prototype};return r.map&&(r.map={...r.map,__proto__:ix.prototype}),r}):t}function sx(e,t,n){let r={...e};if(delete r.inputs,delete r.nodes,r.source){let{inputId:o,...a}=r.source;r.source=a,o!=null&&(r.source.input=t[o])}let i;if(r.type==="root")i=new ox(r);else if(r.type==="decl")i=new nx(r);else if(r.type==="rule")i=new ax(r);else if(r.type==="comment")i=new tx(r);else if(r.type==="atrule")i=new ex(r);else throw new Error("Unknown node type: "+e.type);if(n){i.nodes=n;for(let o of n)o.parent=i}return i}function Gi(e,t){if(Array.isArray(e))return e.map(i=>Gi(i));let n,r=[{childIndex:0,children:[],inputs:Jd(e,t),json:e}];for(;r.length>0;){let i=r[r.length-1],o=i.json.nodes;if(o&&i.childIndex<o.length){let l=o[i.childIndex];i.childIndex+=1,r.push({childIndex:0,children:[],inputs:Jd(l,i.inputs),json:l});continue}r.pop();let a=sx(i.json,i.inputs,o?i.children:void 0);r.length>0?r[r.length-1].children.push(a):n=a}return n}Qd.exports=Gi;Gi.default=Gi});var ss=ae((j_,om)=>{"use strict";var{dirname:Hi,relative:tm,resolve:nm,sep:rm}=Li(),{SourceMapConsumer:im,SourceMapGenerator:Bi}=Di(),{pathToFileURL:em}=Za(),lx=gr(),ux=!!(im&&Bi),cx=!!(Hi&&nm&&tm&&rm),as=class{constructor(t,n,r,i){this.stringify=t,this.mapOpts=r.map||{},this.root=n,this.opts=r,this.css=i,this.originalCSS=i,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||Ti(t.file),i;this.mapOpts.sourcesContent===!1?(i=new _d(t.text),i.sourcesContent&&(i.sourcesContent=null)):i=t.consumer(),this.map.applySourceMap(i,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;for(;(t=this.css.lastIndexOf("/*#"))!==-1;){let n=this.css.indexOf("*/",t+3);if(n===-1)break;for(;t>0&&this.css[t-1]===`
26
- `;)t--;this.css=this.css.slice(0,t)+this.css.slice(n+2)}}}}generate(){if(this.clearAnnotation(),hb&&pb&&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=ki.fromSourceMap(t,{ignoreInvalidMapping:!0})}else this.map=new ki({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 ki({file:this.outputFile(),ignoreInvalidMapping:!0});let t=1,n=1,r="<no source>",i={generated:{column:0,line:0},original:{column:0,line:0},source:""},o,a;this.stringify(this.root,(l,s,u)=>{if(this.css+=l,s&&u!=="end"&&(i.generated.line=t,i.generated.column=n-1,s.source&&s.source.start?(i.source=this.sourcePath(s),i.original.line=s.source.start.line,i.original.column=s.source.start.column-1,this.map.addMapping(i)):(i.source=r,i.original.line=1,i.original.column=0,this.map.addMapping(i))),a=l.match(/\n/g),a?(t+=a.length,o=l.lastIndexOf(`
27
- `),n=l.length-o):n+=l.length,s&&u!=="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?Ti(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(r=Ti(Ed(r,this.mapOpts.annotation)));let i=Ad(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 fb(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(Sd){let r=Sd(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;wd==="\\"&&(t=t.replace(/\\/g,"/"));let r=encodeURI(t).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(t,r),r}};Cd.exports=za});var kd=oe((Dw,Td)=>{"use strict";var Mi=/[\t\n\f\r "#'()/;[\\\]{}]/g,Fi=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,gb=/.[\r\n"'(/\\]/,Rd=/[\da-f]/i;Td.exports=function(t,n={}){let r=t.css.valueOf(),i=n.ignoreErrors,o,a,l,s,u,d,f,m,h,b,v=r.length,x=0,_=[],T=[],C=-1;function F(){return x}function D(w){throw t.error("Unclosed "+w,x)}function M(){return T.length===0&&x>=v}function S(w){if(T.length)return T.pop();if(x>=v)return;let R=w?w.ignoreUnclosed:!1;switch(o=r.charCodeAt(x),o){case 10:case 32:case 9:case 13:case 12:{s=x;do s+=1,o=r.charCodeAt(s);while(o===32||o===10||o===9||o===13||o===12);d=["space",r.slice(x,s)],x=s-1;break}case 91:case 93:case 123:case 125:case 58:case 59:case 41:{let I=String.fromCharCode(o);d=[I,I,x];break}case 40:{if(b=_.length?_.pop()[1]:"",h=r.charCodeAt(x+1),b==="url"&&h!==39&&h!==34&&h!==32&&h!==10&&h!==9&&h!==12&&h!==13){s=x;do{if(f=!1,s=r.indexOf(")",s+1),s===-1)if(i||R){s=x;break}else D("bracket");for(m=s;r.charCodeAt(m-1)===92;)m-=1,f=!f}while(f);d=["brackets",r.slice(x,s+1),x,s],x=s}else x<=C?d=["(","(",x]:(s=r.indexOf(")",x+1),a=r.slice(x,s+1),s===-1||gb.test(a)?(C=s===-1?v:s,d=["(","(",x]):(d=["brackets",a,x,s],x=s));break}case 39:case 34:{u=o===39?"'":'"',s=x;do{if(f=!1,s=r.indexOf(u,s+1),s===-1)if(i||R){s=x+1;break}else D("string");for(m=s;r.charCodeAt(m-1)===92;)m-=1,f=!f}while(f);d=["string",r.slice(x,s+1),x,s],x=s;break}case 64:{Mi.lastIndex=x+1,Mi.test(r),Mi.lastIndex===0?s=r.length-1:s=Mi.lastIndex-2,d=["at-word",r.slice(x,s+1),x,s],x=s;break}case 92:{for(s=x,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,Rd.test(r.charAt(s)))){for(;Rd.test(r.charAt(s+1));)s+=1;r.charCodeAt(s+1)===32&&(s+=1)}d=["word",r.slice(x,s+1),x,s],x=s;break}default:{o===47&&r.charCodeAt(x+1)===42?(s=r.indexOf("*/",x+2)+1,s===0&&(i||R?s=r.length:D("comment")),d=["comment",r.slice(x,s+1),x,s],x=s):(Fi.lastIndex=x+1,Fi.test(r),Fi.lastIndex===0?s=r.length-1:s=Fi.lastIndex-2,d=["word",r.slice(x,s+1),x,s],_.push(d),x=s);break}}return x++,d}function A(w){T.push(w)}return{back:A,endOfFile:M,nextToken:S,position:F}}});var Ld=oe((Iw,Nd)=>{"use strict";var bb=Ai(),xb=nr(),yb=ir(),vb=ln(),Md=Ri(),Sb=kd(),Fd={empty:!0,space:!0};function Ab(e){for(let t=e.length-1;t>=0;t--){let n=e[t],r=n[3]||n[2];if(r)return r}}var $a=class{constructor(t){this.input=t,this.root=new vb,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 bb;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=[],u=[];for(;!this.tokenizer.endOfFile();){if(t=this.tokenizer.nextToken(),r=t[0],r==="("||r==="["?u.push(r==="("?")":"]"):r==="{"&&u.length>0?u.push("}"):r===u[u.length-1]&&u.pop(),u.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 xb;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=Sb(this.input)}decl(t,n){let r=new yb;this.init(r,t[0][2]);let i=t[t.length-1];for(i[0]===";"&&(this.semicolon=!0,t.pop()),r.source.end=this.getPosition(i[3]||i[2]||Ab(t)),r.source.end.offset++;t[0][0]!=="word";)t.length===1&&this.unknownWord(t),r.raws.before+=t.shift()[1];for(r.source.start=this.getPosition(t[0][2]),r.prop="";t.length;){let u=t[0][0];if(u===":"||u==="space"||u==="comment")break;r.prop+=t.shift()[1]}r.raws.between="";let o;for(;t.length;)if(o=t.shift(),o[0]===":"){r.raws.between+=o[1];break}else o[0]==="word"&&/\w/.test(o[1])&&this.unknownWord([o]),r.raws.between+=o[1];(r.prop[0]==="_"||r.prop[0]==="*")&&(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));let a=[],l;for(;t.length&&(l=t[0][0],!(l!=="space"&&l!=="comment"));)a.push(t.shift());this.precheckMissedSemicolon(t);for(let u=t.length-1;u>=0;u--){if(o=t[u],o[1].toLowerCase()==="!important"){r.important=!0;let d=this.stringFrom(t,u);d=this.spacesFromEnd(t)+d,d!==" !important"&&(r.raws.important=d);break}else if(o[1].toLowerCase()==="important"){let d=t.slice(0),f="";for(let m=u;m>0;m--){let h=d[m][0];if(f.trim().startsWith("!")&&h!=="space")break;f=d.pop()[1]+f}f.trim().startsWith("!")&&(r.important=!0,r.raws.important=f,t=d)}if(o[0]!=="space"&&o[0]!=="comment")break}t.some(u=>u[0]!=="space"&&u[0]!=="comment")&&(r.raws.between+=a.map(u=>u[1]).join(""),a=[]),this.raw(r,"value",a.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 Md;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+=n.raws.ownSemicolon.length)}}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=[],u=t;for(;u;){if(r=u[0],s.push(u),r==="("||r==="[")o||(o=u),a.push(r==="("?")":"]");else if(l&&i&&r==="{")o||(o=u),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));u=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(n=!0),a.length>0&&this.unclosedBracket(o),n&&i){if(!l)for(;s.length&&(u=s[s.length-1][0],!(u!=="space"&&u!=="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="",u=!0,d,f;for(let m=0;m<l;m+=1)o=r[m],a=o[0],a==="space"&&m===l-1&&!i?u=!1:a==="comment"?(f=r[m-1]?r[m-1][0]:"empty",d=r[m+1]?r[m+1][0]:"empty",!Fd[f]&&!Fd[d]?s.slice(-1)===","?u=!1:s+=o[1]:u=!1):s+=o[1];if(!u){let m=r.reduce((h,b)=>h+b[1],"");t.raws[n]={raw:m,value:s}}t[n]=s}rule(t){t.pop();let n=new Md;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})}};Nd.exports=$a});var Li=oe((Pw,Dd)=>{"use strict";var Eb=Et(),wb=ar(),_b=Ld();function Ni(e,t){let n=new wb(e,t),r=new _b(n);try{r.parse()}catch(i){throw i}return r.root}Dd.exports=Ni;Ni.default=Ni;Eb.registerParse(Ni)});var ja=oe((Ow,Id)=>{"use strict";var ur=class{constructor(t,n={}){if(this.type="warning",this.text=t,n.node&&n.node.source){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}};Id.exports=ur;ur.default=ur});var Di=oe((Gw,Pd)=>{"use strict";var Cb=ja(),cr=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 Cb(t,n);return this.messages.push(r),r}warnings(){return this.messages.filter(t=>t.type==="warning")}};Pd.exports=cr;cr.default=cr});var Ka=oe((Hw,Gd)=>{"use strict";var Od={};Gd.exports=function(t){Od[t]||(Od[t]=!0,typeof console<"u"&&console.warn&&console.warn(t))}});var Ja=oe((Uw,Wd)=>{"use strict";var Rb=Et(),Tb=Ei(),kb=qa(),Mb=Li(),Hd=Di(),Fb=ln(),Nb=Jn(),{isClean:et,my:Lb}=Si(),Bw=Ka(),Db={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},Ib={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},Pb={Once:!0,postcssPlugin:!0,prepare:!0},cn=0;function dr(e){return typeof e=="object"&&typeof e.then=="function"}function Ud(e){let t=!1,n=Db[e.type];return e.type==="decl"?t=e.prop.toLowerCase():e.type==="atrule"&&(t=e.name.toLowerCase()),t&&e.append?[n,n+"-"+t,cn,n+"Exit",n+"Exit-"+t]:t?[n,n+"-"+t,n+"Exit",n+"Exit-"+t]:e.append?[n,cn,n+"Exit"]:[n,n+"Exit"]}function Bd(e){let t;return e.type==="document"?t=["Document",cn,"DocumentExit"]:e.type==="root"?t=["Root",cn,"RootExit"]:t=Ud(e),{eventIndex:0,events:t,iterator:0,node:e,visitorIndex:0,visitors:[]}}function Ya(e){return e[et]=!1,e.nodes&&e.nodes.forEach(t=>Ya(t)),e}var Xa={},_t=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=Ya(n);else if(n instanceof e||n instanceof Hd)i=Ya(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=Mb;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[Lb]&&Rb.rebuild(i)}this.result=new Hd(t,i,r),this.helpers={...Xa,postcss:Xa,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(!Ib[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${n.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!Pb[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(dr(r))try{await r}catch(i){throw this.handleError(i)}}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[et];){t[et]=!0;let n=[Bd(t)];for(;n.length>0;){let r=this.visitTick(n);if(dr(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 dr(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=Nb;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 kb(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(dr(n))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[et];)t[et]=!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(dr(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,l;for(;l=r.nodes[r.indexes[a]];)if(r.indexes[a]+=1,!l[et]){l[et]=!0,t.push(Bd(l));return}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===cn){r.nodes&&r.nodes.length&&(r[et]=!0,n.iterator=r.getIterator());return}else if(this.listeners[a]){n.visitors=this.listeners[a];return}}t.pop()}walkSync(t){t[et]=!0;let n=Ud(t);for(let r of n)if(r===cn)t.nodes&&t.each(i=>{i[et]||this.walkSync(i)});else{let i=this.listeners[r];if(i&&this.visitSync(i,t.toProxy()))return}}warnings(){return this.sync().warnings()}};_t.registerPostcss=e=>{Xa=e};Wd.exports=_t;_t.default=_t;Fb.registerLazyResult(_t);Tb.registerLazyResult(_t)});var zd=oe((Vw,Vd)=>{"use strict";var Ob=qa(),Gb=Li(),Hb=Di(),Bb=Jn(),Ww=Ka(),mr=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=Gb;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=Bb;this.result=new Hb(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 Ob(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[]}};Vd.exports=mr;mr.default=mr});var $d=oe((zw,qd)=>{"use strict";var Ub=Ei(),Wb=Ja(),Vb=zd(),zb=ln(),Ht=class{constructor(t=[]){this.version="8.5.14",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 Vb(this,t,n):new Wb(this,t,n)}use(t){return this.plugins=this.plugins.concat(this.normalize([t])),this}};qd.exports=Ht;Ht.default=Ht;zb.registerProcessor(Ht);Ub.registerProcessor(Ht)});var em=oe((qw,Zd)=>{"use strict";var jd=Ai(),Kd=nr(),qb=Et(),$b=vi(),Yd=ir(),Xd=Ei(),jb=vd(),Kb=ar(),Yb=Ja(),Xb=Va(),Jb=er(),Qb=Li(),Qa=$d(),Zb=Di(),Jd=ln(),Qd=Ri(),ex=Jn(),tx=ja();function le(...e){return e.length===1&&Array.isArray(e[0])&&(e=e[0]),new Qa(e)}le.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("cn")&&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 Qa().version,l}let o;return Object.defineProperty(i,"postcss",{get(){return o||(o=i()),o}}),i.process=function(a,l,s){return le([i(s)]).process(a,l)},i};le.stringify=ex;le.parse=Qb;le.fromJSON=jb;le.list=Xb;le.comment=e=>new Kd(e);le.atRule=e=>new jd(e);le.decl=e=>new Yd(e);le.rule=e=>new Qd(e);le.root=e=>new Jd(e);le.document=e=>new Xd(e);le.CssSyntaxError=$b;le.Declaration=Yd;le.Container=qb;le.Processor=Qa;le.Document=Xd;le.Comment=Kd;le.Warning=tx;le.AtRule=jd;le.Result=Zb;le.Input=Kb;le.Rule=Qd;le.Root=Jd;le.Node=Jb;Yb.registerPostcss(le);Zd.exports=le;le.default=le});function $r(){return globalThis}function N(e,t){if(typeof window>"u")return;let n=$r(),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 gh=["seconds-time","rational-fps","seek-keep-playing","composition-manifest-v1","runtime-data"];function bh(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 xh(e){let t=Number.isFinite(e)&&e>0?e:30,n=Number.isInteger(t)?1:1e6,r=Math.round(t*n),i=bh(r,n);return{numerator:r/i,denominator:n/i}}function Co(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 jr(e){return{protocolVersion:1,capabilities:gh,fps:xh(e)}}function yh(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function Ll(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=Co(n.fps);return r===null||!yh(n.capabilities)?{status:"unsupported",code:"invalid_protocol_metadata",receivedVersion:n.protocolVersion}:{status:"supported",fps:r,metadata:n}}var Dl=30;function Il(e){Dl=Number.isFinite(e)&&e>0?e:30}function be(e){try{window.parent.postMessage({...e,...jr(Dl)},"*")}catch(t){N("bridge.postMessage",t)}}var vh=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(Sh(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-root-duration":(e,t)=>t.onSetRootDuration(Number(e.durationSeconds??0)),"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=>Eh(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 Sh(e,t){let n=Number(e.timeSeconds);if(Number.isFinite(n))return Math.max(0,n);let i=Co(e.fps)??t.getCanonicalFps();return Math.max(0,Number(e.frame??0))/i}function Ah(e){let t=Ll(e);return t.status!=="unsupported"?!1:(be({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 Eh(e){let t=e.selectors,n=e.duration||800;t&&wh(t,n)}function Pl(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"||Ah(r))return;let i=r.action;if(typeof i!="string")return;let o=vh.get(i);o&&o(r,e)};return window.addEventListener("message",t),be({source:"hf-preview",type:"ready"}),t}function wh(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||Hi(t.file),i;this.mapOpts.sourcesContent===!1?(i=new im(t.text),i.sourcesContent&&(i.sourcesContent=null)):i=t.consumer(),this.map.applySourceMap(i,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(),cx&&ux&&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=Bi.fromSourceMap(t,{ignoreInvalidMapping:!0})}else this.map=new Bi({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 Bi({file:this.outputFile(),ignoreInvalidMapping:!0});let t=1,n=1,r="<no source>",i={generated:{column:0,line:0},original:{column:0,line:0},source:""},o,a;this.stringify(this.root,(l,s,u)=>{if(this.css+=l,s&&u!=="end"&&(i.generated.line=t,i.generated.column=n-1,s.source&&s.source.start?(i.source=this.sourcePath(s),i.original.line=s.source.start.line,i.original.column=s.source.start.column-1,this.map.addMapping(i)):(i.source=r,i.original.line=1,i.original.column=0,this.map.addMapping(i))),a=l.match(/\n/g),a?(t+=a.length,o=l.lastIndexOf(`
27
+ `),n=l.length-o):n+=l.length,s&&u!=="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?Hi(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(r=Hi(nm(r,this.mapOpts.annotation)));let i=tm(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 lx(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(em){let r=em(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;rm==="\\"&&(t=t.replace(/\\/g,"/"));let r=encodeURI(t).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(t,r),r}};om.exports=as});var lm=ae((K_,sm)=>{"use strict";var Ui=/[\t\n\f\r "#'()/;[\\\]{}]/g,Wi=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,dx=/.[\r\n"'(/\\]/,am=/[\da-f]/i;sm.exports=function(t,n={}){let r=t.css.valueOf(),i=n.ignoreErrors,o,a,l,s,u,d,f,m,p,g,y=r.length,x=0,_=[],k=[],C=-1;function L(){return x}function P(E){throw t.error("Unclosed "+E,x)}function F(){return k.length===0&&x>=y}function S(E){if(k.length)return k.pop();if(x>=y)return;let T=E?E.ignoreUnclosed:!1;switch(o=r.charCodeAt(x),o){case 10:case 32:case 9:case 13:case 12:{s=x;do s+=1,o=r.charCodeAt(s);while(o===32||o===10||o===9||o===13||o===12);d=["space",r.slice(x,s)],x=s-1;break}case 91:case 93:case 123:case 125:case 58:case 59:case 41:{let I=String.fromCharCode(o);d=[I,I,x];break}case 40:{if(g=_.length?_.pop()[1]:"",p=r.charCodeAt(x+1),g==="url"&&p!==39&&p!==34&&p!==32&&p!==10&&p!==9&&p!==12&&p!==13){s=x;do{if(f=!1,s=r.indexOf(")",s+1),s===-1)if(i||T){s=x;break}else P("bracket");for(m=s;r.charCodeAt(m-1)===92;)m-=1,f=!f}while(f);d=["brackets",r.slice(x,s+1),x,s],x=s}else x<=C?d=["(","(",x]:(s=r.indexOf(")",x+1),a=r.slice(x,s+1),s===-1||dx.test(a)?(C=s===-1?y:s,d=["(","(",x]):(d=["brackets",a,x,s],x=s));break}case 39:case 34:{u=o===39?"'":'"',s=x;do{if(f=!1,s=r.indexOf(u,s+1),s===-1)if(i||T){s=x+1;break}else P("string");for(m=s;r.charCodeAt(m-1)===92;)m-=1,f=!f}while(f);d=["string",r.slice(x,s+1),x,s],x=s;break}case 64:{Ui.lastIndex=x+1,Ui.test(r),Ui.lastIndex===0?s=r.length-1:s=Ui.lastIndex-2,d=["at-word",r.slice(x,s+1),x,s],x=s;break}case 92:{for(s=x,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,am.test(r.charAt(s)))){for(;am.test(r.charAt(s+1));)s+=1;r.charCodeAt(s+1)===32&&(s+=1)}d=["word",r.slice(x,s+1),x,s],x=s;break}default:{o===47&&r.charCodeAt(x+1)===42?(s=r.indexOf("*/",x+2)+1,s===0&&(i||T?s=r.length:P("comment")),d=["comment",r.slice(x,s+1),x,s],x=s):(Wi.lastIndex=x+1,Wi.test(r),Wi.lastIndex===0?s=r.length-1:s=Wi.lastIndex-2,d=["word",r.slice(x,s+1),x,s],_.push(d),x=s);break}}return x++,d}function A(E){k.push(E)}return{back:A,endOfFile:F,nextToken:S,position:L}}});var mm=ae((Y_,dm)=>{"use strict";var mx=Fi(),fx=mr(),px=pr(),hx=pn(),um=Oi(),gx=lm(),cm={empty:!0,space:!0};function bx(e){for(let t=e.length-1;t>=0;t--){let n=e[t],r=n[3]||n[2];if(r)return r}}function ls(e,t,n){let r="";for(let i=t;i<n;i++)r+=e[i][1];return r}var us=class{constructor(t){this.input=t,this.root=new hx,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 mx;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=[],u=[];for(;!this.tokenizer.endOfFile();){if(t=this.tokenizer.nextToken(),r=t[0],r==="("||r==="["?u.push(r==="("?")":"]"):r==="{"&&u.length>0?u.push("}"):r===u[u.length-1]&&u.pop(),u.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 fx;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=gx(this.input)}decl(t,n){let r=new px;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]||bx(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+=ls(t,0,o),r.source.start=this.getPosition(t[o][2]);let a=o;for(;o<t.length;){let m=t[o][0];if(m===":"||m==="space"||m==="comment")break;o++}r.prop=ls(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=ls(t,l,o),(r.prop[0]==="_"||r.prop[0]==="*")&&(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));let u=o;for(;o<t.length;){let m=t[o][0];if(m!=="space"&&m!=="comment")break;o++}let d=t.slice(u,o);t=t.slice(o),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),g="";for(let y=m;y>0;y--){let x=p[y][0];if(g.trim().startsWith("!")&&x!=="space")break;g=p.pop()[1]+g}g.trim().startsWith("!")&&(r.important=!0,r.raws.important=g,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 um;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=[],u=t;for(;u;){if(r=u[0],s.push(u),r==="("||r==="[")o||(o=u),a.push(r==="("?")":"]");else if(l&&i&&r==="{")o||(o=u),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));u=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(n=!0),a.length>0&&this.unclosedBracket(o),n&&i){if(!l)for(;s.length&&(u=s[s.length-1][0],!(u!=="space"&&u!=="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="",u=!0,d,f;for(let m=0;m<l;m+=1)o=r[m],a=o[0],a==="space"&&m===l-1&&!i?u=!1:a==="comment"?(f=r[m-1]?r[m-1][0]:"empty",d=r[m+1]?r[m+1][0]:"empty",!cm[f]&&!cm[d]?s.slice(-1)===","?u=!1:s+=o[1]:u=!1):s+=o[1];if(!u){let m=r.reduce((p,g)=>p+g[1],"");t.raws[n]={raw:m,value:s}}t[n]=s}rule(t){t.pop();let n=new um;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})}};dm.exports=us});var zi=ae((X_,fm)=>{"use strict";var xx=pt(),yx=gr(),Sx=mm();function Vi(e,t){let n=new yx(e,t),r=new Sx(n);try{r.parse()}catch(i){throw i}return r.root}fm.exports=Vi;Vi.default=Vi;xx.registerParse(Vi)});var cs=ae((J_,pm)=>{"use strict";var vx=pt(),{my:Ax}=sr(),xr=class{constructor(t,n={}){if(this.type="warning",this.text=t,n.node&&n.node.source){n.node[Ax]||vx.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}};pm.exports=xr;xr.default=xr});var qi=ae((Q_,hm)=>{"use strict";var Ex=cs(),yr=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 Ex(t,n);return this.messages.push(r),r}warnings(){return this.messages.filter(t=>t.type==="warning")}};hm.exports=yr;yr.default=yr});var ds=ae((Z_,bm)=>{"use strict";var gm={};bm.exports=function(t){gm[t]||(gm[t]=!0,typeof console<"u"&&console.warn&&console.warn(t))}});var ps=ae((tC,vm)=>{"use strict";var wx=pt(),_x=Ni(),Cx=ss(),Rx=zi(),xm=qi(),Tx=pn(),kx=ar(),{isClean:Ye,my:Mx}=sr(),eC=ds(),Fx={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},Nx={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},Lx={Once:!0,postcssPlugin:!0,prepare:!0},gn=0;function Sr(e){return typeof e=="object"&&typeof e.then=="function"}function ms(e){let t=!1,n=Fx[e.type];return e.type==="decl"?t=e.prop.toLowerCase():e.type==="atrule"&&(t=e.name.toLowerCase()),t&&e.append?[n,n+"-"+t,gn,n+"Exit",n+"Exit-"+t]:t?[n,n+"-"+t,n+"Exit",n+"Exit-"+t]:e.append?[n,gn,n+"Exit"]:[n,n+"Exit"]}function ym(e){let t;return e.type==="document"?t=["Document",gn,"DocumentExit"]:e.type==="root"?t=["Root",gn,"RootExit"]:t=ms(e),{eventIndex:0,events:t,iterator:0,node:e,visitorIndex:0,visitors:[]}}function Sm(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[Ye]=!1,n.nodes)for(let r of n.nodes)t.push(r)}return e}var fs={},kt=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=Sm(n);else if(n instanceof e||n instanceof xm)i=Sm(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=Rx;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[Mx]&&wx.rebuild(i)}this.result=new xm(t,i,r),this.helpers={...fs,postcss:fs,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(!Nx[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${n.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!Lx[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(Sr(r))try{await r}catch(i){throw this.handleError(i)}}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[Ye];){t[Ye]=!0;let n=[ym(t)];for(;n.length>0;){let r=this.visitTick(n);if(Sr(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 Sr(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=kx;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 Cx(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(Sr(n))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[Ye];)t[Ye]=!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(Sr(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[Ye]){l[Ye]=!0,n.descending=!0,t.push(ym(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===gn){r.nodes&&r.nodes.length&&(r[Ye]=!0,n.iterator=r.getIterator());return}else if(this.listeners[a]){n.visitors=this.listeners[a];return}}t.pop()}walkSync(t){t[Ye]=!0;let n=[{eventIndex:0,events:ms(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[Ye]){a[Ye]=!0,r.descending=!0,n.push({eventIndex:0,events:ms(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===gn)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()}};kt.registerPostcss=e=>{fs=e};vm.exports=kt;kt.default=kt;Tx.registerLazyResult(kt);_x.registerLazyResult(kt)});var Em=ae((rC,Am)=>{"use strict";var Dx=ss(),Ix=zi(),Px=qi(),Ox=ar(),nC=ds(),vr=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=Ix;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=Ox;this.result=new Px(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 Dx(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[]}};Am.exports=vr;vr.default=vr});var _m=ae((iC,wm)=>{"use strict";var Gx=Ni(),Hx=ps(),Bx=Em(),Ux=pn(),Vt=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 Bx(this,t,n):new Hx(this,t,n)}use(t){return this.plugins=this.plugins.concat(this.normalize([t])),this}};wm.exports=Vt;Vt.default=Vt;Ux.registerProcessor(Vt);Gx.registerProcessor(Vt)});var Lm=ae((oC,Nm)=>{"use strict";var Cm=Fi(),Rm=mr(),Wx=pt(),Vx=Mi(),Tm=pr(),km=Ni(),zx=Zd(),qx=gr(),$x=ps(),jx=os(),Kx=cr(),Yx=zi(),hs=_m(),Xx=qi(),Mm=pn(),Fm=Oi(),Jx=ar(),Qx=cs();function le(...e){return e.length===1&&Array.isArray(e[0])&&(e=e[0]),new hs(e)}le.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 hs().version,l}let o;return Object.defineProperty(i,"postcss",{get(){return o||(o=i()),o}}),i.process=function(a,l,s){return le([i(s)]).process(a,l)},i};le.stringify=Jx;le.parse=Yx;le.fromJSON=zx;le.list=jx;le.comment=e=>new Rm(e);le.atRule=e=>new Cm(e);le.decl=e=>new Tm(e);le.rule=e=>new Fm(e);le.root=e=>new Mm(e);le.document=e=>new km(e);le.CssSyntaxError=Vx;le.Declaration=Tm;le.Container=Wx;le.Processor=hs;le.Document=km;le.Comment=Rm;le.Warning=Qx;le.AtRule=Cm;le.Result=Xx;le.Input=qx;le.Rule=Fm;le.Root=Mm;le.Node=Kx;$x.registerPostcss(le);Nm.exports=le;le.default=le});function Zr(){return globalThis}function D(e,t){if(typeof window>"u")return;let n=Zr(),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 Zh=["seconds-time","rational-fps","seek-keep-playing","composition-manifest-v1","runtime-data"];function e0(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 t0(e){let t=Number.isFinite(e)&&e>0?e:30,n=Number.isInteger(t)?1:1e6,r=Math.round(t*n),i=e0(r,n);return{numerator:r/i,denominator:n/i}}function Go(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 ei(e){return{protocolVersion:1,capabilities:Zh,fps:t0(e)}}function n0(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function Jl(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=Go(n.fps);return r===null||!n0(n.capabilities)?{status:"unsupported",code:"invalid_protocol_metadata",receivedVersion:n.protocolVersion}:{status:"supported",fps:r,metadata:n}}var Ql=30;function Zl(e){Ql=Number.isFinite(e)&&e>0?e:30}function ye(e){try{window.parent.postMessage({...e,...ei(Ql)},"*")}catch(t){D("bridge.postMessage",t)}}var r0=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(i0(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-root-duration":(e,t)=>t.onSetRootDuration(Number(e.durationSeconds??0)),"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=>a0(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 i0(e,t){let n=Number(e.timeSeconds);if(Number.isFinite(n))return Math.max(0,n);let i=Go(e.fps)??t.getCanonicalFps();return Math.max(0,Number(e.frame??0))/i}function o0(e){let t=Jl(e);return t.status!=="unsupported"?!1:(ye({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 a0(e){let t=e.selectors,n=e.duration||800;t&&s0(t,n)}function eu(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"||o0(r))return;let i=r.action;if(typeof i!="string")return;let o=r0.get(i);o&&o(r,e)};return window.addEventListener("message",t),ye({source:"hf-preview",type:"ready"}),t}function s0(e,t){if(!document.getElementById("__hf-flash-styles")){let n=document.createElement("style");n.id="__hf-flash-styles",n.textContent=`
30
30
  .__hf-flash {
31
31
  outline: 2px solid rgba(59, 130, 246, 0.6) !important;
32
32
  outline-offset: 2px !important;
@@ -36,13 +36,13 @@ https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.p
36
36
  0% { outline-color: rgba(59, 130, 246, 0.8); }
37
37
  100% { outline-color: transparent; }
38
38
  }
39
- `,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){N("bridge.flashElements.querySelector",r)}}var Ro=null;function Ol(e){Ro=e}function Be(e,t){if(Ro)try{Ro({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(n){N("runtime.analytics.site1",n)}}function _h(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 Kt(e){return`--${_h(e)}`}function Gl(e){let t=new Map;for(let n of e){let r=Kt(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 Bl(){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,Cn(i));let n=Yr(),r={...t,...n};for(let i of e)ko(i,r);return r}var Hl=new Set;function Ul(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 Ch(e,t){return t?.trim()||e.getAttribute("data-composition-id")?.trim()||e.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()||"composition"}function Rh(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 Th(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=Rh(e);return r.length===0||r.some(i=>String(i)===String(n))?null:{id:e.id,value:n,allowed:r}}function ko(e,t,n){if(!e)return;let r=Ul(e);if(r.length===0)return;let i=Ch(e,n);for(let o of r){let a=Th(o,t);if(!a)continue;let l=`${i}|${a.id}|${String(a.value)}`;if(Hl.has(l))continue;Hl.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 Cn(e){let t={};for(let n of Ul(e))typeof n.id!="string"||!("default"in n)||(t[n.id]=n.default);return t}var To="data-hf-css-vars";function Kr(e){return"style"in e&&typeof e.style?.setProperty=="function"}function Mo(e,t){if(!Kr(e))return;let n=[];for(let[r,i]of Object.entries(t))if(typeof i=="string"&&i!==""||typeof i=="number"){let o=Kt(r);e.style.setProperty(o,String(i)),n.push(o)}n.length>0&&e.setAttribute(To,n.join(" "))}function Wl(e,t,n){let r={};for(let[i,o]of Object.entries(t)){let a=Kt(i);((Kr(e)?e.style.getPropertyValue(a):"")||(n?n.getComputedStyle(e).getPropertyValue(a):"")).trim()===""&&(r[i]=o)}return r}function Vl(e){if(!Kr(e))return;let t=e.getAttribute(To);if(t){for(let n of t.split(" "))n.startsWith("--")&&e.style.removeProperty(n);e.removeAttribute(To)}}function zl(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=Yr(),r=[];for(let i of t)r.push(...kh(i,n,e.defaultView));for(let i of Gl(r))console.warn(`composition variables ${i.join(", ")} collapse to the same CSS property ${Kt(i[0]??"")} \u2014 rename one to avoid cross-talk`)}function kh(e,t,n){if(!Kr(e))return[];let r=Cn(e),i={};for(let[o,a]of Object.entries(r)){if(o in t)continue;let l=Kt(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 Mo(e,i),Object.keys(r)}function ql(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 Yr(){if(typeof window>"u")return{};let e=window.__hfVariables;return!e||typeof e!="object"||Array.isArray(e)?{}:e}var $l="http://www.w3.org/1999/xhtml";function Ne(e){return e!=null&&e.nodeType===1}function Se(e){return Ne(e)&&e.namespaceURI===$l}function Rn(e,t){return Se(e)&&e.localName===t}function fe(e){return Rn(e,"video")}function Fo(e){return Rn(e,"audio")}function xe(e){return fe(e)||Fo(e)}function Oe(e){return Rn(e,"img")}function jl(e){return Rn(e,"style")}function Kl(e){return Rn(e,"link")}function No(e){return Ne(e)&&(e.namespaceURI===$l||e.namespaceURI==="http://www.w3.org/2000/svg")}function Yl(e){let t=[],n=u=>{if(typeof u.getAnimations!="function")return[];try{return u.getAnimations()}catch{return[]}},r=u=>e?.resolveStartSeconds?e.resolveStartSeconds(u):Number.parseFloat(u.getAttribute("data-start")??"0")||0,i=(u,d)=>{let f=null;try{f=u.effect?.getComputedTiming?.()??null}catch(h){N("runtime.adapters.css.site5",h)}if(!f)return{};let m=Number(f.endTime);return Number.isFinite(m)?{endSeconds:d+m/1e3}:{unbounded:!0}},o=(u,d)=>{for(let f of u){try{f.currentTime=d}catch(m){N("runtime.adapters.css.site1",m)}try{f.pause()}catch(m){N("runtime.adapters.css.site2",m)}}},a=u=>{for(let d of u)try{d.play()}catch(f){N("runtime.adapters.css.site3",f)}},l=u=>{for(let d of u)try{d.pause()}catch(f){N("runtime.adapters.css.site4",f)}},s=u=>{u.baseDelay?u.el.style.animationDelay=u.baseDelay:u.el.style.removeProperty("animation-delay"),u.basePlayState?u.el.style.animationPlayState=u.basePlayState:u.el.style.removeProperty("animation-play-state")};return{name:"css",discover:()=>{t=[];let u=document.querySelectorAll("*");for(let d of u){if(!Se(d))continue;let f=window.getComputedStyle(d);!f.animationName||f.animationName==="none"||t.push({el:d,baseDelay:d.style.animationDelay||"",basePlayState:d.style.animationPlayState||"",animations:n(d)})}},getInferredDurationSeconds:()=>{let u=0;for(let d of t){if(!d.el.isConnected)continue;let f=r(d.el);for(let m of n(d.el)){let h=i(m,f);h.endSeconds!=null&&(u=Math.max(u,h.endSeconds))}}return u>0?u:null},seek:u=>{let d=Number(u.time)||0;for(let f of t){if(!f.el.isConnected)continue;let m=r(f.el),h=Math.max(0,d-m)*1e3,b=f.animations;if(b.length>0){o(b,h);continue}f.el.style.animationPlayState="paused",f.el.style.animationDelay=`-${(h/1e3).toFixed(3)}s`}},pause:()=>{for(let u of t){if(!u.el.isConnected)continue;let d=u.animations;d.length>0&&l(d),s(u)}},play:()=>{for(let u of t)u.el.isConnected&&(s(u),a(u.animations))},revert:()=>{t=[]}}}function Xl(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+.001,!0),n.totalTime(r,i)):n.seek(r,i)},pause:()=>{let t=e.getTimeline();t&&t.pause()}}}function Jl(){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){N("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){N("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){N("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){N("runtime.adapters.animejs.site4",n)}},revert:()=>{}}}function Zl(){return{name:"lottie",discover:()=>{try{let e=window.lottie;if(e&&typeof e.getRegisteredAnimations=="function"){let t=e.getRegisteredAnimations();if(Array.isArray(t)&&t.length>0){let n=window.__hfLottie??[],r=new Set(n);for(let i of t)r.has(i)||n.push(i);window.__hfLottie=n}}}catch(e){N("runtime.adapters.lottie.site1",e)}},seek:e=>{let t=Math.max(0,Number(e.time)||0),n=window.__hfLottie;if(!(!n||n.length===0))for(let r of n)try{if(Lo(r))r.goToAndStop(t*1e3,!1);else if(Do(r)){if(typeof r.setCurrentRawFrameValue=="function"){let i=r.totalFrames??0,o=r.frameRate??30,a=t*o;i>0&&r.setCurrentRawFrameValue(Math.min(a,i-1))}else if(typeof r.seek=="function"){let i=r.duration??0;if(Number.isFinite(i)&&i>0){let o=Math.min(100,t/i*100);r.seek(o)}}}}catch(i){N("runtime.adapters.lottie.site2",i)}},pause:()=>{let e=window.__hfLottie;if(!(!e||e.length===0))for(let t of e)try{(Lo(t)||Do(t))&&t.pause()}catch(n){N("runtime.adapters.lottie.site3",n)}},revert:()=>{},getInferredDurationSeconds:()=>{let e=window.__hfLottie;if(!e||e.length===0)return null;let t=0,n=!1;for(let r of e){let i=null;try{i=Mh(r)}catch(o){N("runtime.adapters.lottie.site4",o)}i!=null&&(n=!0,t=Math.max(t,i))}return n?t:null}}}function Ql(e,t){return!Number.isFinite(e)||!e||e<=0||!Number.isFinite(t)||!t||t<=0?null:e/t}function Mh(e){return Lo(e)?Ql(e.totalFrames,e.frameRate):Do(e)?Number.isFinite(e.duration)&&(e.duration??0)>0?e.duration??null:Ql(e.totalFrames,e.frameRate):null}function Lo(e){return typeof e=="object"&&e!==null&&typeof e.goToAndStop=="function"}function Do(e){return typeof e=="object"&&e!==null&&typeof e.pause=="function"&&("totalFrames"in e||"duration"in e)}var Io=-1,Xr=new Set,Yt,Po=0;function eu(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){N("runtime.adapters.seek-dispatch.site1",o)}finally{n=!1}if(t.length===0)return;let i=Promise.all(t).then(()=>({status:"fulfilled"})).catch(o=>({status:"rejected",reason:o}));Xr.add(i),i.then(o=>{Xr.delete(i)&&o.status==="rejected"&&Yt===void 0&&(Yt={reason:o.reason})})}function Jr(e){e!==Io&&(Io=e,eu(e))}function Qr(e){Io=e,eu(e)}function tu(){return Po>0}async function Oo(){Po+=1;let e=Yt;try{for(await Promise.resolve();Xr.size>0;){let r=(await Promise.all([...Xr])).find(i=>i.status==="rejected");e===void 0&&r?.status==="rejected"&&(e={reason:r.reason})}let t=Yt;if(e===void 0&&(e=t),Yt===t&&(Yt=void 0),e)throw e.reason}finally{Po-=1}}function nu(){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=u=>{o||u.itemsTotal<=u.itemsLoaded||(o=new Promise(d=>{u.onLoad=function(){try{i?.call(this)}finally{o=null,u.onLoad=i??null,d()}}}))},s=u=>{n!==u&&(n=u,r=u.onStart??null,i=u.onLoad??null,u.onStart=function(d,f,m){try{r?.call(this,d,f,m)}finally{l(u)}})};return{name:"three",discover:()=>{let u=a();u&&(s(u),l(u))},seek:u=>{e=Math.max(0,Number(u.time)||0),t=e,window.__hfThreeTime=e,Jr(e)},pause:()=>{e==null&&(e=Math.max(0,t))},play:()=>{e=null},revert:()=>{e=null,t=0},getReadyPromise:()=>{let u=a();return!u||u.itemsTotal<=u.itemsLoaded?null:(o||l(u),o)}}}function Je(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 ru(){return Je({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 iu(){return Je({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 ou(){return Je({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 au(){return Je({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 su(){return Je({name:"d3",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfD3;return Array.isArray(e)?e:[]},waitFor:e=>e.end()})}var Fh=250;function lu(){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&&(tu()||(window.__hfTypegpuTime=e,Qr(e)))},Fh))};return{name:"typegpu",discover:()=>{},seek:o=>{e=Math.max(0,Number(o.time)||0),t=e,window.__hfTypegpuTime=e,Jr(e)},pause:()=>{e==null&&(e=Math.max(0,t)),i()},play:()=>{r(),e=null},revert:()=>{r(),e=null,t=0}}}var Tn="data-hf-render-id",uu="data-hf-group-render-id";function Nh(e){return e.getAttribute(Tn)||e.id||null}var Lh="__render_frame_",Dh="__";function Ih(e){return`${Lh}${e}${Dh}`}function Ph(e){let t=Nh(e);return t?Ih(t):null}function bt(e){let t=Ph(e);if(!t)return null;let n=document.getElementById(t);return Oe(n)?n:null}function cu(e){let t=e.nextElementSibling;if(Oe(t)&&t.classList.contains("__render_frame__")&&t.complete&&t.naturalWidth>0)return t;let n=bt(e);return n&&n.complete&&n.naturalWidth>0?n:null}function du(){let e=globalThis.GPUQueue;if(!e?.prototype?.copyExternalImageToTexture)return;let t=e.prototype.copyExternalImageToTexture;e.prototype.copyExternalImageToTexture=function(n,r,i){if(fe(n?.source)){let o=cu(n.source);if(o)return t.call(this,{...n,source:o},r,i)}return t.call(this,n,r,i)}}function mu(){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,u=l[s];if(fe(u)){let d=cu(u);d&&(l[s]=d)}return o.apply(this,l)};a.__hfVideoPatched=!0,r[i]=a}}}function fu(){let e=!1,t=0,n=!1,r,i,o,a=new Set,l=new WeakMap,s=()=>{if(!document.getAnimations)return[];try{return document.getAnimations()}catch{return[]}},u=x=>{let _=Number(x.currentTime);return Number.isFinite(_)&&_>0?_:0},d=(x,_)=>_<=0?x:x>=_?Math.max(0,x-_):x,f=(x,_)=>{let T=l.get(x);if(T)return T;let C={compositionTimeMs:_,animationTimeMs:e?d(u(x),_):u(x)};return l.set(x,C),C},m=(x,_)=>{if(!a.has(x)){a.add(x);let T=()=>{a.delete(x)};try{x.addEventListener("finish",T,{once:!0}),x.addEventListener("cancel",T,{once:!0})}catch(C){N("runtime.adapters.waapi.site4",C)}}f(x,_)},h=(x,_)=>{for(let T of x)m(T,_)},b=()=>{if(n||typeof Element>"u")return;let x=Element.prototype;if(typeof x.animate!="function"||x.__hfOriginalAnimate)return;let _=x.animate;try{Object.defineProperty(x,"__hfOriginalAnimate",{value:_,configurable:!0});let T=function(...C){let F=_.apply(this,C);return m(F,t),F};x.animate=T,r=x,i=_,o=T,n=!0}catch{}},v=x=>{let _=null;try{_=x.effect?.getComputedTiming?.()??null}catch(F){N("runtime.adapters.waapi.site4",F)}if(!_)return{};let T=Number(_.endTime);return Number.isFinite(T)?{endSeconds:(l.get(x)?.compositionTimeMs??0)/1e3+T/1e3}:{unbounded:!0}};return{name:"waapi",discover:()=>{e=!0,b(),h(s(),t)},seek:x=>{let _=Math.max(0,(Number(x.time)||0)*1e3);t=_,(!e||a.size>0)&&h(s(),e?_:0);for(let T of a){let C=e?f(T,_):f(T,0),F=C.animationTimeMs+Math.max(0,_-C.compositionTimeMs);try{T.currentTime=F}catch(D){N("runtime.adapters.waapi.site1",D)}try{T.pause()}catch(D){N("runtime.adapters.waapi.site2",D)}}},pause:()=>{e||h(s(),t);for(let x of a)try{x.pause()}catch(_){N("runtime.adapters.waapi.site3",_)}},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(x){N("runtime.adapters.waapi.site5",x)}r=void 0,i=void 0,o=void 0,n=!1},getInferredDurationSeconds:()=>{let x=0;for(let _ of s()){let T=v(_);T.endSeconds!=null&&(x=Math.max(x,T.endSeconds))}return x>0?x:null}}}var Go=3.981071705534972;function Ue(e){return Number.isFinite(e)?Math.max(0,Math.min(Go,e)):1}function Zr(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function pu(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,Zr(o))}});try{return t()}finally{delete e.volume,i.call(e,Zr(o))}}var Xt=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),uA=Object.freeze([Xt.start,Xt.duration,Xt.trackIndex]),cA=Object.freeze([Xt.derivedEnd]),dA=Object.freeze([Xt.derivedEnd,Xt.legacyTrack]);function ei(e){if(e==null||e.trim()==="")return null;let t=Number(e);return Number.isFinite(t)?t:null}var gu=/^[A-Za-z0-9_.:-]+$/;function bu(e,t){let n=e.charCodeAt(t);return n>=48&&n<=57}function hu(e,t){let n=t;for(;n>=0&&bu(e,n);)n--;return n}function Oh(e,t){let n=t;for(;n>=0&&(e[n]??"").trim()==="";)n--;return n}function Gh(e){let t=e.length-1;if(!bu(e,t))return null;let n=hu(e,t);return e[n]==="."&&(n=hu(e,n-1)),n+1}function Hh(e){let t=Gh(e);if(t==null)return null;let n=Oh(e,t-1),r=e[n];if(r!=="+"&&r!=="-")return null;let i=e.slice(0,n).trim();if(!gu.test(i))return null;let o=Number(e.slice(t));return Number.isFinite(o)?{refId:i,operator:r,magnitude:o}:null}function Ho(e){let t=(e??"").trim();if(!t)return null;let n=ei(t);if(n!=null)return{kind:"absolute",value:n};if(gu.test(t))return{kind:"reference",refId:t,offset:0};let r=Hh(t);return r?{kind:"reference",refId:r.refId,offset:r.operator==="-"?-r.magnitude:r.magnitude}:null}function xu(e){return Number.isFinite(e)&&e>0?Math.max(.1,Math.min(5,e)):1}function Ce(e){return ei(e)}function Le(e){let t=Number.parseFloat(e.getAttribute("data-playback-rate")??""),n=Number.isFinite(t)&&t>0?t:xe(e)?e.defaultPlaybackRate:1;return xu(n)}function kn(e){let t=n=>{let r=Ce(n);return r==null?null:Number.isFinite(r)&&r>=0?r:null};return t(e.getAttribute("data-playback-start"))??t(e.getAttribute("data-media-start"))??0}function xt(e,t){return Bh(t,kn(e),Le(e))}function ti(e){let t=Ce(e.getAttribute("data-duration"));return t!=null&&t>0?t:Number.isFinite(e.duration)?xt(e,e.duration):null}function Bh(e,t,n){return Number.isFinite(e)?Math.max(0,e-t)/xu(n):null}function Mn(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 Jt(e){let t=Mn(e.start);if(t==null)return null;let n=Math.max(0,t),r=Mn(e.duration),i=Mn(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=Mn(e.end),l=Mn(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 ni="data-hf-media-start-basis";function Uh(e){return e?.trim().toLowerCase()==="global"?"global":"local"}function yu(e){return Uh(e.basis)==="global"?e.authoredStart:e.hostStart+e.authoredStart}function st(e){let t=e.timelineRegistry??{},n=e.includeAuthoredTimingAttrs??!1,r=e.documentRef??document,i=new WeakMap,o=new WeakMap,a=new Set,l=m=>{let h=r.getElementById(m);return h||(r.querySelector(`[data-composition-id="${CSS.escape(m)}"]`)??null)},s=m=>{let h=o.get(m);if(h!==void 0)return h;let b=null,v=Jt({start:0,duration:m.getAttribute("data-duration"),authoredDuration:n?m.getAttribute("data-hf-authored-duration"):null});if(v?.duration!=null&&v.duration>0&&(b=v.duration),b==null||b<=0){let x=d(m,0),_=Jt({start:x,end:m.getAttribute("data-end"),authoredEnd:n?m.getAttribute("data-hf-authored-end"):null});_?.duration!=null&&_.duration>0&&(b=_.duration)}if((b==null||b<=0)&&xe(m)){let x=kn(m);Number.isFinite(m.duration)&&m.duration>x&&(b=(m.duration-x)/Le(m))}if(b==null||b<=0){let x=m.getAttribute("data-composition-id");if(x){let _=t[x]??null;if(_&&typeof _.duration=="function")try{let T=Number(_.duration());Number.isFinite(T)&&T>0&&(b=T)}catch(T){N("runtime.startResolver.site1",T)}}}return b!=null&&Number.isFinite(b)&&b>0?(o.set(m,b),b):(o.set(m,null),null)},u=(m,h)=>{if(m.hasAttribute("data-composition-id")){let v=m.parentElement?.closest("[data-composition-id]");return v?d(v,h):0}let b=m.closest("[data-composition-id]");return b?d(b,h):0},d=(m,h)=>{let b=i.get(m);if(b!==void 0)return b??h;if(a.has(m))return h;a.add(m);try{let v=Ho(m.getAttribute("data-start"));if(!v){if(m.hasAttribute("data-composition-id")){let F=m.parentElement;if(F&&(F.hasAttribute("data-composition-src")||F.hasAttribute("data-composition-id")||F.hasAttribute("data-composition-file"))){let D=d(F,h);return i.set(m,D),D}}return i.set(m,h),h}if(v.kind==="absolute"){let F=Math.max(0,v.value),D=Math.max(0,u(m,h)+F);return i.set(m,D),D}let x=l(v.refId);if(!x)return i.set(m,h),h;let _=d(x,0),T=s(x);if(T==null||T<=0){let F=Math.max(0,_+v.offset);return i.set(m,F),F}let C=Math.max(0,_+T+v.offset);return i.set(m,C),C}finally{a.delete(m)}};return{resolveStartForElement:(m,h=0)=>d(m,Math.max(0,h)),resolveDurationForElement:m=>s(m),resolveMediaStartForElement:m=>{let h=m.closest("[data-composition-id]"),b=h?d(h,0):0,v=Ce(m.getAttribute("data-start"));return m.hasAttribute("data-hf-auto-start")||v==null||b<=0?d(m,b):yu({authoredStart:v,hostStart:b,basis:m.getAttribute(ni)})}}}function Wh(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:Ue(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:Ue(n)}),i}function vu(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 Vh(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 zh(e){let t=Number.parseFloat(e??"");return Number.isFinite(t)?t:void 0}function qh(e,t){let n=st({timelineRegistry:window.__timelines,includeAuthoredTimingAttrs:!0}).resolveMediaStartForElement(e),r=Ce(e.dataset.end)??void 0,i=Ce(e.dataset.duration)??void 0,o=t;i!==void 0&&i>0?o=n+i:r!==void 0&&r>n&&(o=r);let a=zh(e.dataset.volume)??1;return{start:n,end:o,staticVolume:Ue(a)}}function $h(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),u=Math.min(n,o),d=pu(e,()=>{e.volume=a;let m=[],h;for(let b=s;b<=u+1e-6;b=Math.min(u,b+l)){t(b);let v=Number(e.volume);if(Number.isFinite(v)){let x={time:Number(b.toFixed(6)),volume:Number(Ue(v).toFixed(6))};Vh(m,h,x,b===u),h=x}if(b===u)break}return m});return d.some(m=>Math.abs(m.volume-a)>1e-4)?d:null}function Su(e,t,n,r,i={}){if(i.allowLiveTimelineSeek===!1||!t||!xe(e)||n<=0)return;let o=u=>{try{typeof t.totalTime=="function"?t.totalTime(u,!0):typeof t.seek=="function"&&t.seek(u,!0)}catch{}},a=typeof t.totalTime=="function"?Number(t.totalTime()):typeof t.seek=="function"?Number(t.seek()):0,l=qh(e,n),s=$h(e,o,n,60,l);if(Number.isFinite(a)&&o(a),s){let u=Wh(s,l.start,l.staticVolume);u.length>0&&r.set(e,u)}}var It="data-fx-chain",LA=It.slice(5),Au=1,Fn=(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}),Bo=(e=.707,t="Bandwidth \u2014 higher is narrower.")=>({kind:"number",key:"q",label:"Q",unit:"",min:.1,max:20,step:.01,default:e,scale:"log",automatable:!0,hint:t}),ri=(e=-40,t=40,n=0)=>({kind:"number",key:"gain",label:"Gain",unit:"dB",min:e,max:t,step:.1,default:n,automatable:!0}),Eu={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."},_u=[{id:"gain",label:"Gain",group:"dynamics",description:"Raise or lower the whole signal. Automate it to duck under something else.",params:[ri(-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:[Fn("frequency","Frequency",1e3),ri(-40,40,0),Bo(1)],web:"biquad-peaking"},{id:"lowshelf",label:"Low Shelf",group:"filter",description:"Lift or drop everything below the corner frequency.",params:[Fn("frequency","Frequency",200,20,2e3),ri(-40,40,0)],web:"biquad-lowshelf"},{id:"highshelf",label:"High Shelf",group:"filter",description:"Lift or drop everything above the corner frequency.",params:[Fn("frequency","Frequency",4e3,500,2e4),ri(-40,40,0)],web:"biquad-highshelf"},{id:"highpass",label:"High-pass",group:"filter",description:"Remove low frequencies \u2014 the usual fix for rumble on a voice.",params:[Fn("frequency","Cutoff",300,20,2e4),Bo(.707),Eu],web:"biquad-highpass"},{id:"lowpass",label:"Low-pass",group:"filter",description:"Remove high frequencies \u2014 darkens or muffles a track.",params:[Fn("frequency","Cutoff",8e3,100,2e4),Bo(.707),Eu],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:"Hard ceiling \u2014 nothing gets past the 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:"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 \u2014 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"}],Uo=new Map(_u.map(e=>[e.id,e]));function Nn(e){return Uo.get(e)}var DA=_u.map(e=>e.id);function Ln(e,t){let n=Uo.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 yt=class extends Error{constructor(t){super(t),this.name="AudioFxChainError"}};function Cu(e){let t;try{t=JSON.parse(e)}catch(i){throw new yt(`Chain file is not valid JSON: ${i.message}`)}if(typeof t!="object"||t===null)throw new yt("Chain file must be a JSON object.");let n=t;if(n.version!==Au)throw new yt(`Unsupported chain version: ${String(n.version)}`);if(!Array.isArray(n.nodes))throw new yt("Chain file is missing a `nodes` array.");let r=n.nodes.map(jh);return{version:Au,nodes:r}}function Dn(e){return e.nodes.filter(t=>t.enabled!==!1)}function jh(e,t){if(typeof e!="object"||e===null)throw new yt(`Node ${t} is not an object.`);let n=e;if(typeof n.type!="string"||!Uo.has(n.type))throw new yt(`Node ${t} has unknown effect type: ${String(n.type)}`);return Yh({type:n.type,id:ii(n.id),fromCarve:wu(n.fromCarve),fromPreset:ii(n.fromPreset),label:ii(n.label),fromEq:ii(n.fromEq),fromLeveller:wu(n.fromLeveller),presetAmount:Kh(n.presetAmount),enabled:n.enabled!==!1,params:Ln(n.type,n.params??void 0)})}function ii(e){return typeof e=="string"&&e?e:void 0}function wu(e){return e===!0?!0:void 0}function Kh(e){if(!(typeof e!="number"||!Number.isFinite(e)))return Math.min(1,Math.max(0,e))}function Yh(e){for(let t of Object.keys(e))e[t]===void 0&&delete e[t];return e}var ut="data-automation",GA=ut.slice(5),oi=1,Xh=512,lt=class extends Error{constructor(t){super(t),this.name="AudioAutomationError"}},Qt="volume";function Pn(e){if(e===Qt)return{kind:"volume"};let t=e.split(".");if(t.length===3&&t[0]==="fx"&&t[1]===Jh){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 Jh="preset";var Qh={min:0,max:1,step:.01,unit:"",label:"Amount",scale:"linear",default:1},ai={min:0,max:Go,step:.01,unit:"",label:"Volume",scale:"linear",default:1};function Wo(e,t){let n=Pn(e);if(!n)return null;if(n.kind==="volume")return ai;if(n.kind==="preset")return t?.nodes.some(l=>l.fromPreset===n.presetId)?{...Qh,label:`${n.presetId} \xB7 Amount`}:null;let r=t?.nodes.find(a=>a.id===n.nodeId);if(!r)return null;let i=Nn(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 In(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 Zh(e){let t=In(e);return t===null||t===0?0:Math.min(1,Math.max(-1,t))}function Ru(e,t){let n=In(e),r=In(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 e0(e){let t=Zh(e?.curve),n=Ru(e?.viaX,e?.viaY);return{...t?{curve:t}:{},...n?{viaX:n.x,viaY:n.y}:{}}}function t0(e,t){let n=In(e?.t),r=In(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,...e0(e)}}function Tu(e,t){let n=e.map(i=>t0(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,Xh)}function n0(e){let t=[];for(let n of e.lanes){if(!Pn(n.target))continue;let r=n.target===Qt?ai:null,i=Tu(n.points??[],r);i.length>0&&t.push({target:n.target,points:i})}return{version:oi,lanes:t}}function ku(e,t){let n=[];for(let r of e.lanes){let i=Wo(r.target,t);if(!i)continue;let o=Tu(r.points,i);o.length>0&&n.push({target:r.target,points:o})}return{version:oi,lanes:n}}function si(e){let t;try{t=JSON.parse(e)}catch(i){throw new lt(`Automation is not valid JSON: ${i.message}`)}if(typeof t!="object"||t===null)throw new lt("Automation must be a JSON object.");let n=t;if(n.version!==oi)throw new lt(`Unsupported automation version: ${String(n.version)}`);if(!Array.isArray(n.lanes))throw new lt("Automation is missing a `lanes` array.");let r=n.lanes.map((i,o)=>{if(typeof i!="object"||i===null)throw new lt(`Lane ${o} is not an object.`);let a=i;if(typeof a.target!="string"||!Pn(a.target))throw new lt(`Lane ${o} has an unreadable target: ${String(a.target)}`);if(!Array.isArray(a.points))throw new lt(`Lane ${o} is missing a \`points\` array.`);return{target:a.target,points:a.points}});return n0({version:oi,lanes:r})}function r0(e,t){return t?Math.pow(e,Math.pow(2,2*t)):e}function i0(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 o0(e,t,n){let{cx:r,cy:i,w:o}=i0(t,n),a=2-2*o,l=e*a-1+2*o*r,s=-e*a-2*o*r,u=a0(l,s,e),d=1-u,f=d*d+2*o*u*d+u*u;return f>0?(2*o*i*u*d+u*u)/f:e}function a0(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 s0(e,t){let n=Ru(t.viaX,t.viaY);return n?o0(Math.min(1,Math.max(0,e)),n.x,n.y):r0(e,t.curve)}function l0(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 On(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 f=a+l>>1;r[f].t<=t?a=f:l=f}let s=r[a],u=r[l],d=u.t-s.t;return d<=0?u.v:l0(s.v,u.v,s0((t-s.t)/d,s),n)}function Mu(e){return e.points.length<=1||e.points.every(t=>t.v===e.points[0].v)}function Fu(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]=On(e,t+l*s/(o-1),i);return a}var li=new Map,u0=64;function c0(e){let t=li.get(e);if(t!==void 0)return t;let n=null;try{n=si(e).lanes.find(r=>r.target===Qt)??null}catch{n=null}return li.size>u0&&li.clear(),li.set(e,n),n}function Nu(e,t){let n=(typeof e.getAttribute=="function"?e.getAttribute(ut):null)??"";if(!n)return null;let r=c0(n);return!r||r.points.length===0?null:On(r,t)}var Zt="hf-audio-group",ui="data-audio-group";function Vo(e){let t=e?.getAttribute("data-volume"),n=t?parseFloat(t):1;return Number.isFinite(n)?n:1}function zo(e,t){let n=Array.from(e?.querySelectorAll?.(`${Zt}[${Tn}]`)??[]).find(i=>i.getAttribute(Tn)===t);if(n)return n;let r=e?.getElementById(t)??null;return r&&r.tagName?.toLowerCase()===Zt?r:null}function ci(e,t){let n=t?.getAttribute?.(uu)??t?.getAttribute?.(ui);return n?zo(e,n)?.hasAttribute("data-hidden")??!1:!1}function Lu(e){return typeof e.tagName!="string"||e.tagName.toLowerCase()!=="audio"||typeof e.getAttribute!="function"?null:e.getAttribute(ui)||null}function Du(e){let t="__hf-audio-group-inert";if(!e?.head||e.getElementById(t))return;let n=e.createElement("style");n.id=t,n.textContent=`${Zt}{display:none!important}`,e.head.appendChild(n)}function Qe(e){return kn(e)}function Iu(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 Pu(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=Qe(a),u=Le(a),d=a.loop,f=Number.isFinite(a.duration)&&a.duration>0?a.duration:null,m=e?.resolveDurationSeconds?.(a)??Number.parseFloat(a.dataset.duration??"");(!Number.isFinite(m)||m<0)&&f!=null&&(m=Math.max(0,(f-s)/u));let h=Number.isFinite(m)&&m>=0,b=h?l+m:Number.POSITIVE_INFINITY,v=Number.parseFloat(a.dataset.volume??""),x={el:a,start:l,mediaStart:s,duration:h?m:Number.POSITIVE_INFINITY,end:b,volume:Number.isFinite(v)?v:null,playbackRate:u,loop:d,sourceDuration:f};r.push(x),a.tagName==="VIDEO"&&i.push(x),Number.isFinite(b)&&(o=Math.max(o,b))}return{timedMediaEls:n,mediaClips:r,videoClips:i,maxMediaEnd:o}}var $o=new WeakMap,di=new WeakMap,Gn=new WeakMap,jo=new WeakSet,en=new WeakSet;function d0(e){if(en.has(e))return;en.add(e);let t=()=>en.delete(e);e.addEventListener("playing",t,{once:!0}),e.addEventListener("pause",t,{once:!0}),e.addEventListener("error",t,{once:!0})}var m0=3;function f0(e){return e.error!=null||e.networkState===m0}var Ko=new WeakMap;function qo(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function Yo(e){$o.delete(e),di.delete(e),Gn.delete(e),jo.delete(e),Ko.delete(e)}function Ou(e){let t=!!(e.outputMuted||e.userMuted);for(let n of e.clips){let{el:r}=n;if(!r.isConnected)continue;let i=(e.timeSeconds-n.start)*n.playbackRate+n.mediaStart,o=r.tagName==="VIDEO"&&!n.loop,a=o&&n.sourceDuration!=null&&i>=n.sourceDuration&&e.timeSeconds>=n.start&&e.timeSeconds<n.end;a&&n.sourceDuration!=null&&(i=n.sourceDuration);let l=di.get(r),s=r.tagName==="AUDIO"&&(l===void 0||i<l-.04),u=!n.loop&&n.sourceDuration!=null&&i>=n.mediaStart&&i<n.sourceDuration&&(o||s);if(e.timeSeconds>=n.start&&e.timeSeconds<n.end&&i>=0&&(!r.ended||n.loop||a||u)){if(di.set(r,i),n.loop&&n.sourceDuration!=null&&n.sourceDuration>0){let G=n.sourceDuration-n.mediaStart;G>0&&i>=n.sourceDuration&&(i=n.mediaStart+(i-n.mediaStart)%G)}let m=qo(e.userVolume??1),h=Ue(n.volume??1),b=Ko.get(r),v=qo(r.volume),x,_=Nu(r,e.timeSeconds-n.start);if(_!==null)x=Ue(_);else if(n.volumeKeyframes&&n.volumeKeyframes.length>0){let G=e.timeSeconds-n.start;x=Ue(vu(n.volumeKeyframes,G))}else e.isWebAudioRouted?.(r)?x=h:b===void 0?x=h>1?h:v:Math.abs(v-b)>1e-4?x=v:x=h;let C=r.closest("[data-hidden]")!==null||ci(r.ownerDocument,r)?0:qo(x*m);r.volume=C,Ko.set(r,C),e.onElementVolume?.(r,C,x),(t||e.isWebAudioOwned?.(r))&&(r.muted=!0),r.preload!=="auto"&&(r.preload="auto");try{r.playbackRate=n.playbackRate*e.playbackRate}catch(G){N("runtime.media.site1",G)}let F=.04,D=2,M=r.currentTime||0,S=Math.abs(M-i),A=i-M,w=$o.get(r);$o.set(r,A);let R=w===void 0,I=!R&&Math.abs(A-w)>.5,H=S>3,j=r.tagName==="AUDIO"&&R&&M-i>F,X=a&&S>.001||r.ended&&u&&S>.001||j||S>.5&&(R||I||H),k=r.tagName==="VIDEO"&&!r.paused,U=w!==void 0&&Math.abs(A-w)<.004,te=!1;if(!k&&!X&&!R&&U&&S>F){let G=(Gn.get(r)??0)+1;Gn.set(r,G),G>=D&&(te=!0,Gn.set(r,0))}else S<=F&&Gn.set(r,0);let B=!k&&e.forceSync&&S>.02;if(X||te||B){if(!(r.tagName==="VIDEO"&&!!bt(r))){try{r.currentTime=i}catch(W){N("runtime.media.site2",W)}if(Math.abs(r.currentTime-i)>.5&&!jo.has(r)){jo.add(r),r.load();try{r.currentTime=i}catch(W){N("runtime.media.site3",W)}}}en.delete(r)}a?r.paused||r.pause():e.playing&&r.paused&&!en.has(r)&&!f0(r)?(d0(r),r.play().catch(G=>{en.delete(r),(G&&typeof G=="object"&&"name"in G?String(G.name??""):"")==="NotAllowedError"&&e.onAutoplayBlocked?.()})):!e.playing&&!r.paused&&r.pause();continue}let f=e.timeSeconds>=n.start&&e.timeSeconds<n.end;Yo(r),f&&di.set(r,i),r.paused||r.pause()}}var p0="hf-proxy",Gu="runtime_media_proxy_fallback",Hu="runtime_media_proxy_unavailable",Hn=new WeakSet,Bu=new WeakSet;function mi(e){return e.currentSrc||e.src}function Xo(e){return window.__HF_EXPORT_RENDER_SEEK_CONFIG?!0:fe(e)&&!!bt(e)}function Jo(e){let t=mi(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 h0(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 g0(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 Qo(e,t){return t[e]??h0(e,t)??g0(e,t)}function b0(e,t){let n=new URL(e,document.baseURI);return n.searchParams.set(p0,t?t.hasAlpha?"vp8":"h264":"auto"),n.href}var x0={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 Pt(e,t,n){if(Bu.has(e))return;Bu.add(e);let r=x0[t];be({source:"hf-preview",type:"diagnostic",code:Hu,details:{asset:n,codecName:null,reason:t,note:r}}),console.info(`[hyperframes] ${Hu}: "${n}" (${t}): ${r}`)}function Zo(e,t=null,n="reactive"){if(Hn.has(e))return;let r=mi(e),i;try{i=b0(r,t)}catch(l){N("runtime.mediaProxy.swap",l),Pt(e,"invalid_source_url",r);return}Hn.add(e),Yo(e),e.src=i,e.load();let o=t?.codecName??null;be({source:"hf-preview",type:"diagnostic",code:Gu,details:{asset:r,codecName:o,trigger:n,note:"render output is unaffected; only this preview element was swapped to an authoring proxy"}}),console.info(`[hyperframes] ${Gu}: "${r}" uses a codec (${o??"unknown"}) this browser can't decode; auto-swapped to an authoring proxy for this preview only. Render output is unaffected.`)}function Uu(e){if(Xo(e)||!fe(e)||Hn.has(e))return;let t=window.__HF_MEDIA_CODEC_MAP__;if(!t)return;let n=Jo(e);if(n===null)return;let r=Qo(n,t);if(!r||!r.browserHostile)return;let i=r.representativeMime?e.canPlayType(r.representativeMime):"";i==="probably"||i==="maybe"||Zo(e,r,"proactive")}function Wu(e){if(Xo(e)||!fe(e)||e.videoWidth!==0)return;let t=mi(e);if(Hn.has(e)){Pt(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=Jo(e);if(r===null){Pt(e,"cross_origin",t);return}let i=Qo(r,n);if(i&&!i.browserHostile){Pt(e,"browser_safe_codec",t);return}Zo(e,i,"reactive")}function Vu(e){if(Xo(e)||!fe(e))return;let t=mi(e);if(Hn.has(e)){Pt(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=Jo(e);if(r===null){Pt(e,"cross_origin",t);return}let i=Qo(r,n);if(i&&!i.browserHostile){Pt(e,"browser_safe_codec",t);return}Zo(e,i,"tertiary")}var Te=class extends Error{constructor(n,r=null){super(r==null?n:`${n} at line ${r}`);ge(this,"lineNumber");this.name="CubeLutParseError",this.lineNumber=r}},y0=[0,0,0],v0=[1,1,1],fi=64;function S0(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 vt(e,t){let n=Number(e);if(!Number.isFinite(n))throw new Te(`Invalid number "${e}"`,t);return n}function zu(e,t,n){if(e.length!==3)throw new Te(`${t} expects three numbers`,n);return[vt(e[0],n),vt(e[1],n),vt(e[2],n)]}function qu(e,t,n){if(!e)throw new Te(`${t} expects a size`,n);let r=Number(e);if(!Number.isInteger(r)||r<2)throw new Te(`${t} must be an integer greater than 1`,n);return r}function A0(e,t){if(t[0]<=e[0]||t[1]<=e[1]||t[2]<=e[2])throw new Te("DOMAIN_MAX values must be greater than DOMAIN_MIN values")}function E0(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 w0(e){return/^[+-]?(?:\d|\.\d)/.test(e)}function $u(e,t={}){let n=t.maxSize??fi,r=null,i=y0,o=v0,a=null,l=null,s=[],u=e.replace(/^\uFEFF/,"").split(/\r?\n/);for(let f=0;f<u.length;f++){let m=f+1,h=S0(u[f]??"").trim();if(!h)continue;let b=h.split(/\s+/),v=(b[0]??"").toUpperCase(),x=b.slice(1);if(v==="TITLE"){r=E0(h);continue}if(v==="DOMAIN_MIN"){i=zu(x,v,m);continue}if(v==="DOMAIN_MAX"){o=zu(x,v,m);continue}if(v==="LUT_3D_INPUT_RANGE"){if(x.length!==2)throw new Te(`${v} expects two numbers`,m);let _=vt(x[0],m),T=vt(x[1],m);if(T<=_)throw new Te("LUT_3D_INPUT_RANGE max must exceed min",m);i=[_,_,_],o=[T,T,T];continue}if(v==="LUT_1D_SIZE"){a=qu(x[0],v,m);continue}if(v==="LUT_3D_SIZE"){if(l=qu(x[0],v,m),l>n)throw new Te(`LUT_3D_SIZE ${l} exceeds max ${n}`,m);continue}if(!w0(v)){if(v.startsWith("LUT_"))throw new Te(`Unsupported cube keyword ${v}`,m);continue}if(!l)throw a?new Te("1D cube LUTs are not supported yet",m):new Te("LUT data appears before LUT_3D_SIZE",m);if(b.length!==3)throw new Te("LUT data rows must contain three numbers",m);s.push(vt(b[0],m),vt(b[1],m),vt(b[2],m))}if(a&&l)throw new Te("Mixed 1D and 3D cube LUTs are not supported yet");if(!l)throw a?new Te("1D cube LUTs are not supported yet"):new Te("Missing LUT_3D_SIZE");A0(i,o);let d=l*l*l;if(s.length!==d*3)throw new Te(`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 _0(e){return Number.isFinite(e)?Math.min(1,Math.max(0,e)):0}function Bn(e){return Math.round(_0(e)*255)}function ea(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,u=(a*n+o*t+l)*4;i[u]=Bn(e.data[s]??0),i[u+1]=Bn(e.data[s+1]??0),i[u+2]=Bn(e.data[s+2]??0),i[u+3]=255}return{width:n,height:r,data:i}}var ju="rec709";var he={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 Ku=["exposure","contrast","highlights","shadows","whites","blacks","temperature","tint","vibrance","saturation"],Yu=["shadows","midtones","highlights"],Xu=["master","red","green","blue"],Ju=["hueVsHue","hueVsSaturation","hueVsLuma"];var Qu=["vignette","vignetteMidpoint","vignetteRoundness","vignetteFeather","grain","grainSize","grainRoughness"],Zu=["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 uE=he.unit,cE=he.signedUnit,dE=he.effects;var Ze=1024,Un=16;function ec(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 ke(e,t){let n=e[t];if(n===void 0)throw new RangeError("Color curve points must be contiguous");return n}function C0(e){let t=[],n=[],r=ke(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=ke(n,0);if(e.length===2)return[i,i];let o=new Array(e.length);o[0]=ec(ke(t,0),ke(t,1),i,ke(n,1)),o[o.length-1]=ec(ke(t,t.length-1),ke(t,t.length-2),ke(n,n.length-1),ke(n,n.length-2));for(let a=1;a<e.length-1;a+=1){let l=ke(n,a-1),s=ke(n,a);if(l===0||s===0||Math.sign(l)!==Math.sign(s)){o[a]=0;continue}let u=ke(t,a-1),d=ke(t,a),f=2*d+u,m=d+2*u;o[a]=(f+m)/(f/l+m/s)}return o}function tc(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 R0(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 T0(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 nc(e,t,n,r,i){R0(e,r,i);let o=C0(e),a=new Float32Array(t),l=0;for(let s=0;s<t;s+=1){let u=n(s);for(;l<e.length-2&&u>ke(e,l+1)[0];)l+=1;let d=ke(e,l),f=ke(e,l+1),m=T0(u,d,f,ke(o,l),ke(o,l+1));a[s]=Math.min(i,Math.max(r,m))}return a}function tn(e,t=Ze){if(tc(e,t),e.length>Un)throw new RangeError(`A color curve supports at most ${Un} 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 nc(e,t,n=>n/(t-1),0,1)}function na(e,t,n,r=Ze){if(e.length<3)throw new RangeError("A hue curve requires at least three points");if(e.length>Un)throw new RangeError(`A hue curve supports at most ${Un} points`);let i=[...e].sort((s,u)=>s[0]-u[0]);for(let s=0;s<i.length;s+=1){let u=i[s];if(!u||u[0]<0||u[0]>=360)throw new RangeError("Hue curve inputs must be from 0 up to 360 degrees");if(s>0&&u[0]===i[s-1]?.[0])throw new RangeError("Hue curve inputs must be unique")}let o=i.slice(-2).map(([s,u])=>[s-360,u]),a=i.slice(0,2).map(([s,u])=>[s+360,u]),l=[...o,...i,...a];return tc(l,r),nc(l,r,s=>s/r*360,t,n)}var Wn="data-color-grading",Vn="data-hf-color-grading-source-hidden",gi="data-hf-authored-opacity",sc="__hf_color_grading_",M0=ju,oa={exposure:0,contrast:0,highlights:0,shadows:0,whites:0,blacks:0,temperature:0,tint:0,vibrance:0,saturation:0},aa={vignette:0,vignetteMidpoint:.5,vignetteRoundness:0,vignetteFeather:.65,grain:0,grainSize:.25,grainRoughness:.5},sa={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 bi=Ku,lc=Yu,uc=Xu,cc=Ju,ua=Qu,ca=Zu,rc={exposure:.03,contrast:-.12,highlights:-.1,shadows:.16,whites:-.04,blacks:.08,temperature:.13,vibrance:-.08,saturation:-.08},ic={vignette:.18};function Me(e,t,n={},r={},i={},o=1){return{id:e,label:t,intensity:o,adjust:{...oa,...n},details:{...aa,...r},effects:{...sa,...i}}}var da=[Me("neutral","Neutral"),Me("warm-daylight","Warm Daylight",{exposure:.06,contrast:.07,highlights:-.06,shadows:.08,temperature:.18,saturation:.08}),Me("clean-studio","Clean Studio",{contrast:.08,highlights:-.08,shadows:.06,temperature:-.08,tint:.03,saturation:.04}),Me("skin-soft","Skin Soft",{exposure:.04,contrast:-.03,highlights:-.12,shadows:.12,temperature:.08,tint:.02,saturation:.04}),Me("food-pop","Food Pop",{exposure:.06,contrast:.1,shadows:.06,temperature:.14,vibrance:.1,saturation:.18}),Me("night-lift","Night Lift",{exposure:.08,contrast:.08,highlights:-.18,shadows:.2,blacks:-.08,saturation:.04},{vignette:.12}),Me("muted-editorial","Muted Editorial",{exposure:-.02,contrast:.08,highlights:-.08,shadows:.06,blacks:-.05,temperature:-.03,saturation:-.12},{vignette:.1}),Me("vintage-wash","Vintage Wash",rc,ic),Me("mono-clean","Mono Clean",{contrast:.12,highlights:-.04,shadows:.04,blacks:-.08,saturation:-1}),Me("mono-fade","Mono Fade",{contrast:-.04,highlights:-.06,shadows:.1,blacks:.12,saturation:-1},{vignette:.08}),Me("soft-boost","Soft Boost",{exposure:.06,contrast:-.04,highlights:-.14,shadows:.16,vibrance:.08,saturation:.1}),Me("bright-pop","Bright Pop",{exposure:.12,contrast:.12,whites:.08,blacks:-.04,vibrance:.08,saturation:.14}),Me("deep-contrast","Deep Contrast",{exposure:-.03,contrast:.2,highlights:-.08,shadows:-.08,blacks:-.12,saturation:.06}),Me("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),Me("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}),Me("home-movie-8mm","8mm Home Movie",rc,{...ic,vignette:.28,vignetteMidpoint:.54,vignetteFeather:.72,grain:.34,grainSize:.18,grainRoughness:.72},{filmArtifacts:.62},.72),Me("editorial-halftone","Editorial Halftone",{contrast:.04,saturation:.04},{},{halftone:.94,halftoneSize:.36}),Me("two-ink-print","Two-Ink Print",{contrast:.08,highlights:-.06,shadows:.04},{},{twoInkPrint:1,twoInkPrintSize:.42})],F0=new Map(da.map(e=>[e.id,e])),N0=/^\$(?:\{([A-Za-z0-9_.:-]+)\}|([A-Za-z0-9_.:-]+))$/,L0={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}},nn={hue:0,amount:0,level:0},oc={amount:he.unit,level:he.signedUnit},St=[[0,0],[1,1]],rn=[],D0={hueVsHue:he.secondaryHueShift,hueVsSaturation:he.signedUnit,hueVsLuma:he.signedUnit},ra={center:0,range:180,softness:0},ia={min:0,max:1,softness:.05},I0={vignette:he.unit,vignetteMidpoint:he.unit,vignetteRoundness:he.signedUnit,vignetteFeather:he.unit,grain:he.unit,grainSize:he.unit,grainRoughness:he.unit},la=he.unit,P0=he.effects,dc=["blur","pixelate","chromaBleed","tapeDamage","filmArtifacts","halftone","twoInkPrint","ascii","dither","bloom","monoScreen","scanlines","chromaticAberration","crtCurvature","digitalGlitch","engraving","crosshatch","kuwahara"];var O0=da.filter(e=>dc.some(t=>e.effects[t]>1e-4)),yE=da.filter(e=>!O0.includes(e)),vE={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}},mc=[{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 G0=/^#[0-9a-f]{6}$/i;function H0(e){return!Array.isArray(e)||e.length<2||e.length>6||!e.every(t=>typeof t=="string"&&G0.test(t))?null:e.map(t=>t.toLowerCase())}function De(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function hi(e,t,n){return Number.isFinite(e)?Math.min(n,Math.max(t,e)):0}function fc(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?Math.min(1,Math.max(0,n)):t}function Ie(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?hi(n,t.min,t.max):0}function ma(e,t=0){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?(n%360+360)%360:t}function B0(e){let t=De(e)?e:{};return lc.reduce((n,r)=>{let i=De(t[r])?t[r]:{};return n[r]={hue:ma(i.hue,nn.hue),amount:Ie(i.amount??nn.amount,oc.amount),level:Ie(i.level??nn.level,oc.level)},n},{shadows:{...nn},midtones:{...nn},highlights:{...nn}})}function U0(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)?[hi(t,0,1),hi(n,0,1)]:null}function pc(e){return e.some((t,n)=>n>0&&t[0]===e[n-1]?.[0])}function W0(e){(e[0]?.[0]??0)>0&&e.unshift([0,0]),(e.at(-1)?.[0]??1)<1&&e.push([1,1])}function V0(e){if(!Array.isArray(e)||e.length<2)return St;let t=[];for(let n of e){let r=U0(n);if(!r)return St;t.push(r)}return t.sort((n,r)=>n[0]-r[0]),pc(t)||(W0(t),t.length>16)?St:t}function z0(e){let t=De(e)?e:{};return uc.reduce((n,r)=>(n[r]=V0(t[r]),n),{master:St,red:St,green:St,blue:St})}function q0(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)?[ma(n),hi(r,t.min,t.max)]:null}function $0(e,t){if(!Array.isArray(e)||e.length<3||e.length>16)return rn;let n=[];for(let r of e){let i=q0(r,t);if(!i)return rn;n.push(i)}return n.sort((r,i)=>r[0]-i[0]),pc(n)?rn:n}function j0(e){let t=De(e)?e:{};return cc.reduce((n,r)=>(n[r]=$0(t[r],D0[r]),n),{hueVsHue:rn,hueVsSaturation:rn,hueVsLuma:rn})}function ac(e){let t=De(e)?e:{},n=Ie(t.min??ia.min,la),r=Ie(t.max??ia.max,la);return{min:Math.min(n,r),max:Math.max(n,r),softness:Ie(t.softness??ia.softness,he.secondarySoftRangeSoftness)}}function K0(e){let t=De(e)?e:{},n=Ie(t.range??ra.range,he.secondaryHueRange);return{center:ma(t.center,ra.center),range:n,softness:Ie(t.softness??ra.softness,{min:he.secondaryHueSoftness.min,max:he.secondaryHueCombinedMax-n})}}function Y0(e){return{hueShift:Ie(e.hueShift??0,he.secondaryHueShift),saturation:Ie(e.saturation??0,he.signedUnit),luma:Ie(e.luma??0,he.signedUnit),temperature:Ie(e.temperature??0,he.signedUnit),tint:Ie(e.tint??0,he.signedUnit)}}function X0(e){return!De(e)||!De(e.key)||!De(e.correction)?null:{enabled:e.enabled!==!1,key:{hue:K0(e.key.hue),saturation:ac(e.key.saturation),luma:ac(e.key.luma)},correction:Y0(e.correction)}}function J0(e){if(!Array.isArray(e))return[];let t=[];for(let n of e.slice(0,4)){let r=X0(n);r&&t.push(r)}return t}function Q0(e){if(e==null)return null;let t=String(e).trim();return t||null}function Z0(e){if(e==null)return null;if(typeof e=="string"){let n=e.trim();return n?{src:n,intensity:1}:null}if(!De(e))return null;let t=e.src;return typeof t!="string"||t.trim()===""?null:{src:t.trim(),intensity:fc(e.intensity,1)}}function eg(e){if(typeof e=="string"){let t=e.trim();if(!t)return null;if(t.startsWith("{"))try{let n=JSON.parse(t);return De(n)?n:null}catch{return null}return{preset:t}}return De(e)?e:null}function tg(e,t){let n=e.trim().match(N0);if(!n)return e;let r=n[1]??n[2]??"";return r&&Object.hasOwn(t,r)?t[r]:e}function pi(e,t){if(typeof e=="string"){let r=tg(e,t);if(r!==e)return r;let i=e.trim();if(!i.startsWith("{"))return e;try{return pi(JSON.parse(i),t)}catch{return e}}if(Array.isArray(e))return e.map(r=>pi(r,t));if(!De(e))return e;let n={};for(let[r,i]of Object.entries(e))n[r]=pi(i,t);return n}function ng(e){return e?F0.get(e)??null:null}function xi(e){let t=eg(e);if(!t||t.enabled===!1)return null;let n=Q0(t.preset),r=ng(n),i=r?.adjust??oa,o=r?.details??aa,a=r?.effects??sa,l=De(t.adjust)?t.adjust:{},s=De(t.details)?t.details:{},u=De(t.effects)?t.effects:{},d=bi.reduce((h,b)=>(h[b]=Ie(l[b]??i[b],L0[b]),h),{...oa}),f=ua.reduce((h,b)=>(h[b]=Ie(s[b]??o[b],I0[b]),h),{...aa}),m=ca.reduce((h,b)=>(h[b]=Ie(u[b]??a[b],P0[b]??la),h),{...sa});return{enabled:!0,preset:n,intensity:fc(t.intensity,r?.intensity??1),adjust:d,wheels:B0(t.wheels),curves:z0(t.curves),hueCurves:j0(t.hueCurves),secondaries:J0(t.secondaries),details:f,effects:m,palette:H0(t.palette),lut:Z0(t.lut),colorSpace:typeof t.colorSpace=="string"&&t.colorSpace.trim()?t.colorSpace.trim():M0}}function hc(e,t){return xi(pi(e,t))}function rg(e){return lc.some(t=>Math.abs(e[t].amount)>1e-4||Math.abs(e[t].level)>1e-4)}function fa(e){return uc.some(t=>e[t].some(([n,r])=>Math.abs(n-r)>1e-4))}function pa(e){return cc.some(t=>e[t].some(([,n])=>Math.abs(n)>1e-4))}function ha(e){return e.some(t=>t.enabled&&Object.values(t.correction).some(n=>Math.abs(n)>1e-4))}function gc(e){return e?.enabled?Math.abs(e.details.vignette)>1e-4||Math.abs(e.details.grain)>1e-4||dc.some(n=>Math.abs(e.effects[n])>1e-4)?!0:e.intensity===0?!1:e.lut&&e.lut.intensity!==0?!0:bi.some(n=>Math.abs(e.adjust[n])>1e-4)||(e.wheels?rg(e.wheels):!1)||(e.curves?fa(e.curves):!1)||(e.hueCurves?pa(e.hueCurves):!1)||(e.secondaries?ha(e.secondaries):!1):!1}var ig=["[data-hyperframes-ignore]","[data-hyperframes-picker-ignore]","[data-hf-ignore]","[data-no-inspect]","[data-no-pick]","[data-hyper-shader-loading]"].join(","),og=["[data-hyperframes-picker-block]","[data-hyper-shader-loading]"].join(",");function bc(e){let t=!1,n=null,r=null,i=null,o=null;function a(S,A){try{window.dispatchEvent(new CustomEvent(S,{detail:A}))}catch(w){N("runtime.picker.site1",w)}}function l(S){i=S,a("hyperframe:picker:hovered",{elementInfo:i,isPickMode:t,timestamp:Date.now()})}function s(S){o=S,a("hyperframe:picker:selected",{elementInfo:o,isPickMode:t,timestamp:Date.now()})}function u(S){let A=S.ownerDocument.defaultView;if(!A)return!1;let w=S;for(;w&&w!==document.body&&w!==document.documentElement;){let R=A.getComputedStyle(w);if(R.display==="none"||R.visibility==="hidden"||R.pointerEvents==="none")return!0;let I=Number.parseFloat(R.opacity);if(Number.isFinite(I)&&I<=.01&&!w.hasAttribute(Vn))return!0;w=w.parentElement}return!1}function d(S){if(!S||S===document.body||S===document.documentElement)return!1;let A=S.tagName.toLowerCase();return!(A==="script"||A==="style"||A==="link"||A==="meta"||S.classList.contains("__hf-pick-highlight")||S.closest(ig)||u(S))}function f(S){return!!S?.closest(og)}function m(S){let A=S;if(A.id)return`#${CSS.escape(A.id)}`;let w=S.getAttribute("data-composition-id");if(w)return`[data-composition-id="${CSS.escape(w)}"]`;let R=S.getAttribute("data-composition-src");if(R)return`[data-composition-src="${CSS.escape(R)}"]`;let I=S.getAttribute("data-track-index");if(I)return`[data-track-index="${CSS.escape(I)}"]`;let H=S.tagName.toLowerCase(),j=S.parentElement;if(!j)return H;let X=j.querySelectorAll(`:scope > ${H}`);if(X.length===1)return H;for(let k=0;k<X.length;k+=1)if(X[k]===S)return`${H}:nth-of-type(${k+1})`;return H}function h(S){let A=S.tagName.toLowerCase(),w=(S.textContent??"").trim().replace(/\s+/g," "),R=(I,H)=>I.length>H?`${I.slice(0,H-1)}\u2026`:I;return A==="h1"||A==="h2"||A==="h3"?"Heading":A==="p"||A==="span"||A==="div"?w.length>0?R(w,56):"Text":A==="img"?"Image":A==="video"?"Video":A==="audio"?"Audio":A==="svg"?"Shape":S.getAttribute("data-composition-src")?"Composition":A==="section"?"Section":`${A.charAt(0).toUpperCase()}${A.slice(1)}`}function b(S,A,w){let R=typeof w=="number"&&w>0?w:8,I=[];if(document.elementsFromPoint)I=document.elementsFromPoint(S,A);else if(document.elementFromPoint){let X=document.elementFromPoint(S,A);I=X?[X]:[]}if(f(I[0]??null))return[];let H={},j=[];for(let[X,k]of I.entries()){if(!d(k))continue;let U=`${k.tagName}::${k.id||""}::${X}`;if(!H[U]&&(H[U]=!0,j.push(k),j.length>=R))break}return j}function v(S){let A=S.getBoundingClientRect(),w={};for(let I of Array.from(S.attributes))I.name.startsWith("data-")&&(w[I.name]=I.value);return{id:S.id||null,tagName:S.tagName.toLowerCase(),selector:m(S),label:h(S),boundingBox:{x:A.left,y:A.top,width:A.width,height:A.height},textContent:S.textContent?S.textContent.trim().slice(0,200):null,src:S.getAttribute("src")||S.getAttribute("data-composition-src")||null,dataAttributes:w}}function x(S,A,w){return b(S,A,w).map(v)}function _(S){if(!t)return;let w=b(S.clientX,S.clientY,1)[0]??(Ne(S.target)?S.target:null);if(!d(w)||n===w)return;n&&n.classList.remove("__hf-pick-highlight"),n=w,w.classList.add("__hf-pick-highlight");let R=v(w);l(R),e.postMessage({source:"hf-preview",type:"element-hovered",elementInfo:R})}function T(S){if(!t)return;S.preventDefault(),S.stopPropagation(),S.stopImmediatePropagation();let A=x(S.clientX,S.clientY,8);A.length!==0&&(l(A[0]??null),e.postMessage({source:"hf-preview",type:"element-pick-candidates",candidates:A,selectedIndex:0,point:{x:S.clientX,y:S.clientY}}))}function C(S){S.key==="Escape"&&(D(),e.postMessage({source:"hf-preview",type:"pick-mode-cancelled"}))}function F(){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(`
40
- `),document.head.appendChild(r),document.body.classList.add("__hf-pick-active"),document.addEventListener("mousemove",_,!0),document.addEventListener("click",T,!0),document.addEventListener("keydown",C,!0),a("hyperframe:picker:mode",{isPickMode:!0,timestamp:Date.now()}))}function D(){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",_,!0),document.removeEventListener("click",T,!0),document.removeEventListener("keydown",C,!0),a("hyperframe:picker:mode",{isPickMode:!1,timestamp:Date.now()}))}function M(){window.__HF_PICKER_API={enable:F,disable:D,isActive:()=>t,getHovered:()=>i,getSelected:()=>o,getCandidatesAtPoint:(S,A,w)=>Number.isFinite(S)&&Number.isFinite(A)?x(S,A,w):[],pickAtPoint:(S,A,w)=>{if(!Number.isFinite(S)||!Number.isFinite(A))return null;let R=x(S,A,8);if(!R.length)return null;let I=Math.max(0,Math.min(R.length-1,Number(w??0))),H=R[I]??null;return H?(s(H),e.postMessage({source:"hf-preview",type:"element-picked",elementInfo:H}),D(),H):null},pickManyAtPoint:(S,A,w)=>{if(!Number.isFinite(S)||!Number.isFinite(A))return[];let R=x(S,A,8);if(!R.length)return[];let I=[],H=Array.isArray(w)?w:[0];for(let j of H){let X=Math.max(0,Math.min(R.length-1,Math.floor(Number(j)))),k=R[X];if(!k)continue;I.some(te=>te.selector===k.selector&&te.tagName===k.tagName)||I.push(k)}return I.length?(s(I[0]??null),e.postMessage({source:"hf-preview",type:"element-picked-many",elementInfos:I}),D(),I):[]}},a("hyperframe:picker:api-ready",{hasApi:!0,timestamp:Date.now()})}return{enablePickMode:F,disablePickMode:D,installPickerApi:M}}var ag=["width","height","top","left","right","bottom","inset","object-fit","object-position","z-index","opacity","visibility","filter","mix-blend-mode","backdrop-filter","border-radius","overflow","clip-path","mask","mask-image","mask-size","mask-position","mask-repeat","transform","transform-origin","translate","rotate","scale","box-sizing"];function ga(e){return Number.isFinite(e)&&e>0?e:30}function ba(e){return Number.isFinite(e)&&e>0?e:0}function xa(e,t){let n=ga(t);return Math.floor(ba(e)*n+1e-9)/n}function zn(e,t,n){let r=Number.isInteger(n)?n:1;if(r<=1)return xa(e,t);let i=ga(t)*r;return Math.round(ba(e)*i)/i}function ya(e,t){let n=ga(t),r=ba(e),i=r*n,o=Math.round(i);return Math.abs(i-o)<=.001?o/n:r}function xc(e,t,n=ag){for(let r of n){let i=t.getPropertyValue(r);i&&e.setProperty(r,i)}}function qn(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&&N("runtime.player.nonConformantNum",{prop:t,actual:typeof r}),n)}function $e(e,t){let n=e?.[t];if(typeof n=="function"){n.call(e);return}n!==void 0&&N("runtime.player.nonConformantVoid",{method:t,actual:typeof n})}function $n(e,t,n){if(e){for(let r of Object.values(e))if(!(!r||r===t))try{n(r)}catch(i){N("runtime.player.site1",i)}}}function yc(e,t,n,r){let i=zn(t,n,r?.subFrameDivisions),o=r?.suppressEvents===!0;return $e(e,"pause"),typeof e.totalTime=="function"?e.totalTime(i,o):typeof e.seek=="function"&&e.seek(i,o),i}function sg(e,t,n,r,i){let o=[];$n(e,t,a=>{$e(a,"play"),o.push(a)});try{return yc(t,n,r,i)}finally{for(let a of o)try{$e(a,"pause")}catch(l){N("runtime.player.site2",l)}}}function lg(e,t){$n(e,t,n=>{$e(n,"play")})}function vc(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?.()??qn(n,"duration",0))||0);r>0&&Math.max(0,qn(n,"time",0))>=r&&($e(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()),$e(n,"play"),$n(e.getTimelineRegistry?.(),n,i=>{typeof i.timeScale=="function"&&i.timeScale(e.getPlaybackRate()),$e(i,"play")}),e.onDeterministicPlay(),e.setIsPlaying(!0),e.onShowNativeVideos(),e.onStatePost(!0)},pause:()=>{let n=e.getTimeline();if(!n)return;$e(n,"pause"),$n(e.getTimelineRegistry?.(),n,i=>{$e(i,"pause")});let r=Math.max(0,qn(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=sg(e.getTimelineRegistry?.(),i,o,e.getCanonicalFps());e.onDeterministicSeek(l),r?.keepPlaying&&a?(typeof i.timeScale=="function"&&i.timeScale(e.getPlaybackRate()),$e(i,"play"),$n(e.getTimelineRegistry?.(),i,s=>{typeof s.timeScale=="function"&&s.timeScale(e.getPlaybackRate()),$e(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?(lg(e.getTimelineRegistry?.(),i),yc(i,n,o,r)):zn(Math.max(0,Number(n)||0),o,r?.subFrameDivisions);e.onDeterministicSeek(a,r),e.setIsPlaying(!1),e.onSyncMedia(a,!1),e.onRenderFrameSeek(a),e.onStatePost(!0)},getTime:()=>qn(e.getTimeline(),"time",0),getDuration:()=>qn(e.getTimeline(),"duration",0),isPlaying:()=>e.getIsPlaying(),setPlaybackRate:n=>e.setPlaybackRate(n),getPlaybackRate:()=>e.getPlaybackRate()}}function Sc(){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}}var ug=new Set(["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"]);function va(e){return e.id||e.getAttribute("data-hf-id")||null}function cg(e){return Ce(e)}function dg(e,t){let n=e.getAttribute("data-composition-id");if(!n)return null;let r=Number(t[n]?.duration?.());return Number.isFinite(r)&&r>0?r:null}function mg(e){return!xe(e)||!Number.isFinite(e.duration)?null:xt(e,e.duration)}function fg(e,t,n,r){let i=cg(e.getAttribute("data-duration"));return i!=null&&i>0?i:dg(e,t)??mg(e)??Math.max(0,n-r)}function pg(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 Ac(e){let{startResolver:t,timelineRegistry:n,rootDuration:r}=e,i=new Map,o=document.querySelector("[data-composition-id]"),a=0;for(let l of document.querySelectorAll("[data-start]")){if(l===o||ug.has(l.tagName))continue;let s=t.resolveStartForElement(l,0);if(fg(l,n,r,s)<=0)continue;let u={id:va(l)??`__clip-${a++}`,element:l,parentId:null,children:[]};i.set(l,u)}return pg(i),{roots:Array.from(i.values()).filter(l=>l.parentId===null)}}var Sa="css:root",Ec=["backdrop-filter","clip-path","filter","mask","mask-border-source","mask-image","perspective","rotate","scale","transform","translate","-webkit-mask-image"],hg=new Set([...Ec,"contain","isolation","mask-border","mix-blend-mode","opacity"]),gg=new Set(["absolute","relative"]),bg=new Set(["flex","inline-flex","grid","inline-grid"]),xg=new Set(["layout","paint","strict","content"]),yg=new Set(["size","inline-size"]);function vg(e){return e.position==="fixed"||e.position==="sticky"}function Sg(e,t){if(t.zIndex==="auto"||t.zIndex==="")return!1;if(gg.has(t.position))return!0;let n=e.parentElement?e.ownerDocument.defaultView?.getComputedStyle(e.parentElement).display:null;return n!=null&&bg.has(n)}function Ag(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:Ec.some(r=>{let i=e.getPropertyValue(r);return i!==""&&i!=="none"})}function Eg(e){return e.getPropertyValue("contain").split(/\s+/).some(n=>xg.has(n))?!0:yg.has(e.getPropertyValue("container-type"))}function wg(e){return e.getPropertyValue("will-change").split(",").map(t=>t.trim()).some(t=>hg.has(t))}function _g(e,t){return vg(t)||Sg(e,t)||Ag(t)||Eg(t)?!0:wg(t)}function Cg(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 yi(e){let t=e.ownerDocument.defaultView;if(!t)return Sa;let n=e.parentElement;for(;n&&n!==e.ownerDocument.documentElement;){try{if(_g(n,t.getComputedStyle(n)))return Cg(n)}catch{return Sa}n=n.parentElement}return Sa}function Aa(e){let t=e.trim().toLowerCase();return!(!t||t==="main"||t.includes("caption")||t.includes("ambient"))}function Ot(e){return Ce(e)}function Ea(e){let t=e.getAttribute("data-duration"),n=e.getAttribute("data-hf-authored-duration"),r=Jt({start:0,duration:t,authoredDuration:n})?.duration;return r??([t,n].map(Ot).some(o=>o!=null&&o<=0)?0:null)}function wc(e){return Jt({start:0,end:e.getAttribute("data-end"),authoredEnd:e.getAttribute("data-hf-authored-end")})?.end??null}function wa(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 _a(...e){let t=e.filter(n=>Number.isFinite(n??null));return t.length===0?null:Math.max(...t)}function Ca(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 Kn(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 _c(e){let t=e.getAttribute("src")??e.getAttribute("data-src");if(t)return Kn(t);let n=e.getAttribute("data-composition-src");if(n)return Kn(n);let r=e.querySelector("img[src], video[src], audio[src], source[src]");return r?Kn(r.getAttribute("src")):null}function Tg(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 kg(e){if(!e)return null;try{return new URL(e,document.baseURI).pathname.split("/").filter(Boolean).at(-1)??null}catch{return e.split(/[\\/]/).filter(Boolean).at(-1)??null}}function Mg(e){let t=e.textContent?.replace(/\s+/g," ").trim();return t?t.length>32?`${t.slice(0,31)}...`:t:null}function jn(e){let t=e.replace(/\.[^.]+$/i,"").replace(/[-_]+/g," ").replace(/\s+/g," ").trim();return t?t.replace(/\b\w/g,n=>n.toUpperCase()):e}function Fg(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=e.getAttribute("data-composition-id");if(i)return jn(i);let o=e.id;if(o)return jn(o);let a=Tg(e);if(a)return jn(a);let l=kg(_c(e));if(l)return jn(l);let s=Mg(e);return s||`${jn(t)} ${n+1}`}function Cc(e){let n=window.__timelines??{},r=st({timelineRegistry:n,includeAuthoredTimingAttrs:!0}),i=q=>{if(!q)return null;let O=n[q]??null;if(!O||typeof O.duration!="function")return null;try{let V=Number(O.duration());return Number.isFinite(V)&&V>0?V:null}catch{return null}},o=()=>{let q=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if(q.length===0)return null;let O=0;for(let V of q){let Z=r.resolveMediaStartForElement(V);if(!Number.isFinite(Z))continue;let pe=ti(V);pe==null||pe<=0||(O=Math.max(O,Math.max(0,Z)+pe))}return O>0?O:null},a=(q,O)=>{let V=[],Z=null,pe=null,re=null,z=q.parentElement;for(;z;){let J=z.getAttribute("data-composition-id");J&&(V.push(J),!re&&z!==O&&(re=J),Z==null&&(Z=r.resolveStartForElement(z,0)),pe==null&&(pe=Ot(z.getAttribute("data-duration"))??i(J)??null)),z=z.parentElement}return{parentCompositionId:re,compositionAncestors:V.reverse(),inheritedStart:Z,inheritedDuration:pe}},l=document.querySelector("[data-composition-id]"),s=Array.from(document.querySelectorAll("[data-composition-id]")),u=l?.getAttribute("data-composition-id")??null,d=l?r.resolveStartForElement(l,0):0,f=o(),m=f!=null?Math.max(0,f-Math.max(0,d)):null,h=i(u),b=Ea(l??document.body),v=_a(...s.filter(q=>q!==l).map(q=>{let O=r.resolveStartForElement(q,0),V=r.resolveDurationForElement(q)??i(q.getAttribute("data-composition-id"))??null;return!Number.isFinite(O)||V==null||V<=0?null:Math.max(0,O)+V})),x=v!=null?Math.max(0,v-Math.max(0,d)):null,_=typeof h=="number"&&Number.isFinite(h)&&h>0?h:null,T=typeof b=="number"&&Number.isFinite(b)&&b>0?b:null,C=typeof m=="number"&&Number.isFinite(m)&&m>0?m:null,F=typeof x=="number"&&Number.isFinite(x)&&x>0?x:null,D=_a(C,F),M=_!=null&&D!=null&&_>D+1,A=T??(M?D:_a(_,C,F))??null,R=(A!=null?d+A:null)??(typeof f=="number"&&Number.isFinite(f)&&f>0?f:null),I=(q,O)=>!Number.isFinite(O)||O<=0?0:R==null||!Number.isFinite(R)?O:!Number.isFinite(q)||q>=R?0:Math.max(0,Math.min(O,R-q)),H=[],j=[],X=Array.from(document.querySelectorAll("[data-start], [data-track-index], [data-composition-id], video, audio, img")),k=0;for(let[q,O]of X.entries()){if(O===l||["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"].includes(O.tagName))continue;let V=a(O,l),Z=O.tagName.toLowerCase(),pe=Z==="video"||Z==="audio"?r.resolveMediaStartForElement(O):r.resolveStartForElement(O,V.inheritedStart??0),re=O.getAttribute("data-composition-id"),z=Ea(O);if(z==null&&re&&re!==u&&(z=i(re)),z==null&&xe(O)&&Number.isFinite(O.duration)&&(z=xt(O,O.duration)),z==null){let ce=V.inheritedDuration;if(ce!=null&&ce>0){let it=(V.inheritedStart??0)+ce;z=Math.max(0,it-pe)}}if(z==null||z<=0||(z=I(pe,z),z<=0))continue;let J=pe+z;k=Math.max(k,J);let Ae=re&&re!==u?"composition":Z==="video"?"video":Z==="audio"?"audio":Z==="img"?"image":"element";H.push({id:va(O)??re??null,label:Fg(O,Ae,H.length),start:pe,duration:z,track:Ca(O,q),zIndex:wa(O),stackingContextId:yi(O),kind:Ae,tagName:Z,compositionId:O.getAttribute("data-composition-id"),compositionAncestors:V.compositionAncestors,parentCompositionId:V.parentCompositionId,nodePath:null,compositionSrc:Kn(O.getAttribute("data-composition-src")),playbackStart:Qe(O),playbackRate:Le(O),assetUrl:_c(O),timelineRole:O.getAttribute("data-timeline-role"),timelineLabel:O.getAttribute("data-timeline-label"),timelineGroup:O.getAttribute("data-timeline-group"),timelinePriority:Ot(O.getAttribute("data-timeline-priority"))})}let U=new Set(H.map(q=>q.id)),te=l?.getAttribute("data-composition-id")??null,B=te?n[te]??null:null;if(B&&l){let q=B;if(typeof q.getChildren=="function")try{let O=q.getChildren(!0,!0,!1)??[],V=new Map;for(let re of l.children){let z=re;if(!z.id)continue;let J=z.tagName.toLowerCase();J==="script"||J==="style"||J==="link"||V.set(z,{id:z.id,start:1/0,end:-1/0})}let Z=re=>{let z=re;for(;z;){if(V.has(z))return z;if(z===l)return null;z=z.parentElement}return null};for(let re of O){if(typeof re.targets!="function"||typeof re.startTime!="function"||typeof re.duration!="function")continue;let z=re.startTime(),J=re.parent;for(;J&&J!==B&&typeof J.startTime=="function";)z+=J.startTime(),J=J.parent;let Ae=z+re.duration();if(!(!Number.isFinite(z)||!Number.isFinite(Ae)))for(let ce of re.targets()){if(!Ne(ce))continue;let vn=Z(ce);if(!vn)continue;let it=V.get(vn);it&&(it.start=Math.min(it.start,z),it.end=Math.max(it.end,Ae))}}let pe=H.length>0?Math.max(...H.map(re=>re.track))+1:0;for(let[re,z]of V){if(z.start===1/0||z.end===-1/0)continue;let J=re;if(U.has(J.id))continue;let Ae=Math.max(0,z.end-z.start);if(Ae<=0)continue;let ce=I(z.start,Ae);ce<=0||(k=Math.max(k,z.start+ce),H.push({id:J.id,label:J.getAttribute("data-timeline-label")??J.getAttribute("data-label")??J.getAttribute("aria-label")??J.id,start:z.start,duration:ce,track:Ca(J,pe),zIndex:wa(J),stackingContextId:yi(J),kind:"element",tagName:J.tagName.toLowerCase(),compositionId:J.getAttribute("data-composition-id"),compositionAncestors:te?[te]:[],parentCompositionId:te,nodePath:null,compositionSrc:null,playbackStart:Qe(J),playbackRate:Le(J),assetUrl:null,timelineRole:J.getAttribute("data-timeline-role"),timelineLabel:J.getAttribute("data-timeline-label"),timelineGroup:J.getAttribute("data-timeline-group"),timelinePriority:Ot(J.getAttribute("data-timeline-priority"))}),U.add(J.id))}}catch(O){N("runtime.timeline.site1",O)}}if(l&&A!=null&&A>0){let q=H.length>0?Math.max(...H.map(O=>O.track))+1:0;for(let O of l.children){let V=O;if(!V.id||U.has(V.id))continue;let Z=V.getAttribute("data-timeline-role");if(Z!=="overlay"&&Z!=="persistent-overlay")continue;let pe=V.tagName.toLowerCase();if(pe==="script"||pe==="style"||pe==="link"||pe==="meta"||window.getComputedStyle(V).display==="none")continue;let z=I(0,A);z<=0||(k=Math.max(k,z),H.push({id:V.id,label:V.getAttribute("data-timeline-label")??V.getAttribute("data-label")??V.getAttribute("aria-label")??V.id,start:0,duration:z,track:Ca(V,q),zIndex:wa(V),stackingContextId:yi(V),kind:"element",tagName:pe,compositionId:V.getAttribute("data-composition-id"),compositionAncestors:te?[te]:[],parentCompositionId:te,nodePath:null,compositionSrc:null,playbackStart:Qe(V),playbackRate:Le(V),assetUrl:null,timelineRole:Z,timelineLabel:V.getAttribute("data-timeline-label"),timelineGroup:V.getAttribute("data-timeline-group"),timelinePriority:Ot(V.getAttribute("data-timeline-priority"))}),U.add(V.id))}}for(let q of s){if(q===l)continue;let O=q.getAttribute("data-composition-id");if(!O||!Aa(O))continue;let V=r.resolveStartForElement(q,0),Z=Ea(q);if((Z==null||Z<=0)&&wc(q)!=null){let J=wc(q);Z=Math.max(0,J-V)}let pe=i(O),re=Z&&Z>0?Z:pe;if(re==null||re<=0)continue;let z=I(V,re);z<=0||j.push({id:O,label:q.getAttribute("data-label")??O,start:V,duration:z,thumbnailUrl:Kn(q.getAttribute("data-thumbnail-url")),avatarName:null})}let G=Math.max(1,k||1,A??0),W=M&&T==null,Q=W?Number.POSITIVE_INFINITY:Math.max(1,Math.ceil(G*Math.max(1,e.canonicalFps)));return{...jr(e.canonicalFps),source:"hf-preview",type:"timeline",compositionContractVersion:1,durationSeconds:W?Number.POSITIVE_INFINITY:G,durationInFrames:Q,clips:H,scenes:j,compositionWidth:Ot(l?.getAttribute("data-width"))??1920,compositionHeight:Ot(l?.getAttribute("data-height"))??1080}}var Ra="data-composition-id",Ng="data-composition-src",Lg=`[${Ra}]`,rw=`[${Ng}]`,Rc="style",Tc="script",Dg='link[rel="stylesheet"], link[rel="preconnect"]';function on(e){return e?Array.from(e):[]}function kc(e){let{contentNode:t,head:n,documentElement:r,hasTemplate:i,compositionId:o}=e,a=on(t.querySelectorAll(Lg)),l=o?a.find(d=>d.getAttribute(Ra)===o)??null:a[0]??null,s=(l??a[0])?.getAttribute(Ra)?.trim()||"",u=i?null:n??null;return{innerRoot:l,authoredCompositionId:o||s||null,scriptCompositionId:s||o||null,authoredRootId:l?.getAttribute("id")?.trim()||null,styleSources:[...on(u?.querySelectorAll(Rc)),...on(t.querySelectorAll(Rc))],scriptSources:[...on(u?.querySelectorAll(Tc)),...on(t.querySelectorAll(Tc))],linkSources:on(n?.querySelectorAll(Dg)),variableDefaultCarriers:[r,l].filter(d=>d!=null)}}var ye=hh(em(),1),tm=ye.default,$w=ye.default.stringify,jw=ye.default.fromJSON,Kw=ye.default.plugin,Yw=ye.default.parse,Xw=ye.default.list,Jw=ye.default.document,Qw=ye.default.comment,Zw=ye.default.atRule,e_=ye.default.rule,t_=ye.default.decl,n_=ye.default.root,r_=ye.default.CssSyntaxError,i_=ye.default.Declaration,o_=ye.default.Container,a_=ye.default.Processor,s_=ye.default.Document,l_=ye.default.Comment,u_=ye.default.Warning,c_=ye.default.AtRule,d_=ye.default.Result,m_=ye.default.Input,f_=ye.default.Rule,p_=ye.default.Root,h_=ye.default.Node;var Za="data-hf-authored-id",nm="data-hf-inner-root";function es(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function ts(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function nx(e){return e&&e.replace(/[^a-zA-Z0-9_-]/g,n=>`\\${n}`).replace(/^-?\d/,n=>`\\${n}`)}function im(e){let t=e.trim();return t?Array.from(new Set([t,nx(t)])).filter(Boolean):[]}function rx(e){return!!e&&/[\w-]/.test(e)}function ix(e,t,n){let r=im(t).sort((l,s)=>s.length-l.length);if(r.length===0)return e;let i="",o=0,a=null;for(let l=0;l<e.length;l+=1){let s=e[l],u=l>0?e[l-1]:"";if(a){i+=s,s===a&&u!=="\\"&&(a=null);continue}if(s==='"'||s==="'"){a=s,i+=s;continue}if(s==="["){o+=1,i+=s;continue}if(s==="]"){o=Math.max(0,o-1),i+=s;continue}if(s==="#"&&o===0){let d=r.find(f=>e.startsWith(f,l+1));if(d){let f=e[l+1+d.length];if(!rx(f)){i+=n,l+=d.length;continue}}}i+=s}return i}function ox(e,t){let n=t?.trim();return n?ix(e,n,`[${Za}="${ts(n)}"]`):e}function rm(e){return`${e}:not(:has([${nm}])), ${e} > [${nm}]`}function ax(e,t,n,r,i,o){let a=ox(e,r),l=sx(a,t,n),s=l.trim();if(!s||s==="*")return e;if(/^(html|body|:root)$/i.test(s))return o?rm(t):e;let u=new RegExp(`\\[\\s*data-composition-id\\s*[\\^\\*\\$]?=\\s*(["'])${es(n)}\\1\\s*\\]`,"g");if(u.test(s))return s.replace(u,"").trim()===""?rm(t):l.replace(u,t);let d=l.match(/^\s*/)?.[0]??"",f=l.match(/\s*$/)?.[0]??"";if(i){let m=r?`[${Za}="${ts(r)}"]`:null;if(m&&s.startsWith(m)){let h=s.slice(m.length);return`${d}${t}${m}${h}${f}`}}return`${d}${t} ${s}${f}`}function sx(e,t,n){let r=es(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 lx=new Set(["keyframes","-webkit-keyframes","font-face"]);function ux(e){return e?.type==="atrule"}function cx(e){let t=e.parent;for(;t;){if(ux(t)&&lx.has(t.name.toLowerCase()))return!0;t=t.parent}return!1}function dx(e){let t=e.parent;for(;t;){if(t.type==="rule")return!0;t=t.parent}return!1}function om(e,t,n,r,i){let o=t.trim();if(!e||!o)return e;let a=n||`[data-composition-id="${ts(o)}"]`,l;try{l=tm.parse(e)}catch{return""}return l.walkRules(s=>{cx(s)||dx(s)||(s.selectors=s.selectors.map(u=>ax(u,a,o,r,i?.compoundAuthoredRoot,i?.scopeRootSelectors)))}),l.toResult({map:!1}).css}function dt(e){return JSON.stringify(e).replace(/</g,"\\u003c")}function am(e,t,n="[HyperFrames] composition script error:",r,i=t,o){let a=dt(t),l=dt(i),s=dt(n),u=es(t),d=dt(o?.trim()||null),f=dt(r??null),m=dt(String.raw`\[\s*data-composition-id\s*=\s*(?:"${u}"|'${u}')\s*\]`),h=dt(String.raw`\s*\[\s*data-(?:start|duration)\s*=\s*(?:"[^"]*"|'[^']*')\s*\]`),b=dt(im(o?.trim()||""));return`(function(){
39
+ `,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){D("bridge.flashElements.querySelector",r)}}var vt=(e,t,n)=>e>=t&&e<n;var ti=(e,t,n,r)=>vt(e,t,n)||e>=t&&r>0&&n>=r-1e-6;var Ho=null;function tu(e){Ho=e}function Be(e,t){if(Ho)try{Ho({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(n){D("runtime.analytics.site1",n)}}function l0(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 Qt(e){return`--${l0(e)}`}function nu(e){let t=new Map;for(let n of e){let r=Qt(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 iu(){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,Dn(i));let n=ri(),r={...t,...n};for(let i of e)Uo(i,r);return r}var ru=new Set;function ou(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 u0(e,t){return t?.trim()||e.getAttribute("data-composition-id")?.trim()||e.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()||"composition"}function c0(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 d0(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=c0(e);return r.length===0||r.some(i=>String(i)===String(n))?null:{id:e.id,value:n,allowed:r}}function Uo(e,t,n){if(!e)return;let r=ou(e);if(r.length===0)return;let i=u0(e,n);for(let o of r){let a=d0(o,t);if(!a)continue;let l=`${i}|${a.id}|${String(a.value)}`;if(ru.has(l))continue;ru.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 Dn(e){let t={};for(let n of ou(e))typeof n.id!="string"||!("default"in n)||(t[n.id]=n.default);return t}var Bo="data-hf-css-vars";function ni(e){return"style"in e&&typeof e.style?.setProperty=="function"}function Wo(e,t){if(!ni(e))return;let n=[];for(let[r,i]of Object.entries(t))if(typeof i=="string"&&i!==""||typeof i=="number"){let o=Qt(r);e.style.setProperty(o,String(i)),n.push(o)}n.length>0&&e.setAttribute(Bo,n.join(" "))}function au(e,t,n){let r={};for(let[i,o]of Object.entries(t)){let a=Qt(i);((ni(e)?e.style.getPropertyValue(a):"")||(n?n.getComputedStyle(e).getPropertyValue(a):"")).trim()===""&&(r[i]=o)}return r}function su(e){if(!ni(e))return;let t=e.getAttribute(Bo);if(t){for(let n of t.split(" "))n.startsWith("--")&&e.style.removeProperty(n);e.removeAttribute(Bo)}}function lu(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=ri(),r=[];for(let i of t)r.push(...m0(i,n,e.defaultView));for(let i of nu(r))console.warn(`composition variables ${i.join(", ")} collapse to the same CSS property ${Qt(i[0]??"")} \u2014 rename one to avoid cross-talk`)}function m0(e,t,n){if(!ni(e))return[];let r=Dn(e),i={};for(let[o,a]of Object.entries(r)){if(o in t)continue;let l=Qt(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 Wo(e,i),Object.keys(r)}function uu(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 ri(){if(typeof window>"u")return{};let e=window.__hfVariables;return!e||typeof e!="object"||Array.isArray(e)?{}:e}var cu="http://www.w3.org/1999/xhtml";function Me(e){return e!=null&&e.nodeType===1}function Ae(e){return Me(e)&&e.namespaceURI===cu}function In(e,t){return Ae(e)&&e.localName===t}function pe(e){return In(e,"video")}function Vo(e){return In(e,"audio")}function ge(e){return pe(e)||Vo(e)}function De(e){return In(e,"img")}function du(e){return In(e,"style")}function mu(e){return In(e,"link")}function zo(e){return Me(e)&&(e.namespaceURI===cu||e.namespaceURI==="http://www.w3.org/2000/svg")}function fu(e){let t=[],n=u=>{if(typeof u.getAnimations!="function")return[];try{return u.getAnimations()}catch{return[]}},r=u=>e?.resolveStartSeconds?e.resolveStartSeconds(u):Number.parseFloat(u.getAttribute("data-start")??"0")||0,i=(u,d)=>{let f=null;try{f=u.effect?.getComputedTiming?.()??null}catch(p){D("runtime.adapters.css.site5",p)}if(!f)return{};let m=Number(f.endTime);return Number.isFinite(m)?{endSeconds:d+m/1e3}:{unbounded:!0}},o=(u,d)=>{for(let f of u){try{f.currentTime=d}catch(m){D("runtime.adapters.css.site1",m)}try{f.pause()}catch(m){D("runtime.adapters.css.site2",m)}}},a=u=>{for(let d of u)try{d.play()}catch(f){D("runtime.adapters.css.site3",f)}},l=u=>{for(let d of u)try{d.pause()}catch(f){D("runtime.adapters.css.site4",f)}},s=u=>{u.baseDelay?u.el.style.animationDelay=u.baseDelay:u.el.style.removeProperty("animation-delay"),u.basePlayState?u.el.style.animationPlayState=u.basePlayState:u.el.style.removeProperty("animation-play-state")};return{name:"css",discover:()=>{t=[];let u=document.querySelectorAll("*");for(let d of u){if(!Ae(d))continue;let f=window.getComputedStyle(d);!f.animationName||f.animationName==="none"||t.push({el:d,baseDelay:d.style.animationDelay||"",basePlayState:d.style.animationPlayState||"",animations:n(d)})}},getInferredDurationSeconds:()=>{let u=0;for(let d of t){if(!d.el.isConnected)continue;let f=r(d.el);for(let m of n(d.el)){let p=i(m,f);p.endSeconds!=null&&(u=Math.max(u,p.endSeconds))}}return u>0?u:null},seek:u=>{let d=Number(u.time)||0;for(let f of t){if(!f.el.isConnected)continue;let m=r(f.el),p=Math.max(0,d-m)*1e3,g=f.animations;if(g.length>0){o(g,p);continue}f.el.style.animationPlayState="paused",f.el.style.animationDelay=`-${(p/1e3).toFixed(3)}s`}},pause:()=>{for(let u of t){if(!u.el.isConnected)continue;let d=u.animations;d.length>0&&l(d),s(u)}},play:()=>{for(let u of t)u.el.isConnected&&(s(u),a(u.animations))},revert:()=>{t=[]}}}function pu(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+.001,!0),n.totalTime(r,i)):n.seek(r,i)},pause:()=>{let t=e.getTimeline();t&&t.pause()}}}function hu(){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){D("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){D("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){D("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){D("runtime.adapters.animejs.site4",n)}},revert:()=>{}}}function bu(){return{name:"lottie",discover:()=>{try{let e=window.lottie;if(e&&typeof e.getRegisteredAnimations=="function"){let t=e.getRegisteredAnimations();if(Array.isArray(t)&&t.length>0){let n=window.__hfLottie??[],r=new Set(n);for(let i of t)r.has(i)||n.push(i);window.__hfLottie=n}}}catch(e){D("runtime.adapters.lottie.site1",e)}},seek:e=>{let t=Math.max(0,Number(e.time)||0),n=window.__hfLottie;if(!(!n||n.length===0))for(let r of n)try{if(qo(r))r.goToAndStop(t*1e3,!1);else if($o(r)){if(typeof r.setCurrentRawFrameValue=="function"){let i=r.totalFrames??0,o=r.frameRate??30,a=t*o;i>0&&r.setCurrentRawFrameValue(Math.min(a,i-1))}else if(typeof r.seek=="function"){let i=r.duration??0;if(Number.isFinite(i)&&i>0){let o=Math.min(100,t/i*100);r.seek(o)}}}}catch(i){D("runtime.adapters.lottie.site2",i)}},pause:()=>{let e=window.__hfLottie;if(!(!e||e.length===0))for(let t of e)try{(qo(t)||$o(t))&&t.pause()}catch(n){D("runtime.adapters.lottie.site3",n)}},revert:()=>{},getInferredDurationSeconds:()=>{let e=window.__hfLottie;if(!e||e.length===0)return null;let t=0,n=!1;for(let r of e){let i=null;try{i=f0(r)}catch(o){D("runtime.adapters.lottie.site4",o)}i!=null&&(n=!0,t=Math.max(t,i))}return n?t:null}}}function gu(e,t){return!Number.isFinite(e)||!e||e<=0||!Number.isFinite(t)||!t||t<=0?null:e/t}function f0(e){return qo(e)?gu(e.totalFrames,e.frameRate):$o(e)?Number.isFinite(e.duration)&&(e.duration??0)>0?e.duration??null:gu(e.totalFrames,e.frameRate):null}function qo(e){return typeof e=="object"&&e!==null&&typeof e.goToAndStop=="function"}function $o(e){return typeof e=="object"&&e!==null&&typeof e.pause=="function"&&("totalFrames"in e||"duration"in e)}var jo=-1,ii=new Set,Zt,Ko=0;function xu(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){D("runtime.adapters.seek-dispatch.site1",o)}finally{n=!1}if(t.length===0)return;let i=Promise.all(t).then(()=>({status:"fulfilled"})).catch(o=>({status:"rejected",reason:o}));ii.add(i),i.then(o=>{ii.delete(i)&&o.status==="rejected"&&Zt===void 0&&(Zt={reason:o.reason})})}function oi(e){e!==jo&&(jo=e,xu(e))}function ai(e){jo=e,xu(e)}function yu(){return Ko>0}async function Yo(){Ko+=1;let e=Zt;try{for(await Promise.resolve();ii.size>0;){let r=(await Promise.all([...ii])).find(i=>i.status==="rejected");e===void 0&&r?.status==="rejected"&&(e={reason:r.reason})}let t=Zt;if(e===void 0&&(e=t),Zt===t&&(Zt=void 0),e)throw e.reason}finally{Ko-=1}}function Su(){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=u=>{o||u.itemsTotal<=u.itemsLoaded||(o=new Promise(d=>{u.onLoad=function(){try{i?.call(this)}finally{o=null,u.onLoad=i??null,d()}}}))},s=u=>{n!==u&&(n=u,r=u.onStart??null,i=u.onLoad??null,u.onStart=function(d,f,m){try{r?.call(this,d,f,m)}finally{l(u)}})};return{name:"three",discover:()=>{let u=a();u&&(s(u),l(u))},seek:u=>{e=Math.max(0,Number(u.time)||0),t=e,window.__hfThreeTime=e,oi(e)},pause:()=>{e==null&&(e=Math.max(0,t))},play:()=>{e=null},revert:()=>{e=null,t=0},getReadyPromise:()=>{let u=a();return!u||u.itemsTotal<=u.itemsLoaded?null:(o||l(u),o)}}}function Ze(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 vu(){return Ze({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 Au(){return Ze({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 Eu(){return Ze({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 wu(){return Ze({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 _u(){return Ze({name:"d3",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfD3;return Array.isArray(e)?e:[]},waitFor:e=>e.end()})}var p0=250;function Cu(){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&&(yu()||(window.__hfTypegpuTime=e,ai(e)))},p0))};return{name:"typegpu",discover:()=>{},seek:o=>{e=Math.max(0,Number(o.time)||0),t=e,window.__hfTypegpuTime=e,oi(e)},pause:()=>{e==null&&(e=Math.max(0,t)),i()},play:()=>{r(),e=null},revert:()=>{r(),e=null,t=0}}}var Pn="data-hf-render-id",Ru="data-hf-group-render-id";function h0(e){return e.getAttribute(Pn)||e.id||null}var g0="__render_frame_",b0="__";function x0(e){return`${g0}${e}${b0}`}function y0(e){let t=h0(e);return t?x0(t):null}function At(e){let t=y0(e);if(!t)return null;let n=document.getElementById(t);return De(n)?n:null}function Tu(e){let t=e.nextElementSibling;if(De(t)&&t.classList.contains("__render_frame__")&&t.complete&&t.naturalWidth>0)return t;let n=At(e);return n&&n.complete&&n.naturalWidth>0?n:null}function ku(){let e=globalThis.GPUQueue;if(!e?.prototype?.copyExternalImageToTexture)return;let t=e.prototype.copyExternalImageToTexture;e.prototype.copyExternalImageToTexture=function(n,r,i){if(pe(n?.source)){let o=Tu(n.source);if(o)return t.call(this,{...n,source:o},r,i)}return t.call(this,n,r,i)}}function Mu(){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,u=l[s];if(pe(u)){let d=Tu(u);d&&(l[s]=d)}return o.apply(this,l)};a.__hfVideoPatched=!0,r[i]=a}}}var Ht="data-fx-chain",aE=Ht.slice(5),Fu=1,On=(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}),Xo=(e=.707,t="Bandwidth \u2014 higher is narrower.")=>({kind:"number",key:"q",label:"Q",unit:"",min:.1,max:20,step:.01,default:e,scale:"log",automatable:!0,hint:t}),si=(e=-40,t=40,n=0)=>({kind:"number",key:"gain",label:"Gain",unit:"dB",min:e,max:t,step:.1,default:n,automatable:!0}),Nu={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."},Du=[{id:"gain",label:"Gain",group:"dynamics",description:"Raise or lower the whole signal. Automate it to duck under something else.",params:[si(-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:[On("frequency","Frequency",1e3),si(-40,40,0),Xo(1)],web:"biquad-peaking"},{id:"lowshelf",label:"Low Shelf",group:"filter",description:"Lift or drop everything below the corner frequency.",params:[On("frequency","Frequency",200,20,2e3),si(-40,40,0)],web:"biquad-lowshelf"},{id:"highshelf",label:"High Shelf",group:"filter",description:"Lift or drop everything above the corner frequency.",params:[On("frequency","Frequency",4e3,500,2e4),si(-40,40,0)],web:"biquad-highshelf"},{id:"highpass",label:"High-pass",group:"filter",description:"Remove low frequencies \u2014 the usual fix for rumble on a voice.",params:[On("frequency","Cutoff",300,20,2e4),Xo(.707),Nu],web:"biquad-highpass"},{id:"lowpass",label:"Low-pass",group:"filter",description:"Remove high frequencies \u2014 darkens or muffles a track.",params:[On("frequency","Cutoff",8e3,100,2e4),Xo(.707),Nu],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:"Hard ceiling \u2014 nothing gets past the 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:"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 \u2014 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"}],Jo=new Map(Du.map(e=>[e.id,e]));function Gn(e){return Jo.get(e)}var sE=Du.map(e=>e.id);function Hn(e,t){let n=Jo.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 Et=class extends Error{constructor(t){super(t),this.name="AudioFxChainError"}};function Iu(e){let t;try{t=JSON.parse(e)}catch(i){throw new Et(`Chain file is not valid JSON: ${i.message}`)}if(typeof t!="object"||t===null)throw new Et("Chain file must be a JSON object.");let n=t;if(n.version!==Fu)throw new Et(`Unsupported chain version: ${String(n.version)}`);if(!Array.isArray(n.nodes))throw new Et("Chain file is missing a `nodes` array.");let r=n.nodes.map(S0);return{version:Fu,nodes:r}}function Bn(e){return e.nodes.filter(t=>t.enabled!==!1)}function S0(e,t){if(typeof e!="object"||e===null)throw new Et(`Node ${t} is not an object.`);let n=e;if(typeof n.type!="string"||!Jo.has(n.type))throw new Et(`Node ${t} has unknown effect type: ${String(n.type)}`);return A0({type:n.type,id:li(n.id),fromCarve:Lu(n.fromCarve),fromPreset:li(n.fromPreset),label:li(n.label),fromEq:li(n.fromEq),fromLeveller:Lu(n.fromLeveller),presetAmount:v0(n.presetAmount),enabled:n.enabled!==!1,params:Hn(n.type,n.params??void 0)})}function li(e){return typeof e=="string"&&e?e:void 0}function Lu(e){return e===!0?!0:void 0}function v0(e){if(!(typeof e!="number"||!Number.isFinite(e)))return Math.min(1,Math.max(0,e))}function A0(e){for(let t of Object.keys(e))e[t]===void 0&&delete e[t];return e}var Qo=3.981071705534972;function Ue(e){return Number.isFinite(e)?Math.max(0,Math.min(Qo,e)):1}function ui(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function Pu(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,ui(o))}});try{return t()}finally{delete e.volume,i.call(e,ui(o))}}var en=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),cE=Object.freeze([en.start,en.duration,en.trackIndex]),dE=Object.freeze([en.derivedEnd]),mE=Object.freeze([en.derivedEnd,en.legacyTrack]);function wt(e){if(e==null||e.trim()==="")return null;let t=Number(e);return Number.isFinite(t)?t:null}var Gu=/^[A-Za-z0-9_.:-]+$/;function Hu(e,t){let n=e.charCodeAt(t);return n>=48&&n<=57}function Ou(e,t){let n=t;for(;n>=0&&Hu(e,n);)n--;return n}function E0(e,t){let n=t;for(;n>=0&&(e[n]??"").trim()==="";)n--;return n}function w0(e){let t=e.length-1;if(!Hu(e,t))return null;let n=Ou(e,t);return e[n]==="."&&(n=Ou(e,n-1)),n+1}function _0(e){let t=w0(e);if(t==null)return null;let n=E0(e,t-1),r=e[n];if(r!=="+"&&r!=="-")return null;let i=e.slice(0,n).trim();if(!Gu.test(i))return null;let o=Number(e.slice(t));return Number.isFinite(o)?{refId:i,operator:r,magnitude:o}:null}function Zo(e){let t=(e??"").trim();if(!t)return null;let n=wt(t);if(n!=null)return{kind:"absolute",value:n};if(Gu.test(t))return{kind:"reference",refId:t,offset:0};let r=_0(t);return r?{kind:"reference",refId:r.refId,offset:r.operator==="-"?-r.magnitude:r.magnitude}:null}var Bu=e=>{let t=wt(e);return t!==null&&t>=0?t:null};function Uu(e){return Bu(e("data-playback-start"))??Bu(e("data-media-start"))??0}var Un=.1,Wn=10;function ea(e){return Number.isFinite(e)&&e>0?Math.max(Un,Math.min(Wn,e)):1}function Wu(e,t=1){let n=Number.parseFloat(e("data-playback-rate")??"");return ea(Number.isFinite(n)&&n>0?n:t)}function ta(e){let t=wt(e("data-duration"));return t!==null&&t>0?t:null}function Vu(e,t){let n=ta(e);if(n!==null)return n;let r=wt(e("data-end"));return r!==null?r-t:null}var C0=3;function na(e,t,n){return Number.isFinite(e)?Math.max(0,e-t)/ea(n):null}function ra(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:C0,source:"default"};if(r===null)return{seconds:null,source:"pending",reason:"source duration not yet probed"};let a=na(r,i,o);return a===null?{seconds:null,source:"pending",reason:"source reported a non-finite duration"}:{seconds:a,source:"media"}}var mt="data-automation",AE=mt.slice(5),ci=1,R0=512,dt=class extends Error{constructor(t){super(t),this.name="AudioAutomationError"}},tn="volume",di="rate";function zn(e){if(e===tn)return{kind:"volume"};if(e===di)return{kind:"rate"};let t=e.split(".");if(t.length===3&&t[0]==="fx"&&t[1]===T0){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 T0="preset";var k0={min:0,max:1,step:.01,unit:"",label:"Amount",scale:"linear",default:1},mi={min:0,max:Qo,step:.01,unit:"",label:"Volume",scale:"linear",default:1},zu={min:Un,max:Wn,step:.05,unit:"x",label:"Speed",scale:"log",default:1};function ia(e,t){let n=zn(e);if(!n)return null;if(n.kind==="volume")return mi;if(n.kind==="rate")return zu;if(n.kind==="preset")return t?.nodes.some(l=>l.fromPreset===n.presetId)?{...k0,label:`${n.presetId} \xB7 Amount`}:null;let r=t?.nodes.find(a=>a.id===n.nodeId);if(!r)return null;let i=Gn(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 Vn(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 M0(e){let t=Vn(e);return t===null||t===0?0:Math.min(1,Math.max(-1,t))}function qu(e,t){let n=Vn(e),r=Vn(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 F0(e){let t=M0(e?.curve),n=qu(e?.viaX,e?.viaY);return{...t?{curve:t}:{},...n?{viaX:n.x,viaY:n.y}:{}}}function N0(e,t){let n=Vn(e?.t),r=Vn(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,...F0(e)}}function $u(e,t){let n=e.map(i=>N0(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,R0)}function L0(e){let t=[];for(let n of e.lanes){if(!zn(n.target))continue;let r=n.target===tn?mi:n.target===di?zu:null,i=$u(n.points??[],r);i.length>0&&t.push({target:n.target,points:i})}return{version:ci,lanes:t}}function ju(e,t){let n=[];for(let r of e.lanes){let i=ia(r.target,t);if(!i)continue;let o=$u(r.points,i);o.length>0&&n.push({target:r.target,points:o})}return{version:ci,lanes:n}}function fi(e){let t;try{t=JSON.parse(e)}catch(i){throw new dt(`Automation is not valid JSON: ${i.message}`)}if(typeof t!="object"||t===null)throw new dt("Automation must be a JSON object.");let n=t;if(n.version!==ci)throw new dt(`Unsupported automation version: ${String(n.version)}`);if(!Array.isArray(n.lanes))throw new dt("Automation is missing a `lanes` array.");let r=n.lanes.map((i,o)=>{if(typeof i!="object"||i===null)throw new dt(`Lane ${o} is not an object.`);let a=i;if(typeof a.target!="string"||!zn(a.target))throw new dt(`Lane ${o} has an unreadable target: ${String(a.target)}`);if(!Array.isArray(a.points))throw new dt(`Lane ${o} is missing a \`points\` array.`);return{target:a.target,points:a.points}});return L0({version:ci,lanes:r})}function D0(e,t){return t?Math.pow(e,Math.pow(2,2*t)):e}function I0(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 P0(e,t,n){let{cx:r,cy:i,w:o}=I0(t,n),a=2-2*o,l=e*a-1+2*o*r,s=-e*a-2*o*r,u=O0(l,s,e),d=1-u,f=d*d+2*o*u*d+u*u;return f>0?(2*o*i*u*d+u*u)/f:e}function O0(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 G0(e,t){let n=qu(t.viaX,t.viaY);return n?P0(Math.min(1,Math.max(0,e)),n.x,n.y):D0(e,t.curve)}function H0(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 ft(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 f=a+l>>1;r[f].t<=t?a=f:l=f}let s=r[a],u=r[l],d=u.t-s.t;return d<=0?u.v:H0(s.v,u.v,G0((t-s.t)/d,s),n)}function Ku(e){return e.points.length<=1||e.points.every(t=>t.v===e.points[0].v)}function Yu(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]=ft(e,t+l*s/(o-1),i);return a}var pi=new Map,B0=64;function oa(e,t=tn){let n=`${t}\0${e}`,r=pi.get(n);if(r!==void 0)return r;let i=null;try{i=fi(e).lanes.find(o=>o.target===t)??null}catch{i=null}return pi.size>B0&&pi.clear(),pi.set(n,i),i}function Xu(e,t){let n=(typeof e.getAttribute=="function"?e.getAttribute(mt):null)??"";if(!n)return null;let r=oa(n);return!r||r.points.length===0?null:ft(r,t)}var Ju=48,Qu=new WeakMap;function U0(e){let t=e.points,n=t[0].v,r=t[t.length-1].v,i=[0],o=[0],a=s=>{let u=i[i.length-1];if(s<=u)return;let d=ft(e,u,"log");i.push(s),o.push(o[o.length-1]+(d+ft(e,s,"log"))/2*(s-u))},l=Math.max(0,t[0].t);a(l);for(let s=1;s<t.length;s+=1){let u=t[s-1].t,d=t[s].t;if(!(d<=0))for(let f=1;f<=Ju;f+=1)a(Math.max(u,0)+(d-u)*f/Ju)}return{ts:Float64Array.from(i),ss:Float64Array.from(o),firstRate:n,lastRate:r}}function Zu(e){let t=Qu.get(e);return t||(t=U0(e),Qu.set(e,t)),t}function aa(e){return typeof e!="number"&&e.points.length>0}function ec(e,t){return typeof e=="number"?e:aa(e)?ft(e,t,"log"):1}function tc(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 hi(e,t){if(typeof e=="number")return t*e;if(!aa(e))return t;let{ts:n,ss:r,firstRate:i,lastRate:o}=Zu(e),a=n.length-1;return t<=0?t*i:t>=n[a]?r[a]+(t-n[a])*o:tc(n,r,t)}function nn(e,t){if(typeof e=="number")return t/e;if(!aa(e))return t;let{ts:n,ss:r,firstRate:i,lastRate:o}=Zu(e),a=n.length-1;return t<=0?t/i:t>=r[a]?n[a]+(t-r[a])/o:tc(r,n,t)}function W0(e){return e?oa(e,di):null}function nc(e,t){return W0(e)??t}function rc(){let e=!1,t=0,n=!1,r,i,o,a=new Set,l=new WeakMap,s=()=>{if(!document.getAnimations)return[];try{return document.getAnimations()}catch{return[]}},u=x=>{let _=Number(x.currentTime);return Number.isFinite(_)&&_>0?_:0},d=(x,_)=>_<=0?x:x>=_?Math.max(0,x-_):x,f=(x,_)=>{let k=l.get(x);if(k)return k;let C={compositionTimeMs:_,animationTimeMs:e?d(u(x),_):u(x)};return l.set(x,C),C},m=(x,_)=>{if(!a.has(x)){a.add(x);let k=()=>{a.delete(x)};try{x.addEventListener("finish",k,{once:!0}),x.addEventListener("cancel",k,{once:!0})}catch(C){D("runtime.adapters.waapi.site4",C)}}f(x,_)},p=(x,_)=>{for(let k of x)m(k,_)},g=()=>{if(n||typeof Element>"u")return;let x=Element.prototype;if(typeof x.animate!="function"||x.__hfOriginalAnimate)return;let _=x.animate;try{Object.defineProperty(x,"__hfOriginalAnimate",{value:_,configurable:!0});let k=function(...C){let L=_.apply(this,C);return m(L,t),L};x.animate=k,r=x,i=_,o=k,n=!0}catch{}},y=x=>{let _=null;try{_=x.effect?.getComputedTiming?.()??null}catch(L){D("runtime.adapters.waapi.site4",L)}if(!_)return{};let k=Number(_.endTime);return Number.isFinite(k)?{endSeconds:(l.get(x)?.compositionTimeMs??0)/1e3+k/1e3}:{unbounded:!0}};return{name:"waapi",discover:()=>{e=!0,g(),p(s(),t)},seek:x=>{let _=Math.max(0,(Number(x.time)||0)*1e3);t=_,(!e||a.size>0)&&p(s(),e?_:0);for(let k of a){let C=e?f(k,_):f(k,0),L=C.animationTimeMs+Math.max(0,_-C.compositionTimeMs);try{k.currentTime=L}catch(P){D("runtime.adapters.waapi.site1",P)}try{k.pause()}catch(P){D("runtime.adapters.waapi.site2",P)}}},pause:()=>{e||p(s(),t);for(let x of a)try{x.pause()}catch(_){D("runtime.adapters.waapi.site3",_)}},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(x){D("runtime.adapters.waapi.site5",x)}r=void 0,i=void 0,o=void 0,n=!1},getInferredDurationSeconds:()=>{let x=0;for(let _ of s()){let k=y(_);k.endSeconds!=null&&(x=Math.max(x,k.endSeconds))}return x>0?x:null}}}function Fe(e){return wt(e)}function Oe(e){return Wu(t=>e.getAttribute(t),ge(e)?e.defaultPlaybackRate:1)}function _t(e){return nc(e.getAttribute("data-automation"),Oe(e))}function gi(e){return Uu(t=>e.getAttribute(t))}function et(e,t){return V0(t,gi(e),_t(e))}function bi(e){let t=ra({tag:"video",authoredDurationSeconds:ta(n=>e.getAttribute(n)),sourceDurationSeconds:Number.isFinite(e.duration)?e.duration:null,mediaStartSeconds:gi(e),playbackRate:Oe(e)});return t.source==="media"?et(e,e.duration):t.seconds}function rn(e,t=0){return!De(e)||!e.hasAttribute("data-start")&&!e.hasAttribute("data-track-index")?null:ra({tag:"img",authoredDurationSeconds:Vu(n=>e.getAttribute(n),t),sourceDurationSeconds:null,mediaStartSeconds:0,playbackRate:1}).seconds}function V0(e,t,n){return typeof n=="number"?na(e,t,n):Number.isFinite(e)?nn(n,Math.max(0,e-t)):null}function qn(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 on(e){let t=qn(e.start);if(t==null)return null;let n=Math.max(0,t),r=qn(e.duration),i=qn(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=qn(e.end),l=qn(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 xi="data-hf-media-start-basis";function z0(e){return e?.trim().toLowerCase()==="global"?"global":"local"}function q0(e){return z0(e.basis)==="global"?e.authoredStart:e.hostStart+e.authoredStart}function ic(e){return e.hasAutoStart||e.authoredStart==null||e.hostStart<=0?e.ordinaryStart():q0({authoredStart:e.authoredStart,hostStart:e.hostStart,basis:e.basis})}function tt(e){let t=e.timelineRegistry??{},n=e.includeAuthoredTimingAttrs??!1,r=e.documentRef??document,i=new WeakMap,o=new WeakMap,a=new Set,l=m=>{let p=r.getElementById(m);return p||(r.querySelector(`[data-composition-id="${CSS.escape(m)}"]`)??null)},s=m=>{let p=o.get(m);if(p!==void 0)return p;let g=null,y=on({start:0,duration:m.getAttribute("data-duration"),authoredDuration:n?m.getAttribute("data-hf-authored-duration"):null});if(y?.duration!=null&&y.duration>0&&(g=y.duration),g==null||g<=0){let x=d(m,0),_=on({start:x,end:m.getAttribute("data-end"),authoredEnd:n?m.getAttribute("data-hf-authored-end"):null});_?.duration!=null&&_.duration>0&&(g=_.duration)}if((g==null||g<=0)&&ge(m)&&(g=et(m,m.duration)),(g==null||g<=0)&&(g=rn(m)),g==null||g<=0){let x=m.getAttribute("data-composition-id");if(x){let _=t[x]??null;if(_&&typeof _.duration=="function")try{let k=Number(_.duration());Number.isFinite(k)&&k>0&&(g=k)}catch(k){D("runtime.startResolver.site1",k)}}}return g!=null&&Number.isFinite(g)&&g>0?(o.set(m,g),g):(o.set(m,null),null)},u=(m,p)=>{if(m.hasAttribute("data-composition-id")){let y=m.parentElement?.closest("[data-composition-id]");return y?d(y,p):0}let g=m.closest("[data-composition-id]");return g?d(g,p):0},d=(m,p)=>{let g=i.get(m);if(g!==void 0)return g??p;if(a.has(m))return p;a.add(m);try{let y=Zo(m.getAttribute("data-start"));if(!y){if(m.hasAttribute("data-composition-id")){let L=m.parentElement;if(L&&(L.hasAttribute("data-composition-src")||L.hasAttribute("data-composition-id")||L.hasAttribute("data-composition-file"))){let P=d(L,p);return i.set(m,P),P}}return i.set(m,p),p}if(y.kind==="absolute"){let L=Math.max(0,y.value),P=Math.max(0,u(m,p)+L);return i.set(m,P),P}let x=l(y.refId);if(!x)return i.set(m,p),p;let _=d(x,0),k=s(x);if(k==null||k<=0){let L=Math.max(0,_+y.offset);return i.set(m,L),L}let C=Math.max(0,_+k+y.offset);return i.set(m,C),C}finally{a.delete(m)}};return{resolveStartForElement:(m,p=0)=>d(m,Math.max(0,p)),resolveDurationForElement:m=>s(m),resolveMediaStartForElement:m=>{let p=m.closest("[data-composition-id]"),g=p?d(p,0):0;return ic({authoredStart:Fe(m.getAttribute("data-start")),hostStart:g,hasAutoStart:m.hasAttribute("data-hf-auto-start"),basis:m.getAttribute(xi),ordinaryStart:()=>d(m,g)})}}}function $0(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:Ue(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:Ue(n)}),i}function oc(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 j0(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 K0(e){let t=Number.parseFloat(e??"");return Number.isFinite(t)?t:void 0}function Y0(e,t){let n=tt({timelineRegistry:window.__timelines,includeAuthoredTimingAttrs:!0}).resolveMediaStartForElement(e),r=Fe(e.dataset.end)??void 0,i=Fe(e.dataset.duration)??void 0,o=t;i!==void 0&&i>0?o=n+i:r!==void 0&&r>n&&(o=r);let a=K0(e.dataset.volume)??1;return{start:n,end:o,staticVolume:Ue(a)}}function X0(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),u=Math.min(n,o),d=Pu(e,()=>{e.volume=a;let m=[],p;for(let g=s;g<=u+1e-6;g=Math.min(u,g+l)){t(g);let y=Number(e.volume);if(Number.isFinite(y)){let x={time:Number(g.toFixed(6)),volume:Number(Ue(y).toFixed(6))};j0(m,p,x,g===u),p=x}if(g===u)break}return m});return d.some(m=>Math.abs(m.volume-a)>1e-4)?d:null}function ac(e,t,n,r,i={}){if(i.allowLiveTimelineSeek===!1||!t||!ge(e)||n<=0)return;let o=u=>{try{typeof t.totalTime=="function"?t.totalTime(u,!0):typeof t.seek=="function"&&t.seek(u,!0)}catch{}},a=typeof t.totalTime=="function"?Number(t.totalTime()):typeof t.seek=="function"?Number(t.seek()):0,l=Y0(e,n),s=X0(e,o,n,60,l);if(Number.isFinite(a)&&o(a),s){let u=$0(s,l.start,l.staticVolume);u.length>0&&r.set(e,u)}}var an="hf-audio-group",yi="data-audio-group";function sa(e){let t=e?.getAttribute("data-volume"),n=t?parseFloat(t):1;return Number.isFinite(n)?n:1}function la(e,t){let n=Array.from(e?.querySelectorAll?.(`${an}[${Pn}]`)??[]).find(i=>i.getAttribute(Pn)===t);if(n)return n;let r=e?.getElementById(t)??null;return r&&r.tagName?.toLowerCase()===an?r:null}function Si(e,t){let n=t?.getAttribute?.(Ru)??t?.getAttribute?.(yi);return n?la(e,n)?.hasAttribute("data-hidden")??!1:!1}function sc(e){return typeof e.tagName!="string"||e.tagName.toLowerCase()!=="audio"||typeof e.getAttribute!="function"?null:e.getAttribute(yi)||null}function lc(e){let t="__hf-audio-group-inert";if(!e?.head||e.getElementById(t))return;let n=e.createElement("style");n.id=t,n.textContent=`${an}{display:none!important}`,e.head.appendChild(n)}function nt(e){return gi(e)}function uc(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 cc(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=nt(a),u=Oe(a),d=_t(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,nn(d,m-s)));let g=Number.isFinite(p)&&p>=0,y=g?l+p:Number.POSITIVE_INFINITY,x=Number.parseFloat(a.dataset.volume??""),_={el:a,start:l,mediaStart:s,duration:g?p:Number.POSITIVE_INFINITY,end:y,volume:Number.isFinite(x)?x:null,playbackRate:u,rate:d,loop:f,sourceDuration:m};r.push(_),a.tagName==="VIDEO"&&i.push(_),Number.isFinite(y)&&(o=Math.max(o,y))}return{timedMediaEls:n,mediaClips:r,videoClips:i,maxMediaEnd:o}}var ca=new WeakMap,vi=new WeakMap,$n=new WeakMap,da=new WeakSet,sn=new WeakSet;function J0(e){if(sn.has(e))return;sn.add(e);let t=()=>sn.delete(e);e.addEventListener("playing",t,{once:!0}),e.addEventListener("pause",t,{once:!0}),e.addEventListener("error",t,{once:!0})}var Q0=3;function Z0(e){return e.error!=null||e.networkState===Q0}var ma=new WeakMap;function ua(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function fa(e){ca.delete(e),vi.delete(e),$n.delete(e),da.delete(e),ma.delete(e)}function dc(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=r.tagName==="VIDEO"&&!n.loop,a=vt(e.timeSeconds,n.start,n.end),l=o&&!a&&e.timeSeconds>=n.end&&ti(e.timeSeconds,n.start,n.end,e.getCompositionDuration()),s=hi(i,Math.min(e.timeSeconds,n.end)-n.start)+n.mediaStart,u=l||o&&n.sourceDuration!=null&&s>=n.sourceDuration&&a;u&&n.sourceDuration!=null&&(s=Math.min(s,n.sourceDuration));let d=vi.get(r),f=r.tagName==="AUDIO"&&(d===void 0||s<d-.04),m=!n.loop&&n.sourceDuration!=null&&s>=n.mediaStart&&s<n.sourceDuration&&(o||f);if((a||l)&&s>=0&&(!r.ended||n.loop||u||m)){if(vi.set(r,s),n.loop&&n.sourceDuration!=null&&n.sourceDuration>0){let G=n.sourceDuration-n.mediaStart;G>0&&s>=n.sourceDuration&&(s=n.mediaStart+(s-n.mediaStart)%G)}let y=ua(e.userVolume??1),x=Ue(n.volume??1),_=ma.get(r),k=ua(r.volume),C,L=Xu(r,e.timeSeconds-n.start);if(L!==null)C=Ue(L);else if(n.volumeKeyframes&&n.volumeKeyframes.length>0){let G=e.timeSeconds-n.start;C=Ue(oc(n.volumeKeyframes,G))}else e.isWebAudioRouted?.(r)?C=x:_===void 0?C=x>1?x:k:Math.abs(k-_)>1e-4?C=k:C=x;let F=r.closest("[data-hidden]")!==null||Si(r.ownerDocument,r)?0:ua(C*y);r.volume=F,ma.set(r,F),e.onElementVolume?.(r,F,C),(t||e.isWebAudioOwned?.(r))&&(r.muted=!0),r.preload!=="auto"&&(r.preload="auto");try{r.playbackRate=ec(i,e.timeSeconds-n.start)*e.playbackRate}catch(G){D("runtime.media.site1",G)}let S=.04,A=2,E=r.currentTime||0,T=Math.abs(E-s),I=s-E,H=ca.get(r);ca.set(r,I);let j=H===void 0,Y=!j&&Math.abs(I-H)>.5,M=T>3,W=r.tagName==="AUDIO"&&j&&E-s>S,te=u&&T>.001||r.ended&&m&&T>.001||W||T>.5&&(j||Y||M),U=r.tagName==="VIDEO"&&!r.paused,K=H!==void 0&&Math.abs(I-H)<.004,z=!1;if(!U&&!te&&!j&&K&&T>S){let G=($n.get(r)??0)+1;$n.set(r,G),G>=A&&(z=!0,$n.set(r,0))}else T<=S&&$n.set(r,0);let J=!U&&e.forceSync&&T>.02;if(te||z||J){if(!(r.tagName==="VIDEO"&&!!At(r))){try{r.currentTime=s}catch(O){D("runtime.media.site2",O)}if(Math.abs(r.currentTime-s)>.5&&!da.has(r)){da.add(r),r.load();try{r.currentTime=s}catch(O){D("runtime.media.site3",O)}}}sn.delete(r)}u?r.paused||r.pause():e.playing&&r.paused&&!sn.has(r)&&!Z0(r)?(J0(r),r.play().catch(G=>{sn.delete(r),(G&&typeof G=="object"&&"name"in G?String(G.name??""):"")==="NotAllowedError"&&e.onAutoplayBlocked?.()})):!e.playing&&!r.paused&&r.pause();continue}let g=vt(e.timeSeconds,n.start,n.end);fa(r),g&&vi.set(r,s),r.paused||r.pause()}}var eg="hf-proxy",mc="runtime_media_proxy_fallback",fc="runtime_media_proxy_unavailable",jn=new WeakSet,pc=new WeakSet;function Ai(e){return e.currentSrc||e.src}function pa(e){return window.__HF_EXPORT_RENDER_SEEK_CONFIG?!0:pe(e)&&!!At(e)}function ha(e){let t=Ai(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 tg(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 ng(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 ga(e,t){return t[e]??tg(e,t)??ng(e,t)}function rg(e,t){let n=new URL(e,document.baseURI);return n.searchParams.set(eg,t?t.hasAlpha?"vp8":"h264":"auto"),n.href}var ig={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 Bt(e,t,n){if(pc.has(e))return;pc.add(e);let r=ig[t];ye({source:"hf-preview",type:"diagnostic",code:fc,details:{asset:n,codecName:null,reason:t,note:r}}),console.info(`[hyperframes] ${fc}: "${n}" (${t}): ${r}`)}function ba(e,t=null,n="reactive"){if(jn.has(e))return;let r=Ai(e),i;try{i=rg(r,t)}catch(l){D("runtime.mediaProxy.swap",l),Bt(e,"invalid_source_url",r);return}jn.add(e),fa(e),e.src=i,e.load();let o=t?.codecName??null;ye({source:"hf-preview",type:"diagnostic",code:mc,details:{asset:r,codecName:o,trigger:n,note:"render output is unaffected; only this preview element was swapped to an authoring proxy"}}),console.info(`[hyperframes] ${mc}: "${r}" uses a codec (${o??"unknown"}) this browser can't decode; auto-swapped to an authoring proxy for this preview only. Render output is unaffected.`)}function hc(e){if(pa(e)||!pe(e)||jn.has(e))return;let t=window.__HF_MEDIA_CODEC_MAP__;if(!t)return;let n=ha(e);if(n===null)return;let r=ga(n,t);if(!r||!r.browserHostile)return;let i=r.representativeMime?e.canPlayType(r.representativeMime):"";i==="probably"||i==="maybe"||ba(e,r,"proactive")}function gc(e){if(pa(e)||!pe(e)||e.videoWidth!==0)return;let t=Ai(e);if(jn.has(e)){Bt(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=ha(e);if(r===null){Bt(e,"cross_origin",t);return}let i=ga(r,n);if(i&&!i.browserHostile){Bt(e,"browser_safe_codec",t);return}ba(e,i,"reactive")}function bc(e){if(pa(e)||!pe(e))return;let t=Ai(e);if(jn.has(e)){Bt(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=ha(e);if(r===null){Bt(e,"cross_origin",t);return}let i=ga(r,n);if(i&&!i.browserHostile){Bt(e,"browser_safe_codec",t);return}ba(e,i,"tertiary")}var Re=class extends Error{constructor(n,r=null){super(r==null?n:`${n} at line ${r}`);xe(this,"lineNumber");this.name="CubeLutParseError",this.lineNumber=r}},og=[0,0,0],ag=[1,1,1],Ei=64;function sg(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 Ct(e,t){let n=Number(e);if(!Number.isFinite(n))throw new Re(`Invalid number "${e}"`,t);return n}function xc(e,t,n){if(e.length!==3)throw new Re(`${t} expects three numbers`,n);return[Ct(e[0],n),Ct(e[1],n),Ct(e[2],n)]}function yc(e,t,n){if(!e)throw new Re(`${t} expects a size`,n);let r=Number(e);if(!Number.isInteger(r)||r<2)throw new Re(`${t} must be an integer greater than 1`,n);return r}function lg(e,t){if(t[0]<=e[0]||t[1]<=e[1]||t[2]<=e[2])throw new Re("DOMAIN_MAX values must be greater than DOMAIN_MIN values")}function ug(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 cg(e){return/^[+-]?(?:\d|\.\d)/.test(e)}function Sc(e,t={}){let n=t.maxSize??Ei,r=null,i=og,o=ag,a=null,l=null,s=[],u=e.replace(/^\uFEFF/,"").split(/\r?\n/);for(let f=0;f<u.length;f++){let m=f+1,p=sg(u[f]??"").trim();if(!p)continue;let g=p.split(/\s+/),y=(g[0]??"").toUpperCase(),x=g.slice(1);if(y==="TITLE"){r=ug(p);continue}if(y==="DOMAIN_MIN"){i=xc(x,y,m);continue}if(y==="DOMAIN_MAX"){o=xc(x,y,m);continue}if(y==="LUT_3D_INPUT_RANGE"){if(x.length!==2)throw new Re(`${y} expects two numbers`,m);let _=Ct(x[0],m),k=Ct(x[1],m);if(k<=_)throw new Re("LUT_3D_INPUT_RANGE max must exceed min",m);i=[_,_,_],o=[k,k,k];continue}if(y==="LUT_1D_SIZE"){a=yc(x[0],y,m);continue}if(y==="LUT_3D_SIZE"){if(l=yc(x[0],y,m),l>n)throw new Re(`LUT_3D_SIZE ${l} exceeds max ${n}`,m);continue}if(!cg(y)){if(y.startsWith("LUT_"))throw new Re(`Unsupported cube keyword ${y}`,m);continue}if(!l)throw a?new Re("1D cube LUTs are not supported yet",m):new Re("LUT data appears before LUT_3D_SIZE",m);if(g.length!==3)throw new Re("LUT data rows must contain three numbers",m);s.push(Ct(g[0],m),Ct(g[1],m),Ct(g[2],m))}if(a&&l)throw new Re("Mixed 1D and 3D cube LUTs are not supported yet");if(!l)throw a?new Re("1D cube LUTs are not supported yet"):new Re("Missing LUT_3D_SIZE");lg(i,o);let d=l*l*l;if(s.length!==d*3)throw new Re(`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 dg(e){return Number.isFinite(e)?Math.min(1,Math.max(0,e)):0}function Kn(e){return Math.round(dg(e)*255)}function xa(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,u=(a*n+o*t+l)*4;i[u]=Kn(e.data[s]??0),i[u+1]=Kn(e.data[s+1]??0),i[u+2]=Kn(e.data[s+2]??0),i[u+3]=255}return{width:n,height:r,data:i}}var vc="rec709";var be={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 Ac=["exposure","contrast","highlights","shadows","whites","blacks","temperature","tint","vibrance","saturation"],Ec=["shadows","midtones","highlights"],wc=["master","red","green","blue"],_c=["hueVsHue","hueVsSaturation","hueVsLuma"];var Cc=["vignette","vignetteMidpoint","vignetteRoundness","vignetteFeather","grain","grainSize","grainRoughness"],Rc=["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 Aw=be.unit,Ew=be.signedUnit,ww=be.effects;var rt=1024,Yn=16;function Tc(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 Te(e,t){let n=e[t];if(n===void 0)throw new RangeError("Color curve points must be contiguous");return n}function mg(e){let t=[],n=[],r=Te(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=Te(n,0);if(e.length===2)return[i,i];let o=new Array(e.length);o[0]=Tc(Te(t,0),Te(t,1),i,Te(n,1)),o[o.length-1]=Tc(Te(t,t.length-1),Te(t,t.length-2),Te(n,n.length-1),Te(n,n.length-2));for(let a=1;a<e.length-1;a+=1){let l=Te(n,a-1),s=Te(n,a);if(l===0||s===0||Math.sign(l)!==Math.sign(s)){o[a]=0;continue}let u=Te(t,a-1),d=Te(t,a),f=2*d+u,m=d+2*u;o[a]=(f+m)/(f/l+m/s)}return o}function kc(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 fg(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 pg(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 Mc(e,t,n,r,i){fg(e,r,i);let o=mg(e),a=new Float32Array(t),l=0;for(let s=0;s<t;s+=1){let u=n(s);for(;l<e.length-2&&u>Te(e,l+1)[0];)l+=1;let d=Te(e,l),f=Te(e,l+1),m=pg(u,d,f,Te(o,l),Te(o,l+1));a[s]=Math.min(i,Math.max(r,m))}return a}function ln(e,t=rt){if(kc(e,t),e.length>Yn)throw new RangeError(`A color curve supports at most ${Yn} 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 Mc(e,t,n=>n/(t-1),0,1)}function Sa(e,t,n,r=rt){if(e.length<3)throw new RangeError("A hue curve requires at least three points");if(e.length>Yn)throw new RangeError(`A hue curve supports at most ${Yn} points`);let i=[...e].sort((s,u)=>s[0]-u[0]);for(let s=0;s<i.length;s+=1){let u=i[s];if(!u||u[0]<0||u[0]>=360)throw new RangeError("Hue curve inputs must be from 0 up to 360 degrees");if(s>0&&u[0]===i[s-1]?.[0])throw new RangeError("Hue curve inputs must be unique")}let o=i.slice(-2).map(([s,u])=>[s-360,u]),a=i.slice(0,2).map(([s,u])=>[s+360,u]),l=[...o,...i,...a];return kc(l,r),Mc(l,r,s=>s/r*360,t,n)}var Xn="data-color-grading",Jn="data-hf-color-grading-source-hidden",Ci="data-hf-authored-opacity",Ic="__hf_color_grading_",gg=vc,Ea={exposure:0,contrast:0,highlights:0,shadows:0,whites:0,blacks:0,temperature:0,tint:0,vibrance:0,saturation:0},wa={vignette:0,vignetteMidpoint:.5,vignetteRoundness:0,vignetteFeather:.65,grain:0,grainSize:.25,grainRoughness:.5},_a={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 Ri=Ac,Pc=Ec,Oc=wc,Gc=_c,Ra=Cc,Ta=Rc,Fc={exposure:.03,contrast:-.12,highlights:-.1,shadows:.16,whites:-.04,blacks:.08,temperature:.13,vibrance:-.08,saturation:-.08},Nc={vignette:.18};function ke(e,t,n={},r={},i={},o=1){return{id:e,label:t,intensity:o,adjust:{...Ea,...n},details:{...wa,...r},effects:{..._a,...i}}}var ka=[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",Fc,Nc),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",Fc,{...Nc,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})],bg=new Map(ka.map(e=>[e.id,e])),xg=/^\$(?:\{([A-Za-z0-9_.:-]+)\}|([A-Za-z0-9_.:-]+))$/,yg={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}},un={hue:0,amount:0,level:0},Lc={amount:be.unit,level:be.signedUnit},Rt=[[0,0],[1,1]],cn=[],Sg={hueVsHue:be.secondaryHueShift,hueVsSaturation:be.signedUnit,hueVsLuma:be.signedUnit},va={center:0,range:180,softness:0},Aa={min:0,max:1,softness:.05},vg={vignette:be.unit,vignetteMidpoint:be.unit,vignetteRoundness:be.signedUnit,vignetteFeather:be.unit,grain:be.unit,grainSize:be.unit,grainRoughness:be.unit},Ca=be.unit,Ag=be.effects,Hc=["blur","pixelate","chromaBleed","tapeDamage","filmArtifacts","halftone","twoInkPrint","ascii","dither","bloom","monoScreen","scanlines","chromaticAberration","crtCurvature","digitalGlitch","engraving","crosshatch","kuwahara"];var Eg=ka.filter(e=>Hc.some(t=>e.effects[t]>1e-4)),Nw=ka.filter(e=>!Eg.includes(e)),Lw={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}},Bc=[{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 wg=/^#[0-9a-f]{6}$/i;function _g(e){return!Array.isArray(e)||e.length<2||e.length>6||!e.every(t=>typeof t=="string"&&wg.test(t))?null:e.map(t=>t.toLowerCase())}function Le(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function _i(e,t,n){return Number.isFinite(e)?Math.min(n,Math.max(t,e)):0}function Uc(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?Math.min(1,Math.max(0,n)):t}function Ie(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?_i(n,t.min,t.max):0}function Ma(e,t=0){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?(n%360+360)%360:t}function Cg(e){let t=Le(e)?e:{};return Pc.reduce((n,r)=>{let i=Le(t[r])?t[r]:{};return n[r]={hue:Ma(i.hue,un.hue),amount:Ie(i.amount??un.amount,Lc.amount),level:Ie(i.level??un.level,Lc.level)},n},{shadows:{...un},midtones:{...un},highlights:{...un}})}function Rg(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)?[_i(t,0,1),_i(n,0,1)]:null}function Wc(e){return e.some((t,n)=>n>0&&t[0]===e[n-1]?.[0])}function Tg(e){(e[0]?.[0]??0)>0&&e.unshift([0,0]),(e.at(-1)?.[0]??1)<1&&e.push([1,1])}function kg(e){if(!Array.isArray(e)||e.length<2)return Rt;let t=[];for(let n of e){let r=Rg(n);if(!r)return Rt;t.push(r)}return t.sort((n,r)=>n[0]-r[0]),Wc(t)||(Tg(t),t.length>16)?Rt:t}function Mg(e){let t=Le(e)?e:{};return Oc.reduce((n,r)=>(n[r]=kg(t[r]),n),{master:Rt,red:Rt,green:Rt,blue:Rt})}function Fg(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)?[Ma(n),_i(r,t.min,t.max)]:null}function Ng(e,t){if(!Array.isArray(e)||e.length<3||e.length>16)return cn;let n=[];for(let r of e){let i=Fg(r,t);if(!i)return cn;n.push(i)}return n.sort((r,i)=>r[0]-i[0]),Wc(n)?cn:n}function Lg(e){let t=Le(e)?e:{};return Gc.reduce((n,r)=>(n[r]=Ng(t[r],Sg[r]),n),{hueVsHue:cn,hueVsSaturation:cn,hueVsLuma:cn})}function Dc(e){let t=Le(e)?e:{},n=Ie(t.min??Aa.min,Ca),r=Ie(t.max??Aa.max,Ca);return{min:Math.min(n,r),max:Math.max(n,r),softness:Ie(t.softness??Aa.softness,be.secondarySoftRangeSoftness)}}function Dg(e){let t=Le(e)?e:{},n=Ie(t.range??va.range,be.secondaryHueRange);return{center:Ma(t.center,va.center),range:n,softness:Ie(t.softness??va.softness,{min:be.secondaryHueSoftness.min,max:be.secondaryHueCombinedMax-n})}}function Ig(e){return{hueShift:Ie(e.hueShift??0,be.secondaryHueShift),saturation:Ie(e.saturation??0,be.signedUnit),luma:Ie(e.luma??0,be.signedUnit),temperature:Ie(e.temperature??0,be.signedUnit),tint:Ie(e.tint??0,be.signedUnit)}}function Pg(e){return!Le(e)||!Le(e.key)||!Le(e.correction)?null:{enabled:e.enabled!==!1,key:{hue:Dg(e.key.hue),saturation:Dc(e.key.saturation),luma:Dc(e.key.luma)},correction:Ig(e.correction)}}function Og(e){if(!Array.isArray(e))return[];let t=[];for(let n of e.slice(0,4)){let r=Pg(n);r&&t.push(r)}return t}function Gg(e){if(e==null)return null;let t=String(e).trim();return t||null}function Hg(e){if(e==null)return null;if(typeof e=="string"){let n=e.trim();return n?{src:n,intensity:1}:null}if(!Le(e))return null;let t=e.src;return typeof t!="string"||t.trim()===""?null:{src:t.trim(),intensity:Uc(e.intensity,1)}}function Bg(e){if(typeof e=="string"){let t=e.trim();if(!t)return null;if(t.startsWith("{"))try{let n=JSON.parse(t);return Le(n)?n:null}catch{return null}return{preset:t}}return Le(e)?e:null}function Ug(e,t){let n=e.trim().match(xg);if(!n)return e;let r=n[1]??n[2]??"";return r&&Object.hasOwn(t,r)?t[r]:e}function wi(e,t){if(typeof e=="string"){let r=Ug(e,t);if(r!==e)return r;let i=e.trim();if(!i.startsWith("{"))return e;try{return wi(JSON.parse(i),t)}catch{return e}}if(Array.isArray(e))return e.map(r=>wi(r,t));if(!Le(e))return e;let n={};for(let[r,i]of Object.entries(e))n[r]=wi(i,t);return n}function Wg(e){return e?bg.get(e)??null:null}function Ti(e){let t=Bg(e);if(!t||t.enabled===!1)return null;let n=Gg(t.preset),r=Wg(n),i=r?.adjust??Ea,o=r?.details??wa,a=r?.effects??_a,l=Le(t.adjust)?t.adjust:{},s=Le(t.details)?t.details:{},u=Le(t.effects)?t.effects:{},d=Ri.reduce((p,g)=>(p[g]=Ie(l[g]??i[g],yg[g]),p),{...Ea}),f=Ra.reduce((p,g)=>(p[g]=Ie(s[g]??o[g],vg[g]),p),{...wa}),m=Ta.reduce((p,g)=>(p[g]=Ie(u[g]??a[g],Ag[g]??Ca),p),{..._a});return{enabled:!0,preset:n,intensity:Uc(t.intensity,r?.intensity??1),adjust:d,wheels:Cg(t.wheels),curves:Mg(t.curves),hueCurves:Lg(t.hueCurves),secondaries:Og(t.secondaries),details:f,effects:m,palette:_g(t.palette),lut:Hg(t.lut),colorSpace:typeof t.colorSpace=="string"&&t.colorSpace.trim()?t.colorSpace.trim():gg}}function Vc(e,t){return Ti(wi(e,t))}function Vg(e){return Pc.some(t=>Math.abs(e[t].amount)>1e-4||Math.abs(e[t].level)>1e-4)}function Fa(e){return Oc.some(t=>e[t].some(([n,r])=>Math.abs(n-r)>1e-4))}function Na(e){return Gc.some(t=>e[t].some(([,n])=>Math.abs(n)>1e-4))}function La(e){return e.some(t=>t.enabled&&Object.values(t.correction).some(n=>Math.abs(n)>1e-4))}function zc(e){return e?.enabled?Math.abs(e.details.vignette)>1e-4||Math.abs(e.details.grain)>1e-4||Hc.some(n=>Math.abs(e.effects[n])>1e-4)?!0:e.intensity===0?!1:e.lut&&e.lut.intensity!==0?!0:Ri.some(n=>Math.abs(e.adjust[n])>1e-4)||(e.wheels?Vg(e.wheels):!1)||(e.curves?Fa(e.curves):!1)||(e.hueCurves?Na(e.hueCurves):!1)||(e.secondaries?La(e.secondaries):!1):!1}var zg=["[data-hyperframes-ignore]","[data-hyperframes-picker-ignore]","[data-hf-ignore]","[data-no-inspect]","[data-no-pick]","[data-hyper-shader-loading]"].join(","),qg=["[data-hyperframes-picker-block]","[data-hyper-shader-loading]"].join(",");function qc(e){let t=!1,n=null,r=null,i=null,o=null;function a(S,A){try{window.dispatchEvent(new CustomEvent(S,{detail:A}))}catch(E){D("runtime.picker.site1",E)}}function l(S){i=S,a("hyperframe:picker:hovered",{elementInfo:i,isPickMode:t,timestamp:Date.now()})}function s(S){o=S,a("hyperframe:picker:selected",{elementInfo:o,isPickMode:t,timestamp:Date.now()})}function u(S){let A=S.ownerDocument.defaultView;if(!A)return!1;let E=S;for(;E&&E!==document.body&&E!==document.documentElement;){let T=A.getComputedStyle(E);if(T.display==="none"||T.visibility==="hidden"||T.pointerEvents==="none")return!0;let I=Number.parseFloat(T.opacity);if(Number.isFinite(I)&&I<=.01&&!E.hasAttribute(Jn))return!0;E=E.parentElement}return!1}function d(S){if(!S||S===document.body||S===document.documentElement)return!1;let A=S.tagName.toLowerCase();return!(A==="script"||A==="style"||A==="link"||A==="meta"||S.classList.contains("__hf-pick-highlight")||S.closest(zg)||u(S))}function f(S){return!!S?.closest(qg)}function m(S){let A=S;if(A.id)return`#${CSS.escape(A.id)}`;let E=S.getAttribute("data-composition-id");if(E)return`[data-composition-id="${CSS.escape(E)}"]`;let T=S.getAttribute("data-composition-src");if(T)return`[data-composition-src="${CSS.escape(T)}"]`;let I=S.getAttribute("data-track-index");if(I)return`[data-track-index="${CSS.escape(I)}"]`;let H=S.tagName.toLowerCase(),j=S.parentElement;if(!j)return H;let Y=j.querySelectorAll(`:scope > ${H}`);if(Y.length===1)return H;for(let M=0;M<Y.length;M+=1)if(Y[M]===S)return`${H}:nth-of-type(${M+1})`;return H}function p(S){let A=S.tagName.toLowerCase(),E=(S.textContent??"").trim().replace(/\s+/g," "),T=(I,H)=>I.length>H?`${I.slice(0,H-1)}\u2026`:I;return A==="h1"||A==="h2"||A==="h3"?"Heading":A==="p"||A==="span"||A==="div"?E.length>0?T(E,56):"Text":A==="img"?"Image":A==="video"?"Video":A==="audio"?"Audio":A==="svg"?"Shape":S.getAttribute("data-composition-src")?"Composition":A==="section"?"Section":`${A.charAt(0).toUpperCase()}${A.slice(1)}`}function g(S,A,E){let T=typeof E=="number"&&E>0?E:8,I=[];if(document.elementsFromPoint)I=document.elementsFromPoint(S,A);else if(document.elementFromPoint){let Y=document.elementFromPoint(S,A);I=Y?[Y]:[]}if(f(I[0]??null))return[];let H={},j=[];for(let[Y,M]of I.entries()){if(!d(M))continue;let W=`${M.tagName}::${M.id||""}::${Y}`;if(!H[W]&&(H[W]=!0,j.push(M),j.length>=T))break}return j}function y(S){let A=S.getBoundingClientRect(),E={};for(let I of Array.from(S.attributes))I.name.startsWith("data-")&&(E[I.name]=I.value);return{id:S.id||null,tagName:S.tagName.toLowerCase(),selector:m(S),label:p(S),boundingBox:{x:A.left,y:A.top,width:A.width,height:A.height},textContent:S.textContent?S.textContent.trim().slice(0,200):null,src:S.getAttribute("src")||S.getAttribute("data-composition-src")||null,dataAttributes:E}}function x(S,A,E){return g(S,A,E).map(y)}function _(S){if(!t)return;let E=g(S.clientX,S.clientY,1)[0]??(Me(S.target)?S.target:null);if(!d(E)||n===E)return;n&&n.classList.remove("__hf-pick-highlight"),n=E,E.classList.add("__hf-pick-highlight");let T=y(E);l(T),e.postMessage({source:"hf-preview",type:"element-hovered",elementInfo:T})}function k(S){if(!t)return;S.preventDefault(),S.stopPropagation(),S.stopImmediatePropagation();let A=x(S.clientX,S.clientY,8);A.length!==0&&(l(A[0]??null),e.postMessage({source:"hf-preview",type:"element-pick-candidates",candidates:A,selectedIndex:0,point:{x:S.clientX,y:S.clientY}}))}function C(S){S.key==="Escape"&&(P(),e.postMessage({source:"hf-preview",type:"pick-mode-cancelled"}))}function L(){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(`
40
+ `),document.head.appendChild(r),document.body.classList.add("__hf-pick-active"),document.addEventListener("mousemove",_,!0),document.addEventListener("click",k,!0),document.addEventListener("keydown",C,!0),a("hyperframe:picker:mode",{isPickMode:!0,timestamp:Date.now()}))}function P(){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",_,!0),document.removeEventListener("click",k,!0),document.removeEventListener("keydown",C,!0),a("hyperframe:picker:mode",{isPickMode:!1,timestamp:Date.now()}))}function F(){window.__HF_PICKER_API={enable:L,disable:P,isActive:()=>t,getHovered:()=>i,getSelected:()=>o,getCandidatesAtPoint:(S,A,E)=>Number.isFinite(S)&&Number.isFinite(A)?x(S,A,E):[],pickAtPoint:(S,A,E)=>{if(!Number.isFinite(S)||!Number.isFinite(A))return null;let T=x(S,A,8);if(!T.length)return null;let I=Math.max(0,Math.min(T.length-1,Number(E??0))),H=T[I]??null;return H?(s(H),e.postMessage({source:"hf-preview",type:"element-picked",elementInfo:H}),P(),H):null},pickManyAtPoint:(S,A,E)=>{if(!Number.isFinite(S)||!Number.isFinite(A))return[];let T=x(S,A,8);if(!T.length)return[];let I=[],H=Array.isArray(E)?E:[0];for(let j of H){let Y=Math.max(0,Math.min(T.length-1,Math.floor(Number(j)))),M=T[Y];if(!M)continue;I.some(te=>te.selector===M.selector&&te.tagName===M.tagName)||I.push(M)}return I.length?(s(I[0]??null),e.postMessage({source:"hf-preview",type:"element-picked-many",elementInfos:I}),P(),I):[]}},a("hyperframe:picker:api-ready",{hasApi:!0,timestamp:Date.now()})}return{enablePickMode:L,disablePickMode:P,installPickerApi:F}}var $g=["width","height","top","left","right","bottom","inset","object-fit","object-position","z-index","opacity","visibility","filter","mix-blend-mode","backdrop-filter","border-radius","overflow","clip-path","mask","mask-image","mask-size","mask-position","mask-repeat","transform","transform-origin","translate","rotate","scale","box-sizing"];function Da(e){return Number.isFinite(e)&&e>0?e:30}function Ia(e){return Number.isFinite(e)&&e>0?e:0}function Pa(e,t){let n=Da(t);return Math.floor(Ia(e)*n+1e-9)/n}function Qn(e,t,n){let r=Number.isInteger(n)?n:1;if(r<=1)return Pa(e,t);let i=Da(t)*r;return Math.round(Ia(e)*i)/i}function Oa(e,t){let n=Da(t),r=Ia(e),i=r*n,o=Math.round(i);return Math.abs(i-o)<=.001?o/n:r}function $c(e,t,n=$g){for(let r of n){let i=t.getPropertyValue(r);i&&e.setProperty(r,i)}}function Zn(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&&D("runtime.player.nonConformantNum",{prop:t,actual:typeof r}),n)}function je(e,t){let n=e?.[t];if(typeof n=="function"){n.call(e);return}n!==void 0&&D("runtime.player.nonConformantVoid",{method:t,actual:typeof n})}function er(e,t,n){if(e){for(let r of Object.values(e))if(!(!r||r===t))try{n(r)}catch(i){D("runtime.player.site1",i)}}}function jc(e,t,n,r){let i=Qn(t,n,r?.subFrameDivisions),o=r?.suppressEvents===!0;return je(e,"pause"),typeof e.totalTime=="function"?e.totalTime(i,o):typeof e.seek=="function"&&e.seek(i,o),i}function jg(e,t,n,r,i){let o=[];er(e,t,a=>{je(a,"play"),o.push(a)});try{return jc(t,n,r,i)}finally{for(let a of o)try{je(a,"pause")}catch(l){D("runtime.player.site2",l)}}}function Kg(e,t){er(e,t,n=>{je(n,"play")})}function Kc(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?.()??Zn(n,"duration",0))||0);r>0&&Math.max(0,Zn(n,"time",0))>=r&&(je(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()),je(n,"play"),er(e.getTimelineRegistry?.(),n,i=>{typeof i.timeScale=="function"&&i.timeScale(e.getPlaybackRate()),je(i,"play")}),e.onDeterministicPlay(),e.setIsPlaying(!0),e.onShowNativeVideos(),e.onStatePost(!0)},pause:()=>{let n=e.getTimeline();if(!n)return;je(n,"pause"),er(e.getTimelineRegistry?.(),n,i=>{je(i,"pause")});let r=Math.max(0,Zn(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=jg(e.getTimelineRegistry?.(),i,o,e.getCanonicalFps());e.onDeterministicSeek(l),r?.keepPlaying&&a?(typeof i.timeScale=="function"&&i.timeScale(e.getPlaybackRate()),je(i,"play"),er(e.getTimelineRegistry?.(),i,s=>{typeof s.timeScale=="function"&&s.timeScale(e.getPlaybackRate()),je(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?(Kg(e.getTimelineRegistry?.(),i),jc(i,n,o,r)):Qn(Math.max(0,Number(n)||0),o,r?.subFrameDivisions);e.onDeterministicSeek(a,r),e.setIsPlaying(!1),e.onSyncMedia(a,!1),e.onRenderFrameSeek(a),e.onStatePost(!0)},getTime:()=>Zn(e.getTimeline(),"time",0),getDuration:()=>Zn(e.getTimeline(),"duration",0),isPlaying:()=>e.getIsPlaying(),setPlaybackRate:n=>e.setPlaybackRate(n),getPlaybackRate:()=>e.getPlaybackRate()}}function Yc(){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}}var Yg=new Set(["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"]);function Ga(e){return e.id||e.getAttribute("data-hf-id")||null}function Xg(e){return Fe(e)}function Jg(e,t){let n=e.getAttribute("data-composition-id");if(!n)return null;let r=Number(t[n]?.duration?.());return Number.isFinite(r)&&r>0?r:null}function Qg(e){return ge(e)?Number.isFinite(e.duration)?et(e,e.duration):null:rn(e)}function Zg(e,t,n,r){let i=Xg(e.getAttribute("data-duration"));return i!=null&&i>0?i:Jg(e,t)??Qg(e)??Math.max(0,n-r)}function eb(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 Xc(e){let{startResolver:t,timelineRegistry:n,rootDuration:r}=e,i=new Map,o=document.querySelector("[data-composition-id]"),a=0;for(let l of document.querySelectorAll("[data-start]")){if(l===o||Yg.has(l.tagName))continue;let s=t.resolveStartForElement(l,0);if(Zg(l,n,r,s)<=0)continue;let u={id:Ga(l)??`__clip-${a++}`,element:l,parentId:null,children:[]};i.set(l,u)}return eb(i),{roots:Array.from(i.values()).filter(l=>l.parentId===null)}}var Ha="css:root",Jc=["backdrop-filter","clip-path","filter","mask","mask-border-source","mask-image","perspective","rotate","scale","transform","translate","-webkit-mask-image"],tb=new Set([...Jc,"contain","isolation","mask-border","mix-blend-mode","opacity"]),nb=new Set(["absolute","relative"]),rb=new Set(["flex","inline-flex","grid","inline-grid"]),ib=new Set(["layout","paint","strict","content"]),ob=new Set(["size","inline-size"]);function ab(e){return e.position==="fixed"||e.position==="sticky"}function sb(e,t){if(t.zIndex==="auto"||t.zIndex==="")return!1;if(nb.has(t.position))return!0;let n=e.parentElement?e.ownerDocument.defaultView?.getComputedStyle(e.parentElement).display:null;return n!=null&&rb.has(n)}function lb(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:Jc.some(r=>{let i=e.getPropertyValue(r);return i!==""&&i!=="none"})}function ub(e){return e.getPropertyValue("contain").split(/\s+/).some(n=>ib.has(n))?!0:ob.has(e.getPropertyValue("container-type"))}function cb(e){return e.getPropertyValue("will-change").split(",").map(t=>t.trim()).some(t=>tb.has(t))}function db(e,t){return ab(t)||sb(e,t)||lb(t)||ub(t)?!0:cb(t)}function mb(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 ki(e){let t=e.ownerDocument.defaultView;if(!t)return Ha;let n=e.parentElement;for(;n&&n!==e.ownerDocument.documentElement;){try{if(db(n,t.getComputedStyle(n)))return mb(n)}catch{return Ha}n=n.parentElement}return Ha}function Ba(e){let t=e.trim().toLowerCase();return!(!t||t==="main"||t.includes("caption")||t.includes("ambient"))}function Ut(e){return Fe(e)}function Ua(e){let t=e.getAttribute("data-duration"),n=e.getAttribute("data-hf-authored-duration"),r=on({start:0,duration:t,authoredDuration:n})?.duration;return r??([t,n].map(Ut).some(o=>o!=null&&o<=0)?0:null)}function Qc(e){return on({start:0,end:e.getAttribute("data-end"),authoredEnd:e.getAttribute("data-hf-authored-end")})?.end??null}function Wa(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 Va(...e){let t=e.filter(n=>Number.isFinite(n??null));return t.length===0?null:Math.max(...t)}function za(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 nr(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 Zc(e){let t=e.getAttribute("src")??e.getAttribute("data-src");if(t)return nr(t);let n=e.getAttribute("data-composition-src");if(n)return nr(n);let r=e.querySelector("img[src], video[src], audio[src], source[src]");return r?nr(r.getAttribute("src")):null}function pb(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 hb(e){if(!e)return null;try{return new URL(e,document.baseURI).pathname.split("/").filter(Boolean).at(-1)??null}catch{return e.split(/[\\/]/).filter(Boolean).at(-1)??null}}function gb(e){let t=e.textContent?.replace(/\s+/g," ").trim();return t?t.length>32?`${t.slice(0,31)}...`:t:null}function tr(e){let t=e.replace(/\.[^.]+$/i,"").replace(/[-_]+/g," ").replace(/\s+/g," ").trim();return t?t.replace(/\b\w/g,n=>n.toUpperCase()):e}function bb(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=e.getAttribute("data-composition-id");if(i)return tr(i);let o=e.id;if(o)return tr(o);let a=pb(e);if(a)return tr(a);let l=hb(Zc(e));if(l)return tr(l);let s=gb(e);return s||`${tr(t)} ${n+1}`}function ed(e){let n=window.__timelines??{},r=tt({timelineRegistry:n,includeAuthoredTimingAttrs:!0}),i=G=>{if(!G)return null;let O=n[G]??null;if(!O||typeof O.duration!="function")return null;try{let q=Number(O.duration());return Number.isFinite(q)&&q>0?q:null}catch{return null}},o=()=>{let G=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if(G.length===0)return null;let O=0;for(let q of G){let Z=r.resolveMediaStartForElement(q);if(!Number.isFinite(Z))continue;let ce=bi(q);ce==null||ce<=0||(O=Math.max(O,Math.max(0,Z)+ce))}return O>0?O:null},a=(G,O)=>{let q=[],Z=null,ce=null,re=null,V=G.parentElement;for(;V;){let Q=V.getAttribute("data-composition-id");Q&&(q.push(Q),!re&&V!==O&&(re=Q),Z==null&&(Z=r.resolveStartForElement(V,0)),ce==null&&(ce=Ut(V.getAttribute("data-duration"))??i(Q)??null)),V=V.parentElement}return{parentCompositionId:re,compositionAncestors:q.reverse(),inheritedStart:Z,inheritedDuration:ce}},l=document.querySelector("[data-composition-id]"),s=Array.from(document.querySelectorAll("[data-composition-id]")),u=l?.getAttribute("data-composition-id")??null,d=l?r.resolveStartForElement(l,0):0,f=o(),m=f!=null?Math.max(0,f-Math.max(0,d)):null,p=i(u),g=Ua(l??document.body),y=Va(...s.filter(G=>G!==l).map(G=>{let O=r.resolveStartForElement(G,0),q=r.resolveDurationForElement(G)??i(G.getAttribute("data-composition-id"))??null;return!Number.isFinite(O)||q==null||q<=0?null:Math.max(0,O)+q})),x=y!=null?Math.max(0,y-Math.max(0,d)):null,_=typeof p=="number"&&Number.isFinite(p)&&p>0?p:null,k=typeof g=="number"&&Number.isFinite(g)&&g>0?g:null,C=typeof m=="number"&&Number.isFinite(m)&&m>0?m:null,L=typeof x=="number"&&Number.isFinite(x)&&x>0?x:null,P=Va(C,L),F=_!=null&&P!=null&&_>P+1,A=k??(F?P:Va(_,C,L))??null,T=(A!=null?d+A:null)??(typeof f=="number"&&Number.isFinite(f)&&f>0?f:null),I=(G,O)=>!Number.isFinite(O)||O<=0?0:T==null||!Number.isFinite(T)?O:!Number.isFinite(G)||G>=T?0:Math.max(0,Math.min(O,T-G)),H=[],j=[],Y=Array.from(document.querySelectorAll("[data-start], [data-track-index], [data-composition-id], video, audio, img")),M=0;for(let[G,O]of Y.entries()){if(O===l||["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"].includes(O.tagName))continue;let q=a(O,l),Z=O.tagName.toLowerCase(),ce=Z==="video"||Z==="audio"?r.resolveMediaStartForElement(O):r.resolveStartForElement(O,q.inheritedStart??0),re=O.getAttribute("data-composition-id"),V=Ua(O);if(V==null&&re&&re!==u&&(V=i(re)),V==null&&ge(O)&&Number.isFinite(O.duration)&&(V=et(O,O.duration)),V==null&&(V=rn(O,ce)),V==null){let de=q.inheritedDuration;if(de!=null&&de>0){let ut=(q.inheritedStart??0)+de;V=Math.max(0,ut-ce)}}if(V==null||V<=0||(V=I(ce,V),V<=0))continue;let Q=ce+V;M=Math.max(M,Q);let Ee=re&&re!==u?"composition":Z==="video"?"video":Z==="audio"?"audio":Z==="img"?"image":"element";H.push({id:Ga(O)??re??null,label:bb(O,Ee,H.length),start:ce,duration:V,track:za(O,G),zIndex:Wa(O),stackingContextId:ki(O),kind:Ee,tagName:Z,compositionId:O.getAttribute("data-composition-id"),compositionAncestors:q.compositionAncestors,parentCompositionId:q.parentCompositionId,nodePath:null,compositionSrc:nr(O.getAttribute("data-composition-src")),playbackStart:nt(O),playbackRate:Oe(O),assetUrl:Zc(O),timelineRole:O.getAttribute("data-timeline-role"),timelineLabel:O.getAttribute("data-timeline-label"),timelineGroup:O.getAttribute("data-timeline-group"),timelinePriority:Ut(O.getAttribute("data-timeline-priority"))})}let W=new Set(H.map(G=>G.id)),te=l?.getAttribute("data-composition-id")??null,U=te?n[te]??null:null;if(U&&l){let G=U;if(typeof G.getChildren=="function")try{let O=G.getChildren(!0,!0,!1)??[],q=new Map;for(let re of l.children){let V=re;if(!V.id)continue;let Q=V.tagName.toLowerCase();Q==="script"||Q==="style"||Q==="link"||q.set(V,{id:V.id,start:1/0,end:-1/0})}let Z=re=>{let V=re;for(;V;){if(q.has(V))return V;if(V===l)return null;V=V.parentElement}return null};for(let re of O){if(typeof re.targets!="function"||typeof re.startTime!="function"||typeof re.duration!="function")continue;let V=re.startTime(),Q=re.parent;for(;Q&&Q!==U&&typeof Q.startTime=="function";)V+=Q.startTime(),Q=Q.parent;let Ee=V+re.duration();if(!(!Number.isFinite(V)||!Number.isFinite(Ee)))for(let de of re.targets()){if(!Me(de))continue;let Cn=Z(de);if(!Cn)continue;let ut=q.get(Cn);ut&&(ut.start=Math.min(ut.start,V),ut.end=Math.max(ut.end,Ee))}}let ce=H.length>0?Math.max(...H.map(re=>re.track))+1:0;for(let[re,V]of q){if(V.start===1/0||V.end===-1/0)continue;let Q=re;if(W.has(Q.id))continue;let Ee=Math.max(0,V.end-V.start);if(Ee<=0)continue;let de=I(V.start,Ee);de<=0||(M=Math.max(M,V.start+de),H.push({id:Q.id,label:Q.getAttribute("data-timeline-label")??Q.getAttribute("data-label")??Q.getAttribute("aria-label")??Q.id,start:V.start,duration:de,track:za(Q,ce),zIndex:Wa(Q),stackingContextId:ki(Q),kind:"element",tagName:Q.tagName.toLowerCase(),compositionId:Q.getAttribute("data-composition-id"),compositionAncestors:te?[te]:[],parentCompositionId:te,nodePath:null,compositionSrc:null,playbackStart:nt(Q),playbackRate:Oe(Q),assetUrl:null,timelineRole:Q.getAttribute("data-timeline-role"),timelineLabel:Q.getAttribute("data-timeline-label"),timelineGroup:Q.getAttribute("data-timeline-group"),timelinePriority:Ut(Q.getAttribute("data-timeline-priority"))}),W.add(Q.id))}}catch(O){D("runtime.timeline.site1",O)}}if(l&&A!=null&&A>0){let G=H.length>0?Math.max(...H.map(O=>O.track))+1:0;for(let O of l.children){let q=O;if(!q.id||W.has(q.id))continue;let Z=q.getAttribute("data-timeline-role");if(Z!=="overlay"&&Z!=="persistent-overlay")continue;let ce=q.tagName.toLowerCase();if(ce==="script"||ce==="style"||ce==="link"||ce==="meta"||window.getComputedStyle(q).display==="none")continue;let V=I(0,A);V<=0||(M=Math.max(M,V),H.push({id:q.id,label:q.getAttribute("data-timeline-label")??q.getAttribute("data-label")??q.getAttribute("aria-label")??q.id,start:0,duration:V,track:za(q,G),zIndex:Wa(q),stackingContextId:ki(q),kind:"element",tagName:ce,compositionId:q.getAttribute("data-composition-id"),compositionAncestors:te?[te]:[],parentCompositionId:te,nodePath:null,compositionSrc:null,playbackStart:nt(q),playbackRate:Oe(q),assetUrl:null,timelineRole:Z,timelineLabel:q.getAttribute("data-timeline-label"),timelineGroup:q.getAttribute("data-timeline-group"),timelinePriority:Ut(q.getAttribute("data-timeline-priority"))}),W.add(q.id))}}for(let G of s){if(G===l)continue;let O=G.getAttribute("data-composition-id");if(!O||!Ba(O))continue;let q=r.resolveStartForElement(G,0),Z=Ua(G);if((Z==null||Z<=0)&&Qc(G)!=null){let Q=Qc(G);Z=Math.max(0,Q-q)}let ce=i(O),re=Z&&Z>0?Z:ce;if(re==null||re<=0)continue;let V=I(q,re);V<=0||j.push({id:O,label:G.getAttribute("data-label")??O,start:q,duration:V,thumbnailUrl:nr(G.getAttribute("data-thumbnail-url")),avatarName:null})}let K=Math.max(1,M||1,A??0),z=F&&k==null,J=z?Number.POSITIVE_INFINITY:Math.max(1,Math.ceil(K*Math.max(1,e.canonicalFps)));return{...ei(e.canonicalFps),source:"hf-preview",type:"timeline",compositionContractVersion:1,durationSeconds:z?Number.POSITIVE_INFINITY:K,durationInFrames:J,clips:H,scenes:j,compositionWidth:Ut(l?.getAttribute("data-width"))??1920,compositionHeight:Ut(l?.getAttribute("data-height"))??1080}}var td=e=>e!==null&&Number.isFinite(e)&&e>0;function rr(e){let t=e.clipEndsSeconds.filter(r=>r===null).length;if(td(e.authoredDurationSeconds))return{seconds:e.authoredDurationSeconds,source:"authored",pendingClips:t};let n=e.clipEndsSeconds.filter(td);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 qa="data-composition-id",xb="data-composition-src",yb=`[${qa}]`,b_=`[${xb}]`,nd="style",rd="script",Sb='link[rel="stylesheet"], link[rel="preconnect"]';function dn(e){return e?Array.from(e):[]}function id(e){let{contentNode:t,head:n,documentElement:r,hasTemplate:i,compositionId:o}=e,a=dn(t.querySelectorAll(yb)),l=o?a.find(d=>d.getAttribute(qa)===o)??null:a[0]??null,s=(l??a[0])?.getAttribute(qa)?.trim()||"",u=i?null:n??null;return{innerRoot:l,authoredCompositionId:o||s||null,scriptCompositionId:s||o||null,authoredRootId:l?.getAttribute("id")?.trim()||null,styleSources:[...dn(u?.querySelectorAll(nd)),...dn(t.querySelectorAll(nd))],scriptSources:[...dn(u?.querySelectorAll(rd)),...dn(t.querySelectorAll(rd))],linkSources:dn(n?.querySelectorAll(Sb)),variableDefaultCarriers:[r,l].filter(d=>d!=null)}}var Se=Qh(Lm(),1),Dm=Se.default,aC=Se.default.stringify,sC=Se.default.fromJSON,lC=Se.default.plugin,uC=Se.default.parse,cC=Se.default.list,dC=Se.default.document,mC=Se.default.comment,fC=Se.default.atRule,pC=Se.default.rule,hC=Se.default.decl,gC=Se.default.root,bC=Se.default.CssSyntaxError,xC=Se.default.Declaration,yC=Se.default.Container,SC=Se.default.Processor,vC=Se.default.Document,AC=Se.default.Comment,EC=Se.default.Warning,wC=Se.default.AtRule,_C=Se.default.Result,CC=Se.default.Input,RC=Se.default.Rule,TC=Se.default.Root,kC=Se.default.Node;var gs="data-hf-authored-id",Im="data-hf-inner-root";function bs(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function xs(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function Zx(e){return e&&e.replace(/[^a-zA-Z0-9_-]/g,n=>`\\${n}`).replace(/^-?\d/,n=>`\\${n}`)}function Om(e){let t=e.trim();return t?Array.from(new Set([t,Zx(t)])).filter(Boolean):[]}function ey(e){return!!e&&/[\w-]/.test(e)}function ty(e,t,n){let r=Om(t).sort((l,s)=>s.length-l.length);if(r.length===0)return e;let i="",o=0,a=null;for(let l=0;l<e.length;l+=1){let s=e[l],u=l>0?e[l-1]:"";if(a){i+=s,s===a&&u!=="\\"&&(a=null);continue}if(s==='"'||s==="'"){a=s,i+=s;continue}if(s==="["){o+=1,i+=s;continue}if(s==="]"){o=Math.max(0,o-1),i+=s;continue}if(s==="#"&&o===0){let d=r.find(f=>e.startsWith(f,l+1));if(d){let f=e[l+1+d.length];if(!ey(f)){i+=n,l+=d.length;continue}}}i+=s}return i}function ny(e,t){let n=t?.trim();return n?ty(e,n,`[${gs}="${xs(n)}"]`):e}function Pm(e){return`${e}:not(:has([${Im}])), ${e} > [${Im}]`}function ry(e,t,n,r,i,o){let a=ny(e,r),l=iy(a,t,n),s=l.trim();if(!s||s==="*")return e;if(/^(html|body|:root)$/i.test(s))return o?Pm(t):e;let u=new RegExp(`\\[\\s*data-composition-id\\s*[\\^\\*\\$]?=\\s*(["'])${bs(n)}\\1\\s*\\]`,"g");if(u.test(s))return s.replace(u,"").trim()===""?Pm(t):l.replace(u,t);let d=l.match(/^\s*/)?.[0]??"",f=l.match(/\s*$/)?.[0]??"";if(i){let m=r?`[${gs}="${xs(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 iy(e,t,n){let r=bs(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 oy=new Set(["keyframes","-webkit-keyframes","font-face"]);function ay(e){return e?.type==="atrule"}function sy(e){let t=e.parent;for(;t;){if(ay(t)&&oy.has(t.name.toLowerCase()))return!0;t=t.parent}return!1}function ly(e){let t=e.parent;for(;t;){if(t.type==="rule")return!0;t=t.parent}return!1}function Gm(e,t,n,r,i){let o=t.trim();if(!e||!o)return e;let a=n||`[data-composition-id="${xs(o)}"]`,l;try{l=Dm.parse(e)}catch{return""}return l.walkRules(s=>{sy(s)||ly(s)||(s.selectors=s.selectors.map(u=>ry(u,a,o,r,i?.compoundAuthoredRoot,i?.scopeRootSelectors)))}),l.toResult({map:!1}).css}function ht(e){return JSON.stringify(e).replace(/</g,"\\u003c")}function Hm(e,t,n="[HyperFrames] composition script error:",r,i=t,o){let a=ht(t),l=ht(i),s=ht(n),u=bs(t),d=ht(o?.trim()||null),f=ht(r??null),m=ht(String.raw`\[\s*data-composition-id\s*=\s*(?:"${u}"|'${u}')\s*\]`),p=ht(String.raw`\s*\[\s*data-(?:start|duration)\s*=\s*(?:"[^"]*"|'[^']*')\s*\]`),g=ht(Om(o?.trim()||""));return`(function(){
41
41
  var __hfCompId = ${a};
42
42
  var __hfTimelineCompId = ${l};
43
43
  var __hfErrorLabel = ${s};
44
44
  var __hfAuthoredRootId = ${d};
45
- var __hfAuthoredRootAttr = ${dt(Za)};
45
+ var __hfAuthoredRootAttr = ${ht(gs)};
46
46
  var __hfEscapeAttr = function(value) {
47
47
  return (value + "").replace(/\\\\/g, "\\\\\\\\").replace(/"/g, "\\\\\\"");
48
48
  };
@@ -51,8 +51,8 @@ https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.p
51
51
  : "");
52
52
  var __hfRoot = null;
53
53
  var __hfRootSelectorPattern = ${m};
54
- var __hfTimingSelectorPattern = ${h};
55
- var __hfAuthoredRootIdForms = ${b};
54
+ var __hfTimingSelectorPattern = ${p};
55
+ var __hfAuthoredRootIdForms = ${g};
56
56
  var __hfAuthoredRootSelector = __hfAuthoredRootId
57
57
  ? "[" + __hfAuthoredRootAttr + '="' + __hfEscapeAttr(__hfAuthoredRootId) + '"]'
58
58
  : "";
@@ -367,12 +367,12 @@ ${e.replace(/<\/(script)/gi,"<\\/$1")}
367
367
  };
368
368
  __hfFindRoot();
369
369
  __hfRun();
370
- })();`}var mx=["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 sm(e){let t=e.getAttribute("id")?.trim();for(let n of mx)e.removeAttribute(n);t&&(e.removeAttribute("id"),e.setAttribute("data-hf-authored-id",t)),e.setAttribute("data-hf-inner-root","true")}var fx=8e3,px=/^(?![a-zA-Z][a-zA-Z\d+\-.]*:)(?!\/\/)(?!\/)(?!\.\.?\/).+/,hx=/\burl\(\s*(["']?)([^)"']+)\1\s*\)/g,gx=["src","href"];function bx(e){return!e||e.startsWith("http://")||e.startsWith("https://")||e.startsWith("//")||e.startsWith("data:")||e.startsWith("#")||e.startsWith("/")}function cm(e,t){if(!t)return e;let n=e.trim();if(bx(n)||!n.startsWith("../")&&n!=="..")return e;try{return new URL(n,t).href}catch{return e}}function dm(e,t){return!t||!e?e:e.replace(hx,(n,r,i)=>{let o=cm(i||"",t);return o===i?n:`url(${r||""}${o}${r||""})`})}function xx(e,t){for(let n of Array.from(e.querySelectorAll("[src], [href]")))for(let r of gx){let i=n.getAttribute(r);if(i==null)continue;let o=cm(i,t);o!==i&&n.setAttribute(r,o)}}function yx(e,t){for(let n of Array.from(e.querySelectorAll("[style]"))){let r=n.getAttribute("style");if(r==null)continue;let i=dm(r,t);i!==r&&n.setAttribute("style",i)}}function vx(e,t){for(let n of Array.from(e.querySelectorAll("style"))){let r=n.textContent||"",i=dm(r,t);i!==r&&(n.textContent=i)}}function mm(e,t){if(t){xx(e,t),yx(e,t),vx(e,t);for(let n of Array.from(e.querySelectorAll("template")))mm(n.content,t)}}function Sx(e,t){return`${e}__hf${t}`}var Ax=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"),fx)});function ns(e){for(;e.firstChild;)e.removeChild(e.firstChild);e.textContent=""}function lm(e){for(let t of Array.from(e.querySelectorAll("style, script")))t.remove()}function Ex(e){let t=document.importNode(e,!0);sm(t);let n=t.getAttribute("data-width"),r=t.getAttribute("data-height");return t.style.width=n?`${n}px`:"100%",t.style.height=r?`${r}px`:"100%",t}function wx(e,t){let n=e.trim();if(!n)return e;try{return px.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 um(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 Ii(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 _x(e){let t=new Map;for(let n of e){let r=Ii(n).authoredCompositionId||"";r&&t.set(r,(t.get(r)||0)+1)}return t}function fm(e){let t=Ii(e).authoredCompositionId;return t?!!document.querySelector(`template#${CSS.escape(t)}-template`):!1}function Cx(e){return!!e.querySelector('[data-hf-inner-root="true"]')}function Rx(e){return e.hasAttribute("data-composition-src")?!0:fm(e)?e.children.length===0||e.hasAttribute("data-hf-original-composition-id")?!0:Cx(e):!1}function is(){return Array.from(document.querySelectorAll("[data-composition-src], [data-composition-id]")).filter(t=>t.hasAttribute("data-composition-src")?!0:fm(t))}function pm(){let e=window.__hfVariablesByComp;if(!e)return;let t=new Set(is().map(n=>Ii(n).runtimeCompositionId).filter(n=>!!n));for(let n of Object.keys(e))t.has(n)||delete e[n]}function hm(e,t=_x(e)){let n=new Map,r=new Map;for(let i of e){let{authoredCompositionId:o,runtimeCompositionId:a}=Ii(i),l=Rx(i);if(!o){r.set(i,{authoredCompositionId:null,runtimeCompositionId:a});continue}let s=(t.get(o)||0)>1,u=a||o;if(l){let d=s?(n.get(o)||0)+1:0;s&&n.set(o,d),u=s?Sx(o,d):o,s?i.setAttribute("data-hf-original-composition-id",o):i.removeAttribute("data-hf-original-composition-id"),i.setAttribute("data-composition-id",u),a&&a!==u&&window.__hfVariablesByComp&&delete window.__hfVariablesByComp[a]}r.set(i,{authoredCompositionId:o,runtimeCompositionId:u})}return r}async function rs(e){let t=kc({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 m of t.linkSources){let h=(m.getAttribute("href")||"").trim();if(!h)continue;let b=e.compositionUrl?new URL(h,e.compositionUrl).href:h;if(e.compositionUrl&&um(b,e.compositionUrl)||document.head.querySelector(`link[href="${CSS.escape(b)}"]`))continue;let v=m.cloneNode(!0);Kl(v)&&(v.href=b,document.head.appendChild(v),e.injectedLinks.push(v))}(m=>{for(let h of m){let b=h.cloneNode(!0);jl(b)&&(i&&(b.textContent=om(b.textContent||"",i,s,l,{scopeRootSelectors:!0})),document.head.appendChild(b),e.injectedStyles.push(b))}})(t.styleSources);let d=m=>{let h=m.getAttribute("type")?.trim()??"",b=m.getAttribute("src")?.trim()??"";if(b){let x=wx(b,e.compositionUrl);return e.compositionUrl&&um(x,e.compositionUrl)?null:{kind:"external",src:x,type:h}}let v=m.textContent?.trim()??"";return v?{kind:"inline",content:v,type:h,scopeCompositionId:o}:null},f=t.scriptSources.map(d).filter(m=>m!==null);if(n){let m=n.getAttribute("data-width"),h=n.getAttribute("data-height"),b=e.parseDimensionPx(m),v=e.parseDimensionPx(h);m&&e.host.setAttribute("data-width",m),h&&e.host.setAttribute("data-height",h),b&&Se(e.host)&&(e.host.style.width=b),v&&Se(e.host)&&(e.host.style.height=v),n.hasAttribute("data-timeline-locked")&&e.host.setAttribute("data-timeline-locked","");let x=Ex(n);!e.authoredCompositionId&&i&&x.setAttribute("data-composition-id",i),lm(x),e.host.appendChild(x)}else if(e.hasTemplate){let m=document.importNode(r,!0);lm(m),e.host.appendChild(m)}else e.host.innerHTML=e.fallbackBodyInnerHtml;a&&Tx(e,r,a);for(let m of f){let h=document.createElement("script");if(m.type&&(h.type=m.type),h.async=!1,m.kind==="external"?h.src=m.src:m.type.toLowerCase()==="module"?h.textContent=m.content:m.scopeCompositionId?h.textContent=am(m.content,m.scopeCompositionId,"[HyperFrames] composition script error:",s,a||m.scopeCompositionId,l):h.textContent=`(function(){${m.content}})();`,document.body.appendChild(h),e.injectedScripts.push(h),m.kind==="external"){let b=await Ax(h);b.status!=="load"&&e.onDiagnostic?.({code:"external_composition_script_load_issue",details:{hostCompositionId:e.authoredCompositionId,runtimeCompositionId:e.runtimeCompositionId,hostCompositionSrc:e.hostCompositionSrc,resolvedScriptSrc:m.src,loadStatus:b.status,elapsedMs:b.elapsedMs}})}}}async function gm(e){let t=is();if(pm(),t.length===0)return;let n=hm(t),r=t.filter(i=>{if(i.hasAttribute("data-composition-src")||i.children.length>0)return!1;let o=n.get(i)?.authoredCompositionId;return o?!!document.querySelector(`template#${CSS.escape(o)}-template`):!1});if(r.length!==0)for(let i of r){let o=n.get(i),a=o?.authoredCompositionId;if(!a)continue;let l=document.querySelector(`template#${CSS.escape(a)}-template`);ns(i),await rs({host:i,authoredCompositionId:a,runtimeCompositionId:o?.runtimeCompositionId||a,hostCompositionSrc:`template#${a}-template`,sourceNode:l.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:null,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic})}}async function bm(e){let t=is();if(pm(),t.length===0)return;let n=hm(t),r=t.filter(i=>i.hasAttribute("data-composition-src"));r.length!==0&&await Promise.all(r.map(async i=>{let o=i.getAttribute("data-composition-src");if(!o)return;let a=n.get(i),l=a?.authoredCompositionId||null,s=a?.runtimeCompositionId||l||null,u=null;try{u=new URL(o,document.baseURI)}catch{u=null}ns(i);try{let d=l!=null?document.querySelector(`template#${CSS.escape(l)}-template`):null;if(d){await rs({host:i,authoredCompositionId:l,runtimeCompositionId:s,hostCompositionSrc:o,sourceNode:d.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:u,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});return}let f=await fetch(o);if(!f.ok)throw new Error(`HTTP ${f.status}`);let m=await f.text(),b=new DOMParser().parseFromString(m,"text/html");mm(b,u);let v=(l?b.querySelector(`template#${CSS.escape(l)}-template`):null)??b.querySelector("template"),x=v?v.content:b.body;await rs({host:i,authoredCompositionId:l,runtimeCompositionId:s,hostCompositionSrc:o,sourceNode:x,hasTemplate:!!v,fallbackBodyInnerHtml:b.body.innerHTML,compositionUrl:u,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,head:b.head,declaredVariableDefaults:Cn(b.documentElement),variableDeclarer:b.documentElement,onDiagnostic:e.onDiagnostic})}catch(d){e.onDiagnostic?.({code:"external_composition_load_failed",details:{hostCompositionId:l,runtimeCompositionId:s,hostCompositionSrc:o,errorMessage:d instanceof Error?d.message:"unknown_error"}}),ns(i)}}))}function Tx(e,t,n){let i={...e.declaredVariableDefaults??(Ne(t)?Cn(t):{}),...ql(e.host)};ko(e.variableDeclarer??(Ne(t)?t:null),i,n),Vl(e.host),Object.keys(i).length>0?(window.__hfVariablesByComp||(window.__hfVariablesByComp={}),window.__hfVariablesByComp[n]=i,Mo(e.host,{...Wl(e.host,i,window),...Yr()})):window.__hfVariablesByComp&&delete window.__hfVariablesByComp[n]}function kx(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Mx(e){if(!Array.isArray(e))throw new Error("expected a JSON array");if(!e.every(kx))throw new Error("every array entry must be an object");return e}function os(e){let n=e.vars.data?.captionState;return n==="dim"||n==="active"?n:void 0}function Fx(e){return Se(e)?e.dataset.captionWrapper!=="true"?e:e.querySelector(":scope > span")??null:null}function Nx(){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 Lx(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}function as(){let e=window.gsap;e&&document.querySelectorAll(".caption-group").length!==0&&fetch("caption-overrides.json").then(t=>t.ok?t.json():null).then(t=>{if(t===null)return;let n=Mx(t);if(n.length===0)return;let r=Nx();for(let i of n){let o=null;if(i.wordId&&(o=Fx(document.getElementById(i.wordId))),!o&&i.wordIndex!==void 0&&(o=r[i.wordIndex]??null),!o)continue;let a={},l={};if(i.x!==void 0&&(a.x=i.x),i.y!==void 0&&(a.y=i.y),i.scale!==void 0&&(a.scale=i.scale),i.rotation!==void 0&&(a.rotation=i.rotation),i.opacity!==void 0&&(l.opacity=i.opacity),i.fontSize!==void 0&&(l.fontSize=`${i.fontSize}px`),i.fontWeight!==void 0&&(l.fontWeight=i.fontWeight),i.fontFamily!==void 0&&(l.fontFamily=i.fontFamily),i.activeColor||i.dimColor){let u=e.getTweensOf(o).filter(m=>m.vars.color!==void 0).sort((m,h)=>m.startTime()-h.startTime()),d=u.find(m=>os(m)==="dim")??u.find(m=>os(m)===void 0),f=d?String(d.vars.color):"";for(let m of u)(os(m)??(String(m.vars.color)===f?"dim":"active"))==="dim"?i.dimColor&&(m.vars.color=i.dimColor):i.activeColor&&(m.vars.color=i.activeColor);i.dimColor&&e.set(o,{color:i.dimColor})}if(Object.keys(l).length>0&&e.set(o,l),Object.keys(a).length>0){let s=Lx(o);e.set(s,a)}}}).catch(t=>{let n=t instanceof Error?t.message:String(t);console.error(`[HyperFrames] Invalid caption-overrides.json: ${n}`)})}var ls="data-hf-edit-base-x",us="data-hf-edit-base-y",dn="data-hf-edit-original-translate",Pi=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},Dx=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},xm=/^-?(?:\d+(?:\.\d+)?|\.\d+)px$/,ss=(e,t)=>xm.test(e)&&xm.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,Ix=(e,t,n)=>{if(!e||e==="none")return`${t} ${n}`;let[r,i,o]=Dx(e);if(r===void 0)return`${t} ${n}`;if(i===void 0)return`${ss(r,t)} ${n}`;let a=o===void 0?"":` ${o}`;return`${ss(r,t)} ${ss(i,n)}${a}`},Px=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},Ox=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""}},cs=new WeakMap;function Gx(e,t){let n=cs.get(e);if(!t?.force&&n!==void 0&&e.style.getPropertyValue("translate")!==n){Be("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=Pi(e.getAttribute("data-x"))-Pi(e.getAttribute(ls)),i=Pi(e.getAttribute("data-y"))-Pi(e.getAttribute(us));e.hasAttribute(dn)||e.setAttribute(dn,Ox(e)),n===void 0&&Px(e);let o=e.getAttribute(dn)??"",a=Ix(o,`${r}px`,`${i}px`);e.style.setProperty("translate",a),cs.set(e,e.style.getPropertyValue("translate"))}function Oi(e,t){let n=e.querySelectorAll(`[${dn}]:not([${ls}]):not([${us}])`);for(let o=0;o<n.length;o++){let a=n[o];if(a===void 0||!No(a))continue;let l=a.getAttribute(dn)??"";l===""?a.style.removeProperty("translate"):a.style.setProperty("translate",l),a.removeAttribute(dn),cs.delete(a)}let r=e.querySelectorAll(`[${ls}], [${us}]`),i=0;for(let o=0;o<r.length;o++){let a=r[o];a===void 0||!No(a)||(Gx(a,t),i+=1)}return i}var ym="__hfPositionEditsSeekReapplyWrapped",vm=new WeakSet,Sm=new WeakMap,Am=new WeakMap;function Em(e){let t=e,n=()=>{try{Oi(t.document)}catch{}},r=f=>typeof f=="function"&&(vm.has(f)||!!f[ym]),i=f=>{vm.add(f);try{Object.defineProperty(f,ym,{value:!0})}catch{}},o=f=>{if(typeof f!="function"||r(f))return f;let m=function(...h){let b=f.apply(this,h);return n(),b};return i(m),m},a=(f,m)=>{let h=Sm.get(f);if(h?.has(m))return!0;let b=Object.getOwnPropertyDescriptor(f,m);if(b?.configurable===!1){let _=f[m];return typeof _=="function"&&(f[m]=o(_),n()),!1}let v=f[m],x=b?.set;return Object.defineProperty(f,m,{configurable:!0,enumerable:b?.enumerable??!0,get:()=>v,set:_=>{v=o(_),x?.call(f,_)}}),v=o(v),h??(h=new Set),h.add(m),Sm.set(f,h),n(),!0},l=(f,m)=>{let h=Am.get(t),b=Object.getOwnPropertyDescriptor(t,f);if(!h?.has(f)){if(b?.configurable===!1){let _=t[f];return _?a(_,m):!1}let x=t[f];Object.defineProperty(t,f,{configurable:!0,enumerable:b?.enumerable??!0,get:()=>x,set:_=>{x=_,x&&a(x,m)}}),h??(h=new Set),h.add(f),Am.set(t,h)}let v=t[f];return v?a(v,m):!1},s=()=>{let f=l("__hf","seek"),m=l("__player","renderSeek");return f&&m};if(s())return;let u=120,d=t.setInterval(()=>{if(s()){t.clearInterval(d);return}u-=1,u<=0&&t.clearInterval(d)},50)}function Gi(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 Hi(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function ds(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 wm=new Set(["img","video","audio","source"]);function Hx(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 Bx(e){return e.replace(/[;{}<>\r\n]/g,"")}function Ux(e){if(Hi(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 ms(e,t){let n=e.closest("[data-composition-id]"),r=t.get(n);if(r)return r;let i=Gi(e);return t.set(n,i),i}function Wx(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 Vx(e){return e.querySelector("[data-hf-root]")??e.getElementById("stage")??e.body?.firstElementChild??e.body}function zx(e,t){let n=new Set,r=Vx(e);r&&n.add(r);for(let i of Array.from(e.querySelectorAll("[data-composition-id]")))n.add(i);for(let i of n){let o=ms(i,t);for(let[a,l]of Object.entries(o)){let s=Ux(l);s!==null&&Se(i)&&i.style.setProperty(`--${a}`,Bx(s))}}}function fs(e){let t=new Map;zx(e,t);for(let n of Array.from(e.querySelectorAll("[data-var-src]"))){let r=n.getAttribute("data-var-src")?.trim();if(!r)continue;if(!wm.has(n.tagName.toLowerCase())){console.warn(`[hyperframes] Ignoring data-var-src on <${n.tagName.toLowerCase()}>: variable-bound src is only allowed on ${Array.from(wm).join("/")}.`);continue}let i=Hx(ms(n,t)[r]);if(i!==null){if(!ds(i)){console.warn(`[hyperframes] Ignoring data-var-src="${r}": unsafe URL protocol.`);continue}n.setAttribute("src",i)}}for(let n of Array.from(e.querySelectorAll("[data-var-text]"))){let r=n.getAttribute("data-var-text")?.trim();if(!r)continue;let i=ms(n,t)[r];Hi(i)&&Wx(n,String(i))}}var mt=new Map,qx="data-hf-color-grading-canvas",$x="__hf_color_grading_canvas__";function Im(){if(typeof MutationObserver>"u"||typeof document>"u")return;let e=document.documentElement;if(!e)return;let t=r=>{Se(r)&&(r.hasAttribute(gi)||r.setAttribute(gi,r.style.opacity))},n=r=>{if(Ne(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 jx=16,Kx=4,fn={enabled:!1,position:.5,softness:0,lineWidth:2},ps=["#000000","#ffffff"],Yx=["#1a1a1a","#f5f5dc"],xr=3,Xx=xr-1,Jx=5,hs=`${Ze}.0`,_m=`${Ze-1}.0`,Qx=`${xr}.0`,Zx=`${(Xx+.5)/xr}`;function Bi(e){let t=e.getAttribute(Wn);return t==null?null:hc(t,Gi(e))}var ey=["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(`
371
- `),ty=["#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);"," float blur = clamp(u_blur, 0.0, 1.0);"," if (blur > 0.0 && u_blurReady > 0.5) base = mix(base, sampleBlur(uv), blur);"," 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);"," }"," 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;"," 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;"," }"," 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;"," float texelX = 1.0 / max(u_resolution.x * max(u_uvScale.x, 0.00001), 1.0);"," vec2 tapeUv = sampleUv + vec2(tapeShift * texelX, 0.0);"," vec4 base = samplePrepared(tapeUv);"," 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);"," }"," 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);"," }"," return base;","}","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);","}","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);","}","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);","}","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);","}","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);","}","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);","}","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));","}","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);","}","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);","}","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);","}","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) * ${_m};`," float lower = floor(position);",` float upper = min(lower + 1.0, ${_m});`,` float y = (row + 0.5) / ${Qx};`,` vec4 before = texture2D(u_advanced, vec2((lower + 0.5) / ${hs}, y));`,` vec4 after = texture2D(u_advanced, vec2((upper + 0.5) / ${hs}, y));`," return mix(before, after, position - lower);","}","vec4 advancedConfig(float index){",` return texture2D(u_advanced, vec2((index + 0.5) / ${hs}, ${Zx}));`,"}","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;","}","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"," );","}","float decodeSigned(float value){ return (value * 255.0 - 128.0) / 127.0; }","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;","}","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);"," 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);"," 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;","}","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));","}","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);","}","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);","}","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;","}","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);","}","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);","}","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);"," 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;"," 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);"," 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);"," }"," 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);"," }"," 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));"," if (u_bloomReady > 0.5 && u_bloom > 0.0) color += sampleBloom(uv) * u_bloom;"," color = applyScanlines(clamp(color, 0.0, 1.0), clamp(u_scanlines, 0.0, 1.0));"," 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;"," float warpActive = step(0.0001, u_crtCurvature);"," color *= mix(1.0, displayMask, warpActive);"," vec3 graded = clamp(color, 0.0, 1.0);"," 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;"," }"," gl_FragColor = vec4(graded, sampleColor.a);","}"].join(`
372
- `),ny=["#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(`
373
- `),ry=["#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(`
374
- `),iy=["#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(`
375
- `);function Ut(e){return fe(e)||Oe(e)}function Cm(e){let t=window.getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function Rm(e,t,n){let r=e.createShader(n);return r?(e.shaderSource(r,t),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:(N("runtime.colorGrading.compileShader",e.getShaderInfoLog(r)),e.deleteShader(r),null)):null}function qi(e,t=ty){let n=Rm(e,ey,e.VERTEX_SHADER),r=Rm(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:(N("runtime.colorGrading.linkProgram",e.getProgramInfoLog(i)),e.deleteProgram(i),null)):null}function Ui(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 oy(e,t){let n=qi(e,ny);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 ay(e,t){let n=qi(e,ry);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 sy(e,t){let n=qi(e,iy);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 hr(e,t=e.UNSIGNED_BYTE,n=e.LINEAR){let r=Ui(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 Vi(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 gs(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 Tm(e,t,n){t&&e.deleteProgram(t);for(let r of n)r&&e.deleteTexture(r)}function vs(e){let t=e.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});if(!t)return null;let n=qi(t),r=Ui(t),i=Ui(t,t.NEAREST),o=Ui(t,t.NEAREST);if(!n||!r||!i||!o)return Tm(t,n,[r,i,o]),null;let a=t.createBuffer();return a?(t.bindBuffer(t.ARRAY_BUFFER,a),t.bufferData(t.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),t.STATIC_DRAW),{gl:t,program:{program:n,texture:r,lutTexture:i,advancedTexture:o,advancedSignature:null,quad:a,position:t.getAttribLocation(n,"a_pos"),source:t.getUniformLocation(n,"u_source"),blurSource:t.getUniformLocation(n,"u_blurSource"),bloomSource:t.getUniformLocation(n,"u_bloomSource"),kuwaharaSource:t.getUniformLocation(n,"u_kuwaharaSource"),lut:t.getUniformLocation(n,"u_lut"),advanced:t.getUniformLocation(n,"u_advanced"),resolution:t.getUniformLocation(n,"u_resolution"),uvScale:t.getUniformLocation(n,"u_uvScale"),uvOffset:t.getUniformLocation(n,"u_uvOffset"),blurReady:t.getUniformLocation(n,"u_blurReady"),bloomReady:t.getUniformLocation(n,"u_bloomReady"),kuwaharaReady:t.getUniformLocation(n,"u_kuwaharaReady"),lutEnabled:t.getUniformLocation(n,"u_lutEnabled"),lutSize:t.getUniformLocation(n,"u_lutSize"),lutTextureSize:t.getUniformLocation(n,"u_lutTextureSize"),lutDomainMin:t.getUniformLocation(n,"u_lutDomainMin"),lutDomainMax:t.getUniformLocation(n,"u_lutDomainMax"),lutIntensity:t.getUniformLocation(n,"u_lutIntensity"),shadowWheel:t.getUniformLocation(n,"u_shadowWheel"),midtoneWheel:t.getUniformLocation(n,"u_midtoneWheel"),highlightWheel:t.getUniformLocation(n,"u_highlightWheel"),rgbCurvesEnabled:t.getUniformLocation(n,"u_rgbCurvesEnabled"),hueCurvesEnabled:t.getUniformLocation(n,"u_hueCurvesEnabled"),secondaryCount:t.getUniformLocation(n,"u_secondaryCount"),adjustUniforms:gs(t,n,bi),detailUniforms:gs(t,n,ua),effectUniforms:gs(t,n,ca),grainSeed:t.getUniformLocation(n,"u_grainSeed"),effectTime:t.getUniformLocation(n,"u_effectTime"),paletteSize:t.getUniformLocation(n,"u_paletteSize"),palette0:t.getUniformLocation(n,"u_palette0"),palette1:t.getUniformLocation(n,"u_palette1"),palette2:t.getUniformLocation(n,"u_palette2"),palette3:t.getUniformLocation(n,"u_palette3"),palette4:t.getUniformLocation(n,"u_palette4"),palette5:t.getUniformLocation(n,"u_palette5"),intensity:t.getUniformLocation(n,"u_intensity"),compareEnabled:t.getUniformLocation(n,"u_compareEnabled"),comparePosition:t.getUniformLocation(n,"u_comparePosition"),compareSoftness:t.getUniformLocation(n,"u_compareSoftness"),compareLineWidth:t.getUniformLocation(n,"u_compareLineWidth")}}):(Tm(t,n,[r,i,o]),null)}function ly(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function uy(e){if(!ly(e))return{...fn};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,fn.position,0,1),softness:t(e.softness,fn.softness,0,.25),lineWidth:t(e.lineWidth,fn.lineWidth,0,12)}}function Pm(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 $i(e){return e instanceof Error?e.message:"LUT failed to load"}function cy(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 Om(e){let t=e.id||e.currentSrc||e.getAttribute("src")||`${e.tagName}:${Array.prototype.indexOf.call(e.parentNode?.children??[],e)}`;return cy(t)}function Ss(e){let t=Pm(e);if("error"in t)return{state:"error",message:t.error};let n=mt.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=>$u(o,{maxSize:fi})),i={state:"pending",promise:r};for(;mt.size>=jx;){let o=mt.keys().next().value;if(!o)break;mt.delete(o)}return mt.set(t.href,i),r.then(o=>{mt.get(t.href)===i&&mt.set(t.href,{state:"ready",lut:o})},o=>{mt.get(t.href)===i&&mt.set(t.href,{state:"error",message:$i(o)})}),i}function km(e,t,n){if(e.lut?.src===t)return e.lut;let r=ea(n),{gl:i,program:o}=e;try{return Gm(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=$i(a),e.lutLoadingSrc=null,N("runtime.colorGrading.uploadLut",a),null}}async function dy(e){let t=Ss(e);if(t.state==="ready")return t.lut;if(t.state==="pending")return t.promise;throw new Error(t.message)}function Gm(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 my(e,t,n){let r=ea(n),{gl:i,program:o}=e;return Gm(i,o.lutTexture,r),{src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height}}function nt(e,t){e.deleteTexture(t.texture),e.deleteFramebuffer(t.framebuffer)}function As(e){let t=e.effectTargets;t&&(e.gl.deleteProgram(t.blurProgram.program),nt(e.gl,t.scratch),nt(e.gl,t.blur),t.bloom&&nt(e.gl,t.bloom),e.effectTargets=null)}function Es(e){let t=e.kuwaharaTargets;t&&(e.gl.deleteProgram(t.horizontalProgram.program),e.gl.deleteProgram(t.resolveProgram.program),nt(e.gl,t.moments),nt(e.gl,t.output),e.kuwaharaTargets=null)}function Wi(e,t=!1){As(e),Es(e),fy(e.gl,e.program),t&&e.gl.getExtension("WEBGL_lose_context")?.loseContext()}function fy(e,t){e.deleteTexture(t.texture),e.deleteTexture(t.lutTexture),e.deleteTexture(t.advancedTexture),e.deleteBuffer(t.quad),e.deleteProgram(t.program)}function py(e){let t=vs(e.canvas);return t?(Wi(e),e.gl=t.gl,e.program=t.program,e.lut=null,e.lutLoadingSrc=null,e.lutError=null,e.effectError=null,!0):!1}function ys(e){if(!e.sourceHidden)return;e.element.removeAttribute(Vn);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 hy(e){if(e.effectTargets)return e.effectTargets;let{gl:t}=e,n=oy(t,e.program.quad),r=hr(t),i=hr(t);return!n||!r||!i?(n&&t.deleteProgram(n.program),r&&nt(t,r),i&&nt(t,i),e.effectError="Framebuffer effects unavailable",null):(e.effectError=null,e.effectTargets={blurProgram:n,scratch:r,blur:i,bloom:null},e.effectTargets)}function gy(e,t){return t.bloom||(t.bloom=hr(e.gl),e.effectError=t.bloom?null:"Framebuffer effects unavailable"),t.bloom}function Mm(e){let t=e.effectTargets;t?.bloom&&(nt(e.gl,t.bloom),t.bloom=null)}function by(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=ay(t,e.program.quad),o=sy(t,e.program.quad),a=hr(t,n.HALF_FLOAT_OES,t.NEAREST),l=hr(t);return!i||!o||!a||!l?(xy(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 xy(e,t,n,r,i){t&&e.deleteProgram(t.program),n&&e.deleteProgram(n.program),r&&nt(e,r),i&&nt(e,i)}function Hm(e,t,n,r,i){let o=Math.max(1,Math.ceil(r)),a=Math.max(1,Math.ceil(i));return Vi(e,t,o,a),Vi(e,n,o,a),{width:o,height:a}}function zi(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),gr(e,t)}function yy(e,t,n,r,i,o,a){let l=Hm(e,t.scratch,r,i/2,o/2),s=a/2;zi(e,t.blurProgram,n,t.scratch,l,{x:1,y:0},s,!0,.5),zi(e,t.blurProgram,t.scratch.texture,r,l,{x:0,y:1},s,!0)}function vy(e,t,n,r,i,o,a){let l=n;for(let s=0;s<Math.max(1,Math.floor(a));s++)zi(e,t.blurProgram,l,t.scratch,i,{x:1,y:0},o),zi(e,t.blurProgram,t.scratch.texture,r,i,{x:0,y:1},o),l=r.texture}function gr(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 Sy(e,t,n,r,i,o,a,l){Vi(e,t.moments,i.width,i.height),Vi(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),gr(e,s);let u=t.resolveProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.output.framebuffer),e.useProgram(u.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.moments.texture),e.uniform1i(u.moments,0),e.uniform2f(u.texel,1/i.width,1/i.height),e.uniform1f(u.radius,l.kuwaharaRadius),e.uniform1f(u.sharpness,l.kuwaharaSharpness),e.uniform1f(u.saturation,l.kuwaharaSaturation),gr(e,u)}function Ay(e,t,n,r){if(n<=0)return!1;let i=Hm(e.gl,t.scratch,t.blur,r.width,r.height);return vy(e.gl,t,e.program.texture,t.blur,i,.75+Math.pow(n,1.35)*32,n>.55?3:2),!0}function Ey(e,t,n,r,i,o){if(n<=0)return Mm(e),null;o||Mm(e);let a=o?gy(e,t):t.blur;return a?(yy(e.gl,t,e.program.texture,a,i.width,i.height,r),a.texture):null}function wy(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&&As(e),{blurReady:!1,bloomReady:!1,blurTexture:i.texture,bloomTexture:i.texture};let l=hy(e);if(!l)return{blurReady:!1,bloomReady:!1,blurTexture:i.texture,bloomTexture:i.texture};let s=Ay(e,l,o,n),u=Ey(e,l,a,t.effects.bloomRadius,n,s);return{blurReady:s,bloomReady:u!==null,blurTexture:l.blur.texture,bloomTexture:u??i.texture}}function _y(e,t,n,r,i,o,a){let l=t.effects.kuwahara;if(l<=0&&!o)return e.kuwaharaTargets&&a&&Es(e),{kuwaharaReady:!1,kuwaharaTexture:e.program.texture};let s=by(e);return!s||l<=0?{kuwaharaReady:!1,kuwaharaTexture:s?.output.texture??e.program.texture}:(Sy(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 Bm(e,t,n,r,i={}){let o=i.releaseIdleTargets??!0;e.effectError=null;let a=wy(e,t,n,o),l=_y(e,t,n,r,a.blurReady,i.preserveKuwahara??!1,o);return{...a,...l}}function Cy(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=Pm(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=Ss(t);return i.state==="ready"?km(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||(km(e,r.href,o),We(e))},o=>{e.destroyed||e.grading.lut?.src.trim()!==t||(e.lut=null,e.lutError=$i(o),e.lutLoadingSrc=null,We(e))})),null)}function fr(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&&Ut(n))return n;try{let r=document.querySelector(t);return r&&Ut(r)?r:null}catch{return null}}if(e.hfId){let t=document.querySelector(`[data-hf-id="${CSS.escape(e.hfId)}"]`);if(t&&Ut(t))return t}if(e.id){let t=document.getElementById(e.id);if(t&&Ut(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&&Ut(r)?r:null}catch{return null}}function Um(e){return fe(e)?e.videoWidth>0&&e.videoHeight>0?{width:e.videoWidth,height:e.videoHeight}:null:Oe(e)&&e.naturalWidth>0&&e.naturalHeight>0?{width:e.naturalWidth,height:e.naturalHeight}:null}function Wm(e){return fe(e)?e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&e.videoWidth>0&&e.videoHeight>0:Oe(e)?e.complete&&e.naturalWidth>0&&e.naturalHeight>0:!1}function Vm(e){let t=bt(e);return t&&Wm(t)?t:null}function Fm(e){if(!fe(e))return!1;let t=Vm(e);if(!t)return!1;let n=window.getComputedStyle(t);return n.display!=="none"&&n.visibility!=="hidden"}function Ry(e){return Oe(e)&&e.classList.contains("__render_frame__")}function Ty(e,t){t.parentNode&&t.nextSibling!==e.canvas&&t.parentNode.insertBefore(e.canvas,t.nextSibling)}function zm(e){if(fe(e)){let t=Vm(e);if(t)return t}return Wm(e)?e:null}function Nm(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 ky(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=Nm(o,"x"),l=Nm(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 qm(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 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 u=ky(o||"center"),d=(e-l)*u.x/e,f=(t-s)*u.y/t;return{scaleX:l/e,scaleY:s/t,offsetX:d,offsetY:f}}function My(e,t){window.getComputedStyle(t).position==="static"&&(e.touchedParent||(e.touchedParent=t,e.parentInlinePosition=t.style.position||null),t.style.position="relative")}function Lm(e,t){return Math.max(0,Math.round(e>0?e:t))}function Fy(e,t){let{element:n,canvas:r}=e,i=n.parentElement;i&&My(e,i);let o=window.getComputedStyle(t);xc(r.style,o),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=Lm(n.offsetWidth,a.width),s=Lm(n.offsetHeight,a.height);if(l<=0||s<=0)return r.style.display="none",null;let u=Math.max(1,window.devicePixelRatio||1),d=Math.round(l*u),f=Math.round(s*u);return r.width!==d&&(r.width=d),r.height!==f&&(r.height=f),{width:d,height:f}}function mn(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 Wt(e,t,n,r){e.set(r,(t*Ze+n)*4)}function Ct(e,t){return Math.min(1,Math.max(1/255,(e*(127/t)+128)/255))}function bs(e,t,n){return e.length>=3?na(e,t,n):new Float32Array(Ze)}function Bt(e,t){return e[t]??0}function Ny(e,t,n){let r=tn(t.red),i=tn(t.green),o=tn(t.blue),a=tn(t.master),l=bs(n.hueVsHue,-180,180),s=bs(n.hueVsSaturation,-1,1),u=bs(n.hueVsLuma,-1,1);for(let d=0;d<Ze;d+=1)Wt(e,0,d,[Bt(r,d),Bt(i,d),Bt(o,d),Bt(a,d)]),Wt(e,1,d,[Ct(Bt(l,d),180),Ct(Bt(s,d),1),Ct(Bt(u,d),1),1])}function Ly(e,t,n){let r=n*Jx;Wt(e,2,r,[t.key.hue.center/360,t.key.hue.range/180,t.key.hue.softness/180,1]),Wt(e,2,r+1,[t.key.saturation.min,t.key.saturation.max,t.key.saturation.softness/.5,0]),Wt(e,2,r+2,[t.key.luma.min,t.key.luma.max,t.key.luma.softness/.5,0]),Wt(e,2,r+3,[Ct(t.correction.hueShift,180),Ct(t.correction.saturation,1),Ct(t.correction.luma,1),Ct(t.correction.temperature,1)]),Wt(e,2,r+4,[Ct(t.correction.tint,1),.5,.5,1])}function Dy(e,t,n){let r=new Float32Array(Ze*xr*4);Ny(r,e,t);let i=0;for(let o of n)o.enabled&&(Ly(r,o,i),i+=1);return r}var Dm=new WeakMap;function Iy(e,t,n){let r=Dm.get(e);if(r?.hueCurves===t&&r.secondaries===n)return r.signature;let i=JSON.stringify([e,t,n]);return Dm.set(e,{hueCurves:t,secondaries:n,signature:i}),i}function Py(e,t,n,r){let{curves:i,hueCurves:o}=n,a=Iy(i,o,r);if(t.advancedSignature===a)return;let l=Uint8Array.from(Dy(i,o,r),Bn);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,Ze,xr,0,e.RGBA,e.UNSIGNED_BYTE,l),t.advancedSignature=a}function xs(e,t,n){e.uniform3f(t,n.hue/360,n.amount,n.level)}function $m(e,t,n,r,i,o,a,l,s,u,d,f){e.uniform1i(t.source,0),e.uniform1i(t.blurSource,1),e.uniform1i(t.lut,2),e.uniform1i(t.kuwaharaSource,3),e.uniform1i(t.bloomSource,4),e.uniform1i(t.advanced,5),e.uniform2f(t.resolution,s.width,s.height),e.uniform2f(t.uvScale,u.scaleX,u.scaleY),e.uniform2f(t.uvOffset,u.offsetX,u.offsetY),e.uniform1f(t.blurReady,i?1:0),e.uniform1f(t.bloomReady,o?1:0),e.uniform1f(t.kuwaharaReady,a?1:0),e.uniform1f(t.lutEnabled,r?1:0),e.uniform1f(t.lutSize,r?.size??2),e.uniform2f(t.lutTextureSize,r?.textureWidth??1,r?.textureHeight??1),e.uniform3f(t.lutDomainMin,r?.domainMin[0]??0,r?.domainMin[1]??0,r?.domainMin[2]??0),e.uniform3f(t.lutDomainMax,r?.domainMax[0]??1,r?.domainMax[1]??1,r?.domainMax[2]??1),e.uniform1f(t.lutIntensity,n.lut?.intensity??0);let{curves:m,hueCurves:h,secondaries:b}=n,v=fa(m),x=pa(h),_=ha(b)?b.reduce((F,D)=>F+Number(D.enabled),0):0;(v||x||_>0)&&Py(e,t,n,b),xs(e,t.shadowWheel,n.wheels.shadows),xs(e,t.midtoneWheel,n.wheels.midtones),xs(e,t.highlightWheel,n.wheels.highlights),e.uniform1f(t.rgbCurvesEnabled,v?1:0),e.uniform1f(t.hueCurvesEnabled,x?1:0),e.uniform1f(t.secondaryCount,_);for(let[F,D]of t.adjustUniforms)e.uniform1f(D,n.adjust[F]);for(let[F,D]of t.detailUniforms)e.uniform1f(D,n.details[F]);e.uniform1f(t.grainSeed,d),e.uniform1f(t.effectTime,f);for(let[F,D]of t.effectUniforms)e.uniform1f(D,n.effects[F]);let T=n.palette??(n.effects.engraving>0||n.effects.crosshatch>0?Yx:ps),C=T[T.length-1]??ps[1];e.uniform1f(t.paletteSize,T.length),mn(e,t.palette0,T[0]??ps[0]),mn(e,t.palette1,T[1]??C),mn(e,t.palette2,T[2]??C),mn(e,t.palette3,T[3]??C),mn(e,t.palette4,T[4]??C),mn(e,t.palette5,T[5]??C),e.uniform1f(t.intensity,n.intensity),e.uniform1f(t.compareEnabled,l.enabled?1:0),e.uniform1f(t.comparePosition,l.position),e.uniform1f(t.compareSoftness,l.softness),e.uniform1f(t.compareLineWidth,l.lineWidth)}function Oy(e){if(!e.sourceHidden){let t=e.element.getAttribute(gi);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(Vn,"true"),e.element.style.setProperty("opacity","0","important"),e.sourceHidden=!0}function ft(e){let t=mc.find(n=>n.path===e);if(!t)throw new Error(`Missing color-grading animation property: ${e}`);return t}var jm=ft("intensity"),Km=ft("lut.intensity"),Ym=ft("adjust.exposure"),Xm=ft("effects.kuwahara"),Jm=[["blur",ft("effects.blur")],["bloom",ft("effects.bloom")],["kuwahara",Xm],["pixelate",ft("effects.pixelate")],["ascii",ft("effects.ascii")],["dither",ft("effects.dither")]],Qm=[jm,Km,Ym,...Jm.map(([,e])=>e)];function Vt(e,t){let n=e.style.getPropertyValue(t.name);if(!n)return null;let r=Number(n);return Number.isFinite(r)?Math.min(t.max,Math.max(t.min,r)):null}function pr(e,t){return t!==null&&(gc(t)||Qm.some(n=>Vt(e,n)!==null))}function Gy(e,t){let n=null;for(let[r,i]of Jm){let o=Vt(e,i);o!==null&&(n??(n={...t.effects}),n[r]=o)}return n}function Hy(e){let{element:t,grading:n}=e,r=Vt(t,jm),i=Vt(t,Km),o=Vt(t,Ym),a=Gy(t,n);if(![r,i,o].some(u=>u!==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 Zm(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 ef(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 We(e){if(e.destroyed||e.contextLost)return!1;let t=zm(e.element);if(!t)return e.hasDrawn||(e.canvas.style.display="none"),!1;let n=Um(t);if(!n)return!1;let r=Se(t)?t:e.element,i=e.element.style.getPropertyValue("opacity"),o=e.element.style.getPropertyPriority("opacity"),a=e.sourceHidden&&i==="0"&&o==="important",l=e.element.style.getPropertyValue("visibility"),s=Ry(t);s&&Ty(e,t),a&&!s&&(e.sourceInlineOpacity!==null?e.element.style.setProperty("opacity",e.sourceInlineOpacity,e.sourceInlineOpacityPriority||""):e.element.style.removeProperty("opacity"));let u=window.getComputedStyle(s?t:e.element);e.sourceOpacityForCanvas=u.opacity||"1",a&&!s&&e.element.style.setProperty("opacity","0","important"),e.sourceVisibleForCanvas=(s||l!=="hidden")&&u.visibility!=="hidden";let d=Fy(e,r);if(!d)return!1;let f=window.getComputedStyle(r),m=qm(d.width,d.height,n.width,n.height,f.objectFit,f.objectPosition),{gl:h,program:b}=e;try{let v=Hy(e),x=Cy(e);Zm(h,b.texture,t);let _=Vt(e.element,Xm)!==null,T=Bm(e,v,d,m,{preserveKuwahara:_});h.bindFramebuffer(h.FRAMEBUFFER,null),h.viewport(0,0,d.width,d.height),h.useProgram(b.program),ef(h,b,T);let C=window.__player?.getTime?.(),F=typeof C=="number"&&Number.isFinite(C)?Math.max(0,C):fe(e.element)?Math.max(0,e.element.currentTime):0,D=e.grainSeed+Math.floor(F*60);return $m(h,b,v,x,T.blurReady,T.bloomReady,T.kuwaharaReady,e.compare,d,m,D,F),gr(h,b),Oy(e),e.hasDrawn=!0,e.drawError=null,!0}catch(v){return e.drawError=v instanceof Error?v.message:"Shader draw failed",N("runtime.colorGrading.drawEntry",v),!1}}function By(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 Uy(){let e=document.createElement("canvas"),t=vs(e);return t?{canvas:e,...t,lut:null,effectTargets:null,kuwaharaTargets:null,effectError:null}:null}function Wy(e,t){let n=t?void 0:window.__player?.getTime?.();return typeof n=="number"&&Number.isFinite(n)?Math.max(0,n):fe(e)?Math.max(0,e.currentTime):0}function Vy(e,t,n,r){let i=zm(t);if(!i)return null;let o=Um(i);if(!o)return null;let a=By(t,o,n);e.canvas.width=a.width,e.canvas.height=a.height;let l=Se(i)?i:t,s=window.getComputedStyle(l),u=qm(a.width,a.height,o.width,o.height,s.objectFit,s.objectPosition);return Zm(e.gl,e.program.texture,i),{dimensions:a,uv:u,effectTime:Wy(t,r),grainSeed:Om(t)+(fe(t)?Math.floor(t.currentTime*60):0)}}async function zy(e,t,n,r,i=!1){let o=Vy(e,t,r,i);if(!o)return null;let{dimensions:a,uv:l,grainSeed:s,effectTime:u}=o,d=[];for(let f of n.slice(0,32)){let m=xi(f.grading);if(!m){d.push({id:f.id,dataUrl:null,error:"Invalid grading"});continue}let h=null;try{m.lut&&(e.lut?.src!==m.lut.src&&(e.lut=my(e,m.lut.src,await dy(m.lut.src))),h=e.lut),d.push({id:f.id,dataUrl:qy(e,m,h,a,l,s,u)})}catch(b){d.push({id:f.id,dataUrl:null,error:$i(b)})}}return{...a,images:d}}function qy(e,t,n,r,i,o,a){let{canvas:l,gl:s,program:u}=e,d=Bm(e,t,r,i,{releaseIdleTargets:!1});return s.bindFramebuffer(s.FRAMEBUFFER,null),s.viewport(0,0,r.width,r.height),s.useProgram(u.program),ef(s,u,d),n||(e.lut=null),$m(s,u,t,n,d.blurReady,d.bloomReady,d.kuwaharaReady,fn,r,i,o,a),gr(s,u),l.toDataURL("image/png")}function tt(e,t,n,r){t.addEventListener(n,r),e.cleanup.push(()=>t.removeEventListener(n,r))}function $y(e){e.animationFrame!==null&&(window.cancelAnimationFrame(e.animationFrame),e.animationFrame=null),e.videoFrameHandle!==null&&fe(e.element)&&(e.element.cancelVideoFrameCallback?.(e.videoFrameHandle),e.videoFrameHandle=null)}function br(e){if(e.destroyed||!fe(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,We(e),!e.destroyed&&!t.paused&&!t.ended&&br(e)});return}e.animationFrame=window.requestAnimationFrame(()=>{e.animationFrame=null,We(e),!e.destroyed&&!t.paused&&!t.ended&&br(e)})}function jy(e){let t=()=>{We(e)};if(tt(e,e.element,"load",t),tt(e,e.element,"loadedmetadata",t),tt(e,e.element,"loadeddata",t),tt(e,e.element,"seeked",t),tt(e,e.element,"timeupdate",t),tt(e,window,"resize",t),fe(e.element)&&(tt(e,e.element,"play",()=>br(e)),tt(e,e.element,"pause",t)),tt(e,e.canvas,"webglcontextlost",n=>{n.preventDefault(),e.contextLost=!0,e.drawError="WebGL context lost",e.canvas.style.display="none",ys(e)}),tt(e,e.canvas,"webglcontextrestored",()=>{if(e.contextLost=!1,!py(e)){e.contextLost=!0,e.drawError="WebGL context restore failed",ys(e);return}e.drawError=null,We(e)}),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(),We(e)}))});o.observe(e.element,{attributes:!0,attributeFilter:["style"]}),e.cleanup.push(()=>o.disconnect())}}function Ky(e){if(e.destroyed)return null;e.destroyed=!0,$y(e),e.resizeObserver?.disconnect();for(let t of e.cleanup)t();return e.cleanup.length=0,e.canvas.remove(),As(e),Es(e),ys(e),e.touchedParent&&(e.parentInlinePosition===null?e.touchedParent.style.removeProperty("position"):e.touchedParent.style.position=e.parentInlinePosition),{canvas:e.canvas,gl:e.gl,program:e.program,effectTargets:null,kuwaharaTargets:null,effectError:null}}function tf(e,t){return e.removeAttribute("style"),t.id?e.id=`${sc}${t.id}`:e.removeAttribute("id"),e.className=$x,e.setAttribute(qx,"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 Yy(e){return tf(document.createElement("canvas"),e)}function nf(e){let t=new WeakMap,n=new Set,r=[],i=null,o=null,a=Promise.resolve(),l=!1,s=(S,A,w)=>{let R=t.get(S);if(R)return R.grading=A,R.source=w,We(R),fe(S)&&!S.paused&&br(R),!0;let I=r.pop();if(I)tf(I.canvas,S);else{let j=Yy(S),X=vs(j);if(!X)return j.remove(),!1;I={canvas:j,gl:X.gl,program:X.program,effectTargets:null,kuwaharaTargets:null,effectError:null}}let H={element:S,...I,grading:A,compare:{...fn},lut:null,lutLoadingSrc:null,lutError:null,drawError:null,effectTargets:null,kuwaharaTargets:null,effectError:null,source:w,animationFrame:null,videoFrameHandle:null,resizeObserver:null,cleanup:[],touchedParent:null,parentInlinePosition:null,sourceHidden:!1,sourceInlineOpacity:null,sourceInlineOpacityPriority:"",sourceOpacityForCanvas:window.getComputedStyle(S).opacity||"1",sourceVisibleForCanvas:window.getComputedStyle(S).visibility!=="hidden",hasDrawn:!1,contextLost:!1,grainSeed:Om(S),destroyed:!1};return t.set(S,H),n.add(S),jy(H),We(H),fe(S)&&!S.paused&&br(H),!0},u=(S,A)=>{if(l)return!1;let w=fr(S);if(!w)return!1;let R=t.get(w);if(!R){let I=Bi(w);if(!pr(w,I)||!s(w,I,"attribute"))return!1;R=t.get(w)}return R?(R.compare=uy(A),We(R),!0):!1},d=S=>{let A=t.get(S);if(!A)return;let w=Ky(A);w&&(A.contextLost||r.length>=Kx?Wi(w,!0):r.push(w)),t.delete(S),n.delete(S)},f=()=>{if(l)return 0;let S=new Set;document.querySelectorAll(`video[${Wn}], img[${Wn}]`).forEach(w=>{if(!Ut(w))return;S.add(w);let R=Bi(w);pr(w,R)&&(Cm(w)||Fm(w))?s(w,R,"attribute"):d(w)});for(let w of n){let R=t.get(w);R&&(!w.isConnected||R.source==="attribute"&&!S.has(w))&&d(w)}return n.size},m=()=>{if(l)return 0;let S=0;for(let A of n){let w=t.get(A);w&&We(w)&&(S+=1)}return S},h=async()=>{let S=new Set;for(let A of n){let w=t.get(A)?.grading.lut;if(!w?.src.trim()||(w.intensity??1)<=0)continue;let R=Ss(w.src);R.state==="pending"&&S.add(R.promise)}return S.size>0&&await Promise.allSettled(S),m(),S.size},b=()=>{if(l)return 0;let S=0;for(let A of n){let w=t.get(A);!w||!Qm.some(I=>Vt(A,I)!==null)||fe(A)&&!A.paused&&!A.ended||We(w)&&(S+=1)}return S},v=(S,A)=>{if(l)return!1;let w=fr(S);if(!w)return!1;let R=xi(A);return pr(w,R)?s(w,R,"live"):(d(w),!0)},x=(S,A)=>{if(!Ut(S))return!1;let w=t.get(S);if(!w){if(!A)return!1;let R=Bi(S);return pr(S,R)&&s(S,R,"attribute")}return w.sourceVisibleForCanvas=A,!A&&w.source==="attribute"&&d(S),!0},_=S=>{let A=fr(S);if(!A)return{state:"missing",message:"Media not found"};let w=t.get(A);if(w)return w.effectError?{state:"unavailable",message:w.effectError}:w.drawError?{state:"unavailable",message:w.drawError}:w.lutError?{state:"unavailable",message:`LUT error: ${w.lutError}`}:w.grading.lut&&w.lutLoadingSrc?{state:"pending",message:"Loading LUT"}:w.canvas.style.display==="none"?{state:"pending",message:"Waiting for media frame"}:{state:"active",message:w.lut?"Shader + LUT active":"Shader active"};let R=Bi(A);return pr(A,R)?!Cm(A)&&!Fm(A)?{state:"pending",message:"Waiting for visible media"}:{state:"unavailable",message:"WebGL unavailable"}:{state:"inactive",message:"No grading applied"}},T=async(S,A,w)=>{let R=async()=>{if(l||A.length===0)return null;let H=fr(S);return!H||(o??(o=Uy()),!o)?null:zy(o,H,A,w?.maxDimension,w?.useMediaTime)},I=a.then(R,R);return a=I.then(()=>{},()=>{}),I},C=S=>{let A=fr(S);if(!fe(A))return null;if(!A.paused)return()=>{};let w=A.currentTime,R=A.loop,I=A.muted;return A.loop=!0,A.muted=!0,(A.ended||Number.isFinite(A.duration)&&w>=A.duration)&&(A.currentTime=0),e?.lease(A),A.play().catch(()=>{}),()=>{e?.release(A),A.pause(),A.loop=R,A.muted=I,A.currentTime=w}},F=()=>{if(!l){l=!0,i?.disconnect(),i=null;for(let S of n)d(S);for(let S of r)Wi(S,!0);r.length=0,o&&(Wi(o,!0),o=null)}};document.body&&(i=new MutationObserver(()=>f()),i.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[Wn]}));let D={refresh:f,redraw:m,redrawAnimated:b,waitForActiveLuts:h,setGrading:v,setCompare:u,setSourceVisibility:x,getStatus:_,renderPreviews:T,startPreviewPlayback:C,destroy:F},M=window;return M.__hf=M.__hf||{},M.__hf.colorGrading=D,f(),D}var ji=class{constructor(t){ge(this,"_baseTime",0);ge(this,"_playStartMs",null);ge(this,"_rate",1);ge(this,"_duration",1/0);ge(this,"_nowMs");ge(this,"_audioSource",null);ge(this,"_lastReadMs",null);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;else{let{el:i,compositionStart:o,mediaStart:a}=this._audioSource;!i.paused&&Number.isFinite(i.currentTime)&&(r=(i.currentTime-a)/(i.playbackRate>0?i.playbackRate:1)*this._rate+o)}if(r!==null)return this._lastReadMs=null,Number.isFinite(this._duration)&&r>=this._duration?this._duration:Math.max(0,r)}this._applyStallCorrection();let t=(this._nowMs()-this._playStartMs)/1e3,n=this._baseTime+t*this._rate;return Number.isFinite(this._duration)&&n>=this._duration?this._duration:Math.max(0,n)}_applyStallCorrection(){if(this._playStartMs===null)return;let t=this._nowMs();if(this._lastReadMs!==null){let n=t-this._lastReadMs;n>500&&(this._playStartMs+=n-33)}this._lastReadMs=t}play(){return this._playStartMs!==null||Number.isFinite(this._duration)&&this._baseTime>=this._duration?!1:(this._playStartMs=this._nowMs(),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._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}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}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(){return Number.isFinite(this._duration)&&this.now()>=this._duration}};var Xy=100,Jy=8,Qy=4096,ws=e=>e;function Zy(e,t,n){return!(!!e.curve||e.viaX!==void 0&&e.viaY!==void 0)&&t==="linear"&&!n}function ev(e){let t=Math.ceil(e*Xy);return Math.min(Qy,Math.max(Jy,t))}function tv(e,t,n,r,i){let{scheduledAt:o,elapsed:a,rate:l}=r,s=i??ws,u=T=>o+(T-a)/l,d=e.points[t],f=e.points[t+1],m=u(f.t);if(m<=o)return null;let h=Math.max(o,u(d.t)),b=m-h;if(b<=0)return null;if(Zy(d,n,i))return{kind:"ramp",time:m,value:s(f.v)};let v=ev(b),x=Fu(e,Math.max(d.t,a),f.t,v,n),_=new Float32Array(v);for(let T=0;T<v;T+=1)_[T]=s(x[T]??0);return{kind:"curve",time:h,duration:b,values:_}}function nv(e,t,n,r){let i=[];for(let a=0;a+1<e.points.length;a+=1){let l=tv(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??ws)(On(e,n.elapsed,t))}),i}function rv(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{let r=n.values[n.values.length-1]??0;e.linearRampToValueAtTime(r,n.time+n.duration)}}function yr(e){for(let t of e)t.param.cancelScheduledValues(0)}function pn(e,t){for(let n of e)typeof n.param.cancelAndHoldAtTime=="function"?n.param.cancelAndHoldAtTime(t):n.param.cancelScheduledValues(t)}function _s(e,t,n,r){if(t.points.length!==0)for(let i of e){if(yr([i]),Mu(t)){let o=(i.map??ws)(t.points[0].v);i.param.setValueAtTime(o,r.scheduledAt);continue}rv(i.param,nv(t,n,r,i.map))}}function rf(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=Pn(l.target);if(!s)continue;let u=s.kind==="preset"?i?.[s.presetId]:s.kind==="fx"?o.get(s.nodeId)?.automation?.[s.param]:void 0;if(!u||u.length===0)continue;let d=Wo(l.target,t);d&&(_s(u,l,d.scale,r),a.push(...u))}return a}function of(e){return e.lanes.find(t=>t.target===Qt)??null}var iv=`
370
+ })();`}var uy=["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 Bm(e){let t=e.getAttribute("id")?.trim();for(let n of uy)e.removeAttribute(n);t&&(e.removeAttribute("id"),e.setAttribute("data-hf-authored-id",t)),e.setAttribute("data-hf-inner-root","true")}var cy=8e3,dy=/^(?![a-zA-Z][a-zA-Z\d+\-.]*:)(?!\/\/)(?!\/)(?!\.\.?\/).+/,my=/\burl\(\s*(["']?)([^)"']+)\1\s*\)/g,fy=["src","href"];function py(e){return!e||e.startsWith("http://")||e.startsWith("https://")||e.startsWith("//")||e.startsWith("data:")||e.startsWith("#")||e.startsWith("/")}function Vm(e,t){if(!t)return e;let n=e.trim();if(py(n)||!n.startsWith("../")&&n!=="..")return e;try{return new URL(n,t).href}catch{return e}}function zm(e,t){return!t||!e?e:e.replace(my,(n,r,i)=>{let o=Vm(i||"",t);return o===i?n:`url(${r||""}${o}${r||""})`})}function hy(e,t){for(let n of Array.from(e.querySelectorAll("[src], [href]")))for(let r of fy){let i=n.getAttribute(r);if(i==null)continue;let o=Vm(i,t);o!==i&&n.setAttribute(r,o)}}function gy(e,t){for(let n of Array.from(e.querySelectorAll("[style]"))){let r=n.getAttribute("style");if(r==null)continue;let i=zm(r,t);i!==r&&n.setAttribute("style",i)}}function by(e,t){for(let n of Array.from(e.querySelectorAll("style"))){let r=n.textContent||"",i=zm(r,t);i!==r&&(n.textContent=i)}}function qm(e,t){if(t){hy(e,t),gy(e,t),by(e,t);for(let n of Array.from(e.querySelectorAll("template")))qm(n.content,t)}}function xy(e,t){return`${e}__hf${t}`}var yy=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"),cy)});function ys(e){for(;e.firstChild;)e.removeChild(e.firstChild);e.textContent=""}function Um(e){for(let t of Array.from(e.querySelectorAll("style, script")))t.remove()}function Sy(e){let t=document.importNode(e,!0);Bm(t);let n=t.getAttribute("data-width"),r=t.getAttribute("data-height");return t.style.width=n?`${n}px`:"100%",t.style.height=r?`${r}px`:"100%",t}function vy(e,t){let n=e.trim();if(!n)return e;try{return dy.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 Wm(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 $i(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 Ay(e){let t=new Map;for(let n of e){let r=$i(n).authoredCompositionId||"";r&&t.set(r,(t.get(r)||0)+1)}return t}function $m(e){let t=$i(e).authoredCompositionId;return t?!!document.querySelector(`template#${CSS.escape(t)}-template`):!1}function Ey(e){return!!e.querySelector('[data-hf-inner-root="true"]')}function wy(e){return e.hasAttribute("data-composition-src")?!0:$m(e)?e.children.length===0||e.hasAttribute("data-hf-original-composition-id")?!0:Ey(e):!1}function vs(){return Array.from(document.querySelectorAll("[data-composition-src], [data-composition-id]")).filter(t=>t.hasAttribute("data-composition-src")?!0:$m(t))}function jm(){let e=window.__hfVariablesByComp;if(!e)return;let t=new Set(vs().map(n=>$i(n).runtimeCompositionId).filter(n=>!!n));for(let n of Object.keys(e))t.has(n)||delete e[n]}function Km(e,t=Ay(e)){let n=new Map,r=new Map;for(let i of e){let{authoredCompositionId:o,runtimeCompositionId:a}=$i(i),l=wy(i);if(!o){r.set(i,{authoredCompositionId:null,runtimeCompositionId:a});continue}let s=(t.get(o)||0)>1,u=a||o;if(l){let d=s?(n.get(o)||0)+1:0;s&&n.set(o,d),u=s?xy(o,d):o,s?i.setAttribute("data-hf-original-composition-id",o):i.removeAttribute("data-hf-original-composition-id"),i.setAttribute("data-composition-id",u),a&&a!==u&&window.__hfVariablesByComp&&delete window.__hfVariablesByComp[a]}r.set(i,{authoredCompositionId:o,runtimeCompositionId:u})}return r}async function Ss(e){let t=id({contentNode:e.sourceNode,head:e.head,hasTemplate:e.hasTemplate,compositionId:e.authoredCompositionId}),n=Ae(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 m of t.linkSources){let p=(m.getAttribute("href")||"").trim();if(!p)continue;let g=e.compositionUrl?new URL(p,e.compositionUrl).href:p;if(e.compositionUrl&&Wm(g,e.compositionUrl)||document.head.querySelector(`link[href="${CSS.escape(g)}"]`))continue;let y=m.cloneNode(!0);mu(y)&&(y.href=g,document.head.appendChild(y),e.injectedLinks.push(y))}(m=>{for(let p of m){let g=p.cloneNode(!0);du(g)&&(i&&(g.textContent=Gm(g.textContent||"",i,s,l,{scopeRootSelectors:!0})),document.head.appendChild(g),e.injectedStyles.push(g))}})(t.styleSources);let d=m=>{let p=m.getAttribute("type")?.trim()??"",g=m.getAttribute("src")?.trim()??"";if(g){let x=vy(g,e.compositionUrl);return e.compositionUrl&&Wm(x,e.compositionUrl)?null:{kind:"external",src:x,type:p}}let y=m.textContent?.trim()??"";return y?{kind:"inline",content:y,type:p,scopeCompositionId:o}:null},f=t.scriptSources.map(d).filter(m=>m!==null);if(n){let m=n.getAttribute("data-width"),p=n.getAttribute("data-height"),g=e.parseDimensionPx(m),y=e.parseDimensionPx(p);m&&e.host.setAttribute("data-width",m),p&&e.host.setAttribute("data-height",p),g&&Ae(e.host)&&(e.host.style.width=g),y&&Ae(e.host)&&(e.host.style.height=y),n.hasAttribute("data-timeline-locked")&&e.host.setAttribute("data-timeline-locked","");let x=Sy(n);!e.authoredCompositionId&&i&&x.setAttribute("data-composition-id",i),Um(x),e.host.appendChild(x)}else if(e.hasTemplate){let m=document.importNode(r,!0);Um(m),e.host.appendChild(m)}else e.host.innerHTML=e.fallbackBodyInnerHtml;a&&_y(e,r,a);for(let m of f){let p=document.createElement("script");if(m.type&&(p.type=m.type),p.async=!1,m.kind==="external"?p.src=m.src:m.type.toLowerCase()==="module"?p.textContent=m.content:m.scopeCompositionId?p.textContent=Hm(m.content,m.scopeCompositionId,"[HyperFrames] composition script error:",s,a||m.scopeCompositionId,l):p.textContent=`(function(){${m.content}})();`,document.body.appendChild(p),e.injectedScripts.push(p),m.kind==="external"){let g=await yy(p);g.status!=="load"&&e.onDiagnostic?.({code:"external_composition_script_load_issue",details:{hostCompositionId:e.authoredCompositionId,runtimeCompositionId:e.runtimeCompositionId,hostCompositionSrc:e.hostCompositionSrc,resolvedScriptSrc:m.src,loadStatus:g.status,elapsedMs:g.elapsedMs}})}}}async function Ym(e){let t=vs();if(jm(),t.length===0)return;let n=Km(t),r=t.filter(i=>{if(i.hasAttribute("data-composition-src")||i.children.length>0)return!1;let o=n.get(i)?.authoredCompositionId;return o?!!document.querySelector(`template#${CSS.escape(o)}-template`):!1});if(r.length!==0)for(let i of r){let o=n.get(i),a=o?.authoredCompositionId;if(!a)continue;let l=document.querySelector(`template#${CSS.escape(a)}-template`);ys(i),await Ss({host:i,authoredCompositionId:a,runtimeCompositionId:o?.runtimeCompositionId||a,hostCompositionSrc:`template#${a}-template`,sourceNode:l.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:null,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic})}}async function Xm(e){let t=vs();if(jm(),t.length===0)return;let n=Km(t),r=t.filter(i=>i.hasAttribute("data-composition-src"));r.length!==0&&await Promise.all(r.map(async i=>{let o=i.getAttribute("data-composition-src");if(!o)return;let a=n.get(i),l=a?.authoredCompositionId||null,s=a?.runtimeCompositionId||l||null,u=null;try{u=new URL(o,document.baseURI)}catch{u=null}ys(i);try{let d=l!=null?document.querySelector(`template#${CSS.escape(l)}-template`):null;if(d){await Ss({host:i,authoredCompositionId:l,runtimeCompositionId:s,hostCompositionSrc:o,sourceNode:d.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:u,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});return}let f=await fetch(o);if(!f.ok)throw new Error(`HTTP ${f.status}`);let m=await f.text(),g=new DOMParser().parseFromString(m,"text/html");qm(g,u);let y=(l?g.querySelector(`template#${CSS.escape(l)}-template`):null)??g.querySelector("template"),x=y?y.content:g.body;await Ss({host:i,authoredCompositionId:l,runtimeCompositionId:s,hostCompositionSrc:o,sourceNode:x,hasTemplate:!!y,fallbackBodyInnerHtml:g.body.innerHTML,compositionUrl:u,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,head:g.head,declaredVariableDefaults:Dn(g.documentElement),variableDeclarer:g.documentElement,onDiagnostic:e.onDiagnostic})}catch(d){e.onDiagnostic?.({code:"external_composition_load_failed",details:{hostCompositionId:l,runtimeCompositionId:s,hostCompositionSrc:o,errorMessage:d instanceof Error?d.message:"unknown_error"}}),ys(i)}}))}function _y(e,t,n){let i={...e.declaredVariableDefaults??(Me(t)?Dn(t):{}),...uu(e.host)};Uo(e.variableDeclarer??(Me(t)?t:null),i,n),su(e.host),Object.keys(i).length>0?(window.__hfVariablesByComp||(window.__hfVariablesByComp={}),window.__hfVariablesByComp[n]=i,Wo(e.host,{...au(e.host,i,window),...ri()})):window.__hfVariablesByComp&&delete window.__hfVariablesByComp[n]}function Cy(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Ry(e){if(!Array.isArray(e))throw new Error("expected a JSON array");if(!e.every(Cy))throw new Error("every array entry must be an object");return e}function As(e){let n=e.vars.data?.captionState;return n==="dim"||n==="active"?n:void 0}function Ty(e){return Ae(e)?e.dataset.captionWrapper!=="true"?e:e.querySelector(":scope > span")??null:null}function ky(){let e=[],t=document.querySelectorAll(".caption-group");for(let n of t)for(let r of n.children){if(!Ae(r))continue;let i=r.dataset.captionWrapper==="true"?r.querySelector(":scope > span"):r.tagName==="SPAN"?r:null;i&&e.push(i)}return e}function My(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}function Es(){let e=window.gsap;e&&document.querySelectorAll(".caption-group").length!==0&&fetch("caption-overrides.json").then(t=>t.ok?t.json():null).then(t=>{if(t===null)return;let n=Ry(t);if(n.length===0)return;let r=ky();for(let i of n){let o=null;if(i.wordId&&(o=Ty(document.getElementById(i.wordId))),!o&&i.wordIndex!==void 0&&(o=r[i.wordIndex]??null),!o)continue;let a={},l={};if(i.x!==void 0&&(a.x=i.x),i.y!==void 0&&(a.y=i.y),i.scale!==void 0&&(a.scale=i.scale),i.rotation!==void 0&&(a.rotation=i.rotation),i.opacity!==void 0&&(l.opacity=i.opacity),i.fontSize!==void 0&&(l.fontSize=`${i.fontSize}px`),i.fontWeight!==void 0&&(l.fontWeight=i.fontWeight),i.fontFamily!==void 0&&(l.fontFamily=i.fontFamily),i.activeColor||i.dimColor){let u=e.getTweensOf(o).filter(m=>m.vars.color!==void 0).sort((m,p)=>m.startTime()-p.startTime()),d=u.find(m=>As(m)==="dim")??u.find(m=>As(m)===void 0),f=d?String(d.vars.color):"";for(let m of u)(As(m)??(String(m.vars.color)===f?"dim":"active"))==="dim"?i.dimColor&&(m.vars.color=i.dimColor):i.activeColor&&(m.vars.color=i.activeColor);i.dimColor&&e.set(o,{color:i.dimColor})}if(Object.keys(l).length>0&&e.set(o,l),Object.keys(a).length>0){let s=My(o);e.set(s,a)}}}).catch(t=>{let n=t instanceof Error?t.message:String(t);console.error(`[HyperFrames] Invalid caption-overrides.json: ${n}`)})}var _s="data-hf-edit-base-x",Cs="data-hf-edit-base-y",bn="data-hf-edit-original-translate",ji=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},Fy=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},Jm=/^-?(?:\d+(?:\.\d+)?|\.\d+)px$/,ws=(e,t)=>Jm.test(e)&&Jm.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,Ny=(e,t,n)=>{if(!e||e==="none")return`${t} ${n}`;let[r,i,o]=Fy(e);if(r===void 0)return`${t} ${n}`;if(i===void 0)return`${ws(r,t)} ${n}`;let a=o===void 0?"":` ${o}`;return`${ws(r,t)} ${ws(i,n)}${a}`},Ly=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},Dy=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""}},Rs=new WeakMap;function Iy(e,t){let n=Rs.get(e);if(!t?.force&&n!==void 0&&e.style.getPropertyValue("translate")!==n){Be("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=ji(e.getAttribute("data-x"))-ji(e.getAttribute(_s)),i=ji(e.getAttribute("data-y"))-ji(e.getAttribute(Cs));e.hasAttribute(bn)||e.setAttribute(bn,Dy(e)),n===void 0&&Ly(e);let o=e.getAttribute(bn)??"",a=Ny(o,`${r}px`,`${i}px`);e.style.setProperty("translate",a),Rs.set(e,e.style.getPropertyValue("translate"))}function Ki(e,t){let n=e.querySelectorAll(`[${bn}]:not([${_s}]):not([${Cs}])`);for(let o=0;o<n.length;o++){let a=n[o];if(a===void 0||!zo(a))continue;let l=a.getAttribute(bn)??"";l===""?a.style.removeProperty("translate"):a.style.setProperty("translate",l),a.removeAttribute(bn),Rs.delete(a)}let r=e.querySelectorAll(`[${_s}], [${Cs}]`),i=0;for(let o=0;o<r.length;o++){let a=r[o];a===void 0||!zo(a)||(Iy(a,t),i+=1)}return i}var Qm="__hfPositionEditsSeekReapplyWrapped",Zm=new WeakSet,ef=new WeakMap,tf=new WeakMap;function nf(e){let t=e,n=()=>{try{Ki(t.document)}catch{}},r=f=>typeof f=="function"&&(Zm.has(f)||!!f[Qm]),i=f=>{Zm.add(f);try{Object.defineProperty(f,Qm,{value:!0})}catch{}},o=f=>{if(typeof f!="function"||r(f))return f;let m=function(...p){let g=f.apply(this,p);return n(),g};return i(m),m},a=(f,m)=>{let p=ef.get(f);if(p?.has(m))return!0;let g=Object.getOwnPropertyDescriptor(f,m);if(g?.configurable===!1){let _=f[m];return typeof _=="function"&&(f[m]=o(_),n()),!1}let y=f[m],x=g?.set;return Object.defineProperty(f,m,{configurable:!0,enumerable:g?.enumerable??!0,get:()=>y,set:_=>{y=o(_),x?.call(f,_)}}),y=o(y),p??(p=new Set),p.add(m),ef.set(f,p),n(),!0},l=(f,m)=>{let p=tf.get(t),g=Object.getOwnPropertyDescriptor(t,f);if(!p?.has(f)){if(g?.configurable===!1){let _=t[f];return _?a(_,m):!1}let x=t[f];Object.defineProperty(t,f,{configurable:!0,enumerable:g?.enumerable??!0,get:()=>x,set:_=>{x=_,x&&a(x,m)}}),p??(p=new Set),p.add(f),tf.set(t,p)}let y=t[f];return y?a(y,m):!1},s=()=>{let f=l("__hf","seek"),m=l("__player","renderSeek");return f&&m};if(s())return;let u=120,d=t.setInterval(()=>{if(s()){t.clearInterval(d);return}u-=1,u<=0&&t.clearInterval(d)},50)}function Yi(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 Xi(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function Ts(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 rf=new Set(["img","video","audio","source"]);function Py(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 Oy(e){return e.replace(/[;{}<>\r\n]/g,"")}function Gy(e){if(Xi(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 ks(e,t){let n=e.closest("[data-composition-id]"),r=t.get(n);if(r)return r;let i=Yi(e);return t.set(n,i),i}function Hy(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 By(e){return e.querySelector("[data-hf-root]")??e.getElementById("stage")??e.body?.firstElementChild??e.body}function Uy(e,t){let n=new Set,r=By(e);r&&n.add(r);for(let i of Array.from(e.querySelectorAll("[data-composition-id]")))n.add(i);for(let i of n){let o=ks(i,t);for(let[a,l]of Object.entries(o)){let s=Gy(l);s!==null&&Ae(i)&&i.style.setProperty(`--${a}`,Oy(s))}}}function Ms(e){let t=new Map;Uy(e,t);for(let n of Array.from(e.querySelectorAll("[data-var-src]"))){let r=n.getAttribute("data-var-src")?.trim();if(!r)continue;if(!rf.has(n.tagName.toLowerCase())){console.warn(`[hyperframes] Ignoring data-var-src on <${n.tagName.toLowerCase()}>: variable-bound src is only allowed on ${Array.from(rf).join("/")}.`);continue}let i=Py(ks(n,t)[r]);if(i!==null){if(!Ts(i)){console.warn(`[hyperframes] Ignoring data-var-src="${r}": unsafe URL protocol.`);continue}n.setAttribute("src",i)}}for(let n of Array.from(e.querySelectorAll("[data-var-text]"))){let r=n.getAttribute("data-var-text")?.trim();if(!r)continue;let i=ks(n,t)[r];Xi(i)&&Hy(n,String(i))}}var gt=new Map,Wy="data-hf-color-grading-canvas",Vy="__hf_color_grading_canvas__";function hf(){if(typeof MutationObserver>"u"||typeof document>"u")return;let e=document.documentElement;if(!e)return;let t=r=>{Ae(r)&&(r.hasAttribute(Ci)||r.setAttribute(Ci,r.style.opacity))},n=r=>{if(Me(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 zy=16,qy=4,yn={enabled:!1,position:.5,softness:0,lineWidth:2},Fs=["#000000","#ffffff"],$y=["#1a1a1a","#f5f5dc"],Rr=3,jy=Rr-1,Ky=5,Ns=`${rt}.0`,of=`${rt-1}.0`,Yy=`${Rr}.0`,Xy=`${(jy+.5)/Rr}`;function Ji(e){let t=e.getAttribute(Xn);return t==null?null:Vc(t,Yi(e))}var Jy=["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(`
371
+ `),Qy=["#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);"," float blur = clamp(u_blur, 0.0, 1.0);"," if (blur > 0.0 && u_blurReady > 0.5) base = mix(base, sampleBlur(uv), blur);"," 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);"," }"," 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;"," 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;"," }"," 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;"," float texelX = 1.0 / max(u_resolution.x * max(u_uvScale.x, 0.00001), 1.0);"," vec2 tapeUv = sampleUv + vec2(tapeShift * texelX, 0.0);"," vec4 base = samplePrepared(tapeUv);"," 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);"," }"," 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);"," }"," return base;","}","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);","}","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);","}","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);","}","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);","}","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);","}","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);","}","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));","}","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);","}","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);","}","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);","}","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) * ${of};`," float lower = floor(position);",` float upper = min(lower + 1.0, ${of});`,` float y = (row + 0.5) / ${Yy};`,` vec4 before = texture2D(u_advanced, vec2((lower + 0.5) / ${Ns}, y));`,` vec4 after = texture2D(u_advanced, vec2((upper + 0.5) / ${Ns}, y));`," return mix(before, after, position - lower);","}","vec4 advancedConfig(float index){",` return texture2D(u_advanced, vec2((index + 0.5) / ${Ns}, ${Xy}));`,"}","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;","}","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"," );","}","float decodeSigned(float value){ return (value * 255.0 - 128.0) / 127.0; }","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;","}","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);"," 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);"," 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;","}","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));","}","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);","}","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);","}","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;","}","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);","}","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);","}","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);"," 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;"," 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);"," 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);"," }"," 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);"," }"," 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));"," if (u_bloomReady > 0.5 && u_bloom > 0.0) color += sampleBloom(uv) * u_bloom;"," color = applyScanlines(clamp(color, 0.0, 1.0), clamp(u_scanlines, 0.0, 1.0));"," 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;"," float warpActive = step(0.0001, u_crtCurvature);"," color *= mix(1.0, displayMask, warpActive);"," vec3 graded = clamp(color, 0.0, 1.0);"," 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;"," }"," gl_FragColor = vec4(graded, sampleColor.a);","}"].join(`
372
+ `),Zy=["#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(`
373
+ `),eS=["#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(`
374
+ `),tS=["#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(`
375
+ `);function qt(e){return pe(e)||De(e)}function af(e){let t=window.getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function sf(e,t,n){let r=e.createShader(n);return r?(e.shaderSource(r,t),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:(D("runtime.colorGrading.compileShader",e.getShaderInfoLog(r)),e.deleteShader(r),null)):null}function no(e,t=Qy){let n=sf(e,Jy,e.VERTEX_SHADER),r=sf(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:(D("runtime.colorGrading.linkProgram",e.getProgramInfoLog(i)),e.deleteProgram(i),null)):null}function Qi(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 nS(e,t){let n=no(e,Zy);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 rS(e,t){let n=no(e,eS);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 iS(e,t){let n=no(e,tS);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 wr(e,t=e.UNSIGNED_BYTE,n=e.LINEAR){let r=Qi(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 eo(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 Ls(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 lf(e,t,n){t&&e.deleteProgram(t);for(let r of n)r&&e.deleteTexture(r)}function Os(e){let t=e.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});if(!t)return null;let n=no(t),r=Qi(t),i=Qi(t,t.NEAREST),o=Qi(t,t.NEAREST);if(!n||!r||!i||!o)return lf(t,n,[r,i,o]),null;let a=t.createBuffer();return a?(t.bindBuffer(t.ARRAY_BUFFER,a),t.bufferData(t.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),t.STATIC_DRAW),{gl:t,program:{program:n,texture:r,lutTexture:i,advancedTexture:o,advancedSignature:null,quad:a,position:t.getAttribLocation(n,"a_pos"),source:t.getUniformLocation(n,"u_source"),blurSource:t.getUniformLocation(n,"u_blurSource"),bloomSource:t.getUniformLocation(n,"u_bloomSource"),kuwaharaSource:t.getUniformLocation(n,"u_kuwaharaSource"),lut:t.getUniformLocation(n,"u_lut"),advanced:t.getUniformLocation(n,"u_advanced"),resolution:t.getUniformLocation(n,"u_resolution"),uvScale:t.getUniformLocation(n,"u_uvScale"),uvOffset:t.getUniformLocation(n,"u_uvOffset"),blurReady:t.getUniformLocation(n,"u_blurReady"),bloomReady:t.getUniformLocation(n,"u_bloomReady"),kuwaharaReady:t.getUniformLocation(n,"u_kuwaharaReady"),lutEnabled:t.getUniformLocation(n,"u_lutEnabled"),lutSize:t.getUniformLocation(n,"u_lutSize"),lutTextureSize:t.getUniformLocation(n,"u_lutTextureSize"),lutDomainMin:t.getUniformLocation(n,"u_lutDomainMin"),lutDomainMax:t.getUniformLocation(n,"u_lutDomainMax"),lutIntensity:t.getUniformLocation(n,"u_lutIntensity"),shadowWheel:t.getUniformLocation(n,"u_shadowWheel"),midtoneWheel:t.getUniformLocation(n,"u_midtoneWheel"),highlightWheel:t.getUniformLocation(n,"u_highlightWheel"),rgbCurvesEnabled:t.getUniformLocation(n,"u_rgbCurvesEnabled"),hueCurvesEnabled:t.getUniformLocation(n,"u_hueCurvesEnabled"),secondaryCount:t.getUniformLocation(n,"u_secondaryCount"),adjustUniforms:Ls(t,n,Ri),detailUniforms:Ls(t,n,Ra),effectUniforms:Ls(t,n,Ta),grainSeed:t.getUniformLocation(n,"u_grainSeed"),effectTime:t.getUniformLocation(n,"u_effectTime"),paletteSize:t.getUniformLocation(n,"u_paletteSize"),palette0:t.getUniformLocation(n,"u_palette0"),palette1:t.getUniformLocation(n,"u_palette1"),palette2:t.getUniformLocation(n,"u_palette2"),palette3:t.getUniformLocation(n,"u_palette3"),palette4:t.getUniformLocation(n,"u_palette4"),palette5:t.getUniformLocation(n,"u_palette5"),intensity:t.getUniformLocation(n,"u_intensity"),compareEnabled:t.getUniformLocation(n,"u_compareEnabled"),comparePosition:t.getUniformLocation(n,"u_comparePosition"),compareSoftness:t.getUniformLocation(n,"u_compareSoftness"),compareLineWidth:t.getUniformLocation(n,"u_compareLineWidth")}}):(lf(t,n,[r,i,o]),null)}function oS(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function aS(e){if(!oS(e))return{...yn};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,yn.position,0,1),softness:t(e.softness,yn.softness,0,.25),lineWidth:t(e.lineWidth,yn.lineWidth,0,12)}}function gf(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 ro(e){return e instanceof Error?e.message:"LUT failed to load"}function sS(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 bf(e){let t=e.id||e.currentSrc||e.getAttribute("src")||`${e.tagName}:${Array.prototype.indexOf.call(e.parentNode?.children??[],e)}`;return sS(t)}function Gs(e){let t=gf(e);if("error"in t)return{state:"error",message:t.error};let n=gt.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=>Sc(o,{maxSize:Ei})),i={state:"pending",promise:r};for(;gt.size>=zy;){let o=gt.keys().next().value;if(!o)break;gt.delete(o)}return gt.set(t.href,i),r.then(o=>{gt.get(t.href)===i&&gt.set(t.href,{state:"ready",lut:o})},o=>{gt.get(t.href)===i&&gt.set(t.href,{state:"error",message:ro(o)})}),i}function uf(e,t,n){if(e.lut?.src===t)return e.lut;let r=xa(n),{gl:i,program:o}=e;try{return xf(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=ro(a),e.lutLoadingSrc=null,D("runtime.colorGrading.uploadLut",a),null}}async function lS(e){let t=Gs(e);if(t.state==="ready")return t.lut;if(t.state==="pending")return t.promise;throw new Error(t.message)}function xf(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 uS(e,t,n){let r=xa(n),{gl:i,program:o}=e;return xf(i,o.lutTexture,r),{src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height}}function st(e,t){e.deleteTexture(t.texture),e.deleteFramebuffer(t.framebuffer)}function Hs(e){let t=e.effectTargets;t&&(e.gl.deleteProgram(t.blurProgram.program),st(e.gl,t.scratch),st(e.gl,t.blur),t.bloom&&st(e.gl,t.bloom),e.effectTargets=null)}function Bs(e){let t=e.kuwaharaTargets;t&&(e.gl.deleteProgram(t.horizontalProgram.program),e.gl.deleteProgram(t.resolveProgram.program),st(e.gl,t.moments),st(e.gl,t.output),e.kuwaharaTargets=null)}function Zi(e,t=!1){Hs(e),Bs(e),cS(e.gl,e.program),t&&e.gl.getExtension("WEBGL_lose_context")?.loseContext()}function cS(e,t){e.deleteTexture(t.texture),e.deleteTexture(t.lutTexture),e.deleteTexture(t.advancedTexture),e.deleteBuffer(t.quad),e.deleteProgram(t.program)}function dS(e){let t=Os(e.canvas);return t?(Zi(e),e.gl=t.gl,e.program=t.program,e.lut=null,e.lutLoadingSrc=null,e.lutError=null,e.effectError=null,!0):!1}function Ps(e){if(!e.sourceHidden)return;e.element.removeAttribute(Jn);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 mS(e){if(e.effectTargets)return e.effectTargets;let{gl:t}=e,n=nS(t,e.program.quad),r=wr(t),i=wr(t);return!n||!r||!i?(n&&t.deleteProgram(n.program),r&&st(t,r),i&&st(t,i),e.effectError="Framebuffer effects unavailable",null):(e.effectError=null,e.effectTargets={blurProgram:n,scratch:r,blur:i,bloom:null},e.effectTargets)}function fS(e,t){return t.bloom||(t.bloom=wr(e.gl),e.effectError=t.bloom?null:"Framebuffer effects unavailable"),t.bloom}function cf(e){let t=e.effectTargets;t?.bloom&&(st(e.gl,t.bloom),t.bloom=null)}function pS(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=rS(t,e.program.quad),o=iS(t,e.program.quad),a=wr(t,n.HALF_FLOAT_OES,t.NEAREST),l=wr(t);return!i||!o||!a||!l?(hS(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 hS(e,t,n,r,i){t&&e.deleteProgram(t.program),n&&e.deleteProgram(n.program),r&&st(e,r),i&&st(e,i)}function yf(e,t,n,r,i){let o=Math.max(1,Math.ceil(r)),a=Math.max(1,Math.ceil(i));return eo(e,t,o,a),eo(e,n,o,a),{width:o,height:a}}function to(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),_r(e,t)}function gS(e,t,n,r,i,o,a){let l=yf(e,t.scratch,r,i/2,o/2),s=a/2;to(e,t.blurProgram,n,t.scratch,l,{x:1,y:0},s,!0,.5),to(e,t.blurProgram,t.scratch.texture,r,l,{x:0,y:1},s,!0)}function bS(e,t,n,r,i,o,a){let l=n;for(let s=0;s<Math.max(1,Math.floor(a));s++)to(e,t.blurProgram,l,t.scratch,i,{x:1,y:0},o),to(e,t.blurProgram,t.scratch.texture,r,i,{x:0,y:1},o),l=r.texture}function _r(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 xS(e,t,n,r,i,o,a,l){eo(e,t.moments,i.width,i.height),eo(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),_r(e,s);let u=t.resolveProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.output.framebuffer),e.useProgram(u.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.moments.texture),e.uniform1i(u.moments,0),e.uniform2f(u.texel,1/i.width,1/i.height),e.uniform1f(u.radius,l.kuwaharaRadius),e.uniform1f(u.sharpness,l.kuwaharaSharpness),e.uniform1f(u.saturation,l.kuwaharaSaturation),_r(e,u)}function yS(e,t,n,r){if(n<=0)return!1;let i=yf(e.gl,t.scratch,t.blur,r.width,r.height);return bS(e.gl,t,e.program.texture,t.blur,i,.75+Math.pow(n,1.35)*32,n>.55?3:2),!0}function SS(e,t,n,r,i,o){if(n<=0)return cf(e),null;o||cf(e);let a=o?fS(e,t):t.blur;return a?(gS(e.gl,t,e.program.texture,a,i.width,i.height,r),a.texture):null}function vS(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&&Hs(e),{blurReady:!1,bloomReady:!1,blurTexture:i.texture,bloomTexture:i.texture};let l=mS(e);if(!l)return{blurReady:!1,bloomReady:!1,blurTexture:i.texture,bloomTexture:i.texture};let s=yS(e,l,o,n),u=SS(e,l,a,t.effects.bloomRadius,n,s);return{blurReady:s,bloomReady:u!==null,blurTexture:l.blur.texture,bloomTexture:u??i.texture}}function AS(e,t,n,r,i,o,a){let l=t.effects.kuwahara;if(l<=0&&!o)return e.kuwaharaTargets&&a&&Bs(e),{kuwaharaReady:!1,kuwaharaTexture:e.program.texture};let s=pS(e);return!s||l<=0?{kuwaharaReady:!1,kuwaharaTexture:s?.output.texture??e.program.texture}:(xS(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 Sf(e,t,n,r,i={}){let o=i.releaseIdleTargets??!0;e.effectError=null;let a=vS(e,t,n,o),l=AS(e,t,n,r,a.blurReady,i.preserveKuwahara??!1,o);return{...a,...l}}function ES(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=gf(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=Gs(t);return i.state==="ready"?uf(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||(uf(e,r.href,o),We(e))},o=>{e.destroyed||e.grading.lut?.src.trim()!==t||(e.lut=null,e.lutError=ro(o),e.lutLoadingSrc=null,We(e))})),null)}function Ar(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&&qt(n))return n;try{let r=document.querySelector(t);return r&&qt(r)?r:null}catch{return null}}if(e.hfId){let t=document.querySelector(`[data-hf-id="${CSS.escape(e.hfId)}"]`);if(t&&qt(t))return t}if(e.id){let t=document.getElementById(e.id);if(t&&qt(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&&qt(r)?r:null}catch{return null}}function vf(e){return pe(e)?e.videoWidth>0&&e.videoHeight>0?{width:e.videoWidth,height:e.videoHeight}:null:De(e)&&e.naturalWidth>0&&e.naturalHeight>0?{width:e.naturalWidth,height:e.naturalHeight}:null}function Af(e){return pe(e)?e.readyState>=HTMLMediaElement.HAVE_CURRENT_DATA&&e.videoWidth>0&&e.videoHeight>0:De(e)?e.complete&&e.naturalWidth>0&&e.naturalHeight>0:!1}function Ef(e){let t=At(e);return t&&Af(t)?t:null}function df(e){if(!pe(e))return!1;let t=Ef(e);if(!t)return!1;let n=window.getComputedStyle(t);return n.display!=="none"&&n.visibility!=="hidden"}function wS(e){return De(e)&&e.classList.contains("__render_frame__")}function _S(e,t){t.parentNode&&t.nextSibling!==e.canvas&&t.parentNode.insertBefore(e.canvas,t.nextSibling)}function wf(e){if(pe(e)){let t=Ef(e);if(t)return t}return Af(e)?e:null}function mf(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 CS(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=mf(o,"x"),l=mf(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 _f(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 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 u=CS(o||"center"),d=(e-l)*u.x/e,f=(t-s)*u.y/t;return{scaleX:l/e,scaleY:s/t,offsetX:d,offsetY:f}}function RS(e,t){window.getComputedStyle(t).position==="static"&&(e.touchedParent||(e.touchedParent=t,e.parentInlinePosition=t.style.position||null),t.style.position="relative")}function ff(e,t){return Math.max(0,Math.round(e>0?e:t))}function TS(e,t){let{element:n,canvas:r}=e,i=n.parentElement;i&&RS(e,i);let o=window.getComputedStyle(t);$c(r.style,o),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=ff(n.offsetWidth,a.width),s=ff(n.offsetHeight,a.height);if(l<=0||s<=0)return r.style.display="none",null;let u=Math.max(1,window.devicePixelRatio||1),d=Math.round(l*u),f=Math.round(s*u);return r.width!==d&&(r.width=d),r.height!==f&&(r.height=f),{width:d,height:f}}function xn(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 $t(e,t,n,r){e.set(r,(t*rt+n)*4)}function Mt(e,t){return Math.min(1,Math.max(1/255,(e*(127/t)+128)/255))}function Ds(e,t,n){return e.length>=3?Sa(e,t,n):new Float32Array(rt)}function zt(e,t){return e[t]??0}function kS(e,t,n){let r=ln(t.red),i=ln(t.green),o=ln(t.blue),a=ln(t.master),l=Ds(n.hueVsHue,-180,180),s=Ds(n.hueVsSaturation,-1,1),u=Ds(n.hueVsLuma,-1,1);for(let d=0;d<rt;d+=1)$t(e,0,d,[zt(r,d),zt(i,d),zt(o,d),zt(a,d)]),$t(e,1,d,[Mt(zt(l,d),180),Mt(zt(s,d),1),Mt(zt(u,d),1),1])}function MS(e,t,n){let r=n*Ky;$t(e,2,r,[t.key.hue.center/360,t.key.hue.range/180,t.key.hue.softness/180,1]),$t(e,2,r+1,[t.key.saturation.min,t.key.saturation.max,t.key.saturation.softness/.5,0]),$t(e,2,r+2,[t.key.luma.min,t.key.luma.max,t.key.luma.softness/.5,0]),$t(e,2,r+3,[Mt(t.correction.hueShift,180),Mt(t.correction.saturation,1),Mt(t.correction.luma,1),Mt(t.correction.temperature,1)]),$t(e,2,r+4,[Mt(t.correction.tint,1),.5,.5,1])}function FS(e,t,n){let r=new Float32Array(rt*Rr*4);kS(r,e,t);let i=0;for(let o of n)o.enabled&&(MS(r,o,i),i+=1);return r}var pf=new WeakMap;function NS(e,t,n){let r=pf.get(e);if(r?.hueCurves===t&&r.secondaries===n)return r.signature;let i=JSON.stringify([e,t,n]);return pf.set(e,{hueCurves:t,secondaries:n,signature:i}),i}function LS(e,t,n,r){let{curves:i,hueCurves:o}=n,a=NS(i,o,r);if(t.advancedSignature===a)return;let l=Uint8Array.from(FS(i,o,r),Kn);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,rt,Rr,0,e.RGBA,e.UNSIGNED_BYTE,l),t.advancedSignature=a}function Is(e,t,n){e.uniform3f(t,n.hue/360,n.amount,n.level)}function Cf(e,t,n,r,i,o,a,l,s,u,d,f){e.uniform1i(t.source,0),e.uniform1i(t.blurSource,1),e.uniform1i(t.lut,2),e.uniform1i(t.kuwaharaSource,3),e.uniform1i(t.bloomSource,4),e.uniform1i(t.advanced,5),e.uniform2f(t.resolution,s.width,s.height),e.uniform2f(t.uvScale,u.scaleX,u.scaleY),e.uniform2f(t.uvOffset,u.offsetX,u.offsetY),e.uniform1f(t.blurReady,i?1:0),e.uniform1f(t.bloomReady,o?1:0),e.uniform1f(t.kuwaharaReady,a?1:0),e.uniform1f(t.lutEnabled,r?1:0),e.uniform1f(t.lutSize,r?.size??2),e.uniform2f(t.lutTextureSize,r?.textureWidth??1,r?.textureHeight??1),e.uniform3f(t.lutDomainMin,r?.domainMin[0]??0,r?.domainMin[1]??0,r?.domainMin[2]??0),e.uniform3f(t.lutDomainMax,r?.domainMax[0]??1,r?.domainMax[1]??1,r?.domainMax[2]??1),e.uniform1f(t.lutIntensity,n.lut?.intensity??0);let{curves:m,hueCurves:p,secondaries:g}=n,y=Fa(m),x=Na(p),_=La(g)?g.reduce((L,P)=>L+Number(P.enabled),0):0;(y||x||_>0)&&LS(e,t,n,g),Is(e,t.shadowWheel,n.wheels.shadows),Is(e,t.midtoneWheel,n.wheels.midtones),Is(e,t.highlightWheel,n.wheels.highlights),e.uniform1f(t.rgbCurvesEnabled,y?1:0),e.uniform1f(t.hueCurvesEnabled,x?1:0),e.uniform1f(t.secondaryCount,_);for(let[L,P]of t.adjustUniforms)e.uniform1f(P,n.adjust[L]);for(let[L,P]of t.detailUniforms)e.uniform1f(P,n.details[L]);e.uniform1f(t.grainSeed,d),e.uniform1f(t.effectTime,f);for(let[L,P]of t.effectUniforms)e.uniform1f(P,n.effects[L]);let k=n.palette??(n.effects.engraving>0||n.effects.crosshatch>0?$y:Fs),C=k[k.length-1]??Fs[1];e.uniform1f(t.paletteSize,k.length),xn(e,t.palette0,k[0]??Fs[0]),xn(e,t.palette1,k[1]??C),xn(e,t.palette2,k[2]??C),xn(e,t.palette3,k[3]??C),xn(e,t.palette4,k[4]??C),xn(e,t.palette5,k[5]??C),e.uniform1f(t.intensity,n.intensity),e.uniform1f(t.compareEnabled,l.enabled?1:0),e.uniform1f(t.comparePosition,l.position),e.uniform1f(t.compareSoftness,l.softness),e.uniform1f(t.compareLineWidth,l.lineWidth)}function DS(e){if(!e.sourceHidden){let t=e.element.getAttribute(Ci);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(Jn,"true"),e.element.style.setProperty("opacity","0","important"),e.sourceHidden=!0}function bt(e){let t=Bc.find(n=>n.path===e);if(!t)throw new Error(`Missing color-grading animation property: ${e}`);return t}var Rf=bt("intensity"),Tf=bt("lut.intensity"),kf=bt("adjust.exposure"),Mf=bt("effects.kuwahara"),Ff=[["blur",bt("effects.blur")],["bloom",bt("effects.bloom")],["kuwahara",Mf],["pixelate",bt("effects.pixelate")],["ascii",bt("effects.ascii")],["dither",bt("effects.dither")]],Nf=[Rf,Tf,kf,...Ff.map(([,e])=>e)];function jt(e,t){let n=e.style.getPropertyValue(t.name);if(!n)return null;let r=Number(n);return Number.isFinite(r)?Math.min(t.max,Math.max(t.min,r)):null}function Er(e,t){return t!==null&&(zc(t)||Nf.some(n=>jt(e,n)!==null))}function IS(e,t){let n=null;for(let[r,i]of Ff){let o=jt(e,i);o!==null&&(n??(n={...t.effects}),n[r]=o)}return n}function PS(e){let{element:t,grading:n}=e,r=jt(t,Rf),i=jt(t,Tf),o=jt(t,kf),a=IS(t,n);if(![r,i,o].some(u=>u!==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 Lf(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 Df(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 We(e){if(e.destroyed||e.contextLost)return!1;let t=wf(e.element);if(!t)return e.hasDrawn||(e.canvas.style.display="none"),!1;let n=vf(t);if(!n)return!1;let r=Ae(t)?t:e.element,i=e.element.style.getPropertyValue("opacity"),o=e.element.style.getPropertyPriority("opacity"),a=e.sourceHidden&&i==="0"&&o==="important",l=e.element.style.getPropertyValue("visibility"),s=wS(t);s&&_S(e,t),a&&!s&&(e.sourceInlineOpacity!==null?e.element.style.setProperty("opacity",e.sourceInlineOpacity,e.sourceInlineOpacityPriority||""):e.element.style.removeProperty("opacity"));let u=window.getComputedStyle(s?t:e.element);e.sourceOpacityForCanvas=u.opacity||"1",a&&!s&&e.element.style.setProperty("opacity","0","important"),e.sourceVisibleForCanvas=(s||l!=="hidden")&&u.visibility!=="hidden";let d=TS(e,r);if(!d)return!1;let f=window.getComputedStyle(r),m=_f(d.width,d.height,n.width,n.height,f.objectFit,f.objectPosition),{gl:p,program:g}=e;try{let y=PS(e),x=ES(e);Lf(p,g.texture,t);let _=jt(e.element,Mf)!==null,k=Sf(e,y,d,m,{preserveKuwahara:_});p.bindFramebuffer(p.FRAMEBUFFER,null),p.viewport(0,0,d.width,d.height),p.useProgram(g.program),Df(p,g,k);let C=window.__player?.getTime?.(),L=typeof C=="number"&&Number.isFinite(C)?Math.max(0,C):pe(e.element)?Math.max(0,e.element.currentTime):0,P=e.grainSeed+Math.floor(L*60);return Cf(p,g,y,x,k.blurReady,k.bloomReady,k.kuwaharaReady,e.compare,d,m,P,L),_r(p,g),DS(e),e.hasDrawn=!0,e.drawError=null,!0}catch(y){return e.drawError=y instanceof Error?y.message:"Shader draw failed",D("runtime.colorGrading.drawEntry",y),!1}}function OS(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 GS(){let e=document.createElement("canvas"),t=Os(e);return t?{canvas:e,...t,lut:null,effectTargets:null,kuwaharaTargets:null,effectError:null}:null}function HS(e,t){let n=t?void 0:window.__player?.getTime?.();return typeof n=="number"&&Number.isFinite(n)?Math.max(0,n):pe(e)?Math.max(0,e.currentTime):0}function BS(e,t,n,r){let i=wf(t);if(!i)return null;let o=vf(i);if(!o)return null;let a=OS(t,o,n);e.canvas.width=a.width,e.canvas.height=a.height;let l=Ae(i)?i:t,s=window.getComputedStyle(l),u=_f(a.width,a.height,o.width,o.height,s.objectFit,s.objectPosition);return Lf(e.gl,e.program.texture,i),{dimensions:a,uv:u,effectTime:HS(t,r),grainSeed:bf(t)+(pe(t)?Math.floor(t.currentTime*60):0)}}async function US(e,t,n,r,i=!1){let o=BS(e,t,r,i);if(!o)return null;let{dimensions:a,uv:l,grainSeed:s,effectTime:u}=o,d=[];for(let f of n.slice(0,32)){let m=Ti(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=uS(e,m.lut.src,await lS(m.lut.src))),p=e.lut),d.push({id:f.id,dataUrl:WS(e,m,p,a,l,s,u)})}catch(g){d.push({id:f.id,dataUrl:null,error:ro(g)})}}return{...a,images:d}}function WS(e,t,n,r,i,o,a){let{canvas:l,gl:s,program:u}=e,d=Sf(e,t,r,i,{releaseIdleTargets:!1});return s.bindFramebuffer(s.FRAMEBUFFER,null),s.viewport(0,0,r.width,r.height),s.useProgram(u.program),Df(s,u,d),n||(e.lut=null),Cf(s,u,t,n,d.blurReady,d.bloomReady,d.kuwaharaReady,yn,r,i,o,a),_r(s,u),l.toDataURL("image/png")}function at(e,t,n,r){t.addEventListener(n,r),e.cleanup.push(()=>t.removeEventListener(n,r))}function VS(e){e.animationFrame!==null&&(window.cancelAnimationFrame(e.animationFrame),e.animationFrame=null),e.videoFrameHandle!==null&&pe(e.element)&&(e.element.cancelVideoFrameCallback?.(e.videoFrameHandle),e.videoFrameHandle=null)}function Cr(e){if(e.destroyed||!pe(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,We(e),!e.destroyed&&!t.paused&&!t.ended&&Cr(e)});return}e.animationFrame=window.requestAnimationFrame(()=>{e.animationFrame=null,We(e),!e.destroyed&&!t.paused&&!t.ended&&Cr(e)})}function zS(e){let t=()=>{We(e)};if(at(e,e.element,"load",t),at(e,e.element,"loadedmetadata",t),at(e,e.element,"loadeddata",t),at(e,e.element,"seeked",t),at(e,e.element,"timeupdate",t),at(e,window,"resize",t),pe(e.element)&&(at(e,e.element,"play",()=>Cr(e)),at(e,e.element,"pause",t)),at(e,e.canvas,"webglcontextlost",n=>{n.preventDefault(),e.contextLost=!0,e.drawError="WebGL context lost",e.canvas.style.display="none",Ps(e)}),at(e,e.canvas,"webglcontextrestored",()=>{if(e.contextLost=!1,!dS(e)){e.contextLost=!0,e.drawError="WebGL context restore failed",Ps(e);return}e.drawError=null,We(e)}),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(),We(e)}))});o.observe(e.element,{attributes:!0,attributeFilter:["style"]}),e.cleanup.push(()=>o.disconnect())}}function qS(e){if(e.destroyed)return null;e.destroyed=!0,VS(e),e.resizeObserver?.disconnect();for(let t of e.cleanup)t();return e.cleanup.length=0,e.canvas.remove(),Hs(e),Bs(e),Ps(e),e.touchedParent&&(e.parentInlinePosition===null?e.touchedParent.style.removeProperty("position"):e.touchedParent.style.position=e.parentInlinePosition),{canvas:e.canvas,gl:e.gl,program:e.program,effectTargets:null,kuwaharaTargets:null,effectError:null}}function If(e,t){return e.removeAttribute("style"),t.id?e.id=`${Ic}${t.id}`:e.removeAttribute("id"),e.className=Vy,e.setAttribute(Wy,"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 $S(e){return If(document.createElement("canvas"),e)}function Pf(e){let t=new WeakMap,n=new Set,r=[],i=null,o=null,a=Promise.resolve(),l=!1,s=(S,A,E)=>{let T=t.get(S);if(T)return T.grading=A,T.source=E,We(T),pe(S)&&!S.paused&&Cr(T),!0;let I=r.pop();if(I)If(I.canvas,S);else{let j=$S(S),Y=Os(j);if(!Y)return j.remove(),!1;I={canvas:j,gl:Y.gl,program:Y.program,effectTargets:null,kuwaharaTargets:null,effectError:null}}let H={element:S,...I,grading:A,compare:{...yn},lut:null,lutLoadingSrc:null,lutError:null,drawError:null,effectTargets:null,kuwaharaTargets:null,effectError:null,source:E,animationFrame:null,videoFrameHandle:null,resizeObserver:null,cleanup:[],touchedParent:null,parentInlinePosition:null,sourceHidden:!1,sourceInlineOpacity:null,sourceInlineOpacityPriority:"",sourceOpacityForCanvas:window.getComputedStyle(S).opacity||"1",sourceVisibleForCanvas:window.getComputedStyle(S).visibility!=="hidden",hasDrawn:!1,contextLost:!1,grainSeed:bf(S),destroyed:!1};return t.set(S,H),n.add(S),zS(H),We(H),pe(S)&&!S.paused&&Cr(H),!0},u=(S,A)=>{if(l)return!1;let E=Ar(S);if(!E)return!1;let T=t.get(E);if(!T){let I=Ji(E);if(!Er(E,I)||!s(E,I,"attribute"))return!1;T=t.get(E)}return T?(T.compare=aS(A),We(T),!0):!1},d=S=>{let A=t.get(S);if(!A)return;let E=qS(A);E&&(A.contextLost||r.length>=qy?Zi(E,!0):r.push(E)),t.delete(S),n.delete(S)},f=()=>{if(l)return 0;let S=new Set;document.querySelectorAll(`video[${Xn}], img[${Xn}]`).forEach(E=>{if(!qt(E))return;S.add(E);let T=Ji(E);Er(E,T)&&(af(E)||df(E))?s(E,T,"attribute"):d(E)});for(let E of n){let T=t.get(E);T&&(!E.isConnected||T.source==="attribute"&&!S.has(E))&&d(E)}return n.size},m=()=>{if(l)return 0;let S=0;for(let A of n){let E=t.get(A);E&&We(E)&&(S+=1)}return S},p=async()=>{let S=new Set;for(let A of n){let E=t.get(A)?.grading.lut;if(!E?.src.trim()||(E.intensity??1)<=0)continue;let T=Gs(E.src);T.state==="pending"&&S.add(T.promise)}return S.size>0&&await Promise.allSettled(S),m(),S.size},g=()=>{if(l)return 0;let S=0;for(let A of n){let E=t.get(A);!E||!Nf.some(I=>jt(A,I)!==null)||pe(A)&&!A.paused&&!A.ended||We(E)&&(S+=1)}return S},y=(S,A)=>{if(l)return!1;let E=Ar(S);if(!E)return!1;let T=Ti(A);return Er(E,T)?s(E,T,"live"):(d(E),!0)},x=(S,A)=>{if(!qt(S))return!1;let E=t.get(S);if(!E){if(!A)return!1;let T=Ji(S);return Er(S,T)&&s(S,T,"attribute")}return E.sourceVisibleForCanvas=A,!A&&E.source==="attribute"&&d(S),!0},_=S=>{let A=Ar(S);if(!A)return{state:"missing",message:"Media not found"};let E=t.get(A);if(E)return E.effectError?{state:"unavailable",message:E.effectError}:E.drawError?{state:"unavailable",message:E.drawError}:E.lutError?{state:"unavailable",message:`LUT error: ${E.lutError}`}:E.grading.lut&&E.lutLoadingSrc?{state:"pending",message:"Loading LUT"}:E.canvas.style.display==="none"?{state:"pending",message:"Waiting for media frame"}:{state:"active",message:E.lut?"Shader + LUT active":"Shader active"};let T=Ji(A);return Er(A,T)?!af(A)&&!df(A)?{state:"pending",message:"Waiting for visible media"}:{state:"unavailable",message:"WebGL unavailable"}:{state:"inactive",message:"No grading applied"}},k=async(S,A,E)=>{let T=async()=>{if(l||A.length===0)return null;let H=Ar(S);return!H||(o??(o=GS()),!o)?null:US(o,H,A,E?.maxDimension,E?.useMediaTime)},I=a.then(T,T);return a=I.then(()=>{},()=>{}),I},C=S=>{let A=Ar(S);if(!pe(A))return null;if(!A.paused)return()=>{};let E=A.currentTime,T=A.loop,I=A.muted;return A.loop=!0,A.muted=!0,(A.ended||Number.isFinite(A.duration)&&E>=A.duration)&&(A.currentTime=0),e?.lease(A),A.play().catch(()=>{}),()=>{e?.release(A),A.pause(),A.loop=T,A.muted=I,A.currentTime=E}},L=()=>{if(!l){l=!0,i?.disconnect(),i=null;for(let S of n)d(S);for(let S of r)Zi(S,!0);r.length=0,o&&(Zi(o,!0),o=null)}};document.body&&(i=new MutationObserver(()=>f()),i.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[Xn]}));let P={refresh:f,redraw:m,redrawAnimated:g,waitForActiveLuts:p,setGrading:y,setCompare:u,setSourceVisibility:x,getStatus:_,renderPreviews:k,startPreviewPlayback:C,destroy:L},F=window;return F.__hf=F.__hf||{},F.__hf.colorGrading=P,f(),P}var jS=500,KS=33,io=class{constructor(t){xe(this,"_baseTime",0);xe(this,"_playStartMs",null);xe(this,"_rate",1);xe(this,"_duration",1/0);xe(this,"_nowMs");xe(this,"_audioSource",null);xe(this,"_lastReadMs",null);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;else{let{el:i,compositionStart:o,mediaStart:a,rate:l}=this._audioSource;!i.paused&&Number.isFinite(i.currentTime)&&(r=typeof l=="object"?nn(l,i.currentTime-a)+o:(i.currentTime-a)/(i.playbackRate>0?i.playbackRate:1)*this._rate+o)}if(r!==null)return this._lastReadMs=null,Number.isFinite(this._duration)&&r>=this._duration?this._duration:Math.max(0,r)}this._applyStallCorrection();let t=(this._nowMs()-this._playStartMs)/1e3,n=this._baseTime+t*this._rate;return Number.isFinite(this._duration)&&n>=this._duration?this._duration:Math.max(0,n)}_applyStallCorrection(){if(this._playStartMs===null)return;let t=this._nowMs();if(this._lastReadMs!==null){let n=t-this._lastReadMs;n>jS&&(this._playStartMs+=n-KS)}this._lastReadMs=t}play(){return this._playStartMs!==null||Number.isFinite(this._duration)&&this._baseTime>=this._duration?!1:(this._playStartMs=this._nowMs(),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._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}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}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(){return Number.isFinite(this._duration)&&this.now()>=this._duration}};var YS=100,XS=8,JS=4096,Us=e=>e;function QS(e,t,n){return!(!!e.curve||e.viaX!==void 0&&e.viaY!==void 0)&&t==="linear"&&!n}function ZS(e){let t=Math.ceil(e*YS);return Math.min(JS,Math.max(XS,t))}function ev(e,t,n,r,i){let{scheduledAt:o,elapsed:a,rate:l}=r,s=i??Us,u=k=>o+(k-a)/l,d=e.points[t],f=e.points[t+1],m=u(f.t);if(m<=o)return null;let p=Math.max(o,u(d.t)),g=m-p;if(g<=0)return null;if(QS(d,n,i))return{kind:"ramp",time:m,value:s(f.v)};let y=ZS(g),x=Yu(e,Math.max(d.t,a),f.t,y,n),_=new Float32Array(y);for(let k=0;k<y;k+=1)_[k]=s(x[k]??0);return{kind:"curve",time:p,duration:g,values:_}}function tv(e,t,n,r){let i=[];for(let a=0;a+1<e.points.length;a+=1){let l=ev(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??Us)(ft(e,n.elapsed,t))}),i}function nv(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{let r=n.values[n.values.length-1]??0;e.linearRampToValueAtTime(r,n.time+n.duration)}}function Tr(e){for(let t of e)t.param.cancelScheduledValues(0)}function Sn(e,t){for(let n of e)typeof n.param.cancelAndHoldAtTime=="function"?n.param.cancelAndHoldAtTime(t):n.param.cancelScheduledValues(t)}function Ws(e,t,n,r){if(t.points.length!==0)for(let i of e){if(Tr([i]),Ku(t)){let o=(i.map??Us)(t.points[0].v);i.param.setValueAtTime(o,r.scheduledAt);continue}nv(i.param,tv(t,n,r,i.map))}}function Of(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=zn(l.target);if(!s)continue;let u=s.kind==="preset"?i?.[s.presetId]:s.kind==="fx"?o.get(s.nodeId)?.automation?.[s.param]:void 0;if(!u||u.length===0)continue;let d=ia(l.target,t);d&&(Ws(u,l,d.scale,r),a.push(...u))}return a}function Gf(e){return e.lanes.find(t=>t.target===tn)??null}var rv=`
376
376
  const dbToLin = (db) => Math.pow(10, db / 20);
377
377
 
378
378
  /**
@@ -708,9 +708,9 @@ class HfPitchshift extends AudioWorkletProcessor {
708
708
  }
709
709
  }
710
710
  registerProcessor("hf-pitchshift", HfPitchshift);
711
- `,Cs=new WeakMap;function Rs(e){return af.has(e)}var af=new WeakSet;function Ts(e){let t=Cs.get(e);return t||(t=(async()=>{if(!e.audioWorklet)throw new Error("AudioWorklet is unavailable \u2014 the page needs a secure context (https, localhost or file://)");let n=`data:text/javascript;base64,${btoa(String.fromCharCode(...new TextEncoder().encode(iv)))}`;await e.audioWorklet.addModule(n),af.add(e)})().catch(n=>{throw Cs.delete(e),n}),Cs.set(e,t)),t}function ov(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))),u=0,d=0;for(let m=0;m<i;m++){u+=s*(l()-u);let h=u*Math.pow(1-m/i,2.5);o[m]=h,d+=h*h}let f=Math.sqrt(d);if(f>0)for(let m=0;m<i;m++)o[m]=(o[m]??0)/f;return o}var ue=e=>typeof e=="number"?e:Number(e??0),ks=e=>e/1e3;function cf(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 u=0;u<i;u++){let d=u/i;a[u]=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 df(e){try{e.stop()}catch{}e.disconnect()}function Ms(e,t){return[{param:e},{param:t,map:n=>1-n}]}function mf(e,t,n){e.gain.value=n,t.gain.value=1-n}function Fs(e,t,n){return{input:e,output:e,update:t,automation:n,dispose:()=>e.disconnect()}}var av=new Set(["peaking","highpass","lowpass"]),sf=e=>Math.pow(10,e/20),sv=(e,t)=>{let n=e.createGain(),r=i=>{n.gain.value=sf(ue(i.gain))};return r(t),Fs(n,r,{gain:[{param:n.gain,map:sf}]})};function vr(e,t){return(n,r)=>{let i=n.createBiquadFilter();i.type=e;let o=a=>{i.frequency.value=ue(a.frequency),a.q!==void 0&&(i.Q.value=ue(a.q)),t&&(i.gain.value=ue(a.gain))};return o(r),Fs(i,o,{frequency:[{param:i.frequency}],...av.has(e)?{q:[{param:i.Q}]}:{},...t?{gain:[{param:i.gain}]}:{}})}}function lv(e){return(t,n)=>{let r=Math.tan(Math.PI*ue(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 Fs(i,()=>{})}}function Sr(e){return(t,n)=>{let r=new AudioWorkletNode(t,e,{processorOptions:{...n}});return{input:r,output:r,update:i=>r.port.postMessage({...i}),dispose:()=>{r.port.postMessage({__hfDispose:!0}),r.disconnect()}}}}var uv={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))},cv=(e,t)=>{let n=e.createWaveShaper(),r=e.createGain(),i=e.createGain();r.connect(n).connect(i);let o=a=>{let l=uv[String(a.type)]??Math.tanh,s=Math.pow(10,ue(a.threshold)/20),u=8192,d=new Float32Array(u);for(let f=0;f<u;f++){let m=f/(u-1)*2-1;d[f]=l(m/Math.max(1e-6,s))*s}n.curve=d,n.oversample=ue(a.oversample)>=4?"4x":ue(a.oversample)>=2?"2x":"none",i.gain.value=Math.pow(10,ue(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()}}},dv=(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=u=>{i.delayTime.value=Math.min(5,ue(u.time)/1e3),o.gain.value=ue(u.feedback),mf(a,l,ue(u.mix))};return s(t),{input:n,output:r,update:s,automation:{time:[{param:i.delayTime,map:u=>Math.min(5,ks(u))}],feedback:[{param:o.gain}],mix:Ms(a.gain,l.gain)},dispose:()=>[n,r,i,o,a,l].forEach(u=>u.disconnect())}},mv=(e,t,n)=>{let r=e.createGain(),i=e.createGain(),o=e.createDelay(.5),a=cf(e,"sine",ue(t.speed),n),l=e.createGain(),s=e.createGain(),u=e.createGain();a.connect(l).connect(o.delayTime),r.connect(o).connect(s).connect(i),r.connect(u).connect(i);let d=f=>{o.delayTime.value=ue(f.delay)/1e3,l.gain.value=ue(f.depth)/1e3,a.playbackRate.value=ue(f.speed),mf(s,u,ue(f.mix))};return d(t),{input:r,output:i,update:d,automation:{delay:[{param:o.delayTime,map:ks}],depth:[{param:l.gain,map:ks}],speed:[{param:a.playbackRate}],mix:Ms(s.gain,u.gain)},dispose:()=>{df(a),[r,i,o,l,s,u].forEach(f=>f.disconnect())}}},fv=6,pv=(e,t,n)=>{let r=e.createGain(),i=e.createGain(),o=e.createGain(),a=e.createGain(),l=cf(e,String(t.type)==="1"?"sine":"triangle",ue(t.speed),n),s=e.createGain(),u=e.createGain(),d=e.createGain(),f=[];r.connect(o);let m=o;for(let b=0;b<fv;b++){let v=e.createBiquadFilter();v.type="allpass",v.Q.value=.7071,s.connect(v.frequency),m.connect(v),m=v,f.push(v)}l.connect(s),m.connect(u).connect(a),o.connect(d).connect(a),a.connect(i);let h=b=>{let v=1e3/Math.max(.1,ue(b.delay));for(let x of f)x.frequency.value=v;s.gain.value=v*ue(b.decay),l.playbackRate.value=ue(b.speed),o.gain.value=ue(b.in_gain),a.gain.value=ue(b.out_gain),u.gain.value=1,d.gain.value=1};return h(t),{input:r,output:i,update:h,automation:{speed:[{param:l.playbackRate}],in_gain:[{param:o.gain}],out_gain:[{param:a.gain}]},dispose:()=>{df(l),[r,i,o,a,s,u,d,...f].forEach(b=>b.disconnect())}}},hv=(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=u=>{let d=`${ue(u.size)}:${ue(u.damping)}`;if(d!==l){let f=ov(e.sampleRate,ue(u.size),ue(u.damping)),m=e.createBuffer(1,f.length,e.sampleRate);m.getChannelData(0).set(f),i.buffer=m,l=d}o.gain.value=ue(u.wet),a.gain.value=ue(u.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(u=>u.disconnect())}},gv={"gain-node":sv,"biquad-peaking":vr("peaking",!0),"biquad-lowshelf":vr("lowshelf",!0),"biquad-highshelf":vr("highshelf",!0),"biquad-highpass":vr("highpass",!1),"biquad-lowpass":vr("lowpass",!1),"worklet-compressor":Sr("hf-compressor"),"worklet-limiter":Sr("hf-limiter"),"worklet-gate":Sr("hf-gate"),"worklet-bitcrush":Sr("hf-bitcrush"),"worklet-pitchshift":Sr("hf-pitchshift"),waveshaper:cv,"delay-feedback":dv,"chorus-lfo":mv,"allpass-phaser":pv,convolver:hv};function ff(e){return e.nodes.some(t=>Nn(t.type)?.web.startsWith("worklet-")??!1)}function bv(e,t,n,r=0){let i=Nn(t);if(!i)throw new Error(`Unknown effect type: ${t}`);let o=Ln(t,n);if((t==="highpass"||t==="lowpass")&&String(o.poles)==="1")return lv(t)(e,o,r);let a=gv[i.web];if(!a)throw new Error(`No Web Audio builder for ${i.web}`);return a(e,o,r)}function lf(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 uf(e){return Dn(e).map(t=>{let n=Ln(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}`:"";return`${t.type}${r}${i}${o}${a}`}).join("|")}function pf(e,t,n=0){var f;let r=e.createGain(),i=e.createGain(),o=[],a=[],l=lf(Dn(t)),s=r;for(let m of l){let h=null;if(m.preset){let b=e.createGain(),v=e.createGain(),x=e.createGain(),_=e.createGain();x.gain.value=m.amount,v.gain.value=1-m.amount,s.connect(b),b.connect(v).connect(_),h={entry:b,wet:x,dry:v,join:_},s=b}for(let b of m.nodes){let v=bv(e,b.type,b.params??{},n);s.connect(v.input),s=v.output,o.push({...b.id?{id:b.id}:{},type:b.type,handle:v})}h&&m.preset&&(s.connect(h.wet).connect(h.join),a.push({id:m.preset,...h}),s=h.join)}s.connect(i);let u=uf(t),d={};for(let m of a)(d[f=m.id]??(d[f]=[])).push(...Ms(m.wet.gain,m.dry.gain));return{input:r,output:i,presets:d,nodes:o,update(m){if(uf(m)!==u)return!1;Dn(m).forEach((b,v)=>{let x=o[v];x&&(x.handle.update(Ln(b.type,b.params)),b.id===void 0?delete x.id:x.id=b.id)});let h=0;for(let b of lf(Dn(m))){if(!b.preset)continue;let v=a[h++];!v||v.id!==b.preset||(v.wet.gain.value=b.amount,v.dry.gain.value=1-b.amount)}return!0},dispose(){for(let{handle:m}of o)m.dispose();for(let{entry:m,wet:h,dry:b,join:v}of a)m.disconnect(),h.disconnect(),b.disconnect(),v.disconnect();r.disconnect(),i.disconnect()}}}var hf={version:1,nodes:[]},gf={version:1,lanes:[]};function bf(e,t){let n=(typeof e.getAttribute=="function"?e.getAttribute(ut):null)??"";if(!n)return gf;try{return ku(si(n),t)}catch{return gf}}function hn(e){let t=(typeof e.getAttribute=="function"?e.getAttribute(It):null)??"";if(!t)return{chain:hf,raw:""};try{return{chain:Cu(t),raw:t}}catch{return{chain:hf,raw:""}}}function xf(e){return bf(e,hn(e).chain)}function Ki(e,t,n,r,i){let{chain:o}=hn(t),a=null,l=[],s=!1,u=0,d=()=>{try{a?(n.disconnect(a.input),a.output.disconnect(r),a.dispose()):n.disconnect(r)}catch{}a=null},f=(C,F)=>{if(C.nodes.length===0){n.connect(r);return}if(ff(C)&&!Rs(e)){n.connect(r);let D=++u;Ts(e).then(()=>{s||D!==u||x(hn(t).chain)}).catch(()=>{});return}try{let D=pf(e,C,F);n.connect(D.input),D.output.connect(r),a=D}catch{n.connect(r)}},m=(C,F)=>{l=F&&a?rf(bf(t,C),C,a.nodes,F,a.presets):[]},h=i?{...i}:null;f(o,h?.elapsed??0),m(o,h);let b=()=>{if(!h)return null;let C=typeof e.currentTime=="number"?e.currentTime:h.scheduledAt;return{scheduledAt:C,elapsed:h.elapsed+(C-h.scheduledAt)*h.rate,rate:h.rate}},v=C=>{let F=b();F&&(pn(l,F.scheduledAt),m(C,F))},x=C=>{let F=b();pn(l,F?.scheduledAt??0),d(),f(C,F?.elapsed??0),m(C,F)},_=null,T=t;return typeof MutationObserver<"u"&&typeof T?.nodeType=="number"&&(_=new MutationObserver(()=>{let C=hn(t);l.length>0&&yr(l),!a||!a.update(C.chain)?x(C.chain):v(C.chain)}),_.observe(T,{attributes:!0,attributeFilter:[It,ut]})),{reanchor:C=>{if(s)return;let F=b();F&&pn(l,F.scheduledAt),h={...C},m(hn(t).chain,h)},setRate:C=>{let F=b();s||!F||!Number.isFinite(C)||C<=0||C===F.rate||(h={...F,rate:C},pn(l,F.scheduledAt),m(hn(t).chain,h))},dispose:()=>{s=!0,_?.disconnect(),l.length>0&&pn(l,typeof e.currentTime=="number"?e.currentTime:0),a?.dispose()}}}var yf="runtime_web_audio_bypass";function Ns(e,t){return typeof e.getAttribute=="function"?e.getAttribute(t):null}function Ar(e,t){return Ns(e,t)!==null}function xv(e){return Ar(e,"crossorigin")?!0:e.crossOrigin!=null}function yv(e){return typeof e.baseURI=="string"&&e.baseURI?e.baseURI:typeof document<"u"?document.baseURI:""}function vv(e){let t=typeof e.currentSrc=="string"?e.currentSrc:"";if(t)return[t];let n=Ns(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 Sv(e,t){let n;try{n=new URL(e,yv(t))}catch{return null}return n.protocol!=="http:"&&n.protocol!=="https:"?null:n}function Av(){return typeof window.origin=="string"?window.origin:window.location.origin}function Ev(e,t){if(typeof window>"u")return null;let n=Sv(e,t);if(!n)return null;let r=Av(),i=r==="null";return!i&&n.origin===r||xv(t)?null:i?"opaque_document_origin":"cross_origin_no_cors"}function Sf(e){return(typeof e.currentSrc=="string"?e.currentSrc:"")?!0:Ar(e,"src")}function gn(e){for(let t of vv(e)){let n=Ev(t,e);if(n)return{kind:"decode-only",reason:n,asset:t}}return{kind:"web-audio"}}function wv(e){let t=[];Ar(e,It)&&t.push("fx-chain"),Ar(e,ut)&&t.push("automation"),Ar(e,ui)&&t.push("audio-group");let n=Number.parseFloat(Ns(e,"data-volume")??"");return Number.isFinite(n)&&n>1&&t.push("above-unity-gain"),t}function _v(){return typeof window<"u"&&!!window.__HF_EXPORT_RENDER_SEEK_CONFIG}var vf=new WeakSet,Cv={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"},Rv={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 bn(e,t){if(t.kind==="web-audio"||_v()||vf.has(e))return;let n=wv(e);vf.add(e);let r={asset:t.asset,reason:t.reason,lostProcessing:n,note:Cv[t.reason]};be({source:"hf-preview",type:"diagnostic",code:yf,details:r});let i=n.length>0?` Native playback cannot reproduce: ${n.join(", ")} \u2014 ${Rv[t.reason]}`:"";console.info(`[hyperframes] ${yf}: "${t.asset}" (${t.reason}): Web Audio capture withheld; the track plays through native HTMLMediaElement output.${i}`)}function Ls(e){return!Number.isFinite(e)||e<=0?1:e}function Af(e){return Ue(e)}function Tv(e,t){t||e.paused||!$r().__hfDebug||console.debug("[hyperframes] webAudioTransport claimed fallback-playing element:",e.currentSrc||e.getAttribute("src")||"")}function kv(e,t){let{elapsed:n,mediaStart:r,scheduledAt:i,globalRate:o,mediaRate:a,clipDuration:l}=t,s=Number.isFinite(l)&&l>0,u=l*a;if(n>=0){let f=n*a,m=u-f;return s&&m<=0?!1:(s?e.start(0,f+r,m):e.start(0,f+r),!0)}let d=-n/o;return s?e.start(i+d,r,u):e.start(i+d,r),!0}function Yi(e,t,n){let r=of(xf(e));r&&_s([{param:t.gain}],r,ai.scale,n)}function Er(e){return e.sourceKind==="buffer"}var Xi=class{constructor(){ge(this,"_ctx",null);ge(this,"_bufferCache",new Map);ge(this,"_failedSrcs",new Set);ge(this,"_mediaElementSources",new WeakMap);ge(this,"_activeSources",[]);ge(this,"_masterGain",null);ge(this,"_masterVolume",1);ge(this,"_masterMuted",!1);ge(this,"_groups",new Map);ge(this,"_rateAnchorCtx",0);ge(this,"_rateAnchorComp",0);ge(this,"_rate",1);ge(this,"_paused",!0);ge(this,"_playGeneration",0)}async init(){try{return this._ctx=new AudioContext,this._masterGain=this._ctx.createGain(),this._masterGain.connect(this._ctx.destination),this.applyMasterGain(),!0}catch{return!1}}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 N("webAudioTransport.fetch",new Error(`${i.status} ${n}`)),null;r=await i.arrayBuffer()}catch(i){return N("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),N("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 o=gn(t);if(o.kind!=="web-audio"){try{n.disconnect()}catch{}return this._mediaElementSources.delete(t),bn(t,o),null}return n}if(!this._ctx)return null;let r=gn(t);if(r.kind!=="web-audio")return bn(t,r),null;let i=this._ctx.createMediaElementSource(t);return this._mediaElementSources.set(t,i),i}async scheduleMediaElementPlayback(t,n,r,i,o,a,l=1){if(!this._ctx||!this._masterGain||a!==this._playGeneration)return null;try{if(this._ctx.state==="suspended"&&await this._ctx.resume(),a!==this._playGeneration)return null;let s=this.acquireMediaElementSource(t);if(!s)return null;let u=Ls(l),d=this._ctx.createGain();d.gain.value=o;let f=this._ctx.currentTime,m=i-n,h={scheduledAt:f,elapsed:m,rate:u},b=Ki(this._ctx,t,s,d,h);d.connect(this.resolveDestination(t,f,i,u)??this._masterGain),Yi(t,d,h),this._rate=u,this._rateAnchorCtx=f,this._rateAnchorComp=i;let v={fx:b,el:t,sourceNode:s,sourceKind:"media-element",gainNode:d,compositionStart:n,mediaStart:r,scheduledAt:f,priorMuted:t.muted,priorVolume:t.volume,mediaPlaybackRate:Le(t),bounded:!1};return t.volume=1,this._activeSources.push(v),this._paused=!1,v}catch(s){return N("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(m){N("webAudioTransport.groupReanchor",m)}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=()=>zo(n,t),s=l(),u=this._ctx.createGain();u.gain.value=s?.hasAttribute("data-hidden")?0:1,u.connect(a);let d=this._ctx.createGain();d.gain.value=Af(Vo(s)),d.connect(u);let f=Ki(this._ctx,s??{getAttribute:()=>null},o,d,r);return s&&Yi(s,d,r),this._groups.set(t,{input:o,fader:d,muteGain:u,fx:f,generation:this._playGeneration,reanchor:m=>{yr([{param:d.gain}]);let h=l();d.gain.value=Af(Vo(h)),u.gain.value=h?.hasAttribute("data-hidden")?0:1,f?.reanchor(m),h&&Yi(h,d,m)},dispose:()=>{try{f?.dispose(),o.disconnect(),d.disconnect(),u.disconnect(),a.disconnect()}catch{}}}),o}setGroupMuted(t,n){let r=this._groups.get(t);if(r)try{r.muteGain.gain.value=n?0:1}catch(i){N("webAudioTransport.setGroupMuted",i)}}resolveDestination(t,n,r,i){if(!this._masterGain)return null;let o=Lu(t);if(!o)return this._masterGain;let a={scheduledAt:n,elapsed:r,rate:i};return this.groupInput(o,t.ownerDocument,a)??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,u=Number.POSITIVE_INFINITY){if(!this._ctx||!this._masterGain||l!==this._playGeneration)return null;try{if(this._ctx.state==="suspended"&&await this._ctx.resume(),l!==this._playGeneration)return null;let d=Ls(s),f=Le(t),m=d*f,h=this._ctx.createBufferSource();h.buffer=n,h.playbackRate.value=m;let b=this._ctx.createGain();b.gain.value=a;let v=o-r,x=this._ctx.currentTime,_={scheduledAt:x,elapsed:v,rate:d},T=Ki(this._ctx,t,h,b,_);if(b.connect(this.resolveDestination(t,x,o,d)??this._masterGain),Yi(t,b,_),this._rate=d,this._rateAnchorCtx=x,this._rateAnchorComp=o,!kv(h,{elapsed:v,mediaStart:i,scheduledAt:x,globalRate:d,mediaRate:f,clipDuration:u}))return h.disconnect(),T?.dispose(),b.disconnect(),null;let C=t.muted;t.muted=!0,Tv(t,C);let F={fx:T,el:t,sourceNode:h,sourceKind:"buffer",gainNode:b,compositionStart:r,mediaStart:i,scheduledAt:x,priorMuted:C,priorVolume:t.volume,mediaPlaybackRate:f,bounded:Number.isFinite(u)&&u>0};return this._activeSources.push(F),this._paused=!1,h.addEventListener("ended",()=>this.handleSourceEnded(h,F,t,C)),F}catch(d){return N("webAudioTransport.schedule",d),null}}setRate(t){let n=Ls(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{Er(r)&&(r.sourceNode.playbackRate.value=n*r.mediaPlaybackRate),r.fx?.setRate(n)}catch(i){N("webAudioTransport.setRate",i)}for(let r of this._groups.values())try{r.fx?.setRate(n)}catch(i){N("webAudioTransport.setRate.group",i)}return!0}hasBoundedActiveSources(){return this._activeSources.some(t=>Er(t)&&t.bounded)}stopAll(){for(let t of this._activeSources){try{Er(t)&&t.sourceNode.stop(),t.sourceNode.disconnect(),t.fx?.dispose(),t.gainNode.disconnect()}catch{}Er(t)?t.el.muted=t.priorMuted:t.el.volume=t.priorVolume}this._activeSources=[],this._paused=!0}setVolume(t){this._masterVolume=Math.max(0,Math.min(1,t)),this.applyMasterGain()}setElementVolume(t,n){let r=Ue(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){N("webAudioTransport.setElementVolume",o)}}setMuted(t){this._masterMuted=t,this.applyMasterGain()}applyMasterGain(){this._masterGain&&(this._masterGain.gain.value=this._masterMuted?0:this._masterVolume)}isActive(){return this._activeSources.length>0&&!this._paused}ownsElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t&&Er(n))}routesElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t)}destroy(){this.stopAll();for(let t of this._groups.values())t.dispose();if(this._groups.clear(),this._bufferCache.clear(),this._failedSrcs.clear(),this._mediaElementSources=new WeakMap,this._ctx)try{this._ctx.close()}catch{}this._ctx=null,this._masterGain=null,this._masterVolume=1,this._masterMuted=!1}};var wr="data-hf-studio-manual-edit-gesture";var Ef=`[${wr}]`;function wf(e,t){let n=e.defaultView?.MutationObserver??globalThis.MutationObserver;if(!n||!e.documentElement)return{isActive:()=>e.querySelector(Ef)!=null,observing:!1,disconnect:()=>{}};let r=new Set(e.querySelectorAll(Ef)),i=l=>{for(let s of l){let u=s.target;Ne(u)&&(u.hasAttribute(wr)?r.add(u):r.delete(u))}},o=l=>{l.length!==0&&(i(l),t())},a=new n(o);return a.observe(e.documentElement,{subtree:!0,attributes:!0,attributeFilter:[wr]}),{observing:!0,isActive:()=>{o(a.takeRecords());for(let l of r){if(l.isConnected&&l.hasAttribute(wr))return!0;r.delete(l)}return!1},disconnect:()=>{a.disconnect(),r.clear()}}}var _f=333.3333333333333;function Cf(e){return e.isPlaying&&e.hasCapturedTimeline&&e.currentTimeSeconds<2?!1:e.compositionChanged===!0?!0:Number.isInteger(e.tick)&&e.tick>0&&e.tick%60===0}var Mv=/^\s*spring\(\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+))\s*\)\s*$/;function Rf(e){return Math.max(0,Math.min(1,e))}function Tf(e){let t=Mv.exec(e);if(!t)return null;let n=Number(t[1]);return Number.isFinite(n)?Rf(n):null}function kf(e,t){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let n=Rf(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 Fv=/^\s*wiggle\(\s*(\d+)\s*,\s*(easeOut|easeInOut|anticipate|uniform)\s*(?:,\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?)\s*)?\)\s*$/,Nv=Math.PI*2;function Lv(e){let t=Fv.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 Dv(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(Nv*t*e)}function Mf(e,t){let n=Lv(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=>Dv(a,n.wiggles,n.type,n.amplitude);return t?.set(r,o),o}var Iv=24,Ff=e=>e>=1?1:0,Pv=e=>e,Ji=String.raw`([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?)`,Ov=new RegExp(String.raw`^\s*M\s*0\s*,\s*0\s+C\s*${Ji}\s*,\s*${Ji}\s+${Ji}\s*,\s*${Ji}\s+1\s*,\s*1\s*$`,"i");function Nf(e,t,n){let r=1-e;return 3*r*r*e*t+3*r*e*e*n+e*e*e}function Gv(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<Iv;l+=1){let s=(o+a)/2;Nf(s,t,r)<e?o=s:a=s}return Nf((o+a)/2,n,i)}function Hv(e){let t=Ov.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=>Gv(a,n,r,i,o)}function Bv(e,t){if(!e.startsWith("spring("))return null;let n=Tf(e);if(n===null)return null;let r=t.get(n);if(r)return r;let i=o=>kf(o,n);return t.set(n,i),i}function Uv(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=Hv(n);return i&&t.set(n,i),i}function Lf(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"?Ff:Mf(s,i)??Bv(s,r)??Uv(s,n),a=(s,u,d=[])=>{let f=o(s);return f||(typeof s=="string"&&/^(?:hold|spring|wiggle|custom)(?:\(|$)/.test(s.trim())&&Be("custom_ease_parse_failed",{ease:s}),t.call(u,s,...d)??Pv)};e.parseEase=function(u,...d){return a(u,this,d)};let l=e.registerEase;if(typeof l=="function"){l("hold",Ff);let s=u=>{let d=f=>f;d.config=(...f)=>a(`${u}(${f.join(",")})`,e),l(u,d)};s("spring"),s("wiggle"),s("custom")}return e.__hfCustomEaseInstalled=!0,!0}function Wv(e){let t=e.ownerDocument?.defaultView;return t&&e instanceof t.Element?!0:e instanceof Element}function Vv(e){if(!Wv(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 zv(e){let t=Array.from(e.querySelectorAll("video, audio")).filter(Vv).filter(i=>i.readyState<3),n=Array.from(e.querySelectorAll("img")).filter(i=>!i.complete),r=e.fonts?.status==="loading";return{pendingMedia:t,pendingImages:n,fontsLoading:r}}function qv(e,{pendingMedia:t,pendingImages:n,fontsLoading:r},i){let o=t.map(s=>new Promise(u=>{if(s.error){u();return}let d=()=>{s.removeEventListener("canplay",d),s.removeEventListener("error",d),i.removeEventListener("abort",d),u()};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 $v(e,t){let n=zv(e);return n.pendingMedia.length===0&&n.pendingImages.length===0&&!n.fontsLoading?null:qv(e,n,t)}var jv=50;function Kv(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,jv)};a()})}var Yv=50,Xv=2,Jv=1500;function Ds(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 Qv(e,t){let n=e.defaultView;return n?(async()=>{let r=await Ds(n,t);if(t.aborted)return;let i=await Ds(n,t),o=0;for(;!t.aborted&&o<Xv;){if(i-r>=Jv)return;let a=await Ds(n,t);if(t.aborted)return;o=a-i<Yv?o+1:0,i=a}})():null}var Zv=8e3;function Df(e,t,n={}){let r=n.inputs??[$v,Kv,Qv],i=new AbortController,o=r.map(u=>u(e,i.signal)).filter(u=>u!==null);if(o.length===0){t({timedOut:!1});return}let a=n.timeoutMs??Zv,l,s=new Promise(u=>{l=setTimeout(()=>u("timed-out"),a)});Promise.race([Promise.all(o).then(()=>"done"),s]).then(u=>{clearTimeout(l),i.abort(),t({timedOut:u==="timed-out"})})}var Os=new Map,_r=new Map,Is=new Map,Ps=()=>{},Pf=()=>{},If=0;function Gs(e){return/^[a-z][a-z0-9-]{0,63}$/.test(e)}function Of(e){let t=(Is.get(e)??0)+1;return Is.set(e,t),t}function Gf(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>0?e:(If-=1,If)}function Hs(e,t){let n=_r.get(e);if(!n)return;let r=()=>Is.get(e)===t.generation&&_r.get(e)===n;try{Promise.resolve(n(t.payload)).then(()=>{r()&&Pf(e,t.requestId)},i=>{r()&&Ps(e,t.requestId,i)})}catch(i){r()&&Ps(e,t.requestId,i)}}function Hf(e){Ps=e}function Bf(e){Pf=e}function Qi(e,t,n){if(!Gs(e))return;let r={payload:t,requestId:Gf(n),generation:Of(e)};Os.set(e,r),Hs(e,r)}function Zi(e,t){Gs(e)&&(Os.delete(e),Hs(e,{payload:void 0,requestId:Gf(t),generation:Of(e)}))}function Uf(e,t){if(!Gs(e))throw new Error(`Invalid HyperFrames runtime-data channel: ${e}`);_r.set(e,t);let n=Os.get(e);return n&&Hs(e,n),()=>{_r.get(e)===t&&_r.delete(e)}}var Bs="data-hf-authored-duration",Us="data-hf-authored-end",Wf=!1;function rt(e){if(e){if(typeof e.pause!="function"){Wf||(Wf=!0,Be("timeline_missing_pause",{}));return}try{e.pause()}catch(t){N("runtime.timeline.pause",t)}}}function nS(){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 rS(e,t){return t!==null&&e.length===t.length&&e.every((n,r)=>n===t[r])}function Vf(e,t,n){let r=null,i=!0;return()=>{let o=e();if(o.length===0)return r=null,i=!0,!0;if(rS(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 zf(){let e=Sc(),t=()=>{};Ol(be),Hf((c,p,g)=>{be({source:"hf-preview",type:"runtime-data-error",channel:c,requestId:p,message:g instanceof Error?g.message:String(g)})}),Bf((c,p)=>{try{t()}catch(g){be({source:"hf-preview",type:"runtime-data-error",channel:c,requestId:p,message:g instanceof Error?g.message:String(g)});return}be({source:"hf-preview",type:"runtime-data-applied",channel:c,requestId:p})}),Oi(document),fs(document),Du(document);let n=nS();e.canonicalFps=n.fps??e.canonicalFps,Il(e.canonicalFps),window.__HF_EXPORT_RENDER_SEEK_CONFIG&&console.info("[hyperframes] render runtime fps",{canonicalFps:e.canonicalFps,source:n.source,rawFpsSource:n.rawFpsSource,rawFps:n.rawFps,fallbackReason:n.fallbackReason});let r=null,i=null,o=null,a=[],l=new Set,s=null,u=new Set,d=(c,p,g)=>{u.has(c)||(u.add(c),Be(p,g))};if(typeof window.__hfRuntimeTeardown=="function")try{window.__hfRuntimeTeardown()}catch(c){N("runtime.init.site1",c)}let f=new ji;e.transportClock=f;let m=new Xi,h=!1;m.init().then(c=>{h=c}),window.__hf=window.__hf||{};let b=c=>c.closest("[data-hidden]")!==null||ci(c.ownerDocument,c),v=()=>{let c=window.gsap,p=window;if(!(!c?.registerPlugin||p.__hfAutoNoopRegistered))try{c.registerPlugin({name:"_auto",init:()=>!1}),p.__hfAutoNoopRegistered=!0}catch(g){d("auto_marker_install_failed","auto_marker_install_failed",{reason:"threw"}),N("runtime.autoMarker.install",g)}},x=()=>{let c=window.gsap;if(!c){d("custom_ease_missing_gsap","custom_ease_install_failed",{reason:"missing_gsap"});return}try{Lf(c)||d("custom_ease_no_parse_ease","custom_ease_install_failed",{reason:"no_parseEase"})}catch(p){d("custom_ease_install_threw","custom_ease_install_failed",{reason:"threw"}),N("runtime.customEase.install",p)}};v(),x(),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{zl(document)}catch(c){N("runtime.init.cssVariables",c)}window.__timelines=window.__timelines||{};let _=()=>{let c=document.querySelector('[data-composition-id][data-root="true"]');if(Se(c))return c;let p=Array.from(document.querySelectorAll("[data-composition-id]"));return p.find(g=>!g.parentElement?.closest("[data-composition-id]"))??p[0]??null};if(Array.isArray(window.__timelines)){let c=window.__timelines,p=_()?.getAttribute("data-composition-id")??"root",g={};if(c.length===1)g[p]=c[0];else for(let y=0;y<c.length;y++)g[`tl-${y}`]=c[y];window.__timelines=g}let T=_();T&&!T.hasAttribute("data-start")&&T.setAttribute("data-start","0");let C=c=>{a.push(c)},F=(c,p,g)=>{let y=g??`${c}:${JSON.stringify(p)}`;l.has(y)||(l.add(y),be({source:"hf-preview",type:"diagnostic",code:c,details:p}))},D=c=>{let p={scale:1,focusX:960,focusY:540},g=[],y=[],E={time:c.getTime(),duration:c.getDuration(),isPlaying:c.isPlaying(),renderMode:!1,timelineDirty:!1};return{play:c.play,pause:c.pause,seek:c.seek,getTime:c.getTime,getDuration:c.getDuration,isPlaying:c.isPlaying,getMainTimeline:()=>null,getElementBounds:()=>{},getElementsAtPoint:()=>{},setElementPosition:()=>{},previewElementPosition:()=>{},setElementKeyframes:()=>{},setElementScale:()=>{},setElementFontSize:()=>{},setElementTextContent:()=>{},setElementTextColor:()=>{},setElementTextShadow:()=>{},setElementTextFontWeight:()=>{},setElementTextFontFamily:()=>{},setElementTextOutline:()=>{},setElementTextHighlight:()=>{},setElementVolume:()=>{},setStageZoom:()=>{},getStageZoom:()=>p,setStageZoomKeyframes:()=>{},getStageZoomKeyframes:()=>g,addElement:()=>!1,removeElement:()=>!1,updateElementTiming:()=>!1,setElementTiming:()=>{},updateElementSrc:()=>!1,updateElementLayer:()=>!1,updateElementBasePosition:()=>!1,markTimelineDirty:()=>{},isTimelineDirty:()=>!1,rebuildTimeline:()=>{},ensureTimeline:()=>{},enableRenderMode:()=>{},disableRenderMode:()=>{},renderSeek:c.renderSeek,getElementVisibility:()=>({visible:!1}),getVisibleElements:()=>y,getRenderState:()=>({...E,time:c.getTime(),duration:c.getDuration(),isPlaying:c.isPlaying()})}},M=1/60,S=.75,A=.05,w=100,R=240,I=c=>{if(c instanceof Error)return c.message||String(c);if(typeof c=="string")return c;try{return JSON.stringify(c)}catch{return String(c??"")}},H=c=>{let p=c.toLowerCase();return p.includes("cannot read properties of null")||p.includes("cannot set properties of null")?{code:"runtime_null_dom_access",category:"dom-null-access"}:p.includes("failed to execute 'queryselector'")?{code:"runtime_invalid_selector",category:"selector-invalid"}:p.includes("is not defined")?{code:"runtime_reference_missing",category:"reference-missing"}:{code:"runtime_script_error",category:"script-error"}},j=c=>{if(c==null||c.trim()==="")return null;let p=Number.parseFloat(c);return!Number.isFinite(p)||p<=0?null:`${p}px`},X=()=>_(),k=()=>{let c=X();if(!c)return;let p=j(c.getAttribute("data-width")),g=j(c.getAttribute("data-height"));p&&(c.style.width=p),g&&(c.style.height=g),p&&c.style.setProperty("--comp-width",p),g&&c.style.setProperty("--comp-height",g),p&&(document.documentElement.style.width=p),g&&(document.documentElement.style.height=g),p&&(document.body.style.width=p),g&&(document.body.style.height=g)},U=()=>{let c=X(),p=Array.from(document.querySelectorAll("[data-composition-id]")).filter(g=>g.hasAttribute("data-duration")||g.hasAttribute("data-end"));for(let g of p){if(c&&g===c)continue;let y=g.getAttribute("data-duration"),E=g.getAttribute("data-end");y!=null&&!g.hasAttribute(Bs)&&g.setAttribute(Bs,y),E!=null&&!g.hasAttribute(Us)&&g.setAttribute(Us,E),g.removeAttribute("data-duration"),g.removeAttribute("data-end")}},te=()=>{let c=X();if(!c)return;c.style.position||(c.style.position="relative"),c.style.overflow="hidden";let p=j(c.getAttribute("data-width")),g=j(c.getAttribute("data-height"));p&&(c.style.width=p),g&&(c.style.height=g);let y=Array.from(c.children);for(let E of y){let L=E.tagName.toLowerCase();if(L==="script"||L==="style"||L==="link"||L==="meta"||!E.hasAttribute("data-start")||E.hasAttribute("data-hf-autostamped"))continue;let P=(E.style.top==="0px"||E.style.top==="0")&&(E.style.left==="0px"||E.style.left==="0")&&E.style.width==="100%"&&E.style.height==="100%",K=/translate\(\s*-50%\s*,\s*-50%\s*\)/.test(E.style.transform);if(P&&K&&!E.hasAttribute("data-width")&&!E.hasAttribute("data-height")){let Y=E.style.top,Re=E.style.left,Dt=E.style.width,Fe=E.style.height;E.style.top="",E.style.left="",E.style.width="",E.style.height="";let Xe=window.getComputedStyle(E);Xe.top!=="auto"||Xe.bottom!=="auto"||Xe.left!=="auto"||Xe.right!=="auto"||Xe.width!=="0px"||Xe.height!=="0px"||(E.style.top=Y,E.style.left=Re,E.style.width=Dt,E.style.height=Fe)}let $=window.getComputedStyle(E),ne=$.position;if(ne!=="absolute"&&ne!=="fixed"&&(E.style.position="absolute"),!!E.style.top||!!E.style.bottom||$.top!=="auto"||$.bottom!=="auto"||(E.style.top="0"),!!E.style.left||!!E.style.right||$.left!=="auto"||$.right!=="auto"||(E.style.left="0"),L!=="audio"){let Y=j(E.getAttribute("data-width")),Re=j(E.getAttribute("data-height")),Dt=$.width!=="0px"&&$.width!=="auto",Fe=$.height!=="0px"&&$.height!=="auto";Y?!E.style.width&&!Dt&&(E.style.width=Y):!E.style.width&&$.width==="0px"&&(E.style.width="100%"),Re?!E.style.height&&!Fe&&(E.style.height=Re):!E.style.height&&$.height==="0px"&&(E.style.height="100%")}}},B=c=>st({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:c}),G=null,W=c=>{let p=G;G=B(!0);try{return c()}finally{G=p}},Q=c=>c&&G?G:B(c),q=(c,p=0,g)=>Q(g?.includeAuthoredTimingAttrs??!0).resolveStartForElement(c,p),O=(c,p)=>Q(p?.includeAuthoredTimingAttrs??!0).resolveDurationForElement(c),V=c=>{let p=c.closest("[data-composition-id]"),g=p?q(p,0):null,y=p?O(p,{includeAuthoredTimingAttrs:!0}):null;return{compositionRoot:p,inheritedStart:g,inheritedDuration:y}},Z=c=>Q(!0).resolveMediaStartForElement(c);window.__hfResolveMediaStartSeconds=Z,a.push(()=>{window.__hfResolveMediaStartSeconds===Z&&delete window.__hfResolveMediaStartSeconds});let pe=(c,p)=>{let g=c.tagName.toLowerCase();if(g==="script"||g==="style"||g==="link"||g==="meta")return!1;let E=g==="video"||g==="audio"?Z(c):q(c,0),L=O(c),P=c.getAttribute("data-composition-id");if(P){let Ee=(window.__timelines??{})[P],He=null;if(Ee&&typeof Ee.duration=="function"){let Y=Number(Ee.duration());Number.isFinite(Y)&&Y>0&&(He=Y)}!(c.hasAttribute("data-duration")||c.hasAttribute("data-end")||c.hasAttribute(Bs)||c.hasAttribute(Us))&&(L==null||L<=0)&&He!=null&&(L=He)}let K=L!=null&&L>0?E+L:Number.POSITIVE_INFINITY,$=window.__HF_EXPORT_RENDER_SEEK_CONFIG?ya(E,e.canonicalFps):E,ne=window.__HF_EXPORT_RENDER_SEEK_CONFIG&&Number.isFinite(K)?ya(K,e.canonicalFps):K;return p>=$&&(Number.isFinite(ne)?p<ne:!0)},re=!!document.querySelector("[data-composition-src]"),z=!1;{let c=document.querySelectorAll("[data-composition-id]:not([data-composition-src])");for(let p of c){let g=p.getAttribute("data-composition-id");if(g&&p.children.length===0&&document.querySelector(`template#${CSS.escape(g)}-template`)){z=!0;break}}}let J=!re&&!z,Ae=c=>{if(!c||typeof c.duration!="function")return null;try{let p=Number(c.duration());return Number.isFinite(p)?Math.max(0,p):null}catch{return null}},ce=c=>typeof c=="number"&&Number.isFinite(c)&&c>M,vn=()=>{let c=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));return c.length===0?null:W(()=>{let p=0;for(let g of c){let y=Z(g);if(!Number.isFinite(y))continue;let E=ti(g);E==null||E<=M||(p=Math.max(p,Math.max(0,y)+E))}return p>M?p:null})},it=()=>{let c=X();if(!c)return null;let p=window.__timelines??{},g=st({timelineRegistry:p,includeAuthoredTimingAttrs:!0}),y=0,E=Ce(c.getAttribute("data-duration"));E!=null&&E>0&&(y=E);let L=Array.from(c.querySelectorAll("[data-composition-id][data-start]"));for(let P of L){if(!Ne(P)||P.parentElement?.closest("[data-composition-id]")!==c)continue;let $=g.resolveStartForElement(P,0),ne=g.resolveDurationForElement(P);!Number.isFinite($)||ne==null||ne<=0||(y=Math.max(y,Math.max(0,$)+ne))}return y>M?y:null},_p=()=>{let c=vn();return typeof c!="number"||!Number.isFinite(c)||c<=M?null:c},Cp=c=>ce(c)?Math.max(M,c*S):M,Js=()=>{let c=0;for(let p of e.deterministicAdapters){let g=p.getInferredDurationSeconds;if(typeof g!="function")continue;let y=null;try{y=g()}catch(E){N("runtime.init.adapterDuration",E)}typeof y=="number"&&Number.isFinite(y)&&y>0&&(c=Math.max(c,y))}return c>M?c:null},Tr=!1,Qs=()=>Tr&&window.__HF_EXPORT_RENDER_SEEK_CONFIG!=null,Rp=["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",ni,"data-playback-rate","data-playback-start","data-media-start","id","src"],Zs=["loadedmetadata","durationchange","emptied"],kr=null,el=-1,tl=null,Mt=null,nl=0,zt=()=>{},qt=()=>{nl+=1,zt()},rl=()=>({media:_p(),authoredComposition:it()}),Tp=()=>{let c=window.__timelines??{},p="";for(let g of Object.keys(c)){let y=c[g];y&&(p+=`${g}=${Ae(y)??"?"};`)}return p},kp=()=>{if(!(Mt||typeof MutationObserver>"u")){Mt=new MutationObserver(qt),Mt.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0,attributeFilter:Rp});for(let c of Zs)document.addEventListener(c,qt,!0);a.push(()=>{Mt?.disconnect(),Mt=null,qt();for(let c of Zs)document.removeEventListener(c,qt,!0)})}},Mr=()=>{kp(),Mt&&Mt.takeRecords().length>0&&qt();let c=Tp();return c!==tl&&(tl=c,qt()),nl},il=c=>Tr?rl():(c??(c=Mr()),kr&&el===c||(el=c,kr=rl()),kr),ot=(c,p=0,g)=>{let y=Ae(c),{media:E,authoredComposition:L}=il(g),P=Js(),K=Math.max(E??0,L??0,P??0),$=Number.isFinite(p)&&p>M?p:0,ne=0;return ce(y)?ne=Math.max(y,K,$):ce(K)?ne=Math.max(K,$):ne=$,ne>0?Math.max(0,ne):0},so=()=>{let c=window.__timelines??{},p=de=>{let se=Object.entries(c).filter(me=>!!me[1]&&typeof me[1].play=="function"&&typeof me[1].pause=="function");if(se.length!==1)return{timeline:null};let ie=se[0];if(!ie)return{timeline:null};let[ve,we]=ie;return{timeline:we,selectedTimelineIds:[ve],selectedDurationSeconds:Ae(we),diagnostics:{code:"root_timeline_sole_registered_fallback",details:{reason:de,soleTimelineId:ve}}}},g=st({timelineRegistry:c,includeAuthoredTimingAttrs:!0}),{media:y,authoredComposition:E}=il(),L=Math.max(y??0,E??0)||null,P=Cp(L),K=de=>{let se=document.querySelector(`[data-composition-id="${CSS.escape(de)}"]`);return se?g.resolveStartForElement(se,0):0},$=de=>{let se=window.gsap;if(!se||typeof se.timeline!="function")return null;let ie=se.timeline({paused:!0});for(let ve of de)ie.add(ve.timeline,K(ve.compositionId));return ie},ne=(de,se)=>{if(!ce(de))return null;let ie=window.gsap;if(!ie||typeof ie.timeline!="function")return null;let ve=ie.timeline({paused:!0});if(se)try{ve.add(se,0)}catch(me){N("runtime.init.site2",me)}let we=ve;if(typeof we.to=="function")try{we.to({},{duration:de})}catch(me){N("runtime.init.site3",me)}return ve},Ee=(de,se)=>{if(!de||typeof de.getChildren!="function")return[];try{let ie=de.getChildren(!0,!0,!0);return Array.isArray(ie)?se.filter(ve=>ie.includes(ve.timeline)):[]}catch{return[]}},He=(de,se)=>{let ie=de,ve={addedIds:[],nested:[]};if(typeof ie.getChildren!="function")return ve;try{let we=ie.getChildren(!0,!0,!0)??[];if(!Array.isArray(we))return ve;let me=[];for(let _e of se)if(!we.some(at=>at===_e.timeline))try{let at=K(_e.compositionId);de.add(_e.timeline,at),me.push(_e.compositionId)}catch(at){N("runtime.init.site4",at)}return{addedIds:me,nested:Ee(de,se)}}catch{return ve}},ae=X(),Y=ae?.getAttribute("data-composition-id")??null;if(!Y)return p("root_missing_composition_id");let Re=c[Y]??null,Fe=(()=>{if(!ae)return[];let de=new Set,se=Array.from(ae.querySelectorAll("[data-composition-id]")),ie=[];for(let ve of se){let we=ve.getAttribute("data-composition-id");if(!we||we===Y||de.has(we))continue;de.add(we);let me=c[we]??null;if(!me||typeof me.play!="function"||typeof me.pause!="function")continue;let _e=Ae(me);ie.push({compositionId:we,timeline:me,durationSeconds:_e??0})}return ie})(),Xe=de=>{for(let se of de){let ie=se.timeline;if(typeof ie.paused=="function")try{ie.paused(!1)}catch(ve){N("runtime.init.site5",ve)}}};if(Re){let de=Fe.length>0?He(Re,Fe):{addedIds:[],nested:[]},se=de.addedIds;if(Xe(de.nested),(Fe.length>0||!document.querySelector("[data-composition-id]:not([data-composition-id='"+Y+"'])"))&&(Fr=!0),se.length>0)try{let me=Re.time();Re.seek(me,!1)}catch{}let ie=Ae(Re);if(!ce(ie)&&Fe.length>0){let me=Fe.map(sh=>sh.compositionId),_e=$(Fe),jt=Ae(_e);if(_e&&ce(jt))return Xe(Ee(_e,Fe)),{timeline:_e,selectedTimelineIds:me,selectedDurationSeconds:jt,mediaDurationFloorSeconds:y,diagnostics:{code:"root_timeline_unusable_fallback",details:{rootCompositionId:Y,rootDurationSeconds:ie,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:P,selectedDurationSeconds:jt,mediaDurationFloorSeconds:y,authoredCompositionDurationFloorSeconds:E,selectedTimelineIds:me,autoNestedChildren:se}}};let at=ne(L??0,Re),wo=Ae(at);if(at&&ce(wo))return{timeline:at,selectedTimelineIds:[Y],selectedDurationSeconds:wo,mediaDurationFloorSeconds:y,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Y,rootDurationSeconds:ie,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:y,authoredCompositionDurationFloorSeconds:E,selectedDurationSeconds:wo,selectedTimelineIds:[Y],autoNestedChildren:se}}}}if(!ce(ie)&&Fe.length===0){let me=ne(L??0,Re),_e=Ae(me);if(me&&ce(_e))return{timeline:me,selectedTimelineIds:[Y],selectedDurationSeconds:_e,mediaDurationFloorSeconds:y,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Y,rootDurationSeconds:ie,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:y,authoredCompositionDurationFloorSeconds:E,selectedDurationSeconds:_e,selectedTimelineIds:[Y]}}}}let ve=Ce(ae?.getAttribute("data-duration")),we=Math.max(ce(ve)?ve:0,E??0);if(we>0&&ce(we)&&ce(ie)&&we>=ie+.5){let me=Re;if(typeof me.to=="function")try{me.to({},{duration:0},we)}catch(jt){N("runtime.init.site6",jt)}let _e=Ae(Re);if(ce(_e))return{timeline:Re,selectedTimelineIds:[Y],selectedDurationSeconds:_e,mediaDurationFloorSeconds:y,diagnostics:{code:"root_timeline_padded_to_declared_duration",details:{rootCompositionId:Y,rootDurationSeconds:ie,rootDeclaredDur:ve,authoredCompositionDurationFloorSeconds:E,newDur:_e}}}}return{timeline:Re,selectedTimelineIds:[Y],selectedDurationSeconds:ie,mediaDurationFloorSeconds:y,diagnostics:se.length>0?{code:"root_timeline_auto_nested_children",details:{rootCompositionId:Y,selectedDurationSeconds:ie,autoNestedChildren:se}}:void 0}}if(Fe.length>0){let de=Fe.map(ve=>ve.compositionId),se=$(Fe),ie=Ae(se);if(se)return Xe(Ee(se,Fe)),{timeline:se,selectedTimelineIds:de,selectedDurationSeconds:ie,mediaDurationFloorSeconds:y,diagnostics:{code:"root_timeline_missing_fallback",details:{rootCompositionId:Y,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:P,selectedDurationSeconds:ie,mediaDurationFloorSeconds:y,selectedTimelineIds:de}}}}return p("root_composition_id_unmatched_in_registry")},Fr=!1,Mp=c=>{let p=window.gsap,g=c;if(!(!g||typeof g.getChildren!="function"||!p||typeof p.parseEase!="function"))for(let y of g.getChildren(!0,!0,!0)){let E=y,L=E.timeline;if(!L||!("_ease"in L)||typeof L._ease=="function")continue;let P=E.vars?.keyframes,$=(P&&!Array.isArray(P)?P.ease:void 0)??E.vars?.ease??"none";try{let ne=p.parseEase($);typeof ne=="function"&&(L._ease=ne)}catch(ne){Be("keyframe_ease_repair_failed",{ease:typeof $=="string"?$:String($)}),N("runtime.keyframeEase.repair",ne)}}},Sn=()=>{if(x(),!J)return!1;let c=e.capturedTimeline,p=Ae(c),g=ce(p);if(c&&g&&Fr)return!1;let y=so();if(!y.timeline)return!1;if(c&&c===y.timeline)return typeof c.timeScale=="function"&&c.timeScale(e.playbackRate),!1;e.capturedTimeline=y.timeline,typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate),Mp(e.capturedTimeline);let E=ot(e.capturedTimeline,0);if(E<=0&&typeof e.capturedTimeline.progress=="function"&&(e.capturedTimeline.progress(1,!0),e.capturedTimeline.progress(0,!1),rt(e.capturedTimeline)),E>0){try{f.setDuration(E)}catch{}if(typeof e.capturedTimeline.totalTime=="function"){typeof e.capturedTimeline.progress=="function"&&e.capturedTimeline.progress(1e-4,!0);let P=Math.max(0,e.currentTime||0);e.capturedTimeline.totalTime(P,!1),rt(e.capturedTimeline)}let L=window.__hfStudioManualEditsApply;typeof L=="function"&&L(),Oi(document)}if(y.diagnostics&&be({source:"hf-preview",type:"diagnostic",code:y.diagnostics.code,details:y.diagnostics.details}),be({source:"hf-preview",type:"diagnostic",code:"timeline_bound",details:{selectedTimelineIds:y.selectedTimelineIds??[],selectedDurationSeconds:y.selectedDurationSeconds??null,mediaDurationFloorSeconds:y.mediaDurationFloorSeconds??null}}),window.parent!==window){let L=X(),P=E>0?E:0,K=String(P>0?P:1),$=new Set,ne=ae=>ae.tagName.toLowerCase()===Zt,Ee=new Set(document.querySelectorAll("[data-start]")),He=ae=>{let Y=ae.parentElement;for(;Y&&Y!==L;){if(Ee.has(Y))return!0;Y=Y.parentElement}return!1};if(e.capturedTimeline.getChildren)try{for(let ae of e.capturedTimeline.getChildren(!0))if(typeof ae.targets=="function")for(let Y of ae.targets())Se(Y)&&Y!==L&&(ne(Y)||Y.hasAttribute("data-start")||He(Y)||$.has(Y)||($.add(Y),Y.setAttribute("data-start","0"),Y.setAttribute("data-duration",K),Y.setAttribute("data-hf-autostamped","1")))}catch{}if(Se(L))for(let ae of L.querySelectorAll("[id]"))Se(ae)&&ae!==L&&(ae.hasAttribute("data-start")||He(ae)||$.has(ae)||ae.tagName==="SCRIPT"||ae.tagName==="STYLE"||ae.tagName==="LINK"||ne(ae)||($.add(ae),ae.setAttribute("data-start","0"),ae.setAttribute("data-duration",K),ae.setAttribute("data-hf-autostamped","1")))}for(let L of An)Nr.delete(L),dl(L);return!0},ol=()=>{if(e.tornDown)return;let c=so();if(!c.timeline){e.capturedTimeline=null,Fr=!1,f.setDuration(0),Or(e.currentTime);return}e.capturedTimeline!==c.timeline&&(Fr=!1,Sn()),Or(e.currentTime)};t=()=>{ol(),ht()},window.__hfForceTimelineRebind=ol;let Fp=()=>{let c=X();if(!Se(c))return;let p=c.getBoundingClientRect(),g=Number(c.getAttribute("data-width")),y=Number(c.getAttribute("data-height")),E=window.getComputedStyle(c),L=Number.isFinite(g)&&g>0&&Number.isFinite(y)&&y>0,P=p.width<=0||p.height<=0||c.clientWidth<=0||c.clientHeight<=0;!L||!P||F("root_stage_layout_zero",{compositionId:c.getAttribute("data-composition-id")??null,declaredWidth:g,declaredHeight:y,rectWidth:Math.round(p.width),rectHeight:Math.round(p.height),clientWidth:c.clientWidth,clientHeight:c.clientHeight,display:E.display,visibility:E.visibility,overflow:E.overflow},`root-stage-layout-zero:${c.getAttribute("data-composition-id")??"unknown"}`)},Np=()=>{e.tornDown||(s!=null&&window.cancelAnimationFrame(s),s=window.requestAnimationFrame(()=>{s=null,Fp()}))},Lp=()=>{i=c=>{let p=I(c.error??c.message).slice(0,R);if(!p)return;let g=H(p);be({source:"hf-preview",type:"diagnostic",code:g.code,details:{category:g.category,message:p,filename:c.filename||null,line:Number.isFinite(c.lineno)?c.lineno:null,column:Number.isFinite(c.colno)?c.colno:null}})},o=c=>{let p=I(c.reason).slice(0,R);if(!p)return;let g=H(p);be({source:"hf-preview",type:"diagnostic",code:`${g.code}_unhandled_rejection`,details:{category:`${g.category}-unhandled-rejection`,message:p}})},window.addEventListener("error",i),window.addEventListener("unhandledrejection",o)},Dp=()=>{let c=Array.from(document.querySelectorAll("img, video, audio, source, link[rel='stylesheet']"));for(let g of c){let y=()=>{if(!Ne(g))return;let E=g.tagName.toLowerCase(),L=g.getAttribute("src")??g.getAttribute("href")??g.getAttribute("poster")??null,P=E==="link"?"runtime_stylesheet_load_failed":"runtime_asset_load_failed";F(P,{tagName:E,assetUrl:L,currentSrc:(Oe(g)||xe(g))&&g.currentSrc||null,readyState:xe(g)?g.readyState:null,networkState:xe(g)?g.networkState:null},`${P}:${E}:${L??"unknown"}`)};g.addEventListener("error",y),C(()=>{g.removeEventListener("error",y)})}let p=document.fonts;p&&p.ready.then(()=>{if(e.tornDown)return;let g=Array.from(p).filter(y=>y.status==="error").map(y=>y.family).filter(y=>!!y).slice(0,10);g.length!==0&&F("runtime_font_load_issue",{failedFamilies:g,totalFaces:Array.from(p).length},`runtime-font-load-issue:${g.join("|")}`)}).catch(()=>{})},Ip=(c,p)=>{if(!c.timeline)return!1;let g=e.capturedTimeline;if(g&&g===c.timeline)return!1;let y=Math.max(0,e.currentTime||0),E=e.isPlaying;e.capturedTimeline=c.timeline,typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate);try{rt(e.capturedTimeline),typeof e.capturedTimeline.seek=="function"&&e.capturedTimeline.seek(y,!1),E&&typeof e.capturedTimeline.play=="function"&&e.capturedTimeline.play()}catch(L){N("runtime.init.site7",L)}return be({source:"hf-preview",type:"diagnostic",code:"timeline_loop_guard_rebind",details:{reason:p,previousTime:y,selectedTimelineIds:c.selectedTimelineIds??[],selectedDurationSeconds:c.selectedDurationSeconds??null,mediaDurationFloorSeconds:c.mediaDurationFloorSeconds??null}}),!0},Ft=null,al=!1,An=new Set,Nr=new WeakMap,Lr=()=>{e.tornDown||(Ft!=null&&window.clearTimeout(Ft),Ft=window.setTimeout(()=>{if(e.tornDown||(Ft=null,Qs()))return;let c=so();if(!c.timeline||!ce(c.mediaDurationFloorSeconds??null))return;if(!e.capturedTimeline){Sn()&&(ht(),Pe(!0));return}if(al)return;let g=Ae(e.capturedTimeline),y=c.selectedDurationSeconds??Ae(c.timeline);ce(y)&&(!ce(g)||y>=g+A)&&Ip(c,"manual")&&(al=!0,be({source:"hf-preview",type:"diagnostic",code:"timeline_rebind_after_media_metadata",details:{previousDurationSeconds:g??null,selectedDurationSeconds:y??null,selectedTimelineIds:c.selectedTimelineIds??[],mediaDurationFloorSeconds:c.mediaDurationFloorSeconds??null}}),ht(),Pe(!0))},w))},sl=c=>{xe(c.currentTarget)&&Wu(c.currentTarget)},ll=c=>{xe(c.currentTarget)&&Vu(c.currentTarget)},ul=c=>{Fo(c)&&Sf(c)&&bn(c,gn(c))},cl=c=>{let p=c.currentTarget;xe(p)&&ul(p)},Pp=()=>{for(let c of An)c.removeEventListener("loadedmetadata",Lr),c.removeEventListener("durationchange",Lr),c.removeEventListener("loadedmetadata",sl),c.removeEventListener("loadedmetadata",cl),c.removeEventListener("error",ll);An.clear()},lo=()=>{if(e.tornDown)return;let c=Array.from(document.querySelectorAll("video, audio"));for(let p of c){if(An.has(p))continue;An.add(p);let g=Number.parseFloat(p.dataset.volume??"");Number.isFinite(g)&&(p.volume=Math.max(0,Math.min(1,g))),p.addEventListener("loadedmetadata",Lr),p.addEventListener("durationchange",Lr),p.addEventListener("loadedmetadata",cl),ul(p),p.addEventListener("loadedmetadata",sl),p.addEventListener("error",ll),Uu(p),p.preload!=="auto"&&(p.preload="auto"),p.readyState<HTMLMediaElement.HAVE_FUTURE_DATA&&p.load(),dl(p)}},dl=c=>{Nr.has(c)||Su(c,e.capturedTimeline,ot(e.capturedTimeline,0),Nr,{allowLiveTimelineSeek:!window.__HF_RENDER_CAPTURE_MODE})},uo=new WeakMap,Op=c=>{let p=uo.get(c);if(p!==void 0)return p;let g=window.getComputedStyle(c).position,y=g==="static"||g==="relative"||g==="sticky";return uo.set(c,y),y},co=new WeakMap,Gp=c=>{let p=co.get(c);if(p!==void 0)return p;let g=c.querySelector("[data-start]")===null;return co.set(c,g),g},Hp=()=>{uo=new WeakMap,co=new WeakMap},mo=new WeakSet,fo=new WeakMap,Dr=new WeakSet,Ir=!1,ml=c=>c.matches("audio[data-start]")||c.querySelector("audio[data-start]")!==null,fl=new WeakMap,Pr=!0,Bp=()=>{if(Pr){Pr=!1;for(let c of document.querySelectorAll(Zt)){let p=c.hasAttribute("data-hidden");fl.get(c)!==p&&(fl.set(c,p),c.id&&m.setGroupMuted(c.id,p))}}},Up=(c,p)=>{let g=X();for(let y of p){if(!Se(y))continue;if(y.hasAttribute("data-hidden")){Dr.has(y)||(fo.set(y,y.style.getPropertyValue("display")),Dr.add(y),ml(y)&&(Ir=!0),Pr=!0),y.style.display="none",(fe(y)||Oe(y))&&r?.setSourceVisibility(y,!1);continue}if(Dr.has(y)){let L=fo.get(y);L?y.style.display=L:y.style.removeProperty("display"),fo.delete(y),Dr.delete(y),ml(y)&&(Ir=!0),Pr=!0}let E=pe(y,c);if(E){let L=y.parentElement;for(;L&&L!==g;){if(Se(L)&&L.hasAttribute("data-start")&&!pe(L,c)){E=!1;break}L=L.parentElement}}y.style.visibility=E?"visible":"hidden",(fe(y)||Oe(y))&&r?.setSourceVisibility(y,E),E?mo.has(y)&&(y.style.removeProperty("display"),mo.delete(y)):Op(y)&&Gp(y)&&(y.style.display="none",mo.add(y))}Ir&&f.isPlaying()&&(m.stopAll(),Ao()),Ir=!1,Bp()},Or=(c,p=Array.from(document.querySelectorAll("[data-start]")))=>W(()=>Up(c,p)),En=null,wn=null,Gr=[],pl=c=>c.hasAttribute("data-start")||!!V(c).compositionRoot,po=c=>Pu({elements:c,shouldIncludeElement:pl,resolveStartSeconds:p=>Z(p),resolveDurationSeconds:p=>{let g=V(p),y=Z(p),E=g.inheritedStart!=null&&g.inheritedDuration!=null&&g.inheritedDuration>0?Math.max(0,g.inheritedStart+g.inheritedDuration-y):null,L=Number.isFinite(p.duration)?xt(p,p.duration):null,P=Ce(p.dataset.duration),K=P!=null&&P>0?P:null;return Iu({isVideo:p.tagName==="VIDEO",sourceDuration:L,hostRemaining:E,explicitDuration:K})}}),Wp=()=>{let c=Mr();if(En&&En.revision===c)return En;let p=po().mediaClips;return En={revision:c,clips:p,byStart:[...p].sort((g,y)=>g.start-y.start),byEnd:[...p].sort((g,y)=>g.end-y.end)},wn=null,Gr=[],En},hl=(c,p,g,y)=>{let E=0,L=c.length;for(;E<L;){let K=E+L>>1;p(c[K])<g?E=K+1:L=K}let P=[];for(let K=E;K<c.length&&p(c[K])<=y;K+=1)P.push(c[K]);return P},Vp=(c,p)=>{let g=wn;if(g===null)return c.clips.map(P=>P.el);let y=Math.min(g,p),E=Math.max(g,p),L=new Set;for(let P of Gr)L.add(P.el);for(let P of hl(c.byStart,K=>K.start,y,E))L.add(P.el);for(let P of hl(c.byEnd,K=>K.end,y,E))L.add(P.el);return[...L]},Hr=new WeakSet,gl=c=>{Hr.add(c)},bl=c=>{Hr.delete(c)};window.__hf.leasePausedMedia=gl,window.__hf.releasePausedMedia=bl;let zp=()=>{for(let c of document.querySelectorAll("video, audio"))if(xe(c)&&!c.paused&&pl(c)&&!Hr.has(c))return!0;return!1},xl=()=>zt();document.addEventListener("play",xl,!0),a.push(()=>{document.removeEventListener("play",xl,!0)});let Ge=()=>{let c=!Tr,p=W(()=>{if(!c)return po().mediaClips;let E=Wp();return po(Vp(E,e.currentTime)).mediaClips});for(let E of p){let L=Nr.get(E.el);L&&(E.volumeKeyframes=L)}let g=e.isPlaying?p:p.filter(E=>!Hr.has(E.el)),y=e.mediaForceSyncNextTick;y&&(e.mediaForceSyncNextTick=!1),e.nativeMediaSyncDisabled||(Ou({clips:g,timeSeconds:e.currentTime,playing:e.isPlaying,playbackRate:e.playbackRate,outputMuted:e.mediaOutputMuted,userMuted:e.bridgeMuted,userVolume:e.bridgeVolume,forceSync:y,onElementVolume:(E,L,P)=>m.setElementVolume(E,P),isWebAudioOwned:E=>m.ownsElement(E),isWebAudioRouted:E=>m.routesElement(E),onAutoplayBlocked:()=>{e.mediaAutoplayBlockedPosted||(e.mediaAutoplayBlockedPosted=!0,be({source:"hf-preview",type:"media-autoplay-blocked"}))}}),c?(wn=e.currentTime,Gr=p.filter(E=>e.currentTime>=E.start&&e.currentTime<E.end)):(wn=null,Gr=[])),Or(e.currentTime)},Pe=c=>{c&&zt();let p=Math.max(0,Math.round((e.currentTime||0)*e.canonicalFps)),g=Date.now();(c||p!==e.bridgeLastPostedFrame||e.isPlaying!==e.bridgeLastPostedPlaying||e.bridgeMuted!==e.bridgeLastPostedMuted||g-e.bridgeLastPostedAt>=e.bridgeMaxPostIntervalMs)&&(e.bridgeLastPostedFrame=p,e.bridgeLastPostedPlaying=e.isPlaying,e.bridgeLastPostedMuted=e.bridgeMuted,e.bridgeLastPostedAt=g,be({source:"hf-preview",type:"state",frame:p,isPlaying:e.isPlaying,muted:e.bridgeMuted,playbackRate:e.playbackRate}))},ho="",yl=!1,vl=!1,Sl=0,qp=()=>{let c="";for(let p of document.querySelectorAll("[data-start]"))c+=`${p.id}:${p.tagName}|`;return c},ht=()=>{U(),k(),te();let c=X();if(c){let y=j(c.getAttribute("data-width")),E=j(c.getAttribute("data-height")),L=y?parseInt(y,10):0,P=E?parseInt(E,10):0;L>0&&P>0&&be({source:"hf-preview",type:"stage-size",width:L,height:P})}Sn();let p=Cc({canonicalFps:e.canonicalFps});window.__clipManifest=p;let g=qp();if(ho!==g&&Hp(),!window.__clipTree||ho!==g){let y=window;window.__clipTree=Ac({startResolver:st({timelineRegistry:y.__timelines??{},includeAuthoredTimingAttrs:!0}),timelineRegistry:y.__timelines??{},rootDuration:p.durationInFrames/e.canonicalFps}),ho=g}be({...p,assetsReady:vl}),yl||(yl=!0,Df(document,({timedOut:y})=>{e.tornDown||(vl=!0,be({source:"hf-preview",type:"assets-ready",timedOut:y}))})),Np()},go=c=>typeof c=="number"&&Number.isFinite(c)&&c>0?c:0,$p=c=>{let p=go(Number(c));if(p<=0)return;let g=X(),y=go(Ce(g?.getAttribute("data-duration"))),E=Math.max(Sl,go(f.getDuration()),y);p<=E||(Sl=p,g?.setAttribute("data-duration",String(p)),f.setDuration(p),ht(),Pe(!0))},ze=(c,p=0)=>{for(let g of e.deterministicAdapters){try{c==="discover"&&g.discover(),c==="pause"&&g.pause(),c==="play"&&g.play&&g.play()}catch(y){N("runtime.init.site8",y)}if(c==="discover")try{g.seek({time:p,suppressEvents:!0})}catch(y){N("runtime.init.site9",y)}}},Nt=()=>{window.__renderReady=!1},jp=Vf(()=>{let c=[];for(let p of e.deterministicAdapters){let g=p.getReadyPromise;if(typeof g=="function")try{let y=g();y&&c.push(y)}catch(y){N("runtime.init.adapterReady",y)}}return c},()=>Nt(),c=>N("runtime.init.adapterReady",c)),Kp=Vf(()=>{let c=window.__hf?.buildReady;return c?Object.values(c).filter(p=>p!=null&&typeof p.then=="function"):[]},()=>Nt(),c=>N("runtime.init.buildReady",c));if(J)as();else{let c={injectedStyles:e.injectedCompStyles,injectedScripts:e.injectedCompScripts,injectedLinks:e.injectedCompLinks,parseDimensionPx:j,onDiagnostic:({code:p,details:g})=>{be({source:"hf-preview",type:"diagnostic",code:p,details:g})}};bm(c).then(()=>gm(c)).finally(()=>{J=!0,lo(),Dp(),as(),fs(document),Nt()})}let Br=bc({postMessage:c=>be(c)});Br.installPickerApi(),Or(e.currentTime,Array.from(document.querySelectorAll("video[data-start], img[data-start]")));let Ye=nf({lease:gl,release:bl});r=Ye,C(()=>{Ye.destroy(),r=null});let bo=c=>{let p=Number(c);!Number.isFinite(p)||p<=0?e.playbackRate=1:e.playbackRate=Math.max(.1,Math.min(5,p)),e.mediaForceSyncNextTick=!0,e.capturedTimeline&&typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate);let g=document.querySelectorAll("video, audio");for(let y of g)if(xe(y))try{y.playbackRate=e.playbackRate}catch(E){N("runtime.init.site10",E)}},Al={play:()=>{let c=e.capturedTimeline;if(f.isPlaying())return;let p=ot(c,0);if(p>0)f.setDuration(p),f.reachedEnd()&&(f.seek(0),e.currentTime=0,Lt(0));else{let g=X(),y=Number(g?.getAttribute("data-duration")??0);y>0&&f.setDuration(y)}rt(c),f.play()&&(e.isPlaying=!0,e.mediaForceSyncNextTick=!0,Fl(f.now()),h&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&Ao(),ze("play"),Ge(),Ye.redraw(),Pe(!0))},pause:()=>{if(!f.isPlaying())return;m.stopAll(),f.detachAudioSource(),f.pause(),e.isPlaying=!1,e.currentTime=f.now(),e.mediaForceSyncNextTick=!0,Fl(e.currentTime);let c=e.capturedTimeline;rt(c),ze("pause"),Ge(),Ye.redraw(),Pe(!0)},seek:(c,p)=>{let g=xa(Math.max(0,Number(c)||0),e.canonicalFps);m.stopAll(),f.detachAudioSource();let y=f.isPlaying();y&&f.pause(),f.seek(g),e.currentTime=f.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0;let E=e.capturedTimeline;if(rt(E),Lt(e.currentTime),ze("pause"),p?.keepPlaying&&y){Al.play();return}Ge(),Ye.redraw(),Pe(!0)},renderSeek:(c,p)=>{Tr=!0;let g=zn(Math.max(0,Number(c)||0),e.canonicalFps,p?.subFrameDivisions);m.stopAll(),f.detachAudioSource(),f.isPlaying()&&f.pause(),f.seek(g),e.currentTime=f.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0,Lt(e.currentTime,{activateChildren:!0,suppressEvents:p?.suppressEvents}),ze("pause"),Ge(),Ye.redraw(),Pe(!0)},getTime:()=>f.now(),getDuration:()=>{let c=f.getDuration();return Number.isFinite(c)?c:0},isPlaying:()=>f.isPlaying(),setPlaybackRate:c=>{bo(c),f.setRate(e.playbackRate),Nl()},getPlaybackRate:()=>e.playbackRate},El=ot(e.capturedTimeline,0);El>0&&f.setDuration(El);let qe=vc({getTimeline:()=>e.capturedTimeline,setTimeline:c=>{e.capturedTimeline=c},getTimelineRegistry:()=>window.__timelines??{},getIsPlaying:()=>e.isPlaying,setIsPlaying:c=>{e.isPlaying!==c&&(e.mediaForceSyncNextTick=!0),e.isPlaying=c},getPlaybackRate:()=>e.playbackRate,setPlaybackRate:bo,getCanonicalFps:()=>e.canonicalFps,onSyncMedia:(c,p)=>{e.currentTime=Math.max(0,Number(c)||0),e.isPlaying!==p&&(e.mediaForceSyncNextTick=!0),e.isPlaying=p,Ge()},onStatePost:Pe,onDeterministicSeek:(c,p)=>{for(let g of e.deterministicAdapters)if(!(g.name==="gsap"&&e.capturedTimeline))try{g.seek({time:Number(c)||0,suppressEvents:p?.suppressEvents})}catch(y){N("runtime.init.site11",y)}},onDeterministicPause:()=>ze("pause"),onDeterministicPlay:()=>ze("play"),onRenderFrameSeek:()=>{Ye.redraw()},onShowNativeVideos:()=>{},getSafeDuration:()=>ot(e.capturedTimeline,0),transport:Al});window.__player=D(qe),window.__playerReady=!0,Be("composition_loaded",{duration:qe.getDuration(),compositionId:document.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")??null}),e.deterministicAdapters=[fu(),Yl({resolveStartSeconds:c=>q(c,0)}),Jl(),Zl(),nu(),ru(),iu(),ou(),au(),su(),lu(),Xl({getTimeline:()=>e.capturedTimeline})],du(),mu(),window.__hfReseekGpu=c=>{let p=Math.max(0,Number(c)||0);window.__hfThreeTime=p,window.__hfTypegpuTime=p,Qr(p)},window.__hfWaitForSeekCompletion=Oo,a.push(()=>{window.__hfWaitForSeekCompletion===Oo&&delete window.__hfWaitForSeekCompletion}),Lp(),lo(),ze("discover");let Yp=()=>{let c=e.capturedTimeline,p=Sn();e.capturedTimeline&&(p||e.capturedTimeline!==c||!qe._timeline)&&(qe._timeline=e.capturedTimeline);let g=ot(e.capturedTimeline,0);if(g>0&&f.setDuration(g),ze("discover",e.currentTime),!e.capturedTimeline){let y=window.__timelines??{},E=Object.keys(y).filter(L=>y[L]);if(E.length>0){let P=X()?.getAttribute("data-composition-id")??null;F("root_timeline_unbound_registry_present",{reason:P?"root data-composition-id has no matching key in window.__timelines":"root composition element has no data-composition-id attribute",rootCompositionId:P,registeredTimelineKeys:E},"root_timeline_unbound_registry_present"),console.warn("[hyperframes] Root timeline not bound \u2014 render will freeze at t=0. "+(P?`Root data-composition-id is "${P}" but window.__timelines has no such key. `:"Root composition element has no data-composition-id. ")+`Registered timeline keys: [${E.join(", ")}]. Register the root timeline under its data-composition-id (window.__timelines["${P??"<root-id>"}"] = tl).`)}}window.__renderReady=!0,ht(),Pe(!0)},$t=null,Xp=()=>{if($t)return;let c=()=>{window.removeEventListener("hf-timelines-built",c),$t=null,Nt()};$t=c,window.addEventListener("hf-timelines-built",c)};C(()=>{$t&&(window.removeEventListener("hf-timelines-built",$t),$t=null)}),Nt=()=>{if(!J){window.__renderReady=!1;return}if(window.__hfTimelinesBuilding){window.__renderReady=!1,Xp();return}if(ze("discover",e.currentTime),!jp()){window.__renderReady=!1;return}if(!Kp()){window.__renderReady=!1;return}Yp()},Nt(),J&&setTimeout(()=>{Nt()},0);let Ur=0,Wr=!1,xo=Number.NaN,yo=null,Vr=!1,gt=null,zr=!1,wl="",_l=-1,qr=!1,Cl=Number.NEGATIVE_INFINITY,Jp=(c,p,g,y)=>{try{let E=y?.suppressEvents===!0;rt(c),typeof c.totalTime=="function"?c.totalTime(p,E):c.seek(p,E)}catch(E){N(g,E)}},Qp=(c,p)=>{let g=window.__timelines??{},y=X()?.getAttribute("data-composition-id")??null;for(let[E,L]of Object.entries(g)){if(!L||E===y)continue;let P=document.querySelector(`[data-composition-id="${CSS.escape(E)}"]`);if(!P)continue;let K=q(P,0);if(!Number.isFinite(K))continue;let $=Ae(L),ne=Qe(P)+Math.max(0,c-K)*Le(P),Ee=Math.max(0,$!=null&&$>0?Math.min($,ne):ne);Jp(L,Ee,"runtime.init.transport.childTimeline",p)}},Zp=c=>{let p=window.__timelines??{},g=[];for(let y of Object.values(p))if(!(!y||y===c)){g.push(y);try{y.play()}catch(E){N("runtime.init.activateSiblings",E)}}return g},Rl=c=>typeof c=="object"&&c!==null,_n=new WeakMap,eh=["onStart","onUpdate","onComplete","onReverseComplete","onRepeat"],Tl=(c,p)=>{let g=c[p];if(typeof g!="function")return null;try{let y=Number(g.call(c));return Number.isFinite(y)?y:null}catch(y){return N("runtime.init.gsapCallbackDuration",y),null}},th=c=>{let p=_n.get(c);if(p!=null)return p;if(!("getChildren"in c)||typeof c.getChildren!="function")return!1;let g;try{g=c.getChildren(!0,!0,!0)}catch(y){return N("runtime.init.gsapCallbackChildren",y),_n.set(c,!1),!1}if(!Array.isArray(g))return _n.set(c,!1),!1;for(let y of g){if(!Rl(y))continue;let E=y.vars;if(!Rl(E)||!eh.some($=>typeof E[$]=="function"))continue;let K=Tl(y,"totalDuration")??Tl(y,"duration");if(K!=null&&K<=1e-6)return _n.set(c,!0),!0}return _n.set(c,!1),!1};function Lt(c,p){let g=e.capturedTimeline,y=g&&p?.activateChildren?Zp(g):[];try{nh(g,c,p)}finally{for(let E of y)rt(E)}}function nh(c,p,g){let y=g?.suppressEvents===!0;if(c){let E=c,L=p;if(typeof E.totalDuration=="function")try{let P=Number(E.totalDuration());Number.isFinite(P)&&P>0&&p>P&&(L=P)}catch(P){N("runtime.init.transport.clampDuration",P)}try{typeof c.totalTime=="function"?(c.totalTime(L,y),!y&&!th(c)&&(c.totalTime(L+.001,!0),c.totalTime(L,!0))):c.seek(L,y)}catch(P){N("runtime.init.transport.seek",P)}}Qp(p,g);for(let E of e.deterministicAdapters)if(!(E.name==="gsap"&&c))try{E.seek({time:p,suppressEvents:y})}catch(L){N("runtime.init.transport.adapter",L)}}let vo=wf(document,()=>{zt()});a.push(()=>vo.disconnect());let rh=()=>{try{return vo.isActive()}catch{return!1}},ih=()=>!f.isPlaying()&&!Qs()&&vo.observing&&!Vr&&!qr&&e.currentTime===xo&&e.capturedTimeline===yo,kl=()=>`${Mr()}|${Js()??""}`,Ml=()=>{gt=window.setTimeout(oh,e.bridgeMaxPostIntervalMs)},oh=()=>{if(gt=null,!e.tornDown&&!(typeof window>"u"||typeof document>"u")){if(kl()!==wl){zt();return}Pe(!1),Ml()}},ah=()=>{if(e.transportRafId=null,e.tornDown)return;let c=zr;if(zr=!1,c||!ih()){e.transportRafId=window.requestAnimationFrame(So);return}wl=kl(),Ml()};zt=()=>{e.tornDown||(zr=!0,!(Wr||e.transportRafId!=null)&&(gt!=null&&(window.clearTimeout(gt),gt=null),zr=!1,e.transportRafId=window.requestAnimationFrame(So)))};let So=()=>{if(!(e.tornDown||Wr)){Wr=!0;try{Ur+=1;let c=Mr();c!==_l&&(_l=c,qr=!0);let p=Date.now(),g=qr&&!f.isPlaying()&&p-Cl>=_f;if(g&&(Cl=p),Cf({tick:Ur,isPlaying:f.isPlaying(),hasCapturedTimeline:e.capturedTimeline!=null,currentTimeSeconds:f.now(),compositionChanged:g})){let P=e.capturedTimeline;if(Sn()){e.capturedTimeline&&!qe._timeline&&(qe._timeline=e.capturedTimeline),e.capturedTimeline&&e.capturedTimeline!==P&&rt(e.capturedTimeline);let K=ot(e.capturedTimeline,0,c);K>0&&f.setDuration(K),ht()}}if((g||Ur%20===0)&&(ht(),qr=!1),(g||Ur%30===0)&&lo(),e.capturedTimeline){let P=ot(e.capturedTimeline,0,c);P>0&&(!f.isPlaying()||P>=f.getDuration())&&f.setDuration(P)}if(f.isPlaying()&&!e.mediaOutputMuted)if(!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&m.isActive()&&m.context){let P=m.getTime();P>=0&&f.attachAudioSource({currentTimeSeconds:P})}else{let P=document.querySelectorAll("audio[data-start]"),K=!1;for(let $ of P){if(!xe($)||!$.isConnected||b($))continue;let ne=Z($),Ee=Ce($.dataset.duration),He=Ee!=null&&Ee>0?ne+Ee:1/0,ae=Qe($);if(Number.isFinite(ne)&&e.currentTime>=ne&&e.currentTime<He){$.paused?!$.error&&$.readyState<HTMLMediaElement.HAVE_FUTURE_DATA&&(f.attachAudioSource({currentTimeSeconds:e.currentTime}),K=!0):(f.attachAudioSource({el:$,compositionStart:ne,mediaStart:ae}),K=!0);break}}!K&&f.hasAudioSource()&&f.detachAudioSource()}else f.hasAudioSource()&&f.detachAudioSource();let y=f.now();e.currentTime=y;let E=f.isPlaying();if(!E&&rh()?Vr=!0:(E||Vr||y!==xo||e.capturedTimeline!==yo)&&(Lt(y),xo=y,yo=e.capturedTimeline,E||(Vr=!1)),E&&Ye.redrawAnimated(),f.isPlaying()&&f.reachedEnd()){m.stopAll(),f.detachAudioSource(),f.pause(),e.isPlaying=!1;let P=f.getDuration();Number.isFinite(P)&&(f.seek(P),e.currentTime=P,Lt(P)),ze("pause"),Ge(),Pe(!0);return}f.isPlaying()?Ge():zp()&&(wn=null,Ge()),Pe(!1)}finally{Wr=!1,ah()}}},Fl=c=>{let p=document.querySelectorAll("video, audio");for(let g of p){if(!xe(g)||!g.isConnected||!g.hasAttribute("data-start"))continue;let y=Z(g);if(!Number.isFinite(y))continue;let E=Ce(g.dataset.duration),L=E!=null&&E>0?y+E:1/0;if(c<y||c>=L)continue;let P=Qe(g),K=c-y+P;if(K>=0)try{g.currentTime=K}catch{}}},Ao=()=>{if(e.nativeMediaSyncDisabled||e.webAudioMediaDisabled)return;let c=m.startGeneration(),p=document.querySelectorAll("audio[data-start]");for(let g of p){if(!xe(g)||!g.isConnected||b(g))continue;let y=Z(g);if(!Number.isFinite(y))continue;let E=Qe(g),L=Number.parseFloat(g.dataset.volume??""),P=Number.isFinite(L)?L:1,K=Ce(g.dataset.duration),$=K!=null&&K>0?K:Number.POSITIVE_INFINITY,ne=g.closest("[data-composition-id]");if(ne){let ae=q(ne,0),Y=O(ne,{includeAuthoredTimingAttrs:!0});Y!=null&&Y>0&&($=Math.min($,Math.max(0,ae+Y-y)))}let Ee=gn(g);bn(g,Ee),(Ee.kind==="web-audio"?m.scheduleMediaElementPlayback(g,y,E,f.now(),P,c,e.playbackRate):Promise.resolve(null)).then(ae=>{if(ae||!f.isPlaying())return;let Y=e.playbackRate*Le(g),Re=g.hasAttribute("data-fx-chain")||g.hasAttribute("data-automation");if(Math.abs(Y-1)>1e-9){Ee.kind==="web-audio"&&Re&&(g.muted=!0);return}m.decodeAudioElement(g).then(Dt=>{!Dt||!f.isPlaying()||m.schedulePlayback(g,Dt,y,E,f.now(),P,c,e.playbackRate,$)})})}};function Nl(){m.setRate(e.playbackRate)&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&h&&f.isPlaying()&&m.hasBoundedActiveSources()&&(m.stopAll(),Ao())}if(e.capturedTimeline){let c=ot(e.capturedTimeline,0);c>0&&f.setDuration(c),rt(e.capturedTimeline)}Em(window),e.transportRafId=window.requestAnimationFrame(So),ht(),Pe(!0),e.controlBridgeHandler=Pl({onPlay:()=>{qe.play(),Be("composition_played",{time:qe.getTime()})},onPause:()=>{qe.pause(),Be("composition_paused",{time:qe.getTime()})},onStopMedia:()=>{m.stopAll();let c=document.querySelectorAll("video, audio");for(let p of c)xe(p)&&!p.paused&&p.pause()},onSeek:(c,p)=>{qe.seek(c),Be("composition_seeked",{time:c})},onSetMuted:c=>{e.bridgeMuted=c;let p=c||e.mediaOutputMuted;m.setMuted(p);let g=document.querySelectorAll("video, audio");for(let y of g)xe(y)&&(y.muted=p||y.defaultMuted)},onSetVolume:c=>{e.bridgeVolume=c,m.setVolume(c);let p=document.querySelectorAll("video, audio");for(let g of p){if(!xe(g))continue;let y=parseFloat(g.dataset.volume??""),E=Number.isFinite(y)?y:1;g.volume=Zr(E*c)}},onSetMediaOutputMuted:c=>{e.mediaOutputMuted=c;let p=c||e.bridgeMuted;m.setMuted(p);let g=document.querySelectorAll("video, audio");for(let y of g)xe(y)&&(y.muted=p||y.defaultMuted)},onSetNativeMediaSyncDisabled:c=>{e.nativeMediaSyncDisabled!==c&&(e.nativeMediaSyncDisabled=c,e.mediaForceSyncNextTick=!0,c?(m.stopAll(),f.detachAudioSource()):Ge())},onSetWebAudioMediaDisabled:c=>{e.webAudioMediaDisabled!==c&&(e.webAudioMediaDisabled=c,e.mediaForceSyncNextTick=!0,c&&(m.stopAll(),f.detachAudioSource()),Ge())},onSetPlaybackRate:c=>{bo(c),e.transportClock&&e.transportClock.setRate(e.playbackRate),Nl()},onSetRootDuration:$p,onSetColorGrading:(c,p)=>{Ye.setGrading(c,p)},onSetColorGradingCompare:(c,p)=>{Ye.setCompare(c,p)},onTick:()=>{if(e.tornDown||!f.isPlaying())return;let c=f.now();if(e.currentTime=c,Lt(c),f.reachedEnd()){m.stopAll(),f.detachAudioSource(),f.pause(),e.isPlaying=!1;let p=f.getDuration();Number.isFinite(p)&&(f.seek(p),e.currentTime=p,Lt(p)),ze("pause"),Ge(),Pe(!0)}},onEnablePickMode:()=>Br.enablePickMode(),onDisablePickMode:()=>Br.disablePickMode(),onSetRuntimeData:Qi,onClearRuntimeData:Zi,getCanonicalFps:()=>e.canonicalFps});let Eo=()=>{if(!e.tornDown){e.tornDown=!0,e.transportRafId!=null&&(window.cancelAnimationFrame(e.transportRafId),e.transportRafId=null),gt!=null&&(window.clearTimeout(gt),gt=null),e.transportClock=null,m.destroy(),Ft!=null&&(window.clearTimeout(Ft),Ft=null),s!=null&&(window.cancelAnimationFrame(s),s=null),Pp(),e.controlBridgeHandler&&(window.removeEventListener("message",e.controlBridgeHandler),e.controlBridgeHandler=null),i&&(window.removeEventListener("error",i),i=null),o&&(window.removeEventListener("unhandledrejection",o),o=null),e.beforeUnloadHandler&&(window.removeEventListener("beforeunload",e.beforeUnloadHandler),e.beforeUnloadHandler=null),Br.disablePickMode();for(let c of e.deterministicAdapters)if(!(!c||typeof c.revert!="function"))try{c.revert()}catch(p){N("runtime.init.site12",p)}e.deterministicAdapters=[],window.__hf?.buildReady&&(window.__hf.buildReady={});for(let c of a.splice(0))try{c()}catch(p){N("runtime.init.site13",p)}for(let c of e.injectedCompStyles)try{c.remove()}catch(p){N("runtime.init.site14",p)}e.injectedCompStyles=[];for(let c of e.injectedCompLinks)try{c.remove()}catch(p){N("runtime.init.site15",p)}e.injectedCompLinks=[];for(let c of e.injectedCompScripts)try{c.remove()}catch(p){N("runtime.init.site16",p)}e.injectedCompScripts=[],e.capturedTimeline=null,t=()=>{},window.__hfRuntimeTeardown===Eo&&(window.__hfRuntimeTeardown=null)}};window.__hfRuntimeTeardown=Eo,e.beforeUnloadHandler=Eo,window.addEventListener("beforeunload",e.beforeUnloadHandler)}var qf=["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"],Ws=[[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 iS(e){if(e<=255)return qf[e];let t=0,n=Ws.length-1;for(;t<=n;){let r=t+n>>1,i=Ws[r];if(e<i[0]){n=r-1;continue}if(e>i[1]){t=r+1;continue}return i[2]}return"L"}function oS(e){let t=e.length;if(t===0)return null;let n=new Array(t),r=!1;for(let u=0;u<t;){let d=e.charCodeAt(u),f=d,m=1;if(d>=55296&&d<=56319&&u+1<t){let b=e.charCodeAt(u+1);b>=56320&&b<=57343&&(f=(d-55296<<10)+(b-56320)+65536,m=2)}let h=iS(f);(h==="R"||h==="AL"||h==="AN")&&(r=!0);for(let b=0;b<m;b++)n[u+b]=h;u+=m}if(!r)return null;let i=0;for(let u=0;u<t;u++){let d=n[u];if(d==="L"){i=0;break}if(d==="R"||d==="AL"){i=1;break}}let o=new Int8Array(t);for(let u=0;u<t;u++)o[u]=i;let a=i&1?"R":"L",l=a,s=l;for(let u=0;u<t;u++)n[u]==="NSM"?n[u]=s:s=n[u];s=l;for(let u=0;u<t;u++){let d=n[u];d==="EN"?n[u]=s==="AL"?"AN":"EN":(d==="R"||d==="L"||d==="AL")&&(s=d)}for(let u=0;u<t;u++)n[u]==="AL"&&(n[u]="R");for(let u=1;u<t-1;u++)n[u]==="ES"&&n[u-1]==="EN"&&n[u+1]==="EN"&&(n[u]="EN"),n[u]==="CS"&&(n[u-1]==="EN"||n[u-1]==="AN")&&n[u+1]===n[u-1]&&(n[u]=n[u-1]);for(let u=0;u<t;u++){if(n[u]!=="EN")continue;let d;for(d=u-1;d>=0&&n[d]==="ET";d--)n[d]="EN";for(d=u+1;d<t&&n[d]==="ET";d++)n[d]="EN"}for(let u=0;u<t;u++){let d=n[u];(d==="WS"||d==="ES"||d==="ET"||d==="CS")&&(n[u]="ON")}s=l;for(let u=0;u<t;u++){let d=n[u];d==="EN"?n[u]=s==="L"?"L":"EN":(d==="R"||d==="L")&&(s=d)}for(let u=0;u<t;u++){if(n[u]!=="ON")continue;let d=u+1;for(;d<t&&n[d]==="ON";)d++;let f=u>0?n[u-1]:l,m=d<t?n[d]:l,h=f!=="L"?"R":"L";if(h===(m!=="L"?"R":"L"))for(let v=u;v<d;v++)n[v]=h;u=d-1}for(let u=0;u<t;u++)n[u]==="ON"&&(n[u]=a);for(let u=0;u<t;u++){let d=n[u];(o[u]&1)===0?d==="R"?o[u]++:(d==="AN"||d==="EN")&&(o[u]+=2):(d==="L"||d==="AN"||d==="EN")&&o[u]++}return o}function $f(e,t){let n=oS(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 aS=/[ \t\n\r\f]+/g,sS=/[\t\n\r\f]| {2,}|^ | $/;function lS(e){let t=e??"normal";return t==="pre-wrap"?{mode:t,preserveOrdinarySpaces:!0,preserveHardBreaks:!0}:{mode:t,preserveOrdinarySpaces:!1,preserveHardBreaks:!1}}function uS(e){if(!sS.test(e))return e;let t=e.replace(aS," ");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 cS(e){return/[\r\f]/.test(e)?e.replace(/\r\n/g,`
711
+ `,Vs=new WeakMap;function zs(e){return Hf.has(e)}var Hf=new WeakSet;function qs(e){let t=Vs.get(e);return t||(t=(async()=>{if(!e.audioWorklet)throw new Error("AudioWorklet is unavailable \u2014 the page needs a secure context (https, localhost or file://)");let n=`data:text/javascript;base64,${btoa(String.fromCharCode(...new TextEncoder().encode(rv)))}`;await e.audioWorklet.addModule(n),Hf.add(e)})().catch(n=>{throw Vs.delete(e),n}),Vs.set(e,t)),t}function iv(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))),u=0,d=0;for(let m=0;m<i;m++){u+=s*(l()-u);let p=u*Math.pow(1-m/i,2.5);o[m]=p,d+=p*p}let f=Math.sqrt(d);if(f>0)for(let m=0;m<i;m++)o[m]=(o[m]??0)/f;return o}var ue=e=>typeof e=="number"?e:Number(e??0),$s=e=>e/1e3;function Vf(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 u=0;u<i;u++){let d=u/i;a[u]=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 zf(e){try{e.stop()}catch{}e.disconnect()}function js(e,t){return[{param:e},{param:t,map:n=>1-n}]}function qf(e,t,n){e.gain.value=n,t.gain.value=1-n}function Ks(e,t,n){return{input:e,output:e,update:t,automation:n,dispose:()=>e.disconnect()}}var ov=new Set(["peaking","highpass","lowpass"]),Bf=e=>Math.pow(10,e/20),av=(e,t)=>{let n=e.createGain(),r=i=>{n.gain.value=Bf(ue(i.gain))};return r(t),Ks(n,r,{gain:[{param:n.gain,map:Bf}]})};function kr(e,t){return(n,r)=>{let i=n.createBiquadFilter();i.type=e;let o=a=>{i.frequency.value=ue(a.frequency),a.q!==void 0&&(i.Q.value=ue(a.q)),t&&(i.gain.value=ue(a.gain))};return o(r),Ks(i,o,{frequency:[{param:i.frequency}],...ov.has(e)?{q:[{param:i.Q}]}:{},...t?{gain:[{param:i.gain}]}:{}})}}function sv(e){return(t,n)=>{let r=Math.tan(Math.PI*ue(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 Ks(i,()=>{})}}function Mr(e){return(t,n)=>{let r=new AudioWorkletNode(t,e,{processorOptions:{...n}});return{input:r,output:r,update:i=>r.port.postMessage({...i}),dispose:()=>{r.port.postMessage({__hfDispose:!0}),r.disconnect()}}}}var lv={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))},uv=(e,t)=>{let n=e.createWaveShaper(),r=e.createGain(),i=e.createGain();r.connect(n).connect(i);let o=a=>{let l=lv[String(a.type)]??Math.tanh,s=Math.pow(10,ue(a.threshold)/20),u=8192,d=new Float32Array(u);for(let f=0;f<u;f++){let m=f/(u-1)*2-1;d[f]=l(m/Math.max(1e-6,s))*s}n.curve=d,n.oversample=ue(a.oversample)>=4?"4x":ue(a.oversample)>=2?"2x":"none",i.gain.value=Math.pow(10,ue(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()}}},cv=(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=u=>{i.delayTime.value=Math.min(5,ue(u.time)/1e3),o.gain.value=ue(u.feedback),qf(a,l,ue(u.mix))};return s(t),{input:n,output:r,update:s,automation:{time:[{param:i.delayTime,map:u=>Math.min(5,$s(u))}],feedback:[{param:o.gain}],mix:js(a.gain,l.gain)},dispose:()=>[n,r,i,o,a,l].forEach(u=>u.disconnect())}},dv=(e,t,n)=>{let r=e.createGain(),i=e.createGain(),o=e.createDelay(.5),a=Vf(e,"sine",ue(t.speed),n),l=e.createGain(),s=e.createGain(),u=e.createGain();a.connect(l).connect(o.delayTime),r.connect(o).connect(s).connect(i),r.connect(u).connect(i);let d=f=>{o.delayTime.value=ue(f.delay)/1e3,l.gain.value=ue(f.depth)/1e3,a.playbackRate.value=ue(f.speed),qf(s,u,ue(f.mix))};return d(t),{input:r,output:i,update:d,automation:{delay:[{param:o.delayTime,map:$s}],depth:[{param:l.gain,map:$s}],speed:[{param:a.playbackRate}],mix:js(s.gain,u.gain)},dispose:()=>{zf(a),[r,i,o,l,s,u].forEach(f=>f.disconnect())}}},mv=6,fv=(e,t,n)=>{let r=e.createGain(),i=e.createGain(),o=e.createGain(),a=e.createGain(),l=Vf(e,String(t.type)==="1"?"sine":"triangle",ue(t.speed),n),s=e.createGain(),u=e.createGain(),d=e.createGain(),f=[];r.connect(o);let m=o;for(let g=0;g<mv;g++){let y=e.createBiquadFilter();y.type="allpass",y.Q.value=.7071,s.connect(y.frequency),m.connect(y),m=y,f.push(y)}l.connect(s),m.connect(u).connect(a),o.connect(d).connect(a),a.connect(i);let p=g=>{let y=1e3/Math.max(.1,ue(g.delay));for(let x of f)x.frequency.value=y;s.gain.value=y*ue(g.decay),l.playbackRate.value=ue(g.speed),o.gain.value=ue(g.in_gain),a.gain.value=ue(g.out_gain),u.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:()=>{zf(l),[r,i,o,a,s,u,d,...f].forEach(g=>g.disconnect())}}},pv=(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=u=>{let d=`${ue(u.size)}:${ue(u.damping)}`;if(d!==l){let f=iv(e.sampleRate,ue(u.size),ue(u.damping)),m=e.createBuffer(1,f.length,e.sampleRate);m.getChannelData(0).set(f),i.buffer=m,l=d}o.gain.value=ue(u.wet),a.gain.value=ue(u.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(u=>u.disconnect())}},hv={"gain-node":av,"biquad-peaking":kr("peaking",!0),"biquad-lowshelf":kr("lowshelf",!0),"biquad-highshelf":kr("highshelf",!0),"biquad-highpass":kr("highpass",!1),"biquad-lowpass":kr("lowpass",!1),"worklet-compressor":Mr("hf-compressor"),"worklet-limiter":Mr("hf-limiter"),"worklet-gate":Mr("hf-gate"),"worklet-bitcrush":Mr("hf-bitcrush"),"worklet-pitchshift":Mr("hf-pitchshift"),waveshaper:uv,"delay-feedback":cv,"chorus-lfo":dv,"allpass-phaser":fv,convolver:pv};function $f(e){return e.nodes.some(t=>Gn(t.type)?.web.startsWith("worklet-")??!1)}function gv(e,t,n,r=0){let i=Gn(t);if(!i)throw new Error(`Unknown effect type: ${t}`);let o=Hn(t,n);if((t==="highpass"||t==="lowpass")&&String(o.poles)==="1")return sv(t)(e,o,r);let a=hv[i.web];if(!a)throw new Error(`No Web Audio builder for ${i.web}`);return a(e,o,r)}function Uf(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 Wf(e){return Bn(e).map(t=>{let n=Hn(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}`:"";return`${t.type}${r}${i}${o}${a}`}).join("|")}function jf(e,t,n=0){var f;let r=e.createGain(),i=e.createGain(),o=[],a=[],l=Uf(Bn(t)),s=r;for(let m of l){let p=null;if(m.preset){let g=e.createGain(),y=e.createGain(),x=e.createGain(),_=e.createGain();x.gain.value=m.amount,y.gain.value=1-m.amount,s.connect(g),g.connect(y).connect(_),p={entry:g,wet:x,dry:y,join:_},s=g}for(let g of m.nodes){let y=gv(e,g.type,g.params??{},n);s.connect(y.input),s=y.output,o.push({...g.id?{id:g.id}:{},type:g.type,handle:y})}p&&m.preset&&(s.connect(p.wet).connect(p.join),a.push({id:m.preset,...p}),s=p.join)}s.connect(i);let u=Wf(t),d={};for(let m of a)(d[f=m.id]??(d[f]=[])).push(...js(m.wet.gain,m.dry.gain));return{input:r,output:i,presets:d,nodes:o,update(m){if(Wf(m)!==u)return!1;Bn(m).forEach((g,y)=>{let x=o[y];x&&(x.handle.update(Hn(g.type,g.params)),g.id===void 0?delete x.id:x.id=g.id)});let p=0;for(let g of Uf(Bn(m))){if(!g.preset)continue;let y=a[p++];!y||y.id!==g.preset||(y.wet.gain.value=g.amount,y.dry.gain.value=1-g.amount)}return!0},dispose(){for(let{handle:m}of o)m.dispose();for(let{entry:m,wet:p,dry:g,join:y}of a)m.disconnect(),p.disconnect(),g.disconnect(),y.disconnect();r.disconnect(),i.disconnect()}}}var Kf={version:1,nodes:[]},Yf={version:1,lanes:[]};function Xf(e,t){let n=(typeof e.getAttribute=="function"?e.getAttribute(mt):null)??"";if(!n)return Yf;try{return ju(fi(n),t)}catch{return Yf}}function vn(e){let t=(typeof e.getAttribute=="function"?e.getAttribute(Ht):null)??"";if(!t)return{chain:Kf,raw:""};try{return{chain:Iu(t),raw:t}}catch{return{chain:Kf,raw:""}}}function Jf(e){return Xf(e,vn(e).chain)}function oo(e,t,n,r,i){let{chain:o}=vn(t),a=null,l=[],s=!1,u=0,d=()=>{try{a?(n.disconnect(a.input),a.output.disconnect(r),a.dispose()):n.disconnect(r)}catch{}a=null},f=(C,L)=>{if(C.nodes.length===0){n.connect(r);return}if($f(C)&&!zs(e)){n.connect(r);let P=++u;qs(e).then(()=>{s||P!==u||x(vn(t).chain)}).catch(()=>{});return}try{let P=jf(e,C,L);n.connect(P.input),P.output.connect(r),a=P}catch{n.connect(r)}},m=(C,L)=>{l=L&&a?Of(Xf(t,C),C,a.nodes,L,a.presets):[]},p=i?{...i}:null;f(o,p?.elapsed??0),m(o,p);let g=()=>{if(!p)return null;let C=typeof e.currentTime=="number"?e.currentTime:p.scheduledAt;return{scheduledAt:C,elapsed:p.elapsed+(C-p.scheduledAt)*p.rate,rate:p.rate}},y=C=>{let L=g();L&&(Sn(l,L.scheduledAt),m(C,L))},x=C=>{let L=g();Sn(l,L?.scheduledAt??0),d(),f(C,L?.elapsed??0),m(C,L)},_=null,k=t;return typeof MutationObserver<"u"&&typeof k?.nodeType=="number"&&(_=new MutationObserver(()=>{let C=vn(t);l.length>0&&Tr(l),!a||!a.update(C.chain)?x(C.chain):y(C.chain)}),_.observe(k,{attributes:!0,attributeFilter:[Ht,mt]})),{reanchor:C=>{if(s)return;let L=g();L&&Sn(l,L.scheduledAt),p={...C},m(vn(t).chain,p)},setRate:C=>{let L=g();s||!L||!Number.isFinite(C)||C<=0||C===L.rate||(p={...L,rate:C},Sn(l,L.scheduledAt),m(vn(t).chain,p))},dispose:()=>{s=!0,_?.disconnect(),l.length>0&&Sn(l,typeof e.currentTime=="number"?e.currentTime:0),a?.dispose()}}}var Qf="runtime_web_audio_bypass";function Ys(e,t){return typeof e.getAttribute=="function"?e.getAttribute(t):null}function Fr(e,t){return Ys(e,t)!==null}function bv(e){return Fr(e,"crossorigin")?!0:e.crossOrigin!=null}function xv(e){return typeof e.baseURI=="string"&&e.baseURI?e.baseURI:typeof document<"u"?document.baseURI:""}function yv(e){let t=typeof e.currentSrc=="string"?e.currentSrc:"";if(t)return[t];let n=Ys(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 Sv(e,t){let n;try{n=new URL(e,xv(t))}catch{return null}return n.protocol!=="http:"&&n.protocol!=="https:"?null:n}function vv(){return typeof window.origin=="string"?window.origin:window.location.origin}function Av(e,t){if(typeof window>"u")return null;let n=Sv(e,t);if(!n)return null;let r=vv(),i=r==="null";return!i&&n.origin===r||bv(t)?null:i?"opaque_document_origin":"cross_origin_no_cors"}function ep(e){return(typeof e.currentSrc=="string"?e.currentSrc:"")?!0:Fr(e,"src")}function An(e){for(let t of yv(e)){let n=Av(t,e);if(n)return{kind:"decode-only",reason:n,asset:t}}return{kind:"web-audio"}}function Ev(e){let t=[];Fr(e,Ht)&&t.push("fx-chain"),Fr(e,mt)&&t.push("automation"),Fr(e,yi)&&t.push("audio-group");let n=Number.parseFloat(Ys(e,"data-volume")??"");return Number.isFinite(n)&&n>1&&t.push("above-unity-gain"),t}function wv(){return typeof window<"u"&&!!window.__HF_EXPORT_RENDER_SEEK_CONFIG}var Zf=new WeakSet,_v={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"},Cv={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 En(e,t){if(t.kind==="web-audio"||wv()||Zf.has(e))return;let n=Ev(e);Zf.add(e);let r={asset:t.asset,reason:t.reason,lostProcessing:n,note:_v[t.reason]};ye({source:"hf-preview",type:"diagnostic",code:Qf,details:r});let i=n.length>0?` Native playback cannot reproduce: ${n.join(", ")} \u2014 ${Cv[t.reason]}`:"";console.info(`[hyperframes] ${Qf}: "${t.asset}" (${t.reason}): Web Audio capture withheld; the track plays through native HTMLMediaElement output.${i}`)}function Xs(e){return!Number.isFinite(e)||e<=0?1:e}function tp(e){return Ue(e)}function Rv(e,t){t||e.paused||!Zr().__hfDebug||console.debug("[hyperframes] webAudioTransport claimed fallback-playing element:",e.currentSrc||e.getAttribute("src")||"")}function Tv(e,t){let{elapsed:n,mediaStart:r,scheduledAt:i,globalRate:o,mediaRate:a,clipDuration:l}=t,s=Number.isFinite(l)&&l>0,u=l*a;if(n>=0){let f=n*a,m=u-f;return s&&m<=0?!1:(s?e.start(0,f+r,m):e.start(0,f+r),!0)}let d=-n/o;return s?e.start(i+d,r,u):e.start(i+d,r),!0}function ao(e,t,n){let r=Gf(Jf(e));r&&Ws([{param:t.gain}],r,mi.scale,n)}function Nr(e){return e.sourceKind==="buffer"}var so=class{constructor(){xe(this,"_ctx",null);xe(this,"_bufferCache",new Map);xe(this,"_failedSrcs",new Set);xe(this,"_mediaElementSources",new WeakMap);xe(this,"_activeSources",[]);xe(this,"_masterGain",null);xe(this,"_masterVolume",1);xe(this,"_masterMuted",!1);xe(this,"_groups",new Map);xe(this,"_rateAnchorCtx",0);xe(this,"_rateAnchorComp",0);xe(this,"_rate",1);xe(this,"_paused",!0);xe(this,"_playGeneration",0)}async init(){try{return this._ctx=new AudioContext,this._masterGain=this._ctx.createGain(),this._masterGain.connect(this._ctx.destination),this.applyMasterGain(),!0}catch{return!1}}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 D("webAudioTransport.fetch",new Error(`${i.status} ${n}`)),null;r=await i.arrayBuffer()}catch(i){return D("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),D("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 o=An(t);if(o.kind!=="web-audio"){try{n.disconnect()}catch{}return this._mediaElementSources.delete(t),En(t,o),null}return n}if(!this._ctx)return null;let r=An(t);if(r.kind!=="web-audio")return En(t,r),null;let i=this._ctx.createMediaElementSource(t);return this._mediaElementSources.set(t,i),i}async scheduleMediaElementPlayback(t,n,r,i,o,a,l=1){if(!this._ctx||!this._masterGain||a!==this._playGeneration)return null;try{if(this._ctx.state==="suspended"&&await this._ctx.resume(),a!==this._playGeneration)return null;let s=this.acquireMediaElementSource(t);if(!s)return null;let u=Xs(l),d=this._ctx.createGain();d.gain.value=o;let f=this._ctx.currentTime,m=i-n,p={scheduledAt:f,elapsed:m,rate:u},g=oo(this._ctx,t,s,d,p);d.connect(this.resolveDestination(t,f,i,u)??this._masterGain),ao(t,d,p),this._rate=u,this._rateAnchorCtx=f,this._rateAnchorComp=i;let y={fx:g,el:t,sourceNode:s,sourceKind:"media-element",gainNode:d,compositionStart:n,mediaStart:r,scheduledAt:f,priorMuted:t.muted,priorVolume:t.volume,mediaPlaybackRate:Oe(t),bounded:!1};return t.volume=1,this._activeSources.push(y),this._paused=!1,y}catch(s){return D("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(m){D("webAudioTransport.groupReanchor",m)}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=()=>la(n,t),s=l(),u=this._ctx.createGain();u.gain.value=s?.hasAttribute("data-hidden")?0:1,u.connect(a);let d=this._ctx.createGain();d.gain.value=tp(sa(s)),d.connect(u);let f=oo(this._ctx,s??{getAttribute:()=>null},o,d,r);return s&&ao(s,d,r),this._groups.set(t,{input:o,fader:d,muteGain:u,fx:f,generation:this._playGeneration,reanchor:m=>{Tr([{param:d.gain}]);let p=l();d.gain.value=tp(sa(p)),u.gain.value=p?.hasAttribute("data-hidden")?0:1,f?.reanchor(m),p&&ao(p,d,m)},dispose:()=>{try{f?.dispose(),o.disconnect(),d.disconnect(),u.disconnect(),a.disconnect()}catch{}}}),o}setGroupMuted(t,n){let r=this._groups.get(t);if(r)try{r.muteGain.gain.value=n?0:1}catch(i){D("webAudioTransport.setGroupMuted",i)}}resolveDestination(t,n,r,i){if(!this._masterGain)return null;let o=sc(t);if(!o)return this._masterGain;let a={scheduledAt:n,elapsed:r,rate:i};return this.groupInput(o,t.ownerDocument,a)??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,u=Number.POSITIVE_INFINITY){if(!this._ctx||!this._masterGain||l!==this._playGeneration)return null;try{if(this._ctx.state==="suspended"&&await this._ctx.resume(),l!==this._playGeneration)return null;let d=Xs(s),f=Oe(t),m=d*f,p=this._ctx.createBufferSource();p.buffer=n,p.playbackRate.value=m;let g=this._ctx.createGain();g.gain.value=a;let y=o-r,x=this._ctx.currentTime,_={scheduledAt:x,elapsed:y,rate:d},k=oo(this._ctx,t,p,g,_);if(g.connect(this.resolveDestination(t,x,o,d)??this._masterGain),ao(t,g,_),this._rate=d,this._rateAnchorCtx=x,this._rateAnchorComp=o,!Tv(p,{elapsed:y,mediaStart:i,scheduledAt:x,globalRate:d,mediaRate:f,clipDuration:u}))return p.disconnect(),k?.dispose(),g.disconnect(),null;let C=t.muted;t.muted=!0,Rv(t,C);let L={fx:k,el:t,sourceNode:p,sourceKind:"buffer",gainNode:g,compositionStart:r,mediaStart:i,scheduledAt:x,priorMuted:C,priorVolume:t.volume,mediaPlaybackRate:f,bounded:Number.isFinite(u)&&u>0};return this._activeSources.push(L),this._paused=!1,p.addEventListener("ended",()=>this.handleSourceEnded(p,L,t,C)),L}catch(d){return D("webAudioTransport.schedule",d),null}}setRate(t){let n=Xs(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{Nr(r)&&(r.sourceNode.playbackRate.value=n*r.mediaPlaybackRate),r.fx?.setRate(n)}catch(i){D("webAudioTransport.setRate",i)}for(let r of this._groups.values())try{r.fx?.setRate(n)}catch(i){D("webAudioTransport.setRate.group",i)}return!0}hasBoundedActiveSources(){return this._activeSources.some(t=>Nr(t)&&t.bounded)}stopAll(){for(let t of this._activeSources){try{Nr(t)&&t.sourceNode.stop(),t.sourceNode.disconnect(),t.fx?.dispose(),t.gainNode.disconnect()}catch{}Nr(t)?t.el.muted=t.priorMuted:t.el.volume=t.priorVolume}this._activeSources=[],this._paused=!0}setVolume(t){this._masterVolume=Math.max(0,Math.min(1,t)),this.applyMasterGain()}setElementVolume(t,n){let r=Ue(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){D("webAudioTransport.setElementVolume",o)}}setMuted(t){this._masterMuted=t,this.applyMasterGain()}applyMasterGain(){this._masterGain&&(this._masterGain.gain.value=this._masterMuted?0:this._masterVolume)}isActive(){return this._activeSources.length>0&&!this._paused}ownsElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t&&Nr(n))}routesElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t)}destroy(){this.stopAll();for(let t of this._groups.values())t.dispose();if(this._groups.clear(),this._bufferCache.clear(),this._failedSrcs.clear(),this._mediaElementSources=new WeakMap,this._ctx)try{this._ctx.close()}catch{}this._ctx=null,this._masterGain=null,this._masterVolume=1,this._masterMuted=!1}};var Lr="data-hf-studio-manual-edit-gesture";var np=`[${Lr}]`;function rp(e,t){let n=e.defaultView?.MutationObserver??globalThis.MutationObserver;if(!n||!e.documentElement)return{isActive:()=>e.querySelector(np)!=null,observing:!1,disconnect:()=>{}};let r=new Set(e.querySelectorAll(np)),i=l=>{for(let s of l){let u=s.target;Me(u)&&(u.hasAttribute(Lr)?r.add(u):r.delete(u))}},o=l=>{l.length!==0&&(i(l),t())},a=new n(o);return a.observe(e.documentElement,{subtree:!0,attributes:!0,attributeFilter:[Lr]}),{observing:!0,isActive:()=>{o(a.takeRecords());for(let l of r){if(l.isConnected&&l.hasAttribute(Lr))return!0;r.delete(l)}return!1},disconnect:()=>{a.disconnect(),r.clear()}}}var ip=333.3333333333333;function op(e){return e.isPlaying&&e.hasCapturedTimeline&&e.currentTimeSeconds<2?!1:e.compositionChanged===!0?!0:Number.isInteger(e.tick)&&e.tick>0&&e.tick%60===0}var kv=/^\s*spring\(\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+))\s*\)\s*$/;function ap(e){return Math.max(0,Math.min(1,e))}function sp(e){let t=kv.exec(e);if(!t)return null;let n=Number(t[1]);return Number.isFinite(n)?ap(n):null}function lp(e,t){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let n=ap(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 Mv=/^\s*wiggle\(\s*(\d+)\s*,\s*(easeOut|easeInOut|anticipate|uniform)\s*(?:,\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?)\s*)?\)\s*$/,Fv=Math.PI*2;function Nv(e){let t=Mv.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 Lv(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(Fv*t*e)}function up(e,t){let n=Nv(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=>Lv(a,n.wiggles,n.type,n.amplitude);return t?.set(r,o),o}var Dv=24,cp=e=>e>=1?1:0,Iv=e=>e,lo=String.raw`([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?)`,Pv=new RegExp(String.raw`^\s*M\s*0\s*,\s*0\s+C\s*${lo}\s*,\s*${lo}\s+${lo}\s*,\s*${lo}\s+1\s*,\s*1\s*$`,"i");function dp(e,t,n){let r=1-e;return 3*r*r*e*t+3*r*e*e*n+e*e*e}function Ov(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<Dv;l+=1){let s=(o+a)/2;dp(s,t,r)<e?o=s:a=s}return dp((o+a)/2,n,i)}function Gv(e){let t=Pv.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=>Ov(a,n,r,i,o)}function Hv(e,t){if(!e.startsWith("spring("))return null;let n=sp(e);if(n===null)return null;let r=t.get(n);if(r)return r;let i=o=>lp(o,n);return t.set(n,i),i}function Bv(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=Gv(n);return i&&t.set(n,i),i}function mp(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"?cp:up(s,i)??Hv(s,r)??Bv(s,n),a=(s,u,d=[])=>{let f=o(s);return f||(typeof s=="string"&&/^(?:hold|spring|wiggle|custom)(?:\(|$)/.test(s.trim())&&Be("custom_ease_parse_failed",{ease:s}),t.call(u,s,...d)??Iv)};e.parseEase=function(u,...d){return a(u,this,d)};let l=e.registerEase;if(typeof l=="function"){l("hold",cp);let s=u=>{let d=f=>f;d.config=(...f)=>a(`${u}(${f.join(",")})`,e),l(u,d)};s("spring"),s("wiggle"),s("custom")}return e.__hfCustomEaseInstalled=!0,!0}function Uv(e){let t=e.ownerDocument?.defaultView;return t&&e instanceof t.Element?!0:e instanceof Element}function Wv(e){if(!Uv(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 Vv(e){let t=Array.from(e.querySelectorAll("video, audio")).filter(Wv).filter(i=>i.readyState<3),n=Array.from(e.querySelectorAll("img")).filter(i=>!i.complete),r=e.fonts?.status==="loading";return{pendingMedia:t,pendingImages:n,fontsLoading:r}}function zv(e,{pendingMedia:t,pendingImages:n,fontsLoading:r},i){let o=t.map(s=>new Promise(u=>{if(s.error){u();return}let d=()=>{s.removeEventListener("canplay",d),s.removeEventListener("error",d),i.removeEventListener("abort",d),u()};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 qv(e,t){let n=Vv(e);return n.pendingMedia.length===0&&n.pendingImages.length===0&&!n.fontsLoading?null:zv(e,n,t)}var $v=50;function jv(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,$v)};a()})}var Kv=50,Yv=2,Xv=1500;function Js(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 Jv(e,t){let n=e.defaultView;return n?(async()=>{let r=await Js(n,t);if(t.aborted)return;let i=await Js(n,t),o=0;for(;!t.aborted&&o<Yv;){if(i-r>=Xv)return;let a=await Js(n,t);if(t.aborted)return;o=a-i<Kv?o+1:0,i=a}})():null}var Qv=8e3;function fp(e,t,n={}){let r=n.inputs??[qv,jv,Jv],i=new AbortController,o=r.map(u=>u(e,i.signal)).filter(u=>u!==null);if(o.length===0){t({timedOut:!1});return}let a=n.timeoutMs??Qv,l,s=new Promise(u=>{l=setTimeout(()=>u("timed-out"),a)});Promise.race([Promise.all(o).then(()=>"done"),s]).then(u=>{clearTimeout(l),i.abort(),t({timedOut:u==="timed-out"})})}var el=new Map,Dr=new Map,Qs=new Map,Zs=()=>{},hp=()=>{},pp=0;function tl(e){return/^[a-z][a-z0-9-]{0,63}$/.test(e)}function gp(e){let t=(Qs.get(e)??0)+1;return Qs.set(e,t),t}function bp(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>0?e:(pp-=1,pp)}function nl(e,t){let n=Dr.get(e);if(!n)return;let r=()=>Qs.get(e)===t.generation&&Dr.get(e)===n;try{Promise.resolve(n(t.payload)).then(()=>{r()&&hp(e,t.requestId)},i=>{r()&&Zs(e,t.requestId,i)})}catch(i){r()&&Zs(e,t.requestId,i)}}function xp(e){Zs=e}function yp(e){hp=e}function uo(e,t,n){if(!tl(e))return;let r={payload:t,requestId:bp(n),generation:gp(e)};el.set(e,r),nl(e,r)}function co(e,t){tl(e)&&(el.delete(e),nl(e,{payload:void 0,requestId:bp(t),generation:gp(e)}))}function Sp(e,t){if(!tl(e))throw new Error(`Invalid HyperFrames runtime-data channel: ${e}`);Dr.set(e,t);let n=el.get(e);return n&&nl(e,n),()=>{Dr.get(e)===t&&Dr.delete(e)}}var rl="data-hf-authored-duration",il="data-hf-authored-end",vp=!1;function lt(e){if(e){if(typeof e.pause!="function"){vp||(vp=!0,Be("timeline_missing_pause",{}));return}try{e.pause()}catch(t){D("runtime.timeline.pause",t)}}}function t1(){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 n1(e,t){return t!==null&&e.length===t.length&&e.every((n,r)=>n===t[r])}function Ap(e,t,n){let r=null,i=!0;return()=>{let o=e();if(o.length===0)return r=null,i=!0,!0;if(n1(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 Ep(){let e=Yc(),t=()=>{};tu(ye),xp((c,h,b)=>{ye({source:"hf-preview",type:"runtime-data-error",channel:c,requestId:h,message:b instanceof Error?b.message:String(b)})}),yp((c,h)=>{try{t()}catch(b){ye({source:"hf-preview",type:"runtime-data-error",channel:c,requestId:h,message:b instanceof Error?b.message:String(b)});return}ye({source:"hf-preview",type:"runtime-data-applied",channel:c,requestId:h})}),Ki(document),Ms(document),lc(document);let n=t1();e.canonicalFps=n.fps??e.canonicalFps,Zl(e.canonicalFps),window.__HF_EXPORT_RENDER_SEEK_CONFIG&&console.info("[hyperframes] render runtime fps",{canonicalFps:e.canonicalFps,source:n.source,rawFpsSource:n.rawFpsSource,rawFps:n.rawFps,fallbackReason:n.fallbackReason});let r=null,i=null,o=null,a=[],l=new Set,s=null,u=new Set,d=(c,h,b)=>{u.has(c)||(u.add(c),Be(h,b))};if(typeof window.__hfRuntimeTeardown=="function")try{window.__hfRuntimeTeardown()}catch(c){D("runtime.init.site1",c)}let f=new io;e.transportClock=f;let m=new so,p=!1;m.init().then(c=>{p=c}),window.__hf=window.__hf||{};let g=c=>c.closest("[data-hidden]")!==null||Si(c.ownerDocument,c),y=()=>{let c=window.gsap,h=window;if(!(!c?.registerPlugin||h.__hfAutoNoopRegistered))try{c.registerPlugin({name:"_auto",init:()=>!1}),h.__hfAutoNoopRegistered=!0}catch(b){d("auto_marker_install_failed","auto_marker_install_failed",{reason:"threw"}),D("runtime.autoMarker.install",b)}},x=()=>{let c=window.gsap;if(!c){d("custom_ease_missing_gsap","custom_ease_install_failed",{reason:"missing_gsap"});return}try{mp(c)||d("custom_ease_no_parse_ease","custom_ease_install_failed",{reason:"no_parseEase"})}catch(h){d("custom_ease_install_threw","custom_ease_install_failed",{reason:"threw"}),D("runtime.customEase.install",h)}};y(),x(),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{lu(document)}catch(c){D("runtime.init.cssVariables",c)}window.__timelines=window.__timelines||{};let _=()=>{let c=document.querySelector('[data-composition-id][data-root="true"]');if(Ae(c))return c;let h=Array.from(document.querySelectorAll("[data-composition-id]"));return h.find(b=>!b.parentElement?.closest("[data-composition-id]"))??h[0]??null};if(Array.isArray(window.__timelines)){let c=window.__timelines,h=_()?.getAttribute("data-composition-id")??"root",b={};if(c.length===1)b[h]=c[0];else for(let v=0;v<c.length;v++)b[`tl-${v}`]=c[v];window.__timelines=b}let k=_();k&&!k.hasAttribute("data-start")&&k.setAttribute("data-start","0");let C=c=>{a.push(c)},L=(c,h,b)=>{let v=b??`${c}:${JSON.stringify(h)}`;l.has(v)||(l.add(v),ye({source:"hf-preview",type:"diagnostic",code:c,details:h}))},P=c=>{let h={scale:1,focusX:960,focusY:540},b=[],v=[],w={time:c.getTime(),duration:c.getDuration(),isPlaying:c.isPlaying(),renderMode:!1,timelineDirty:!1};return{play:c.play,pause:c.pause,seek:c.seek,getTime:c.getTime,getDuration:c.getDuration,isPlaying:c.isPlaying,getMainTimeline:()=>null,getElementBounds:()=>{},getElementsAtPoint:()=>{},setElementPosition:()=>{},previewElementPosition:()=>{},setElementKeyframes:()=>{},setElementScale:()=>{},setElementFontSize:()=>{},setElementTextContent:()=>{},setElementTextColor:()=>{},setElementTextShadow:()=>{},setElementTextFontWeight:()=>{},setElementTextFontFamily:()=>{},setElementTextOutline:()=>{},setElementTextHighlight:()=>{},setElementVolume:()=>{},setStageZoom:()=>{},getStageZoom:()=>h,setStageZoomKeyframes:()=>{},getStageZoomKeyframes:()=>b,addElement:()=>!1,removeElement:()=>!1,updateElementTiming:()=>!1,setElementTiming:()=>{},updateElementSrc:()=>!1,updateElementLayer:()=>!1,updateElementBasePosition:()=>!1,markTimelineDirty:()=>{},isTimelineDirty:()=>!1,rebuildTimeline:()=>{},ensureTimeline:()=>{},enableRenderMode:()=>{},disableRenderMode:()=>{},renderSeek:c.renderSeek,getElementVisibility:()=>({visible:!1}),getVisibleElements:()=>v,getRenderState:()=>({...w,time:c.getTime(),duration:c.getDuration(),isPlaying:c.isPlaying()})}},F=1/60,S=.75,A=.05,E=100,T=240,I=c=>{if(c instanceof Error)return c.message||String(c);if(typeof c=="string")return c;try{return JSON.stringify(c)}catch{return String(c??"")}},H=c=>{let h=c.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=c=>{if(c==null||c.trim()==="")return null;let h=Number.parseFloat(c);return!Number.isFinite(h)||h<=0?null:`${h}px`},Y=()=>_(),M=()=>{let c=Y();if(!c)return;let h=j(c.getAttribute("data-width")),b=j(c.getAttribute("data-height"));h&&(c.style.width=h),b&&(c.style.height=b),h&&c.style.setProperty("--comp-width",h),b&&c.style.setProperty("--comp-height",b),h&&(document.documentElement.style.width=h),b&&(document.documentElement.style.height=b),h&&(document.body.style.width=h),b&&(document.body.style.height=b)},W=()=>{let c=Y(),h=Array.from(document.querySelectorAll("[data-composition-id]")).filter(b=>b.hasAttribute("data-duration")||b.hasAttribute("data-end"));for(let b of h){if(c&&b===c)continue;let v=b.getAttribute("data-duration"),w=b.getAttribute("data-end");v!=null&&!b.hasAttribute(rl)&&b.setAttribute(rl,v),w!=null&&!b.hasAttribute(il)&&b.setAttribute(il,w),b.removeAttribute("data-duration"),b.removeAttribute("data-end")}},te=()=>{let c=Y();if(!c)return;c.style.position||(c.style.position="relative"),c.style.overflow="hidden";let h=j(c.getAttribute("data-width")),b=j(c.getAttribute("data-height"));h&&(c.style.width=h),b&&(c.style.height=b);let v=Array.from(c.children);for(let w of v){let R=w.tagName.toLowerCase();if(R==="script"||R==="style"||R==="link"||R==="meta"||!w.hasAttribute("data-start")||w.hasAttribute("data-hf-autostamped"))continue;let N=(w.style.top==="0px"||w.style.top==="0")&&(w.style.left==="0px"||w.style.left==="0")&&w.style.width==="100%"&&w.style.height==="100%",B=/translate\(\s*-50%\s*,\s*-50%\s*\)/.test(w.style.transform);if(N&&B&&!w.hasAttribute("data-width")&&!w.hasAttribute("data-height")){let X=w.style.top,we=w.style.left,Gt=w.style.width,Ne=w.style.height;w.style.top="",w.style.left="",w.style.width="",w.style.height="";let Qe=window.getComputedStyle(w);Qe.top!=="auto"||Qe.bottom!=="auto"||Qe.left!=="auto"||Qe.right!=="auto"||Qe.width!=="0px"||Qe.height!=="0px"||(w.style.top=X,w.style.left=we,w.style.width=Gt,w.style.height=Ne)}let $=window.getComputedStyle(w),ne=$.position;if(ne!=="absolute"&&ne!=="fixed"&&(w.style.position="absolute"),!!w.style.top||!!w.style.bottom||$.top!=="auto"||$.bottom!=="auto"||(w.style.top="0"),!!w.style.left||!!w.style.right||$.left!=="auto"||$.right!=="auto"||(w.style.left="0"),R!=="audio"){let X=j(w.getAttribute("data-width")),we=j(w.getAttribute("data-height")),Gt=$.width!=="0px"&&$.width!=="auto",Ne=$.height!=="0px"&&$.height!=="auto";X?!w.style.width&&!Gt&&(w.style.width=X):!w.style.width&&$.width==="0px"&&(w.style.width="100%"),we?!w.style.height&&!Ne&&(w.style.height=we):!w.style.height&&$.height==="0px"&&(w.style.height="100%")}}},U=c=>tt({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:c}),K=null,z=c=>{let h=K;K=U(!0);try{return c()}finally{K=h}},J=c=>c&&K?K:U(c),G=(c,h=0,b)=>J(b?.includeAuthoredTimingAttrs??!0).resolveStartForElement(c,h),O=(c,h)=>J(h?.includeAuthoredTimingAttrs??!0).resolveDurationForElement(c),q=c=>{let h=c.closest("[data-composition-id]"),b=h?G(h,0):null,v=h?O(h,{includeAuthoredTimingAttrs:!0}):null;return{compositionRoot:h,inheritedStart:b,inheritedDuration:v}},Z=c=>J(!0).resolveMediaStartForElement(c);window.__hfResolveMediaStartSeconds=Z,a.push(()=>{window.__hfResolveMediaStartSeconds===Z&&delete window.__hfResolveMediaStartSeconds});let ce=(c,h,b)=>{let v=c.tagName.toLowerCase();if(v==="script"||v==="style"||v==="link"||v==="meta")return!1;let R=v==="video"||v==="audio"?Z(c):G(c,0),N=O(c),B=c.getAttribute("data-composition-id");if(B){let He=(window.__timelines??{})[B],ie=null;if(He&&typeof He.duration=="function"){let we=Number(He.duration());Number.isFinite(we)&&we>0&&(ie=we)}!(c.hasAttribute("data-duration")||c.hasAttribute("data-end")||c.hasAttribute(rl)||c.hasAttribute(il))&&(N==null||N<=0)&&ie!=null&&(N=ie)}let $=N!=null&&N>0?R+N:Number.POSITIVE_INFINITY,ne=window.__HF_EXPORT_RENDER_SEEK_CONFIG?Oa(R,e.canonicalFps):R,he=window.__HF_EXPORT_RENDER_SEEK_CONFIG&&Number.isFinite($)?Oa($,e.canonicalFps):$;return ti(h,ne,he,b)},re=!!document.querySelector("[data-composition-src]"),V=!1;{let c=document.querySelectorAll("[data-composition-id]:not([data-composition-src])");for(let h of c){let b=h.getAttribute("data-composition-id");if(b&&h.children.length===0&&document.querySelector(`template#${CSS.escape(b)}-template`)){V=!0;break}}}let Q=!re&&!V,Ee=c=>{if(!c||typeof c.duration!="function")return null;try{let h=Number(c.duration());return Number.isFinite(h)?Math.max(0,h):null}catch{return null}},de=c=>typeof c=="number"&&Number.isFinite(c)&&c>F,Cn=()=>{let c=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));return c.length===0?null:z(()=>{let h=[];for(let v of c){let w=Z(v);if(!Number.isFinite(w))continue;let R=bi(v);R==null||R<=F||h.push(Math.max(0,w)+R)}let{seconds:b}=rr({authoredDurationSeconds:null,clipEndsSeconds:h});return b!==null&&b>F?b:null})},ut=()=>{let c=Y();if(!c)return null;let h=window.__timelines??{},b=tt({timelineRegistry:h,includeAuthoredTimingAttrs:!0}),v=Fe(c.getAttribute("data-duration")),w=[],R=Array.from(c.querySelectorAll("[data-composition-id][data-start]"));for(let B of R){if(!Me(B)||B.parentElement?.closest("[data-composition-id]")!==c)continue;let ne=b.resolveStartForElement(B,0),he=b.resolveDurationForElement(B);!Number.isFinite(ne)||he==null||he<=0||w.push(Math.max(0,ne)+he)}let{seconds:N}=rr({authoredDurationSeconds:null,clipEndsSeconds:[v,...w]});return N!==null&&N>F?N:null},ih=c=>c.hasAttribute("data-composition-id")||c.hasAttribute("data-composition-src"),oh=c=>{let h=window;return!!(h.lottie||h.DotLottie||c.querySelector("[data-lottie-src]"))},pl=()=>{let c=Y();if(!c)return rr({authoredDurationSeconds:null,clipEndsSeconds:[]});let h=tt({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:!0}),b=[];for(let w of Array.from(c.querySelectorAll("[data-start]"))){if(!Me(w))continue;let R=h.resolveStartForElement(w,0);if(!Number.isFinite(R))continue;let N=h.resolveDurationForElement(w);N!=null?b.push(Math.max(0,R)+N):(ge(w)||ih(w))&&b.push(null)}oh(c)&&b.push(null);let v=rr({authoredDurationSeconds:null,clipEndsSeconds:b});return v.pendingClips>0?{...v,seconds:null,source:"unresolved",reason:"a clip's length is pending"}:v},yo=null,ah=()=>{if(Rn)return pl();let c=Tn();return yo?.revision!==c&&(yo={revision:c,result:pl()}),yo.result},sh=c=>{window.__hf=window.__hf||{},window.__hf.durationSource={source:c.source,seconds:c.seconds,pendingClips:c.pendingClips},c.source==="derived"&&L("composition_duration_derived",{source:c.source,seconds:c.seconds,pendingClips:c.pendingClips},`composition_duration_derived:${c.seconds}`)},lh=()=>{let c=Cn();return typeof c!="number"||!Number.isFinite(c)||c<=F?null:c},uh=c=>de(c)?Math.max(F,c*S):F,hl=()=>{let c=0;for(let h of e.deterministicAdapters){let b=h.getInferredDurationSeconds;if(typeof b!="function")continue;let v=null;try{v=b()}catch(w){D("runtime.init.adapterDuration",w)}typeof v=="number"&&Number.isFinite(v)&&v>0&&(c=Math.max(c,v))}return c>F?c:null},Rn=!1,gl=()=>Rn&&window.__HF_EXPORT_RENDER_SEEK_CONFIG!=null,ch=["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",xi,"data-playback-rate","data-automation","data-playback-start","data-media-start","id","src"],bl=["loadedmetadata","durationchange","emptied"],Or=null,xl=-1,yl=null,Dt=null,Sl=0,Kt=()=>{},Yt=()=>{Sl+=1,Kt()},vl=()=>({media:lh(),authoredComposition:ut()}),dh=()=>{let c=window.__timelines??{},h="";for(let b of Object.keys(c)){let v=c[b];v&&(h+=`${b}=${Ee(v)??"?"};`)}return h},mh=()=>{if(!(Dt||typeof MutationObserver>"u")){Dt=new MutationObserver(Yt),Dt.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0,attributeFilter:ch});for(let c of bl)document.addEventListener(c,Yt,!0);a.push(()=>{Dt?.disconnect(),Dt=null,Yt();for(let c of bl)document.removeEventListener(c,Yt,!0)})}},Tn=()=>{mh(),Dt&&Dt.takeRecords().length>0&&Yt();let c=dh();return c!==yl&&(yl=c,Yt()),Sl},Al=c=>Rn?vl():(c??(c=Tn()),Or&&xl===c||(xl=c,Or=vl()),Or),ze=(c,h=0,b)=>{let v=Ee(c),{media:w,authoredComposition:R}=Al(b),N=hl(),B=Math.max(w??0,R??0,N??0),$=Number.isFinite(h)&&h>F?h:0,ne=0,he=null;return de(v)?ne=Math.max(v,B,$):de(B)?ne=Math.max(B,$):$>0?ne=$:(he=ah(),ne=he.seconds??0),he?sh(he):window.__hf?.durationSource&&delete window.__hf.durationSource,ne>0?Math.max(0,ne):0},So=()=>{let c=window.__timelines??{},h=me=>{let se=Object.entries(c).filter(fe=>!!fe[1]&&typeof fe[1].play=="function"&&typeof fe[1].pause=="function");if(se.length!==1)return{timeline:null};let oe=se[0];if(!oe)return{timeline:null};let[ve,_e]=oe;return{timeline:_e,selectedTimelineIds:[ve],selectedDurationSeconds:Ee(_e),diagnostics:{code:"root_timeline_sole_registered_fallback",details:{reason:me,soleTimelineId:ve}}}},b=tt({timelineRegistry:c,includeAuthoredTimingAttrs:!0}),{media:v,authoredComposition:w}=Al(),R=Math.max(v??0,w??0)||null,N=uh(R),B=me=>{let se=document.querySelector(`[data-composition-id="${CSS.escape(me)}"]`);return se?b.resolveStartForElement(se,0):0},$=me=>{let se=window.gsap;if(!se||typeof se.timeline!="function")return null;let oe=se.timeline({paused:!0});for(let ve of me)oe.add(ve.timeline,B(ve.compositionId));return oe},ne=(me,se)=>{if(!de(me))return null;let oe=window.gsap;if(!oe||typeof oe.timeline!="function")return null;let ve=oe.timeline({paused:!0});if(se)try{ve.add(se,0)}catch(fe){D("runtime.init.site2",fe)}let _e=ve;if(typeof _e.to=="function")try{_e.to({},{duration:me})}catch(fe){D("runtime.init.site3",fe)}return ve},he=(me,se)=>{if(!me||typeof me.getChildren!="function")return[];try{let oe=me.getChildren(!0,!0,!0);return Array.isArray(oe)?se.filter(ve=>oe.includes(ve.timeline)):[]}catch{return[]}},He=(me,se)=>{let oe=me,ve={addedIds:[],nested:[]};if(typeof oe.getChildren!="function")return ve;try{let _e=oe.getChildren(!0,!0,!0)??[];if(!Array.isArray(_e))return ve;let fe=[];for(let Ce of se)if(!_e.some(ct=>ct===Ce.timeline))try{let ct=B(Ce.compositionId);me.add(Ce.timeline,ct),fe.push(Ce.compositionId)}catch(ct){D("runtime.init.site4",ct)}return{addedIds:fe,nested:he(me,se)}}catch{return ve}},ie=Y(),X=ie?.getAttribute("data-composition-id")??null;if(!X)return h("root_missing_composition_id");let we=c[X]??null,Ne=(()=>{if(!ie)return[];let me=new Set,se=Array.from(ie.querySelectorAll("[data-composition-id]")),oe=[];for(let ve of se){let _e=ve.getAttribute("data-composition-id");if(!_e||_e===X||me.has(_e))continue;me.add(_e);let fe=c[_e]??null;if(!fe||typeof fe.play!="function"||typeof fe.pause!="function")continue;let Ce=Ee(fe);oe.push({compositionId:_e,timeline:fe,durationSeconds:Ce??0})}return oe})(),Qe=me=>{for(let se of me){let oe=se.timeline;if(typeof oe.paused=="function")try{oe.paused(!1)}catch(ve){D("runtime.init.site5",ve)}}};if(we){let me=Ne.length>0?He(we,Ne):{addedIds:[],nested:[]},se=me.addedIds;if(Qe(me.nested),(Ne.length>0||!document.querySelector("[data-composition-id]:not([data-composition-id='"+X+"'])"))&&(Gr=!0),se.length>0)try{let fe=we.time();we.seek(fe,!1)}catch{}let oe=Ee(we);if(!de(oe)&&Ne.length>0){let fe=Ne.map(zh=>zh.compositionId),Ce=$(Ne),Jt=Ee(Ce);if(Ce&&de(Jt))return Qe(he(Ce,Ne)),{timeline:Ce,selectedTimelineIds:fe,selectedDurationSeconds:Jt,mediaDurationFloorSeconds:v,diagnostics:{code:"root_timeline_unusable_fallback",details:{rootCompositionId:X,rootDurationSeconds:oe,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:N,selectedDurationSeconds:Jt,mediaDurationFloorSeconds:v,authoredCompositionDurationFloorSeconds:w,selectedTimelineIds:fe,autoNestedChildren:se}}};let ct=ne(R??0,we),Po=Ee(ct);if(ct&&de(Po))return{timeline:ct,selectedTimelineIds:[X],selectedDurationSeconds:Po,mediaDurationFloorSeconds:v,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:X,rootDurationSeconds:oe,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:v,authoredCompositionDurationFloorSeconds:w,selectedDurationSeconds:Po,selectedTimelineIds:[X],autoNestedChildren:se}}}}if(!de(oe)&&Ne.length===0){let fe=ne(R??0,we),Ce=Ee(fe);if(fe&&de(Ce))return{timeline:fe,selectedTimelineIds:[X],selectedDurationSeconds:Ce,mediaDurationFloorSeconds:v,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:X,rootDurationSeconds:oe,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:v,authoredCompositionDurationFloorSeconds:w,selectedDurationSeconds:Ce,selectedTimelineIds:[X]}}}}let ve=Fe(ie?.getAttribute("data-duration")),_e=Math.max(de(ve)?ve:0,w??0);if(_e>0&&de(_e)&&de(oe)&&_e>=oe+.5){let fe=we;if(typeof fe.to=="function")try{fe.to({},{duration:0},_e)}catch(Jt){D("runtime.init.site6",Jt)}let Ce=Ee(we);if(de(Ce))return{timeline:we,selectedTimelineIds:[X],selectedDurationSeconds:Ce,mediaDurationFloorSeconds:v,diagnostics:{code:"root_timeline_padded_to_declared_duration",details:{rootCompositionId:X,rootDurationSeconds:oe,rootDeclaredDur:ve,authoredCompositionDurationFloorSeconds:w,newDur:Ce}}}}return{timeline:we,selectedTimelineIds:[X],selectedDurationSeconds:oe,mediaDurationFloorSeconds:v,diagnostics:se.length>0?{code:"root_timeline_auto_nested_children",details:{rootCompositionId:X,selectedDurationSeconds:oe,autoNestedChildren:se}}:void 0}}if(Ne.length>0){let me=Ne.map(ve=>ve.compositionId),se=$(Ne),oe=Ee(se);if(se)return Qe(he(se,Ne)),{timeline:se,selectedTimelineIds:me,selectedDurationSeconds:oe,mediaDurationFloorSeconds:v,diagnostics:{code:"root_timeline_missing_fallback",details:{rootCompositionId:X,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:N,selectedDurationSeconds:oe,mediaDurationFloorSeconds:v,selectedTimelineIds:me}}}}return h("root_composition_id_unmatched_in_registry")},Gr=!1,fh=c=>{let h=window.gsap,b=c;if(!(!b||typeof b.getChildren!="function"||!h||typeof h.parseEase!="function"))for(let v of b.getChildren(!0,!0,!0)){let w=v,R=w.timeline;if(!R||!("_ease"in R)||typeof R._ease=="function")continue;let N=w.vars?.keyframes,$=(N&&!Array.isArray(N)?N.ease:void 0)??w.vars?.ease??"none";try{let ne=h.parseEase($);typeof ne=="function"&&(R._ease=ne)}catch(ne){Be("keyframe_ease_repair_failed",{ease:typeof $=="string"?$:String($)}),D("runtime.keyframeEase.repair",ne)}}},kn=()=>{if(x(),!Q)return!1;let c=e.capturedTimeline,h=Ee(c),b=de(h);if(c&&b&&Gr)return!1;let v=So();if(!v.timeline)return!1;if(c&&c===v.timeline)return typeof c.timeScale=="function"&&c.timeScale(e.playbackRate),!1;e.capturedTimeline=v.timeline,typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate),fh(e.capturedTimeline);let w=ze(e.capturedTimeline,0);if(w<=0&&typeof e.capturedTimeline.progress=="function"&&(e.capturedTimeline.progress(1,!0),e.capturedTimeline.progress(0,!1),lt(e.capturedTimeline)),w>0){try{f.setDuration(w)}catch{}if(typeof e.capturedTimeline.totalTime=="function"){typeof e.capturedTimeline.progress=="function"&&e.capturedTimeline.progress(1e-4,!0);let N=Math.max(0,e.currentTime||0);e.capturedTimeline.totalTime(N,!1),lt(e.capturedTimeline)}let R=window.__hfStudioManualEditsApply;typeof R=="function"&&R(),Ki(document)}if(v.diagnostics&&ye({source:"hf-preview",type:"diagnostic",code:v.diagnostics.code,details:v.diagnostics.details}),ye({source:"hf-preview",type:"diagnostic",code:"timeline_bound",details:{selectedTimelineIds:v.selectedTimelineIds??[],selectedDurationSeconds:v.selectedDurationSeconds??null,mediaDurationFloorSeconds:v.mediaDurationFloorSeconds??null}}),window.parent!==window){let R=Y(),N=w>0?w:0,B=String(N>0?N:1),$=new Set,ne=ie=>ie.tagName.toLowerCase()===an,he=new Set(document.querySelectorAll("[data-start]")),He=ie=>{let X=ie.parentElement;for(;X&&X!==R;){if(he.has(X))return!0;X=X.parentElement}return!1};if(e.capturedTimeline.getChildren)try{for(let ie of e.capturedTimeline.getChildren(!0))if(typeof ie.targets=="function")for(let X of ie.targets())Ae(X)&&X!==R&&(ne(X)||X.hasAttribute("data-start")||He(X)||$.has(X)||($.add(X),X.setAttribute("data-start","0"),X.setAttribute("data-duration",B),X.setAttribute("data-hf-autostamped","1")))}catch{}if(Ae(R))for(let ie of R.querySelectorAll("[id]"))Ae(ie)&&ie!==R&&(ie.hasAttribute("data-start")||He(ie)||$.has(ie)||ie.tagName==="SCRIPT"||ie.tagName==="STYLE"||ie.tagName==="LINK"||ne(ie)||($.add(ie),ie.setAttribute("data-start","0"),ie.setAttribute("data-duration",B),ie.setAttribute("data-hf-autostamped","1")))}for(let R of Mn)Hr.delete(R),kl(R);return!0},El=()=>{if(e.tornDown)return;let c=So();if(!c.timeline){e.capturedTimeline=null,Gr=!1,f.setDuration(0),zr(e.currentTime);return}e.capturedTimeline!==c.timeline&&(Gr=!1,kn()),zr(e.currentTime)};t=()=>{El(),yt()},window.__hfForceTimelineRebind=El;let ph=()=>{let c=Y();if(!Ae(c))return;let h=c.getBoundingClientRect(),b=Number(c.getAttribute("data-width")),v=Number(c.getAttribute("data-height")),w=window.getComputedStyle(c),R=Number.isFinite(b)&&b>0&&Number.isFinite(v)&&v>0,N=h.width<=0||h.height<=0||c.clientWidth<=0||c.clientHeight<=0;!R||!N||L("root_stage_layout_zero",{compositionId:c.getAttribute("data-composition-id")??null,declaredWidth:b,declaredHeight:v,rectWidth:Math.round(h.width),rectHeight:Math.round(h.height),clientWidth:c.clientWidth,clientHeight:c.clientHeight,display:w.display,visibility:w.visibility,overflow:w.overflow},`root-stage-layout-zero:${c.getAttribute("data-composition-id")??"unknown"}`)},hh=()=>{e.tornDown||(s!=null&&window.cancelAnimationFrame(s),s=window.requestAnimationFrame(()=>{s=null,ph()}))},gh=()=>{i=c=>{let h=I(c.error??c.message).slice(0,T);if(!h)return;let b=H(h);ye({source:"hf-preview",type:"diagnostic",code:b.code,details:{category:b.category,message:h,filename:c.filename||null,line:Number.isFinite(c.lineno)?c.lineno:null,column:Number.isFinite(c.colno)?c.colno:null}})},o=c=>{let h=I(c.reason).slice(0,T);if(!h)return;let b=H(h);ye({source:"hf-preview",type:"diagnostic",code:`${b.code}_unhandled_rejection`,details:{category:`${b.category}-unhandled-rejection`,message:h}})},window.addEventListener("error",i),window.addEventListener("unhandledrejection",o)},bh=()=>{let c=Array.from(document.querySelectorAll("img, video, audio, source, link[rel='stylesheet']"));for(let b of c){let v=()=>{if(!Me(b))return;let w=b.tagName.toLowerCase(),R=b.getAttribute("src")??b.getAttribute("href")??b.getAttribute("poster")??null,N=w==="link"?"runtime_stylesheet_load_failed":"runtime_asset_load_failed";L(N,{tagName:w,assetUrl:R,currentSrc:(De(b)||ge(b))&&b.currentSrc||null,readyState:ge(b)?b.readyState:null,networkState:ge(b)?b.networkState:null},`${N}:${w}:${R??"unknown"}`)};b.addEventListener("error",v),C(()=>{b.removeEventListener("error",v)})}let h=document.fonts;h&&h.ready.then(()=>{if(e.tornDown)return;let b=Array.from(h).filter(v=>v.status==="error").map(v=>v.family).filter(v=>!!v).slice(0,10);b.length!==0&&L("runtime_font_load_issue",{failedFamilies:b,totalFaces:Array.from(h).length},`runtime-font-load-issue:${b.join("|")}`)}).catch(()=>{})},xh=(c,h)=>{if(!c.timeline)return!1;let b=e.capturedTimeline;if(b&&b===c.timeline)return!1;let v=Math.max(0,e.currentTime||0),w=e.isPlaying;e.capturedTimeline=c.timeline,typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate);try{lt(e.capturedTimeline),typeof e.capturedTimeline.seek=="function"&&e.capturedTimeline.seek(v,!1),w&&typeof e.capturedTimeline.play=="function"&&e.capturedTimeline.play()}catch(R){D("runtime.init.site7",R)}return ye({source:"hf-preview",type:"diagnostic",code:"timeline_loop_guard_rebind",details:{reason:h,previousTime:v,selectedTimelineIds:c.selectedTimelineIds??[],selectedDurationSeconds:c.selectedDurationSeconds??null,mediaDurationFloorSeconds:c.mediaDurationFloorSeconds??null}}),!0},It=null,wl=!1,Mn=new Set,Hr=new WeakMap,Br=()=>{e.tornDown||(It!=null&&window.clearTimeout(It),It=window.setTimeout(()=>{if(e.tornDown||(It=null,gl()))return;let c=So();if(!c.timeline||!de(c.mediaDurationFloorSeconds??null))return;if(!e.capturedTimeline){kn()&&(yt(),Pe(!0));return}if(wl)return;let b=Ee(e.capturedTimeline),v=c.selectedDurationSeconds??Ee(c.timeline);de(v)&&(!de(b)||v>=b+A)&&xh(c,"manual")&&(wl=!0,ye({source:"hf-preview",type:"diagnostic",code:"timeline_rebind_after_media_metadata",details:{previousDurationSeconds:b??null,selectedDurationSeconds:v??null,selectedTimelineIds:c.selectedTimelineIds??[],mediaDurationFloorSeconds:c.mediaDurationFloorSeconds??null}}),yt(),Pe(!0))},E))},_l=c=>{ge(c.currentTarget)&&gc(c.currentTarget)},Cl=c=>{ge(c.currentTarget)&&bc(c.currentTarget)},Rl=c=>{Vo(c)&&ep(c)&&En(c,An(c))},Tl=c=>{let h=c.currentTarget;ge(h)&&Rl(h)},yh=()=>{for(let c of Mn)c.removeEventListener("loadedmetadata",Br),c.removeEventListener("durationchange",Br),c.removeEventListener("loadedmetadata",_l),c.removeEventListener("loadedmetadata",Tl),c.removeEventListener("error",Cl);Mn.clear()},vo=()=>{if(e.tornDown)return;let c=Array.from(document.querySelectorAll("video, audio"));for(let h of c){if(Mn.has(h))continue;Mn.add(h);let b=Number.parseFloat(h.dataset.volume??"");Number.isFinite(b)&&(h.volume=Math.max(0,Math.min(1,b))),h.addEventListener("loadedmetadata",Br),h.addEventListener("durationchange",Br),h.addEventListener("loadedmetadata",Tl),Rl(h),h.addEventListener("loadedmetadata",_l),h.addEventListener("error",Cl),hc(h),h.preload!=="auto"&&(h.preload="auto"),h.readyState<HTMLMediaElement.HAVE_FUTURE_DATA&&h.load(),kl(h)}},kl=c=>{Hr.has(c)||ac(c,e.capturedTimeline,ze(e.capturedTimeline,0),Hr,{allowLiveTimelineSeek:!window.__HF_RENDER_CAPTURE_MODE})},Ao=new WeakMap,Sh=c=>{let h=Ao.get(c);if(h!==void 0)return h;let b=window.getComputedStyle(c).position,v=b==="static"||b==="relative"||b==="sticky";return Ao.set(c,v),v},Eo=new WeakMap,vh=c=>{let h=Eo.get(c);if(h!==void 0)return h;let b=c.querySelector("[data-start]")===null;return Eo.set(c,b),b},Ah=()=>{Ao=new WeakMap,Eo=new WeakMap},wo=new WeakSet,_o=new WeakMap,Ur=new WeakSet,Wr=!1,Ml=c=>c.matches("audio[data-start]")||c.querySelector("audio[data-start]")!==null,Fl=new WeakMap,Vr=!0,Eh=()=>{if(Vr){Vr=!1;for(let c of document.querySelectorAll(an)){let h=c.hasAttribute("data-hidden");Fl.get(c)!==h&&(Fl.set(c,h),c.id&&m.setGroupMuted(c.id,h))}}},wh=(c,h,b)=>{let v=Y(),w=ze(e.capturedTimeline,0,b);for(let R of h){if(!Ae(R))continue;if(R.hasAttribute("data-hidden")){Ur.has(R)||(_o.set(R,R.style.getPropertyValue("display")),Ur.add(R),Ml(R)&&(Wr=!0),Vr=!0),R.style.display="none",(pe(R)||De(R))&&r?.setSourceVisibility(R,!1);continue}if(Ur.has(R)){let B=_o.get(R);B?R.style.display=B:R.style.removeProperty("display"),_o.delete(R),Ur.delete(R),Ml(R)&&(Wr=!0),Vr=!0}let N=ce(R,c,w);if(N){let B=R.parentElement;for(;B&&B!==v;){if(Ae(B)&&B.hasAttribute("data-start")&&!ce(B,c,w)){N=!1;break}B=B.parentElement}}R.style.visibility=N?"visible":"hidden",(pe(R)||De(R))&&r?.setSourceVisibility(R,N),N?wo.has(R)&&(R.style.removeProperty("display"),wo.delete(R)):Sh(R)&&vh(R)&&(R.style.display="none",wo.add(R))}Wr&&f.isPlaying()&&(m.stopAll(),Do()),Wr=!1,Eh()},zr=(c,h=Array.from(document.querySelectorAll("[data-start]")),b)=>z(()=>wh(c,h,b)),Fn=null,Nn=null,qr=[],Nl=c=>c.hasAttribute("data-start")||!!q(c).compositionRoot,Co=c=>cc({elements:c,shouldIncludeElement:Nl,resolveStartSeconds:h=>Z(h),resolveDurationSeconds:h=>{let b=q(h),v=Z(h),w=b.inheritedStart!=null&&b.inheritedDuration!=null&&b.inheritedDuration>0?Math.max(0,b.inheritedStart+b.inheritedDuration-v):null,R=Number.isFinite(h.duration)?et(h,h.duration):null,N=Fe(h.dataset.duration),B=N!=null&&N>0?N:null;return uc({isVideo:h.tagName==="VIDEO",sourceDuration:R,hostRemaining:w,explicitDuration:B})}}),_h=()=>{let c=Tn();if(Fn&&Fn.revision===c)return Fn;let h=Co().mediaClips;return Fn={revision:c,clips:h,byStart:[...h].sort((b,v)=>b.start-v.start),byEnd:[...h].sort((b,v)=>b.end-v.end)},Nn=null,qr=[],Fn},Ll=(c,h,b,v)=>{let w=0,R=c.length;for(;w<R;){let B=w+R>>1;h(c[B])<b?w=B+1:R=B}let N=[];for(let B=w;B<c.length&&h(c[B])<=v;B+=1)N.push(c[B]);return N},Ch=(c,h)=>{let b=Nn;if(b===null)return c.clips.map(N=>N.el);let v=Math.min(b,h),w=Math.max(b,h),R=new Set;for(let N of qr)R.add(N.el);for(let N of Ll(c.byStart,B=>B.start,v,w))R.add(N.el);for(let N of Ll(c.byEnd,B=>B.end,v,w))R.add(N.el);return[...R]},$r=new WeakSet,Dl=c=>{$r.add(c)},Il=c=>{$r.delete(c)};window.__hf.leasePausedMedia=Dl,window.__hf.releasePausedMedia=Il;let Rh=()=>{for(let c of document.querySelectorAll("video, audio"))if(ge(c)&&!c.paused&&Nl(c)&&!$r.has(c))return!0;return!1},Pl=()=>Kt();document.addEventListener("play",Pl,!0),a.push(()=>{document.removeEventListener("play",Pl,!0)});let Ge=c=>{let h=!Rn,b=z(()=>{if(!h)return Co().mediaClips;let R=_h();return Co(Ch(R,e.currentTime)).mediaClips});for(let R of b){let N=Hr.get(R.el);N&&(R.volumeKeyframes=N)}let v=e.isPlaying?b:b.filter(R=>!$r.has(R.el)),w=e.mediaForceSyncNextTick;w&&(e.mediaForceSyncNextTick=!1),e.nativeMediaSyncDisabled||(dc({clips:v,timeSeconds:e.currentTime,playing:e.isPlaying,playbackRate:e.playbackRate,outputMuted:e.mediaOutputMuted,userMuted:e.bridgeMuted,userVolume:e.bridgeVolume,forceSync:w,getCompositionDuration:()=>ze(e.capturedTimeline,0,c),onElementVolume:(R,N,B)=>m.setElementVolume(R,B),isWebAudioOwned:R=>m.ownsElement(R),isWebAudioRouted:R=>m.routesElement(R),onAutoplayBlocked:()=>{e.mediaAutoplayBlockedPosted||(e.mediaAutoplayBlockedPosted=!0,ye({source:"hf-preview",type:"media-autoplay-blocked"}))}}),h?(Nn=e.currentTime,qr=b.filter(R=>vt(e.currentTime,R.start,R.end))):(Nn=null,qr=[])),zr(e.currentTime,void 0,c)},Pe=c=>{c&&Kt();let h=Math.max(0,Math.round((e.currentTime||0)*e.canonicalFps)),b=Date.now();(c||h!==e.bridgeLastPostedFrame||e.isPlaying!==e.bridgeLastPostedPlaying||e.bridgeMuted!==e.bridgeLastPostedMuted||b-e.bridgeLastPostedAt>=e.bridgeMaxPostIntervalMs)&&(e.bridgeLastPostedFrame=h,e.bridgeLastPostedPlaying=e.isPlaying,e.bridgeLastPostedMuted=e.bridgeMuted,e.bridgeLastPostedAt=b,ye({source:"hf-preview",type:"state",frame:h,isPlaying:e.isPlaying,muted:e.bridgeMuted,playbackRate:e.playbackRate}))},Ro="",Ol=!1,Gl=!1,Hl=0,Th=()=>{let c="";for(let h of document.querySelectorAll("[data-start]"))c+=`${h.id}:${h.tagName}|`;return c},yt=()=>{W(),M(),te();let c=Y();if(c){let v=j(c.getAttribute("data-width")),w=j(c.getAttribute("data-height")),R=v?parseInt(v,10):0,N=w?parseInt(w,10):0;R>0&&N>0&&ye({source:"hf-preview",type:"stage-size",width:R,height:N})}kn();let h=ed({canonicalFps:e.canonicalFps});window.__clipManifest=h;let b=Th();if(Ro!==b&&Ah(),!window.__clipTree||Ro!==b){let v=window;window.__clipTree=Xc({startResolver:tt({timelineRegistry:v.__timelines??{},includeAuthoredTimingAttrs:!0}),timelineRegistry:v.__timelines??{},rootDuration:h.durationInFrames/e.canonicalFps}),Ro=b}ye({...h,assetsReady:Gl}),Ol||(Ol=!0,fp(document,({timedOut:v})=>{e.tornDown||(Gl=!0,ye({source:"hf-preview",type:"assets-ready",timedOut:v}))})),hh()},To=c=>typeof c=="number"&&Number.isFinite(c)&&c>0?c:0,kh=c=>{let h=To(Number(c));if(h<=0)return;let b=Y(),v=To(Fe(b?.getAttribute("data-duration"))),w=Math.max(Hl,To(f.getDuration()),v);h<=w||(Hl=h,b?.setAttribute("data-duration",String(h)),f.setDuration(h),yt(),Pe(!0))},qe=(c,h=0)=>{for(let b of e.deterministicAdapters){try{c==="discover"&&b.discover(),c==="pause"&&b.pause(),c==="play"&&b.play&&b.play()}catch(v){D("runtime.init.site8",v)}if(c==="discover")try{b.seek({time:h,suppressEvents:!0})}catch(v){D("runtime.init.site9",v)}}},Pt=()=>{window.__renderReady=!1},Mh=Ap(()=>{let c=[];for(let h of e.deterministicAdapters){let b=h.getReadyPromise;if(typeof b=="function")try{let v=b();v&&c.push(v)}catch(v){D("runtime.init.adapterReady",v)}}return c},()=>Pt(),c=>D("runtime.init.adapterReady",c)),Fh=Ap(()=>{let c=window.__hf?.buildReady;return c?Object.values(c).filter(h=>h!=null&&typeof h.then=="function"):[]},()=>Pt(),c=>D("runtime.init.buildReady",c));if(Q)Es();else{let c={injectedStyles:e.injectedCompStyles,injectedScripts:e.injectedCompScripts,injectedLinks:e.injectedCompLinks,parseDimensionPx:j,onDiagnostic:({code:h,details:b})=>{ye({source:"hf-preview",type:"diagnostic",code:h,details:b})}};Xm(c).then(()=>Ym(c)).finally(()=>{Q=!0,vo(),bh(),Es(),Ms(document),Pt()})}let jr=qc({postMessage:c=>ye(c)});jr.installPickerApi(),zr(e.currentTime,Array.from(document.querySelectorAll("video[data-start], img[data-start]")));let Je=Pf({lease:Dl,release:Il});r=Je,C(()=>{Je.destroy(),r=null});let ko=c=>{let h=Number(c);!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 b=document.querySelectorAll("video, audio");for(let v of b)if(ge(v))try{v.playbackRate=e.playbackRate}catch(w){D("runtime.init.site10",w)}},Bl={play:()=>{let c=e.capturedTimeline;if(f.isPlaying())return;let h=ze(c,0);if(h>0)f.setDuration(h),f.reachedEnd()&&(f.seek(0),e.currentTime=0,Ot(0));else{let b=Y(),v=Number(b?.getAttribute("data-duration")??0);v>0&&f.setDuration(v)}lt(c),f.play()&&(e.isPlaying=!0,e.mediaForceSyncNextTick=!0,Yl(f.now()),p&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&Do(),qe("play"),Ge(),Je.redraw(),Pe(!0))},pause:()=>{if(!f.isPlaying())return;m.stopAll(),f.detachAudioSource(),f.pause(),e.isPlaying=!1,e.currentTime=f.now(),e.mediaForceSyncNextTick=!0,Yl(e.currentTime);let c=e.capturedTimeline;lt(c),qe("pause"),Ge(),Je.redraw(),Pe(!0)},seek:(c,h)=>{let b=Pa(Math.max(0,Number(c)||0),e.canonicalFps);m.stopAll(),f.detachAudioSource();let v=f.isPlaying();v&&f.pause(),f.seek(b),e.currentTime=f.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0;let w=e.capturedTimeline;if(lt(w),Ot(e.currentTime),qe("pause"),h?.keepPlaying&&v){Bl.play();return}Ge(),Je.redraw(),Pe(!0)},renderSeek:(c,h)=>{Rn=!0;let b=Qn(Math.max(0,Number(c)||0),e.canonicalFps,h?.subFrameDivisions);m.stopAll(),f.detachAudioSource(),f.isPlaying()&&f.pause(),f.seek(b),e.currentTime=f.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0,Ot(e.currentTime,{activateChildren:!0,suppressEvents:h?.suppressEvents}),qe("pause"),Ge(),Je.redraw(),Pe(!0)},getTime:()=>f.now(),getDuration:()=>{let c=f.getDuration();return Number.isFinite(c)?c:0},isPlaying:()=>f.isPlaying(),setPlaybackRate:c=>{ko(c),f.setRate(e.playbackRate),Xl()},getPlaybackRate:()=>e.playbackRate},Ul=ze(e.capturedTimeline,0);Ul>0&&f.setDuration(Ul);let $e=Kc({getTimeline:()=>e.capturedTimeline,setTimeline:c=>{e.capturedTimeline=c},getTimelineRegistry:()=>window.__timelines??{},getIsPlaying:()=>e.isPlaying,setIsPlaying:c=>{e.isPlaying!==c&&(e.mediaForceSyncNextTick=!0),e.isPlaying=c},getPlaybackRate:()=>e.playbackRate,setPlaybackRate:ko,getCanonicalFps:()=>e.canonicalFps,onSyncMedia:(c,h)=>{e.currentTime=Math.max(0,Number(c)||0),e.isPlaying!==h&&(e.mediaForceSyncNextTick=!0),e.isPlaying=h,Ge()},onStatePost:Pe,onDeterministicSeek:(c,h)=>{for(let b of e.deterministicAdapters)if(!(b.name==="gsap"&&e.capturedTimeline))try{b.seek({time:Number(c)||0,suppressEvents:h?.suppressEvents})}catch(v){D("runtime.init.site11",v)}},onDeterministicPause:()=>qe("pause"),onDeterministicPlay:()=>qe("play"),onRenderFrameSeek:()=>{Je.redraw()},onShowNativeVideos:()=>{},getSafeDuration:()=>ze(e.capturedTimeline,0),transport:Bl});window.__player=P($e),window.__playerReady=!0,Be("composition_loaded",{duration:$e.getDuration(),compositionId:document.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")??null}),e.deterministicAdapters=[rc(),fu({resolveStartSeconds:c=>G(c,0)}),hu(),bu(),Su(),vu(),Au(),Eu(),wu(),_u(),Cu(),pu({getTimeline:()=>e.capturedTimeline})],ku(),Mu(),window.__hfReseekGpu=c=>{let h=Math.max(0,Number(c)||0);window.__hfThreeTime=h,window.__hfTypegpuTime=h,ai(h)},window.__hfWaitForSeekCompletion=Yo,a.push(()=>{window.__hfWaitForSeekCompletion===Yo&&delete window.__hfWaitForSeekCompletion}),gh(),vo(),qe("discover");let Nh=()=>{let c=e.capturedTimeline,h=kn();e.capturedTimeline&&(h||e.capturedTimeline!==c||!$e._timeline)&&($e._timeline=e.capturedTimeline);let b=ze(e.capturedTimeline,0);if(b>0&&f.setDuration(b),qe("discover",e.currentTime),!e.capturedTimeline){let v=window.__timelines??{},w=Object.keys(v).filter(R=>v[R]);if(w.length>0){let N=Y()?.getAttribute("data-composition-id")??null;L("root_timeline_unbound_registry_present",{reason:N?"root data-composition-id has no matching key in window.__timelines":"root composition element has no data-composition-id attribute",rootCompositionId:N,registeredTimelineKeys:w},"root_timeline_unbound_registry_present"),console.warn("[hyperframes] Root timeline not bound \u2014 render will freeze at t=0. "+(N?`Root data-composition-id is "${N}" 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["${N??"<root-id>"}"] = tl).`)}}window.__renderReady=!0,yt(),Pe(!0)},Xt=null,Lh=()=>{if(Xt)return;let c=()=>{window.removeEventListener("hf-timelines-built",c),Xt=null,Pt()};Xt=c,window.addEventListener("hf-timelines-built",c)};C(()=>{Xt&&(window.removeEventListener("hf-timelines-built",Xt),Xt=null)}),Pt=()=>{if(!Q){window.__renderReady=!1;return}if(window.__hfTimelinesBuilding){window.__renderReady=!1,Lh();return}if(qe("discover",e.currentTime),!Mh()){window.__renderReady=!1;return}if(!Fh()){window.__renderReady=!1;return}Nh()},Pt(),Q&&setTimeout(()=>{Pt()},0);let Kr=0,Yr=!1,Mo=Number.NaN,Fo=null,Xr=!1,St=null,Jr=!1,Wl="",Vl=-1,Qr=!1,zl=Number.NEGATIVE_INFINITY,Dh=(c,h,b,v)=>{try{let w=v?.suppressEvents===!0;lt(c),typeof c.totalTime=="function"?c.totalTime(h,w):c.seek(h,w)}catch(w){D(b,w)}},Ih=(c,h)=>{let b=window.__timelines??{},v=Y()?.getAttribute("data-composition-id")??null;for(let[w,R]of Object.entries(b)){if(!R||w===v)continue;let N=document.querySelector(`[data-composition-id="${CSS.escape(w)}"]`);if(!N)continue;let B=G(N,0);if(!Number.isFinite(B))continue;let $=Ee(R),ne=nt(N)+hi(_t(N),Math.max(0,c-B)),he=Math.max(0,$!=null&&$>0?Math.min($,ne):ne);Dh(R,he,"runtime.init.transport.childTimeline",h)}},Ph=c=>{let h=window.__timelines??{},b=[];for(let v of Object.values(h))if(!(!v||v===c)){b.push(v);try{v.play()}catch(w){D("runtime.init.activateSiblings",w)}}return b},ql=c=>typeof c=="object"&&c!==null,Ln=new WeakMap,Oh=["onStart","onUpdate","onComplete","onReverseComplete","onRepeat"],$l=(c,h)=>{let b=c[h];if(typeof b!="function")return null;try{let v=Number(b.call(c));return Number.isFinite(v)?v:null}catch(v){return D("runtime.init.gsapCallbackDuration",v),null}},Gh=c=>{let h=Ln.get(c);if(h!=null)return h;if(!("getChildren"in c)||typeof c.getChildren!="function")return!1;let b;try{b=c.getChildren(!0,!0,!0)}catch(v){return D("runtime.init.gsapCallbackChildren",v),Ln.set(c,!1),!1}if(!Array.isArray(b))return Ln.set(c,!1),!1;for(let v of b){if(!ql(v))continue;let w=v.vars;if(!ql(w)||!Oh.some($=>typeof w[$]=="function"))continue;let B=$l(v,"totalDuration")??$l(v,"duration");if(B!=null&&B<=1e-6)return Ln.set(c,!0),!0}return Ln.set(c,!1),!1};function Ot(c,h){let b=e.capturedTimeline,v=b&&h?.activateChildren?Ph(b):[];try{Hh(b,c,h)}finally{for(let w of v)lt(w)}}function Hh(c,h,b){let v=b?.suppressEvents===!0;if(c){let w=c,R=h;if(typeof w.totalDuration=="function")try{let N=Number(w.totalDuration());Number.isFinite(N)&&N>0&&h>N&&(R=N)}catch(N){D("runtime.init.transport.clampDuration",N)}try{typeof c.totalTime=="function"?(c.totalTime(R,v),!v&&!Gh(c)&&(c.totalTime(R+.001,!0),c.totalTime(R,!0))):c.seek(R,v)}catch(N){D("runtime.init.transport.seek",N)}}Ih(h,b);for(let w of e.deterministicAdapters)if(!(w.name==="gsap"&&c))try{w.seek({time:h,suppressEvents:v})}catch(R){D("runtime.init.transport.adapter",R)}}let No=rp(document,()=>{Kt()});a.push(()=>No.disconnect());let Bh=()=>{try{return No.isActive()}catch{return!1}},Uh=()=>!f.isPlaying()&&!gl()&&No.observing&&!Xr&&!Qr&&e.currentTime===Mo&&e.capturedTimeline===Fo,jl=()=>`${Tn()}|${hl()??""}`,Kl=()=>{St=window.setTimeout(Wh,e.bridgeMaxPostIntervalMs)},Wh=()=>{if(St=null,!e.tornDown&&!(typeof window>"u"||typeof document>"u")){if(jl()!==Wl){Kt();return}Pe(!1),Kl()}},Vh=()=>{if(e.transportRafId=null,e.tornDown)return;let c=Jr;if(Jr=!1,c||!Uh()){e.transportRafId=window.requestAnimationFrame(Lo);return}Wl=jl(),Kl()};Kt=()=>{e.tornDown||(Jr=!0,!(Yr||e.transportRafId!=null)&&(St!=null&&(window.clearTimeout(St),St=null),Jr=!1,e.transportRafId=window.requestAnimationFrame(Lo)))};let Lo=()=>{if(!(e.tornDown||Yr)){Yr=!0;try{Kr+=1;let c=Tn();c!==Vl&&(Vl=c,Qr=!0);let h=Date.now(),b=Qr&&!f.isPlaying()&&h-zl>=ip;if(b&&(zl=h),op({tick:Kr,isPlaying:f.isPlaying(),hasCapturedTimeline:e.capturedTimeline!=null,currentTimeSeconds:f.now(),compositionChanged:b})){let N=e.capturedTimeline;if(kn()){e.capturedTimeline&&!$e._timeline&&($e._timeline=e.capturedTimeline),e.capturedTimeline&&e.capturedTimeline!==N&&lt(e.capturedTimeline);let B=ze(e.capturedTimeline,0,c);B>0&&f.setDuration(B),yt()}}if((b||Kr%20===0)&&(yt(),Qr=!1),(b||Kr%30===0)&&vo(),e.capturedTimeline){let N=ze(e.capturedTimeline,0,c);N>0&&(!f.isPlaying()||N>=f.getDuration())&&f.setDuration(N)}if(f.isPlaying()&&!e.mediaOutputMuted)if(!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&m.isActive()&&m.context){let N=m.getTime();N>=0&&f.attachAudioSource({currentTimeSeconds:N})}else{let N=document.querySelectorAll("audio[data-start]"),B=!1;for(let $ of N){if(!ge($)||!$.isConnected||g($))continue;let ne=Z($),he=Fe($.dataset.duration),He=he!=null&&he>0?ne+he:1/0,ie=nt($);if(Number.isFinite(ne)&&vt(e.currentTime,ne,He)){$.paused?!$.error&&$.readyState<HTMLMediaElement.HAVE_FUTURE_DATA&&(f.attachAudioSource({currentTimeSeconds:e.currentTime}),B=!0):(f.attachAudioSource({el:$,compositionStart:ne,mediaStart:ie,rate:_t($)}),B=!0);break}}!B&&f.hasAudioSource()&&f.detachAudioSource()}else f.hasAudioSource()&&f.detachAudioSource();let v=f.now();e.currentTime=v;let w=f.isPlaying();if(!w&&Bh()?Xr=!0:(w||Xr||v!==Mo||e.capturedTimeline!==Fo)&&(Ot(v),Mo=v,Fo=e.capturedTimeline,w||(Xr=!1)),w&&Je.redrawAnimated(),f.isPlaying()&&f.reachedEnd()){m.stopAll(),f.detachAudioSource(),f.pause(),e.isPlaying=!1;let N=f.getDuration();Number.isFinite(N)&&(f.seek(N),e.currentTime=N,Ot(N)),qe("pause"),Ge(c),Pe(!0);return}f.isPlaying()?Ge(c):Rh()&&(Nn=null,Ge(c)),Pe(!1)}finally{Yr=!1,Vh()}}},Yl=c=>{let h=document.querySelectorAll("video, audio");for(let b of h){if(!ge(b)||!b.isConnected||!b.hasAttribute("data-start"))continue;let v=Z(b);if(!Number.isFinite(v))continue;let w=Fe(b.dataset.duration),R=w!=null&&w>0?v+w:1/0;if(!vt(c,v,R))continue;let N=nt(b),B=c-v+N;if(B>=0)try{b.currentTime=B}catch{}}},Do=()=>{if(e.nativeMediaSyncDisabled||e.webAudioMediaDisabled)return;let c=m.startGeneration(),h=document.querySelectorAll("audio[data-start]");for(let b of h){if(!ge(b)||!b.isConnected||g(b))continue;let v=Z(b);if(!Number.isFinite(v))continue;let w=nt(b),R=Number.parseFloat(b.dataset.volume??""),N=Number.isFinite(R)?R:1,B=Fe(b.dataset.duration),$=B!=null&&B>0?B:Number.POSITIVE_INFINITY,ne=b.closest("[data-composition-id]");if(ne){let ie=G(ne,0),X=O(ne,{includeAuthoredTimingAttrs:!0});X!=null&&X>0&&($=Math.min($,Math.max(0,ie+X-v)))}let he=An(b);if(En(b,he),typeof _t(b)!="number")continue;(he.kind==="web-audio"?m.scheduleMediaElementPlayback(b,v,w,f.now(),N,c,e.playbackRate):Promise.resolve(null)).then(ie=>{if(ie||!f.isPlaying())return;let X=e.playbackRate*Oe(b),we=b.hasAttribute("data-fx-chain")||b.hasAttribute("data-automation");if(Math.abs(X-1)>1e-9){he.kind==="web-audio"&&we&&(b.muted=!0);return}m.decodeAudioElement(b).then(Gt=>{!Gt||!f.isPlaying()||m.schedulePlayback(b,Gt,v,w,f.now(),N,c,e.playbackRate,$)})})}};function Xl(){m.setRate(e.playbackRate)&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&p&&f.isPlaying()&&m.hasBoundedActiveSources()&&(m.stopAll(),Do())}if(e.capturedTimeline){let c=ze(e.capturedTimeline,0);c>0&&f.setDuration(c),lt(e.capturedTimeline)}nf(window),e.transportRafId=window.requestAnimationFrame(Lo),yt(),Pe(!0),e.controlBridgeHandler=eu({onPlay:()=>{$e.play(),Be("composition_played",{time:$e.getTime()})},onPause:()=>{$e.pause(),Be("composition_paused",{time:$e.getTime()})},onStopMedia:()=>{m.stopAll();let c=document.querySelectorAll("video, audio");for(let h of c)ge(h)&&!h.paused&&h.pause()},onSeek:(c,h)=>{$e.seek(c),Be("composition_seeked",{time:c})},onSetMuted:c=>{e.bridgeMuted=c;let h=c||e.mediaOutputMuted;m.setMuted(h);let b=document.querySelectorAll("video, audio");for(let v of b)ge(v)&&(v.muted=h||v.defaultMuted)},onSetVolume:c=>{e.bridgeVolume=c,m.setVolume(c);let h=document.querySelectorAll("video, audio");for(let b of h){if(!ge(b))continue;let v=parseFloat(b.dataset.volume??""),w=Number.isFinite(v)?v:1;b.volume=ui(w*c)}},onSetMediaOutputMuted:c=>{e.mediaOutputMuted=c;let h=c||e.bridgeMuted;m.setMuted(h);let b=document.querySelectorAll("video, audio");for(let v of b)ge(v)&&(v.muted=h||v.defaultMuted)},onSetNativeMediaSyncDisabled:c=>{e.nativeMediaSyncDisabled!==c&&(e.nativeMediaSyncDisabled=c,e.mediaForceSyncNextTick=!0,c?(m.stopAll(),f.detachAudioSource()):Ge())},onSetWebAudioMediaDisabled:c=>{e.webAudioMediaDisabled!==c&&(e.webAudioMediaDisabled=c,e.mediaForceSyncNextTick=!0,c&&(m.stopAll(),f.detachAudioSource()),Ge())},onSetPlaybackRate:c=>{ko(c),e.transportClock&&e.transportClock.setRate(e.playbackRate),Xl()},onSetRootDuration:kh,onSetColorGrading:(c,h)=>{Je.setGrading(c,h)},onSetColorGradingCompare:(c,h)=>{Je.setCompare(c,h)},onTick:()=>{if(e.tornDown||!f.isPlaying())return;let c=f.now();if(e.currentTime=c,Ot(c),f.reachedEnd()){m.stopAll(),f.detachAudioSource(),f.pause(),e.isPlaying=!1;let h=f.getDuration();Number.isFinite(h)&&(f.seek(h),e.currentTime=h,Ot(h)),qe("pause"),Ge(),Pe(!0)}},onEnablePickMode:()=>jr.enablePickMode(),onDisablePickMode:()=>jr.disablePickMode(),onSetRuntimeData:uo,onClearRuntimeData:co,getCanonicalFps:()=>e.canonicalFps});let Io=()=>{if(!e.tornDown){e.tornDown=!0,e.transportRafId!=null&&(window.cancelAnimationFrame(e.transportRafId),e.transportRafId=null),St!=null&&(window.clearTimeout(St),St=null),e.transportClock=null,m.destroy(),It!=null&&(window.clearTimeout(It),It=null),s!=null&&(window.cancelAnimationFrame(s),s=null),yh(),e.controlBridgeHandler&&(window.removeEventListener("message",e.controlBridgeHandler),e.controlBridgeHandler=null),i&&(window.removeEventListener("error",i),i=null),o&&(window.removeEventListener("unhandledrejection",o),o=null),e.beforeUnloadHandler&&(window.removeEventListener("beforeunload",e.beforeUnloadHandler),e.beforeUnloadHandler=null),jr.disablePickMode();for(let c of e.deterministicAdapters)if(!(!c||typeof c.revert!="function"))try{c.revert()}catch(h){D("runtime.init.site12",h)}e.deterministicAdapters=[],window.__hf?.buildReady&&(window.__hf.buildReady={});for(let c of a.splice(0))try{c()}catch(h){D("runtime.init.site13",h)}for(let c of e.injectedCompStyles)try{c.remove()}catch(h){D("runtime.init.site14",h)}e.injectedCompStyles=[];for(let c of e.injectedCompLinks)try{c.remove()}catch(h){D("runtime.init.site15",h)}e.injectedCompLinks=[];for(let c of e.injectedCompScripts)try{c.remove()}catch(h){D("runtime.init.site16",h)}e.injectedCompScripts=[],e.capturedTimeline=null,t=()=>{},window.__hfRuntimeTeardown===Io&&(window.__hfRuntimeTeardown=null)}};window.__hfRuntimeTeardown=Io,e.beforeUnloadHandler=Io,window.addEventListener("beforeunload",e.beforeUnloadHandler)}var wp=["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"],ol=[[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 r1(e){if(e<=255)return wp[e];let t=0,n=ol.length-1;for(;t<=n;){let r=t+n>>1,i=ol[r];if(e<i[0]){n=r-1;continue}if(e>i[1]){t=r+1;continue}return i[2]}return"L"}function i1(e){let t=e.length;if(t===0)return null;let n=new Array(t),r=!1;for(let u=0;u<t;){let d=e.charCodeAt(u),f=d,m=1;if(d>=55296&&d<=56319&&u+1<t){let g=e.charCodeAt(u+1);g>=56320&&g<=57343&&(f=(d-55296<<10)+(g-56320)+65536,m=2)}let p=r1(f);(p==="R"||p==="AL"||p==="AN")&&(r=!0);for(let g=0;g<m;g++)n[u+g]=p;u+=m}if(!r)return null;let i=0;for(let u=0;u<t;u++){let d=n[u];if(d==="L"){i=0;break}if(d==="R"||d==="AL"){i=1;break}}let o=new Int8Array(t);for(let u=0;u<t;u++)o[u]=i;let a=i&1?"R":"L",l=a,s=l;for(let u=0;u<t;u++)n[u]==="NSM"?n[u]=s:s=n[u];s=l;for(let u=0;u<t;u++){let d=n[u];d==="EN"?n[u]=s==="AL"?"AN":"EN":(d==="R"||d==="L"||d==="AL")&&(s=d)}for(let u=0;u<t;u++)n[u]==="AL"&&(n[u]="R");for(let u=1;u<t-1;u++)n[u]==="ES"&&n[u-1]==="EN"&&n[u+1]==="EN"&&(n[u]="EN"),n[u]==="CS"&&(n[u-1]==="EN"||n[u-1]==="AN")&&n[u+1]===n[u-1]&&(n[u]=n[u-1]);for(let u=0;u<t;u++){if(n[u]!=="EN")continue;let d;for(d=u-1;d>=0&&n[d]==="ET";d--)n[d]="EN";for(d=u+1;d<t&&n[d]==="ET";d++)n[d]="EN"}for(let u=0;u<t;u++){let d=n[u];(d==="WS"||d==="ES"||d==="ET"||d==="CS")&&(n[u]="ON")}s=l;for(let u=0;u<t;u++){let d=n[u];d==="EN"?n[u]=s==="L"?"L":"EN":(d==="R"||d==="L")&&(s=d)}for(let u=0;u<t;u++){if(n[u]!=="ON")continue;let d=u+1;for(;d<t&&n[d]==="ON";)d++;let f=u>0?n[u-1]:l,m=d<t?n[d]:l,p=f!=="L"?"R":"L";if(p===(m!=="L"?"R":"L"))for(let y=u;y<d;y++)n[y]=p;u=d-1}for(let u=0;u<t;u++)n[u]==="ON"&&(n[u]=a);for(let u=0;u<t;u++){let d=n[u];(o[u]&1)===0?d==="R"?o[u]++:(d==="AN"||d==="EN")&&(o[u]+=2):(d==="L"||d==="AN"||d==="EN")&&o[u]++}return o}function _p(e,t){let n=i1(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 o1=/[ \t\n\r\f]+/g,a1=/[\t\n\r\f]| {2,}|^ | $/;function s1(e){let t=e??"normal";return t==="pre-wrap"?{mode:t,preserveOrdinarySpaces:!0,preserveHardBreaks:!0}:{mode:t,preserveOrdinarySpaces:!1,preserveHardBreaks:!1}}function l1(e){if(!a1.test(e))return e;let t=e.replace(o1," ");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 u1(e){return/[\r\f]/.test(e)?e.replace(/\r\n/g,`
712
712
  `).replace(/[\r\f]/g,`
713
713
  `):e.replace(/\r\n/g,`
714
- `)}var Vs=null,dS;function mS(){return Vs===null&&(Vs=new Intl.Segmenter(dS,{granularity:"word"})),Vs}var fS=/\p{Script=Arabic}/u,eo=/\p{M}/u,ep=/\p{Nd}/u;function jf(e){return fS.test(e)}function Kf(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 Ke(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 i=(n-55296<<10)+(r-56320)+65536;if(Kf(i))return!0;t++;continue}}if(Kf(n))return!0}}return!1}function pS(e){let t=ro(e);return t!==null&&(no.has(t)||Rt.has(t))}var hS=new Set(["\xA0","\u202F","\u2060","\uFEFF"]);function gS(e){return Ke(e)}function bS(e){let t=ro(e);return t!==null&&hS.has(t)}function to(e){return!pS(e)&&!bS(e)}var no=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"]),Rr=new Set(['"',"(","[","{","\u201C","\u2018","\xAB","\u2039","\uFF08","\u3014","\u3008","\u300A","\u300C","\u300E","\u3010","\u3016","\u3018","\u301A"]),qs=new Set(["'","\u2019"]),Rt=new Set([".",",","!","?",":",";","\u060C","\u061B","\u061F","\u0964","\u0965","\u104A","\u104B","\u104C","\u104D","\u104F",")","]","}","%",'"',"\u201D","\u2019","\xBB","\u203A","\u2026"]),xS=new Set([":",".","\u060C","\u061B"]),yS=new Set(["\u104F"]),vS=new Set(["\u201D","\u2019","\xBB","\u203A","\u300D","\u300F","\u3011","\u300B","\u3009","\u3015","\uFF09"]);function SS(e){if($s(e))return!0;let t=!1;for(let n of e){if(Rt.has(n)){t=!0;continue}if(!(t&&eo.test(n)))return!1}return t}function AS(e){for(let t of e)if(!no.has(t)&&!Rt.has(t))return!1;return e.length>0}function ES(e){if($s(e))return!0;for(let t of e)if(!Rr.has(t)&&!qs.has(t)&&!eo.test(t))return!1;return e.length>0}function $s(e){let t=!1;for(let n of e)if(!(n==="\\"||eo.test(n))){if(Rr.has(n)||Rt.has(n)||qs.has(n)){t=!0;continue}return!1}return t}function tp(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 i=n-1;if(i<0)return n;let o=e.charCodeAt(i);return o>=55296&&o<=56319?i:n}function ro(e){if(e.length===0)return null;let t=tp(e,e.length);return e.slice(t)}function wS(e){let t=Array.from(e),n=t.length;for(;n>0;){let r=t[n-1];if(eo.test(r)){n--;continue}if(Rr.has(r)||qs.has(r)){n--;continue}break}return n<=0||n===t.length?null:{head:t.slice(0,n).join(""),tail:t.slice(n).join("")}}function _S(e,t,n){return n==="text"&&!t&&e.length===1&&e!=="-"&&e!=="\u2014"?e:null}function Yf(e,t,n,r){let i=t[r],o=e[r];if(i==null)return o;let a=n[r];if(o.length===a)return o;let l=i.repeat(a);return e[r]=l,l}function Xf(e,t){return e&&t!==null&&xS.has(t)}function CS(e){let t=ro(e);return t!==null&&yS.has(t)}function RS(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 io(e){let t=e.length;for(;t>0;){let n=tp(e,t),r=e.slice(n,t);if(vS.has(r))return!0;if(!Rt.has(r))return!1;t=n}return!1}function TS(e,t){if(t.preserveOrdinarySpaces||t.preserveHardBreaks){if(e===" ")return"preserved-space";if(e===" ")return"tab";if(t.preserveHardBreaks&&e===`
715
- `)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 kS=/[\x20\t\n\xA0\xAD\u200B\u202F\u2060\uFEFF]/;function Ve(e){return e.length===1?e[0]:e.join("")}function MS(e,t){let n=[];for(let r=e.length-1;r>=0;r--)n.push(e[r]);return n.push(t),Ve(n)}function FS(e,t,n,r){if(!kS.test(e))return[{text:e,isWordLike:t,kind:"text",start:n}];let i=[],o=null,a=[],l=n,s=!1,u=0;for(let d of e){let f=TS(d,r),m=f==="text"&&t;if(o!==null&&f===o&&m===s){a.push(d),u+=d.length;continue}o!==null&&i.push({text:Ve(a),isWordLike:s,kind:o,start:l}),o=f,a=[d],l=n+u,s=m,u+=d.length}return o!==null&&i.push({text:Ve(a),isWordLike:s,kind:o,start:l}),i}function zs(e){return e==="space"||e==="preserved-space"||e==="zero-width-break"||e==="hard-break"}var NS=/^[A-Za-z][A-Za-z0-9+.-]*:$/;function LS(e,t){let n=e.texts[t];return n.startsWith("www.")?!0:NS.test(n)&&t+1<e.len&&e.kinds[t+1]==="text"&&e.texts[t+1]==="//"}function DS(e){return e.includes("?")&&(e.includes("://")||e.startsWith("www."))}function IS(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"||!LS(e,a))continue;let l=[t[a]],s=a+1;for(;s<e.len&&!zs(r[s]);){l.push(t[s]),n[a]=!0;let u=t[s].includes("?");if(r[s]="text",t[s]="",s++,u)break}t[a]=Ve(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 PS(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]),!DS(a))continue;let l=o+1;if(l>=e.len||zs(e.kinds[l]))continue;let s=[],u=e.starts[l],d=l;for(;d<e.len&&!zs(e.kinds[d]);)s.push(e.texts[d]),d++;s.length>0&&(t.push(Ve(s)),n.push(!0),r.push("text"),i.push(u),o=d-1)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}var OS=new Set([":","-","/","\xD7",",",".","+","\u2013","\u2014"]),Jf=/^[A-Za-z0-9_]+[,:;]*$/,Qf=/[,:;]+$/;function np(e){for(let t of e)if(ep.test(t))return!0;return!1}function Cr(e){if(e.length===0)return!1;for(let t of e)if(!(ep.test(t)||OS.has(t)))return!1;return!0}function GS(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"&&Cr(a)&&np(a)){let s=[a],u=o+1;for(;u<e.len&&e.kinds[u]==="text"&&Cr(e.texts[u]);)s.push(e.texts[u]),u++;t.push(Ve(s)),n.push(!0),r.push("text"),i.push(e.starts[o]),o=u-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 HS(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&&Jf.test(a)){let u=[a],d=Qf.test(a),f=o+1;for(;d&&f<e.len&&e.kinds[f]==="text"&&e.isWordLike[f]&&Jf.test(e.texts[f]);){let m=e.texts[f];u.push(m),d=Qf.test(m),f++}t.push(Ve(u)),n.push(!0),r.push("text"),i.push(e.starts[o]),o=f-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 BS(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 u=0;u<l.length;u++){let d=l[u];if(!s)break;(d.length===0||!np(d)||!Cr(d))&&(s=!1)}if(s){let u=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"),i.push(e.starts[o]+u),u+=m.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 US(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],u=e.starts[o];if(s==="glue"){let d=[a[0]],f=u;for(o++;o<e.len&&e.kinds[o]==="glue";)d.push(e.texts[o]),o++;let m=Ve(d);if(o<e.len&&e.kinds[o]==="text")a[0]=m,a.push(e.texts[o]),l=e.isWordLike[o],s="text",u=f,o++;else{t.push(m),n.push(!1),r.push("glue"),i.push(f);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 f=Ve(d);if(o<e.len&&e.kinds[o]==="text"){a.push(f,e.texts[o]),l=l||e.isWordLike[o],o++;continue}a.push(f)}t.push(Ve(a)),n.push(l),r.push(s),i.push(u)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function WS(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"||!Ke(t[o])||!Ke(t[o+1]))continue;let a=wS(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 Zf(e,t,n){let r=mS(),i=0,o=[],a=[],l=[],s=[],u=[],d=[],f=[],m=[],h=[],b=[],v=[],x=[];for(let M of r.segment(e))for(let S of FS(M.segment,M.isWordLike??!1,M.index,n)){let U=function(){d[k]!==null&&(a[k]=[Yf(o,d,f,k)],d[k]=null),a[k].push(S.text),l[k]=l[k]||S.isWordLike,m[k]=m[k]||R,h[k]=h[k]||I,b[k]=j,v[k]=X,x[k]=Xf(h[k],H)},A=S.kind==="text",w=_S(S.text,S.isWordLike,S.kind),R=Ke(S.text),I=jf(S.text),H=ro(S.text),j=io(S.text),X=CS(S.text),k=i-1;t.carryCJKAfterClosingQuote&&A&&i>0&&s[k]==="text"&&R&&m[k]&&b[k]||A&&i>0&&s[k]==="text"&&AS(S.text)&&m[k]||A&&i>0&&s[k]==="text"&&v[k]?U():A&&i>0&&s[k]==="text"&&S.isWordLike&&I&&x[k]?(U(),l[k]=!0):w!==null&&i>0&&s[k]==="text"&&d[k]===w?f[k]=(f[k]??1)+1:A&&!S.isWordLike&&i>0&&s[k]==="text"&&(SS(S.text)||S.text==="-"&&l[k])?U():(o[i]=S.text,a[i]=[S.text],l[i]=S.isWordLike,s[i]=S.kind,u[i]=S.start,d[i]=w,f[i]=w===null?0:1,m[i]=R,h[i]=I,b[i]=j,v[i]=X,x[i]=Xf(I,H),i++)}for(let M=0;M<i;M++){if(d[M]!==null){o[M]=Yf(o,d,f,M);continue}o[M]=Ve(a[M])}for(let M=1;M<i;M++)s[M]==="text"&&!l[M]&&$s(o[M])&&s[M-1]==="text"&&(o[M-1]+=o[M],l[M-1]=l[M-1]||l[M],o[M]="");let _=Array.from({length:i},()=>null),T=-1;for(let M=i-1;M>=0;M--){let S=o[M];if(S.length!==0){if(s[M]==="text"&&!l[M]&&ES(S)&&T>=0&&s[T]==="text"){let A=_[T]??[];A.push(S),_[T]=A,u[T]=u[M],o[M]="";continue}T=M}}for(let M=0;M<i;M++){let S=_[M];S!=null&&(o[M]=MS(S,o[M]))}let C=0;for(let M=0;M<i;M++){let S=o[M];S.length!==0&&(C!==M&&(o[C]=S,l[C]=l[M],s[C]=s[M],u[C]=u[M]),C++)}o.length=C,l.length=C,s.length=C,u.length=C;let F=US({len:C,texts:o,isWordLike:l,kinds:s,starts:u}),D=WS(HS(BS(GS(PS(IS(F))))));for(let M=0;M<D.len-1;M++){let S=RS(D.texts[M]);S!==null&&(D.kinds[M]!=="space"&&D.kinds[M]!=="preserved-space"||D.kinds[M+1]!=="text"||!jf(D.texts[M+1])||(D.texts[M]=S.space,D.isWordLike[M]=!1,D.kinds[M]=D.kinds[M]==="preserved-space"?"preserved-space":"space",D.texts[M+1]=S.marks+D.texts[M+1],D.starts[M+1]=D.starts[M]+S.space.length))}return D}function VS(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 zS(e){if(e.len<=1)return e;let t=[],n=[],r=[],i=[],o=null,a=!1,l=0,s=!1,u=!1;function d(){o!==null&&(t.push(Ve(o)),n.push(a),r.push("text"),i.push(l),o=null)}for(let f=0;f<e.len;f++){let m=e.texts[f],h=e.kinds[f],b=e.isWordLike[f],v=e.starts[f];if(h==="text"){let x=gS(m),_=to(m);if(o!==null&&s&&u){o.push(m),a=a||b,s=s||x,u=_;continue}d(),o=[m],a=b,l=v,s=x,u=_;continue}d(),t.push(m),n.push(b),r.push(h),i.push(v)}return d(),{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function rp(e,t,n="normal",r="normal"){let i=lS(n),o=i.mode==="pre-wrap"?cS(e):uS(e);if(o.length===0)return{normalized:o,chunks:[],len:0,texts:[],isWordLike:[],kinds:[],starts:[]};let a=r==="keep-all"?zS(Zf(o,t,i)):Zf(o,t,i);return{normalized:o,chunks:VS(a,i),...a}}var xn=null,ip=new Map,yn=null,qS=96,$S=/\p{Emoji_Presentation}/u,jS=/[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u,js=null,op=new Map;function Ks(){if(xn!==null)return xn;if(typeof OffscreenCanvas<"u")return xn=new OffscreenCanvas(1,1).getContext("2d"),xn;if(typeof document<"u")return xn=document.createElement("canvas").getContext("2d"),xn;throw new Error("Text measurement requires OffscreenCanvas or a DOM canvas context.")}function KS(e){let t=ip.get(e);return t||(t=new Map,ip.set(e,t)),t}function pt(e,t){let n=t.get(e);return n===void 0&&(n={width:Ks().measureText(e).width,containsCJK:Ke(e)},t.set(e,n)),n}function kt(){if(yn!==null)return yn;if(typeof navigator>"u")return yn={lineFitEpsilon:.005,carryCJKAfterClosingQuote:!1,preferPrefixWidthsForBreakableRuns:!1,preferEarlySoftHyphenBreak:!1},yn;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 yn={lineFitEpsilon:n?1/64:.005,carryCJKAfterClosingQuote:r,preferPrefixWidthsForBreakableRuns:n,preferEarlySoftHyphenBreak:n},yn}function YS(e){let t=e.match(/(\d+(?:\.\d+)?)\s*px/);return t?parseFloat(t[1]):16}function ap(){return js===null&&(js=new Intl.Segmenter(void 0,{granularity:"grapheme"})),js}function XS(e){return $S.test(e)||e.includes("\uFE0F")}function sp(e){return jS.test(e)}function JS(e,t){let n=op.get(e);if(n!==void 0)return n;let r=Ks();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 op.set(e,n),n}function QS(e){let t=0,n=ap();for(let r of n.segment(e))XS(r.segment)&&t++;return t}function ZS(e,t){return t.emojiCount===void 0&&(t.emojiCount=QS(e)),t.emojiCount}function Tt(e,t,n){return n===0?t.width:t.width-ZS(e,t)*n}function lp(e,t,n,r,i){if(t.breakableFitAdvances!==void 0)return t.breakableFitAdvances;let o=ap(),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 f of a){let m=pt(f,n);d.push(Tt(f,m,r))}return t.breakableFitAdvances=d,t.breakableFitAdvances}if(i==="pair-context"||a.length>qS){let d=[],f=null,m=0;for(let h of a){let b=pt(h,n),v=Tt(h,b,r);if(f===null)d.push(v);else{let x=f+h,_=pt(x,n);d.push(Tt(x,_,r)-m)}f=h,m=v}return t.breakableFitAdvances=d,t.breakableFitAdvances}let l=[],s="",u=0;for(let d of a){s+=d;let f=pt(s,n),m=Tt(s,f,r);l.push(m-u),u=m}return t.breakableFitAdvances=l,t.breakableFitAdvances}function up(e,t){let n=Ks();n.font=e;let r=KS(e),i=YS(e),o=t?JS(e,i):0;return{cache:r,fontSize:i,emojiCorrection:o}}function e1(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 cp(e,t){if(t<=0)return 0;let n=e%t;return Math.abs(n)<=1e-6?t:t-n}function dp(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 t1(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 mp(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 fp(e,t){if(t.segmentIndex>=e.widths.length)return-1;let n=t1(e,t.segmentIndex);return n<0?-1:mp(e,n,t)}function n1(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:mp(e,r,n)}function pp(e,t){return e.simpleLineWalkFastPath?hp(e,t):Ys(e,t)}function hp(e,t,n){let{widths:r,kinds:i,breakableFitAdvances:o}=e;if(r.length===0)return 0;let l=kt().lineFitEpsilon,s=t+l,u=0,d=0,f=!1,m=0,h=0,b=0,v=0,x=-1,_=0;function T(){x=-1,_=0}function C(w=b,R=v,I=d){u++,n?.({startSegmentIndex:m,startGraphemeIndex:h,endSegmentIndex:w,endGraphemeIndex:R,width:I}),d=0,f=!1,T()}function F(w,R){f=!0,m=w,h=0,b=w+1,v=0,d=R}function D(w,R,I){f=!0,m=w,h=R,b=w,v=R+1,d=I}function M(w,R){if(!f){F(w,R);return}d+=R,b=w+1,v=0}function S(w,R){let I=o[w];for(let H=R;H<I.length;H++){let j=I[H];f?d+j>s?(C(),D(w,H,j)):(d+=j,b=w,v=H+1):D(w,H,j)}f&&b===w&&v===I.length&&(b=w+1,v=0)}let A=0;for(;A<r.length&&!(!f&&(A=e1(e,A),A>=r.length));){let w=r[A],R=i[A],I=R==="space"||R==="preserved-space"||R==="tab"||R==="zero-width-break"||R==="soft-hyphen";if(!f){w>t&&o[A]!==null?S(A,0):F(A,w),I&&(x=A+1,_=d-w),A++;continue}if(d+w>s){if(I){M(A,w),C(A+1,0,d-w),A++;continue}if(x>=0){if(b>x||b===x&&v>0){C();continue}C(x,0,_);continue}if(w>t&&o[A]!==null){C(),S(A,0),A++;continue}C();continue}M(A,w),I&&(x=A+1,_=d-w),A++}return f&&C(),u}function Ys(e,t,n){if(e.simpleLineWalkFastPath)return hp(e,t,n);let{widths:r,lineEndFitAdvances:i,lineEndPaintAdvances:o,kinds:a,breakableFitAdvances:l,discretionaryHyphenWidth:s,tabStopAdvance:u,chunks:d}=e;if(r.length===0||d.length===0)return 0;let f=kt(),m=f.lineFitEpsilon,h=t+m,b=0,v=0,x=!1,_=0,T=0,C=0,F=0,D=-1,M=0,S=0,A=null;function w(){D=-1,M=0,S=0,A=null}function R(B=C,G=F,W=v){b++,n?.({startSegmentIndex:_,startGraphemeIndex:T,endSegmentIndex:B,endGraphemeIndex:G,width:W}),v=0,x=!1,w()}function I(B,G){x=!0,_=B,T=0,C=B+1,F=0,v=G}function H(B,G,W){x=!0,_=B,T=G,C=B,F=G+1,v=W}function j(B,G){if(!x){I(B,G);return}v+=G,C=B+1,F=0}function X(B,G,W,Q){if(!G)return;let q=B==="tab"?0:i[W],O=B==="tab"?Q:o[W];D=W+1,M=v-Q+q,S=v-Q+O,A=B}function k(B,G){let W=l[B];for(let Q=G;Q<W.length;Q++){let q=W[Q];x?v+q>h?(R(),H(B,Q,q)):(v+=q,C=B,F=Q+1):H(B,Q,q)}x&&C===B&&F===W.length&&(C=B+1,F=0)}function U(B){if(A!=="soft-hyphen")return!1;let G=l[B];if(G==null)return!1;let{fitCount:W,fittedWidth:Q}=dp(G,v,t,m,s);return W===0?!1:(v=Q,C=B,F=W,w(),W===G.length?(C=B+1,F=0,!0):(R(B,W,Q+s),k(B,W),!0))}function te(B){b++,n?.({startSegmentIndex:B.startSegmentIndex,startGraphemeIndex:0,endSegmentIndex:B.consumedEndSegmentIndex,endGraphemeIndex:0,width:0}),w()}for(let B=0;B<d.length;B++){let G=d[B];if(G.startSegmentIndex===G.endSegmentIndex){te(G);continue}x=!1,v=0,_=G.startSegmentIndex,T=0,C=G.startSegmentIndex,F=0,w();let W=G.startSegmentIndex;for(;W<G.endSegmentIndex;){let Q=a[W],q=Q==="space"||Q==="preserved-space"||Q==="tab"||Q==="zero-width-break"||Q==="soft-hyphen",O=Q==="tab"?cp(v,u):r[W];if(Q==="soft-hyphen"){x&&(C=W+1,F=0,D=W+1,M=v+s,S=v+s,A=Q),W++;continue}if(!x){O>t&&l[W]!==null?k(W,0):I(W,O),X(Q,q,W,O),W++;continue}if(v+O>h){let Z=v+(Q==="tab"?0:i[W]),pe=v+(Q==="tab"?O:o[W]);if(A==="soft-hyphen"&&f.preferEarlySoftHyphenBreak&&M<=h){R(D,0,S);continue}if(A==="soft-hyphen"&&U(W)){W++;continue}if(q&&Z<=h){j(W,O),R(W+1,0,pe),W++;continue}if(D>=0&&M<=h){if(C>D||C===D&&F>0){R();continue}let re=D;R(re,0,S),W=re;continue}if(O>t&&l[W]!==null){R(),k(W,0),W++;continue}R();continue}j(W,O),X(Q,q,W,O),W++}if(x){let Q=D===G.consumedEndSegmentIndex?S:v;R(G.consumedEndSegmentIndex,0,Q)}}return b}function gp(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:u,discretionaryHyphenWidth:d,tabStopAdvance:f}=e,m=kt(),h=m.lineFitEpsilon,b=r+h,v=0,x=!1,_=t.segmentIndex,T=t.graphemeIndex,C=-1,F=0,D=0,M=null;function S(){C=-1,F=0,D=0,M=null}function A(k=_,U=T,te=v){return x?(t.segmentIndex=k,t.graphemeIndex=U,te):null}function w(k,U){x=!0,_=k+1,T=0,v=U}function R(k,U,te){x=!0,_=k,T=U+1,v=te}function I(k,U){if(!x){w(k,U);return}v+=U,_=k+1,T=0}function H(k,U,te,B){if(!U)return;let G=k==="tab"?0:a[te],W=k==="tab"?B:l[te];C=te+1,F=v-B+G,D=v-B+W,M=k}function j(k,U){let te=u[k];for(let B=U;B<te.length;B++){let G=te[B];if(!x)R(k,B,G);else{if(v+G>b)return A();v+=G,_=k,T=B+1}}return x&&_===k&&T===te.length&&(_=k+1,T=0),null}function X(k){if(M!=="soft-hyphen"||C<0)return null;let U=u[k]??null;if(U!==null){let{fitCount:te,fittedWidth:B}=dp(U,v,r,h,d);if(te===U.length)return v=B,_=k+1,T=0,S(),null;if(te>0)return A(k,te,B+d)}return F<=b?A(C,0,D):null}for(let k=t.segmentIndex;k<i.endSegmentIndex;k++){let U=s[k],te=U==="space"||U==="preserved-space"||U==="tab"||U==="zero-width-break"||U==="soft-hyphen",B=k===t.segmentIndex?t.graphemeIndex:0,G=U==="tab"?cp(v,f):o[k];if(U==="soft-hyphen"&&B===0){x&&(_=k+1,T=0,C=k+1,F=v+d,D=v+d,M=U);continue}if(!x){if(B>0){let Q=j(k,B);if(Q!==null)return Q}else if(G>r&&u[k]!==null){let Q=j(k,0);if(Q!==null)return Q}else w(k,G);H(U,te,k,G);continue}if(v+G>b){let Q=v+(U==="tab"?0:a[k]),q=v+(U==="tab"?G:l[k]);if(M==="soft-hyphen"&&m.preferEarlySoftHyphenBreak&&F<=b)return A(C,0,D);let O=X(k);if(O!==null)return O;if(te&&Q<=b)return I(k,G),A(k+1,0,q);if(C>=0&&F<=b)return _>C||_===C&&T>0?A():A(C,0,D);if(G>r&&u[k]!==null){let V=A();if(V!==null)return V;let Z=j(k,0);if(Z!==null)return Z}return A()}I(k,G),H(U,te,k,G)}return C===i.consumedEndSegmentIndex&&T===0?A(i.consumedEndSegmentIndex,0,D):A(i.consumedEndSegmentIndex,0,v)}function r1(e,t,n){let{widths:r,kinds:i,breakableFitAdvances:o}=e,l=kt().lineFitEpsilon,s=n+l,u=0,d=!1,f=t.segmentIndex,m=t.graphemeIndex,h=-1,b=0;for(let v=t.segmentIndex;v<r.length;v++){let x=r[v],_=i[v],T=_==="space"||_==="preserved-space"||_==="tab"||_==="zero-width-break"||_==="soft-hyphen",C=v===t.segmentIndex?t.graphemeIndex:0,F=o[v];if(!d){if(C>0||x>n&&F!==null){let D=F,M=D[C];d=!0,u=M,f=v,m=C+1;for(let S=C+1;S<D.length;S++){let A=D[S];if(u+A>s)return t.segmentIndex=f,t.graphemeIndex=m,u;u+=A,f=v,m=S+1}f===v&&m===D.length&&(f=v+1,m=0)}else d=!0,u=x,f=v+1,m=0;T&&(h=v+1,b=u-x);continue}if(u+x>s)return T?(t.segmentIndex=v+1,t.graphemeIndex=0,u):h>=0?f>h||f===h&&m>0?(t.segmentIndex=f,t.graphemeIndex=m,u):(t.segmentIndex=h,t.graphemeIndex=0,b):(t.segmentIndex=f,t.graphemeIndex=m,u);u+=x,f=v+1,m=0,T&&(h=v+1,b=u-x)}return d?(t.segmentIndex=f,t.graphemeIndex=m,u):null}function i1(e,t,n){let r=fp(e,t);return r<0?null:e.simpleLineWalkFastPath?r1(e,t,n):gp(e,t,r,n)}function bp(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=fp(e,n);for(;o>=0;){let a=gp(e,n,o,t);if(a===null)return{lineCount:r,maxLineWidth:i};r++,a>i&&(i=a),o=n1(e,o,n)}return{lineCount:r,maxLineWidth:i}}for(;;){let o=i1(e,n,t);if(o===null)return{lineCount:r,maxLineWidth:i};r++,o>i&&(i=o)}}var Xs=null;function o1(){return Xs===null&&(Xs=new Intl.Segmenter(void 0,{granularity:"grapheme"})),Xs}function a1(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 s1(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 u(f,m,h){r=[f],i=m,o=h,a=io(f),l=Rr.has(f)}function d(f,m){r.push(f),o=o||m;let h=io(f);f.length===1&&Rt.has(f)?a=a||h:a=h,l=!1}for(let f of o1().segment(e)){let m=f.segment,h=Ke(m);if(r.length===0){u(m,f.index,h);continue}if(l||no.has(m)||Rt.has(m)||t.carryCJKAfterClosingQuote&&h&&a){d(m,h);continue}if(!o&&!h){d(m,h);continue}s(),u(m,f.index,h)}return s(),n}function l1(e){if(e.length<=1)return e;let t=[],n=[e[0].text],r=e[0].start,i=Ke(e[0].text),o=to(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],u=Ke(s.text),d=to(s.text);if(i&&o){n.push(s.text),i=i||u,o=d;continue}a(),n=[s.text],r=s.start,i=u,o=d}return a(),t}function u1(e,t,n,r){let i=kt(),{cache:o,emojiCorrection:a}=up(t,sp(e.normalized)),l=Tt("-",pt("-",o),a),u=Tt(" ",pt(" ",o),a)*8;if(e.len===0)return a1(n);let d=[],f=[],m=[],h=[],b=e.chunks.length<=1,v=n?[]:null,x=[],_=n?[]:null,T=Array.from({length:e.len});function C(S,A,w,R,I,H,j){I!=="text"&&I!=="space"&&I!=="zero-width-break"&&(b=!1),d.push(A),f.push(w),m.push(R),h.push(I),v?.push(H),x.push(j),_!==null&&_.push(S)}function F(S,A,w,R,I){let H=pt(S,o),j=Tt(S,H,a),X=A==="space"||A==="preserved-space"||A==="zero-width-break"?0:j,k=A==="space"||A==="zero-width-break"?0:j;if(I&&R&&S.length>1){let U="sum-graphemes";Cr(S)?U="pair-context":i.preferPrefixWidthsForBreakableRuns&&(U="segment-prefixes");let te=lp(S,H,o,a,U);C(S,j,X,k,A,w,te);return}C(S,j,X,k,A,w,null)}for(let S=0;S<e.len;S++){T[S]=d.length;let A=e.texts[S],w=e.isWordLike[S],R=e.kinds[S],I=e.starts[S];if(R==="soft-hyphen"){C(A,0,l,l,R,I,null);continue}if(R==="hard-break"){C(A,0,0,0,R,I,null);continue}if(R==="tab"){C(A,0,0,0,R,I,null);continue}let H=pt(A,o);if(R==="text"&&H.containsCJK){let j=s1(A,i),X=r==="keep-all"?l1(j):j;for(let k=0;k<X.length;k++){let U=X[k];F(U.text,"text",I+U.start,w,r==="keep-all"||!Ke(U.text))}continue}F(A,R,I,w,!0)}let D=c1(e.chunks,T,d.length),M=v===null?null:$f(e.normalized,v);return _!==null?{widths:d,lineEndFitAdvances:f,lineEndPaintAdvances:m,kinds:h,simpleLineWalkFastPath:b,segLevels:M,breakableFitAdvances:x,discretionaryHyphenWidth:l,tabStopAdvance:u,chunks:D,segments:_}:{widths:d,lineEndFitAdvances:f,lineEndPaintAdvances:m,kinds:h,simpleLineWalkFastPath:b,segLevels:M,breakableFitAdvances:x,discretionaryHyphenWidth:l,tabStopAdvance:u,chunks:D}}function c1(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 xp(e,t,n,r){let i=r?.wordBreak??"normal",o=rp(e,kt(),r?.whiteSpace,i);return u1(o,t,n,i)}function oo(e,t,n){return xp(e,t,!1,n)}function yp(e,t,n){return xp(e,t,!0,n)}function ao(e,t,n){let r=pp(e,t);return{lineCount:r,height:r*n}}function d1(e){return{width:e.width,start:{segmentIndex:e.startSegmentIndex,graphemeIndex:e.startGraphemeIndex},end:{segmentIndex:e.endSegmentIndex,graphemeIndex:e.endGraphemeIndex}}}function m1(e,t,n){return e.widths.length===0?0:Ys(e,t,r=>{n(d1(r))})}function vp(e,t){return bp(e,t)}function Sp(e){let t=0;return m1(e,Number.POSITIVE_INFINITY,n=>{n.width>t&&(t=n.width)}),t}var f1={maxWidth:1600,baseFontSize:78,minFontSize:42,fontWeight:900,fontFamily:"Outfit",step:2};function Ap(e,t){let n={...f1,...t},r=1.2;for(let i=n.baseFontSize;i>=n.minFontSize;i-=n.step){let o=`${n.fontWeight} ${i}px ${n.fontFamily}`,a=oo(e,o),{lineCount:l}=ao(a,n.maxWidth,i*r);if(l<=1)return{fontSize:i,fits:!0}}return{fontSize:n.minFontSize,fits:!1}}var Ep={prepare:oo,layout:ao,prepareWithSegments:yp,measureLineStats:vp,measureNaturalWidth:Sp};window.__timelines=window.__timelines||{};Im();window.__hyperframes={fitTextFontSize:Ap,getVariables:Bl,pretext:Ep,registerRuntimeDataHandler:Uf,setRuntimeData:Qi,clearRuntimeData:Zi};function wp(){let e=window;e.__hyperframeRuntimeBootstrapped||(e.__hyperframeRuntimeBootstrapped=!0,zf())}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",wp,{once:!0}):wp();})();
714
+ `)}var al=null,c1;function d1(){return al===null&&(al=new Intl.Segmenter(c1,{granularity:"word"})),al}var m1=/\p{Script=Arabic}/u,mo=/\p{M}/u,Lp=/\p{Nd}/u;function Cp(e){return m1.test(e)}function Rp(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 Xe(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 i=(n-55296<<10)+(r-56320)+65536;if(Rp(i))return!0;t++;continue}}if(Rp(n))return!0}}return!1}function f1(e){let t=ho(e);return t!==null&&(po.has(t)||Ft.has(t))}var p1=new Set(["\xA0","\u202F","\u2060","\uFEFF"]);function h1(e){return Xe(e)}function g1(e){let t=ho(e);return t!==null&&p1.has(t)}function fo(e){return!f1(e)&&!g1(e)}var po=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"]),Pr=new Set(['"',"(","[","{","\u201C","\u2018","\xAB","\u2039","\uFF08","\u3014","\u3008","\u300A","\u300C","\u300E","\u3010","\u3016","\u3018","\u301A"]),ll=new Set(["'","\u2019"]),Ft=new Set([".",",","!","?",":",";","\u060C","\u061B","\u061F","\u0964","\u0965","\u104A","\u104B","\u104C","\u104D","\u104F",")","]","}","%",'"',"\u201D","\u2019","\xBB","\u203A","\u2026"]),b1=new Set([":",".","\u060C","\u061B"]),x1=new Set(["\u104F"]),y1=new Set(["\u201D","\u2019","\xBB","\u203A","\u300D","\u300F","\u3011","\u300B","\u3009","\u3015","\uFF09"]);function S1(e){if(ul(e))return!0;let t=!1;for(let n of e){if(Ft.has(n)){t=!0;continue}if(!(t&&mo.test(n)))return!1}return t}function v1(e){for(let t of e)if(!po.has(t)&&!Ft.has(t))return!1;return e.length>0}function A1(e){if(ul(e))return!0;for(let t of e)if(!Pr.has(t)&&!ll.has(t)&&!mo.test(t))return!1;return e.length>0}function ul(e){let t=!1;for(let n of e)if(!(n==="\\"||mo.test(n))){if(Pr.has(n)||Ft.has(n)||ll.has(n)){t=!0;continue}return!1}return t}function Dp(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 i=n-1;if(i<0)return n;let o=e.charCodeAt(i);return o>=55296&&o<=56319?i:n}function ho(e){if(e.length===0)return null;let t=Dp(e,e.length);return e.slice(t)}function E1(e){let t=Array.from(e),n=t.length;for(;n>0;){let r=t[n-1];if(mo.test(r)){n--;continue}if(Pr.has(r)||ll.has(r)){n--;continue}break}return n<=0||n===t.length?null:{head:t.slice(0,n).join(""),tail:t.slice(n).join("")}}function w1(e,t,n){return n==="text"&&!t&&e.length===1&&e!=="-"&&e!=="\u2014"?e:null}function Tp(e,t,n,r){let i=t[r],o=e[r];if(i==null)return o;let a=n[r];if(o.length===a)return o;let l=i.repeat(a);return e[r]=l,l}function kp(e,t){return e&&t!==null&&b1.has(t)}function _1(e){let t=ho(e);return t!==null&&x1.has(t)}function C1(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 go(e){let t=e.length;for(;t>0;){let n=Dp(e,t),r=e.slice(n,t);if(y1.has(r))return!0;if(!Ft.has(r))return!1;t=n}return!1}function R1(e,t){if(t.preserveOrdinarySpaces||t.preserveHardBreaks){if(e===" ")return"preserved-space";if(e===" ")return"tab";if(t.preserveHardBreaks&&e===`
715
+ `)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 T1=/[\x20\t\n\xA0\xAD\u200B\u202F\u2060\uFEFF]/;function Ve(e){return e.length===1?e[0]:e.join("")}function k1(e,t){let n=[];for(let r=e.length-1;r>=0;r--)n.push(e[r]);return n.push(t),Ve(n)}function M1(e,t,n,r){if(!T1.test(e))return[{text:e,isWordLike:t,kind:"text",start:n}];let i=[],o=null,a=[],l=n,s=!1,u=0;for(let d of e){let f=R1(d,r),m=f==="text"&&t;if(o!==null&&f===o&&m===s){a.push(d),u+=d.length;continue}o!==null&&i.push({text:Ve(a),isWordLike:s,kind:o,start:l}),o=f,a=[d],l=n+u,s=m,u+=d.length}return o!==null&&i.push({text:Ve(a),isWordLike:s,kind:o,start:l}),i}function sl(e){return e==="space"||e==="preserved-space"||e==="zero-width-break"||e==="hard-break"}var F1=/^[A-Za-z][A-Za-z0-9+.-]*:$/;function N1(e,t){let n=e.texts[t];return n.startsWith("www.")?!0:F1.test(n)&&t+1<e.len&&e.kinds[t+1]==="text"&&e.texts[t+1]==="//"}function L1(e){return e.includes("?")&&(e.includes("://")||e.startsWith("www."))}function D1(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"||!N1(e,a))continue;let l=[t[a]],s=a+1;for(;s<e.len&&!sl(r[s]);){l.push(t[s]),n[a]=!0;let u=t[s].includes("?");if(r[s]="text",t[s]="",s++,u)break}t[a]=Ve(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 I1(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]),!L1(a))continue;let l=o+1;if(l>=e.len||sl(e.kinds[l]))continue;let s=[],u=e.starts[l],d=l;for(;d<e.len&&!sl(e.kinds[d]);)s.push(e.texts[d]),d++;s.length>0&&(t.push(Ve(s)),n.push(!0),r.push("text"),i.push(u),o=d-1)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}var P1=new Set([":","-","/","\xD7",",",".","+","\u2013","\u2014"]),Mp=/^[A-Za-z0-9_]+[,:;]*$/,Fp=/[,:;]+$/;function Ip(e){for(let t of e)if(Lp.test(t))return!0;return!1}function Ir(e){if(e.length===0)return!1;for(let t of e)if(!(Lp.test(t)||P1.has(t)))return!1;return!0}function O1(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"&&Ir(a)&&Ip(a)){let s=[a],u=o+1;for(;u<e.len&&e.kinds[u]==="text"&&Ir(e.texts[u]);)s.push(e.texts[u]),u++;t.push(Ve(s)),n.push(!0),r.push("text"),i.push(e.starts[o]),o=u-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 G1(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&&Mp.test(a)){let u=[a],d=Fp.test(a),f=o+1;for(;d&&f<e.len&&e.kinds[f]==="text"&&e.isWordLike[f]&&Mp.test(e.texts[f]);){let m=e.texts[f];u.push(m),d=Fp.test(m),f++}t.push(Ve(u)),n.push(!0),r.push("text"),i.push(e.starts[o]),o=f-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 H1(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 u=0;u<l.length;u++){let d=l[u];if(!s)break;(d.length===0||!Ip(d)||!Ir(d))&&(s=!1)}if(s){let u=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"),i.push(e.starts[o]+u),u+=m.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 B1(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],u=e.starts[o];if(s==="glue"){let d=[a[0]],f=u;for(o++;o<e.len&&e.kinds[o]==="glue";)d.push(e.texts[o]),o++;let m=Ve(d);if(o<e.len&&e.kinds[o]==="text")a[0]=m,a.push(e.texts[o]),l=e.isWordLike[o],s="text",u=f,o++;else{t.push(m),n.push(!1),r.push("glue"),i.push(f);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 f=Ve(d);if(o<e.len&&e.kinds[o]==="text"){a.push(f,e.texts[o]),l=l||e.isWordLike[o],o++;continue}a.push(f)}t.push(Ve(a)),n.push(l),r.push(s),i.push(u)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function U1(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"||!Xe(t[o])||!Xe(t[o+1]))continue;let a=E1(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 Np(e,t,n){let r=d1(),i=0,o=[],a=[],l=[],s=[],u=[],d=[],f=[],m=[],p=[],g=[],y=[],x=[];for(let F of r.segment(e))for(let S of M1(F.segment,F.isWordLike??!1,F.index,n)){let W=function(){d[M]!==null&&(a[M]=[Tp(o,d,f,M)],d[M]=null),a[M].push(S.text),l[M]=l[M]||S.isWordLike,m[M]=m[M]||T,p[M]=p[M]||I,g[M]=j,y[M]=Y,x[M]=kp(p[M],H)},A=S.kind==="text",E=w1(S.text,S.isWordLike,S.kind),T=Xe(S.text),I=Cp(S.text),H=ho(S.text),j=go(S.text),Y=_1(S.text),M=i-1;t.carryCJKAfterClosingQuote&&A&&i>0&&s[M]==="text"&&T&&m[M]&&g[M]||A&&i>0&&s[M]==="text"&&v1(S.text)&&m[M]||A&&i>0&&s[M]==="text"&&y[M]?W():A&&i>0&&s[M]==="text"&&S.isWordLike&&I&&x[M]?(W(),l[M]=!0):E!==null&&i>0&&s[M]==="text"&&d[M]===E?f[M]=(f[M]??1)+1:A&&!S.isWordLike&&i>0&&s[M]==="text"&&(S1(S.text)||S.text==="-"&&l[M])?W():(o[i]=S.text,a[i]=[S.text],l[i]=S.isWordLike,s[i]=S.kind,u[i]=S.start,d[i]=E,f[i]=E===null?0:1,m[i]=T,p[i]=I,g[i]=j,y[i]=Y,x[i]=kp(I,H),i++)}for(let F=0;F<i;F++){if(d[F]!==null){o[F]=Tp(o,d,f,F);continue}o[F]=Ve(a[F])}for(let F=1;F<i;F++)s[F]==="text"&&!l[F]&&ul(o[F])&&s[F-1]==="text"&&(o[F-1]+=o[F],l[F-1]=l[F-1]||l[F],o[F]="");let _=Array.from({length:i},()=>null),k=-1;for(let F=i-1;F>=0;F--){let S=o[F];if(S.length!==0){if(s[F]==="text"&&!l[F]&&A1(S)&&k>=0&&s[k]==="text"){let A=_[k]??[];A.push(S),_[k]=A,u[k]=u[F],o[F]="";continue}k=F}}for(let F=0;F<i;F++){let S=_[F];S!=null&&(o[F]=k1(S,o[F]))}let C=0;for(let F=0;F<i;F++){let S=o[F];S.length!==0&&(C!==F&&(o[C]=S,l[C]=l[F],s[C]=s[F],u[C]=u[F]),C++)}o.length=C,l.length=C,s.length=C,u.length=C;let L=B1({len:C,texts:o,isWordLike:l,kinds:s,starts:u}),P=U1(G1(H1(O1(I1(D1(L))))));for(let F=0;F<P.len-1;F++){let S=C1(P.texts[F]);S!==null&&(P.kinds[F]!=="space"&&P.kinds[F]!=="preserved-space"||P.kinds[F+1]!=="text"||!Cp(P.texts[F+1])||(P.texts[F]=S.space,P.isWordLike[F]=!1,P.kinds[F]=P.kinds[F]==="preserved-space"?"preserved-space":"space",P.texts[F+1]=S.marks+P.texts[F+1],P.starts[F+1]=P.starts[F]+S.space.length))}return P}function W1(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 V1(e){if(e.len<=1)return e;let t=[],n=[],r=[],i=[],o=null,a=!1,l=0,s=!1,u=!1;function d(){o!==null&&(t.push(Ve(o)),n.push(a),r.push("text"),i.push(l),o=null)}for(let f=0;f<e.len;f++){let m=e.texts[f],p=e.kinds[f],g=e.isWordLike[f],y=e.starts[f];if(p==="text"){let x=h1(m),_=fo(m);if(o!==null&&s&&u){o.push(m),a=a||g,s=s||x,u=_;continue}d(),o=[m],a=g,l=y,s=x,u=_;continue}d(),t.push(m),n.push(g),r.push(p),i.push(y)}return d(),{len:t.length,texts:t,isWordLike:n,kinds:r,starts:i}}function Pp(e,t,n="normal",r="normal"){let i=s1(n),o=i.mode==="pre-wrap"?u1(e):l1(e);if(o.length===0)return{normalized:o,chunks:[],len:0,texts:[],isWordLike:[],kinds:[],starts:[]};let a=r==="keep-all"?V1(Np(o,t,i)):Np(o,t,i);return{normalized:o,chunks:W1(a,i),...a}}var wn=null,Op=new Map,_n=null,z1=96,q1=/\p{Emoji_Presentation}/u,$1=/[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u,cl=null,Gp=new Map;function dl(){if(wn!==null)return wn;if(typeof OffscreenCanvas<"u")return wn=new OffscreenCanvas(1,1).getContext("2d"),wn;if(typeof document<"u")return wn=document.createElement("canvas").getContext("2d"),wn;throw new Error("Text measurement requires OffscreenCanvas or a DOM canvas context.")}function j1(e){let t=Op.get(e);return t||(t=new Map,Op.set(e,t)),t}function xt(e,t){let n=t.get(e);return n===void 0&&(n={width:dl().measureText(e).width,containsCJK:Xe(e)},t.set(e,n)),n}function Lt(){if(_n!==null)return _n;if(typeof navigator>"u")return _n={lineFitEpsilon:.005,carryCJKAfterClosingQuote:!1,preferPrefixWidthsForBreakableRuns:!1,preferEarlySoftHyphenBreak:!1},_n;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 _n={lineFitEpsilon:n?1/64:.005,carryCJKAfterClosingQuote:r,preferPrefixWidthsForBreakableRuns:n,preferEarlySoftHyphenBreak:n},_n}function K1(e){let t=e.match(/(\d+(?:\.\d+)?)\s*px/);return t?parseFloat(t[1]):16}function Hp(){return cl===null&&(cl=new Intl.Segmenter(void 0,{granularity:"grapheme"})),cl}function Y1(e){return q1.test(e)||e.includes("\uFE0F")}function Bp(e){return $1.test(e)}function X1(e,t){let n=Gp.get(e);if(n!==void 0)return n;let r=dl();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 Gp.set(e,n),n}function J1(e){let t=0,n=Hp();for(let r of n.segment(e))Y1(r.segment)&&t++;return t}function Q1(e,t){return t.emojiCount===void 0&&(t.emojiCount=J1(e)),t.emojiCount}function Nt(e,t,n){return n===0?t.width:t.width-Q1(e,t)*n}function Up(e,t,n,r,i){if(t.breakableFitAdvances!==void 0)return t.breakableFitAdvances;let o=Hp(),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 f of a){let m=xt(f,n);d.push(Nt(f,m,r))}return t.breakableFitAdvances=d,t.breakableFitAdvances}if(i==="pair-context"||a.length>z1){let d=[],f=null,m=0;for(let p of a){let g=xt(p,n),y=Nt(p,g,r);if(f===null)d.push(y);else{let x=f+p,_=xt(x,n);d.push(Nt(x,_,r)-m)}f=p,m=y}return t.breakableFitAdvances=d,t.breakableFitAdvances}let l=[],s="",u=0;for(let d of a){s+=d;let f=xt(s,n),m=Nt(s,f,r);l.push(m-u),u=m}return t.breakableFitAdvances=l,t.breakableFitAdvances}function Wp(e,t){let n=dl();n.font=e;let r=j1(e),i=K1(e),o=t?X1(e,i):0;return{cache:r,fontSize:i,emojiCorrection:o}}function Z1(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 Vp(e,t){if(t<=0)return 0;let n=e%t;return Math.abs(n)<=1e-6?t:t-n}function zp(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 eA(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 qp(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 $p(e,t){if(t.segmentIndex>=e.widths.length)return-1;let n=eA(e,t.segmentIndex);return n<0?-1:qp(e,n,t)}function tA(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:qp(e,r,n)}function jp(e,t){return e.simpleLineWalkFastPath?Kp(e,t):ml(e,t)}function Kp(e,t,n){let{widths:r,kinds:i,breakableFitAdvances:o}=e;if(r.length===0)return 0;let l=Lt().lineFitEpsilon,s=t+l,u=0,d=0,f=!1,m=0,p=0,g=0,y=0,x=-1,_=0;function k(){x=-1,_=0}function C(E=g,T=y,I=d){u++,n?.({startSegmentIndex:m,startGraphemeIndex:p,endSegmentIndex:E,endGraphemeIndex:T,width:I}),d=0,f=!1,k()}function L(E,T){f=!0,m=E,p=0,g=E+1,y=0,d=T}function P(E,T,I){f=!0,m=E,p=T,g=E,y=T+1,d=I}function F(E,T){if(!f){L(E,T);return}d+=T,g=E+1,y=0}function S(E,T){let I=o[E];for(let H=T;H<I.length;H++){let j=I[H];f?d+j>s?(C(),P(E,H,j)):(d+=j,g=E,y=H+1):P(E,H,j)}f&&g===E&&y===I.length&&(g=E+1,y=0)}let A=0;for(;A<r.length&&!(!f&&(A=Z1(e,A),A>=r.length));){let E=r[A],T=i[A],I=T==="space"||T==="preserved-space"||T==="tab"||T==="zero-width-break"||T==="soft-hyphen";if(!f){E>t&&o[A]!==null?S(A,0):L(A,E),I&&(x=A+1,_=d-E),A++;continue}if(d+E>s){if(I){F(A,E),C(A+1,0,d-E),A++;continue}if(x>=0){if(g>x||g===x&&y>0){C();continue}C(x,0,_);continue}if(E>t&&o[A]!==null){C(),S(A,0),A++;continue}C();continue}F(A,E),I&&(x=A+1,_=d-E),A++}return f&&C(),u}function ml(e,t,n){if(e.simpleLineWalkFastPath)return Kp(e,t,n);let{widths:r,lineEndFitAdvances:i,lineEndPaintAdvances:o,kinds:a,breakableFitAdvances:l,discretionaryHyphenWidth:s,tabStopAdvance:u,chunks:d}=e;if(r.length===0||d.length===0)return 0;let f=Lt(),m=f.lineFitEpsilon,p=t+m,g=0,y=0,x=!1,_=0,k=0,C=0,L=0,P=-1,F=0,S=0,A=null;function E(){P=-1,F=0,S=0,A=null}function T(U=C,K=L,z=y){g++,n?.({startSegmentIndex:_,startGraphemeIndex:k,endSegmentIndex:U,endGraphemeIndex:K,width:z}),y=0,x=!1,E()}function I(U,K){x=!0,_=U,k=0,C=U+1,L=0,y=K}function H(U,K,z){x=!0,_=U,k=K,C=U,L=K+1,y=z}function j(U,K){if(!x){I(U,K);return}y+=K,C=U+1,L=0}function Y(U,K,z,J){if(!K)return;let G=U==="tab"?0:i[z],O=U==="tab"?J:o[z];P=z+1,F=y-J+G,S=y-J+O,A=U}function M(U,K){let z=l[U];for(let J=K;J<z.length;J++){let G=z[J];x?y+G>p?(T(),H(U,J,G)):(y+=G,C=U,L=J+1):H(U,J,G)}x&&C===U&&L===z.length&&(C=U+1,L=0)}function W(U){if(A!=="soft-hyphen")return!1;let K=l[U];if(K==null)return!1;let{fitCount:z,fittedWidth:J}=zp(K,y,t,m,s);return z===0?!1:(y=J,C=U,L=z,E(),z===K.length?(C=U+1,L=0,!0):(T(U,z,J+s),M(U,z),!0))}function te(U){g++,n?.({startSegmentIndex:U.startSegmentIndex,startGraphemeIndex:0,endSegmentIndex:U.consumedEndSegmentIndex,endGraphemeIndex:0,width:0}),E()}for(let U=0;U<d.length;U++){let K=d[U];if(K.startSegmentIndex===K.endSegmentIndex){te(K);continue}x=!1,y=0,_=K.startSegmentIndex,k=0,C=K.startSegmentIndex,L=0,E();let z=K.startSegmentIndex;for(;z<K.endSegmentIndex;){let J=a[z],G=J==="space"||J==="preserved-space"||J==="tab"||J==="zero-width-break"||J==="soft-hyphen",O=J==="tab"?Vp(y,u):r[z];if(J==="soft-hyphen"){x&&(C=z+1,L=0,P=z+1,F=y+s,S=y+s,A=J),z++;continue}if(!x){O>t&&l[z]!==null?M(z,0):I(z,O),Y(J,G,z,O),z++;continue}if(y+O>p){let Z=y+(J==="tab"?0:i[z]),ce=y+(J==="tab"?O:o[z]);if(A==="soft-hyphen"&&f.preferEarlySoftHyphenBreak&&F<=p){T(P,0,S);continue}if(A==="soft-hyphen"&&W(z)){z++;continue}if(G&&Z<=p){j(z,O),T(z+1,0,ce),z++;continue}if(P>=0&&F<=p){if(C>P||C===P&&L>0){T();continue}let re=P;T(re,0,S),z=re;continue}if(O>t&&l[z]!==null){T(),M(z,0),z++;continue}T();continue}j(z,O),Y(J,G,z,O),z++}if(x){let J=P===K.consumedEndSegmentIndex?S:y;T(K.consumedEndSegmentIndex,0,J)}}return g}function Yp(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:u,discretionaryHyphenWidth:d,tabStopAdvance:f}=e,m=Lt(),p=m.lineFitEpsilon,g=r+p,y=0,x=!1,_=t.segmentIndex,k=t.graphemeIndex,C=-1,L=0,P=0,F=null;function S(){C=-1,L=0,P=0,F=null}function A(M=_,W=k,te=y){return x?(t.segmentIndex=M,t.graphemeIndex=W,te):null}function E(M,W){x=!0,_=M+1,k=0,y=W}function T(M,W,te){x=!0,_=M,k=W+1,y=te}function I(M,W){if(!x){E(M,W);return}y+=W,_=M+1,k=0}function H(M,W,te,U){if(!W)return;let K=M==="tab"?0:a[te],z=M==="tab"?U:l[te];C=te+1,L=y-U+K,P=y-U+z,F=M}function j(M,W){let te=u[M];for(let U=W;U<te.length;U++){let K=te[U];if(!x)T(M,U,K);else{if(y+K>g)return A();y+=K,_=M,k=U+1}}return x&&_===M&&k===te.length&&(_=M+1,k=0),null}function Y(M){if(F!=="soft-hyphen"||C<0)return null;let W=u[M]??null;if(W!==null){let{fitCount:te,fittedWidth:U}=zp(W,y,r,p,d);if(te===W.length)return y=U,_=M+1,k=0,S(),null;if(te>0)return A(M,te,U+d)}return L<=g?A(C,0,P):null}for(let M=t.segmentIndex;M<i.endSegmentIndex;M++){let W=s[M],te=W==="space"||W==="preserved-space"||W==="tab"||W==="zero-width-break"||W==="soft-hyphen",U=M===t.segmentIndex?t.graphemeIndex:0,K=W==="tab"?Vp(y,f):o[M];if(W==="soft-hyphen"&&U===0){x&&(_=M+1,k=0,C=M+1,L=y+d,P=y+d,F=W);continue}if(!x){if(U>0){let J=j(M,U);if(J!==null)return J}else if(K>r&&u[M]!==null){let J=j(M,0);if(J!==null)return J}else E(M,K);H(W,te,M,K);continue}if(y+K>g){let J=y+(W==="tab"?0:a[M]),G=y+(W==="tab"?K:l[M]);if(F==="soft-hyphen"&&m.preferEarlySoftHyphenBreak&&L<=g)return A(C,0,P);let O=Y(M);if(O!==null)return O;if(te&&J<=g)return I(M,K),A(M+1,0,G);if(C>=0&&L<=g)return _>C||_===C&&k>0?A():A(C,0,P);if(K>r&&u[M]!==null){let q=A();if(q!==null)return q;let Z=j(M,0);if(Z!==null)return Z}return A()}I(M,K),H(W,te,M,K)}return C===i.consumedEndSegmentIndex&&k===0?A(i.consumedEndSegmentIndex,0,P):A(i.consumedEndSegmentIndex,0,y)}function nA(e,t,n){let{widths:r,kinds:i,breakableFitAdvances:o}=e,l=Lt().lineFitEpsilon,s=n+l,u=0,d=!1,f=t.segmentIndex,m=t.graphemeIndex,p=-1,g=0;for(let y=t.segmentIndex;y<r.length;y++){let x=r[y],_=i[y],k=_==="space"||_==="preserved-space"||_==="tab"||_==="zero-width-break"||_==="soft-hyphen",C=y===t.segmentIndex?t.graphemeIndex:0,L=o[y];if(!d){if(C>0||x>n&&L!==null){let P=L,F=P[C];d=!0,u=F,f=y,m=C+1;for(let S=C+1;S<P.length;S++){let A=P[S];if(u+A>s)return t.segmentIndex=f,t.graphemeIndex=m,u;u+=A,f=y,m=S+1}f===y&&m===P.length&&(f=y+1,m=0)}else d=!0,u=x,f=y+1,m=0;k&&(p=y+1,g=u-x);continue}if(u+x>s)return k?(t.segmentIndex=y+1,t.graphemeIndex=0,u):p>=0?f>p||f===p&&m>0?(t.segmentIndex=f,t.graphemeIndex=m,u):(t.segmentIndex=p,t.graphemeIndex=0,g):(t.segmentIndex=f,t.graphemeIndex=m,u);u+=x,f=y+1,m=0,k&&(p=y+1,g=u-x)}return d?(t.segmentIndex=f,t.graphemeIndex=m,u):null}function rA(e,t,n){let r=$p(e,t);return r<0?null:e.simpleLineWalkFastPath?nA(e,t,n):Yp(e,t,r,n)}function Xp(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=$p(e,n);for(;o>=0;){let a=Yp(e,n,o,t);if(a===null)return{lineCount:r,maxLineWidth:i};r++,a>i&&(i=a),o=tA(e,o,n)}return{lineCount:r,maxLineWidth:i}}for(;;){let o=rA(e,n,t);if(o===null)return{lineCount:r,maxLineWidth:i};r++,o>i&&(i=o)}}var fl=null;function iA(){return fl===null&&(fl=new Intl.Segmenter(void 0,{granularity:"grapheme"})),fl}function oA(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 aA(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 u(f,m,p){r=[f],i=m,o=p,a=go(f),l=Pr.has(f)}function d(f,m){r.push(f),o=o||m;let p=go(f);f.length===1&&Ft.has(f)?a=a||p:a=p,l=!1}for(let f of iA().segment(e)){let m=f.segment,p=Xe(m);if(r.length===0){u(m,f.index,p);continue}if(l||po.has(m)||Ft.has(m)||t.carryCJKAfterClosingQuote&&p&&a){d(m,p);continue}if(!o&&!p){d(m,p);continue}s(),u(m,f.index,p)}return s(),n}function sA(e){if(e.length<=1)return e;let t=[],n=[e[0].text],r=e[0].start,i=Xe(e[0].text),o=fo(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],u=Xe(s.text),d=fo(s.text);if(i&&o){n.push(s.text),i=i||u,o=d;continue}a(),n=[s.text],r=s.start,i=u,o=d}return a(),t}function lA(e,t,n,r){let i=Lt(),{cache:o,emojiCorrection:a}=Wp(t,Bp(e.normalized)),l=Nt("-",xt("-",o),a),u=Nt(" ",xt(" ",o),a)*8;if(e.len===0)return oA(n);let d=[],f=[],m=[],p=[],g=e.chunks.length<=1,y=n?[]:null,x=[],_=n?[]:null,k=Array.from({length:e.len});function C(S,A,E,T,I,H,j){I!=="text"&&I!=="space"&&I!=="zero-width-break"&&(g=!1),d.push(A),f.push(E),m.push(T),p.push(I),y?.push(H),x.push(j),_!==null&&_.push(S)}function L(S,A,E,T,I){let H=xt(S,o),j=Nt(S,H,a),Y=A==="space"||A==="preserved-space"||A==="zero-width-break"?0:j,M=A==="space"||A==="zero-width-break"?0:j;if(I&&T&&S.length>1){let W="sum-graphemes";Ir(S)?W="pair-context":i.preferPrefixWidthsForBreakableRuns&&(W="segment-prefixes");let te=Up(S,H,o,a,W);C(S,j,Y,M,A,E,te);return}C(S,j,Y,M,A,E,null)}for(let S=0;S<e.len;S++){k[S]=d.length;let A=e.texts[S],E=e.isWordLike[S],T=e.kinds[S],I=e.starts[S];if(T==="soft-hyphen"){C(A,0,l,l,T,I,null);continue}if(T==="hard-break"){C(A,0,0,0,T,I,null);continue}if(T==="tab"){C(A,0,0,0,T,I,null);continue}let H=xt(A,o);if(T==="text"&&H.containsCJK){let j=aA(A,i),Y=r==="keep-all"?sA(j):j;for(let M=0;M<Y.length;M++){let W=Y[M];L(W.text,"text",I+W.start,E,r==="keep-all"||!Xe(W.text))}continue}L(A,T,I,E,!0)}let P=uA(e.chunks,k,d.length),F=y===null?null:_p(e.normalized,y);return _!==null?{widths:d,lineEndFitAdvances:f,lineEndPaintAdvances:m,kinds:p,simpleLineWalkFastPath:g,segLevels:F,breakableFitAdvances:x,discretionaryHyphenWidth:l,tabStopAdvance:u,chunks:P,segments:_}:{widths:d,lineEndFitAdvances:f,lineEndPaintAdvances:m,kinds:p,simpleLineWalkFastPath:g,segLevels:F,breakableFitAdvances:x,discretionaryHyphenWidth:l,tabStopAdvance:u,chunks:P}}function uA(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 Jp(e,t,n,r){let i=r?.wordBreak??"normal",o=Pp(e,Lt(),r?.whiteSpace,i);return lA(o,t,n,i)}function bo(e,t,n){return Jp(e,t,!1,n)}function Qp(e,t,n){return Jp(e,t,!0,n)}function xo(e,t,n){let r=jp(e,t);return{lineCount:r,height:r*n}}function cA(e){return{width:e.width,start:{segmentIndex:e.startSegmentIndex,graphemeIndex:e.startGraphemeIndex},end:{segmentIndex:e.endSegmentIndex,graphemeIndex:e.endGraphemeIndex}}}function dA(e,t,n){return e.widths.length===0?0:ml(e,t,r=>{n(cA(r))})}function Zp(e,t){return Xp(e,t)}function eh(e){let t=0;return dA(e,Number.POSITIVE_INFINITY,n=>{n.width>t&&(t=n.width)}),t}var mA={maxWidth:1600,baseFontSize:78,minFontSize:42,fontWeight:900,fontFamily:"Outfit",step:2};function th(e,t){let n={...mA,...t},r=1.2;for(let i=n.baseFontSize;i>=n.minFontSize;i-=n.step){let o=`${n.fontWeight} ${i}px ${n.fontFamily}`,a=bo(e,o),{lineCount:l}=xo(a,n.maxWidth,i*r);if(l<=1)return{fontSize:i,fits:!0}}return{fontSize:n.minFontSize,fits:!1}}var nh={prepare:bo,layout:xo,prepareWithSegments:Qp,measureLineStats:Zp,measureNaturalWidth:eh};window.__timelines=window.__timelines||{};hf();window.__hyperframes={fitTextFontSize:th,getVariables:iu,pretext:nh,registerRuntimeDataHandler:Sp,setRuntimeData:uo,clearRuntimeData:co};function rh(){let e=window;e.__hyperframeRuntimeBootstrapped||(e.__hyperframeRuntimeBootstrapped=!0,Ep())}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",rh,{once:!0}):rh();})();
716
716