@hyperframes/core 0.8.208 → 0.8.209
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/atomicFile.js +18 -19
- package/dist/compiler/compositionScoping.d.ts +2 -0
- package/dist/compiler/compositionScoping.js +9 -0
- package/dist/compiler/htmlBundler.js +2 -8
- package/dist/compiler/htmlDocument.d.ts +4 -0
- package/dist/compiler/htmlDocument.js +22 -0
- package/dist/compiler/index.d.ts +1 -1
- package/dist/compiler/index.js +1 -1
- package/dist/generated/runtime-inline.js +1 -1
- package/dist/hyperframe.runtime.iife.js +64 -64
- package/dist/removeScratch.d.ts +5 -0
- package/dist/removeScratch.js +23 -0
- package/dist/renameWithRetry.d.ts +16 -0
- package/dist/renameWithRetry.js +81 -0
- package/dist/runtime/applyVariableBindings.d.ts +6 -4
- package/dist/runtime/applyVariableBindings.js +23 -11
- package/dist/runtime/getVariables.js +5 -4
- package/dist/runtime/variableScope.d.ts +2 -0
- package/dist/runtime/variableScope.js +9 -3
- package/package.json +12 -4
|
@@ -1,36 +1,36 @@
|
|
|
1
|
-
"use strict";(()=>{var
|
|
1
|
+
"use strict";(()=>{var nT=Object.create;var lc=Object.defineProperty;var rT=Object.getOwnPropertyDescriptor;var oT=Object.getOwnPropertyNames;var iT=Object.getPrototypeOf,aT=Object.prototype.hasOwnProperty;var sT=(e,t,n)=>t in e?lc(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Ae=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(n){throw t=0,n}};var lT=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of oT(t))!aT.call(e,o)&&o!==n&&lc(e,o,{get:()=>t[o],enumerable:!(r=rT(t,o))||r.enumerable});return e};var uT=(e,t,n)=>(n=e!=null?nT(iT(e)):{},lT(t||!e||!e.__esModule?lc(n,"default",{value:e,enumerable:!0}):n,e));var Se=(e,t,n)=>sT(e,typeof t!="symbol"?t+"":t,n);var Cx=Ae((TV,uf)=>{var xe=String,_x=function(){return{isColorSupported:!1,reset:xe,bold:xe,dim:xe,italic:xe,underline:xe,inverse:xe,hidden:xe,strikethrough:xe,black:xe,red:xe,green:xe,yellow:xe,blue:xe,magenta:xe,cyan:xe,white:xe,gray:xe,bgBlack:xe,bgRed:xe,bgGreen:xe,bgYellow:xe,bgBlue:xe,bgMagenta:xe,bgCyan:xe,bgWhite:xe,blackBright:xe,redBright:xe,greenBright:xe,yellowBright:xe,blueBright:xe,magentaBright:xe,cyanBright:xe,whiteBright:xe,bgBlackBright:xe,bgRedBright:xe,bgGreenBright:xe,bgYellowBright:xe,bgBlueBright:xe,bgMagentaBright:xe,bgCyanBright:xe,bgWhiteBright:xe}};uf.exports=_x();uf.exports.createColors=_x});var cf=Ae(()=>{});var yl=Ae((kV,Mx)=>{"use strict";var Tx=Cx(),Rx=cf(),Fi=class e extends Error{constructor(t,n,r,o,i,a){super(t),this.name="CssSyntaxError",this.reason=t,i&&(this.file=i),o&&(this.source=o),a&&(this.plugin=a),typeof n<"u"&&typeof r<"u"&&(typeof n=="number"?(this.line=n,this.column=r):(this.line=n.line,this.column=n.column,this.endLine=r.line,this.endColumn=r.column)),this.setMessage(),Error.captureStackTrace&&Error.captureStackTrace(this,e)}setMessage(){this.message=this.plugin?this.plugin+": ":"",this.message+=this.file?this.file:"<css input>",typeof this.line<"u"&&(this.message+=":"+this.line+":"+this.column),this.message+=": "+this.reason}showSourceCode(t){if(!this.source)return"";let n=this.source;t==null&&(t=Tx.isColorSupported);let r=d=>d,o=d=>d,i=d=>d;if(t){let{bold:d,gray:m,red:f}=Tx.createColors(!0);o=p=>d(f(p)),r=p=>m(p),Rx&&(i=p=>Rx(p))}let a=n.split(/\r?\n/),l=Math.max(this.line-3,0),s=Math.min(this.line+2,a.length),c=String(s).length;return a.slice(l,s).map((d,m)=>{let f=l+1+m,p=" "+(" "+f).slice(-c)+" | ";if(f===this.line){if(d.length>160){let y=20,x=Math.max(0,this.column-y),v=Math.max(this.column+y,this.endColumn+y),E=d.slice(x,v),C=r(p.replace(/\d/g," "))+d.slice(0,Math.min(this.column-1,y-1)).replace(/[^\t]/g," ");return o(">")+r(p)+i(E)+`
|
|
2
2
|
`+C+o("^")}let b=r(p.replace(/\d/g," "))+d.slice(0,this.column-1).replace(/[^\t]/g," ");return o(">")+r(p)+i(d)+`
|
|
3
3
|
`+b+o("^")}return" "+r(p)+i(d)}).join(`
|
|
4
4
|
`)}toString(){let t=this.showSourceCode();return t&&(t=`
|
|
5
5
|
|
|
6
6
|
`+t+`
|
|
7
|
-
`),this.name+": "+this.message+t}};
|
|
7
|
+
`),this.name+": "+this.message+t}};Mx.exports=Fi;Fi.default=Fi});var df=Ae((LV,Px)=>{"use strict";var vk=/(<)(\/?style\b)/gi,Ak=/(<)(!--)/g,wk=/[\t\n\f\r "#'()/;[\\\]{}]/;function Dt(e){return typeof e!="string"||!e.includes("<")?e:e.replace(vk,"\\3c $2").replace(Ak,"\\3c $2")}var kx={after:`
|
|
8
8
|
`,beforeClose:`
|
|
9
9
|
`,beforeComment:`
|
|
10
10
|
`,beforeDecl:`
|
|
11
11
|
`,beforeOpen:" ",beforeRule:`
|
|
12
|
-
`,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function
|
|
13
|
-
`)){let a=this.raw(t,null,"indent");if(a.length)for(let l=0;l<i;l++)r+=a}return r}block(t,n){let r=this.raw(t,"between","beforeOpen");this.builder(Dt(n+r)+"{",t,"start");let o;t.nodes&&t.nodes.length?(this.body(t),o=this.raw(t,"after")):o=this.raw(t,"after","emptyBody"),o&&this.builder(Dt(o)),this.builder("}",t,"end")}body(t){let n=e.prototype,r=["atrule","block","body","rule","stringify"].every(i=>this[i]===n[i]),o=[];for(
|
|
12
|
+
`,colon:": ",commentLeft:" ",commentRight:" ",emptyBody:"",indent:" ",semicolon:!1};function _k(e){return e[0].toUpperCase()+e.slice(1)}function Lx(e,t){let n="@"+t.name,r=t.params?e.rawValue(t,"params"):"",o=t.raws.afterName;return typeof o>"u"?o=r?" ":"":o===""&&r&&!wk.test(r[0])&&(o=" "),n+o+r}function Ck(e){if(!e.prop.startsWith("--"))return!1;let t=e.raws.before;return typeof t>"u"||!/\S$/.test(t)}function Fx(e,t,n){let r=n.nodes,o=r.length-1;for(;o>0&&r[o].type==="comment";)o-=1;let i=e.raw(n,"semicolon"),a=n.type==="document";for(let l=r.length-1;l>=0;l--){let s=r[l],c=o!==l||i;!c&&l<r.length-1&&(s.type==="atrule"&&!s.nodes||s.type==="decl"&&Ck(s))&&(c=!0),t.push({document:a,node:s,semicolon:c})}}function Nx(e,t,n,r){let o=e.raw(n,"between","beforeOpen");e.builder(Dt(r+o)+"{",n,"start");let i=n.nodes&&n.nodes.length,a=()=>{let l=i?e.raw(n,"after"):e.raw(n,"after","emptyBody");l&&e.builder(Dt(l)),e.builder("}",n,"end"),n.type==="rule"&&n.raws.ownSemicolon&&e.builder(Dt(n.raws.ownSemicolon),n,"end")};i?(t.push(a),Fx(e,t,n)):a()}var Pi=class e{constructor(t){this.builder=t}atrule(t,n){let r=Lx(this,t);if(t.nodes)this.block(t,r);else{let o=(t.raws.between||"")+(n?";":"");this.builder(Dt(r+o),t)}}beforeAfter(t,n){let r;t.type==="decl"?r=this.raw(t,null,"beforeDecl"):t.type==="comment"?r=this.raw(t,null,"beforeComment"):n==="before"?r=this.raw(t,null,"beforeRule"):r=this.raw(t,null,"beforeClose");let o=t.parent,i=0;for(;o&&o.type!=="root";)i+=1,o=o.parent;if(r.includes(`
|
|
13
|
+
`)){let a=this.raw(t,null,"indent");if(a.length)for(let l=0;l<i;l++)r+=a}return r}block(t,n){let r=this.raw(t,"between","beforeOpen");this.builder(Dt(n+r)+"{",t,"start");let o;t.nodes&&t.nodes.length?(this.body(t),o=this.raw(t,"after")):o=this.raw(t,"after","emptyBody"),o&&this.builder(Dt(o)),this.builder("}",t,"end")}body(t){let n=e.prototype,r=["atrule","block","body","rule","stringify"].every(i=>this[i]===n[i]),o=[];for(Fx(this,o,t);o.length>0;){let i=o.pop();if(typeof i=="function"){i();continue}let a=i.node,l=this.raw(a,"before");l&&this.builder(i.document?l:Dt(l)),r&&a.type==="rule"?Nx(this,o,a,this.rawValue(a,"selector")):r&&a.type==="atrule"&&a.nodes?Nx(this,o,a,Lx(this,a)):this.stringify(a,i.semicolon)}}comment(t){let n=this.raw(t,"left","commentLeft"),r=this.raw(t,"right","commentRight");this.builder(Dt("/*"+n+t.text+r+"*/"),t)}decl(t,n){let r=t.raws,o=this.raw(t,"between","colon"),i=t.prop+o+this.rawValue(t,"value");t.important&&(i+=r.important||" !important"),n&&(i+=";"),this.builder(Dt(i),t)}document(t){this.body(t)}raw(t,n,r){let o;if(r||(r=n),n&&(o=t.raws[n],typeof o<"u"))return o;let i=t.parent;if(r==="before"&&(!i||i.type==="root"&&i.first===t||i&&i.type==="document"))return"";if(!i)return kx[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"+_k(r);this[s]?o=this[s](a,t):a.walk(c=>{if(o=c.raws[n],typeof o<"u")return!1})}return typeof o>"u"&&(o=kx[r]),l[r]=o,o}rawBeforeClose(t){let n;return t.walk(r=>{if(r.nodes&&r.nodes.length>0&&typeof r.raws.after<"u")return n=r.raws.after,n.includes(`
|
|
14
14
|
`)&&(n=n.replace(/[^\n]+$/,"")),!1}),n&&(n=n.replace(/\S/g,"")),n}rawBeforeComment(t,n){let r;return t.walkComments(o=>{if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
|
|
15
15
|
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(n,null,"beforeDecl"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeDecl(t,n){let r;return t.walkDecls(o=>{if(typeof o.raws.before<"u")return r=o.raws.before,r.includes(`
|
|
16
16
|
`)&&(r=r.replace(/[^\n]+$/,"")),!1}),typeof r>"u"?r=this.raw(n,null,"beforeRule"):r&&(r=r.replace(/\S/g,"")),r}rawBeforeOpen(t){let n;return t.walk(r=>{if(r.type!=="decl"&&(n=r.raws.between,typeof n<"u"))return!1}),n}rawBeforeRule(t){let n;return t.walk(r=>{if(r.nodes&&(r.parent!==t||t.first!==r)&&typeof r.raws.before<"u")return n=r.raws.before,n.includes(`
|
|
17
17
|
`)&&(n=n.replace(/[^\n]+$/,"")),!1}),n&&(n=n.replace(/\S/g,"")),n}rawColon(t){let n;return t.walkDecls(r=>{if(typeof r.raws.between<"u")return n=r.raws.between.replace(/[^\s:]/g,""),!1}),n}rawEmptyBody(t){let n;return t.walk(r=>{if(r.nodes&&r.nodes.length===0&&(n=r.raws.after,typeof n<"u"))return!1}),n}rawIndent(t){if(t.raws.indent)return t.raws.indent;let n;return t.walk(r=>{let o=r.parent;if(o&&o!==t&&o.parent&&o.parent===t&&typeof r.raws.before<"u"){let i=r.raws.before.split(`
|
|
18
|
-
`);return n=i[i.length-1],n=n.replace(/\S/g,""),!1}}),n}rawSemicolon(t){let n;return t.walk(r=>{if(r.nodes&&r.nodes.length&&r.last.type==="decl"&&(n=r.raws.semicolon,typeof n<"u"))return!1}),n}rawValue(t,n){let r=t[n],o=t.raws[n];return o&&o.value===r?o.raw:r}root(t){if(t.source&&t.source.input.hasBOM&&this.builder("\uFEFF",t,"start"),this.body(t),t.raws.after){let n=t.raws.after,r=t.parent&&t.parent.type==="document";this.builder(r?n:Dt(n))}}rule(t){this.block(t,this.rawValue(t,"selector")),t.raws.ownSemicolon&&this.builder(Dt(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)}};
|
|
19
|
-
`?(n=1,r+=1):n+=1}return o}var Hi=class e{get proxyOf(){return this}constructor(t={}){this.raws={},this[Oi]=!1,this[
|
|
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:Kt(n,this.source.start)},o=this.source.end?{column:this.source.end.column+1,line:this.source.end.line,offset:typeof this.source.end.offset=="number"?this.source.end.offset:Kt(n,this.source.end)+1}:{column:r.column+1,line:r.line,offset:r.offset+1};if(t.word){let a=n.slice(Kt(n,this.source.start),Kt(n,this.source.end)).indexOf(t.word);a!==-1&&(r=this.positionInside(a),o=this.positionInside(a+t.word.length))}else t.start?r={column:t.start.column,line:t.start.line,offset:Kt(n,t.start)}:typeof t.index=="number"&&(r=this.positionInside(t.index)),t.end?o={column:t.end.column,line:t.end.line,offset:Kt(n,t.end)}:typeof t.endIndex=="number"?o=this.positionInside(t.endIndex):typeof t.index=="number"&&(o=this.positionInside(t.index+1));return(o.line<r.line||o.line===r.line&&o.column<=r.column)&&(o={column:r.column+1,line:r.line,offset:r.offset+1}),{end:o,start:r}}raw(t,n){return new wk().raw(this,t,n)}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}replaceWith(...t){if(this.parent){let n=this,r=!1;for(let o of t)o===this?r=!0:r?(this.parent.insertAfter(n,o),n=o):this.parent.insertBefore(n,o);r||this.remove()}return this}root(){let t=this;for(;t.parent&&t.parent.type!=="document";)t=t.parent;return t}toJSON(t,n){let r=n==null;n=n||new Map;let o=[],i=[[this,o,0]];for(let l=0;l<i.length;l++){let[s,c,d]=i[l],m={};c[d]=m;for(let f in s){if(!Object.prototype.hasOwnProperty.call(s,f)||f==="parent"||f==="proxyCache")continue;let p=s[f];if(Array.isArray(p)){let b=[];m[f]=b;for(let y=0;y<p.length;y++){let x=p[y];typeof x=="object"&&x.toJSON?x.toJSON===e.prototype.toJSON?i.push([x,b,y]):b[y]=x.toJSON(null,n):b[y]=x}}else if(typeof p=="object"&&p.toJSON)p.toJSON===e.prototype.toJSON?i.push([p,m,f]):m[f]=p.toJSON(null,n);else if(f==="source"){if(p==null)continue;let b=n.get(p.input);b==null&&(b=n.size,n.set(p.input,b)),m[f]={end:p.end,inputId:b,start:p.start}}else m[f]=p}}let a=o[0];return r&&(a.inputs=[...n.keys()].map(l=>l.toJSON())),a}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}toString(t=_k){t.stringify&&(t=t.stringify);let n="";return t(this,r=>{n+=r}),n}warn(t,n,r={}){let o={node:this};for(let i in r)o[i]=r[i];return t.warn(n,o)}};Px.exports=Hi;Hi.default=Hi});var Ui=Ae((RV,Dx)=>{"use strict";var Rk=Gi(),Bi=class extends Rk{constructor(t){super(t),this.type="comment"}};Dx.exports=Bi;Bi.default=Bi});var Vi=Ae((MV,Ix)=>{"use strict";var Mk=Gi(),Wi=class extends Mk{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"}};Ix.exports=Wi;Wi.default=Wi});var fn=Ae((kV,$x)=>{"use strict";var Hx=Ui(),Gx=Vi(),Ox=Gi(),{isClean:Bx,my:Ux}=Ii(),ff,Wx,Vx,mf;function kk(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 Lk(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[Bx]=!1,n.proxyOf.nodes)for(let r of n.proxyOf.nodes)t.push(r)}}var Yt=class e extends Ox{get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}append(...t){for(let n of t){let r=this.normalize(n,this.last);for(let o of r)this.proxyOf.nodes.push(o)}return this.markDirty(),this}cleanRaws(t){let n=[this];for(;n.length>0;){let r=n.pop();if(r!==this&&r.cleanRaws!==e.prototype.cleanRaws){r.cleanRaws(t);continue}if(Ox.prototype.cleanRaws.call(r,t),r.nodes)for(let o of r.nodes)n.push(o)}}each(t){if(!this.proxyOf.nodes)return;let n=this.getIterator(),r,o;for(;this.indexes[n]<this.proxyOf.nodes.length&&(r=this.indexes[n],o=t(this.proxyOf.nodes[r],r),o!==!1);)this.indexes[n]+=1;return delete this.indexes[n],o}every(t){return this.nodes.every(t)}getIterator(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;let t=this.lastEach;return this.indexes[t]=0,t}getProxyProcessor(){return{get(t,n){return n==="proxyOf"?t:t[n]?n==="each"||typeof n=="string"&&n.startsWith("walk")?(...r)=>t[n](...r.map(o=>typeof o=="function"?(i,a)=>o(i.toProxy(),a):o)):n==="every"||n==="some"?r=>t[n]((o,...i)=>r(o.toProxy(),...i)):n==="root"?()=>t.root().toProxy():n==="nodes"?t.nodes.map(r=>r.toProxy()):n==="first"||n==="last"?t[n].toProxy():t[n]:t[n]},set(t,n,r){return t[n]===r||(t[n]=r,(n==="name"||n==="params"||n==="selector")&&t.markDirty()),!0}}}index(t){return typeof t=="number"?t:(t.proxyOf&&(t=t.proxyOf),this.proxyOf.nodes.indexOf(t))}insertAfter(t,n){let r=this.index(t),o=this.normalize(n,this.proxyOf.nodes[r]).reverse();r=this.index(t);for(let a of o)this.proxyOf.nodes.splice(r+1,0,a);let i;for(let a in this.indexes)i=this.indexes[a],r<i&&(this.indexes[a]=i+o.length);return this.markDirty(),this}insertBefore(t,n){let r=this.index(t),o=r===0?"prepend":!1,i=this.normalize(n,this.proxyOf.nodes[r],o).reverse();r=this.index(t);for(let l of i)this.proxyOf.nodes.splice(r,0,l);let a;for(let l in this.indexes)a=this.indexes[l],r<=a&&(this.indexes[l]=a+i.length);return this.markDirty(),this}normalize(t,n){if(typeof t=="string")t=kk(Wx(t).nodes);else if(typeof t>"u")t=[];else if(Array.isArray(t)){t=t.slice(0);for(let o of t)o.parent&&o.parent.removeChild(o,"ignore")}else if(t.type==="root"&&this.type!=="document"){t=t.nodes.slice(0);for(let o of t)o.parent&&o.parent.removeChild(o,"ignore")}else if(t.type)t=[t];else if(t.prop){if(typeof t.value>"u")throw new Error("Value field is missed in node creation");typeof t.value!="string"&&(t.value=String(t.value)),t=[new Gx(t)]}else if(t.selector||t.selectors)t=[new mf(t)];else if(t.name)t=[new ff(t)];else if(t.text)t=[new Hx(t)];else throw new Error("Unknown node type in node creation");return t.map(o=>(o[Ux]||e.rebuild(o),o=o.proxyOf,o.parent&&o.parent.removeChild(o),o[Bx]&&Lk(o),o.raws||(o.raws={}),typeof o.raws.before>"u"&&n&&typeof n.raws.before<"u"&&(o.raws.before=n.raws.before.replace(/\S/g,"")),o.parent=this.proxyOf,o))}prepend(...t){t=t.reverse();for(let n of t){let r=this.normalize(n,this.first,"prepend").reverse();for(let o of r)this.proxyOf.nodes.unshift(o);for(let o in this.indexes)this.indexes[o]=this.indexes[o]+r.length}return this.markDirty(),this}push(t){return t.parent=this,this.proxyOf.nodes.push(t),this}removeAll(){for(let t of this.proxyOf.nodes)t.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}removeChild(t){t=this.index(t),this.proxyOf.nodes[t].parent=void 0,this.proxyOf.nodes.splice(t,1);let n;for(let r in this.indexes)n=this.indexes[r],n>=t&&(this.indexes[r]=n-1);return this.markDirty(),this}replaceValues(t,n,r){return r||(r=n,n={}),this.walkDecls(o=>{n.props&&!n.props.includes(o.prop)||n.fast&&!o.value.includes(n.fast)||(o.value=o.value.replace(t,r))}),this.markDirty(),this}some(t){return this.nodes.some(t)}walk(t){if(!this.proxyOf.nodes)return;let n=[{iterator:this.getIterator(),node:this.proxyOf}];for(;n.length>0;){let{iterator:r,node:o}=n[n.length-1],i=o.indexes[r];if(i>=o.proxyOf.nodes.length){delete o.indexes[r],n.pop();let s=n[n.length-1];s&&(s.node.indexes[s.iterator]+=1);continue}let a=o.proxyOf.nodes[i],l;try{l=t(a,i)}catch(s){throw a.addToError(s)}if(l===!1){for(let s of n)delete s.node.indexes[s.iterator];return!1}a.walk&&a.proxyOf.nodes?n.push({iterator:a.getIterator(),node:a}):o.indexes[r]+=1}}walkAtRules(t,n){return n?t instanceof RegExp?this.walk((r,o)=>{if(r.type==="atrule"&&t.test(r.name))return n(r,o)}):this.walk((r,o)=>{if(r.type==="atrule"&&r.name===t)return n(r,o)}):(n=t,this.walk((r,o)=>{if(r.type==="atrule")return n(r,o)}))}walkComments(t){return this.walk((n,r)=>{if(n.type==="comment")return t(n,r)})}walkDecls(t,n){return n?t instanceof RegExp?this.walk((r,o)=>{if(r.type==="decl"&&t.test(r.prop))return n(r,o)}):this.walk((r,o)=>{if(r.type==="decl"&&r.prop===t)return n(r,o)}):(n=t,this.walk((r,o)=>{if(r.type==="decl")return n(r,o)}))}walkRules(t,n){return n?t instanceof RegExp?this.walk((r,o)=>{if(r.type==="rule"&&t.test(r.selector))return n(r,o)}):this.walk((r,o)=>{if(r.type==="rule"&&r.selector===t)return n(r,o)}):(n=t,this.walk((r,o)=>{if(r.type==="rule")return n(r,o)}))}};Yt.registerParse=e=>{Wx=e};Yt.registerRule=e=>{mf=e};Yt.registerAtRule=e=>{ff=e};Yt.registerRoot=e=>{Vx=e};$x.exports=Yt;Yt.default=Yt;Yt.rebuild=e=>{let t=[e];for(;t.length>0;){let n=t.pop();if(n.type==="atrule"?Object.setPrototypeOf(n,ff.prototype):n.type==="rule"?Object.setPrototypeOf(n,mf.prototype):n.type==="decl"?Object.setPrototypeOf(n,Gx.prototype):n.type==="comment"?Object.setPrototypeOf(n,Hx.prototype):n.type==="root"&&Object.setPrototypeOf(n,Vx.prototype),n[Ux]=!0,n.nodes)for(let r of n.nodes)t.push(r)}}});var yl=Ae((LV,zx)=>{"use strict";var qx=fn(),co=class extends qx{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)}};zx.exports=co;co.default=co;qx.registerAtRule(co)});var xl=Ae((NV,Yx)=>{"use strict";var Nk=fn(),jx,Kx,Ar=class extends Nk{constructor(t){super({type:"document",...t}),this.nodes||(this.nodes=[])}toResult(t={}){return new jx(new Kx,this,t).stringify()}};Ar.registerLazyResult=e=>{jx=e};Ar.registerProcessor=e=>{Kx=e};Yx.exports=Ar;Ar.default=Ar});var Jx=Ae((FV,Xx)=>{var Fk="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Pk=(e,t=21)=>(n=t)=>{let r="",o=n|0;for(;o-- >0;)r+=e[Math.random()*e.length|0];return r},Dk=(e=21)=>{let t="",n=e|0;for(;n-- >0;)t+=Fk[Math.random()*64|0];return t};Xx.exports={nanoid:Dk,customAlphabet:Pk}});var Sl=Ae(()=>{});var El=Ae(()=>{});var pf=Ae(()=>{});var Qx=Ae(()=>{});var hf=Ae((WV,nS)=>{"use strict";var{existsSync:Ik,readFileSync:Ok,realpathSync:Hk}=Qx(),{dirname:vl,isAbsolute:Gk,join:Bk,relative:Uk,sep:Wk}=Sl(),{SourceMapConsumer:Zx,SourceMapGenerator:eS}=El();function tS(e){try{return Hk(e)}catch{return e}}function Vk(e){return Buffer?Buffer.from(e,"base64").toString():window.atob(e)}var $i=class{constructor(t,n){if(n.map===!1)return;n.unsafeMap&&(this.unsafeMap=!0),this.loadAnnotation(t),this.inline=this.startWith(this.annotation,"data:");let r=n.map?n.map.prev:void 0,o=this.loadMap(n.from,r);!this.mapFile&&n.from&&(this.mapFile=n.from),this.mapFile&&(this.root=vl(this.mapFile)),o&&(this.text=o)}consumer(){return this.consumerCache||(this.consumerCache=new Zx(this.json||this.text)),this.consumerCache}decodeInline(t){let n=/^data:application\/json;charset=utf-?8;base64,/,r=/^data:application\/json;base64,/,o=/^data:application\/json;charset=utf-?8,/,i=/^data:application\/json,/,a=t.match(o)||t.match(i);if(a)return decodeURIComponent(t.substr(a[0].length));let l=t.match(n)||t.match(r);if(l)return Vk(t.substr(l[0].length));let s=t.slice(22);throw s=s.slice(0,s.indexOf(",")),new Error("Unsupported source map encoding "+s)}getAnnotationURL(t){return t.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()}isMap(t){return typeof t!="object"?!1:typeof t.mappings=="string"||typeof t._mappings=="string"||Array.isArray(t.sections)}loadAnnotation(t){let n=t.match(/\/\*\s*# sourceMappingURL=/g);if(!n)return;let r=t.lastIndexOf(n.pop()),o=t.indexOf("*/",r);r>-1&&o>-1&&(this.annotation=this.getAnnotationURL(t.substring(r,o)))}loadFile(t,n,r){if(!r&&!this.unsafeMap){if(!/\.map$/i.test(t)||!n)return;let o=Uk(tS(vl(n)),tS(t));if(o===".."||o.startsWith(".."+Wk)||Gk(o))return}if(this.root=vl(t),Ik(t))return this.mapFile=t,Ok(t,"utf-8").toString().trim()}loadMap(t,n){if(n===!1)return!1;if(n){if(typeof n=="string")return n;if(typeof n=="function"){let r=n(t);if(r){let o=this.loadFile(r,t,!0);if(!o)throw new Error("Unable to load previous source map: "+r.toString());return o}}else{if(n instanceof Zx)return eS.fromSourceMap(n).toString();if(n instanceof eS)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=Bk(vl(t),r));let o=this.loadFile(r,t,!1);if(o)try{this.json=JSON.parse(o.replace(/^\)]}'[^\n]*\n/,""))}catch{return}return o}}}startWith(t,n){return t?t.substr(0,n.length)===n:!1}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}};nS.exports=$i;$i.default=$i});var qi=Ae((VV,sS)=>{"use strict";var{nanoid:$k}=Jx(),{isAbsolute:yf,resolve:xf}=Sl(),{SourceMapConsumer:qk,SourceMapGenerator:zk}=El(),{fileURLToPath:rS,pathToFileURL:Al}=pf(),oS=bl(),jk=hf(),gf=lf(),bf=Symbol("lineToIndexCache"),Kk=!!(qk&&zk),iS=!!(xf&&yf);function aS(e){if(e[bf])return e[bf];let t=e.css.split(`
|
|
21
|
-
`),n=new Array(t.length),r=0;for(let o=0,i=t.length;o<i;o++)n[o]=r,r+=t[o].length+1;return e[
|
|
22
|
-
`," "];return zi.split(e,t)},split(e,t,n){if(typeof e!="string")return[];let r=[],o="",i=!1,a=0,l=!1,s="",c=!1;for(let m of e)if(c?c=!1:m==="\\"?c=!0:l?m===s&&(l=!1):m==='"'||m==="'"?(l=!0,s=m):m==="("?a+=1:m===")"?a>0&&(a-=1):a===0&&t.includes(m)&&(i=!0),i){let f=o.trim();(n||f!=="")&&r.push(f),o="",i=!1}else o+=m;let d=o.trim();return(n||d!=="")&&r.push(d),r}};
|
|
18
|
+
`);return n=i[i.length-1],n=n.replace(/\S/g,""),!1}}),n}rawSemicolon(t){let n;return t.walk(r=>{if(r.nodes&&r.nodes.length&&r.last.type==="decl"&&(n=r.raws.semicolon,typeof n<"u"))return!1}),n}rawValue(t,n){let r=t[n],o=t.raws[n];return o&&o.value===r?o.raw:r}root(t){if(t.source&&t.source.input.hasBOM&&this.builder("\uFEFF",t,"start"),this.body(t),t.raws.after){let n=t.raws.after,r=t.parent&&t.parent.type==="document";this.builder(r?n:Dt(n))}}rule(t){this.block(t,this.rawValue(t,"selector")),t.raws.ownSemicolon&&this.builder(Dt(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)}};Px.exports=Pi;Pi.default=Pi});var Di=Ae((NV,Dx)=>{"use strict";var Tk=df();function ff(e,t){new Tk(t).stringify(e)}Dx.exports=ff;ff.default=ff});var Ii=Ae((FV,mf)=>{"use strict";mf.exports.isClean=Symbol("isClean");mf.exports.my=Symbol("my")});var Gi=Ae((PV,Ix)=>{"use strict";var Rk=yl(),Mk=df(),kk=Di(),{isClean:Oi,my:Lk}=Ii();function Nk(e,t){let n=new e.constructor,r=[[e,n,t]];for(;r.length>0;){let[o,i,a]=r.pop();for(let l in o){if(!Object.prototype.hasOwnProperty.call(o,l)||l==="proxyCache")continue;let s=o[l],c=typeof s;if(l==="parent"&&c==="object")a&&(i[l]=a);else if(l==="source")i[l]=s;else if(Array.isArray(s)){let d=[];i[l]=d;for(let m of s){let f=new m.constructor;d.push(f),r.push([m,f,i])}}else{if(c==="object"&&s!==null){let d=new s.constructor;r.push([s,d,void 0]),s=d}i[l]=s}}}return n}function Kt(e,t){if(t&&typeof t.offset<"u")return t.offset;let n=1,r=1,o=0;for(let i=0;i<e.length;i++){if(r===t.line&&n===t.column){o=i;break}e[i]===`
|
|
19
|
+
`?(n=1,r+=1):n+=1}return o}var Hi=class e{get proxyOf(){return this}constructor(t={}){this.raws={},this[Oi]=!1,this[Lk]=!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=Nk(this);for(let r in t)n[r]=t[r];return n}cloneAfter(t={}){let n=this.clone(t);return this.parent.insertAfter(this,n),n}cloneBefore(t={}){let n=this.clone(t);return this.parent.insertBefore(this,n),n}error(t,n={}){if(this.source){let{end:r,start:o}=this.rangeBy(n);return this.source.input.error(t,{column:o.column,line:o.line},{column:r.column,line:r.line},n)}return new Rk(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[Oi]=!0}markDirty(){if(this[Oi]){this[Oi]=!1;let t=this;for(;t=t.parent;)t[Oi]=!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:Kt(n,this.source.start)};if(t.index)r=this.positionInside(t.index);else if(t.word){let i=n.slice(Kt(n,this.source.start),Kt(n,this.source.end)).indexOf(t.word);i!==-1&&(r=this.positionInside(i))}return r}positionInside(t){let n=this.source.start.column,r=this.source.start.line,o="document"in this.source.input?this.source.input.document:this.source.input.css,i=Kt(o,this.source.start),a=i+t;for(let l=i;l<a;l++)o[l]===`
|
|
20
|
+
`?(n=1,r+=1):n+=1;return{column:n,line:r,offset:a}}prev(){if(!this.parent)return;let t=this.parent.index(this);return this.parent.nodes[t-1]}rangeBy(t={}){let n="document"in this.source.input?this.source.input.document:this.source.input.css,r={column:this.source.start.column,line:this.source.start.line,offset:Kt(n,this.source.start)},o=this.source.end?{column:this.source.end.column+1,line:this.source.end.line,offset:typeof this.source.end.offset=="number"?this.source.end.offset:Kt(n,this.source.end)+1}:{column:r.column+1,line:r.line,offset:r.offset+1};if(t.word){let a=n.slice(Kt(n,this.source.start),Kt(n,this.source.end)).indexOf(t.word);a!==-1&&(r=this.positionInside(a),o=this.positionInside(a+t.word.length))}else t.start?r={column:t.start.column,line:t.start.line,offset:Kt(n,t.start)}:typeof t.index=="number"&&(r=this.positionInside(t.index)),t.end?o={column:t.end.column,line:t.end.line,offset:Kt(n,t.end)}:typeof t.endIndex=="number"?o=this.positionInside(t.endIndex):typeof t.index=="number"&&(o=this.positionInside(t.index+1));return(o.line<r.line||o.line===r.line&&o.column<=r.column)&&(o={column:r.column+1,line:r.line,offset:r.offset+1}),{end:o,start:r}}raw(t,n){return new Mk().raw(this,t,n)}remove(){return this.parent&&this.parent.removeChild(this),this.parent=void 0,this}replaceWith(...t){if(this.parent){let n=this,r=!1;for(let o of t)o===this?r=!0:r?(this.parent.insertAfter(n,o),n=o):this.parent.insertBefore(n,o);r||this.remove()}return this}root(){let t=this;for(;t.parent&&t.parent.type!=="document";)t=t.parent;return t}toJSON(t,n){let r=n==null;n=n||new Map;let o=[],i=[[this,o,0]];for(let l=0;l<i.length;l++){let[s,c,d]=i[l],m={};c[d]=m;for(let f in s){if(!Object.prototype.hasOwnProperty.call(s,f)||f==="parent"||f==="proxyCache")continue;let p=s[f];if(Array.isArray(p)){let b=[];m[f]=b;for(let y=0;y<p.length;y++){let x=p[y];typeof x=="object"&&x.toJSON?x.toJSON===e.prototype.toJSON?i.push([x,b,y]):b[y]=x.toJSON(null,n):b[y]=x}}else if(typeof p=="object"&&p.toJSON)p.toJSON===e.prototype.toJSON?i.push([p,m,f]):m[f]=p.toJSON(null,n);else if(f==="source"){if(p==null)continue;let b=n.get(p.input);b==null&&(b=n.size,n.set(p.input,b)),m[f]={end:p.end,inputId:b,start:p.start}}else m[f]=p}}let a=o[0];return r&&(a.inputs=[...n.keys()].map(l=>l.toJSON())),a}toProxy(){return this.proxyCache||(this.proxyCache=new Proxy(this,this.getProxyProcessor())),this.proxyCache}toString(t=kk){t.stringify&&(t=t.stringify);let n="";return t(this,r=>{n+=r}),n}warn(t,n,r={}){let o={node:this};for(let i in r)o[i]=r[i];return t.warn(n,o)}};Ix.exports=Hi;Hi.default=Hi});var Ui=Ae((DV,Ox)=>{"use strict";var Fk=Gi(),Bi=class extends Fk{constructor(t){super(t),this.type="comment"}};Ox.exports=Bi;Bi.default=Bi});var Vi=Ae((IV,Hx)=>{"use strict";var Pk=Gi(),Wi=class extends Pk{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"}};Hx.exports=Wi;Wi.default=Wi});var fn=Ae((OV,zx)=>{"use strict";var Bx=Ui(),Ux=Vi(),Gx=Gi(),{isClean:Wx,my:Vx}=Ii(),pf,$x,qx,hf;function Dk(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 Ik(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[Wx]=!1,n.proxyOf.nodes)for(let r of n.proxyOf.nodes)t.push(r)}}var Yt=class e extends Gx{get first(){if(this.proxyOf.nodes)return this.proxyOf.nodes[0]}get last(){if(this.proxyOf.nodes)return this.proxyOf.nodes[this.proxyOf.nodes.length-1]}append(...t){for(let n of t){let r=this.normalize(n,this.last);for(let o of r)this.proxyOf.nodes.push(o)}return this.markDirty(),this}cleanRaws(t){let n=[this];for(;n.length>0;){let r=n.pop();if(r!==this&&r.cleanRaws!==e.prototype.cleanRaws){r.cleanRaws(t);continue}if(Gx.prototype.cleanRaws.call(r,t),r.nodes)for(let o of r.nodes)n.push(o)}}each(t){if(!this.proxyOf.nodes)return;let n=this.getIterator(),r,o;for(;this.indexes[n]<this.proxyOf.nodes.length&&(r=this.indexes[n],o=t(this.proxyOf.nodes[r],r),o!==!1);)this.indexes[n]+=1;return delete this.indexes[n],o}every(t){return this.nodes.every(t)}getIterator(){this.lastEach||(this.lastEach=0),this.indexes||(this.indexes={}),this.lastEach+=1;let t=this.lastEach;return this.indexes[t]=0,t}getProxyProcessor(){return{get(t,n){return n==="proxyOf"?t:t[n]?n==="each"||typeof n=="string"&&n.startsWith("walk")?(...r)=>t[n](...r.map(o=>typeof o=="function"?(i,a)=>o(i.toProxy(),a):o)):n==="every"||n==="some"?r=>t[n]((o,...i)=>r(o.toProxy(),...i)):n==="root"?()=>t.root().toProxy():n==="nodes"?t.nodes.map(r=>r.toProxy()):n==="first"||n==="last"?t[n].toProxy():t[n]:t[n]},set(t,n,r){return t[n]===r||(t[n]=r,(n==="name"||n==="params"||n==="selector")&&t.markDirty()),!0}}}index(t){return typeof t=="number"?t:(t.proxyOf&&(t=t.proxyOf),this.proxyOf.nodes.indexOf(t))}insertAfter(t,n){let r=this.index(t),o=this.normalize(n,this.proxyOf.nodes[r]).reverse();r=this.index(t);for(let a of o)this.proxyOf.nodes.splice(r+1,0,a);let i;for(let a in this.indexes)i=this.indexes[a],r<i&&(this.indexes[a]=i+o.length);return this.markDirty(),this}insertBefore(t,n){let r=this.index(t),o=r===0?"prepend":!1,i=this.normalize(n,this.proxyOf.nodes[r],o).reverse();r=this.index(t);for(let l of i)this.proxyOf.nodes.splice(r,0,l);let a;for(let l in this.indexes)a=this.indexes[l],r<=a&&(this.indexes[l]=a+i.length);return this.markDirty(),this}normalize(t,n){if(typeof t=="string")t=Dk($x(t).nodes);else if(typeof t>"u")t=[];else if(Array.isArray(t)){t=t.slice(0);for(let o of t)o.parent&&o.parent.removeChild(o,"ignore")}else if(t.type==="root"&&this.type!=="document"){t=t.nodes.slice(0);for(let o of t)o.parent&&o.parent.removeChild(o,"ignore")}else if(t.type)t=[t];else if(t.prop){if(typeof t.value>"u")throw new Error("Value field is missed in node creation");typeof t.value!="string"&&(t.value=String(t.value)),t=[new Ux(t)]}else if(t.selector||t.selectors)t=[new hf(t)];else if(t.name)t=[new pf(t)];else if(t.text)t=[new Bx(t)];else throw new Error("Unknown node type in node creation");return t.map(o=>(o[Vx]||e.rebuild(o),o=o.proxyOf,o.parent&&o.parent.removeChild(o),o[Wx]&&Ik(o),o.raws||(o.raws={}),typeof o.raws.before>"u"&&n&&typeof n.raws.before<"u"&&(o.raws.before=n.raws.before.replace(/\S/g,"")),o.parent=this.proxyOf,o))}prepend(...t){t=t.reverse();for(let n of t){let r=this.normalize(n,this.first,"prepend").reverse();for(let o of r)this.proxyOf.nodes.unshift(o);for(let o in this.indexes)this.indexes[o]=this.indexes[o]+r.length}return this.markDirty(),this}push(t){return t.parent=this,this.proxyOf.nodes.push(t),this}removeAll(){for(let t of this.proxyOf.nodes)t.parent=void 0;return this.proxyOf.nodes=[],this.markDirty(),this}removeChild(t){t=this.index(t),this.proxyOf.nodes[t].parent=void 0,this.proxyOf.nodes.splice(t,1);let n;for(let r in this.indexes)n=this.indexes[r],n>=t&&(this.indexes[r]=n-1);return this.markDirty(),this}replaceValues(t,n,r){return r||(r=n,n={}),this.walkDecls(o=>{n.props&&!n.props.includes(o.prop)||n.fast&&!o.value.includes(n.fast)||(o.value=o.value.replace(t,r))}),this.markDirty(),this}some(t){return this.nodes.some(t)}walk(t){if(!this.proxyOf.nodes)return;let n=[{iterator:this.getIterator(),node:this.proxyOf}];for(;n.length>0;){let{iterator:r,node:o}=n[n.length-1],i=o.indexes[r];if(i>=o.proxyOf.nodes.length){delete o.indexes[r],n.pop();let s=n[n.length-1];s&&(s.node.indexes[s.iterator]+=1);continue}let a=o.proxyOf.nodes[i],l;try{l=t(a,i)}catch(s){throw a.addToError(s)}if(l===!1){for(let s of n)delete s.node.indexes[s.iterator];return!1}a.walk&&a.proxyOf.nodes?n.push({iterator:a.getIterator(),node:a}):o.indexes[r]+=1}}walkAtRules(t,n){return n?t instanceof RegExp?this.walk((r,o)=>{if(r.type==="atrule"&&t.test(r.name))return n(r,o)}):this.walk((r,o)=>{if(r.type==="atrule"&&r.name===t)return n(r,o)}):(n=t,this.walk((r,o)=>{if(r.type==="atrule")return n(r,o)}))}walkComments(t){return this.walk((n,r)=>{if(n.type==="comment")return t(n,r)})}walkDecls(t,n){return n?t instanceof RegExp?this.walk((r,o)=>{if(r.type==="decl"&&t.test(r.prop))return n(r,o)}):this.walk((r,o)=>{if(r.type==="decl"&&r.prop===t)return n(r,o)}):(n=t,this.walk((r,o)=>{if(r.type==="decl")return n(r,o)}))}walkRules(t,n){return n?t instanceof RegExp?this.walk((r,o)=>{if(r.type==="rule"&&t.test(r.selector))return n(r,o)}):this.walk((r,o)=>{if(r.type==="rule"&&r.selector===t)return n(r,o)}):(n=t,this.walk((r,o)=>{if(r.type==="rule")return n(r,o)}))}};Yt.registerParse=e=>{$x=e};Yt.registerRule=e=>{hf=e};Yt.registerAtRule=e=>{pf=e};Yt.registerRoot=e=>{qx=e};zx.exports=Yt;Yt.default=Yt;Yt.rebuild=e=>{let t=[e];for(;t.length>0;){let n=t.pop();if(n.type==="atrule"?Object.setPrototypeOf(n,pf.prototype):n.type==="rule"?Object.setPrototypeOf(n,hf.prototype):n.type==="decl"?Object.setPrototypeOf(n,Ux.prototype):n.type==="comment"?Object.setPrototypeOf(n,Bx.prototype):n.type==="root"&&Object.setPrototypeOf(n,qx.prototype),n[Vx]=!0,n.nodes)for(let r of n.nodes)t.push(r)}}});var xl=Ae((HV,Kx)=>{"use strict";var jx=fn(),co=class extends jx{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)}};Kx.exports=co;co.default=co;jx.registerAtRule(co)});var Sl=Ae((GV,Jx)=>{"use strict";var Ok=fn(),Yx,Xx,Ar=class extends Ok{constructor(t){super({type:"document",...t}),this.nodes||(this.nodes=[])}toResult(t={}){return new Yx(new Xx,this,t).stringify()}};Ar.registerLazyResult=e=>{Yx=e};Ar.registerProcessor=e=>{Xx=e};Jx.exports=Ar;Ar.default=Ar});var Zx=Ae((BV,Qx)=>{var Hk="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict",Gk=(e,t=21)=>(n=t)=>{let r="",o=n|0;for(;o-- >0;)r+=e[Math.random()*e.length|0];return r},Bk=(e=21)=>{let t="",n=e|0;for(;n-- >0;)t+=Hk[Math.random()*64|0];return t};Qx.exports={nanoid:Bk,customAlphabet:Gk}});var El=Ae(()=>{});var vl=Ae(()=>{});var gf=Ae(()=>{});var eS=Ae(()=>{});var bf=Ae((YV,oS)=>{"use strict";var{existsSync:Uk,readFileSync:Wk,realpathSync:Vk}=eS(),{dirname:Al,isAbsolute:$k,join:qk,relative:zk,sep:jk}=El(),{SourceMapConsumer:tS,SourceMapGenerator:nS}=vl();function rS(e){try{return Vk(e)}catch{return e}}function Kk(e){return Buffer?Buffer.from(e,"base64").toString():window.atob(e)}var $i=class{constructor(t,n){if(n.map===!1)return;n.unsafeMap&&(this.unsafeMap=!0),this.loadAnnotation(t),this.inline=this.startWith(this.annotation,"data:");let r=n.map?n.map.prev:void 0,o=this.loadMap(n.from,r);!this.mapFile&&n.from&&(this.mapFile=n.from),this.mapFile&&(this.root=Al(this.mapFile)),o&&(this.text=o)}consumer(){return this.consumerCache||(this.consumerCache=new tS(this.json||this.text)),this.consumerCache}decodeInline(t){let n=/^data:application\/json;charset=utf-?8;base64,/,r=/^data:application\/json;base64,/,o=/^data:application\/json;charset=utf-?8,/,i=/^data:application\/json,/,a=t.match(o)||t.match(i);if(a)return decodeURIComponent(t.substr(a[0].length));let l=t.match(n)||t.match(r);if(l)return Kk(t.substr(l[0].length));let s=t.slice(22);throw s=s.slice(0,s.indexOf(",")),new Error("Unsupported source map encoding "+s)}getAnnotationURL(t){return t.replace(/^\/\*\s*# sourceMappingURL=/,"").trim()}isMap(t){return typeof t!="object"?!1:typeof t.mappings=="string"||typeof t._mappings=="string"||Array.isArray(t.sections)}loadAnnotation(t){let n=t.match(/\/\*\s*# sourceMappingURL=/g);if(!n)return;let r=t.lastIndexOf(n.pop()),o=t.indexOf("*/",r);r>-1&&o>-1&&(this.annotation=this.getAnnotationURL(t.substring(r,o)))}loadFile(t,n,r){if(!r&&!this.unsafeMap){if(!/\.map$/i.test(t)||!n)return;let o=zk(rS(Al(n)),rS(t));if(o===".."||o.startsWith(".."+jk)||$k(o))return}if(this.root=Al(t),Uk(t))return this.mapFile=t,Wk(t,"utf-8").toString().trim()}loadMap(t,n){if(n===!1)return!1;if(n){if(typeof n=="string")return n;if(typeof n=="function"){let r=n(t);if(r){let o=this.loadFile(r,t,!0);if(!o)throw new Error("Unable to load previous source map: "+r.toString());return o}}else{if(n instanceof tS)return nS.fromSourceMap(n).toString();if(n instanceof nS)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=qk(Al(t),r));let o=this.loadFile(r,t,!1);if(o)try{this.json=JSON.parse(o.replace(/^\)]}'[^\n]*\n/,""))}catch{return}return o}}}startWith(t,n){return t?t.substr(0,n.length)===n:!1}withContent(){return!!(this.consumer().sourcesContent&&this.consumer().sourcesContent.length>0)}};oS.exports=$i;$i.default=$i});var qi=Ae((XV,uS)=>{"use strict";var{nanoid:Yk}=Zx(),{isAbsolute:Sf,resolve:Ef}=El(),{SourceMapConsumer:Xk,SourceMapGenerator:Jk}=vl(),{fileURLToPath:iS,pathToFileURL:wl}=gf(),aS=yl(),Qk=bf(),yf=cf(),xf=Symbol("lineToIndexCache"),Zk=!!(Xk&&Jk),sS=!!(Ef&&Sf);function lS(e){if(e[xf])return e[xf];let t=e.css.split(`
|
|
21
|
+
`),n=new Array(t.length),r=0;for(let o=0,i=t.length;o<i;o++)n[o]=r,r+=t[o].length+1;return e[xf]=n,n}var fo=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&&(!sS||/^\w+:\/\//.test(n.from)||Sf(n.from)?this.file=n.from:this.file=Ef(n.from)),sS&&Zk){let r=new Qk(this.css,n);if(r.text){this.map=r;let o=r.consumer().file;!this.file&&o&&(this.file=this.mapResolve(o))}}this.file||(this.id="<input css "+Yk(6)+">"),this.map&&(this.map.file=this.from)}error(t,n,r,o={}){let i,a,l,s,c;if(n&&typeof n=="object"){let m=n,f=r;if(typeof m.offset=="number"){s=m.offset;let p=this.fromOffset(s);n=p.line,r=p.col}else n=m.line,r=m.column,s=this.fromLineAndColumn(n,r);if(typeof f.offset=="number"){l=f.offset;let p=this.fromOffset(l);a=p.line,i=p.col}else a=f.line,i=f.column,l=this.fromLineAndColumn(f.line,f.column)}else if(r)s=this.fromLineAndColumn(n,r);else{s=n;let m=this.fromOffset(s);n=m.line,r=m.col}let d=this.origin(n,r,a,i);return d?c=new aS(t,d.endLine===void 0?d.line:{column:d.column,line:d.line},d.endLine===void 0?d.column:{column:d.endColumn,line:d.endLine},d.source,d.file,o.plugin):c=new aS(t,a===void 0?n:{column:r,line:n},a===void 0?r:{column:i,line:a},this.css,this.file,o.plugin),c.input={column:r,endColumn:i,endLine:a,endOffset:l,line:n,offset:s,source:this.css},this.file&&(wl&&(c.input.url=wl(this.file).toString()),c.input.file=this.file),c}fromLineAndColumn(t,n){return lS(this)[t-1]+n-1}fromOffset(t){let n=lS(this),r=n[n.length-1],o=0;if(t>=r)o=n.length-1;else{let i=n.length-2,a;for(;o<i;)if(a=o+(i-o>>1),t<n[a])i=a-1;else if(t>=n[a+1])o=a+1;else{o=a;break}}return{col:t-n[o]+1,line:o+1}}mapResolve(t){return/^\w+:\/\//.test(t)?t:Ef(this.map.consumer().sourceRoot||this.map.root||".",t)}origin(t,n,r,o){if(!this.map)return!1;let i=this.map.consumer(),a=i.originalPositionFor({column:n-1,line:t});if(!a.source)return!1;let l;if(typeof r=="number"){let m=i.originalPositionFor({column:o-1,line:r});m.source&&(l=m)}let s;Sf(a.source)?s=wl(a.source):s=new URL(a.source,this.map.consumer().sourceRoot||wl(this.map.mapFile));let c={column:a.column+1,endColumn:l&&l.column+1,endLine:l&&l.line,line:a.line,url:s.toString()};if(s.protocol==="file:")if(iS)c.file=iS(s);else throw new Error("file: protocol is not available in this PostCSS build");let d=i.sourceContentFor(a.source);return d&&(c.source=d),c}toJSON(){let t={};for(let n of["hasBOM","css","file","id"])this[n]!=null&&(t[n]=this[n]);return this.map&&(t.map={...this.map},t.map.consumerCache&&(t.map.consumerCache=void 0)),t}};uS.exports=fo;fo.default=fo;yf&&yf.registerInput&&yf.registerInput(fo)});var mo=Ae((JV,mS)=>{"use strict";var cS=fn(),dS,fS,qn=class extends cS{constructor(t){super(t),this.type="root",this.nodes||(this.nodes=[])}normalize(t,n,r){let o=new Set;for(let a of Array.isArray(t)?t:[t])a&&typeof a=="object"&&!a.parent&&a.raws&&typeof a.raws.before<"u"&&o.add(a.raws);let i=super.normalize(t);if(n){if(r==="prepend")this.nodes.length>1?n.raws.before=this.nodes[1].raws.before:delete n.raws.before;else if(this.first!==n)for(let a of i)o.has(a.raws)||(a.raws.before=n.raws.before)}return i}removeChild(t,n){let r=this.index(t);return!n&&r===0&&this.nodes.length>1&&(this.nodes[1].raws.before=this.nodes[r].raws.before),super.removeChild(t)}toResult(t={}){return new dS(new fS,this,t).stringify()}};qn.registerLazyResult=e=>{dS=e};qn.registerProcessor=e=>{fS=e};mS.exports=qn;qn.default=qn;cS.registerRoot(qn)});var vf=Ae((QV,pS)=>{"use strict";var zi={comma(e){return zi.split(e,[","],!0)},space(e){let t=[" ",`
|
|
22
|
+
`," "];return zi.split(e,t)},split(e,t,n){if(typeof e!="string")return[];let r=[],o="",i=!1,a=0,l=!1,s="",c=!1;for(let m of e)if(c?c=!1:m==="\\"?c=!0:l?m===s&&(l=!1):m==='"'||m==="'"?(l=!0,s=m):m==="("?a+=1:m===")"?a>0&&(a-=1):a===0&&t.includes(m)&&(i=!0),i){let f=o.trim();(n||f!=="")&&r.push(f),o="",i=!1}else o+=m;let d=o.trim();return(n||d!=="")&&r.push(d),r}};pS.exports=zi;zi.default=zi});var _l=Ae((ZV,gS)=>{"use strict";var hS=fn(),eL=vf(),po=class extends hS{get selectors(){return eL.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=[])}};gS.exports=po;po.default=po;hS.registerRule(po)});var xS=Ae((e5,yS)=>{"use strict";var tL=xl(),nL=Ui(),rL=Vi(),oL=qi(),iL=bf(),aL=mo(),sL=_l();function bS(e,t){return e.inputs?e.inputs.map(n=>{let r={...n,__proto__:oL.prototype};return r.map&&(r.map={...r.map,__proto__:iL.prototype}),r}):t}function lL(e,t,n){let r={...e};if(delete r.inputs,delete r.nodes,r.source){let{inputId:i,...a}=r.source;r.source=a,i!=null&&(r.source.input=t[i])}let o;if(r.type==="root")o=new aL(r);else if(r.type==="decl")o=new rL(r);else if(r.type==="rule")o=new sL(r);else if(r.type==="comment")o=new nL(r);else if(r.type==="atrule")o=new tL(r);else throw new Error("Unknown node type: "+e.type);if(n){o.nodes=n;for(let i of n)i.parent=o}return o}function Cl(e,t){if(Array.isArray(e))return e.map(o=>Cl(o));let n,r=[{childIndex:0,children:[],inputs:bS(e,t),json:e}];for(;r.length>0;){let o=r[r.length-1],i=o.json.nodes;if(i&&o.childIndex<i.length){let l=i[o.childIndex];o.childIndex+=1,r.push({childIndex:0,children:[],inputs:bS(l,o.inputs),json:l});continue}r.pop();let a=lL(o.json,o.inputs,i?o.children:void 0);r.length>0?r[r.length-1].children.push(a):n=a}return n}yS.exports=Cl;Cl.default=Cl});var wf=Ae((t5,_S)=>{"use strict";var{dirname:Tl,relative:ES,resolve:vS,sep:AS}=El(),{SourceMapConsumer:wS,SourceMapGenerator:Rl}=vl(),{pathToFileURL:SS}=gf(),uL=qi(),cL=!!(wS&&Rl),dL=!!(Tl&&vS&&ES&&AS),Af=class{constructor(t,n,r,o){this.stringify=t,this.mapOpts=r.map||{},this.root=n,this.opts=r,this.css=o,this.originalCSS=o,this.usesFileUrls=!this.mapOpts.from&&this.mapOpts.absolute,this.memoizedFileURLs=new Map,this.memoizedPaths=new Map,this.memoizedURLs=new Map}addAnnotation(){let t;this.isInline()?t="data:application/json;base64,"+this.toBase64(this.map.toString()):typeof this.mapOpts.annotation=="string"?t=this.mapOpts.annotation:typeof this.mapOpts.annotation=="function"?t=this.mapOpts.annotation(this.opts.to,this.root):t=this.outputFile()+".map";let n=`
|
|
23
23
|
`;this.css.includes(`\r
|
|
24
24
|
`)&&(n=`\r
|
|
25
|
-
`),this.css+=n+"/*# sourceMappingURL="+t+" */"}applyPrevMaps(){for(let t of this.previous()){let n=this.toUrl(this.path(t.file)),r=t.root||
|
|
26
|
-
`;)n--;this.css=this.css.slice(0,n)+this.css.slice(r+2)}}}}generate(){if(this.clearAnnotation(),
|
|
27
|
-
`),n=l.length-i):n+=l.length,s&&c!=="start"){let d=s.parent||{raws:{}};(!(s.type==="decl"||s.type==="atrule"&&!s.nodes)||s!==d.last||d.raws.semicolon)&&(s.source&&s.source.end?(o.source=this.sourcePath(s),o.original.line=s.source.end.line,o.original.column=s.source.end.column-1,o.generated.line=t,o.generated.column=n-2,this.map.addMapping(o)):(o.source=r,o.original.line=1,o.original.column=0,o.generated.line=t,o.generated.column=n-1,this.map.addMapping(o)))}})}isAnnotation(){return this.isInline()?!0:typeof this.mapOpts.annotation<"u"?this.mapOpts.annotation:this.previous().length?this.previous().some(t=>t.annotation):!0}isInline(){if(typeof this.mapOpts.inline<"u")return this.mapOpts.inline;let t=this.mapOpts.annotation;return typeof t<"u"&&t!==!0?!1:this.previous().length?this.previous().some(n=>n.inline):!0}isMap(){return typeof this.opts.map<"u"?!!this.opts.map:this.previous().length>0}isSourcesContent(){return typeof this.mapOpts.sourcesContent<"u"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(t=>t.withContent()):!0}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}path(t){if(this.mapOpts.absolute||t.charCodeAt(0)===60||/^\w+:\/\//.test(t))return t;let n=this.memoizedPaths.get(t);if(n)return n;let r=this.opts.to?Cl(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(r=Cl(SS(r,this.mapOpts.annotation)));let o=xS(r,t);return this.memoizedPaths.set(t,o),o}previous(){if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk(t=>{if(t.source&&t.source.input.map){let n=t.source.input.map;this.previousMaps.includes(n)||this.previousMaps.push(n)}});else{let t=new oL(this.originalCSS,this.opts);t.map&&this.previousMaps.push(t.map)}return this.previousMaps}setSourcesContent(){let t={};if(this.root)this.root.walk(n=>{if(n.source){let r=n.source.input.from;if(r&&!t[r]){t[r]=!0;let o=this.usesFileUrls?this.toFileUrl(r):this.toUrl(this.path(r));this.map.setSourceContent(o,n.source.input.css)}}});else if(this.css){let n=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(n,this.css)}}sourcePath(t){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(t.source.input.from):this.toUrl(this.path(t.source.input.from))}toBase64(t){return Buffer?Buffer.from(t).toString("base64"):window.btoa(unescape(encodeURIComponent(t)))}toFileUrl(t){let n=this.memoizedFileURLs.get(t);if(n)return n;if(yS){let r=yS(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;ES==="\\"&&(t=t.replace(/\\/g,"/"));let r=encodeURI(t).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(t,r),r}};AS.exports=Ef});var CS=Ae((YV,_S)=>{"use strict";var Rl=/[\t\n\f\r "#'()/;[\\\]{}]/g,Ml=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,sL=/.[\r\n"'(/\\]/,wS=/[\da-f]/i;_S.exports=function(t,n={}){let r=t.css.valueOf(),o=n.ignoreErrors,i,a,l,s,c,d,m,f,p,b,y=r.length,x=0,v=[],E=[],C=-1;function H(){return x}function V(T){throw t.error("Unclosed "+T,x)}function M(){return E.length===0&&x>=y}function R(T){if(E.length)return E.pop();if(x>=y)return;let F=T?T.ignoreUnclosed:!1;switch(i=r.charCodeAt(x),i){case 10:case 32:case 9:case 13:case 12:{s=x;do s+=1,i=r.charCodeAt(s);while(i===32||i===10||i===9||i===13||i===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 W=String.fromCharCode(i);d=[W,W,x];break}case 40:{if(b=v.length?v.pop()[1]:"",p=r.charCodeAt(x+1),b==="url"&&p!==39&&p!==34&&p!==32&&p!==10&&p!==9&&p!==12&&p!==13){s=x;do{if(m=!1,s=r.indexOf(")",s+1),s===-1)if(o||F){s=x;break}else V("bracket");for(f=s;r.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);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||sL.test(a)?(C=s===-1?y:s,d=["(","(",x]):(d=["brackets",a,x,s],x=s));break}case 39:case 34:{c=i===39?"'":'"',s=x;do{if(m=!1,s=r.indexOf(c,s+1),s===-1)if(o||F){s=x+1;break}else V("string");for(f=s;r.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);d=["string",r.slice(x,s+1),x,s],x=s;break}case 64:{Rl.lastIndex=x+1,Rl.test(r),Rl.lastIndex===0?s=r.length-1:s=Rl.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(i=r.charCodeAt(s+1),l&&i!==47&&i!==32&&i!==10&&i!==9&&i!==13&&i!==12&&(s+=1,wS.test(r.charAt(s)))){for(;wS.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:{i===47&&r.charCodeAt(x+1)===42?(s=r.indexOf("*/",x+2)+1,s===0&&(o||F?s=r.length:V("comment")),d=["comment",r.slice(x,s+1),x,s],x=s):(Ml.lastIndex=x+1,Ml.test(r),Ml.lastIndex===0?s=r.length-1:s=Ml.lastIndex-2,d=["word",r.slice(x,s+1),x,s],v.push(d),x=s);break}}return x++,d}function U(T){E.push(T)}return{back:U,endOfFile:M,nextToken:R,position:H}}});var kS=Ae((XV,MS)=>{"use strict";var lL=yl(),uL=Ui(),cL=Vi(),dL=mo(),TS=wl(),fL=CS(),RS={empty:!0,space:!0};function mL(e){for(let t=e.length-1;t>=0;t--){let n=e[t],r=n[3]||n[2];if(r)return r}}function Af(e,t,n){let r="";for(let o=t;o<n;o++)r+=e[o][1];return r}var wf=class{constructor(t){this.input=t,this.root=new dL,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 lL;n.name=t[1].slice(1),n.name===""&&this.unnamedAtrule(n,t),this.init(n,t[2]);let r,o,i,a=!1,l=!1,s=[],c=[];for(;!this.tokenizer.endOfFile();){if(t=this.tokenizer.nextToken(),r=t[0],r==="("||r==="["?c.push(r==="("?")":"]"):r==="{"&&c.length>0?c.push("}"):r===c[c.length-1]&&c.pop(),c.length===0)if(r===";"){n.source.end=this.getPosition(t[2]),n.source.end.offset++,this.semicolon=!0;break}else if(r==="{"){l=!0;break}else if(r==="}"){if(s.length>0){for(i=s.length-1,o=s[i];o&&o[0]==="space";)o=s[--i];o&&(n.source.end=this.getPosition(o[3]||o[2]),n.source.end.offset++)}this.end(t);break}else s.push(t);else s.push(t);if(this.tokenizer.endOfFile()){a=!0;break}}n.raws.between=this.spacesAndCommentsFromEnd(s),s.length?(n.raws.afterName=this.spacesAndCommentsFromStart(s),this.raw(n,"params",s),a&&(t=s[s.length-1],n.source.end=this.getPosition(t[3]||t[2]),n.source.end.offset++,this.spaces=n.raws.between,n.raws.between="")):(n.raws.afterName="",n.params=""),l&&(n.nodes=[],this.current=n)}checkMissedSemicolon(t){let n=this.colon(t);if(n===!1)return;let r=0,o;for(let i=n-1;i>=0&&(o=t[i],!(o[0]!=="space"&&(r+=1,r===2)));i--);throw this.input.error("Missed semicolon",o[0]==="word"?o[3]+1:o[2])}colon(t){let n=0,r,o,i;for(let[a,l]of t.entries()){if(o=l,i=o[0],i==="("&&(n+=1),i===")"&&(n-=1),n===0&&i===":")if(!r)this.doubleColon(o);else{if(r[0]==="word"&&r[1]==="progid")continue;return a}r=o}return!1}comment(t){let n=new uL;this.init(n,t[2]),n.source.end=this.getPosition(t[3]||t[2]),n.source.end.offset++;let r=t[1].slice(2,-2);if(!r.trim())n.text="",n.raws.left=r,n.raws.right="";else{let o=r.match(/^(\s*)([^]*\S)(\s*)$/);n.text=o[2],n.raws.left=o[1],n.raws.right=o[3]}}createTokenizer(){this.tokenizer=fL(this.input)}decl(t,n){let r=new cL;this.init(r,t[0][2]);let o=t[t.length-1];o[0]===";"&&(this.semicolon=!0,t.pop()),r.source.end=this.getPosition(o[3]||o[2]||mL(t)),r.source.end.offset++;let i=0;for(;t[i][0]!=="word";)i===t.length-1&&this.unknownWord([t[i]]),i++;r.raws.before+=Af(t,0,i),r.source.start=this.getPosition(t[i][2]);let a=i;for(;i<t.length;){let f=t[i][0];if(f===":"||f==="space"||f==="comment")break;i++}r.prop=Af(t,a,i);let l=i,s;for(;i<t.length&&(s=t[i],i++,s[0]!==":");)s[0]==="word"&&/\w/.test(s[1])&&this.unknownWord([s]);r.raws.between=Af(t,l,i),(r.prop[0]==="_"||r.prop[0]==="*")&&(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));let c=i;for(;i<t.length;){let f=t[i][0];if(f!=="space"&&f!=="comment")break;i++}let d=t.slice(c,i);t=t.slice(i),this.precheckMissedSemicolon(t);for(let f=t.length-1;f>=0;f--){if(s=t[f],s[1].toLowerCase()==="!important"){r.important=!0;let p=this.stringFrom(t,f);p=this.spacesFromEnd(t)+p,p!==" !important"&&(r.raws.important=p);break}else if(s[1].toLowerCase()==="important"){let p=t.slice(0),b="";for(let y=f;y>0;y--){let x=p[y][0];if(b.trim().startsWith("!")&&x!=="space")break;b=p.pop()[1]+b}b.trim().startsWith("!")&&(r.important=!0,r.raws.important=b,t=p)}if(s[0]!=="space"&&s[0]!=="comment")break}t.some(f=>f[0]!=="space"&&f[0]!=="comment")&&(r.raws.between+=d.map(f=>f[1]).join(""),d=[]),this.raw(r,"value",d.concat(t),n),r.value.includes(":")&&!n&&this.checkMissedSemicolon(t)}doubleColon(t){throw this.input.error("Double colon",{offset:t[2]},{offset:t[2]+t[1].length})}emptyRule(t){let n=new TS;this.init(n,t[2]),n.selector="",n.raws.between="",this.current=n}end(t){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(t[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(t)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())}freeSemicolon(t){if(this.spaces+=t[1],this.current.nodes){let n=this.current.nodes[this.current.nodes.length-1];n&&n.type==="rule"&&!n.raws.ownSemicolon&&(n.raws.ownSemicolon=this.spaces,this.spaces="",n.source.end=this.getPosition(t[2]),n.source.end.offset++)}}getPosition(t){let n=this.input.fromOffset(t);return{column:n.col,line:n.line,offset:t}}init(t,n){this.current.push(t),t.source={input:this.input,start:this.getPosition(n)},t.raws.before=this.spaces,this.spaces="",t.type!=="comment"&&(this.semicolon=!1)}other(t){let n=!1,r=null,o=!1,i=null,a=[],l=t[1].startsWith("--"),s=[],c=t;for(;c;){if(r=c[0],s.push(c),r==="("||r==="[")i||(i=c),a.push(r==="("?")":"]");else if(l&&o&&r==="{")i||(i=c),a.push("}");else if(a.length===0)if(r===";")if(o){this.decl(s,l);return}else break;else if(r==="{"){this.rule(s);return}else if(r==="}"){this.tokenizer.back(s.pop()),n=!0;break}else r===":"&&(o=!0);else r===a[a.length-1]&&(a.pop(),a.length===0&&(i=null));c=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(n=!0),a.length>0&&this.unclosedBracket(i),n&&o){if(!l)for(;s.length&&(c=s[s.length-1][0],!(c!=="space"&&c!=="comment"));)this.tokenizer.back(s.pop());this.decl(s,l)}else this.unknownWord(s)}parse(){let t;for(;!this.tokenizer.endOfFile();)switch(t=this.tokenizer.nextToken(),t[0]){case"space":this.spaces+=t[1];break;case";":this.freeSemicolon(t);break;case"}":this.end(t);break;case"comment":this.comment(t);break;case"at-word":this.atrule(t);break;case"{":this.emptyRule(t);break;default:this.other(t);break}this.endFile()}precheckMissedSemicolon(){}raw(t,n,r,o){let i,a,l=r.length,s="",c=!0,d,m;for(let f=0;f<l;f+=1)i=r[f],a=i[0],a==="space"&&f===l-1&&!o?c=!1:a==="comment"?(m=r[f-1]?r[f-1][0]:"empty",d=r[f+1]?r[f+1][0]:"empty",!RS[m]&&!RS[d]?s.slice(-1)===","?c=!1:s+=i[1]:c=!1):s+=i[1];if(!c){let f=r.reduce((p,b)=>p+b[1],"");t.raws[n]={raw:f,value:s}}t[n]=s}rule(t){t.pop();let n=new TS;this.init(n,t[0][2]),n.raws.between=this.spacesAndCommentsFromEnd(t),this.raw(n,"selector",t),this.current=n}spacesAndCommentsFromEnd(t){let n,r="";for(;t.length&&(n=t[t.length-1][0],!(n!=="space"&&n!=="comment"));)r=t.pop()[1]+r;return r}spacesAndCommentsFromStart(t){let n,r="";for(;t.length&&(n=t[0][0],!(n!=="space"&&n!=="comment"));)r+=t.shift()[1];return r}spacesFromEnd(t){let n,r="";for(;t.length&&(n=t[t.length-1][0],n==="space");)r=t.pop()[1]+r;return r}stringFrom(t,n){let r="";for(let o=n;o<t.length;o++)r+=t[o][1];return t.splice(n,t.length-n),r}unclosedBlock(){let t=this.current.source.start;throw this.input.error("Unclosed block",t.line,t.column)}unclosedBracket(t){throw this.input.error("Unclosed bracket",{offset:t[2]},{offset:t[2]+1})}unexpectedClose(t){throw this.input.error("Unexpected }",{offset:t[2]},{offset:t[2]+1})}unknownWord(t){throw this.input.error("Unknown word "+t[0][1],{offset:t[0][2]},{offset:t[0][2]+t[0][1].length})}unnamedAtrule(t,n){throw this.input.error("At-rule without name",{offset:n[2]},{offset:n[2]+n[1].length})}};MS.exports=wf});var Ll=Ae((JV,LS)=>{"use strict";var pL=fn(),hL=qi(),gL=kS();function kl(e,t){let n=new hL(e,t),r=new gL(n);try{r.parse()}catch(o){throw o}return r.root}LS.exports=kl;kl.default=kl;pL.registerParse(kl)});var _f=Ae((QV,NS)=>{"use strict";var bL=fn(),{my:yL}=Ii(),ji=class{constructor(t,n={}){if(this.type="warning",this.text=t,n.node&&n.node.source){n.node[yL]||bL.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}};NS.exports=ji;ji.default=ji});var Nl=Ae((ZV,FS)=>{"use strict";var xL=_f(),Ki=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 xL(t,n);return this.messages.push(r),r}warnings(){return this.messages.filter(t=>t.type==="warning")}};FS.exports=Ki;Ki.default=Ki});var Cf=Ae((e5,DS)=>{"use strict";var PS={};DS.exports=function(t){PS[t]||(PS[t]=!0,typeof globalThis.console<"u"&&globalThis.console.warn&&globalThis.console.warn(t))}});var Mf=Ae((n5,GS)=>{"use strict";var SL=fn(),EL=xl(),vL=vf(),AL=Ll(),IS=Nl(),wL=mo(),_L=Di(),{isClean:It,my:CL}=Ii(),t5=Cf(),TL={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},RL={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},ML={Once:!0,postcssPlugin:!0,prepare:!0},ho=0;function Yi(e){return typeof e=="object"&&typeof e.then=="function"}function Tf(e){let t=!1,n=TL[e.type];return e.type==="decl"?t=e.prop.toLowerCase():e.type==="atrule"&&(t=e.name.toLowerCase()),t&&e.append?[n,n+"-"+t,ho,n+"Exit",n+"Exit-"+t]:t?[n,n+"-"+t,n+"Exit",n+"Exit-"+t]:e.append?[n,ho,n+"Exit"]:[n,n+"Exit"]}function OS(e){let t;return e.type==="document"?t=["Document",ho,"DocumentExit"]:e.type==="root"?t=["Root",ho,"RootExit"]:t=Tf(e),{eventIndex:0,events:t,iterator:0,node:e,visitorIndex:0,visitors:[]}}function HS(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[It]=!1,n.nodes)for(let r of n.nodes)t.push(r)}return e}var Rf={},zn=class e{get content(){return this.stringify().content}get css(){return this.stringify().css}get map(){return this.stringify().map}get messages(){return this.sync().messages}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){return this.sync().root}get[Symbol.toStringTag](){return"LazyResult"}constructor(t,n,r){this.stringified=!1,this.processed=!1;let o;if(typeof n=="object"&&n!==null&&(n.type==="root"||n.type==="document"))o=HS(n);else if(n instanceof e||n instanceof IS)o=HS(n.root),n.map&&(typeof r.map>"u"&&(r.map={}),r.map.inline||(r.map.inline=!1),r.map.prev=n.map);else{let i=AL;r.syntax&&(i=r.syntax.parse),r.parser&&(i=r.parser),i.parse&&(i=i.parse);try{o=i(n,r)}catch(a){this.processed=!0,this.error=a}o&&!o[CL]&&SL.rebuild(o)}this.result=new IS(t,o,r),this.helpers={...Rf,postcss:Rf,result:this.result},this.plugins=this.processor.plugins.map(i=>typeof i=="object"&&i.prepare?{...i,...i.prepare(this.result)}:i)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}catch(t){return this.async().catch(t)}finally(t){return this.async().then(t,t)}getAsyncError(){throw new Error("Use process(css).then(cb) to work with async plugins")}handleError(t,n){let r=this.result.lastPlugin;try{n&&n.addToError(t),this.error=t,t.name==="CssSyntaxError"&&!t.plugin?(t.plugin=r.postcssPlugin,t.setMessage()):r.postcssVersion}catch(o){globalThis.console&&globalThis.console.error&&globalThis.console.error(o)}return t}prepareVisitors(){this.listeners={};let t=(n,r,o)=>{this.listeners[r]||(this.listeners[r]=[]),this.listeners[r].push([n,o])};for(let n of this.plugins)if(typeof n=="object")for(let r in n){if(!RL[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${n.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!ML[r])if(typeof n[r]=="object")for(let o in n[r])o==="*"?t(n,r,n[r][o]):t(n,r+"-"+o.toLowerCase(),n[r][o]);else typeof n[r]=="function"&&t(n,r,n[r])}this.hasListener=Object.keys(this.listeners).length>0}async runAsync(){this.plugin=0;for(let t=0;t<this.plugins.length;t++){let n=this.plugins[t],r=this.runOnRoot(n);if(Yi(r))try{await r}catch(o){throw this.handleError(o)}}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[It];){t[It]=!0;let n=[OS(t)];for(;n.length>0;){let r=this.visitTick(n);if(Yi(r))try{await r}catch(o){let i=n[n.length-1].node;throw this.handleError(o,i)}}}if(this.listeners.OnceExit)for(let[n,r]of this.listeners.OnceExit){this.result.lastPlugin=n;try{if(t.type==="document"){let o=t.nodes.map(i=>r(i,this.helpers));await Promise.all(o)}else await r(t,this.helpers)}catch(o){throw this.handleError(o)}}}return this.processed=!0,this.stringify()}runOnRoot(t){this.result.lastPlugin=t;try{if(typeof t=="object"&&t.Once){if(this.result.root.type==="document"){let n=this.result.root.nodes.map(r=>t.Once(r,this.helpers));return Yi(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=_L;t.syntax&&(n=t.syntax.stringify),t.stringifier&&(n=t.stringifier),n.stringify&&(n=n.stringify);let r=this.result.root.source;if(t.map===void 0&&!(r&&r.input&&r.input.map)){let a="";return n(this.result.root,l=>{a+=l}),this.result.css=a,this.result}let i=new vL(n,this.result.root,this.result.opts).generate();return this.result.css=i[0],this.result.map=i[1],this.result}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let t of this.plugins){let n=this.runOnRoot(t);if(Yi(n))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[It];)t[It]=!0,this.walkSync(t);if(this.listeners.OnceExit)if(t.type==="document")for(let n of t.nodes)this.visitSync(this.listeners.OnceExit,n);else this.visitSync(this.listeners.OnceExit,t)}return this.result}then(t,n){return this.async().then(t,n)}toString(){return this.css}visitSync(t,n){for(let[r,o]of t){this.result.lastPlugin=r;let i;try{i=o(n,this.helpers)}catch(a){throw this.handleError(a,n.proxyOf)}if(n.type!=="root"&&n.type!=="document"&&!n.parent)return!0;if(Yi(i))throw this.getAsyncError()}}visitTick(t){let n=t[t.length-1],{node:r,visitors:o}=n;if(r.type!=="root"&&r.type!=="document"&&!r.parent){t.pop();return}if(o.length>0&&n.visitorIndex<o.length){let[a,l]=o[n.visitorIndex];n.visitorIndex+=1,n.visitorIndex===o.length&&(n.visitors=[],n.visitorIndex=0),this.result.lastPlugin=a;try{return l(r.toProxy(),this.helpers)}catch(s){throw this.handleError(s,r)}}if(n.iterator!==0){let a=n.iterator;n.descending&&(n.descending=!1,r.indexes[a]+=1);let l;for(;l=r.nodes[r.indexes[a]];){if(!l[It]){l[It]=!0,n.descending=!0,t.push(OS(l));return}r.indexes[a]+=1}n.iterator=0,delete r.indexes[a]}let i=n.events;for(;n.eventIndex<i.length;){let a=i[n.eventIndex];if(n.eventIndex+=1,a===ho){r.nodes&&r.nodes.length&&(r[It]=!0,n.iterator=r.getIterator());return}else if(this.listeners[a]){n.visitors=this.listeners[a];return}}t.pop()}walkSync(t){t[It]=!0;let n=[{eventIndex:0,events:Tf(t),iterator:0,node:t}];for(;n.length>0;){let r=n[n.length-1],o=r.node;if(r.iterator!==0){let i=r.iterator;r.descending&&(r.descending=!1,o.indexes[i]+=1);let a,l=!1;for(;a=o.nodes[o.indexes[i]];){if(!a[It]){a[It]=!0,r.descending=!0,n.push({eventIndex:0,events:Tf(a),iterator:0,node:a}),l=!0;break}o.indexes[i]+=1}if(l)continue;r.iterator=0,delete o.indexes[i]}if(r.eventIndex<r.events.length){let i=r.events[r.eventIndex];if(r.eventIndex+=1,i===ho)o.nodes&&o.nodes.length&&(r.iterator=o.getIterator());else{let a=this.listeners[i];a&&this.visitSync(a,o.toProxy())&&n.pop()}continue}n.pop()}}warnings(){return this.sync().warnings()}};zn.registerPostcss=e=>{Rf=e};GS.exports=zn;zn.default=zn;wL.registerLazyResult(zn);EL.registerLazyResult(zn)});var US=Ae((o5,BS)=>{"use strict";var kL=vf(),LL=Ll(),NL=Nl(),FL=Di(),r5=Cf(),Xi=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=LL;try{t=n(this._css,this._opts)}catch(r){this.error=r}if(this.error)throw this.error;return this._root=t,t}get[Symbol.toStringTag](){return"NoWorkResult"}constructor(t,n,r){n=n.toString(),this.stringified=!1,this._processor=t,this._css=n,this._opts=r,this._map=void 0;let o=FL;this.result=new NL(this._processor,void 0,this._opts),this.result.css=n;let i=this;Object.defineProperty(this.result,"root",{get(){return i.root}});let a=new kL(o,void 0,this._opts,n);if(a.isMap()){let[l,s]=a.generate();l&&(this.result.css=l),s&&(this.result.map=s)}else a.clearAnnotation(),this.result.css=a.css}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}catch(t){return this.async().catch(t)}finally(t){return this.async().then(t,t)}sync(){if(this.error)throw this.error;return this.result}then(t,n){return this.async().then(t,n)}toString(){return this._css}warnings(){return[]}};BS.exports=Xi;Xi.default=Xi});var VS=Ae((i5,WS)=>{"use strict";var PL=xl(),DL=Mf(),IL=US(),OL=mo(),wr=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 IL(this,t,n):new DL(this,t,n)}use(t){return this.plugins=this.plugins.concat(this.normalize([t])),this}};WS.exports=wr;wr.default=wr;OL.registerProcessor(wr);PL.registerProcessor(wr)});var JS=Ae((a5,XS)=>{"use strict";var $S=yl(),qS=Ui(),HL=fn(),GL=bl(),zS=Vi(),jS=xl(),BL=bS(),UL=qi(),WL=Mf(),VL=Sf(),$L=Gi(),qL=Ll(),kf=VS(),zL=Nl(),KS=mo(),YS=wl(),jL=Di(),KL=_f();function Fe(...e){return e.length===1&&Array.isArray(e[0])&&(e=e[0]),new kf(e)}Fe.plugin=function(t,n){let r=!1;function o(...a){globalThis.console&&globalThis.console.warn&&!r&&(r=!0,globalThis.console.warn(t+`: postcss.plugin was deprecated. Migration guide:
|
|
25
|
+
`),this.css+=n+"/*# sourceMappingURL="+t+" */"}applyPrevMaps(){for(let t of this.previous()){let n=this.toUrl(this.path(t.file)),r=t.root||Tl(t.file),o;this.mapOpts.sourcesContent===!1?(o=new wS(t.text),o.sourcesContent&&(o.sourcesContent=null)):o=t.consumer(),this.map.applySourceMap(o,n,this.toUrl(this.path(r)))}}clearAnnotation(){if(this.mapOpts.annotation!==!1){if(this.root){let t;for(let n=this.root.nodes.length-1;n>=0;n--)t=this.root.nodes[n],t.type==="comment"&&t.text.startsWith("# sourceMappingURL=")&&this.root.removeChild(n)}else if(this.css){let t="/*# sourceMappingURL=",n;for(;(n=this.css.lastIndexOf(t))!==-1;){let r=this.css.indexOf("*/",n+t.length);if(r===-1)break;for(;n>0&&this.css[n-1]===`
|
|
26
|
+
`;)n--;this.css=this.css.slice(0,n)+this.css.slice(r+2)}}}}generate(){if(this.clearAnnotation(),dL&&cL&&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=Rl.fromSourceMap(t,{ignoreInvalidMapping:!0})}else this.map=new Rl({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 Rl({file:this.outputFile(),ignoreInvalidMapping:!0});let t=1,n=1,r="<no source>",o={generated:{column:0,line:0},original:{column:0,line:0},source:""},i,a;this.stringify(this.root,(l,s,c)=>{if(this.css+=l,s&&c!=="end"&&(o.generated.line=t,o.generated.column=n-1,s.source&&s.source.start?(o.source=this.sourcePath(s),o.original.line=s.source.start.line,o.original.column=s.source.start.column-1,this.map.addMapping(o)):(o.source=r,o.original.line=1,o.original.column=0,this.map.addMapping(o))),a=l.match(/\n/g),a?(t+=a.length,i=l.lastIndexOf(`
|
|
27
|
+
`),n=l.length-i):n+=l.length,s&&c!=="start"){let d=s.parent||{raws:{}};(!(s.type==="decl"||s.type==="atrule"&&!s.nodes)||s!==d.last||d.raws.semicolon)&&(s.source&&s.source.end?(o.source=this.sourcePath(s),o.original.line=s.source.end.line,o.original.column=s.source.end.column-1,o.generated.line=t,o.generated.column=n-2,this.map.addMapping(o)):(o.source=r,o.original.line=1,o.original.column=0,o.generated.line=t,o.generated.column=n-1,this.map.addMapping(o)))}})}isAnnotation(){return this.isInline()?!0:typeof this.mapOpts.annotation<"u"?this.mapOpts.annotation:this.previous().length?this.previous().some(t=>t.annotation):!0}isInline(){if(typeof this.mapOpts.inline<"u")return this.mapOpts.inline;let t=this.mapOpts.annotation;return typeof t<"u"&&t!==!0?!1:this.previous().length?this.previous().some(n=>n.inline):!0}isMap(){return typeof this.opts.map<"u"?!!this.opts.map:this.previous().length>0}isSourcesContent(){return typeof this.mapOpts.sourcesContent<"u"?this.mapOpts.sourcesContent:this.previous().length?this.previous().some(t=>t.withContent()):!0}outputFile(){return this.opts.to?this.path(this.opts.to):this.opts.from?this.path(this.opts.from):"to.css"}path(t){if(this.mapOpts.absolute||t.charCodeAt(0)===60||/^\w+:\/\//.test(t))return t;let n=this.memoizedPaths.get(t);if(n)return n;let r=this.opts.to?Tl(this.opts.to):".";typeof this.mapOpts.annotation=="string"&&(r=Tl(vS(r,this.mapOpts.annotation)));let o=ES(r,t);return this.memoizedPaths.set(t,o),o}previous(){if(!this.previousMaps)if(this.previousMaps=[],this.root)this.root.walk(t=>{if(t.source&&t.source.input.map){let n=t.source.input.map;this.previousMaps.includes(n)||this.previousMaps.push(n)}});else{let t=new uL(this.originalCSS,this.opts);t.map&&this.previousMaps.push(t.map)}return this.previousMaps}setSourcesContent(){let t={};if(this.root)this.root.walk(n=>{if(n.source){let r=n.source.input.from;if(r&&!t[r]){t[r]=!0;let o=this.usesFileUrls?this.toFileUrl(r):this.toUrl(this.path(r));this.map.setSourceContent(o,n.source.input.css)}}});else if(this.css){let n=this.opts.from?this.toUrl(this.path(this.opts.from)):"<no source>";this.map.setSourceContent(n,this.css)}}sourcePath(t){return this.mapOpts.from?this.toUrl(this.mapOpts.from):this.usesFileUrls?this.toFileUrl(t.source.input.from):this.toUrl(this.path(t.source.input.from))}toBase64(t){return Buffer?Buffer.from(t).toString("base64"):window.btoa(unescape(encodeURIComponent(t)))}toFileUrl(t){let n=this.memoizedFileURLs.get(t);if(n)return n;if(SS){let r=SS(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;AS==="\\"&&(t=t.replace(/\\/g,"/"));let r=encodeURI(t).replace(/[#?]/g,encodeURIComponent);return this.memoizedURLs.set(t,r),r}};_S.exports=Af});var RS=Ae((n5,TS)=>{"use strict";var Ml=/[\t\n\f\r "#'()/;[\\\]{}]/g,kl=/[\t\n\f\r !"#'():;@[\\\]{}]|\/(?=\*)/g,fL=/.[\r\n"'(/\\]/,CS=/[\da-f]/i;TS.exports=function(t,n={}){let r=t.css.valueOf(),o=n.ignoreErrors,i,a,l,s,c,d,m,f,p,b,y=r.length,x=0,v=[],E=[],C=-1;function H(){return x}function V(T){throw t.error("Unclosed "+T,x)}function M(){return E.length===0&&x>=y}function R(T){if(E.length)return E.pop();if(x>=y)return;let F=T?T.ignoreUnclosed:!1;switch(i=r.charCodeAt(x),i){case 10:case 32:case 9:case 13:case 12:{s=x;do s+=1,i=r.charCodeAt(s);while(i===32||i===10||i===9||i===13||i===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 W=String.fromCharCode(i);d=[W,W,x];break}case 40:{if(b=v.length?v.pop()[1]:"",p=r.charCodeAt(x+1),b==="url"&&p!==39&&p!==34&&p!==32&&p!==10&&p!==9&&p!==12&&p!==13){s=x;do{if(m=!1,s=r.indexOf(")",s+1),s===-1)if(o||F){s=x;break}else V("bracket");for(f=s;r.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);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||fL.test(a)?(C=s===-1?y:s,d=["(","(",x]):(d=["brackets",a,x,s],x=s));break}case 39:case 34:{c=i===39?"'":'"',s=x;do{if(m=!1,s=r.indexOf(c,s+1),s===-1)if(o||F){s=x+1;break}else V("string");for(f=s;r.charCodeAt(f-1)===92;)f-=1,m=!m}while(m);d=["string",r.slice(x,s+1),x,s],x=s;break}case 64:{Ml.lastIndex=x+1,Ml.test(r),Ml.lastIndex===0?s=r.length-1:s=Ml.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(i=r.charCodeAt(s+1),l&&i!==47&&i!==32&&i!==10&&i!==9&&i!==13&&i!==12&&(s+=1,CS.test(r.charAt(s)))){for(;CS.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:{i===47&&r.charCodeAt(x+1)===42?(s=r.indexOf("*/",x+2)+1,s===0&&(o||F?s=r.length:V("comment")),d=["comment",r.slice(x,s+1),x,s],x=s):(kl.lastIndex=x+1,kl.test(r),kl.lastIndex===0?s=r.length-1:s=kl.lastIndex-2,d=["word",r.slice(x,s+1),x,s],v.push(d),x=s);break}}return x++,d}function U(T){E.push(T)}return{back:U,endOfFile:M,nextToken:R,position:H}}});var NS=Ae((r5,LS)=>{"use strict";var mL=xl(),pL=Ui(),hL=Vi(),gL=mo(),MS=_l(),bL=RS(),kS={empty:!0,space:!0};function yL(e){for(let t=e.length-1;t>=0;t--){let n=e[t],r=n[3]||n[2];if(r)return r}}function _f(e,t,n){let r="";for(let o=t;o<n;o++)r+=e[o][1];return r}var Cf=class{constructor(t){this.input=t,this.root=new gL,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 mL;n.name=t[1].slice(1),n.name===""&&this.unnamedAtrule(n,t),this.init(n,t[2]);let r,o,i,a=!1,l=!1,s=[],c=[];for(;!this.tokenizer.endOfFile();){if(t=this.tokenizer.nextToken(),r=t[0],r==="("||r==="["?c.push(r==="("?")":"]"):r==="{"&&c.length>0?c.push("}"):r===c[c.length-1]&&c.pop(),c.length===0)if(r===";"){n.source.end=this.getPosition(t[2]),n.source.end.offset++,this.semicolon=!0;break}else if(r==="{"){l=!0;break}else if(r==="}"){if(s.length>0){for(i=s.length-1,o=s[i];o&&o[0]==="space";)o=s[--i];o&&(n.source.end=this.getPosition(o[3]||o[2]),n.source.end.offset++)}this.end(t);break}else s.push(t);else s.push(t);if(this.tokenizer.endOfFile()){a=!0;break}}n.raws.between=this.spacesAndCommentsFromEnd(s),s.length?(n.raws.afterName=this.spacesAndCommentsFromStart(s),this.raw(n,"params",s),a&&(t=s[s.length-1],n.source.end=this.getPosition(t[3]||t[2]),n.source.end.offset++,this.spaces=n.raws.between,n.raws.between="")):(n.raws.afterName="",n.params=""),l&&(n.nodes=[],this.current=n)}checkMissedSemicolon(t){let n=this.colon(t);if(n===!1)return;let r=0,o;for(let i=n-1;i>=0&&(o=t[i],!(o[0]!=="space"&&(r+=1,r===2)));i--);throw this.input.error("Missed semicolon",o[0]==="word"?o[3]+1:o[2])}colon(t){let n=0,r,o,i;for(let[a,l]of t.entries()){if(o=l,i=o[0],i==="("&&(n+=1),i===")"&&(n-=1),n===0&&i===":")if(!r)this.doubleColon(o);else{if(r[0]==="word"&&r[1]==="progid")continue;return a}r=o}return!1}comment(t){let n=new pL;this.init(n,t[2]),n.source.end=this.getPosition(t[3]||t[2]),n.source.end.offset++;let r=t[1].slice(2,-2);if(!r.trim())n.text="",n.raws.left=r,n.raws.right="";else{let o=r.match(/^(\s*)([^]*\S)(\s*)$/);n.text=o[2],n.raws.left=o[1],n.raws.right=o[3]}}createTokenizer(){this.tokenizer=bL(this.input)}decl(t,n){let r=new hL;this.init(r,t[0][2]);let o=t[t.length-1];o[0]===";"&&(this.semicolon=!0,t.pop()),r.source.end=this.getPosition(o[3]||o[2]||yL(t)),r.source.end.offset++;let i=0;for(;t[i][0]!=="word";)i===t.length-1&&this.unknownWord([t[i]]),i++;r.raws.before+=_f(t,0,i),r.source.start=this.getPosition(t[i][2]);let a=i;for(;i<t.length;){let f=t[i][0];if(f===":"||f==="space"||f==="comment")break;i++}r.prop=_f(t,a,i);let l=i,s;for(;i<t.length&&(s=t[i],i++,s[0]!==":");)s[0]==="word"&&/\w/.test(s[1])&&this.unknownWord([s]);r.raws.between=_f(t,l,i),(r.prop[0]==="_"||r.prop[0]==="*")&&(r.raws.before+=r.prop[0],r.prop=r.prop.slice(1));let c=i;for(;i<t.length;){let f=t[i][0];if(f!=="space"&&f!=="comment")break;i++}let d=t.slice(c,i);t=t.slice(i),this.precheckMissedSemicolon(t);for(let f=t.length-1;f>=0;f--){if(s=t[f],s[1].toLowerCase()==="!important"){r.important=!0;let p=this.stringFrom(t,f);p=this.spacesFromEnd(t)+p,p!==" !important"&&(r.raws.important=p);break}else if(s[1].toLowerCase()==="important"){let p=t.slice(0),b="";for(let y=f;y>0;y--){let x=p[y][0];if(b.trim().startsWith("!")&&x!=="space")break;b=p.pop()[1]+b}b.trim().startsWith("!")&&(r.important=!0,r.raws.important=b,t=p)}if(s[0]!=="space"&&s[0]!=="comment")break}t.some(f=>f[0]!=="space"&&f[0]!=="comment")&&(r.raws.between+=d.map(f=>f[1]).join(""),d=[]),this.raw(r,"value",d.concat(t),n),r.value.includes(":")&&!n&&this.checkMissedSemicolon(t)}doubleColon(t){throw this.input.error("Double colon",{offset:t[2]},{offset:t[2]+t[1].length})}emptyRule(t){let n=new MS;this.init(n,t[2]),n.selector="",n.raws.between="",this.current=n}end(t){this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.semicolon=!1,this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.spaces="",this.current.parent?(this.current.source.end=this.getPosition(t[2]),this.current.source.end.offset++,this.current=this.current.parent):this.unexpectedClose(t)}endFile(){this.current.parent&&this.unclosedBlock(),this.current.nodes&&this.current.nodes.length&&(this.current.raws.semicolon=this.semicolon),this.current.raws.after=(this.current.raws.after||"")+this.spaces,this.root.source.end=this.getPosition(this.tokenizer.position())}freeSemicolon(t){if(this.spaces+=t[1],this.current.nodes){let n=this.current.nodes[this.current.nodes.length-1];n&&n.type==="rule"&&!n.raws.ownSemicolon&&(n.raws.ownSemicolon=this.spaces,this.spaces="",n.source.end=this.getPosition(t[2]),n.source.end.offset++)}}getPosition(t){let n=this.input.fromOffset(t);return{column:n.col,line:n.line,offset:t}}init(t,n){this.current.push(t),t.source={input:this.input,start:this.getPosition(n)},t.raws.before=this.spaces,this.spaces="",t.type!=="comment"&&(this.semicolon=!1)}other(t){let n=!1,r=null,o=!1,i=null,a=[],l=t[1].startsWith("--"),s=[],c=t;for(;c;){if(r=c[0],s.push(c),r==="("||r==="[")i||(i=c),a.push(r==="("?")":"]");else if(l&&o&&r==="{")i||(i=c),a.push("}");else if(a.length===0)if(r===";")if(o){this.decl(s,l);return}else break;else if(r==="{"){this.rule(s);return}else if(r==="}"){this.tokenizer.back(s.pop()),n=!0;break}else r===":"&&(o=!0);else r===a[a.length-1]&&(a.pop(),a.length===0&&(i=null));c=this.tokenizer.nextToken()}if(this.tokenizer.endOfFile()&&(n=!0),a.length>0&&this.unclosedBracket(i),n&&o){if(!l)for(;s.length&&(c=s[s.length-1][0],!(c!=="space"&&c!=="comment"));)this.tokenizer.back(s.pop());this.decl(s,l)}else this.unknownWord(s)}parse(){let t;for(;!this.tokenizer.endOfFile();)switch(t=this.tokenizer.nextToken(),t[0]){case"space":this.spaces+=t[1];break;case";":this.freeSemicolon(t);break;case"}":this.end(t);break;case"comment":this.comment(t);break;case"at-word":this.atrule(t);break;case"{":this.emptyRule(t);break;default:this.other(t);break}this.endFile()}precheckMissedSemicolon(){}raw(t,n,r,o){let i,a,l=r.length,s="",c=!0,d,m;for(let f=0;f<l;f+=1)i=r[f],a=i[0],a==="space"&&f===l-1&&!o?c=!1:a==="comment"?(m=r[f-1]?r[f-1][0]:"empty",d=r[f+1]?r[f+1][0]:"empty",!kS[m]&&!kS[d]?s.slice(-1)===","?c=!1:s+=i[1]:c=!1):s+=i[1];if(!c){let f=r.reduce((p,b)=>p+b[1],"");t.raws[n]={raw:f,value:s}}t[n]=s}rule(t){t.pop();let n=new MS;this.init(n,t[0][2]),n.raws.between=this.spacesAndCommentsFromEnd(t),this.raw(n,"selector",t),this.current=n}spacesAndCommentsFromEnd(t){let n,r="";for(;t.length&&(n=t[t.length-1][0],!(n!=="space"&&n!=="comment"));)r=t.pop()[1]+r;return r}spacesAndCommentsFromStart(t){let n,r="";for(;t.length&&(n=t[0][0],!(n!=="space"&&n!=="comment"));)r+=t.shift()[1];return r}spacesFromEnd(t){let n,r="";for(;t.length&&(n=t[t.length-1][0],n==="space");)r=t.pop()[1]+r;return r}stringFrom(t,n){let r="";for(let o=n;o<t.length;o++)r+=t[o][1];return t.splice(n,t.length-n),r}unclosedBlock(){let t=this.current.source.start;throw this.input.error("Unclosed block",t.line,t.column)}unclosedBracket(t){throw this.input.error("Unclosed bracket",{offset:t[2]},{offset:t[2]+1})}unexpectedClose(t){throw this.input.error("Unexpected }",{offset:t[2]},{offset:t[2]+1})}unknownWord(t){throw this.input.error("Unknown word "+t[0][1],{offset:t[0][2]},{offset:t[0][2]+t[0][1].length})}unnamedAtrule(t,n){throw this.input.error("At-rule without name",{offset:n[2]},{offset:n[2]+n[1].length})}};LS.exports=Cf});var Nl=Ae((o5,FS)=>{"use strict";var xL=fn(),SL=qi(),EL=NS();function Ll(e,t){let n=new SL(e,t),r=new EL(n);try{r.parse()}catch(o){throw o}return r.root}FS.exports=Ll;Ll.default=Ll;xL.registerParse(Ll)});var Tf=Ae((i5,PS)=>{"use strict";var vL=fn(),{my:AL}=Ii(),ji=class{constructor(t,n={}){if(this.type="warning",this.text=t,n.node&&n.node.source){n.node[AL]||vL.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}};PS.exports=ji;ji.default=ji});var Fl=Ae((a5,DS)=>{"use strict";var wL=Tf(),Ki=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 wL(t,n);return this.messages.push(r),r}warnings(){return this.messages.filter(t=>t.type==="warning")}};DS.exports=Ki;Ki.default=Ki});var Rf=Ae((s5,OS)=>{"use strict";var IS={};OS.exports=function(t){IS[t]||(IS[t]=!0,typeof globalThis.console<"u"&&globalThis.console.warn&&globalThis.console.warn(t))}});var Lf=Ae((u5,US)=>{"use strict";var _L=fn(),CL=Sl(),TL=wf(),RL=Nl(),HS=Fl(),ML=mo(),kL=Di(),{isClean:It,my:LL}=Ii(),l5=Rf(),NL={atrule:"AtRule",comment:"Comment",decl:"Declaration",document:"Document",root:"Root",rule:"Rule"},FL={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},PL={Once:!0,postcssPlugin:!0,prepare:!0},ho=0;function Yi(e){return typeof e=="object"&&typeof e.then=="function"}function Mf(e){let t=!1,n=NL[e.type];return e.type==="decl"?t=e.prop.toLowerCase():e.type==="atrule"&&(t=e.name.toLowerCase()),t&&e.append?[n,n+"-"+t,ho,n+"Exit",n+"Exit-"+t]:t?[n,n+"-"+t,n+"Exit",n+"Exit-"+t]:e.append?[n,ho,n+"Exit"]:[n,n+"Exit"]}function GS(e){let t;return e.type==="document"?t=["Document",ho,"DocumentExit"]:e.type==="root"?t=["Root",ho,"RootExit"]:t=Mf(e),{eventIndex:0,events:t,iterator:0,node:e,visitorIndex:0,visitors:[]}}function BS(e){let t=[e];for(;t.length>0;){let n=t.pop();if(n[It]=!1,n.nodes)for(let r of n.nodes)t.push(r)}return e}var kf={},zn=class e{get content(){return this.stringify().content}get css(){return this.stringify().css}get map(){return this.stringify().map}get messages(){return this.sync().messages}get opts(){return this.result.opts}get processor(){return this.result.processor}get root(){return this.sync().root}get[Symbol.toStringTag](){return"LazyResult"}constructor(t,n,r){this.stringified=!1,this.processed=!1;let o;if(typeof n=="object"&&n!==null&&(n.type==="root"||n.type==="document"))o=BS(n);else if(n instanceof e||n instanceof HS)o=BS(n.root),n.map&&(typeof r.map>"u"&&(r.map={}),r.map.inline||(r.map.inline=!1),r.map.prev=n.map);else{let i=RL;r.syntax&&(i=r.syntax.parse),r.parser&&(i=r.parser),i.parse&&(i=i.parse);try{o=i(n,r)}catch(a){this.processed=!0,this.error=a}o&&!o[LL]&&_L.rebuild(o)}this.result=new HS(t,o,r),this.helpers={...kf,postcss:kf,result:this.result},this.plugins=this.processor.plugins.map(i=>typeof i=="object"&&i.prepare?{...i,...i.prepare(this.result)}:i)}async(){return this.error?Promise.reject(this.error):this.processed?Promise.resolve(this.result):(this.processing||(this.processing=this.runAsync()),this.processing)}catch(t){return this.async().catch(t)}finally(t){return this.async().then(t,t)}getAsyncError(){throw new Error("Use process(css).then(cb) to work with async plugins")}handleError(t,n){let r=this.result.lastPlugin;try{n&&n.addToError(t),this.error=t,t.name==="CssSyntaxError"&&!t.plugin?(t.plugin=r.postcssPlugin,t.setMessage()):r.postcssVersion}catch(o){globalThis.console&&globalThis.console.error&&globalThis.console.error(o)}return t}prepareVisitors(){this.listeners={};let t=(n,r,o)=>{this.listeners[r]||(this.listeners[r]=[]),this.listeners[r].push([n,o])};for(let n of this.plugins)if(typeof n=="object")for(let r in n){if(!FL[r]&&/^[A-Z]/.test(r))throw new Error(`Unknown event ${r} in ${n.postcssPlugin}. Try to update PostCSS (${this.processor.version} now).`);if(!PL[r])if(typeof n[r]=="object")for(let o in n[r])o==="*"?t(n,r,n[r][o]):t(n,r+"-"+o.toLowerCase(),n[r][o]);else typeof n[r]=="function"&&t(n,r,n[r])}this.hasListener=Object.keys(this.listeners).length>0}async runAsync(){this.plugin=0;for(let t=0;t<this.plugins.length;t++){let n=this.plugins[t],r=this.runOnRoot(n);if(Yi(r))try{await r}catch(o){throw this.handleError(o)}}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[It];){t[It]=!0;let n=[GS(t)];for(;n.length>0;){let r=this.visitTick(n);if(Yi(r))try{await r}catch(o){let i=n[n.length-1].node;throw this.handleError(o,i)}}}if(this.listeners.OnceExit)for(let[n,r]of this.listeners.OnceExit){this.result.lastPlugin=n;try{if(t.type==="document"){let o=t.nodes.map(i=>r(i,this.helpers));await Promise.all(o)}else await r(t,this.helpers)}catch(o){throw this.handleError(o)}}}return this.processed=!0,this.stringify()}runOnRoot(t){this.result.lastPlugin=t;try{if(typeof t=="object"&&t.Once){if(this.result.root.type==="document"){let n=this.result.root.nodes.map(r=>t.Once(r,this.helpers));return Yi(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=kL;t.syntax&&(n=t.syntax.stringify),t.stringifier&&(n=t.stringifier),n.stringify&&(n=n.stringify);let r=this.result.root.source;if(t.map===void 0&&!(r&&r.input&&r.input.map)){let a="";return n(this.result.root,l=>{a+=l}),this.result.css=a,this.result}let i=new TL(n,this.result.root,this.result.opts).generate();return this.result.css=i[0],this.result.map=i[1],this.result}sync(){if(this.error)throw this.error;if(this.processed)return this.result;if(this.processed=!0,this.processing)throw this.getAsyncError();for(let t of this.plugins){let n=this.runOnRoot(t);if(Yi(n))throw this.getAsyncError()}if(this.prepareVisitors(),this.hasListener){let t=this.result.root;for(;!t[It];)t[It]=!0,this.walkSync(t);if(this.listeners.OnceExit)if(t.type==="document")for(let n of t.nodes)this.visitSync(this.listeners.OnceExit,n);else this.visitSync(this.listeners.OnceExit,t)}return this.result}then(t,n){return this.async().then(t,n)}toString(){return this.css}visitSync(t,n){for(let[r,o]of t){this.result.lastPlugin=r;let i;try{i=o(n,this.helpers)}catch(a){throw this.handleError(a,n.proxyOf)}if(n.type!=="root"&&n.type!=="document"&&!n.parent)return!0;if(Yi(i))throw this.getAsyncError()}}visitTick(t){let n=t[t.length-1],{node:r,visitors:o}=n;if(r.type!=="root"&&r.type!=="document"&&!r.parent){t.pop();return}if(o.length>0&&n.visitorIndex<o.length){let[a,l]=o[n.visitorIndex];n.visitorIndex+=1,n.visitorIndex===o.length&&(n.visitors=[],n.visitorIndex=0),this.result.lastPlugin=a;try{return l(r.toProxy(),this.helpers)}catch(s){throw this.handleError(s,r)}}if(n.iterator!==0){let a=n.iterator;n.descending&&(n.descending=!1,r.indexes[a]+=1);let l;for(;l=r.nodes[r.indexes[a]];){if(!l[It]){l[It]=!0,n.descending=!0,t.push(GS(l));return}r.indexes[a]+=1}n.iterator=0,delete r.indexes[a]}let i=n.events;for(;n.eventIndex<i.length;){let a=i[n.eventIndex];if(n.eventIndex+=1,a===ho){r.nodes&&r.nodes.length&&(r[It]=!0,n.iterator=r.getIterator());return}else if(this.listeners[a]){n.visitors=this.listeners[a];return}}t.pop()}walkSync(t){t[It]=!0;let n=[{eventIndex:0,events:Mf(t),iterator:0,node:t}];for(;n.length>0;){let r=n[n.length-1],o=r.node;if(r.iterator!==0){let i=r.iterator;r.descending&&(r.descending=!1,o.indexes[i]+=1);let a,l=!1;for(;a=o.nodes[o.indexes[i]];){if(!a[It]){a[It]=!0,r.descending=!0,n.push({eventIndex:0,events:Mf(a),iterator:0,node:a}),l=!0;break}o.indexes[i]+=1}if(l)continue;r.iterator=0,delete o.indexes[i]}if(r.eventIndex<r.events.length){let i=r.events[r.eventIndex];if(r.eventIndex+=1,i===ho)o.nodes&&o.nodes.length&&(r.iterator=o.getIterator());else{let a=this.listeners[i];a&&this.visitSync(a,o.toProxy())&&n.pop()}continue}n.pop()}}warnings(){return this.sync().warnings()}};zn.registerPostcss=e=>{kf=e};US.exports=zn;zn.default=zn;ML.registerLazyResult(zn);CL.registerLazyResult(zn)});var VS=Ae((d5,WS)=>{"use strict";var DL=wf(),IL=Nl(),OL=Fl(),HL=Di(),c5=Rf(),Xi=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=IL;try{t=n(this._css,this._opts)}catch(r){this.error=r}if(this.error)throw this.error;return this._root=t,t}get[Symbol.toStringTag](){return"NoWorkResult"}constructor(t,n,r){n=n.toString(),this.stringified=!1,this._processor=t,this._css=n,this._opts=r,this._map=void 0;let o=HL;this.result=new OL(this._processor,void 0,this._opts),this.result.css=n;let i=this;Object.defineProperty(this.result,"root",{get(){return i.root}});let a=new DL(o,void 0,this._opts,n);if(a.isMap()){let[l,s]=a.generate();l&&(this.result.css=l),s&&(this.result.map=s)}else a.clearAnnotation(),this.result.css=a.css}async(){return this.error?Promise.reject(this.error):Promise.resolve(this.result)}catch(t){return this.async().catch(t)}finally(t){return this.async().then(t,t)}sync(){if(this.error)throw this.error;return this.result}then(t,n){return this.async().then(t,n)}toString(){return this._css}warnings(){return[]}};WS.exports=Xi;Xi.default=Xi});var qS=Ae((f5,$S)=>{"use strict";var GL=Sl(),BL=Lf(),UL=VS(),WL=mo(),wr=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 UL(this,t,n):new BL(this,t,n)}use(t){return this.plugins=this.plugins.concat(this.normalize([t])),this}};$S.exports=wr;wr.default=wr;WL.registerProcessor(wr);GL.registerProcessor(wr)});var ZS=Ae((m5,QS)=>{"use strict";var zS=xl(),jS=Ui(),VL=fn(),$L=yl(),KS=Vi(),YS=Sl(),qL=xS(),zL=qi(),jL=Lf(),KL=vf(),YL=Gi(),XL=Nl(),Nf=qS(),JL=Fl(),XS=mo(),JS=_l(),QL=Di(),ZL=Tf();function Fe(...e){return e.length===1&&Array.isArray(e[0])&&(e=e[0]),new Nf(e)}Fe.plugin=function(t,n){let r=!1;function o(...a){globalThis.console&&globalThis.console.warn&&!r&&(r=!0,globalThis.console.warn(t+`: postcss.plugin was deprecated. Migration guide:
|
|
28
28
|
https://evilmartians.com/chronicles/postcss-8-plugin-migration`),process.env.LANG&&process.env.LANG.startsWith("zh")&&globalThis.console.warn(t+`: \u91CC\u9762 postcss.plugin \u88AB\u5F03\u7528. \u8FC1\u79FB\u6307\u5357:
|
|
29
|
-
https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.postcssVersion=new
|
|
30
|
-
`||e==="\r"||e==="\f"}var
|
|
31
|
-
`?t+2:
|
|
32
|
-
`)||n.startsWith(`${t}\r`)?n.slice(t.length):n).split(/[\r\n]+/).map(s=>s.trim().replace(/\s+/g," ")).filter(s=>/^at\s+\S/.test(s)||/^[^@]*@.+:\d+(?::\d+)?$/.test(s)),a=i.slice(0,3),l=i.find(
|
|
33
|
-
`),n.isConnected||document.head.appendChild(n)};return s=>{if((!t||t.some(d=>!d.isConnected))&&o.watch(t=Array.from(document.querySelectorAll(HT))),t.length===0)return;let c=UT(i(t),s);(a(c)||!n?.isConnected)&&l();for(let d of t)c.has(d)!==d.hasAttribute(Lt)&&d.toggleAttribute(Lt)}}var kn="data-hf-authored-duration",Ln="data-hf-authored-end";function Jo(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 Br(e){let t=Jo(e.start);if(t==null)return null;let n=Math.max(0,t),r=Jo(e.duration),o=Jo(e.authoredDuration),i=r!=null&&r>0?r:o!=null&&o>0?o:null;if(i!=null)return{start:n,duration:i,end:n+i};let a=Jo(e.end),l=Jo(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 Ur=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),DG=Object.freeze([Ur.start,Ur.duration,Ur.trackIndex]),IG=Object.freeze([Ur.derivedEnd]),OG=Object.freeze([Ur.derivedEnd,Ur.legacyTrack]);function Nn(e){if(e==null||e.trim()==="")return null;let t=Number(e);return Number.isFinite(t)?t:null}var Og=/^[A-Za-z0-9_.:-]+$/;function Hg(e,t){let n=e.charCodeAt(t);return n>=48&&n<=57}function Ig(e,t){let n=t;for(;n>=0&&Hg(e,n);)n--;return n}function VT(e,t){let n=t;for(;n>=0&&(e[n]??"").trim()==="";)n--;return n}function $T(e){let t=e.length-1;if(!Hg(e,t))return null;let n=Ig(e,t);return e[n]==="."&&(n=Ig(e,n-1)),n+1}function qT(e){let t=$T(e);if(t==null)return null;let n=VT(e,t-1),r=e[n];if(r!=="+"&&r!=="-")return null;let o=e.slice(0,n).trim();if(!Og.test(o))return null;let i=Number(e.slice(t));return Number.isFinite(i)?{refId:o,operator:r,magnitude:i}:null}function cs(e){let t=(e??"").trim();if(!t)return null;let n=Nn(t);if(n!=null)return{kind:"absolute",value:n};if(Og.test(t))return{kind:"reference",refId:t,offset:0};let r=qT(t);return r?{kind:"reference",refId:r.refId,offset:r.operator==="-"?-r.magnitude:r.magnitude}:null}var Gg=e=>{let t=Nn(e);return t!==null&&t>=0?t:null};function ds(e){return Gg(e("data-playback-start"))??Gg(e("data-media-start"))??0}var Qo=.1,Zo=10;function wc(e){return Number.isFinite(e)&&e>0?Math.max(Qo,Math.min(Zo,e)):1}function Bg(e,t=1){let n=Number.parseFloat(e("data-playback-rate")??"");return wc(Number.isFinite(n)&&n>0?n:t)}function _c(e){let t=Nn(e("data-duration"));return t!==null&&t>0?t:null}function Ug(e,t){let n=_c(e);if(n!==null)return n;let r=Nn(e("data-end"));return r!==null?r-t:null}var zT=3;function Cc(e,t,n){return Number.isFinite(e)?Math.max(0,e-t)/wc(n):null}function Tc(e){let{tag:t,authoredDurationSeconds:n,sourceDurationSeconds:r,mediaStartSeconds:o,playbackRate:i}=e;if(n!==null&&n>0)return{seconds:n,source:"authored"};if(t==="img")return{seconds:zT,source:"default"};if(r===null)return{seconds:null,source:"pending",reason:"source duration not yet probed"};let a=Cc(r,o,i);return a===null?{seconds:null,source:"pending",reason:"source reported a non-finite duration"}:{seconds:a,source:"media"}}var Pn="data-fx-chain",WG=Pn.slice(5),Wg=1,ei=(e="frequency",t="Frequency",n=1e3,r=20,o=2e4)=>({kind:"number",key:e,label:t,unit:"Hz",min:r,max:o,step:1,default:n,scale:"log",automatable:!0}),Rc=(e=.707,t="Bandwidth: higher is narrower.")=>({kind:"number",key:"q",label:"Q",unit:"",min:.1,max:20,step:.01,default:e,scale:"log",automatable:!0,hint:t}),fs=(e=-40,t=40,n=0)=>({kind:"number",key:"gain",label:"Gain",unit:"dB",min:e,max:t,step:.1,default:n,automatable:!0}),Vg={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."},qg=[{id:"gain",label:"Gain",group:"dynamics",description:"Raise or lower the whole signal. Automate it to duck under something else.",params:[fs(-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:[ei("frequency","Frequency",1e3),fs(-40,40,0),Rc(1)],web:"biquad-peaking"},{id:"lowshelf",label:"Low Shelf",group:"filter",description:"Lift or drop everything below the corner frequency.",params:[ei("frequency","Frequency",200,20,2e3),fs(-40,40,0)],web:"biquad-lowshelf"},{id:"highshelf",label:"High Shelf",group:"filter",description:"Lift or drop everything above the corner frequency.",params:[ei("frequency","Frequency",4e3,500,2e4),fs(-40,40,0)],web:"biquad-highshelf"},{id:"highpass",label:"High-pass",group:"filter",description:"Remove low frequencies: the usual fix for rumble on a voice.",params:[ei("frequency","Cutoff",300,20,2e4),Rc(.707),Vg],web:"biquad-highpass"},{id:"lowpass",label:"Low-pass",group:"filter",description:"Remove high frequencies, which darkens or muffles a track.",params:[ei("frequency","Cutoff",8e3,100,2e4),Rc(.707),Vg],web:"biquad-lowpass"},{id:"compressor",label:"Compressor",group:"dynamics",description:"Pull loud parts down so the quiet ones can come up.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-60,max:0,step:.5,default:-24,hint:"Level above which the compressor starts working."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:4},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:2e3,step:.1,default:20,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:250,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83,hint:"1 is a hard corner; higher eases into it."},{kind:"number",key:"makeup",label:"Makeup",unit:"dB",min:0,max:36,step:.1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1,hint:"Below 1 blends the dry signal back in."}],web:"worklet-compressor"},{id:"limiter",label:"Limiter",group:"dynamics",description:"Peak limiter that follows the signal's level. It has no lookahead, so a fast peak or an inter-sample peak can pass the ceiling; use the true-peak limiter for a delivery limit.",params:[{kind:"number",key:"limit",label:"Ceiling",unit:"dB",min:-24,max:0,step:.1,default:-1},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.1,max:80,step:.1,default:5},{kind:"number",key:"release",label:"Release",unit:"ms",min:1,max:8e3,step:1,default:50,scale:"log"},{kind:"number",key:"level_out",label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0}],web:"worklet-limiter"},{id:"truepeak",label:"True-peak limiter",group:"dynamics",description:"Lookahead limiter that holds a 4x estimate of the inter-sample peak at a dBTP ceiling; full-band noise can land up to about 1.7 dB above it. Adds lookahead plus about 0.3 ms of latency.",params:[{kind:"number",key:"ceiling",label:"Ceiling",unit:"dBTP",min:-24,max:0,step:.1,default:-1,hint:"Target true peak, measured on a 4x oversampled signal. Dense full-band sound can end up to about 1.7 dB above it."},{kind:"number",key:"lookahead",label:"Lookahead",unit:"ms",min:.5,max:10,step:.1,default:3,hint:"How far ahead the gain starts falling. Longer is smoother and adds the same latency."},{kind:"number",key:"release",label:"Release",unit:"ms",min:10,max:2e3,step:1,default:80,scale:"log"}],web:"worklet-truepeak"},{id:"gate",label:"Noise Gate",group:"dynamics",description:"Silence the track when it drops below the threshold.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-80,max:0,step:.5,default:-35},{kind:"number",key:"range",label:"Range",unit:"dB",min:-80,max:0,step:.5,default:-24,hint:"How far down the gate pulls when closed."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:10},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:9e3,step:.1,default:1,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:100,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83}],web:"worklet-gate"},{id:"saturate",label:"Saturation",group:"nonlinear",description:"Soft-clip the waveform for warmth or outright distortion.",params:[{kind:"enum",key:"type",label:"Curve",options:[{value:"tanh",label:"Tanh"},{value:"atan",label:"Arctan"},{value:"cubic",label:"Cubic"},{value:"exp",label:"Exponential"},{value:"alg",label:"Algebraic"},{value:"quintic",label:"Quintic"},{value:"sin",label:"Sine"},{value:"erf",label:"Error function"},{value:"hard",label:"Hard clip"}],default:"tanh"},{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-40,max:0,step:.1,default:-6},{kind:"number",key:"output",automatable:!0,label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0},{kind:"number",key:"oversample",label:"Oversample",unit:"x",min:1,max:8,step:1,default:4,hint:"Higher costs more but keeps aliasing down."}],web:"waveshaper"},{id:"bitcrush",label:"Bitcrush",group:"nonlinear",description:"Drop bit depth and sample rate for a lo-fi, digital sound.",params:[{kind:"number",key:"bits",label:"Bit depth",unit:"bit",min:1,max:32,step:.1,default:8},{kind:"number",key:"samples",label:"Sample hold",unit:"x",min:1,max:250,step:1,default:1,hint:"Repeats each sample N times, a crude downsample."},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-bitcrush"},{id:"pitchshift",label:"Pitch shift",group:"time",description:"Shifts pitch up or down without changing playback speed. Adds ~50 ms of latency.",params:[{kind:"number",key:"semitones",label:"Semitones",unit:"st",min:-12,max:12,step:1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-pitchshift"},{id:"delay",label:"Delay",group:"time",description:"Repeating echoes behind the dry signal.",params:[{kind:"number",key:"time",automatable:!0,label:"Time",unit:"ms",min:1,max:5e3,step:1,default:250,scale:"log"},{kind:"number",key:"feedback",automatable:!0,label:"Feedback",unit:"",min:.01,max:.95,step:.01,default:.35},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.4}],web:"delay-feedback"},{id:"chorus",label:"Chorus",group:"time",description:"Detuned copies of the signal for width and thickness.",params:[{kind:"number",key:"delay",automatable:!0,label:"Delay",unit:"ms",min:1,max:100,step:.1,default:7},{kind:"number",key:"depth",automatable:!0,label:"Depth",unit:"ms",min:0,max:10,step:.01,default:2},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.01,max:10,step:.01,default:1},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.5}],web:"chorus-lfo"},{id:"phaser",label:"Phaser",group:"time",description:"Sweeping notches moving through the spectrum.",params:[{kind:"number",key:"in_gain",automatable:!0,label:"Input",unit:"",min:0,max:1,step:.01,default:.4},{kind:"number",key:"out_gain",automatable:!0,label:"Output",unit:"",min:0,max:2,step:.01,default:.74},{kind:"number",key:"delay",label:"Delay",unit:"ms",min:.1,max:5,step:.1,default:3},{kind:"number",key:"decay",label:"Decay",unit:"",min:0,max:.99,step:.01,default:.4},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.1,max:2,step:.01,default:.5},{kind:"enum",key:"type",label:"Waveform",options:[{value:"0",label:"Triangular"},{value:"1",label:"Sinusoidal"}],default:"0"}],web:"allpass-phaser"},{id:"reverb",label:"Reverb",group:"time",description:"Room tail. Both ends convolve the same generated impulse, so preview matches render.",params:[{kind:"number",key:"size",label:"Room size",unit:"",min:.05,max:1,step:.01,default:.7},{kind:"number",key:"damping",label:"Damping",unit:"",min:0,max:1,step:.01,default:.5,hint:"Higher rolls the top off the tail faster."},{kind:"number",key:"wet",automatable:!0,label:"Wet",unit:"",min:0,max:1,step:.01,default:.35},{kind:"number",key:"dry",automatable:!0,label:"Dry",unit:"",min:0,max:1,step:.01,default:.7}],web:"convolver"}],Mc=new Map(qg.map(e=>[e.id,e]));function ti(e){return Mc.get(e)}var VG=qg.map(e=>e.id);function ni(e,t){let n=Mc.get(e);if(!n)return{};let r={};for(let o of n.params){let i=t?.[o.key];if(o.kind==="enum"){let l=o.options.some(s=>s.value===i);r[o.key]=l?i:o.default;continue}let a=typeof i=="number"?i:typeof i=="string"&&i.trim()!==""?Number(i):Number.NaN;r[o.key]=Number.isFinite(a)?Math.min(o.max,Math.max(o.min,a)):o.default}return r}var Fn=class extends Error{constructor(t){super(t),this.name="AudioFxChainError"}};function zg(e){let t;try{t=JSON.parse(e)}catch(o){throw new Fn(`Chain file is not valid JSON: ${o.message}`)}if(typeof t!="object"||t===null)throw new Fn("Chain file must be a JSON object.");let n=t;if(n.version!==Wg)throw new Fn(`Unsupported chain version: ${String(n.version)}`);if(!Array.isArray(n.nodes))throw new Fn("Chain file is missing a `nodes` array.");let r=n.nodes.map(jT);return{version:Wg,nodes:r}}function ri(e){return e.nodes.filter(t=>t.enabled!==!1)}function jT(e,t){if(typeof e!="object"||e===null)throw new Fn(`Node ${t} is not an object.`);let n=e;if(typeof n.type!="string"||!Mc.has(n.type))throw new Fn(`Node ${t} has unknown effect type: ${String(n.type)}`);return YT({type:n.type,id:ms(n.id),fromCarve:$g(n.fromCarve),fromPreset:ms(n.fromPreset),label:ms(n.label),fromEq:ms(n.fromEq),fromLeveller:$g(n.fromLeveller),presetAmount:KT(n.presetAmount),enabled:n.enabled!==!1,params:ni(n.type,n.params??void 0)})}function ms(e){return typeof e=="string"&&e?e:void 0}function $g(e){return e===!0?!0:void 0}function KT(e){if(!(typeof e!="number"||!Number.isFinite(e)))return Math.min(1,Math.max(0,e))}function YT(e){for(let t of Object.keys(e))e[t]===void 0&&delete e[t];return e}function XT(e){return 10**(e/20)}var gr=XT(12);function Ve(e){return Number.isFinite(e)?Math.max(0,Math.min(gr,e)):1}function hs(e,t){return Ve(e*t)}function jg(e,t){return t?1:Ve(e)}function ps(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function Kg(e,t){let n=typeof HTMLMediaElement>"u"?void 0:Object.getOwnPropertyDescriptor(HTMLMediaElement.prototype,"volume"),r=n?.get,o=n?.set;if(!r||!o)return t();let i=Number(r.call(e));Object.defineProperty(e,"volume",{configurable:!0,get:()=>i,set:a=>{i=Number(a),o.call(e,ps(i))}});try{return t()}finally{delete e.volume,o.call(e,ps(i))}}var on="data-automation",JG=on.slice(5),bs=1,JT=512,rn=class extends Error{constructor(t){super(t),this.name="AudioAutomationError"}},Wr="volume",ys="rate";function ii(e){if(e===Wr)return{kind:"volume"};if(e===ys)return{kind:"rate"};let t=e.split(".");if(t.length===3&&t[0]==="fx"&&t[1]===QT){let o=t[2];return o?{kind:"preset",presetId:o}:null}if(t.length!==3||t[0]!=="fx")return null;let[,n,r]=t;return!n||!r?null:{kind:"fx",nodeId:n,param:r}}var QT="preset";var ZT={min:0,max:1,step:.01,unit:"",label:"Amount",scale:"linear",default:1},xs={min:0,max:gr,step:.01,unit:"",label:"Volume",scale:"linear",default:1};function eR(e){return Math.min(4096,Math.max(2,Math.ceil(e*30)))}function kc(e){return!!e.curve||e.viaX!==void 0&&e.viaY!==void 0}function gs(e,t,n=!1){let r=Ve(t),o=hs(r,e);return n&&r>0?o/r:o}function Yg(e,t,n=!1){let r=[],o=e.points,i=Ve(t);for(let a=0;a<o.length;a+=1){let l=o[a],s=o[a+1];if(!(s!==void 0&&(i*l.v-gr)*(i*s.v-gr)<0)){r.push({...l,v:gs(l.v,t,n)});continue}if(r.push({t:l.t,v:gs(l.v,t,n)}),kc(l)){let d=eR(s.t-l.t);for(let m=1;m<d;m+=1){let f=l.t+(s.t-l.t)*m/d;r.push({t:f,v:gs(Wt(e,f),t,n)})}}else{let d=l.t+(gr/i-l.v)/(s.v-l.v)*(s.t-l.t);r.push({t:d,v:gs(gr/i,i,n)})}}return r}var Xg={min:Qo,max:Zo,step:.05,unit:"x",label:"Speed",scale:"log",default:1};function Lc(e,t){let n=ii(e);if(!n)return null;if(n.kind==="volume")return xs;if(n.kind==="rate")return Xg;if(n.kind==="preset")return t?.nodes.some(l=>l.fromPreset===n.presetId)?{...ZT,label:`${n.presetId} \xB7 Amount`}:null;let r=t?.nodes.find(a=>a.id===n.nodeId);if(!r)return null;let o=ti(r.type),i=o?.params.find(a=>a.key===n.param);return!i||i.kind!=="number"?null:{min:i.min,max:i.max,step:i.step,unit:i.unit,label:`${o?.label??r.type} \xB7 ${i.label}`,scale:i.scale==="log"&&i.min>0?"log":"linear",default:i.default}}function oi(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 tR(e){let t=oi(e);return t===null||t===0?0:Math.min(1,Math.max(-1,t))}function Jg(e,t){let n=oi(e),r=oi(t);if(n===null||r===null)return null;let o=l=>Math.min(.999,Math.max(.001,l)),i=o(n),a=o(r);return Math.abs(i-a)<1e-6?null:{x:i,y:a}}function nR(e){let t=tR(e?.curve),n=Jg(e?.viaX,e?.viaY);return{...t?{curve:t}:{},...n?{viaX:n.x,viaY:n.y}:{}}}function rR(e,t){let n=oi(e?.t),r=oi(e?.v);if(n===null||r===null)return null;let o=t?Math.min(t.max,Math.max(t.min,r)):r;return{t:Math.max(0,n),v:o,...nR(e)}}function Qg(e,t){let n=e.map(o=>rR(o,t)).filter(o=>o!==null).sort((o,i)=>o.t-i.t),r=[];for(let o of n)r.length>0&&r[r.length-1].t===o.t?r[r.length-1]=o:r.push(o);return r.slice(0,JT)}function oR(e){let t=[];for(let n of e.lanes){if(!ii(n.target))continue;let r=n.target===Wr?xs:n.target===ys?Xg:null,o=Qg(n.points??[],r);o.length>0&&t.push({target:n.target,points:o})}return{version:bs,lanes:t}}function Zg(e,t){let n=[];for(let r of e.lanes){let o=Lc(r.target,t);if(!o)continue;let i=Qg(r.points,o);i.length>0&&n.push({target:r.target,points:i})}return{version:bs,lanes:n}}function Ss(e){let t;try{t=JSON.parse(e)}catch(o){throw new rn(`Automation is not valid JSON: ${o.message}`)}if(typeof t!="object"||t===null)throw new rn("Automation must be a JSON object.");let n=t;if(n.version!==bs)throw new rn(`Unsupported automation version: ${String(n.version)}`);if(!Array.isArray(n.lanes))throw new rn("Automation is missing a `lanes` array.");let r=n.lanes.map((o,i)=>{if(typeof o!="object"||o===null)throw new rn(`Lane ${i} is not an object.`);let a=o;if(typeof a.target!="string"||!ii(a.target))throw new rn(`Lane ${i} has an unreadable target: ${String(a.target)}`);if(!Array.isArray(a.points))throw new rn(`Lane ${i} is missing a \`points\` array.`);return{target:a.target,points:a.points}});return oR({version:bs,lanes:r})}function iR(e,t){return t?Math.pow(e,Math.pow(2,2*t)):e}function aR(e,t){let n=e-.5,r=t-.5,o=.999,i=1e6,a=n>0?n/(o-e):n<0?-n/(e-(1-o)):0,l=r>0?r/(o-t):r<0?-r/(t-(1-o)):0,s=Math.min(i,Math.max(1,a,l));return{cx:e+n/s,cy:t+r/s,w:s}}function sR(e,t,n){let{cx:r,cy:o,w:i}=aR(t,n),a=2-2*i,l=e*a-1+2*i*r,s=-e*a-2*i*r,c=lR(l,s,e),d=1-c,m=d*d+2*i*c*d+c*c;return m>0?(2*i*o*c*d+c*c)/m:e}function lR(e,t,n){if(Math.abs(e)<1e-12)return Math.abs(t)<1e-12?n:-n/t;let r=Math.sqrt(Math.max(0,t*t-4*e*n)),o=(-t+r)/(2*e),i=(-t-r)/(2*e),a=l=>l>=-1e-9&&l<=1+1e-9;return a(o)?Math.min(1,Math.max(0,o)):a(i)?Math.min(1,Math.max(0,i)):n}function uR(e,t){let n=Jg(t.viaX,t.viaY);return n?sR(Math.min(1,Math.max(0,e)),n.x,n.y):iR(e,t.curve)}function cR(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 Wt(e,t,n="linear"){let r=e.points;if(r.length===0)return 0;let o=r[0];if(t<=o.t)return o.v;let i=r[r.length-1];if(t>=i.t)return i.v;let a=0,l=r.length-1;for(;l-a>1;){let m=a+l>>1;r[m].t<=t?a=m:l=m}let s=r[a],c=r[l],d=c.t-s.t;return d<=0?c.v:cR(s.v,c.v,uR((t-s.t)/d,s),n)}function e0(e){return e.points.length<=1||e.points.every(t=>t.v===e.points[0].v)}function t0(e,t,n,r,o="linear"){let i=Math.max(2,Math.floor(r)),a=new Float32Array(i),l=n-t;for(let s=0;s<i;s+=1)a[s]=Wt(e,t+l*s/(i-1),o);return a}var Es=new Map,dR=64;function Nc(e,t=Wr){let n=`${t}\0${e}`,r=Es.get(n);if(r!==void 0)return r;let o=null;try{o=Ss(e).lanes.find(i=>i.target===t)??null}catch{o=null}return Es.size>dR&&Es.clear(),Es.set(n,o),o}function n0(e,t){let n=(typeof e.getAttribute=="function"?e.getAttribute(on):null)??"";if(!n)return null;let r=Nc(n);return!r||r.points.length===0?null:Wt(r,t)}var r0=48,o0=new WeakMap;function fR(e){let t=e.points,n=t[0].v,r=t[t.length-1].v,o=[0],i=[0],a=s=>{let c=o[o.length-1];if(s<=c)return;let d=Wt(e,c,"log");o.push(s),i.push(i[i.length-1]+(d+Wt(e,s,"log"))/2*(s-c))},l=Math.max(0,t[0].t);a(l);for(let s=1;s<t.length;s+=1){let c=t[s-1].t,d=t[s].t;if(!(d<=0))for(let m=1;m<=r0;m+=1)a(Math.max(c,0)+(d-c)*m/r0)}return{ts:Float64Array.from(o),ss:Float64Array.from(i),firstRate:n,lastRate:r}}function i0(e){let t=o0.get(e);return t||(t=fR(e),o0.set(e,t)),t}function Fc(e){return typeof e!="number"&&e.points.length>0}function ai(e,t){return typeof e=="number"?e:Fc(e)?Wt(e,t,"log"):1}function a0(e,t,n){let r=0,o=e.length-1;for(;o-r>1;){let i=r+o>>1;e[i]<=n?r=i:o=i}return t[r]+(t[o]-t[r])*(n-e[r])/(e[o]-e[r])}function Dn(e,t){if(typeof e=="number")return t*e;if(!Fc(e))return t;let{ts:n,ss:r,firstRate:o,lastRate:i}=i0(e),a=n.length-1;return t<=0?t*o:t>=n[a]?r[a]+(t-n[a])*i:a0(n,r,t)}function an(e,t){if(typeof e=="number")return t/e;if(!Fc(e))return t;let{ts:n,ss:r,firstRate:o,lastRate:i}=i0(e),a=n.length-1;return t<=0?t/o:t>=r[a]?n[a]+(t-r[a])/i:a0(r,n,t)}function mR(e){return e?Nc(e,ys):null}function s0(e,t){return mR(e)??t}var oB=[{id:"montage",label:"Montage",points:[[0,.9],[.15,.3],[.5,2.5],[.85,.3],[1,.9]]},{id:"hero",label:"Hero",points:[[0,1],[.25,1.6],[.5,.25],[.75,1.6],[1,1]]},{id:"bullet",label:"Bullet",points:[[0,3],[.4,3],[.5,.15],[.6,3],[1,3]]},{id:"jump-cut",label:"Jump cut",points:[[0,.5],[.24,.5],[.26,3],[.5,3],[.52,.5],[.74,.5],[.76,3],[1,3]]},{id:"flash-in",label:"Flash in",points:[[0,.3],[.6,.6],[1,5]]},{id:"flash-out",label:"Flash out",points:[[0,5],[.4,.6],[1,.3]]},{id:"ramp-in",label:"Ramp in",points:[[0,.5],[1,1]]},{id:"ramp-out",label:"Ramp out",points:[[0,1],[1,.5]]},{id:"slowmo-middle",label:"Slow-mo middle",points:[[0,1],[1/3,.35],[2/3,.35],[1,1]]}];function Ue(e){return Nn(e)}function mt(e){return Bg(t=>e.getAttribute(t),Te(e)?e.defaultPlaybackRate:1)}function Et(e){return s0(e.getAttribute("data-automation"),mt(e))}function vt(e){return ds(t=>e.getAttribute(t))}function Vt(e,t){return pR(t,vt(e),Et(e))}function Vr(e){let t=Tc({tag:"video",authoredDurationSeconds:_c(n=>e.getAttribute(n)),sourceDurationSeconds:Number.isFinite(e.duration)?e.duration:null,mediaStartSeconds:vt(e),playbackRate:mt(e)});return t.source==="media"?Vt(e,e.duration):t.seconds}function $r(e,t=0){return!Qe(e)||!e.hasAttribute("data-start")&&!e.hasAttribute("data-track-index")?null:Tc({tag:"img",authoredDurationSeconds:Ug(n=>e.getAttribute(n),t),sourceDurationSeconds:null,mediaStartSeconds:0,playbackRate:1}).seconds}function pR(e,t,n){return typeof n=="number"?Cc(e,t,n):Number.isFinite(e)?an(n,Math.max(0,e-t)):null}var hR=e=>e.paused?.()===!0?(e.startTime?.()??0)+(e.totalDuration?.()??0)/Math.abs(e.timeScale?.()||1):0;function sn(e){try{if(typeof e?.duration!="function")return null;let t=e.getChildren?.(!1,!1,!0),n=Array.isArray(t)?t:[],r=Math.max(Number(e.duration()),...n.map(hR));return Number.isFinite(r)?r:null}catch(t){return $("runtime.timelineDuration",t),null}}function br(e){if(e==null||e.trim()==="")return null;let t=Number.parseFloat(e);return Number.isFinite(t)&&t>0?t:null}function qr(e){if(e==null||e.trim()==="")return null;let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:null}function gt(e=document){let t=e.querySelector('[data-composition-id][data-root="true"]');return Ce(t)?t:e.querySelector("[data-composition-id]")}var gR=new Set(["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"]);function Pc(e){return e.id||e.getAttribute("data-hf-id")||null}function bR(e){return Ue(e)}function yR(e,t){let n=e.getAttribute("data-composition-id");if(!n)return null;let r=sn(t[n]);return r!=null&&r>0?r:null}function xR(e){return Te(e)?Number.isFinite(e.duration)?Vt(e,e.duration):null:$r(e)}function SR(e,t,n,r){let o=bR(e.getAttribute("data-duration"));return o!=null&&o>0?o:yR(e,t)??xR(e)??Math.max(0,n-r)}function ER(e){for(let[t,n]of e){let r=t.parentElement;for(;r;){let o=e.get(r);if(o){n.parentId=o.id,o.children.push(n);break}r=r.parentElement}}}function l0(e){let{startResolver:t,timelineRegistry:n,rootDuration:r}=e,o=new Map,i=gt(),a=0;for(let l of document.querySelectorAll("[data-start]")){if(l===i||gR.has(l.tagName))continue;let s=t.resolveStartForElement(l,0);if(SR(l,n,r,s)<=0)continue;let c={id:Pc(l)??`__clip-${a++}`,element:l,parentId:null,children:[]};o.set(l,c)}return ER(o),{roots:Array.from(o.values()).filter(l=>l.parentId===null)}}var Dc="css:root",u0=["backdrop-filter","clip-path","filter","mask","mask-border-source","mask-image","perspective","rotate","scale","transform","translate","-webkit-mask-image"],vR=new Set([...u0,"contain","isolation","mask-border","mix-blend-mode","opacity"]),AR=new Set(["absolute","relative"]),wR=new Set(["flex","inline-flex","grid","inline-grid"]),_R=new Set(["layout","paint","strict","content"]),CR=new Set(["size","inline-size"]);function TR(e){return e.position==="fixed"||e.position==="sticky"}function RR(e,t){if(t.zIndex==="auto"||t.zIndex==="")return!1;if(AR.has(t.position))return!0;let n=e.parentElement?e.ownerDocument.defaultView?.getComputedStyle(e.parentElement).display:null;return n!=null&&wR.has(n)}function MR(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:u0.some(r=>{let o=e.getPropertyValue(r);return o!==""&&o!=="none"})}function kR(e){return e.getPropertyValue("contain").split(/\s+/).some(n=>_R.has(n))?!0:CR.has(e.getPropertyValue("container-type"))}function LR(e){return e.getPropertyValue("will-change").split(",").map(t=>t.trim()).some(t=>vR.has(t))}function NR(e,t){return e.hasAttribute(fr)||TR(t)||RR(e,t)||MR(t)||kR(t)?!0:LR(t)}function FR(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 vs(e,t){let n=t?.get(e.parentElement);if(n!==void 0)return n;let r=PR(e);return t?.set(e.parentElement,r),r}function PR(e){let t=e.ownerDocument.defaultView;if(!t)return Dc;let n=e.parentElement;for(;n&&n!==e.ownerDocument.documentElement;){try{if(NR(n,t.getComputedStyle(n)))return FR(n)}catch{return Dc}n=n.parentElement}return Dc}var As="data-hf-media-start-basis";function c0(e){return e?.trim().toLowerCase()==="global"?"global":"local"}function DR(e){return c0(e.basis)==="global"?e.authoredStart:e.hostStart+e.authoredStart}function d0(e){return m0(e)?DR({authoredStart:e.authoredStart,hostStart:e.hostStart,basis:e.basis}):e.ordinaryStart()}function f0(e){return m0(e)&&c0(e.basis)==="global"}function m0(e){return!e.hasAutoStart&&e.authoredStart!=null&&e.hostStart!==0}function Ic(e){return ds(t=>e.getAttribute(t))}function p0(e,t){return e-Ic(t)}function yr(e,t){return t.reduce((n,r)=>{let o=Math.max(n.start,r.start);return{start:o,end:Math.max(o,Math.min(n.end,r.end))}},e)}function lt(e){let t=e.timelineRegistry??{},n=e.includeAuthoredTimingAttrs??!1,r=e.documentRef??document,o=new WeakMap,i=new WeakMap,a=new Set,l=T=>(T.hasAttribute("data-composition-id")?T.parentElement:T)?.closest("[data-composition-id]")??null,s=(T,F)=>{let W=l(F);if(W){for(let X of W.querySelectorAll(`[id="${T}"]`))if(l(X)===W)return X}let B=r.getElementById(T);return B||(Array.from(r.querySelectorAll("[data-composition-id]")).find(X=>X.getAttribute("data-composition-id")===T)??null)},c=(T,F)=>n?T.getAttribute(F):null,d=T=>Br({start:0,duration:T.getAttribute("data-duration"),authoredDuration:c(T,"data-hf-authored-duration")})?.duration??Br({start:H(T,0),end:T.getAttribute("data-end"),authoredEnd:c(T,"data-hf-authored-end")})?.duration??null,m=T=>T!=null&&Number.isFinite(T)&&T>0?T:null,f=T=>{let F=T.getAttribute("data-composition-id");return F?m(sn(t[F])):null},p=T=>{let F=i.get(T);if(F!==void 0)return F;let W=d(T)??m(Te(T)?Vt(T,T.duration):null)??m($r(T))??f(T);return i.set(T,W),W},b="[data-composition-src], [data-composition-id], [data-composition-file]",y=T=>T.matches(b),x=T=>!T.hasAttribute("data-composition-id")||cs(T.getAttribute("data-start"))?null:T.parentElement?.closest(`[data-start], ${b}`)??null,v=(T,F)=>p0(H(T,F),x(T)??T),E=(T,F)=>{let W=T.hasAttribute("data-composition-id")?T.parentElement?.closest("[data-composition-id]"):T.closest("[data-composition-id]");return W?v(W,F):0},C=(T,F)=>{let W=cs(T.getAttribute("data-start"));if(!W){let j=x(T);return j?H(j,F):F}if(W.kind==="absolute")return E(T,F)+Math.max(0,W.value);let B=s(W.refId,T);if(!B)return F;let X=H(B,0),ae=p(B)??0,N=Math.min(0,E(T,0));return Math.max(N,X+ae+W.offset)},H=(T,F)=>{let W=o.get(T);if(W!==void 0)return W??F;if(a.has(T))return F;a.add(T);try{let B=C(T,F);return o.set(T,B),B}finally{a.delete(T)}},V=T=>{let F=T.closest("[data-composition-id]");return{authoredStart:Ue(T.getAttribute("data-start")),hostStart:F?v(F,0):0,hasAutoStart:T.hasAttribute("data-hf-auto-start"),basis:T.getAttribute(As)}};return{resolveStartForElement:(T,F=0)=>H(T,Math.max(0,F)),resolveDurationForElement:T=>p(T),resolveMediaStartForElement:T=>{let F=V(T);return d0({...F,ordinaryStart:()=>H(T,F.hostStart)})},resolveHostStartForElement:T=>E(T,0),resolveHostSlotsForElement:T=>{let F=[];for(let W=T.parentElement;W;W=W.parentElement){if(!y(W)||x(W)||Ic(W)<=0)continue;let B=H(W,0),X=d(W);F.push({start:B,end:X?B+X:1/0})}return F},isRootGlobalMediaStartForElement:T=>Te(T)&&f0(V(T))}}var si=e=>4*Number.EPSILON*Math.max(1,Math.abs(e));function zr(e,t){return!Number.isFinite(e)||!Number.isFinite(t)?e===t:Math.abs(e-t)<=si(Math.max(Math.abs(e),Math.abs(t)))}var h0=(e,t)=>e>=t||zr(e,t),In=(e,t,n)=>h0(e,t)&&e<n&&!zr(e,n),IR=1e-6,jr=(e,t,n,r)=>In(e,t,n)||h0(e,t)&&r>0&&n>=r-IR;var OR=["width","height","top","left","right","bottom","inset","object-fit","object-position","z-index","opacity","visibility","filter","mix-blend-mode","backdrop-filter","border-width","border-style","border-color","border-radius","overflow","clip-path","mask","mask-image","mask-size","mask-position","mask-repeat","transform","transform-origin","translate","rotate","scale","box-sizing"];function Oc(e){return Number.isFinite(e)&&e>0?e:30}function Hc(e){return Number.isFinite(e)&&e>0?e:0}function Gc(e,t){let n=Oc(t);return Math.floor(Hc(e)*n+1e-9)/n}function b0(e,t,n){let r=Number.isInteger(n)?n:1;if(r<=1)return Gc(e,t);let o=Oc(t)*r;return Math.round(Hc(e)*o)/o}function g0(e,t){let n=Oc(t),r=Hc(e),o=r*n,i=Math.round(o);return Math.abs(o-i)<=.001?i/n:r}function ws(e,t,n){return{start:g0(e,n),end:Number.isFinite(t)?g0(t,n):t}}function y0(e,t,n=OR){for(let r of n){let o=t.getPropertyValue(r);o&&e.setProperty(r,o)}}function Bc(e){let t=e.trim().toLowerCase();return!(!t||t==="main"||t.includes("caption")||t.includes("ambient"))}var li="hf-runtime-filler",HR=["seconds-time","rational-fps","seek-keep-playing","composition-manifest-v1","runtime-data","play-range"];function GR(e,t){let n=Math.abs(e),r=Math.abs(t);for(;r!==0;){let o=n%r;n=r,r=o}return n||1}function BR(e){let t=Number.isFinite(e)&&e>0?e:30,n=Math.abs(t*1001-Math.round(t*1001))<1e-6,r=Number.isInteger(t)?1:n?1001:1e6,o=Math.round(t*r),i=GR(o,r);return{numerator:o/i,denominator:r/i}}function x0(e,t,n){return Math.max(e,(Math.ceil(t*n-1e-6)-1)/n)}function Uc(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 _s(e){return{protocolVersion:1,capabilities:HR,fps:BR(e)}}function UR(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function S0(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=Uc(n.fps);return r===null||!UR(n.capabilities)?{status:"unsupported",code:"invalid_protocol_metadata",receivedVersion:n.protocolVersion}:{status:"supported",fps:r,metadata:n}}var E0=e=>e!==null&&Number.isFinite(e)&&e>0;function Kr(e){let t=e.clipEndsSeconds.filter(r=>r===null).length;if(E0(e.authoredDurationSeconds))return{seconds:e.authoredDurationSeconds,source:"authored",pendingClips:t};let n=e.clipEndsSeconds.filter(E0);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"}}function Wc(){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 Yr=7200,ln=1/60,ui=e=>e!==null&&e>ln?e:null;function v0(e){return{width:qr(e.getAttribute("data-width")),height:qr(e.getAttribute("data-height"))}}function A0(e,t){let n=[];for(let r of e.querySelectorAll("video[data-start], audio[data-start]")){let o=t.mediaStart(r);if(!Number.isFinite(o))continue;let i=t.mediaDuration(r);i==null||i<=ln||n.push(Math.max(0,o)+i)}return ui(Kr({authoredDurationSeconds:null,clipEndsSeconds:n}).seconds)}function w0(e,t){let n=[];for(let o of e.querySelectorAll("[data-composition-id][data-start]")){if(o.parentElement?.closest("[data-composition-id]")!==e)continue;let i=t.resolveStartForElement(o,0),a=t.resolveDurationForElement(o);!Number.isFinite(i)||a==null||a<=0||n.push(Math.max(0,i)+a)}let r=Ue(e.getAttribute("data-duration"));return ui(Kr({authoredDurationSeconds:null,clipEndsSeconds:[r,...n]}).seconds)}var WR=e=>e.hasAttribute("data-composition-id")||e.hasAttribute("data-composition-src");function _0(e,t,{unregisteredLottie:n}){let r=[];for(let i of e.querySelectorAll("[data-start]")){let a=t.resolveStartForElement(i,0);if(!Number.isFinite(a))continue;let l=t.resolveDurationForElement(i);l!=null?r.push(Math.max(0,a)+l):(Te(i)||WR(i))&&r.push(null)}(n||e.querySelector("[data-lottie-src]"))&&r.push(null);let o=Kr({authoredDurationSeconds:null,clipEndsSeconds:r});return o.pendingClips>0?{...o,seconds:null,source:"unresolved",reason:"a clip's length is pending"}:o}function C0(e){if(e.declared!==null&&Number.isFinite(e.declared)&&e.declared>0)return e.declared;let t=ui(e.timeline()),n=Math.max(0,...e.floors().map(s=>s??0)),r=Number.isFinite(e.fallback)&&e.fallback>ln?e.fallback:0,o=Math.max(n,r),a=t!==null&&t>=Yr&&ui(o)!==null?null:t,l;return a!==null?l=Math.max(a,o):ui(n)!==null?l=o:r>0?l=r:l=e.derived(),l>0?l:0}function Cs(e,t){let n=e.tagName.toLowerCase();if(n==="script"||n==="style"||n==="link"||n==="meta")return null;let o=n==="video"||n==="audio"?t.resolver.resolveMediaStartForElement(e):t.resolver.resolveStartForElement(e,0),i=t.resolver.resolveDurationForElement(e),a=e.getAttribute("data-composition-id");if(a){let s=t.timelineRegistry[a],c=sn(s);!(e.hasAttribute("data-duration")||e.hasAttribute("data-end")||e.hasAttribute(kn)||e.hasAttribute(Ln))&&(i==null||i<=0)&&c!=null&&c>0&&(i=c)}let l=a!==null&&e===gt(e.ownerDocument);return{start:o,end:!l&&i!=null&&i>0?o+i:Number.POSITIVE_INFINITY}}function Ts(e,t){let n=Cs(e,t);if(!n)return!1;let r=t.exportRenderSeek?ws(n.start,n.end,t.canonicalFps):n;return jr(t.currentTime,r.start,r.end,t.compositionDuration)}function di(e){return Ue(e)}function fi(e){let t=e.getAttribute("data-duration"),n=e.getAttribute(kn),r=Br({start:0,duration:t,authoredDuration:n})?.duration;return r??([t,n].map(di).some(i=>i!=null&&i<=0)?0:null)}function T0(e){return Br({start:0,end:e.getAttribute("data-end"),authoredEnd:e.getAttribute(Ln)})?.end??null}function Vc(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 $c(...e){let t=e.filter(n=>Number.isFinite(n??null));return t.length===0?null:Math.max(...t)}function Xr(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 mi(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 R0(e){let t=e.getAttribute("src")??e.getAttribute("data-src");if(t)return mi(t);let n=e.getAttribute("data-composition-src");if(n)return mi(n);let r=e.querySelector("img[src], video[src], audio[src], source[src]");return r?mi(r.getAttribute("src")):null}function $R(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 qR(e){if(!e)return null;let t;try{t=new URL(e,document.baseURI).pathname.split("/").filter(Boolean).at(-1)}catch{t=e.replace(/[?#].*$/,"").split(/[\\/]/).filter(Boolean).at(-1)}if(!t)return null;try{return decodeURIComponent(t)}catch{return t}}function zR(e){let t=e.textContent?.replace(/\s+/g," ").trim();return t?t.length>32?`${t.slice(0,31)}...`:t:null}function ci(e){let t=e.replace(/\.[^.]+$/i,"").replace(/[-_]+/g," ").replace(/\s+/g," ").trim();return t?t.replace(/\b\w/g,n=>n.toUpperCase()):e}function M0(e){return e.getAttribute("data-hf-original-composition-id")??e.getAttribute("data-composition-id")}function jR(e,t,n){let r=e.getAttribute("data-timeline-label")??e.getAttribute("data-label")??e.getAttribute("aria-label")??null;if(r?.trim())return r.trim();let o=M0(e);if(o)return ci(o);let i=e.id;if(i)return ci(i);let a=$R(e);if(a)return ci(a);let l=qR(R0(e));if(l)return ci(l);let s=zR(e);return s||`${ci(t)} ${n+1}`}function qc(e){let t=new Map,r=window.__timelines??{},o=lt({timelineRegistry:r,includeAuthoredTimingAttrs:!0}),i=z=>{if(!z)return null;let Z=sn(r[z]);return Z!=null&&Z>0?Z:null},a=()=>{let z=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if(z.length===0)return null;let Z=0;for(let Q of z){let de=o.resolveMediaStartForElement(Q);if(!Number.isFinite(de))continue;let ge=Vr(Q);ge==null||ge<=0||(Z=Math.max(Z,Math.max(0,de)+ge))}return Z>0?Z:null},l=(z,Z)=>{let Q=[],de=null,ge=null,se=null,ue=z.parentElement;for(;ue;){let re=ue.getAttribute("data-composition-id");re&&(Q.push(re),!se&&ue!==Z&&(se=re),de==null&&(de=o.resolveStartForElement(ue,0)),ge==null&&(ge=di(ue.getAttribute("data-duration"))??i(re)??null)),ue=ue.parentElement}return{parentCompositionId:se,compositionAncestors:Q.reverse(),inheritedStart:de,inheritedDuration:ge}},s=gt(),c=Array.from(document.querySelectorAll("[data-composition-id]")),d=s?.getAttribute("data-composition-id")??null,m=s?o.resolveStartForElement(s,0):0,f=a(),p=f!=null?Math.max(0,f-Math.max(0,m)):null,b=i(d),y=fi(s??document.body),x=$c(...c.filter(z=>z!==s).map(z=>{let Z=o.resolveStartForElement(z,0),Q=o.resolveDurationForElement(z)??i(z.getAttribute("data-composition-id"))??null;return!Number.isFinite(Z)||Q==null||Q<=0?null:Math.max(0,Z)+Q})),v=x!=null?Math.max(0,x-Math.max(0,m)):null,E=typeof b=="number"&&Number.isFinite(b)&&b>0?b:null,C=typeof y=="number"&&Number.isFinite(y)&&y>0?y:null,H=typeof p=="number"&&Number.isFinite(p)&&p>0?p:null,V=typeof v=="number"&&Number.isFinite(v)&&v>0?v:null,M=$c(H,V),R=E!=null&&M!=null&&E>=Yr,T=C??(R?M:$c(E,H,V))??null,W=(T!=null?m+T:null)??(typeof f=="number"&&Number.isFinite(f)&&f>0?f:null),B=(z,Z)=>!Number.isFinite(Z)||Z<=0?0:W==null||!Number.isFinite(W)?Z:!Number.isFinite(z)||z>=W?0:Math.max(0,Math.min(Z,W-z)),X=[],ae=[],N="[data-start], [data-track-index], [data-composition-id], video, audio, img",j=Array.from(document.querySelectorAll(N)),I=0,P=(z,Z)=>{if(z===s||["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"].includes(z.tagName))return null;let Q=l(z,s),de=z.tagName.toLowerCase(),ge=de==="video"||de==="audio"?o.resolveMediaStartForElement(z):o.resolveStartForElement(z,Q.inheritedStart??0),se=z.getAttribute("data-composition-id"),ue=!!se&&se!==d,re=fi(z);if(re==null&&ue&&(re=i(se)),re==null&&Te(z)&&Number.isFinite(z.duration)&&(re=Vt(z,z.duration)),re==null&&(re=$r(z,ge)),re==null){let we=Q.inheritedDuration;if(we!=null&&we>0){let Tt=(Q.inheritedStart??0)+we;re=Math.max(0,Tt-ge)}}if(re==null||re<=0||(re=B(ge,re),re<=0))return null;let Be=o.resolveHostSlotsForElement(z);if(Be.length>0){let we=yr({start:ge,end:ge+re},Be),_e=ue;if(we.end<=we.start&&!_e)return null;ge=we.start,re=we.end-we.start}let Me=se&&se!==d?"composition":de==="video"?"video":de==="audio"?"audio":de==="img"?"image":"element";return{id:Pc(z)??se??null,label:jR(z,Me,X.length),start:ge,duration:re,track:Xr(z,Z),zIndex:Vc(z),stackingContextId:vs(z,t),kind:Me,tagName:de,compositionId:z.getAttribute("data-composition-id"),compositionAncestors:Q.compositionAncestors,parentCompositionId:Q.parentCompositionId,nodePath:null,compositionSrc:mi(z.getAttribute("data-composition-src")),playbackStart:vt(z),playbackRate:mt(z),assetUrl:R0(z),timelineRole:z.getAttribute("data-timeline-role"),timelineLabel:z.getAttribute("data-timeline-label"),timelineGroup:z.getAttribute("data-timeline-group"),timelinePriority:di(z.getAttribute("data-timeline-priority"))}},D=z=>{X.push(z),I=Math.max(I,z.start+z.duration)};for(let[z,Z]of j.entries()){let Q=P(Z,z);Q&&D(Q)}for(let z of e.parked??[]){let Z=e.parkedClips?.get(z.name);if(!Z){let Q=j.length;Z=Array.from(z.host().querySelectorAll(N)).flatMap((de,ge)=>P(de,Q+ge)??[]),e.parkedClips?.set(z.name,Z)}for(let Q of Z)D(Q)}let w=new Set(X.map(z=>z.id)),L=s?.getAttribute("data-composition-id")??null,Y=L?r[L]??null:null;if(Y&&s){let z=Y;if(typeof z.getChildren=="function")try{let Z=z.getChildren(!0,!0,!1)??[],Q=new Map;for(let se of s.children){let ue=se;if(!ue.id)continue;let re=ue.tagName.toLowerCase();re==="script"||re==="style"||re==="link"||Q.set(ue,{id:ue.id,start:1/0,end:-1/0})}let de=se=>{let ue=se;for(;ue;){if(Q.has(ue))return ue;if(ue===s)return null;ue=ue.parentElement}return null};for(let se of Z){if(typeof se.targets!="function"||typeof se.startTime!="function"||typeof se.duration!="function")continue;let ue=se.startTime(),re=se.parent;for(;re&&re!==Y&&typeof re.startTime=="function";)ue+=re.startTime(),re=re.parent;let Be=ue+se.duration();if(!(!Number.isFinite(ue)||!Number.isFinite(Be)))for(let Me of se.targets()){if(!He(Me))continue;let we=de(Me);if(!we)continue;let _e=Q.get(we);_e&&(_e.start=Math.min(_e.start,ue),_e.end=Math.max(_e.end,Be))}}let ge=X.length>0?Math.max(...X.map(se=>se.track))+1:0;for(let[se,ue]of Q){if(ue.start===1/0||ue.end===-1/0)continue;let re=se;if(w.has(re.id))continue;let Be=Math.max(0,ue.end-ue.start);if(Be<=0)continue;let Me=B(ue.start,Be);Me<=0||(I=Math.max(I,ue.start+Me),X.push({id:re.id,label:re.getAttribute("data-timeline-label")??re.getAttribute("data-label")??re.getAttribute("aria-label")??re.id,start:ue.start,duration:Me,track:Xr(re,ge),zIndex:Vc(re),stackingContextId:vs(re,t),kind:"element",tagName:re.tagName.toLowerCase(),compositionId:re.getAttribute("data-composition-id"),compositionAncestors:L?[L]:[],parentCompositionId:L,nodePath:null,compositionSrc:null,playbackStart:vt(re),playbackRate:mt(re),assetUrl:null,timelineRole:re.getAttribute("data-timeline-role"),timelineLabel:re.getAttribute("data-timeline-label"),timelineGroup:re.getAttribute("data-timeline-group"),timelinePriority:di(re.getAttribute("data-timeline-priority"))}),w.add(re.id))}}catch(Z){$("runtime.timeline.site1",Z)}}if(s&&T!=null&&T>0){let z=X.length>0?Math.max(...X.map(Z=>Z.track))+1:0;for(let Z of s.children){let Q=Z;if(!Q.id||w.has(Q.id))continue;let de=Q.getAttribute("data-timeline-role");if(de!=="overlay"&&de!=="persistent-overlay")continue;let ge=Q.tagName.toLowerCase();if(ge==="script"||ge==="style"||ge==="link"||ge==="meta"||window.getComputedStyle(Q).display==="none")continue;let ue=B(0,T);ue<=0||(I=Math.max(I,ue),X.push({id:Q.id,label:Q.getAttribute("data-timeline-label")??Q.getAttribute("data-label")??Q.getAttribute("aria-label")??Q.id,start:0,duration:ue,track:Xr(Q,z),zIndex:Vc(Q),stackingContextId:vs(Q,t),kind:"element",tagName:ge,compositionId:Q.getAttribute("data-composition-id"),compositionAncestors:L?[L]:[],parentCompositionId:L,nodePath:null,compositionSrc:null,playbackStart:vt(Q),playbackRate:mt(Q),assetUrl:null,timelineRole:de,timelineLabel:Q.getAttribute("data-timeline-label"),timelineGroup:Q.getAttribute("data-timeline-group"),timelinePriority:di(Q.getAttribute("data-timeline-priority"))}),w.add(Q.id))}}for(let z of c){if(z===s)continue;let Z=z.getAttribute("data-composition-id");if(!Z||!Bc(Z))continue;let Q=o.resolveStartForElement(z,0),de=fi(z);if((de==null||de<=0)&&T0(z)!=null){let re=T0(z);de=Math.max(0,re-Q)}let ge=i(Z),se=de&&de>0?de:ge;if(se==null||se<=0)continue;let ue=B(Q,se);ue<=0||ae.push({id:Z,label:z.getAttribute("data-label")??M0(z)??Z,start:Q,duration:ue,thumbnailUrl:mi(z.getAttribute("data-thumbnail-url")),avatarName:null})}let te=Math.max(I||0,T??0),he=te>0?te:1,Ee=Math.max(1,Math.ceil(he*Math.max(1,e.canonicalFps)));return{..._s(e.canonicalFps),source:"hf-preview",type:"timeline",compositionContractVersion:1,durationSeconds:he,durationInFrames:Ee,clips:X,scenes:ae,compositionWidth:qr(s?.getAttribute("data-width"))??1920,compositionHeight:qr(s?.getAttribute("data-height"))??1080}}var On=new Map,zc=(e,t="")=>`${t}[${ft}="${CSS.escape(e)}"]`,L0=e=>fi(e)??0,jc=e=>Array.from(e.querySelectorAll("video, audio, [data-composition-id]")).every(t=>L0(t)>0),KR=e=>{let t=e.parentElement;return!e.hasAttribute(Mn)&&!e.hasAttribute("data-hf-original-composition-id")&&(Hn(e)||jc(e))&&t?.hasAttribute("data-composition-id")===!0&&t.closest(`[${ft}]`)===null};function Kc(e){let t=Number(e.getAttribute("data-start")?.trim()||Number.NaN),n=L0(e);return Number.isFinite(t)&&n>0?{start:t,end:t+n}:null}function N0(){return document.querySelector(`meta[name="${Rn}"]`)?Array.from(document.querySelectorAll(`[${ft}]:not(style, script)`)).flatMap(e=>{let t=KR(e)?Kc(e):null;return t?[{name:e.getAttribute(ft),host:e,...t}]:[]}).sort((e,t)=>e.start-t.start):[]}var Rs=()=>N0().filter(({name:e})=>On.has(e)).map(({name:e,start:t,end:n})=>({name:e,start:t,end:n})),YR=10;function Ms(e,t,n){let r=e.find(i=>i.start>t),o=i=>i.start<=t?t<=i.end:n?i.start<=t+YR:i===r;return new Set(e.filter(o).map(i=>i.name))}var Jr=e=>document.querySelector(`${zc(e)}:not(style, script)`),Hn=e=>e.hasAttribute(Tn);function Yc(e){let t=Jr(e);if(!t||Hn(t))return t;for(let r of document.querySelectorAll(zc(e,"script")))r.remove();let n=t.cloneNode(!1);return n.setAttribute(Tn,""),t.replaceWith(n),n}function F0(e){let t=Jr(e),n=On.get(e);if(!t||!Hn(t)||!n)return null;let r=document.createElement("template");r.innerHTML=n.html;let o=document.importNode(r.content.firstElementChild,!0);for(let{name:i,value:a}of Array.from(t.attributes))i!==Tn&&o.setAttribute(i,a);return t.replaceWith(o),{host:o,placeholder:t,scripts:n.scripts.map(i=>i.cloneNode(!0))}}function P0(e=0){On.clear(),ks.clear();let t=N0(),n=Ms(t,e,!1);for(let{name:r,host:o}of t){let i=Array.from(document.querySelectorAll(zc(r,"script")));On.set(r,{html:o.outerHTML,scripts:i.map(a=>a.cloneNode(!0))}),n.has(r)||Yc(r)}}var k0={"data-duration":kn,"data-end":Ln};function XR(e,t,n){let r=new Set([...t.getAttributeNames(),...n.getAttributeNames()].filter(o=>t.getAttribute(o)!==n.getAttribute(o)));for(let o of r){let i=n.getAttribute(o);i===null?e.removeAttribute(o):e.setAttribute(o,i),o in k0&&e.removeAttribute(k0[o])}}function Xc(e,t,n){let r=On.get(e);if(!r)return;ks.delete(e);let o=Jr(e);if(o&&Hn(o)){let i=document.createElement("template");i.innerHTML=r.html,XR(o,i.content.firstElementChild,t)}On.set(e,{html:t.outerHTML,scripts:n.map(i=>i.cloneNode(!0))})}var ks=new Map,D0=e=>{let t=Hn(e)?e.getAttribute(ft):null;return t!==null&&On.has(t)&&e.parentElement?t:null};function Jc(e){let t=D0(e);if(t===null)return null;let n=e.parentElement.cloneNode(!1),r=document.createElement("template");return r.innerHTML=On.get(t).html,n.append(r.content),n.firstElementChild}var I0=()=>Array.from(document.querySelectorAll(`[${Tn}]`)).flatMap(e=>{let t=D0(e);return t===null?[]:[{name:t,host:()=>Jc(e)}]});var JR=e=>(e.timeScale?.()??1)===1&&(e.repeat?.()??0)===0,O0=(e,t)=>t+(e.startTime?.()??0),QR=(e,t)=>t+(e.totalDuration?.()??1/0),ZR=e=>e.targets?.()??[];function e1(e,t){for(let n=He(e)?e:null;n;n=n.parentElement)n.hasAttribute(We)&&t.add(n)}function H0(e,t,n){let r=new Set,o=(c,d)=>d>t&&c<=n,i=c=>c.getChildren?.(!1,!1,!0)??[],a=(c,d)=>c.getChildren?.(!1,!0,!1,t-d)??[],l=(c,d)=>{let m=O0(c,d);if(m>t&&m<=n)for(let f of ZR(c))e1(f,r)},s=(c,d)=>{let m=i(c).every(f=>{let p=O0(f,d);return JR(f)&&(!o(p,QR(f,p))||s(f,p))});if(m)for(let f of a(c,d))l(f,d);return m};return s(e,0)?r:null}var G0=':not([muted]):is(:not([data-has-audio]),[data-has-audio="true"])',D3=`audio[data-start], video[data-start]${G0}`;function Ls(e){if(e.tagName.toLowerCase()!=="video"||e.hasAttribute("muted"))return!1;let t=e.getAttribute("data-has-audio");return t===null||t==="true"}function B0(e){return(e.volume??1)>1||!!(e.fxChain||e.automation||e.audioGroup||e.masterChain)}var pi="data-hf-render-id",U0="data-hf-group-render-id";function Qc(e){return e.getAttribute(pi)||e.id||null}var t1="__render_frame_",n1="__";function r1(e){return`${t1}${e}${n1}`}function o1(e){let t=Qc(e);return t?r1(t):null}function Nt(e){let t=o1(e),n=t?document.getElementById(t):null;if(!n)return null;let r=e.nextElementSibling;for(;r&&r.id!==t;)r=r.nextElementSibling;return r??(r=n),Qe(r)?r:null}function At(e){return e+1e-5}function Ns(e){let t=window.__HF_RENDER_FRAME_VIDEO_IDS;return e.tagName==="VIDEO"&&t?.includes(Qc(e)??"")===!0}function Fs(e){if(Ns(e))return;e.preload!=="auto"&&(e.preload="auto");let t=e.tagName==="VIDEO"&&e.networkState===2;e.readyState<3&&!t&&e.load()}var Zc=new WeakMap;function W0(e){Zc.get(e)?.()}function V0(e,t){if(W0(e),e.tagName!=="VIDEO"||Ns(e))return;let n=()=>{if(!e.isConnected||!e.paused||e.seeking||!t())return;let i=vt(e);if(!(Math.abs(e.currentTime-i)<=.02))try{e.currentTime=At(i)}catch(a){$("runtime.preload.playbackStart",a)}};if(e.readyState>0){n();return}let r=()=>{e.removeEventListener("loadedmetadata",o),e.removeEventListener("error",r),e.removeEventListener("abort",r),Zc.delete(e)},o=()=>{r(),n()};Zc.set(e,r),e.addEventListener("loadedmetadata",o),e.addEventListener("error",r),e.addEventListener("abort",r)}function ed(e){W0(e);for(let t of e.querySelectorAll("source"))t.remove();e.removeAttribute("src"),e.load()}function $0(e){if(e.querySelector("source"))return;let t=e.getAttribute("src");ed(e),t!==null&&e.setAttribute("src",t)}function Ps(e){return Ue(e.getAttribute("data-duration"))!=null}function q0(){let e=window;if(e.__hfMediaDeferral?.disconnect(),e.__hfMediaDeferral=void 0,!ss())return;let t=(n,r)=>{Ue(n.getAttribute("data-start"))!=null&&Ps(n)&&r(n)>0&&(n.preload="none")};e.__hfMediaDeferral=new MutationObserver(n=>{let r=lt({}).resolveMediaStartForElement;for(let o of n)for(let i of o.addedNodes){if(i.nodeType!==1)continue;let a=i;a.matches("video, audio")&&t(a,r);for(let l of a.querySelectorAll("video, audio"))t(l,r)}}),e.__hfMediaDeferral.observe(document.documentElement,{childList:!0,subtree:!0})}var z0=30;function j0(e){z0=Number.isFinite(e)&&e>0?e:30}function Re(e){try{window.parent.postMessage({...e,..._s(z0)},"*")}catch(t){$("bridge.postMessage",t)}}var i1=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(a1(e,t),e.seekMode??"commit"),tick:(e,t)=>t.onTick(),"set-muted":(e,t)=>t.onSetMuted(!!e.muted),"set-volume":(e,t)=>t.onSetVolume(Math.max(0,Math.min(1,Number(e.volume??1)))),"set-media-output-muted":(e,t)=>t.onSetMediaOutputMuted(!!e.muted),"set-native-media-sync-disabled":(e,t)=>t.onSetNativeMediaSyncDisabled(!!e.disabled),"set-web-audio-media-disabled":(e,t)=>t.onSetWebAudioMediaDisabled(!!e.disabled),"set-playback-rate":(e,t)=>t.onSetPlaybackRate(Number(e.playbackRate??1)),"set-idle-heartbeat":(e,t)=>t.onSetIdleHeartbeat(!!e.slow),"set-display-scale":(e,t)=>t.onSetDisplayScale?.(Number(e.scale)),"set-preview-quality":(e,t)=>t.onSetPreviewQuality?.(Number(e.level)),"retry-preview-copies":(e,t)=>t.onRetryPreviewCopies?.(),"request-preview-facts":(e,t)=>t.onRequestPreviewFacts?.(),"set-root-duration":(e,t)=>t.onSetRootDuration(Number(e.durationSeconds??0)),"set-play-range":(e,t)=>t.onSetPlayRange(Number(e.startSeconds??0),e.endSeconds==null?null:Number(e.endSeconds)),"set-color-grading":(e,t)=>t.onSetColorGrading(e.target??null,e.grading??null),"set-color-grading-compare":(e,t)=>t.onSetColorGradingCompare(e.target??null,e.compare??null),"enable-pick-mode":(e,t)=>t.onEnablePickMode(),"disable-pick-mode":(e,t)=>t.onDisablePickMode(),"flash-elements":e=>l1(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 a1(e,t){let n=Number(e.timeSeconds);if(Number.isFinite(n))return Math.max(0,n);let o=Uc(e.fps)??t.getCanonicalFps();return Math.max(0,Number(e.frame??0))/o}function s1(e){let t=S0(e);return t.status!=="unsupported"?!1:(Re({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 l1(e){let t=e.selectors,n=e.duration||800;t&&u1(t,n)}function K0(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"||s1(r))return;let o=r.action;if(typeof o!="string")return;let i=i1.get(o);i&&i(r,e)};return window.addEventListener("message",t),Re({source:"hf-preview",type:"ready"}),t}function u1(e,t){if(!document.getElementById("__hf-flash-styles")){let n=document.createElement("style");n.id="__hf-flash-styles",n.textContent=`
|
|
29
|
+
https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.postcssVersion=new Nf().version,l}let i;return Object.defineProperty(o,"postcss",{get(){return i||(i=o()),i}}),o.process=function(a,l,s){return Fe([o(s)]).process(a,l)},o};Fe.stringify=QL;Fe.parse=XL;Fe.fromJSON=qL;Fe.list=KL;Fe.comment=e=>new jS(e);Fe.atRule=e=>new zS(e);Fe.decl=e=>new KS(e);Fe.rule=e=>new JS(e);Fe.root=e=>new XS(e);Fe.document=e=>new YS(e);Fe.CssSyntaxError=$L;Fe.Declaration=KS;Fe.Container=VL;Fe.Processor=Nf;Fe.Document=YS;Fe.Comment=jS;Fe.Warning=ZL;Fe.AtRule=zS;Fe.Result=JL;Fe.Input=zL;Fe.Rule=JS;Fe.Root=XS;Fe.Node=YL;jL.registerPostcss(Fe);QS.exports=Fe;Fe.default=Fe});function tg(e){return e?/[\w-]/.test(e)||e.charCodeAt(0)>=128:!1}function ng(e){return e===" "||e===" "||e===`
|
|
30
|
+
`||e==="\r"||e==="\f"}var cT=/^[0-9a-fA-F]{1,6}/;function dT(e){let t=e>=55296&&e<=57343;return e===0||e>1114111||t?65533:e}function rg(e,t){return e[t]==="\r"&&e[t+1]===`
|
|
31
|
+
`?t+2:ng(e[t])?t+1:t}function uc(e,t){let n=e[t+1];if(n===void 0||/[\n\r\f]/.test(n))return null;let r=cT.exec(e.slice(t+1,t+7));if(!r)return{value:n,end:t+2};let o=dT(Number.parseInt(r[0],16));return{value:String.fromCodePoint(o),end:rg(e,t+1+r[0].length)}}function fT(e,t){let n=o=>tg(o)&&!/[0-9-]/.test(o),r=o=>e[o]==="\\"&&uc(e,o)!==null;return e[t]==="-"?e[t+1]==="-"||n(e[t+1])||r(t+1):n(e[t])||r(t)}function Qa(e,t){let n=t;for(;e.startsWith("/*",n);){let r=e.indexOf("*/",n+2);n=r<0?e.length:r+2}return n}function jo(e,t){let n=Qa(e,t);for(;ng(e[n]);)n=Qa(e,n+1);return n}function Ko(e,t){if(!fT(e,t))return null;let n=t,r="";for(;n<e.length;){let o=e[n];if(o==="\\"){let i=uc(e,n);if(!i)break;r+=i.value,n=i.end;continue}if(!tg(o))break;r+=o,n+=1}return n===t?null:{value:r,end:n}}var cc=45;function og(e){return e>=48&&e<=57}function mT(e){return e>=128||e===cc||e===95||og(e)||e>=65&&e<=90||e>=97&&e<=122}function pT(e,t){let n=e.charCodeAt(t);return n>=1&&n<=31||n===127?!0:og(n)?t===0||t===1&&e.charCodeAt(0)===cc:!1}function tn(e){let t="";for(let n=0;n<e.length;n+=1){let r=e.charCodeAt(n),o=e[n];r===0?t+="\uFFFD":pT(e,n)?t+=`\\${r.toString(16)} `:n===0&&e.length===1&&r===cc?t+=`\\${o}`:mT(r)?t+=o:t+=`\\${o}`}return t}var ig=/\/\*(?:[^*]|\*(?!\/))*\*\/|\\(?:[0-9a-fA-F]{1,6}(?:\r\n|[ \t\r\n\f])?|[\s\S])|"(?:[^"\\]|\\[\s\S])*"|'(?:[^'\\]|\\[\s\S])*'|\[(?:\/\*(?:[^*]|\*(?!\/))*\*\/|\\[\s\S]|"(?:[^"\\]|\\[\s\S])*"|'(?:[^'\\]|\\[\s\S])*'|[^\]"'\\/]|\/(?!\*))*\]/g;function hT(e){let t=new Array(e.length).fill(!0);for(let n of e.matchAll(ig)){let r=n.index;t.fill(!1,r,r+n[0].length)}return t}function Za(e,t,n){if(t.length===0||!e.includes("#"))return e;let r=new Set(t),o=hT(e),i="",a=0;for(;a<e.length;){let l=o[a]&&e[a]==="#"?Ko(e,a+1):null;l&&r.has(l.value)?(i+=n(l.value),a=l.end):(i+=e[a],a+=1)}return i}function gT(e){let t="";for(let n=0;n<e.length;n+=1){if(e[n]==="\\"){let r=e[n+1];if(r!==void 0&&/[\n\r\f]/.test(r)){n=rg(e,n+1)-1;continue}let o=uc(e,n);if(o){t+=o.value,n=o.end-1;continue}}t+=e[n]}return t}function dc(e){return Array.from(e,t=>{let n=t.charCodeAt(0);return n===0?"\uFFFD":n<32||n===127?`\\${n.toString(16)} `:t==='"'||t==="\\"?`\\${t}`:t}).join("")}function bT(e,t){return e?{kind:"any"}:t===void 0?{kind:"none"}:{kind:"named",prefix:t}}function yT(e,t){return e[t]==="|"&&e[t+1]!=="="}function xT(e,t){let n=e[t]==="*",r=n?{value:"*",end:t+1}:Ko(e,t),o=Qa(e,r?.end??t);if(!yT(e,o))return n?null:r?{token:r,namespace:{kind:"none"}}:null;let i=Ko(e,Qa(e,o+1));return i?{token:i,namespace:bT(n,r?.value)}:null}function ST(e){if(e[0]!=="[")return null;let t=jo(e,1),n=xT(e,t);if(!n)return null;let{token:r,namespace:o}=n;return{name:r.value,rawName:e.slice(t,r.end),namespace:o,end:r.end}}function ET(e,t){let n=/^(?:"((?:\\[\s\S]|[^"\\])*)"|'((?:\\[\s\S]|[^'\\])*)')/.exec(e.slice(t));return n?{value:gT(n[1]??n[2]),end:t+n[0].length}:Ko(e,t)}function vT(e,t){let n=jo(e,t),r=Ko(e,n);if(r){if(!/^[is]$/i.test(r.value))return null;n=jo(e,r.end)}return e[n]!=="]"||n!==e.length-1?null:{flag:r?.value}}function ag(e){let t=ST(e);if(!t)return null;let n=jo(e,t.end),o=["=","~=","|=","^=","$=","*="].find(l=>e.startsWith(l,n));if(!o)return null;let i=ET(e,jo(e,n+o.length));if(!i)return null;let a=vT(e,i.end);return a?{name:t.name,rawName:t.rawName,namespace:t.namespace,operator:o,value:i.value,flag:a.flag}:null}function fc(e,t){return e.replace(ig,n=>n.startsWith("[")?t(n):n)}var kt="data-hf-svg-reference-aliases";function es(e,t,n,r){let o={"=":(m,f)=>m===f,"~=":(m,f)=>m.split(/[ \t\r\n\f]+/).includes(f),"|=":(m,f)=>m===f||m.startsWith(f+"-"),"^=":(m,f)=>m.startsWith(f),"$=":(m,f)=>m.endsWith(f),"*=":(m,f)=>m.includes(f)},i=(m,f,p)=>!f&&p!=="="&&p!=="|="?!1:o[p](m,f),a=m=>m.replace(/[A-Z]/g,f=>f.toLowerCase()),l=m=>{let f=ag(m);if(!f)return m;let{name:p,rawName:b,namespace:y,operator:x,value:v,flag:E}=f;if(y.kind==="named"!=(r!==void 0))return m;let C=E?.toLowerCase()==="i"?a:R=>R,H=a(p),V=n.filter(R=>{let U=y.kind==="none"?R.name:R.localName,T=y.kind==="named"?r.get(y.prefix):null;return(y.kind==="any"||R.namespaceURI===T)&&a(U)===H}),M=new Set([m]);for(let R of V)i(C(R.before),C(v),x)&&M.add(`[${b}="${dc(R.after)}"${E?` ${E}`:""}]`);return M.size===1?m:`:is(${[...M].join(", ")})`};if(r)return fc(e,l);let s=new Map(t.map(({id:m,replacement:f})=>[m,f])),c=new Map;for(let m of n){if(m.name!=="id"||m.before===m.after||s.has(m.before))continue;let f=c.get(m.before);f||(f=new Set([`#${tn(m.before)}`]),c.set(m.before,f)),f.add(`#${tn(m.after)}`)}for(let[m,f]of c)s.set(m,`:is(${[...f].join(", ")})`);let d=Za(e,[...s.keys()],m=>s.get(m));return fc(d,l)}function ur(e,t,n=!0){let r=[],i=(n?[...e.querySelectorAll(`[${t}]`)]:[]).map(l=>l.getAttribute(t)),a=e.getAttribute?.(t);a&&i.unshift(a);for(let l of i){let s;try{s=JSON.parse(l)}catch{continue}if(!Array.isArray(s))continue;let c=s;for(let d of c){if(!wT(d))continue;let{name:m,localName:f,namespaceURI:p,before:b,after:y}=d;r.push({name:m,localName:f,namespaceURI:p,before:b,after:y})}}return r}function wT(e){if(!e||typeof e!="object")return!1;let{name:t,localName:n,namespaceURI:r,before:o,after:i}=e;return typeof t=="string"&&typeof n=="string"&&(r===null||typeof r=="string")&&typeof o=="string"&&typeof i=="string"}function _T(e){let t=[],n=[],r=!1,o,i=new WeakMap,a=(c,d)=>{for(let m of c){if("selectorText"in m){let f=m,p=i.get(f),b=f.selectorText,y=p?.applied===b?p.authored:b,x=es(y,[],n,d);x!==b&&(f.selectorText=x),x===y?i.delete(f):i.set(f,{authored:y,applied:f.selectorText})}"cssRules"in m&&a(m.cssRules,d)}},l=()=>{if(n.length)for(let c of e.document.styleSheets){let d;try{d=c.cssRules}catch{continue}let m=new Map;for(let f of d){if(!("namespaceURI"in f))continue;let{prefix:p,namespaceURI:b}=f;p&&m.set(p,b||null)}m.size&&a(d,m)}},s={rewrite:(c,d=[])=>{if(typeof c!="string"||!c.includes("#")&&!c.includes("["))return c;let m=es(c,d.length?[...d,...t]:t,n);if(m!==c){if(!o){let f=e.document.createElement("div");o=f.matches.bind(f)}o(c)}return m},refresh(){n=ur(e.document,kt).filter(f=>f.before!==f.after);let c=new Set(n.filter(f=>f.name==="id").map(f=>f.before)),d=new Set;t=[];for(let f of e.document.querySelectorAll("[data-hf-authored-id][id]")){let p=f.getAttribute("data-hf-authored-id");if(!p||p===f.id||d.has(p)||c.has(p))continue;d.add(p);let b=dc(p);t.push({id:p,replacement:`:is(#${tn(p)}, [data-hf-authored-id="${b}"])`})}if(l(),r||!t.length&&!n.length)return;let m=e.Element.prototype;m.querySelector=new Proxy(m.querySelector,{apply(f,p,b){return Reflect.apply(f,p,[s.rewrite(b[0])])}}),m.querySelectorAll=new Proxy(m.querySelectorAll,{apply(f,p,b){return Reflect.apply(f,p,[s.rewrite(b[0])])}}),r=!0}};e.__hfSvgSelectorAliases=s,s.refresh()}function cr(){let e=window;e.__hfSvgSelectorAliases?e.__hfSvgSelectorAliases.refresh():_T(e)}function ts(){return globalThis}function Yo(e){let t="unknown error";try{e instanceof Error?(t=`${e.name}: ${e.message}`,t+=TT(e,t)):t=String(e)}catch(n){$("runtime.startupError",n)}t=t.replace(/\s+/g," ").trim(),window.__hfStartupError=`HyperFrames runtime failed: ${t}. Check the composition's scripts and window.__timelines entries; if they look right, report this as a HyperFrames bug.`}var sg="[hyperframes] scene timeline callback threw:";function $(e,t){if(typeof window>"u")return;let n=ts(),r=n.__hf?.onSwallowed;if(r)try{r({label:e,error:t})}catch(o){}(n.__hfDebug||n.__HYPERFRAMES_DEBUG)&&globalThis.console.debug(`[hyperframes] ${e} swallowed:`,t)}function CT(e){let t=/(?:\(|@|\bat )(\S+?):\d+(?::\d+)?\)?$/.exec(e)?.[1];return!t||t.startsWith("hyperframes://")?!1:t.startsWith("hyperframes-composition://")||/\.html?(?:[?#]|$)/i.test(t)||typeof document<"u"&&t===document.URL}function TT(e,t){try{let n=e.stack;if(typeof n!="string")return"";let i=(n===t||n.startsWith(`${t}
|
|
32
|
+
`)||n.startsWith(`${t}\r`)?n.slice(t.length):n).split(/[\r\n]+/).map(s=>s.trim().replace(/\s+/g," ")).filter(s=>/^at\s+\S/.test(s)||/^[^@]*@.+:\d+(?::\d+)?$/.test(s)),a=i.slice(0,3),l=i.find(CT);return l&&!a.includes(l)&&a.push(l),a.length?` [thrown at: ${a.join(" <- ")}]`:""}catch(n){return $("runtime.startupError.stack",n),""}}var ns="hyperframes-studio-preview",lg="capture",dr="data-hf-upcoming",rs="data-hf-preview-lazy";var fr="data-hf-preview-raster",Ut="data-hf-autostamped",We="data-hf-clip-hidden",Lt="data-hf-far-scene",Tn="data-hf-parked-scene",os=[dr,Lt,Tn,rs,fr,Ut];var ug="http://www.w3.org/1999/xhtml";function He(e){return e!=null&&e.nodeType===1}function Ce(e){return He(e)&&e.namespaceURI===ug}function Gr(e,t){return Ce(e)&&e.localName===t}function Ne(e){return Gr(e,"video")}function is(e){return Gr(e,"audio")}function Te(e){return Ne(e)||is(e)}function Qe(e){return Gr(e,"img")}function nn(e){return Gr(e,"canvas")}function cg(e){return Gr(e,"style")}function dg(e){return Gr(e,"link")}function mr(e){return He(e)&&(e.namespaceURI===ug||e.namespaceURI==="http://www.w3.org/2000/svg")}function fg(e,t=""){return e.style.setProperty("visibility","visible",t),e.hasAttribute(We)?(e.removeAttribute(We),function(){e.setAttribute(We,"")}):()=>{}}function mg(){let e=window;return(e.HyperShader!==void 0||e.__hf?.transitions!==void 0)&&e.__hfClipRevealAware!==!0}var bg="data-hf-first-pass-hide",pg="[data-start]:not(video, audio, img) { visibility: hidden !important; }",RT='img[loading="lazy"] { display: none !important; }',hc="data-hf-skip-hidden-images";var yg=`[data-start]:not(video, audio, img, [${dr}], [${Ut}])`,as=`${yg}[${We}]`,xg=`meta[name="${ns}"]`,pc="data-hf-hidden-clip-contents",hg=`[${We}][${We}]`,gg=`[${We}][style*="visibility: hidden"]`,Sg=e=>`${yg}${e} img { display: none !important; }`,Eg=e=>{let t=[e,`${e} *`].flatMap(n=>[n,`${n}::before`,`${n}::after`]).join(", ");return`${e} * { visibility: hidden !important; } ${t} { filter: none !important; }`};function vg(e=()=>!0){return gc(Array.from(document.querySelectorAll(`[${We}]`)).filter(e))}function gc(e){let t=e.map(n=>fg(n));return()=>{for(let n of e)n.style.getPropertyValue("visibility")!=="hidden"&&n.style.setProperty("visibility","hidden","important");for(let n of t)n()}}function mc(e,t,n){let r=document.createElement("style");r.setAttribute(t,""),r.textContent=n,e.appendChild(r)}function ss(){return document.querySelector(xg)!==null}function bc(){return document.querySelector(`style[${hc}]`)!==null}function Ag(){if(typeof document>"u")return;let e=document.head??document.documentElement;if(!e)return;let t=document.querySelector(xg),n=t!==null,r=t?.getAttribute("content")===lg;n&&!r&&!bc()&&mc(e,hc,Sg(hg)),document.querySelector(`style[${pc}]`)||mc(e,pc,Eg(hg));let o=window;if(o.__hfFirstPassHidden||o.__hyperframeRuntimeBootstrapped)return;let i=n?`${pg} ${RT}`:pg;mc(e,bg,i),o.__hfFirstPassHidden=!0}function wg(){let e=window;if(!e.__hfFirstPassHidden)return!1;e.__hfFirstPassHidden=!1;for(let t of document.querySelectorAll(`style[${bg}]`))t.remove();return!0}function _g(){if(!mg())return;let e=document.querySelector(`style[${hc}]`);e&&(e.textContent=Sg(gg));let t=document.querySelector(`style[${pc}]`);t&&(t.textContent=Eg(gg))}var MT=new Set(["transform","translate","rotate","scale"]),ls=`[${fr}]`,kT=`${ls} { will-change: auto !important; }`,Cg=new Set([...os,We]),pr=null,hr=null,us=null,yc=null,St=new Set,Tg=new WeakMap;function LT(e){return e.willChange.split(",").every(t=>MT.has(t.trim()))}function xc(e,t,n=!0){for(let r of n?[null,"::before","::after"]:["::before","::after"]){let o=getComputedStyle(e,r);if(!(r&&o.content==="none")&&(o.position==="fixed"||!t&&(o.zIndex!=="auto"||o.mixBlendMode!=="normal")))return!0}return!1}function NT(e,t){if(t.position==="static")return!1;let n=t.zIndex!=="auto";if(xc(e,n,!1))return!1;for(let r of e.querySelectorAll("*"))if(xc(r,n))return!1;return!0}function Rg(e,t){return`${t.zIndex}|${e.style?.willChange??""}`}function Ec(e,t){if(e===pr)return!1;let n=St.has(e);n&&t&&Xo(e,!1);let r=getComputedStyle(e),i=(n&&!t||LT(r))&&NT(e,r);return i&&Tg.set(e,Rg(e,r)),i}function Xo(e,t){e.toggleAttribute(fr,t),t?St.add(e):St.delete(e)}function FT(e){e.hasAttribute(fr)&&St.add(e)}function Mg(e,t){t!==St.has(e)&&Xo(e,t)}function PT(e,t){Mg(e,Ec(e,t))}function kg(e){let t=e.parentElement?.closest(ls);for(;t;)xc(e,getComputedStyle(t).zIndex!=="auto")&&Xo(t,!1),t=t.parentElement?.closest(ls)}function DT(){let e=[],t=(n,r)=>{for(let o of n){let i=o.type===CSSRule.STYLE_RULE;i&&o.style.getPropertyValue("will-change")&&e.push(r?"*":o.selectorText);let a=o.styleSheet;a&&t(a.cssRules,r),"cssRules"in o&&t(o.cssRules,r||i)}};try{for(let n of[...document.styleSheets,...document.adoptedStyleSheets??[]])n!==pr?.sheet&&t(n.cssRules,!1);document.createDocumentFragment().querySelector(e.join(",")||"*")}catch{return"*"}return e.join(",")}function Lg(){return us??(us=DT())}function Ng(e){if(St.has(e)||e.style?.getPropertyValue("will-change"))return!0;let t=Lg();return t!==""&&e.matches(t)}function Fg(e,t){let n=[];for(let r of[e,...e.querySelectorAll("*")]){if(t.checked.has(r))continue;t.checked.add(r),FT(r);let o=r===e||t.changed.has(r);n.push([r,Ng(r)&&Ec(r,o)])}for(let[r,o]of n)Mg(r,o);if(St.size)for(let[r]of n)kg(r)}function IT(e){if(St.has(e)){let t=getComputedStyle(e);(t.position==="static"||Rg(e,t)!==Tg.get(e))&&PT(e,!0)}kg(e)}function Pg(){for(let e of document.querySelectorAll(ls))Xo(e,!1);St.clear()}function Sc(){Pg(),us=null;let e=[...document.querySelectorAll("*")].filter(t=>Ng(t)&&Ec(t,!0));for(let t of e)Xo(t,!0);vc()}function OT(e,t){!He(e.target)||Cg.has(e.attributeName??"")||(e.attributeName==="style"?IT(e.target):Fg(e.target,t))}function HT(e){return[...e.addedNodes].filter(t=>He(t)&&(t.localName==="style"||t.localName==="link"))}function GT(e){let t=new Set;for(let n of e){let r=n.attributeName;r===null||r==="style"||Cg.has(r)||He(n.target)&&t.add(n.target)}return t}function vc(){let e=St.size>0||Lg()!=="";!hr||e===yc||(yc=e,hr.observe(document.documentElement,{subtree:!0,childList:!0,attributes:e}))}function BT(e){if(e.some(t=>t.removedNodes.length))for(let t of St)t.isConnected||St.delete(t)}function UT(e){let t=e.flatMap(HT);for(let r of t)r.addEventListener("load",()=>hr&&Sc(),{once:!0});if(t.length)return Sc();BT(e);let n={changed:GT(e),checked:new Set};for(let r of e)if(r.type==="attributes")OT(r,n);else for(let o of r.addedNodes)He(o)&&Fg(o,n);vc()}function WT(){hr?.disconnect(),hr=null,pr?.remove(),pr=null,us=null,yc=null,Pg()}function Dg(e){if(!(!(e>0)||!Number.isFinite(e))){if(e>=1)return WT();hr||(pr=document.createElement("style"),pr.textContent=kT,(document.head??document.documentElement).append(pr),Sc(),hr=new MutationObserver(UT),vc())}}var ft="data-hf-scene",Rn="hf-scene-parts",Ac="data-hf-scene-fonts",wc=e=>e.match(/@font-face\s*\{[^}]*\}/gi)??[],Mn="data-hf-scene-no-swap";var VT=`[${ft}]:not(style, script)`,$T=new Set(["absolute","fixed"]);function qT(e,t){let n=e.flatMap((a,l)=>a.start<=t&&t<=a.end?[l]:[]),r=e.filter(a=>a.start<=t).length-1,o=n.length>0?n[0]:r,i=n.length>0?n[n.length-1]:r;return e.map((a,l)=>l>=o-1&&l<=i+1)}function zT(e,t){let n=qT(e.map(r=>r.span),t);return new Set(e.filter((r,o)=>!n[o]).map(r=>r.host))}var Ig=(e,t)=>({size:t,outOfFlow:$T.has(getComputedStyle(e).position)});function jT(){let e=new WeakMap,t=typeof ResizeObserver=="function"?new ResizeObserver(r=>{for(let{target:o,borderBoxSize:i}of r){let a=i?.[0];a&&e.set(o,Ig(o,`${Math.round(a.inlineSize)}px ${Math.round(a.blockSize)}px`))}}):null,n=[];return{watch(r){for(let o of n)o.isConnected||t?.unobserve(o);for(let o of r)t?.observe(o);n=r},of:r=>e.get(r)??Ig(r,`${r.offsetWidth}px ${r.offsetHeight}px`)}}function Og(e){let t=null,n=null,r=new Map,o=jT(),i=s=>s.map(c=>({host:c,span:e(c)})).filter(c=>Number.isFinite(c.span?.start)).sort((c,d)=>c.span.start-d.span.start),a=s=>{let c=!1;for(let d of s){if(d.hasAttribute(Lt))continue;let{size:m,outOfFlow:f}=o.of(d);if(!f){s.delete(d);continue}let p=d.getAttribute(ft);c||(c=r.get(p)!==m),r.set(p,m)}return c},l=()=>{n??(n=document.createElement("style")),n.textContent=[`[${Lt}] { content-visibility: hidden; }`,...Array.from(r,([s,c])=>`[${ft}="${CSS.escape(s)}"][${Lt}] { contain-intrinsic-size: ${c}; }`)].join(`
|
|
33
|
+
`),n.isConnected||document.head.appendChild(n)};return s=>{if((!t||t.some(d=>!d.isConnected))&&o.watch(t=Array.from(document.querySelectorAll(VT))),t.length===0)return;let c=zT(i(t),s);(a(c)||!n?.isConnected)&&l();for(let d of t)c.has(d)!==d.hasAttribute(Lt)&&d.toggleAttribute(Lt)}}var kn="data-hf-authored-duration",Ln="data-hf-authored-end";function Jo(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 Br(e){let t=Jo(e.start);if(t==null)return null;let n=Math.max(0,t),r=Jo(e.duration),o=Jo(e.authoredDuration),i=r!=null&&r>0?r:o!=null&&o>0?o:null;if(i!=null)return{start:n,duration:i,end:n+i};let a=Jo(e.end),l=Jo(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 Ur=Object.freeze({start:"data-start",duration:"data-duration",trackIndex:"data-track-index",derivedEnd:"data-end",legacyTrack:"data-layer"}),BG=Object.freeze([Ur.start,Ur.duration,Ur.trackIndex]),UG=Object.freeze([Ur.derivedEnd]),WG=Object.freeze([Ur.derivedEnd,Ur.legacyTrack]);function Nn(e){if(e==null||e.trim()==="")return null;let t=Number(e);return Number.isFinite(t)?t:null}var Gg=/^[A-Za-z0-9_.:-]+$/;function Bg(e,t){let n=e.charCodeAt(t);return n>=48&&n<=57}function Hg(e,t){let n=t;for(;n>=0&&Bg(e,n);)n--;return n}function KT(e,t){let n=t;for(;n>=0&&(e[n]??"").trim()==="";)n--;return n}function YT(e){let t=e.length-1;if(!Bg(e,t))return null;let n=Hg(e,t);return e[n]==="."&&(n=Hg(e,n-1)),n+1}function XT(e){let t=YT(e);if(t==null)return null;let n=KT(e,t-1),r=e[n];if(r!=="+"&&r!=="-")return null;let o=e.slice(0,n).trim();if(!Gg.test(o))return null;let i=Number(e.slice(t));return Number.isFinite(i)?{refId:o,operator:r,magnitude:i}:null}function cs(e){let t=(e??"").trim();if(!t)return null;let n=Nn(t);if(n!=null)return{kind:"absolute",value:n};if(Gg.test(t))return{kind:"reference",refId:t,offset:0};let r=XT(t);return r?{kind:"reference",refId:r.refId,offset:r.operator==="-"?-r.magnitude:r.magnitude}:null}var Ug=e=>{let t=Nn(e);return t!==null&&t>=0?t:null};function ds(e){return Ug(e("data-playback-start"))??Ug(e("data-media-start"))??0}var Qo=.1,Zo=10;function _c(e){return Number.isFinite(e)&&e>0?Math.max(Qo,Math.min(Zo,e)):1}function Wg(e,t=1){let n=Number.parseFloat(e("data-playback-rate")??"");return _c(Number.isFinite(n)&&n>0?n:t)}function Cc(e){let t=Nn(e("data-duration"));return t!==null&&t>0?t:null}function Vg(e,t){let n=Cc(e);if(n!==null)return n;let r=Nn(e("data-end"));return r!==null?r-t:null}var JT=3;function Tc(e,t,n){return Number.isFinite(e)?Math.max(0,e-t)/_c(n):null}function Rc(e){let{tag:t,authoredDurationSeconds:n,sourceDurationSeconds:r,mediaStartSeconds:o,playbackRate:i}=e;if(n!==null&&n>0)return{seconds:n,source:"authored"};if(t==="img")return{seconds:JT,source:"default"};if(r===null)return{seconds:null,source:"pending",reason:"source duration not yet probed"};let a=Tc(r,o,i);return a===null?{seconds:null,source:"pending",reason:"source reported a non-finite duration"}:{seconds:a,source:"media"}}var Pn="data-fx-chain",jG=Pn.slice(5),$g=1,ei=(e="frequency",t="Frequency",n=1e3,r=20,o=2e4)=>({kind:"number",key:e,label:t,unit:"Hz",min:r,max:o,step:1,default:n,scale:"log",automatable:!0}),Mc=(e=.707,t="Bandwidth: higher is narrower.")=>({kind:"number",key:"q",label:"Q",unit:"",min:.1,max:20,step:.01,default:e,scale:"log",automatable:!0,hint:t}),fs=(e=-40,t=40,n=0)=>({kind:"number",key:"gain",label:"Gain",unit:"dB",min:e,max:t,step:.1,default:n,automatable:!0}),qg={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."},jg=[{id:"gain",label:"Gain",group:"dynamics",description:"Raise or lower the whole signal. Automate it to duck under something else.",params:[fs(-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:[ei("frequency","Frequency",1e3),fs(-40,40,0),Mc(1)],web:"biquad-peaking"},{id:"lowshelf",label:"Low Shelf",group:"filter",description:"Lift or drop everything below the corner frequency.",params:[ei("frequency","Frequency",200,20,2e3),fs(-40,40,0)],web:"biquad-lowshelf"},{id:"highshelf",label:"High Shelf",group:"filter",description:"Lift or drop everything above the corner frequency.",params:[ei("frequency","Frequency",4e3,500,2e4),fs(-40,40,0)],web:"biquad-highshelf"},{id:"highpass",label:"High-pass",group:"filter",description:"Remove low frequencies: the usual fix for rumble on a voice.",params:[ei("frequency","Cutoff",300,20,2e4),Mc(.707),qg],web:"biquad-highpass"},{id:"lowpass",label:"Low-pass",group:"filter",description:"Remove high frequencies, which darkens or muffles a track.",params:[ei("frequency","Cutoff",8e3,100,2e4),Mc(.707),qg],web:"biquad-lowpass"},{id:"compressor",label:"Compressor",group:"dynamics",description:"Pull loud parts down so the quiet ones can come up.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-60,max:0,step:.5,default:-24,hint:"Level above which the compressor starts working."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:4},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:2e3,step:.1,default:20,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:250,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83,hint:"1 is a hard corner; higher eases into it."},{kind:"number",key:"makeup",label:"Makeup",unit:"dB",min:0,max:36,step:.1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1,hint:"Below 1 blends the dry signal back in."}],web:"worklet-compressor"},{id:"limiter",label:"Limiter",group:"dynamics",description:"Peak limiter that follows the signal's level. It has no lookahead, so a fast peak or an inter-sample peak can pass the ceiling; use the true-peak limiter for a delivery limit.",params:[{kind:"number",key:"limit",label:"Ceiling",unit:"dB",min:-24,max:0,step:.1,default:-1},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.1,max:80,step:.1,default:5},{kind:"number",key:"release",label:"Release",unit:"ms",min:1,max:8e3,step:1,default:50,scale:"log"},{kind:"number",key:"level_out",label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0}],web:"worklet-limiter"},{id:"truepeak",label:"True-peak limiter",group:"dynamics",description:"Lookahead limiter that holds a 4x estimate of the inter-sample peak at a dBTP ceiling; full-band noise can land up to about 1.7 dB above it. Adds lookahead plus about 0.3 ms of latency.",params:[{kind:"number",key:"ceiling",label:"Ceiling",unit:"dBTP",min:-24,max:0,step:.1,default:-1,hint:"Target true peak, measured on a 4x oversampled signal. Dense full-band sound can end up to about 1.7 dB above it."},{kind:"number",key:"lookahead",label:"Lookahead",unit:"ms",min:.5,max:10,step:.1,default:3,hint:"How far ahead the gain starts falling. Longer is smoother and adds the same latency."},{kind:"number",key:"release",label:"Release",unit:"ms",min:10,max:2e3,step:1,default:80,scale:"log"}],web:"worklet-truepeak"},{id:"gate",label:"Noise Gate",group:"dynamics",description:"Silence the track when it drops below the threshold.",params:[{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-80,max:0,step:.5,default:-35},{kind:"number",key:"range",label:"Range",unit:"dB",min:-80,max:0,step:.5,default:-24,hint:"How far down the gate pulls when closed."},{kind:"number",key:"ratio",label:"Ratio",unit:":1",min:1,max:20,step:.1,default:10},{kind:"number",key:"attack",label:"Attack",unit:"ms",min:.01,max:9e3,step:.1,default:1,scale:"log"},{kind:"number",key:"release",label:"Release",unit:"ms",min:.01,max:9e3,step:1,default:100,scale:"log"},{kind:"number",key:"knee",label:"Knee",unit:"",min:1,max:8,step:.01,default:2.83}],web:"worklet-gate"},{id:"saturate",label:"Saturation",group:"nonlinear",description:"Soft-clip the waveform for warmth or outright distortion.",params:[{kind:"enum",key:"type",label:"Curve",options:[{value:"tanh",label:"Tanh"},{value:"atan",label:"Arctan"},{value:"cubic",label:"Cubic"},{value:"exp",label:"Exponential"},{value:"alg",label:"Algebraic"},{value:"quintic",label:"Quintic"},{value:"sin",label:"Sine"},{value:"erf",label:"Error function"},{value:"hard",label:"Hard clip"}],default:"tanh"},{kind:"number",key:"threshold",label:"Threshold",unit:"dB",min:-40,max:0,step:.1,default:-6},{kind:"number",key:"output",automatable:!0,label:"Output",unit:"dB",min:-24,max:24,step:.1,default:0},{kind:"number",key:"oversample",label:"Oversample",unit:"x",min:1,max:8,step:1,default:4,hint:"Higher costs more but keeps aliasing down."}],web:"waveshaper"},{id:"bitcrush",label:"Bitcrush",group:"nonlinear",description:"Drop bit depth and sample rate for a lo-fi, digital sound.",params:[{kind:"number",key:"bits",label:"Bit depth",unit:"bit",min:1,max:32,step:.1,default:8},{kind:"number",key:"samples",label:"Sample hold",unit:"x",min:1,max:250,step:1,default:1,hint:"Repeats each sample N times, a crude downsample."},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-bitcrush"},{id:"pitchshift",label:"Pitch shift",group:"time",description:"Shifts pitch up or down without changing playback speed. Adds ~50 ms of latency.",params:[{kind:"number",key:"semitones",label:"Semitones",unit:"st",min:-12,max:12,step:1,default:0},{kind:"number",key:"mix",label:"Mix",unit:"",min:0,max:1,step:.01,default:1}],web:"worklet-pitchshift"},{id:"delay",label:"Delay",group:"time",description:"Repeating echoes behind the dry signal.",params:[{kind:"number",key:"time",automatable:!0,label:"Time",unit:"ms",min:1,max:5e3,step:1,default:250,scale:"log"},{kind:"number",key:"feedback",automatable:!0,label:"Feedback",unit:"",min:.01,max:.95,step:.01,default:.35},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.4}],web:"delay-feedback"},{id:"chorus",label:"Chorus",group:"time",description:"Detuned copies of the signal for width and thickness.",params:[{kind:"number",key:"delay",automatable:!0,label:"Delay",unit:"ms",min:1,max:100,step:.1,default:7},{kind:"number",key:"depth",automatable:!0,label:"Depth",unit:"ms",min:0,max:10,step:.01,default:2},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.01,max:10,step:.01,default:1},{kind:"number",key:"mix",automatable:!0,label:"Mix",unit:"",min:0,max:1,step:.01,default:.5}],web:"chorus-lfo"},{id:"phaser",label:"Phaser",group:"time",description:"Sweeping notches moving through the spectrum.",params:[{kind:"number",key:"in_gain",automatable:!0,label:"Input",unit:"",min:0,max:1,step:.01,default:.4},{kind:"number",key:"out_gain",automatable:!0,label:"Output",unit:"",min:0,max:2,step:.01,default:.74},{kind:"number",key:"delay",label:"Delay",unit:"ms",min:.1,max:5,step:.1,default:3},{kind:"number",key:"decay",label:"Decay",unit:"",min:0,max:.99,step:.01,default:.4},{kind:"number",key:"speed",automatable:!0,label:"Rate",unit:"Hz",min:.1,max:2,step:.01,default:.5},{kind:"enum",key:"type",label:"Waveform",options:[{value:"0",label:"Triangular"},{value:"1",label:"Sinusoidal"}],default:"0"}],web:"allpass-phaser"},{id:"reverb",label:"Reverb",group:"time",description:"Room tail. Both ends convolve the same generated impulse, so preview matches render.",params:[{kind:"number",key:"size",label:"Room size",unit:"",min:.05,max:1,step:.01,default:.7},{kind:"number",key:"damping",label:"Damping",unit:"",min:0,max:1,step:.01,default:.5,hint:"Higher rolls the top off the tail faster."},{kind:"number",key:"wet",automatable:!0,label:"Wet",unit:"",min:0,max:1,step:.01,default:.35},{kind:"number",key:"dry",automatable:!0,label:"Dry",unit:"",min:0,max:1,step:.01,default:.7}],web:"convolver"}],kc=new Map(jg.map(e=>[e.id,e]));function ti(e){return kc.get(e)}var KG=jg.map(e=>e.id);function ni(e,t){let n=kc.get(e);if(!n)return{};let r={};for(let o of n.params){let i=t?.[o.key];if(o.kind==="enum"){let l=o.options.some(s=>s.value===i);r[o.key]=l?i:o.default;continue}let a=typeof i=="number"?i:typeof i=="string"&&i.trim()!==""?Number(i):Number.NaN;r[o.key]=Number.isFinite(a)?Math.min(o.max,Math.max(o.min,a)):o.default}return r}var Fn=class extends Error{constructor(t){super(t),this.name="AudioFxChainError"}};function Kg(e){let t;try{t=JSON.parse(e)}catch(o){throw new Fn(`Chain file is not valid JSON: ${o.message}`)}if(typeof t!="object"||t===null)throw new Fn("Chain file must be a JSON object.");let n=t;if(n.version!==$g)throw new Fn(`Unsupported chain version: ${String(n.version)}`);if(!Array.isArray(n.nodes))throw new Fn("Chain file is missing a `nodes` array.");let r=n.nodes.map(QT);return{version:$g,nodes:r}}function ri(e){return e.nodes.filter(t=>t.enabled!==!1)}function QT(e,t){if(typeof e!="object"||e===null)throw new Fn(`Node ${t} is not an object.`);let n=e;if(typeof n.type!="string"||!kc.has(n.type))throw new Fn(`Node ${t} has unknown effect type: ${String(n.type)}`);return eR({type:n.type,id:ms(n.id),fromCarve:zg(n.fromCarve),fromPreset:ms(n.fromPreset),label:ms(n.label),fromEq:ms(n.fromEq),fromLeveller:zg(n.fromLeveller),presetAmount:ZT(n.presetAmount),enabled:n.enabled!==!1,params:ni(n.type,n.params??void 0)})}function ms(e){return typeof e=="string"&&e?e:void 0}function zg(e){return e===!0?!0:void 0}function ZT(e){if(!(typeof e!="number"||!Number.isFinite(e)))return Math.min(1,Math.max(0,e))}function eR(e){for(let t of Object.keys(e))e[t]===void 0&&delete e[t];return e}function tR(e){return 10**(e/20)}var gr=tR(12);function Ve(e){return Number.isFinite(e)?Math.max(0,Math.min(gr,e)):1}function hs(e,t){return Ve(e*t)}function Yg(e,t){return t?1:Ve(e)}function ps(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function Xg(e,t){let n=typeof HTMLMediaElement>"u"?void 0:Object.getOwnPropertyDescriptor(HTMLMediaElement.prototype,"volume"),r=n?.get,o=n?.set;if(!r||!o)return t();let i=Number(r.call(e));Object.defineProperty(e,"volume",{configurable:!0,get:()=>i,set:a=>{i=Number(a),o.call(e,ps(i))}});try{return t()}finally{delete e.volume,o.call(e,ps(i))}}var on="data-automation",nB=on.slice(5),bs=1,nR=512,rn=class extends Error{constructor(t){super(t),this.name="AudioAutomationError"}},Wr="volume",ys="rate";function ii(e){if(e===Wr)return{kind:"volume"};if(e===ys)return{kind:"rate"};let t=e.split(".");if(t.length===3&&t[0]==="fx"&&t[1]===rR){let o=t[2];return o?{kind:"preset",presetId:o}:null}if(t.length!==3||t[0]!=="fx")return null;let[,n,r]=t;return!n||!r?null:{kind:"fx",nodeId:n,param:r}}var rR="preset";var oR={min:0,max:1,step:.01,unit:"",label:"Amount",scale:"linear",default:1},xs={min:0,max:gr,step:.01,unit:"",label:"Volume",scale:"linear",default:1};function iR(e){return Math.min(4096,Math.max(2,Math.ceil(e*30)))}function Lc(e){return!!e.curve||e.viaX!==void 0&&e.viaY!==void 0}function gs(e,t,n=!1){let r=Ve(t),o=hs(r,e);return n&&r>0?o/r:o}function Jg(e,t,n=!1){let r=[],o=e.points,i=Ve(t);for(let a=0;a<o.length;a+=1){let l=o[a],s=o[a+1];if(!(s!==void 0&&(i*l.v-gr)*(i*s.v-gr)<0)){r.push({...l,v:gs(l.v,t,n)});continue}if(r.push({t:l.t,v:gs(l.v,t,n)}),Lc(l)){let d=iR(s.t-l.t);for(let m=1;m<d;m+=1){let f=l.t+(s.t-l.t)*m/d;r.push({t:f,v:gs(Wt(e,f),t,n)})}}else{let d=l.t+(gr/i-l.v)/(s.v-l.v)*(s.t-l.t);r.push({t:d,v:gs(gr/i,i,n)})}}return r}var Qg={min:Qo,max:Zo,step:.05,unit:"x",label:"Speed",scale:"log",default:1};function Nc(e,t){let n=ii(e);if(!n)return null;if(n.kind==="volume")return xs;if(n.kind==="rate")return Qg;if(n.kind==="preset")return t?.nodes.some(l=>l.fromPreset===n.presetId)?{...oR,label:`${n.presetId} \xB7 Amount`}:null;let r=t?.nodes.find(a=>a.id===n.nodeId);if(!r)return null;let o=ti(r.type),i=o?.params.find(a=>a.key===n.param);return!i||i.kind!=="number"?null:{min:i.min,max:i.max,step:i.step,unit:i.unit,label:`${o?.label??r.type} \xB7 ${i.label}`,scale:i.scale==="log"&&i.min>0?"log":"linear",default:i.default}}function oi(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 aR(e){let t=oi(e);return t===null||t===0?0:Math.min(1,Math.max(-1,t))}function Zg(e,t){let n=oi(e),r=oi(t);if(n===null||r===null)return null;let o=l=>Math.min(.999,Math.max(.001,l)),i=o(n),a=o(r);return Math.abs(i-a)<1e-6?null:{x:i,y:a}}function sR(e){let t=aR(e?.curve),n=Zg(e?.viaX,e?.viaY);return{...t?{curve:t}:{},...n?{viaX:n.x,viaY:n.y}:{}}}function lR(e,t){let n=oi(e?.t),r=oi(e?.v);if(n===null||r===null)return null;let o=t?Math.min(t.max,Math.max(t.min,r)):r;return{t:Math.max(0,n),v:o,...sR(e)}}function e0(e,t){let n=e.map(o=>lR(o,t)).filter(o=>o!==null).sort((o,i)=>o.t-i.t),r=[];for(let o of n)r.length>0&&r[r.length-1].t===o.t?r[r.length-1]=o:r.push(o);return r.slice(0,nR)}function uR(e){let t=[];for(let n of e.lanes){if(!ii(n.target))continue;let r=n.target===Wr?xs:n.target===ys?Qg:null,o=e0(n.points??[],r);o.length>0&&t.push({target:n.target,points:o})}return{version:bs,lanes:t}}function t0(e,t){let n=[];for(let r of e.lanes){let o=Nc(r.target,t);if(!o)continue;let i=e0(r.points,o);i.length>0&&n.push({target:r.target,points:i})}return{version:bs,lanes:n}}function Ss(e){let t;try{t=JSON.parse(e)}catch(o){throw new rn(`Automation is not valid JSON: ${o.message}`)}if(typeof t!="object"||t===null)throw new rn("Automation must be a JSON object.");let n=t;if(n.version!==bs)throw new rn(`Unsupported automation version: ${String(n.version)}`);if(!Array.isArray(n.lanes))throw new rn("Automation is missing a `lanes` array.");let r=n.lanes.map((o,i)=>{if(typeof o!="object"||o===null)throw new rn(`Lane ${i} is not an object.`);let a=o;if(typeof a.target!="string"||!ii(a.target))throw new rn(`Lane ${i} has an unreadable target: ${String(a.target)}`);if(!Array.isArray(a.points))throw new rn(`Lane ${i} is missing a \`points\` array.`);return{target:a.target,points:a.points}});return uR({version:bs,lanes:r})}function cR(e,t){return t?Math.pow(e,Math.pow(2,2*t)):e}function dR(e,t){let n=e-.5,r=t-.5,o=.999,i=1e6,a=n>0?n/(o-e):n<0?-n/(e-(1-o)):0,l=r>0?r/(o-t):r<0?-r/(t-(1-o)):0,s=Math.min(i,Math.max(1,a,l));return{cx:e+n/s,cy:t+r/s,w:s}}function fR(e,t,n){let{cx:r,cy:o,w:i}=dR(t,n),a=2-2*i,l=e*a-1+2*i*r,s=-e*a-2*i*r,c=mR(l,s,e),d=1-c,m=d*d+2*i*c*d+c*c;return m>0?(2*i*o*c*d+c*c)/m:e}function mR(e,t,n){if(Math.abs(e)<1e-12)return Math.abs(t)<1e-12?n:-n/t;let r=Math.sqrt(Math.max(0,t*t-4*e*n)),o=(-t+r)/(2*e),i=(-t-r)/(2*e),a=l=>l>=-1e-9&&l<=1+1e-9;return a(o)?Math.min(1,Math.max(0,o)):a(i)?Math.min(1,Math.max(0,i)):n}function pR(e,t){let n=Zg(t.viaX,t.viaY);return n?fR(Math.min(1,Math.max(0,e)),n.x,n.y):cR(e,t.curve)}function hR(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 Wt(e,t,n="linear"){let r=e.points;if(r.length===0)return 0;let o=r[0];if(t<=o.t)return o.v;let i=r[r.length-1];if(t>=i.t)return i.v;let a=0,l=r.length-1;for(;l-a>1;){let m=a+l>>1;r[m].t<=t?a=m:l=m}let s=r[a],c=r[l],d=c.t-s.t;return d<=0?c.v:hR(s.v,c.v,pR((t-s.t)/d,s),n)}function n0(e){return e.points.length<=1||e.points.every(t=>t.v===e.points[0].v)}function r0(e,t,n,r,o="linear"){let i=Math.max(2,Math.floor(r)),a=new Float32Array(i),l=n-t;for(let s=0;s<i;s+=1)a[s]=Wt(e,t+l*s/(i-1),o);return a}var Es=new Map,gR=64;function Fc(e,t=Wr){let n=`${t}\0${e}`,r=Es.get(n);if(r!==void 0)return r;let o=null;try{o=Ss(e).lanes.find(i=>i.target===t)??null}catch{o=null}return Es.size>gR&&Es.clear(),Es.set(n,o),o}function o0(e,t){let n=(typeof e.getAttribute=="function"?e.getAttribute(on):null)??"";if(!n)return null;let r=Fc(n);return!r||r.points.length===0?null:Wt(r,t)}var i0=48,a0=new WeakMap;function bR(e){let t=e.points,n=t[0].v,r=t[t.length-1].v,o=[0],i=[0],a=s=>{let c=o[o.length-1];if(s<=c)return;let d=Wt(e,c,"log");o.push(s),i.push(i[i.length-1]+(d+Wt(e,s,"log"))/2*(s-c))},l=Math.max(0,t[0].t);a(l);for(let s=1;s<t.length;s+=1){let c=t[s-1].t,d=t[s].t;if(!(d<=0))for(let m=1;m<=i0;m+=1)a(Math.max(c,0)+(d-c)*m/i0)}return{ts:Float64Array.from(o),ss:Float64Array.from(i),firstRate:n,lastRate:r}}function s0(e){let t=a0.get(e);return t||(t=bR(e),a0.set(e,t)),t}function Pc(e){return typeof e!="number"&&e.points.length>0}function ai(e,t){return typeof e=="number"?e:Pc(e)?Wt(e,t,"log"):1}function l0(e,t,n){let r=0,o=e.length-1;for(;o-r>1;){let i=r+o>>1;e[i]<=n?r=i:o=i}return t[r]+(t[o]-t[r])*(n-e[r])/(e[o]-e[r])}function Dn(e,t){if(typeof e=="number")return t*e;if(!Pc(e))return t;let{ts:n,ss:r,firstRate:o,lastRate:i}=s0(e),a=n.length-1;return t<=0?t*o:t>=n[a]?r[a]+(t-n[a])*i:l0(n,r,t)}function an(e,t){if(typeof e=="number")return t/e;if(!Pc(e))return t;let{ts:n,ss:r,firstRate:o,lastRate:i}=s0(e),a=n.length-1;return t<=0?t/o:t>=r[a]?n[a]+(t-r[a])/i:l0(r,n,t)}function yR(e){return e?Fc(e,ys):null}function u0(e,t){return yR(e)??t}var uB=[{id:"montage",label:"Montage",points:[[0,.9],[.15,.3],[.5,2.5],[.85,.3],[1,.9]]},{id:"hero",label:"Hero",points:[[0,1],[.25,1.6],[.5,.25],[.75,1.6],[1,1]]},{id:"bullet",label:"Bullet",points:[[0,3],[.4,3],[.5,.15],[.6,3],[1,3]]},{id:"jump-cut",label:"Jump cut",points:[[0,.5],[.24,.5],[.26,3],[.5,3],[.52,.5],[.74,.5],[.76,3],[1,3]]},{id:"flash-in",label:"Flash in",points:[[0,.3],[.6,.6],[1,5]]},{id:"flash-out",label:"Flash out",points:[[0,5],[.4,.6],[1,.3]]},{id:"ramp-in",label:"Ramp in",points:[[0,.5],[1,1]]},{id:"ramp-out",label:"Ramp out",points:[[0,1],[1,.5]]},{id:"slowmo-middle",label:"Slow-mo middle",points:[[0,1],[1/3,.35],[2/3,.35],[1,1]]}];function Ue(e){return Nn(e)}function mt(e){return Wg(t=>e.getAttribute(t),Te(e)?e.defaultPlaybackRate:1)}function Et(e){return u0(e.getAttribute("data-automation"),mt(e))}function vt(e){return ds(t=>e.getAttribute(t))}function Vt(e,t){return xR(t,vt(e),Et(e))}function Vr(e){let t=Rc({tag:"video",authoredDurationSeconds:Cc(n=>e.getAttribute(n)),sourceDurationSeconds:Number.isFinite(e.duration)?e.duration:null,mediaStartSeconds:vt(e),playbackRate:mt(e)});return t.source==="media"?Vt(e,e.duration):t.seconds}function $r(e,t=0){return!Qe(e)||!e.hasAttribute("data-start")&&!e.hasAttribute("data-track-index")?null:Rc({tag:"img",authoredDurationSeconds:Vg(n=>e.getAttribute(n),t),sourceDurationSeconds:null,mediaStartSeconds:0,playbackRate:1}).seconds}function xR(e,t,n){return typeof n=="number"?Tc(e,t,n):Number.isFinite(e)?an(n,Math.max(0,e-t)):null}var SR=e=>e.paused?.()===!0?(e.startTime?.()??0)+(e.totalDuration?.()??0)/Math.abs(e.timeScale?.()||1):0;function sn(e){try{if(typeof e?.duration!="function")return null;let t=e.getChildren?.(!1,!1,!0),n=Array.isArray(t)?t:[],r=Math.max(Number(e.duration()),...n.map(SR));return Number.isFinite(r)?r:null}catch(t){return $("runtime.timelineDuration",t),null}}function br(e){if(e==null||e.trim()==="")return null;let t=Number.parseFloat(e);return Number.isFinite(t)&&t>0?t:null}function qr(e){if(e==null||e.trim()==="")return null;let t=Number.parseInt(e,10);return Number.isFinite(t)&&t>0?t:null}function gt(e=document){let t=e.querySelector('[data-composition-id][data-root="true"]');return Ce(t)?t:e.querySelector("[data-composition-id]")}var ER=new Set(["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"]);function Dc(e){return e.id||e.getAttribute("data-hf-id")||null}function vR(e){return Ue(e)}function AR(e,t){let n=e.getAttribute("data-composition-id");if(!n)return null;let r=sn(t[n]);return r!=null&&r>0?r:null}function wR(e){return Te(e)?Number.isFinite(e.duration)?Vt(e,e.duration):null:$r(e)}function _R(e,t,n,r){let o=vR(e.getAttribute("data-duration"));return o!=null&&o>0?o:AR(e,t)??wR(e)??Math.max(0,n-r)}function CR(e){for(let[t,n]of e){let r=t.parentElement;for(;r;){let o=e.get(r);if(o){n.parentId=o.id,o.children.push(n);break}r=r.parentElement}}}function c0(e){let{startResolver:t,timelineRegistry:n,rootDuration:r}=e,o=new Map,i=gt(),a=0;for(let l of document.querySelectorAll("[data-start]")){if(l===i||ER.has(l.tagName))continue;let s=t.resolveStartForElement(l,0);if(_R(l,n,r,s)<=0)continue;let c={id:Dc(l)??`__clip-${a++}`,element:l,parentId:null,children:[]};o.set(l,c)}return CR(o),{roots:Array.from(o.values()).filter(l=>l.parentId===null)}}var Ic="css:root",d0=["backdrop-filter","clip-path","filter","mask","mask-border-source","mask-image","perspective","rotate","scale","transform","translate","-webkit-mask-image"],TR=new Set([...d0,"contain","isolation","mask-border","mix-blend-mode","opacity"]),RR=new Set(["absolute","relative"]),MR=new Set(["flex","inline-flex","grid","inline-grid"]),kR=new Set(["layout","paint","strict","content"]),LR=new Set(["size","inline-size"]);function NR(e){return e.position==="fixed"||e.position==="sticky"}function FR(e,t){if(t.zIndex==="auto"||t.zIndex==="")return!1;if(RR.has(t.position))return!0;let n=e.parentElement?e.ownerDocument.defaultView?.getComputedStyle(e.parentElement).display:null;return n!=null&&MR.has(n)}function PR(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:d0.some(r=>{let o=e.getPropertyValue(r);return o!==""&&o!=="none"})}function DR(e){return e.getPropertyValue("contain").split(/\s+/).some(n=>kR.has(n))?!0:LR.has(e.getPropertyValue("container-type"))}function IR(e){return e.getPropertyValue("will-change").split(",").map(t=>t.trim()).some(t=>TR.has(t))}function OR(e,t){return e.hasAttribute(fr)||NR(t)||FR(e,t)||PR(t)||DR(t)?!0:IR(t)}function HR(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 vs(e,t){let n=t?.get(e.parentElement);if(n!==void 0)return n;let r=GR(e);return t?.set(e.parentElement,r),r}function GR(e){let t=e.ownerDocument.defaultView;if(!t)return Ic;let n=e.parentElement;for(;n&&n!==e.ownerDocument.documentElement;){try{if(OR(n,t.getComputedStyle(n)))return HR(n)}catch{return Ic}n=n.parentElement}return Ic}var As="data-hf-media-start-basis";function f0(e){return e?.trim().toLowerCase()==="global"?"global":"local"}function BR(e){return f0(e.basis)==="global"?e.authoredStart:e.hostStart+e.authoredStart}function m0(e){return h0(e)?BR({authoredStart:e.authoredStart,hostStart:e.hostStart,basis:e.basis}):e.ordinaryStart()}function p0(e){return h0(e)&&f0(e.basis)==="global"}function h0(e){return!e.hasAutoStart&&e.authoredStart!=null&&e.hostStart!==0}function Oc(e){return ds(t=>e.getAttribute(t))}function g0(e,t){return e-Oc(t)}function yr(e,t){return t.reduce((n,r)=>{let o=Math.max(n.start,r.start);return{start:o,end:Math.max(o,Math.min(n.end,r.end))}},e)}function lt(e){let t=e.timelineRegistry??{},n=e.includeAuthoredTimingAttrs??!1,r=e.documentRef??document,o=new WeakMap,i=new WeakMap,a=new Set,l=T=>(T.hasAttribute("data-composition-id")?T.parentElement:T)?.closest("[data-composition-id]")??null,s=(T,F)=>{let W=l(F);if(W){for(let X of W.querySelectorAll(`[id="${T}"]`))if(l(X)===W)return X}let B=r.getElementById(T);return B||(Array.from(r.querySelectorAll("[data-composition-id]")).find(X=>X.getAttribute("data-composition-id")===T)??null)},c=(T,F)=>n?T.getAttribute(F):null,d=T=>Br({start:0,duration:T.getAttribute("data-duration"),authoredDuration:c(T,"data-hf-authored-duration")})?.duration??Br({start:H(T,0),end:T.getAttribute("data-end"),authoredEnd:c(T,"data-hf-authored-end")})?.duration??null,m=T=>T!=null&&Number.isFinite(T)&&T>0?T:null,f=T=>{let F=T.getAttribute("data-composition-id");return F?m(sn(t[F])):null},p=T=>{let F=i.get(T);if(F!==void 0)return F;let W=d(T)??m(Te(T)?Vt(T,T.duration):null)??m($r(T))??f(T);return i.set(T,W),W},b="[data-composition-src], [data-composition-id], [data-composition-file]",y=T=>T.matches(b),x=T=>!T.hasAttribute("data-composition-id")||cs(T.getAttribute("data-start"))?null:T.parentElement?.closest(`[data-start], ${b}`)??null,v=(T,F)=>g0(H(T,F),x(T)??T),E=(T,F)=>{let W=T.hasAttribute("data-composition-id")?T.parentElement?.closest("[data-composition-id]"):T.closest("[data-composition-id]");return W?v(W,F):0},C=(T,F)=>{let W=cs(T.getAttribute("data-start"));if(!W){let j=x(T);return j?H(j,F):F}if(W.kind==="absolute")return E(T,F)+Math.max(0,W.value);let B=s(W.refId,T);if(!B)return F;let X=H(B,0),ae=p(B)??0,N=Math.min(0,E(T,0));return Math.max(N,X+ae+W.offset)},H=(T,F)=>{let W=o.get(T);if(W!==void 0)return W??F;if(a.has(T))return F;a.add(T);try{let B=C(T,F);return o.set(T,B),B}finally{a.delete(T)}},V=T=>{let F=T.closest("[data-composition-id]");return{authoredStart:Ue(T.getAttribute("data-start")),hostStart:F?v(F,0):0,hasAutoStart:T.hasAttribute("data-hf-auto-start"),basis:T.getAttribute(As)}};return{resolveStartForElement:(T,F=0)=>H(T,Math.max(0,F)),resolveDurationForElement:T=>p(T),resolveMediaStartForElement:T=>{let F=V(T);return m0({...F,ordinaryStart:()=>H(T,F.hostStart)})},resolveHostStartForElement:T=>E(T,0),resolveHostSlotsForElement:T=>{let F=[];for(let W=T.parentElement;W;W=W.parentElement){if(!y(W)||x(W)||Oc(W)<=0)continue;let B=H(W,0),X=d(W);F.push({start:B,end:X?B+X:1/0})}return F},isRootGlobalMediaStartForElement:T=>Te(T)&&p0(V(T))}}var si=e=>4*Number.EPSILON*Math.max(1,Math.abs(e));function zr(e,t){return!Number.isFinite(e)||!Number.isFinite(t)?e===t:Math.abs(e-t)<=si(Math.max(Math.abs(e),Math.abs(t)))}var b0=(e,t)=>e>=t||zr(e,t),In=(e,t,n)=>b0(e,t)&&e<n&&!zr(e,n),UR=1e-6,jr=(e,t,n,r)=>In(e,t,n)||b0(e,t)&&r>0&&n>=r-UR;var WR=["width","height","top","left","right","bottom","inset","object-fit","object-position","z-index","opacity","visibility","filter","mix-blend-mode","backdrop-filter","border-width","border-style","border-color","border-radius","overflow","clip-path","mask","mask-image","mask-size","mask-position","mask-repeat","transform","transform-origin","translate","rotate","scale","box-sizing"];function Hc(e){return Number.isFinite(e)&&e>0?e:30}function Gc(e){return Number.isFinite(e)&&e>0?e:0}function Bc(e,t){let n=Hc(t);return Math.floor(Gc(e)*n+1e-9)/n}function x0(e,t,n){let r=Number.isInteger(n)?n:1;if(r<=1)return Bc(e,t);let o=Hc(t)*r;return Math.round(Gc(e)*o)/o}function y0(e,t){let n=Hc(t),r=Gc(e),o=r*n,i=Math.round(o);return Math.abs(o-i)<=.001?i/n:r}function ws(e,t,n){return{start:y0(e,n),end:Number.isFinite(t)?y0(t,n):t}}function S0(e,t,n=WR){for(let r of n){let o=t.getPropertyValue(r);o&&e.setProperty(r,o)}}function Uc(e){let t=e.trim().toLowerCase();return!(!t||t==="main"||t.includes("caption")||t.includes("ambient"))}var li="hf-runtime-filler",VR=["seconds-time","rational-fps","seek-keep-playing","composition-manifest-v1","runtime-data","play-range"];function $R(e,t){let n=Math.abs(e),r=Math.abs(t);for(;r!==0;){let o=n%r;n=r,r=o}return n||1}function qR(e){let t=Number.isFinite(e)&&e>0?e:30,n=Math.abs(t*1001-Math.round(t*1001))<1e-6,r=Number.isInteger(t)?1:n?1001:1e6,o=Math.round(t*r),i=$R(o,r);return{numerator:o/i,denominator:r/i}}function E0(e,t,n){return Math.max(e,(Math.ceil(t*n-1e-6)-1)/n)}function Wc(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 _s(e){return{protocolVersion:1,capabilities:VR,fps:qR(e)}}function zR(e){return Array.isArray(e)&&e.every(t=>typeof t=="string")}function v0(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=Wc(n.fps);return r===null||!zR(n.capabilities)?{status:"unsupported",code:"invalid_protocol_metadata",receivedVersion:n.protocolVersion}:{status:"supported",fps:r,metadata:n}}var A0=e=>e!==null&&Number.isFinite(e)&&e>0;function Kr(e){let t=e.clipEndsSeconds.filter(r=>r===null).length;if(A0(e.authoredDurationSeconds))return{seconds:e.authoredDurationSeconds,source:"authored",pendingClips:t};let n=e.clipEndsSeconds.filter(A0);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"}}function Vc(){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 Yr=7200,ln=1/60,ui=e=>e!==null&&e>ln?e:null;function w0(e){return{width:qr(e.getAttribute("data-width")),height:qr(e.getAttribute("data-height"))}}function _0(e,t){let n=[];for(let r of e.querySelectorAll("video[data-start], audio[data-start]")){let o=t.mediaStart(r);if(!Number.isFinite(o))continue;let i=t.mediaDuration(r);i==null||i<=ln||n.push(Math.max(0,o)+i)}return ui(Kr({authoredDurationSeconds:null,clipEndsSeconds:n}).seconds)}function C0(e,t){let n=[];for(let o of e.querySelectorAll("[data-composition-id][data-start]")){if(o.parentElement?.closest("[data-composition-id]")!==e)continue;let i=t.resolveStartForElement(o,0),a=t.resolveDurationForElement(o);!Number.isFinite(i)||a==null||a<=0||n.push(Math.max(0,i)+a)}let r=Ue(e.getAttribute("data-duration"));return ui(Kr({authoredDurationSeconds:null,clipEndsSeconds:[r,...n]}).seconds)}var jR=e=>e.hasAttribute("data-composition-id")||e.hasAttribute("data-composition-src");function T0(e,t,{unregisteredLottie:n}){let r=[];for(let i of e.querySelectorAll("[data-start]")){let a=t.resolveStartForElement(i,0);if(!Number.isFinite(a))continue;let l=t.resolveDurationForElement(i);l!=null?r.push(Math.max(0,a)+l):(Te(i)||jR(i))&&r.push(null)}(n||e.querySelector("[data-lottie-src]"))&&r.push(null);let o=Kr({authoredDurationSeconds:null,clipEndsSeconds:r});return o.pendingClips>0?{...o,seconds:null,source:"unresolved",reason:"a clip's length is pending"}:o}function R0(e){if(e.declared!==null&&Number.isFinite(e.declared)&&e.declared>0)return e.declared;let t=ui(e.timeline()),n=Math.max(0,...e.floors().map(s=>s??0)),r=Number.isFinite(e.fallback)&&e.fallback>ln?e.fallback:0,o=Math.max(n,r),a=t!==null&&t>=Yr&&ui(o)!==null?null:t,l;return a!==null?l=Math.max(a,o):ui(n)!==null?l=o:r>0?l=r:l=e.derived(),l>0?l:0}function Cs(e,t){let n=e.tagName.toLowerCase();if(n==="script"||n==="style"||n==="link"||n==="meta")return null;let o=n==="video"||n==="audio"?t.resolver.resolveMediaStartForElement(e):t.resolver.resolveStartForElement(e,0),i=t.resolver.resolveDurationForElement(e),a=e.getAttribute("data-composition-id");if(a){let s=t.timelineRegistry[a],c=sn(s);!(e.hasAttribute("data-duration")||e.hasAttribute("data-end")||e.hasAttribute(kn)||e.hasAttribute(Ln))&&(i==null||i<=0)&&c!=null&&c>0&&(i=c)}let l=a!==null&&e===gt(e.ownerDocument);return{start:o,end:!l&&i!=null&&i>0?o+i:Number.POSITIVE_INFINITY}}function Ts(e,t){let n=Cs(e,t);if(!n)return!1;let r=t.exportRenderSeek?ws(n.start,n.end,t.canonicalFps):n;return jr(t.currentTime,r.start,r.end,t.compositionDuration)}function di(e){return Ue(e)}function fi(e){let t=e.getAttribute("data-duration"),n=e.getAttribute(kn),r=Br({start:0,duration:t,authoredDuration:n})?.duration;return r??([t,n].map(di).some(i=>i!=null&&i<=0)?0:null)}function M0(e){return Br({start:0,end:e.getAttribute("data-end"),authoredEnd:e.getAttribute(Ln)})?.end??null}function $c(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 qc(...e){let t=e.filter(n=>Number.isFinite(n??null));return t.length===0?null:Math.max(...t)}function Xr(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 mi(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 k0(e){let t=e.getAttribute("src")??e.getAttribute("data-src");if(t)return mi(t);let n=e.getAttribute("data-composition-src");if(n)return mi(n);let r=e.querySelector("img[src], video[src], audio[src], source[src]");return r?mi(r.getAttribute("src")):null}function YR(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 XR(e){if(!e)return null;let t;try{t=new URL(e,document.baseURI).pathname.split("/").filter(Boolean).at(-1)}catch{t=e.replace(/[?#].*$/,"").split(/[\\/]/).filter(Boolean).at(-1)}if(!t)return null;try{return decodeURIComponent(t)}catch{return t}}function JR(e){let t=e.textContent?.replace(/\s+/g," ").trim();return t?t.length>32?`${t.slice(0,31)}...`:t:null}function ci(e){let t=e.replace(/\.[^.]+$/i,"").replace(/[-_]+/g," ").replace(/\s+/g," ").trim();return t?t.replace(/\b\w/g,n=>n.toUpperCase()):e}function L0(e){return e.getAttribute("data-hf-original-composition-id")??e.getAttribute("data-composition-id")}function QR(e,t,n){let r=e.getAttribute("data-timeline-label")??e.getAttribute("data-label")??e.getAttribute("aria-label")??null;if(r?.trim())return r.trim();let o=L0(e);if(o)return ci(o);let i=e.id;if(i)return ci(i);let a=YR(e);if(a)return ci(a);let l=XR(k0(e));if(l)return ci(l);let s=JR(e);return s||`${ci(t)} ${n+1}`}function zc(e){let t=new Map,r=window.__timelines??{},o=lt({timelineRegistry:r,includeAuthoredTimingAttrs:!0}),i=z=>{if(!z)return null;let Z=sn(r[z]);return Z!=null&&Z>0?Z:null},a=()=>{let z=Array.from(document.querySelectorAll("video[data-start], audio[data-start]"));if(z.length===0)return null;let Z=0;for(let Q of z){let de=o.resolveMediaStartForElement(Q);if(!Number.isFinite(de))continue;let ge=Vr(Q);ge==null||ge<=0||(Z=Math.max(Z,Math.max(0,de)+ge))}return Z>0?Z:null},l=(z,Z)=>{let Q=[],de=null,ge=null,se=null,ue=z.parentElement;for(;ue;){let re=ue.getAttribute("data-composition-id");re&&(Q.push(re),!se&&ue!==Z&&(se=re),de==null&&(de=o.resolveStartForElement(ue,0)),ge==null&&(ge=di(ue.getAttribute("data-duration"))??i(re)??null)),ue=ue.parentElement}return{parentCompositionId:se,compositionAncestors:Q.reverse(),inheritedStart:de,inheritedDuration:ge}},s=gt(),c=Array.from(document.querySelectorAll("[data-composition-id]")),d=s?.getAttribute("data-composition-id")??null,m=s?o.resolveStartForElement(s,0):0,f=a(),p=f!=null?Math.max(0,f-Math.max(0,m)):null,b=i(d),y=fi(s??document.body),x=qc(...c.filter(z=>z!==s).map(z=>{let Z=o.resolveStartForElement(z,0),Q=o.resolveDurationForElement(z)??i(z.getAttribute("data-composition-id"))??null;return!Number.isFinite(Z)||Q==null||Q<=0?null:Math.max(0,Z)+Q})),v=x!=null?Math.max(0,x-Math.max(0,m)):null,E=typeof b=="number"&&Number.isFinite(b)&&b>0?b:null,C=typeof y=="number"&&Number.isFinite(y)&&y>0?y:null,H=typeof p=="number"&&Number.isFinite(p)&&p>0?p:null,V=typeof v=="number"&&Number.isFinite(v)&&v>0?v:null,M=qc(H,V),R=E!=null&&M!=null&&E>=Yr,T=C??(R?M:qc(E,H,V))??null,W=(T!=null?m+T:null)??(typeof f=="number"&&Number.isFinite(f)&&f>0?f:null),B=(z,Z)=>!Number.isFinite(Z)||Z<=0?0:W==null||!Number.isFinite(W)?Z:!Number.isFinite(z)||z>=W?0:Math.max(0,Math.min(Z,W-z)),X=[],ae=[],N="[data-start], [data-track-index], [data-composition-id], video, audio, img",j=Array.from(document.querySelectorAll(N)),I=0,P=(z,Z)=>{if(z===s||["SCRIPT","STYLE","LINK","META","TEMPLATE","NOSCRIPT"].includes(z.tagName))return null;let Q=l(z,s),de=z.tagName.toLowerCase(),ge=de==="video"||de==="audio"?o.resolveMediaStartForElement(z):o.resolveStartForElement(z,Q.inheritedStart??0),se=z.getAttribute("data-composition-id"),ue=!!se&&se!==d,re=fi(z);if(re==null&&ue&&(re=i(se)),re==null&&Te(z)&&Number.isFinite(z.duration)&&(re=Vt(z,z.duration)),re==null&&(re=$r(z,ge)),re==null){let we=Q.inheritedDuration;if(we!=null&&we>0){let Tt=(Q.inheritedStart??0)+we;re=Math.max(0,Tt-ge)}}if(re==null||re<=0||(re=B(ge,re),re<=0))return null;let Be=o.resolveHostSlotsForElement(z);if(Be.length>0){let we=yr({start:ge,end:ge+re},Be),_e=ue;if(we.end<=we.start&&!_e)return null;ge=we.start,re=we.end-we.start}let Me=se&&se!==d?"composition":de==="video"?"video":de==="audio"?"audio":de==="img"?"image":"element";return{id:Dc(z)??se??null,label:QR(z,Me,X.length),start:ge,duration:re,track:Xr(z,Z),zIndex:$c(z),stackingContextId:vs(z,t),kind:Me,tagName:de,compositionId:z.getAttribute("data-composition-id"),compositionAncestors:Q.compositionAncestors,parentCompositionId:Q.parentCompositionId,nodePath:null,compositionSrc:mi(z.getAttribute("data-composition-src")),playbackStart:vt(z),playbackRate:mt(z),assetUrl:k0(z),timelineRole:z.getAttribute("data-timeline-role"),timelineLabel:z.getAttribute("data-timeline-label"),timelineGroup:z.getAttribute("data-timeline-group"),timelinePriority:di(z.getAttribute("data-timeline-priority"))}},D=z=>{X.push(z),I=Math.max(I,z.start+z.duration)};for(let[z,Z]of j.entries()){let Q=P(Z,z);Q&&D(Q)}for(let z of e.parked??[]){let Z=e.parkedClips?.get(z.name);if(!Z){let Q=j.length;Z=Array.from(z.host().querySelectorAll(N)).flatMap((de,ge)=>P(de,Q+ge)??[]),e.parkedClips?.set(z.name,Z)}for(let Q of Z)D(Q)}let w=new Set(X.map(z=>z.id)),L=s?.getAttribute("data-composition-id")??null,Y=L?r[L]??null:null;if(Y&&s){let z=Y;if(typeof z.getChildren=="function")try{let Z=z.getChildren(!0,!0,!1)??[],Q=new Map;for(let se of s.children){let ue=se;if(!ue.id)continue;let re=ue.tagName.toLowerCase();re==="script"||re==="style"||re==="link"||Q.set(ue,{id:ue.id,start:1/0,end:-1/0})}let de=se=>{let ue=se;for(;ue;){if(Q.has(ue))return ue;if(ue===s)return null;ue=ue.parentElement}return null};for(let se of Z){if(typeof se.targets!="function"||typeof se.startTime!="function"||typeof se.duration!="function")continue;let ue=se.startTime(),re=se.parent;for(;re&&re!==Y&&typeof re.startTime=="function";)ue+=re.startTime(),re=re.parent;let Be=ue+se.duration();if(!(!Number.isFinite(ue)||!Number.isFinite(Be)))for(let Me of se.targets()){if(!He(Me))continue;let we=de(Me);if(!we)continue;let _e=Q.get(we);_e&&(_e.start=Math.min(_e.start,ue),_e.end=Math.max(_e.end,Be))}}let ge=X.length>0?Math.max(...X.map(se=>se.track))+1:0;for(let[se,ue]of Q){if(ue.start===1/0||ue.end===-1/0)continue;let re=se;if(w.has(re.id))continue;let Be=Math.max(0,ue.end-ue.start);if(Be<=0)continue;let Me=B(ue.start,Be);Me<=0||(I=Math.max(I,ue.start+Me),X.push({id:re.id,label:re.getAttribute("data-timeline-label")??re.getAttribute("data-label")??re.getAttribute("aria-label")??re.id,start:ue.start,duration:Me,track:Xr(re,ge),zIndex:$c(re),stackingContextId:vs(re,t),kind:"element",tagName:re.tagName.toLowerCase(),compositionId:re.getAttribute("data-composition-id"),compositionAncestors:L?[L]:[],parentCompositionId:L,nodePath:null,compositionSrc:null,playbackStart:vt(re),playbackRate:mt(re),assetUrl:null,timelineRole:re.getAttribute("data-timeline-role"),timelineLabel:re.getAttribute("data-timeline-label"),timelineGroup:re.getAttribute("data-timeline-group"),timelinePriority:di(re.getAttribute("data-timeline-priority"))}),w.add(re.id))}}catch(Z){$("runtime.timeline.site1",Z)}}if(s&&T!=null&&T>0){let z=X.length>0?Math.max(...X.map(Z=>Z.track))+1:0;for(let Z of s.children){let Q=Z;if(!Q.id||w.has(Q.id))continue;let de=Q.getAttribute("data-timeline-role");if(de!=="overlay"&&de!=="persistent-overlay")continue;let ge=Q.tagName.toLowerCase();if(ge==="script"||ge==="style"||ge==="link"||ge==="meta"||window.getComputedStyle(Q).display==="none")continue;let ue=B(0,T);ue<=0||(I=Math.max(I,ue),X.push({id:Q.id,label:Q.getAttribute("data-timeline-label")??Q.getAttribute("data-label")??Q.getAttribute("aria-label")??Q.id,start:0,duration:ue,track:Xr(Q,z),zIndex:$c(Q),stackingContextId:vs(Q,t),kind:"element",tagName:ge,compositionId:Q.getAttribute("data-composition-id"),compositionAncestors:L?[L]:[],parentCompositionId:L,nodePath:null,compositionSrc:null,playbackStart:vt(Q),playbackRate:mt(Q),assetUrl:null,timelineRole:de,timelineLabel:Q.getAttribute("data-timeline-label"),timelineGroup:Q.getAttribute("data-timeline-group"),timelinePriority:di(Q.getAttribute("data-timeline-priority"))}),w.add(Q.id))}}for(let z of c){if(z===s)continue;let Z=z.getAttribute("data-composition-id");if(!Z||!Uc(Z))continue;let Q=o.resolveStartForElement(z,0),de=fi(z);if((de==null||de<=0)&&M0(z)!=null){let re=M0(z);de=Math.max(0,re-Q)}let ge=i(Z),se=de&&de>0?de:ge;if(se==null||se<=0)continue;let ue=B(Q,se);ue<=0||ae.push({id:Z,label:z.getAttribute("data-label")??L0(z)??Z,start:Q,duration:ue,thumbnailUrl:mi(z.getAttribute("data-thumbnail-url")),avatarName:null})}let te=Math.max(I||0,T??0),he=te>0?te:1,Ee=Math.max(1,Math.ceil(he*Math.max(1,e.canonicalFps)));return{..._s(e.canonicalFps),source:"hf-preview",type:"timeline",compositionContractVersion:1,durationSeconds:he,durationInFrames:Ee,clips:X,scenes:ae,compositionWidth:qr(s?.getAttribute("data-width"))??1920,compositionHeight:qr(s?.getAttribute("data-height"))??1080}}var On=new Map,jc=(e,t="")=>`${t}[${ft}="${CSS.escape(e)}"]`,F0=e=>fi(e)??0,Kc=e=>Array.from(e.querySelectorAll("video, audio, [data-composition-id]")).every(t=>F0(t)>0),ZR=e=>{let t=e.parentElement;return!e.hasAttribute(Mn)&&!e.hasAttribute("data-hf-original-composition-id")&&(Hn(e)||Kc(e))&&t?.hasAttribute("data-composition-id")===!0&&t.closest(`[${ft}]`)===null};function Yc(e){let t=Number(e.getAttribute("data-start")?.trim()||Number.NaN),n=F0(e);return Number.isFinite(t)&&n>0?{start:t,end:t+n}:null}function P0(){return document.querySelector(`meta[name="${Rn}"]`)?Array.from(document.querySelectorAll(`[${ft}]:not(style, script)`)).flatMap(e=>{let t=ZR(e)?Yc(e):null;return t?[{name:e.getAttribute(ft),host:e,...t}]:[]}).sort((e,t)=>e.start-t.start):[]}var Rs=()=>P0().filter(({name:e})=>On.has(e)).map(({name:e,start:t,end:n})=>({name:e,start:t,end:n})),e1=10;function Ms(e,t,n){let r=e.find(i=>i.start>t),o=i=>i.start<=t?t<=i.end:n?i.start<=t+e1:i===r;return new Set(e.filter(o).map(i=>i.name))}var Jr=e=>document.querySelector(`${jc(e)}:not(style, script)`),Hn=e=>e.hasAttribute(Tn);function Xc(e){let t=Jr(e);if(!t||Hn(t))return t;for(let r of document.querySelectorAll(jc(e,"script")))r.remove();let n=t.cloneNode(!1);return n.setAttribute(Tn,""),t.replaceWith(n),n}function D0(e){let t=Jr(e),n=On.get(e);if(!t||!Hn(t)||!n)return null;let r=document.createElement("template");r.innerHTML=n.html;let o=document.importNode(r.content.firstElementChild,!0);for(let{name:i,value:a}of Array.from(t.attributes))i!==Tn&&o.setAttribute(i,a);return t.replaceWith(o),{host:o,placeholder:t,scripts:n.scripts.map(i=>i.cloneNode(!0))}}function I0(e=0){On.clear(),ks.clear();let t=P0(),n=Ms(t,e,!1);for(let{name:r,host:o}of t){let i=Array.from(document.querySelectorAll(jc(r,"script")));On.set(r,{html:o.outerHTML,scripts:i.map(a=>a.cloneNode(!0))}),n.has(r)||Xc(r)}}var N0={"data-duration":kn,"data-end":Ln};function t1(e,t,n){let r=new Set([...t.getAttributeNames(),...n.getAttributeNames()].filter(o=>t.getAttribute(o)!==n.getAttribute(o)));for(let o of r){let i=n.getAttribute(o);i===null?e.removeAttribute(o):e.setAttribute(o,i),o in N0&&e.removeAttribute(N0[o])}}function Jc(e,t,n){let r=On.get(e);if(!r)return;ks.delete(e);let o=Jr(e);if(o&&Hn(o)){let i=document.createElement("template");i.innerHTML=r.html,t1(o,i.content.firstElementChild,t)}On.set(e,{html:t.outerHTML,scripts:n.map(i=>i.cloneNode(!0))})}var ks=new Map,O0=e=>{let t=Hn(e)?e.getAttribute(ft):null;return t!==null&&On.has(t)&&e.parentElement?t:null};function Qc(e){let t=O0(e);if(t===null)return null;let n=e.parentElement.cloneNode(!1),r=document.createElement("template");return r.innerHTML=On.get(t).html,n.append(r.content),n.firstElementChild}var H0=()=>Array.from(document.querySelectorAll(`[${Tn}]`)).flatMap(e=>{let t=O0(e);return t===null?[]:[{name:t,host:()=>Qc(e)}]});var n1=e=>(e.timeScale?.()??1)===1&&(e.repeat?.()??0)===0,G0=(e,t)=>t+(e.startTime?.()??0),r1=(e,t)=>t+(e.totalDuration?.()??1/0),o1=e=>e.targets?.()??[];function i1(e,t){for(let n=He(e)?e:null;n;n=n.parentElement)n.hasAttribute(We)&&t.add(n)}function B0(e,t,n){let r=new Set,o=(c,d)=>d>t&&c<=n,i=c=>c.getChildren?.(!1,!1,!0)??[],a=(c,d)=>c.getChildren?.(!1,!0,!1,t-d)??[],l=(c,d)=>{let m=G0(c,d);if(m>t&&m<=n)for(let f of o1(c))i1(f,r)},s=(c,d)=>{let m=i(c).every(f=>{let p=G0(f,d);return n1(f)&&(!o(p,r1(f,p))||s(f,p))});if(m)for(let f of a(c,d))l(f,d);return m};return s(e,0)?r:null}var U0=':not([muted]):is(:not([data-has-audio]),[data-has-audio="true"])',B3=`audio[data-start], video[data-start]${U0}`;function Ls(e){if(e.tagName.toLowerCase()!=="video"||e.hasAttribute("muted"))return!1;let t=e.getAttribute("data-has-audio");return t===null||t==="true"}function W0(e){return(e.volume??1)>1||!!(e.fxChain||e.automation||e.audioGroup||e.masterChain)}var pi="data-hf-render-id",V0="data-hf-group-render-id";function Zc(e){return e.getAttribute(pi)||e.id||null}var a1="__render_frame_",s1="__";function l1(e){return`${a1}${e}${s1}`}function u1(e){let t=Zc(e);return t?l1(t):null}function Nt(e){let t=u1(e),n=t?document.getElementById(t):null;if(!n)return null;let r=e.nextElementSibling;for(;r&&r.id!==t;)r=r.nextElementSibling;return r??(r=n),Qe(r)?r:null}function At(e){return e+1e-5}function Ns(e){let t=window.__HF_RENDER_FRAME_VIDEO_IDS;return e.tagName==="VIDEO"&&t?.includes(Zc(e)??"")===!0}function Fs(e){if(Ns(e))return;e.preload!=="auto"&&(e.preload="auto");let t=e.tagName==="VIDEO"&&e.networkState===2;e.readyState<3&&!t&&e.load()}var ed=new WeakMap;function $0(e){ed.get(e)?.()}function q0(e,t){if($0(e),e.tagName!=="VIDEO"||Ns(e))return;let n=()=>{if(!e.isConnected||!e.paused||e.seeking||!t())return;let i=vt(e);if(!(Math.abs(e.currentTime-i)<=.02))try{e.currentTime=At(i)}catch(a){$("runtime.preload.playbackStart",a)}};if(e.readyState>0){n();return}let r=()=>{e.removeEventListener("loadedmetadata",o),e.removeEventListener("error",r),e.removeEventListener("abort",r),ed.delete(e)},o=()=>{r(),n()};ed.set(e,r),e.addEventListener("loadedmetadata",o),e.addEventListener("error",r),e.addEventListener("abort",r)}function td(e){$0(e);for(let t of e.querySelectorAll("source"))t.remove();e.removeAttribute("src"),e.load()}function z0(e){if(e.querySelector("source"))return;let t=e.getAttribute("src");td(e),t!==null&&e.setAttribute("src",t)}function Ps(e){return Ue(e.getAttribute("data-duration"))!=null}function j0(){let e=window;if(e.__hfMediaDeferral?.disconnect(),e.__hfMediaDeferral=void 0,!ss())return;let t=(n,r)=>{Ue(n.getAttribute("data-start"))!=null&&Ps(n)&&r(n)>0&&(n.preload="none")};e.__hfMediaDeferral=new MutationObserver(n=>{let r=lt({}).resolveMediaStartForElement;for(let o of n)for(let i of o.addedNodes){if(i.nodeType!==1)continue;let a=i;a.matches("video, audio")&&t(a,r);for(let l of a.querySelectorAll("video, audio"))t(l,r)}}),e.__hfMediaDeferral.observe(document.documentElement,{childList:!0,subtree:!0})}var K0=30;function Y0(e){K0=Number.isFinite(e)&&e>0?e:30}function Re(e){try{window.parent.postMessage({...e,..._s(K0)},"*")}catch(t){$("bridge.postMessage",t)}}var c1=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(d1(e,t),e.seekMode??"commit"),tick:(e,t)=>t.onTick(),"set-muted":(e,t)=>t.onSetMuted(!!e.muted),"set-volume":(e,t)=>t.onSetVolume(Math.max(0,Math.min(1,Number(e.volume??1)))),"set-media-output-muted":(e,t)=>t.onSetMediaOutputMuted(!!e.muted),"set-native-media-sync-disabled":(e,t)=>t.onSetNativeMediaSyncDisabled(!!e.disabled),"set-web-audio-media-disabled":(e,t)=>t.onSetWebAudioMediaDisabled(!!e.disabled),"set-playback-rate":(e,t)=>t.onSetPlaybackRate(Number(e.playbackRate??1)),"set-idle-heartbeat":(e,t)=>t.onSetIdleHeartbeat(!!e.slow),"set-display-scale":(e,t)=>t.onSetDisplayScale?.(Number(e.scale)),"set-preview-quality":(e,t)=>t.onSetPreviewQuality?.(Number(e.level)),"retry-preview-copies":(e,t)=>t.onRetryPreviewCopies?.(),"request-preview-facts":(e,t)=>t.onRequestPreviewFacts?.(),"set-root-duration":(e,t)=>t.onSetRootDuration(Number(e.durationSeconds??0)),"set-play-range":(e,t)=>t.onSetPlayRange(Number(e.startSeconds??0),e.endSeconds==null?null:Number(e.endSeconds)),"set-color-grading":(e,t)=>t.onSetColorGrading(e.target??null,e.grading??null),"set-color-grading-compare":(e,t)=>t.onSetColorGradingCompare(e.target??null,e.compare??null),"enable-pick-mode":(e,t)=>t.onEnablePickMode(),"disable-pick-mode":(e,t)=>t.onDisablePickMode(),"flash-elements":e=>m1(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 d1(e,t){let n=Number(e.timeSeconds);if(Number.isFinite(n))return Math.max(0,n);let o=Wc(e.fps)??t.getCanonicalFps();return Math.max(0,Number(e.frame??0))/o}function f1(e){let t=v0(e);return t.status!=="unsupported"?!1:(Re({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 m1(e){let t=e.selectors,n=e.duration||800;t&&p1(t,n)}function X0(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"||f1(r))return;let o=r.action;if(typeof o!="string")return;let i=c1.get(o);i&&i(r,e)};return window.addEventListener("message",t),Re({source:"hf-preview",type:"ready"}),t}function p1(e,t){if(!document.getElementById("__hf-flash-styles")){let n=document.createElement("style");n.id="__hf-flash-styles",n.textContent=`
|
|
34
34
|
.__hf-flash {
|
|
35
35
|
outline: 2px solid rgba(59, 130, 246, 0.6) !important;
|
|
36
36
|
outline-offset: 2px !important;
|
|
@@ -40,8 +40,8 @@ https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.p
|
|
|
40
40
|
0% { outline-color: rgba(59, 130, 246, 0.8); }
|
|
41
41
|
100% { outline-color: transparent; }
|
|
42
42
|
}
|
|
43
|
-
`,document.head.appendChild(n)}for(let n of e)try{document.querySelectorAll(n).forEach(o=>{o.classList.add("__hf-flash"),setTimeout(()=>o.classList.remove("__hf-flash"),t)})}catch(r){$("bridge.flashElements.querySelector",r)}}var hi={windowSeconds:3,choppyShare:.25,warmupSeconds:1,reportEveryMs:1e3},c1=.5,un=[],Ds=null,td=0,Y0="",nd=!1,rd=0;function J0(e){Re({source:"hf-preview",type:"preview-health",health:e})}function gi(){un=[],Ds=null,nd&&J0(null),nd=!1,rd=0}var X0=null;function Q0(e){e!==X0&&(X0=e,gi())}function Is(){gi()}function d1(e,t,n){let r=hi.windowSeconds*1e3;for(;un[0]&&un[0].atMs<e-r;)un.shift();let o=un[0];if(!o)return;let i=e-(o.atMs-o.gapMs);if(i<r||e-rd<hi.reportEveryMs)return;let a=un.filter(m=>m.drawn).length,l=i/1e3*t*n,s=l>0?1-Math.min(a,l)/l:0,c=un.reduce((m,f)=>m+(f.waiting?f.gapMs:0),0),d=Math.max(s,c/i);nd=!0,rd=e,J0({droppedShare:Math.round(d*1e3)/1e3,seconds:Math.round(i/100)/10,choppy:d>=hi.choppyShare,fps:Math.round(a/(i/1e3)*10)/10,worstFrameMs:Math.round(Math.max(...un.map(m=>m.gapMs))),mode:"play"})}function Z0(e){let{nowMs:t,filmTime:n,fps:r,rate:o}=e,i=`${r}|${o}|${e.layoutKey}`;if(!e.playing||e.hidden){gi();return}i!==Y0&&(Y0=i,gi());let a=Math.floor(n*r+1e-6),l=Ds;if(Ds={ms:t,film:n,frame:a},!l){td=t+hi.warmupSeconds*1e3;return}let s=t-l.ms,c=l.film+s/1e3*o;if(n<l.film||n>c+c1){gi(),Ds={ms:t,film:n,frame:a},td=t+hi.warmupSeconds*1e3;return}t<td||(un.push({atMs:t,gapMs:s,drawn:a!==l.frame,waiting:e.waiting}),d1(t,r,o))}var f1=1e3,xr=new Map,od=!1,eb=!1,bi,Os=!1;function m1(){for(let r of xr.keys())r.isConnected||xr.delete(r);let e=[...xr.values()],t=od&&e.length>0;if(!t&&!eb)return!1;eb=t;let n=e.reduce((r,o)=>r+(o.state==="ready"?1:o.progress??0),0);return Re({source:"hf-preview",type:"preview-copies",copies:t?{total:e.length,ready:e.filter(r=>r.state==="ready").length,failed:e.filter(r=>r.state==="failed").length,progress:n/e.length,error:e.some(r=>r.state==="failed")?"failed":null}:null}),!0}function id(){if(bi!==void 0){Os=!0;return}m1()&&(bi=setTimeout(()=>{bi=void 0,Os&&(Os=!1,id())},f1))}function tb(e){xr.clear(),od=e<1,clearTimeout(bi),bi=void 0,Os=!1,id()}function Gn(e,t,n=null){od&&(xr.set(e,{state:t,progress:n}),id())}function nb(){return[...xr].filter(([,e])=>e.state==="failed").map(([e])=>e)}function rb(){return[...xr.values()].every(e=>e.state==="ready")}var ad=null;function ob(e){ad=e}function wt(e,t){if(ad)try{ad({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(n){$("runtime.analytics.site1",n)}}function p1(e){let t=e.toLowerCase().replace(/[^a-z0-9]+/g,"-"),n=0,r=t.length;for(;n<r&&t[n]==="-";)n++;for(;r>n&&t[r-1]==="-";)r--;let o=t.slice(n,r);return o.length>0?o:"node"}function Qr(e){return`--${p1(e)}`}function ib(e){let t=new Map;for(let n of e){let r=Qr(n),o=t.get(r);o?o.includes(n)||o.push(n):t.set(r,[n])}return[...t.values()].filter(n=>n.length>1)}function sb(){if(typeof document>"u")return{};let e=new Set;document.documentElement?.hasAttribute("data-composition-variables")&&e.add(document.documentElement);for(let o of Array.from(document.querySelectorAll("[data-composition-variables]")))e.add(o);let t={};for(let o of e)Object.assign(t,yi(o));let n=Gs(),r={...t,...n};for(let o of e)ld(o,r);return r}var ab=new Set;function lb(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 h1(e,t){return t?.trim()||e.getAttribute("data-composition-id")?.trim()||e.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()||"composition"}function g1(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 b1(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=g1(e);return r.length===0||r.some(o=>String(o)===String(n))?null:{id:e.id,value:n,allowed:r}}function ld(e,t,n){if(!e)return;let r=lb(e);if(r.length===0)return;let o=h1(e,n);for(let i of r){let a=b1(i,t);if(!a)continue;let l=`${o}|${a.id}|${String(a.value)}`;if(ab.has(l))continue;ab.add(l);let s="default"in i?JSON.stringify(i.default):"the composition default";globalThis.console.warn(`[hyperframes] runtime_unknown_enum_value: ${o} variable "${a.id}" got ${JSON.stringify(a.value)}, which is not a declared option (${a.allowed.join(", ")}). Rendering ${s} instead.`)}}function yi(e){let t={};for(let n of lb(e))typeof n.id!="string"||!("default"in n)||(t[n.id]=n.default);return t}var sd="data-hf-css-vars";function Hs(e){return"style"in e&&typeof e.style?.setProperty=="function"}function ud(e,t){if(!Hs(e))return;let n=[];for(let[r,o]of Object.entries(t))if(typeof o=="string"&&o!==""||typeof o=="number"){let i=Qr(r);e.style.setProperty(i,String(o)),n.push(i)}n.length>0&&e.setAttribute(sd,n.join(" "))}function ub(e,t,n){let r={};for(let[o,i]of Object.entries(t)){let a=Qr(o);((Hs(e)?e.style.getPropertyValue(a):"")||(n?n.getComputedStyle(e).getPropertyValue(a):"")).trim()===""&&(r[o]=i)}return r}function cb(e){if(!Hs(e))return;let t=e.getAttribute(sd);if(t){for(let n of t.split(" "))n.startsWith("--")&&e.style.removeProperty(n);e.removeAttribute(sd)}}function db(e){let t=new Set;e.documentElement?.hasAttribute("data-composition-variables")&&t.add(e.documentElement);for(let o of Array.from(e.querySelectorAll("[data-composition-variables]")))t.add(o);let n=Gs(),r=[];for(let o of t)r.push(...y1(o,n,e.defaultView));for(let o of ib(r))globalThis.console.warn(`composition variables ${o.join(", ")} collapse to the same CSS property ${Qr(o[0]??"")}. Rename one to avoid cross-talk`)}function y1(e,t,n){if(!Hs(e))return[];let r=yi(e),o={};for(let[i,a]of Object.entries(r)){if(i in t)continue;let l=Qr(i);(e.style.getPropertyValue(l)||(n?n.getComputedStyle(e).getPropertyValue(l):"")).trim()===""&&(o[i]=a)}for(let[i,a]of Object.entries(t))i in r&&(o[i]=a);return ud(e,o),Object.keys(r)}function fb(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 Gs(){if(typeof window>"u")return{};let e=window.__hfVariables;return!e||typeof e!="object"||Array.isArray(e)?{}:e}function Bs(e,t,n,r){let o=!1;try{e.pause()}catch(i){o=!0,$(r,i)}try{e.currentTime=t}catch(i){$(n,i)}if(o)try{e.pause()}catch(i){$(r,i)}}function mb(e){let t=[],n=(f,p=()=>f.getAnimations())=>{if(typeof f.getAnimations!="function")return[];try{return p()}catch{return[]}},r=f=>{let p=new Map;if(t.length===0)return p;let b=typeof CSSAnimation<"u";for(let y of n(document,f)){if(b&&!(y instanceof CSSAnimation))continue;let x=y.effect;if(!x?.target||x.pseudoElement)continue;let v=p.get(x.target);v?v.push(y):p.set(x.target,[y])}return p},o=(f=[],p=[])=>[...p,...f.filter(b=>!p.includes(b)&&b.playState!=="idle")],i=f=>{let p=f.closest("[data-start]")??f;return e?.resolveStartSeconds?e.resolveStartSeconds(p):Number.parseFloat(p.getAttribute("data-start")??"0")||0},a=f=>{let p=E=>(E||"").split(",").map(C=>Number.parseFloat(C)/(C.trim().endsWith("ms")?1e3:1)),b=p(f.animationDuration),y=p(f.animationDelay),x=f.animationName.split(","),v=0;return x.forEach((E,C)=>{if(E.trim()==="none")return;let H=y[C%y.length]+b[C%b.length];H>v&&(v=H)}),{cycleSeconds:v,delays:x.map((E,C)=>y[C%y.length]||0)}},l=(f,p)=>{let b=null;try{b=f.effect?.getComputedTiming?.()??null}catch(x){$("runtime.adapters.css.site5",x)}if(!b)return{};let y=Number(b.endTime);return Number.isFinite(y)?{endSeconds:p+y/1e3}:{unbounded:!0}},s=(f,p)=>{for(let b of f)Bs(b,p,"runtime.adapters.css.site1","runtime.adapters.css.site2")},c=f=>{for(let p of f)try{p.play()}catch(b){$("runtime.adapters.css.site3",b)}},d=f=>{for(let p of f)try{p.pause()}catch(b){$("runtime.adapters.css.site4",b)}},m=f=>{f.baseDelay?f.el.style.animationDelay=f.baseDelay:f.el.style.removeProperty("animation-delay"),f.basePlayState?f.el.style.animationPlayState=f.basePlayState:f.el.style.removeProperty("animation-play-state")};return{name:"css",discover:()=>{for(let b of t)m(b);let f=new Map(t.map(b=>[b.el,b.handles]));t=[];let p=document.querySelectorAll("*");for(let b of p){if(!Ce(b))continue;let y=window.getComputedStyle(b);!y.animationName||y.animationName==="none"||t.push({el:b,baseDelay:b.style.animationDelay||"",basePlayState:b.style.animationPlayState||"",...a(y),handles:f.get(b)})}},getAnimationCycleEndSeconds:()=>{let f=0;for(let p of t)!p.el.isConnected||p.cycleSeconds<=0||(f=Math.max(f,i(p.el)+p.cycleSeconds));return f>0?f:null},getInferredDurationSeconds:()=>{let f=0;for(let p of t){if(!p.el.isConnected)continue;let b=i(p.el);for(let y of n(p.el)){let x=l(y,b);x.endSeconds!=null&&(f=Math.max(f,x.endSeconds))}}return f>0?f:null},seek:f=>{let p=Number(f.time)||0,b=r(f.pageAnimations);for(let y of t)y.handles=o(y.handles,b.get(y.el));for(let y of t){if(!y.el.isConnected)continue;let x=i(y.el),v=Math.max(0,p-x)*1e3;if(y.handles?.length){y.el.style.animationDelay!==y.baseDelay&&m(y),s(y.handles,v);continue}y.el.style.animationPlayState="paused",y.el.style.animationDelay=y.delays.map(E=>`${Number((E-v/1e3).toFixed(3))}s`).join(", ")}},pause:f=>{let p=r(f?.pageAnimations);for(let b of t){if(!b.el.isConnected)continue;let y=p.get(b.el);y&&(d(y),m(b))}},play:()=>{let f=r();for(let p of t)p.el.isConnected&&(m(p),c(f.get(p.el)??[]))},revert:()=>{t=[]}}}function Vs(e,t,n){e.totalDuration?.();let r=e.getChildren?.(!1,!0,!0)??[],o=w1(e,n,t).map(s=>[s,s.ratio,s._zTime,s._act]),i=bb(r,t).map(s=>[s,s._ts]),a=new Set;for(let[s]of i)for(let c=s.parent;c&&!a.has(c);c=c.parent)a.add(c);let l=[...a].map(s=>[s,s._dur,s._tDur,s._end,s._dirty]);for(let[s]of i)s._ts=0;try{x1(e,r,t,n)}finally{for(let[s,c]of i)s._ts=c;for(let[s,c,d,m,f]of l)Object.assign(s,{_dur:c,_tDur:d,_end:m,_dirty:f})}for(let[s,c,d,m]of o)s.ratio=c,s._zTime=d,s._act=m}function x1(e,t,n,r){let o=n>=Us;e.totalTime(o?n-Us:n+Us,!0),Eb(t,n,o?Us:0),e.totalTime(n,!0),!o&&r&&gb(e,r,n)}function gb(e,t,n){for(let r of A1(e,t,n)){let{ratio:o,_zTime:i,_act:a}=r;r.render(0,!0,!0),Object.assign(r,{ratio:o,_zTime:i,_act:a})}}function S1(e){let t=e,[n]="_first"in t?t._first?[t._first]:[]:e.getChildren?.(!1,!0,!0)??[],r=n?.parent;return r!==void 0&&!r._initted}function xi(e,t,n,r){if(typeof e.totalTime!="function")return typeof e.seek=="function"&&e.seek(t,n),!1;let o=Number(e.totalTime());return e.totalTime(t,n),t<o&&r&&gb(e,r,t),o!==t||!S1(e)?!1:(Vs({totalTime:e.totalTime.bind(e),totalDuration:e.totalDuration?.bind(e),getChildren:e.getChildren?.bind(e)},t,r),!0)}var cd=1e-6;function bb(e,t,n=[]){for(let r of e)r.startTime()>t+cd?n.push(r):r.getChildren&&r.endTime()>=t&&bb(r.getChildren(!1,!0,!0),r.time(),n);return n}function yb(e){return(e.getChildren?.(!0,!0,!0)??[]).filter(t=>{let n=t;return typeof n.getChildren=="function"||n.totalDuration?.()===0})}var pb=new WeakMap,hb=.05;function E1(e,t){let n=Number(e._start);for(let r=e.parent;r&&r!==t;r=r.parent){if(r._repeat||!r._ts)return null;n=Number(r._start)+n/r._ts}return Number.isFinite(n)?n:null}function v1(e,t){let n={version:t.version,always:[],points:[]};for(let r of yb(e)){let o=r,i=typeof o.getChildren=="function"?null:E1(o,t.owner);i===null?n.always.push(r):n.points.push({at:i,mark:r})}return n.points.sort((r,o)=>r.at-o.at),n}function xb(e,t){let n=0,r=e.length;for(;n<r;){let o=n+r>>1;e[o].at<t?n=o+1:r=o}return n}function Sb(e,t){let n=pb.get(t.owner);return n?.version!==t.version&&(n=v1(e,t),pb.set(t.owner,n)),n}function A1(e,t,n){let{points:r}=Sb(e,t),o=[];for(let i=xb(r,n-cd);i<r.length&&!(r[i].at>n+cd);i++)o.push(r[i].mark);return o}function w1(e,t,n){if(!t)return yb(e);let r=Sb(e,t),{points:o}=r,i=[...r.always],a=n+hb;for(let l=xb(o,n-hb);l<o.length&&!(o[l].at>a);l++)i.push(o[l].mark);return i}var Ws=2e-8,Us=.001,_1=e=>{let t=e;return typeof t?.render=="function"&&typeof t.startTime=="function"&&typeof t.paused=="function"&&typeof t.timeScale=="function"&&t.timeScale()>0&&!t.paused()};function C1(e){return e.vars?.keyframes&&(e.render(Ws,!0),e.render(-Ws,!0)),e._startAt&&e._startAt.render(Ws,!0,!0),!!(e.vars?.keyframes||e._startAt)}function Eb(e,t,n){for(let r of e.filter(_1)){let o=(t-r.startTime())*r.timeScale();Math.abs(o)<1e-9&&C1(r)||o>0&&T1(r,o,n*r.timeScale())}}function T1(e,t,n){t<n&&e._startAt&&e._startAt.render(Ws,!0,!0);let r=e.getChildren?e:e.timeline;r?.getChildren&&t<=e.totalDuration()&&Eb(r.getChildren(!1,!0,!0),t,n)}function vb(e){return{name:"gsap",discover:()=>{},seek:t=>{let n=e.getTimeline();if(!n)return;n.pause();let r=Math.max(0,Number(t.time)||0),o=t.suppressEvents===!0;typeof n.totalTime=="function"?(n.totalTime(r,o),Vs({totalTime:n.totalTime.bind(n),totalDuration:n.totalDuration?.bind(n),getChildren:n.getChildren?.bind(n)},r)):n.seek(r,o)},pause:()=>{let t=e.getTimeline();t&&t.pause()}}}function Ab(){return{name:"animejs",discover:()=>{try{let e=window.anime;if(!e||typeof e.running>"u")return;let t=e.running;if(!Array.isArray(t)||t.length===0)return;let n=window.__hfAnime??[],r=new Set(n);for(let o of t)r.has(o)||n.push(o);window.__hfAnime=n}catch(e){$("runtime.adapters.animejs.site1",e)}},seek:e=>{let t=Math.max(0,(Number(e.time)||0)*1e3),n=window.__hfAnime;if(!(!n||n.length===0))for(let r of n)try{typeof r.seek=="function"&&r.seek(t)}catch(o){$("runtime.adapters.animejs.site2",o)}},pause:()=>{let e=window.__hfAnime;if(!(!e||e.length===0))for(let t of e)try{typeof t.pause=="function"&&t.pause()}catch(n){$("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){$("runtime.adapters.animejs.site4",n)}},revert:()=>{}}}function Tb(e){let t=r=>{let o=_b(r),i=o&&typeof o.closest=="function"?o.closest("[data-composition-id]"):null;return i&&e?.resolveStartSeconds?e.resolveStartSeconds(i):0},n=(r,o)=>Math.max(0,o-t(r));return{name:"lottie",discover:()=>{try{let r=window.lottie;if(r&&typeof r.getRegisteredAnimations=="function"){let o=r.getRegisteredAnimations();if(Array.isArray(o)&&o.length>0){let i=window.__hfLottie??[],a=new Set(i);for(let l of o)a.has(l)||i.push(l);window.__hfLottie=i}}}catch(r){$("runtime.adapters.lottie.site1",r)}},seek:r=>{let o=Math.max(0,Number(r.time)||0),i=window.__hfLottie;if(!(!i||i.length===0))for(let a of i)try{let l=n(a,o),s=a.loop===!0;if($s(a)){let c=l*a.frameRate;a.totalFrames>0&&s?a.goToAndStop(dd(c,a.totalFrames),!0):a.totalFrames>0&&c>=a.totalFrames?a.goToAndStop(a.totalFrames-1,!0):a.goToAndStop(l*1e3,!1)}else if(fd(a)){if(typeof a.setFrame=="function"){let c=a.totalFrames??0,d=a.duration??0;if(!Number.isFinite(c)||c<=0||!Number.isFinite(d)||d<=0)continue;let m=l*c/d;a.setFrame(Math.min(s?dd(m,c):m,c-1))}else if(typeof a.setCurrentRawFrameValue=="function"){let c=a.totalFrames??0,d=a.frameRate??30,m=s&&c>0?dd(l*d,c):l*d;c>0&&a.setCurrentRawFrameValue(Math.min(m,c-1))}else if(typeof a.seek=="function"){let c=a.duration??0;if(Number.isFinite(c)&&c>0){let d=Math.min(100,(s?l%c:l)/c*100);a.seek(d)}}}}catch(l){$("runtime.adapters.lottie.site2",l)}},pause:()=>{let r=window.__hfLottie;if(!(!r||r.length===0))for(let o of r)try{($s(o)||fd(o))&&o.pause()}catch(i){$("runtime.adapters.lottie.site3",i)}},revert:()=>{},getInferredDurationSeconds:()=>wb((r,o)=>o),getAnimationCycleEndSeconds:()=>wb((r,o)=>_b(r)?.isConnected===!1?null:t(r)+o)}}function wb(e){let t=window.__hfLottie;if(!t||t.length===0)return null;let n=0,r=!1;for(let o of t){let i=null;try{let a=R1(o);i=a==null?null:e(o,a)}catch(a){$("runtime.adapters.lottie.site4",a)}i!=null&&(r=!0,n=Math.max(n,i))}return r?n:null}function _b(e){return $s(e)?e.wrapper:e.canvas}function dd(e,t){let n=e%t;return t-n<1e-6?0:n}function Cb(e,t){return!Number.isFinite(e)||!e||e<=0||!Number.isFinite(t)||!t||t<=0?null:e/t}function R1(e){return $s(e)?Cb(e.totalFrames,e.frameRate):fd(e)?Number.isFinite(e.duration)&&(e.duration??0)>0?e.duration??null:Cb(e.totalFrames,e.frameRate):null}function $s(e){return typeof e=="object"&&e!==null&&typeof e.goToAndStop=="function"}function fd(e){return typeof e=="object"&&e!==null&&typeof e.pause=="function"&&("totalFrames"in e||"duration"in e)}var md=-1,eo=new Set,Rb=new WeakSet,Zr,pd=0;function Mb(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){$("runtime.adapters.seek-dispatch.site1",o)}finally{n=!1}t.length!==0&&Ze(Promise.all(t))}function Ze(e,t){let n=e.then(()=>({status:"fulfilled"})).catch(r=>({status:"rejected",reason:r}));eo.add(n),t==="video-frame"&&Rb.add(n),n.then(r=>{eo.delete(n)&&r.status==="rejected"&&Zr===void 0&&(Zr={reason:r.reason})})}function qs(e){e!==md&&(md=e,Mb(e))}function zs(e){md=e,Mb(e)}function kb(){return pd>0}async function Lb(){for(let e=[...eo];e.length>0;e=[...eo])await Promise.all(e)}function Nb(){return eo.size>0}async function Fb(e){let t=()=>[...eo].filter(r=>e?.videoFrames!==!1||!Rb.has(r));pd+=1;let n=Zr;try{await Promise.resolve();for(let o=t();o.length>0;o=t()){let a=(await Promise.all(o)).find(l=>l.status==="rejected");n===void 0&&a?.status==="rejected"&&(n={reason:a.reason})}let r=Zr;if(n===void 0&&(n=r),Zr===r&&(Zr=void 0),n)throw n.reason}finally{pd-=1}}function Pb(){let e=null,t=0,n=null,r=null,o=null,i=null,a=()=>{if(typeof window>"u")return null;let d=window.THREE?.DefaultLoadingManager;return!d||typeof d!="object"||typeof d.itemsLoaded!="number"||typeof d.itemsTotal!="number"?null:d},l=c=>{i||c.itemsTotal<=c.itemsLoaded||(i=new Promise(d=>{c.onLoad=function(){try{o?.call(this)}finally{i=null,c.onLoad=o??null,d()}}}))},s=c=>{n!==c&&(n=c,r=c.onStart??null,o=c.onLoad??null,c.onStart=function(d,m,f){try{r?.call(this,d,m,f)}finally{l(c)}})};return{name:"three",discover:()=>{let c=a();c&&(s(c),l(c))},seek:c=>{e=Math.max(0,Number(c.time)||0),t=e,window.__hfThreeTime=e,qs(e)},pause:()=>{e==null&&(e=Math.max(0,t))},play:()=>{e=null},revert:()=>{e=null,t=0},getReadyPromise:()=>{let c=a();return!c||c.itemsTotal<=c.itemsLoaded?null:(i||l(c),i)}}}function $t(e){let t=null,n=new WeakSet;return{name:e.name,discover:()=>{},seek:()=>{},pause:()=>{},play:()=>{},revert:()=>{},getReadyPromise:()=>{let r=e.getInstances();if(r.length===0)return null;let o=r.filter(i=>!n.has(i));return o.length===0?null:t||(t=Promise.allSettled(o.map(i=>e.waitFor(i).then(()=>{n.add(i)}))).then(()=>{t=null}),t)}}}function Db(){return $t({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 Ib(){return $t({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 Ob(){return $t({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 Hb(){return $t({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 Gb(){return $t({name:"d3",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfD3;return Array.isArray(e)?e:[]},waitFor:e=>e.end()})}var M1=250;function Bb(){let e=null,t=0,n=null,r=()=>{n!==null&&(window.clearInterval(n),n=null)},o=()=>{n===null&&document.querySelector("[data-composition-id][data-requires-webgpu]")&&(n=window.setInterval(()=>{e!==null&&(kb()||(window.__hfTypegpuTime=e,zs(e)))},M1))};return{name:"typegpu",discover:()=>{},seek:i=>{e=Math.max(0,Number(i.time)||0),t=e,window.__hfTypegpuTime=e,qs(e)},pause:()=>{e==null&&(e=Math.max(0,t)),o()},play:()=>{r(),e=null},revert:()=>{r(),e=null,t=0}}}var to=new Map,Ub=()=>to.size>0;function Wb(e){if(to.has(e.element))throw new Error("This element already has a frame source");let t=e.sourceRange;if(t&&(!Number.isFinite(t.start)||t.start<0||!Number.isFinite(t.duration)||t.duration<=0||!Number.isFinite(t.fps)||t.fps<=0))throw new Error("Frame source ranges require a nonnegative start, positive duration and FPS");let n=new AbortController,r=new Promise(c=>{n.signal.addEventListener("abort",()=>c(),{once:!0})}),o=Promise.race([Promise.resolve(e.ready),r]);o.catch(()=>{});let i=null,a=null,l=async()=>{let c;try{for(await o;!n.signal.aborted&&i!==null;){let d=i;i=null;try{await Promise.race([e.render(d,n.signal),r])}catch(m){c??(c={reason:m})}}if(c)throw c.reason}finally{i=null,a=null}},s={element:e.element,ready:o,seek(c){return i=t?t.start+Math.min(Math.max(0,c),Math.max(0,t.duration-1/t.fps)):c,a??(a=l()),a},dispose(){n.signal.aborted||(n.abort(),i=null,to.delete(e.element),e.dispose?.())}};return to.set(e.element,s),s.dispose}function Vb(e){let t=new Set,n=[],r=null,o=()=>{for(let l of t)to.get(l.element)!==l&&t.delete(l);let a=[];for(let[l,s]of to){if(!l.isConnected){s.dispose();continue}t.has(s)||(t.add(s),Ze(s.ready)),a.push([l,s])}return a},i=new MutationObserver(()=>{o()});return i.observe(document,{childList:!0,subtree:!0}),{name:"frame-source",discover:()=>{o()},pause:()=>{},seek:({time:a})=>{for(let[l,s]of o()){let c=e.start(l),d=e.duration(l),m=c+(d??1/0),f=e.exportRenderSeek()?ws(c,m,e.canonicalFps()):{start:c,end:m};if(!jr(a,f.start,f.end,e.compositionDuration()))continue;let p=Math.max(0,a-c),b=vt(l)+Dn(Et(l),p);Ze(s.seek(b))}},getReadyPromise:()=>{let a=o().map(([,l])=>l);return a.length===0?null:((a.length!==n.length||a.some((l,s)=>l!==n[s]))&&(n=a,r=Promise.all(a.map(l=>l.ready))),r)},revert:()=>{i.disconnect();for(let a of t)a.dispose();t.clear()}}}function $b(e){let t=e.nextElementSibling;if(Qe(t)&&t.classList.contains("__render_frame__")&&t.complete&&t.naturalWidth>0)return t;let n=Nt(e);return n&&n.complete&&n.naturalWidth>0?n:null}function qb(){let e=globalThis.GPUQueue;if(!e?.prototype?.copyExternalImageToTexture)return;let t=e.prototype.copyExternalImageToTexture;e.prototype.copyExternalImageToTexture=function(n,r,o){if(Ne(n?.source)){let i=$b(n.source);if(i)return t.call(this,{...n,source:i},r,o)}return t.call(this,n,r,o)}}function zb(){let e=[globalThis.WebGL2RenderingContext,globalThis.WebGLRenderingContext],t=["texImage2D","texSubImage2D"];for(let n of e){let r=n?.prototype;if(r)for(let o of t){let i=r[o];if(typeof i!="function"||i.__hfVideoPatched)continue;let a=function(...l){let s=l.length-1,c=l[s];if(Ne(c)){let d=$b(c);d&&(l[s]=d)}return i.apply(this,l)};a.__hfVideoPatched=!0,r[o]=a}}}var k1=e=>typeof CSSAnimation<"u"&&e instanceof CSSAnimation||typeof CSSTransition<"u"&&e instanceof CSSTransition;function jb(){let e=!1,t=0,n=!1,r,o,i,a=new Set,l=new WeakMap,s=(x=()=>document.getAnimations())=>{if(!document.getAnimations)return[];try{return x()}catch{return[]}},c=x=>{let v=Number(x.currentTime);return Number.isFinite(v)&&v>0?v:0},d=(x,v)=>v<=0?x:x>=v?Math.max(0,x-v):x,m=(x,v)=>{let E=l.get(x);if(E)return E;let C={compositionTimeMs:v,animationTimeMs:e?d(c(x),v):c(x)};return l.set(x,C),C},f=(x,v)=>{if(!a.has(x)){a.add(x);let E=()=>{a.delete(x)};try{x.addEventListener("finish",E,{once:!0}),x.addEventListener("cancel",E,{once:!0})}catch(C){$("runtime.adapters.waapi.site4",C)}}m(x,v)},p=(x,v)=>{for(let E of x)f(E,v)},b=()=>{if(n||typeof Element>"u")return;let x=Element.prototype;if(typeof x.animate!="function"||x.__hfOriginalAnimate)return;let v=x.animate;try{Object.defineProperty(x,"__hfOriginalAnimate",{value:v,configurable:!0});let E=function(...C){let H=v.apply(this,C);return f(H,t),H};x.animate=E,r=x,o=v,i=E,n=!0}catch{}},y=x=>{let v=null;try{v=x.effect?.getComputedTiming?.()??null}catch(H){$("runtime.adapters.waapi.site4",H)}if(!v)return{};let E=Number(v.endTime);return Number.isFinite(E)?{endSeconds:(l.get(x)?.compositionTimeMs??0)/1e3+E/1e3}:{unbounded:!0}};return{name:"waapi",discover:()=>{e=!0,b(),p(s(),t)},seek:x=>{let v=Math.max(0,(Number(x.time)||0)*1e3);t=v,(!e||a.size>0)&&p(s(x.pageAnimations),e?v:0);for(let E of a){if(E.playState==="idle"&&k1(E)){a.delete(E);continue}let C=e?m(E,v):m(E,0),H=C.animationTimeMs+Math.max(0,v-C.compositionTimeMs);Bs(E,H,"runtime.adapters.waapi.site1","runtime.adapters.waapi.site2")}},pause:x=>{e||p(s(x?.pageAnimations),t);for(let v of a)try{v.pause()}catch(E){$("runtime.adapters.waapi.site3",E)}},revert:()=>{if(a.clear(),l=new WeakMap,e=!1,t=0,r&&o&&i&&r.animate===i)try{r.animate=o,r.__hfOriginalAnimate===o&&delete r.__hfOriginalAnimate}catch(x){$("runtime.adapters.waapi.site5",x)}r=void 0,o=void 0,i=void 0,n=!1},getInferredDurationSeconds:()=>{let x=0;for(let v of s()){let E=y(v);E.endSeconds!=null&&(x=Math.max(x,E.endSeconds))}return x>0?x:null}}}function L1(e,t,n){let r=e.filter(i=>Number.isFinite(i.time)&&Number.isFinite(i.volume)).map(i=>({time:Math.max(0,i.time-t),volume:Ve(i.volume)})).sort((i,a)=>i.time-a.time),o=[];for(let i of r){let a=o.at(-1);a&&Math.abs(a.time-i.time)<1e-9?a.volume=i.volume:o.push(i)}return o.length===0||o[0].time>0&&o.unshift({time:0,volume:Ve(n)}),o}function Kb(e,t){if(e.length===0)return 1;let n=0;for(;n<e.length-2&&t>=e[n+1].time;)n+=1;let r=e[n],o=e[n+1]??r,i=o.time-r.time,a=i<=0?0:Math.min(1,Math.max(0,(t-r.time)/i));return r.volume+(o.volume-r.volume)*a}function N1(e,t,n,r){let o=e.at(-1);!o||Math.abs(o.volume-n.volume)>1e-4?(o&&t&&t.time>o.time&&e.push(t),e.push(n)):r&&n.time>o.time&&e.push(n)}function F1(e){let t=Number.parseFloat(e??"");return Number.isFinite(t)?t:void 0}function P1(e,t){let n=lt({timelineRegistry:window.__timelines,includeAuthoredTimingAttrs:!0}).resolveMediaStartForElement(e),r=Ue(e.dataset.end)??void 0,o=Ue(e.dataset.duration)??void 0,i=t;o!==void 0&&o>0?i=n+o:r!==void 0&&r>n&&(i=r);let a=F1(e.dataset.volume)??1;return{start:n,end:i,staticVolume:Ve(a)}}function D1(e,t,n,r,{start:o,end:i,staticVolume:a}){let l=1/Math.min(60,Math.max(1,r)),s=Math.max(0,o),c=Math.min(n,i),d=Kg(e,()=>{e.volume=a;let f=[],p;for(let b=s;b<=c+1e-6;b=Math.min(c,b+l)){t(b);let y=Number(e.volume);if(Number.isFinite(y)){let x={time:Number(b.toFixed(6)),volume:Number(Ve(y).toFixed(6))};N1(f,p,x,b===c),p=x}if(b===c)break}return f});return d.some(f=>Math.abs(f.volume-a)>1e-4)?d:null}function js(e,t,n=0){return n>3||e===null||typeof e!="object"?!1:Array.isArray(e)?e.some(r=>js(r,t,n+1)):Object.getPrototypeOf(e)!==Object.prototype?!1:Object.entries(e).some(([r,o])=>t(r)||js(o,t,n+1))}var I1=e=>typeof e?.nodeType=="number";function O1(e,t){for(let n=Object(e);n;n=Object.getPrototypeOf(n)){let r=Object.getOwnPropertyDescriptor(n,t);if(r)return typeof r.set=="function"}return!1}function hd(e){let t={elements:new Set,anySetter:!1,unknown:!0};if(typeof e.getChildren!="function")return t;try{let n={elements:new Set,anySetter:!1,unknown:!1};for(let r of e.getChildren(!0,!0,!1)){let o=r.targets?.()??[];for(let i of o)I1(i)?js(r.vars,a=>a==="volume")&&n.elements.add(i):!n.anySetter&&js(r.vars,a=>O1(i,a))&&(n.anySetter=!0)}return n}catch{return t}}var H1=(e,t)=>e.unknown||e.anySetter||e.elements.has(t);function Yb(e,t,n,r,o={}){if(o.allowLiveTimelineSeek===!1||!t||!Te(e)||n<=0||!H1(o.movers?.()??hd(t),e))return;let i=c=>{try{typeof t.totalTime=="function"?t.totalTime(c,!0):typeof t.seek=="function"&&t.seek(c,!0)}catch{}},a=typeof t.totalTime=="function"?Number(t.totalTime()):typeof t.seek=="function"?Number(t.seek()):0,l=P1(e,n),s=D1(e,i,n,60,l);if(Number.isFinite(a)&&i(a),s){let c=L1(s,l.start,l.staticVolume);c.length>0&&r.set(e,c)}}var Qb="data-fade-in",Zb="data-fade-out",ZU=Qb.slice(5),eW=Zb.slice(5),ey=Object.freeze({fadeIn:0,fadeOut:0});function gd(e){return Number.isFinite(e)&&e>0?e:0}function Xb(e){return e==null||e===""?0:gd(Number.parseFloat(e))}function Ks(e){return{fadeIn:Xb(e.getAttribute(Qb)),fadeOut:Xb(e.getAttribute(Zb))}}function bd(e,t){let n=gd(e.fadeIn),r=gd(e.fadeOut);if(!Number.isFinite(t)||t<=0)return{fadeIn:n,fadeOut:r};let o=n+r;if(o<=t)return{fadeIn:n,fadeOut:r};let i=t/o;return{fadeIn:n*i,fadeOut:r*i}}function Ys(e,t,n){if(!Number.isFinite(e))return 1;let{fadeIn:r,fadeOut:o}=bd(n,t),i=1;return r>0&&(i*=Jb(e/r)),o>0&&Number.isFinite(t)&&(i*=Jb((t-e)/o)),i}function Jb(e){return!Number.isFinite(e)||e<0?0:e>1?1:e}var cn="hf-audio-group",Xs="data-audio-group";function Si(e){let t=e?.getAttribute("data-volume"),n=t?parseFloat(t):1;return Number.isFinite(n)?n:1}function yd(e,t){let n=Array.from(e?.querySelectorAll?.(`${cn}[${pi}]`)??[]).find(o=>o.getAttribute(pi)===t);if(n)return n;let r=e?.getElementById(t)??null;return r&&r.tagName?.toLowerCase()===cn?r:null}function Js(e,t){let n=t?.getAttribute?.(U0)??t?.getAttribute?.(Xs);return n?yd(e,n)?.hasAttribute("data-hidden")??!1:!1}function xd(e){let t=e.querySelector("[data-composition-id]");return t&&!t.parentElement?.closest("[data-composition-id]")?t:null}function ty(e){return xd(e)?.getAttribute(Pn)||void 0}function Qs(e){return typeof e.tagName!="string"||typeof e.getAttribute!="function"||!G1(e)?null:e.getAttribute(Xs)||null}function G1(e){return e.tagName.toLowerCase()==="audio"?!0:typeof e.hasAttribute=="function"&&Ls(e)}function ny(e){let t="__hf-audio-group-inert";if(!e?.head||e.getElementById(t))return;let n=e.createElement("style");n.id=t,n.textContent=`${cn}{display:contents!important}${cn}[data-hidden]{display:none!important}`,e.head.appendChild(n)}var B1=[[.3,.25],[.1,.1]],U1=.01,W1=.1,V1=.1,Ei=new WeakMap;function ry(e,t,n,r,o=e.tagName==="AUDIO"){let i=Math.abs(t);if(o&&r&&i>V1)return Ei.delete(e),{rate:n,seek:!0};let a=Math.sign(t),l=Ei.get(e);if(i>.04)Ei.set(e,a);else if(l!==a||i<=U1)return Ei.delete(e),{rate:n,seek:!1};let s=B1.find(([d])=>i>d)?.[1]??.03,c=o?Math.min(s,W1):s;return{rate:n*(1+a*c),seek:!1}}function Sd(e){Ei.delete(e)}function Ci(e){return vt(e)}var oy=["seeked","loadeddata","error","emptied","abort"],Td=5e3,Zs=new WeakMap;function iy(e){let t=e.readyState<e.HAVE_CURRENT_DATA&&e.networkState===e.NETWORK_LOADING&&!window.__HF_EXPORT_RENDER_SEEK_CONFIG;e.tagName!=="VIDEO"||!(e.seeking||t)||Nt(e)||(Zs.get(e)?.(),Ze(new Promise(n=>{let r=i=>{if(!(i?.type==="loadeddata"&&e.seeking)){clearTimeout(o);for(let a of oy)e.removeEventListener(a,r,!0);Zs.get(e)===r&&Zs.delete(e),n()}},o=setTimeout(r,Td);for(let i of oy)e.addEventListener(i,r,!0);Zs.set(e,r)}),"video-frame"))}function sy(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 ly(e){let t=e?.elements??Array.from(document.querySelectorAll("video, audio")),n=e?.shouldIncludeElement?t.filter(a=>e.shouldIncludeElement?.(a)):t.filter(a=>a.hasAttribute("data-start")),r=[],o=[],i=0;for(let a of n){let l=e?.resolveStartSeconds?e.resolveStartSeconds(a):Number.parseFloat(a.dataset.start??"0");if(!Number.isFinite(l))continue;let s=Ci(a),c=mt(a),d=Et(a),m=a.loop,f=Number.isFinite(a.duration)&&a.duration>0?a.duration:null,p=e?.resolveDurationSeconds?.(a)??Number.parseFloat(a.dataset.duration??"");(!Number.isFinite(p)||p<0)&&f!=null&&(p=Math.max(0,an(d,f-s)));let y=Number.isFinite(p)&&p>=0?l+p:Number.POSITIVE_INFINITY,x=l,v=yr({start:l,end:y},e?.resolveHostSlots?.(a)??[]);(v.start!==l||v.end!==y)&&({start:l,end:y}=v,p=y-l);let E=Number.parseFloat(a.dataset.volume??""),C={el:a,start:l,origin:x,mediaStart:s,duration:Number.isFinite(y)?p:Number.POSITIVE_INFINITY,end:y,volume:Number.isFinite(E)?E:null,playbackRate:c,rate:d,loop:m,sourceDuration:f,fades:Ks(a)};r.push(C),a.tagName==="VIDEO"&&o.push(C),Number.isFinite(y)&&(i=Math.max(i,y))}return{timedMediaEls:n,mediaClips:r,videoClips:o,maxMediaEnd:i}}var Ad=new WeakMap,el=new WeakMap,vi=new WeakMap,wd=new WeakSet,ro=new WeakSet,Ed=new WeakSet;function $1(e){if(ro.has(e))return;ro.add(e);let t=()=>ro.delete(e);e.addEventListener("playing",t,{once:!0}),e.addEventListener("pause",t,{once:!0}),e.addEventListener("error",t,{once:!0})}var q1=3;function Rd(e){return e.error!=null||e.networkState===q1}var _d=new WeakMap;function vd(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function tl(e){Ad.delete(e),el.delete(e),vi.delete(e),wd.delete(e),_d.delete(e),Sd(e),no.delete(e),_i.delete(e)}var Md=1.5;function wi(e,t){let n=Math.max(0,Math.min(t,e.end)-(e.origin??e.start)),r=e.mediaStart+Dn(e.rate??e.playbackRate,n);if(e.sourceDuration==null)return r;let o=e.sourceDuration-e.mediaStart;return e.loop&&o>0&&r>=e.sourceDuration?e.mediaStart+(r-e.mediaStart)%o:!e.loop&&e.el.tagName==="VIDEO"?Math.min(r,e.sourceDuration):r}function z1(e,t,n,r){let{el:o}=e,i=e.start-t;if(!n||i<=0||i>Md*r||!o.paused||o.seeking||o.readyState<o.HAVE_METADATA||Nt(o)||"__HF_EXPORT_RENDER_SEEK_CONFIG"in window&&window.__HF_EXPORT_RENDER_SEEK_CONFIG)return;let a=wi(e,e.start);if(!(!Number.isFinite(a)||a<0||Math.abs(o.currentTime-a)<=.001))try{o.currentTime=At(a)}catch(l){$("runtime.media.preseek",l)}}var ay=1/16,j1=.1,no=new WeakSet,Ai=null,_i=new WeakMap;function K1(e,t,n,r){let o=_i.get(e);if(!o||t<o.at)return;_i.delete(e);let i=(n-o.offset)/r+o.lead,a=Ai===null?i:(Ai+i)/2;Ai=Math.min(.1,Math.max(0,a))}function uy(e){let t=!!(e.outputMuted||e.userMuted);for(let n of e.clips){let{el:r}=n;if(!r.isConnected)continue;let o=n.rate??n.playbackRate,i=n.origin??n.start,a=r.tagName==="VIDEO"&&!n.loop,l=In(e.timeSeconds,n.start,n.end),s=n.start-e.timeSeconds,c=r.tagName==="AUDIO"?e.cueAheadSeconds??0:e.playing&&Ai!==null?Ai*e.playbackRate+(e.cueAheadSeconds??0)/2:0,d=!l&&s>0&&s*Math.max(1,ai(o,n.start-i))<=Math.max(c,Ed.has(r)?.04:0);d?Ed.add(r):Ed.delete(r);let m=a&&!l&&(e.timeSeconds>=n.end||zr(e.timeSeconds,n.end))&&jr(e.timeSeconds,n.start,n.end,e.getCompositionDuration()),f=wi(n,e.timeSeconds),p=m||a&&n.sourceDuration!=null&&f>=n.sourceDuration&&l,b=el.get(r),y=r.tagName==="AUDIO"&&(b===void 0||f<b-.04),x=!n.loop&&n.sourceDuration!=null&&f>=n.mediaStart&&f<n.sourceDuration&&(a||y);if((l||m||d)&&f>=0&&(!r.ended||n.loop||p||x)){el.set(r,f);let C=vd(e.userVolume??1),H=Ve(n.volume??1),V=_d.get(r),M=vd(r.volume),R,U=n0(r,e.timeSeconds-i),T=e.isWebAudioRouted?.(r)===!0,F=U===null&&(n.volumeKeyframes?.length??0)>0,W=T?jg(H,F):1;if(U!==null)R=T?1:hs(H,U);else if(n.volumeKeyframes&&n.volumeKeyframes.length>0){let _e=e.timeSeconds-i;R=Ve(Kb(n.volumeKeyframes,_e))}else T?R=1:V===void 0?R=H>1?H:M:Math.abs(M-V)>1e-4?R=M:R=H;let B=R,X=n.fades??ey;(X.fadeIn>0||X.fadeOut>0)&&(R*=Ys(e.timeSeconds-i,n.duration+n.start-i,X));let N=r.closest("[data-hidden]")!==null||Js(r.ownerDocument,r)?0:vd(R*C);Math.abs(r.volume-N)>1e-6&&(r.volume=N),_d.set(r,N),B===R?e.onElementVolume?.(r,N,R,W):e.onElementVolume?.(r,N,R,W,B),(t||e.isWebAudioOwned?.(r))&&!r.muted&&(r.muted=!0),r.preload!=="auto"&&!Ns(r)&&(r.preload="auto");let j=ai(o,e.timeSeconds-i)*e.playbackRate,I=e.playing&&j>=ay,P=2,D=r.currentTime||0,w=Math.abs(D-f),L=f-D,Y=Ad.get(r);Ad.set(r,L);let te=Y===void 0,he=!te&&Math.abs(L-Y)>.5,Ee=w>3,z=r.tagName==="AUDIO"&&te&&D-f>.04,Z=p&&w>.001||r.ended&&x&&w>.001||z||w>.5&&(te||he||Ee);if(r.tagName==="VIDEO"&&!p){let _e=!n.loop&&(L<-j1||D>=wi(n,n.end)-.04);!I||!_e&&L>=-.04?no.delete(r):_e&&!r.paused&&(no.add(r),r.pause())}let Q=no.has(r),de=!r.paused&&I;de&&K1(r,e.timeSeconds,L,j);let se=e.playing&&!I||Y!==void 0&&Math.abs(L-Y)<.004,ue=!1;if(!de&&!Q&&!Z&&!te&&se&&w>.04){let _e=(vi.get(r)??0)+1;vi.set(r,_e),_e>=P&&(ue=!0,vi.set(r,0))}else w<=.04&&vi.set(r,0);let re=!de&&!Q&&e.forceSync&&w>.02,Be=de&&!Z?ry(r,L,j,se):null,Me=Be?.seek===!0,we=Me&&e.seekUnderDip?.(r,f)===!0;try{Be||Sd(r);let _e=Math.max(ay,Be?.rate??j);Math.abs(r.playbackRate-_e)>1e-6&&(r.playbackRate=_e)}catch(_e){$("runtime.media.site1",_e)}if(Z||ue||re||Me&&!we){if(!(r.tagName==="VIDEO"&&!!Nt(r))){try{r.currentTime=At(f)}catch(Tt){$("runtime.media.site2",Tt)}if(Math.abs(r.currentTime-f)>.5&&!wd.has(r)){wd.add(r),r.load();try{r.currentTime=At(f)}catch(Tt){$("runtime.media.site3",Tt)}}iy(r)}ro.delete(r),no.delete(r),_i.delete(r)}else I||iy(r);p?r.paused||r.pause():I&&!no.has(r)&&e.clockAdvancing!==!1&&r.paused&&!ro.has(r)&&!Rd(r)?($1(r),a&&_i.set(r,{offset:f-(r.currentTime||0),lead:Math.max(0,n.start-e.timeSeconds)/e.playbackRate,at:Math.max(e.timeSeconds,n.start)+.25*e.playbackRate}),r.play().catch(_e=>{ro.delete(r),(_e&&typeof _e=="object"&&"name"in _e?String(_e.name??""):"")==="NotAllowedError"&&e.onAutoplayBlocked?.()})):!I&&!r.paused&&r.pause();continue}let E=In(e.timeSeconds,n.start,n.end);tl(r),E&&el.set(r,f),r.paused||r.pause(),z1(n,e.timeSeconds,e.playing,e.playbackRate)}}var Ft=new WeakMap;function Ti(e){return Ft.has(e)?Ft.get(e)??null:e.getAttribute("src")}var dy="hf-proxy-box",fy="hf-proxy-light",nl="hf-proxy-retry",my="X-HF-Proxy-Progress",Y1=[256,304,362,430,512,608,724,862,1024,1218,1448,1722,2048,2436,2896,3444,4096,4870,5792,6888,8192];function cy(e){return e>0?Y1.find(t=>t>=e)??null:null}function kd(e,t){let n=cy(e),r=cy(t);return n&&r?{width:n,height:r}:null}function py(e){return`${e.width}x${e.height}`}var Ld=[1,.5,.25,.125];function hy(e){return Ld.some(t=>t===e)}var X1=.5,J1=4e7;function rl(e,t){return kd(e.width*t,e.height*t)??e}function ol(e,t){return t.width*t.height<=X1*e.width*e.height||e.bitDepth>8||e.bitrate>=J1}var Q1=3;function Z1(e){let t=new URL(e,document.baseURI);return t.searchParams.delete(nl),t.href}async function Nd(e,t,n){let r=0,o=e;for(;t();){let i=await fetch(o,{headers:{Range:"bytes=0-0"},cache:"no-store"}).catch(()=>null);o=Z1(e),i?.body?.cancel().catch(()=>{});let a=i?.status===202||i?.status===503,l=i?.status===202?i.headers.get(my):null;if(l!==null&&Number.isFinite(Number(l))&&n?.(Math.min(1,Math.max(0,Number(l)))),!a&&i?.ok)return!0;if(!a&&++r>Q1)return!1;let s=Math.min(Number(i?.headers.get("Retry-After"))||2,30);await new Promise(c=>setTimeout(c,s*1e3))}return!1}var eM="hf-proxy",gy="runtime_media_proxy_fallback",by="runtime_media_proxy_unavailable",yy=new WeakSet,zt=new WeakMap;function il(e){return e.currentSrc||e.src}var dn=1,Fd=new WeakSet,Pd=new WeakSet,_t=window.parent===window?1:null,xy=()=>{},tM=new Promise(e=>xy=e),nM=1e3,Un=new Map,Sr=new WeakMap;function rM(){return _t!==null?Promise.resolve(_t):Promise.race([tM.then(()=>_t),new Promise(e=>setTimeout(()=>e(null),nM))])}function Dd(e,t){if(getComputedStyle(e).objectFit==="none")return null;let n=e.getBoundingClientRect(),r=document.documentElement,o=t*(window.devicePixelRatio||1);return kd(Math.max(n.width,r.clientWidth)*o,Math.max(n.height,r.clientHeight)*o)}function Sy(e){if(!(!(e>0)||!Number.isFinite(e))){_t=e,xy();for(let t of Un.keys())sl(t,e)}}function Ey(e){let t=window.__HF_MEDIA_CODEC_MAP__,n=io(e);return t&&n!==null?ao(n,t):null}function al(e){let t=window.__HF_MEDIA_SOURCE_FACTS__,n=io(e);return t&&n!==null?ao(n,t):null}function sl(e,t){let n=Un.get(e);if(!n)return;if(!e.isConnected||e.getAttribute("src")!==n.href){Un.delete(e);return}let r=Dd(e,t),o=dn<1,i=r&&o?rl(r,dn):r;if(!(o&&!i)){if(i&&o&&n.light&&oM(e,i))return vy(e);iM(n.box,i,o)||sM(e,n,o||!i?i:aM(i,n.box))}}function oM(e,t){let n=al(e);return n!==null&&!ol(n,t)}function iM(e,t,n){return n?t?.width===e.width&&t.height===e.height:t!==null&&t.width<=e.width&&t.height<=e.height}function aM(e,t){return{width:Math.max(e.width,t.width),height:Math.max(e.height,t.height)}}function sM(e,t,n){let r=wy(t.originalSrc,t.variant,n,t.light,Pd.delete(e));if(Sr.get(e)===r)return;Sr.set(e,r);let o=()=>Sr.get(e)===r&&e.isConnected&&e.getAttribute("src")===t.href;Gn(e,"making"),Nd(r,o,i=>Gn(e,"making",i)).then(i=>{o()&&Gn(e,i?"ready":"failed"),i&&o()&&Ay(e,r,t.originalSrc,t.variant,n,t.light),Sr.get(e)===r&&Sr.delete(e)})}function vy(e){let t=Ft.get(e)??null;for(let n of[Un,Sr,zt,Ft])n.delete(e);Fd.delete(e),tl(e),Is(),t===null?e.removeAttribute("src"):e.setAttribute("src",t),e.load()}function Ay(e,t,n,r,o,i=!1){o?Un.set(e,{originalSrc:n,variant:r,href:t,box:o,light:i}):Un.delete(e),tl(e),Is(),e.src=t,e.load()}function oo(e){return window.__HF_EXPORT_RENDER_SEEK_CONFIG?!0:Ne(e)&&!!Nt(e)}function io(e){let t=il(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 lM(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 uM(e,t){let n=e.normalize("NFC").toLowerCase(),r=-1,o=null,i=!1;for(let[a,l]of Object.entries(t)){let s=a.normalize("NFC").toLowerCase();n.endsWith(s)&&(s.length>r?(r=s.length,o=l,i=!1):s.length===r&&(i=!0))}return i?null:o}function ao(e,t){return t[e]??lM(e,t)??uM(e,t)}function wy(e,t,n,r=!1,o=!1){let i=new URL(e,document.baseURI);return i.searchParams.set(eM,t),n&&i.searchParams.set(dy,py(n)),r&&n&&i.searchParams.set(fy,"1"),o&&i.searchParams.set(nl,"1"),i.href}var cM={cross_origin:"video reports zero decodable width but its source is cross-origin; no local proxy can be served for it",proxy_playback_failed:"the authoring proxy itself failed to decode; render output is unaffected",browser_safe_codec:"the file errored but its codec is browser-decodable; a proxy cannot help (the file itself is likely corrupt)",invalid_source_url:"the media source URL is malformed and cannot be proxied"};function Bn(e,t,n){if(yy.has(e))return;yy.add(e);let r=cM[t];Re({source:"hf-preview",type:"diagnostic",code:by,details:{asset:n,codecName:null,reason:t,note:r}}),globalThis.console.info(`[hyperframes] ${by}: "${n}" (${t}): ${r}`)}async function dM(e,t,n){let{originalSrc:r,originalAttr:o,variant:i,lightFacts:a,level:l,live:s}=t,c=n===null?null:Dd(e,n),d=c&&l<1?rl(c,l):c;if(a&&!(d&&ol(a,d))){zt.get(e)===o&&zt.delete(e);return}let m=wy(r,i,d,a!==void 0,Pd.delete(e));Gn(e,"making");let f=await Nd(m,s,p=>Gn(e,"making",p));if(!s()){zt.get(e)===o&&zt.delete(e),a&&e.isConnected&&e.getAttribute("src")===o&&Cy(e);return}if(!f){Gn(e,"failed"),Bn(e,"proxy_playback_failed",r);return}return Gn(e,"ready"),Ft.set(e,o),a&&Fd.add(e),Ay(e,m,r,i,d,a!==void 0),_t!==null&&sl(e,_t),new Promise(p=>{e.addEventListener("loadeddata",p,{once:!0}),e.addEventListener("error",p,{once:!0})})}function Ri(e,t=null,n="reactive",r){if(Ft.has(e)||zt.has(e)&&zt.get(e)===e.getAttribute("src"))return;let o=il(e),i=t?t.hasAlpha?"vp8":"h264":"auto";try{new URL(o,document.baseURI)}catch(p){$("runtime.mediaProxy.swap",p),Bn(e,"invalid_source_url",o);return}let a=e.getAttribute("src");zt.set(e,a);let l=dn,c={originalSrc:o,originalAttr:a,variant:i,lightFacts:r,level:l,live:()=>e.isConnected&&e.getAttribute("src")===a&&(!r||dn===l)},d=rM().then(p=>dM(e,c,p));if(r)return;Ze(Promise.race([d,new Promise(p=>setTimeout(p,Td))]),"video-frame");let m=t?.codecName??null;Re({source:"hf-preview",type:"diagnostic",code:gy,details:{asset:o,codecName:m,trigger:n,note:"render output is unaffected; only this preview element was swapped to an authoring proxy"}}),globalThis.console.info(`[hyperframes] ${gy}: "${o}" uses a codec (${m??"unknown"}) this browser can't decode; auto-swapped to an authoring proxy for this preview only. Render output is unaffected.`)}function _y(e){if(oo(e)||!Ne(e)||Ft.has(e))return;let t=Ey(e),n=t?.representativeMime?e.canPlayType(t.representativeMime):"",r=n==="probably"||n==="maybe";t?.browserHostile&&!r?Ri(e,t,"proactive"):dn<1&&Id(e,t)}function Id(e,t){if(Ft.has(e)||zt.has(e))return;let n=al(e);n&&Ri(e,t,"light",n)}function Cy(e){if(!(oo(e)||!Ne(e))){if(dn===1&&Fd.has(e))return vy(e);if(Un.has(e)&&_t!==null)return sl(e,_t);dn<1&&Id(e,Ey(e))}}function Ty(e){if(!(!hy(e)||e===dn)){dn=e,tb(e),Is();for(let t of document.querySelectorAll("video"))Cy(t)}}function Ry(){if(_t===null)return[];let e=[...document.querySelectorAll("video")].flatMap(t=>{let n=al(t),r=n&&Dd(t,_t??1);return n&&r?[{facts:n,shown:r}]:[]});return Ld.filter(t=>t<1&&e.some(({facts:n,shown:r})=>ol(n,rl(r,t))))}function My(){let e=new Map;for(let t of document.querySelectorAll("video")){let n=io(t),r=window.__HF_MEDIA_CODEC_MAP__,{width:o=0,height:i=0,bitDepth:a=0,codec:l}=al(t)??{},s=r&&n!==null?ao(n,r)?.codecName:void 0,c=l??s??"unknown",d=`${c}|${o}|${i}|${a}`,m=e.get(d)??{codec:c,width:o,height:i,bitDepth:a,count:0};m.count+=1,e.set(d,m)}return[...e.values()]}function ky(){for(let e of nb()){Pd.add(e),zt.delete(e),Sr.delete(e);let t=window.__HF_MEDIA_CODEC_MAP__,n=io(e),r=t&&n!==null?ao(n,t):null;Un.has(e)&&_t!==null?sl(e,_t):r?.browserHostile?Ri(e,r,"reactive"):Id(e,r)}}function Ly(e){if(oo(e)||!Ne(e)||e.videoWidth!==0)return;let t=il(e);if(Ft.has(e)){Bn(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=io(e);if(r===null){Bn(e,"cross_origin",t);return}let o=ao(r,n);if(o&&!o.browserHostile){Bn(e,"browser_safe_codec",t);return}Ri(e,o,"reactive")}function Ny(e){if(oo(e)||!Ne(e))return;let t=il(e);if(Ft.has(e)){Bn(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=io(e);if(r===null){Bn(e,"cross_origin",t);return}let o=ao(r,n);if(o&&!o.browserHostile){Bn(e,"browser_safe_codec",t);return}Ri(e,o,"tertiary")}var qe=class extends Error{constructor(n,r=null){super(r==null?n:`${n} at line ${r}`);Se(this,"lineNumber");this.name="CubeLutParseError",this.lineNumber=r}},fM=[0,0,0],mM=[1,1,1],ll=64;function pM(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 Wn(e,t){let n=Number(e);if(!Number.isFinite(n))throw new qe(`Invalid number "${e}"`,t);return n}function Fy(e,t,n){if(e.length!==3)throw new qe(`${t} expects three numbers`,n);return[Wn(e[0],n),Wn(e[1],n),Wn(e[2],n)]}function Py(e,t,n){if(!e)throw new qe(`${t} expects a size`,n);let r=Number(e);if(!Number.isInteger(r)||r<2)throw new qe(`${t} must be an integer greater than 1`,n);return r}function hM(e,t){if(t[0]<=e[0]||t[1]<=e[1]||t[2]<=e[2])throw new qe("DOMAIN_MAX values must be greater than DOMAIN_MIN values")}function gM(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 bM(e){return/^[+-]?(?:\d|\.\d)/.test(e)}function Dy(e,t={}){let n=t.maxSize??ll,r=null,o=fM,i=mM,a=null,l=null,s=[],c=e.replace(/^\uFEFF/,"").split(/\r?\n/);for(let m=0;m<c.length;m++){let f=m+1,p=pM(c[m]??"").trim();if(!p)continue;let b=p.split(/\s+/),y=(b[0]??"").toUpperCase(),x=b.slice(1);if(y==="TITLE"){r=gM(p);continue}if(y==="DOMAIN_MIN"){o=Fy(x,y,f);continue}if(y==="DOMAIN_MAX"){i=Fy(x,y,f);continue}if(y==="LUT_3D_INPUT_RANGE"){if(x.length!==2)throw new qe(`${y} expects two numbers`,f);let v=Wn(x[0],f),E=Wn(x[1],f);if(E<=v)throw new qe("LUT_3D_INPUT_RANGE max must exceed min",f);o=[v,v,v],i=[E,E,E];continue}if(y==="LUT_1D_SIZE"){a=Py(x[0],y,f);continue}if(y==="LUT_3D_SIZE"){if(l=Py(x[0],y,f),l>n)throw new qe(`LUT_3D_SIZE ${l} exceeds max ${n}`,f);continue}if(!bM(y)){if(y.startsWith("LUT_"))throw new qe(`Unsupported cube keyword ${y}`,f);continue}if(!l)throw a?new qe("1D cube LUTs are not supported yet",f):new qe("LUT data appears before LUT_3D_SIZE",f);if(b.length!==3)throw new qe("LUT data rows must contain three numbers",f);s.push(Wn(b[0],f),Wn(b[1],f),Wn(b[2],f))}if(a&&l)throw new qe("Mixed 1D and 3D cube LUTs are not supported yet");if(!l)throw a?new qe("1D cube LUTs are not supported yet"):new qe("Missing LUT_3D_SIZE");hM(o,i);let d=l*l*l;if(s.length!==d*3)throw new qe(`Expected ${d} LUT rows for size ${l}, found ${s.length/3}`);return{title:r,size:l,domainMin:o,domainMax:i,data:new Float32Array(s)}}function yM(e){return Number.isFinite(e)?Math.min(1,Math.max(0,e)):0}function Mi(e){return Math.round(yM(e)*255)}function Od(e){let t=e.size,n=t*t,r=t,o=new Uint8Array(n*r*4);for(let i=0;i<t;i++)for(let a=0;a<t;a++)for(let l=0;l<t;l++){let s=((i*t+a)*t+l)*3,c=(a*n+i*t+l)*4;o[c]=Mi(e.data[s]??0),o[c+1]=Mi(e.data[s+1]??0),o[c+2]=Mi(e.data[s+2]??0),o[c+3]=255}return{width:n,height:r,data:o}}var Iy="rec709";var Oy=["video","img","canvas"],De={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 Hy=["exposure","contrast","highlights","shadows","whites","blacks","temperature","tint","vibrance","saturation"];var Gy=["shadows","midtones","highlights"],By=["master","red","green","blue"],Uy=["hueVsHue","hueVsSaturation","hueVsLuma"];var Wy=["vignette","vignetteMidpoint","vignetteRoundness","vignetteFeather","grain","grainSize","grainRoughness"],Vy=["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 zW=De.unit,jW=De.signedUnit,KW=De.effects;var jt=1024,ki=16;function $y(e,t,n,r){let o=((2*e+t)*n-e*r)/(e+t);return Math.sign(o)!==Math.sign(n)?0:Math.sign(n)!==Math.sign(r)&&Math.abs(o)>3*Math.abs(n)?3*n:o}function ze(e,t){let n=e[t];if(n===void 0)throw new RangeError("Color curve points must be contiguous");return n}function xM(e){let t=[],n=[],r=ze(e,0);for(let a of e.slice(1)){let l=a[0]-r[0];t.push(l),n.push((a[1]-r[1])/l),r=a}let o=ze(n,0);if(e.length===2)return[o,o];let i=new Array(e.length);i[0]=$y(ze(t,0),ze(t,1),o,ze(n,1)),i[i.length-1]=$y(ze(t,t.length-1),ze(t,t.length-2),ze(n,n.length-1),ze(n,n.length-2));for(let a=1;a<e.length-1;a+=1){let l=ze(n,a-1),s=ze(n,a);if(l===0||s===0||Math.sign(l)!==Math.sign(s)){i[a]=0;continue}let c=ze(t,a-1),d=ze(t,a),m=2*d+c,f=d+2*c;i[a]=(m+f)/(m/l+f/s)}return i}function qy(e,t){if(e.length<2)throw new RangeError("A color curve requires at least two points");if(!Number.isInteger(t)||t<2)throw new RangeError("Curve LUT size must be at least 2");let n=Number.NEGATIVE_INFINITY;for(let[r,o]of e){if(!Number.isFinite(r)||!Number.isFinite(o))throw new TypeError("Color curve points must be finite");if(r<=n)throw new RangeError("Color curve inputs must be strictly increasing");n=r}}function SM(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 EM(e,t,n,r,o){let i=n[0]-t[0],a=Math.min(1,Math.max(0,(e-t[0])/i)),l=a*a,s=l*a;return(2*s-3*l+1)*t[1]+(s-2*l+a)*i*r+(-2*s+3*l)*n[1]+(s-l)*i*o}function zy(e,t,n,r,o){SM(e,r,o);let i=xM(e),a=new Float32Array(t),l=0;for(let s=0;s<t;s+=1){let c=n(s);for(;l<e.length-2&&c>ze(e,l+1)[0];)l+=1;let d=ze(e,l),m=ze(e,l+1),f=EM(c,d,m,ze(i,l),ze(i,l+1));a[s]=Math.min(o,Math.max(r,f))}return a}function so(e,t=jt){if(qy(e,t),e.length>ki)throw new RangeError(`A color curve supports at most ${ki} 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 zy(e,t,n=>n/(t-1),0,1)}function Gd(e,t,n,r=jt){if(e.length<3)throw new RangeError("A hue curve requires at least three points");if(e.length>ki)throw new RangeError(`A hue curve supports at most ${ki} points`);let o=[...e].sort((s,c)=>s[0]-c[0]);for(let s=0;s<o.length;s+=1){let c=o[s];if(!c||c[0]<0||c[0]>=360)throw new RangeError("Hue curve inputs must be from 0 up to 360 degrees");if(s>0&&c[0]===o[s-1]?.[0])throw new RangeError("Hue curve inputs must be unique")}let i=o.slice(-2).map(([s,c])=>[s-360,c]),a=o.slice(0,2).map(([s,c])=>[s+360,c]),l=[...i,...o,...a];return qy(l,r),zy(l,r,s=>s/r*360,t,n)}var dl="data-color-grading",Er="data-hf-color-grading-source-hidden",vr="data-hf-authored-opacity",Jy="__hf_color_grading_",AM=Iy,zd=Oy,Wd={exposure:0,contrast:0,highlights:0,shadows:0,whites:0,blacks:0,temperature:0,tint:0,vibrance:0,saturation:0},Vd={vignette:0,vignetteMidpoint:.5,vignetteRoundness:0,vignetteFeather:.65,grain:0,grainSize:.25,grainRoughness:.5},$d={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 fl=Hy,Qy=Gy,Zy=By,ex=Uy,jd=Wy,Kd=Vy,jy={exposure:.03,contrast:-.12,highlights:-.1,shadows:.16,whites:-.04,blacks:.08,temperature:.13,vibrance:-.08,saturation:-.08},Ky={vignette:.18};function je(e,t,n={},r={},o={},i=1){return{id:e,label:t,intensity:i,adjust:{...Wd,...n},details:{...Vd,...r},effects:{...$d,...o}}}var Yd=[je("neutral","Neutral"),je("warm-daylight","Warm Daylight",{exposure:.06,contrast:.07,highlights:-.06,shadows:.08,temperature:.18,saturation:.08}),je("clean-studio","Clean Studio",{contrast:.08,highlights:-.08,shadows:.06,temperature:-.08,tint:.03,saturation:.04}),je("skin-soft","Skin Soft",{exposure:.04,contrast:-.03,highlights:-.12,shadows:.12,temperature:.08,tint:.02,saturation:.04}),je("food-pop","Food Pop",{exposure:.06,contrast:.1,shadows:.06,temperature:.14,vibrance:.1,saturation:.18}),je("night-lift","Night Lift",{exposure:.08,contrast:.08,highlights:-.18,shadows:.2,blacks:-.08,saturation:.04},{vignette:.12}),je("muted-editorial","Muted Editorial",{exposure:-.02,contrast:.08,highlights:-.08,shadows:.06,blacks:-.05,temperature:-.03,saturation:-.12},{vignette:.1}),je("vintage-wash","Vintage Wash",jy,Ky),je("mono-clean","Mono Clean",{contrast:.12,highlights:-.04,shadows:.04,blacks:-.08,saturation:-1}),je("mono-fade","Mono Fade",{contrast:-.04,highlights:-.06,shadows:.1,blacks:.12,saturation:-1},{vignette:.08}),je("soft-boost","Soft Boost",{exposure:.06,contrast:-.04,highlights:-.14,shadows:.16,vibrance:.08,saturation:.1}),je("bright-pop","Bright Pop",{exposure:.12,contrast:.12,whites:.08,blacks:-.04,vibrance:.08,saturation:.14}),je("deep-contrast","Deep Contrast",{exposure:-.03,contrast:.2,highlights:-.08,shadows:-.08,blacks:-.12,saturation:.06}),je("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),je("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}),je("home-movie-8mm","8mm Home Movie",jy,{...Ky,vignette:.28,vignetteMidpoint:.54,vignetteFeather:.72,grain:.34,grainSize:.18,grainRoughness:.72},{filmArtifacts:.62},.72),je("editorial-halftone","Editorial Halftone",{contrast:.04,saturation:.04},{},{halftone:.94,halftoneSize:.36}),je("two-ink-print","Two-Ink Print",{contrast:.08,highlights:-.06,shadows:.04},{},{twoInkPrint:1,twoInkPrintSize:.42})],wM=new Map(Yd.map(e=>[e.id,e])),_M=/^\$(?:\{([A-Za-z0-9_.:-]+)\}|([A-Za-z0-9_.:-]+))$/,CM={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}},lo={hue:0,amount:0,level:0},Yy={amount:De.unit,level:De.signedUnit},Vn=[[0,0],[1,1]],uo=[],TM={hueVsHue:De.secondaryHueShift,hueVsSaturation:De.signedUnit,hueVsLuma:De.signedUnit},Bd={center:0,range:180,softness:0},Ud={min:0,max:1,softness:.05},RM={vignette:De.unit,vignetteMidpoint:De.unit,vignetteRoundness:De.signedUnit,vignetteFeather:De.unit,grain:De.unit,grainSize:De.unit,grainRoughness:De.unit},qd=De.unit,MM=De.effects,tx=["blur","pixelate","chromaBleed","tapeDamage","filmArtifacts","halftone","twoInkPrint","ascii","dither","bloom","monoScreen","scanlines","chromaticAberration","crtCurvature","digitalGlitch","engraving","crosshatch","kuwahara"];var kM=Yd.filter(e=>tx.some(t=>e.effects[t]>1e-4)),rV=Yd.filter(e=>!kM.includes(e)),oV={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}},nx=[{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 LM=/^#[0-9a-f]{6}$/i;function NM(e){return!Array.isArray(e)||e.length<2||e.length>6||!e.every(t=>typeof t=="string"&&LM.test(t))?null:e.map(t=>t.toLowerCase())}function et(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function cl(e,t,n){return Number.isFinite(e)?Math.min(n,Math.max(t,e)):0}function rx(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?Math.min(1,Math.max(0,n)):t}function ut(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?cl(n,t.min,t.max):0}function Xd(e,t=0){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?(n%360+360)%360:t}function FM(e){let t=et(e)?e:{};return Qy.reduce((n,r)=>{let o=et(t[r])?t[r]:{};return n[r]={hue:Xd(o.hue,lo.hue),amount:ut(o.amount??lo.amount,Yy.amount),level:ut(o.level??lo.level,Yy.level)},n},{shadows:{...lo},midtones:{...lo},highlights:{...lo}})}function PM(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)?[cl(t,0,1),cl(n,0,1)]:null}function ox(e){return e.some((t,n)=>n>0&&t[0]===e[n-1]?.[0])}function DM(e){(e[0]?.[0]??0)>0&&e.unshift([0,0]),(e.at(-1)?.[0]??1)<1&&e.push([1,1])}function IM(e){if(!Array.isArray(e)||e.length<2)return Vn;let t=[];for(let n of e){let r=PM(n);if(!r)return Vn;t.push(r)}return t.sort((n,r)=>n[0]-r[0]),ox(t)||(DM(t),t.length>16)?Vn:t}function OM(e){let t=et(e)?e:{};return Zy.reduce((n,r)=>(n[r]=IM(t[r]),n),{master:Vn,red:Vn,green:Vn,blue:Vn})}function HM(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)?[Xd(n),cl(r,t.min,t.max)]:null}function GM(e,t){if(!Array.isArray(e)||e.length<3||e.length>16)return uo;let n=[];for(let r of e){let o=HM(r,t);if(!o)return uo;n.push(o)}return n.sort((r,o)=>r[0]-o[0]),ox(n)?uo:n}function BM(e){let t=et(e)?e:{};return ex.reduce((n,r)=>(n[r]=GM(t[r],TM[r]),n),{hueVsHue:uo,hueVsSaturation:uo,hueVsLuma:uo})}function Xy(e){let t=et(e)?e:{},n=ut(t.min??Ud.min,qd),r=ut(t.max??Ud.max,qd);return{min:Math.min(n,r),max:Math.max(n,r),softness:ut(t.softness??Ud.softness,De.secondarySoftRangeSoftness)}}function UM(e){let t=et(e)?e:{},n=ut(t.range??Bd.range,De.secondaryHueRange);return{center:Xd(t.center,Bd.center),range:n,softness:ut(t.softness??Bd.softness,{min:De.secondaryHueSoftness.min,max:De.secondaryHueCombinedMax-n})}}function WM(e){return{hueShift:ut(e.hueShift??0,De.secondaryHueShift),saturation:ut(e.saturation??0,De.signedUnit),luma:ut(e.luma??0,De.signedUnit),temperature:ut(e.temperature??0,De.signedUnit),tint:ut(e.tint??0,De.signedUnit)}}function VM(e){return!et(e)||!et(e.key)||!et(e.correction)?null:{enabled:e.enabled!==!1,key:{hue:UM(e.key.hue),saturation:Xy(e.key.saturation),luma:Xy(e.key.luma)},correction:WM(e.correction)}}function $M(e){if(!Array.isArray(e))return[];let t=[];for(let n of e.slice(0,4)){let r=VM(n);r&&t.push(r)}return t}function qM(e){if(e==null)return null;let t=String(e).trim();return t||null}function zM(e){if(e==null)return null;if(typeof e=="string"){let n=e.trim();return n?{src:n,intensity:1}:null}if(!et(e))return null;let t=e.src;return typeof t!="string"||t.trim()===""?null:{src:t.trim(),intensity:rx(e.intensity,1)}}function jM(e){if(typeof e=="string"){let t=e.trim();if(!t)return null;if(t.startsWith("{"))try{let n=JSON.parse(t);return et(n)?n:null}catch{return null}return{preset:t}}return et(e)?e:null}function KM(e,t){let n=e.trim().match(_M);if(!n)return e;let r=n[1]??n[2]??"";return r&&Object.hasOwn(t,r)?t[r]:e}function ul(e,t){if(typeof e=="string"){let r=KM(e,t);if(r!==e)return r;let o=e.trim();if(!o.startsWith("{"))return e;try{return ul(JSON.parse(o),t)}catch{return e}}if(Array.isArray(e))return e.map(r=>ul(r,t));if(!et(e))return e;let n={};for(let[r,o]of Object.entries(e))n[r]=ul(o,t);return n}function YM(e){return e?wM.get(e)??null:null}function ml(e){let t=jM(e);if(!t||t.enabled===!1)return null;let n=qM(t.preset),r=YM(n),o=r?.adjust??Wd,i=r?.details??Vd,a=r?.effects??$d,l=et(t.adjust)?t.adjust:{},s=et(t.details)?t.details:{},c=et(t.effects)?t.effects:{},d=fl.reduce((p,b)=>(p[b]=ut(l[b]??o[b],CM[b]),p),{...Wd}),m=jd.reduce((p,b)=>(p[b]=ut(s[b]??i[b],RM[b]),p),{...Vd}),f=Kd.reduce((p,b)=>(p[b]=ut(c[b]??a[b],MM[b]??qd),p),{...$d});return{enabled:!0,preset:n,intensity:rx(t.intensity,r?.intensity??1),adjust:d,wheels:FM(t.wheels),curves:OM(t.curves),hueCurves:BM(t.hueCurves),secondaries:$M(t.secondaries),details:m,effects:f,palette:NM(t.palette),lut:zM(t.lut),colorSpace:typeof t.colorSpace=="string"&&t.colorSpace.trim()?t.colorSpace.trim():AM}}function ix(e,t){return ml(ul(e,t))}function XM(e){return Qy.some(t=>Math.abs(e[t].amount)>1e-4||Math.abs(e[t].level)>1e-4)}function Jd(e){return Zy.some(t=>e[t].some(([n,r])=>Math.abs(n-r)>1e-4))}function Qd(e){return ex.some(t=>e[t].some(([,n])=>Math.abs(n)>1e-4))}function Zd(e){return e.some(t=>t.enabled&&Object.values(t.correction).some(n=>Math.abs(n)>1e-4))}function ax(e){return e?.enabled?Math.abs(e.details.vignette)>1e-4||Math.abs(e.details.grain)>1e-4||tx.some(n=>Math.abs(e.effects[n])>1e-4)?!0:e.intensity===0?!1:e.lut&&e.lut.intensity!==0?!0:fl.some(n=>Math.abs(e.adjust[n])>1e-4)||(e.wheels?XM(e.wheels):!1)||(e.curves?Jd(e.curves):!1)||(e.hueCurves?Qd(e.hueCurves):!1)||(e.secondaries?Zd(e.secondaries):!1):!1}var pl=/^(|transparent|rgba\(.*,\s*0\)|.*\/\s*0%?\s*\))$/,JM=new Set(["IMG","VIDEO","IFRAME","EMBED","OBJECT","CANVAS"]),sx="http://www.w3.org/2000/svg",QM=new Set(["svg","g","foreignObject"]),ZM=["Top","Right","Bottom","Left"],ek={left:-1/0,right:1/0,top:-1/0,bottom:1/0},lx=e=>!!e.backgroundImage&&e.backgroundImage!=="none"||!pl.test(e.backgroundColor),tk=e=>{let t=e.getPropertyValue("-webkit-text-fill-color")||e.color,n=Number.parseFloat(e.getPropertyValue("-webkit-text-stroke-width"))||0,r=e.getPropertyValue("-webkit-text-stroke-color")||e.color;return!pl.test(t)||n>0&&!pl.test(r)},ux=e=>ZM.map(t=>e[`border${t}Style`]!=="none"&&!pl.test(e[`border${t}Color`])&&Number.parseFloat(e[`border${t}Width`])||0),hl=e=>e.bottom-e.top,ef=(e,t,n)=>t>=e.left&&t<=e.right&&n>=e.top&&n<=e.bottom,cx=(e,t)=>({left:Math.min(e.left,t.left),right:Math.max(e.right,t.right),top:Math.min(e.top,t.top),bottom:Math.max(e.bottom,t.bottom)}),nk=(e,t)=>t.display==="none"||t.position==="absolute"||t.position==="fixed"||Number.parseFloat(t.opacity)<=.01&&!e.hasAttribute(Er);function rk(e,t,n){if(e.width<=0&&e.height<=0)return!1;let r=3*(Number.parseFloat(t.fontSize)||16),o=Math.max(r,Math.min(2*e.height,20*r/3));return n<e.top-o||n>e.bottom+o}function ok(e,t,n,r){let[o,i,a,l]=ux(t);if(!(o||i||a||l))return!1;let s=e.getBoundingClientRect(),{offsetWidth:c,offsetHeight:d}=e,m=c>0?s.width/c:1,f=d>0?s.height/d:1,p={left:s.left+l*m,right:s.right-i*m,top:s.top+o*f,bottom:s.bottom-a*f};return!ef(p,n,r)}function ik(e){let t=[];for(let n of[...e].sort((r,o)=>r.left-o.left)){let r=t.findIndex(o=>n.top<o.bottom&&n.bottom>o.top&&n.left-o.right<=2*Math.max(hl(o),hl(n)));r<0?t.push(n):t[r]=cx(t[r],n)}return t}function ak(e){let t=[...e].sort((n,r)=>n.top-r.top);return t.flatMap((n,r)=>t.slice(r+1).flatMap(o=>{let i=o.left<n.right&&o.right>n.left,a=o.top-n.bottom<=2*Math.min(hl(n),hl(o));return i&&a&&o.top>n.bottom?[cx(n,o)]:[]}))}function dx(e,t,n){let r=e.defaultView,o=typeof e.createRange().getClientRects=="function",i=e.createRange(),a=new Map,l=new Map,s=new Map,c=x=>{let v=l.get(x);if(v===void 0){let E=r.getComputedStyle(x);v=nk(x,E)||o&&rk(x.getBoundingClientRect(),E,n),l.set(x,v)}return v},d=x=>{let v=s.get(x);if(v===void 0){let E=x.parentElement,C=E&&x.nodeValue?.trim()?r.getComputedStyle(E):null;v=!!C&&C.visibility!=="hidden"&&tk(C),s.set(x,v)}return v},m=x=>{if(!o)return[ek];let v=[];i.selectNodeContents(x);for(let E of i.getClientRects()){let C=E.bottom-E.top;E.width>0&&C>0&&n>=E.top-2*C&&n<=E.bottom+2*C&&v.push(E)}return v},f=x=>{let v=a.get(x);if(v)return v;v=[];for(let E of x.childNodes)E.nodeType===3?d(E)&&v.push(...m(E)):E.nodeType===1&&E.hasChildNodes()&&!c(E)&&v.push(...f(E));return a.set(x,v),v};function p(x){let v=ik(f(x));return v.some(E=>ef(E,t,n))||ak(v).some(E=>ef(E,t,n))}function b(x,v){let E=r.getComputedStyle(x,v);return!E.content||E.content==="none"||E.content==="normal"||E.display==="none"?!1:E.content!=='""'||lx(E)||ux(E).some(C=>C>0)}let y=(x,v)=>/inset/.test(v.boxShadow)||ok(x,v,t,n)||b(x,"::before")||b(x,"::after");return x=>{if(JM.has(x.tagName)||!(x.namespaceURI!==sx||QM.has(x.localName))||!r)return!0;let E=r.getComputedStyle(x);return lx(E)||y(x,E)||x.namespaceURI!==sx&&p(x)}}var sk=["[data-hyperframes-ignore]","[data-hyperframes-picker-ignore]","[data-hf-ignore]","[data-no-inspect]","[data-no-pick]","[data-hyper-shader-loading]"].join(","),lk=["[data-hyperframes-picker-block]","[data-hyper-shader-loading]"].join(","),fx="[data-hf-inner-root],[data-composition-id]:not([data-composition-id] *)",mx=`${fx}{pointer-events:auto!important}`,uk=`@layer hf-picker{${mx}}`;function px(e){let t=!1,n=null,r=null,o=null,i=null,a,l=new Set;function s(w,L){try{window.dispatchEvent(new CustomEvent(w,{detail:L}))}catch(Y){$("runtime.picker.site1",Y)}}function c(w){o=w,s("hyperframe:picker:hovered",{elementInfo:o,isPickMode:t,timestamp:Date.now()})}function d(w){i=w,s("hyperframe:picker:selected",{elementInfo:i,isPickMode:t,timestamp:Date.now()})}function m(w){if(l=new Set(Array.from(document.querySelectorAll(fx)).filter(te=>getComputedStyle(te).pointerEvents==="none")),l.size===0)return w();let L=f(),Y=L?p(L):b();try{return w()}finally{Y(),l=new Set}}function f(){if(a!==void 0)return a;if(a=null,!Array.isArray(document.adoptedStyleSheets)||typeof CSSStyleSheet>"u")return null;try{let w=new CSSStyleSheet;w.replaceSync(uk),a=w}catch(w){$("runtime.picker.site2",w)}return a}function p(w){return document.adoptedStyleSheets=[...document.adoptedStyleSheets,w],()=>{document.adoptedStyleSheets=document.adoptedStyleSheets.filter(L=>L!==w)}}function b(){let w=document.createElement("style");return w.textContent=mx,(document.head??document.documentElement).appendChild(w),()=>w.remove()}function y(w,L){let Y=L.getComputedStyle(w),te=Number.parseFloat(Y.opacity||"1");if(Number.isFinite(te)&&te<.2&&!(w.textContent??"").trim()){let Ee=Y.backgroundImage;if(Ee&&Ee!=="none")return!0}return H(w,L)}function x(w){if(w.namespaceURI!=="http://www.w3.org/2000/svg")return!1;let L=w.tagName.toLowerCase();return L==="filter"||L==="defs"||L.startsWith("fe")}function v(w){if(w.namespaceURI!=="http://www.w3.org/2000/svg"||w.tagName.toLowerCase()!=="rect")return!1;let L=(w.getAttribute("filter")??"").trim();return L&&L!=="none"?!0:(w.ownerDocument.defaultView?.getComputedStyle(w).filter??"none").startsWith("url(")}function E(w){if((w.textContent??"").trim())return!1;if(x(w)||v(w))return!0;let L=[...w.children];return L.length>0&&L.every(Y=>E(Y))}function C(w,L){let Y=Number.parseFloat(L.getComputedStyle(w).opacity||"1");return Number.isFinite(Y)&&Y<.2}function H(w,L){if(!E(w))return!1;for(let Y=w;Y&&Y!==document.body&&Y!==document.documentElement;Y=Y.parentElement)if(C(Y,L)&&E(Y))return!0;return!1}function V(w){let L=w.ownerDocument.defaultView;if(!L)return!1;let Y=w;if(L.getComputedStyle(w).visibility==="hidden"||y(w,L))return!0;for(;Y&&Y!==document.body&&Y!==document.documentElement;){let te=L.getComputedStyle(Y);if(te.display==="none"||te.pointerEvents==="none")return!0;let he=Number.parseFloat(te.opacity);if(Number.isFinite(he)&&he<=.01&&!Y.hasAttribute(Er))return!0;Y=Y.parentElement}return!1}function M(w){if(!w||w===document.body||w===document.documentElement)return!1;let L=w.tagName.toLowerCase();return!(L==="script"||L==="style"||L==="link"||L==="meta"||l.has(w)||w.closest(sk)||V(w))}function R(w){return!!w?.closest(lk)}function U(w){let L=w.parentElement?.getAttribute("data-composition-id");return!w.hasAttribute("data-hf-inner-root")||!L?null:`[data-composition-id="${CSS.escape(L)}"] > [data-hf-inner-root]`}function T(w){let L=U(w);if(L)return L;let Y=w;if(Y.id)return`#${CSS.escape(Y.id)}`;let te=w.getAttribute("data-composition-id");if(te)return`[data-composition-id="${CSS.escape(te)}"]`;let he=w.getAttribute("data-composition-src");if(he)return`[data-composition-src="${CSS.escape(he)}"]`;let Ee=w.getAttribute("data-track-index");if(Ee)return`[data-track-index="${CSS.escape(Ee)}"]`;let z=w.tagName.toLowerCase(),Z=w.parentElement;if(!Z)return z;let Q=Z.querySelectorAll(`:scope > ${z}`);if(Q.length===1)return z;for(let de=0;de<Q.length;de+=1)if(Q[de]===w)return`${z}:nth-of-type(${de+1})`;return z}function F(w){let L=w.tagName.toLowerCase(),Y=(w.textContent??"").trim().replace(/\s+/g," "),te=(Ee,z)=>{let Z=Array.from(Ee);return Z.length>z?`${Z.slice(0,z-1).join("")}\u2026`:Ee},he=/^h[1-6]$/.test(L);return he||L==="p"||L==="span"||L==="div"?Y.length>0?te(Y,56):he?"Heading":"Text":L==="img"?"Image":L==="video"?"Video":L==="audio"?"Audio":L==="svg"?"Shape":w.getAttribute("data-composition-src")?"Composition":L==="section"?"Section":`${L.charAt(0).toUpperCase()}${L.slice(1)}`}function W(w,L,Y){let te=typeof Y=="number"&&Y>0?Y:8,he=[];if(document.elementsFromPoint)he=document.elementsFromPoint(w,L);else if(document.elementFromPoint){let de=document.elementFromPoint(w,L);he=de?[de]:[]}if(R(he[0]??null))return[];let Ee={},z=[],Z=[],Q=dx(document,w,L);for(let[de,ge]of he.entries()){if(!M(ge))continue;let se=`${ge.tagName}::${ge.id||""}::${de}`;if(!Ee[se]&&(Ee[se]=!0,z.push(ge),(Z.some(ue=>ge.contains(ue))||Q(ge))&&(Z.push(ge),Z.length>=te)))break}return Z.length>0?Z:z.slice(0,te)}function B(w){let L=w.getBoundingClientRect(),Y={};for(let he of Array.from(w.attributes))he.name.startsWith("data-")&&(Y[he.name]=he.value);return{id:w.id||null,tagName:w.tagName.toLowerCase(),selector:T(w),label:F(w),boundingBox:{x:L.left,y:L.top,width:L.width,height:L.height},textContent:w.textContent?w.textContent.trim().slice(0,200):null,src:w.getAttribute("src")||w.getAttribute("data-composition-src")||null,dataAttributes:Y}}function X(w,L,Y){return m(()=>W(w,L,Y)).map(B)}function ae(w){if(!t)return;let L=m(()=>{let te=W(w.clientX,w.clientY,1)[0]??(He(w.target)?w.target:null);return M(te)?te:null});if(!L||n===L)return;n&&n.classList.remove("__hf-pick-highlight"),n=L,L.classList.add("__hf-pick-highlight");let Y=B(L);c(Y),e.postMessage({source:"hf-preview",type:"element-hovered",elementInfo:Y})}function N(w){if(!t)return;w.preventDefault(),w.stopPropagation(),w.stopImmediatePropagation();let L=X(w.clientX,w.clientY,8);L.length!==0&&(c(L[0]??null),e.postMessage({source:"hf-preview",type:"element-pick-candidates",candidates:L,selectedIndex:0,point:{x:w.clientX,y:w.clientY}}))}function j(w){w.key==="Escape"&&(P(),e.postMessage({source:"hf-preview",type:"pick-mode-cancelled"}))}function I(){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(`
|
|
44
|
-
`),document.head.appendChild(r),document.body.classList.add("__hf-pick-active"),document.addEventListener("mousemove",ae,!0),document.addEventListener("click",N,!0),document.addEventListener("keydown",j,!0),s("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",ae,!0),document.removeEventListener("click",N,!0),document.removeEventListener("keydown",j,!0),s("hyperframe:picker:mode",{isPickMode:!1,timestamp:Date.now()}))}function D(){window.__HF_PICKER_API={enable:I,disable:P,isActive:()=>t,getHovered:()=>o,getSelected:()=>i,getCandidatesAtPoint:(w,L,Y)=>Number.isFinite(w)&&Number.isFinite(L)?X(w,L,Y):[],pickAtPoint:(w,L,Y)=>{if(!Number.isFinite(w)||!Number.isFinite(L))return null;let te=X(w,L,8);if(!te.length)return null;let he=Math.max(0,Math.min(te.length-1,Number(Y??0))),Ee=te[he]??null;return Ee?(d(Ee),e.postMessage({source:"hf-preview",type:"element-picked",elementInfo:Ee}),P(),Ee):null},describe:w=>He(w)?B(w):null,pickManyAtPoint:(w,L,Y)=>{if(!Number.isFinite(w)||!Number.isFinite(L))return[];let te=X(w,L,8);if(!te.length)return[];let he=[],Ee=Array.isArray(Y)?Y:[0];for(let z of Ee){let Z=Math.max(0,Math.min(te.length-1,Math.floor(Number(z)))),Q=te[Z];if(!Q)continue;he.some(ge=>ge.selector===Q.selector&&ge.tagName===Q.tagName)||he.push(Q)}return he.length?(d(he[0]??null),e.postMessage({source:"hf-preview",type:"element-picked-many",elementInfos:he}),P(),he):[]}},s("hyperframe:picker:api-ready",{hasApi:!0,timestamp:Date.now()})}return{enablePickMode:I,disablePickMode:P,installPickerApi:D}}function Li(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&&$("runtime.player.nonConformantNum",{prop:t,actual:typeof r}),n)}function Pt(e,t){let n=e?.[t];if(typeof n=="function"){n.call(e);return}n!==void 0&&$("runtime.player.nonConformantVoid",{method:t,actual:typeof n})}function Ni(e,t,n){if(e){for(let r of Object.values(e))if(!(!r||r===t))try{n(r)}catch(o){$("runtime.player.site1",o)}}}function gl(e,t,n){return n?.exact===!0?Number.isFinite(e)&&e>0?e:0:b0(e,t,n?.subFrameDivisions)}function hx(e,t,n,r){let o=gl(t,n,r),i=r?.suppressEvents===!0;return Pt(e,"pause"),typeof e.totalTime=="function"?e.totalTime(o,i):typeof e.seek=="function"&&e.seek(o,i),o}function ck(e,t,n,r,o){let i=[];Ni(e,t,a=>{Pt(a,"play"),i.push(a)});try{return hx(t,n,r,o)}finally{for(let a of i)try{Pt(a,"pause")}catch(l){$("runtime.player.site2",l)}}}function dk(e,t){Ni(e,t,n=>{Pt(n,"play")})}function gx(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?.()??Li(n,"duration",0))||0);r>0&&Math.max(0,Li(n,"time",0))>=r&&(Pt(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()),Pt(n,"play"),Ni(e.getTimelineRegistry?.(),n,o=>{typeof o.timeScale=="function"&&o.timeScale(e.getPlaybackRate()),Pt(o,"play")}),e.onDeterministicPlay(),e.setIsPlaying(!0),e.onShowNativeVideos(),e.onStatePost(!0)},pause:()=>{let n=e.getTimeline();if(!n)return;Pt(n,"pause"),Ni(e.getTimelineRegistry?.(),n,o=>{Pt(o,"pause")});let r=Math.max(0,Li(n,"time",0));e.onDeterministicSeek(r),e.onDeterministicPause(),e.setIsPlaying(!1),e.onSyncMedia(r,!1),e.onRenderFrameSeek(r),e.onStatePost(!0)},seek:(n,r)=>{let o=e.getTimeline();if(!o)return;let i=Math.max(0,Number(n)||0),a=e.getIsPlaying(),l=ck(e.getTimelineRegistry?.(),o,i,e.getCanonicalFps());e.onDeterministicSeek(l),r?.keepPlaying&&a?(typeof o.timeScale=="function"&&o.timeScale(e.getPlaybackRate()),Pt(o,"play"),Ni(e.getTimelineRegistry?.(),o,s=>{typeof s.timeScale=="function"&&s.timeScale(e.getPlaybackRate()),Pt(s,"play")}),e.onDeterministicPlay(),e.onShowNativeVideos(),e.onSyncMedia(l,!0)):(e.setIsPlaying(!1),e.onSyncMedia(l,!1)),e.onRenderFrameSeek(l),e.onStatePost(!0)},renderSeek:(n,r)=>{let o=e.getTimeline(),i=e.getCanonicalFps(),a=o?(dk(e.getTimelineRegistry?.(),o),hx(o,n,i,r)):gl(Math.max(0,Number(n)||0),i,r);e.onDeterministicSeek(a,r),e.setIsPlaying(!1),e.onSyncMedia(a,!1),e.onRenderFrameSeek(a),e.onStatePost(!0)},getTime:()=>Li(e.getTimeline(),"time",0),getDuration:()=>Li(e.getTimeline(),"duration",0),isPlaying:()=>e.getIsPlaying(),setPlaybackRate:n=>e.setPlaybackRate(n),getPlaybackRate:()=>e.getPlaybackRate()}}var nf="data-composition-id",fk="data-composition-src",mk=`[${nf}]`,bV=`[${fk}]`,rf="style",bx="script",of='link[rel="stylesheet"], link[rel="preconnect"]',pk=new Set(["","application/ecmascript","application/javascript","application/x-ecmascript","application/x-javascript","text/ecmascript","text/javascript","text/javascript1.0","text/javascript1.1","text/javascript1.2","text/javascript1.3","text/javascript1.4","text/javascript1.5","text/jscript","text/livescript","text/x-ecmascript","text/x-javascript"]),hk=e=>(e.getAttribute("type")||"").trim().toLowerCase();function yx(e){let t=hk(e);return t==="module"||t==="importmap"?!0:pk.has(t)&&e.getAttribute("nomodule")===null}function tf(e){return $n(e?.querySelectorAll(bx)).filter(t=>!yx(t))}function af(e){return $n(e?.querySelectorAll(bx)).filter(yx)}function xx(e){return[...$n(e.querySelectorAll(`${rf}, ${of}`)),...af(e)]}function $n(e){return e?Array.from(e):[]}function Sx(e){let{contentNode:t,head:n,documentElement:r,hasTemplate:o,compositionId:i}=e,a=$n(t.querySelectorAll(mk)),l=i?a.find(m=>m.getAttribute(nf)===i)??null:a[0]??null,s=(l??a[0])?.getAttribute(nf)?.trim()||"",c=o?null:n??null,d=l?tf(l):[];return{innerRoot:l,authoredCompositionId:i||s||null,scriptCompositionId:s||i||null,authoredRootId:l?.getAttribute("id")?.trim()||null,styleSources:[...$n(c?.querySelectorAll(rf)),...$n(t.querySelectorAll(rf))],scriptSources:[...af(c),...af(t)],linkSources:[...$n(n?.querySelectorAll(of)),...$n(t.querySelectorAll(of))],inertScriptsOutsideRoot:[...tf(c),...l?tf(t).filter(m=>!d.includes(m)):[]],variableDefaultCarriers:[r,l].filter(m=>m!=null)}}function Ex(e,t){let n=t[0]?.ownerDocument.querySelector("[data-composition-id]"),r=n&&!t.includes(n)?n.getAttribute("data-composition-id"):null,o=r?e.get(r):void 0;r&&o&&e.set(r,o+1)}var gk='"use strict";(()=>{function I(e){return e?/[\\w-]/.test(e)||e.charCodeAt(0)>=128:!1}function _(e){return e===" "||e===" "||e===`\n`||e==="\\r"||e==="\\f"}var j=/^[0-9a-fA-F]{1,6}/;function G(e){let n=e>=55296&&e<=57343;return e===0||e>1114111||n?65533:e}function $(e,n){return e[n]==="\\r"&&e[n+1]===`\n`?n+2:_(e[n])?n+1:n}function R(e,n){let t=e[n+1];if(t===void 0||/[\\n\\r\\f]/.test(t))return null;let i=j.exec(e.slice(n+1,n+7));if(!i)return{value:t,end:n+2};let o=G(Number.parseInt(i[0],16));return{value:String.fromCodePoint(o),end:$(e,n+1+i[0].length)}}function H(e,n){let t=o=>I(o)&&!/[0-9-]/.test(o),i=o=>e[o]==="\\\\"&&R(e,o)!==null;return e[n]==="-"?e[n+1]==="-"||t(e[n+1])||i(n+1):t(e[n])||i(n)}function y(e,n){let t=n;for(;e.startsWith("/*",t);){let i=e.indexOf("*/",t+2);t=i<0?e.length:i+2}return t}function A(e,n){let t=y(e,n);for(;_(e[t]);)t=y(e,t+1);return t}function h(e,n){if(!H(e,n))return null;let t=n,i="";for(;t<e.length;){let o=e[t];if(o==="\\\\"){let a=R(e,t);if(!a)break;i+=a.value,t=a.end;continue}if(!I(o))break;i+=o,t+=1}return t===n?null:{value:i,end:t}}var C=45;function T(e){return e>=48&&e<=57}function z(e){return e>=128||e===C||e===95||T(e)||e>=65&&e<=90||e>=97&&e<=122}function J(e,n){let t=e.charCodeAt(n);return t>=1&&t<=31||t===127?!0:T(t)?n===0||n===1&&e.charCodeAt(0)===C:!1}function k(e){let n="";for(let t=0;t<e.length;t+=1){let i=e.charCodeAt(t),o=e[t];i===0?n+="\\uFFFD":J(e,t)?n+=`\\\\${i.toString(16)} `:t===0&&e.length===1&&i===C?n+=`\\\\${o}`:z(i)?n+=o:n+=`\\\\${o}`}return n}var W=/\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|\\\\(?:[0-9a-fA-F]{1,6}(?:\\r\\n|[ \\t\\r\\n\\f])?|[\\s\\S])|"(?:[^"\\\\]|\\\\[\\s\\S])*"|\'(?:[^\'\\\\]|\\\\[\\s\\S])*\'|\\[(?:\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|\\\\[\\s\\S]|"(?:[^"\\\\]|\\\\[\\s\\S])*"|\'(?:[^\'\\\\]|\\\\[\\s\\S])*\'|[^\\]"\'\\\\/]|\\/(?!\\*))*\\]/g;function Q(e){let n=new Array(e.length).fill(!0);for(let t of e.matchAll(W)){let i=t.index;n.fill(!1,i,i+t[0].length)}return n}function q(e,n,t){if(n.length===0||!e.includes("#"))return e;let i=new Set(n),o=Q(e),a="",u=0;for(;u<e.length;){let d=o[u]&&e[u]==="#"?h(e,u+1):null;d&&i.has(d.value)?(a+=t(d.value),u=d.end):(a+=e[u],u+=1)}return a}function X(e){let n="";for(let t=0;t<e.length;t+=1){if(e[t]==="\\\\"){let i=e[t+1];if(i!==void 0&&/[\\n\\r\\f]/.test(i)){t=$(e,t+1)-1;continue}let o=R(e,t);if(o){n+=o.value,t=o.end-1;continue}}n+=e[t]}return n}function N(e){return Array.from(e,n=>{let t=n.charCodeAt(0);return t===0?"\\uFFFD":t<32||t===127?`\\\\${t.toString(16)} `:n===\'"\'||n==="\\\\"?`\\\\${n}`:n}).join("")}function Y(e,n){return e?{kind:"any"}:n===void 0?{kind:"none"}:{kind:"named",prefix:n}}function Z(e,n){return e[n]==="|"&&e[n+1]!=="="}function B(e,n){let t=e[n]==="*",i=t?{value:"*",end:n+1}:h(e,n),o=y(e,i?.end??n);if(!Z(e,o))return t?null:i?{token:i,namespace:{kind:"none"}}:null;let a=h(e,y(e,o+1));return a?{token:a,namespace:Y(t,i?.value)}:null}function K(e){if(e[0]!=="[")return null;let n=A(e,1),t=B(e,n);if(!t)return null;let{token:i,namespace:o}=t;return{name:i.value,rawName:e.slice(n,i.end),namespace:o,end:i.end}}function ee(e,n){let t=/^(?:"((?:\\\\[\\s\\S]|[^"\\\\])*)"|\'((?:\\\\[\\s\\S]|[^\'\\\\])*)\')/.exec(e.slice(n));return t?{value:X(t[1]??t[2]),end:n+t[0].length}:h(e,n)}function ne(e,n){let t=A(e,n),i=h(e,t);if(i){if(!/^[is]$/i.test(i.value))return null;t=A(e,i.end)}return e[t]!=="]"||t!==e.length-1?null:{flag:i?.value}}function F(e){let n=K(e);if(!n)return null;let t=A(e,n.end),o=["=","~=","|=","^=","$=","*="].find(d=>e.startsWith(d,t));if(!o)return null;let a=ee(e,A(e,t+o.length));if(!a)return null;let u=ne(e,a.end);return u?{name:n.name,rawName:n.rawName,namespace:n.namespace,operator:o,value:a.value,flag:u.flag}:null}function E(e,n){return e.replace(W,t=>t.startsWith("[")?n(t):t)}var re="data-hf-svg-reference-aliases";function O(e,n,t,i){let o={"=":(s,r)=>s===r,"~=":(s,r)=>s.split(/[ \\t\\r\\n\\f]+/).includes(r),"|=":(s,r)=>s===r||s.startsWith(r+"-"),"^=":(s,r)=>s.startsWith(r),"$=":(s,r)=>s.endsWith(r),"*=":(s,r)=>s.includes(r)},a=(s,r,l)=>!r&&l!=="="&&l!=="|="?!1:o[l](s,r),u=s=>s.replace(/[A-Z]/g,r=>r.toLowerCase()),d=s=>{let r=F(s);if(!r)return s;let{name:l,rawName:g,namespace:m,operator:b,value:D,flag:w}=r;if(m.kind==="named"!=(i!==void 0))return s;let x=w?.toLowerCase()==="i"?u:S=>S,L=u(l),P=t.filter(S=>{let V=m.kind==="none"?S.name:S.localName,U=m.kind==="named"?i.get(m.prefix):null;return(m.kind==="any"||S.namespaceURI===U)&&u(V)===L}),v=new Set([s]);for(let S of P)a(x(S.before),x(D),b)&&v.add(`[${g}="${N(S.after)}"${w?` ${w}`:""}]`);return v.size===1?s:`:is(${[...v].join(", ")})`};if(i)return E(e,d);let p=new Map(n.map(({id:s,replacement:r})=>[s,r])),f=new Map;for(let s of t){if(s.name!=="id"||s.before===s.after||p.has(s.before))continue;let r=f.get(s.before);r||(r=new Set([`#${k(s.before)}`]),f.set(s.before,r)),r.add(`#${k(s.after)}`)}for(let[s,r]of f)p.set(s,`:is(${[...r].join(", ")})`);let c=q(e,[...p.keys()],s=>p.get(s));return E(c,d)}function se(e,n,t=!0){let i=[],a=(t?[...e.querySelectorAll(`[${n}]`)]:[]).map(d=>d.getAttribute(n)),u=e.getAttribute?.(n);u&&a.unshift(u);for(let d of a){let p;try{p=JSON.parse(d)}catch{continue}if(!Array.isArray(p))continue;let f=p;for(let c of f){if(!ie(c))continue;let{name:s,localName:r,namespaceURI:l,before:g,after:m}=c;i.push({name:s,localName:r,namespaceURI:l,before:g,after:m})}}return i}function ie(e){if(!e||typeof e!="object")return!1;let{name:n,localName:t,namespaceURI:i,before:o,after:a}=e;return typeof n=="string"&&typeof t=="string"&&(i===null||typeof i=="string")&&typeof o=="string"&&typeof a=="string"}function oe(e){let n=[],t=[],i=!1,o,a=new WeakMap,u=(f,c)=>{for(let s of f){if("selectorText"in s){let r=s,l=a.get(r),g=r.selectorText,m=l?.applied===g?l.authored:g,b=O(m,[],t,c);b!==g&&(r.selectorText=b),b===m?a.delete(r):a.set(r,{authored:m,applied:r.selectorText})}"cssRules"in s&&u(s.cssRules,c)}},d=()=>{if(t.length)for(let f of e.document.styleSheets){let c;try{c=f.cssRules}catch{continue}let s=new Map;for(let r of c){if(!("namespaceURI"in r))continue;let{prefix:l,namespaceURI:g}=r;l&&s.set(l,g||null)}s.size&&u(c,s)}},p={rewrite:(f,c=[])=>{if(typeof f!="string"||!f.includes("#")&&!f.includes("["))return f;let s=O(f,c.length?[...c,...n]:n,t);if(s!==f){if(!o){let r=e.document.createElement("div");o=r.matches.bind(r)}o(f)}return s},refresh(){t=se(e.document,re).filter(r=>r.before!==r.after);let f=new Set(t.filter(r=>r.name==="id").map(r=>r.before)),c=new Set;n=[];for(let r of e.document.querySelectorAll("[data-hf-authored-id][id]")){let l=r.getAttribute("data-hf-authored-id");if(!l||l===r.id||c.has(l)||f.has(l))continue;c.add(l);let g=N(l);n.push({id:l,replacement:`:is(#${k(l)}, [data-hf-authored-id="${g}"])`})}if(d(),i||!n.length&&!t.length)return;let s=e.Element.prototype;s.querySelector=new Proxy(s.querySelector,{apply(r,l,g){return Reflect.apply(r,l,[p.rewrite(g[0])])}}),s.querySelectorAll=new Proxy(s.querySelectorAll,{apply(r,l,g){return Reflect.apply(r,l,[p.rewrite(g[0])])}}),i=!0}};e.__hfSvgSelectorAliases=p,p.refresh()}function M(){let e=window;e.__hfSvgSelectorAliases||oe(e)}M();})();\n';function vx(){return gk}var Oe=oT(JS(),1),Fl=Oe.default,s5=Oe.default.stringify,l5=Oe.default.fromJSON,u5=Oe.default.plugin,c5=Oe.default.parse,d5=Oe.default.list,f5=Oe.default.document,m5=Oe.default.comment,p5=Oe.default.atRule,h5=Oe.default.rule,g5=Oe.default.decl,b5=Oe.default.root,y5=Oe.default.CssSyntaxError,x5=Oe.default.Declaration,S5=Oe.default.Container,E5=Oe.default.Processor,v5=Oe.default.Document,A5=Oe.default.Comment,w5=Oe.default.Warning,_5=Oe.default.AtRule,C5=Oe.default.Result,T5=Oe.default.Input,R5=Oe.default.Rule,M5=Oe.default.Root,k5=Oe.default.Node;var Lf="data-hf-authored-id",QS="data-hf-inner-root";function Ji(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Nf(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function YL(e){let t=e.trim();return t?Array.from(new Set([t,tn(t)])).filter(Boolean):[]}function XL(e,t,n){let r=YL(t);return Za(e,r,()=>n)}function JL(e,t){let n=t?.trim();return n?XL(e,n,`[${Lf}="${Nf(n)}"]`):e}function ZS(e){return`${e}:not(:has([${QS}])), ${e} > [${QS}]`}function QL(e,t,n,r,o,i){let a=JL(e,r),l=ZL(a,t,n),s=l.trim();if(!s||s==="*")return e;if(/^(html|body|:root)$/i.test(s))return i?ZS(t):e;let c=new RegExp(`\\[\\s*data-composition-id\\s*[\\^\\*\\$]?=\\s*(["'])${Ji(n)}\\1\\s*\\]`,"g");if(c.test(s))return s.replace(c,"").trim()===""?ZS(t):l.replace(c,t);let d=l.match(/^\s*/)?.[0]??"",m=l.match(/\s*$/)?.[0]??"";if(o){let f=r?`[${Lf}="${Nf(r)}"]`:null;if(f&&s.startsWith(f)){let p=s.slice(f.length);return`${d}${t}${f}${p}${m}`}}return`${d}${t} ${s}${m}`}function ZL(e,t,n){let r=Ji(n),o=String.raw`\[\s*data-composition-id\s*=\s*(?:"${r}"|'${r}')\s*\]`,i=String.raw`\s*\[\s*data-(?:start|duration)\s*=\s*(?:"[^"]*"|'[^']*')\s*\]`;return e.replace(new RegExp(`${o}(?:${i})+`,"g"),t).replace(new RegExp(`(?:${i})+${o}`,"g"),t)}var eN=new Set(["keyframes","-webkit-keyframes","font-face"]);function tN(e){return e?.type==="atrule"}function nN(e){let t=e.parent;for(;t;){if(tN(t)&&eN.has(t.name.toLowerCase()))return!0;t=t.parent}return!1}function rN(e){let t=e.parent;for(;t;){if(t.type==="rule")return!0;t=t.parent}return!1}function eE(e,t,n,r,o){let i=t.trim();if(!e||!i)return e;let a=n||`[data-composition-id="${Nf(i)}"]`,l=oN(e);return l?aN(l,a,i,r,o):""}function oN(e){try{return Fl.parse(e)}catch{return null}}function iN(e,t){e.walkRules(n=>{nN(n)||rN(n)||t(n)})}function aN(e,t,n,r,o){return iN(e,i=>{i.selectors=i.selectors.map(a=>QL(a,t,n,r,o?.compoundAuthoredRoot,o?.scopeRootSelectors))}),e.toResult({map:!1}).css}var sN="hf-scope-placeholder",I5=`[data-composition-id="${sN}"]`;function bt(e){return JSON.stringify(e).replace(/</g,"\\u003c")}var tE=`!__hfBaseHyperframes
|
|
43
|
+
`,document.head.appendChild(n)}for(let n of e)try{document.querySelectorAll(n).forEach(o=>{o.classList.add("__hf-flash"),setTimeout(()=>o.classList.remove("__hf-flash"),t)})}catch(r){$("bridge.flashElements.querySelector",r)}}var hi={windowSeconds:3,choppyShare:.25,warmupSeconds:1,reportEveryMs:1e3},h1=.5,un=[],Ds=null,nd=0,J0="",rd=!1,od=0;function Z0(e){Re({source:"hf-preview",type:"preview-health",health:e})}function gi(){un=[],Ds=null,rd&&Z0(null),rd=!1,od=0}var Q0=null;function eb(e){e!==Q0&&(Q0=e,gi())}function Is(){gi()}function g1(e,t,n){let r=hi.windowSeconds*1e3;for(;un[0]&&un[0].atMs<e-r;)un.shift();let o=un[0];if(!o)return;let i=e-(o.atMs-o.gapMs);if(i<r||e-od<hi.reportEveryMs)return;let a=un.filter(m=>m.drawn).length,l=i/1e3*t*n,s=l>0?1-Math.min(a,l)/l:0,c=un.reduce((m,f)=>m+(f.waiting?f.gapMs:0),0),d=Math.max(s,c/i);rd=!0,od=e,Z0({droppedShare:Math.round(d*1e3)/1e3,seconds:Math.round(i/100)/10,choppy:d>=hi.choppyShare,fps:Math.round(a/(i/1e3)*10)/10,worstFrameMs:Math.round(Math.max(...un.map(m=>m.gapMs))),mode:"play"})}function tb(e){let{nowMs:t,filmTime:n,fps:r,rate:o}=e,i=`${r}|${o}|${e.layoutKey}`;if(!e.playing||e.hidden){gi();return}i!==J0&&(J0=i,gi());let a=Math.floor(n*r+1e-6),l=Ds;if(Ds={ms:t,film:n,frame:a},!l){nd=t+hi.warmupSeconds*1e3;return}let s=t-l.ms,c=l.film+s/1e3*o;if(n<l.film||n>c+h1){gi(),Ds={ms:t,film:n,frame:a},nd=t+hi.warmupSeconds*1e3;return}t<nd||(un.push({atMs:t,gapMs:s,drawn:a!==l.frame,waiting:e.waiting}),g1(t,r,o))}var b1=1e3,xr=new Map,id=!1,nb=!1,bi,Os=!1;function y1(){for(let r of xr.keys())r.isConnected||xr.delete(r);let e=[...xr.values()],t=id&&e.length>0;if(!t&&!nb)return!1;nb=t;let n=e.reduce((r,o)=>r+(o.state==="ready"?1:o.progress??0),0);return Re({source:"hf-preview",type:"preview-copies",copies:t?{total:e.length,ready:e.filter(r=>r.state==="ready").length,failed:e.filter(r=>r.state==="failed").length,progress:n/e.length,error:e.some(r=>r.state==="failed")?"failed":null}:null}),!0}function ad(){if(bi!==void 0){Os=!0;return}y1()&&(bi=setTimeout(()=>{bi=void 0,Os&&(Os=!1,ad())},b1))}function rb(e){xr.clear(),id=e<1,clearTimeout(bi),bi=void 0,Os=!1,ad()}function Gn(e,t,n=null){id&&(xr.set(e,{state:t,progress:n}),ad())}function ob(){return[...xr].filter(([,e])=>e.state==="failed").map(([e])=>e)}function ib(){return[...xr.values()].every(e=>e.state==="ready")}var sd=null;function ab(e){sd=e}function wt(e,t){if(sd)try{sd({source:"hf-preview",type:"analytics",event:e,properties:t??{}})}catch(n){$("runtime.analytics.site1",n)}}function x1(e){let t=e.toLowerCase().replace(/[^a-z0-9]+/g,"-"),n=0,r=t.length;for(;n<r&&t[n]==="-";)n++;for(;r>n&&t[r-1]==="-";)r--;let o=t.slice(n,r);return o.length>0?o:"node"}function Qr(e){return`--${x1(e)}`}function sb(e){let t=new Map;for(let n of e){let r=Qr(n),o=t.get(r);o?o.includes(n)||o.push(n):t.set(r,[n])}return[...t.values()].filter(n=>n.length>1)}function ld(e){let n=e.closest("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()??"";return n?window.__hfVariablesByComp?.[n]:void 0}function Hs(e){let t=window,n=ld(e);if(n)return n;let r=t.__hyperframes?.getVariables?.();return r&&typeof r=="object"?r:t.__hfVariables??{}}function ub(){if(typeof document>"u")return{};let e=new Set;document.documentElement?.hasAttribute("data-composition-variables")&&e.add(document.documentElement);for(let o of Array.from(document.querySelectorAll("[data-composition-variables]")))ld(o)||e.add(o);let t={};for(let o of e)Object.assign(t,yi(o));let n=Bs(),r={...t,...n};for(let o of e)cd(o,r);return r}var lb=new Set;function cb(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 S1(e,t){return t?.trim()||e.getAttribute("data-composition-id")?.trim()||e.querySelector("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()||"composition"}function E1(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 v1(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=E1(e);return r.length===0||r.some(o=>String(o)===String(n))?null:{id:e.id,value:n,allowed:r}}function cd(e,t,n){if(!e)return;let r=cb(e);if(r.length===0)return;let o=S1(e,n);for(let i of r){let a=v1(i,t);if(!a)continue;let l=`${o}|${a.id}|${String(a.value)}`;if(lb.has(l))continue;lb.add(l);let s="default"in i?JSON.stringify(i.default):"the composition default";globalThis.console.warn(`[hyperframes] runtime_unknown_enum_value: ${o} variable "${a.id}" got ${JSON.stringify(a.value)}, which is not a declared option (${a.allowed.join(", ")}). Rendering ${s} instead.`)}}function yi(e){let t={};for(let n of cb(e))typeof n.id!="string"||!("default"in n)||(t[n.id]=n.default);return t}var ud="data-hf-css-vars";function Gs(e){return"style"in e&&typeof e.style?.setProperty=="function"}function dd(e,t){if(!Gs(e))return;let n=[];for(let[r,o]of Object.entries(t))if(typeof o=="string"&&o!==""||typeof o=="number"){let i=Qr(r);e.style.setProperty(i,String(o)),n.push(i)}n.length>0&&e.setAttribute(ud,n.join(" "))}function db(e,t,n){let r={};for(let[o,i]of Object.entries(t)){let a=Qr(o);((Gs(e)?e.style.getPropertyValue(a):"")||(n?n.getComputedStyle(e).getPropertyValue(a):"")).trim()===""&&(r[o]=i)}return r}function fb(e){if(!Gs(e))return;let t=e.getAttribute(ud);if(t){for(let n of t.split(" "))n.startsWith("--")&&e.style.removeProperty(n);e.removeAttribute(ud)}}function mb(e){let t=new Set;e.documentElement?.hasAttribute("data-composition-variables")&&t.add(e.documentElement);for(let o of Array.from(e.querySelectorAll("[data-composition-variables]")))t.add(o);let n=Bs(),r=[];for(let o of t)r.push(...A1(o,n,e.defaultView));for(let o of sb(r))globalThis.console.warn(`composition variables ${o.join(", ")} collapse to the same CSS property ${Qr(o[0]??"")}. Rename one to avoid cross-talk`)}function A1(e,t,n){if(!Gs(e))return[];let r=yi(e),o={};for(let[i,a]of Object.entries(r)){if(i in t)continue;let l=Qr(i);(e.style.getPropertyValue(l)||(n?n.getComputedStyle(e).getPropertyValue(l):"")).trim()===""&&(o[i]=a)}for(let[i,a]of Object.entries(t))i in r&&(o[i]=a);return dd(e,o),Object.keys(r)}function pb(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 Bs(){if(typeof window>"u")return{};let e=window.__hfVariables;return!e||typeof e!="object"||Array.isArray(e)?{}:e}function Us(e,t,n,r){let o=!1;try{e.pause()}catch(i){o=!0,$(r,i)}try{e.currentTime=t}catch(i){$(n,i)}if(o)try{e.pause()}catch(i){$(r,i)}}function hb(e){let t=[],n=(f,p=()=>f.getAnimations())=>{if(typeof f.getAnimations!="function")return[];try{return p()}catch{return[]}},r=f=>{let p=new Map;if(t.length===0)return p;let b=typeof CSSAnimation<"u";for(let y of n(document,f)){if(b&&!(y instanceof CSSAnimation))continue;let x=y.effect;if(!x?.target||x.pseudoElement)continue;let v=p.get(x.target);v?v.push(y):p.set(x.target,[y])}return p},o=(f=[],p=[])=>[...p,...f.filter(b=>!p.includes(b)&&b.playState!=="idle")],i=f=>{let p=f.closest("[data-start]")??f;return e?.resolveStartSeconds?e.resolveStartSeconds(p):Number.parseFloat(p.getAttribute("data-start")??"0")||0},a=f=>{let p=E=>(E||"").split(",").map(C=>Number.parseFloat(C)/(C.trim().endsWith("ms")?1e3:1)),b=p(f.animationDuration),y=p(f.animationDelay),x=f.animationName.split(","),v=0;return x.forEach((E,C)=>{if(E.trim()==="none")return;let H=y[C%y.length]+b[C%b.length];H>v&&(v=H)}),{cycleSeconds:v,delays:x.map((E,C)=>y[C%y.length]||0)}},l=(f,p)=>{let b=null;try{b=f.effect?.getComputedTiming?.()??null}catch(x){$("runtime.adapters.css.site5",x)}if(!b)return{};let y=Number(b.endTime);return Number.isFinite(y)?{endSeconds:p+y/1e3}:{unbounded:!0}},s=(f,p)=>{for(let b of f)Us(b,p,"runtime.adapters.css.site1","runtime.adapters.css.site2")},c=f=>{for(let p of f)try{p.play()}catch(b){$("runtime.adapters.css.site3",b)}},d=f=>{for(let p of f)try{p.pause()}catch(b){$("runtime.adapters.css.site4",b)}},m=f=>{f.baseDelay?f.el.style.animationDelay=f.baseDelay:f.el.style.removeProperty("animation-delay"),f.basePlayState?f.el.style.animationPlayState=f.basePlayState:f.el.style.removeProperty("animation-play-state")};return{name:"css",discover:()=>{for(let b of t)m(b);let f=new Map(t.map(b=>[b.el,b.handles]));t=[];let p=document.querySelectorAll("*");for(let b of p){if(!Ce(b))continue;let y=window.getComputedStyle(b);!y.animationName||y.animationName==="none"||t.push({el:b,baseDelay:b.style.animationDelay||"",basePlayState:b.style.animationPlayState||"",...a(y),handles:f.get(b)})}},getAnimationCycleEndSeconds:()=>{let f=0;for(let p of t)!p.el.isConnected||p.cycleSeconds<=0||(f=Math.max(f,i(p.el)+p.cycleSeconds));return f>0?f:null},getInferredDurationSeconds:()=>{let f=0;for(let p of t){if(!p.el.isConnected)continue;let b=i(p.el);for(let y of n(p.el)){let x=l(y,b);x.endSeconds!=null&&(f=Math.max(f,x.endSeconds))}}return f>0?f:null},seek:f=>{let p=Number(f.time)||0,b=r(f.pageAnimations);for(let y of t)y.handles=o(y.handles,b.get(y.el));for(let y of t){if(!y.el.isConnected)continue;let x=i(y.el),v=Math.max(0,p-x)*1e3;if(y.handles?.length){y.el.style.animationDelay!==y.baseDelay&&m(y),s(y.handles,v);continue}y.el.style.animationPlayState="paused",y.el.style.animationDelay=y.delays.map(E=>`${Number((E-v/1e3).toFixed(3))}s`).join(", ")}},pause:f=>{let p=r(f?.pageAnimations);for(let b of t){if(!b.el.isConnected)continue;let y=p.get(b.el);y&&(d(y),m(b))}},play:()=>{let f=r();for(let p of t)p.el.isConnected&&(m(p),c(f.get(p.el)??[]))},revert:()=>{t=[]}}}function $s(e,t,n){e.totalDuration?.();let r=e.getChildren?.(!1,!0,!0)??[],o=M1(e,n,t).map(s=>[s,s.ratio,s._zTime,s._act]),i=xb(r,t).map(s=>[s,s._ts]),a=new Set;for(let[s]of i)for(let c=s.parent;c&&!a.has(c);c=c.parent)a.add(c);let l=[...a].map(s=>[s,s._dur,s._tDur,s._end,s._dirty]);for(let[s]of i)s._ts=0;try{w1(e,r,t,n)}finally{for(let[s,c]of i)s._ts=c;for(let[s,c,d,m,f]of l)Object.assign(s,{_dur:c,_tDur:d,_end:m,_dirty:f})}for(let[s,c,d,m]of o)s.ratio=c,s._zTime=d,s._act=m}function w1(e,t,n,r){let o=n>=Ws;e.totalTime(o?n-Ws:n+Ws,!0),Ab(t,n,o?Ws:0),e.totalTime(n,!0),!o&&r&&yb(e,r,n)}function yb(e,t,n){for(let r of R1(e,t,n)){let{ratio:o,_zTime:i,_act:a}=r;r.render(0,!0,!0),Object.assign(r,{ratio:o,_zTime:i,_act:a})}}function _1(e){let t=e,[n]="_first"in t?t._first?[t._first]:[]:e.getChildren?.(!1,!0,!0)??[],r=n?.parent;return r!==void 0&&!r._initted}function xi(e,t,n,r){if(typeof e.totalTime!="function")return typeof e.seek=="function"&&e.seek(t,n),!1;let o=Number(e.totalTime());return e.totalTime(t,n),t<o&&r&&yb(e,r,t),o!==t||!_1(e)?!1:($s({totalTime:e.totalTime.bind(e),totalDuration:e.totalDuration?.bind(e),getChildren:e.getChildren?.bind(e)},t,r),!0)}var fd=1e-6;function xb(e,t,n=[]){for(let r of e)r.startTime()>t+fd?n.push(r):r.getChildren&&r.endTime()>=t&&xb(r.getChildren(!1,!0,!0),r.time(),n);return n}function Sb(e){return(e.getChildren?.(!0,!0,!0)??[]).filter(t=>{let n=t;return typeof n.getChildren=="function"||n.totalDuration?.()===0})}var gb=new WeakMap,bb=.05;function C1(e,t){let n=Number(e._start);for(let r=e.parent;r&&r!==t;r=r.parent){if(r._repeat||!r._ts)return null;n=Number(r._start)+n/r._ts}return Number.isFinite(n)?n:null}function T1(e,t){let n={version:t.version,always:[],points:[]};for(let r of Sb(e)){let o=r,i=typeof o.getChildren=="function"?null:C1(o,t.owner);i===null?n.always.push(r):n.points.push({at:i,mark:r})}return n.points.sort((r,o)=>r.at-o.at),n}function Eb(e,t){let n=0,r=e.length;for(;n<r;){let o=n+r>>1;e[o].at<t?n=o+1:r=o}return n}function vb(e,t){let n=gb.get(t.owner);return n?.version!==t.version&&(n=T1(e,t),gb.set(t.owner,n)),n}function R1(e,t,n){let{points:r}=vb(e,t),o=[];for(let i=Eb(r,n-fd);i<r.length&&!(r[i].at>n+fd);i++)o.push(r[i].mark);return o}function M1(e,t,n){if(!t)return Sb(e);let r=vb(e,t),{points:o}=r,i=[...r.always],a=n+bb;for(let l=Eb(o,n-bb);l<o.length&&!(o[l].at>a);l++)i.push(o[l].mark);return i}var Vs=2e-8,Ws=.001,k1=e=>{let t=e;return typeof t?.render=="function"&&typeof t.startTime=="function"&&typeof t.paused=="function"&&typeof t.timeScale=="function"&&t.timeScale()>0&&!t.paused()};function L1(e){return e.vars?.keyframes&&(e.render(Vs,!0),e.render(-Vs,!0)),e._startAt&&e._startAt.render(Vs,!0,!0),!!(e.vars?.keyframes||e._startAt)}function Ab(e,t,n){for(let r of e.filter(k1)){let o=(t-r.startTime())*r.timeScale();Math.abs(o)<1e-9&&L1(r)||o>0&&N1(r,o,n*r.timeScale())}}function N1(e,t,n){t<n&&e._startAt&&e._startAt.render(Vs,!0,!0);let r=e.getChildren?e:e.timeline;r?.getChildren&&t<=e.totalDuration()&&Ab(r.getChildren(!1,!0,!0),t,n)}function wb(e){return{name:"gsap",discover:()=>{},seek:t=>{let n=e.getTimeline();if(!n)return;n.pause();let r=Math.max(0,Number(t.time)||0),o=t.suppressEvents===!0;typeof n.totalTime=="function"?(n.totalTime(r,o),$s({totalTime:n.totalTime.bind(n),totalDuration:n.totalDuration?.bind(n),getChildren:n.getChildren?.bind(n)},r)):n.seek(r,o)},pause:()=>{let t=e.getTimeline();t&&t.pause()}}}function _b(){return{name:"animejs",discover:()=>{try{let e=window.anime;if(!e||typeof e.running>"u")return;let t=e.running;if(!Array.isArray(t)||t.length===0)return;let n=window.__hfAnime??[],r=new Set(n);for(let o of t)r.has(o)||n.push(o);window.__hfAnime=n}catch(e){$("runtime.adapters.animejs.site1",e)}},seek:e=>{let t=Math.max(0,(Number(e.time)||0)*1e3),n=window.__hfAnime;if(!(!n||n.length===0))for(let r of n)try{typeof r.seek=="function"&&r.seek(t)}catch(o){$("runtime.adapters.animejs.site2",o)}},pause:()=>{let e=window.__hfAnime;if(!(!e||e.length===0))for(let t of e)try{typeof t.pause=="function"&&t.pause()}catch(n){$("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){$("runtime.adapters.animejs.site4",n)}},revert:()=>{}}}function Mb(e){let t=r=>{let o=Tb(r),i=o&&typeof o.closest=="function"?o.closest("[data-composition-id]"):null;return i&&e?.resolveStartSeconds?e.resolveStartSeconds(i):0},n=(r,o)=>Math.max(0,o-t(r));return{name:"lottie",discover:()=>{try{let r=window.lottie;if(r&&typeof r.getRegisteredAnimations=="function"){let o=r.getRegisteredAnimations();if(Array.isArray(o)&&o.length>0){let i=window.__hfLottie??[],a=new Set(i);for(let l of o)a.has(l)||i.push(l);window.__hfLottie=i}}}catch(r){$("runtime.adapters.lottie.site1",r)}},seek:r=>{let o=Math.max(0,Number(r.time)||0),i=window.__hfLottie;if(!(!i||i.length===0))for(let a of i)try{let l=n(a,o),s=a.loop===!0;if(qs(a)){let c=l*a.frameRate;a.totalFrames>0&&s?a.goToAndStop(md(c,a.totalFrames),!0):a.totalFrames>0&&c>=a.totalFrames?a.goToAndStop(a.totalFrames-1,!0):a.goToAndStop(l*1e3,!1)}else if(pd(a)){if(typeof a.setFrame=="function"){let c=a.totalFrames??0,d=a.duration??0;if(!Number.isFinite(c)||c<=0||!Number.isFinite(d)||d<=0)continue;let m=l*c/d;a.setFrame(Math.min(s?md(m,c):m,c-1))}else if(typeof a.setCurrentRawFrameValue=="function"){let c=a.totalFrames??0,d=a.frameRate??30,m=s&&c>0?md(l*d,c):l*d;c>0&&a.setCurrentRawFrameValue(Math.min(m,c-1))}else if(typeof a.seek=="function"){let c=a.duration??0;if(Number.isFinite(c)&&c>0){let d=Math.min(100,(s?l%c:l)/c*100);a.seek(d)}}}}catch(l){$("runtime.adapters.lottie.site2",l)}},pause:()=>{let r=window.__hfLottie;if(!(!r||r.length===0))for(let o of r)try{(qs(o)||pd(o))&&o.pause()}catch(i){$("runtime.adapters.lottie.site3",i)}},revert:()=>{},getInferredDurationSeconds:()=>Cb((r,o)=>o),getAnimationCycleEndSeconds:()=>Cb((r,o)=>Tb(r)?.isConnected===!1?null:t(r)+o)}}function Cb(e){let t=window.__hfLottie;if(!t||t.length===0)return null;let n=0,r=!1;for(let o of t){let i=null;try{let a=F1(o);i=a==null?null:e(o,a)}catch(a){$("runtime.adapters.lottie.site4",a)}i!=null&&(r=!0,n=Math.max(n,i))}return r?n:null}function Tb(e){return qs(e)?e.wrapper:e.canvas}function md(e,t){let n=e%t;return t-n<1e-6?0:n}function Rb(e,t){return!Number.isFinite(e)||!e||e<=0||!Number.isFinite(t)||!t||t<=0?null:e/t}function F1(e){return qs(e)?Rb(e.totalFrames,e.frameRate):pd(e)?Number.isFinite(e.duration)&&(e.duration??0)>0?e.duration??null:Rb(e.totalFrames,e.frameRate):null}function qs(e){return typeof e=="object"&&e!==null&&typeof e.goToAndStop=="function"}function pd(e){return typeof e=="object"&&e!==null&&typeof e.pause=="function"&&("totalFrames"in e||"duration"in e)}var hd=-1,eo=new Set,kb=new WeakSet,Zr,gd=0;function Lb(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){$("runtime.adapters.seek-dispatch.site1",o)}finally{n=!1}t.length!==0&&Ze(Promise.all(t))}function Ze(e,t){let n=e.then(()=>({status:"fulfilled"})).catch(r=>({status:"rejected",reason:r}));eo.add(n),t==="video-frame"&&kb.add(n),n.then(r=>{eo.delete(n)&&r.status==="rejected"&&Zr===void 0&&(Zr={reason:r.reason})})}function zs(e){e!==hd&&(hd=e,Lb(e))}function js(e){hd=e,Lb(e)}function Nb(){return gd>0}async function Fb(){for(let e=[...eo];e.length>0;e=[...eo])await Promise.all(e)}function Pb(){return eo.size>0}async function Db(e){let t=()=>[...eo].filter(r=>e?.videoFrames!==!1||!kb.has(r));gd+=1;let n=Zr;try{await Promise.resolve();for(let o=t();o.length>0;o=t()){let a=(await Promise.all(o)).find(l=>l.status==="rejected");n===void 0&&a?.status==="rejected"&&(n={reason:a.reason})}let r=Zr;if(n===void 0&&(n=r),Zr===r&&(Zr=void 0),n)throw n.reason}finally{gd-=1}}function Ib(){let e=null,t=0,n=null,r=null,o=null,i=null,a=()=>{if(typeof window>"u")return null;let d=window.THREE?.DefaultLoadingManager;return!d||typeof d!="object"||typeof d.itemsLoaded!="number"||typeof d.itemsTotal!="number"?null:d},l=c=>{i||c.itemsTotal<=c.itemsLoaded||(i=new Promise(d=>{c.onLoad=function(){try{o?.call(this)}finally{i=null,c.onLoad=o??null,d()}}}))},s=c=>{n!==c&&(n=c,r=c.onStart??null,o=c.onLoad??null,c.onStart=function(d,m,f){try{r?.call(this,d,m,f)}finally{l(c)}})};return{name:"three",discover:()=>{let c=a();c&&(s(c),l(c))},seek:c=>{e=Math.max(0,Number(c.time)||0),t=e,window.__hfThreeTime=e,zs(e)},pause:()=>{e==null&&(e=Math.max(0,t))},play:()=>{e=null},revert:()=>{e=null,t=0},getReadyPromise:()=>{let c=a();return!c||c.itemsTotal<=c.itemsLoaded?null:(i||l(c),i)}}}function $t(e){let t=null,n=new WeakSet;return{name:e.name,discover:()=>{},seek:()=>{},pause:()=>{},play:()=>{},revert:()=>{},getReadyPromise:()=>{let r=e.getInstances();if(r.length===0)return null;let o=r.filter(i=>!n.has(i));return o.length===0?null:t||(t=Promise.allSettled(o.map(i=>e.waitFor(i).then(()=>{n.add(i)}))).then(()=>{t=null}),t)}}}function Ob(){return $t({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 Hb(){return $t({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 Gb(){return $t({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 Bb(){return $t({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 Ub(){return $t({name:"d3",getInstances:()=>{if(typeof window>"u")return[];let e=window.__hfD3;return Array.isArray(e)?e:[]},waitFor:e=>e.end()})}var P1=250;function Wb(){let e=null,t=0,n=null,r=()=>{n!==null&&(window.clearInterval(n),n=null)},o=()=>{n===null&&document.querySelector("[data-composition-id][data-requires-webgpu]")&&(n=window.setInterval(()=>{e!==null&&(Nb()||(window.__hfTypegpuTime=e,js(e)))},P1))};return{name:"typegpu",discover:()=>{},seek:i=>{e=Math.max(0,Number(i.time)||0),t=e,window.__hfTypegpuTime=e,zs(e)},pause:()=>{e==null&&(e=Math.max(0,t)),o()},play:()=>{r(),e=null},revert:()=>{r(),e=null,t=0}}}var to=new Map,Vb=()=>to.size>0;function $b(e){if(to.has(e.element))throw new Error("This element already has a frame source");let t=e.sourceRange;if(t&&(!Number.isFinite(t.start)||t.start<0||!Number.isFinite(t.duration)||t.duration<=0||!Number.isFinite(t.fps)||t.fps<=0))throw new Error("Frame source ranges require a nonnegative start, positive duration and FPS");let n=new AbortController,r=new Promise(c=>{n.signal.addEventListener("abort",()=>c(),{once:!0})}),o=Promise.race([Promise.resolve(e.ready),r]);o.catch(()=>{});let i=null,a=null,l=async()=>{let c;try{for(await o;!n.signal.aborted&&i!==null;){let d=i;i=null;try{await Promise.race([e.render(d,n.signal),r])}catch(m){c??(c={reason:m})}}if(c)throw c.reason}finally{i=null,a=null}},s={element:e.element,ready:o,seek(c){return i=t?t.start+Math.min(Math.max(0,c),Math.max(0,t.duration-1/t.fps)):c,a??(a=l()),a},dispose(){n.signal.aborted||(n.abort(),i=null,to.delete(e.element),e.dispose?.())}};return to.set(e.element,s),s.dispose}function qb(e){let t=new Set,n=[],r=null,o=()=>{for(let l of t)to.get(l.element)!==l&&t.delete(l);let a=[];for(let[l,s]of to){if(!l.isConnected){s.dispose();continue}t.has(s)||(t.add(s),Ze(s.ready)),a.push([l,s])}return a},i=new MutationObserver(()=>{o()});return i.observe(document,{childList:!0,subtree:!0}),{name:"frame-source",discover:()=>{o()},pause:()=>{},seek:({time:a})=>{for(let[l,s]of o()){let c=e.start(l),d=e.duration(l),m=c+(d??1/0),f=e.exportRenderSeek()?ws(c,m,e.canonicalFps()):{start:c,end:m};if(!jr(a,f.start,f.end,e.compositionDuration()))continue;let p=Math.max(0,a-c),b=vt(l)+Dn(Et(l),p);Ze(s.seek(b))}},getReadyPromise:()=>{let a=o().map(([,l])=>l);return a.length===0?null:((a.length!==n.length||a.some((l,s)=>l!==n[s]))&&(n=a,r=Promise.all(a.map(l=>l.ready))),r)},revert:()=>{i.disconnect();for(let a of t)a.dispose();t.clear()}}}function zb(e){let t=e.nextElementSibling;if(Qe(t)&&t.classList.contains("__render_frame__")&&t.complete&&t.naturalWidth>0)return t;let n=Nt(e);return n&&n.complete&&n.naturalWidth>0?n:null}function jb(){let e=globalThis.GPUQueue;if(!e?.prototype?.copyExternalImageToTexture)return;let t=e.prototype.copyExternalImageToTexture;e.prototype.copyExternalImageToTexture=function(n,r,o){if(Ne(n?.source)){let i=zb(n.source);if(i)return t.call(this,{...n,source:i},r,o)}return t.call(this,n,r,o)}}function Kb(){let e=[globalThis.WebGL2RenderingContext,globalThis.WebGLRenderingContext],t=["texImage2D","texSubImage2D"];for(let n of e){let r=n?.prototype;if(r)for(let o of t){let i=r[o];if(typeof i!="function"||i.__hfVideoPatched)continue;let a=function(...l){let s=l.length-1,c=l[s];if(Ne(c)){let d=zb(c);d&&(l[s]=d)}return i.apply(this,l)};a.__hfVideoPatched=!0,r[o]=a}}}var D1=e=>typeof CSSAnimation<"u"&&e instanceof CSSAnimation||typeof CSSTransition<"u"&&e instanceof CSSTransition;function Yb(){let e=!1,t=0,n=!1,r,o,i,a=new Set,l=new WeakMap,s=(x=()=>document.getAnimations())=>{if(!document.getAnimations)return[];try{return x()}catch{return[]}},c=x=>{let v=Number(x.currentTime);return Number.isFinite(v)&&v>0?v:0},d=(x,v)=>v<=0?x:x>=v?Math.max(0,x-v):x,m=(x,v)=>{let E=l.get(x);if(E)return E;let C={compositionTimeMs:v,animationTimeMs:e?d(c(x),v):c(x)};return l.set(x,C),C},f=(x,v)=>{if(!a.has(x)){a.add(x);let E=()=>{a.delete(x)};try{x.addEventListener("finish",E,{once:!0}),x.addEventListener("cancel",E,{once:!0})}catch(C){$("runtime.adapters.waapi.site4",C)}}m(x,v)},p=(x,v)=>{for(let E of x)f(E,v)},b=()=>{if(n||typeof Element>"u")return;let x=Element.prototype;if(typeof x.animate!="function"||x.__hfOriginalAnimate)return;let v=x.animate;try{Object.defineProperty(x,"__hfOriginalAnimate",{value:v,configurable:!0});let E=function(...C){let H=v.apply(this,C);return f(H,t),H};x.animate=E,r=x,o=v,i=E,n=!0}catch{}},y=x=>{let v=null;try{v=x.effect?.getComputedTiming?.()??null}catch(H){$("runtime.adapters.waapi.site4",H)}if(!v)return{};let E=Number(v.endTime);return Number.isFinite(E)?{endSeconds:(l.get(x)?.compositionTimeMs??0)/1e3+E/1e3}:{unbounded:!0}};return{name:"waapi",discover:()=>{e=!0,b(),p(s(),t)},seek:x=>{let v=Math.max(0,(Number(x.time)||0)*1e3);t=v,(!e||a.size>0)&&p(s(x.pageAnimations),e?v:0);for(let E of a){if(E.playState==="idle"&&D1(E)){a.delete(E);continue}let C=e?m(E,v):m(E,0),H=C.animationTimeMs+Math.max(0,v-C.compositionTimeMs);Us(E,H,"runtime.adapters.waapi.site1","runtime.adapters.waapi.site2")}},pause:x=>{e||p(s(x?.pageAnimations),t);for(let v of a)try{v.pause()}catch(E){$("runtime.adapters.waapi.site3",E)}},revert:()=>{if(a.clear(),l=new WeakMap,e=!1,t=0,r&&o&&i&&r.animate===i)try{r.animate=o,r.__hfOriginalAnimate===o&&delete r.__hfOriginalAnimate}catch(x){$("runtime.adapters.waapi.site5",x)}r=void 0,o=void 0,i=void 0,n=!1},getInferredDurationSeconds:()=>{let x=0;for(let v of s()){let E=y(v);E.endSeconds!=null&&(x=Math.max(x,E.endSeconds))}return x>0?x:null}}}function I1(e,t,n){let r=e.filter(i=>Number.isFinite(i.time)&&Number.isFinite(i.volume)).map(i=>({time:Math.max(0,i.time-t),volume:Ve(i.volume)})).sort((i,a)=>i.time-a.time),o=[];for(let i of r){let a=o.at(-1);a&&Math.abs(a.time-i.time)<1e-9?a.volume=i.volume:o.push(i)}return o.length===0||o[0].time>0&&o.unshift({time:0,volume:Ve(n)}),o}function Xb(e,t){if(e.length===0)return 1;let n=0;for(;n<e.length-2&&t>=e[n+1].time;)n+=1;let r=e[n],o=e[n+1]??r,i=o.time-r.time,a=i<=0?0:Math.min(1,Math.max(0,(t-r.time)/i));return r.volume+(o.volume-r.volume)*a}function O1(e,t,n,r){let o=e.at(-1);!o||Math.abs(o.volume-n.volume)>1e-4?(o&&t&&t.time>o.time&&e.push(t),e.push(n)):r&&n.time>o.time&&e.push(n)}function H1(e){let t=Number.parseFloat(e??"");return Number.isFinite(t)?t:void 0}function G1(e,t){let n=lt({timelineRegistry:window.__timelines,includeAuthoredTimingAttrs:!0}).resolveMediaStartForElement(e),r=Ue(e.dataset.end)??void 0,o=Ue(e.dataset.duration)??void 0,i=t;o!==void 0&&o>0?i=n+o:r!==void 0&&r>n&&(i=r);let a=H1(e.dataset.volume)??1;return{start:n,end:i,staticVolume:Ve(a)}}function B1(e,t,n,r,{start:o,end:i,staticVolume:a}){let l=1/Math.min(60,Math.max(1,r)),s=Math.max(0,o),c=Math.min(n,i),d=Xg(e,()=>{e.volume=a;let f=[],p;for(let b=s;b<=c+1e-6;b=Math.min(c,b+l)){t(b);let y=Number(e.volume);if(Number.isFinite(y)){let x={time:Number(b.toFixed(6)),volume:Number(Ve(y).toFixed(6))};O1(f,p,x,b===c),p=x}if(b===c)break}return f});return d.some(f=>Math.abs(f.volume-a)>1e-4)?d:null}function Ks(e,t,n=0){return n>3||e===null||typeof e!="object"?!1:Array.isArray(e)?e.some(r=>Ks(r,t,n+1)):Object.getPrototypeOf(e)!==Object.prototype?!1:Object.entries(e).some(([r,o])=>t(r)||Ks(o,t,n+1))}var U1=e=>typeof e?.nodeType=="number";function W1(e,t){for(let n=Object(e);n;n=Object.getPrototypeOf(n)){let r=Object.getOwnPropertyDescriptor(n,t);if(r)return typeof r.set=="function"}return!1}function bd(e){let t={elements:new Set,anySetter:!1,unknown:!0};if(typeof e.getChildren!="function")return t;try{let n={elements:new Set,anySetter:!1,unknown:!1};for(let r of e.getChildren(!0,!0,!1)){let o=r.targets?.()??[];for(let i of o)U1(i)?Ks(r.vars,a=>a==="volume")&&n.elements.add(i):!n.anySetter&&Ks(r.vars,a=>W1(i,a))&&(n.anySetter=!0)}return n}catch{return t}}var V1=(e,t)=>e.unknown||e.anySetter||e.elements.has(t);function Jb(e,t,n,r,o={}){if(o.allowLiveTimelineSeek===!1||!t||!Te(e)||n<=0||!V1(o.movers?.()??bd(t),e))return;let i=c=>{try{typeof t.totalTime=="function"?t.totalTime(c,!0):typeof t.seek=="function"&&t.seek(c,!0)}catch{}},a=typeof t.totalTime=="function"?Number(t.totalTime()):typeof t.seek=="function"?Number(t.seek()):0,l=G1(e,n),s=B1(e,i,n,60,l);if(Number.isFinite(a)&&i(a),s){let c=I1(s,l.start,l.staticVolume);c.length>0&&r.set(e,c)}}var ey="data-fade-in",ty="data-fade-out",aW=ey.slice(5),sW=ty.slice(5),ny=Object.freeze({fadeIn:0,fadeOut:0});function yd(e){return Number.isFinite(e)&&e>0?e:0}function Qb(e){return e==null||e===""?0:yd(Number.parseFloat(e))}function Ys(e){return{fadeIn:Qb(e.getAttribute(ey)),fadeOut:Qb(e.getAttribute(ty))}}function xd(e,t){let n=yd(e.fadeIn),r=yd(e.fadeOut);if(!Number.isFinite(t)||t<=0)return{fadeIn:n,fadeOut:r};let o=n+r;if(o<=t)return{fadeIn:n,fadeOut:r};let i=t/o;return{fadeIn:n*i,fadeOut:r*i}}function Xs(e,t,n){if(!Number.isFinite(e))return 1;let{fadeIn:r,fadeOut:o}=xd(n,t),i=1;return r>0&&(i*=Zb(e/r)),o>0&&Number.isFinite(t)&&(i*=Zb((t-e)/o)),i}function Zb(e){return!Number.isFinite(e)||e<0?0:e>1?1:e}var cn="hf-audio-group",Js="data-audio-group";function Si(e){let t=e?.getAttribute("data-volume"),n=t?parseFloat(t):1;return Number.isFinite(n)?n:1}function Sd(e,t){let n=Array.from(e?.querySelectorAll?.(`${cn}[${pi}]`)??[]).find(o=>o.getAttribute(pi)===t);if(n)return n;let r=e?.getElementById(t)??null;return r&&r.tagName?.toLowerCase()===cn?r:null}function Qs(e,t){let n=t?.getAttribute?.(V0)??t?.getAttribute?.(Js);return n?Sd(e,n)?.hasAttribute("data-hidden")??!1:!1}function Ed(e){let t=e.querySelector("[data-composition-id]");return t&&!t.parentElement?.closest("[data-composition-id]")?t:null}function ry(e){return Ed(e)?.getAttribute(Pn)||void 0}function Zs(e){return typeof e.tagName!="string"||typeof e.getAttribute!="function"||!$1(e)?null:e.getAttribute(Js)||null}function $1(e){return e.tagName.toLowerCase()==="audio"?!0:typeof e.hasAttribute=="function"&&Ls(e)}function oy(e){let t="__hf-audio-group-inert";if(!e?.head||e.getElementById(t))return;let n=e.createElement("style");n.id=t,n.textContent=`${cn}{display:contents!important}${cn}[data-hidden]{display:none!important}`,e.head.appendChild(n)}var q1=[[.3,.25],[.1,.1]],z1=.01,j1=.1,K1=.1,Ei=new WeakMap;function iy(e,t,n,r,o=e.tagName==="AUDIO"){let i=Math.abs(t);if(o&&r&&i>K1)return Ei.delete(e),{rate:n,seek:!0};let a=Math.sign(t),l=Ei.get(e);if(i>.04)Ei.set(e,a);else if(l!==a||i<=z1)return Ei.delete(e),{rate:n,seek:!1};let s=q1.find(([d])=>i>d)?.[1]??.03,c=o?Math.min(s,j1):s;return{rate:n*(1+a*c),seek:!1}}function vd(e){Ei.delete(e)}function Ci(e){return vt(e)}var ay=["seeked","loadeddata","error","emptied","abort"],Md=5e3,el=new WeakMap;function sy(e){let t=e.readyState<e.HAVE_CURRENT_DATA&&e.networkState===e.NETWORK_LOADING&&!window.__HF_EXPORT_RENDER_SEEK_CONFIG;e.tagName!=="VIDEO"||!(e.seeking||t)||Nt(e)||(el.get(e)?.(),Ze(new Promise(n=>{let r=i=>{if(!(i?.type==="loadeddata"&&e.seeking)){clearTimeout(o);for(let a of ay)e.removeEventListener(a,r,!0);el.get(e)===r&&el.delete(e),n()}},o=setTimeout(r,Md);for(let i of ay)e.addEventListener(i,r,!0);el.set(e,r)}),"video-frame"))}function uy(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 cy(e){let t=e?.elements??Array.from(document.querySelectorAll("video, audio")),n=e?.shouldIncludeElement?t.filter(a=>e.shouldIncludeElement?.(a)):t.filter(a=>a.hasAttribute("data-start")),r=[],o=[],i=0;for(let a of n){let l=e?.resolveStartSeconds?e.resolveStartSeconds(a):Number.parseFloat(a.dataset.start??"0");if(!Number.isFinite(l))continue;let s=Ci(a),c=mt(a),d=Et(a),m=a.loop,f=Number.isFinite(a.duration)&&a.duration>0?a.duration:null,p=e?.resolveDurationSeconds?.(a)??Number.parseFloat(a.dataset.duration??"");(!Number.isFinite(p)||p<0)&&f!=null&&(p=Math.max(0,an(d,f-s)));let y=Number.isFinite(p)&&p>=0?l+p:Number.POSITIVE_INFINITY,x=l,v=yr({start:l,end:y},e?.resolveHostSlots?.(a)??[]);(v.start!==l||v.end!==y)&&({start:l,end:y}=v,p=y-l);let E=Number.parseFloat(a.dataset.volume??""),C={el:a,start:l,origin:x,mediaStart:s,duration:Number.isFinite(y)?p:Number.POSITIVE_INFINITY,end:y,volume:Number.isFinite(E)?E:null,playbackRate:c,rate:d,loop:m,sourceDuration:f,fades:Ys(a)};r.push(C),a.tagName==="VIDEO"&&o.push(C),Number.isFinite(y)&&(i=Math.max(i,y))}return{timedMediaEls:n,mediaClips:r,videoClips:o,maxMediaEnd:i}}var _d=new WeakMap,tl=new WeakMap,vi=new WeakMap,Cd=new WeakSet,ro=new WeakSet,Ad=new WeakSet;function Y1(e){if(ro.has(e))return;ro.add(e);let t=()=>ro.delete(e);e.addEventListener("playing",t,{once:!0}),e.addEventListener("pause",t,{once:!0}),e.addEventListener("error",t,{once:!0})}var X1=3;function kd(e){return e.error!=null||e.networkState===X1}var Td=new WeakMap;function wd(e){return Number.isFinite(e)?Math.max(0,Math.min(1,e)):1}function nl(e){_d.delete(e),tl.delete(e),vi.delete(e),Cd.delete(e),Td.delete(e),vd(e),no.delete(e),_i.delete(e)}var Ld=1.5;function wi(e,t){let n=Math.max(0,Math.min(t,e.end)-(e.origin??e.start)),r=e.mediaStart+Dn(e.rate??e.playbackRate,n);if(e.sourceDuration==null)return r;let o=e.sourceDuration-e.mediaStart;return e.loop&&o>0&&r>=e.sourceDuration?e.mediaStart+(r-e.mediaStart)%o:!e.loop&&e.el.tagName==="VIDEO"?Math.min(r,e.sourceDuration):r}function J1(e,t,n,r){let{el:o}=e,i=e.start-t;if(!n||i<=0||i>Ld*r||!o.paused||o.seeking||o.readyState<o.HAVE_METADATA||Nt(o)||"__HF_EXPORT_RENDER_SEEK_CONFIG"in window&&window.__HF_EXPORT_RENDER_SEEK_CONFIG)return;let a=wi(e,e.start);if(!(!Number.isFinite(a)||a<0||Math.abs(o.currentTime-a)<=.001))try{o.currentTime=At(a)}catch(l){$("runtime.media.preseek",l)}}var ly=1/16,Q1=.1,no=new WeakSet,Ai=null,_i=new WeakMap;function Z1(e,t,n,r){let o=_i.get(e);if(!o||t<o.at)return;_i.delete(e);let i=(n-o.offset)/r+o.lead,a=Ai===null?i:(Ai+i)/2;Ai=Math.min(.1,Math.max(0,a))}function dy(e){let t=!!(e.outputMuted||e.userMuted);for(let n of e.clips){let{el:r}=n;if(!r.isConnected)continue;let o=n.rate??n.playbackRate,i=n.origin??n.start,a=r.tagName==="VIDEO"&&!n.loop,l=In(e.timeSeconds,n.start,n.end),s=n.start-e.timeSeconds,c=r.tagName==="AUDIO"?e.cueAheadSeconds??0:e.playing&&Ai!==null?Ai*e.playbackRate+(e.cueAheadSeconds??0)/2:0,d=!l&&s>0&&s*Math.max(1,ai(o,n.start-i))<=Math.max(c,Ad.has(r)?.04:0);d?Ad.add(r):Ad.delete(r);let m=a&&!l&&(e.timeSeconds>=n.end||zr(e.timeSeconds,n.end))&&jr(e.timeSeconds,n.start,n.end,e.getCompositionDuration()),f=wi(n,e.timeSeconds),p=m||a&&n.sourceDuration!=null&&f>=n.sourceDuration&&l,b=tl.get(r),y=r.tagName==="AUDIO"&&(b===void 0||f<b-.04),x=!n.loop&&n.sourceDuration!=null&&f>=n.mediaStart&&f<n.sourceDuration&&(a||y);if((l||m||d)&&f>=0&&(!r.ended||n.loop||p||x)){tl.set(r,f);let C=wd(e.userVolume??1),H=Ve(n.volume??1),V=Td.get(r),M=wd(r.volume),R,U=o0(r,e.timeSeconds-i),T=e.isWebAudioRouted?.(r)===!0,F=U===null&&(n.volumeKeyframes?.length??0)>0,W=T?Yg(H,F):1;if(U!==null)R=T?1:hs(H,U);else if(n.volumeKeyframes&&n.volumeKeyframes.length>0){let _e=e.timeSeconds-i;R=Ve(Xb(n.volumeKeyframes,_e))}else T?R=1:V===void 0?R=H>1?H:M:Math.abs(M-V)>1e-4?R=M:R=H;let B=R,X=n.fades??ny;(X.fadeIn>0||X.fadeOut>0)&&(R*=Xs(e.timeSeconds-i,n.duration+n.start-i,X));let N=r.closest("[data-hidden]")!==null||Qs(r.ownerDocument,r)?0:wd(R*C);Math.abs(r.volume-N)>1e-6&&(r.volume=N),Td.set(r,N),B===R?e.onElementVolume?.(r,N,R,W):e.onElementVolume?.(r,N,R,W,B),(t||e.isWebAudioOwned?.(r))&&!r.muted&&(r.muted=!0),r.preload!=="auto"&&!Ns(r)&&(r.preload="auto");let j=ai(o,e.timeSeconds-i)*e.playbackRate,I=e.playing&&j>=ly,P=2,D=r.currentTime||0,w=Math.abs(D-f),L=f-D,Y=_d.get(r);_d.set(r,L);let te=Y===void 0,he=!te&&Math.abs(L-Y)>.5,Ee=w>3,z=r.tagName==="AUDIO"&&te&&D-f>.04,Z=p&&w>.001||r.ended&&x&&w>.001||z||w>.5&&(te||he||Ee);if(r.tagName==="VIDEO"&&!p){let _e=!n.loop&&(L<-Q1||D>=wi(n,n.end)-.04);!I||!_e&&L>=-.04?no.delete(r):_e&&!r.paused&&(no.add(r),r.pause())}let Q=no.has(r),de=!r.paused&&I;de&&Z1(r,e.timeSeconds,L,j);let se=e.playing&&!I||Y!==void 0&&Math.abs(L-Y)<.004,ue=!1;if(!de&&!Q&&!Z&&!te&&se&&w>.04){let _e=(vi.get(r)??0)+1;vi.set(r,_e),_e>=P&&(ue=!0,vi.set(r,0))}else w<=.04&&vi.set(r,0);let re=!de&&!Q&&e.forceSync&&w>.02,Be=de&&!Z?iy(r,L,j,se):null,Me=Be?.seek===!0,we=Me&&e.seekUnderDip?.(r,f)===!0;try{Be||vd(r);let _e=Math.max(ly,Be?.rate??j);Math.abs(r.playbackRate-_e)>1e-6&&(r.playbackRate=_e)}catch(_e){$("runtime.media.site1",_e)}if(Z||ue||re||Me&&!we){if(!(r.tagName==="VIDEO"&&!!Nt(r))){try{r.currentTime=At(f)}catch(Tt){$("runtime.media.site2",Tt)}if(Math.abs(r.currentTime-f)>.5&&!Cd.has(r)){Cd.add(r),r.load();try{r.currentTime=At(f)}catch(Tt){$("runtime.media.site3",Tt)}}sy(r)}ro.delete(r),no.delete(r),_i.delete(r)}else I||sy(r);p?r.paused||r.pause():I&&!no.has(r)&&e.clockAdvancing!==!1&&r.paused&&!ro.has(r)&&!kd(r)?(Y1(r),a&&_i.set(r,{offset:f-(r.currentTime||0),lead:Math.max(0,n.start-e.timeSeconds)/e.playbackRate,at:Math.max(e.timeSeconds,n.start)+.25*e.playbackRate}),r.play().catch(_e=>{ro.delete(r),(_e&&typeof _e=="object"&&"name"in _e?String(_e.name??""):"")==="NotAllowedError"&&e.onAutoplayBlocked?.()})):!I&&!r.paused&&r.pause();continue}let E=In(e.timeSeconds,n.start,n.end);nl(r),E&&tl.set(r,f),r.paused||r.pause(),J1(n,e.timeSeconds,e.playing,e.playbackRate)}}var Ft=new WeakMap;function Ti(e){return Ft.has(e)?Ft.get(e)??null:e.getAttribute("src")}var my="hf-proxy-box",py="hf-proxy-light",rl="hf-proxy-retry",hy="X-HF-Proxy-Progress",eM=[256,304,362,430,512,608,724,862,1024,1218,1448,1722,2048,2436,2896,3444,4096,4870,5792,6888,8192];function fy(e){return e>0?eM.find(t=>t>=e)??null:null}function Nd(e,t){let n=fy(e),r=fy(t);return n&&r?{width:n,height:r}:null}function gy(e){return`${e.width}x${e.height}`}var Fd=[1,.5,.25,.125];function by(e){return Fd.some(t=>t===e)}var tM=.5,nM=4e7;function ol(e,t){return Nd(e.width*t,e.height*t)??e}function il(e,t){return t.width*t.height<=tM*e.width*e.height||e.bitDepth>8||e.bitrate>=nM}var rM=3;function oM(e){let t=new URL(e,document.baseURI);return t.searchParams.delete(rl),t.href}async function Pd(e,t,n){let r=0,o=e;for(;t();){let i=await fetch(o,{headers:{Range:"bytes=0-0"},cache:"no-store"}).catch(()=>null);o=oM(e),i?.body?.cancel().catch(()=>{});let a=i?.status===202||i?.status===503,l=i?.status===202?i.headers.get(hy):null;if(l!==null&&Number.isFinite(Number(l))&&n?.(Math.min(1,Math.max(0,Number(l)))),!a&&i?.ok)return!0;if(!a&&++r>rM)return!1;let s=Math.min(Number(i?.headers.get("Retry-After"))||2,30);await new Promise(c=>setTimeout(c,s*1e3))}return!1}var iM="hf-proxy",yy="runtime_media_proxy_fallback",xy="runtime_media_proxy_unavailable",Sy=new WeakSet,zt=new WeakMap;function al(e){return e.currentSrc||e.src}var dn=1,Dd=new WeakSet,Id=new WeakSet,_t=window.parent===window?1:null,Ey=()=>{},aM=new Promise(e=>Ey=e),sM=1e3,Un=new Map,Sr=new WeakMap;function lM(){return _t!==null?Promise.resolve(_t):Promise.race([aM.then(()=>_t),new Promise(e=>setTimeout(()=>e(null),sM))])}function Od(e,t){if(getComputedStyle(e).objectFit==="none")return null;let n=e.getBoundingClientRect(),r=document.documentElement,o=t*(window.devicePixelRatio||1);return Nd(Math.max(n.width,r.clientWidth)*o,Math.max(n.height,r.clientHeight)*o)}function vy(e){if(!(!(e>0)||!Number.isFinite(e))){_t=e,Ey();for(let t of Un.keys())ll(t,e)}}function Ay(e){let t=window.__HF_MEDIA_CODEC_MAP__,n=io(e);return t&&n!==null?ao(n,t):null}function sl(e){let t=window.__HF_MEDIA_SOURCE_FACTS__,n=io(e);return t&&n!==null?ao(n,t):null}function ll(e,t){let n=Un.get(e);if(!n)return;if(!e.isConnected||e.getAttribute("src")!==n.href){Un.delete(e);return}let r=Od(e,t),o=dn<1,i=r&&o?ol(r,dn):r;if(!(o&&!i)){if(i&&o&&n.light&&uM(e,i))return wy(e);cM(n.box,i,o)||fM(e,n,o||!i?i:dM(i,n.box))}}function uM(e,t){let n=sl(e);return n!==null&&!il(n,t)}function cM(e,t,n){return n?t?.width===e.width&&t.height===e.height:t!==null&&t.width<=e.width&&t.height<=e.height}function dM(e,t){return{width:Math.max(e.width,t.width),height:Math.max(e.height,t.height)}}function fM(e,t,n){let r=Cy(t.originalSrc,t.variant,n,t.light,Id.delete(e));if(Sr.get(e)===r)return;Sr.set(e,r);let o=()=>Sr.get(e)===r&&e.isConnected&&e.getAttribute("src")===t.href;Gn(e,"making"),Pd(r,o,i=>Gn(e,"making",i)).then(i=>{o()&&Gn(e,i?"ready":"failed"),i&&o()&&_y(e,r,t.originalSrc,t.variant,n,t.light),Sr.get(e)===r&&Sr.delete(e)})}function wy(e){let t=Ft.get(e)??null;for(let n of[Un,Sr,zt,Ft])n.delete(e);Dd.delete(e),nl(e),Is(),t===null?e.removeAttribute("src"):e.setAttribute("src",t),e.load()}function _y(e,t,n,r,o,i=!1){o?Un.set(e,{originalSrc:n,variant:r,href:t,box:o,light:i}):Un.delete(e),nl(e),Is(),e.src=t,e.load()}function oo(e){return window.__HF_EXPORT_RENDER_SEEK_CONFIG?!0:Ne(e)&&!!Nt(e)}function io(e){let t=al(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 mM(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 pM(e,t){let n=e.normalize("NFC").toLowerCase(),r=-1,o=null,i=!1;for(let[a,l]of Object.entries(t)){let s=a.normalize("NFC").toLowerCase();n.endsWith(s)&&(s.length>r?(r=s.length,o=l,i=!1):s.length===r&&(i=!0))}return i?null:o}function ao(e,t){return t[e]??mM(e,t)??pM(e,t)}function Cy(e,t,n,r=!1,o=!1){let i=new URL(e,document.baseURI);return i.searchParams.set(iM,t),n&&i.searchParams.set(my,gy(n)),r&&n&&i.searchParams.set(py,"1"),o&&i.searchParams.set(rl,"1"),i.href}var hM={cross_origin:"video reports zero decodable width but its source is cross-origin; no local proxy can be served for it",proxy_playback_failed:"the authoring proxy itself failed to decode; render output is unaffected",browser_safe_codec:"the file errored but its codec is browser-decodable; a proxy cannot help (the file itself is likely corrupt)",invalid_source_url:"the media source URL is malformed and cannot be proxied"};function Bn(e,t,n){if(Sy.has(e))return;Sy.add(e);let r=hM[t];Re({source:"hf-preview",type:"diagnostic",code:xy,details:{asset:n,codecName:null,reason:t,note:r}}),globalThis.console.info(`[hyperframes] ${xy}: "${n}" (${t}): ${r}`)}async function gM(e,t,n){let{originalSrc:r,originalAttr:o,variant:i,lightFacts:a,level:l,live:s}=t,c=n===null?null:Od(e,n),d=c&&l<1?ol(c,l):c;if(a&&!(d&&il(a,d))){zt.get(e)===o&&zt.delete(e);return}let m=Cy(r,i,d,a!==void 0,Id.delete(e));Gn(e,"making");let f=await Pd(m,s,p=>Gn(e,"making",p));if(!s()){zt.get(e)===o&&zt.delete(e),a&&e.isConnected&&e.getAttribute("src")===o&&Ry(e);return}if(!f){Gn(e,"failed"),Bn(e,"proxy_playback_failed",r);return}return Gn(e,"ready"),Ft.set(e,o),a&&Dd.add(e),_y(e,m,r,i,d,a!==void 0),_t!==null&&ll(e,_t),new Promise(p=>{e.addEventListener("loadeddata",p,{once:!0}),e.addEventListener("error",p,{once:!0})})}function Ri(e,t=null,n="reactive",r){if(Ft.has(e)||zt.has(e)&&zt.get(e)===e.getAttribute("src"))return;let o=al(e),i=t?t.hasAlpha?"vp8":"h264":"auto";try{new URL(o,document.baseURI)}catch(p){$("runtime.mediaProxy.swap",p),Bn(e,"invalid_source_url",o);return}let a=e.getAttribute("src");zt.set(e,a);let l=dn,c={originalSrc:o,originalAttr:a,variant:i,lightFacts:r,level:l,live:()=>e.isConnected&&e.getAttribute("src")===a&&(!r||dn===l)},d=lM().then(p=>gM(e,c,p));if(r)return;Ze(Promise.race([d,new Promise(p=>setTimeout(p,Md))]),"video-frame");let m=t?.codecName??null;Re({source:"hf-preview",type:"diagnostic",code:yy,details:{asset:o,codecName:m,trigger:n,note:"render output is unaffected; only this preview element was swapped to an authoring proxy"}}),globalThis.console.info(`[hyperframes] ${yy}: "${o}" uses a codec (${m??"unknown"}) this browser can't decode; auto-swapped to an authoring proxy for this preview only. Render output is unaffected.`)}function Ty(e){if(oo(e)||!Ne(e)||Ft.has(e))return;let t=Ay(e),n=t?.representativeMime?e.canPlayType(t.representativeMime):"",r=n==="probably"||n==="maybe";t?.browserHostile&&!r?Ri(e,t,"proactive"):dn<1&&Hd(e,t)}function Hd(e,t){if(Ft.has(e)||zt.has(e))return;let n=sl(e);n&&Ri(e,t,"light",n)}function Ry(e){if(!(oo(e)||!Ne(e))){if(dn===1&&Dd.has(e))return wy(e);if(Un.has(e)&&_t!==null)return ll(e,_t);dn<1&&Hd(e,Ay(e))}}function My(e){if(!(!by(e)||e===dn)){dn=e,rb(e),Is();for(let t of document.querySelectorAll("video"))Ry(t)}}function ky(){if(_t===null)return[];let e=[...document.querySelectorAll("video")].flatMap(t=>{let n=sl(t),r=n&&Od(t,_t??1);return n&&r?[{facts:n,shown:r}]:[]});return Fd.filter(t=>t<1&&e.some(({facts:n,shown:r})=>il(n,ol(r,t))))}function Ly(){let e=new Map;for(let t of document.querySelectorAll("video")){let n=io(t),r=window.__HF_MEDIA_CODEC_MAP__,{width:o=0,height:i=0,bitDepth:a=0,codec:l}=sl(t)??{},s=r&&n!==null?ao(n,r)?.codecName:void 0,c=l??s??"unknown",d=`${c}|${o}|${i}|${a}`,m=e.get(d)??{codec:c,width:o,height:i,bitDepth:a,count:0};m.count+=1,e.set(d,m)}return[...e.values()]}function Ny(){for(let e of ob()){Id.add(e),zt.delete(e),Sr.delete(e);let t=window.__HF_MEDIA_CODEC_MAP__,n=io(e),r=t&&n!==null?ao(n,t):null;Un.has(e)&&_t!==null?ll(e,_t):r?.browserHostile?Ri(e,r,"reactive"):Hd(e,r)}}function Fy(e){if(oo(e)||!Ne(e)||e.videoWidth!==0)return;let t=al(e);if(Ft.has(e)){Bn(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=io(e);if(r===null){Bn(e,"cross_origin",t);return}let o=ao(r,n);if(o&&!o.browserHostile){Bn(e,"browser_safe_codec",t);return}Ri(e,o,"reactive")}function Py(e){if(oo(e)||!Ne(e))return;let t=al(e);if(Ft.has(e)){Bn(e,"proxy_playback_failed",t);return}let n=window.__HF_MEDIA_CODEC_MAP__;if(!n)return;let r=io(e);if(r===null){Bn(e,"cross_origin",t);return}let o=ao(r,n);if(o&&!o.browserHostile){Bn(e,"browser_safe_codec",t);return}Ri(e,o,"tertiary")}var qe=class extends Error{constructor(n,r=null){super(r==null?n:`${n} at line ${r}`);Se(this,"lineNumber");this.name="CubeLutParseError",this.lineNumber=r}},bM=[0,0,0],yM=[1,1,1],ul=64;function xM(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 Wn(e,t){let n=Number(e);if(!Number.isFinite(n))throw new qe(`Invalid number "${e}"`,t);return n}function Dy(e,t,n){if(e.length!==3)throw new qe(`${t} expects three numbers`,n);return[Wn(e[0],n),Wn(e[1],n),Wn(e[2],n)]}function Iy(e,t,n){if(!e)throw new qe(`${t} expects a size`,n);let r=Number(e);if(!Number.isInteger(r)||r<2)throw new qe(`${t} must be an integer greater than 1`,n);return r}function SM(e,t){if(t[0]<=e[0]||t[1]<=e[1]||t[2]<=e[2])throw new qe("DOMAIN_MAX values must be greater than DOMAIN_MIN values")}function EM(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 vM(e){return/^[+-]?(?:\d|\.\d)/.test(e)}function Oy(e,t={}){let n=t.maxSize??ul,r=null,o=bM,i=yM,a=null,l=null,s=[],c=e.replace(/^\uFEFF/,"").split(/\r?\n/);for(let m=0;m<c.length;m++){let f=m+1,p=xM(c[m]??"").trim();if(!p)continue;let b=p.split(/\s+/),y=(b[0]??"").toUpperCase(),x=b.slice(1);if(y==="TITLE"){r=EM(p);continue}if(y==="DOMAIN_MIN"){o=Dy(x,y,f);continue}if(y==="DOMAIN_MAX"){i=Dy(x,y,f);continue}if(y==="LUT_3D_INPUT_RANGE"){if(x.length!==2)throw new qe(`${y} expects two numbers`,f);let v=Wn(x[0],f),E=Wn(x[1],f);if(E<=v)throw new qe("LUT_3D_INPUT_RANGE max must exceed min",f);o=[v,v,v],i=[E,E,E];continue}if(y==="LUT_1D_SIZE"){a=Iy(x[0],y,f);continue}if(y==="LUT_3D_SIZE"){if(l=Iy(x[0],y,f),l>n)throw new qe(`LUT_3D_SIZE ${l} exceeds max ${n}`,f);continue}if(!vM(y)){if(y.startsWith("LUT_"))throw new qe(`Unsupported cube keyword ${y}`,f);continue}if(!l)throw a?new qe("1D cube LUTs are not supported yet",f):new qe("LUT data appears before LUT_3D_SIZE",f);if(b.length!==3)throw new qe("LUT data rows must contain three numbers",f);s.push(Wn(b[0],f),Wn(b[1],f),Wn(b[2],f))}if(a&&l)throw new qe("Mixed 1D and 3D cube LUTs are not supported yet");if(!l)throw a?new qe("1D cube LUTs are not supported yet"):new qe("Missing LUT_3D_SIZE");SM(o,i);let d=l*l*l;if(s.length!==d*3)throw new qe(`Expected ${d} LUT rows for size ${l}, found ${s.length/3}`);return{title:r,size:l,domainMin:o,domainMax:i,data:new Float32Array(s)}}function AM(e){return Number.isFinite(e)?Math.min(1,Math.max(0,e)):0}function Mi(e){return Math.round(AM(e)*255)}function Gd(e){let t=e.size,n=t*t,r=t,o=new Uint8Array(n*r*4);for(let i=0;i<t;i++)for(let a=0;a<t;a++)for(let l=0;l<t;l++){let s=((i*t+a)*t+l)*3,c=(a*n+i*t+l)*4;o[c]=Mi(e.data[s]??0),o[c+1]=Mi(e.data[s+1]??0),o[c+2]=Mi(e.data[s+2]??0),o[c+3]=255}return{width:n,height:r,data:o}}var Hy="rec709";var Gy=["video","img","canvas"],De={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 By=["exposure","contrast","highlights","shadows","whites","blacks","temperature","tint","vibrance","saturation"];var Uy=["shadows","midtones","highlights"],Wy=["master","red","green","blue"],Vy=["hueVsHue","hueVsSaturation","hueVsLuma"];var $y=["vignette","vignetteMidpoint","vignetteRoundness","vignetteFeather","grain","grainSize","grainRoughness"],qy=["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 ZW=De.unit,eV=De.signedUnit,tV=De.effects;var jt=1024,ki=16;function zy(e,t,n,r){let o=((2*e+t)*n-e*r)/(e+t);return Math.sign(o)!==Math.sign(n)?0:Math.sign(n)!==Math.sign(r)&&Math.abs(o)>3*Math.abs(n)?3*n:o}function ze(e,t){let n=e[t];if(n===void 0)throw new RangeError("Color curve points must be contiguous");return n}function wM(e){let t=[],n=[],r=ze(e,0);for(let a of e.slice(1)){let l=a[0]-r[0];t.push(l),n.push((a[1]-r[1])/l),r=a}let o=ze(n,0);if(e.length===2)return[o,o];let i=new Array(e.length);i[0]=zy(ze(t,0),ze(t,1),o,ze(n,1)),i[i.length-1]=zy(ze(t,t.length-1),ze(t,t.length-2),ze(n,n.length-1),ze(n,n.length-2));for(let a=1;a<e.length-1;a+=1){let l=ze(n,a-1),s=ze(n,a);if(l===0||s===0||Math.sign(l)!==Math.sign(s)){i[a]=0;continue}let c=ze(t,a-1),d=ze(t,a),m=2*d+c,f=d+2*c;i[a]=(m+f)/(m/l+f/s)}return i}function jy(e,t){if(e.length<2)throw new RangeError("A color curve requires at least two points");if(!Number.isInteger(t)||t<2)throw new RangeError("Curve LUT size must be at least 2");let n=Number.NEGATIVE_INFINITY;for(let[r,o]of e){if(!Number.isFinite(r)||!Number.isFinite(o))throw new TypeError("Color curve points must be finite");if(r<=n)throw new RangeError("Color curve inputs must be strictly increasing");n=r}}function _M(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 CM(e,t,n,r,o){let i=n[0]-t[0],a=Math.min(1,Math.max(0,(e-t[0])/i)),l=a*a,s=l*a;return(2*s-3*l+1)*t[1]+(s-2*l+a)*i*r+(-2*s+3*l)*n[1]+(s-l)*i*o}function Ky(e,t,n,r,o){_M(e,r,o);let i=wM(e),a=new Float32Array(t),l=0;for(let s=0;s<t;s+=1){let c=n(s);for(;l<e.length-2&&c>ze(e,l+1)[0];)l+=1;let d=ze(e,l),m=ze(e,l+1),f=CM(c,d,m,ze(i,l),ze(i,l+1));a[s]=Math.min(o,Math.max(r,f))}return a}function so(e,t=jt){if(jy(e,t),e.length>ki)throw new RangeError(`A color curve supports at most ${ki} 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 Ky(e,t,n=>n/(t-1),0,1)}function Ud(e,t,n,r=jt){if(e.length<3)throw new RangeError("A hue curve requires at least three points");if(e.length>ki)throw new RangeError(`A hue curve supports at most ${ki} points`);let o=[...e].sort((s,c)=>s[0]-c[0]);for(let s=0;s<o.length;s+=1){let c=o[s];if(!c||c[0]<0||c[0]>=360)throw new RangeError("Hue curve inputs must be from 0 up to 360 degrees");if(s>0&&c[0]===o[s-1]?.[0])throw new RangeError("Hue curve inputs must be unique")}let i=o.slice(-2).map(([s,c])=>[s-360,c]),a=o.slice(0,2).map(([s,c])=>[s+360,c]),l=[...i,...o,...a];return jy(l,r),Ky(l,r,s=>s/r*360,t,n)}var fl="data-color-grading",Er="data-hf-color-grading-source-hidden",vr="data-hf-authored-opacity",Zy="__hf_color_grading_",RM=Hy,Kd=Gy,$d={exposure:0,contrast:0,highlights:0,shadows:0,whites:0,blacks:0,temperature:0,tint:0,vibrance:0,saturation:0},qd={vignette:0,vignetteMidpoint:.5,vignetteRoundness:0,vignetteFeather:.65,grain:0,grainSize:.25,grainRoughness:.5},zd={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 ml=By,ex=Uy,tx=Wy,nx=Vy,Yd=$y,Xd=qy,Yy={exposure:.03,contrast:-.12,highlights:-.1,shadows:.16,whites:-.04,blacks:.08,temperature:.13,vibrance:-.08,saturation:-.08},Xy={vignette:.18};function je(e,t,n={},r={},o={},i=1){return{id:e,label:t,intensity:i,adjust:{...$d,...n},details:{...qd,...r},effects:{...zd,...o}}}var Jd=[je("neutral","Neutral"),je("warm-daylight","Warm Daylight",{exposure:.06,contrast:.07,highlights:-.06,shadows:.08,temperature:.18,saturation:.08}),je("clean-studio","Clean Studio",{contrast:.08,highlights:-.08,shadows:.06,temperature:-.08,tint:.03,saturation:.04}),je("skin-soft","Skin Soft",{exposure:.04,contrast:-.03,highlights:-.12,shadows:.12,temperature:.08,tint:.02,saturation:.04}),je("food-pop","Food Pop",{exposure:.06,contrast:.1,shadows:.06,temperature:.14,vibrance:.1,saturation:.18}),je("night-lift","Night Lift",{exposure:.08,contrast:.08,highlights:-.18,shadows:.2,blacks:-.08,saturation:.04},{vignette:.12}),je("muted-editorial","Muted Editorial",{exposure:-.02,contrast:.08,highlights:-.08,shadows:.06,blacks:-.05,temperature:-.03,saturation:-.12},{vignette:.1}),je("vintage-wash","Vintage Wash",Yy,Xy),je("mono-clean","Mono Clean",{contrast:.12,highlights:-.04,shadows:.04,blacks:-.08,saturation:-1}),je("mono-fade","Mono Fade",{contrast:-.04,highlights:-.06,shadows:.1,blacks:.12,saturation:-1},{vignette:.08}),je("soft-boost","Soft Boost",{exposure:.06,contrast:-.04,highlights:-.14,shadows:.16,vibrance:.08,saturation:.1}),je("bright-pop","Bright Pop",{exposure:.12,contrast:.12,whites:.08,blacks:-.04,vibrance:.08,saturation:.14}),je("deep-contrast","Deep Contrast",{exposure:-.03,contrast:.2,highlights:-.08,shadows:-.08,blacks:-.12,saturation:.06}),je("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),je("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}),je("home-movie-8mm","8mm Home Movie",Yy,{...Xy,vignette:.28,vignetteMidpoint:.54,vignetteFeather:.72,grain:.34,grainSize:.18,grainRoughness:.72},{filmArtifacts:.62},.72),je("editorial-halftone","Editorial Halftone",{contrast:.04,saturation:.04},{},{halftone:.94,halftoneSize:.36}),je("two-ink-print","Two-Ink Print",{contrast:.08,highlights:-.06,shadows:.04},{},{twoInkPrint:1,twoInkPrintSize:.42})],MM=new Map(Jd.map(e=>[e.id,e])),kM=/^\$(?:\{([A-Za-z0-9_.:-]+)\}|([A-Za-z0-9_.:-]+))$/,LM={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}},lo={hue:0,amount:0,level:0},Jy={amount:De.unit,level:De.signedUnit},Vn=[[0,0],[1,1]],uo=[],NM={hueVsHue:De.secondaryHueShift,hueVsSaturation:De.signedUnit,hueVsLuma:De.signedUnit},Wd={center:0,range:180,softness:0},Vd={min:0,max:1,softness:.05},FM={vignette:De.unit,vignetteMidpoint:De.unit,vignetteRoundness:De.signedUnit,vignetteFeather:De.unit,grain:De.unit,grainSize:De.unit,grainRoughness:De.unit},jd=De.unit,PM=De.effects,rx=["blur","pixelate","chromaBleed","tapeDamage","filmArtifacts","halftone","twoInkPrint","ascii","dither","bloom","monoScreen","scanlines","chromaticAberration","crtCurvature","digitalGlitch","engraving","crosshatch","kuwahara"];var DM=Jd.filter(e=>rx.some(t=>e.effects[t]>1e-4)),cV=Jd.filter(e=>!DM.includes(e)),dV={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}},ox=[{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 IM=/^#[0-9a-f]{6}$/i;function OM(e){return!Array.isArray(e)||e.length<2||e.length>6||!e.every(t=>typeof t=="string"&&IM.test(t))?null:e.map(t=>t.toLowerCase())}function et(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function dl(e,t,n){return Number.isFinite(e)?Math.min(n,Math.max(t,e)):0}function ix(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?Math.min(1,Math.max(0,n)):t}function ut(e,t){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?dl(n,t.min,t.max):0}function Qd(e,t=0){let n=typeof e=="number"?e:Number(e);return Number.isFinite(n)?(n%360+360)%360:t}function HM(e){let t=et(e)?e:{};return ex.reduce((n,r)=>{let o=et(t[r])?t[r]:{};return n[r]={hue:Qd(o.hue,lo.hue),amount:ut(o.amount??lo.amount,Jy.amount),level:ut(o.level??lo.level,Jy.level)},n},{shadows:{...lo},midtones:{...lo},highlights:{...lo}})}function GM(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)?[dl(t,0,1),dl(n,0,1)]:null}function ax(e){return e.some((t,n)=>n>0&&t[0]===e[n-1]?.[0])}function BM(e){(e[0]?.[0]??0)>0&&e.unshift([0,0]),(e.at(-1)?.[0]??1)<1&&e.push([1,1])}function UM(e){if(!Array.isArray(e)||e.length<2)return Vn;let t=[];for(let n of e){let r=GM(n);if(!r)return Vn;t.push(r)}return t.sort((n,r)=>n[0]-r[0]),ax(t)||(BM(t),t.length>16)?Vn:t}function WM(e){let t=et(e)?e:{};return tx.reduce((n,r)=>(n[r]=UM(t[r]),n),{master:Vn,red:Vn,green:Vn,blue:Vn})}function VM(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)?[Qd(n),dl(r,t.min,t.max)]:null}function $M(e,t){if(!Array.isArray(e)||e.length<3||e.length>16)return uo;let n=[];for(let r of e){let o=VM(r,t);if(!o)return uo;n.push(o)}return n.sort((r,o)=>r[0]-o[0]),ax(n)?uo:n}function qM(e){let t=et(e)?e:{};return nx.reduce((n,r)=>(n[r]=$M(t[r],NM[r]),n),{hueVsHue:uo,hueVsSaturation:uo,hueVsLuma:uo})}function Qy(e){let t=et(e)?e:{},n=ut(t.min??Vd.min,jd),r=ut(t.max??Vd.max,jd);return{min:Math.min(n,r),max:Math.max(n,r),softness:ut(t.softness??Vd.softness,De.secondarySoftRangeSoftness)}}function zM(e){let t=et(e)?e:{},n=ut(t.range??Wd.range,De.secondaryHueRange);return{center:Qd(t.center,Wd.center),range:n,softness:ut(t.softness??Wd.softness,{min:De.secondaryHueSoftness.min,max:De.secondaryHueCombinedMax-n})}}function jM(e){return{hueShift:ut(e.hueShift??0,De.secondaryHueShift),saturation:ut(e.saturation??0,De.signedUnit),luma:ut(e.luma??0,De.signedUnit),temperature:ut(e.temperature??0,De.signedUnit),tint:ut(e.tint??0,De.signedUnit)}}function KM(e){return!et(e)||!et(e.key)||!et(e.correction)?null:{enabled:e.enabled!==!1,key:{hue:zM(e.key.hue),saturation:Qy(e.key.saturation),luma:Qy(e.key.luma)},correction:jM(e.correction)}}function YM(e){if(!Array.isArray(e))return[];let t=[];for(let n of e.slice(0,4)){let r=KM(n);r&&t.push(r)}return t}function XM(e){if(e==null)return null;let t=String(e).trim();return t||null}function JM(e){if(e==null)return null;if(typeof e=="string"){let n=e.trim();return n?{src:n,intensity:1}:null}if(!et(e))return null;let t=e.src;return typeof t!="string"||t.trim()===""?null:{src:t.trim(),intensity:ix(e.intensity,1)}}function QM(e){if(typeof e=="string"){let t=e.trim();if(!t)return null;if(t.startsWith("{"))try{let n=JSON.parse(t);return et(n)?n:null}catch{return null}return{preset:t}}return et(e)?e:null}function ZM(e,t){let n=e.trim().match(kM);if(!n)return e;let r=n[1]??n[2]??"";return r&&Object.hasOwn(t,r)?t[r]:e}function cl(e,t){if(typeof e=="string"){let r=ZM(e,t);if(r!==e)return r;let o=e.trim();if(!o.startsWith("{"))return e;try{return cl(JSON.parse(o),t)}catch{return e}}if(Array.isArray(e))return e.map(r=>cl(r,t));if(!et(e))return e;let n={};for(let[r,o]of Object.entries(e))n[r]=cl(o,t);return n}function ek(e){return e?MM.get(e)??null:null}function pl(e){let t=QM(e);if(!t||t.enabled===!1)return null;let n=XM(t.preset),r=ek(n),o=r?.adjust??$d,i=r?.details??qd,a=r?.effects??zd,l=et(t.adjust)?t.adjust:{},s=et(t.details)?t.details:{},c=et(t.effects)?t.effects:{},d=ml.reduce((p,b)=>(p[b]=ut(l[b]??o[b],LM[b]),p),{...$d}),m=Yd.reduce((p,b)=>(p[b]=ut(s[b]??i[b],FM[b]),p),{...qd}),f=Xd.reduce((p,b)=>(p[b]=ut(c[b]??a[b],PM[b]??jd),p),{...zd});return{enabled:!0,preset:n,intensity:ix(t.intensity,r?.intensity??1),adjust:d,wheels:HM(t.wheels),curves:WM(t.curves),hueCurves:qM(t.hueCurves),secondaries:YM(t.secondaries),details:m,effects:f,palette:OM(t.palette),lut:JM(t.lut),colorSpace:typeof t.colorSpace=="string"&&t.colorSpace.trim()?t.colorSpace.trim():RM}}function sx(e,t){return pl(cl(e,t))}function tk(e){return ex.some(t=>Math.abs(e[t].amount)>1e-4||Math.abs(e[t].level)>1e-4)}function Zd(e){return tx.some(t=>e[t].some(([n,r])=>Math.abs(n-r)>1e-4))}function ef(e){return nx.some(t=>e[t].some(([,n])=>Math.abs(n)>1e-4))}function tf(e){return e.some(t=>t.enabled&&Object.values(t.correction).some(n=>Math.abs(n)>1e-4))}function lx(e){return e?.enabled?Math.abs(e.details.vignette)>1e-4||Math.abs(e.details.grain)>1e-4||rx.some(n=>Math.abs(e.effects[n])>1e-4)?!0:e.intensity===0?!1:e.lut&&e.lut.intensity!==0?!0:ml.some(n=>Math.abs(e.adjust[n])>1e-4)||(e.wheels?tk(e.wheels):!1)||(e.curves?Zd(e.curves):!1)||(e.hueCurves?ef(e.hueCurves):!1)||(e.secondaries?tf(e.secondaries):!1):!1}var hl=/^(|transparent|rgba\(.*,\s*0\)|.*\/\s*0%?\s*\))$/,nk=new Set(["IMG","VIDEO","IFRAME","EMBED","OBJECT","CANVAS"]),ux="http://www.w3.org/2000/svg",rk=new Set(["svg","g","foreignObject"]),ok=["Top","Right","Bottom","Left"],ik={left:-1/0,right:1/0,top:-1/0,bottom:1/0},cx=e=>!!e.backgroundImage&&e.backgroundImage!=="none"||!hl.test(e.backgroundColor),ak=e=>{let t=e.getPropertyValue("-webkit-text-fill-color")||e.color,n=Number.parseFloat(e.getPropertyValue("-webkit-text-stroke-width"))||0,r=e.getPropertyValue("-webkit-text-stroke-color")||e.color;return!hl.test(t)||n>0&&!hl.test(r)},dx=e=>ok.map(t=>e[`border${t}Style`]!=="none"&&!hl.test(e[`border${t}Color`])&&Number.parseFloat(e[`border${t}Width`])||0),gl=e=>e.bottom-e.top,nf=(e,t,n)=>t>=e.left&&t<=e.right&&n>=e.top&&n<=e.bottom,fx=(e,t)=>({left:Math.min(e.left,t.left),right:Math.max(e.right,t.right),top:Math.min(e.top,t.top),bottom:Math.max(e.bottom,t.bottom)}),sk=(e,t)=>t.display==="none"||t.position==="absolute"||t.position==="fixed"||Number.parseFloat(t.opacity)<=.01&&!e.hasAttribute(Er);function lk(e,t,n){if(e.width<=0&&e.height<=0)return!1;let r=3*(Number.parseFloat(t.fontSize)||16),o=Math.max(r,Math.min(2*e.height,20*r/3));return n<e.top-o||n>e.bottom+o}function uk(e,t,n,r){let[o,i,a,l]=dx(t);if(!(o||i||a||l))return!1;let s=e.getBoundingClientRect(),{offsetWidth:c,offsetHeight:d}=e,m=c>0?s.width/c:1,f=d>0?s.height/d:1,p={left:s.left+l*m,right:s.right-i*m,top:s.top+o*f,bottom:s.bottom-a*f};return!nf(p,n,r)}function ck(e){let t=[];for(let n of[...e].sort((r,o)=>r.left-o.left)){let r=t.findIndex(o=>n.top<o.bottom&&n.bottom>o.top&&n.left-o.right<=2*Math.max(gl(o),gl(n)));r<0?t.push(n):t[r]=fx(t[r],n)}return t}function dk(e){let t=[...e].sort((n,r)=>n.top-r.top);return t.flatMap((n,r)=>t.slice(r+1).flatMap(o=>{let i=o.left<n.right&&o.right>n.left,a=o.top-n.bottom<=2*Math.min(gl(n),gl(o));return i&&a&&o.top>n.bottom?[fx(n,o)]:[]}))}function mx(e,t,n){let r=e.defaultView,o=typeof e.createRange().getClientRects=="function",i=e.createRange(),a=new Map,l=new Map,s=new Map,c=x=>{let v=l.get(x);if(v===void 0){let E=r.getComputedStyle(x);v=sk(x,E)||o&&lk(x.getBoundingClientRect(),E,n),l.set(x,v)}return v},d=x=>{let v=s.get(x);if(v===void 0){let E=x.parentElement,C=E&&x.nodeValue?.trim()?r.getComputedStyle(E):null;v=!!C&&C.visibility!=="hidden"&&ak(C),s.set(x,v)}return v},m=x=>{if(!o)return[ik];let v=[];i.selectNodeContents(x);for(let E of i.getClientRects()){let C=E.bottom-E.top;E.width>0&&C>0&&n>=E.top-2*C&&n<=E.bottom+2*C&&v.push(E)}return v},f=x=>{let v=a.get(x);if(v)return v;v=[];for(let E of x.childNodes)E.nodeType===3?d(E)&&v.push(...m(E)):E.nodeType===1&&E.hasChildNodes()&&!c(E)&&v.push(...f(E));return a.set(x,v),v};function p(x){let v=ck(f(x));return v.some(E=>nf(E,t,n))||dk(v).some(E=>nf(E,t,n))}function b(x,v){let E=r.getComputedStyle(x,v);return!E.content||E.content==="none"||E.content==="normal"||E.display==="none"?!1:E.content!=='""'||cx(E)||dx(E).some(C=>C>0)}let y=(x,v)=>/inset/.test(v.boxShadow)||uk(x,v,t,n)||b(x,"::before")||b(x,"::after");return x=>{if(nk.has(x.tagName)||!(x.namespaceURI!==ux||rk.has(x.localName))||!r)return!0;let E=r.getComputedStyle(x);return cx(E)||y(x,E)||x.namespaceURI!==ux&&p(x)}}var fk=["[data-hyperframes-ignore]","[data-hyperframes-picker-ignore]","[data-hf-ignore]","[data-no-inspect]","[data-no-pick]","[data-hyper-shader-loading]"].join(","),mk=["[data-hyperframes-picker-block]","[data-hyper-shader-loading]"].join(","),px="[data-hf-inner-root],[data-composition-id]:not([data-composition-id] *)",hx=`${px}{pointer-events:auto!important}`,pk=`@layer hf-picker{${hx}}`;function gx(e){let t=!1,n=null,r=null,o=null,i=null,a,l=new Set;function s(w,L){try{window.dispatchEvent(new CustomEvent(w,{detail:L}))}catch(Y){$("runtime.picker.site1",Y)}}function c(w){o=w,s("hyperframe:picker:hovered",{elementInfo:o,isPickMode:t,timestamp:Date.now()})}function d(w){i=w,s("hyperframe:picker:selected",{elementInfo:i,isPickMode:t,timestamp:Date.now()})}function m(w){if(l=new Set(Array.from(document.querySelectorAll(px)).filter(te=>getComputedStyle(te).pointerEvents==="none")),l.size===0)return w();let L=f(),Y=L?p(L):b();try{return w()}finally{Y(),l=new Set}}function f(){if(a!==void 0)return a;if(a=null,!Array.isArray(document.adoptedStyleSheets)||typeof CSSStyleSheet>"u")return null;try{let w=new CSSStyleSheet;w.replaceSync(pk),a=w}catch(w){$("runtime.picker.site2",w)}return a}function p(w){return document.adoptedStyleSheets=[...document.adoptedStyleSheets,w],()=>{document.adoptedStyleSheets=document.adoptedStyleSheets.filter(L=>L!==w)}}function b(){let w=document.createElement("style");return w.textContent=hx,(document.head??document.documentElement).appendChild(w),()=>w.remove()}function y(w,L){let Y=L.getComputedStyle(w),te=Number.parseFloat(Y.opacity||"1");if(Number.isFinite(te)&&te<.2&&!(w.textContent??"").trim()){let Ee=Y.backgroundImage;if(Ee&&Ee!=="none")return!0}return H(w,L)}function x(w){if(w.namespaceURI!=="http://www.w3.org/2000/svg")return!1;let L=w.tagName.toLowerCase();return L==="filter"||L==="defs"||L.startsWith("fe")}function v(w){if(w.namespaceURI!=="http://www.w3.org/2000/svg"||w.tagName.toLowerCase()!=="rect")return!1;let L=(w.getAttribute("filter")??"").trim();return L&&L!=="none"?!0:(w.ownerDocument.defaultView?.getComputedStyle(w).filter??"none").startsWith("url(")}function E(w){if((w.textContent??"").trim())return!1;if(x(w)||v(w))return!0;let L=[...w.children];return L.length>0&&L.every(Y=>E(Y))}function C(w,L){let Y=Number.parseFloat(L.getComputedStyle(w).opacity||"1");return Number.isFinite(Y)&&Y<.2}function H(w,L){if(!E(w))return!1;for(let Y=w;Y&&Y!==document.body&&Y!==document.documentElement;Y=Y.parentElement)if(C(Y,L)&&E(Y))return!0;return!1}function V(w){let L=w.ownerDocument.defaultView;if(!L)return!1;let Y=w;if(L.getComputedStyle(w).visibility==="hidden"||y(w,L))return!0;for(;Y&&Y!==document.body&&Y!==document.documentElement;){let te=L.getComputedStyle(Y);if(te.display==="none"||te.pointerEvents==="none")return!0;let he=Number.parseFloat(te.opacity);if(Number.isFinite(he)&&he<=.01&&!Y.hasAttribute(Er))return!0;Y=Y.parentElement}return!1}function M(w){if(!w||w===document.body||w===document.documentElement)return!1;let L=w.tagName.toLowerCase();return!(L==="script"||L==="style"||L==="link"||L==="meta"||l.has(w)||w.closest(fk)||V(w))}function R(w){return!!w?.closest(mk)}function U(w){let L=w.parentElement?.getAttribute("data-composition-id");return!w.hasAttribute("data-hf-inner-root")||!L?null:`[data-composition-id="${CSS.escape(L)}"] > [data-hf-inner-root]`}function T(w){let L=U(w);if(L)return L;let Y=w;if(Y.id)return`#${CSS.escape(Y.id)}`;let te=w.getAttribute("data-composition-id");if(te)return`[data-composition-id="${CSS.escape(te)}"]`;let he=w.getAttribute("data-composition-src");if(he)return`[data-composition-src="${CSS.escape(he)}"]`;let Ee=w.getAttribute("data-track-index");if(Ee)return`[data-track-index="${CSS.escape(Ee)}"]`;let z=w.tagName.toLowerCase(),Z=w.parentElement;if(!Z)return z;let Q=Z.querySelectorAll(`:scope > ${z}`);if(Q.length===1)return z;for(let de=0;de<Q.length;de+=1)if(Q[de]===w)return`${z}:nth-of-type(${de+1})`;return z}function F(w){let L=w.tagName.toLowerCase(),Y=(w.textContent??"").trim().replace(/\s+/g," "),te=(Ee,z)=>{let Z=Array.from(Ee);return Z.length>z?`${Z.slice(0,z-1).join("")}\u2026`:Ee},he=/^h[1-6]$/.test(L);return he||L==="p"||L==="span"||L==="div"?Y.length>0?te(Y,56):he?"Heading":"Text":L==="img"?"Image":L==="video"?"Video":L==="audio"?"Audio":L==="svg"?"Shape":w.getAttribute("data-composition-src")?"Composition":L==="section"?"Section":`${L.charAt(0).toUpperCase()}${L.slice(1)}`}function W(w,L,Y){let te=typeof Y=="number"&&Y>0?Y:8,he=[];if(document.elementsFromPoint)he=document.elementsFromPoint(w,L);else if(document.elementFromPoint){let de=document.elementFromPoint(w,L);he=de?[de]:[]}if(R(he[0]??null))return[];let Ee={},z=[],Z=[],Q=mx(document,w,L);for(let[de,ge]of he.entries()){if(!M(ge))continue;let se=`${ge.tagName}::${ge.id||""}::${de}`;if(!Ee[se]&&(Ee[se]=!0,z.push(ge),(Z.some(ue=>ge.contains(ue))||Q(ge))&&(Z.push(ge),Z.length>=te)))break}return Z.length>0?Z:z.slice(0,te)}function B(w){let L=w.getBoundingClientRect(),Y={};for(let he of Array.from(w.attributes))he.name.startsWith("data-")&&(Y[he.name]=he.value);return{id:w.id||null,tagName:w.tagName.toLowerCase(),selector:T(w),label:F(w),boundingBox:{x:L.left,y:L.top,width:L.width,height:L.height},textContent:w.textContent?w.textContent.trim().slice(0,200):null,src:w.getAttribute("src")||w.getAttribute("data-composition-src")||null,dataAttributes:Y}}function X(w,L,Y){return m(()=>W(w,L,Y)).map(B)}function ae(w){if(!t)return;let L=m(()=>{let te=W(w.clientX,w.clientY,1)[0]??(He(w.target)?w.target:null);return M(te)?te:null});if(!L||n===L)return;n&&n.classList.remove("__hf-pick-highlight"),n=L,L.classList.add("__hf-pick-highlight");let Y=B(L);c(Y),e.postMessage({source:"hf-preview",type:"element-hovered",elementInfo:Y})}function N(w){if(!t)return;w.preventDefault(),w.stopPropagation(),w.stopImmediatePropagation();let L=X(w.clientX,w.clientY,8);L.length!==0&&(c(L[0]??null),e.postMessage({source:"hf-preview",type:"element-pick-candidates",candidates:L,selectedIndex:0,point:{x:w.clientX,y:w.clientY}}))}function j(w){w.key==="Escape"&&(P(),e.postMessage({source:"hf-preview",type:"pick-mode-cancelled"}))}function I(){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(`
|
|
44
|
+
`),document.head.appendChild(r),document.body.classList.add("__hf-pick-active"),document.addEventListener("mousemove",ae,!0),document.addEventListener("click",N,!0),document.addEventListener("keydown",j,!0),s("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",ae,!0),document.removeEventListener("click",N,!0),document.removeEventListener("keydown",j,!0),s("hyperframe:picker:mode",{isPickMode:!1,timestamp:Date.now()}))}function D(){window.__HF_PICKER_API={enable:I,disable:P,isActive:()=>t,getHovered:()=>o,getSelected:()=>i,getCandidatesAtPoint:(w,L,Y)=>Number.isFinite(w)&&Number.isFinite(L)?X(w,L,Y):[],pickAtPoint:(w,L,Y)=>{if(!Number.isFinite(w)||!Number.isFinite(L))return null;let te=X(w,L,8);if(!te.length)return null;let he=Math.max(0,Math.min(te.length-1,Number(Y??0))),Ee=te[he]??null;return Ee?(d(Ee),e.postMessage({source:"hf-preview",type:"element-picked",elementInfo:Ee}),P(),Ee):null},describe:w=>He(w)?B(w):null,pickManyAtPoint:(w,L,Y)=>{if(!Number.isFinite(w)||!Number.isFinite(L))return[];let te=X(w,L,8);if(!te.length)return[];let he=[],Ee=Array.isArray(Y)?Y:[0];for(let z of Ee){let Z=Math.max(0,Math.min(te.length-1,Math.floor(Number(z)))),Q=te[Z];if(!Q)continue;he.some(ge=>ge.selector===Q.selector&&ge.tagName===Q.tagName)||he.push(Q)}return he.length?(d(he[0]??null),e.postMessage({source:"hf-preview",type:"element-picked-many",elementInfos:he}),P(),he):[]}},s("hyperframe:picker:api-ready",{hasApi:!0,timestamp:Date.now()})}return{enablePickMode:I,disablePickMode:P,installPickerApi:D}}function Li(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&&$("runtime.player.nonConformantNum",{prop:t,actual:typeof r}),n)}function Pt(e,t){let n=e?.[t];if(typeof n=="function"){n.call(e);return}n!==void 0&&$("runtime.player.nonConformantVoid",{method:t,actual:typeof n})}function Ni(e,t,n){if(e){for(let r of Object.values(e))if(!(!r||r===t))try{n(r)}catch(o){$("runtime.player.site1",o)}}}function bl(e,t,n){return n?.exact===!0?Number.isFinite(e)&&e>0?e:0:x0(e,t,n?.subFrameDivisions)}function bx(e,t,n,r){let o=bl(t,n,r),i=r?.suppressEvents===!0;return Pt(e,"pause"),typeof e.totalTime=="function"?e.totalTime(o,i):typeof e.seek=="function"&&e.seek(o,i),o}function hk(e,t,n,r,o){let i=[];Ni(e,t,a=>{Pt(a,"play"),i.push(a)});try{return bx(t,n,r,o)}finally{for(let a of i)try{Pt(a,"pause")}catch(l){$("runtime.player.site2",l)}}}function gk(e,t){Ni(e,t,n=>{Pt(n,"play")})}function yx(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?.()??Li(n,"duration",0))||0);r>0&&Math.max(0,Li(n,"time",0))>=r&&(Pt(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()),Pt(n,"play"),Ni(e.getTimelineRegistry?.(),n,o=>{typeof o.timeScale=="function"&&o.timeScale(e.getPlaybackRate()),Pt(o,"play")}),e.onDeterministicPlay(),e.setIsPlaying(!0),e.onShowNativeVideos(),e.onStatePost(!0)},pause:()=>{let n=e.getTimeline();if(!n)return;Pt(n,"pause"),Ni(e.getTimelineRegistry?.(),n,o=>{Pt(o,"pause")});let r=Math.max(0,Li(n,"time",0));e.onDeterministicSeek(r),e.onDeterministicPause(),e.setIsPlaying(!1),e.onSyncMedia(r,!1),e.onRenderFrameSeek(r),e.onStatePost(!0)},seek:(n,r)=>{let o=e.getTimeline();if(!o)return;let i=Math.max(0,Number(n)||0),a=e.getIsPlaying(),l=hk(e.getTimelineRegistry?.(),o,i,e.getCanonicalFps());e.onDeterministicSeek(l),r?.keepPlaying&&a?(typeof o.timeScale=="function"&&o.timeScale(e.getPlaybackRate()),Pt(o,"play"),Ni(e.getTimelineRegistry?.(),o,s=>{typeof s.timeScale=="function"&&s.timeScale(e.getPlaybackRate()),Pt(s,"play")}),e.onDeterministicPlay(),e.onShowNativeVideos(),e.onSyncMedia(l,!0)):(e.setIsPlaying(!1),e.onSyncMedia(l,!1)),e.onRenderFrameSeek(l),e.onStatePost(!0)},renderSeek:(n,r)=>{let o=e.getTimeline(),i=e.getCanonicalFps(),a=o?(gk(e.getTimelineRegistry?.(),o),bx(o,n,i,r)):bl(Math.max(0,Number(n)||0),i,r);e.onDeterministicSeek(a,r),e.setIsPlaying(!1),e.onSyncMedia(a,!1),e.onRenderFrameSeek(a),e.onStatePost(!0)},getTime:()=>Li(e.getTimeline(),"time",0),getDuration:()=>Li(e.getTimeline(),"duration",0),isPlaying:()=>e.getIsPlaying(),setPlaybackRate:n=>e.setPlaybackRate(n),getPlaybackRate:()=>e.getPlaybackRate()}}var of="data-composition-id",bk="data-composition-src",yk=`[${of}]`,wV=`[${bk}]`,af="style",xx="script",sf='link[rel="stylesheet"], link[rel="preconnect"]',xk=new Set(["","application/ecmascript","application/javascript","application/x-ecmascript","application/x-javascript","text/ecmascript","text/javascript","text/javascript1.0","text/javascript1.1","text/javascript1.2","text/javascript1.3","text/javascript1.4","text/javascript1.5","text/jscript","text/livescript","text/x-ecmascript","text/x-javascript"]),Sk=e=>(e.getAttribute("type")||"").trim().toLowerCase();function Sx(e){let t=Sk(e);return t==="module"||t==="importmap"?!0:xk.has(t)&&e.getAttribute("nomodule")===null}function rf(e){return $n(e?.querySelectorAll(xx)).filter(t=>!Sx(t))}function lf(e){return $n(e?.querySelectorAll(xx)).filter(Sx)}function Ex(e){return[...$n(e.querySelectorAll(`${af}, ${sf}`)),...lf(e)]}function $n(e){return e?Array.from(e):[]}function vx(e){let{contentNode:t,head:n,documentElement:r,hasTemplate:o,compositionId:i}=e,a=$n(t.querySelectorAll(yk)),l=i?a.find(m=>m.getAttribute(of)===i)??null:a[0]??null,s=(l??a[0])?.getAttribute(of)?.trim()||"",c=o?null:n??null,d=l?rf(l):[];return{innerRoot:l,authoredCompositionId:i||s||null,scriptCompositionId:s||i||null,authoredRootId:l?.getAttribute("id")?.trim()||null,styleSources:[...$n(c?.querySelectorAll(af)),...$n(t.querySelectorAll(af))],scriptSources:[...lf(c),...lf(t)],linkSources:[...$n(n?.querySelectorAll(sf)),...$n(t.querySelectorAll(sf))],inertScriptsOutsideRoot:[...rf(c),...l?rf(t).filter(m=>!d.includes(m)):[]],variableDefaultCarriers:[r,l].filter(m=>m!=null)}}function Ax(e,t){let n=t[0]?.ownerDocument.querySelector("[data-composition-id]"),r=n&&!t.includes(n)?n.getAttribute("data-composition-id"):null,o=r?e.get(r):void 0;r&&o&&e.set(r,o+1)}var Ek='"use strict";(()=>{function I(e){return e?/[\\w-]/.test(e)||e.charCodeAt(0)>=128:!1}function _(e){return e===" "||e===" "||e===`\n`||e==="\\r"||e==="\\f"}var j=/^[0-9a-fA-F]{1,6}/;function G(e){let n=e>=55296&&e<=57343;return e===0||e>1114111||n?65533:e}function $(e,n){return e[n]==="\\r"&&e[n+1]===`\n`?n+2:_(e[n])?n+1:n}function R(e,n){let t=e[n+1];if(t===void 0||/[\\n\\r\\f]/.test(t))return null;let i=j.exec(e.slice(n+1,n+7));if(!i)return{value:t,end:n+2};let o=G(Number.parseInt(i[0],16));return{value:String.fromCodePoint(o),end:$(e,n+1+i[0].length)}}function H(e,n){let t=o=>I(o)&&!/[0-9-]/.test(o),i=o=>e[o]==="\\\\"&&R(e,o)!==null;return e[n]==="-"?e[n+1]==="-"||t(e[n+1])||i(n+1):t(e[n])||i(n)}function y(e,n){let t=n;for(;e.startsWith("/*",t);){let i=e.indexOf("*/",t+2);t=i<0?e.length:i+2}return t}function A(e,n){let t=y(e,n);for(;_(e[t]);)t=y(e,t+1);return t}function h(e,n){if(!H(e,n))return null;let t=n,i="";for(;t<e.length;){let o=e[t];if(o==="\\\\"){let a=R(e,t);if(!a)break;i+=a.value,t=a.end;continue}if(!I(o))break;i+=o,t+=1}return t===n?null:{value:i,end:t}}var C=45;function T(e){return e>=48&&e<=57}function z(e){return e>=128||e===C||e===95||T(e)||e>=65&&e<=90||e>=97&&e<=122}function J(e,n){let t=e.charCodeAt(n);return t>=1&&t<=31||t===127?!0:T(t)?n===0||n===1&&e.charCodeAt(0)===C:!1}function k(e){let n="";for(let t=0;t<e.length;t+=1){let i=e.charCodeAt(t),o=e[t];i===0?n+="\\uFFFD":J(e,t)?n+=`\\\\${i.toString(16)} `:t===0&&e.length===1&&i===C?n+=`\\\\${o}`:z(i)?n+=o:n+=`\\\\${o}`}return n}var W=/\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|\\\\(?:[0-9a-fA-F]{1,6}(?:\\r\\n|[ \\t\\r\\n\\f])?|[\\s\\S])|"(?:[^"\\\\]|\\\\[\\s\\S])*"|\'(?:[^\'\\\\]|\\\\[\\s\\S])*\'|\\[(?:\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/|\\\\[\\s\\S]|"(?:[^"\\\\]|\\\\[\\s\\S])*"|\'(?:[^\'\\\\]|\\\\[\\s\\S])*\'|[^\\]"\'\\\\/]|\\/(?!\\*))*\\]/g;function Q(e){let n=new Array(e.length).fill(!0);for(let t of e.matchAll(W)){let i=t.index;n.fill(!1,i,i+t[0].length)}return n}function q(e,n,t){if(n.length===0||!e.includes("#"))return e;let i=new Set(n),o=Q(e),a="",u=0;for(;u<e.length;){let d=o[u]&&e[u]==="#"?h(e,u+1):null;d&&i.has(d.value)?(a+=t(d.value),u=d.end):(a+=e[u],u+=1)}return a}function X(e){let n="";for(let t=0;t<e.length;t+=1){if(e[t]==="\\\\"){let i=e[t+1];if(i!==void 0&&/[\\n\\r\\f]/.test(i)){t=$(e,t+1)-1;continue}let o=R(e,t);if(o){n+=o.value,t=o.end-1;continue}}n+=e[t]}return n}function N(e){return Array.from(e,n=>{let t=n.charCodeAt(0);return t===0?"\\uFFFD":t<32||t===127?`\\\\${t.toString(16)} `:n===\'"\'||n==="\\\\"?`\\\\${n}`:n}).join("")}function Y(e,n){return e?{kind:"any"}:n===void 0?{kind:"none"}:{kind:"named",prefix:n}}function Z(e,n){return e[n]==="|"&&e[n+1]!=="="}function B(e,n){let t=e[n]==="*",i=t?{value:"*",end:n+1}:h(e,n),o=y(e,i?.end??n);if(!Z(e,o))return t?null:i?{token:i,namespace:{kind:"none"}}:null;let a=h(e,y(e,o+1));return a?{token:a,namespace:Y(t,i?.value)}:null}function K(e){if(e[0]!=="[")return null;let n=A(e,1),t=B(e,n);if(!t)return null;let{token:i,namespace:o}=t;return{name:i.value,rawName:e.slice(n,i.end),namespace:o,end:i.end}}function ee(e,n){let t=/^(?:"((?:\\\\[\\s\\S]|[^"\\\\])*)"|\'((?:\\\\[\\s\\S]|[^\'\\\\])*)\')/.exec(e.slice(n));return t?{value:X(t[1]??t[2]),end:n+t[0].length}:h(e,n)}function ne(e,n){let t=A(e,n),i=h(e,t);if(i){if(!/^[is]$/i.test(i.value))return null;t=A(e,i.end)}return e[t]!=="]"||t!==e.length-1?null:{flag:i?.value}}function F(e){let n=K(e);if(!n)return null;let t=A(e,n.end),o=["=","~=","|=","^=","$=","*="].find(d=>e.startsWith(d,t));if(!o)return null;let a=ee(e,A(e,t+o.length));if(!a)return null;let u=ne(e,a.end);return u?{name:n.name,rawName:n.rawName,namespace:n.namespace,operator:o,value:a.value,flag:u.flag}:null}function E(e,n){return e.replace(W,t=>t.startsWith("[")?n(t):t)}var re="data-hf-svg-reference-aliases";function O(e,n,t,i){let o={"=":(s,r)=>s===r,"~=":(s,r)=>s.split(/[ \\t\\r\\n\\f]+/).includes(r),"|=":(s,r)=>s===r||s.startsWith(r+"-"),"^=":(s,r)=>s.startsWith(r),"$=":(s,r)=>s.endsWith(r),"*=":(s,r)=>s.includes(r)},a=(s,r,l)=>!r&&l!=="="&&l!=="|="?!1:o[l](s,r),u=s=>s.replace(/[A-Z]/g,r=>r.toLowerCase()),d=s=>{let r=F(s);if(!r)return s;let{name:l,rawName:g,namespace:m,operator:b,value:D,flag:w}=r;if(m.kind==="named"!=(i!==void 0))return s;let x=w?.toLowerCase()==="i"?u:S=>S,L=u(l),P=t.filter(S=>{let V=m.kind==="none"?S.name:S.localName,U=m.kind==="named"?i.get(m.prefix):null;return(m.kind==="any"||S.namespaceURI===U)&&u(V)===L}),v=new Set([s]);for(let S of P)a(x(S.before),x(D),b)&&v.add(`[${g}="${N(S.after)}"${w?` ${w}`:""}]`);return v.size===1?s:`:is(${[...v].join(", ")})`};if(i)return E(e,d);let p=new Map(n.map(({id:s,replacement:r})=>[s,r])),f=new Map;for(let s of t){if(s.name!=="id"||s.before===s.after||p.has(s.before))continue;let r=f.get(s.before);r||(r=new Set([`#${k(s.before)}`]),f.set(s.before,r)),r.add(`#${k(s.after)}`)}for(let[s,r]of f)p.set(s,`:is(${[...r].join(", ")})`);let c=q(e,[...p.keys()],s=>p.get(s));return E(c,d)}function se(e,n,t=!0){let i=[],a=(t?[...e.querySelectorAll(`[${n}]`)]:[]).map(d=>d.getAttribute(n)),u=e.getAttribute?.(n);u&&a.unshift(u);for(let d of a){let p;try{p=JSON.parse(d)}catch{continue}if(!Array.isArray(p))continue;let f=p;for(let c of f){if(!ie(c))continue;let{name:s,localName:r,namespaceURI:l,before:g,after:m}=c;i.push({name:s,localName:r,namespaceURI:l,before:g,after:m})}}return i}function ie(e){if(!e||typeof e!="object")return!1;let{name:n,localName:t,namespaceURI:i,before:o,after:a}=e;return typeof n=="string"&&typeof t=="string"&&(i===null||typeof i=="string")&&typeof o=="string"&&typeof a=="string"}function oe(e){let n=[],t=[],i=!1,o,a=new WeakMap,u=(f,c)=>{for(let s of f){if("selectorText"in s){let r=s,l=a.get(r),g=r.selectorText,m=l?.applied===g?l.authored:g,b=O(m,[],t,c);b!==g&&(r.selectorText=b),b===m?a.delete(r):a.set(r,{authored:m,applied:r.selectorText})}"cssRules"in s&&u(s.cssRules,c)}},d=()=>{if(t.length)for(let f of e.document.styleSheets){let c;try{c=f.cssRules}catch{continue}let s=new Map;for(let r of c){if(!("namespaceURI"in r))continue;let{prefix:l,namespaceURI:g}=r;l&&s.set(l,g||null)}s.size&&u(c,s)}},p={rewrite:(f,c=[])=>{if(typeof f!="string"||!f.includes("#")&&!f.includes("["))return f;let s=O(f,c.length?[...c,...n]:n,t);if(s!==f){if(!o){let r=e.document.createElement("div");o=r.matches.bind(r)}o(f)}return s},refresh(){t=se(e.document,re).filter(r=>r.before!==r.after);let f=new Set(t.filter(r=>r.name==="id").map(r=>r.before)),c=new Set;n=[];for(let r of e.document.querySelectorAll("[data-hf-authored-id][id]")){let l=r.getAttribute("data-hf-authored-id");if(!l||l===r.id||c.has(l)||f.has(l))continue;c.add(l);let g=N(l);n.push({id:l,replacement:`:is(#${k(l)}, [data-hf-authored-id="${g}"])`})}if(d(),i||!n.length&&!t.length)return;let s=e.Element.prototype;s.querySelector=new Proxy(s.querySelector,{apply(r,l,g){return Reflect.apply(r,l,[p.rewrite(g[0])])}}),s.querySelectorAll=new Proxy(s.querySelectorAll,{apply(r,l,g){return Reflect.apply(r,l,[p.rewrite(g[0])])}}),i=!0}};e.__hfSvgSelectorAliases=p,p.refresh()}function M(){let e=window;e.__hfSvgSelectorAliases||oe(e)}M();})();\n';function wx(){return Ek}var Oe=uT(ZS(),1),Pl=Oe.default,p5=Oe.default.stringify,h5=Oe.default.fromJSON,g5=Oe.default.plugin,b5=Oe.default.parse,y5=Oe.default.list,x5=Oe.default.document,S5=Oe.default.comment,E5=Oe.default.atRule,v5=Oe.default.rule,A5=Oe.default.decl,w5=Oe.default.root,_5=Oe.default.CssSyntaxError,C5=Oe.default.Declaration,T5=Oe.default.Container,R5=Oe.default.Processor,M5=Oe.default.Document,k5=Oe.default.Comment,L5=Oe.default.Warning,N5=Oe.default.AtRule,F5=Oe.default.Result,P5=Oe.default.Input,D5=Oe.default.Rule,I5=Oe.default.Root,O5=Oe.default.Node;var Ff="data-hf-authored-id",eE="data-hf-inner-root";function Ji(e){return e.replace(/[.*+?^${}()|[\]\\]/g,"\\$&")}function Pf(e){return e.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}function eN(e){let t=e.trim();return t?Array.from(new Set([t,tn(t)])).filter(Boolean):[]}function tN(e,t,n){let r=eN(t);return Za(e,r,()=>n)}function nN(e,t){let n=t?.trim();return n?tN(e,n,`[${Ff}="${Pf(n)}"]`):e}function tE(e){return`${e}:not(:has([${eE}])), ${e} > [${eE}]`}function rN(e,t,n,r,o,i){let a=nN(e,r),l=oN(a,t,n),s=l.trim();if(!s||s==="*")return e;if(/^(html|body|:root)$/i.test(s))return i?tE(t):e;let c=new RegExp(`\\[\\s*data-composition-id\\s*[\\^\\*\\$]?=\\s*(["'])${Ji(n)}\\1\\s*\\]`,"g");if(c.test(s))return s.replace(c,"").trim()===""?tE(t):l.replace(c,t);let d=l.match(/^\s*/)?.[0]??"",m=l.match(/\s*$/)?.[0]??"";if(o){let f=r?`[${Ff}="${Pf(r)}"]`:null;if(f&&s.startsWith(f)){let p=s.slice(f.length);return`${d}${t}${f}${p}${m}`}}return`${d}${t} ${s}${m}`}function oN(e,t,n){let r=Ji(n),o=String.raw`\[\s*data-composition-id\s*=\s*(?:"${r}"|'${r}')\s*\]`,i=String.raw`\s*\[\s*data-(?:start|duration)\s*=\s*(?:"[^"]*"|'[^']*')\s*\]`;return e.replace(new RegExp(`${o}(?:${i})+`,"g"),t).replace(new RegExp(`(?:${i})+${o}`,"g"),t)}var iN=new Set(["keyframes","-webkit-keyframes","font-face"]);function aN(e){return e?.type==="atrule"}function sN(e){let t=e.parent;for(;t;){if(aN(t)&&iN.has(t.name.toLowerCase()))return!0;t=t.parent}return!1}function lN(e){let t=e.parent;for(;t;){if(t.type==="rule")return!0;t=t.parent}return!1}function nE(e,t,n,r,o){let i=t.trim();if(!e||!i)return e;let a=n||`[data-composition-id="${Pf(i)}"]`,l=uN(e);return l?dN(l,a,i,r,o):""}function uN(e){try{return Pl.parse(e)}catch{return null}}function cN(e,t){e.walkRules(n=>{sN(n)||lN(n)||t(n)})}function dN(e,t,n,r,o){return cN(e,i=>{i.selectors=i.selectors.map(a=>rN(a,t,n,r,o?.compoundAuthoredRoot,o?.scopeRootSelectors))}),e.toResult({map:!1}).css}var fN="hf-scope-placeholder",V5=`[data-composition-id="${fN}"]`;function bt(e){return JSON.stringify(e).replace(/</g,"\\u003c")}var rE=`!__hfBaseHyperframes
|
|
45
45
|
? __hfBaseHyperframes
|
|
46
46
|
: Object.assign({}, __hfBaseHyperframes, {
|
|
47
47
|
assetUrl: function(path) {
|
|
@@ -53,18 +53,18 @@ https://www.w3ctech.com/topic/2226`));let l=n(...a);return l.postcssPlugin=t,l.p
|
|
|
53
53
|
var scoped = byComp && __hfTimelineCompId ? byComp[__hfTimelineCompId] : null;
|
|
54
54
|
return scoped ? Object.assign({}, scoped) : {};
|
|
55
55
|
},
|
|
56
|
-
})`,
|
|
57
|
-
return ${
|
|
56
|
+
})`,mN="/*hf-authored-begin*/",pN="/*hf-authored-end*/";function oE(e,t){return`const __hyperframes = (function(__hfBaseHyperframes, __hfTimelineCompId, __hfCompositionSrc) {
|
|
57
|
+
return ${rE};
|
|
58
58
|
})(window.__hyperframes, ${bt(e)}, ${bt(t?.trim()||null)});
|
|
59
|
-
${
|
|
60
|
-
`}function
|
|
61
|
-
${`(function(){ ${
|
|
59
|
+
${Df("",e)}
|
|
60
|
+
`}function Df(e,t,n="[HyperFrames] composition script error:",r,o=t,i,a){let l=bt(t),s=bt(o),c=bt(n),d=Ji(t),m=bt(i?.trim()||null),f=bt(r??null),p=bt(String.raw`\[\s*data-composition-id\s*=\s*(?:"${d}"|'${d}')\s*\]`),b=bt(String.raw`\[\s*data-composition-id\s*=\s*(?:"${Ji(o)}"|'${Ji(o)}')\s*\]`),y=bt(String.raw`\s*\[\s*data-(?:start|duration)\s*=\s*(?:"[^"]*"|'[^']*')\s*\]`);return`(function(){
|
|
61
|
+
${`(function(){ ${wx()} })();`}
|
|
62
62
|
var __hfCompId = ${l};
|
|
63
63
|
var __hfTimelineCompId = ${s};
|
|
64
64
|
var __hfErrorLabel = ${c};
|
|
65
65
|
var __hfAuthoredRootId = ${m};
|
|
66
66
|
var __hfCompositionSrc = ${bt(a?.trim()||null)};
|
|
67
|
-
var __hfAuthoredRootAttr = ${bt(
|
|
67
|
+
var __hfAuthoredRootAttr = ${bt(Ff)};
|
|
68
68
|
var __hfEscapeAttr = function(value) {
|
|
69
69
|
return (value + "").replace(/\\\\/g, "\\\\\\\\").replace(/"/g, "\\\\\\"");
|
|
70
70
|
};
|
|
@@ -325,15 +325,15 @@ ${Ff("",e)}
|
|
|
325
325
|
},
|
|
326
326
|
});
|
|
327
327
|
var __hfBaseHyperframes = window.__hyperframes;
|
|
328
|
-
var __hfScopedHyperframes = ${
|
|
328
|
+
var __hfScopedHyperframes = ${rE};
|
|
329
329
|
var __hfRun = function() {
|
|
330
330
|
var report = window.__hfScriptState;
|
|
331
331
|
if (typeof report === "function") report("start", __hfCompositionSrc || "index.html");
|
|
332
332
|
try {
|
|
333
333
|
(function(document, gsap, window, __hyperframes) {
|
|
334
|
-
${
|
|
334
|
+
${mN}
|
|
335
335
|
${e.replace(/<\/(script)/gi,"<\\/$1")}
|
|
336
|
-
${
|
|
336
|
+
${pN}
|
|
337
337
|
}).call(window, __hfScopedDocument, __hfScopedGsap, __hfScopedWindow, __hfScopedHyperframes);
|
|
338
338
|
} catch (_err) {
|
|
339
339
|
console.error(__hfErrorLabel, __hfCompId, _err);
|
|
@@ -368,14 +368,14 @@ ${uN}
|
|
|
368
368
|
};
|
|
369
369
|
__hfFindRoot();
|
|
370
370
|
__hfRecordAnimations(__hfRun);
|
|
371
|
-
})();`}function Pl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function cN(e){return Pl(e)&&Object.values(e).every(Pl)}var rE=(e,t)=>e&&Object.fromEntries(Object.entries(e).map(([n,r])=>[n,typeof r=="string"?t(r):null]));function oE(e,t){let n;try{n=JSON.parse(e)}catch{return null}if(!Pl(n))return null;let{imports:r,scopes:o}=n;return r!==void 0&&!Pl(r)||o!==void 0&&!cN(o)?null:{imports:rE(r,t),scopes:o&&Object.fromEntries(Object.entries(o).map(([i,a])=>[t(i),rE(a,t)??{}]))}}var Pf="text/hf-after-fonts",aE=`${Pf}+module`,sE=`script[type="${Pf}"], script[type="${aE}"]`,lE="__hfAfterFontsClaimed",dN="data-hf-inlined-src";var uE=`[defer][src], [defer][${dN}]`;function Dl(e){let t=e.getAttribute("type");return t===Pf?null:t===aE?"module":t}function fN(e){let t=e.getAttribute("type")??"",n=e.tagName.toLowerCase()==="link"?t.split(";")[0].trim():t;if(n!==""&&n.toLowerCase()!=="text/css")return;let r=(e.getAttribute("media")??"").trim().toLowerCase();return JSON.stringify([r==="all"?"":r,e.getAttribute("title")??""])}var U5=JSON.stringify(["",""]);function iE(e){return JSON.stringify([e.getAttribute("href"),(e.getAttribute("rel")??"").trim().toLowerCase(),fN(e)??e.getAttribute("type"),e.hasAttribute("disabled")])}function cE(e,t){let n=iE(t);return[...e.querySelectorAll("link[href]")].some(r=>!r.closest("noscript")&&iE(r)===n)}var tt="id",Df="data-hf-authored-id",go=/(url\(\s*)(["']?)#([^"')\s]+)\2(\s*\))/gi;function fE(e){return e==="href"||e.endsWith(":href")}function mN(e){return e.replace(/[^a-zA-Z0-9_-]/g,"-")}function If(e,t){return!e||!e.toLowerCase().includes("url(")?e:e.replace(go,(n,r,o,i,a)=>{let l=t.get(i);return l?`${r}${o}#${l}${o}${a}`:n})}function pN(e,t,n){if(fE(e)&&t.startsWith("#")){let o=n.get(t.slice(1));return o?`#${o}`:t}go.lastIndex=0;let r=go.test(t);return go.lastIndex=0,r?If(t,n):null}function hN(e,t,n){if(e.name===kt||e.name===tt)return{kind:"skip"};let r=t&&e.value===t.after?t.before:e.value,o=pN(e.name,r,n);return o!==null?{kind:"managed",before:r,after:o}:t?{kind:"retain",alias:t}:{kind:"skip"}}function gN(e,t,n,r){let o=e.namespaceURI===void 0&&e.name==="xlink:href"&&r;return{name:e.name,localName:o?"href":e.localName,namespaceURI:o?"http://www.w3.org/1999/xlink":e.namespaceURI??null,before:t,after:n}}function bN(e,t){let n=new Map(ur(e,kt,!1).map(i=>[i.name,i])),r=[...n.values()].filter(i=>i.name===tt),o=!!e.closest("svg");for(let i of e.attributes?Array.from(e.attributes):[]){let a=hN(i,n.get(i.name),t);if(a.kind!=="skip"){if(a.kind==="retain"){r.push(a.alias);continue}a.after!==i.value&&(i.namespaceURI?e.setAttributeNS(i.namespaceURI,i.name,a.after):e.setAttribute(i.name,a.after)),r.push(gN(i,a.before,a.after,o))}}r.length&&e.setAttribute(kt,JSON.stringify(r))}function dE(e,t,n){let r;for(go.lastIndex=0;r=go.exec(e);){let o=r[3];t.has(o)&&n.add(o)}}function yN(e,t,n){if(fE(e.name)&&e.value.startsWith("#")){let r=e.value.slice(1);t.has(r)&&n.add(r)}}function xN(e,t,n){let r=new Set;for(let o of e)for(let i of o.attributes?Array.from(o.attributes):[])!i.value||i.name===kt||(yN(i,n,r),i.value.toLowerCase().includes("url(")&&dE(i.value,n,r));for(let o of t)o.toLowerCase().includes("url(")&&dE(o,n,r);return r}function mE(e,t){return t.some(n=>n===e||n.contains(e))}function SN(e){let t=e.exclude??[],n=[...e.root.querySelectorAll("*")],r=t.length?n.filter(o=>!mE(o,t)):n;return[e.root,...r]}function EN(e){let t=e.exclude??[],n=[...e.root.querySelectorAll("svg [id], svg[id]")];return t.length?n.filter(r=>!mE(r,t)):n}function vN(e){let t=SN(e),n=new Set;if(!e.namespace)return{elements:t,renamable:n};let r=EN(e),o=new Set;for(let a of r){let l=a.getAttribute(tt);l&&o.add(l)}if(o.size===0)return{elements:t,renamable:n};let i=xN(t,e.cssTexts??[],o);for(let a of r){let l=a.getAttribute(tt);l&&i.has(l)&&n.add(a)}return{elements:t,renamable:n}}function pE(e){if(!e.closest("svg"))return null;let t=ur(e,kt,!1).find(n=>n.name===tt);return t?e.getAttribute(tt)===t.after?t.before:null:e.getAttribute(Df)}function AN(e){let t=new Map,n=new Set;for(let r of e.querySelectorAll("[id]")){let o=r.getAttribute(tt);if(!o)continue;n.add(o);let i=t.get(o);i?i.push(r):t.set(o,[r]);let a=pE(r);if(a&&a!==o){let l=t.get(a);l?l.push(r):t.set(a,[r])}}return{elementsById:t,usedIds:n}}function wN(e,t,n){let r=`${mN(e)}--${t}`,o=r;for(let i=2;n.has(o);i+=1)o=`${r}-${i}`;return n.add(o),o}function _N(e,t,n){let r=t.find(a=>!n.has(a))??t[0],i=t.filter(a=>a!==r&&a.getAttribute(tt)===e).map(a=>n.get(a));return new Set(i.filter(a=>a!==void 0))}function CN(e,t,n){let r=t.map(()=>new Map);for(let[o,i]of e.elementsById)if(!(i.length<2))for(let a of _N(o,i,n))r[a].set(o,wN(t[a].namespace,o,e.usedIds));return r}function TN(e,t,n){let r=new Map;for(let[o,i]of e.elementsById){let a=i[0],l=a.getAttribute(tt);if(l!==o){r.set(o,l);continue}let s=n.get(a),c=s===void 0?void 0:t[s].get(o);c&&r.set(o,c)}return r}function RN(e){let t=new Set(e.map(r=>r.getAttribute(tt))),n=new Map;for(let r of e){let o=pE(r),i=r.getAttribute(tt);!o||!i||(t.add(o),n.set(o,i))}return{ids:t,renamed:n}}function MN(e,t){for(let n of e.elements){let r=n.getAttribute(tt);if(r&&e.renamable.has(n)&&t.has(r)){n.hasAttribute(Df)||n.setAttribute(Df,r);let o=t.get(r),i=ur(n,kt,!1);i.push({name:tt,localName:tt,namespaceURI:null,before:r,after:o}),n.setAttribute(kt,JSON.stringify(i)),n.setAttribute(tt,o)}bN(n,t)}}function hE(e,t,n){if(t.length===0)return[];let r=AN(e),o=t.map(vN),i=o.flatMap(({renamable:d})=>[...d]);if(n)for(let d of o)for(let m of d.renamable)n.has(m)&&d.renamable.delete(m);let a=new Map;o.forEach(({renamable:d},m)=>{for(let f of d)a.set(f,m)});let l=CN(r,t,a),s=TN(r,l,a),c=o.map((d,m)=>{let f=RN(t[m].referenceTarget==="document"?[]:d.elements),p=[...s].filter(([b])=>!f.ids.has(b));return new Map([...p,...f.renamed,...l[m]])});c.forEach((d,m)=>{MN(o[m],d)});for(let d of i)n?.add(d);return c}function gE(e,t,n=[]){if(!e||t.size===0&&n.length===0||!e.includes("#")&&!e.includes("[")&&!e.toLowerCase().includes("url("))return e;let r;try{r=Fl.parse(e)}catch{return e}let o=!1,i=new Set(n.filter(l=>l.name===tt).map(l=>l.before)),a=[...t].filter(([l])=>!i.has(l)).map(([l,s])=>({id:l,replacement:`:is(#${tn(l)}, #${tn(s)})`}));return r.walkRules(l=>{let s=l.selectors.map(c=>es(c,a,n));s.some((c,d)=>c!==l.selectors[d])&&(l.selectors=s,o=!0)}),r.walkDecls(l=>{let s=If(l.value,t);s!==l.value&&(l.value=s,o=!0)}),r.walkAtRules(l=>{if(!l.params)return;let s=If(l.params,t);s!==l.params&&(l.params=s,o=!0)}),o?r.toResult({map:!1}).css:e}var Of=5e3;window[lE]=!0;async function Qi(){let e=document.fonts;if(!e)return;document.body?.offsetHeight;for(let o of Array.from(e))o.status==="unloaded"&&o.load().catch(()=>{});let t,n=await Promise.race([e.ready.then(()=>!1),new Promise(o=>t=setTimeout(o,Of,!0))]);if(clearTimeout(t),!n)return;let r=[...new Set(Array.from(e).filter(o=>o.status==="loading").map(o=>o.family))];globalThis.console.warn(`[hyperframes] fonts still loading after ${Of} ms, composition scripts run without them: ${r.join(", ")}`),Re({source:"hf-preview",type:"diagnostic",code:"runtime_font_wait_timeout",details:{loadingFamilies:r,timeoutMs:Of}})}function kN(e,t){let n=Object.getOwnPropertyDescriptor(e,"addEventListener"),r=e.addEventListener,o=(i,a,l)=>{if(!a)return;i==="DOMContentLoaded"||i==="load"&&e===window&&document.readyState==="complete"?t.push({target:e,type:i,listener:a}):r.call(e,i,a,l)};return e.addEventListener=o,()=>{e.addEventListener===o&&(n?Object.defineProperty(e,"addEventListener",n):delete e.addEventListener)}}function LN(e){if(!e.isConnected)return;let t=document.createElement("script");for(let{name:r,value:o}of Array.from(e.attributes))t.setAttribute(r,o);let n=Dl(e);return n===null?t.removeAttribute("type"):t.setAttribute("type",n),t.async=e.hasAttribute("async"),t.text=e.textContent??"",e.replaceWith(t),t}var NN=50,FN=()=>!window.__HF_VIRTUAL_TIME__;function PN(){let e=globalThis.scheduler;return typeof e?.yield=="function"?e.yield():new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>{n.port1.close(),t()},n.port2.postMessage(null)})}var DN=e=>new Promise(t=>{e.addEventListener("load",t),e.addEventListener("error",t)});function IN(){let e=document.createElement("script");e.type="module",e.async=!1,e.text='document.dispatchEvent(new Event("hf-after-fonts-modules"))';let t=new Promise(n=>document.addEventListener("hf-after-fonts-modules",n,{once:!0}));return document.body.appendChild(e),t.then(()=>e.remove())}async function Il(e,t){await Qi();let n=l=>Dl(l)==="module"||l.matches(uE),r=[],o=[document,window].map(l=>kN(l,r)),i=FN(),a=performance.now();for(let l of[...e.filter(s=>!n(s)),...e.filter(n)]){i&&performance.now()-a>NN&&(await PN(),a=performance.now());let s=LN(l);s?.hasAttribute("src")&&!s.async&&!s.noModule?await DN(s):Dl(l)==="module"&&await IN()}for(let l of o)l();t?.();for(let{target:l,type:s,listener:c}of r){let d=new Event(s);try{typeof c=="function"?c.call(l,d):c.handleEvent(d)}catch(m){reportError(m)}}}var ON=["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 bE(e){let t=e.getAttribute("id")?.trim();for(let n of ON)e.removeAttribute(n);t&&(e.removeAttribute("id"),e.setAttribute("data-hf-authored-id",t)),e.setAttribute("data-hf-inner-root","true")}var HN=8e3,GN=/^(?![a-zA-Z][a-zA-Z\d+\-.]*:)(?!\/\/)(?!\/)(?!\.\.?\/).+/,BN=/\burl\(\s*(["']?)([^)"']+)\1\s*\)/g,UN=["src","href"];function WN(e){return!e||e.startsWith("http://")||e.startsWith("https://")||e.startsWith("//")||e.startsWith("data:")||e.startsWith("#")||e.startsWith("/")}function AE(e,t){if(!t)return e;let n=e.trim();if(WN(n)||!n.startsWith("../")&&n!=="..")return e;try{return new URL(n,t).href}catch{return e}}function wE(e,t){return!t||!e?e:e.replace(BN,(n,r,o)=>{let i=AE(o||"",t);return i===o?n:`url(${r||""}${i}${r||""})`})}function VN(e,t){for(let n of Array.from(e.querySelectorAll("[src], [href]")))for(let r of UN){let o=n.getAttribute(r);if(o==null)continue;let i=AE(o,t);i!==o&&n.setAttribute(r,i)}}function $N(e,t){for(let n of Array.from(e.querySelectorAll("[style]"))){let r=n.getAttribute("style");if(r==null)continue;let o=wE(r,t);o!==r&&n.setAttribute("style",o)}}function qN(e,t){for(let n of Array.from(e.querySelectorAll("style"))){let r=n.textContent||"",o=wE(r,t);o!==r&&(n.textContent=o)}}function _E(e,t){if(t){VN(e,t),$N(e,t),qN(e,t);for(let n of Array.from(e.querySelectorAll("template")))_E(n.content,t)}}function yE(e,t){return`${e}__hf${t}`}var zN=e=>new Promise(t=>{let n=!1,r=Date.now(),o=null,i=a=>{n||(n=!0,o!=null&&window.clearTimeout(o),t({status:a,elapsedMs:Math.max(0,Date.now()-r)}))};e.addEventListener("load",()=>i("load"),{once:!0}),e.addEventListener("error",()=>i("error"),{once:!0}),o=window.setTimeout(()=>i("timeout"),HN)});function Bf(e){for(;e.firstChild;)e.removeChild(e.firstChild);e.textContent=""}function Hf(e){for(let t of xx(e))t.remove()}function jN(e){let t=document.importNode(e,!0);bE(t);let n=br(t.getAttribute("data-width")),r=br(t.getAttribute("data-height"));return t.style.width=n===null?"100%":`${n}px`,t.style.height=r===null?"100%":`${r}px`,t}function xE(e,t){let n=e.trim();if(!n)return e;try{return GN.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 SE(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 Zi(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 KN(e){let t=new Map;for(let n of e){let r=Zi(n).authoredCompositionId||"";r&&t.set(r,(t.get(r)||0)+1)}return Ex(t,e),t}function CE(e){let t=Zi(e).authoredCompositionId;return t?!!document.querySelector(`template#${CSS.escape(t)}-template`):!1}function YN(e){return!!e.querySelector('[data-hf-inner-root="true"]')}function EE(e){return e.hasAttribute("data-composition-src")?!0:CE(e)?e.children.length===0||e.hasAttribute("data-hf-original-composition-id")?!0:YN(e):!1}function Ol(){return Array.from(document.querySelectorAll("[data-composition-src], [data-composition-id]")).filter(t=>t.hasAttribute("data-composition-src")?!0:CE(t))}function Uf(){let e=window.__hfVariablesByComp;if(!e)return;let t=new Set(Ol().map(n=>Zi(n).runtimeCompositionId).filter(n=>!!n));for(let n of Object.keys(e))t.has(n)||delete e[n]}function TE(e,t){let n=KN(e),r=new Set(e.flatMap(a=>{let l=Zi(a),s=l.authoredCompositionId?[l.authoredCompositionId]:[];return(t.has(a)||!EE(a))&&l.runtimeCompositionId&&s.push(l.runtimeCompositionId),s})),o=new Map,i=new Map;for(let a of e){let{authoredCompositionId:l,runtimeCompositionId:s}=Zi(a),c=!t.has(a)&&EE(a);if(!l){i.set(a,{authoredCompositionId:null,runtimeCompositionId:s});continue}let d=(n.get(l)||0)>1,m=s||l;if(c){let f=d?(o.get(l)||0)+1:0;if(d){for(;r.has(yE(l,f));)f+=1;o.set(l,f)}m=d?yE(l,f):l,r.add(m),d?a.setAttribute("data-hf-original-composition-id",l):a.removeAttribute("data-hf-original-composition-id"),a.setAttribute("data-composition-id",m)}i.set(a,{authoredCompositionId:l,runtimeCompositionId:m})}return Uf(),i}async function RE(e){let t=Sx({contentNode:e.sourceNode,head:e.head,hasTemplate:e.hasTemplate,compositionId:e.authoredCompositionId}),n=Ce(t.innerRoot)?t.innerRoot:null,r=n??e.sourceNode,o=t.authoredCompositionId,i=t.scriptCompositionId,a=e.runtimeCompositionId||null,l=t.authoredRootId,s=a?`[data-composition-id="${CSS.escape(a)}"]`:void 0;for(let y of t.linkSources){let x=(y.getAttribute("href")||"").trim();if(!x)continue;let v=e.compositionUrl?new URL(x,e.compositionUrl).href:x;if(e.compositionUrl&&SE(v,e.compositionUrl))continue;let E=y.cloneNode(!0);ug(E)&&(E.href=v,!cE(document.head,E)&&(document.head.appendChild(E),e.injectedLinks.push(E)))}let c=[];(y=>{for(let x of y){let v=x.cloneNode(!0);if(!lg(v))continue;o&&(v.textContent=eE(v.textContent||"",o,s,l,{scopeRootSelectors:!0})),document.head.appendChild(v),e.injectedStyles.push(v);let E=v.textContent||"";c.push({element:v,authored:E,applied:E})}})(t.styleSources);let m=y=>{let x=y.getAttribute("type")?.trim()??"",v=y.getAttribute("src")?.trim()??"";if(v){let C=xE(v,e.compositionUrl);return e.compositionUrl&&SE(C,e.compositionUrl)?null:{kind:"external",src:C,type:x}}let E=y.textContent?.trim()??"";return E?{kind:"inline",content:E,type:x,scopeCompositionId:i}:null},f=t.scriptSources.map(m).filter(y=>y!==null);if(n){let y=n.getAttribute("data-width"),x=n.getAttribute("data-height"),v=e.parseDimensionPx(y),E=e.parseDimensionPx(x);y&&e.host.setAttribute("data-width",y),x&&e.host.setAttribute("data-height",x),v&&Ce(e.host)&&(e.host.style.width=v),E&&Ce(e.host)&&(e.host.style.height=E),n.hasAttribute("data-timeline-locked")&&e.host.setAttribute("data-timeline-locked","");let C=jN(n);!e.authoredCompositionId&&o&&C.setAttribute("data-composition-id",o),Hf(C),e.host.appendChild(C)}else if(e.hasTemplate){let y=document.importNode(r,!0);Hf(y),e.host.appendChild(y)}else e.host.innerHTML=e.fallbackBodyInnerHtml,Hf(e.host);for(let y of t.inertScriptsOutsideRoot)e.host.appendChild(document.importNode(y,!0));a&&JN(e,r,a);let p=Array.from(e.host.childNodes),b=()=>e.host.isConnected&&(p.length>0||e.host.childNodes.length===0)&&p.every(y=>y.parentNode===e.host);return{host:e.host,namespace:a||o||"",styles:c,isCurrent:b,runScripts:async()=>{if(f.length>0&&await Qi(),!!b())for(let y of f){let x=document.createElement("script");if(y.type&&(x.type=y.type),x.async=!1,y.kind==="external")x.src=y.src;else if(y.type.toLowerCase()==="importmap"){let v=oE(y.content,E=>xE(E,e.compositionUrl));x.textContent=v?JSON.stringify(v):y.content}else if(y.type.toLowerCase()==="module"){let v=y.scopeCompositionId?nE(a||y.scopeCompositionId,e.compositionUrl?.href):"";x.textContent=v+y.content}else y.scopeCompositionId?x.textContent=Ff(y.content,y.scopeCompositionId,"[HyperFrames] composition script error:",s,a||y.scopeCompositionId,l,e.compositionUrl?.href):x.textContent=`(function(){${y.content}})();`;if(document.body.appendChild(x),e.injectedScripts.push(x),y.kind==="external"){let v=await zN(x);v.status!=="load"&&e.onDiagnostic?.({code:"external_composition_script_load_issue",details:{hostCompositionId:e.authoredCompositionId,runtimeCompositionId:e.runtimeCompositionId,hostCompositionSrc:e.hostCompositionSrc,resolvedScriptSrc:y.src,loadStatus:v.status,elapsedMs:v.elapsedMs}})}}}}}async function vE(e,t){let n=Ol();if(Uf(),n.length===0)return[];let r=TE(n,t),o=n.filter(a=>{if(t.has(a)||a.hasAttribute("data-composition-src")||a.children.length>0)return!1;let l=r.get(a)?.authoredCompositionId;return l?!!document.querySelector(`template#${CSS.escape(l)}-template`):!1}),i=[];for(let a of o){let l=r.get(a),s=l?.authoredCompositionId;if(!s)continue;let c=document.querySelector(`template#${CSS.escape(s)}-template`);Bf(a);let d=await RE({host:a,authoredCompositionId:s,runtimeCompositionId:l?.runtimeCompositionId||s,hostCompositionSrc:`template#${s}-template`,sourceNode:c.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:null,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});i.push(d)}return i}async function XN(e){let t=Ol();if(Uf(),t.length===0)return[];let n=TE(t,new Set),r=t.filter(i=>i.hasAttribute("data-composition-src"));return(await Promise.all(r.map(async i=>{let a=i.getAttribute("data-composition-src");if(!a)return null;let l=n.get(i),s=l?.authoredCompositionId||null,c=l?.runtimeCompositionId||s||null,d=null;try{d=new URL(a,document.baseURI)}catch{d=null}Bf(i);let m=p=>{e.onDiagnostic?.({code:"external_composition_load_failed",details:{hostCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,errorMessage:p instanceof Error?p.message:"unknown_error"}}),Bf(i)},f=async p=>{let b=await RE(p),y=b.runScripts;return b.runScripts=async()=>{try{await y()}catch(x){m(x)}},b};try{let p=s!=null?document.querySelector(`template#${CSS.escape(s)}-template`):null;if(p)return await f({host:i,authoredCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,sourceNode:p.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:d,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});let b=await fetch(a);if(!b.ok)throw new Error(`HTTP ${b.status}`);let y=await b.text(),v=new DOMParser().parseFromString(y,"text/html");_E(v,d);let E=(s?v.querySelector(`template#${CSS.escape(s)}-template`):null)??v.querySelector("template"),C=E?E.content:v.body;return await f({host:i,authoredCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,sourceNode:C,hasTemplate:!!E,fallbackBodyInnerHtml:v.body.innerHTML,compositionUrl:d,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,head:v.head,declaredVariableDefaults:yi(v.documentElement),variableDeclarer:v.documentElement,onDiagnostic:e.onDiagnostic})}catch(p){return m(p),null}}))).filter(i=>i!==null)}async function ME(e){let t=new Set,n={host:document.documentElement,namespace:"",referenceTarget:"document",styles:[...document.querySelectorAll("style")].map(m=>({element:m,authored:m.textContent??"",applied:m.textContent??""}))},r=await XN(e),o=await vE(e,new Set(r.map(({host:m})=>m))),i=[...r,...o];Gf([...i,n],t),await Promise.all(r.map(m=>m.runScripts()));let a=o.filter(m=>{if(m.isCurrent())return!0;for(let f of m.styles)f.element.remove();return window.__hfVariablesByComp&&delete window.__hfVariablesByComp[m.namespace],!1}),l=[...r.filter(m=>m.host.isConnected),...a],s=await vE(e,new Set(l.map(({host:m})=>m)));s.length&&Gf([...l,...s,n],t);let c=new Map([...a,...s].map(m=>[m.host,m]));for(let m of Ol()){let f=c.get(m);f&&await f.runScripts()}let d=[...l,...s].filter(m=>m.host.isConnected);Gf([...d,n],t)}function Gf(e,t){for(let{styles:r}of e)for(let o of r){let i=o.element.textContent??"";i!==o.applied&&(o.authored=i,o.applied=i)}hE(document,e.map(({host:r,namespace:o,styles:i,referenceTarget:a})=>({root:r,namespace:o,referenceTarget:a,exclude:e.filter(l=>l.host!==r&&r.contains(l.host)).map(l=>l.host),cssTexts:i.map(l=>l.authored)})),t).forEach((r,o)=>{let i=ur(e[o].host,kt);if(!(r.size===0&&i.length===0))for(let a of e[o].styles){let l=gE(a.authored,r,i);l!==a.applied&&(a.element.textContent=l),a.applied=l}}),cr()}function JN(e,t,n){let o={...e.declaredVariableDefaults??(He(t)?yi(t):{}),...fb(e.host)};ld(e.variableDeclarer??(He(t)?t:null),o,n),cb(e.host),Object.keys(o).length>0?(window.__hfVariablesByComp||(window.__hfVariablesByComp={}),window.__hfVariablesByComp[n]=o,ud(e.host,{...ub(e.host,o,window),...Gs()})):window.__hfVariablesByComp&&delete window.__hfVariablesByComp[n]}function QN(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function ZN(e){if(!Array.isArray(e))throw new Error("expected a JSON array");if(!e.every(QN))throw new Error("every array entry must be an object");return e}function eF(e){let n=e.vars.data?.captionState;return n==="dim"||n==="active"?n:void 0}function tF(e){return Ce(e)?e.dataset.captionWrapper!=="true"?e:e.querySelector(":scope > span")??null:null}function nF(){let e=[],t=document.querySelectorAll(".caption-group");for(let n of t)for(let r of n.children){if(!Ce(r))continue;let o=r.dataset.captionWrapper==="true"?r.querySelector(":scope > span"):r.tagName==="SPAN"?r:null;o&&e.push(o)}return e}function rF(e){let t=e.parentElement;if(t?.dataset.captionWrapper==="true")return t;let n=document.createElement("span");return n.style.display="inline-block",n.dataset.captionWrapper="true",e.parentNode?.insertBefore(n,e),n.appendChild(e),n}var Vf=()=>window.gsap,LE=()=>fetch("caption-overrides.json").then(e=>e.ok?e.json():null),NE=e=>e===null?[]:ZN(e);function FE(e){let t=e instanceof Error?e.message:String(e);globalThis.console.error(`[HyperFrames] Invalid caption-overrides.json: ${t}`)}function $f(){return Vf()?LE().then(NE).catch(e=>(FE(e),[])):Promise.resolve([])}function qf(e,t){return!Vf()||document.querySelectorAll(".caption-group").length===0?Promise.resolve():LE().then(n=>zf(NE(n),e,t)).catch(FE)}function oF(e,t){return(e.wordId?tF(document.getElementById(e.wordId)):null)??(e.wordIndex!==void 0?t[e.wordIndex]??null:null)}function kE(e,t){return Object.fromEntries(t.filter(n=>e[n]!==void 0).map(n=>[n,e[n]]))}function Wf(e,t){let n=e.style.color;e.style.color=t;let r=getComputedStyle(e).color;return e.style.color=n,r}function iF(e,t){let n=t[0]?.vars.startAt;return Wf(e,n?.color===void 0?"":String(n.color))}function aF(e,t,n,r){let o=eF(e);if(o)return o;let i=String(e.vars.color);return/var\(|currentcolor/i.test(i)?Wf(t,i)===n?"dim":"active":(r.has(i)||r.set(i,Wf(t,i)),r.get(i)===n?"dim":"active")}function sF(e,t,n){if(e.dimColor)return e.dimColor;if(!(t.length===0||t.some(r=>r.vars.runBackwards)))return n}function lF(e,t,n,r){let o=e.getTweensOf(t).filter(l=>l.vars.color!==void 0).sort((l,s)=>l.startTime()-s.startTime()),i=iF(t,o);for(let l of o){let c=aF(l,t,i,r)==="dim"?n.dimColor:n.activeColor;c&&(l.vars.color=c),l.vars.runBackwards||l.invalidate?.()}let a=sF(n,o,i);a&&e.set(t,{color:a})}function uF(e,t,n,r){let o=kE(n,["x","y","scale","rotation"]),i=kE(n,["opacity","fontWeight","fontFamily"]);if(n.fontSize!==void 0&&(i.fontSize=`${n.fontSize}px`),(n.activeColor||n.dimColor)&&lF(e,t,n,r),Object.keys(i).length>0&&e.set(t,i),Object.keys(o).length>0){let a=rF(t);e.set(a,o)}}function zf(e,t,n=()=>{}){let r=Vf();if(!r||e.length===0)return;n();let o=nF(),i=new Map;for(let a of e){let l=oF(a,o);!l||t&&!t.some(s=>s.contains(l))||uF(r,l,a,i)}}var Kf="data-hf-edit-base-x",Yf="data-hf-edit-base-y",jn="data-hf-edit-original-translate",Hl=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},cF=e=>{let t=[],n=0,r="";for(let o of e.trim())o==="("&&(n+=1),o===")"&&(n=Math.max(0,n-1)),/\s/.test(o)&&n===0?(r&&t.push(r),r=""):r+=o;return r&&t.push(r),t},PE=/^-?(?:\d+(?:\.\d+)?|\.\d+)px$/,jf=(e,t)=>PE.test(e)&&PE.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,dF=(e,t,n)=>{if(!e||e==="none")return`${t} ${n}`;let[r,o,i]=cF(e);if(r===void 0)return`${t} ${n}`;if(o===void 0)return`${jf(r,t)} ${n}`;let a=i===void 0?"":` ${i}`;return`${jf(r,t)} ${jf(o,n)}${a}`},fF=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},mF=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""}},Gl=new WeakMap;function GE(e){Gl.delete(e)}function pF(e,t){let n=Gl.get(e);if(!t?.force&&n!==void 0&&e.style.getPropertyValue("translate")!==n){wt("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=Hl(e.getAttribute("data-x"))-Hl(e.getAttribute(Kf)),o=Hl(e.getAttribute("data-y"))-Hl(e.getAttribute(Yf));e.hasAttribute(jn)||e.setAttribute(jn,mF(e)),n===void 0&&fF(e);let i=e.getAttribute(jn)??"",a=dF(i,`${r}px`,`${o}px`);e.style.setProperty("translate",a),Gl.set(e,e.style.getPropertyValue("translate"))}function ea(e,t){let n=e.querySelectorAll(`[${jn}]:not([${Kf}]):not([${Yf}])`);for(let i=0;i<n.length;i++){let a=n[i];if(a===void 0||!mr(a))continue;let l=a.getAttribute(jn)??"";l===""?a.style.removeProperty("translate"):a.style.setProperty("translate",l),a.removeAttribute(jn),Gl.delete(a)}let r=e.querySelectorAll(`[${Kf}], [${Yf}]`),o=0;for(let i=0;i<r.length;i++){let a=r[i];a===void 0||!mr(a)||(pF(a,t),o+=1)}return o}var DE="__hfPositionEditsSeekReapplyWrapped",IE=new WeakSet,OE=new WeakMap,HE=new WeakMap;function BE(e){let t=e,n=()=>{try{ea(t.document)}catch{}},r=m=>typeof m=="function"&&(IE.has(m)||!!m[DE]),o=m=>{IE.add(m);try{Object.defineProperty(m,DE,{value:!0})}catch{}},i=m=>{if(typeof m!="function"||r(m))return m;let f=function(...p){let b=m.apply(this,p);return n(),b};return o(f),f},a=(m,f)=>{let p=OE.get(m);if(p?.has(f))return!0;let b=Object.getOwnPropertyDescriptor(m,f);if(b?.configurable===!1){let v=m[f];return typeof v=="function"&&(m[f]=i(v),n()),!1}let y=m[f],x=b?.set;return Object.defineProperty(m,f,{configurable:!0,enumerable:b?.enumerable??!0,get:()=>y,set:v=>{y=i(v),x?.call(m,v)}}),y=i(y),p??(p=new Set),p.add(f),OE.set(m,p),n(),!0},l=(m,f)=>{let p=HE.get(t),b=Object.getOwnPropertyDescriptor(t,m);if(!p?.has(m)){if(b?.configurable===!1){let v=t[m];return v?a(v,f):!1}let x=t[m];Object.defineProperty(t,m,{configurable:!0,enumerable:b?.enumerable??!0,get:()=>x,set:v=>{x=v,x&&a(x,f)}}),p??(p=new Set),p.add(m),HE.set(t,p)}let y=t[m];return y?a(y,f):!1},s=()=>{let m=l("__hf","seek"),f=l("__player","renderSeek");return m&&f};if(s())return;let c=120,d=t.setInterval(()=>{if(s()){t.clearInterval(d);return}c-=1,c<=0&&t.clearInterval(d)},50)}function Bl(e){let t=window,r=e.closest("[data-composition-id]")?.getAttribute("data-composition-id")?.trim()??"",o=r?t.__hfVariablesByComp?.[r]:void 0;if(o)return o;let i=t.__hyperframes?.getVariables?.();return i&&typeof i=="object"?i:t.__hfVariables??{}}function Ul(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function Xf(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 UE=new Set(["img","video","audio","source"]);function hF(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 gF(e){return e.replace(/[;{}<>\r\n]/g,"")}function bF(e){if(Ul(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 Jf(e,t){let n=e.closest("[data-composition-id]"),r=t.get(n);if(r)return r;let o=Bl(e);return t.set(n,o),o}function yF(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 xF(e){return e.querySelector("[data-hf-root]")??e.getElementById("stage")??e.body?.firstElementChild??e.body}function SF(e,t){for(let n of new Set(e)){let r=Jf(n,t);for(let[o,i]of Object.entries(r)){let a=bF(i);a!==null&&Ce(n)&&n.style.setProperty(`--${o}`,gF(a))}}}function WE(e,t,n=!0){let r=e.getAttribute("data-var-src")?.trim();if(!r)return null;if(!UE.has(e.tagName.toLowerCase()))return n&&globalThis.console.warn(`[hyperframes] Ignoring data-var-src on <${e.tagName.toLowerCase()}>: variable-bound src is only allowed on ${Array.from(UE).join("/")}.`),null;let o=hF(Jf(e,t)[r]);return o===null?null:Xf(o)?o:(n&&globalThis.console.warn(`[hyperframes] Ignoring data-var-src="${r}": unsafe URL protocol.`),null)}function VE(e){return WE(e,new Map,!1)??Ti(e)}function Wl(e,t){let n=new Map,r=i=>t?[...t.matches(i)?[t]:[],...t.querySelectorAll(i)]:Array.from(e.querySelectorAll(i)),o=t?null:xF(e);SF([...o?[o]:[],...r("[data-composition-id]")],n);for(let i of r("[data-var-src]")){let a=WE(i,n);a!==null&&Ti(i)!==a&&i.setAttribute("src",a)}for(let i of r("[data-var-text]")){let a=i.getAttribute("data-var-text")?.trim();if(!a)continue;let l=Jf(i,n)[a];Ul(l)&&yF(i,String(l))}}var EF=["video","audio","source","script",cn];function Qf(e,t=()=>!1){let n=r=>r.nodeType===Node.ELEMENT_NODE&&(r.matches(e)||r.querySelector(e)!==null||t(r));return r=>r.some(o=>o.type==="attributes"||Array.from(o.addedNodes).some(n)||Array.from(o.removedNodes).some(n))}var $E=e=>Qf([...EF,...e.map(t=>`[${t}]`)].join(","));var vF=3e3,mn=new Map,AF="data-hf-color-grading-canvas",wF="__hf_color_grading_canvas__";function rv(){if(typeof MutationObserver>"u"||typeof document>"u")return;let e=document.documentElement;if(!e)return;let t=r=>{Ce(r)&&(r.hasAttribute(vr)||r.setAttribute(vr,r.style.opacity))},n=r=>{if(He(r)){r.matches("video, img")&&t(r);for(let o of r.querySelectorAll("video, img"))t(o)}};n(e),new MutationObserver(r=>{for(let o of r)for(let i of o.addedNodes)n(i)}).observe(e,{childList:!0,subtree:!0})}var _F=16,CF=4,Rr={enabled:!1,position:.5,softness:0,lineWidth:2},Zf=["#000000","#ffffff"],TF=["#1a1a1a","#f5f5dc"],sa=3,RF=sa-1,MF=5,_r=`${jt}.0`,qE=`${jt-1}.0`,zE=`${sa}.0`,kF=`${(RF+.5)/sa}`;function ta(e){let t=e.getAttribute(dl);return t==null?null:ix(t,Bl(e))}var LF=["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(`
|
|
372
|
-
`),ov=["#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","#else","precision mediump float;","#endif","varying vec2 v_uv;","uniform sampler2D u_source;","uniform sampler2D u_blurSource;","uniform sampler2D u_bloomSource;","uniform sampler2D u_kuwaharaSource;","uniform sampler2D u_lut;","uniform sampler2D u_advanced;","uniform vec2 u_resolution;","uniform vec2 u_uvScale;","uniform vec2 u_uvOffset;","uniform float u_blurReady;","uniform float u_bloomReady;","uniform float u_kuwaharaReady;","uniform float u_lutEnabled;","uniform float u_lutSize;","uniform vec2 u_lutTextureSize;","uniform vec3 u_lutDomainMin;","uniform vec3 u_lutDomainMax;","uniform float u_lutIntensity;","uniform vec3 u_shadowWheel;","uniform vec3 u_midtoneWheel;","uniform vec3 u_highlightWheel;","uniform float u_rgbCurvesEnabled;","uniform float u_hueCurvesEnabled;","uniform float u_secondaryCount;","uniform float u_exposure;","uniform float u_contrast;","uniform float u_highlights;","uniform float u_shadows;","uniform float u_whites;","uniform float u_blacks;","uniform float u_temperature;","uniform float u_tint;","uniform float u_vibrance;","uniform float u_saturation;","uniform float u_vignette;","uniform float u_vignetteMidpoint;","uniform float u_vignetteRoundness;","uniform float u_vignetteFeather;","uniform float u_grain;","uniform float u_grainSize;","uniform float u_grainRoughness;","uniform float u_grainSeed;","uniform float u_effectTime;","uniform float u_blur;","uniform float u_bloom;","uniform float u_kuwahara;","uniform float u_pixelate;","uniform float u_chromaBleed;","uniform float u_tapeDamage;","uniform float u_tapeTracking;","uniform float u_tapeNoise;","uniform float u_tapeSpeed;","uniform float u_filmArtifacts;","uniform float u_halftone;","uniform float u_halftoneSize;","uniform float u_twoInkPrint;","uniform float u_twoInkPrintSize;","uniform float u_ascii;","uniform float u_asciiSize;","uniform float u_asciiInvert;","uniform float u_asciiStyle;","uniform float u_asciiColor;","uniform float u_asciiRotation;","uniform float u_dither;","uniform float u_ditherSize;","uniform float u_monoScreen;","uniform float u_monoScreenSize;","uniform float u_monoScreenAngle;","uniform float u_monoScreenSpread;","uniform float u_monoScreenShape;","uniform float u_monoScreenInvert;","uniform float u_scanlines;","uniform float u_scanlineCount;","uniform float u_scanlineSoftness;","uniform float u_chromaticAberration;","uniform float u_chromaticAngle;","uniform float u_crtCurvature;","uniform float u_digitalGlitch;","uniform float u_digitalGlitchColorSplit;","uniform float u_digitalGlitchLineTear;","uniform float u_digitalGlitchPixelate;","uniform float u_digitalGlitchBlockAmount;","uniform float u_digitalGlitchBlockDisplacement;","uniform float u_digitalGlitchBlockOpacity;","uniform float u_digitalGlitchSpeed;","uniform float u_engraving;","uniform float u_engravingSpacing;","uniform float u_engravingMinThickness;","uniform float u_engravingMaxThickness;","uniform float u_engravingAngle;","uniform float u_engravingContrast;","uniform float u_engravingSharpness;","uniform float u_engravingWave;","uniform float u_engravingWaveFrequency;","uniform float u_crosshatch;","uniform float u_crosshatchSpacing;","uniform float u_crosshatchThickness;","uniform float u_crosshatchAngle;","uniform float u_crosshatchContrast;","uniform float u_crosshatchEdges;","uniform float u_crosshatchLineWeight;","uniform float u_crosshatchWave;","uniform float u_crosshatchWaveFrequency;","uniform float u_paletteSize;","uniform vec3 u_palette0;","uniform vec3 u_palette1;","uniform vec3 u_palette2;","uniform vec3 u_palette3;","uniform vec3 u_palette4;","uniform vec3 u_palette5;","uniform float u_intensity;","uniform float u_compareEnabled;","uniform float u_comparePosition;","uniform float u_compareSoftness;","uniform float u_compareLineWidth;","const float PI = 3.14159265359;","float lumaOf(vec3 c){ return dot(c, vec3(0.2126, 0.7152, 0.0722)); }","float bt601Luma(vec3 c){ return dot(c, vec3(0.299, 0.587, 0.114)); }","float grainHash(vec2 p){ return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453123); }","float digitalHash(vec2 p){"," vec2 q = mod(floor(p), 251.0);"," float x = mod(q.x * q.x * 157.0 + q.x * 89.0, 251.0);"," float y = mod(q.y * q.y * 113.0 + q.y * 47.0, 251.0);"," float xy = mod(q.x * q.y * 71.0, 251.0);"," return mod(x + y + xy + 19.0, 251.0) / 251.0;","}","float colorSaturation(vec3 c){ return max(max(c.r, c.g), c.b) - min(min(c.r, c.g), c.b); }","vec2 clampUv(vec2 uv){ return clamp(uv, vec2(0.0), vec2(1.0)); }","vec2 applyCrtWarp(vec2 uv){"," vec2 centered = uv * 2.0 - 1.0;"," float curvature = clamp(u_crtCurvature, 0.0, 1.0) * 0.5;"," float dist = dot(centered, centered);"," centered *= 1.0 + curvature * dist;"," return centered * 0.5 + 0.5;","}","vec4 sampleSource(vec2 uv){ return texture2D(u_source, clampUv(uv)); }","vec4 sampleBlur(vec2 uv){ return texture2D(u_blurSource, clampUv(uv)); }","vec3 sampleBloom(vec2 uv){ return texture2D(u_bloomSource, clampUv(uv)).rgb; }","vec3 sampleKuwahara(vec2 uv){"," vec2 displayUv = uv * u_uvScale + u_uvOffset;"," return texture2D(u_kuwaharaSource, clampUv(displayUv)).rgb;","}","vec4 samplePrepared(vec2 uv){"," vec4 base = sampleSource(uv);","#ifdef HF_STAGE_BLUR"," float blur = clamp(u_blur, 0.0, 1.0);"," if (blur > 0.0 && u_blurReady > 0.5) base = mix(base, sampleBlur(uv), blur);","#endif","#ifdef HF_STAGE_KUWAHARA"," float kuwahara = clamp(u_kuwahara, 0.0, 1.0);"," if (kuwahara > 0.0 && u_kuwaharaReady > 0.5) {"," base.rgb = mix(base.rgb, sampleKuwahara(uv), kuwahara);"," }","#endif"," return base;","}","float tapeTrackingBand(float y, float center, float width){"," float offset = fract(y - center + 0.5) - 0.5;"," float triangle = max(0.0, 1.0 - abs(offset) / max(width, 0.0001));"," return triangle * triangle * (3.0 - 2.0 * triangle);","}","vec4 sampleMedia(vec2 uv){"," float pixel = clamp(u_pixelate, 0.0, 1.0);"," vec2 sampleUv = uv;","#ifdef HF_STAGE_PIXELATE"," if (pixel > 0.0) {"," float blockSize = mix(1.0, 48.0, pixel);"," vec2 cells = max(u_resolution / blockSize, vec2(1.0));"," sampleUv = (floor(clamp(uv, vec2(0.0), vec2(0.999999)) * cells) + 0.5) / cells;"," }","#endif","#ifdef HF_STAGE_TAPE"," float tapeDamage = clamp(u_tapeDamage, 0.0, 1.0);"," float tapeTracking = clamp(u_tapeTracking, 0.0, 1.0);"," float tapeNoise = clamp(u_tapeNoise, 0.0, 1.0);"," float tapeTime = u_effectTime * mix(0.0, 2.0, clamp(u_tapeSpeed, 0.0, 1.0));"," float tapeFrame = floor(tapeTime * 60.0);"," float tapeLine = floor(sampleUv.y * u_resolution.y * 0.5);"," float lineJitter = (digitalHash(vec2(tapeLine, floor(tapeFrame * 0.5))) - 0.5) * 1.8 * tapeNoise;"," float slowWobble = sin(sampleUv.y * 32.0 + tapeTime * 2.6) * 0.55;"," float headSwitch = smoothstep(0.88, 1.0, sampleUv.y) * sin(sampleUv.y * 240.0 + tapeTime * 8.0) * 4.0;"," float trackingShift = tapeTrackingBand(sampleUv.y, fract(0.08 + tapeTime * 0.083), 0.035);"," trackingShift -= tapeTrackingBand(sampleUv.y, fract(0.28 + tapeTime * 0.061), 0.03) * 0.8;"," trackingShift += tapeTrackingBand(sampleUv.y, fract(0.5 + tapeTime * 0.047), 0.04) * 0.75;"," trackingShift -= tapeTrackingBand(sampleUv.y, fract(0.72 + tapeTime * 0.037), 0.028) * 0.65;"," trackingShift += tapeTrackingBand(sampleUv.y, fract(0.89 + tapeTime * 0.029), 0.032) * 0.55;"," trackingShift *= tapeTracking * 48.0;"," float tapeShift = (lineJitter + slowWobble + headSwitch + trackingShift) * tapeDamage;","#endif"," float texelX = 1.0 / max(u_resolution.x * max(u_uvScale.x, 0.00001), 1.0);","#ifdef HF_STAGE_TAPE"," vec2 tapeUv = sampleUv + vec2(tapeShift * texelX, 0.0);","#else"," vec2 tapeUv = sampleUv;","#endif"," vec4 base = samplePrepared(tapeUv);","#ifdef HF_STAGE_TAPE"," if (tapeDamage > 0.0) {"," vec2 lumaStep = vec2(texelX * mix(1.0, 3.5, tapeDamage), 0.0);"," vec3 leftTape = samplePrepared(tapeUv - lumaStep).rgb;"," vec3 rightTape = samplePrepared(tapeUv + lumaStep).rgb;"," float tapeLuma = (bt601Luma(leftTape) + bt601Luma(base.rgb) * 2.0 + bt601Luma(rightTape)) * 0.25;"," vec3 centerChroma = base.rgb - vec3(bt601Luma(base.rgb));"," vec3 tapeColor = vec3(tapeLuma) + centerChroma;"," vec3 ghost = samplePrepared(tapeUv - vec2(texelX * 12.0, 0.0)).rgb;"," tapeColor = mix(tapeColor, ghost, 0.045 * tapeDamage);"," float fineNoise = digitalHash(floor(gl_FragCoord.xy) + vec2(tapeFrame * 17.0, tapeFrame * 3.0)) - 0.5;"," float band = digitalHash(vec2(floor(sampleUv.y * 92.0), floor(tapeFrame / 3.0)));"," float dropout = smoothstep(0.985, 1.0, band) * (digitalHash(vec2(floor(sampleUv.x * 18.0), tapeLine)) - 0.5);"," tapeColor += (fineNoise * 0.035 + dropout * 0.12) * tapeDamage * tapeNoise;"," base.rgb = mix(base.rgb, clamp(tapeColor, 0.0, 1.0), tapeDamage);"," }","#endif","#ifdef HF_STAGE_CHROMA_BLEED"," float chromaBleed = clamp(u_chromaBleed, 0.0, 1.0);"," if (chromaBleed > 0.0) {"," float radius = mix(1.0, 4.0, chromaBleed);"," vec2 stepUv = vec2(texelX * radius, 0.0);"," vec3 c0 = base.rgb;"," vec3 c1 = samplePrepared(tapeUv - stepUv).rgb;"," vec3 c2 = samplePrepared(tapeUv + stepUv).rgb;"," vec3 c3 = samplePrepared(tapeUv - stepUv * 2.0).rgb;"," vec3 c4 = samplePrepared(tapeUv + stepUv * 2.0).rgb;"," float centerLuma = lumaOf(base.rgb);"," vec3 blurredChroma = ((c0 - vec3(lumaOf(c0))) * 6.0 + (c1 - vec3(lumaOf(c1))) * 4.0 + (c2 - vec3(lumaOf(c2))) * 4.0 + (c3 - vec3(lumaOf(c3))) + (c4 - vec3(lumaOf(c4)))) / 16.0;"," base.rgb = mix(base.rgb, clamp(vec3(centerLuma) + blurredChroma, 0.0, 1.0), chromaBleed);"," }","#endif"," return base;","}","#ifdef HF_STAGE_CHROMATIC","vec4 sampleChromaticMedia(vec2 uv, vec4 center){"," float amount = clamp(u_chromaticAberration, 0.0, 1.0);"," if (amount <= 0.0) return center;"," float angle = clamp(u_chromaticAngle, 0.0, 1.0) * PI * 2.0;"," vec2 offset = vec2(cos(angle), sin(angle)) * amount * 0.02;"," vec4 positive = sampleMedia(uv + offset);"," vec4 negative = sampleMedia(uv - offset);"," vec3 split = vec3(positive.r, center.g, negative.b);"," return vec4(split, center.a);","}","#else","vec4 sampleChromaticMedia(vec2 uv, vec4 center){ return center; }","#endif","vec3 sampleDigitalSplit(vec2 uv, vec2 block, float time, float amount){"," float split = amount * 0.06;"," float direction = digitalHash(block * 0.4 + vec2(floor(time * 3.7), floor(time * 5.3)));"," vec2 axis = direction > 0.66 ? vec2(1.0, 0.0) : direction > 0.33 ? vec2(0.0, 1.0) : vec2(0.7071);"," vec4 center = sampleMedia(uv);"," return vec3(sampleMedia(uv + axis * split).r, center.g, sampleMedia(uv - axis * split).b);","}","#ifdef HF_STAGE_GLITCH","vec3 applyDigitalGlitch(vec2 uv, vec3 source){"," float amount = clamp(u_digitalGlitch, 0.0, 1.0);"," if (amount <= 0.0) return source;"," float colorSplit = clamp(u_digitalGlitchColorSplit, 0.0, 1.0) * 2.0;"," float lineTear = clamp(u_digitalGlitchLineTear, 0.0, 1.0) * 2.0;"," float pixelate = clamp(u_digitalGlitchPixelate, 0.0, 1.0) * 2.0;"," float blockAmount = clamp(u_digitalGlitchBlockAmount, 0.0, 1.0);"," float blockDisplacement = clamp(u_digitalGlitchBlockDisplacement, 0.0, 1.0) * 2.0;"," float blockOpacity = clamp(u_digitalGlitchBlockOpacity, 0.0, 1.0);"," float speed = clamp(u_digitalGlitchSpeed, 0.0, 1.0) * 2.0;"," float time = u_effectTime * speed;"," float blockCount = 8.0 + blockAmount * 60.0;"," vec2 block = floor(uv * blockCount);"," float randomA = digitalHash(block + vec2(floor(time * 7.3), floor(time * 11.1)));"," float randomB = digitalHash(block * 0.7 + vec2(17.3 + floor(time * 6.6), 29.1));"," float randomC = digitalHash(block + vec2(floor(time * 5.7) * 13.0, 41.0));"," float randomD = digitalHash(block * 1.3 + vec2(7.0, floor(time * 3.2) * 7.0));"," vec2 displaced = uv;"," if (blockDisplacement > 0.0 && blockOpacity > 0.0) {"," float threshold = 1.0 - blockDisplacement * 0.4;"," if (randomA > threshold) {"," displaced += vec2((randomB - 0.5) * blockDisplacement * 0.5, (randomC - 0.5) * blockDisplacement * 0.3);"," }"," if (randomD > 0.92 && blockDisplacement > 0.5) {"," displaced.x += (digitalHash(vec2(block.y, floor(time * 8.0))) - 0.5) * blockDisplacement;"," }"," displaced = mix(uv, displaced, blockOpacity);"," }"," if (lineTear > 0.0) {"," float row = floor(uv.y * (50.0 + lineTear * 150.0));"," float tearA = digitalHash(vec2(row * 7.3 + floor(time * 12.0 + row * 0.1) * 3.7, 13.0));"," float tearB = digitalHash(vec2(row * 13.7 + floor(time * 8.3) * 5.1, 31.0));"," if (tearA > 1.0 - lineTear * 0.5) displaced.x += (tearB - 0.5) * lineTear * 0.4;"," if (tearB > 0.95 && lineTear > 0.3) displaced.x += (tearA - 0.5) * lineTear * 0.8;"," }"," if (pixelate > 0.0) {"," float pixelRandom = digitalHash(block * 0.5 + vec2(floor(time * 4.9), 53.0));"," if (pixelRandom > 1.0 - pixelate * 0.35) {"," float cells = 4.0 + (1.0 - pixelRandom) * pixelate * 40.0;"," displaced = (floor(clampUv(displaced) * cells) + 0.5) / cells;"," }"," }"," displaced = clampUv(displaced);"," vec3 glitch = sampleDigitalSplit(displaced, block, time, colorSplit);"," if (blockDisplacement > 0.2 && blockOpacity > 0.0) {"," float corruption = digitalHash(block * 1.1 + vec2(floor(time * 11.9), 67.0));"," vec3 changed = glitch;"," if (corruption > 0.9) changed = 1.0 - glitch;"," else if (corruption > 0.85) changed = corruption > 0.875 ? glitch.gbr : glitch.brg;"," else if (corruption > 0.8) {"," float channel = digitalHash(block + vec2(73.0));"," if (channel > 0.66) changed.r = min(changed.r * 2.0, 1.0);"," else if (channel > 0.33) changed.g = min(changed.g * 2.0, 1.0);"," else changed.b = min(changed.b * 2.0, 1.0);"," }"," glitch = mix(glitch, changed, blockOpacity);"," }"," if (blockOpacity > 0.0) {"," float flash = digitalHash(block * 0.8 + vec2(floor(time * 14.7), 83.0));"," vec3 flashed = flash > 0.97 ? min(glitch * 1.8, vec3(1.0)) : flash > 0.94 ? glitch * 0.3 : glitch;"," glitch = mix(glitch, flashed, blockOpacity * 0.6);"," }"," if (lineTear > 0.1) {"," float interference = pow(sin(uv.y * (300.0 + randomA * 200.0) + time * 30.0) * 0.5 + 0.5, 6.0);"," glitch -= interference * 0.08 * lineTear;"," }"," return mix(source, clamp(glitch, 0.0, 1.0), amount);","}","#else","vec3 applyDigitalGlitch(vec2 uv, vec3 source){ return source; }","#endif","float dustMask(vec2 uv, float frameBucket){"," vec2 grid = vec2(128.0, 72.0);"," vec2 cell = floor(uv * grid);"," vec2 local = fract(uv * grid) - 0.5;"," float chance = grainHash(cell + frameBucket * 19.13);"," float radius = mix(0.05, 0.34, grainHash(cell + 7.1));"," return step(0.9975, chance) * (1.0 - smoothstep(radius, radius + 0.08, length(local)));","}","float screenDot(vec2 p, float ink, float angle, float sharpness){"," float c = cos(angle);"," float s = sin(angle);"," vec2 q = mat2(c, -s, s, c) * p;"," vec2 d = fract(q) - 0.5;"," float radius = sqrt(clamp(ink, 0.0, 1.0)) * 0.68;"," float edge = mix(0.16, 0.025, sharpness);"," return 1.0 - smoothstep(radius - edge, radius + edge, length(d));","}","vec3 paletteColor(float index);","float monoScreenMask(vec2 local, float radius, float shape, float softness){"," vec2 centered = local - 0.5;"," float distanceToInk = length(centered);"," if (shape > 0.5 && shape < 1.5) distanceToInk = max(abs(centered.x), abs(centered.y));"," if (shape > 1.5 && shape < 2.5) distanceToInk = abs(centered.x) + abs(centered.y);"," if (shape > 2.5 && shape < 3.5) distanceToInk = max(abs(centered.x) * 0.86 + centered.y * 0.5, -centered.y);"," if (shape > 3.5) distanceToInk = abs(centered.y);"," float shapeRadius = shape > 3.5 ? radius * 0.45 : radius;"," return 1.0 - smoothstep(shapeRadius, shapeRadius + softness, distanceToInk);","}","#ifdef HF_STAGE_MONO_SCREEN","vec3 applyMonoScreen(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float invert = step(0.5, u_monoScreenInvert);"," float coverage = mix(1.0 - lumaOf(source), lumaOf(source), invert);"," coverage = pow(clamp(coverage, 0.0, 1.0), mix(1.7, 0.58, clamp(u_monoScreenSpread, 0.0, 1.0)));"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float cellPx = mix(4.0, 18.0, clamp(u_monoScreenSize, 0.0, 1.0)) * scale;"," float angle = clamp(u_monoScreenAngle, 0.0, 1.0) * PI * 0.5;"," float cosine = cos(angle);"," float sine = sin(angle);"," vec2 point = mat2(cosine, -sine, sine, cosine) * gl_FragCoord.xy / max(cellPx, 1.0);"," float radius = sqrt(coverage) * 0.68;"," float inkMask = monoScreenMask(fract(point), radius, floor(u_monoScreenShape + 0.5), 0.035);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," return mix(source, mix(paper, ink, inkMask), amount);","}","#else","vec3 applyMonoScreen(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_ENGRAVING","vec3 applyEngraving(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float spacing = mix(3.0, 20.0, clamp(u_engravingSpacing, 0.0, 1.0));"," float minThickness = mix(0.0, 2.0, clamp(u_engravingMinThickness, 0.0, 1.0));"," float maxThickness = mix(1.0, 8.0, clamp(u_engravingMaxThickness, 0.0, 1.0));"," float angle = clamp(u_engravingAngle, 0.0, 1.0) * PI;"," vec2 alongAxis = vec2(cos(angle), sin(angle));"," vec2 acrossAxis = vec2(-alongAxis.y, alongAxis.x);"," float along = dot(gl_FragCoord.xy, alongAxis);"," float across = dot(gl_FragCoord.xy, acrossAxis);"," float frequency = mix(1.0, 10.0, clamp(u_engravingWaveFrequency, 0.0, 1.0));"," float wave = sin(along * frequency * 0.01);"," across += wave * clamp(u_engravingWave, 0.0, 1.0) * 3.0;"," float lineIndex = floor(across / max(spacing, 1.0));"," float lineDistance = abs(fract(across / max(spacing, 1.0)) - 0.5) * spacing;"," float contrast = mix(0.5, 2.0, clamp(u_engravingContrast, 0.0, 1.0));"," float darkness = 1.0 - pow(clamp(lumaOf(source), 0.0, 1.0), contrast);"," float variation = mix(0.88, 1.12, digitalHash(vec2(lineIndex, 73.0)));"," float thickness = mix(minThickness, maxThickness, darkness) * variation;"," float edge = mix(1.0, 0.3, clamp(u_engravingSharpness, 0.0, 1.0));"," float inkMask = 1.0 - smoothstep(max(thickness * 0.5 - edge, 0.0), thickness * 0.5 + edge, lineDistance);"," inkMask *= smoothstep(0.015, 0.12, darkness);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," return mix(source, mix(paper, ink, inkMask), amount);","}","#else","vec3 applyEngraving(vec3 source, float amount){ return source; }","#endif","float crosshatchLine(vec2 pixel, float angle, float spacing, float thickness, float seed){"," vec2 alongAxis = vec2(cos(angle), sin(angle));"," vec2 acrossAxis = vec2(-alongAxis.y, alongAxis.x);"," float along = dot(pixel, alongAxis);"," float across = dot(pixel, acrossAxis);"," float frequency = mix(1.0, 10.0, clamp(u_crosshatchWaveFrequency, 0.0, 1.0));"," across += sin(along * frequency * 0.02 + u_effectTime + seed) * clamp(u_crosshatchWave, 0.0, 1.0) * 5.0;"," float lineIndex = floor(across / max(spacing, 1.0));"," float distanceToLine = abs(fract(across / max(spacing, 1.0)) - 0.5) * spacing;"," float variation = mix(1.0, 0.5 + digitalHash(vec2(lineIndex, seed)), clamp(u_crosshatchLineWeight, 0.0, 1.0));"," float halfWidth = thickness * variation * 0.5;"," return 1.0 - smoothstep(max(halfWidth - 0.5, 0.0), halfWidth + 0.5, distanceToLine);","}","float crosshatchEdge(vec2 uv){"," vec2 texel = 1.0 / max(u_resolution * u_uvScale, vec2(1.0));"," float tl = lumaOf(sampleMedia(uv + texel * vec2(-1.0, -1.0)).rgb);"," float tc = lumaOf(sampleMedia(uv + texel * vec2( 0.0, -1.0)).rgb);"," float tr = lumaOf(sampleMedia(uv + texel * vec2( 1.0, -1.0)).rgb);"," float ml = lumaOf(sampleMedia(uv + texel * vec2(-1.0, 0.0)).rgb);"," float mr = lumaOf(sampleMedia(uv + texel * vec2( 1.0, 0.0)).rgb);"," float bl = lumaOf(sampleMedia(uv + texel * vec2(-1.0, 1.0)).rgb);"," float bc = lumaOf(sampleMedia(uv + texel * vec2( 0.0, 1.0)).rgb);"," float br = lumaOf(sampleMedia(uv + texel * vec2( 1.0, 1.0)).rgb);"," float gx = -tl - 2.0 * ml - bl + tr + 2.0 * mr + br;"," float gy = -tl - 2.0 * tc - tr + bl + 2.0 * bc + br;"," return length(vec2(gx, gy));","}","#ifdef HF_STAGE_CROSSHATCH","vec3 applyCrosshatch(vec2 uv, vec3 source, float amount){"," if (amount <= 0.0) return source;"," float spacing = mix(5.0, 30.0, clamp(u_crosshatchSpacing, 0.0, 1.0));"," float thickness = mix(1.0, 5.0, clamp(u_crosshatchThickness, 0.0, 1.0));"," float baseAngle = -clamp(u_crosshatchAngle, 0.0, 1.0) * PI;"," float contrast = mix(0.5, 2.0, clamp(u_crosshatchContrast, 0.0, 1.0));"," float darkness = 1.0 - pow(clamp(lumaOf(source), 0.0, 1.0), contrast);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," vec3 result = paper;"," float layer = crosshatchLine(gl_FragCoord.xy, baseAngle, spacing, thickness, 1.0) * smoothstep(0.2, 0.4, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle + PI * 0.5, spacing * 0.95, thickness * 0.9, 2.0) * smoothstep(0.4, 0.6, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle + PI * 0.25, spacing * 0.9, thickness * 0.8, 3.0) * smoothstep(0.6, 0.8, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle - PI * 0.25, spacing * 0.85, thickness * 0.7, 4.0) * smoothstep(0.75, 0.9, darkness);"," result = mix(result, ink, layer);"," result = mix(result, ink, smoothstep(0.9, 1.0, darkness) * 0.8);"," float edgeStrength = mix(0.0, 2.0, clamp(u_crosshatchEdges, 0.0, 1.0));"," float edge = smoothstep(0.1, 0.3, crosshatchEdge(uv)) * edgeStrength;"," result = mix(result, ink, clamp(edge, 0.0, 1.0));"," return mix(source, result, amount);","}","#else","vec3 applyCrosshatch(vec2 uv, vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_HALFTONE","vec3 applyHalftone(vec3 source, float amount){"," if (amount <= 0.0) return source;"," vec3 cmy = 1.0 - source;"," float k = min(cmy.r, min(cmy.g, cmy.b));"," vec3 inks = max(cmy - vec3(k * 0.72), 0.0);"," float scale = min(u_resolution.x, u_resolution.y) / 540.0;"," float cellPx = mix(5.0, 14.0, clamp(u_halftoneSize, 0.0, 1.0)) * max(scale, 0.25);"," vec2 p = gl_FragCoord.xy / max(cellPx, 1.0);"," float cyan = screenDot(p, inks.r, 0.261799, 0.78);"," float magenta = screenDot(p, inks.g, 1.308997, 0.78);"," float yellow = screenDot(p, inks.b, 0.0, 0.78);"," float blackInk = screenDot(p, k, 0.785398, 0.82);"," vec3 printColor = vec3(0.975, 0.962, 0.925);"," printColor *= mix(vec3(1.0), vec3(0.05, 0.79, 0.86), cyan);"," printColor *= mix(vec3(1.0), vec3(0.91, 0.08, 0.48), magenta);"," printColor *= mix(vec3(1.0), vec3(0.98, 0.83, 0.08), yellow);"," printColor *= mix(vec3(1.0), vec3(0.035), blackInk * 0.92);"," return mix(source, printColor, amount);","}","#else","vec3 applyHalftone(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_TWO_INK_PRINT","vec3 applyTwoInkPrint(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float sourceLuma = lumaOf(source);"," float darkness = 1.0 - sourceLuma;"," float warmBias = clamp(source.r - (source.g + source.b) * 0.5, -0.35, 0.35);"," float coolBias = clamp((source.g + source.b) * 0.5 - source.r, -0.35, 0.35);"," float redTone = smoothstep(0.08, 0.72, darkness) * (1.0 - 0.68 * smoothstep(0.66, 1.0, darkness));"," float tealTone = smoothstep(0.30, 0.92, darkness);"," float redCoverage = clamp(redTone + warmBias * 1.35 - coolBias * 0.35, 0.0, 1.0);"," float tealCoverage = clamp(tealTone + coolBias * 1.1 - warmBias * 0.45, 0.0, 1.0);"," float scale = min(u_resolution.x, u_resolution.y) / 540.0;"," float cellPx = mix(4.5, 12.0, clamp(u_twoInkPrintSize, 0.0, 1.0)) * max(scale, 0.25);"," vec2 p = gl_FragCoord.xy / max(cellPx, 1.0);"," float redDot = screenDot(p, redCoverage, 0.261799, 0.84);"," float tealDot = screenDot(p + vec2(0.12, -0.08), tealCoverage, 1.308997, 0.84);"," float paperNoise = grainHash(floor(gl_FragCoord.xy * 0.5)) - 0.5;"," vec3 paper = vec3(0.955, 0.910, 0.795) + paperNoise * 0.018;"," vec3 vermilion = vec3(0.88, 0.13, 0.075);"," vec3 teal = vec3(0.035, 0.285, 0.355);"," vec3 overprint = vec3(0.045, 0.055, 0.052);"," vec3 printColor = paper * (1.0 - redDot) * (1.0 - tealDot);"," printColor += vermilion * redDot * (1.0 - tealDot);"," printColor += teal * (1.0 - redDot) * tealDot;"," printColor += overprint * redDot * tealDot;"," return mix(source, clamp(printColor, 0.0, 1.0), amount);","}","#else","vec3 applyTwoInkPrint(vec3 source, float amount){ return source; }","#endif","vec3 paletteColor(float index){"," if (index < 0.5) return u_palette0;"," if (index < 1.5) return u_palette1;"," if (index < 2.5) return u_palette2;"," if (index < 3.5) return u_palette3;"," if (index < 4.5) return u_palette4;"," return u_palette5;","}","float bayer4(vec2 point){"," vec2 cell = mod(floor(point), 4.0);"," if (cell.y < 0.5) {"," if (cell.x < 0.5) return 0.5 / 16.0;"," if (cell.x < 1.5) return 8.5 / 16.0;"," if (cell.x < 2.5) return 2.5 / 16.0;"," return 10.5 / 16.0;"," }"," if (cell.y < 1.5) {"," if (cell.x < 0.5) return 12.5 / 16.0;"," if (cell.x < 1.5) return 4.5 / 16.0;"," if (cell.x < 2.5) return 14.5 / 16.0;"," return 6.5 / 16.0;"," }"," if (cell.y < 2.5) {"," if (cell.x < 0.5) return 3.5 / 16.0;"," if (cell.x < 1.5) return 11.5 / 16.0;"," if (cell.x < 2.5) return 1.5 / 16.0;"," return 9.5 / 16.0;"," }"," if (cell.x < 0.5) return 15.5 / 16.0;"," if (cell.x < 1.5) return 7.5 / 16.0;"," if (cell.x < 2.5) return 13.5 / 16.0;"," return 5.5 / 16.0;","}","float standardAsciiSample(float brightness, vec2 grid){"," if (brightness < 0.1) return 0.0;"," if (brightness < 0.2) return grid.x == 2.0 && grid.y == 5.0 ? 1.0 : 0.0;"," if (brightness < 0.3) return grid.x == 2.0 && (grid.y == 2.0 || grid.y == 4.0) ? 1.0 : 0.0;"," if (brightness < 0.4) return (grid.y == 2.0 || grid.y == 4.0) && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.5) {"," bool cross = (grid.x == 2.0 && grid.y >= 2.0 && grid.y <= 4.0) || (grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0);"," bool diagonals = (grid.x == 1.0 || grid.x == 3.0) && (grid.y == 2.0 || grid.y == 4.0);"," return cross || diagonals ? 1.0 : 0.0;"," }"," if (brightness < 0.6) {"," bool ring = ((grid.y == 2.0 || grid.y == 4.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 1.0 || grid.x == 3.0) && grid.y == 3.0);"," return ring ? 1.0 : 0.0;"," }"," bool outline = ((grid.y == 1.0 || grid.y == 5.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 0.0 || grid.x == 4.0) && grid.y >= 2.0 && grid.y <= 4.0) || ((grid.x == 1.0 || grid.x == 3.0) && grid.y >= 1.0 && grid.y <= 5.0);"," if (brightness < 0.7) return outline ? 1.0 : 0.0;"," if (brightness < 0.8) {"," bool slash = abs(grid.x - 2.0) == abs(grid.y - 3.0) && grid.x >= 1.0 && grid.x <= 3.0;"," return outline || slash ? 1.0 : 0.0;"," }"," if (brightness < 0.9) {"," bool loops = ((grid.y == 1.0 || grid.y == 3.0 || grid.y == 5.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 1.0 || grid.x == 3.0) && (grid.y == 2.0 || grid.y == 4.0));"," return loops ? 1.0 : 0.0;"," }"," return 1.0;","}","float asciiStyleSample(float style, float brightness, vec2 uv){"," vec2 grid = floor(uv * vec2(5.0, 7.0));"," if (style < 0.5) return standardAsciiSample(brightness, grid);"," if (style < 1.5) {"," float checker = mod(grid.x + grid.y, 2.0);"," float ruled = mod(grid.x, 2.0) == 0.0 || mod(grid.y, 2.0) == 0.0 ? 1.0 : 0.0;"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return checker == 0.0 ? 0.5 : 0.0;"," if (brightness < 0.375) return ruled * 0.6;"," if (brightness < 0.5) return checker == 0.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return ruled > 0.5 ? 1.0 : 0.3;"," if (brightness < 0.75) return checker == 0.0 ? 1.0 : 0.7;"," if (brightness < 0.875) return ruled > 0.5 ? 1.0 : 0.85;"," return 1.0;"," }"," if (style < 2.5) {"," if (brightness < 0.14) return 0.0;"," if (brightness < 0.28) return grid.x == 2.0 && grid.y == 1.0 ? 1.0 : 0.0;"," if (brightness < 0.42) return grid.x == 2.0 && grid.y == 5.0 ? 1.0 : 0.0;"," if (brightness < 0.56) return grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.7) return (grid.x == 2.0 && grid.y >= 2.0 && grid.y <= 4.0) || (grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0) ? 1.0 : 0.0;"," if (brightness < 0.84) return abs(grid.x - 2.0) == abs(grid.y - 3.0) && grid.y >= 2.0 && grid.y <= 4.0 ? 1.0 : 0.0;"," return grid.x == 1.0 || grid.x == 3.0 || grid.y == 2.0 || grid.y == 4.0 ? 1.0 : 0.0;"," }"," if (style < 3.5) return grid.y >= 6.0 - brightness * 7.0 ? 1.0 : 0.0;"," if (style < 4.5) {"," vec2 dots = floor(uv * vec2(2.0, 4.0));"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return dots.y == 3.0 ? 1.0 : 0.0;"," if (brightness < 0.375) return dots.y >= 2.0 ? 1.0 : 0.0;"," if (brightness < 0.5) return dots.y >= 1.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return dots.y >= 1.0 || dots.x == 1.0 ? 1.0 : 0.0;"," if (brightness < 0.75) return 1.0;"," if (brightness < 0.875) return mod(grid.x + grid.y, 2.0) < 1.5 ? 1.0 : 0.7;"," return 1.0;"," }"," if (style < 5.5) {"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return grid.x == 2.0 && grid.y == 3.0 ? 1.0 : 0.0;"," if (brightness < 0.375) return grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.5) return grid.x + grid.y == 5.0 || grid.x + grid.y == 6.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return grid.x == 2.0 ? 1.0 : 0.0;"," if (brightness < 0.75) return abs(grid.x - grid.y / 1.4) < 0.7 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.875) return grid.x == 2.0 || grid.y == 3.0 ? 1.0 : 0.0;"," return grid.x == 1.0 || grid.x == 3.0 || grid.y == 2.0 || grid.y == 4.0 ? 1.0 : 0.0;"," }"," if (style < 6.5) {"," bool top = grid.y == 0.0 && grid.x >= 1.0 && grid.x <= 3.0;"," bool topLeft = grid.x == 1.0 && grid.y <= 3.0;"," bool topRight = grid.x == 3.0 && grid.y <= 3.0;"," bool middle = grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0;"," bool bottomLeft = grid.x == 1.0 && grid.y >= 3.0;"," bool bottomRight = grid.x == 3.0 && grid.y >= 3.0;"," bool bottom = grid.y == 6.0 && grid.x >= 1.0 && grid.x <= 3.0;"," if (brightness < 0.1) return 0.0;"," if (brightness < 0.2) return topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.3) return top || topRight || middle || bottomLeft || bottom ? 1.0 : 0.0;"," if (brightness < 0.4) return top || topRight || middle || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.5) return topLeft || middle || topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.6) return top || topLeft || middle || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.7) return top || topLeft || middle || bottomLeft || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.8) return top || topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.9) return top || topLeft || topRight || middle || bottomLeft || bottomRight || bottom ? 1.0 : 0.0;"," return top || topLeft || topRight || middle || bottomRight || bottom ? 1.0 : 0.0;"," }"," float slash = grid.x - grid.y;"," float backslash = grid.x + grid.y;"," if (brightness < 0.16) return 0.0;"," if (brightness < 0.33) return mod(slash, 3.0) < 0.5 ? 1.0 : 0.0;"," if (brightness < 0.5) return mod(slash, 2.0) < 0.5 ? 1.0 : 0.0;"," bool diagonalA = mod(slash, 2.0) < 0.5;"," bool diagonalB = mod(backslash, 2.0) < 0.5;"," if (brightness < 0.66) return diagonalA || diagonalB ? 1.0 : 0.0;"," if (brightness < 0.83) return mod(slash, 1.5) < 0.5 || mod(backslash, 1.5) < 0.5 ? 1.0 : 0.2;"," return mod(slash, 1.0) < 0.6 || mod(backslash, 1.0) < 0.6 ? 1.0 : 0.5;","}","vec3 rgbToHsv(vec3 color){"," float maximum = max(max(color.r, color.g), color.b);"," float minimum = min(min(color.r, color.g), color.b);"," float delta = maximum - minimum;"," float hue = 0.0;"," if (delta > 0.00001) {"," if (maximum == color.r) hue = mod((color.g - color.b) / delta, 6.0);"," else if (maximum == color.g) hue = (color.b - color.r) / delta + 2.0;"," else hue = (color.r - color.g) / delta + 4.0;"," hue = fract(hue / 6.0);"," }"," return vec3(hue, maximum > 0.00001 ? delta / maximum : 0.0, maximum);","}","vec3 hsvToRgb(vec3 color){"," vec3 bands = abs(fract(color.xxx + vec3(0.0, 0.6666667, 0.3333333)) * 6.0 - 3.0);"," return color.z * mix(vec3(1.0), clamp(bands - 1.0, 0.0, 1.0), color.y);","}","vec4 sampleAdvancedCurve(float coordinate, float row){",` float position = clamp(coordinate, 0.0, 1.0) * ${qE};`," float lower = floor(position);",` float upper = min(lower + 1.0, ${qE});`,` float y = (row + 0.5) / ${zE};`,` vec4 before = texture2D(u_advanced, vec2((lower + 0.5) / ${_r}, y));`,` vec4 after = texture2D(u_advanced, vec2((upper + 0.5) / ${_r}, y));`," return mix(before, after, position - lower);","}","vec4 sampleHueCurve(float coordinate){",` float position = fract(coordinate) * ${_r};`," float lower = floor(position);",` float upper = mod(lower + 1.0, ${_r});`,` float y = 1.5 / ${zE};`,` vec4 before = texture2D(u_advanced, vec2((lower + 0.5) / ${_r}, y));`,` vec4 after = texture2D(u_advanced, vec2((upper + 0.5) / ${_r}, y));`," return mix(before, after, position - lower);","}","vec4 advancedConfig(float index){",` return texture2D(u_advanced, vec2((index + 0.5) / ${_r}, ${kF}));`,"}","vec3 wheelDirection(float hue){"," vec3 direction = hsvToRgb(vec3(fract(hue), 1.0, 1.0));"," direction -= vec3(lumaOf(direction));"," return direction / max(max(max(abs(direction.r), abs(direction.g)), abs(direction.b)), 0.0001);","}","vec3 applyTonalWheels(vec3 color){"," float luma = lumaOf(color);"," float shadows = 1.0 - smoothstep(0.0, 0.6, luma);"," float highlights = smoothstep(0.4, 1.0, luma);"," float midtones = max(0.0, 1.0 - shadows - highlights);"," float total = max(shadows + midtones + highlights, 0.0001);"," vec3 weights = vec3(shadows, midtones, highlights) / total;"," color += wheelDirection(u_shadowWheel.x) * u_shadowWheel.y * weights.x * 0.18;"," color += wheelDirection(u_midtoneWheel.x) * u_midtoneWheel.y * weights.y * 0.18;"," color += wheelDirection(u_highlightWheel.x) * u_highlightWheel.y * weights.z * 0.18;"," color += u_shadowWheel.z * weights.x * 0.25;"," color += u_midtoneWheel.z * weights.y * 0.25;"," color += u_highlightWheel.z * weights.z * 0.25;"," return color;","}","#ifdef HF_STAGE_RGB_CURVES","vec3 applyRgbCurves(vec3 color){"," if (u_rgbCurvesEnabled < 0.5) return color;"," vec3 master = vec3("," sampleAdvancedCurve(color.r, 0.0).a,"," sampleAdvancedCurve(color.g, 0.0).a,"," sampleAdvancedCurve(color.b, 0.0).a"," );"," return vec3("," sampleAdvancedCurve(master.r, 0.0).r,"," sampleAdvancedCurve(master.g, 0.0).g,"," sampleAdvancedCurve(master.b, 0.0).b"," );","}","#else","vec3 applyRgbCurves(vec3 color){ return color; }","#endif","float decodeSigned(float value){ return (value * 255.0 - 128.0) / 127.0; }","#ifdef HF_STAGE_HUE_CURVES","vec3 applyHueCurves(vec3 color){"," if (u_hueCurvesEnabled < 0.5) return color;"," vec3 hsv = rgbToHsv(clamp(color, 0.0, 1.0));"," vec3 curves = sampleHueCurve(hsv.x).rgb;"," float originalLuma = lumaOf(color);"," hsv.x = fract(hsv.x + decodeSigned(curves.r) * 0.5);"," hsv.y = clamp(hsv.y * max(0.0, 1.0 + decodeSigned(curves.g)), 0.0, 1.0);"," vec3 shifted = hsvToRgb(hsv);"," shifted += vec3(originalLuma - lumaOf(shifted) + decodeSigned(curves.b));"," return shifted;","}","#else","vec3 applyHueCurves(vec3 color){ return color; }","#endif","float softRangeMask(float value, float minimum, float maximum, float softness){"," if (value < minimum) {"," if (softness <= 0.0) return 0.0;"," return smoothstep(minimum - softness, minimum, value);"," }"," if (value > maximum) {"," if (softness <= 0.0) return 0.0;"," return 1.0 - smoothstep(maximum, maximum + softness, value);"," }"," return 1.0;","}","float hueRangeMask(float hue, float saturation, vec3 key){"," float distance = abs(fract(hue - key.x + 0.5) - 0.5) * 360.0;"," float range = key.y * 180.0;"," float softness = key.z * 180.0;"," if (range < 179.999 && saturation < 0.001) return 0.0;"," if (distance <= range) return 1.0;"," if (softness <= 0.0) return 0.0;"," return 1.0 - smoothstep(range, range + softness, distance);","}","vec3 applySecondary(vec3 color, float index){"," float base = index * 5.0;"," vec4 hueKey = advancedConfig(base);"," vec4 saturationKey = advancedConfig(base + 1.0);"," vec4 lumaKey = advancedConfig(base + 2.0);"," vec4 correction = advancedConfig(base + 3.0);"," vec4 tintCorrection = advancedConfig(base + 4.0);"," vec3 hsv = rgbToHsv(clamp(color, 0.0, 1.0));"," float luma = lumaOf(color);"," float mask = hueRangeMask(hsv.x, hsv.y, hueKey.rgb);"," mask *= softRangeMask(hsv.y, saturationKey.x, saturationKey.y, saturationKey.z * 0.5);"," mask *= softRangeMask(luma, lumaKey.x, lumaKey.y, lumaKey.z * 0.5);"," if (mask <= 0.0) return color;"," hsv.x = fract(hsv.x + decodeSigned(correction.x) * 0.5);"," vec3 corrected = hsvToRgb(hsv);"," float correctedLuma = lumaOf(corrected);"," corrected = mix(vec3(correctedLuma), corrected, max(0.0, 1.0 + decodeSigned(correction.y)));"," corrected += vec3(decodeSigned(correction.z));"," float temperature = decodeSigned(correction.w);"," float tint = decodeSigned(tintCorrection.x);"," corrected.r += temperature * 0.08 + tint * 0.04;"," corrected.b -= temperature * 0.08 - tint * 0.04;"," corrected.g -= tint * 0.08;"," return mix(color, corrected, mask);","}","vec3 applyAdvancedGrade(vec3 color){"," color = applyTonalWheels(color);"," color = applyRgbCurves(color);"," color = applyHueCurves(color);","#ifdef HF_STAGE_SECONDARIES"," if (u_secondaryCount > 0.5) color = applySecondary(color, 0.0);"," if (u_secondaryCount > 1.5) color = applySecondary(color, 1.0);"," if (u_secondaryCount > 2.5) color = applySecondary(color, 2.0);"," if (u_secondaryCount > 3.5) color = applySecondary(color, 3.0);","#endif"," return color;","}","vec3 sampleLut(float r, float g, float b){"," float size = max(u_lutSize, 2.0);"," float x = (r + b * size + 0.5) / max(u_lutTextureSize.x, 1.0);"," float y = (g + 0.5) / max(u_lutTextureSize.y, 1.0);"," return texture2D(u_lut, vec2(x, y)).rgb;","}","#ifdef HF_STAGE_LUT","vec3 applyLut(vec3 color){"," if (u_lutEnabled < 0.5) return color;"," float size = max(u_lutSize, 2.0);"," vec3 span = max(u_lutDomainMax - u_lutDomainMin, vec3(0.00001));"," vec3 scaled = clamp((color - u_lutDomainMin) / span, 0.0, 1.0) * (size - 1.0);"," vec3 lo = floor(scaled);"," vec3 hi = min(lo + 1.0, vec3(size - 1.0));"," vec3 f = scaled - lo;"," vec3 c000 = sampleLut(lo.r, lo.g, lo.b);"," vec3 c100 = sampleLut(hi.r, lo.g, lo.b);"," vec3 c010 = sampleLut(lo.r, hi.g, lo.b);"," vec3 c110 = sampleLut(hi.r, hi.g, lo.b);"," vec3 c001 = sampleLut(lo.r, lo.g, hi.b);"," vec3 c101 = sampleLut(hi.r, lo.g, hi.b);"," vec3 c011 = sampleLut(lo.r, hi.g, hi.b);"," vec3 c111 = sampleLut(hi.r, hi.g, hi.b);"," vec3 c00 = mix(c000, c100, f.r);"," vec3 c10 = mix(c010, c110, f.r);"," vec3 c01 = mix(c001, c101, f.r);"," vec3 c11 = mix(c011, c111, f.r);"," vec3 c0 = mix(c00, c10, f.g);"," vec3 c1 = mix(c01, c11, f.g);"," vec3 lutColor = mix(c0, c1, f.b);"," return mix(color, lutColor, clamp(u_lutIntensity, 0.0, 1.0));","}","#else","vec3 applyLut(vec3 color){ return color; }","#endif","vec3 applyPrimaryGrade(vec3 color){"," color *= pow(2.0, u_exposure);"," float y = lumaOf(color);"," float shadowMask = 1.0 - smoothstep(0.0, 0.65, y);"," float highlightMask = smoothstep(0.35, 1.0, y);"," color += u_shadows * 0.35 * shadowMask;"," color += u_highlights * 0.35 * highlightMask;"," float blackPoint = clamp(u_blacks * 0.18, -0.18, 0.18);"," float whitePoint = clamp(1.0 - u_whites * 0.18, 0.82, 1.18);"," color = (color - blackPoint) / max(whitePoint - blackPoint, 0.2);"," color.r += u_temperature * 0.08 + u_tint * 0.04;"," color.b -= u_temperature * 0.08 - u_tint * 0.04;"," color.g -= u_tint * 0.08;"," color = (color - 0.5) * max(0.0, 1.0 + u_contrast) + 0.5;"," float satLuma = lumaOf(color);"," float currentSat = clamp(colorSaturation(color), 0.0, 1.0);"," float skinLike = smoothstep(0.02, 0.18, color.r - color.g) * smoothstep(0.0, 0.16, color.g - color.b) * smoothstep(0.18, 0.82, satLuma);"," float vibranceWeight = (1.0 - currentSat * 0.72) * mix(1.0, 0.55, skinLike);"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_vibrance * vibranceWeight));"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_saturation));"," return color;","}","vec3 applyColorGrade(vec3 color){"," color = applyPrimaryGrade(color);"," color = applyAdvancedGrade(color);"," return clamp(applyLut(clamp(color, 0.0, 1.0)), 0.0, 1.0);","}","#ifdef HF_STAGE_DITHER","vec3 applyDither(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float pixelSize = mix(1.0, 5.0, clamp(u_ditherSize, 0.0, 1.0)) * scale;"," vec2 block = floor(gl_FragCoord.xy / max(pixelSize, 1.0));"," float levels = clamp(u_paletteSize, 2.0, 6.0);"," float index = floor(clamp(lumaOf(source) * (levels - 1.0) + bayer4(block), 0.0, levels - 1.0));"," return mix(source, paletteColor(index), amount);","}","#else","vec3 applyDither(vec3 source, float amount){ return source; }","#endif","vec2 asciiEdgeDirection(vec2 uv, vec2 stepUv){"," float topLeft = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, -stepUv.y)).rgb);"," float top = bt601Luma(sampleMedia(uv + vec2(0.0, -stepUv.y)).rgb);"," float topRight = bt601Luma(sampleMedia(uv + vec2(stepUv.x, -stepUv.y)).rgb);"," float left = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, 0.0)).rgb);"," float right = bt601Luma(sampleMedia(uv + vec2(stepUv.x, 0.0)).rgb);"," float bottomLeft = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, stepUv.y)).rgb);"," float bottom = bt601Luma(sampleMedia(uv + vec2(0.0, stepUv.y)).rgb);"," float bottomRight = bt601Luma(sampleMedia(uv + stepUv).rgb);"," float x = -topLeft - 2.0 * left - bottomLeft + topRight + 2.0 * right + bottomRight;"," float y = -topLeft - 2.0 * top - topRight + bottomLeft + 2.0 * bottom + bottomRight;"," return vec2(x, y);","}","vec2 rotateAsciiUv(vec2 uv, float angle){"," float cosine = cos(angle);"," float sine = sin(angle);"," vec2 centered = uv - 0.5;"," return vec2(centered.x * cosine - centered.y * sine, centered.x * sine + centered.y * cosine) + 0.5;","}","#ifdef HF_STAGE_ASCII","vec3 applyAscii(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float cellHeight = mix(4.0, 80.0, clamp(u_asciiSize, 0.0, 1.0)) * scale;"," vec2 cellSize = vec2(cellHeight);"," vec2 cell = floor(gl_FragCoord.xy / cellSize);"," vec2 cellVuv = (cell + 0.5) * cellSize / max(u_resolution, vec2(1.0));"," vec2 cellUv = (cellVuv - u_uvOffset) / u_uvScale;"," cellUv = applyCrtWarp(cellUv);"," vec3 cellColor = applyColorGrade(sampleMedia(cellUv).rgb);"," float brightness = bt601Luma(cellColor);"," float invert = step(0.5, u_asciiInvert);"," brightness = mix(brightness, 1.0 - brightness, invert);"," vec2 glyphUv = fract(gl_FragCoord.xy / cellSize);"," float rotation = clamp(u_asciiRotation, 0.0, 1.0);"," if (rotation > 0.0) {"," vec2 cellStepUv = cellSize / max(u_resolution * u_uvScale, vec2(1.0));"," vec2 edge = asciiEdgeDirection(cellUv, cellStepUv);"," if (length(edge) > 0.1) glyphUv = mix(glyphUv, rotateAsciiUv(glyphUv, atan(edge.y, edge.x)), rotation);"," }"," float ink = asciiStyleSample(floor(u_asciiStyle + 0.5), brightness, glyphUv);"," vec3 background = paletteColor(0.0);"," vec3 inkColor = mix(paletteColor(max(u_paletteSize - 1.0, 1.0)), cellColor, clamp(u_asciiColor, 0.0, 1.0));"," vec3 asciiColor = mix(background, inkColor, ink);"," return mix(source, asciiColor, amount);","}","#else","vec3 applyAscii(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_SCANLINES","vec3 applyScanlines(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float count = mix(50.0, 500.0, clamp(u_scanlineCount, 0.0, 1.0));"," float softness = clamp(u_scanlineSoftness, 0.0, 1.0);"," float wave = 0.5 + 0.5 * sin(v_uv.y * count * PI);"," float line = mix(1.0 - wave, pow(1.0 - wave, 2.2), softness);"," return source * (1.0 - line * amount);","}","#else","vec3 applyScanlines(vec3 source, float amount){ return source; }","#endif","void main(){"," vec2 uv = (v_uv - u_uvOffset) / u_uvScale;"," if (uv.x < 0.0 || uv.y < 0.0 || uv.x > 1.0 || uv.y > 1.0) {"," gl_FragColor = vec4(0.0);"," return;"," }"," vec4 originalSample = sampleSource(uv);"," uv = applyCrtWarp(uv);","#ifdef HF_STAGE_CRT"," vec2 displayEdge = smoothstep(vec2(0.0), vec2(0.006), uv) * (1.0 - smoothstep(vec2(0.994), vec2(1.0), uv));"," float displayMask = displayEdge.x * displayEdge.y;","#endif"," vec4 sampleColor = sampleMedia(uv);"," sampleColor = sampleChromaticMedia(uv, sampleColor);"," sampleColor.rgb = applyDigitalGlitch(uv, sampleColor.rgb);"," vec3 original = originalSample.rgb;"," vec3 color = mix(sampleColor.rgb, applyColorGrade(sampleColor.rgb), u_intensity);","#ifdef HF_STAGE_GRAIN"," float grainAmount = clamp(u_grain, 0.0, 1.0);"," if (grainAmount > 0.0) {"," float grainPixelSize = mix(1.0, 6.0, clamp(u_grainSize, 0.0, 1.0));"," vec2 grainCoord = floor(gl_FragCoord.xy / grainPixelSize) + vec2(u_grainSeed, u_grainSeed * 1.37);"," float grainBase = grainHash(grainCoord) - grainHash(grainCoord + vec2(19.19, 73.31));"," float grainFine = grainHash(gl_FragCoord.xy + vec2(u_grainSeed * 2.11, u_grainSeed * 0.71)) - 0.5;"," float grain = mix(grainBase * 0.7, grainBase + grainFine * 0.35, clamp(u_grainRoughness, 0.0, 1.0));"," float grainLuma = lumaOf(color);"," float grainMask = smoothstep(0.02, 0.55, grainLuma) * (1.0 - smoothstep(0.88, 1.0, grainLuma));"," color += grain * grainAmount * mix(0.025, 0.08, grainMask);"," }","#endif","#ifdef HF_STAGE_FILM_ARTIFACTS"," float filmArtifacts = clamp(u_filmArtifacts, 0.0, 1.0);"," if (filmArtifacts > 0.0) {"," float filmFrame = floor(u_grainSeed);"," float dust = dustMask(v_uv, floor(filmFrame / 3.0));"," float dustTone = grainHash(vec2(floor(filmFrame / 3.0), 8.0));"," color = mix(color, vec3(dustTone > 0.5 ? 0.95 : 0.02), dust * 0.72 * filmArtifacts);"," float scratchBucket = floor(filmFrame / 12.0);"," float scratchX = grainHash(vec2(scratchBucket, 4.2));"," float scratchLife = step(0.78, grainHash(vec2(scratchBucket, 8.4)));"," float scratch = (1.0 - smoothstep(0.0, 1.4 / max(u_resolution.x, 1.0), abs(v_uv.x - scratchX))) * scratchLife;"," color = mix(color, vec3(0.94, 0.88, 0.76), scratch * 0.28 * filmArtifacts);"," }","#endif"," color = applyMonoScreen(clamp(color, 0.0, 1.0), clamp(u_monoScreen, 0.0, 1.0));"," color = applyEngraving(clamp(color, 0.0, 1.0), clamp(u_engraving, 0.0, 1.0));"," color = applyCrosshatch(uv, clamp(color, 0.0, 1.0), clamp(u_crosshatch, 0.0, 1.0));"," color = applyHalftone(clamp(color, 0.0, 1.0), clamp(u_halftone, 0.0, 1.0));"," color = applyTwoInkPrint(clamp(color, 0.0, 1.0), clamp(u_twoInkPrint, 0.0, 1.0));"," color = applyDither(clamp(color, 0.0, 1.0), clamp(u_dither, 0.0, 1.0));"," color = applyAscii(clamp(color, 0.0, 1.0), clamp(u_ascii, 0.0, 1.0));","#ifdef HF_STAGE_BLOOM"," if (u_bloomReady > 0.5 && u_bloom > 0.0) color += sampleBloom(uv) * u_bloom;","#endif"," color = applyScanlines(clamp(color, 0.0, 1.0), clamp(u_scanlines, 0.0, 1.0));","#ifdef HF_STAGE_VIGNETTE"," vec2 vignetteAspect = u_resolution.x > u_resolution.y"," ? vec2(u_resolution.x / max(u_resolution.y, 1.0), 1.0)"," : vec2(1.0, u_resolution.y / max(u_resolution.x, 1.0));"," vec2 vignetteUv = abs((v_uv - vec2(0.5)) * 2.0) * vignetteAspect;"," float vignettePower = mix(8.0, 1.8, clamp(u_vignetteRoundness * 0.5 + 0.5, 0.0, 1.0));"," float vignetteDistance = pow(pow(vignetteUv.x, vignettePower) + pow(vignetteUv.y, vignettePower), 1.0 / vignettePower);"," float vignetteMidpoint = mix(0.22, 1.08, clamp(u_vignetteMidpoint, 0.0, 1.0));"," float vignetteFeather = mix(0.08, 0.72, clamp(u_vignetteFeather, 0.0, 1.0));"," float vignetteMask = smoothstep(vignetteMidpoint, vignetteMidpoint + vignetteFeather, vignetteDistance);"," color *= 1.0 - vignetteMask * clamp(u_vignette, 0.0, 1.0) * 0.75;","#endif","#ifdef HF_STAGE_CRT"," float warpActive = step(0.0001, u_crtCurvature);"," color *= mix(1.0, displayMask, warpActive);","#endif"," vec3 graded = clamp(color, 0.0, 1.0);","#ifdef HF_STAGE_COMPARE"," if (u_compareEnabled > 0.5) {"," float pos = clamp(u_comparePosition, 0.0, 1.0);"," float softness = max(u_compareSoftness, 0.00001);"," float afterMask = smoothstep(pos - softness, pos + softness, v_uv.x);"," vec3 splitColor = mix(original, graded, afterMask);"," float lineMask = 0.0;"," if (u_compareLineWidth > 0.0) {"," float lineWidth = max(u_compareLineWidth / max(u_resolution.x, 1.0), 0.00001);"," lineMask = 1.0 - smoothstep(lineWidth, lineWidth * 1.8, abs(v_uv.x - pos));"," }"," gl_FragColor = vec4(mix(splitColor, vec3(1.0), lineMask * 0.82), sampleColor.a);"," return;"," }","#endif"," gl_FragColor = vec4(graded, sampleColor.a);","}"].join(`
|
|
373
|
-
`),
|
|
374
|
-
`);return n}var
|
|
375
|
-
`).join(""),
|
|
376
|
-
`),
|
|
377
|
-
`),
|
|
378
|
-
`),KE=zd.map(e=>`${e}[${dl}]`).join(", ");function Yn(e){return Ce(e)&&zd.includes(e.localName)}function OF(e){let t=window.getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function YE(e,t,n){let r=e.createShader(n);return r?(e.shaderSource(r,t),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:($("runtime.colorGrading.compileShader",e.getShaderInfoLog(r)),e.deleteShader(r),null)):null}function Kl(e,t=ov){let n=YE(e,LF,e.VERTEX_SHADER),r=YE(e,t,e.FRAGMENT_SHADER);if(!n||!r)return n&&e.deleteShader(n),r&&e.deleteShader(r),null;let o=e.createProgram();return o?(e.attachShader(o,n),e.attachShader(o,r),e.linkProgram(o),e.deleteShader(n),e.deleteShader(r),e.getProgramParameter(o,e.LINK_STATUS)?o:($("runtime.colorGrading.linkProgram",e.getProgramInfoLog(o)),e.deleteProgram(o),null)):null}function Vl(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 HF(e,t){let n=Kl(e,PF);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 GF(e,t){let n=Kl(e,DF);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 BF(e,t){let n=Kl(e,IF);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 oa(e,t=e.UNSIGNED_BYTE,n=e.LINEAR){let r=Vl(e,n,t),o=e.createFramebuffer();if(!r||!o)return r&&e.deleteTexture(r),o&&e.deleteFramebuffer(o),null;e.bindFramebuffer(e.FRAMEBUFFER,o),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0);let i=e.checkFramebufferStatus(e.FRAMEBUFFER);return e.bindFramebuffer(e.FRAMEBUFFER,null),i!==e.FRAMEBUFFER_COMPLETE?(e.deleteTexture(r),e.deleteFramebuffer(o),null):{texture:r,framebuffer:o,type:t,width:1,height:1}}function ql(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 em(e,t,n){let r=[];for(let o of n){let i=e.getUniformLocation(t,`u_${o}`);i!==null&&r.push([o,i])}return r}function XE(e,t){for(let n of t)n&&e.deleteTexture(n)}function sv(e,t){let n=Kl(e,t+ov);return n?{program:n,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),blurSource:e.getUniformLocation(n,"u_blurSource"),bloomSource:e.getUniformLocation(n,"u_bloomSource"),kuwaharaSource:e.getUniformLocation(n,"u_kuwaharaSource"),lut:e.getUniformLocation(n,"u_lut"),advanced:e.getUniformLocation(n,"u_advanced"),resolution:e.getUniformLocation(n,"u_resolution"),uvScale:e.getUniformLocation(n,"u_uvScale"),uvOffset:e.getUniformLocation(n,"u_uvOffset"),blurReady:e.getUniformLocation(n,"u_blurReady"),bloomReady:e.getUniformLocation(n,"u_bloomReady"),kuwaharaReady:e.getUniformLocation(n,"u_kuwaharaReady"),lutEnabled:e.getUniformLocation(n,"u_lutEnabled"),lutSize:e.getUniformLocation(n,"u_lutSize"),lutTextureSize:e.getUniformLocation(n,"u_lutTextureSize"),lutDomainMin:e.getUniformLocation(n,"u_lutDomainMin"),lutDomainMax:e.getUniformLocation(n,"u_lutDomainMax"),lutIntensity:e.getUniformLocation(n,"u_lutIntensity"),shadowWheel:e.getUniformLocation(n,"u_shadowWheel"),midtoneWheel:e.getUniformLocation(n,"u_midtoneWheel"),highlightWheel:e.getUniformLocation(n,"u_highlightWheel"),rgbCurvesEnabled:e.getUniformLocation(n,"u_rgbCurvesEnabled"),hueCurvesEnabled:e.getUniformLocation(n,"u_hueCurvesEnabled"),secondaryCount:e.getUniformLocation(n,"u_secondaryCount"),adjustUniforms:em(e,n,fl),detailUniforms:em(e,n,jd),effectUniforms:em(e,n,Kd),grainSeed:e.getUniformLocation(n,"u_grainSeed"),effectTime:e.getUniformLocation(n,"u_effectTime"),paletteSize:e.getUniformLocation(n,"u_paletteSize"),palette0:e.getUniformLocation(n,"u_palette0"),palette1:e.getUniformLocation(n,"u_palette1"),palette2:e.getUniformLocation(n,"u_palette2"),palette3:e.getUniformLocation(n,"u_palette3"),palette4:e.getUniformLocation(n,"u_palette4"),palette5:e.getUniformLocation(n,"u_palette5"),intensity:e.getUniformLocation(n,"u_intensity"),compareEnabled:e.getUniformLocation(n,"u_compareEnabled"),comparePosition:e.getUniformLocation(n,"u_comparePosition"),compareSoftness:e.getUniformLocation(n,"u_compareSoftness"),compareLineWidth:e.getUniformLocation(n,"u_compareLineWidth")}:null}function UF(e){let t=e.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});if(!t)return null;let n=Yl(t);return n?{gl:t,program:n}:null}function Yl(e){let t=sv(e,"");if(!t)return null;let n=WF(e);return n?{...n,shaders:new Map([["",t]]),failedStageDefines:new Set}:(e.deleteProgram(t.program),null)}function WF(e){let t=Vl(e),n=Vl(e,e.NEAREST),r=Vl(e,e.NEAREST);if(!t||!n||!r)return XE(e,[t,n,r]),null;let o=e.createBuffer();return o?(e.bindBuffer(e.ARRAY_BUFFER,o),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),e.STATIC_DRAW),{texture:t,lutTexture:n,advancedTexture:r,advancedSignature:null,quad:o}):(XE(e,[t,n,r]),null)}function lv(e,t,n,r){let o=uv(e,t,NF(n,r));return e.useProgram(o.program),o}function uv(e,t,n){let r=t.failedStageDefines.has(n)?jE:n;if(t.failedStageDefines.has(r))throw new Error("Color grading shader failed to compile");let o=t.shaders.get(r);if(o)return t.shaders.delete(r),t.shaders.set(r,o),o;let i=sv(e,r);if(!i)return t.failedStageDefines.add(r),uv(e,t,jE);if(t.shaders.size>=FF)for(let[a,l]of t.shaders){e.deleteProgram(l.program),t.shaders.delete(a);break}return t.shaders.set(r,i),i}function VF(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function $F(e){if(!VF(e))return{...Rr};let t=(n,r,o,i)=>{let a=typeof n=="number"?n:Number(n);return Math.min(i,Math.max(o,Number.isFinite(a)?a:r))};return{enabled:e.enabled===!0,position:t(e.position,Rr.position,0,1),softness:t(e.softness,Rr.softness,0,.25),lineWidth:t(e.lineWidth,Rr.lineWidth,0,12)}}function cv(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 Xl(e){return e instanceof Error?e.message:"LUT failed to load"}function qF(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 dv(e){let t=e.id||!nn(e)&&e.currentSrc||e.getAttribute("src")||`${e.tagName}:${Array.prototype.indexOf.call(e.parentNode?.children??[],e)}`;return qF(t)}function om(e){let t=cv(e);if("error"in t)return{state:"error",message:t.error};let n=mn.get(t.href);if(n)return n;let r=fetch(t.href,{credentials:"same-origin"}).then(i=>{if(!i.ok)throw new Error(`Failed to load LUT (${i.status})`);return i.text()}).then(i=>Dy(i,{maxSize:ll})),o={state:"pending",promise:r};for(;mn.size>=_F;){let i=mn.keys().next().value;if(!i)break;mn.delete(i)}return mn.set(t.href,o),r.then(i=>{mn.get(t.href)===o&&mn.set(t.href,{state:"ready",lut:i})},i=>{mn.get(t.href)===o&&mn.set(t.href,{state:"error",message:Xl(i)})}),o}function JE(e,t,n){if(e.lut?.src===t)return e.lut;let r=Od(n),{gl:o,program:i}=e;try{return fv(o,i.lutTexture,r),e.lut={src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height},e.lutError=null,e.lutLoadingSrc=null,e.lut}catch(a){return e.lut=null,e.lutError=Xl(a),e.lutLoadingSrc=null,$("runtime.colorGrading.uploadLut",a),null}}async function zF(e){let t=om(e);if(t.state==="ready")return t.lut;if(t.state==="pending")return t.promise;throw new Error(t.message)}function fv(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 jF(e,t,n){let r=Od(n),{gl:o,program:i}=e;return fv(o,i.lutTexture,r),{src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height}}function Xt(e,t){e.deleteTexture(t.texture),e.deleteFramebuffer(t.framebuffer)}function im(e){let t=e.effectTargets;t&&(e.gl.deleteProgram(t.blurProgram.program),Xt(e.gl,t.scratch),Xt(e.gl,t.blur),t.bloom&&Xt(e.gl,t.bloom),e.effectTargets=null)}function am(e){let t=e.kuwaharaTargets;t&&(e.gl.deleteProgram(t.horizontalProgram.program),e.gl.deleteProgram(t.resolveProgram.program),Xt(e.gl,t.moments),Xt(e.gl,t.output),e.kuwaharaTargets=null)}function ra(e,t=!1){im(e),am(e),KF(e.gl,e.program),t&&e.gl.getExtension("WEBGL_lose_context")?.loseContext()}function KF(e,t){e.deleteTexture(t.texture),e.deleteTexture(t.lutTexture),e.deleteTexture(t.advancedTexture),e.deleteBuffer(t.quad);for(let n of t.shaders.values())e.deleteProgram(n.program);t.shaders.clear()}function YF(e){let t=Yl(e.gl);return t?(ra(e),e.program=t,e.lut=null,e.lutLoadingSrc=null,e.lutError=null,e.effectError=null,!0):!1}function XF(e,t){let n=Yl(t.gl);return n?(ra(e),e.gl=t.gl,e.glCanvas=t.canvas,e.program=n,e.lut=null,e.lutLoadingSrc=null,e.lutError=null,e.effectError=null,!0):!1}function JF(e,t){e.contextLost=!XF(e,t),e.drawError=e.contextLost?"WebGL context rebuild failed":null,e.contextLost?zl(e):pt(e)}function QF(e,t){e.borderlessFrame!==t&&mv(e),e.borderlessFrame=t,t.style.borderStyle="none"}function mv(e){let t=e.borderlessFrame;t&&(e.borderlessFrame=null,t.style.borderStyle=window.getComputedStyle(e.element).borderStyle)}function zl(e){if(mv(e),!e.sourceHidden)return;e.element.removeAttribute(Er);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 ZF(e){if(e.effectTargets)return e.effectTargets;let{gl:t}=e,n=HF(t,e.program.quad),r=oa(t),o=oa(t);return!n||!r||!o?(n&&t.deleteProgram(n.program),r&&Xt(t,r),o&&Xt(t,o),e.effectError="Framebuffer effects unavailable",null):(e.effectError=null,e.effectTargets={blurProgram:n,scratch:r,blur:o,bloom:null},e.effectTargets)}function eP(e,t){return t.bloom||(t.bloom=oa(e.gl),e.effectError=t.bloom?null:"Framebuffer effects unavailable"),t.bloom}function QE(e){let t=e.effectTargets;t?.bloom&&(Xt(e.gl,t.bloom),t.bloom=null)}function tP(e){if(e.kuwaharaTargets)return e.kuwaharaTargets;let{gl:t}=e,n=t.getExtension("OES_texture_half_float"),r=t.getExtension("EXT_color_buffer_half_float");if(!n||!r)return e.effectError="Kuwahara requires half-float framebuffer support",null;let o=GF(t,e.program.quad),i=BF(t,e.program.quad),a=oa(t,n.HALF_FLOAT_OES,t.NEAREST),l=oa(t);return!o||!i||!a||!l?(nP(t,o,i,a,l),e.effectError="Kuwahara framebuffer effects unavailable",null):(e.kuwaharaTargets={horizontalProgram:o,resolveProgram:i,moments:a,output:l},e.kuwaharaTargets)}function nP(e,t,n,r,o){t&&e.deleteProgram(t.program),n&&e.deleteProgram(n.program),r&&Xt(e,r),o&&Xt(e,o)}function pv(e,t,n,r,o){let i=Math.max(1,Math.ceil(r)),a=Math.max(1,Math.ceil(o));return ql(e,t,i,a),ql(e,n,i,a),{width:i,height:a}}function jl(e,t,n,r,o,i,a,l=!1,s=-1){e.bindFramebuffer(e.FRAMEBUFFER,r.framebuffer),e.viewport(0,0,o.width,o.height),e.useProgram(t.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.uniform1i(t.source,0),e.uniform2f(t.resolution,o.width,o.height),e.uniform2f(t.direction,i.x,i.y),e.uniform1f(t.radius,a),e.uniform1f(t.bloomPass,l?1:0),e.uniform1f(t.threshold,s),ia(e,t)}function rP(e,t,n,r,o,i,a){let l=pv(e,t.scratch,r,o/2,i/2),s=a/2;jl(e,t.blurProgram,n,t.scratch,l,{x:1,y:0},s,!0,.5),jl(e,t.blurProgram,t.scratch.texture,r,l,{x:0,y:1},s,!0)}function oP(e,t,n,r,o,i,a){let l=n;for(let s=0;s<Math.max(1,Math.floor(a));s++)jl(e,t.blurProgram,l,t.scratch,o,{x:1,y:0},i),jl(e,t.blurProgram,t.scratch.texture,r,o,{x:0,y:1},i),l=r.texture}function ia(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 iP(e,t,n,r,o,i,a,l){ql(e,t.moments,o.width,o.height),ql(e,t.output,o.width,o.height);let s=t.horizontalProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.moments.framebuffer),e.viewport(0,0,o.width,o.height),e.useProgram(s.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.activeTexture(e.TEXTURE1),e.bindTexture(e.TEXTURE_2D,r),e.uniform1i(s.source,0),e.uniform1i(s.blurSource,1),e.uniform2f(s.texel,1/o.width,1/o.height),e.uniform2f(s.uvScale,i.scaleX,i.scaleY),e.uniform2f(s.uvOffset,i.offsetX,i.offsetY),e.uniform1f(s.blurReady,a?1:0),e.uniform1f(s.blur,l.blur),e.uniform1f(s.radius,l.kuwaharaRadius),ia(e,s);let c=t.resolveProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.output.framebuffer),e.useProgram(c.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.moments.texture),e.uniform1i(c.moments,0),e.uniform2f(c.texel,1/o.width,1/o.height),e.uniform1f(c.radius,l.kuwaharaRadius),e.uniform1f(c.sharpness,l.kuwaharaSharpness),e.uniform1f(c.saturation,l.kuwaharaSaturation),ia(e,c)}function aP(e,t,n,r){if(n<=0)return!1;let o=pv(e.gl,t.scratch,t.blur,r.width,r.height);return oP(e.gl,t,e.program.texture,t.blur,o,.75+Math.pow(n,1.35)*32,n>.55?3:2),!0}function sP(e,t,n,r,o,i){if(n<=0)return QE(e),null;i||QE(e);let a=i?eP(e,t):t.blur;return a?(rP(e.gl,t,e.program.texture,a,o.width,o.height,r),a.texture):null}function lP(e,t,n,r){let{program:o}=e,i=t.effects.blur,a=t.effects.bloom;if(i<=0&&a<=0)return e.effectTargets&&r&&im(e),{blurReady:!1,bloomReady:!1,blurTexture:o.texture,bloomTexture:o.texture};let l=ZF(e);if(!l)return{blurReady:!1,bloomReady:!1,blurTexture:o.texture,bloomTexture:o.texture};let s=aP(e,l,i,n),c=sP(e,l,a,t.effects.bloomRadius,n,s);return{blurReady:s,bloomReady:c!==null,blurTexture:l.blur.texture,bloomTexture:c??o.texture}}function uP(e,t,n,r,o,i,a){let l=t.effects.kuwahara;if(l<=0&&!i)return e.kuwaharaTargets&&a&&am(e),{kuwaharaReady:!1,kuwaharaTexture:e.program.texture};let s=tP(e);return!s||l<=0?{kuwaharaReady:!1,kuwaharaTexture:s?.output.texture??e.program.texture}:(iP(e.gl,s,e.program.texture,e.effectTargets?.blur.texture??e.program.texture,n,r,o,t.effects),{kuwaharaReady:!0,kuwaharaTexture:s.output.texture})}function hv(e,t,n,r,o={}){let i=o.releaseIdleTargets??!0;e.effectError=null;let a=lP(e,t,n,i),l=uP(e,t,n,r,a.blurReady,o.preserveKuwahara??!1,i);return{...a,...l}}function cP(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=cv(t);if("error"in r)return e.lut=null,e.lutLoadingSrc=null,e.lutError=r.error,null;if(e.lut?.src===r.href)return e.lut;e.lut=null;let o=om(t);return o.state==="ready"?JE(e,r.href,o.lut):o.state==="error"?(e.lutError=o.message,e.lutLoadingSrc=null,null):(e.lutLoadingSrc!==r.href&&(e.lutLoadingSrc=r.href,e.lutError=null,o.promise.then(i=>{e.destroyed||e.grading.lut?.src.trim()!==t||(JE(e,r.href,i),pt(e))},i=>{e.destroyed||e.grading.lut?.src.trim()!==t||(e.lut=null,e.lutError=Xl(i),e.lutLoadingSrc=null,pt(e))})),null)}function na(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&&Yn(n))return n;try{let r=document.querySelector(t);return r&&Yn(r)?r:null}catch{return null}}if(e.hfId){let t=document.querySelector(`[data-hf-id="${CSS.escape(e.hfId)}"]`);if(t&&Yn(t))return t}if(e.id){let t=document.getElementById(e.id);if(t&&Yn(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&&Yn(r)?r:null}catch{return null}}function sm(e){let[t,n]=Ne(e)?[e.videoWidth,e.videoHeight]:Qe(e)?[e.naturalWidth,e.naturalHeight]:nn(e)?[e.width,e.height]:[0,0];return t>0&&n>0?{width:t,height:n}:null}function gv(e){return Ne(e)&&e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||Qe(e)&&!e.complete?!1:sm(e)!==null}function dP(e){let t=Nt(e);return t&&gv(t)?t:null}function tm(e){return OF(e)||fP(e)}function fP(e){if(!Ne(e))return!1;let t=Nt(e);if(!t)return!1;let n=window.getComputedStyle(t);return n.display!=="none"&&n.visibility!=="hidden"}function mP(e){return Qe(e)&&e.classList.contains("__render_frame__")}function pP(e,t){t.parentNode&&t.nextSibling!==e.canvas&&t.parentNode.insertBefore(e.canvas,t.nextSibling)}var ZE=new WeakMap;function bv(e,t){if(!Qe(e)||window.origin!=="null"||e.crossOrigin!==null||!/^https?:/i.test(e.currentSrc))return e;let n=ZE.get(e);if(n?.image.src!==e.currentSrc){let r={image:e.ownerDocument.createElement("img"),waiting:new Set},o=()=>{let i=[...r.waiting];r.waiting.clear(),i.forEach(pt)};r.image.crossOrigin="anonymous",r.image.addEventListener("load",o,{once:!0}),r.image.addEventListener("error",o,{once:!0}),r.image.src=e.currentSrc,ZE.set(e,n=r)}return n.image.complete?n.image.naturalWidth>0?n.image:e:(t&&n.waiting.add(t),null)}function yv(e){if(Ne(e)){let t=dP(e);if(t)return t}return gv(e)?e:null}function ev(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 hP(e){let t=e.trim().split(/\s+/).filter(Boolean),n=.5,r=.5;for(let o=0;o<t.length;o++){let i=t[o]??"",a=ev(i,"x"),l=ev(i,"y");if(a!==null&&(i==="left"||i==="right"||i.endsWith("%")&&o===0)){n=a;continue}if(l!==null&&(i==="top"||i==="bottom"||i.endsWith("%")&&o>0)){r=l;continue}}return{x:n,y:r}}function xv(e,t,n,r,o,i){if(e<=0||t<=0||n<=0||r<=0)return{scaleX:1,scaleY:1,offsetX:0,offsetY:0};let a=o||"fill",l=e,s=t;if(a==="contain"||a==="cover"||a==="scale-down"){let f=a==="cover"?Math.max(e/n,t/r):Math.min(e/n,t/r);l=n*f,s=r*f,a==="scale-down"&&l>n&&s>r&&(l=n,s=r)}else a==="none"&&(l=n,s=r);let c=hP(i||"center"),d=(e-l)*c.x/e,m=(t-s)*c.y/t;return{scaleX:l/e,scaleY:s/t,offsetX:d,offsetY:m}}function gP(e,t){window.getComputedStyle(t).position==="static"&&(e.touchedParent||(e.touchedParent=t,e.parentInlinePosition=t.style.position||null),t.style.position="relative")}function tv(e,t){return Math.max(0,Math.round(e>0?e:t))}function bP(e,t){let{element:n,canvas:r}=e,o=n.parentElement;o&&gP(e,o);let i=window.getComputedStyle(t);y0(r.style,i),r.style.borderStyle="none",r.style.pointerEvents="none",r.style.position="absolute",r.style.inset="auto",r.style.left=`${n.offsetLeft}px`,r.style.top=`${n.offsetTop}px`,r.style.right="auto",r.style.bottom="auto",r.style.width=`${n.offsetWidth}px`,r.style.height=`${n.offsetHeight}px`,r.style.display="block",r.style.opacity=e.sourceOpacityForCanvas,r.style.visibility=e.sourceVisibleForCanvas?"visible":"hidden";let a=n.getBoundingClientRect(),l=tv(n.offsetWidth,a.width),s=tv(n.offsetHeight,a.height);if(l<=0||s<=0)return r.style.display="none",null;let c=Math.max(1,window.devicePixelRatio||1),d=Math.round(l*c),m=Math.round(s*c);return r.width!==d&&(r.width=d),r.height!==m&&(r.height=m),{width:d,height:m}}function bo(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 Tr(e,t,n,r){e.set(r,(t*jt+n)*4)}function Xn(e,t){return Math.min(1,Math.max(1/255,(e*(127/t)+128)/255))}function nm(e,t,n){return e.length>=3?Gd(e,t,n):new Float32Array(jt)}function Cr(e,t){return e[t]??0}function yP(e,t,n){let r=so(t.red),o=so(t.green),i=so(t.blue),a=so(t.master),l=nm(n.hueVsHue,-180,180),s=nm(n.hueVsSaturation,-1,1),c=nm(n.hueVsLuma,-1,1);for(let d=0;d<jt;d+=1)Tr(e,0,d,[Cr(r,d),Cr(o,d),Cr(i,d),Cr(a,d)]),Tr(e,1,d,[Xn(Cr(l,d),180),Xn(Cr(s,d),1),Xn(Cr(c,d),1),1])}function xP(e,t,n){let r=n*MF;Tr(e,2,r,[t.key.hue.center/360,t.key.hue.range/180,t.key.hue.softness/180,1]),Tr(e,2,r+1,[t.key.saturation.min,t.key.saturation.max,t.key.saturation.softness/.5,0]),Tr(e,2,r+2,[t.key.luma.min,t.key.luma.max,t.key.luma.softness/.5,0]),Tr(e,2,r+3,[Xn(t.correction.hueShift,180),Xn(t.correction.saturation,1),Xn(t.correction.luma,1),Xn(t.correction.temperature,1)]),Tr(e,2,r+4,[Xn(t.correction.tint,1),.5,.5,1])}function SP(e,t,n){let r=new Float32Array(jt*sa*4);yP(r,e,t);let o=0;for(let i of n)i.enabled&&(xP(r,i,o),o+=1);return r}var nv=new WeakMap;function EP(e,t,n){let r=nv.get(e);if(r?.hueCurves===t&&r.secondaries===n)return r.signature;let o=JSON.stringify([e,t,n]);return nv.set(e,{hueCurves:t,secondaries:n,signature:o}),o}function vP(e,t,n,r){let{curves:o,hueCurves:i}=n,a=EP(o,i,r);if(t.advancedSignature===a)return;let l=Uint8Array.from(SP(o,i,r),Mi);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,jt,sa,0,e.RGBA,e.UNSIGNED_BYTE,l),t.advancedSignature=a}function rm(e,t,n){e.uniform3f(t,n.hue/360,n.amount,n.level)}function $l(e){let{curves:t,hueCurves:n,secondaries:r}=e;return{rgbCurvesEnabled:Jd(t),hueCurvesEnabled:Qd(n),secondaryCount:Zd(r)?r.reduce((o,i)=>o+Number(i.enabled),0):0}}function Sv(e,t,n,r,o,i,a,l,s,c,d,m,f){e.uniform1i(n.source,0),e.uniform1i(n.blurSource,1),e.uniform1i(n.lut,2),e.uniform1i(n.kuwaharaSource,3),e.uniform1i(n.bloomSource,4),e.uniform1i(n.advanced,5),e.uniform2f(n.resolution,c.width,c.height),e.uniform2f(n.uvScale,d.scaleX,d.scaleY),e.uniform2f(n.uvOffset,d.offsetX,d.offsetY),e.uniform1f(n.blurReady,i?1:0),e.uniform1f(n.bloomReady,a?1:0),e.uniform1f(n.kuwaharaReady,l?1:0),e.uniform1f(n.lutEnabled,o?1:0),e.uniform1f(n.lutSize,o?.size??2),e.uniform2f(n.lutTextureSize,o?.textureWidth??1,o?.textureHeight??1),e.uniform3f(n.lutDomainMin,o?.domainMin[0]??0,o?.domainMin[1]??0,o?.domainMin[2]??0),e.uniform3f(n.lutDomainMax,o?.domainMax[0]??1,o?.domainMax[1]??1,o?.domainMax[2]??1),e.uniform1f(n.lutIntensity,r.lut?.intensity??0);let{rgbCurvesEnabled:p,hueCurvesEnabled:b,secondaryCount:y}=$l(r);(p||b||y>0)&&vP(e,t,r,r.secondaries),rm(e,n.shadowWheel,r.wheels.shadows),rm(e,n.midtoneWheel,r.wheels.midtones),rm(e,n.highlightWheel,r.wheels.highlights),e.uniform1f(n.rgbCurvesEnabled,p?1:0),e.uniform1f(n.hueCurvesEnabled,b?1:0),e.uniform1f(n.secondaryCount,y);for(let[E,C]of n.adjustUniforms)e.uniform1f(C,r.adjust[E]);for(let[E,C]of n.detailUniforms)e.uniform1f(C,r.details[E]);e.uniform1f(n.grainSeed,m),e.uniform1f(n.effectTime,f);for(let[E,C]of n.effectUniforms)e.uniform1f(C,r.effects[E]);let x=r.palette??(r.effects.engraving>0||r.effects.crosshatch>0?TF:Zf),v=x[x.length-1]??Zf[1];e.uniform1f(n.paletteSize,x.length),bo(e,n.palette0,x[0]??Zf[0]),bo(e,n.palette1,x[1]??v),bo(e,n.palette2,x[2]??v),bo(e,n.palette3,x[3]??v),bo(e,n.palette4,x[4]??v),bo(e,n.palette5,x[5]??v),e.uniform1f(n.intensity,r.intensity),e.uniform1f(n.compareEnabled,s.enabled?1:0),e.uniform1f(n.comparePosition,s.position),e.uniform1f(n.compareSoftness,s.softness),e.uniform1f(n.compareLineWidth,s.lineWidth)}function AP(e){if(!e.sourceHidden){let t=e.element.getAttribute(vr);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(Er,"true"),e.element.style.setProperty("opacity","0","important"),e.sourceHidden=!0}function pn(e){let t=nx.find(n=>n.path===e);if(!t)throw new Error(`Missing color-grading animation property: ${e}`);return t}var Ev=pn("intensity"),vv=pn("lut.intensity"),Av=pn("adjust.exposure"),wv=pn("effects.kuwahara"),_v=[["blur",pn("effects.blur")],["bloom",pn("effects.bloom")],["kuwahara",wv],["pixelate",pn("effects.pixelate")],["ascii",pn("effects.ascii")],["dither",pn("effects.dither")]],Cv=[Ev,vv,Av,..._v.map(([,e])=>e)];function Mr(e,t){let n=getComputedStyle(e).getPropertyValue(t.name).trim();if(!n)return null;let r=Number(n);return Number.isFinite(r)?Math.min(t.max,Math.max(t.min,r)):null}function yo(e,t){return t!==null&&(ax(t)||Cv.some(n=>Mr(e,n)!==null))}function wP(e,t){let n=null;for(let[r,o]of _v){let i=Mr(e,o);i!==null&&(n??(n={...t.effects}),n[r]=i)}return n}function _P(e){let{element:t,grading:n}=e,r=Mr(t,Ev),o=Mr(t,vv),i=Mr(t,Av),a=wP(t,n);if(![r,o,i].some(c=>c!==null)&&a===null)return n;let s={...n,adjust:i===null?n.adjust:{...n.adjust,exposure:i},effects:a??n.effects};return r!==null&&(s.intensity=r),n.lut&&o!==null&&(s.lut={...n.lut,intensity:o}),s}function Tv(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 Rv(e,t,n){let r=[t.texture,n.blurTexture,t.lutTexture,n.kuwaharaTexture,n.bloomTexture,t.advancedTexture];for(let[o,i]of r.entries())e.activeTexture(e.TEXTURE0+o),e.bindTexture(e.TEXTURE_2D,i)}function CP(e,t){e.glCanvas!==e.canvas&&(e.glCanvas.width<t.width&&(e.glCanvas.width=t.width),e.glCanvas.height<t.height&&(e.glCanvas.height=t.height))}function TP(e,t){if(e.glCanvas===e.canvas)return;let n=e.canvas.getContext("2d");if(!n)throw new Error("Canvas 2D is unavailable");let{width:r,height:o}=t;n.clearRect(0,0,r,o),n.drawImage(e.glCanvas,0,e.glCanvas.height-o,r,o,0,0,r,o)}function RP(e){let t=yv(e.element),n=t&&bv(t,e);if(!t||!n)return e.hasDrawn||(e.canvas.style.display="none"),null;let r=sm(t);return r?{source:t,pixels:n,size:r}:null}function MP(e){if(e.sourceInlineOpacity===null){e.element.style.removeProperty("opacity");return}e.element.style.setProperty("opacity",e.sourceInlineOpacity,e.sourceInlineOpacityPriority||"")}function kP(e){let{style:t}=e.element;return e.sourceHidden&&t.getPropertyValue("opacity")==="0"&&t.getPropertyPriority("opacity")==="important"}function LP(e,t,n){let r=kP(e),o=e.element.style.getPropertyValue("visibility"),i=r&&!n;i&&MP(e);let a=window.getComputedStyle(n?t:e.element);e.sourceOpacityForCanvas=a.opacity||"1",i&&e.element.style.setProperty("opacity","0","important"),e.sourceVisibleForCanvas=(n||o!=="hidden")&&a.visibility!=="hidden"}function NP(e){let t=window.__player?.getTime?.();return typeof t=="number"&&Number.isFinite(t)?Math.max(0,t):Ne(e)?Math.max(0,e.currentTime):0}function FP(e,t,n,r){let{gl:o,program:i}=e;CP(e,n);let a=_P(e),l=cP(e);Tv(o,i.texture,t);let s=Mr(e.element,wv)!==null,c=hv(e,a,n,r,{preserveKuwahara:s});o.bindFramebuffer(o.FRAMEBUFFER,null),o.viewport(0,0,n.width,n.height);let d=lv(o,i,a,e.compare);Rv(o,i,c);let m=NP(e.element),f=e.grainSeed+Math.floor(m*60);Sv(o,i,d,a,l,c.blurReady,c.bloomReady,c.kuwaharaReady,e.compare,n,r,f,m),ia(o,{quad:i.quad,position:d.position}),TP(e,n)}function PP(e,t,n){let r=Ce(t)?t:e.element,o=bP(e,r);if(!o)return null;let i=window.getComputedStyle(r),a=xv(o.width,o.height,n.width,n.height,i.objectFit,i.objectPosition);return{layout:o,uv:a}}function pt(e){if(e.destroyed||e.contextLost)return!1;let t=RP(e);if(!t)return!1;let{source:n,pixels:r,size:o}=t,i=mP(n);i&&pP(e,n),LP(e,n,i);let a=PP(e,n,o);if(!a)return!1;let{layout:l,uv:s}=a;try{return FP(e,r,l,s),AP(e),i&&QF(e,n),e.hasDrawn=!0,e.drawError=null,!0}catch(c){return e.drawError=c instanceof Error?c.message:"Shader draw failed",$("runtime.colorGrading.drawEntry",c),!1}}function DP(e,t,n){let r=e.getBoundingClientRect(),o=e.offsetWidth||r.width||t.width,i=e.offsetHeight||r.height||t.height,a=Math.min(320,Math.max(64,Math.round(n??160))),l=o>0&&i>0?o/i:t.width/t.height;return l>=1?{width:a,height:Math.max(1,Math.round(a/l))}:{width:Math.max(1,Math.round(a*l)),height:a}}function IP(){let e=document.createElement("canvas"),t=UF(e);return t?{canvas:e,glCanvas:e,...t,lut:null,effectTargets:null,kuwaharaTargets:null,effectError:null}:null}function OP(e,t){let n=t?void 0:window.__player?.getTime?.();return typeof n=="number"&&Number.isFinite(n)?Math.max(0,n):Ne(e)?Math.max(0,e.currentTime):0}function HP(e,t,n,r){let o=yv(t),i=o&&bv(o,null);if(!o||!i)return null;let a=sm(o);if(!a)return null;let l=DP(t,a,n);e.canvas.width=l.width,e.canvas.height=l.height;let s=Ce(o)?o:t,c=window.getComputedStyle(s),d=xv(l.width,l.height,a.width,a.height,c.objectFit,c.objectPosition);return Tv(e.gl,e.program.texture,i),{dimensions:l,uv:d,effectTime:OP(t,r),grainSeed:dv(t)+(Ne(t)?Math.floor(t.currentTime*60):0)}}async function GP(e,t,n,r,o=!1){let i=HP(e,t,r,o);if(!i)return null;let{dimensions:a,uv:l,grainSeed:s,effectTime:c}=i,d=[];for(let m of n.slice(0,av)){let f=ml(m.grading);if(!f){d.push({id:m.id,dataUrl:null,error:"Invalid grading"});continue}let p=null;try{f.lut&&(e.lut?.src!==f.lut.src&&(e.lut=jF(e,f.lut.src,await zF(f.lut.src))),p=e.lut),d.push({id:m.id,dataUrl:BP(e,f,p,a,l,s,c)})}catch(b){d.push({id:m.id,dataUrl:null,error:Xl(b)})}}return{...a,images:d}}function BP(e,t,n,r,o,i,a){let{canvas:l,gl:s,program:c}=e,d=hv(e,t,r,o,{releaseIdleTargets:!1});s.bindFramebuffer(s.FRAMEBUFFER,null),s.viewport(0,0,r.width,r.height);let m=lv(s,c,t,Rr);return Rv(s,c,d),n||(e.lut=null),Sv(s,c,m,t,n,d.blurReady,d.bloomReady,d.kuwaharaReady,Rr,r,o,i,a),ia(s,{quad:c.quad,position:m.position}),l.toDataURL("image/png")}function Kn(e,t,n,r){t.addEventListener(n,r),e.cleanup.push(()=>t.removeEventListener(n,r))}function UP(e){return nn(e)?!0:Ne(e)&&!e.paused&&!e.ended?!1:Cv.some(t=>Mr(e,t)!==null)}function WP(e){e.animationFrame!==null&&(window.cancelAnimationFrame(e.animationFrame),e.animationFrame=null),e.videoFrameHandle!==null&&Ne(e.element)&&(e.element.cancelVideoFrameCallback?.(e.videoFrameHandle),e.videoFrameHandle=null)}function aa(e){if(e.destroyed||!Ne(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,pt(e),!e.destroyed&&!t.paused&&!t.ended&&aa(e)});return}e.animationFrame=window.requestAnimationFrame(()=>{e.animationFrame=null,pt(e),!e.destroyed&&!t.paused&&!t.ended&&aa(e)})}function VP(e){let t=()=>{pt(e)};if(Kn(e,e.element,"load",t),Kn(e,e.element,"loadedmetadata",t),Kn(e,e.element,"loadeddata",t),Kn(e,e.element,"seeked",t),Kn(e,e.element,"timeupdate",t),Kn(e,window,"resize",t),Ne(e.element)&&(Kn(e,e.element,"play",()=>aa(e)),Kn(e,e.element,"pause",t)),typeof ResizeObserver<"u"&&(e.resizeObserver=new ResizeObserver(t),e.resizeObserver.observe(e.element)),typeof MutationObserver<"u"){let n=()=>{let a=e.element.style;return`${a.transform}|${a.translate}|${a.rotate}|${a.scale}|${a.left}|${a.top}|${a.width}|${a.height}`},r=n(),o=!1,i=new MutationObserver(()=>{o||n()!==r&&(o=!0,requestAnimationFrame(()=>{o=!1,r=n(),pt(e)}))});i.observe(e.element,{attributes:!0,attributeFilter:["style"]}),e.cleanup.push(()=>i.disconnect())}}function $P(e){if(e.destroyed)return null;e.destroyed=!0,WP(e),e.resizeObserver?.disconnect();for(let t of e.cleanup)t();return e.cleanup.length=0,e.canvas.remove(),im(e),am(e),zl(e),e.touchedParent&&(e.parentInlinePosition===null?e.touchedParent.style.removeProperty("position"):e.touchedParent.style.position=e.parentInlinePosition),{canvas:e.canvas,glCanvas:e.glCanvas,gl:e.gl,program:e.program,effectTargets:null,kuwaharaTargets:null,effectError:null}}function Mv(e,t){return e.removeAttribute("style"),t.id?e.id=`${Jy}${t.id}`:e.removeAttribute("id"),e.className=wF,e.setAttribute(AF,"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 qP(e){return Mv(document.createElement("canvas"),e)}function kv(e){let t=new WeakMap,n=new Set,r=new Set,o=[],i=null,a=null,l=Promise.resolve(),s=!1,c=null,d,m=()=>[...n].flatMap(I=>t.get(I)??[]),f=()=>{if(c)return c;let I=document.createElement("canvas"),P=I.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});return P?(I.addEventListener("webglcontextlost",D=>{D.preventDefault(),o.length=0;for(let w of m())w.contextLost=!0,w.drawError="WebGL context lost",w.canvas.style.display="none",zl(w);p(I,P)}),I.addEventListener("webglcontextrestored",()=>{if(c?.canvas===I){clearTimeout(d);for(let D of m())D.contextLost=!YF(D),D.drawError=D.contextLost?"WebGL context restore failed":null,D.contextLost?zl(D):pt(D);C()}}),c={canvas:I,gl:P},c):null},p=(I,P)=>{clearTimeout(d),d=setTimeout(()=>b(I,P),vF)},b=(I,P)=>{if(s||c?.canvas!==I||!P.isContextLost?.())return;let D=c;c=null;let w=f();if(!w){c=D,p(I,P);return}for(let L of m())JF(L,w);C()},y=I=>{let P=f(),D=P&&Yl(P.gl);return!P||!D?null:{canvas:qP(I),glCanvas:P.canvas,gl:P.gl,program:D,effectTargets:null,kuwaharaTargets:null,effectError:null}},x=(I,P,D)=>{r.delete(I);let w=t.get(I);if(w)return w.grading=P,w.source=D,pt(w),Ne(I)&&!I.paused&&aa(w),!0;let L=o.pop();if(L)Mv(L.canvas,I);else{let te=y(I);if(!te)return!1;L=te}let Y={element:I,...L,grading:P,compare:{...Rr},lut:null,lutLoadingSrc:null,lutError:null,drawError:null,effectTargets:null,kuwaharaTargets:null,effectError:null,source:D,animationFrame:null,videoFrameHandle:null,resizeObserver:null,cleanup:[],touchedParent:null,parentInlinePosition:null,sourceHidden:!1,borderlessFrame:null,sourceInlineOpacity:null,sourceInlineOpacityPriority:"",sourceOpacityForCanvas:window.getComputedStyle(I).opacity||"1",sourceVisibleForCanvas:window.getComputedStyle(I).visibility!=="hidden",hasDrawn:!1,contextLost:!1,grainSeed:dv(I),destroyed:!1};return t.set(I,Y),n.add(I),VP(Y),pt(Y),Ne(I)&&!I.paused&&aa(Y),!0},v=(I,P)=>{if(s)return!1;let D=na(I);if(!D)return!1;let w=t.get(D);if(!w){let L=ta(D);if(!yo(D,L)||!x(D,L,"attribute"))return!1;w=t.get(D)}return w?(w.compare=$F(P),pt(w),!0):!1},E=I=>{r.delete(I);let P=t.get(I);if(!P)return;let D=$P(P);D&&(P.contextLost||o.length>=CF?ra(D):o.push(D)),t.delete(I),n.delete(I)},C=()=>{if(s)return 0;let I=new Set;r.clear(),document.querySelectorAll(KE).forEach(D=>{if(!Yn(D))return;I.add(D);let w=ta(D);yo(D,w)?tm(D)?x(D,w,"attribute"):(E(D),r.add(D)):E(D)});for(let D of n){let w=t.get(D);w&&(!D.isConnected||w.source==="attribute"&&!I.has(D))&&E(D)}return n.size},H=()=>{for(let I of r){if(I.isConnected&&!tm(I))continue;r.delete(I);let P=ta(I);I.isConnected&&yo(I,P)&&x(I,P,"attribute")}},V=()=>{if(s)return 0;H();let I=0;for(let P of n){let D=t.get(P);D&&pt(D)&&(I+=1)}return I},M=async()=>{let I=new Set;for(let P of n){let D=t.get(P)?.grading.lut;if(!D?.src.trim()||(D.intensity??1)<=0)continue;let w=om(D.src);w.state==="pending"&&I.add(w.promise)}return I.size>0&&await Promise.allSettled(I),V(),I.size},R=()=>{if(s)return 0;H();let I=0;for(let P of n){let D=t.get(P);D&&UP(P)&&pt(D)&&(I+=1)}return I},U=(I,P)=>{if(s)return!1;let D=na(I);if(!D)return!1;let w=ml(P);return yo(D,w)?x(D,w,"live"):(E(D),!0)},T=(I,P)=>{if(!Yn(I))return!1;let D=t.get(I);if(!D){if(!P)return!1;let w=ta(I);return yo(I,w)&&x(I,w,"attribute")}return D.sourceVisibleForCanvas=P,!P&&D.source==="attribute"&&E(I),!0},F=I=>Yn(I)&&t.has(I),W=I=>{let P=na(I);if(!P)return{state:"missing",message:"Media not found"};let D=t.get(P);if(D)return D.effectError?{state:"unavailable",message:D.effectError}:D.drawError?{state:"unavailable",message:D.drawError}:D.lutError?{state:"unavailable",message:`LUT error: ${D.lutError}`}:D.grading.lut&&D.lutLoadingSrc?{state:"pending",message:"Loading LUT"}:D.canvas.style.display==="none"?{state:"pending",message:"Waiting for media frame"}:{state:"active",message:D.lut?"Shader + LUT active":"Shader active"};let w=ta(P);return yo(P,w)?tm(P)?{state:"unavailable",message:"WebGL unavailable"}:{state:"pending",message:"Waiting for visible media"}:{state:"inactive",message:"No grading applied"}},B=async(I,P,D)=>{let w=async()=>{if(s||P.length===0)return null;let Y=na(I);return!Y||(a??(a=IP()),!a)?null:GP(a,Y,P,D?.maxDimension,D?.useMediaTime)},L=l.then(w,w);return l=L.then(()=>{},()=>{}),L},X=I=>{let P=na(I);if(!Ne(P))return null;if(!P.paused)return()=>{};let D=P.currentTime,w=P.loop,L=P.muted;return P.loop=!0,P.muted=!0,(P.ended||Number.isFinite(P.duration)&&D>=P.duration)&&(P.currentTime=0),e?.lease(P),P.play().catch(()=>{}),()=>{e?.release(P),P.pause(),P.loop=w,P.muted=L,P.currentTime=At(D)}},ae=()=>{if(!s){s=!0,clearTimeout(d),i?.disconnect(),i=null;for(let I of n)E(I);r.clear();for(let I of o)ra(I);o.length=0,c?.gl.getExtension("WEBGL_lose_context")?.loseContext(),c=null,a&&(ra(a,!0),a=null)}};if(document.body){let I=Qf(KE,P=>Array.from(n).some(D=>P.contains(D)));i=new MutationObserver(P=>{I(P)&&C()}),i.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[dl]})}let N={refresh:C,redraw:V,redrawAnimated:R,waitForActiveLuts:M,setGrading:U,setCompare:v,setSourceVisibility:T,isGraded:F,getStatus:W,renderPreviews:B,startPreviewPlayback:X,destroy:ae},j=window;return j.__hf=j.__hf||{},j.__hf.colorGrading=N,C(),N}var zP={mulX:374761393,mulY:668265263,mulMix:1274126177,offset:2654435769,shift1:13,shift2:16,divisor:4294967296},{mulX:jP,mulY:KP,mulMix:Lv,offset:YP,shift1:XP,shift2:JP,divisor:QP}=zP,ZP=20,Nv=`#version 300 es
|
|
371
|
+
})();`}function Dl(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function hN(e){return Dl(e)&&Object.values(e).every(Dl)}var iE=(e,t)=>e&&Object.fromEntries(Object.entries(e).map(([n,r])=>[n,typeof r=="string"?t(r):null]));function aE(e,t){let n;try{n=JSON.parse(e)}catch{return null}if(!Dl(n))return null;let{imports:r,scopes:o}=n;return r!==void 0&&!Dl(r)||o!==void 0&&!hN(o)?null:{imports:iE(r,t),scopes:o&&Object.fromEntries(Object.entries(o).map(([i,a])=>[t(i),iE(a,t)??{}]))}}var If="text/hf-after-fonts",lE=`${If}+module`,uE=`script[type="${If}"], script[type="${lE}"]`,cE="__hfAfterFontsClaimed",gN="data-hf-inlined-src";var dE=`[defer][src], [defer][${gN}]`;function Il(e){let t=e.getAttribute("type");return t===If?null:t===lE?"module":t}function bN(e){let t=e.getAttribute("type")??"",n=e.tagName.toLowerCase()==="link"?t.split(";")[0].trim():t;if(n!==""&&n.toLowerCase()!=="text/css")return;let r=(e.getAttribute("media")??"").trim().toLowerCase();return JSON.stringify([r==="all"?"":r,e.getAttribute("title")??""])}var K5=JSON.stringify(["",""]);function sE(e){return JSON.stringify([e.getAttribute("href"),(e.getAttribute("rel")??"").trim().toLowerCase(),bN(e)??e.getAttribute("type"),e.hasAttribute("disabled")])}function fE(e,t){let n=sE(t);return[...e.querySelectorAll("link[href]")].some(r=>!r.closest("noscript")&&sE(r)===n)}var tt="id",Of="data-hf-authored-id",go=/(url\(\s*)(["']?)#([^"')\s]+)\2(\s*\))/gi;function pE(e){return e==="href"||e.endsWith(":href")}function yN(e){return e.replace(/[^a-zA-Z0-9_-]/g,"-")}function Hf(e,t){return!e||!e.toLowerCase().includes("url(")?e:e.replace(go,(n,r,o,i,a)=>{let l=t.get(i);return l?`${r}${o}#${l}${o}${a}`:n})}function xN(e,t,n){if(pE(e)&&t.startsWith("#")){let o=n.get(t.slice(1));return o?`#${o}`:t}go.lastIndex=0;let r=go.test(t);return go.lastIndex=0,r?Hf(t,n):null}function SN(e,t,n){if(e.name===kt||e.name===tt)return{kind:"skip"};let r=t&&e.value===t.after?t.before:e.value,o=xN(e.name,r,n);return o!==null?{kind:"managed",before:r,after:o}:t?{kind:"retain",alias:t}:{kind:"skip"}}function EN(e,t,n,r){let o=e.namespaceURI===void 0&&e.name==="xlink:href"&&r;return{name:e.name,localName:o?"href":e.localName,namespaceURI:o?"http://www.w3.org/1999/xlink":e.namespaceURI??null,before:t,after:n}}function vN(e,t){let n=new Map(ur(e,kt,!1).map(i=>[i.name,i])),r=[...n.values()].filter(i=>i.name===tt),o=!!e.closest("svg");for(let i of e.attributes?Array.from(e.attributes):[]){let a=SN(i,n.get(i.name),t);if(a.kind!=="skip"){if(a.kind==="retain"){r.push(a.alias);continue}a.after!==i.value&&(i.namespaceURI?e.setAttributeNS(i.namespaceURI,i.name,a.after):e.setAttribute(i.name,a.after)),r.push(EN(i,a.before,a.after,o))}}r.length&&e.setAttribute(kt,JSON.stringify(r))}function mE(e,t,n){let r;for(go.lastIndex=0;r=go.exec(e);){let o=r[3];t.has(o)&&n.add(o)}}function AN(e,t,n){if(pE(e.name)&&e.value.startsWith("#")){let r=e.value.slice(1);t.has(r)&&n.add(r)}}function wN(e,t,n){let r=new Set;for(let o of e)for(let i of o.attributes?Array.from(o.attributes):[])!i.value||i.name===kt||(AN(i,n,r),i.value.toLowerCase().includes("url(")&&mE(i.value,n,r));for(let o of t)o.toLowerCase().includes("url(")&&mE(o,n,r);return r}function hE(e,t){return t.some(n=>n===e||n.contains(e))}function _N(e){let t=e.exclude??[],n=[...e.root.querySelectorAll("*")],r=t.length?n.filter(o=>!hE(o,t)):n;return[e.root,...r]}function CN(e){let t=e.exclude??[],n=[...e.root.querySelectorAll("svg [id], svg[id]")];return t.length?n.filter(r=>!hE(r,t)):n}function TN(e){let t=_N(e),n=new Set;if(!e.namespace)return{elements:t,renamable:n};let r=CN(e),o=new Set;for(let a of r){let l=a.getAttribute(tt);l&&o.add(l)}if(o.size===0)return{elements:t,renamable:n};let i=wN(t,e.cssTexts??[],o);for(let a of r){let l=a.getAttribute(tt);l&&i.has(l)&&n.add(a)}return{elements:t,renamable:n}}function gE(e){if(!e.closest("svg"))return null;let t=ur(e,kt,!1).find(n=>n.name===tt);return t?e.getAttribute(tt)===t.after?t.before:null:e.getAttribute(Of)}function RN(e){let t=new Map,n=new Set;for(let r of e.querySelectorAll("[id]")){let o=r.getAttribute(tt);if(!o)continue;n.add(o);let i=t.get(o);i?i.push(r):t.set(o,[r]);let a=gE(r);if(a&&a!==o){let l=t.get(a);l?l.push(r):t.set(a,[r])}}return{elementsById:t,usedIds:n}}function MN(e,t,n){let r=`${yN(e)}--${t}`,o=r;for(let i=2;n.has(o);i+=1)o=`${r}-${i}`;return n.add(o),o}function kN(e,t,n){let r=t.find(a=>!n.has(a))??t[0],i=t.filter(a=>a!==r&&a.getAttribute(tt)===e).map(a=>n.get(a));return new Set(i.filter(a=>a!==void 0))}function LN(e,t,n){let r=t.map(()=>new Map);for(let[o,i]of e.elementsById)if(!(i.length<2))for(let a of kN(o,i,n))r[a].set(o,MN(t[a].namespace,o,e.usedIds));return r}function NN(e,t,n){let r=new Map;for(let[o,i]of e.elementsById){let a=i[0],l=a.getAttribute(tt);if(l!==o){r.set(o,l);continue}let s=n.get(a),c=s===void 0?void 0:t[s].get(o);c&&r.set(o,c)}return r}function FN(e){let t=new Set(e.map(r=>r.getAttribute(tt))),n=new Map;for(let r of e){let o=gE(r),i=r.getAttribute(tt);!o||!i||(t.add(o),n.set(o,i))}return{ids:t,renamed:n}}function PN(e,t){for(let n of e.elements){let r=n.getAttribute(tt);if(r&&e.renamable.has(n)&&t.has(r)){n.hasAttribute(Of)||n.setAttribute(Of,r);let o=t.get(r),i=ur(n,kt,!1);i.push({name:tt,localName:tt,namespaceURI:null,before:r,after:o}),n.setAttribute(kt,JSON.stringify(i)),n.setAttribute(tt,o)}vN(n,t)}}function bE(e,t,n){if(t.length===0)return[];let r=RN(e),o=t.map(TN),i=o.flatMap(({renamable:d})=>[...d]);if(n)for(let d of o)for(let m of d.renamable)n.has(m)&&d.renamable.delete(m);let a=new Map;o.forEach(({renamable:d},m)=>{for(let f of d)a.set(f,m)});let l=LN(r,t,a),s=NN(r,l,a),c=o.map((d,m)=>{let f=FN(t[m].referenceTarget==="document"?[]:d.elements),p=[...s].filter(([b])=>!f.ids.has(b));return new Map([...p,...f.renamed,...l[m]])});c.forEach((d,m)=>{PN(o[m],d)});for(let d of i)n?.add(d);return c}function yE(e,t,n=[]){if(!e||t.size===0&&n.length===0||!e.includes("#")&&!e.includes("[")&&!e.toLowerCase().includes("url("))return e;let r;try{r=Pl.parse(e)}catch{return e}let o=!1,i=new Set(n.filter(l=>l.name===tt).map(l=>l.before)),a=[...t].filter(([l])=>!i.has(l)).map(([l,s])=>({id:l,replacement:`:is(#${tn(l)}, #${tn(s)})`}));return r.walkRules(l=>{let s=l.selectors.map(c=>es(c,a,n));s.some((c,d)=>c!==l.selectors[d])&&(l.selectors=s,o=!0)}),r.walkDecls(l=>{let s=Hf(l.value,t);s!==l.value&&(l.value=s,o=!0)}),r.walkAtRules(l=>{if(!l.params)return;let s=Hf(l.params,t);s!==l.params&&(l.params=s,o=!0)}),o?r.toResult({map:!1}).css:e}function Ol(e){return typeof e=="string"||typeof e=="number"||typeof e=="boolean"}function Gf(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 xE=new Set(["img","video","audio","source"]);function DN(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 IN(e){return e.replace(/[;{}<>\r\n]/g,"")}function ON(e){if(Ol(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 Bf(e,t){let n=e.closest("[data-composition-id]"),r=t.get(n);if(r)return r;let o=Hs(e);return t.set(n,o),o}function HN(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 GN(e){return e.querySelector("[data-hf-root]")??e.getElementById("stage")??e.body?.firstElementChild??e.body}function BN(e,t){for(let n of new Set(e)){let r=Bf(n,t);for(let[o,i]of Object.entries(r)){let a=ON(i);a!==null&&Ce(n)&&n.style.setProperty(`--${o}`,IN(a))}}}function EE(e,t,n=!0){let r=e.getAttribute("data-var-src")?.trim();if(!r)return null;if(!xE.has(e.tagName.toLowerCase()))return n&&globalThis.console.warn(`[hyperframes] Ignoring data-var-src on <${e.tagName.toLowerCase()}>: variable-bound src is only allowed on ${Array.from(xE).join("/")}.`),null;let o=DN(Bf(e,t)[r]);return o===null?null:Gf(o)?o:(n&&globalThis.console.warn(`[hyperframes] Ignoring data-var-src="${r}": unsafe URL protocol.`),null)}function vE(e){return EE(e,new Map,!1)??Ti(e)}var AE=(e,t,n)=>t?[...t.matches(n)?[t]:[],...t.querySelectorAll(n)]:Array.from(e.querySelectorAll(n));function Hl(e,t){let n=new Map,r=i=>AE(e,t,i),o=t?null:GN(e);BN([...o?[o]:[],...r("[data-composition-id]")],n);for(let i of r("[data-var-src]")){let a=EE(i,n);a!==null&&Ti(i)!==a&&i.setAttribute("src",a)}wE(r("[data-var-text]"),n)}function Gl(e,t){wE(AE(e,t,"[data-var-text]"),new Map)}var SE=new WeakSet;function wE(e,t){for(let n of e){let r=n.getAttribute("data-var-text")?.trim();if(!r||SE.has(n))continue;let o=Bf(n,t)[r];Ol(o)&&(HN(n,String(o)),SE.add(n))}}var Uf=5e3;window[cE]=!0;async function Qi(){let e=document.fonts;if(!e)return;document.body?.offsetHeight;for(let o of Array.from(e))o.status==="unloaded"&&o.load().catch(()=>{});let t,n=await Promise.race([e.ready.then(()=>!1),new Promise(o=>t=setTimeout(o,Uf,!0))]);if(clearTimeout(t),!n)return;let r=[...new Set(Array.from(e).filter(o=>o.status==="loading").map(o=>o.family))];globalThis.console.warn(`[hyperframes] fonts still loading after ${Uf} ms, composition scripts run without them: ${r.join(", ")}`),Re({source:"hf-preview",type:"diagnostic",code:"runtime_font_wait_timeout",details:{loadingFamilies:r,timeoutMs:Uf}})}function UN(e,t){let n=Object.getOwnPropertyDescriptor(e,"addEventListener"),r=e.addEventListener,o=(i,a,l)=>{if(!a)return;i==="DOMContentLoaded"||i==="load"&&e===window&&document.readyState==="complete"?t.push({target:e,type:i,listener:a}):r.call(e,i,a,l)};return e.addEventListener=o,()=>{e.addEventListener===o&&(n?Object.defineProperty(e,"addEventListener",n):delete e.addEventListener)}}function WN(e){if(!e.isConnected)return;let t=document.createElement("script");for(let{name:r,value:o}of Array.from(e.attributes))t.setAttribute(r,o);let n=Il(e);return n===null?t.removeAttribute("type"):t.setAttribute("type",n),t.async=e.hasAttribute("async"),t.text=e.textContent??"",e.replaceWith(t),t}var VN=50,$N=()=>!window.__HF_VIRTUAL_TIME__;function qN(){let e=globalThis.scheduler;return typeof e?.yield=="function"?e.yield():new Promise(t=>{let n=new MessageChannel;n.port1.onmessage=()=>{n.port1.close(),t()},n.port2.postMessage(null)})}var zN=e=>new Promise(t=>{e.addEventListener("load",t),e.addEventListener("error",t)});function jN(){let e=document.createElement("script");e.type="module",e.async=!1,e.text='document.dispatchEvent(new Event("hf-after-fonts-modules"))';let t=new Promise(n=>document.addEventListener("hf-after-fonts-modules",n,{once:!0}));return document.body.appendChild(e),t.then(()=>e.remove())}async function Bl(e,t){await Qi(),Gl(document);let n=l=>Il(l)==="module"||l.matches(dE),r=[],o=[document,window].map(l=>UN(l,r)),i=$N(),a=performance.now();for(let l of[...e.filter(s=>!n(s)),...e.filter(n)]){i&&performance.now()-a>VN&&(await qN(),a=performance.now());let s=WN(l);s?.hasAttribute("src")&&!s.async&&!s.noModule?await zN(s):Il(l)==="module"&&await jN()}for(let l of o)l();t?.();for(let{target:l,type:s,listener:c}of r){let d=new Event(s);try{typeof c=="function"?c.call(l,d):c.handleEvent(d)}catch(m){reportError(m)}}}var KN=["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 _E(e){let t=e.getAttribute("id")?.trim();for(let n of KN)e.removeAttribute(n);t&&(e.removeAttribute("id"),e.setAttribute("data-hf-authored-id",t)),e.setAttribute("data-hf-inner-root","true")}var YN=8e3,XN=/^(?![a-zA-Z][a-zA-Z\d+\-.]*:)(?!\/\/)(?!\/)(?!\.\.?\/).+/,JN=/\burl\(\s*(["']?)([^)"']+)\1\s*\)/g,QN=["src","href"];function ZN(e){return!e||e.startsWith("http://")||e.startsWith("https://")||e.startsWith("//")||e.startsWith("data:")||e.startsWith("#")||e.startsWith("/")}function LE(e,t){if(!t)return e;let n=e.trim();if(ZN(n)||!n.startsWith("../")&&n!=="..")return e;try{return new URL(n,t).href}catch{return e}}function NE(e,t){return!t||!e?e:e.replace(JN,(n,r,o)=>{let i=LE(o||"",t);return i===o?n:`url(${r||""}${i}${r||""})`})}function eF(e,t){for(let n of Array.from(e.querySelectorAll("[src], [href]")))for(let r of QN){let o=n.getAttribute(r);if(o==null)continue;let i=LE(o,t);i!==o&&n.setAttribute(r,i)}}function tF(e,t){for(let n of Array.from(e.querySelectorAll("[style]"))){let r=n.getAttribute("style");if(r==null)continue;let o=NE(r,t);o!==r&&n.setAttribute("style",o)}}function nF(e,t){for(let n of Array.from(e.querySelectorAll("style"))){let r=n.textContent||"",o=NE(r,t);o!==r&&(n.textContent=o)}}function FE(e,t){if(t){eF(e,t),tF(e,t),nF(e,t);for(let n of Array.from(e.querySelectorAll("template")))FE(n.content,t)}}function CE(e,t){return`${e}__hf${t}`}var rF=e=>new Promise(t=>{let n=!1,r=Date.now(),o=null,i=a=>{n||(n=!0,o!=null&&window.clearTimeout(o),t({status:a,elapsedMs:Math.max(0,Date.now()-r)}))};e.addEventListener("load",()=>i("load"),{once:!0}),e.addEventListener("error",()=>i("error"),{once:!0}),o=window.setTimeout(()=>i("timeout"),YN)});function $f(e){for(;e.firstChild;)e.removeChild(e.firstChild);e.textContent=""}function Wf(e){for(let t of Ex(e))t.remove()}function oF(e){let t=document.importNode(e,!0);_E(t);let n=br(t.getAttribute("data-width")),r=br(t.getAttribute("data-height"));return t.style.width=n===null?"100%":`${n}px`,t.style.height=r===null?"100%":`${r}px`,t}function TE(e,t){let n=e.trim();if(!n)return e;try{return XN.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 RE(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 Zi(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 iF(e){let t=new Map;for(let n of e){let r=Zi(n).authoredCompositionId||"";r&&t.set(r,(t.get(r)||0)+1)}return Ax(t,e),t}function PE(e){let t=Zi(e).authoredCompositionId;return t?!!document.querySelector(`template#${CSS.escape(t)}-template`):!1}function aF(e){return!!e.querySelector('[data-hf-inner-root="true"]')}function ME(e){return e.hasAttribute("data-composition-src")?!0:PE(e)?e.children.length===0||e.hasAttribute("data-hf-original-composition-id")?!0:aF(e):!1}function Ul(){return Array.from(document.querySelectorAll("[data-composition-src], [data-composition-id]")).filter(t=>t.hasAttribute("data-composition-src")?!0:PE(t))}function qf(){let e=window.__hfVariablesByComp;if(!e)return;let t=new Set(Ul().map(n=>Zi(n).runtimeCompositionId).filter(n=>!!n));for(let n of Object.keys(e))t.has(n)||delete e[n]}function DE(e,t){let n=iF(e),r=new Set(e.flatMap(a=>{let l=Zi(a),s=l.authoredCompositionId?[l.authoredCompositionId]:[];return(t.has(a)||!ME(a))&&l.runtimeCompositionId&&s.push(l.runtimeCompositionId),s})),o=new Map,i=new Map;for(let a of e){let{authoredCompositionId:l,runtimeCompositionId:s}=Zi(a),c=!t.has(a)&&ME(a);if(!l){i.set(a,{authoredCompositionId:null,runtimeCompositionId:s});continue}let d=(n.get(l)||0)>1,m=s||l;if(c){let f=d?(o.get(l)||0)+1:0;if(d){for(;r.has(CE(l,f));)f+=1;o.set(l,f)}m=d?CE(l,f):l,r.add(m),d?a.setAttribute("data-hf-original-composition-id",l):a.removeAttribute("data-hf-original-composition-id"),a.setAttribute("data-composition-id",m)}i.set(a,{authoredCompositionId:l,runtimeCompositionId:m})}return qf(),i}async function IE(e){let t=vx({contentNode:e.sourceNode,head:e.head,hasTemplate:e.hasTemplate,compositionId:e.authoredCompositionId}),n=Ce(t.innerRoot)?t.innerRoot:null,r=n??e.sourceNode,o=t.authoredCompositionId,i=t.scriptCompositionId,a=e.runtimeCompositionId||null,l=t.authoredRootId,s=a?`[data-composition-id="${CSS.escape(a)}"]`:void 0;for(let y of t.linkSources){let x=(y.getAttribute("href")||"").trim();if(!x)continue;let v=e.compositionUrl?new URL(x,e.compositionUrl).href:x;if(e.compositionUrl&&RE(v,e.compositionUrl))continue;let E=y.cloneNode(!0);dg(E)&&(E.href=v,!fE(document.head,E)&&(document.head.appendChild(E),e.injectedLinks.push(E)))}let c=[];(y=>{for(let x of y){let v=x.cloneNode(!0);if(!cg(v))continue;o&&(v.textContent=nE(v.textContent||"",o,s,l,{scopeRootSelectors:!0})),document.head.appendChild(v),e.injectedStyles.push(v);let E=v.textContent||"";c.push({element:v,authored:E,applied:E})}})(t.styleSources);let m=y=>{let x=y.getAttribute("type")?.trim()??"",v=y.getAttribute("src")?.trim()??"";if(v){let C=TE(v,e.compositionUrl);return e.compositionUrl&&RE(C,e.compositionUrl)?null:{kind:"external",src:C,type:x}}let E=y.textContent?.trim()??"";return E?{kind:"inline",content:E,type:x,scopeCompositionId:i}:null},f=t.scriptSources.map(m).filter(y=>y!==null);if(n){let y=n.getAttribute("data-width"),x=n.getAttribute("data-height"),v=e.parseDimensionPx(y),E=e.parseDimensionPx(x);y&&e.host.setAttribute("data-width",y),x&&e.host.setAttribute("data-height",x),v&&Ce(e.host)&&(e.host.style.width=v),E&&Ce(e.host)&&(e.host.style.height=E),n.hasAttribute("data-timeline-locked")&&e.host.setAttribute("data-timeline-locked","");let C=oF(n);!e.authoredCompositionId&&o&&C.setAttribute("data-composition-id",o),Wf(C),e.host.appendChild(C)}else if(e.hasTemplate){let y=document.importNode(r,!0);Wf(y),e.host.appendChild(y)}else e.host.innerHTML=e.fallbackBodyInnerHtml,Wf(e.host);for(let y of t.inertScriptsOutsideRoot)e.host.appendChild(document.importNode(y,!0));a&&lF(e,r,a);let p=Array.from(e.host.childNodes),b=()=>e.host.isConnected&&(p.length>0||e.host.childNodes.length===0)&&p.every(y=>y.parentNode===e.host);return{host:e.host,namespace:a||o||"",styles:c,isCurrent:b,runScripts:async()=>{if(f.length>0&&await Qi(),!!b()){Gl(document,e.host);for(let y of f){let x=document.createElement("script");if(y.type&&(x.type=y.type),x.async=!1,y.kind==="external")x.src=y.src;else if(y.type.toLowerCase()==="importmap"){let v=aE(y.content,E=>TE(E,e.compositionUrl));x.textContent=v?JSON.stringify(v):y.content}else if(y.type.toLowerCase()==="module"){let v=y.scopeCompositionId?oE(a||y.scopeCompositionId,e.compositionUrl?.href):"";x.textContent=v+y.content}else y.scopeCompositionId?x.textContent=Df(y.content,y.scopeCompositionId,"[HyperFrames] composition script error:",s,a||y.scopeCompositionId,l,e.compositionUrl?.href):x.textContent=`(function(){${y.content}})();`;if(document.body.appendChild(x),e.injectedScripts.push(x),y.kind==="external"){let v=await rF(x);v.status!=="load"&&e.onDiagnostic?.({code:"external_composition_script_load_issue",details:{hostCompositionId:e.authoredCompositionId,runtimeCompositionId:e.runtimeCompositionId,hostCompositionSrc:e.hostCompositionSrc,resolvedScriptSrc:y.src,loadStatus:v.status,elapsedMs:v.elapsedMs}})}}}}}}async function kE(e,t){let n=Ul();if(qf(),n.length===0)return[];let r=DE(n,t),o=n.filter(a=>{if(t.has(a)||a.hasAttribute("data-composition-src")||a.children.length>0)return!1;let l=r.get(a)?.authoredCompositionId;return l?!!document.querySelector(`template#${CSS.escape(l)}-template`):!1}),i=[];for(let a of o){let l=r.get(a),s=l?.authoredCompositionId;if(!s)continue;let c=document.querySelector(`template#${CSS.escape(s)}-template`);$f(a);let d=await IE({host:a,authoredCompositionId:s,runtimeCompositionId:l?.runtimeCompositionId||s,hostCompositionSrc:`template#${s}-template`,sourceNode:c.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:null,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});i.push(d)}return i}async function sF(e){let t=Ul();if(qf(),t.length===0)return[];let n=DE(t,new Set),r=t.filter(i=>i.hasAttribute("data-composition-src"));return(await Promise.all(r.map(async i=>{let a=i.getAttribute("data-composition-src");if(!a)return null;let l=n.get(i),s=l?.authoredCompositionId||null,c=l?.runtimeCompositionId||s||null,d=null;try{d=new URL(a,document.baseURI)}catch{d=null}$f(i);let m=p=>{e.onDiagnostic?.({code:"external_composition_load_failed",details:{hostCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,errorMessage:p instanceof Error?p.message:"unknown_error"}}),$f(i)},f=async p=>{let b=await IE(p),y=b.runScripts;return b.runScripts=async()=>{try{await y()}catch(x){m(x)}},b};try{let p=s!=null?document.querySelector(`template#${CSS.escape(s)}-template`):null;if(p)return await f({host:i,authoredCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,sourceNode:p.content,hasTemplate:!0,fallbackBodyInnerHtml:"",compositionUrl:d,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,onDiagnostic:e.onDiagnostic});let b=await fetch(a);if(!b.ok)throw new Error(`HTTP ${b.status}`);let y=await b.text(),v=new DOMParser().parseFromString(y,"text/html");FE(v,d);let E=(s?v.querySelector(`template#${CSS.escape(s)}-template`):null)??v.querySelector("template"),C=E?E.content:v.body;return await f({host:i,authoredCompositionId:s,runtimeCompositionId:c,hostCompositionSrc:a,sourceNode:C,hasTemplate:!!E,fallbackBodyInnerHtml:v.body.innerHTML,compositionUrl:d,injectedStyles:e.injectedStyles,injectedScripts:e.injectedScripts,injectedLinks:e.injectedLinks,parseDimensionPx:e.parseDimensionPx,head:v.head,declaredVariableDefaults:yi(v.documentElement),variableDeclarer:v.documentElement,onDiagnostic:e.onDiagnostic})}catch(p){return m(p),null}}))).filter(i=>i!==null)}async function OE(e){let t=new Set,n={host:document.documentElement,namespace:"",referenceTarget:"document",styles:[...document.querySelectorAll("style")].map(m=>({element:m,authored:m.textContent??"",applied:m.textContent??""}))},r=await sF(e),o=await kE(e,new Set(r.map(({host:m})=>m))),i=[...r,...o];Vf([...i,n],t),await Promise.all(r.map(m=>m.runScripts()));let a=o.filter(m=>{if(m.isCurrent())return!0;for(let f of m.styles)f.element.remove();return window.__hfVariablesByComp&&delete window.__hfVariablesByComp[m.namespace],!1}),l=[...r.filter(m=>m.host.isConnected),...a],s=await kE(e,new Set(l.map(({host:m})=>m)));s.length&&Vf([...l,...s,n],t);let c=new Map([...a,...s].map(m=>[m.host,m]));for(let m of Ul()){let f=c.get(m);f&&await f.runScripts()}let d=[...l,...s].filter(m=>m.host.isConnected);Vf([...d,n],t)}function Vf(e,t){for(let{styles:r}of e)for(let o of r){let i=o.element.textContent??"";i!==o.applied&&(o.authored=i,o.applied=i)}bE(document,e.map(({host:r,namespace:o,styles:i,referenceTarget:a})=>({root:r,namespace:o,referenceTarget:a,exclude:e.filter(l=>l.host!==r&&r.contains(l.host)).map(l=>l.host),cssTexts:i.map(l=>l.authored)})),t).forEach((r,o)=>{let i=ur(e[o].host,kt);if(!(r.size===0&&i.length===0))for(let a of e[o].styles){let l=yE(a.authored,r,i);l!==a.applied&&(a.element.textContent=l),a.applied=l}}),cr()}function lF(e,t,n){let o={...e.declaredVariableDefaults??(He(t)?yi(t):{}),...pb(e.host)};cd(e.variableDeclarer??(He(t)?t:null),o,n),fb(e.host),Object.keys(o).length>0?(window.__hfVariablesByComp||(window.__hfVariablesByComp={}),window.__hfVariablesByComp[n]=o,dd(e.host,{...db(e.host,o,window),...Bs()})):window.__hfVariablesByComp&&delete window.__hfVariablesByComp[n]}function uF(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function cF(e){if(!Array.isArray(e))throw new Error("expected a JSON array");if(!e.every(uF))throw new Error("every array entry must be an object");return e}function dF(e){let n=e.vars.data?.captionState;return n==="dim"||n==="active"?n:void 0}function fF(e){return Ce(e)?e.dataset.captionWrapper!=="true"?e:e.querySelector(":scope > span")??null:null}function mF(){let e=[],t=document.querySelectorAll(".caption-group");for(let n of t)for(let r of n.children){if(!Ce(r))continue;let o=r.dataset.captionWrapper==="true"?r.querySelector(":scope > span"):r.tagName==="SPAN"?r:null;o&&e.push(o)}return e}function pF(e){let t=e.parentElement;if(t?.dataset.captionWrapper==="true")return t;let n=document.createElement("span");return n.style.display="inline-block",n.dataset.captionWrapper="true",e.parentNode?.insertBefore(n,e),n.appendChild(e),n}var jf=()=>window.gsap,GE=()=>fetch("caption-overrides.json").then(e=>e.ok?e.json():null),BE=e=>e===null?[]:cF(e);function UE(e){let t=e instanceof Error?e.message:String(e);globalThis.console.error(`[HyperFrames] Invalid caption-overrides.json: ${t}`)}function Kf(){return jf()?GE().then(BE).catch(e=>(UE(e),[])):Promise.resolve([])}function Yf(e,t){return!jf()||document.querySelectorAll(".caption-group").length===0?Promise.resolve():GE().then(n=>Xf(BE(n),e,t)).catch(UE)}function hF(e,t){return(e.wordId?fF(document.getElementById(e.wordId)):null)??(e.wordIndex!==void 0?t[e.wordIndex]??null:null)}function HE(e,t){return Object.fromEntries(t.filter(n=>e[n]!==void 0).map(n=>[n,e[n]]))}function zf(e,t){let n=e.style.color;e.style.color=t;let r=getComputedStyle(e).color;return e.style.color=n,r}function gF(e,t){let n=t[0]?.vars.startAt;return zf(e,n?.color===void 0?"":String(n.color))}function bF(e,t,n,r){let o=dF(e);if(o)return o;let i=String(e.vars.color);return/var\(|currentcolor/i.test(i)?zf(t,i)===n?"dim":"active":(r.has(i)||r.set(i,zf(t,i)),r.get(i)===n?"dim":"active")}function yF(e,t,n){if(e.dimColor)return e.dimColor;if(!(t.length===0||t.some(r=>r.vars.runBackwards)))return n}function xF(e,t,n,r){let o=e.getTweensOf(t).filter(l=>l.vars.color!==void 0).sort((l,s)=>l.startTime()-s.startTime()),i=gF(t,o);for(let l of o){let c=bF(l,t,i,r)==="dim"?n.dimColor:n.activeColor;c&&(l.vars.color=c),l.vars.runBackwards||l.invalidate?.()}let a=yF(n,o,i);a&&e.set(t,{color:a})}function SF(e,t,n,r){let o=HE(n,["x","y","scale","rotation"]),i=HE(n,["opacity","fontWeight","fontFamily"]);if(n.fontSize!==void 0&&(i.fontSize=`${n.fontSize}px`),(n.activeColor||n.dimColor)&&xF(e,t,n,r),Object.keys(i).length>0&&e.set(t,i),Object.keys(o).length>0){let a=pF(t);e.set(a,o)}}function Xf(e,t,n=()=>{}){let r=jf();if(!r||e.length===0)return;n();let o=mF(),i=new Map;for(let a of e){let l=hF(a,o);!l||t&&!t.some(s=>s.contains(l))||SF(r,l,a,i)}}var Qf="data-hf-edit-base-x",Zf="data-hf-edit-base-y",jn="data-hf-edit-original-translate",Wl=e=>{let t=parseFloat(e??"");return Number.isFinite(t)?t:0},EF=e=>{let t=[],n=0,r="";for(let o of e.trim())o==="("&&(n+=1),o===")"&&(n=Math.max(0,n-1)),/\s/.test(o)&&n===0?(r&&t.push(r),r=""):r+=o;return r&&t.push(r),t},WE=/^-?(?:\d+(?:\.\d+)?|\.\d+)px$/,Jf=(e,t)=>WE.test(e)&&WE.test(t)?`${parseFloat(e)+parseFloat(t)}px`:`calc(${e} + ${t})`,vF=(e,t,n)=>{if(!e||e==="none")return`${t} ${n}`;let[r,o,i]=EF(e);if(r===void 0)return`${t} ${n}`;if(o===void 0)return`${Jf(r,t)} ${n}`;let a=i===void 0?"":` ${i}`;return`${Jf(r,t)} ${Jf(o,n)}${a}`},AF=e=>{try{e.ownerDocument.defaultView?.gsap?.getProperty?.(e,"x")}catch{}},wF=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""}},Vl=new WeakMap;function jE(e){Vl.delete(e)}function _F(e,t){let n=Vl.get(e);if(!t?.force&&n!==void 0&&e.style.getPropertyValue("translate")!==n){wt("position_edit_fold_skipped",{hfId:e.getAttribute("data-hf-id")});return}let r=Wl(e.getAttribute("data-x"))-Wl(e.getAttribute(Qf)),o=Wl(e.getAttribute("data-y"))-Wl(e.getAttribute(Zf));e.hasAttribute(jn)||e.setAttribute(jn,wF(e)),n===void 0&&AF(e);let i=e.getAttribute(jn)??"",a=vF(i,`${r}px`,`${o}px`);e.style.setProperty("translate",a),Vl.set(e,e.style.getPropertyValue("translate"))}function ea(e,t){let n=e.querySelectorAll(`[${jn}]:not([${Qf}]):not([${Zf}])`);for(let i=0;i<n.length;i++){let a=n[i];if(a===void 0||!mr(a))continue;let l=a.getAttribute(jn)??"";l===""?a.style.removeProperty("translate"):a.style.setProperty("translate",l),a.removeAttribute(jn),Vl.delete(a)}let r=e.querySelectorAll(`[${Qf}], [${Zf}]`),o=0;for(let i=0;i<r.length;i++){let a=r[i];a===void 0||!mr(a)||(_F(a,t),o+=1)}return o}var VE="__hfPositionEditsSeekReapplyWrapped",$E=new WeakSet,qE=new WeakMap,zE=new WeakMap;function KE(e){let t=e,n=()=>{try{ea(t.document)}catch{}},r=m=>typeof m=="function"&&($E.has(m)||!!m[VE]),o=m=>{$E.add(m);try{Object.defineProperty(m,VE,{value:!0})}catch{}},i=m=>{if(typeof m!="function"||r(m))return m;let f=function(...p){let b=m.apply(this,p);return n(),b};return o(f),f},a=(m,f)=>{let p=qE.get(m);if(p?.has(f))return!0;let b=Object.getOwnPropertyDescriptor(m,f);if(b?.configurable===!1){let v=m[f];return typeof v=="function"&&(m[f]=i(v),n()),!1}let y=m[f],x=b?.set;return Object.defineProperty(m,f,{configurable:!0,enumerable:b?.enumerable??!0,get:()=>y,set:v=>{y=i(v),x?.call(m,v)}}),y=i(y),p??(p=new Set),p.add(f),qE.set(m,p),n(),!0},l=(m,f)=>{let p=zE.get(t),b=Object.getOwnPropertyDescriptor(t,m);if(!p?.has(m)){if(b?.configurable===!1){let v=t[m];return v?a(v,f):!1}let x=t[m];Object.defineProperty(t,m,{configurable:!0,enumerable:b?.enumerable??!0,get:()=>x,set:v=>{x=v,x&&a(x,f)}}),p??(p=new Set),p.add(m),zE.set(t,p)}let y=t[m];return y?a(y,f):!1},s=()=>{let m=l("__hf","seek"),f=l("__player","renderSeek");return m&&f};if(s())return;let c=120,d=t.setInterval(()=>{if(s()){t.clearInterval(d);return}c-=1,c<=0&&t.clearInterval(d)},50)}var CF=["video","audio","source","script",cn];function em(e,t=()=>!1){let n=r=>r.nodeType===Node.ELEMENT_NODE&&(r.matches(e)||r.querySelector(e)!==null||t(r));return r=>r.some(o=>o.type==="attributes"||Array.from(o.addedNodes).some(n)||Array.from(o.removedNodes).some(n))}var YE=e=>em([...CF,...e.map(t=>`[${t}]`)].join(","));var TF=3e3,mn=new Map,RF="data-hf-color-grading-canvas",MF="__hf_color_grading_canvas__";function lv(){if(typeof MutationObserver>"u"||typeof document>"u")return;let e=document.documentElement;if(!e)return;let t=r=>{Ce(r)&&(r.hasAttribute(vr)||r.setAttribute(vr,r.style.opacity))},n=r=>{if(He(r)){r.matches("video, img")&&t(r);for(let o of r.querySelectorAll("video, img"))t(o)}};n(e),new MutationObserver(r=>{for(let o of r)for(let i of o.addedNodes)n(i)}).observe(e,{childList:!0,subtree:!0})}var kF=16,LF=4,Rr={enabled:!1,position:.5,softness:0,lineWidth:2},tm=["#000000","#ffffff"],NF=["#1a1a1a","#f5f5dc"],sa=3,FF=sa-1,PF=5,_r=`${jt}.0`,XE=`${jt-1}.0`,JE=`${sa}.0`,DF=`${(FF+.5)/sa}`;function ta(e){let t=e.getAttribute(fl);return t==null?null:sx(t,Hs(e))}var IF=["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(`
|
|
372
|
+
`),uv=["#ifdef GL_FRAGMENT_PRECISION_HIGH","precision highp float;","#else","precision mediump float;","#endif","varying vec2 v_uv;","uniform sampler2D u_source;","uniform sampler2D u_blurSource;","uniform sampler2D u_bloomSource;","uniform sampler2D u_kuwaharaSource;","uniform sampler2D u_lut;","uniform sampler2D u_advanced;","uniform vec2 u_resolution;","uniform vec2 u_uvScale;","uniform vec2 u_uvOffset;","uniform float u_blurReady;","uniform float u_bloomReady;","uniform float u_kuwaharaReady;","uniform float u_lutEnabled;","uniform float u_lutSize;","uniform vec2 u_lutTextureSize;","uniform vec3 u_lutDomainMin;","uniform vec3 u_lutDomainMax;","uniform float u_lutIntensity;","uniform vec3 u_shadowWheel;","uniform vec3 u_midtoneWheel;","uniform vec3 u_highlightWheel;","uniform float u_rgbCurvesEnabled;","uniform float u_hueCurvesEnabled;","uniform float u_secondaryCount;","uniform float u_exposure;","uniform float u_contrast;","uniform float u_highlights;","uniform float u_shadows;","uniform float u_whites;","uniform float u_blacks;","uniform float u_temperature;","uniform float u_tint;","uniform float u_vibrance;","uniform float u_saturation;","uniform float u_vignette;","uniform float u_vignetteMidpoint;","uniform float u_vignetteRoundness;","uniform float u_vignetteFeather;","uniform float u_grain;","uniform float u_grainSize;","uniform float u_grainRoughness;","uniform float u_grainSeed;","uniform float u_effectTime;","uniform float u_blur;","uniform float u_bloom;","uniform float u_kuwahara;","uniform float u_pixelate;","uniform float u_chromaBleed;","uniform float u_tapeDamage;","uniform float u_tapeTracking;","uniform float u_tapeNoise;","uniform float u_tapeSpeed;","uniform float u_filmArtifacts;","uniform float u_halftone;","uniform float u_halftoneSize;","uniform float u_twoInkPrint;","uniform float u_twoInkPrintSize;","uniform float u_ascii;","uniform float u_asciiSize;","uniform float u_asciiInvert;","uniform float u_asciiStyle;","uniform float u_asciiColor;","uniform float u_asciiRotation;","uniform float u_dither;","uniform float u_ditherSize;","uniform float u_monoScreen;","uniform float u_monoScreenSize;","uniform float u_monoScreenAngle;","uniform float u_monoScreenSpread;","uniform float u_monoScreenShape;","uniform float u_monoScreenInvert;","uniform float u_scanlines;","uniform float u_scanlineCount;","uniform float u_scanlineSoftness;","uniform float u_chromaticAberration;","uniform float u_chromaticAngle;","uniform float u_crtCurvature;","uniform float u_digitalGlitch;","uniform float u_digitalGlitchColorSplit;","uniform float u_digitalGlitchLineTear;","uniform float u_digitalGlitchPixelate;","uniform float u_digitalGlitchBlockAmount;","uniform float u_digitalGlitchBlockDisplacement;","uniform float u_digitalGlitchBlockOpacity;","uniform float u_digitalGlitchSpeed;","uniform float u_engraving;","uniform float u_engravingSpacing;","uniform float u_engravingMinThickness;","uniform float u_engravingMaxThickness;","uniform float u_engravingAngle;","uniform float u_engravingContrast;","uniform float u_engravingSharpness;","uniform float u_engravingWave;","uniform float u_engravingWaveFrequency;","uniform float u_crosshatch;","uniform float u_crosshatchSpacing;","uniform float u_crosshatchThickness;","uniform float u_crosshatchAngle;","uniform float u_crosshatchContrast;","uniform float u_crosshatchEdges;","uniform float u_crosshatchLineWeight;","uniform float u_crosshatchWave;","uniform float u_crosshatchWaveFrequency;","uniform float u_paletteSize;","uniform vec3 u_palette0;","uniform vec3 u_palette1;","uniform vec3 u_palette2;","uniform vec3 u_palette3;","uniform vec3 u_palette4;","uniform vec3 u_palette5;","uniform float u_intensity;","uniform float u_compareEnabled;","uniform float u_comparePosition;","uniform float u_compareSoftness;","uniform float u_compareLineWidth;","const float PI = 3.14159265359;","float lumaOf(vec3 c){ return dot(c, vec3(0.2126, 0.7152, 0.0722)); }","float bt601Luma(vec3 c){ return dot(c, vec3(0.299, 0.587, 0.114)); }","float grainHash(vec2 p){ return fract(sin(dot(p, vec2(127.1, 311.7))) * 43758.5453123); }","float digitalHash(vec2 p){"," vec2 q = mod(floor(p), 251.0);"," float x = mod(q.x * q.x * 157.0 + q.x * 89.0, 251.0);"," float y = mod(q.y * q.y * 113.0 + q.y * 47.0, 251.0);"," float xy = mod(q.x * q.y * 71.0, 251.0);"," return mod(x + y + xy + 19.0, 251.0) / 251.0;","}","float colorSaturation(vec3 c){ return max(max(c.r, c.g), c.b) - min(min(c.r, c.g), c.b); }","vec2 clampUv(vec2 uv){ return clamp(uv, vec2(0.0), vec2(1.0)); }","vec2 applyCrtWarp(vec2 uv){"," vec2 centered = uv * 2.0 - 1.0;"," float curvature = clamp(u_crtCurvature, 0.0, 1.0) * 0.5;"," float dist = dot(centered, centered);"," centered *= 1.0 + curvature * dist;"," return centered * 0.5 + 0.5;","}","vec4 sampleSource(vec2 uv){ return texture2D(u_source, clampUv(uv)); }","vec4 sampleBlur(vec2 uv){ return texture2D(u_blurSource, clampUv(uv)); }","vec3 sampleBloom(vec2 uv){ return texture2D(u_bloomSource, clampUv(uv)).rgb; }","vec3 sampleKuwahara(vec2 uv){"," vec2 displayUv = uv * u_uvScale + u_uvOffset;"," return texture2D(u_kuwaharaSource, clampUv(displayUv)).rgb;","}","vec4 samplePrepared(vec2 uv){"," vec4 base = sampleSource(uv);","#ifdef HF_STAGE_BLUR"," float blur = clamp(u_blur, 0.0, 1.0);"," if (blur > 0.0 && u_blurReady > 0.5) base = mix(base, sampleBlur(uv), blur);","#endif","#ifdef HF_STAGE_KUWAHARA"," float kuwahara = clamp(u_kuwahara, 0.0, 1.0);"," if (kuwahara > 0.0 && u_kuwaharaReady > 0.5) {"," base.rgb = mix(base.rgb, sampleKuwahara(uv), kuwahara);"," }","#endif"," return base;","}","float tapeTrackingBand(float y, float center, float width){"," float offset = fract(y - center + 0.5) - 0.5;"," float triangle = max(0.0, 1.0 - abs(offset) / max(width, 0.0001));"," return triangle * triangle * (3.0 - 2.0 * triangle);","}","vec4 sampleMedia(vec2 uv){"," float pixel = clamp(u_pixelate, 0.0, 1.0);"," vec2 sampleUv = uv;","#ifdef HF_STAGE_PIXELATE"," if (pixel > 0.0) {"," float blockSize = mix(1.0, 48.0, pixel);"," vec2 cells = max(u_resolution / blockSize, vec2(1.0));"," sampleUv = (floor(clamp(uv, vec2(0.0), vec2(0.999999)) * cells) + 0.5) / cells;"," }","#endif","#ifdef HF_STAGE_TAPE"," float tapeDamage = clamp(u_tapeDamage, 0.0, 1.0);"," float tapeTracking = clamp(u_tapeTracking, 0.0, 1.0);"," float tapeNoise = clamp(u_tapeNoise, 0.0, 1.0);"," float tapeTime = u_effectTime * mix(0.0, 2.0, clamp(u_tapeSpeed, 0.0, 1.0));"," float tapeFrame = floor(tapeTime * 60.0);"," float tapeLine = floor(sampleUv.y * u_resolution.y * 0.5);"," float lineJitter = (digitalHash(vec2(tapeLine, floor(tapeFrame * 0.5))) - 0.5) * 1.8 * tapeNoise;"," float slowWobble = sin(sampleUv.y * 32.0 + tapeTime * 2.6) * 0.55;"," float headSwitch = smoothstep(0.88, 1.0, sampleUv.y) * sin(sampleUv.y * 240.0 + tapeTime * 8.0) * 4.0;"," float trackingShift = tapeTrackingBand(sampleUv.y, fract(0.08 + tapeTime * 0.083), 0.035);"," trackingShift -= tapeTrackingBand(sampleUv.y, fract(0.28 + tapeTime * 0.061), 0.03) * 0.8;"," trackingShift += tapeTrackingBand(sampleUv.y, fract(0.5 + tapeTime * 0.047), 0.04) * 0.75;"," trackingShift -= tapeTrackingBand(sampleUv.y, fract(0.72 + tapeTime * 0.037), 0.028) * 0.65;"," trackingShift += tapeTrackingBand(sampleUv.y, fract(0.89 + tapeTime * 0.029), 0.032) * 0.55;"," trackingShift *= tapeTracking * 48.0;"," float tapeShift = (lineJitter + slowWobble + headSwitch + trackingShift) * tapeDamage;","#endif"," float texelX = 1.0 / max(u_resolution.x * max(u_uvScale.x, 0.00001), 1.0);","#ifdef HF_STAGE_TAPE"," vec2 tapeUv = sampleUv + vec2(tapeShift * texelX, 0.0);","#else"," vec2 tapeUv = sampleUv;","#endif"," vec4 base = samplePrepared(tapeUv);","#ifdef HF_STAGE_TAPE"," if (tapeDamage > 0.0) {"," vec2 lumaStep = vec2(texelX * mix(1.0, 3.5, tapeDamage), 0.0);"," vec3 leftTape = samplePrepared(tapeUv - lumaStep).rgb;"," vec3 rightTape = samplePrepared(tapeUv + lumaStep).rgb;"," float tapeLuma = (bt601Luma(leftTape) + bt601Luma(base.rgb) * 2.0 + bt601Luma(rightTape)) * 0.25;"," vec3 centerChroma = base.rgb - vec3(bt601Luma(base.rgb));"," vec3 tapeColor = vec3(tapeLuma) + centerChroma;"," vec3 ghost = samplePrepared(tapeUv - vec2(texelX * 12.0, 0.0)).rgb;"," tapeColor = mix(tapeColor, ghost, 0.045 * tapeDamage);"," float fineNoise = digitalHash(floor(gl_FragCoord.xy) + vec2(tapeFrame * 17.0, tapeFrame * 3.0)) - 0.5;"," float band = digitalHash(vec2(floor(sampleUv.y * 92.0), floor(tapeFrame / 3.0)));"," float dropout = smoothstep(0.985, 1.0, band) * (digitalHash(vec2(floor(sampleUv.x * 18.0), tapeLine)) - 0.5);"," tapeColor += (fineNoise * 0.035 + dropout * 0.12) * tapeDamage * tapeNoise;"," base.rgb = mix(base.rgb, clamp(tapeColor, 0.0, 1.0), tapeDamage);"," }","#endif","#ifdef HF_STAGE_CHROMA_BLEED"," float chromaBleed = clamp(u_chromaBleed, 0.0, 1.0);"," if (chromaBleed > 0.0) {"," float radius = mix(1.0, 4.0, chromaBleed);"," vec2 stepUv = vec2(texelX * radius, 0.0);"," vec3 c0 = base.rgb;"," vec3 c1 = samplePrepared(tapeUv - stepUv).rgb;"," vec3 c2 = samplePrepared(tapeUv + stepUv).rgb;"," vec3 c3 = samplePrepared(tapeUv - stepUv * 2.0).rgb;"," vec3 c4 = samplePrepared(tapeUv + stepUv * 2.0).rgb;"," float centerLuma = lumaOf(base.rgb);"," vec3 blurredChroma = ((c0 - vec3(lumaOf(c0))) * 6.0 + (c1 - vec3(lumaOf(c1))) * 4.0 + (c2 - vec3(lumaOf(c2))) * 4.0 + (c3 - vec3(lumaOf(c3))) + (c4 - vec3(lumaOf(c4)))) / 16.0;"," base.rgb = mix(base.rgb, clamp(vec3(centerLuma) + blurredChroma, 0.0, 1.0), chromaBleed);"," }","#endif"," return base;","}","#ifdef HF_STAGE_CHROMATIC","vec4 sampleChromaticMedia(vec2 uv, vec4 center){"," float amount = clamp(u_chromaticAberration, 0.0, 1.0);"," if (amount <= 0.0) return center;"," float angle = clamp(u_chromaticAngle, 0.0, 1.0) * PI * 2.0;"," vec2 offset = vec2(cos(angle), sin(angle)) * amount * 0.02;"," vec4 positive = sampleMedia(uv + offset);"," vec4 negative = sampleMedia(uv - offset);"," vec3 split = vec3(positive.r, center.g, negative.b);"," return vec4(split, center.a);","}","#else","vec4 sampleChromaticMedia(vec2 uv, vec4 center){ return center; }","#endif","vec3 sampleDigitalSplit(vec2 uv, vec2 block, float time, float amount){"," float split = amount * 0.06;"," float direction = digitalHash(block * 0.4 + vec2(floor(time * 3.7), floor(time * 5.3)));"," vec2 axis = direction > 0.66 ? vec2(1.0, 0.0) : direction > 0.33 ? vec2(0.0, 1.0) : vec2(0.7071);"," vec4 center = sampleMedia(uv);"," return vec3(sampleMedia(uv + axis * split).r, center.g, sampleMedia(uv - axis * split).b);","}","#ifdef HF_STAGE_GLITCH","vec3 applyDigitalGlitch(vec2 uv, vec3 source){"," float amount = clamp(u_digitalGlitch, 0.0, 1.0);"," if (amount <= 0.0) return source;"," float colorSplit = clamp(u_digitalGlitchColorSplit, 0.0, 1.0) * 2.0;"," float lineTear = clamp(u_digitalGlitchLineTear, 0.0, 1.0) * 2.0;"," float pixelate = clamp(u_digitalGlitchPixelate, 0.0, 1.0) * 2.0;"," float blockAmount = clamp(u_digitalGlitchBlockAmount, 0.0, 1.0);"," float blockDisplacement = clamp(u_digitalGlitchBlockDisplacement, 0.0, 1.0) * 2.0;"," float blockOpacity = clamp(u_digitalGlitchBlockOpacity, 0.0, 1.0);"," float speed = clamp(u_digitalGlitchSpeed, 0.0, 1.0) * 2.0;"," float time = u_effectTime * speed;"," float blockCount = 8.0 + blockAmount * 60.0;"," vec2 block = floor(uv * blockCount);"," float randomA = digitalHash(block + vec2(floor(time * 7.3), floor(time * 11.1)));"," float randomB = digitalHash(block * 0.7 + vec2(17.3 + floor(time * 6.6), 29.1));"," float randomC = digitalHash(block + vec2(floor(time * 5.7) * 13.0, 41.0));"," float randomD = digitalHash(block * 1.3 + vec2(7.0, floor(time * 3.2) * 7.0));"," vec2 displaced = uv;"," if (blockDisplacement > 0.0 && blockOpacity > 0.0) {"," float threshold = 1.0 - blockDisplacement * 0.4;"," if (randomA > threshold) {"," displaced += vec2((randomB - 0.5) * blockDisplacement * 0.5, (randomC - 0.5) * blockDisplacement * 0.3);"," }"," if (randomD > 0.92 && blockDisplacement > 0.5) {"," displaced.x += (digitalHash(vec2(block.y, floor(time * 8.0))) - 0.5) * blockDisplacement;"," }"," displaced = mix(uv, displaced, blockOpacity);"," }"," if (lineTear > 0.0) {"," float row = floor(uv.y * (50.0 + lineTear * 150.0));"," float tearA = digitalHash(vec2(row * 7.3 + floor(time * 12.0 + row * 0.1) * 3.7, 13.0));"," float tearB = digitalHash(vec2(row * 13.7 + floor(time * 8.3) * 5.1, 31.0));"," if (tearA > 1.0 - lineTear * 0.5) displaced.x += (tearB - 0.5) * lineTear * 0.4;"," if (tearB > 0.95 && lineTear > 0.3) displaced.x += (tearA - 0.5) * lineTear * 0.8;"," }"," if (pixelate > 0.0) {"," float pixelRandom = digitalHash(block * 0.5 + vec2(floor(time * 4.9), 53.0));"," if (pixelRandom > 1.0 - pixelate * 0.35) {"," float cells = 4.0 + (1.0 - pixelRandom) * pixelate * 40.0;"," displaced = (floor(clampUv(displaced) * cells) + 0.5) / cells;"," }"," }"," displaced = clampUv(displaced);"," vec3 glitch = sampleDigitalSplit(displaced, block, time, colorSplit);"," if (blockDisplacement > 0.2 && blockOpacity > 0.0) {"," float corruption = digitalHash(block * 1.1 + vec2(floor(time * 11.9), 67.0));"," vec3 changed = glitch;"," if (corruption > 0.9) changed = 1.0 - glitch;"," else if (corruption > 0.85) changed = corruption > 0.875 ? glitch.gbr : glitch.brg;"," else if (corruption > 0.8) {"," float channel = digitalHash(block + vec2(73.0));"," if (channel > 0.66) changed.r = min(changed.r * 2.0, 1.0);"," else if (channel > 0.33) changed.g = min(changed.g * 2.0, 1.0);"," else changed.b = min(changed.b * 2.0, 1.0);"," }"," glitch = mix(glitch, changed, blockOpacity);"," }"," if (blockOpacity > 0.0) {"," float flash = digitalHash(block * 0.8 + vec2(floor(time * 14.7), 83.0));"," vec3 flashed = flash > 0.97 ? min(glitch * 1.8, vec3(1.0)) : flash > 0.94 ? glitch * 0.3 : glitch;"," glitch = mix(glitch, flashed, blockOpacity * 0.6);"," }"," if (lineTear > 0.1) {"," float interference = pow(sin(uv.y * (300.0 + randomA * 200.0) + time * 30.0) * 0.5 + 0.5, 6.0);"," glitch -= interference * 0.08 * lineTear;"," }"," return mix(source, clamp(glitch, 0.0, 1.0), amount);","}","#else","vec3 applyDigitalGlitch(vec2 uv, vec3 source){ return source; }","#endif","float dustMask(vec2 uv, float frameBucket){"," vec2 grid = vec2(128.0, 72.0);"," vec2 cell = floor(uv * grid);"," vec2 local = fract(uv * grid) - 0.5;"," float chance = grainHash(cell + frameBucket * 19.13);"," float radius = mix(0.05, 0.34, grainHash(cell + 7.1));"," return step(0.9975, chance) * (1.0 - smoothstep(radius, radius + 0.08, length(local)));","}","float screenDot(vec2 p, float ink, float angle, float sharpness){"," float c = cos(angle);"," float s = sin(angle);"," vec2 q = mat2(c, -s, s, c) * p;"," vec2 d = fract(q) - 0.5;"," float radius = sqrt(clamp(ink, 0.0, 1.0)) * 0.68;"," float edge = mix(0.16, 0.025, sharpness);"," return 1.0 - smoothstep(radius - edge, radius + edge, length(d));","}","vec3 paletteColor(float index);","float monoScreenMask(vec2 local, float radius, float shape, float softness){"," vec2 centered = local - 0.5;"," float distanceToInk = length(centered);"," if (shape > 0.5 && shape < 1.5) distanceToInk = max(abs(centered.x), abs(centered.y));"," if (shape > 1.5 && shape < 2.5) distanceToInk = abs(centered.x) + abs(centered.y);"," if (shape > 2.5 && shape < 3.5) distanceToInk = max(abs(centered.x) * 0.86 + centered.y * 0.5, -centered.y);"," if (shape > 3.5) distanceToInk = abs(centered.y);"," float shapeRadius = shape > 3.5 ? radius * 0.45 : radius;"," return 1.0 - smoothstep(shapeRadius, shapeRadius + softness, distanceToInk);","}","#ifdef HF_STAGE_MONO_SCREEN","vec3 applyMonoScreen(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float invert = step(0.5, u_monoScreenInvert);"," float coverage = mix(1.0 - lumaOf(source), lumaOf(source), invert);"," coverage = pow(clamp(coverage, 0.0, 1.0), mix(1.7, 0.58, clamp(u_monoScreenSpread, 0.0, 1.0)));"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float cellPx = mix(4.0, 18.0, clamp(u_monoScreenSize, 0.0, 1.0)) * scale;"," float angle = clamp(u_monoScreenAngle, 0.0, 1.0) * PI * 0.5;"," float cosine = cos(angle);"," float sine = sin(angle);"," vec2 point = mat2(cosine, -sine, sine, cosine) * gl_FragCoord.xy / max(cellPx, 1.0);"," float radius = sqrt(coverage) * 0.68;"," float inkMask = monoScreenMask(fract(point), radius, floor(u_monoScreenShape + 0.5), 0.035);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," return mix(source, mix(paper, ink, inkMask), amount);","}","#else","vec3 applyMonoScreen(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_ENGRAVING","vec3 applyEngraving(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float spacing = mix(3.0, 20.0, clamp(u_engravingSpacing, 0.0, 1.0));"," float minThickness = mix(0.0, 2.0, clamp(u_engravingMinThickness, 0.0, 1.0));"," float maxThickness = mix(1.0, 8.0, clamp(u_engravingMaxThickness, 0.0, 1.0));"," float angle = clamp(u_engravingAngle, 0.0, 1.0) * PI;"," vec2 alongAxis = vec2(cos(angle), sin(angle));"," vec2 acrossAxis = vec2(-alongAxis.y, alongAxis.x);"," float along = dot(gl_FragCoord.xy, alongAxis);"," float across = dot(gl_FragCoord.xy, acrossAxis);"," float frequency = mix(1.0, 10.0, clamp(u_engravingWaveFrequency, 0.0, 1.0));"," float wave = sin(along * frequency * 0.01);"," across += wave * clamp(u_engravingWave, 0.0, 1.0) * 3.0;"," float lineIndex = floor(across / max(spacing, 1.0));"," float lineDistance = abs(fract(across / max(spacing, 1.0)) - 0.5) * spacing;"," float contrast = mix(0.5, 2.0, clamp(u_engravingContrast, 0.0, 1.0));"," float darkness = 1.0 - pow(clamp(lumaOf(source), 0.0, 1.0), contrast);"," float variation = mix(0.88, 1.12, digitalHash(vec2(lineIndex, 73.0)));"," float thickness = mix(minThickness, maxThickness, darkness) * variation;"," float edge = mix(1.0, 0.3, clamp(u_engravingSharpness, 0.0, 1.0));"," float inkMask = 1.0 - smoothstep(max(thickness * 0.5 - edge, 0.0), thickness * 0.5 + edge, lineDistance);"," inkMask *= smoothstep(0.015, 0.12, darkness);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," return mix(source, mix(paper, ink, inkMask), amount);","}","#else","vec3 applyEngraving(vec3 source, float amount){ return source; }","#endif","float crosshatchLine(vec2 pixel, float angle, float spacing, float thickness, float seed){"," vec2 alongAxis = vec2(cos(angle), sin(angle));"," vec2 acrossAxis = vec2(-alongAxis.y, alongAxis.x);"," float along = dot(pixel, alongAxis);"," float across = dot(pixel, acrossAxis);"," float frequency = mix(1.0, 10.0, clamp(u_crosshatchWaveFrequency, 0.0, 1.0));"," across += sin(along * frequency * 0.02 + u_effectTime + seed) * clamp(u_crosshatchWave, 0.0, 1.0) * 5.0;"," float lineIndex = floor(across / max(spacing, 1.0));"," float distanceToLine = abs(fract(across / max(spacing, 1.0)) - 0.5) * spacing;"," float variation = mix(1.0, 0.5 + digitalHash(vec2(lineIndex, seed)), clamp(u_crosshatchLineWeight, 0.0, 1.0));"," float halfWidth = thickness * variation * 0.5;"," return 1.0 - smoothstep(max(halfWidth - 0.5, 0.0), halfWidth + 0.5, distanceToLine);","}","float crosshatchEdge(vec2 uv){"," vec2 texel = 1.0 / max(u_resolution * u_uvScale, vec2(1.0));"," float tl = lumaOf(sampleMedia(uv + texel * vec2(-1.0, -1.0)).rgb);"," float tc = lumaOf(sampleMedia(uv + texel * vec2( 0.0, -1.0)).rgb);"," float tr = lumaOf(sampleMedia(uv + texel * vec2( 1.0, -1.0)).rgb);"," float ml = lumaOf(sampleMedia(uv + texel * vec2(-1.0, 0.0)).rgb);"," float mr = lumaOf(sampleMedia(uv + texel * vec2( 1.0, 0.0)).rgb);"," float bl = lumaOf(sampleMedia(uv + texel * vec2(-1.0, 1.0)).rgb);"," float bc = lumaOf(sampleMedia(uv + texel * vec2( 0.0, 1.0)).rgb);"," float br = lumaOf(sampleMedia(uv + texel * vec2( 1.0, 1.0)).rgb);"," float gx = -tl - 2.0 * ml - bl + tr + 2.0 * mr + br;"," float gy = -tl - 2.0 * tc - tr + bl + 2.0 * bc + br;"," return length(vec2(gx, gy));","}","#ifdef HF_STAGE_CROSSHATCH","vec3 applyCrosshatch(vec2 uv, vec3 source, float amount){"," if (amount <= 0.0) return source;"," float spacing = mix(5.0, 30.0, clamp(u_crosshatchSpacing, 0.0, 1.0));"," float thickness = mix(1.0, 5.0, clamp(u_crosshatchThickness, 0.0, 1.0));"," float baseAngle = -clamp(u_crosshatchAngle, 0.0, 1.0) * PI;"," float contrast = mix(0.5, 2.0, clamp(u_crosshatchContrast, 0.0, 1.0));"," float darkness = 1.0 - pow(clamp(lumaOf(source), 0.0, 1.0), contrast);"," vec3 ink = paletteColor(0.0);"," vec3 paper = paletteColor(max(u_paletteSize - 1.0, 1.0));"," vec3 result = paper;"," float layer = crosshatchLine(gl_FragCoord.xy, baseAngle, spacing, thickness, 1.0) * smoothstep(0.2, 0.4, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle + PI * 0.5, spacing * 0.95, thickness * 0.9, 2.0) * smoothstep(0.4, 0.6, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle + PI * 0.25, spacing * 0.9, thickness * 0.8, 3.0) * smoothstep(0.6, 0.8, darkness);"," result = mix(result, ink, layer);"," layer = crosshatchLine(gl_FragCoord.xy, baseAngle - PI * 0.25, spacing * 0.85, thickness * 0.7, 4.0) * smoothstep(0.75, 0.9, darkness);"," result = mix(result, ink, layer);"," result = mix(result, ink, smoothstep(0.9, 1.0, darkness) * 0.8);"," float edgeStrength = mix(0.0, 2.0, clamp(u_crosshatchEdges, 0.0, 1.0));"," float edge = smoothstep(0.1, 0.3, crosshatchEdge(uv)) * edgeStrength;"," result = mix(result, ink, clamp(edge, 0.0, 1.0));"," return mix(source, result, amount);","}","#else","vec3 applyCrosshatch(vec2 uv, vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_HALFTONE","vec3 applyHalftone(vec3 source, float amount){"," if (amount <= 0.0) return source;"," vec3 cmy = 1.0 - source;"," float k = min(cmy.r, min(cmy.g, cmy.b));"," vec3 inks = max(cmy - vec3(k * 0.72), 0.0);"," float scale = min(u_resolution.x, u_resolution.y) / 540.0;"," float cellPx = mix(5.0, 14.0, clamp(u_halftoneSize, 0.0, 1.0)) * max(scale, 0.25);"," vec2 p = gl_FragCoord.xy / max(cellPx, 1.0);"," float cyan = screenDot(p, inks.r, 0.261799, 0.78);"," float magenta = screenDot(p, inks.g, 1.308997, 0.78);"," float yellow = screenDot(p, inks.b, 0.0, 0.78);"," float blackInk = screenDot(p, k, 0.785398, 0.82);"," vec3 printColor = vec3(0.975, 0.962, 0.925);"," printColor *= mix(vec3(1.0), vec3(0.05, 0.79, 0.86), cyan);"," printColor *= mix(vec3(1.0), vec3(0.91, 0.08, 0.48), magenta);"," printColor *= mix(vec3(1.0), vec3(0.98, 0.83, 0.08), yellow);"," printColor *= mix(vec3(1.0), vec3(0.035), blackInk * 0.92);"," return mix(source, printColor, amount);","}","#else","vec3 applyHalftone(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_TWO_INK_PRINT","vec3 applyTwoInkPrint(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float sourceLuma = lumaOf(source);"," float darkness = 1.0 - sourceLuma;"," float warmBias = clamp(source.r - (source.g + source.b) * 0.5, -0.35, 0.35);"," float coolBias = clamp((source.g + source.b) * 0.5 - source.r, -0.35, 0.35);"," float redTone = smoothstep(0.08, 0.72, darkness) * (1.0 - 0.68 * smoothstep(0.66, 1.0, darkness));"," float tealTone = smoothstep(0.30, 0.92, darkness);"," float redCoverage = clamp(redTone + warmBias * 1.35 - coolBias * 0.35, 0.0, 1.0);"," float tealCoverage = clamp(tealTone + coolBias * 1.1 - warmBias * 0.45, 0.0, 1.0);"," float scale = min(u_resolution.x, u_resolution.y) / 540.0;"," float cellPx = mix(4.5, 12.0, clamp(u_twoInkPrintSize, 0.0, 1.0)) * max(scale, 0.25);"," vec2 p = gl_FragCoord.xy / max(cellPx, 1.0);"," float redDot = screenDot(p, redCoverage, 0.261799, 0.84);"," float tealDot = screenDot(p + vec2(0.12, -0.08), tealCoverage, 1.308997, 0.84);"," float paperNoise = grainHash(floor(gl_FragCoord.xy * 0.5)) - 0.5;"," vec3 paper = vec3(0.955, 0.910, 0.795) + paperNoise * 0.018;"," vec3 vermilion = vec3(0.88, 0.13, 0.075);"," vec3 teal = vec3(0.035, 0.285, 0.355);"," vec3 overprint = vec3(0.045, 0.055, 0.052);"," vec3 printColor = paper * (1.0 - redDot) * (1.0 - tealDot);"," printColor += vermilion * redDot * (1.0 - tealDot);"," printColor += teal * (1.0 - redDot) * tealDot;"," printColor += overprint * redDot * tealDot;"," return mix(source, clamp(printColor, 0.0, 1.0), amount);","}","#else","vec3 applyTwoInkPrint(vec3 source, float amount){ return source; }","#endif","vec3 paletteColor(float index){"," if (index < 0.5) return u_palette0;"," if (index < 1.5) return u_palette1;"," if (index < 2.5) return u_palette2;"," if (index < 3.5) return u_palette3;"," if (index < 4.5) return u_palette4;"," return u_palette5;","}","float bayer4(vec2 point){"," vec2 cell = mod(floor(point), 4.0);"," if (cell.y < 0.5) {"," if (cell.x < 0.5) return 0.5 / 16.0;"," if (cell.x < 1.5) return 8.5 / 16.0;"," if (cell.x < 2.5) return 2.5 / 16.0;"," return 10.5 / 16.0;"," }"," if (cell.y < 1.5) {"," if (cell.x < 0.5) return 12.5 / 16.0;"," if (cell.x < 1.5) return 4.5 / 16.0;"," if (cell.x < 2.5) return 14.5 / 16.0;"," return 6.5 / 16.0;"," }"," if (cell.y < 2.5) {"," if (cell.x < 0.5) return 3.5 / 16.0;"," if (cell.x < 1.5) return 11.5 / 16.0;"," if (cell.x < 2.5) return 1.5 / 16.0;"," return 9.5 / 16.0;"," }"," if (cell.x < 0.5) return 15.5 / 16.0;"," if (cell.x < 1.5) return 7.5 / 16.0;"," if (cell.x < 2.5) return 13.5 / 16.0;"," return 5.5 / 16.0;","}","float standardAsciiSample(float brightness, vec2 grid){"," if (brightness < 0.1) return 0.0;"," if (brightness < 0.2) return grid.x == 2.0 && grid.y == 5.0 ? 1.0 : 0.0;"," if (brightness < 0.3) return grid.x == 2.0 && (grid.y == 2.0 || grid.y == 4.0) ? 1.0 : 0.0;"," if (brightness < 0.4) return (grid.y == 2.0 || grid.y == 4.0) && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.5) {"," bool cross = (grid.x == 2.0 && grid.y >= 2.0 && grid.y <= 4.0) || (grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0);"," bool diagonals = (grid.x == 1.0 || grid.x == 3.0) && (grid.y == 2.0 || grid.y == 4.0);"," return cross || diagonals ? 1.0 : 0.0;"," }"," if (brightness < 0.6) {"," bool ring = ((grid.y == 2.0 || grid.y == 4.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 1.0 || grid.x == 3.0) && grid.y == 3.0);"," return ring ? 1.0 : 0.0;"," }"," bool outline = ((grid.y == 1.0 || grid.y == 5.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 0.0 || grid.x == 4.0) && grid.y >= 2.0 && grid.y <= 4.0) || ((grid.x == 1.0 || grid.x == 3.0) && grid.y >= 1.0 && grid.y <= 5.0);"," if (brightness < 0.7) return outline ? 1.0 : 0.0;"," if (brightness < 0.8) {"," bool slash = abs(grid.x - 2.0) == abs(grid.y - 3.0) && grid.x >= 1.0 && grid.x <= 3.0;"," return outline || slash ? 1.0 : 0.0;"," }"," if (brightness < 0.9) {"," bool loops = ((grid.y == 1.0 || grid.y == 3.0 || grid.y == 5.0) && grid.x >= 1.0 && grid.x <= 3.0) || ((grid.x == 1.0 || grid.x == 3.0) && (grid.y == 2.0 || grid.y == 4.0));"," return loops ? 1.0 : 0.0;"," }"," return 1.0;","}","float asciiStyleSample(float style, float brightness, vec2 uv){"," vec2 grid = floor(uv * vec2(5.0, 7.0));"," if (style < 0.5) return standardAsciiSample(brightness, grid);"," if (style < 1.5) {"," float checker = mod(grid.x + grid.y, 2.0);"," float ruled = mod(grid.x, 2.0) == 0.0 || mod(grid.y, 2.0) == 0.0 ? 1.0 : 0.0;"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return checker == 0.0 ? 0.5 : 0.0;"," if (brightness < 0.375) return ruled * 0.6;"," if (brightness < 0.5) return checker == 0.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return ruled > 0.5 ? 1.0 : 0.3;"," if (brightness < 0.75) return checker == 0.0 ? 1.0 : 0.7;"," if (brightness < 0.875) return ruled > 0.5 ? 1.0 : 0.85;"," return 1.0;"," }"," if (style < 2.5) {"," if (brightness < 0.14) return 0.0;"," if (brightness < 0.28) return grid.x == 2.0 && grid.y == 1.0 ? 1.0 : 0.0;"," if (brightness < 0.42) return grid.x == 2.0 && grid.y == 5.0 ? 1.0 : 0.0;"," if (brightness < 0.56) return grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.7) return (grid.x == 2.0 && grid.y >= 2.0 && grid.y <= 4.0) || (grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0) ? 1.0 : 0.0;"," if (brightness < 0.84) return abs(grid.x - 2.0) == abs(grid.y - 3.0) && grid.y >= 2.0 && grid.y <= 4.0 ? 1.0 : 0.0;"," return grid.x == 1.0 || grid.x == 3.0 || grid.y == 2.0 || grid.y == 4.0 ? 1.0 : 0.0;"," }"," if (style < 3.5) return grid.y >= 6.0 - brightness * 7.0 ? 1.0 : 0.0;"," if (style < 4.5) {"," vec2 dots = floor(uv * vec2(2.0, 4.0));"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return dots.y == 3.0 ? 1.0 : 0.0;"," if (brightness < 0.375) return dots.y >= 2.0 ? 1.0 : 0.0;"," if (brightness < 0.5) return dots.y >= 1.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return dots.y >= 1.0 || dots.x == 1.0 ? 1.0 : 0.0;"," if (brightness < 0.75) return 1.0;"," if (brightness < 0.875) return mod(grid.x + grid.y, 2.0) < 1.5 ? 1.0 : 0.7;"," return 1.0;"," }"," if (style < 5.5) {"," if (brightness < 0.125) return 0.0;"," if (brightness < 0.25) return grid.x == 2.0 && grid.y == 3.0 ? 1.0 : 0.0;"," if (brightness < 0.375) return grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.5) return grid.x + grid.y == 5.0 || grid.x + grid.y == 6.0 ? 1.0 : 0.0;"," if (brightness < 0.625) return grid.x == 2.0 ? 1.0 : 0.0;"," if (brightness < 0.75) return abs(grid.x - grid.y / 1.4) < 0.7 && grid.x >= 1.0 && grid.x <= 3.0 ? 1.0 : 0.0;"," if (brightness < 0.875) return grid.x == 2.0 || grid.y == 3.0 ? 1.0 : 0.0;"," return grid.x == 1.0 || grid.x == 3.0 || grid.y == 2.0 || grid.y == 4.0 ? 1.0 : 0.0;"," }"," if (style < 6.5) {"," bool top = grid.y == 0.0 && grid.x >= 1.0 && grid.x <= 3.0;"," bool topLeft = grid.x == 1.0 && grid.y <= 3.0;"," bool topRight = grid.x == 3.0 && grid.y <= 3.0;"," bool middle = grid.y == 3.0 && grid.x >= 1.0 && grid.x <= 3.0;"," bool bottomLeft = grid.x == 1.0 && grid.y >= 3.0;"," bool bottomRight = grid.x == 3.0 && grid.y >= 3.0;"," bool bottom = grid.y == 6.0 && grid.x >= 1.0 && grid.x <= 3.0;"," if (brightness < 0.1) return 0.0;"," if (brightness < 0.2) return topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.3) return top || topRight || middle || bottomLeft || bottom ? 1.0 : 0.0;"," if (brightness < 0.4) return top || topRight || middle || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.5) return topLeft || middle || topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.6) return top || topLeft || middle || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.7) return top || topLeft || middle || bottomLeft || bottomRight || bottom ? 1.0 : 0.0;"," if (brightness < 0.8) return top || topRight || bottomRight ? 1.0 : 0.0;"," if (brightness < 0.9) return top || topLeft || topRight || middle || bottomLeft || bottomRight || bottom ? 1.0 : 0.0;"," return top || topLeft || topRight || middle || bottomRight || bottom ? 1.0 : 0.0;"," }"," float slash = grid.x - grid.y;"," float backslash = grid.x + grid.y;"," if (brightness < 0.16) return 0.0;"," if (brightness < 0.33) return mod(slash, 3.0) < 0.5 ? 1.0 : 0.0;"," if (brightness < 0.5) return mod(slash, 2.0) < 0.5 ? 1.0 : 0.0;"," bool diagonalA = mod(slash, 2.0) < 0.5;"," bool diagonalB = mod(backslash, 2.0) < 0.5;"," if (brightness < 0.66) return diagonalA || diagonalB ? 1.0 : 0.0;"," if (brightness < 0.83) return mod(slash, 1.5) < 0.5 || mod(backslash, 1.5) < 0.5 ? 1.0 : 0.2;"," return mod(slash, 1.0) < 0.6 || mod(backslash, 1.0) < 0.6 ? 1.0 : 0.5;","}","vec3 rgbToHsv(vec3 color){"," float maximum = max(max(color.r, color.g), color.b);"," float minimum = min(min(color.r, color.g), color.b);"," float delta = maximum - minimum;"," float hue = 0.0;"," if (delta > 0.00001) {"," if (maximum == color.r) hue = mod((color.g - color.b) / delta, 6.0);"," else if (maximum == color.g) hue = (color.b - color.r) / delta + 2.0;"," else hue = (color.r - color.g) / delta + 4.0;"," hue = fract(hue / 6.0);"," }"," return vec3(hue, maximum > 0.00001 ? delta / maximum : 0.0, maximum);","}","vec3 hsvToRgb(vec3 color){"," vec3 bands = abs(fract(color.xxx + vec3(0.0, 0.6666667, 0.3333333)) * 6.0 - 3.0);"," return color.z * mix(vec3(1.0), clamp(bands - 1.0, 0.0, 1.0), color.y);","}","vec4 sampleAdvancedCurve(float coordinate, float row){",` float position = clamp(coordinate, 0.0, 1.0) * ${XE};`," float lower = floor(position);",` float upper = min(lower + 1.0, ${XE});`,` float y = (row + 0.5) / ${JE};`,` vec4 before = texture2D(u_advanced, vec2((lower + 0.5) / ${_r}, y));`,` vec4 after = texture2D(u_advanced, vec2((upper + 0.5) / ${_r}, y));`," return mix(before, after, position - lower);","}","vec4 sampleHueCurve(float coordinate){",` float position = fract(coordinate) * ${_r};`," float lower = floor(position);",` float upper = mod(lower + 1.0, ${_r});`,` float y = 1.5 / ${JE};`,` vec4 before = texture2D(u_advanced, vec2((lower + 0.5) / ${_r}, y));`,` vec4 after = texture2D(u_advanced, vec2((upper + 0.5) / ${_r}, y));`," return mix(before, after, position - lower);","}","vec4 advancedConfig(float index){",` return texture2D(u_advanced, vec2((index + 0.5) / ${_r}, ${DF}));`,"}","vec3 wheelDirection(float hue){"," vec3 direction = hsvToRgb(vec3(fract(hue), 1.0, 1.0));"," direction -= vec3(lumaOf(direction));"," return direction / max(max(max(abs(direction.r), abs(direction.g)), abs(direction.b)), 0.0001);","}","vec3 applyTonalWheels(vec3 color){"," float luma = lumaOf(color);"," float shadows = 1.0 - smoothstep(0.0, 0.6, luma);"," float highlights = smoothstep(0.4, 1.0, luma);"," float midtones = max(0.0, 1.0 - shadows - highlights);"," float total = max(shadows + midtones + highlights, 0.0001);"," vec3 weights = vec3(shadows, midtones, highlights) / total;"," color += wheelDirection(u_shadowWheel.x) * u_shadowWheel.y * weights.x * 0.18;"," color += wheelDirection(u_midtoneWheel.x) * u_midtoneWheel.y * weights.y * 0.18;"," color += wheelDirection(u_highlightWheel.x) * u_highlightWheel.y * weights.z * 0.18;"," color += u_shadowWheel.z * weights.x * 0.25;"," color += u_midtoneWheel.z * weights.y * 0.25;"," color += u_highlightWheel.z * weights.z * 0.25;"," return color;","}","#ifdef HF_STAGE_RGB_CURVES","vec3 applyRgbCurves(vec3 color){"," if (u_rgbCurvesEnabled < 0.5) return color;"," vec3 master = vec3("," sampleAdvancedCurve(color.r, 0.0).a,"," sampleAdvancedCurve(color.g, 0.0).a,"," sampleAdvancedCurve(color.b, 0.0).a"," );"," return vec3("," sampleAdvancedCurve(master.r, 0.0).r,"," sampleAdvancedCurve(master.g, 0.0).g,"," sampleAdvancedCurve(master.b, 0.0).b"," );","}","#else","vec3 applyRgbCurves(vec3 color){ return color; }","#endif","float decodeSigned(float value){ return (value * 255.0 - 128.0) / 127.0; }","#ifdef HF_STAGE_HUE_CURVES","vec3 applyHueCurves(vec3 color){"," if (u_hueCurvesEnabled < 0.5) return color;"," vec3 hsv = rgbToHsv(clamp(color, 0.0, 1.0));"," vec3 curves = sampleHueCurve(hsv.x).rgb;"," float originalLuma = lumaOf(color);"," hsv.x = fract(hsv.x + decodeSigned(curves.r) * 0.5);"," hsv.y = clamp(hsv.y * max(0.0, 1.0 + decodeSigned(curves.g)), 0.0, 1.0);"," vec3 shifted = hsvToRgb(hsv);"," shifted += vec3(originalLuma - lumaOf(shifted) + decodeSigned(curves.b));"," return shifted;","}","#else","vec3 applyHueCurves(vec3 color){ return color; }","#endif","float softRangeMask(float value, float minimum, float maximum, float softness){"," if (value < minimum) {"," if (softness <= 0.0) return 0.0;"," return smoothstep(minimum - softness, minimum, value);"," }"," if (value > maximum) {"," if (softness <= 0.0) return 0.0;"," return 1.0 - smoothstep(maximum, maximum + softness, value);"," }"," return 1.0;","}","float hueRangeMask(float hue, float saturation, vec3 key){"," float distance = abs(fract(hue - key.x + 0.5) - 0.5) * 360.0;"," float range = key.y * 180.0;"," float softness = key.z * 180.0;"," if (range < 179.999 && saturation < 0.001) return 0.0;"," if (distance <= range) return 1.0;"," if (softness <= 0.0) return 0.0;"," return 1.0 - smoothstep(range, range + softness, distance);","}","vec3 applySecondary(vec3 color, float index){"," float base = index * 5.0;"," vec4 hueKey = advancedConfig(base);"," vec4 saturationKey = advancedConfig(base + 1.0);"," vec4 lumaKey = advancedConfig(base + 2.0);"," vec4 correction = advancedConfig(base + 3.0);"," vec4 tintCorrection = advancedConfig(base + 4.0);"," vec3 hsv = rgbToHsv(clamp(color, 0.0, 1.0));"," float luma = lumaOf(color);"," float mask = hueRangeMask(hsv.x, hsv.y, hueKey.rgb);"," mask *= softRangeMask(hsv.y, saturationKey.x, saturationKey.y, saturationKey.z * 0.5);"," mask *= softRangeMask(luma, lumaKey.x, lumaKey.y, lumaKey.z * 0.5);"," if (mask <= 0.0) return color;"," hsv.x = fract(hsv.x + decodeSigned(correction.x) * 0.5);"," vec3 corrected = hsvToRgb(hsv);"," float correctedLuma = lumaOf(corrected);"," corrected = mix(vec3(correctedLuma), corrected, max(0.0, 1.0 + decodeSigned(correction.y)));"," corrected += vec3(decodeSigned(correction.z));"," float temperature = decodeSigned(correction.w);"," float tint = decodeSigned(tintCorrection.x);"," corrected.r += temperature * 0.08 + tint * 0.04;"," corrected.b -= temperature * 0.08 - tint * 0.04;"," corrected.g -= tint * 0.08;"," return mix(color, corrected, mask);","}","vec3 applyAdvancedGrade(vec3 color){"," color = applyTonalWheels(color);"," color = applyRgbCurves(color);"," color = applyHueCurves(color);","#ifdef HF_STAGE_SECONDARIES"," if (u_secondaryCount > 0.5) color = applySecondary(color, 0.0);"," if (u_secondaryCount > 1.5) color = applySecondary(color, 1.0);"," if (u_secondaryCount > 2.5) color = applySecondary(color, 2.0);"," if (u_secondaryCount > 3.5) color = applySecondary(color, 3.0);","#endif"," return color;","}","vec3 sampleLut(float r, float g, float b){"," float size = max(u_lutSize, 2.0);"," float x = (r + b * size + 0.5) / max(u_lutTextureSize.x, 1.0);"," float y = (g + 0.5) / max(u_lutTextureSize.y, 1.0);"," return texture2D(u_lut, vec2(x, y)).rgb;","}","#ifdef HF_STAGE_LUT","vec3 applyLut(vec3 color){"," if (u_lutEnabled < 0.5) return color;"," float size = max(u_lutSize, 2.0);"," vec3 span = max(u_lutDomainMax - u_lutDomainMin, vec3(0.00001));"," vec3 scaled = clamp((color - u_lutDomainMin) / span, 0.0, 1.0) * (size - 1.0);"," vec3 lo = floor(scaled);"," vec3 hi = min(lo + 1.0, vec3(size - 1.0));"," vec3 f = scaled - lo;"," vec3 c000 = sampleLut(lo.r, lo.g, lo.b);"," vec3 c100 = sampleLut(hi.r, lo.g, lo.b);"," vec3 c010 = sampleLut(lo.r, hi.g, lo.b);"," vec3 c110 = sampleLut(hi.r, hi.g, lo.b);"," vec3 c001 = sampleLut(lo.r, lo.g, hi.b);"," vec3 c101 = sampleLut(hi.r, lo.g, hi.b);"," vec3 c011 = sampleLut(lo.r, hi.g, hi.b);"," vec3 c111 = sampleLut(hi.r, hi.g, hi.b);"," vec3 c00 = mix(c000, c100, f.r);"," vec3 c10 = mix(c010, c110, f.r);"," vec3 c01 = mix(c001, c101, f.r);"," vec3 c11 = mix(c011, c111, f.r);"," vec3 c0 = mix(c00, c10, f.g);"," vec3 c1 = mix(c01, c11, f.g);"," vec3 lutColor = mix(c0, c1, f.b);"," return mix(color, lutColor, clamp(u_lutIntensity, 0.0, 1.0));","}","#else","vec3 applyLut(vec3 color){ return color; }","#endif","vec3 applyPrimaryGrade(vec3 color){"," color *= pow(2.0, u_exposure);"," float y = lumaOf(color);"," float shadowMask = 1.0 - smoothstep(0.0, 0.65, y);"," float highlightMask = smoothstep(0.35, 1.0, y);"," color += u_shadows * 0.35 * shadowMask;"," color += u_highlights * 0.35 * highlightMask;"," float blackPoint = clamp(u_blacks * 0.18, -0.18, 0.18);"," float whitePoint = clamp(1.0 - u_whites * 0.18, 0.82, 1.18);"," color = (color - blackPoint) / max(whitePoint - blackPoint, 0.2);"," color.r += u_temperature * 0.08 + u_tint * 0.04;"," color.b -= u_temperature * 0.08 - u_tint * 0.04;"," color.g -= u_tint * 0.08;"," color = (color - 0.5) * max(0.0, 1.0 + u_contrast) + 0.5;"," float satLuma = lumaOf(color);"," float currentSat = clamp(colorSaturation(color), 0.0, 1.0);"," float skinLike = smoothstep(0.02, 0.18, color.r - color.g) * smoothstep(0.0, 0.16, color.g - color.b) * smoothstep(0.18, 0.82, satLuma);"," float vibranceWeight = (1.0 - currentSat * 0.72) * mix(1.0, 0.55, skinLike);"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_vibrance * vibranceWeight));"," color = mix(vec3(satLuma), color, max(0.0, 1.0 + u_saturation));"," return color;","}","vec3 applyColorGrade(vec3 color){"," color = applyPrimaryGrade(color);"," color = applyAdvancedGrade(color);"," return clamp(applyLut(clamp(color, 0.0, 1.0)), 0.0, 1.0);","}","#ifdef HF_STAGE_DITHER","vec3 applyDither(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float pixelSize = mix(1.0, 5.0, clamp(u_ditherSize, 0.0, 1.0)) * scale;"," vec2 block = floor(gl_FragCoord.xy / max(pixelSize, 1.0));"," float levels = clamp(u_paletteSize, 2.0, 6.0);"," float index = floor(clamp(lumaOf(source) * (levels - 1.0) + bayer4(block), 0.0, levels - 1.0));"," return mix(source, paletteColor(index), amount);","}","#else","vec3 applyDither(vec3 source, float amount){ return source; }","#endif","vec2 asciiEdgeDirection(vec2 uv, vec2 stepUv){"," float topLeft = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, -stepUv.y)).rgb);"," float top = bt601Luma(sampleMedia(uv + vec2(0.0, -stepUv.y)).rgb);"," float topRight = bt601Luma(sampleMedia(uv + vec2(stepUv.x, -stepUv.y)).rgb);"," float left = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, 0.0)).rgb);"," float right = bt601Luma(sampleMedia(uv + vec2(stepUv.x, 0.0)).rgb);"," float bottomLeft = bt601Luma(sampleMedia(uv + vec2(-stepUv.x, stepUv.y)).rgb);"," float bottom = bt601Luma(sampleMedia(uv + vec2(0.0, stepUv.y)).rgb);"," float bottomRight = bt601Luma(sampleMedia(uv + stepUv).rgb);"," float x = -topLeft - 2.0 * left - bottomLeft + topRight + 2.0 * right + bottomRight;"," float y = -topLeft - 2.0 * top - topRight + bottomLeft + 2.0 * bottom + bottomRight;"," return vec2(x, y);","}","vec2 rotateAsciiUv(vec2 uv, float angle){"," float cosine = cos(angle);"," float sine = sin(angle);"," vec2 centered = uv - 0.5;"," return vec2(centered.x * cosine - centered.y * sine, centered.x * sine + centered.y * cosine) + 0.5;","}","#ifdef HF_STAGE_ASCII","vec3 applyAscii(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float scale = max(min(u_resolution.x, u_resolution.y) / 540.0, 0.25);"," float cellHeight = mix(4.0, 80.0, clamp(u_asciiSize, 0.0, 1.0)) * scale;"," vec2 cellSize = vec2(cellHeight);"," vec2 cell = floor(gl_FragCoord.xy / cellSize);"," vec2 cellVuv = (cell + 0.5) * cellSize / max(u_resolution, vec2(1.0));"," vec2 cellUv = (cellVuv - u_uvOffset) / u_uvScale;"," cellUv = applyCrtWarp(cellUv);"," vec3 cellColor = applyColorGrade(sampleMedia(cellUv).rgb);"," float brightness = bt601Luma(cellColor);"," float invert = step(0.5, u_asciiInvert);"," brightness = mix(brightness, 1.0 - brightness, invert);"," vec2 glyphUv = fract(gl_FragCoord.xy / cellSize);"," float rotation = clamp(u_asciiRotation, 0.0, 1.0);"," if (rotation > 0.0) {"," vec2 cellStepUv = cellSize / max(u_resolution * u_uvScale, vec2(1.0));"," vec2 edge = asciiEdgeDirection(cellUv, cellStepUv);"," if (length(edge) > 0.1) glyphUv = mix(glyphUv, rotateAsciiUv(glyphUv, atan(edge.y, edge.x)), rotation);"," }"," float ink = asciiStyleSample(floor(u_asciiStyle + 0.5), brightness, glyphUv);"," vec3 background = paletteColor(0.0);"," vec3 inkColor = mix(paletteColor(max(u_paletteSize - 1.0, 1.0)), cellColor, clamp(u_asciiColor, 0.0, 1.0));"," vec3 asciiColor = mix(background, inkColor, ink);"," return mix(source, asciiColor, amount);","}","#else","vec3 applyAscii(vec3 source, float amount){ return source; }","#endif","#ifdef HF_STAGE_SCANLINES","vec3 applyScanlines(vec3 source, float amount){"," if (amount <= 0.0) return source;"," float count = mix(50.0, 500.0, clamp(u_scanlineCount, 0.0, 1.0));"," float softness = clamp(u_scanlineSoftness, 0.0, 1.0);"," float wave = 0.5 + 0.5 * sin(v_uv.y * count * PI);"," float line = mix(1.0 - wave, pow(1.0 - wave, 2.2), softness);"," return source * (1.0 - line * amount);","}","#else","vec3 applyScanlines(vec3 source, float amount){ return source; }","#endif","void main(){"," vec2 uv = (v_uv - u_uvOffset) / u_uvScale;"," if (uv.x < 0.0 || uv.y < 0.0 || uv.x > 1.0 || uv.y > 1.0) {"," gl_FragColor = vec4(0.0);"," return;"," }"," vec4 originalSample = sampleSource(uv);"," uv = applyCrtWarp(uv);","#ifdef HF_STAGE_CRT"," vec2 displayEdge = smoothstep(vec2(0.0), vec2(0.006), uv) * (1.0 - smoothstep(vec2(0.994), vec2(1.0), uv));"," float displayMask = displayEdge.x * displayEdge.y;","#endif"," vec4 sampleColor = sampleMedia(uv);"," sampleColor = sampleChromaticMedia(uv, sampleColor);"," sampleColor.rgb = applyDigitalGlitch(uv, sampleColor.rgb);"," vec3 original = originalSample.rgb;"," vec3 color = mix(sampleColor.rgb, applyColorGrade(sampleColor.rgb), u_intensity);","#ifdef HF_STAGE_GRAIN"," float grainAmount = clamp(u_grain, 0.0, 1.0);"," if (grainAmount > 0.0) {"," float grainPixelSize = mix(1.0, 6.0, clamp(u_grainSize, 0.0, 1.0));"," vec2 grainCoord = floor(gl_FragCoord.xy / grainPixelSize) + vec2(u_grainSeed, u_grainSeed * 1.37);"," float grainBase = grainHash(grainCoord) - grainHash(grainCoord + vec2(19.19, 73.31));"," float grainFine = grainHash(gl_FragCoord.xy + vec2(u_grainSeed * 2.11, u_grainSeed * 0.71)) - 0.5;"," float grain = mix(grainBase * 0.7, grainBase + grainFine * 0.35, clamp(u_grainRoughness, 0.0, 1.0));"," float grainLuma = lumaOf(color);"," float grainMask = smoothstep(0.02, 0.55, grainLuma) * (1.0 - smoothstep(0.88, 1.0, grainLuma));"," color += grain * grainAmount * mix(0.025, 0.08, grainMask);"," }","#endif","#ifdef HF_STAGE_FILM_ARTIFACTS"," float filmArtifacts = clamp(u_filmArtifacts, 0.0, 1.0);"," if (filmArtifacts > 0.0) {"," float filmFrame = floor(u_grainSeed);"," float dust = dustMask(v_uv, floor(filmFrame / 3.0));"," float dustTone = grainHash(vec2(floor(filmFrame / 3.0), 8.0));"," color = mix(color, vec3(dustTone > 0.5 ? 0.95 : 0.02), dust * 0.72 * filmArtifacts);"," float scratchBucket = floor(filmFrame / 12.0);"," float scratchX = grainHash(vec2(scratchBucket, 4.2));"," float scratchLife = step(0.78, grainHash(vec2(scratchBucket, 8.4)));"," float scratch = (1.0 - smoothstep(0.0, 1.4 / max(u_resolution.x, 1.0), abs(v_uv.x - scratchX))) * scratchLife;"," color = mix(color, vec3(0.94, 0.88, 0.76), scratch * 0.28 * filmArtifacts);"," }","#endif"," color = applyMonoScreen(clamp(color, 0.0, 1.0), clamp(u_monoScreen, 0.0, 1.0));"," color = applyEngraving(clamp(color, 0.0, 1.0), clamp(u_engraving, 0.0, 1.0));"," color = applyCrosshatch(uv, clamp(color, 0.0, 1.0), clamp(u_crosshatch, 0.0, 1.0));"," color = applyHalftone(clamp(color, 0.0, 1.0), clamp(u_halftone, 0.0, 1.0));"," color = applyTwoInkPrint(clamp(color, 0.0, 1.0), clamp(u_twoInkPrint, 0.0, 1.0));"," color = applyDither(clamp(color, 0.0, 1.0), clamp(u_dither, 0.0, 1.0));"," color = applyAscii(clamp(color, 0.0, 1.0), clamp(u_ascii, 0.0, 1.0));","#ifdef HF_STAGE_BLOOM"," if (u_bloomReady > 0.5 && u_bloom > 0.0) color += sampleBloom(uv) * u_bloom;","#endif"," color = applyScanlines(clamp(color, 0.0, 1.0), clamp(u_scanlines, 0.0, 1.0));","#ifdef HF_STAGE_VIGNETTE"," vec2 vignetteAspect = u_resolution.x > u_resolution.y"," ? vec2(u_resolution.x / max(u_resolution.y, 1.0), 1.0)"," : vec2(1.0, u_resolution.y / max(u_resolution.x, 1.0));"," vec2 vignetteUv = abs((v_uv - vec2(0.5)) * 2.0) * vignetteAspect;"," float vignettePower = mix(8.0, 1.8, clamp(u_vignetteRoundness * 0.5 + 0.5, 0.0, 1.0));"," float vignetteDistance = pow(pow(vignetteUv.x, vignettePower) + pow(vignetteUv.y, vignettePower), 1.0 / vignettePower);"," float vignetteMidpoint = mix(0.22, 1.08, clamp(u_vignetteMidpoint, 0.0, 1.0));"," float vignetteFeather = mix(0.08, 0.72, clamp(u_vignetteFeather, 0.0, 1.0));"," float vignetteMask = smoothstep(vignetteMidpoint, vignetteMidpoint + vignetteFeather, vignetteDistance);"," color *= 1.0 - vignetteMask * clamp(u_vignette, 0.0, 1.0) * 0.75;","#endif","#ifdef HF_STAGE_CRT"," float warpActive = step(0.0001, u_crtCurvature);"," color *= mix(1.0, displayMask, warpActive);","#endif"," vec3 graded = clamp(color, 0.0, 1.0);","#ifdef HF_STAGE_COMPARE"," if (u_compareEnabled > 0.5) {"," float pos = clamp(u_comparePosition, 0.0, 1.0);"," float softness = max(u_compareSoftness, 0.00001);"," float afterMask = smoothstep(pos - softness, pos + softness, v_uv.x);"," vec3 splitColor = mix(original, graded, afterMask);"," float lineMask = 0.0;"," if (u_compareLineWidth > 0.0) {"," float lineWidth = max(u_compareLineWidth / max(u_resolution.x, 1.0), 0.00001);"," lineMask = 1.0 - smoothstep(lineWidth, lineWidth * 1.8, abs(v_uv.x - pos));"," }"," gl_FragColor = vec4(mix(splitColor, vec3(1.0), lineMask * 0.82), sampleColor.a);"," return;"," }","#endif"," gl_FragColor = vec4(graded, sampleColor.a);","}"].join(`
|
|
373
|
+
`),cv=[["HF_STAGE_BLUR",e=>e.effects.blur>0],["HF_STAGE_KUWAHARA",e=>e.effects.kuwahara>0],["HF_STAGE_PIXELATE",e=>e.effects.pixelate>0],["HF_STAGE_TAPE",e=>e.effects.tapeDamage>0],["HF_STAGE_CHROMA_BLEED",e=>e.effects.chromaBleed>0],["HF_STAGE_CHROMATIC",e=>e.effects.chromaticAberration>0],["HF_STAGE_CRT",e=>e.effects.crtCurvature>0],["HF_STAGE_GLITCH",e=>e.effects.digitalGlitch>0],["HF_STAGE_GRAIN",e=>e.details.grain>0],["HF_STAGE_FILM_ARTIFACTS",e=>e.effects.filmArtifacts>0],["HF_STAGE_MONO_SCREEN",e=>e.effects.monoScreen>0],["HF_STAGE_ENGRAVING",e=>e.effects.engraving>0],["HF_STAGE_CROSSHATCH",e=>e.effects.crosshatch>0],["HF_STAGE_HALFTONE",e=>e.effects.halftone>0],["HF_STAGE_TWO_INK_PRINT",e=>e.effects.twoInkPrint>0],["HF_STAGE_DITHER",e=>e.effects.dither>0],["HF_STAGE_ASCII",e=>e.effects.ascii>0],["HF_STAGE_BLOOM",e=>e.effects.bloom>0],["HF_STAGE_SCANLINES",e=>e.effects.scanlines>0],["HF_STAGE_VIGNETTE",e=>e.details.vignette>0],["HF_STAGE_RGB_CURVES",e=>ql(e).rgbCurvesEnabled],["HF_STAGE_HUE_CURVES",e=>ql(e).hueCurvesEnabled],["HF_STAGE_SECONDARIES",e=>ql(e).secondaryCount>0],["HF_STAGE_LUT",e=>e.lut!==null],["HF_STAGE_COMPARE",(e,t)=>t.enabled]];function OF(e,t){let n="";for(let[r,o]of cv)o(e,t)&&(n+=`#define ${r}
|
|
374
|
+
`);return n}var QE=cv.map(([e])=>`#define ${e}
|
|
375
|
+
`).join(""),dv=32,HF=dv,GF=["#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(`
|
|
376
|
+
`),BF=["#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(`
|
|
377
|
+
`),UF=["#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(`
|
|
378
|
+
`),ZE=Kd.map(e=>`${e}[${fl}]`).join(", ");function Yn(e){return Ce(e)&&Kd.includes(e.localName)}function WF(e){let t=window.getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function ev(e,t,n){let r=e.createShader(n);return r?(e.shaderSource(r,t),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:($("runtime.colorGrading.compileShader",e.getShaderInfoLog(r)),e.deleteShader(r),null)):null}function Yl(e,t=uv){let n=ev(e,IF,e.VERTEX_SHADER),r=ev(e,t,e.FRAGMENT_SHADER);if(!n||!r)return n&&e.deleteShader(n),r&&e.deleteShader(r),null;let o=e.createProgram();return o?(e.attachShader(o,n),e.attachShader(o,r),e.linkProgram(o),e.deleteShader(n),e.deleteShader(r),e.getProgramParameter(o,e.LINK_STATUS)?o:($("runtime.colorGrading.linkProgram",e.getProgramInfoLog(o)),e.deleteProgram(o),null)):null}function $l(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 VF(e,t){let n=Yl(e,GF);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 $F(e,t){let n=Yl(e,BF);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 qF(e,t){let n=Yl(e,UF);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 oa(e,t=e.UNSIGNED_BYTE,n=e.LINEAR){let r=$l(e,n,t),o=e.createFramebuffer();if(!r||!o)return r&&e.deleteTexture(r),o&&e.deleteFramebuffer(o),null;e.bindFramebuffer(e.FRAMEBUFFER,o),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0);let i=e.checkFramebufferStatus(e.FRAMEBUFFER);return e.bindFramebuffer(e.FRAMEBUFFER,null),i!==e.FRAMEBUFFER_COMPLETE?(e.deleteTexture(r),e.deleteFramebuffer(o),null):{texture:r,framebuffer:o,type:t,width:1,height:1}}function zl(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 nm(e,t,n){let r=[];for(let o of n){let i=e.getUniformLocation(t,`u_${o}`);i!==null&&r.push([o,i])}return r}function tv(e,t){for(let n of t)n&&e.deleteTexture(n)}function fv(e,t){let n=Yl(e,t+uv);return n?{program:n,position:e.getAttribLocation(n,"a_pos"),source:e.getUniformLocation(n,"u_source"),blurSource:e.getUniformLocation(n,"u_blurSource"),bloomSource:e.getUniformLocation(n,"u_bloomSource"),kuwaharaSource:e.getUniformLocation(n,"u_kuwaharaSource"),lut:e.getUniformLocation(n,"u_lut"),advanced:e.getUniformLocation(n,"u_advanced"),resolution:e.getUniformLocation(n,"u_resolution"),uvScale:e.getUniformLocation(n,"u_uvScale"),uvOffset:e.getUniformLocation(n,"u_uvOffset"),blurReady:e.getUniformLocation(n,"u_blurReady"),bloomReady:e.getUniformLocation(n,"u_bloomReady"),kuwaharaReady:e.getUniformLocation(n,"u_kuwaharaReady"),lutEnabled:e.getUniformLocation(n,"u_lutEnabled"),lutSize:e.getUniformLocation(n,"u_lutSize"),lutTextureSize:e.getUniformLocation(n,"u_lutTextureSize"),lutDomainMin:e.getUniformLocation(n,"u_lutDomainMin"),lutDomainMax:e.getUniformLocation(n,"u_lutDomainMax"),lutIntensity:e.getUniformLocation(n,"u_lutIntensity"),shadowWheel:e.getUniformLocation(n,"u_shadowWheel"),midtoneWheel:e.getUniformLocation(n,"u_midtoneWheel"),highlightWheel:e.getUniformLocation(n,"u_highlightWheel"),rgbCurvesEnabled:e.getUniformLocation(n,"u_rgbCurvesEnabled"),hueCurvesEnabled:e.getUniformLocation(n,"u_hueCurvesEnabled"),secondaryCount:e.getUniformLocation(n,"u_secondaryCount"),adjustUniforms:nm(e,n,ml),detailUniforms:nm(e,n,Yd),effectUniforms:nm(e,n,Xd),grainSeed:e.getUniformLocation(n,"u_grainSeed"),effectTime:e.getUniformLocation(n,"u_effectTime"),paletteSize:e.getUniformLocation(n,"u_paletteSize"),palette0:e.getUniformLocation(n,"u_palette0"),palette1:e.getUniformLocation(n,"u_palette1"),palette2:e.getUniformLocation(n,"u_palette2"),palette3:e.getUniformLocation(n,"u_palette3"),palette4:e.getUniformLocation(n,"u_palette4"),palette5:e.getUniformLocation(n,"u_palette5"),intensity:e.getUniformLocation(n,"u_intensity"),compareEnabled:e.getUniformLocation(n,"u_compareEnabled"),comparePosition:e.getUniformLocation(n,"u_comparePosition"),compareSoftness:e.getUniformLocation(n,"u_compareSoftness"),compareLineWidth:e.getUniformLocation(n,"u_compareLineWidth")}:null}function zF(e){let t=e.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});if(!t)return null;let n=Xl(t);return n?{gl:t,program:n}:null}function Xl(e){let t=fv(e,"");if(!t)return null;let n=jF(e);return n?{...n,shaders:new Map([["",t]]),failedStageDefines:new Set}:(e.deleteProgram(t.program),null)}function jF(e){let t=$l(e),n=$l(e,e.NEAREST),r=$l(e,e.NEAREST);if(!t||!n||!r)return tv(e,[t,n,r]),null;let o=e.createBuffer();return o?(e.bindBuffer(e.ARRAY_BUFFER,o),e.bufferData(e.ARRAY_BUFFER,new Float32Array([-1,-1,1,-1,-1,1,1,1]),e.STATIC_DRAW),{texture:t,lutTexture:n,advancedTexture:r,advancedSignature:null,quad:o}):(tv(e,[t,n,r]),null)}function mv(e,t,n,r){let o=pv(e,t,OF(n,r));return e.useProgram(o.program),o}function pv(e,t,n){let r=t.failedStageDefines.has(n)?QE:n;if(t.failedStageDefines.has(r))throw new Error("Color grading shader failed to compile");let o=t.shaders.get(r);if(o)return t.shaders.delete(r),t.shaders.set(r,o),o;let i=fv(e,r);if(!i)return t.failedStageDefines.add(r),pv(e,t,QE);if(t.shaders.size>=HF)for(let[a,l]of t.shaders){e.deleteProgram(l.program),t.shaders.delete(a);break}return t.shaders.set(r,i),i}function KF(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function YF(e){if(!KF(e))return{...Rr};let t=(n,r,o,i)=>{let a=typeof n=="number"?n:Number(n);return Math.min(i,Math.max(o,Number.isFinite(a)?a:r))};return{enabled:e.enabled===!0,position:t(e.position,Rr.position,0,1),softness:t(e.softness,Rr.softness,0,.25),lineWidth:t(e.lineWidth,Rr.lineWidth,0,12)}}function hv(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 Jl(e){return e instanceof Error?e.message:"LUT failed to load"}function XF(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 gv(e){let t=e.id||!nn(e)&&e.currentSrc||e.getAttribute("src")||`${e.tagName}:${Array.prototype.indexOf.call(e.parentNode?.children??[],e)}`;return XF(t)}function am(e){let t=hv(e);if("error"in t)return{state:"error",message:t.error};let n=mn.get(t.href);if(n)return n;let r=fetch(t.href,{credentials:"same-origin"}).then(i=>{if(!i.ok)throw new Error(`Failed to load LUT (${i.status})`);return i.text()}).then(i=>Oy(i,{maxSize:ul})),o={state:"pending",promise:r};for(;mn.size>=kF;){let i=mn.keys().next().value;if(!i)break;mn.delete(i)}return mn.set(t.href,o),r.then(i=>{mn.get(t.href)===o&&mn.set(t.href,{state:"ready",lut:i})},i=>{mn.get(t.href)===o&&mn.set(t.href,{state:"error",message:Jl(i)})}),o}function nv(e,t,n){if(e.lut?.src===t)return e.lut;let r=Gd(n),{gl:o,program:i}=e;try{return bv(o,i.lutTexture,r),e.lut={src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height},e.lutError=null,e.lutLoadingSrc=null,e.lut}catch(a){return e.lut=null,e.lutError=Jl(a),e.lutLoadingSrc=null,$("runtime.colorGrading.uploadLut",a),null}}async function JF(e){let t=am(e);if(t.state==="ready")return t.lut;if(t.state==="pending")return t.promise;throw new Error(t.message)}function bv(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 QF(e,t,n){let r=Gd(n),{gl:o,program:i}=e;return bv(o,i.lutTexture,r),{src:t,size:n.size,domainMin:n.domainMin,domainMax:n.domainMax,textureWidth:r.width,textureHeight:r.height}}function Xt(e,t){e.deleteTexture(t.texture),e.deleteFramebuffer(t.framebuffer)}function sm(e){let t=e.effectTargets;t&&(e.gl.deleteProgram(t.blurProgram.program),Xt(e.gl,t.scratch),Xt(e.gl,t.blur),t.bloom&&Xt(e.gl,t.bloom),e.effectTargets=null)}function lm(e){let t=e.kuwaharaTargets;t&&(e.gl.deleteProgram(t.horizontalProgram.program),e.gl.deleteProgram(t.resolveProgram.program),Xt(e.gl,t.moments),Xt(e.gl,t.output),e.kuwaharaTargets=null)}function ra(e,t=!1){sm(e),lm(e),ZF(e.gl,e.program),t&&e.gl.getExtension("WEBGL_lose_context")?.loseContext()}function ZF(e,t){e.deleteTexture(t.texture),e.deleteTexture(t.lutTexture),e.deleteTexture(t.advancedTexture),e.deleteBuffer(t.quad);for(let n of t.shaders.values())e.deleteProgram(n.program);t.shaders.clear()}function eP(e){let t=Xl(e.gl);return t?(ra(e),e.program=t,e.lut=null,e.lutLoadingSrc=null,e.lutError=null,e.effectError=null,!0):!1}function tP(e,t){let n=Xl(t.gl);return n?(ra(e),e.gl=t.gl,e.glCanvas=t.canvas,e.program=n,e.lut=null,e.lutLoadingSrc=null,e.lutError=null,e.effectError=null,!0):!1}function nP(e,t){e.contextLost=!tP(e,t),e.drawError=e.contextLost?"WebGL context rebuild failed":null,e.contextLost?jl(e):pt(e)}function rP(e,t){e.borderlessFrame!==t&&yv(e),e.borderlessFrame=t,t.style.borderStyle="none"}function yv(e){let t=e.borderlessFrame;t&&(e.borderlessFrame=null,t.style.borderStyle=window.getComputedStyle(e.element).borderStyle)}function jl(e){if(yv(e),!e.sourceHidden)return;e.element.removeAttribute(Er);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 oP(e){if(e.effectTargets)return e.effectTargets;let{gl:t}=e,n=VF(t,e.program.quad),r=oa(t),o=oa(t);return!n||!r||!o?(n&&t.deleteProgram(n.program),r&&Xt(t,r),o&&Xt(t,o),e.effectError="Framebuffer effects unavailable",null):(e.effectError=null,e.effectTargets={blurProgram:n,scratch:r,blur:o,bloom:null},e.effectTargets)}function iP(e,t){return t.bloom||(t.bloom=oa(e.gl),e.effectError=t.bloom?null:"Framebuffer effects unavailable"),t.bloom}function rv(e){let t=e.effectTargets;t?.bloom&&(Xt(e.gl,t.bloom),t.bloom=null)}function aP(e){if(e.kuwaharaTargets)return e.kuwaharaTargets;let{gl:t}=e,n=t.getExtension("OES_texture_half_float"),r=t.getExtension("EXT_color_buffer_half_float");if(!n||!r)return e.effectError="Kuwahara requires half-float framebuffer support",null;let o=$F(t,e.program.quad),i=qF(t,e.program.quad),a=oa(t,n.HALF_FLOAT_OES,t.NEAREST),l=oa(t);return!o||!i||!a||!l?(sP(t,o,i,a,l),e.effectError="Kuwahara framebuffer effects unavailable",null):(e.kuwaharaTargets={horizontalProgram:o,resolveProgram:i,moments:a,output:l},e.kuwaharaTargets)}function sP(e,t,n,r,o){t&&e.deleteProgram(t.program),n&&e.deleteProgram(n.program),r&&Xt(e,r),o&&Xt(e,o)}function xv(e,t,n,r,o){let i=Math.max(1,Math.ceil(r)),a=Math.max(1,Math.ceil(o));return zl(e,t,i,a),zl(e,n,i,a),{width:i,height:a}}function Kl(e,t,n,r,o,i,a,l=!1,s=-1){e.bindFramebuffer(e.FRAMEBUFFER,r.framebuffer),e.viewport(0,0,o.width,o.height),e.useProgram(t.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.uniform1i(t.source,0),e.uniform2f(t.resolution,o.width,o.height),e.uniform2f(t.direction,i.x,i.y),e.uniform1f(t.radius,a),e.uniform1f(t.bloomPass,l?1:0),e.uniform1f(t.threshold,s),ia(e,t)}function lP(e,t,n,r,o,i,a){let l=xv(e,t.scratch,r,o/2,i/2),s=a/2;Kl(e,t.blurProgram,n,t.scratch,l,{x:1,y:0},s,!0,.5),Kl(e,t.blurProgram,t.scratch.texture,r,l,{x:0,y:1},s,!0)}function uP(e,t,n,r,o,i,a){let l=n;for(let s=0;s<Math.max(1,Math.floor(a));s++)Kl(e,t.blurProgram,l,t.scratch,o,{x:1,y:0},i),Kl(e,t.blurProgram,t.scratch.texture,r,o,{x:0,y:1},i),l=r.texture}function ia(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 cP(e,t,n,r,o,i,a,l){zl(e,t.moments,o.width,o.height),zl(e,t.output,o.width,o.height);let s=t.horizontalProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.moments.framebuffer),e.viewport(0,0,o.width,o.height),e.useProgram(s.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,n),e.activeTexture(e.TEXTURE1),e.bindTexture(e.TEXTURE_2D,r),e.uniform1i(s.source,0),e.uniform1i(s.blurSource,1),e.uniform2f(s.texel,1/o.width,1/o.height),e.uniform2f(s.uvScale,i.scaleX,i.scaleY),e.uniform2f(s.uvOffset,i.offsetX,i.offsetY),e.uniform1f(s.blurReady,a?1:0),e.uniform1f(s.blur,l.blur),e.uniform1f(s.radius,l.kuwaharaRadius),ia(e,s);let c=t.resolveProgram;e.bindFramebuffer(e.FRAMEBUFFER,t.output.framebuffer),e.useProgram(c.program),e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.moments.texture),e.uniform1i(c.moments,0),e.uniform2f(c.texel,1/o.width,1/o.height),e.uniform1f(c.radius,l.kuwaharaRadius),e.uniform1f(c.sharpness,l.kuwaharaSharpness),e.uniform1f(c.saturation,l.kuwaharaSaturation),ia(e,c)}function dP(e,t,n,r){if(n<=0)return!1;let o=xv(e.gl,t.scratch,t.blur,r.width,r.height);return uP(e.gl,t,e.program.texture,t.blur,o,.75+Math.pow(n,1.35)*32,n>.55?3:2),!0}function fP(e,t,n,r,o,i){if(n<=0)return rv(e),null;i||rv(e);let a=i?iP(e,t):t.blur;return a?(lP(e.gl,t,e.program.texture,a,o.width,o.height,r),a.texture):null}function mP(e,t,n,r){let{program:o}=e,i=t.effects.blur,a=t.effects.bloom;if(i<=0&&a<=0)return e.effectTargets&&r&&sm(e),{blurReady:!1,bloomReady:!1,blurTexture:o.texture,bloomTexture:o.texture};let l=oP(e);if(!l)return{blurReady:!1,bloomReady:!1,blurTexture:o.texture,bloomTexture:o.texture};let s=dP(e,l,i,n),c=fP(e,l,a,t.effects.bloomRadius,n,s);return{blurReady:s,bloomReady:c!==null,blurTexture:l.blur.texture,bloomTexture:c??o.texture}}function pP(e,t,n,r,o,i,a){let l=t.effects.kuwahara;if(l<=0&&!i)return e.kuwaharaTargets&&a&&lm(e),{kuwaharaReady:!1,kuwaharaTexture:e.program.texture};let s=aP(e);return!s||l<=0?{kuwaharaReady:!1,kuwaharaTexture:s?.output.texture??e.program.texture}:(cP(e.gl,s,e.program.texture,e.effectTargets?.blur.texture??e.program.texture,n,r,o,t.effects),{kuwaharaReady:!0,kuwaharaTexture:s.output.texture})}function Sv(e,t,n,r,o={}){let i=o.releaseIdleTargets??!0;e.effectError=null;let a=mP(e,t,n,i),l=pP(e,t,n,r,a.blurReady,o.preserveKuwahara??!1,i);return{...a,...l}}function hP(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=hv(t);if("error"in r)return e.lut=null,e.lutLoadingSrc=null,e.lutError=r.error,null;if(e.lut?.src===r.href)return e.lut;e.lut=null;let o=am(t);return o.state==="ready"?nv(e,r.href,o.lut):o.state==="error"?(e.lutError=o.message,e.lutLoadingSrc=null,null):(e.lutLoadingSrc!==r.href&&(e.lutLoadingSrc=r.href,e.lutError=null,o.promise.then(i=>{e.destroyed||e.grading.lut?.src.trim()!==t||(nv(e,r.href,i),pt(e))},i=>{e.destroyed||e.grading.lut?.src.trim()!==t||(e.lut=null,e.lutError=Jl(i),e.lutLoadingSrc=null,pt(e))})),null)}function na(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&&Yn(n))return n;try{let r=document.querySelector(t);return r&&Yn(r)?r:null}catch{return null}}if(e.hfId){let t=document.querySelector(`[data-hf-id="${CSS.escape(e.hfId)}"]`);if(t&&Yn(t))return t}if(e.id){let t=document.getElementById(e.id);if(t&&Yn(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&&Yn(r)?r:null}catch{return null}}function um(e){let[t,n]=Ne(e)?[e.videoWidth,e.videoHeight]:Qe(e)?[e.naturalWidth,e.naturalHeight]:nn(e)?[e.width,e.height]:[0,0];return t>0&&n>0?{width:t,height:n}:null}function Ev(e){return Ne(e)&&e.readyState<HTMLMediaElement.HAVE_CURRENT_DATA||Qe(e)&&!e.complete?!1:um(e)!==null}function gP(e){let t=Nt(e);return t&&Ev(t)?t:null}function rm(e){return WF(e)||bP(e)}function bP(e){if(!Ne(e))return!1;let t=Nt(e);if(!t)return!1;let n=window.getComputedStyle(t);return n.display!=="none"&&n.visibility!=="hidden"}function yP(e){return Qe(e)&&e.classList.contains("__render_frame__")}function xP(e,t){t.parentNode&&t.nextSibling!==e.canvas&&t.parentNode.insertBefore(e.canvas,t.nextSibling)}var ov=new WeakMap;function vv(e,t){if(!Qe(e)||window.origin!=="null"||e.crossOrigin!==null||!/^https?:/i.test(e.currentSrc))return e;let n=ov.get(e);if(n?.image.src!==e.currentSrc){let r={image:e.ownerDocument.createElement("img"),waiting:new Set},o=()=>{let i=[...r.waiting];r.waiting.clear(),i.forEach(pt)};r.image.crossOrigin="anonymous",r.image.addEventListener("load",o,{once:!0}),r.image.addEventListener("error",o,{once:!0}),r.image.src=e.currentSrc,ov.set(e,n=r)}return n.image.complete?n.image.naturalWidth>0?n.image:e:(t&&n.waiting.add(t),null)}function Av(e){if(Ne(e)){let t=gP(e);if(t)return t}return Ev(e)?e:null}function iv(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 SP(e){let t=e.trim().split(/\s+/).filter(Boolean),n=.5,r=.5;for(let o=0;o<t.length;o++){let i=t[o]??"",a=iv(i,"x"),l=iv(i,"y");if(a!==null&&(i==="left"||i==="right"||i.endsWith("%")&&o===0)){n=a;continue}if(l!==null&&(i==="top"||i==="bottom"||i.endsWith("%")&&o>0)){r=l;continue}}return{x:n,y:r}}function wv(e,t,n,r,o,i){if(e<=0||t<=0||n<=0||r<=0)return{scaleX:1,scaleY:1,offsetX:0,offsetY:0};let a=o||"fill",l=e,s=t;if(a==="contain"||a==="cover"||a==="scale-down"){let f=a==="cover"?Math.max(e/n,t/r):Math.min(e/n,t/r);l=n*f,s=r*f,a==="scale-down"&&l>n&&s>r&&(l=n,s=r)}else a==="none"&&(l=n,s=r);let c=SP(i||"center"),d=(e-l)*c.x/e,m=(t-s)*c.y/t;return{scaleX:l/e,scaleY:s/t,offsetX:d,offsetY:m}}function EP(e,t){window.getComputedStyle(t).position==="static"&&(e.touchedParent||(e.touchedParent=t,e.parentInlinePosition=t.style.position||null),t.style.position="relative")}function av(e,t){return Math.max(0,Math.round(e>0?e:t))}function vP(e,t){let{element:n,canvas:r}=e,o=n.parentElement;o&&EP(e,o);let i=window.getComputedStyle(t);S0(r.style,i),r.style.borderStyle="none",r.style.pointerEvents="none",r.style.position="absolute",r.style.inset="auto",r.style.left=`${n.offsetLeft}px`,r.style.top=`${n.offsetTop}px`,r.style.right="auto",r.style.bottom="auto",r.style.width=`${n.offsetWidth}px`,r.style.height=`${n.offsetHeight}px`,r.style.display="block",r.style.opacity=e.sourceOpacityForCanvas,r.style.visibility=e.sourceVisibleForCanvas?"visible":"hidden";let a=n.getBoundingClientRect(),l=av(n.offsetWidth,a.width),s=av(n.offsetHeight,a.height);if(l<=0||s<=0)return r.style.display="none",null;let c=Math.max(1,window.devicePixelRatio||1),d=Math.round(l*c),m=Math.round(s*c);return r.width!==d&&(r.width=d),r.height!==m&&(r.height=m),{width:d,height:m}}function bo(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 Tr(e,t,n,r){e.set(r,(t*jt+n)*4)}function Xn(e,t){return Math.min(1,Math.max(1/255,(e*(127/t)+128)/255))}function om(e,t,n){return e.length>=3?Ud(e,t,n):new Float32Array(jt)}function Cr(e,t){return e[t]??0}function AP(e,t,n){let r=so(t.red),o=so(t.green),i=so(t.blue),a=so(t.master),l=om(n.hueVsHue,-180,180),s=om(n.hueVsSaturation,-1,1),c=om(n.hueVsLuma,-1,1);for(let d=0;d<jt;d+=1)Tr(e,0,d,[Cr(r,d),Cr(o,d),Cr(i,d),Cr(a,d)]),Tr(e,1,d,[Xn(Cr(l,d),180),Xn(Cr(s,d),1),Xn(Cr(c,d),1),1])}function wP(e,t,n){let r=n*PF;Tr(e,2,r,[t.key.hue.center/360,t.key.hue.range/180,t.key.hue.softness/180,1]),Tr(e,2,r+1,[t.key.saturation.min,t.key.saturation.max,t.key.saturation.softness/.5,0]),Tr(e,2,r+2,[t.key.luma.min,t.key.luma.max,t.key.luma.softness/.5,0]),Tr(e,2,r+3,[Xn(t.correction.hueShift,180),Xn(t.correction.saturation,1),Xn(t.correction.luma,1),Xn(t.correction.temperature,1)]),Tr(e,2,r+4,[Xn(t.correction.tint,1),.5,.5,1])}function _P(e,t,n){let r=new Float32Array(jt*sa*4);AP(r,e,t);let o=0;for(let i of n)i.enabled&&(wP(r,i,o),o+=1);return r}var sv=new WeakMap;function CP(e,t,n){let r=sv.get(e);if(r?.hueCurves===t&&r.secondaries===n)return r.signature;let o=JSON.stringify([e,t,n]);return sv.set(e,{hueCurves:t,secondaries:n,signature:o}),o}function TP(e,t,n,r){let{curves:o,hueCurves:i}=n,a=CP(o,i,r);if(t.advancedSignature===a)return;let l=Uint8Array.from(_P(o,i,r),Mi);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,jt,sa,0,e.RGBA,e.UNSIGNED_BYTE,l),t.advancedSignature=a}function im(e,t,n){e.uniform3f(t,n.hue/360,n.amount,n.level)}function ql(e){let{curves:t,hueCurves:n,secondaries:r}=e;return{rgbCurvesEnabled:Zd(t),hueCurvesEnabled:ef(n),secondaryCount:tf(r)?r.reduce((o,i)=>o+Number(i.enabled),0):0}}function _v(e,t,n,r,o,i,a,l,s,c,d,m,f){e.uniform1i(n.source,0),e.uniform1i(n.blurSource,1),e.uniform1i(n.lut,2),e.uniform1i(n.kuwaharaSource,3),e.uniform1i(n.bloomSource,4),e.uniform1i(n.advanced,5),e.uniform2f(n.resolution,c.width,c.height),e.uniform2f(n.uvScale,d.scaleX,d.scaleY),e.uniform2f(n.uvOffset,d.offsetX,d.offsetY),e.uniform1f(n.blurReady,i?1:0),e.uniform1f(n.bloomReady,a?1:0),e.uniform1f(n.kuwaharaReady,l?1:0),e.uniform1f(n.lutEnabled,o?1:0),e.uniform1f(n.lutSize,o?.size??2),e.uniform2f(n.lutTextureSize,o?.textureWidth??1,o?.textureHeight??1),e.uniform3f(n.lutDomainMin,o?.domainMin[0]??0,o?.domainMin[1]??0,o?.domainMin[2]??0),e.uniform3f(n.lutDomainMax,o?.domainMax[0]??1,o?.domainMax[1]??1,o?.domainMax[2]??1),e.uniform1f(n.lutIntensity,r.lut?.intensity??0);let{rgbCurvesEnabled:p,hueCurvesEnabled:b,secondaryCount:y}=ql(r);(p||b||y>0)&&TP(e,t,r,r.secondaries),im(e,n.shadowWheel,r.wheels.shadows),im(e,n.midtoneWheel,r.wheels.midtones),im(e,n.highlightWheel,r.wheels.highlights),e.uniform1f(n.rgbCurvesEnabled,p?1:0),e.uniform1f(n.hueCurvesEnabled,b?1:0),e.uniform1f(n.secondaryCount,y);for(let[E,C]of n.adjustUniforms)e.uniform1f(C,r.adjust[E]);for(let[E,C]of n.detailUniforms)e.uniform1f(C,r.details[E]);e.uniform1f(n.grainSeed,m),e.uniform1f(n.effectTime,f);for(let[E,C]of n.effectUniforms)e.uniform1f(C,r.effects[E]);let x=r.palette??(r.effects.engraving>0||r.effects.crosshatch>0?NF:tm),v=x[x.length-1]??tm[1];e.uniform1f(n.paletteSize,x.length),bo(e,n.palette0,x[0]??tm[0]),bo(e,n.palette1,x[1]??v),bo(e,n.palette2,x[2]??v),bo(e,n.palette3,x[3]??v),bo(e,n.palette4,x[4]??v),bo(e,n.palette5,x[5]??v),e.uniform1f(n.intensity,r.intensity),e.uniform1f(n.compareEnabled,s.enabled?1:0),e.uniform1f(n.comparePosition,s.position),e.uniform1f(n.compareSoftness,s.softness),e.uniform1f(n.compareLineWidth,s.lineWidth)}function RP(e){if(!e.sourceHidden){let t=e.element.getAttribute(vr);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(Er,"true"),e.element.style.setProperty("opacity","0","important"),e.sourceHidden=!0}function pn(e){let t=ox.find(n=>n.path===e);if(!t)throw new Error(`Missing color-grading animation property: ${e}`);return t}var Cv=pn("intensity"),Tv=pn("lut.intensity"),Rv=pn("adjust.exposure"),Mv=pn("effects.kuwahara"),kv=[["blur",pn("effects.blur")],["bloom",pn("effects.bloom")],["kuwahara",Mv],["pixelate",pn("effects.pixelate")],["ascii",pn("effects.ascii")],["dither",pn("effects.dither")]],Lv=[Cv,Tv,Rv,...kv.map(([,e])=>e)];function Mr(e,t){let n=getComputedStyle(e).getPropertyValue(t.name).trim();if(!n)return null;let r=Number(n);return Number.isFinite(r)?Math.min(t.max,Math.max(t.min,r)):null}function yo(e,t){return t!==null&&(lx(t)||Lv.some(n=>Mr(e,n)!==null))}function MP(e,t){let n=null;for(let[r,o]of kv){let i=Mr(e,o);i!==null&&(n??(n={...t.effects}),n[r]=i)}return n}function kP(e){let{element:t,grading:n}=e,r=Mr(t,Cv),o=Mr(t,Tv),i=Mr(t,Rv),a=MP(t,n);if(![r,o,i].some(c=>c!==null)&&a===null)return n;let s={...n,adjust:i===null?n.adjust:{...n.adjust,exposure:i},effects:a??n.effects};return r!==null&&(s.intensity=r),n.lut&&o!==null&&(s.lut={...n.lut,intensity:o}),s}function Nv(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 Fv(e,t,n){let r=[t.texture,n.blurTexture,t.lutTexture,n.kuwaharaTexture,n.bloomTexture,t.advancedTexture];for(let[o,i]of r.entries())e.activeTexture(e.TEXTURE0+o),e.bindTexture(e.TEXTURE_2D,i)}function LP(e,t){e.glCanvas!==e.canvas&&(e.glCanvas.width<t.width&&(e.glCanvas.width=t.width),e.glCanvas.height<t.height&&(e.glCanvas.height=t.height))}function NP(e,t){if(e.glCanvas===e.canvas)return;let n=e.canvas.getContext("2d");if(!n)throw new Error("Canvas 2D is unavailable");let{width:r,height:o}=t;n.clearRect(0,0,r,o),n.drawImage(e.glCanvas,0,e.glCanvas.height-o,r,o,0,0,r,o)}function FP(e){let t=Av(e.element),n=t&&vv(t,e);if(!t||!n)return e.hasDrawn||(e.canvas.style.display="none"),null;let r=um(t);return r?{source:t,pixels:n,size:r}:null}function PP(e){if(e.sourceInlineOpacity===null){e.element.style.removeProperty("opacity");return}e.element.style.setProperty("opacity",e.sourceInlineOpacity,e.sourceInlineOpacityPriority||"")}function DP(e){let{style:t}=e.element;return e.sourceHidden&&t.getPropertyValue("opacity")==="0"&&t.getPropertyPriority("opacity")==="important"}function IP(e,t,n){let r=DP(e),o=e.element.style.getPropertyValue("visibility"),i=r&&!n;i&&PP(e);let a=window.getComputedStyle(n?t:e.element);e.sourceOpacityForCanvas=a.opacity||"1",i&&e.element.style.setProperty("opacity","0","important"),e.sourceVisibleForCanvas=(n||o!=="hidden")&&a.visibility!=="hidden"}function OP(e){let t=window.__player?.getTime?.();return typeof t=="number"&&Number.isFinite(t)?Math.max(0,t):Ne(e)?Math.max(0,e.currentTime):0}function HP(e,t,n,r){let{gl:o,program:i}=e;LP(e,n);let a=kP(e),l=hP(e);Nv(o,i.texture,t);let s=Mr(e.element,Mv)!==null,c=Sv(e,a,n,r,{preserveKuwahara:s});o.bindFramebuffer(o.FRAMEBUFFER,null),o.viewport(0,0,n.width,n.height);let d=mv(o,i,a,e.compare);Fv(o,i,c);let m=OP(e.element),f=e.grainSeed+Math.floor(m*60);_v(o,i,d,a,l,c.blurReady,c.bloomReady,c.kuwaharaReady,e.compare,n,r,f,m),ia(o,{quad:i.quad,position:d.position}),NP(e,n)}function GP(e,t,n){let r=Ce(t)?t:e.element,o=vP(e,r);if(!o)return null;let i=window.getComputedStyle(r),a=wv(o.width,o.height,n.width,n.height,i.objectFit,i.objectPosition);return{layout:o,uv:a}}function pt(e){if(e.destroyed||e.contextLost)return!1;let t=FP(e);if(!t)return!1;let{source:n,pixels:r,size:o}=t,i=yP(n);i&&xP(e,n),IP(e,n,i);let a=GP(e,n,o);if(!a)return!1;let{layout:l,uv:s}=a;try{return HP(e,r,l,s),RP(e),i&&rP(e,n),e.hasDrawn=!0,e.drawError=null,!0}catch(c){return e.drawError=c instanceof Error?c.message:"Shader draw failed",$("runtime.colorGrading.drawEntry",c),!1}}function BP(e,t,n){let r=e.getBoundingClientRect(),o=e.offsetWidth||r.width||t.width,i=e.offsetHeight||r.height||t.height,a=Math.min(320,Math.max(64,Math.round(n??160))),l=o>0&&i>0?o/i:t.width/t.height;return l>=1?{width:a,height:Math.max(1,Math.round(a/l))}:{width:Math.max(1,Math.round(a*l)),height:a}}function UP(){let e=document.createElement("canvas"),t=zF(e);return t?{canvas:e,glCanvas:e,...t,lut:null,effectTargets:null,kuwaharaTargets:null,effectError:null}:null}function WP(e,t){let n=t?void 0:window.__player?.getTime?.();return typeof n=="number"&&Number.isFinite(n)?Math.max(0,n):Ne(e)?Math.max(0,e.currentTime):0}function VP(e,t,n,r){let o=Av(t),i=o&&vv(o,null);if(!o||!i)return null;let a=um(o);if(!a)return null;let l=BP(t,a,n);e.canvas.width=l.width,e.canvas.height=l.height;let s=Ce(o)?o:t,c=window.getComputedStyle(s),d=wv(l.width,l.height,a.width,a.height,c.objectFit,c.objectPosition);return Nv(e.gl,e.program.texture,i),{dimensions:l,uv:d,effectTime:WP(t,r),grainSeed:gv(t)+(Ne(t)?Math.floor(t.currentTime*60):0)}}async function $P(e,t,n,r,o=!1){let i=VP(e,t,r,o);if(!i)return null;let{dimensions:a,uv:l,grainSeed:s,effectTime:c}=i,d=[];for(let m of n.slice(0,dv)){let f=pl(m.grading);if(!f){d.push({id:m.id,dataUrl:null,error:"Invalid grading"});continue}let p=null;try{f.lut&&(e.lut?.src!==f.lut.src&&(e.lut=QF(e,f.lut.src,await JF(f.lut.src))),p=e.lut),d.push({id:m.id,dataUrl:qP(e,f,p,a,l,s,c)})}catch(b){d.push({id:m.id,dataUrl:null,error:Jl(b)})}}return{...a,images:d}}function qP(e,t,n,r,o,i,a){let{canvas:l,gl:s,program:c}=e,d=Sv(e,t,r,o,{releaseIdleTargets:!1});s.bindFramebuffer(s.FRAMEBUFFER,null),s.viewport(0,0,r.width,r.height);let m=mv(s,c,t,Rr);return Fv(s,c,d),n||(e.lut=null),_v(s,c,m,t,n,d.blurReady,d.bloomReady,d.kuwaharaReady,Rr,r,o,i,a),ia(s,{quad:c.quad,position:m.position}),l.toDataURL("image/png")}function Kn(e,t,n,r){t.addEventListener(n,r),e.cleanup.push(()=>t.removeEventListener(n,r))}function zP(e){return nn(e)?!0:Ne(e)&&!e.paused&&!e.ended?!1:Lv.some(t=>Mr(e,t)!==null)}function jP(e){e.animationFrame!==null&&(window.cancelAnimationFrame(e.animationFrame),e.animationFrame=null),e.videoFrameHandle!==null&&Ne(e.element)&&(e.element.cancelVideoFrameCallback?.(e.videoFrameHandle),e.videoFrameHandle=null)}function aa(e){if(e.destroyed||!Ne(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,pt(e),!e.destroyed&&!t.paused&&!t.ended&&aa(e)});return}e.animationFrame=window.requestAnimationFrame(()=>{e.animationFrame=null,pt(e),!e.destroyed&&!t.paused&&!t.ended&&aa(e)})}function KP(e){let t=()=>{pt(e)};if(Kn(e,e.element,"load",t),Kn(e,e.element,"loadedmetadata",t),Kn(e,e.element,"loadeddata",t),Kn(e,e.element,"seeked",t),Kn(e,e.element,"timeupdate",t),Kn(e,window,"resize",t),Ne(e.element)&&(Kn(e,e.element,"play",()=>aa(e)),Kn(e,e.element,"pause",t)),typeof ResizeObserver<"u"&&(e.resizeObserver=new ResizeObserver(t),e.resizeObserver.observe(e.element)),typeof MutationObserver<"u"){let n=()=>{let a=e.element.style;return`${a.transform}|${a.translate}|${a.rotate}|${a.scale}|${a.left}|${a.top}|${a.width}|${a.height}`},r=n(),o=!1,i=new MutationObserver(()=>{o||n()!==r&&(o=!0,requestAnimationFrame(()=>{o=!1,r=n(),pt(e)}))});i.observe(e.element,{attributes:!0,attributeFilter:["style"]}),e.cleanup.push(()=>i.disconnect())}}function YP(e){if(e.destroyed)return null;e.destroyed=!0,jP(e),e.resizeObserver?.disconnect();for(let t of e.cleanup)t();return e.cleanup.length=0,e.canvas.remove(),sm(e),lm(e),jl(e),e.touchedParent&&(e.parentInlinePosition===null?e.touchedParent.style.removeProperty("position"):e.touchedParent.style.position=e.parentInlinePosition),{canvas:e.canvas,glCanvas:e.glCanvas,gl:e.gl,program:e.program,effectTargets:null,kuwaharaTargets:null,effectError:null}}function Pv(e,t){return e.removeAttribute("style"),t.id?e.id=`${Zy}${t.id}`:e.removeAttribute("id"),e.className=MF,e.setAttribute(RF,"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 XP(e){return Pv(document.createElement("canvas"),e)}function Dv(e){let t=new WeakMap,n=new Set,r=new Set,o=[],i=null,a=null,l=Promise.resolve(),s=!1,c=null,d,m=()=>[...n].flatMap(I=>t.get(I)??[]),f=()=>{if(c)return c;let I=document.createElement("canvas"),P=I.getContext("webgl",{alpha:!0,premultipliedAlpha:!1});return P?(I.addEventListener("webglcontextlost",D=>{D.preventDefault(),o.length=0;for(let w of m())w.contextLost=!0,w.drawError="WebGL context lost",w.canvas.style.display="none",jl(w);p(I,P)}),I.addEventListener("webglcontextrestored",()=>{if(c?.canvas===I){clearTimeout(d);for(let D of m())D.contextLost=!eP(D),D.drawError=D.contextLost?"WebGL context restore failed":null,D.contextLost?jl(D):pt(D);C()}}),c={canvas:I,gl:P},c):null},p=(I,P)=>{clearTimeout(d),d=setTimeout(()=>b(I,P),TF)},b=(I,P)=>{if(s||c?.canvas!==I||!P.isContextLost?.())return;let D=c;c=null;let w=f();if(!w){c=D,p(I,P);return}for(let L of m())nP(L,w);C()},y=I=>{let P=f(),D=P&&Xl(P.gl);return!P||!D?null:{canvas:XP(I),glCanvas:P.canvas,gl:P.gl,program:D,effectTargets:null,kuwaharaTargets:null,effectError:null}},x=(I,P,D)=>{r.delete(I);let w=t.get(I);if(w)return w.grading=P,w.source=D,pt(w),Ne(I)&&!I.paused&&aa(w),!0;let L=o.pop();if(L)Pv(L.canvas,I);else{let te=y(I);if(!te)return!1;L=te}let Y={element:I,...L,grading:P,compare:{...Rr},lut:null,lutLoadingSrc:null,lutError:null,drawError:null,effectTargets:null,kuwaharaTargets:null,effectError:null,source:D,animationFrame:null,videoFrameHandle:null,resizeObserver:null,cleanup:[],touchedParent:null,parentInlinePosition:null,sourceHidden:!1,borderlessFrame:null,sourceInlineOpacity:null,sourceInlineOpacityPriority:"",sourceOpacityForCanvas:window.getComputedStyle(I).opacity||"1",sourceVisibleForCanvas:window.getComputedStyle(I).visibility!=="hidden",hasDrawn:!1,contextLost:!1,grainSeed:gv(I),destroyed:!1};return t.set(I,Y),n.add(I),KP(Y),pt(Y),Ne(I)&&!I.paused&&aa(Y),!0},v=(I,P)=>{if(s)return!1;let D=na(I);if(!D)return!1;let w=t.get(D);if(!w){let L=ta(D);if(!yo(D,L)||!x(D,L,"attribute"))return!1;w=t.get(D)}return w?(w.compare=YF(P),pt(w),!0):!1},E=I=>{r.delete(I);let P=t.get(I);if(!P)return;let D=YP(P);D&&(P.contextLost||o.length>=LF?ra(D):o.push(D)),t.delete(I),n.delete(I)},C=()=>{if(s)return 0;let I=new Set;r.clear(),document.querySelectorAll(ZE).forEach(D=>{if(!Yn(D))return;I.add(D);let w=ta(D);yo(D,w)?rm(D)?x(D,w,"attribute"):(E(D),r.add(D)):E(D)});for(let D of n){let w=t.get(D);w&&(!D.isConnected||w.source==="attribute"&&!I.has(D))&&E(D)}return n.size},H=()=>{for(let I of r){if(I.isConnected&&!rm(I))continue;r.delete(I);let P=ta(I);I.isConnected&&yo(I,P)&&x(I,P,"attribute")}},V=()=>{if(s)return 0;H();let I=0;for(let P of n){let D=t.get(P);D&&pt(D)&&(I+=1)}return I},M=async()=>{let I=new Set;for(let P of n){let D=t.get(P)?.grading.lut;if(!D?.src.trim()||(D.intensity??1)<=0)continue;let w=am(D.src);w.state==="pending"&&I.add(w.promise)}return I.size>0&&await Promise.allSettled(I),V(),I.size},R=()=>{if(s)return 0;H();let I=0;for(let P of n){let D=t.get(P);D&&zP(P)&&pt(D)&&(I+=1)}return I},U=(I,P)=>{if(s)return!1;let D=na(I);if(!D)return!1;let w=pl(P);return yo(D,w)?x(D,w,"live"):(E(D),!0)},T=(I,P)=>{if(!Yn(I))return!1;let D=t.get(I);if(!D){if(!P)return!1;let w=ta(I);return yo(I,w)&&x(I,w,"attribute")}return D.sourceVisibleForCanvas=P,!P&&D.source==="attribute"&&E(I),!0},F=I=>Yn(I)&&t.has(I),W=I=>{let P=na(I);if(!P)return{state:"missing",message:"Media not found"};let D=t.get(P);if(D)return D.effectError?{state:"unavailable",message:D.effectError}:D.drawError?{state:"unavailable",message:D.drawError}:D.lutError?{state:"unavailable",message:`LUT error: ${D.lutError}`}:D.grading.lut&&D.lutLoadingSrc?{state:"pending",message:"Loading LUT"}:D.canvas.style.display==="none"?{state:"pending",message:"Waiting for media frame"}:{state:"active",message:D.lut?"Shader + LUT active":"Shader active"};let w=ta(P);return yo(P,w)?rm(P)?{state:"unavailable",message:"WebGL unavailable"}:{state:"pending",message:"Waiting for visible media"}:{state:"inactive",message:"No grading applied"}},B=async(I,P,D)=>{let w=async()=>{if(s||P.length===0)return null;let Y=na(I);return!Y||(a??(a=UP()),!a)?null:$P(a,Y,P,D?.maxDimension,D?.useMediaTime)},L=l.then(w,w);return l=L.then(()=>{},()=>{}),L},X=I=>{let P=na(I);if(!Ne(P))return null;if(!P.paused)return()=>{};let D=P.currentTime,w=P.loop,L=P.muted;return P.loop=!0,P.muted=!0,(P.ended||Number.isFinite(P.duration)&&D>=P.duration)&&(P.currentTime=0),e?.lease(P),P.play().catch(()=>{}),()=>{e?.release(P),P.pause(),P.loop=w,P.muted=L,P.currentTime=At(D)}},ae=()=>{if(!s){s=!0,clearTimeout(d),i?.disconnect(),i=null;for(let I of n)E(I);r.clear();for(let I of o)ra(I);o.length=0,c?.gl.getExtension("WEBGL_lose_context")?.loseContext(),c=null,a&&(ra(a,!0),a=null)}};if(document.body){let I=em(ZE,P=>Array.from(n).some(D=>P.contains(D)));i=new MutationObserver(P=>{I(P)&&C()}),i.observe(document.body,{childList:!0,subtree:!0,attributes:!0,attributeFilter:[fl]})}let N={refresh:C,redraw:V,redrawAnimated:R,waitForActiveLuts:M,setGrading:U,setCompare:v,setSourceVisibility:T,isGraded:F,getStatus:W,renderPreviews:B,startPreviewPlayback:X,destroy:ae},j=window;return j.__hf=j.__hf||{},j.__hf.colorGrading=N,C(),N}var JP={mulX:374761393,mulY:668265263,mulMix:1274126177,offset:2654435769,shift1:13,shift2:16,divisor:4294967296},{mulX:QP,mulY:ZP,mulMix:Iv,offset:eD,shift1:tD,shift2:nD,divisor:rD}=JP,oD=20,Ov=`#version 300 es
|
|
379
379
|
precision highp float;
|
|
380
380
|
precision highp int;
|
|
381
381
|
|
|
@@ -399,11 +399,11 @@ uniform float u_randomSeed;
|
|
|
399
399
|
uniform float u_opacity;
|
|
400
400
|
|
|
401
401
|
float hfHashUnit(int ix, int iy, int seed) {
|
|
402
|
-
uint h = ((uint(ix) * ${
|
|
403
|
-
h = h ^ (h >> ${
|
|
404
|
-
h = h * ${
|
|
405
|
-
h = h ^ (h >> ${
|
|
406
|
-
return float(h) / ${
|
|
402
|
+
uint h = ((uint(ix) * ${QP}u) ^ (uint(iy) * ${ZP}u) ^ (uint(seed) * ${Iv}u)) + ${eD}u;
|
|
403
|
+
h = h ^ (h >> ${tD}u);
|
|
404
|
+
h = h * ${Iv}u;
|
|
405
|
+
h = h ^ (h >> ${nD}u);
|
|
406
|
+
return float(h) / ${rD}.0;
|
|
407
407
|
}
|
|
408
408
|
|
|
409
409
|
float hfFade(float f, float noiseType) {
|
|
@@ -433,7 +433,7 @@ float hfFbm(vec2 p) {
|
|
|
433
433
|
float freq = 1.0;
|
|
434
434
|
float sum = 0.0;
|
|
435
435
|
float norm = 0.0;
|
|
436
|
-
for (int i = 0; i < ${
|
|
436
|
+
for (int i = 0; i < ${oD}; i++) {
|
|
437
437
|
if (float(i) >= u_complexity) break;
|
|
438
438
|
sum += amp * hfValueNoise(p * freq, seed + i);
|
|
439
439
|
norm += amp;
|
|
@@ -453,7 +453,7 @@ void main() {
|
|
|
453
453
|
float a = clamp(u_opacity / 100.0, 0.0, 1.0);
|
|
454
454
|
fragColor = vec4(v * a, v * a, v * a, a);
|
|
455
455
|
}
|
|
456
|
-
`;var
|
|
456
|
+
`;var cm={lumaR:.299,lumaG:.587,lumaB:.114},{lumaR:iD,lumaG:aD,lumaB:sD}=cm,Hv=`#version 300 es
|
|
457
457
|
precision highp float;
|
|
458
458
|
|
|
459
459
|
in vec2 v_uv;
|
|
@@ -488,7 +488,7 @@ float hfMapChannel(vec4 premultiplied, float selector) {
|
|
|
488
488
|
if (selector < 2.5) return rgb.g;
|
|
489
489
|
if (selector < 3.5) return rgb.b;
|
|
490
490
|
if (selector < 4.5) return premultiplied.a;
|
|
491
|
-
if (selector < 8.5) return dot(rgb, vec3(${
|
|
491
|
+
if (selector < 8.5) return dot(rgb, vec3(${iD}, ${aD}, ${sD}));
|
|
492
492
|
if (selector < 9.5) return 1.0;
|
|
493
493
|
return 0.5;
|
|
494
494
|
}
|
|
@@ -500,7 +500,7 @@ void main() {
|
|
|
500
500
|
vec2 d = vec2((h - 0.5) * 2.0 * u_maxH, (v - 0.5) * 2.0 * u_maxV);
|
|
501
501
|
fragColor = hfSampleSrc(v_uv + d / u_size);
|
|
502
502
|
}
|
|
503
|
-
`;var{lumaR:
|
|
503
|
+
`;var{lumaR:lD,lumaG:uD,lumaB:cD}=cm;var Gv=`#version 300 es
|
|
504
504
|
precision highp float;
|
|
505
505
|
|
|
506
506
|
in vec2 v_uv;
|
|
@@ -518,7 +518,7 @@ uniform float u_mode;
|
|
|
518
518
|
float hfCoverage(vec4 matte, float mode) {
|
|
519
519
|
if (mode < 1.5) return matte.a;
|
|
520
520
|
if (mode < 2.5) return 1.0 - matte.a;
|
|
521
|
-
float luma = dot(matte.rgb, vec3(${
|
|
521
|
+
float luma = dot(matte.rgb, vec3(${lD}, ${uD}, ${cD}));
|
|
522
522
|
if (mode < 3.5) return luma;
|
|
523
523
|
return 1.0 - luma;
|
|
524
524
|
}
|
|
@@ -528,7 +528,7 @@ void main() {
|
|
|
528
528
|
vec4 matte = texture(u_src2, v_uv);
|
|
529
529
|
fragColor = src * clamp(hfCoverage(matte, u_mode), 0.0, 1.0);
|
|
530
530
|
}
|
|
531
|
-
`;var
|
|
531
|
+
`;var dD={lcgMulA:1103515245,lcgMulB:12996205,lcgAdd:12345,highMask:32640,lowMask:255,byteScale:32704},{lcgMulA:fD,lcgMulB:mD,lcgAdd:Bv,highMask:pD,lowMask:hD,byteScale:gD}=dD,Uv=`#version 300 es
|
|
532
532
|
precision highp float;
|
|
533
533
|
// NOT decoration: a fragment shader's default integer precision is mediump,
|
|
534
534
|
// and a mediump uint is only guaranteed 16 bits (ESSL 3.00 \xA74.5.2). Every step
|
|
@@ -568,9 +568,9 @@ uint hfJenkinsMix(uint a, uint b, uint c) {
|
|
|
568
568
|
// The hash's 15-bit output byte for one channel.
|
|
569
569
|
float hfNoiseByte(uint a, uint y, uint seed) {
|
|
570
570
|
uint h = hfJenkinsMix(a, y, seed);
|
|
571
|
-
uint t2 = h * ${
|
|
572
|
-
uint t4 = t2 * ${
|
|
573
|
-
return float(((t4 >> 16u) & ${
|
|
571
|
+
uint t2 = h * ${fD}u + ${Bv}u;
|
|
572
|
+
uint t4 = t2 * ${mD}u + ${Bv}u;
|
|
573
|
+
return float(((t4 >> 16u) & ${hD}u) ^ ((t2 >> 9u) & ${pD}u));
|
|
574
574
|
}
|
|
575
575
|
|
|
576
576
|
void main() {
|
|
@@ -590,7 +590,7 @@ void main() {
|
|
|
590
590
|
} else {
|
|
591
591
|
nz = vec3(hfNoiseByte(x, y, seed));
|
|
592
592
|
}
|
|
593
|
-
nz = amount * (nz / ${
|
|
593
|
+
nz = amount * (nz / ${gD}.0 - 0.5);
|
|
594
594
|
|
|
595
595
|
vec4 out4 = vec4(src.rgb + nz, src.a);
|
|
596
596
|
// A valid premultiplied colour needs rgb <= a component-wise; noise on a
|
|
@@ -600,7 +600,7 @@ void main() {
|
|
|
600
600
|
out4.rgb = min(out4.rgb, out4.a);
|
|
601
601
|
fragColor = u_clipping > 0.5 ? clamp(out4, 0.0, 1.0) : out4;
|
|
602
602
|
}
|
|
603
|
-
`;var
|
|
603
|
+
`;var bD={tau:6.283185307179586,degreesPerTurn:360},{tau:yD,degreesPerTurn:xD}=bD,Wv=`#version 300 es
|
|
604
604
|
precision highp float;
|
|
605
605
|
|
|
606
606
|
in vec2 v_uv;
|
|
@@ -631,19 +631,19 @@ void main() {
|
|
|
631
631
|
vec2 travel = vec2(sin(dir), -cos(dir));
|
|
632
632
|
vec2 swing = vec2(-travel.y, travel.x);
|
|
633
633
|
float proj = (px.x + 1.0) * travel.x + px.y * travel.y;
|
|
634
|
-
float turns = proj / max(u_width, 1.0) + u_phase / ${
|
|
635
|
-
float disp = u_height * sin(${
|
|
634
|
+
float turns = proj / max(u_width, 1.0) + u_phase / ${xD}.0 + u_speed * u_t;
|
|
635
|
+
float disp = u_height * sin(${yD} * turns);
|
|
636
636
|
fragColor = hfSampleSrc((px + swing * disp) / u_size);
|
|
637
637
|
}
|
|
638
|
-
`;var
|
|
638
|
+
`;var dm="data-vfx-chain",Vv=1,$v=[{value:1,label:"Red"},{value:2,label:"Green"},{value:3,label:"Blue"},{value:4,label:"Alpha"},{value:5,label:"Luminance"},{value:6,label:"Hue"},{value:7,label:"Lightness"},{value:8,label:"Saturation"},{value:9,label:"Full"},{value:10,label:"Half"},{value:11,label:"Off"}],SD=[{id:"fractal-noise",label:"Fractal Noise",ae:"ADBE Fractal Noise",capture:"none",frag:Ov,params:[{kind:"enum",key:"fractalType",label:"Fractal Type",options:[{value:1,label:"Basic"}],default:1,hint:"Only Basic is implemented in v1."},{kind:"enum",key:"noiseType",label:"Noise Type",options:[{value:1,label:"Block"},{value:2,label:"Linear"},{value:3,label:"Soft Linear"},{value:4,label:"Spline"}],default:3},{kind:"bool",key:"invert",label:"Invert",default:!1},{kind:"number",key:"contrast",label:"Contrast",unit:"%",min:0,max:1e3,step:1,default:100},{kind:"number",key:"brightness",label:"Brightness",unit:"",min:-1e3,max:1e3,step:1,default:0},{kind:"number",key:"scale",label:"Scale",unit:"%",min:6,max:1e4,step:1,default:100},{kind:"number",key:"complexity",label:"Complexity",unit:"",min:1,max:20,step:1,default:6},{kind:"number",key:"subInfluence",label:"Sub Influence",unit:"%",min:0,max:100,step:1,default:70},{kind:"number",key:"subScaling",label:"Sub Scaling",unit:"%",min:0,max:100,step:1,default:56},{kind:"number",key:"evolution",label:"Evolution",unit:"revolutions",min:-1e4,max:1e4,step:.01,default:0,animatable:!0},{kind:"number",key:"randomSeed",label:"Random Seed",unit:"",min:0,max:99999,step:1,default:0},{kind:"number",key:"opacity",label:"Opacity",unit:"%",min:0,max:100,step:1,default:100,animatable:!0}]},{id:"wave-warp",label:"Wave Warp",ae:"ADBE Wave Warp",capture:"self",frag:Wv,params:[{kind:"enum",key:"waveType",label:"Wave Type",options:[{value:1,label:"Sine"}],default:1,hint:"Only Sine is implemented in v1; the exporter marks the others cosmetic."},{kind:"number",key:"height",label:"Wave Height",unit:"px",min:-1e3,max:1e3,step:1,default:10,animatable:!0},{kind:"number",key:"width",label:"Wave Width",unit:"px",min:1,max:1e4,step:1,default:40,animatable:!0},{kind:"number",key:"direction",label:"Direction",unit:"deg",min:-360,max:360,step:1,default:90},{kind:"number",key:"speed",label:"Wave Speed",unit:"waves/s",min:-100,max:100,step:.1,default:1},{kind:"enum",key:"pinning",label:"Pinning",options:[{value:1,label:"None"}],default:1,hint:"Only None is implemented in v1; the exporter marks the others cosmetic."},{kind:"number",key:"phase",label:"Phase",unit:"deg",min:-360,max:360,step:1,default:0,animatable:!0}]},{id:"displacement-map",label:"Displacement Map",ae:"ADBE Displacement Map",capture:"self",frag:Hv,params:[{kind:"ref",key:"map",label:"Displacement Map Layer",optional:!0},{kind:"enum",key:"useH",label:"Use For Horizontal Displacement",options:$v,default:1,hint:"Hue, Lightness and Saturation are read as Luminance in v1."},{kind:"number",key:"maxH",label:"Max Horizontal Displacement",unit:"px",min:-32e3,max:32e3,step:1,default:5,animatable:!0},{kind:"enum",key:"useV",label:"Use For Vertical Displacement",options:$v,default:2,hint:"Hue, Lightness and Saturation are read as Luminance in v1."},{kind:"number",key:"maxV",label:"Max Vertical Displacement",unit:"px",min:-32e3,max:32e3,step:1,default:5,animatable:!0},{kind:"enum",key:"behavior",label:"Displacement Map Behavior",options:[{value:1,label:"Center Map"}],default:1,hint:"Only Center Map is implemented in v1."},{kind:"enum",key:"edge",label:"Edge Behavior",options:[{value:0,label:"Off"}],default:0,hint:"Only Off (transparent outside the layer) is implemented in v1."},{kind:"bool",key:"expand",label:"Expand Output",default:!0}]},{id:"luma-matte",label:"Matte",capture:"self",frag:Gv,params:[{kind:"ref",key:"matte",label:"Matte Layer"},{kind:"enum",key:"mode",label:"Matte Mode",options:[{value:1,label:"Alpha"},{value:2,label:"Alpha Inverted"},{value:3,label:"Luma"},{value:4,label:"Luma Inverted"}],default:1}]},{id:"noise",label:"Noise",ae:"ADBE Noise",capture:"self",frag:Uv,params:[{kind:"number",key:"amount",label:"Amount of Noise",unit:"%",min:0,max:400,step:.1,default:0,animatable:!0},{kind:"bool",key:"useColorNoise",label:"Use Color Noise",default:!1},{kind:"bool",key:"clipping",label:"Clip Result Values",default:!0}]}],Ql=new Map(SD.map(e=>[e.id,e]));function jv(e){return Ql.get(e)}function Kv(e,t){let n=Ql.get(e);if(!n)return{};let r={};for(let o of n.params){let i=t?.[o.key];r[o.key]=o.kind==="enum"?ED(o,i):o.kind==="bool"?vD(o,i):o.kind==="ref"?AD(i):wD(o,i)}return r}function Yv(e){let t=typeof e=="number"?e:typeof e=="string"&&e.trim()!==""?Number(e):Number.NaN;return Number.isFinite(t)?t:void 0}function ED(e,t){let n=Yv(t);return n!==void 0&&e.options.some(r=>r.value===n)?n:e.default}function vD(e,t){return typeof t=="boolean"?t:e.default}function AD(e){return typeof e=="string"?e:""}function wD(e,t){let n=Yv(t);return n!==void 0?Math.min(e.max,Math.max(e.min,n)):e.default}var Ot=class extends Error{constructor(t){super(t),this.name="VfxChainError"}};function fm(e){return e.nodes.filter(t=>t.enabled!==!1)}var qv={none:0,self:1,backdrop:2};function Xv(e){let t="none";for(let n of fm(e)){let r=Ql.get(n.type);r&&qv[r.capture]>qv[t]&&(t=r.capture)}return t}function Jv(e){let t;try{t=JSON.parse(e)}catch(o){throw new Ot(`Chain file is not valid JSON: ${o.message}`)}if(typeof t!="object"||t===null)throw new Ot("Chain file must be a JSON object.");let n=t;if(n.version!==Vv)throw new Ot(`Unsupported chain version: ${String(n.version)}`);if(!Array.isArray(n.nodes))throw new Ot("Chain file is missing a `nodes` array.");let r=n.nodes.map(TD);return{version:Vv,nodes:r}}function zv(e){return typeof e=="object"&&e!==null}function _D(e,t){if(typeof e.type!="string"||!Ql.has(e.type))throw new Ot(`Node ${t} has unknown effect type: ${String(e.type)}`);return e.type}function CD(e,t){if(typeof e.id!="string"||e.id==="")throw new Ot(`Node ${t} is missing an id.`);return e.id}function TD(e,t){if(!zv(e))throw new Ot(`Node ${t} is not an object.`);let n=e,r=_D(n,t),o=CD(n,t),i=zv(n.params)?n.params:{};return RD({type:r,id:o,enabled:n.enabled===!1?!1:void 0,params:i})}function RD(e){for(let t of Object.keys(e))e[t]===void 0&&delete e[t];return e}var Qv='canvas[layoutsubtree], canvas[content="drawable"]';function xo(e=window){let t=e.CanvasRenderingContext2D?.prototype;if(!t||!("drawElementImage"in t))return null;let n=e.document.createElement("canvas");return"requestPaint"in n?"layoutSubtree"in n?"layoutsubtree":"updateElementGeometry"in n?"drawable":null:null}function Zl(e,t){t==="layoutsubtree"?e.setAttribute("layoutsubtree",""):e.setAttribute("content","drawable")}function eu(e,t){t==="drawable"&&e.setAttribute("drawable","")}function Zv(e,t){t==="drawable"&&e.removeAttribute("drawable")}var MD="data-vfx-ref-visible",iA="[HyperFrames] composition script error:",kD={preserveDrawingBuffer:!0,antialias:!1,premultipliedAlpha:!0,alpha:!0},LD=`#version 300 es
|
|
639
639
|
out vec2 v_uv;
|
|
640
640
|
void main() {
|
|
641
641
|
vec2 p = vec2(float((gl_VertexID << 1) & 2), float(gl_VertexID & 2));
|
|
642
642
|
v_uv = p;
|
|
643
643
|
gl_Position = vec4(p * 2.0 - 1.0, 0.0, 1.0);
|
|
644
644
|
}
|
|
645
|
-
`,hn=[],tA=30,nA=0,pm=0,rA=-1,dm=null,fm=null;function yt(e){globalThis.console.error(eA,`vfx: ${e}`)}function oA(e){globalThis.console.error(eA,`vfx-frame: ${e}`)}function Yv(e,t,n){let r=e.createShader(t);return r?(e.shaderSource(r,n),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:(yt(`shader failed to compile: ${e.getShaderInfoLog(r)??"(no log)"}`),e.deleteShader(r),null)):null}function TD(e,t){let n=Yv(e,e.VERTEX_SHADER,CD),r=n?Yv(e,e.FRAGMENT_SHADER,t):null;if(!n||!r)return null;let o=e.createProgram();return o?(e.attachShader(o,n),e.attachShader(o,r),e.linkProgram(o),e.deleteShader(n),e.deleteShader(r),e.getProgramParameter(o,e.LINK_STATUS)?o:(yt(`program failed to link: ${e.getProgramInfoLog(o)??"(no log)"}`),e.deleteProgram(o),null)):null}var Xv="position:absolute;inset:0;width:100%;height:100%;pointer-events:none;";function RD(e){let t=e.querySelector(":scope > canvas.hf-vfx-out");if(nn(t))return t.style.cssText=Xv+t.style.cssText,t;let n=document.createElement("canvas");return n.className="hf-vfx-out",n.style.cssText=Xv,e.appendChild(n),n}function MD(e,t,n){let r={};for(let o of n.params)o.kind!=="ref"&&(r[o.key]=e.getUniformLocation(t,`u_${o.key}`));return{size:e.getUniformLocation(t,"u_size"),t:e.getUniformLocation(t,"u_t"),fps:e.getUniformLocation(t,"u_fps"),src:e.getUniformLocation(t,"u_src"),src2:e.getUniformLocation(t,"u_src2"),hasSrc2:e.getUniformLocation(t,"u_hasSrc2"),params:r}}function kD(e,t,n,r){return r.optional?{kind:"none"}:(yt(`${Jt(e)}: node "${t.id}" (${n.id}) needs a "${r.key}" param naming the id of the element to read as its second source.`),{kind:"error"})}function LD(e,t,n,r,o,i){let a=n.params.find(m=>m.kind==="ref");if(!a)return{kind:"none"};let l=r[a.key];if(typeof l!="string"||l==="")return kD(e,t,n,a);let s=e.ownerDocument.getElementById(l);if(!Ce(s))return yt(`${Jt(e)}: node "${t.id}" (${n.id}) names "${a.key}" element #${l}, which is not in the composition.`),{kind:"error"};if(s===e)return a.optional?{kind:"none"}:{kind:"self"};let c=i.get(s);if(c)return{kind:"source",source:c};let d=iA(s,o,`${Jt(e)}: "${a.key}" source`);return d?(i.set(s,d),{kind:"source",source:d}):{kind:"error"}}function ND(e,t,n){let r=[],o=new Map;for(let i of cm(t)){let a=Wv(i.type);if(!a)return yt(`node "${i.id}" has unknown effect type "${i.type}"`),null;let l=TD(e,a.frag);if(!l)return yt(`node "${i.id}" (${a.id}) has no usable program`),null;let s=Vv(a.id,i.params),c=LD(n,i,a,s,e,o);if(c.kind==="error")return null;r.push({node:i,def:a,program:l,params:s,locations:MD(e,l,a),...c.kind==="source"?{ref:c.source}:{},selfRef:c.kind==="self"})}return r}function FD(e){let t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),t}function PD(e){let t=e.parentElement;if(!t||e.id==="")return null;let n=t.children;for(let r=0;r<n.length;r++){let o=n.item(r);if(nn(o)&&o.classList.contains("hf-vfx-src")&&o.getAttribute("data-vfx-for")===e.id)return o}return null}function DD(e,t){xo()==="drawable"&&(Ql(e,"drawable"),Zl(t,"drawable"))}function iA(e,t,n){let r=PD(e),o=r??e.querySelector(":scope > canvas.hf-vfx-src"),i=nn(o)?o.querySelector(":scope > .hf-vfx-in"):null;if(!nn(o)||!Ce(i)){yt(`${n}: a capturing chain needs <canvas layoutsubtree class="hf-vfx-src"><div class="hf-vfx-in">\u2026</div></canvas> in source: inside the element for its own pixels, or beside it with data-vfx-for="${e.id}" for the layers below it.`);return}if(o.querySelector("canvas.hf-vfx-src")||o.parentElement?.closest("canvas.hf-vfx-src")){yt(`${n}: a capture canvas nested inside another capture canvas blocks the renderer's main thread in drawElementImage, so this chain is not registered. Keep each .hf-vfx-src out of every other .hf-vfx-src subtree.`);return}let a=o.getContext("2d");if(!a||typeof a.drawElementImage!="function"){yt(`${n}: drawElementImage is unavailable, so the layer cannot be captured. In Studio, enable chrome://flags/#canvas-draw-element.`);return}return DD(o,i),{canvas:o,inner:i,ctx:a,texture:FD(t),backdrop:r!==null,visible:o.hasAttribute(wD),emptyBoxReported:!1,laidOutEmpty:Jn(i)===null}}function ID(e){e.out.addEventListener("webglcontextlost",t=>{t.preventDefault(),!(!hn.includes(e)||e.contextLost)&&(e.contextLost=!0,yt(`${Jt(e.host)}: WebGL context lost.`))})}function OD(e){try{return zv(e.getAttribute(um)??"")}catch(t){let n=t instanceof Ot?t.message:String(t);return yt(`${Jt(e)}: ${n}`),null}}function HD(e){let t=OD(e);if(!t)return null;let n=RD(e),r=n.getContext("webgl2",_D);if(!r)return yt(`${Jt(e)}: WebGL2 is unavailable, so the chain cannot paint.`),n.remove(),null;let o=ND(r,t,e);if(!o)return n.remove(),null;let i=qv(t),a=i==="none"?void 0:iA(e,r,Jt(e));if(i!=="none"&&!a)return n.remove(),null;let l=a?.backdrop?"backdrop":i,s={host:e,chain:t,capture:l,out:n,gl:r,passes:o,src:a,contextLost:!1};return ID(s),s}function hm(e){let t=getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function aA(e){if(getComputedStyle(e.inner).visibility==="hidden")return!1;for(let t=e.inner;t;t=t.parentElement)if(getComputedStyle(t).display==="none")return!1;return!0}function Jt(e){return e.id?`#${e.id}`:`<${e.tagName.toLowerCase()}>`}function So(e){let t=e.src?[e.src]:[];for(let n of e.passes)n.ref&&!t.includes(n.ref)&&t.push(n.ref);return t}function gm(e){return e.src?.backdrop===!0}function la(e){let t=[];for(let n of e.passes)n.ref?.visible&&!t.includes(n.ref)&&t.push(n.ref);return t}function GD(){for(let e of hn){let{gl:t}=e;for(let n of e.passes)t.deleteProgram(n.program);for(let n of So(e))t.deleteTexture(n.texture);if(e.ping){for(let n of e.ping.textures)t.deleteTexture(n);for(let n of e.ping.framebuffers)t.deleteFramebuffer(n)}}}function eu(e,t){GD(),hn=[],tA=Number.isFinite(t)&&t>0?t:30;let n=e.querySelectorAll(`[${um}]`);for(let r of n){if(!Ce(r))continue;let o=HD(r);o&&hn.push(o)}return hn}function Jn(e){let t=typeof window>"u"?1:window.devicePixelRatio||1,n=Math.round(e.offsetWidth*t),r=Math.round(e.offsetHeight*t);return n>0&&r>0?{width:n,height:r}:null}function Jv(e,t,n){let r=e.createTexture();e.bindTexture(e.TEXTURE_2D,r),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t,n,0,e.RGBA,e.UNSIGNED_BYTE,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE);let o=e.createFramebuffer();return e.bindFramebuffer(e.FRAMEBUFFER,o),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0),[r,o]}function BD(e,t,n){let r=e.ping;if(r&&r.width===t&&r.height===n)return r;let{gl:o}=e;if(r){for(let s of r.textures)o.deleteTexture(s);for(let s of r.framebuffers)o.deleteFramebuffer(s)}let i=Jv(o,t,n),a=Jv(o,t,n),l={textures:[i[0],a[0]],framebuffers:[i[1],a[1]],width:t,height:n};return e.ping=l,l}function UD(e,t,n){if(e.kind==="ref")return null;if(e.kind==="number"&&e.animatable){let o=n.getPropertyValue(`--vfx-${t.node.id}-${e.key}`).trim(),i=o===""?Number.NaN:Number.parseFloat(o);if(Number.isFinite(i))return Math.min(e.max,Math.max(e.min,i))}let r=t.params[e.key];return typeof r=="boolean"?r?1:0:typeof r=="number"?r:0}function WD(e,t,n,r,o,i){let{gl:a}=e,{locations:l}=t;a.uniform2f(l.size,o,i),a.uniform1f(l.t,r),a.uniform1f(l.fps,tA),a.uniform1f(l.hasSrc2,t.ref||t.selfRef?1:0);for(let s of t.def.params){let c=UD(s,t,n);c!==null&&a.uniform1f(l.params[s.key]??null,c)}}function VD(e,t,n){return e===t||!n?null:n.framebuffers[e%2]??null}function $D(e,t,n){return t===0?e.src?.texture??null:n?.textures[(t-1)%2]??null}function qD(e,t,n,r){let{gl:o}=e,i=e.passes[t];o.bindFramebuffer(o.FRAMEBUFFER,VD(t,n,r));let a=$D(e,t,r);a&&Qv(o,i.locations.src,a,0),i.ref?(Qv(o,i.locations.src2,i.ref.texture,1),o.activeTexture(o.TEXTURE0)):i.selfRef&&a&&o.uniform1i(i.locations.src2,0)}function Qv(e,t,n,r){e.activeTexture(r===0?e.TEXTURE0:e.TEXTURE1),e.bindTexture(e.TEXTURE_2D,n),e.uniform1i(t,r)}function bm(e,t){let n=Jn(e.host);if(!n)return;let{gl:r,out:o,passes:i}=e;o.width!==n.width&&(o.width=n.width),o.height!==n.height&&(o.height=n.height);let a=i.length>1?BD(e,n.width,n.height):null,l=getComputedStyle(e.host),s=i.length-1;for(let c=0;c<=s;c++){let d=i[c];r.useProgram(d.program),qD(e,c,s,a),r.viewport(0,0,n.width,n.height),WD(e,d,l,t,n.width,n.height),r.drawArrays(r.TRIANGLES,0,3)}}function sA(e,t){e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.texture),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,1),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t.canvas),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,0),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,0)}var zD={upload:!0,keepBitmap:!1},jD={upload:!1,keepBitmap:!0},KD={upload:!0,keepBitmap:!0},YD={upload:!1,keepBitmap:!0};function lA(e,t){e.canvas.width!==t.width&&(e.canvas.width=t.width),e.canvas.height!==t.height&&(e.canvas.height=t.height)}function Zv(e,t,n,r){return lA(t,n),t.ctx.clearRect(0,0,n.width,n.height),r.upload&&sA(e.gl,t),!0}function ym(e,t,n,r,o){if(!aA(t))return Zv(e,t,n,o);if(Jn(t.inner)===null)return t.emptyBoxReported||(t.emptyBoxReported=!0,oA(`${Jt(e.host)}: the .hf-vfx-in wrapper measures 0\xD70, so its capture would be empty. Inside a layoutsubtree canvas an inset or percentage box has no size, so the wrapper must state an explicit width and height in px.`)),Zv(e,t,n,o);lA(t,n),t.ctx.clearRect(0,0,n.width,n.height);try{t.ctx.drawElementImage(t.inner,0,0,n.width,n.height)}catch(i){return r||yt(`${Jt(e.host)}: drawElementImage failed: ${i.message} In Studio, enable chrome://flags/#canvas-draw-element.`),!1}return o.upload&&sA(e.gl,t),o.keepBitmap||t.ctx.clearRect(0,0,n.width,n.height),!0}function uA(e,t){return e.visible?Jn(e.inner)??t:t}function cA(e,t=!1){let n=Jn(e.host),r=So(e);if(!n||r.length===0)return!1;let o=!0;for(let i of r){let a=i.visible?KD:zD;ym(e,i,uA(i,n),t,a)||(o=!1)}return o}function dA(e,t=!1){let n=e.src;if(!n)return!1;let r=Jn(e.host)??Jn(n.inner);return r?ym(e,n,r,t,jD):!1}function mm(e,t=!1){let n=!0;for(let r of la(e)){let o=uA(r,{width:0,height:0});ym(e,r,o,t,YD)||(n=!1)}return n}function XD(e){let t=!1;return gm(e)&&dA(e)&&(t=!0),la(e).length>0&&mm(e)&&(t=!0),t}function JD(){let e=!1;for(let t of hn)if(!t.contextLost&&So(t).length!==0){if(!hm(t.host)){XD(t)&&(e=!0);continue}cA(t)&&(bm(t,nA),e=!0)}return rA=pm,window.__hf_page_composite_pending=!1,e}function QD(){let e=window,t=e.__hf_page_composite_resolve;t!==dm&&(fm=typeof t=="function"?t:null,dm=()=>{let n=fm?fm():!1;return JD()||n},e.__hf_page_composite_resolve=dm),e.__hf_page_composite_pending=!0}var fA=2e3;function ZD(e){return new Promise(t=>{let n=!1,r=a=>{n||(n=!0,clearTimeout(i),e.removeEventListener("paint",o),t(a))},o=()=>r("painted"),i=setTimeout(()=>r("timeout"),fA);e.addEventListener("paint",o,{once:!0});try{e.requestPaint?.()}catch{}if(typeof requestAnimationFrame!="function"){r("painted");return}requestAnimationFrame(()=>requestAnimationFrame(()=>r("painted")))})}async function eI(e,t){return(await Promise.all(t.map(r=>ZD(r.canvas)))).includes("timeout")?(oA(`${Jt(e.host)}: no paint arrived within ${fA}ms, so this frame's capture was skipped (a BeginFrame-controlled compositor without a tick for this frame is a known cause).`),!1):!0}function tI(e){return hm(e.host)?"paint":gm(e)?"passThrough":"refOnly"}function nI(e,t){return(t==="passThrough"?[...e.src?[e.src]:[],...la(e)]:t==="refOnly"?la(e):So(e)).filter(aA)}function rI(e,t){return t!==pm||rA===t?!1:hn.includes(e)&&!e.contextLost}async function oI(e,t,n,r){let o=tI(e);if(await eI(e,nI(e,o))&&rI(e,n)){if(o==="passThrough"){dA(e,r),mm(e,r);return}if(o==="refOnly"){mm(e,r);return}cA(e,r)&&bm(e,t)}}async function iI(e,t,n,r){await Promise.all(e.map(o=>oI(o,t,n,r)))}function aI(){for(let e of hn.flatMap(So)){let t=Jn(e.inner)===null;e.laidOutEmpty&&!t&&e.canvas.insertBefore(e.inner,e.inner.nextSibling),e.laidOutEmpty=t}}function xm(e,t){nA=e;let n=++pm;aI();let r=[];for(let o of hn)if(!o.contextLost){if(!hm(o.host)){(gm(o)||la(o).length>0)&&r.push(o);continue}So(o).length>0?r.push(o):bm(o,e)}r.length!==0&&(t?.engineMode&&QD(),Ze(iI(r,e,n,t?.engineMode===!0)))}function vm(e=window){let t=/Chrome\/(\d+)/.exec(e.navigator.userAgent);return t?.[1]?Number(t[1]):null}var sI=(e,t)=>t.backface,lI=(e,t)=>Array.from(e.ownerDocument.querySelectorAll("canvas")).some(t.isAccelerated),uI=/^matrix\(\s*1,\s*0,\s*0,\s*1,\s*0,\s*0\s*\)$|^matrix3d\(\s*1,\s*0,\s*0,\s*0,\s*0,\s*1,\s*0,\s*0,\s*0,\s*0,\s*1,\s*0,\s*0,\s*0,\s*0,\s*1\s*\)$/,Sm=(e,t)=>!!e&&e!=="none"&&!e.split(/\s+/).every(n=>parseFloat(n)===t),cI=e=>{let t=getComputedStyle(e),n=t.transform.trim();return Sm(t.scale,1)||Sm(t.rotate,0)||Sm(t.translate,0)?!0:n!=="none"&&n!==""&&!uI.test(n)},dI=e=>{let t=getComputedStyle(e).mixBlendMode;return!!t&&t!=="normal"},fI=e=>Number.parseFloat(getComputedStyle(e).opacity)<1,mI=e=>e.querySelector("iframe, object, embed")!==null||Array.from(e.querySelectorAll("*")).some(t=>t.localName.includes("-")&&customElements.get(t.localName)!==void 0),pI=[{code:"nested-capture-canvas",reason:"the composition already uses html-in-canvas",detect:e=>e.querySelector(jv)!==null},{code:"accelerated-canvas",reason:"the composition draws a WebGL/WebGPU canvas, which html-in-canvas captures frozen",detect:lI},{code:"backface-visibility",reason:"backface-visibility: hidden inside a 3D transform is drawn mirrored by html-in-canvas",detect:sI},{code:"iframe-in-root",reason:"the composition contains an <iframe>, <object>, <embed> or custom element, which is re-initialised when blur wraps the root",detect:mI},{code:"root-transform",reason:"html-in-canvas can ignore a transform on the composition root",detect:cI},{code:"root-opacity",reason:"html-in-canvas can ignore the composition root's own opacity",detect:fI},{code:"root-blend-mode",reason:"html-in-canvas can ignore the composition root's own mix-blend-mode",detect:dI}];function tu(e,t){let n=pI.find(r=>r.detect(e,t));return n?{code:n.code,reason:n.reason}:null}var mA=/perspective\(|rotate3d\(|rotate[XY]\(|matrix3d\(/;function pA(e){return e.getPropertyValue("backface-visibility")==="hidden"||e.getPropertyValue("-webkit-backface-visibility")==="hidden"}var hI=e=>!/^(none|-?[\d.]+[a-z]+)?$/.test(e.rotate??"")||(e.translate??"").trim().split(/\s+/).length>2;function gI(e,t){return mA.test(t.transform)||mA.test(e.style.transform)||hI(t)}function bI(e,t){for(let n=e;n;n=n.parentElement){let r=getComputedStyle(n);if(r.transformStyle==="preserve-3d"||gI(n,r)||n!==e&&r.perspective!=="none"&&r.perspective!=="")return!0;if(n===t)break}return!1}var yI=16,Am="@keyframes ";function xI(e){let t=[],n=0,r=0;for(let o=0;o<e.length;o++){let i=e.charAt(o);i==="("||i==="["?n++:i===")"||i==="]"?n--:i===","&&n===0&&(t.push(e.slice(r,o).trim()),r=o+1)}return t.push(e.slice(r).trim()),t}function SI(e,t){if(t===null)return e;let n=`:is(${t})`;return xI(e).map(r=>r.includes("&")?r.replaceAll("&",n):`${n} ${r}`).join(", ")}function*Em(e,t,n,r){if(!(r>yI))for(let o of Array.from(e))yield*vI(o,t,n,r)}function EI(e,t){let n="style"in e?e.style:null;return t!==null&&n instanceof CSSStyleDeclaration?{selector:t,style:n}:null}function*vI(e,t,n,r){if(e instanceof CSSStyleRule){let i=SI(e.selectorText,t);yield{selector:i,style:e.style},yield*Em(e.cssRules,i,n,r+1);return}if(e instanceof CSSImportRule){e.styleSheet&&(yield*hA(e.styleSheet,n,r+1));return}let o=EI(e,t);if(o)yield o;else if("cssRules"in e&&e.cssRules instanceof CSSRuleList){let i=e instanceof CSSKeyframesRule?Am+e.name:t;yield*Em(e.cssRules,i,n,r+1)}}function AI(e){try{return e.cssRules}catch{return null}}function*hA(e,t,n){let r=t.has(e)?null:AI(e);t.add(e),r&&(yield*Em(r,null,t,n))}function wI(e,t){try{let n=Array.from(e.querySelectorAll(t));return e.matches(t)?[e,...n]:n}catch{return[]}}function _I(e){return(document.getAnimations?.()??[]).flatMap(({effect:t})=>{if(!(t instanceof KeyframeEffect))return[];let n=t.target;return t.getKeyframes().some(o=>o.backfaceVisibility==="hidden")&&n instanceof HTMLElement&&e.contains(n)?[n]:[]})}function CI(e,t){return t.length===0?[]:[e,...e.querySelectorAll("*")].filter(n=>getComputedStyle(n).animationName.split(", ").some(r=>t.includes(Am+r)))}function TI(){let e=new Set,t=[...Array.from(document.styleSheets),...document.adoptedStyleSheets??[]],n=[];for(let r of t)for(let o of hA(r,e,0))pA(o.style)&&n.push(o.selector);return n}function RI(e,t){let n=t.filter(o=>o.startsWith(Am)),r=new Set([...e.querySelectorAll('[style*="backface"]'),..._I(e),...CI(e,n)]);for(let o of t)for(let i of wI(e,o))r.add(i);return r}function gA(e){let t=TI(),n=new Set,r=()=>{for(let o of n)if(pA(getComputedStyle(o))&&bI(o,e))return!0;return!1};return{scan:()=>(n=new Set([...n,...RI(e,t)]),r()),recheck:r}}function bA(e){return gA(e).scan()}var MI=10;function yA(e,t){let n=gA(e),r=null;return{sample:(o,i,a)=>{if(r)return;let l=o%MI===0||o===i,s=tu(e,{isAccelerated:t,backface:l&&n.scan()});s&&(r={...s,reason:`${s.reason} (first seen at t=${a.toFixed(1)}s)`})},result:()=>r,facesNow:n.recheck}}var xA="__HF_PAGE_MOTION_BLUR_OFF__",SA="__HF_DEVICE_SCALE_FACTOR__";function EA(e=window){return xo(e)!==null}var kI="__hfAcceleratedCanvases";function vA(){let e="__hfAcceleratedCanvases",t=Reflect.get(window,e),n=t instanceof WeakSet?t:new WeakSet;n!==t&&Object.defineProperty(window,e,{value:n});let r=["webgl","webgl2","experimental-webgl","webgpu"],o=(i,a)=>{let l=HTMLCanvasElement.prototype,s=Reflect.get(l,i);if(typeof s!="function"||"__hfAccelTracked"in s)return;let c=function(...d){let m=Reflect.apply(s,this,d);return a(this,d,m),m};Object.defineProperty(c,"__hfAccelTracked",{value:!0}),Object.defineProperty(l,i,{value:c,writable:!0,configurable:!0})};o("getContext",(i,a,l)=>{l&&r.includes(String(a[0]))&&n.add(i)}),o("transferControlToOffscreen",i=>{n.add(i)})}function AA(e){let t=Reflect.get(window,kI);return t instanceof WeakSet&&t.has(e)}var Eo={a:1,b:0,c:0,d:1,e:0,f:0};function nu(e,t){return{a:e.a*t.a+e.c*t.b,b:e.b*t.a+e.d*t.b,c:e.a*t.c+e.c*t.d,d:e.b*t.c+e.d*t.d,e:e.a*t.e+e.c*t.f+e.e,f:e.b*t.e+e.d*t.f+e.f}}function ua(e,t,n){return nu(e,{a:1,b:0,c:0,d:1,e:t,f:n})}function _m(e){let t=e.a*e.d-e.b*e.c;return!Number.isFinite(t)||Math.abs(t)<1e-12?null:{a:e.d/t,b:-e.b/t,c:-e.c/t,d:e.a/t,e:(e.c*e.f-e.d*e.e)/t,f:(e.b*e.e-e.a*e.f)/t}}function LI(e,t,n){return[[e.e,e.f],[e.a*t+e.e,e.b*t+e.f],[e.c*n+e.e,e.d*n+e.f],[e.a*t+e.c*n+e.e,e.b*t+e.d*n+e.f]]}function NI(e,t,n){let r=wA(e),o=wA(t),i=o.angle-r.angle;i>Math.PI?i-=2*Math.PI:i<-Math.PI&&(i+=2*Math.PI);let a=(l,s)=>l+(s-l)*n;return FI({angle:r.angle+i*n,sx:a(r.sx,o.sx),sy:a(r.sy,o.sy),shear:a(r.shear,o.shear),e:a(e.e,t.e),f:a(e.f,t.f)})}function wA(e){let t=Math.hypot(e.a,e.b);return t<1e-12?{angle:0,sx:0,sy:e.d,shear:e.c,e:e.e,f:e.f}:{angle:Math.atan2(e.b,e.a),sx:t,sy:(e.a*e.d-e.b*e.c)/t,shear:(e.a*e.c+e.b*e.d)/t,e:e.e,f:e.f}}function FI(e){let t=Math.cos(e.angle),n=Math.sin(e.angle);return{a:e.sx*t,b:e.sx*n,c:e.shear*t-e.sy*n,d:e.shear*n+e.sy*t,e:e.e,f:e.f}}function ru(e,t){if(e.length===0)return[];if(e.length===1)return Array.from({length:t},()=>e[0]);let n=e.length-1;return Array.from({length:t},(r,o)=>{let i=(o+.5)/t*n,a=Math.min(n-1,Math.floor(i));return NI(e[a],e[a+1],i-a)})}function ou(e,t,n,r,o){let i=1/0,a=1/0,l=-1/0,s=-1/0,c=0,d=null;for(let x of e){let v=LI(x,t,n);for(let[E,C]of v)i=Math.min(i,E),a=Math.min(a,C),l=Math.max(l,E),s=Math.max(s,C);if(d){let E=0;for(let C=0;C<4;C++){let[H,V]=d[C],[M,R]=v[C];E=Math.max(E,Math.hypot(M-H,R-V))}c+=E}d=v}let m=Math.max(0,Math.floor(i)-2),f=Math.max(0,Math.floor(a)-2),p=Math.min(r,Math.ceil(l)+2),b=Math.min(o,Math.ceil(s)+2),y=p>m&&b>f?{x:m,y:f,w:p-m,h:b-f}:null;return{travel:c,rect:y}}function TA(e){let t=Math.floor(255/e),n=255-t*e;return Array.from({length:e},(r,o)=>(t+Math.floor((o+1)*n/e)-Math.floor(o*n/e))/255)}var PI=16;function RA(e,t,n,r,o,i=2,a=128,l=32){let{travel:s}=ou(ru(e,PI),t,n,r,o);return ru(e,Math.min(a,Math.max(l,Math.ceil(s/i))))}function MA(e,t,n=1.5){let r=Math.min(e.length,Math.max(2,Math.ceil(t/n)));return r>=e.length?e:Array.from({length:r},(o,i)=>{let a=Math.round((i+.5)/r*e.length-.5);return e[a]})}function iu(e,t){let n=new Map,r=new Map,o=new Map,i=s=>{if(!t.has(s)&&n.has(s))return n.get(s)??null;let d=getComputedStyle(s),m=kA([OI(d,s.offsetWidth,s.offsetHeight),Cm(d.transform)]),f=null;if(m){let[p=0,b=0]=d.transformOrigin.split(" ").map(y=>parseFloat(y)||0);f=ua(nu(ua(Eo,p,b),m),-p,-b)}return t.has(s)||n.set(s,f),f},a=s=>{if(!s||s===e||!CA(s))return[0,0];let c=r.get(s);if(!c){let d=s.offsetParent,[m,f]=a(d);c=[m+s.offsetLeft+(d?.clientLeft??0),f+s.offsetTop+(d?.clientTop??0)],r.set(s,c)}return c},l=s=>{if(!s||s===e||!CA(s))return Eo;let c=o.get(s);if(!c){let d=s.parentElement,[m,f]=a(s),[p,b]=a(d),[y,x]=DI(d);c=ua(l(d),m-p-y,f-b-x);let v=i(s);v&&(c=nu(c,v)),o.set(s,c)}return c};return{pose:l,reset(){r=new Map,o=new Map}}}function DI(e){return e?[e.scrollLeft,e.scrollTop]:[0,0]}function kA(e){let t=null;for(let n of e)n&&(t=t?nu(t,n):n);return t}var wm=e=>e.trim().split(/\s+(?![^(]*\))/);function _A(e,t){let n=0;for(let r of e.matchAll(/([+-]?\s*[\d.]+(?:e[+-]?\d+)?)(px|%)?/g)){let o=Number(r[1]?.replace(/\s/g,""));n+=r[2]==="%"?o/100*t:o}return n}var II={deg:Math.PI/180,rad:1,grad:Math.PI/200,turn:2*Math.PI};function OI(e,t,n){let r=e.translate??"none",o=e.rotate??"none",i=e.scale??"none",a=[];if(r!=="none"){let[s="0",c="0"]=wm(r);a.push({...Eo,e:_A(s,t),f:_A(c,n)})}let l=/^(-?[\d.]+)(deg|rad|grad|turn)$/.exec(o);if(l){let s=Number(l[1])*(II[l[2]??"deg"]??0);a.push({a:Math.cos(s),b:Math.sin(s),c:-Math.sin(s),d:Math.cos(s),e:0,f:0})}if(i!=="none"){let[s=1,c=s]=wm(i).map(Number);a.push({...Eo,a:s,d:c})}return kA(a)}function LA(e){let t=e.translate??"none",n=e.rotate??"none";return t!=="none"&&wm(t).length>2||!/^(none|-?[\d.]+[a-z]+)$/.test(n)}function Cm(e){let t=/^matrix(3d)?\(([^)]*)\)$/.exec(e.trim());if(!t)return null;let n=(t[2]??"").split(",").map(Number);if(n.some(d=>!Number.isFinite(d)))return null;let r=t[1]?[0,1,4,5,12,13]:[0,1,2,3,4,5];if(n.length!==(t[1]?16:6))return null;let[o=1,i=0,a=0,l=1,s=0,c=0]=r.map(d=>n[d]??0);return{a:o,b:i,c:a,d:l,e:s,f:c}}function CA(e){return typeof e.offsetLeft=="number"}function NA(e,t){let n=new OffscreenCanvas(e,t),r=null;try{r=n.getContext("2d",{colorType:"float16"})}catch{r=null}if(r=r??n.getContext("2d"),!r)throw new Error("capture motion blur: no 2D context for the accumulation buffer");return{canvas:n,ctx:r}}function HI(e,t,n){let{travel:r,rect:o}=ou(e.taps,e.w,e.h,t,n);return o!==null&&r>=1}function Tm(e,t,n=1){let r=Math.max(1,Math.round(e*n)),o=Math.max(1,Math.round(t*n)),i=NA(r,o),a=[],l=e*t*4,s=(p,b,y)=>{let x=Math.ceil(b*n),v=Math.ceil(y*n),E=a[p];return(!E||E.canvas.width<x||E.canvas.height<v)&&(E=NA(Math.max(x,E?.canvas.width??1),Math.max(v,E?.canvas.height??1)),a[p]=E),E};function c(p){return p.map(b=>_m(b.now)!==null&&b.w*b.h<=l&&HI(b,e,t))}function d(p,b,y){b.forEach((x,v)=>{let E=_m(x.now);if(!y[v]||!E)return;let{w:C,h:H}=x,V=s(v,C,H).ctx;V.setTransform(1,0,0,1,0,0),V.globalCompositeOperation="source-over",V.globalAlpha=1,V.clearRect(0,0,Math.ceil(C*n),Math.ceil(H*n)),V.setTransform(n*E.a,n*E.b,n*E.c,n*E.d,n*E.e,n*E.f),V.drawImage(p,0,0,e,t)})}function m(p,b,y){let{w:x,h:v}=b,{travel:E,rect:C}=ou(b.taps,x,v,e,t);if(!C)return 0;let H=MA(b.taps,E),V=Math.max(0,Math.floor(C.x*n)),M=Math.max(0,Math.floor(C.y*n)),R=Math.min(r,Math.ceil((C.x+C.w)*n))-V,U=Math.min(o,Math.ceil((C.y+C.h)*n))-M;if(R<=0||U<=0)return 0;let T=i.ctx;T.setTransform(1,0,0,1,0,0),T.globalCompositeOperation="source-over",T.globalAlpha=1,T.clearRect(V,M,R,U),T.globalCompositeOperation="lighter";let F=TA(H.length);return H.forEach((W,B)=>{T.globalAlpha=F[B]??0,T.setTransform(n*W.a,n*W.b,n*W.c,n*W.d,n*W.e,n*W.f),T.drawImage(y.canvas,0,0,x*n,v*n,0,0,x,v)}),p.drawImage(i.canvas,V,M,R,U,V,M,R,U),H.length}function f(p,b,y,x){b.setTransform(1,0,0,1,0,0),b.globalAlpha=1,b.globalCompositeOperation="copy",b.drawImage(p,0,0),b.globalCompositeOperation="source-over";let v={blurred:0,taps:0};return y.forEach((E,C)=>{let H=a[C];if(!x[C]||!H)return;let V=m(b,E,H);V>0&&(v.blurred++,v.taps+=V)}),v}return{plan:c,crop:d,draw:f}}var ca={enable:"data-motion-blur",shutter:"data-motion-blur-shutter",samples:"data-motion-blur-samples",events:"data-motion-blur-events",tier:"data-motion-blur-tier"},GI={shutterDeg:{min:0,max:720,default:240},samples:{min:2,max:64}},FA=(e,t,n)=>Math.min(n,Math.max(t,e));function PA(e){if(e===null||e.trim()==="")return null;let t=Number(e);return Number.isFinite(t)?t:null}function DA(e){let t=PA(e(ca.shutter)),n=PA(e(ca.samples)),r=e(ca.tier),{shutterDeg:o,samples:i}=GI;return{enabled:e(ca.enable)==="on",shutterDeg:FA(t??o.default,o.min,o.max),samples:n===null?null:Math.round(FA(n,i.min,i.max)),events:e(ca.events)==="on",tier:r==="capture"||r==="filter"?r:"auto"}}var BI=256,UI=64,WI=/(?:rgba?|hsla?|hwb|lab|lch|oklab|oklch|color)\([^)]*\)/g;function HA(e){return[...e.replace(WI," ").matchAll(/-?\d*\.?\d+(?=px|\s|$)/g)].map(t=>Number(t[0]))}function VI(e){let t=[],n=0,r=0;for(let o=0;o<e.length;o++){let i=e[o];i==="("?n++:i===")"?n--:i===","&&n===0&&(t.push(e.slice(r,o)),r=o+1)}return t.push(e.slice(r)),t}function IA(e){return!e||e==="none"?0:Math.max(0,...VI(e).filter(t=>!/\binset\b/.test(t)).map(t=>{let[n=0,r=0,o=0,i=0]=HA(t);return Math.max(Math.abs(n),Math.abs(r))+o+Math.max(0,i)}))}function $I(e){if(!e||e==="none")return 0;let t=0;for(let n of e.matchAll(/drop-shadow\(((?:[^()]|\([^)]*\))*)\)/g)){let[r=0,o=0,i=0]=HA(n[1]??"");t=Math.max(t,Math.max(Math.abs(r),Math.abs(o))+i*1.5)}for(let n of e.matchAll(/(?<!-)blur\(\s*([\d.]+)px\s*\)/g))t=Math.max(t,Number(n[1])*3);return t}function OA(e){let t=getComputedStyle(e),n=t.outlineStyle!=="none"?parseFloat(t.outlineWidth)+parseFloat(t.outlineOffset):0;return Math.max(IA(t.boxShadow),IA(t.textShadow),$I(t.filter),Number.isFinite(n)?Math.max(0,n):0)}function GA(e){let t=OA(e),n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);for(let r=0;r<UI&&n.nextNode();r++){let o=n.currentNode;Ce(o)&&(t=Math.max(t,OA(o)))}return Math.min(BI,Math.ceil(t))}var BA=2,qI=.5,zI=240,jI=new Set(["transform","translate","rotate","scale","left","top","right","bottom"]),Rm=e=>e.getAttribute("style")??"";function KI(e,t){for(let n=e;n&&n!==t;n=n.parentElement)if(n.getAttribute("data-motion-blur")==="off")return!0;return!1}function YI(e,t){for(let n=e;n&&n!==t;n=n.parentElement){let r=getComputedStyle(n);if(r.transform.startsWith("matrix3d")||r.transformStyle==="preserve-3d"||r.perspective!=="none"||(r.offsetPath??"none")!=="none"||LA(r))return!0}return!1}function XI(e,t){let n=[];for(let r=e;r&&r!==t;r=r.parentElement){let o=getComputedStyle(r),i=Cm(o.transform);n.push(i?[i.a,i.b,i.c,i.d].map(a=>a.toFixed(3)).join(","):"1,0,0,1"),n.push(o.rotate??"none",o.scale??"none")}return n.join("|")}function JI(e){let t=getComputedStyle(e);return t.transform!=="none"||(t.translate??"none")!=="none"}function QI(e){let t=new Set;if(typeof document.getAnimations!="function")return t;for(let n of document.getAnimations()){let r=n.effect,o=r?.target;if(!Ce(o)||!e.contains(o))continue;(typeof r?.getKeyframes=="function"?r.getKeyframes():[]).some(a=>Object.keys(a).some(l=>jI.has(l)))&&t.add(o)}return t}function ZI(e){let t=/^rgba\(.*,\s*([\d.]+)\)$/.exec(e)??/\/\s*([\d.]+)(%?)\s*\)$/.exec(e);return t?t[2]?Number(t[1])/100:Number(t[1]):1}var eO=e=>e.tagName==="IMG"||e.tagName==="CANVAS",da=32;function tO(e){if("naturalWidth"in e&&!(e.complete&&e.naturalWidth>0))return!0;try{let t=e.ownerDocument.createElement("canvas");t.width=t.height=da;let n=t.getContext("2d",{willReadFrequently:!0});if(!n)return!0;n.imageSmoothingQuality="high",n.drawImage(e,0,0,da,da);let{data:r}=n.getImageData(0,0,da,da);for(let o=3;o<r.length;o+=4)if((r[o]??0)<255)return!0;return!1}catch{return!0}}function nO(e,t,n){let r=1;for(let o=e;o&&o!==t;o=o.parentElement)r*=parseFloat(getComputedStyle(o).opacity);return r<.05?!1:r<.99?!0:eO(e)?(n.has(e)||n.set(e,tO(e)),n.get(e)===!0):!/^(VIDEO|PICTURE)$/.test(e.tagName)&&rO(e)}function rO(e){let t=getComputedStyle(e);return ZI(t.backgroundColor)>=.99?!1:t.backgroundImage==="none"?!0:[...t.backgroundImage.matchAll(/rgba\([^)]*,\s*([\d.]+)\)/g)].some(n=>Number(n[1])<.99)}function UA(e,t){return!e||!t||!e.width||!t.width?0:Math.max(Math.abs(e.left-t.left),Math.abs(e.top-t.top),Math.abs(e.right-t.right),Math.abs(e.bottom-t.bottom))}function oO(e,t){let n=e.map(Rm);e.forEach((o,i)=>o.setAttribute("style",t[i]??""));let r=e.map(o=>o.getBoundingClientRect());return e.forEach((o,i)=>o.setAttribute("style",n[i]??"")),r}function au({scene:e,durationSeconds:t,fps:n,seek:r,onStep:o}){r(0);let i=[...e.querySelectorAll("*")].filter(Ce),a=new Set(QI(e)),l=i.map(Rm),s=i.map(F=>F.getBoundingClientRect()),c=Math.max(1,Math.round(t*n)),d=Math.min(c,zI),m=c/d,f=new Set,p=new Set,b=new Map,y=new Map,x=new Set,v=F=>{b.set(F,Math.max(b.get(F)??0,GA(F)));let W=XI(F,e),B=y.get(F);B===void 0?y.set(F,W):B!==W&&x.add(F),JI(F)||x.add(F)},E=new Set,C=new Map,H=e.getBoundingClientRect(),V=H.width*H.height*qI,M=[];for(let F=0;F<=d;F++){F>0&&r(F/d*t),o?.(F,d);let W=[],B=[];i.forEach((N,j)=>{!a.has(N)&&Rm(N)===l[j]||(a.has(N)||B.push(j),a.add(N),W[j]=N.getBoundingClientRect())});let X=B.filter(N=>UA(s[N],W[N])/m>=BA),ae=oO(X.map(N=>i[N]),X.map(N=>l[N]??""));if(X.forEach((N,j)=>{M[N]=ae[j]}),W.forEach((N,j)=>{let I=i[j];!I||UA(M[j],N)/m<BA||(f.has(I)||v(I),f.add(I),N&&V>0&&N.width*N.height>=V&&nO(I,e,C)&&E.add(I))}),F%10===0||F===d)for(let N of f)YI(N,e)&&p.add(N),v(N);M=W}let R=i.filter(F=>f.has(F)&&!p.has(F)&&!E.has(F)&&!KI(F,e)),U=R.filter(F=>!R.some(W=>W!==F&&W.contains(F))),T=U.length>0&&U.every(F=>!x.has(F));return{movers:U,dynamic:a,pads:b,translationOnly:T}}var iO=e=>Math.atan2(Math.sin(e),Math.cos(e)),WA=(e,t,n)=>[e.a*(t/2)+e.c*(n/2)+e.e,e.b*(t/2)+e.d*(n/2)+e.f];function VA(e,t,n){let{w:r,h:o,now:i,taps:a}=e,l=i.a*i.d-i.b*i.c,s=Math.sqrt(Math.abs(l));if(a.length<2||!(s>1e-4))return null;let c=WA(i,r,o),d=a.map(B=>WA(B,r,o)),m=d.map(([B,X])=>{let ae=B-c[0],N=X-c[1];return[(i.d*ae-i.c*N)/l,(-i.b*ae+i.a*N)/l]}),f=0;for(let B=1;B<d.length;B++)f+=Math.hypot((d[B]?.[0]??0)-(d[B-1]?.[0]??0),(d[B]?.[1]??0)-(d[B-1]?.[1]??0));let p=f/(d.length-1),b=Math.max(...a.map(B=>Math.abs(iO(Math.atan2(B.b,B.a)-Math.atan2(i.b,i.a))))),y=Math.max(...a.map(B=>Math.abs(Math.log(Math.sqrt(Math.abs(B.a*B.d-B.b*B.c))/s)))),x=Math.sqrt(r*o)*s,v=Math.min(24*(n/1920),.29*Math.min(n/4,x/2)*(b+y)),E=m[0]??[0,0],C=m[m.length-1]??[0,0],H=Math.hypot(C[0]-E[0],C[1]-E[1])||1,V=.35*p/s,M=[Math.hypot(v/s,V*Math.abs(C[0]-E[0])/H),Math.hypot(v/s,V*Math.abs(C[1]-E[1])/H)];if(f<.5&&Math.max(...M)*s<.35)return null;let R=m.map(B=>B[0]),U=m.map(B=>B[1]),T=t+3*Math.max(...M)+2,F=Math.min(0,...R)-T,W=Math.min(0,...U)-T;return{offsets:m,sigma:M,region:{x:F,y:W,w:r+Math.max(0,...R)+T-F,h:o+Math.max(0,...U)+T-W}}}function su(e){let{reader:t,shutterSeconds:n,t:r,reads:o,seek:i}=e,a=e.movers.filter(d=>typeof d.checkVisibility!="function"||d.checkVisibility({visibilityProperty:!0}));if(a.length===0||n<=0)return{els:[],frames:[]};let l=r-n/2,s=a.map(()=>[]);for(let d=0;d<o;d++)i(Math.max(0,l+d/(o-1)*n)),t.reset(),a.forEach((m,f)=>s[f]?.push(t.pose(m)));i(r),t.reset();let c=a.map((d,m)=>{let f=e.pads?.get(d)??0,p=d.offsetWidth+2*f,b=d.offsetHeight+2*f,y=v=>ua(v,-f,-f),x=(s[m]??[Eo]).map(y);return{w:p,h:b,now:y(t.pose(d)),taps:e.taps===null?RA(x,p,b,e.frameW,e.frameH):ru(x,e.taps)}});return t.reset(),{els:a,frames:c}}var qA="http://www.w3.org/2000/svg",zA=32,aO=4,sO=8,jA="hf-mb",lO=new RegExp(`\\s*url\\("?#${jA}-\\d+"?\\)`,"g");function fa(e,t,n){let r=document.createElementNS(qA,t);for(let[o,i]of Object.entries(n))r.setAttribute(o,i);return e.append(r),r}function uO(e,t,n){let r=`${jA}-${t}`,o=fa(e,"filter",{id:r,"color-interpolation-filters":"sRGB",filterUnits:"userSpaceOnUse"}),i=Array.from({length:zA},(d,m)=>fa(o,"feOffset",{in:"SourceGraphic",result:`s${m}`})),a=i.map((d,m)=>`s${m}`);for(let d=0;a.length>1;d++){let m=[];for(let f=0;f<a.length;f+=2){let p=`l${d}-${f/2}`;fa(o,"feComposite",{operator:"arithmetic",in:a[f]??"",in2:a[f+1]??"",k1:"0",k2:"0.5",k3:"0.5",k4:"0",result:p}),m.push(p)}a=m}let l=fa(o,"feGaussianBlur",{in:a[0]??"",stdDeviation:"0"}),s=n.style.filter;n.style.filter="";let c=getComputedStyle(n).filter;return n.style.filter=s,{filter:o,offsets:i,soften:l,url:`url(#${r})`,css:c&&c!=="none"?c:""}}function cO(e,t){t.offsets.forEach(([a,l],s)=>{e.offsets[s]?.setAttribute("dx",a.toFixed(2)),e.offsets[s]?.setAttribute("dy",l.toFixed(2))}),e.soften.setAttribute("stdDeviation",`${t.sigma[0].toFixed(3)} ${t.sigma[1].toFixed(3)}`);let{x:n,y:r,w:o,h:i}=t.region;e.filter.setAttribute("x",n.toFixed(1)),e.filter.setAttribute("y",r.toFixed(1)),e.filter.setAttribute("width",o.toFixed(1)),e.filter.setAttribute("height",i.toFixed(1))}var $A=e=>e.style.filter.replace(lO,"").trim();function Mm(e,t,n){let{root:r}=e,o=Number(r.getAttribute("data-width"))||r.offsetWidth,i=Number(r.getAttribute("data-height"))||r.offsetHeight,a=B=>e.seek(B,!t.events),l=null,s=[],c=new Map,d=null,m,f=0,p=0,b=0,y=!1,x=!1,v=new Map,E=new Set;function C(B){m=e.timeline();let X=performance.now(),ae=au({scene:r,durationSeconds:e.durationSeconds(),fps:e.fps,seek:a});a(B),s=ae.movers,c=ae.pads,d=iu(r,ae.dynamic),f=Math.round(performance.now()-X)}function H(B){let X=$A(B);X?B.style.filter=X:B.style.removeProperty("filter"),E.delete(B)}function V(){for(let B of[...E])H(B)}function M(B){let X=v.get(B);return X||(l||(l=document.createElementNS(qA,"svg"),l.setAttribute("width","0"),l.setAttribute("height","0"),l.setAttribute("aria-hidden","true"),l.setAttribute("data-hf-ignore",""),l.style.cssText="position:absolute;left:0;top:0;pointer-events:none",fa(l,"defs",{}),r.append(l)),X=uO(l.querySelector("defs")??l,v.size,B),v.set(B,X),X)}function R(B,X){let ae=M(B);cO(ae,X);let N=$A(B)||ae.css;B.style.filter=N?`${N} ${ae.url}`:ae.url,E.add(B)}function U(B,X){if((!d||e.timeline()!==m)&&C(B),!d)return[];let ae=su({movers:s,reader:d,seek:a,t:B,reads:X?sO:aO,shutterSeconds:t.shutterDeg/360/e.fps,taps:zA,frameW:o,frameH:i}),N=[];return ae.els.forEach((j,I)=>{let P=ae.frames[I],D=P&&VA(P,c.get(j)??0,o);D&&N.push([j,D])}),N}function T(B,X){if(X&&(y=!0),x)return Promise.resolve();let ae=performance.now();try{let N=U(B,X),j=new Set(N.map(([I])=>I));for(let[I,P]of N)R(I,P);for(let I of[...E])j.has(I)||H(I);p++,b+=performance.now()-ae}catch(N){$("runtime.captureMotionBlur.filter",N),V()}return Promise.resolve()}function F(){return{state:"on",tier:"filter",reason:n?.reason??null,reasonCode:n?.code??null,movers:s.length,moverNames:s.map(B=>`${B.tagName.toLowerCase()}${B.id?`#${B.id}`:""}`),scanMs:f,shutterDeg:t.shutterDeg,frames:p,meanMs:p?Math.round(b/p*10)/10:0,failures:0,failedFrames:0}}function W(){V(),l?.remove(),l=null,v.clear()}return{root:r,paint:T,probe:()=>((!d||e.timeline()!==m)&&C(e.now()),F()),rest:()=>y?!1:(V(),!0),arm:()=>{},finish:()=>{},teardown:W,suspend:()=>{x=!0,W()},report:F,busy:()=>!1,rediscover:()=>{d=null}}}function KA(e){if(e.defect?.code==="renderer-off")return"off";let t=e.form&&!e.defect;return e.fallback&&(e.tier==="filter"||!t)?"filter":t?"capture":"off"}var km="data-hf-motion-blur-hide",Qn="data-hf-motion-blur-only",vo="data-hf-motion-blur-mover",dO=4,fO=8,YA=2e3,mO=3,pO=25;function hO(e){let t=DA(a=>e.getAttribute(a));if(!t.enabled)return null;let{shutterDeg:n,samples:r,events:o,tier:i}=t;return{shutterDeg:n,samples:r,events:o,tier:i}}var JA=vA,Fm=AA;function gO(e){let t=window[xA];return t?{code:"renderer-off",reason:`the renderer turned it off (${String(t)})`}:EA()?tu(e,{isAccelerated:Fm,backface:bA(e)}):{code:"unsupported-browser",reason:"html-in-canvas (drawElementImage) is unavailable in this browser"}}function bO(e){let t=typeof e.className=="string"&&e.className?`.${e.className.trim().split(/\s+/).join(".")}`:"";return`${e.tagName.toLowerCase()}${e.id?`#${e.id}`:""}${t}`}function yO(e){let t=Number(e.getAttribute("data-width"))||e.offsetWidth,n=Number(e.getAttribute("data-height"))||e.offsetHeight;return{width:Math.max(1,Math.round(t)),height:Math.max(1,Math.round(n))}}function lu(){let e=Number(window[SA]),t=e>0?e:window.devicePixelRatio;return Number.isFinite(t)&&t>0?t:1}function XA(e,t,n){let r=document.createElement("canvas");return r.width=Math.max(1,Math.round(e*lu())),r.height=Math.max(1,Math.round(t*lu())),r.setAttribute("data-hf-ignore",""),r.setAttribute("data-hf-motion-blur",n),r.style.cssText=`position:absolute;left:0;top:0;width:${e}px;height:${t}px;`,r}function xO(e,t,n){let{root:r}=e,{width:o,height:i}=yO(r),a=XA(o,i,"capture"),l=XA(o,i,"output");l.style.pointerEvents="none",Ql(a,n);let s=a.getContext("2d"),c=l.getContext("2d");if(!s||!c)throw new Error("capture motion blur: no 2D context");let d=s,m=c,f=lu(),p=Tm(o,i,f),b=document.createElement("style");b.setAttribute("data-hf-ignore",""),b.textContent=[`[${km}] { opacity: 0 !important; }`,`[${Qn}] { background: none !important; border-color: transparent !important; box-shadow: none !important; outline-color: transparent !important; }`,`[${Qn}]::before, [${Qn}]::after, [${Qn}] *:not([${vo}], [${vo}] *) { visibility: hidden !important; }`,`[${Qn}] [${vo}] { visibility: visible !important; }`].join(`
|
|
646
|
-
`);let y=[],x=new Map,v=null,E=null,C=null,H=0,V=0,M=0,R=null,U=null,T=!1,F=[],W=0,B=0,X,ae=null,N=()=>!1,j=!1,I=new Set,P=!1,D=!1;function w(ne){(e.ignoreMutations??(fe=>fe()))(ne),e.seek(e.now(),!0)}function L(){P||(w(()=>{r.before(a),a.append(r),Zl(r,n),a.after(l),document.head.append(b)}),m.setTransform(1,0,0,1,0,0),m.clearRect(0,0,l.width,l.height),P=!0)}function Y(){C?.release(),C=null,E&&(Z(E),E.settle(),E=null),P&&(P=!1,w(()=>{b.remove(),Kv(r,n),a.before(r),a.remove(),l.remove()}))}let te=ne=>e.seek(ne,!t.events);function he(ne){X=e.timeline();let fe=e.durationSeconds(),ke=yA(r,Fm),Rt=performance.now(),rt=au({scene:r,durationSeconds:fe,fps:e.fps,seek:te,onStep:(xn,Sn)=>ke.sample(xn,Sn,xn/Sn*fe)});te(ne),ae=ke.result(),N=ke.facesNow,y=rt.movers,x=rt.pads,j=rt.translationOnly,v=iu(r,rt.dynamic),B=Math.round(performance.now()-Rt)}function Ee(ne,fe){return v?su({movers:y,reader:v,seek:te,t:ne,reads:fe,shutterSeconds:t.shutterDeg/360/e.fps,taps:t.samples,pads:x,frameW:o,frameH:i}):{els:[],frames:[]}}let z=()=>{d.reset(),d.drawElementImage(r,0,0)},Z=ne=>{r.removeAttribute(Qn);for(let fe of ne.els)fe.removeAttribute(km),fe.removeAttribute(vo)},Q=ne=>{r.setAttribute(Qn,""),ne.els.forEach((fe,ke)=>ne.kept[ke]&&fe.setAttribute(vo,""))},de=ne=>{r.removeAttribute(Qn),ne.els.forEach((fe,ke)=>{fe.removeAttribute(vo),ne.kept[ke]&&fe.setAttribute(km,"")})};function ge(ne=!1){let fe=E;if(!fe||R||!fe.armed)return;let ke=performance.now(),Rt=!0;try{Rt=ue(fe,ne),V=0}catch(rt){se(rt)}if(fe.ms+=performance.now()-ke,!Rt&&!R){a.requestPaint();return}F.push(W+fe.ms),F.length>600&&F.shift(),re(fe)}function se(ne){V++,$("runtime.captureMotionBlur.compose",ne),Me(ne instanceof Error?ne.message:String(ne)),D?Y():V>=mO&&_e(`capture failed ${V} times in a row`,"capture-failures",!0)}function ue(ne,fe){z();try{if(ne.phase==="sharp")return p.draw(a,m,ne.frames,ne.kept),!0;if(fe)throw new Error(`the ${ne.phase} capture did not arrive`);return ne.phase==="movers"?(p.crop(a,ne.frames,ne.kept),de(ne),ne.phase="background",!1):(p.draw(a,m,ne.frames,ne.kept),!0)}finally{d.reset()}}function re(ne){Z(ne),E===ne&&(E=null),ne.settle();let fe=C;C=null,fe&&!R?kr(fe.t,fe.engineMode).then(fe.release):fe?.release()}let Be=()=>ge();function Me(ne){M++,M%pO===1&&globalThis.console.info(`[motion-blur] capture failed (${M} so far): ${ne}`)}function we(ne){Me(`no paint within ${YA} ms`),Y(),re(ne)}a.addEventListener("paint",Be);function _e(ne,fe,ke=!1){R||(R=ne,U=fe,T=ke,globalThis.console.warn(`[motion-blur] off: ${ne}`),Tt())}function Tt(){a.removeEventListener("paint",Be),Y()}function va(){!R||T||(R=null,U=null,v=null,a.addEventListener("paint",Be))}function Fo(){R&&e.timeline()!==X&&va()}function Po(ne,fe){if(Fo(),R)return Promise.resolve();if(fe&&(D=!0),!D&&document.visibilityState==="hidden")return Y(),Promise.resolve();if(E&&!fe){let ke=C;return new Promise(Rt=>{C={t:ne,engineMode:fe,release:()=>{ke?.release(),Rt()}}})}return kr(ne,fe)}function Cu(){let ne=lu();if(ne!==f){f=ne;for(let fe of[a,l])fe.width=Math.max(1,Math.round(o*f)),fe.height=Math.max(1,Math.round(i*f));p=Tm(o,i,f)}}function Aa(){return R?{code:U??"capture-failures",reason:R}:t.tier==="auto"&&v&&j&&SO()?{code:"translation-only",reason:"every mover only translates, which the filter tier draws as well and far cheaper"}:null}function wa(ne){return(!v||e.timeline()!==X)&&he(ne),ae&&_e(ae.reason,ae.code),R!==null}function Tu(ne){return Y(),M++,I.has(ne.code)||(I.add(ne.code),globalThis.console.info(`[motion-blur] sharp frame: ${ne.code} appeared after a clean scan`)),Promise.resolve()}function kr(ne,fe){try{if(Cu(),wa(ne)||Aa())return Promise.resolve();if(y.length===0)return Y(),Promise.resolve();let ke=tu(r,{isAccelerated:Fm,backface:N()});if(ke)return Tu(ke);L();let Rt=performance.now(),rt=Ee(ne,fe?fO:dO),xn=p.plan(rt.frames);return W=performance.now()-Rt,E&&re(E),new Promise(Sn=>{let Do=++H,Ke,xt=()=>{Ke=setTimeout(()=>{E?.seq===Do?we(E):Sn()},YA)};E={seq:Do,els:rt.els,frames:rt.frames,kept:xn,phase:xn.some(Boolean)?"movers":"sharp",armed:!fe,startTimer:xt,ms:0,settle:()=>{clearTimeout(Ke),Sn()}},E.phase==="movers"&&!fe&&Q(E),!fe&&(xt(),a.requestPaint())})}catch(ke){return $("runtime.captureMotionBlur.paint",ke),_e(ke instanceof Error?ke.message:String(ke),"capture-failures",!0),Promise.resolve()}}function nt(){let ne=F.length?F.reduce((fe,ke)=>fe+ke,0)/F.length:0;return{state:R?"off":"on",tier:R?null:"capture",reason:R,reasonCode:U,movers:y.length,moverNames:y.map(bO),scanMs:B,shutterDeg:t.shutterDeg,frames:F.length,meanMs:Math.round(ne*10)/10,failures:V,failedFrames:M}}function _a(){return Fo(),R||wa(e.now()),nt()}return{root:r,paint:Po,probe:_a,rest:()=>D?!1:(Y(),!0),arm:()=>{!E||E.armed||(E.armed=!0,E.phase==="movers"&&Q(E),E.startTimer(),a.requestPaint())},finish:()=>{E&&(E.armed=!0),ge(!0)},teardown:Tt,suspend:Y,handOff:Aa,report:nt,busy:()=>E!==null,rediscover:()=>{v=null,va()}}}var Le=null,Pm=null,Dm=null,uu=!1,Om=!0,SO=()=>Om,QA=!1,Lm=null,Nm=null;function ZA(e){let t=hO(e.root),n=window;if(Le&&(Le.root!==e.root||!t)&&(Le.teardown(),Le=null,delete n.__hfMotionBlur),!!t){if(Le&&uu&&(Le.teardown(),Le=null,uu=!1),Le){Le.rediscover();return}Pm=e,Dm=t,vO(e,t,n),_O(n,t)}}var EO={code:"tier-attribute",reason:'data-motion-blur-tier="filter"'};function vO(e,t,n){let r=xo(),o=gO(e.root),i=KA({tier:t.tier,form:r!==null,defect:o,fallback:Om});i==="filter"?AO(e,t,t.tier==="filter"?EO:o):i==="capture"&&r?Le=xO(e,t,r):wO(n,t,o)}function AO(e,t,n){let r=n??{code:"unsupported-browser",reason:"html-in-canvas (drawElementImage) is unavailable in this browser"};Le=Mm(e,t,r),uu=!0,globalThis.console.info(`[motion-blur] filter fallback: ${r.reason} (Chrome ${vm()??"unknown"})`)}function wO(e,t,n){globalThis.console.info(`[motion-blur] off: ${n?.reason??null} (Chrome ${vm()??"unknown"})`);let r=()=>Im(t,n);e.__hfMotionBlur={report:r,probe:r,suspend:rw}}function Im(e,t){return{state:"off",tier:null,reason:t?.reason??null,reasonCode:t?.code??null,movers:0,moverNames:[],scanMs:0,shutterDeg:e.shutterDeg,frames:0,meanMs:0,failures:0,failedFrames:0}}function _O(e,t){Le&&(e.__hfMotionBlur={report:()=>Le?.report()??Im(t,null),probe:()=>(Le?.probe(),ew(),Le?.probe()??Im(t,null)),suspend:rw})}function ew(){let e=Le?.handOff?.();!Om||!Le||!e||!Pm||!Dm||(Le.teardown(),Le=Mm(Pm,Dm,e),uu=!0,globalThis.console.info(`[motion-blur] filter fallback: ${e.reason}`))}function Ao(e,t){if(!Le||QA)return null;let n=t?.engineMode===!0;if(!n&&!t?.playing&&Le.rest())return null;let r=Le.paint(e,n);if(Le.handOff?.()){if(ew(),!n&&!t?.playing&&Le.rest())return null;r=Le.paint(e,n)}return n&&Le.busy()&&CO(),r}function tw(){return Le?.busy()??!1}function nw(){Le?.arm()}function CO(){let e=window,t=e.__hf_page_composite_resolve;t!==Nm&&(Lm=typeof t=="function"?t:null,Nm=()=>(Lm&&Lm(),Le?.finish(),e.__hf_page_composite_pending=!1,!0),e.__hf_page_composite_resolve=Nm),e.__hf_page_composite_pending=!0}function rw(){QA=!0,Le?.suspend()}var TO=500,RO=33,MO=3,cu=class{constructor(t){Se(this,"_baseTime",0);Se(this,"_playStartMs",null);Se(this,"_rate",1);Se(this,"_duration",1/0);Se(this,"_playStart",0);Se(this,"_playEnd",1/0);Se(this,"_playHold",1/0);Se(this,"_nowMs");Se(this,"_audioSource",null);Se(this,"_lastReadMs",null);Se(this,"_lastNow",0);this._baseTime=t?.initialTime??0,this._rate=t?.rate??1,this._duration=t?.duration??1/0,this._nowMs=t?.nowMs??(()=>performance.now())}now(){if(this._playStartMs===null)return this._baseTime;if(this._audioSource){let r=null;if("currentTimeSeconds"in this._audioSource?r=this._audioSource.currentTimeSeconds:r=this._elementTimeNeverBehind(this._audioSource),r!==null){let o=Math.min(r,this.getEnd());return this._baseTime=Math.max(0,o),this._playStartMs=this._nowMs(),this._lastReadMs=null,this._lastNow=this._baseTime,this._baseTime}}this._applyStallCorrection();let t=(this._nowMs()-this._playStartMs)/1e3,n=this._baseTime+t*this._rate;return this._lastNow=Math.max(0,Math.min(n,this.getEnd())),this._lastNow}_elementTimeNeverBehind(t){let{el:n,compositionStart:r,mediaStart:o,rate:i}=t;if(n.paused||!Number.isFinite(n.currentTime))return null;if(n.seeking)return this._lastNow;let a=i??1,l=an(a,n.currentTime-o)+r;return l>=this._lastNow?l:this._heldTimeWhenBehind(n,this._lastNow-l,a)}_heldTimeWhenBehind(t,n,r){return t.loop&&n>an(r,t.duration)/2?null:t.readyState<MO||n<=.5?this._lastNow:null}_applyStallCorrection(){if(this._playStartMs===null)return;let t=this._nowMs();if(this._lastReadMs!==null){let n=t-this._lastReadMs;n>TO&&(this._playStartMs+=n-RO)}this._lastReadMs=t}play(){return this._playStartMs!==null||this._baseTime>=this.getEnd()?!1:(this._playStartMs=this._nowMs(),this._lastNow=this._baseTime,this._lastReadMs=null,!0)}pause(){return this._playStartMs===null?!1:(this._baseTime=this.now(),this._playStartMs=null,!0)}seek(t){let n=Number.isFinite(this._duration)?Math.max(0,Math.min(t,this._duration)):Math.max(0,t);this._baseTime=n,this._lastNow=n,this._playStartMs!==null&&(this._playStartMs=this._nowMs(),this._lastReadMs=null)}isPlaying(){return this._playStartMs!==null}setRate(t){let n=Number.isFinite(t)&&t>0?Math.max(.1,Math.min(5,t)):1;this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs(),this._lastReadMs=null),this._rate=n}getRate(){return this._rate}setDuration(t){this._duration=Number.isFinite(t)&&t>0?t:1/0,this._baseTime>this._duration&&(this._baseTime=this._duration)}getDuration(){return this._duration}setPlayRange(t,n,r){this._playStart=Number.isFinite(t)&&t>0?t:0,this._playEnd=n!==null&&Number.isFinite(n)&&n>this._playStart?n:1/0,this._playHold=x0(this._playStart,this._playEnd,r)}getPlayStart(){return this._playStart}getEnd(){return Math.min(this._duration,this._playEnd)}getStopTime(){return this._playEnd<this._duration?this._playHold:this.getEnd()}attachAudioSource(t){this._audioSource=t}detachAudioSource(){this._audioSource&&this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs(),this._lastReadMs=null),this._audioSource=null}audioElement(){return this._audioSource&&"el"in this._audioSource?this._audioSource.el:null}hasAudioSource(){return this._audioSource!==null}getSource(){if(this._audioSource&&this._playStartMs!==null){if("currentTimeSeconds"in this._audioSource)return"audio";let{el:t}=this._audioSource;if(!t.paused&&Number.isFinite(t.currentTime))return"audio"}return"monotonic"}snapshot(){return{time:this.now(),playing:this.isPlaying(),rate:this._rate,duration:this._duration,source:this.getSource()}}reachedEnd(){let t=this.now();return t>=this.getEnd()||this._playStartMs===null&&t>=this.getStopTime()}};var kO=100,LO=8,NO=4096,Hm=e=>e;function FO(e,t,n){return!kc(e)&&t==="linear"&&!n}function PO(e){let t=Math.ceil(e*kO);return Math.min(NO,Math.max(LO,t))}function DO(e,t,n,r,o){let{scheduledAt:i,elapsed:a,rate:l}=r,s=o??Hm,c=E=>i+(E-a)/l,d=e.points[t],m=e.points[t+1],f=c(m.t);if(f<=i)return null;let p=Math.max(i,c(d.t)),b=f-p;if(b<=0)return null;if(FO(d,n,o))return{kind:"ramp",time:f,value:s(m.v)};let y=PO(b),x=t0(e,Math.max(d.t,a),m.t,y,n),v=new Float32Array(y);for(let E=0;E<y;E+=1)v[E]=s(x[E]??0);return{kind:"curve",time:p,duration:b,values:v}}function IO(e,t,n,r){let o=[];for(let a=0;a+1<e.points.length;a+=1){let l=DO(e,a,t,n,r);l&&o.push(l)}let i=o[0];return i?.kind==="curve"&&i.time<=n.scheduledAt||o.unshift({kind:"set",time:n.scheduledAt,value:(r??Hm)(Wt(e,n.elapsed,t))}),o}function OO(e,t){e.cancelScheduledValues(0);for(let n of t)n.kind==="set"?e.setValueAtTime(n.value,n.time):n.kind==="ramp"?e.linearRampToValueAtTime(n.value,n.time):(e.setValueAtTime(n.values[0]??0,n.time),e.linearRampToValueAtTime(n.values[n.values.length-1]??0,n.time+n.duration))}function HO(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{OO(e,t);return}}function wo(e){for(let t of e)t.param.cancelScheduledValues(0)}function _o(e,t){for(let n of e)typeof n.param.cancelAndHoldAtTime=="function"?n.param.cancelAndHoldAtTime(t):n.param.cancelScheduledValues(t)}function Gm(e,t,n,r){if(t.points.length!==0)for(let o of e){if(wo([o]),e0(t)){let i=(o.map??Hm)(t.points[0].v);o.param.setValueAtTime(i,r.scheduledAt);continue}HO(o.param,IO(t,n,r,o.map))}}function ow(e,t,n,r,o){let i=new Map(n.filter(l=>l.id).map(l=>[l.id,l.handle])),a=[];for(let l of e.lanes){let s=ii(l.target);if(!s)continue;let c=s.kind==="preset"?o?.[s.presetId]:s.kind==="fx"?i.get(s.nodeId)?.automation?.[s.param]:void 0;if(!c||c.length===0)continue;let d=Lc(l.target,t);d&&(Gm(c,l,d.scale,r),a.push(...c))}return a}function iw(e){return e.lanes.find(t=>t.target===Wr)??null}var aw=`
|
|
645
|
+
`,hn=[],aA=30,sA=0,gm=0,lA=-1,mm=null,pm=null;function yt(e){globalThis.console.error(iA,`vfx: ${e}`)}function uA(e){globalThis.console.error(iA,`vfx-frame: ${e}`)}function eA(e,t,n){let r=e.createShader(t);return r?(e.shaderSource(r,n),e.compileShader(r),e.getShaderParameter(r,e.COMPILE_STATUS)?r:(yt(`shader failed to compile: ${e.getShaderInfoLog(r)??"(no log)"}`),e.deleteShader(r),null)):null}function ND(e,t){let n=eA(e,e.VERTEX_SHADER,LD),r=n?eA(e,e.FRAGMENT_SHADER,t):null;if(!n||!r)return null;let o=e.createProgram();return o?(e.attachShader(o,n),e.attachShader(o,r),e.linkProgram(o),e.deleteShader(n),e.deleteShader(r),e.getProgramParameter(o,e.LINK_STATUS)?o:(yt(`program failed to link: ${e.getProgramInfoLog(o)??"(no log)"}`),e.deleteProgram(o),null)):null}var tA="position:absolute;inset:0;width:100%;height:100%;pointer-events:none;";function FD(e){let t=e.querySelector(":scope > canvas.hf-vfx-out");if(nn(t))return t.style.cssText=tA+t.style.cssText,t;let n=document.createElement("canvas");return n.className="hf-vfx-out",n.style.cssText=tA,e.appendChild(n),n}function PD(e,t,n){let r={};for(let o of n.params)o.kind!=="ref"&&(r[o.key]=e.getUniformLocation(t,`u_${o.key}`));return{size:e.getUniformLocation(t,"u_size"),t:e.getUniformLocation(t,"u_t"),fps:e.getUniformLocation(t,"u_fps"),src:e.getUniformLocation(t,"u_src"),src2:e.getUniformLocation(t,"u_src2"),hasSrc2:e.getUniformLocation(t,"u_hasSrc2"),params:r}}function DD(e,t,n,r){return r.optional?{kind:"none"}:(yt(`${Jt(e)}: node "${t.id}" (${n.id}) needs a "${r.key}" param naming the id of the element to read as its second source.`),{kind:"error"})}function ID(e,t,n,r,o,i){let a=n.params.find(m=>m.kind==="ref");if(!a)return{kind:"none"};let l=r[a.key];if(typeof l!="string"||l==="")return DD(e,t,n,a);let s=e.ownerDocument.getElementById(l);if(!Ce(s))return yt(`${Jt(e)}: node "${t.id}" (${n.id}) names "${a.key}" element #${l}, which is not in the composition.`),{kind:"error"};if(s===e)return a.optional?{kind:"none"}:{kind:"self"};let c=i.get(s);if(c)return{kind:"source",source:c};let d=cA(s,o,`${Jt(e)}: "${a.key}" source`);return d?(i.set(s,d),{kind:"source",source:d}):{kind:"error"}}function OD(e,t,n){let r=[],o=new Map;for(let i of fm(t)){let a=jv(i.type);if(!a)return yt(`node "${i.id}" has unknown effect type "${i.type}"`),null;let l=ND(e,a.frag);if(!l)return yt(`node "${i.id}" (${a.id}) has no usable program`),null;let s=Kv(a.id,i.params),c=ID(n,i,a,s,e,o);if(c.kind==="error")return null;r.push({node:i,def:a,program:l,params:s,locations:PD(e,l,a),...c.kind==="source"?{ref:c.source}:{},selfRef:c.kind==="self"})}return r}function HD(e){let t=e.createTexture();return e.bindTexture(e.TEXTURE_2D,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),t}function GD(e){let t=e.parentElement;if(!t||e.id==="")return null;let n=t.children;for(let r=0;r<n.length;r++){let o=n.item(r);if(nn(o)&&o.classList.contains("hf-vfx-src")&&o.getAttribute("data-vfx-for")===e.id)return o}return null}function BD(e,t){xo()==="drawable"&&(Zl(e,"drawable"),eu(t,"drawable"))}function cA(e,t,n){let r=GD(e),o=r??e.querySelector(":scope > canvas.hf-vfx-src"),i=nn(o)?o.querySelector(":scope > .hf-vfx-in"):null;if(!nn(o)||!Ce(i)){yt(`${n}: a capturing chain needs <canvas layoutsubtree class="hf-vfx-src"><div class="hf-vfx-in">\u2026</div></canvas> in source: inside the element for its own pixels, or beside it with data-vfx-for="${e.id}" for the layers below it.`);return}if(o.querySelector("canvas.hf-vfx-src")||o.parentElement?.closest("canvas.hf-vfx-src")){yt(`${n}: a capture canvas nested inside another capture canvas blocks the renderer's main thread in drawElementImage, so this chain is not registered. Keep each .hf-vfx-src out of every other .hf-vfx-src subtree.`);return}let a=o.getContext("2d");if(!a||typeof a.drawElementImage!="function"){yt(`${n}: drawElementImage is unavailable, so the layer cannot be captured. In Studio, enable chrome://flags/#canvas-draw-element.`);return}return BD(o,i),{canvas:o,inner:i,ctx:a,texture:HD(t),backdrop:r!==null,visible:o.hasAttribute(MD),emptyBoxReported:!1,laidOutEmpty:Jn(i)===null}}function UD(e){e.out.addEventListener("webglcontextlost",t=>{t.preventDefault(),!(!hn.includes(e)||e.contextLost)&&(e.contextLost=!0,yt(`${Jt(e.host)}: WebGL context lost.`))})}function WD(e){try{return Jv(e.getAttribute(dm)??"")}catch(t){let n=t instanceof Ot?t.message:String(t);return yt(`${Jt(e)}: ${n}`),null}}function VD(e){let t=WD(e);if(!t)return null;let n=FD(e),r=n.getContext("webgl2",kD);if(!r)return yt(`${Jt(e)}: WebGL2 is unavailable, so the chain cannot paint.`),n.remove(),null;let o=OD(r,t,e);if(!o)return n.remove(),null;let i=Xv(t),a=i==="none"?void 0:cA(e,r,Jt(e));if(i!=="none"&&!a)return n.remove(),null;let l=a?.backdrop?"backdrop":i,s={host:e,chain:t,capture:l,out:n,gl:r,passes:o,src:a,contextLost:!1};return UD(s),s}function bm(e){let t=getComputedStyle(e);return t.display!=="none"&&t.visibility!=="hidden"}function dA(e){if(getComputedStyle(e.inner).visibility==="hidden")return!1;for(let t=e.inner;t;t=t.parentElement)if(getComputedStyle(t).display==="none")return!1;return!0}function Jt(e){return e.id?`#${e.id}`:`<${e.tagName.toLowerCase()}>`}function So(e){let t=e.src?[e.src]:[];for(let n of e.passes)n.ref&&!t.includes(n.ref)&&t.push(n.ref);return t}function ym(e){return e.src?.backdrop===!0}function la(e){let t=[];for(let n of e.passes)n.ref?.visible&&!t.includes(n.ref)&&t.push(n.ref);return t}function $D(){for(let e of hn){let{gl:t}=e;for(let n of e.passes)t.deleteProgram(n.program);for(let n of So(e))t.deleteTexture(n.texture);if(e.ping){for(let n of e.ping.textures)t.deleteTexture(n);for(let n of e.ping.framebuffers)t.deleteFramebuffer(n)}}}function tu(e,t){$D(),hn=[],aA=Number.isFinite(t)&&t>0?t:30;let n=e.querySelectorAll(`[${dm}]`);for(let r of n){if(!Ce(r))continue;let o=VD(r);o&&hn.push(o)}return hn}function Jn(e){let t=typeof window>"u"?1:window.devicePixelRatio||1,n=Math.round(e.offsetWidth*t),r=Math.round(e.offsetHeight*t);return n>0&&r>0?{width:n,height:r}:null}function nA(e,t,n){let r=e.createTexture();e.bindTexture(e.TEXTURE_2D,r),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,t,n,0,e.RGBA,e.UNSIGNED_BYTE,null),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE);let o=e.createFramebuffer();return e.bindFramebuffer(e.FRAMEBUFFER,o),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,r,0),[r,o]}function qD(e,t,n){let r=e.ping;if(r&&r.width===t&&r.height===n)return r;let{gl:o}=e;if(r){for(let s of r.textures)o.deleteTexture(s);for(let s of r.framebuffers)o.deleteFramebuffer(s)}let i=nA(o,t,n),a=nA(o,t,n),l={textures:[i[0],a[0]],framebuffers:[i[1],a[1]],width:t,height:n};return e.ping=l,l}function zD(e,t,n){if(e.kind==="ref")return null;if(e.kind==="number"&&e.animatable){let o=n.getPropertyValue(`--vfx-${t.node.id}-${e.key}`).trim(),i=o===""?Number.NaN:Number.parseFloat(o);if(Number.isFinite(i))return Math.min(e.max,Math.max(e.min,i))}let r=t.params[e.key];return typeof r=="boolean"?r?1:0:typeof r=="number"?r:0}function jD(e,t,n,r,o,i){let{gl:a}=e,{locations:l}=t;a.uniform2f(l.size,o,i),a.uniform1f(l.t,r),a.uniform1f(l.fps,aA),a.uniform1f(l.hasSrc2,t.ref||t.selfRef?1:0);for(let s of t.def.params){let c=zD(s,t,n);c!==null&&a.uniform1f(l.params[s.key]??null,c)}}function KD(e,t,n){return e===t||!n?null:n.framebuffers[e%2]??null}function YD(e,t,n){return t===0?e.src?.texture??null:n?.textures[(t-1)%2]??null}function XD(e,t,n,r){let{gl:o}=e,i=e.passes[t];o.bindFramebuffer(o.FRAMEBUFFER,KD(t,n,r));let a=YD(e,t,r);a&&rA(o,i.locations.src,a,0),i.ref?(rA(o,i.locations.src2,i.ref.texture,1),o.activeTexture(o.TEXTURE0)):i.selfRef&&a&&o.uniform1i(i.locations.src2,0)}function rA(e,t,n,r){e.activeTexture(r===0?e.TEXTURE0:e.TEXTURE1),e.bindTexture(e.TEXTURE_2D,n),e.uniform1i(t,r)}function xm(e,t){let n=Jn(e.host);if(!n)return;let{gl:r,out:o,passes:i}=e;o.width!==n.width&&(o.width=n.width),o.height!==n.height&&(o.height=n.height);let a=i.length>1?qD(e,n.width,n.height):null,l=getComputedStyle(e.host),s=i.length-1;for(let c=0;c<=s;c++){let d=i[c];r.useProgram(d.program),XD(e,c,s,a),r.viewport(0,0,n.width,n.height),jD(e,d,l,t,n.width,n.height),r.drawArrays(r.TRIANGLES,0,3)}}function fA(e,t){e.activeTexture(e.TEXTURE0),e.bindTexture(e.TEXTURE_2D,t.texture),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,1),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,1),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,t.canvas),e.pixelStorei(e.UNPACK_FLIP_Y_WEBGL,0),e.pixelStorei(e.UNPACK_PREMULTIPLY_ALPHA_WEBGL,0)}var JD={upload:!0,keepBitmap:!1},QD={upload:!1,keepBitmap:!0},ZD={upload:!0,keepBitmap:!0},eI={upload:!1,keepBitmap:!0};function mA(e,t){e.canvas.width!==t.width&&(e.canvas.width=t.width),e.canvas.height!==t.height&&(e.canvas.height=t.height)}function oA(e,t,n,r){return mA(t,n),t.ctx.clearRect(0,0,n.width,n.height),r.upload&&fA(e.gl,t),!0}function Sm(e,t,n,r,o){if(!dA(t))return oA(e,t,n,o);if(Jn(t.inner)===null)return t.emptyBoxReported||(t.emptyBoxReported=!0,uA(`${Jt(e.host)}: the .hf-vfx-in wrapper measures 0\xD70, so its capture would be empty. Inside a layoutsubtree canvas an inset or percentage box has no size, so the wrapper must state an explicit width and height in px.`)),oA(e,t,n,o);mA(t,n),t.ctx.clearRect(0,0,n.width,n.height);try{t.ctx.drawElementImage(t.inner,0,0,n.width,n.height)}catch(i){return r||yt(`${Jt(e.host)}: drawElementImage failed: ${i.message} In Studio, enable chrome://flags/#canvas-draw-element.`),!1}return o.upload&&fA(e.gl,t),o.keepBitmap||t.ctx.clearRect(0,0,n.width,n.height),!0}function pA(e,t){return e.visible?Jn(e.inner)??t:t}function hA(e,t=!1){let n=Jn(e.host),r=So(e);if(!n||r.length===0)return!1;let o=!0;for(let i of r){let a=i.visible?ZD:JD;Sm(e,i,pA(i,n),t,a)||(o=!1)}return o}function gA(e,t=!1){let n=e.src;if(!n)return!1;let r=Jn(e.host)??Jn(n.inner);return r?Sm(e,n,r,t,QD):!1}function hm(e,t=!1){let n=!0;for(let r of la(e)){let o=pA(r,{width:0,height:0});Sm(e,r,o,t,eI)||(n=!1)}return n}function tI(e){let t=!1;return ym(e)&&gA(e)&&(t=!0),la(e).length>0&&hm(e)&&(t=!0),t}function nI(){let e=!1;for(let t of hn)if(!t.contextLost&&So(t).length!==0){if(!bm(t.host)){tI(t)&&(e=!0);continue}hA(t)&&(xm(t,sA),e=!0)}return lA=gm,window.__hf_page_composite_pending=!1,e}function rI(){let e=window,t=e.__hf_page_composite_resolve;t!==mm&&(pm=typeof t=="function"?t:null,mm=()=>{let n=pm?pm():!1;return nI()||n},e.__hf_page_composite_resolve=mm),e.__hf_page_composite_pending=!0}var bA=2e3;function oI(e){return new Promise(t=>{let n=!1,r=a=>{n||(n=!0,clearTimeout(i),e.removeEventListener("paint",o),t(a))},o=()=>r("painted"),i=setTimeout(()=>r("timeout"),bA);e.addEventListener("paint",o,{once:!0});try{e.requestPaint?.()}catch{}if(typeof requestAnimationFrame!="function"){r("painted");return}requestAnimationFrame(()=>requestAnimationFrame(()=>r("painted")))})}async function iI(e,t){return(await Promise.all(t.map(r=>oI(r.canvas)))).includes("timeout")?(uA(`${Jt(e.host)}: no paint arrived within ${bA}ms, so this frame's capture was skipped (a BeginFrame-controlled compositor without a tick for this frame is a known cause).`),!1):!0}function aI(e){return bm(e.host)?"paint":ym(e)?"passThrough":"refOnly"}function sI(e,t){return(t==="passThrough"?[...e.src?[e.src]:[],...la(e)]:t==="refOnly"?la(e):So(e)).filter(dA)}function lI(e,t){return t!==gm||lA===t?!1:hn.includes(e)&&!e.contextLost}async function uI(e,t,n,r){let o=aI(e);if(await iI(e,sI(e,o))&&lI(e,n)){if(o==="passThrough"){gA(e,r),hm(e,r);return}if(o==="refOnly"){hm(e,r);return}hA(e,r)&&xm(e,t)}}async function cI(e,t,n,r){await Promise.all(e.map(o=>uI(o,t,n,r)))}function dI(){for(let e of hn.flatMap(So)){let t=Jn(e.inner)===null;e.laidOutEmpty&&!t&&e.canvas.insertBefore(e.inner,e.inner.nextSibling),e.laidOutEmpty=t}}function Em(e,t){sA=e;let n=++gm;dI();let r=[];for(let o of hn)if(!o.contextLost){if(!bm(o.host)){(ym(o)||la(o).length>0)&&r.push(o);continue}So(o).length>0?r.push(o):xm(o,e)}r.length!==0&&(t?.engineMode&&rI(),Ze(cI(r,e,n,t?.engineMode===!0)))}function wm(e=window){let t=/Chrome\/(\d+)/.exec(e.navigator.userAgent);return t?.[1]?Number(t[1]):null}var fI=(e,t)=>t.backface,mI=(e,t)=>Array.from(e.ownerDocument.querySelectorAll("canvas")).some(t.isAccelerated),pI=/^matrix\(\s*1,\s*0,\s*0,\s*1,\s*0,\s*0\s*\)$|^matrix3d\(\s*1,\s*0,\s*0,\s*0,\s*0,\s*1,\s*0,\s*0,\s*0,\s*0,\s*1,\s*0,\s*0,\s*0,\s*0,\s*1\s*\)$/,vm=(e,t)=>!!e&&e!=="none"&&!e.split(/\s+/).every(n=>parseFloat(n)===t),hI=e=>{let t=getComputedStyle(e),n=t.transform.trim();return vm(t.scale,1)||vm(t.rotate,0)||vm(t.translate,0)?!0:n!=="none"&&n!==""&&!pI.test(n)},gI=e=>{let t=getComputedStyle(e).mixBlendMode;return!!t&&t!=="normal"},bI=e=>Number.parseFloat(getComputedStyle(e).opacity)<1,yI=e=>e.querySelector("iframe, object, embed")!==null||Array.from(e.querySelectorAll("*")).some(t=>t.localName.includes("-")&&customElements.get(t.localName)!==void 0),xI=[{code:"nested-capture-canvas",reason:"the composition already uses html-in-canvas",detect:e=>e.querySelector(Qv)!==null},{code:"accelerated-canvas",reason:"the composition draws a WebGL/WebGPU canvas, which html-in-canvas captures frozen",detect:mI},{code:"backface-visibility",reason:"backface-visibility: hidden inside a 3D transform is drawn mirrored by html-in-canvas",detect:fI},{code:"iframe-in-root",reason:"the composition contains an <iframe>, <object>, <embed> or custom element, which is re-initialised when blur wraps the root",detect:yI},{code:"root-transform",reason:"html-in-canvas can ignore a transform on the composition root",detect:hI},{code:"root-opacity",reason:"html-in-canvas can ignore the composition root's own opacity",detect:bI},{code:"root-blend-mode",reason:"html-in-canvas can ignore the composition root's own mix-blend-mode",detect:gI}];function nu(e,t){let n=xI.find(r=>r.detect(e,t));return n?{code:n.code,reason:n.reason}:null}var yA=/perspective\(|rotate3d\(|rotate[XY]\(|matrix3d\(/;function xA(e){return e.getPropertyValue("backface-visibility")==="hidden"||e.getPropertyValue("-webkit-backface-visibility")==="hidden"}var SI=e=>!/^(none|-?[\d.]+[a-z]+)?$/.test(e.rotate??"")||(e.translate??"").trim().split(/\s+/).length>2;function EI(e,t){return yA.test(t.transform)||yA.test(e.style.transform)||SI(t)}function vI(e,t){for(let n=e;n;n=n.parentElement){let r=getComputedStyle(n);if(r.transformStyle==="preserve-3d"||EI(n,r)||n!==e&&r.perspective!=="none"&&r.perspective!=="")return!0;if(n===t)break}return!1}var AI=16,_m="@keyframes ";function wI(e){let t=[],n=0,r=0;for(let o=0;o<e.length;o++){let i=e.charAt(o);i==="("||i==="["?n++:i===")"||i==="]"?n--:i===","&&n===0&&(t.push(e.slice(r,o).trim()),r=o+1)}return t.push(e.slice(r).trim()),t}function _I(e,t){if(t===null)return e;let n=`:is(${t})`;return wI(e).map(r=>r.includes("&")?r.replaceAll("&",n):`${n} ${r}`).join(", ")}function*Am(e,t,n,r){if(!(r>AI))for(let o of Array.from(e))yield*TI(o,t,n,r)}function CI(e,t){let n="style"in e?e.style:null;return t!==null&&n instanceof CSSStyleDeclaration?{selector:t,style:n}:null}function*TI(e,t,n,r){if(e instanceof CSSStyleRule){let i=_I(e.selectorText,t);yield{selector:i,style:e.style},yield*Am(e.cssRules,i,n,r+1);return}if(e instanceof CSSImportRule){e.styleSheet&&(yield*SA(e.styleSheet,n,r+1));return}let o=CI(e,t);if(o)yield o;else if("cssRules"in e&&e.cssRules instanceof CSSRuleList){let i=e instanceof CSSKeyframesRule?_m+e.name:t;yield*Am(e.cssRules,i,n,r+1)}}function RI(e){try{return e.cssRules}catch{return null}}function*SA(e,t,n){let r=t.has(e)?null:RI(e);t.add(e),r&&(yield*Am(r,null,t,n))}function MI(e,t){try{let n=Array.from(e.querySelectorAll(t));return e.matches(t)?[e,...n]:n}catch{return[]}}function kI(e){return(document.getAnimations?.()??[]).flatMap(({effect:t})=>{if(!(t instanceof KeyframeEffect))return[];let n=t.target;return t.getKeyframes().some(o=>o.backfaceVisibility==="hidden")&&n instanceof HTMLElement&&e.contains(n)?[n]:[]})}function LI(e,t){return t.length===0?[]:[e,...e.querySelectorAll("*")].filter(n=>getComputedStyle(n).animationName.split(", ").some(r=>t.includes(_m+r)))}function NI(){let e=new Set,t=[...Array.from(document.styleSheets),...document.adoptedStyleSheets??[]],n=[];for(let r of t)for(let o of SA(r,e,0))xA(o.style)&&n.push(o.selector);return n}function FI(e,t){let n=t.filter(o=>o.startsWith(_m)),r=new Set([...e.querySelectorAll('[style*="backface"]'),...kI(e),...LI(e,n)]);for(let o of t)for(let i of MI(e,o))r.add(i);return r}function EA(e){let t=NI(),n=new Set,r=()=>{for(let o of n)if(xA(getComputedStyle(o))&&vI(o,e))return!0;return!1};return{scan:()=>(n=new Set([...n,...FI(e,t)]),r()),recheck:r}}function vA(e){return EA(e).scan()}var PI=10;function AA(e,t){let n=EA(e),r=null;return{sample:(o,i,a)=>{if(r)return;let l=o%PI===0||o===i,s=nu(e,{isAccelerated:t,backface:l&&n.scan()});s&&(r={...s,reason:`${s.reason} (first seen at t=${a.toFixed(1)}s)`})},result:()=>r,facesNow:n.recheck}}var wA="__HF_PAGE_MOTION_BLUR_OFF__",_A="__HF_DEVICE_SCALE_FACTOR__";function CA(e=window){return xo(e)!==null}var DI="__hfAcceleratedCanvases";function TA(){let e="__hfAcceleratedCanvases",t=Reflect.get(window,e),n=t instanceof WeakSet?t:new WeakSet;n!==t&&Object.defineProperty(window,e,{value:n});let r=["webgl","webgl2","experimental-webgl","webgpu"],o=(i,a)=>{let l=HTMLCanvasElement.prototype,s=Reflect.get(l,i);if(typeof s!="function"||"__hfAccelTracked"in s)return;let c=function(...d){let m=Reflect.apply(s,this,d);return a(this,d,m),m};Object.defineProperty(c,"__hfAccelTracked",{value:!0}),Object.defineProperty(l,i,{value:c,writable:!0,configurable:!0})};o("getContext",(i,a,l)=>{l&&r.includes(String(a[0]))&&n.add(i)}),o("transferControlToOffscreen",i=>{n.add(i)})}function RA(e){let t=Reflect.get(window,DI);return t instanceof WeakSet&&t.has(e)}var Eo={a:1,b:0,c:0,d:1,e:0,f:0};function ru(e,t){return{a:e.a*t.a+e.c*t.b,b:e.b*t.a+e.d*t.b,c:e.a*t.c+e.c*t.d,d:e.b*t.c+e.d*t.d,e:e.a*t.e+e.c*t.f+e.e,f:e.b*t.e+e.d*t.f+e.f}}function ua(e,t,n){return ru(e,{a:1,b:0,c:0,d:1,e:t,f:n})}function Tm(e){let t=e.a*e.d-e.b*e.c;return!Number.isFinite(t)||Math.abs(t)<1e-12?null:{a:e.d/t,b:-e.b/t,c:-e.c/t,d:e.a/t,e:(e.c*e.f-e.d*e.e)/t,f:(e.b*e.e-e.a*e.f)/t}}function II(e,t,n){return[[e.e,e.f],[e.a*t+e.e,e.b*t+e.f],[e.c*n+e.e,e.d*n+e.f],[e.a*t+e.c*n+e.e,e.b*t+e.d*n+e.f]]}function OI(e,t,n){let r=MA(e),o=MA(t),i=o.angle-r.angle;i>Math.PI?i-=2*Math.PI:i<-Math.PI&&(i+=2*Math.PI);let a=(l,s)=>l+(s-l)*n;return HI({angle:r.angle+i*n,sx:a(r.sx,o.sx),sy:a(r.sy,o.sy),shear:a(r.shear,o.shear),e:a(e.e,t.e),f:a(e.f,t.f)})}function MA(e){let t=Math.hypot(e.a,e.b);return t<1e-12?{angle:0,sx:0,sy:e.d,shear:e.c,e:e.e,f:e.f}:{angle:Math.atan2(e.b,e.a),sx:t,sy:(e.a*e.d-e.b*e.c)/t,shear:(e.a*e.c+e.b*e.d)/t,e:e.e,f:e.f}}function HI(e){let t=Math.cos(e.angle),n=Math.sin(e.angle);return{a:e.sx*t,b:e.sx*n,c:e.shear*t-e.sy*n,d:e.shear*n+e.sy*t,e:e.e,f:e.f}}function ou(e,t){if(e.length===0)return[];if(e.length===1)return Array.from({length:t},()=>e[0]);let n=e.length-1;return Array.from({length:t},(r,o)=>{let i=(o+.5)/t*n,a=Math.min(n-1,Math.floor(i));return OI(e[a],e[a+1],i-a)})}function iu(e,t,n,r,o){let i=1/0,a=1/0,l=-1/0,s=-1/0,c=0,d=null;for(let x of e){let v=II(x,t,n);for(let[E,C]of v)i=Math.min(i,E),a=Math.min(a,C),l=Math.max(l,E),s=Math.max(s,C);if(d){let E=0;for(let C=0;C<4;C++){let[H,V]=d[C],[M,R]=v[C];E=Math.max(E,Math.hypot(M-H,R-V))}c+=E}d=v}let m=Math.max(0,Math.floor(i)-2),f=Math.max(0,Math.floor(a)-2),p=Math.min(r,Math.ceil(l)+2),b=Math.min(o,Math.ceil(s)+2),y=p>m&&b>f?{x:m,y:f,w:p-m,h:b-f}:null;return{travel:c,rect:y}}function NA(e){let t=Math.floor(255/e),n=255-t*e;return Array.from({length:e},(r,o)=>(t+Math.floor((o+1)*n/e)-Math.floor(o*n/e))/255)}var GI=16;function FA(e,t,n,r,o,i=2,a=128,l=32){let{travel:s}=iu(ou(e,GI),t,n,r,o);return ou(e,Math.min(a,Math.max(l,Math.ceil(s/i))))}function PA(e,t,n=1.5){let r=Math.min(e.length,Math.max(2,Math.ceil(t/n)));return r>=e.length?e:Array.from({length:r},(o,i)=>{let a=Math.round((i+.5)/r*e.length-.5);return e[a]})}function au(e,t){let n=new Map,r=new Map,o=new Map,i=s=>{if(!t.has(s)&&n.has(s))return n.get(s)??null;let d=getComputedStyle(s),m=DA([WI(d,s.offsetWidth,s.offsetHeight),Rm(d.transform)]),f=null;if(m){let[p=0,b=0]=d.transformOrigin.split(" ").map(y=>parseFloat(y)||0);f=ua(ru(ua(Eo,p,b),m),-p,-b)}return t.has(s)||n.set(s,f),f},a=s=>{if(!s||s===e||!LA(s))return[0,0];let c=r.get(s);if(!c){let d=s.offsetParent,[m,f]=a(d);c=[m+s.offsetLeft+(d?.clientLeft??0),f+s.offsetTop+(d?.clientTop??0)],r.set(s,c)}return c},l=s=>{if(!s||s===e||!LA(s))return Eo;let c=o.get(s);if(!c){let d=s.parentElement,[m,f]=a(s),[p,b]=a(d),[y,x]=BI(d);c=ua(l(d),m-p-y,f-b-x);let v=i(s);v&&(c=ru(c,v)),o.set(s,c)}return c};return{pose:l,reset(){r=new Map,o=new Map}}}function BI(e){return e?[e.scrollLeft,e.scrollTop]:[0,0]}function DA(e){let t=null;for(let n of e)n&&(t=t?ru(t,n):n);return t}var Cm=e=>e.trim().split(/\s+(?![^(]*\))/);function kA(e,t){let n=0;for(let r of e.matchAll(/([+-]?\s*[\d.]+(?:e[+-]?\d+)?)(px|%)?/g)){let o=Number(r[1]?.replace(/\s/g,""));n+=r[2]==="%"?o/100*t:o}return n}var UI={deg:Math.PI/180,rad:1,grad:Math.PI/200,turn:2*Math.PI};function WI(e,t,n){let r=e.translate??"none",o=e.rotate??"none",i=e.scale??"none",a=[];if(r!=="none"){let[s="0",c="0"]=Cm(r);a.push({...Eo,e:kA(s,t),f:kA(c,n)})}let l=/^(-?[\d.]+)(deg|rad|grad|turn)$/.exec(o);if(l){let s=Number(l[1])*(UI[l[2]??"deg"]??0);a.push({a:Math.cos(s),b:Math.sin(s),c:-Math.sin(s),d:Math.cos(s),e:0,f:0})}if(i!=="none"){let[s=1,c=s]=Cm(i).map(Number);a.push({...Eo,a:s,d:c})}return DA(a)}function IA(e){let t=e.translate??"none",n=e.rotate??"none";return t!=="none"&&Cm(t).length>2||!/^(none|-?[\d.]+[a-z]+)$/.test(n)}function Rm(e){let t=/^matrix(3d)?\(([^)]*)\)$/.exec(e.trim());if(!t)return null;let n=(t[2]??"").split(",").map(Number);if(n.some(d=>!Number.isFinite(d)))return null;let r=t[1]?[0,1,4,5,12,13]:[0,1,2,3,4,5];if(n.length!==(t[1]?16:6))return null;let[o=1,i=0,a=0,l=1,s=0,c=0]=r.map(d=>n[d]??0);return{a:o,b:i,c:a,d:l,e:s,f:c}}function LA(e){return typeof e.offsetLeft=="number"}function OA(e,t){let n=new OffscreenCanvas(e,t),r=null;try{r=n.getContext("2d",{colorType:"float16"})}catch{r=null}if(r=r??n.getContext("2d"),!r)throw new Error("capture motion blur: no 2D context for the accumulation buffer");return{canvas:n,ctx:r}}function VI(e,t,n){let{travel:r,rect:o}=iu(e.taps,e.w,e.h,t,n);return o!==null&&r>=1}function Mm(e,t,n=1){let r=Math.max(1,Math.round(e*n)),o=Math.max(1,Math.round(t*n)),i=OA(r,o),a=[],l=e*t*4,s=(p,b,y)=>{let x=Math.ceil(b*n),v=Math.ceil(y*n),E=a[p];return(!E||E.canvas.width<x||E.canvas.height<v)&&(E=OA(Math.max(x,E?.canvas.width??1),Math.max(v,E?.canvas.height??1)),a[p]=E),E};function c(p){return p.map(b=>Tm(b.now)!==null&&b.w*b.h<=l&&VI(b,e,t))}function d(p,b,y){b.forEach((x,v)=>{let E=Tm(x.now);if(!y[v]||!E)return;let{w:C,h:H}=x,V=s(v,C,H).ctx;V.setTransform(1,0,0,1,0,0),V.globalCompositeOperation="source-over",V.globalAlpha=1,V.clearRect(0,0,Math.ceil(C*n),Math.ceil(H*n)),V.setTransform(n*E.a,n*E.b,n*E.c,n*E.d,n*E.e,n*E.f),V.drawImage(p,0,0,e,t)})}function m(p,b,y){let{w:x,h:v}=b,{travel:E,rect:C}=iu(b.taps,x,v,e,t);if(!C)return 0;let H=PA(b.taps,E),V=Math.max(0,Math.floor(C.x*n)),M=Math.max(0,Math.floor(C.y*n)),R=Math.min(r,Math.ceil((C.x+C.w)*n))-V,U=Math.min(o,Math.ceil((C.y+C.h)*n))-M;if(R<=0||U<=0)return 0;let T=i.ctx;T.setTransform(1,0,0,1,0,0),T.globalCompositeOperation="source-over",T.globalAlpha=1,T.clearRect(V,M,R,U),T.globalCompositeOperation="lighter";let F=NA(H.length);return H.forEach((W,B)=>{T.globalAlpha=F[B]??0,T.setTransform(n*W.a,n*W.b,n*W.c,n*W.d,n*W.e,n*W.f),T.drawImage(y.canvas,0,0,x*n,v*n,0,0,x,v)}),p.drawImage(i.canvas,V,M,R,U,V,M,R,U),H.length}function f(p,b,y,x){b.setTransform(1,0,0,1,0,0),b.globalAlpha=1,b.globalCompositeOperation="copy",b.drawImage(p,0,0),b.globalCompositeOperation="source-over";let v={blurred:0,taps:0};return y.forEach((E,C)=>{let H=a[C];if(!x[C]||!H)return;let V=m(b,E,H);V>0&&(v.blurred++,v.taps+=V)}),v}return{plan:c,crop:d,draw:f}}var ca={enable:"data-motion-blur",shutter:"data-motion-blur-shutter",samples:"data-motion-blur-samples",events:"data-motion-blur-events",tier:"data-motion-blur-tier"},$I={shutterDeg:{min:0,max:720,default:240},samples:{min:2,max:64}},HA=(e,t,n)=>Math.min(n,Math.max(t,e));function GA(e){if(e===null||e.trim()==="")return null;let t=Number(e);return Number.isFinite(t)?t:null}function BA(e){let t=GA(e(ca.shutter)),n=GA(e(ca.samples)),r=e(ca.tier),{shutterDeg:o,samples:i}=$I;return{enabled:e(ca.enable)==="on",shutterDeg:HA(t??o.default,o.min,o.max),samples:n===null?null:Math.round(HA(n,i.min,i.max)),events:e(ca.events)==="on",tier:r==="capture"||r==="filter"?r:"auto"}}var qI=256,zI=64,jI=/(?:rgba?|hsla?|hwb|lab|lch|oklab|oklch|color)\([^)]*\)/g;function VA(e){return[...e.replace(jI," ").matchAll(/-?\d*\.?\d+(?=px|\s|$)/g)].map(t=>Number(t[0]))}function KI(e){let t=[],n=0,r=0;for(let o=0;o<e.length;o++){let i=e[o];i==="("?n++:i===")"?n--:i===","&&n===0&&(t.push(e.slice(r,o)),r=o+1)}return t.push(e.slice(r)),t}function UA(e){return!e||e==="none"?0:Math.max(0,...KI(e).filter(t=>!/\binset\b/.test(t)).map(t=>{let[n=0,r=0,o=0,i=0]=VA(t);return Math.max(Math.abs(n),Math.abs(r))+o+Math.max(0,i)}))}function YI(e){if(!e||e==="none")return 0;let t=0;for(let n of e.matchAll(/drop-shadow\(((?:[^()]|\([^)]*\))*)\)/g)){let[r=0,o=0,i=0]=VA(n[1]??"");t=Math.max(t,Math.max(Math.abs(r),Math.abs(o))+i*1.5)}for(let n of e.matchAll(/(?<!-)blur\(\s*([\d.]+)px\s*\)/g))t=Math.max(t,Number(n[1])*3);return t}function WA(e){let t=getComputedStyle(e),n=t.outlineStyle!=="none"?parseFloat(t.outlineWidth)+parseFloat(t.outlineOffset):0;return Math.max(UA(t.boxShadow),UA(t.textShadow),YI(t.filter),Number.isFinite(n)?Math.max(0,n):0)}function $A(e){let t=WA(e),n=document.createTreeWalker(e,NodeFilter.SHOW_ELEMENT);for(let r=0;r<zI&&n.nextNode();r++){let o=n.currentNode;Ce(o)&&(t=Math.max(t,WA(o)))}return Math.min(qI,Math.ceil(t))}var qA=2,XI=.5,JI=240,QI=new Set(["transform","translate","rotate","scale","left","top","right","bottom"]),km=e=>e.getAttribute("style")??"";function ZI(e,t){for(let n=e;n&&n!==t;n=n.parentElement)if(n.getAttribute("data-motion-blur")==="off")return!0;return!1}function eO(e,t){for(let n=e;n&&n!==t;n=n.parentElement){let r=getComputedStyle(n);if(r.transform.startsWith("matrix3d")||r.transformStyle==="preserve-3d"||r.perspective!=="none"||(r.offsetPath??"none")!=="none"||IA(r))return!0}return!1}function tO(e,t){let n=[];for(let r=e;r&&r!==t;r=r.parentElement){let o=getComputedStyle(r),i=Rm(o.transform);n.push(i?[i.a,i.b,i.c,i.d].map(a=>a.toFixed(3)).join(","):"1,0,0,1"),n.push(o.rotate??"none",o.scale??"none")}return n.join("|")}function nO(e){let t=getComputedStyle(e);return t.transform!=="none"||(t.translate??"none")!=="none"}function rO(e){let t=new Set;if(typeof document.getAnimations!="function")return t;for(let n of document.getAnimations()){let r=n.effect,o=r?.target;if(!Ce(o)||!e.contains(o))continue;(typeof r?.getKeyframes=="function"?r.getKeyframes():[]).some(a=>Object.keys(a).some(l=>QI.has(l)))&&t.add(o)}return t}function oO(e){let t=/^rgba\(.*,\s*([\d.]+)\)$/.exec(e)??/\/\s*([\d.]+)(%?)\s*\)$/.exec(e);return t?t[2]?Number(t[1])/100:Number(t[1]):1}var iO=e=>e.tagName==="IMG"||e.tagName==="CANVAS",da=32;function aO(e){if("naturalWidth"in e&&!(e.complete&&e.naturalWidth>0))return!0;try{let t=e.ownerDocument.createElement("canvas");t.width=t.height=da;let n=t.getContext("2d",{willReadFrequently:!0});if(!n)return!0;n.imageSmoothingQuality="high",n.drawImage(e,0,0,da,da);let{data:r}=n.getImageData(0,0,da,da);for(let o=3;o<r.length;o+=4)if((r[o]??0)<255)return!0;return!1}catch{return!0}}function sO(e,t,n){let r=1;for(let o=e;o&&o!==t;o=o.parentElement)r*=parseFloat(getComputedStyle(o).opacity);return r<.05?!1:r<.99?!0:iO(e)?(n.has(e)||n.set(e,aO(e)),n.get(e)===!0):!/^(VIDEO|PICTURE)$/.test(e.tagName)&&lO(e)}function lO(e){let t=getComputedStyle(e);return oO(t.backgroundColor)>=.99?!1:t.backgroundImage==="none"?!0:[...t.backgroundImage.matchAll(/rgba\([^)]*,\s*([\d.]+)\)/g)].some(n=>Number(n[1])<.99)}function zA(e,t){return!e||!t||!e.width||!t.width?0:Math.max(Math.abs(e.left-t.left),Math.abs(e.top-t.top),Math.abs(e.right-t.right),Math.abs(e.bottom-t.bottom))}function uO(e,t){let n=e.map(km);e.forEach((o,i)=>o.setAttribute("style",t[i]??""));let r=e.map(o=>o.getBoundingClientRect());return e.forEach((o,i)=>o.setAttribute("style",n[i]??"")),r}function su({scene:e,durationSeconds:t,fps:n,seek:r,onStep:o}){r(0);let i=[...e.querySelectorAll("*")].filter(Ce),a=new Set(rO(e)),l=i.map(km),s=i.map(F=>F.getBoundingClientRect()),c=Math.max(1,Math.round(t*n)),d=Math.min(c,JI),m=c/d,f=new Set,p=new Set,b=new Map,y=new Map,x=new Set,v=F=>{b.set(F,Math.max(b.get(F)??0,$A(F)));let W=tO(F,e),B=y.get(F);B===void 0?y.set(F,W):B!==W&&x.add(F),nO(F)||x.add(F)},E=new Set,C=new Map,H=e.getBoundingClientRect(),V=H.width*H.height*XI,M=[];for(let F=0;F<=d;F++){F>0&&r(F/d*t),o?.(F,d);let W=[],B=[];i.forEach((N,j)=>{!a.has(N)&&km(N)===l[j]||(a.has(N)||B.push(j),a.add(N),W[j]=N.getBoundingClientRect())});let X=B.filter(N=>zA(s[N],W[N])/m>=qA),ae=uO(X.map(N=>i[N]),X.map(N=>l[N]??""));if(X.forEach((N,j)=>{M[N]=ae[j]}),W.forEach((N,j)=>{let I=i[j];!I||zA(M[j],N)/m<qA||(f.has(I)||v(I),f.add(I),N&&V>0&&N.width*N.height>=V&&sO(I,e,C)&&E.add(I))}),F%10===0||F===d)for(let N of f)eO(N,e)&&p.add(N),v(N);M=W}let R=i.filter(F=>f.has(F)&&!p.has(F)&&!E.has(F)&&!ZI(F,e)),U=R.filter(F=>!R.some(W=>W!==F&&W.contains(F))),T=U.length>0&&U.every(F=>!x.has(F));return{movers:U,dynamic:a,pads:b,translationOnly:T}}var cO=e=>Math.atan2(Math.sin(e),Math.cos(e)),jA=(e,t,n)=>[e.a*(t/2)+e.c*(n/2)+e.e,e.b*(t/2)+e.d*(n/2)+e.f];function KA(e,t,n){let{w:r,h:o,now:i,taps:a}=e,l=i.a*i.d-i.b*i.c,s=Math.sqrt(Math.abs(l));if(a.length<2||!(s>1e-4))return null;let c=jA(i,r,o),d=a.map(B=>jA(B,r,o)),m=d.map(([B,X])=>{let ae=B-c[0],N=X-c[1];return[(i.d*ae-i.c*N)/l,(-i.b*ae+i.a*N)/l]}),f=0;for(let B=1;B<d.length;B++)f+=Math.hypot((d[B]?.[0]??0)-(d[B-1]?.[0]??0),(d[B]?.[1]??0)-(d[B-1]?.[1]??0));let p=f/(d.length-1),b=Math.max(...a.map(B=>Math.abs(cO(Math.atan2(B.b,B.a)-Math.atan2(i.b,i.a))))),y=Math.max(...a.map(B=>Math.abs(Math.log(Math.sqrt(Math.abs(B.a*B.d-B.b*B.c))/s)))),x=Math.sqrt(r*o)*s,v=Math.min(24*(n/1920),.29*Math.min(n/4,x/2)*(b+y)),E=m[0]??[0,0],C=m[m.length-1]??[0,0],H=Math.hypot(C[0]-E[0],C[1]-E[1])||1,V=.35*p/s,M=[Math.hypot(v/s,V*Math.abs(C[0]-E[0])/H),Math.hypot(v/s,V*Math.abs(C[1]-E[1])/H)];if(f<.5&&Math.max(...M)*s<.35)return null;let R=m.map(B=>B[0]),U=m.map(B=>B[1]),T=t+3*Math.max(...M)+2,F=Math.min(0,...R)-T,W=Math.min(0,...U)-T;return{offsets:m,sigma:M,region:{x:F,y:W,w:r+Math.max(0,...R)+T-F,h:o+Math.max(0,...U)+T-W}}}function lu(e){let{reader:t,shutterSeconds:n,t:r,reads:o,seek:i}=e,a=e.movers.filter(d=>typeof d.checkVisibility!="function"||d.checkVisibility({visibilityProperty:!0}));if(a.length===0||n<=0)return{els:[],frames:[]};let l=r-n/2,s=a.map(()=>[]);for(let d=0;d<o;d++)i(Math.max(0,l+d/(o-1)*n)),t.reset(),a.forEach((m,f)=>s[f]?.push(t.pose(m)));i(r),t.reset();let c=a.map((d,m)=>{let f=e.pads?.get(d)??0,p=d.offsetWidth+2*f,b=d.offsetHeight+2*f,y=v=>ua(v,-f,-f),x=(s[m]??[Eo]).map(y);return{w:p,h:b,now:y(t.pose(d)),taps:e.taps===null?FA(x,p,b,e.frameW,e.frameH):ou(x,e.taps)}});return t.reset(),{els:a,frames:c}}var XA="http://www.w3.org/2000/svg",JA=32,dO=4,fO=8,QA="hf-mb",mO=new RegExp(`\\s*url\\("?#${QA}-\\d+"?\\)`,"g");function fa(e,t,n){let r=document.createElementNS(XA,t);for(let[o,i]of Object.entries(n))r.setAttribute(o,i);return e.append(r),r}function pO(e,t,n){let r=`${QA}-${t}`,o=fa(e,"filter",{id:r,"color-interpolation-filters":"sRGB",filterUnits:"userSpaceOnUse"}),i=Array.from({length:JA},(d,m)=>fa(o,"feOffset",{in:"SourceGraphic",result:`s${m}`})),a=i.map((d,m)=>`s${m}`);for(let d=0;a.length>1;d++){let m=[];for(let f=0;f<a.length;f+=2){let p=`l${d}-${f/2}`;fa(o,"feComposite",{operator:"arithmetic",in:a[f]??"",in2:a[f+1]??"",k1:"0",k2:"0.5",k3:"0.5",k4:"0",result:p}),m.push(p)}a=m}let l=fa(o,"feGaussianBlur",{in:a[0]??"",stdDeviation:"0"}),s=n.style.filter;n.style.filter="";let c=getComputedStyle(n).filter;return n.style.filter=s,{filter:o,offsets:i,soften:l,url:`url(#${r})`,css:c&&c!=="none"?c:""}}function hO(e,t){t.offsets.forEach(([a,l],s)=>{e.offsets[s]?.setAttribute("dx",a.toFixed(2)),e.offsets[s]?.setAttribute("dy",l.toFixed(2))}),e.soften.setAttribute("stdDeviation",`${t.sigma[0].toFixed(3)} ${t.sigma[1].toFixed(3)}`);let{x:n,y:r,w:o,h:i}=t.region;e.filter.setAttribute("x",n.toFixed(1)),e.filter.setAttribute("y",r.toFixed(1)),e.filter.setAttribute("width",o.toFixed(1)),e.filter.setAttribute("height",i.toFixed(1))}var YA=e=>e.style.filter.replace(mO,"").trim();function Lm(e,t,n){let{root:r}=e,o=Number(r.getAttribute("data-width"))||r.offsetWidth,i=Number(r.getAttribute("data-height"))||r.offsetHeight,a=B=>e.seek(B,!t.events),l=null,s=[],c=new Map,d=null,m,f=0,p=0,b=0,y=!1,x=!1,v=new Map,E=new Set;function C(B){m=e.timeline();let X=performance.now(),ae=su({scene:r,durationSeconds:e.durationSeconds(),fps:e.fps,seek:a});a(B),s=ae.movers,c=ae.pads,d=au(r,ae.dynamic),f=Math.round(performance.now()-X)}function H(B){let X=YA(B);X?B.style.filter=X:B.style.removeProperty("filter"),E.delete(B)}function V(){for(let B of[...E])H(B)}function M(B){let X=v.get(B);return X||(l||(l=document.createElementNS(XA,"svg"),l.setAttribute("width","0"),l.setAttribute("height","0"),l.setAttribute("aria-hidden","true"),l.setAttribute("data-hf-ignore",""),l.style.cssText="position:absolute;left:0;top:0;pointer-events:none",fa(l,"defs",{}),r.append(l)),X=pO(l.querySelector("defs")??l,v.size,B),v.set(B,X),X)}function R(B,X){let ae=M(B);hO(ae,X);let N=YA(B)||ae.css;B.style.filter=N?`${N} ${ae.url}`:ae.url,E.add(B)}function U(B,X){if((!d||e.timeline()!==m)&&C(B),!d)return[];let ae=lu({movers:s,reader:d,seek:a,t:B,reads:X?fO:dO,shutterSeconds:t.shutterDeg/360/e.fps,taps:JA,frameW:o,frameH:i}),N=[];return ae.els.forEach((j,I)=>{let P=ae.frames[I],D=P&&KA(P,c.get(j)??0,o);D&&N.push([j,D])}),N}function T(B,X){if(X&&(y=!0),x)return Promise.resolve();let ae=performance.now();try{let N=U(B,X),j=new Set(N.map(([I])=>I));for(let[I,P]of N)R(I,P);for(let I of[...E])j.has(I)||H(I);p++,b+=performance.now()-ae}catch(N){$("runtime.captureMotionBlur.filter",N),V()}return Promise.resolve()}function F(){return{state:"on",tier:"filter",reason:n?.reason??null,reasonCode:n?.code??null,movers:s.length,moverNames:s.map(B=>`${B.tagName.toLowerCase()}${B.id?`#${B.id}`:""}`),scanMs:f,shutterDeg:t.shutterDeg,frames:p,meanMs:p?Math.round(b/p*10)/10:0,failures:0,failedFrames:0}}function W(){V(),l?.remove(),l=null,v.clear()}return{root:r,paint:T,probe:()=>((!d||e.timeline()!==m)&&C(e.now()),F()),rest:()=>y?!1:(V(),!0),arm:()=>{},finish:()=>{},teardown:W,suspend:()=>{x=!0,W()},report:F,busy:()=>!1,rediscover:()=>{d=null}}}function ZA(e){if(e.defect?.code==="renderer-off")return"off";let t=e.form&&!e.defect;return e.fallback&&(e.tier==="filter"||!t)?"filter":t?"capture":"off"}var Nm="data-hf-motion-blur-hide",Qn="data-hf-motion-blur-only",vo="data-hf-motion-blur-mover",gO=4,bO=8,ew=2e3,yO=3,xO=25;function SO(e){let t=BA(a=>e.getAttribute(a));if(!t.enabled)return null;let{shutterDeg:n,samples:r,events:o,tier:i}=t;return{shutterDeg:n,samples:r,events:o,tier:i}}var nw=TA,Dm=RA;function EO(e){let t=window[wA];return t?{code:"renderer-off",reason:`the renderer turned it off (${String(t)})`}:CA()?nu(e,{isAccelerated:Dm,backface:vA(e)}):{code:"unsupported-browser",reason:"html-in-canvas (drawElementImage) is unavailable in this browser"}}function vO(e){let t=typeof e.className=="string"&&e.className?`.${e.className.trim().split(/\s+/).join(".")}`:"";return`${e.tagName.toLowerCase()}${e.id?`#${e.id}`:""}${t}`}function AO(e){let t=Number(e.getAttribute("data-width"))||e.offsetWidth,n=Number(e.getAttribute("data-height"))||e.offsetHeight;return{width:Math.max(1,Math.round(t)),height:Math.max(1,Math.round(n))}}function uu(){let e=Number(window[_A]),t=e>0?e:window.devicePixelRatio;return Number.isFinite(t)&&t>0?t:1}function tw(e,t,n){let r=document.createElement("canvas");return r.width=Math.max(1,Math.round(e*uu())),r.height=Math.max(1,Math.round(t*uu())),r.setAttribute("data-hf-ignore",""),r.setAttribute("data-hf-motion-blur",n),r.style.cssText=`position:absolute;left:0;top:0;width:${e}px;height:${t}px;`,r}function wO(e,t,n){let{root:r}=e,{width:o,height:i}=AO(r),a=tw(o,i,"capture"),l=tw(o,i,"output");l.style.pointerEvents="none",Zl(a,n);let s=a.getContext("2d"),c=l.getContext("2d");if(!s||!c)throw new Error("capture motion blur: no 2D context");let d=s,m=c,f=uu(),p=Mm(o,i,f),b=document.createElement("style");b.setAttribute("data-hf-ignore",""),b.textContent=[`[${Nm}] { opacity: 0 !important; }`,`[${Qn}] { background: none !important; border-color: transparent !important; box-shadow: none !important; outline-color: transparent !important; }`,`[${Qn}]::before, [${Qn}]::after, [${Qn}] *:not([${vo}], [${vo}] *) { visibility: hidden !important; }`,`[${Qn}] [${vo}] { visibility: visible !important; }`].join(`
|
|
646
|
+
`);let y=[],x=new Map,v=null,E=null,C=null,H=0,V=0,M=0,R=null,U=null,T=!1,F=[],W=0,B=0,X,ae=null,N=()=>!1,j=!1,I=new Set,P=!1,D=!1;function w(ne){(e.ignoreMutations??(fe=>fe()))(ne),e.seek(e.now(),!0)}function L(){P||(w(()=>{r.before(a),a.append(r),eu(r,n),a.after(l),document.head.append(b)}),m.setTransform(1,0,0,1,0,0),m.clearRect(0,0,l.width,l.height),P=!0)}function Y(){C?.release(),C=null,E&&(Z(E),E.settle(),E=null),P&&(P=!1,w(()=>{b.remove(),Zv(r,n),a.before(r),a.remove(),l.remove()}))}let te=ne=>e.seek(ne,!t.events);function he(ne){X=e.timeline();let fe=e.durationSeconds(),ke=AA(r,Dm),Rt=performance.now(),rt=su({scene:r,durationSeconds:fe,fps:e.fps,seek:te,onStep:(xn,Sn)=>ke.sample(xn,Sn,xn/Sn*fe)});te(ne),ae=ke.result(),N=ke.facesNow,y=rt.movers,x=rt.pads,j=rt.translationOnly,v=au(r,rt.dynamic),B=Math.round(performance.now()-Rt)}function Ee(ne,fe){return v?lu({movers:y,reader:v,seek:te,t:ne,reads:fe,shutterSeconds:t.shutterDeg/360/e.fps,taps:t.samples,pads:x,frameW:o,frameH:i}):{els:[],frames:[]}}let z=()=>{d.reset(),d.drawElementImage(r,0,0)},Z=ne=>{r.removeAttribute(Qn);for(let fe of ne.els)fe.removeAttribute(Nm),fe.removeAttribute(vo)},Q=ne=>{r.setAttribute(Qn,""),ne.els.forEach((fe,ke)=>ne.kept[ke]&&fe.setAttribute(vo,""))},de=ne=>{r.removeAttribute(Qn),ne.els.forEach((fe,ke)=>{fe.removeAttribute(vo),ne.kept[ke]&&fe.setAttribute(Nm,"")})};function ge(ne=!1){let fe=E;if(!fe||R||!fe.armed)return;let ke=performance.now(),Rt=!0;try{Rt=ue(fe,ne),V=0}catch(rt){se(rt)}if(fe.ms+=performance.now()-ke,!Rt&&!R){a.requestPaint();return}F.push(W+fe.ms),F.length>600&&F.shift(),re(fe)}function se(ne){V++,$("runtime.captureMotionBlur.compose",ne),Me(ne instanceof Error?ne.message:String(ne)),D?Y():V>=yO&&_e(`capture failed ${V} times in a row`,"capture-failures",!0)}function ue(ne,fe){z();try{if(ne.phase==="sharp")return p.draw(a,m,ne.frames,ne.kept),!0;if(fe)throw new Error(`the ${ne.phase} capture did not arrive`);return ne.phase==="movers"?(p.crop(a,ne.frames,ne.kept),de(ne),ne.phase="background",!1):(p.draw(a,m,ne.frames,ne.kept),!0)}finally{d.reset()}}function re(ne){Z(ne),E===ne&&(E=null),ne.settle();let fe=C;C=null,fe&&!R?kr(fe.t,fe.engineMode).then(fe.release):fe?.release()}let Be=()=>ge();function Me(ne){M++,M%xO===1&&globalThis.console.info(`[motion-blur] capture failed (${M} so far): ${ne}`)}function we(ne){Me(`no paint within ${ew} ms`),Y(),re(ne)}a.addEventListener("paint",Be);function _e(ne,fe,ke=!1){R||(R=ne,U=fe,T=ke,globalThis.console.warn(`[motion-blur] off: ${ne}`),Tt())}function Tt(){a.removeEventListener("paint",Be),Y()}function va(){!R||T||(R=null,U=null,v=null,a.addEventListener("paint",Be))}function Fo(){R&&e.timeline()!==X&&va()}function Po(ne,fe){if(Fo(),R)return Promise.resolve();if(fe&&(D=!0),!D&&document.visibilityState==="hidden")return Y(),Promise.resolve();if(E&&!fe){let ke=C;return new Promise(Rt=>{C={t:ne,engineMode:fe,release:()=>{ke?.release(),Rt()}}})}return kr(ne,fe)}function Tu(){let ne=uu();if(ne!==f){f=ne;for(let fe of[a,l])fe.width=Math.max(1,Math.round(o*f)),fe.height=Math.max(1,Math.round(i*f));p=Mm(o,i,f)}}function Aa(){return R?{code:U??"capture-failures",reason:R}:t.tier==="auto"&&v&&j&&_O()?{code:"translation-only",reason:"every mover only translates, which the filter tier draws as well and far cheaper"}:null}function wa(ne){return(!v||e.timeline()!==X)&&he(ne),ae&&_e(ae.reason,ae.code),R!==null}function Ru(ne){return Y(),M++,I.has(ne.code)||(I.add(ne.code),globalThis.console.info(`[motion-blur] sharp frame: ${ne.code} appeared after a clean scan`)),Promise.resolve()}function kr(ne,fe){try{if(Tu(),wa(ne)||Aa())return Promise.resolve();if(y.length===0)return Y(),Promise.resolve();let ke=nu(r,{isAccelerated:Dm,backface:N()});if(ke)return Ru(ke);L();let Rt=performance.now(),rt=Ee(ne,fe?bO:gO),xn=p.plan(rt.frames);return W=performance.now()-Rt,E&&re(E),new Promise(Sn=>{let Do=++H,Ke,xt=()=>{Ke=setTimeout(()=>{E?.seq===Do?we(E):Sn()},ew)};E={seq:Do,els:rt.els,frames:rt.frames,kept:xn,phase:xn.some(Boolean)?"movers":"sharp",armed:!fe,startTimer:xt,ms:0,settle:()=>{clearTimeout(Ke),Sn()}},E.phase==="movers"&&!fe&&Q(E),!fe&&(xt(),a.requestPaint())})}catch(ke){return $("runtime.captureMotionBlur.paint",ke),_e(ke instanceof Error?ke.message:String(ke),"capture-failures",!0),Promise.resolve()}}function nt(){let ne=F.length?F.reduce((fe,ke)=>fe+ke,0)/F.length:0;return{state:R?"off":"on",tier:R?null:"capture",reason:R,reasonCode:U,movers:y.length,moverNames:y.map(vO),scanMs:B,shutterDeg:t.shutterDeg,frames:F.length,meanMs:Math.round(ne*10)/10,failures:V,failedFrames:M}}function _a(){return Fo(),R||wa(e.now()),nt()}return{root:r,paint:Po,probe:_a,rest:()=>D?!1:(Y(),!0),arm:()=>{!E||E.armed||(E.armed=!0,E.phase==="movers"&&Q(E),E.startTimer(),a.requestPaint())},finish:()=>{E&&(E.armed=!0),ge(!0)},teardown:Tt,suspend:Y,handOff:Aa,report:nt,busy:()=>E!==null,rediscover:()=>{v=null,va()}}}var Le=null,Im=null,Om=null,cu=!1,Gm=!0,_O=()=>Gm,rw=!1,Fm=null,Pm=null;function ow(e){let t=SO(e.root),n=window;if(Le&&(Le.root!==e.root||!t)&&(Le.teardown(),Le=null,delete n.__hfMotionBlur),!!t){if(Le&&cu&&(Le.teardown(),Le=null,cu=!1),Le){Le.rediscover();return}Im=e,Om=t,TO(e,t,n),kO(n,t)}}var CO={code:"tier-attribute",reason:'data-motion-blur-tier="filter"'};function TO(e,t,n){let r=xo(),o=EO(e.root),i=ZA({tier:t.tier,form:r!==null,defect:o,fallback:Gm});i==="filter"?RO(e,t,t.tier==="filter"?CO:o):i==="capture"&&r?Le=wO(e,t,r):MO(n,t,o)}function RO(e,t,n){let r=n??{code:"unsupported-browser",reason:"html-in-canvas (drawElementImage) is unavailable in this browser"};Le=Lm(e,t,r),cu=!0,globalThis.console.info(`[motion-blur] filter fallback: ${r.reason} (Chrome ${wm()??"unknown"})`)}function MO(e,t,n){globalThis.console.info(`[motion-blur] off: ${n?.reason??null} (Chrome ${wm()??"unknown"})`);let r=()=>Hm(t,n);e.__hfMotionBlur={report:r,probe:r,suspend:lw}}function Hm(e,t){return{state:"off",tier:null,reason:t?.reason??null,reasonCode:t?.code??null,movers:0,moverNames:[],scanMs:0,shutterDeg:e.shutterDeg,frames:0,meanMs:0,failures:0,failedFrames:0}}function kO(e,t){Le&&(e.__hfMotionBlur={report:()=>Le?.report()??Hm(t,null),probe:()=>(Le?.probe(),iw(),Le?.probe()??Hm(t,null)),suspend:lw})}function iw(){let e=Le?.handOff?.();!Gm||!Le||!e||!Im||!Om||(Le.teardown(),Le=Lm(Im,Om,e),cu=!0,globalThis.console.info(`[motion-blur] filter fallback: ${e.reason}`))}function Ao(e,t){if(!Le||rw)return null;let n=t?.engineMode===!0;if(!n&&!t?.playing&&Le.rest())return null;let r=Le.paint(e,n);if(Le.handOff?.()){if(iw(),!n&&!t?.playing&&Le.rest())return null;r=Le.paint(e,n)}return n&&Le.busy()&&LO(),r}function aw(){return Le?.busy()??!1}function sw(){Le?.arm()}function LO(){let e=window,t=e.__hf_page_composite_resolve;t!==Pm&&(Fm=typeof t=="function"?t:null,Pm=()=>(Fm&&Fm(),Le?.finish(),e.__hf_page_composite_pending=!1,!0),e.__hf_page_composite_resolve=Pm),e.__hf_page_composite_pending=!0}function lw(){rw=!0,Le?.suspend()}var NO=500,FO=33,PO=3,du=class{constructor(t){Se(this,"_baseTime",0);Se(this,"_playStartMs",null);Se(this,"_rate",1);Se(this,"_duration",1/0);Se(this,"_playStart",0);Se(this,"_playEnd",1/0);Se(this,"_playHold",1/0);Se(this,"_nowMs");Se(this,"_audioSource",null);Se(this,"_lastReadMs",null);Se(this,"_lastNow",0);this._baseTime=t?.initialTime??0,this._rate=t?.rate??1,this._duration=t?.duration??1/0,this._nowMs=t?.nowMs??(()=>performance.now())}now(){if(this._playStartMs===null)return this._baseTime;if(this._audioSource){let r=null;if("currentTimeSeconds"in this._audioSource?r=this._audioSource.currentTimeSeconds:r=this._elementTimeNeverBehind(this._audioSource),r!==null){let o=Math.min(r,this.getEnd());return this._baseTime=Math.max(0,o),this._playStartMs=this._nowMs(),this._lastReadMs=null,this._lastNow=this._baseTime,this._baseTime}}this._applyStallCorrection();let t=(this._nowMs()-this._playStartMs)/1e3,n=this._baseTime+t*this._rate;return this._lastNow=Math.max(0,Math.min(n,this.getEnd())),this._lastNow}_elementTimeNeverBehind(t){let{el:n,compositionStart:r,mediaStart:o,rate:i}=t;if(n.paused||!Number.isFinite(n.currentTime))return null;if(n.seeking)return this._lastNow;let a=i??1,l=an(a,n.currentTime-o)+r;return l>=this._lastNow?l:this._heldTimeWhenBehind(n,this._lastNow-l,a)}_heldTimeWhenBehind(t,n,r){return t.loop&&n>an(r,t.duration)/2?null:t.readyState<PO||n<=.5?this._lastNow:null}_applyStallCorrection(){if(this._playStartMs===null)return;let t=this._nowMs();if(this._lastReadMs!==null){let n=t-this._lastReadMs;n>NO&&(this._playStartMs+=n-FO)}this._lastReadMs=t}play(){return this._playStartMs!==null||this._baseTime>=this.getEnd()?!1:(this._playStartMs=this._nowMs(),this._lastNow=this._baseTime,this._lastReadMs=null,!0)}pause(){return this._playStartMs===null?!1:(this._baseTime=this.now(),this._playStartMs=null,!0)}seek(t){let n=Number.isFinite(this._duration)?Math.max(0,Math.min(t,this._duration)):Math.max(0,t);this._baseTime=n,this._lastNow=n,this._playStartMs!==null&&(this._playStartMs=this._nowMs(),this._lastReadMs=null)}isPlaying(){return this._playStartMs!==null}setRate(t){let n=Number.isFinite(t)&&t>0?Math.max(.1,Math.min(5,t)):1;this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs(),this._lastReadMs=null),this._rate=n}getRate(){return this._rate}setDuration(t){this._duration=Number.isFinite(t)&&t>0?t:1/0,this._baseTime>this._duration&&(this._baseTime=this._duration)}getDuration(){return this._duration}setPlayRange(t,n,r){this._playStart=Number.isFinite(t)&&t>0?t:0,this._playEnd=n!==null&&Number.isFinite(n)&&n>this._playStart?n:1/0,this._playHold=E0(this._playStart,this._playEnd,r)}getPlayStart(){return this._playStart}getEnd(){return Math.min(this._duration,this._playEnd)}getStopTime(){return this._playEnd<this._duration?this._playHold:this.getEnd()}attachAudioSource(t){this._audioSource=t}detachAudioSource(){this._audioSource&&this._playStartMs!==null&&(this._baseTime=this.now(),this._playStartMs=this._nowMs(),this._lastReadMs=null),this._audioSource=null}audioElement(){return this._audioSource&&"el"in this._audioSource?this._audioSource.el:null}hasAudioSource(){return this._audioSource!==null}getSource(){if(this._audioSource&&this._playStartMs!==null){if("currentTimeSeconds"in this._audioSource)return"audio";let{el:t}=this._audioSource;if(!t.paused&&Number.isFinite(t.currentTime))return"audio"}return"monotonic"}snapshot(){return{time:this.now(),playing:this.isPlaying(),rate:this._rate,duration:this._duration,source:this.getSource()}}reachedEnd(){let t=this.now();return t>=this.getEnd()||this._playStartMs===null&&t>=this.getStopTime()}};var DO=100,IO=8,OO=4096,Bm=e=>e;function HO(e,t,n){return!Lc(e)&&t==="linear"&&!n}function GO(e){let t=Math.ceil(e*DO);return Math.min(OO,Math.max(IO,t))}function BO(e,t,n,r,o){let{scheduledAt:i,elapsed:a,rate:l}=r,s=o??Bm,c=E=>i+(E-a)/l,d=e.points[t],m=e.points[t+1],f=c(m.t);if(f<=i)return null;let p=Math.max(i,c(d.t)),b=f-p;if(b<=0)return null;if(HO(d,n,o))return{kind:"ramp",time:f,value:s(m.v)};let y=GO(b),x=r0(e,Math.max(d.t,a),m.t,y,n),v=new Float32Array(y);for(let E=0;E<y;E+=1)v[E]=s(x[E]??0);return{kind:"curve",time:p,duration:b,values:v}}function UO(e,t,n,r){let o=[];for(let a=0;a+1<e.points.length;a+=1){let l=BO(e,a,t,n,r);l&&o.push(l)}let i=o[0];return i?.kind==="curve"&&i.time<=n.scheduledAt||o.unshift({kind:"set",time:n.scheduledAt,value:(r??Bm)(Wt(e,n.elapsed,t))}),o}function WO(e,t){e.cancelScheduledValues(0);for(let n of t)n.kind==="set"?e.setValueAtTime(n.value,n.time):n.kind==="ramp"?e.linearRampToValueAtTime(n.value,n.time):(e.setValueAtTime(n.values[0]??0,n.time),e.linearRampToValueAtTime(n.values[n.values.length-1]??0,n.time+n.duration))}function VO(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{WO(e,t);return}}function wo(e){for(let t of e)t.param.cancelScheduledValues(0)}function _o(e,t){for(let n of e)typeof n.param.cancelAndHoldAtTime=="function"?n.param.cancelAndHoldAtTime(t):n.param.cancelScheduledValues(t)}function Um(e,t,n,r){if(t.points.length!==0)for(let o of e){if(wo([o]),n0(t)){let i=(o.map??Bm)(t.points[0].v);o.param.setValueAtTime(i,r.scheduledAt);continue}VO(o.param,UO(t,n,r,o.map))}}function uw(e,t,n,r,o){let i=new Map(n.filter(l=>l.id).map(l=>[l.id,l.handle])),a=[];for(let l of e.lanes){let s=ii(l.target);if(!s)continue;let c=s.kind==="preset"?o?.[s.presetId]:s.kind==="fx"?i.get(s.nodeId)?.automation?.[s.param]:void 0;if(!c||c.length===0)continue;let d=Nc(l.target,t);d&&(Um(c,l,d.scale,r),a.push(...c))}return a}function cw(e){return e.lanes.find(t=>t.target===Wr)??null}var dw=`
|
|
647
647
|
const TP_OS = 4;
|
|
648
648
|
const TP_HALF = 64;
|
|
649
649
|
const TP_BRANCH = 33;
|
|
@@ -789,7 +789,7 @@ class HfTruePeak extends AudioWorkletProcessor {
|
|
|
789
789
|
}
|
|
790
790
|
}
|
|
791
791
|
registerProcessor("hf-truepeak", HfTruePeak);
|
|
792
|
-
`;var
|
|
792
|
+
`;var $O=`
|
|
793
793
|
const dbToLin = (db) => Math.pow(10, db / 20);
|
|
794
794
|
|
|
795
795
|
/**
|
|
@@ -1132,12 +1132,12 @@ class HfPitchshift extends AudioWorkletProcessor {
|
|
|
1132
1132
|
}
|
|
1133
1133
|
}
|
|
1134
1134
|
registerProcessor("hf-pitchshift", HfPitchshift);
|
|
1135
|
-
`+aw,Bm=new WeakMap;function Um(e){return sw.has(e)}var sw=new WeakSet;function Wm(e){let t=Bm.get(e);return t||(t=(async()=>{if(!e.audioWorklet)throw new Error("AudioWorklet is unavailable: the page needs a secure context (https, localhost or file://)");let n=`data:text/javascript;base64,${btoa(String.fromCharCode(...new TextEncoder().encode(GO)))}`;await e.audioWorklet.addModule(n),sw.add(e)})().catch(n=>{throw Bm.delete(e),n}),Bm.set(e,t)),t}function BO(e,t,n){let r=.6+Math.max(0,Math.min(1,t))*2.6,o=Math.max(1,Math.floor(e*r)),i=new Float32Array(o),a=Math.round(t*1e3)*2654435761+Math.round(n*1e3)*40503>>>0,l=()=>(a=a*1664525+1013904223>>>0,a/4294967295*2-1),s=Math.max(.001,1-Math.max(0,Math.min(1,n))),c=0,d=0;for(let f=0;f<o;f++){c+=s*(l()-c);let p=c*Math.pow(1-f/o,2.5);i[f]=p,d+=p*p}let m=Math.sqrt(d);if(m>0)for(let f=0;f<o;f++)i[f]=(i[f]??0)/m;return i}var Pe=e=>typeof e=="number"?e:Number(e??0),Vm=e=>e/1e3;function dw(e,t,n,r){let o=Math.max(1,Math.round(e.sampleRate)),i=e.createBuffer(1,o,e.sampleRate),a=i.getChannelData(0);for(let c=0;c<o;c++){let d=c/o;a[c]=t==="sine"?Math.sin(2*Math.PI*d):4*Math.abs((d+.75)%1-.5)-1}let l=e.createBufferSource();l.buffer=i,l.loop=!0,l.playbackRate.value=n;let s=(r*n%1+1)%1*(o/e.sampleRate);return l.start(typeof e.currentTime=="number"?e.currentTime:0,s),l}function fw(e){try{e.stop()}catch{}e.disconnect()}function $m(e,t){return[{param:e},{param:t,map:n=>1-n}]}function mw(e,t,n){e.gain.value=n,t.gain.value=1-n}function qm(e,t,n){return{input:e,output:e,update:t,automation:n,dispose:()=>e.disconnect()}}var UO=new Set(["peaking","highpass","lowpass"]),lw=e=>Math.pow(10,e/20),WO=(e,t)=>{let n=e.createGain(),r=o=>{n.gain.value=lw(Pe(o.gain))};return r(t),qm(n,r,{gain:[{param:n.gain,map:lw}]})};function ma(e,t){return(n,r)=>{let o=n.createBiquadFilter();o.type=e;let i=a=>{o.frequency.value=Pe(a.frequency),a.q!==void 0&&(o.Q.value=Pe(a.q)),t&&(o.gain.value=Pe(a.gain))};return i(r),qm(o,i,{frequency:[{param:o.frequency}],...UO.has(e)?{q:[{param:o.Q}]}:{},...t?{gain:[{param:o.gain}]}:{}})}}function VO(e){return(t,n)=>{let r=Math.tan(Math.PI*Pe(n.frequency)/t.sampleRate),o=e==="highpass"?t.createIIRFilter([1/(1+r),-1/(1+r)],[1,(r-1)/(r+1)]):t.createIIRFilter([r/(1+r),r/(1+r)],[1,(r-1)/(r+1)]);return qm(o,()=>{})}}function Co(e,t=!1){return(n,r,o)=>{let i=new AudioWorkletNode(n,e,{processorOptions:{...r,__hfElapsed:o}});return{input:i,output:i,update:a=>i.port.postMessage({...a}),...t?{reset:()=>i.port.postMessage({__hfReset:!0})}:{},dispose:()=>{i.port.postMessage({__hfDispose:!0}),i.disconnect()}}}}var $O={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))},qO=(e,t)=>{let n=e.createWaveShaper(),r=e.createGain(),o=e.createGain();r.connect(n).connect(o);let i=a=>{let l=$O[String(a.type)]??Math.tanh,s=Math.pow(10,Pe(a.threshold)/20),c=8192,d=new Float32Array(c);for(let m=0;m<c;m++){let f=m/(c-1)*2-1;d[m]=l(f/Math.max(1e-6,s))*s}n.curve=d,n.oversample=Pe(a.oversample)>=4?"4x":Pe(a.oversample)>=2?"2x":"none",o.gain.value=Math.pow(10,Pe(a.output)/20)};return i(t),{input:r,output:o,update:i,automation:{output:[{param:o.gain,map:a=>Math.pow(10,a/20)}]},dispose:()=>{r.disconnect(),n.disconnect(),o.disconnect()}}},zO=(e,t)=>{let n=e.createGain(),r=e.createGain(),o=e.createDelay(5),i=e.createGain(),a=e.createGain(),l=e.createGain();n.connect(o),o.connect(i),i.connect(o),o.connect(a).connect(r),n.connect(l).connect(r);let s=c=>{o.delayTime.value=Math.min(5,Pe(c.time)/1e3),i.gain.value=Pe(c.feedback),mw(a,l,Pe(c.mix))};return s(t),{input:n,output:r,update:s,automation:{time:[{param:o.delayTime,map:c=>Math.min(5,Vm(c))}],feedback:[{param:i.gain}],mix:$m(a.gain,l.gain)},dispose:()=>[n,r,o,i,a,l].forEach(c=>c.disconnect())}},jO=(e,t,n)=>{let r=e.createGain(),o=e.createGain(),i=e.createDelay(.5),a=dw(e,"sine",Pe(t.speed),n),l=e.createGain(),s=e.createGain(),c=e.createGain();a.connect(l).connect(i.delayTime),r.connect(i).connect(s).connect(o),r.connect(c).connect(o);let d=m=>{i.delayTime.value=Pe(m.delay)/1e3,l.gain.value=Pe(m.depth)/1e3,a.playbackRate.value=Pe(m.speed),mw(s,c,Pe(m.mix))};return d(t),{input:r,output:o,update:d,automation:{delay:[{param:i.delayTime,map:Vm}],depth:[{param:l.gain,map:Vm}],speed:[{param:a.playbackRate}],mix:$m(s.gain,c.gain)},dispose:()=>{fw(a),[r,o,i,l,s,c].forEach(m=>m.disconnect())}}},KO=6,YO=(e,t,n)=>{let r=e.createGain(),o=e.createGain(),i=e.createGain(),a=e.createGain(),l=dw(e,String(t.type)==="1"?"sine":"triangle",Pe(t.speed),n),s=e.createGain(),c=e.createGain(),d=e.createGain(),m=[];r.connect(i);let f=i;for(let b=0;b<KO;b++){let y=e.createBiquadFilter();y.type="allpass",y.Q.value=.7071,s.connect(y.frequency),f.connect(y),f=y,m.push(y)}l.connect(s),f.connect(c).connect(a),i.connect(d).connect(a),a.connect(o);let p=b=>{let y=1e3/Math.max(.1,Pe(b.delay));for(let x of m)x.frequency.value=y;s.gain.value=y*Pe(b.decay),l.playbackRate.value=Pe(b.speed),i.gain.value=Pe(b.in_gain),a.gain.value=Pe(b.out_gain),c.gain.value=1,d.gain.value=1};return p(t),{input:r,output:o,update:p,automation:{speed:[{param:l.playbackRate}],in_gain:[{param:i.gain}],out_gain:[{param:a.gain}]},dispose:()=>{fw(l),[r,o,i,a,s,c,d,...m].forEach(b=>b.disconnect())}}},XO=(e,t)=>{let n=e.createGain(),r=e.createGain(),o=e.createConvolver(),i=e.createGain(),a=e.createGain();o.normalize=!1,n.connect(o).connect(i).connect(r),n.connect(a).connect(r);let l="",s=c=>{let d=`${Pe(c.size)}:${Pe(c.damping)}`;if(d!==l){let m=BO(e.sampleRate,Pe(c.size),Pe(c.damping)),f=e.createBuffer(1,m.length,e.sampleRate);f.getChannelData(0).set(m),o.buffer=f,l=d}i.gain.value=Pe(c.wet),a.gain.value=Pe(c.dry)};return s(t),{input:n,output:r,update:s,automation:{wet:[{param:i.gain}],dry:[{param:a.gain}]},dispose:()=>[n,r,o,i,a].forEach(c=>c.disconnect())}},JO={"gain-node":WO,"biquad-peaking":ma("peaking",!0),"biquad-lowshelf":ma("lowshelf",!0),"biquad-highshelf":ma("highshelf",!0),"biquad-highpass":ma("highpass",!1),"biquad-lowpass":ma("lowpass",!1),"worklet-compressor":Co("hf-compressor"),"worklet-limiter":Co("hf-limiter"),"worklet-truepeak":Co("hf-truepeak",!0),"worklet-gate":Co("hf-gate"),"worklet-bitcrush":Co("hf-bitcrush"),"worklet-pitchshift":Co("hf-pitchshift"),waveshaper:qO,"delay-feedback":zO,"chorus-lfo":jO,"allpass-phaser":YO,convolver:XO};function pw(e){return e.nodes.some(t=>ti(t.type)?.web.startsWith("worklet-")??!1)}function QO(e,t,n,r=0){let o=ti(t);if(!o)throw new Error(`Unknown effect type: ${t}`);let i=ni(t,n);if((t==="highpass"||t==="lowpass")&&String(i.poles)==="1")return VO(t)(e,i,r);let a=JO[o.web];if(!a)throw new Error(`No Web Audio builder for ${o.web}`);return a(e,i,r)}function uw(e){let t=[];for(let n of e){let r=n.fromPreset,o=t.at(-1);if(o&&o.preset===r)o.nodes.push(n);else{let i=typeof n.presetAmount=="number"?n.presetAmount:1;t.push({...r?{preset:r}:{},amount:Math.min(1,Math.max(0,i)),nodes:[n]})}}return t}function cw(e){return ri(e).map(t=>{let n=ni(t.type,t.params),r=n.poles!==void 0?`:${n.poles}`:"",o=String(n.poles)==="1"?`@${n.frequency}`:"",i=t.type==="phaser"?`~${n.type}`:"",a=t.fromPreset?`%${t.fromPreset}`:"",l=t.type==="truepeak"?`^${n.lookahead}`:"";return`${t.type}${r}${o}${i}${l}${a}`}).join("|")}function hw(e,t,n=0){var m;let r=e.createGain(),o=e.createGain(),i=[],a=[],l=uw(ri(t)),s=r;for(let f of l){let p=null;if(f.preset){let b=e.createGain(),y=e.createGain(),x=e.createGain(),v=e.createGain();x.gain.value=f.amount,y.gain.value=1-f.amount,s.connect(b),b.connect(y).connect(v),p={entry:b,wet:x,dry:y,join:v},s=b}for(let b of f.nodes){let y=QO(e,b.type,b.params??{},n);s.connect(y.input),s=y.output,i.push({...b.id?{id:b.id}:{},type:b.type,handle:y})}p&&f.preset&&(s.connect(p.wet).connect(p.join),a.push({id:f.preset,...p}),s=p.join)}s.connect(o);let c=cw(t),d={};for(let f of a)(d[m=f.id]??(d[m]=[])).push(...$m(f.wet.gain,f.dry.gain));return{input:r,output:o,presets:d,nodes:i,update(f){if(cw(f)!==c)return!1;ri(f).forEach((b,y)=>{let x=i[y];x&&(x.handle.update(ni(b.type,b.params)),b.id===void 0?delete x.id:x.id=b.id)});let p=0;for(let b of uw(ri(f))){if(!b.preset)continue;let y=a[p++];!y||y.id!==b.preset||(y.wet.gain.value=b.amount,y.dry.gain.value=1-b.amount)}return!0},reset(){for(let{handle:f}of i)f.reset?.()},dispose(){for(let{handle:f}of i)f.dispose();for(let{entry:f,wet:p,dry:b,join:y}of a)f.disconnect(),p.disconnect(),b.disconnect(),y.disconnect();r.disconnect(),o.disconnect()}}}var gw={version:1,nodes:[]},bw={version:1,lanes:[]};function yw(e,t,n=on){let r=(n&&typeof e.getAttribute=="function"?e.getAttribute(n):null)??"";if(!r)return bw;try{return Zg(Ss(r),t)}catch{return bw}}function To(e){let t=(typeof e.getAttribute=="function"?e.getAttribute(Pn):null)??"";if(!t)return{chain:gw,raw:""};try{return{chain:zg(t),raw:t}}catch{return{chain:gw,raw:""}}}function xw(e){return yw(e,To(e).chain)}function zm(e,t,n){let r=iw(t);if(!r)return[];let o=Yg(r,e.gain?.()??1,e.gainAhead);return Gm([{param:e.param}],{...r,points:o},xs.scale,n),[{param:e.param}]}function ZO(e,t){wo([e]),e.param.setValueAtTime(e.gainAhead?1:Ve(e.gain?.()??1),t.scheduledAt)}function du(e,t,n,r,o,i={automation:on},a){let{chain:l}=To(t),s=null,c=[],d=!1,m=0,f=()=>{try{s?(n.disconnect(s.input),s.output.disconnect(r),s.dispose()):n.disconnect(r)}catch{}s=null},p=(M,R)=>{if(M.nodes.length===0){n.connect(r);return}if(pw(M)&&!Um(e)){n.connect(r);let U=++m;Wm(e).then(()=>{d||U!==m||E(To(t).chain)}).catch(()=>{});return}try{let U=hw(e,M,R);n.connect(U.input),U.output.connect(r),s=U}catch{n.connect(r)}},b=(M,R)=>{if(!R){c=[];return}let U=yw(t,M,i.automation),T=s?ow(U,M,s.nodes,R,s.presets):[],F=a?zm(a,U,R):[];a&&F.length===0&&c.some(W=>W.param===a.param)&&ZO(a,R),c=[...T,...F]},y=o?{...o}:null;p(l,y?.elapsed??0),b(l,y);let x=()=>{if(!y)return null;let M=typeof e.currentTime=="number"?e.currentTime:y.scheduledAt;return{scheduledAt:M,elapsed:y.elapsed+(M-y.scheduledAt)*y.rate,rate:y.rate}},v=M=>{let R=x();R&&(_o(c,R.scheduledAt),b(M,R))},E=M=>{let R=x();_o(c,R?.scheduledAt??0),f(),p(M,R?.elapsed??0),b(M,R)},C=null,H=t;typeof MutationObserver<"u"&&typeof H?.nodeType=="number"&&(C=new MutationObserver(()=>{let M=To(t);c.length>0&&wo(c),!s||!s.update(M.chain)?E(M.chain):v(M.chain)}),C.observe(H,{attributes:!0,attributeFilter:[Pn,...i.automation?[i.automation]:[],...a?.gain?["data-volume"]:[]]}));let V=M=>{if(d)return;let R=x();R&&_o(c,R.scheduledAt),y={...M},b(To(t).chain,y)};return{reanchor:M=>{d||(s?.reset(),V(M))},retime:V,setRate:M=>{let R=x();d||!R||!Number.isFinite(M)||M<=0||M===R.rate||(y={...R,rate:M},_o(c,R.scheduledAt),b(To(t).chain,y))},dispose:()=>{d=!0,C?.disconnect(),c.length>0&&_o(c,typeof e.currentTime=="number"?e.currentTime:0),s?.dispose()}}}function Sw(e,t){e.getFloatTimeDomainData(t);let n=0;for(let r=0;r<t.length;r++)n=Math.max(n,Math.abs(t[r]??0));return n}function jm(e,t){let n=e.createGain();n.channelCount=2,n.channelCountMode="explicit";let r=e.createChannelSplitter(2),o=e.createAnalyser(),i=e.createAnalyser();o.fftSize=i.fftSize=2048,t.connect(n),n.connect(r),r.connect(o,0),r.connect(i,1);let a=new Float32Array(new ArrayBuffer(2048*4)),l=new Float32Array(new ArrayBuffer(2048*4));return{read:()=>({l:Sw(o,a),r:Sw(i,l)}),dispose:()=>{try{t.disconnect(n),n.disconnect(),r.disconnect()}catch{}}}}var Ew="runtime_web_audio_bypass";function Km(e,t){return typeof e.getAttribute=="function"?e.getAttribute(t):null}function pa(e,t){return Km(e,t)!==null}function eH(e){return pa(e,"crossorigin")?!0:e.crossOrigin!=null}function tH(e){return typeof e.baseURI=="string"&&e.baseURI?e.baseURI:typeof document<"u"?document.baseURI:""}function nH(e){let t=typeof e.currentSrc=="string"?e.currentSrc:"";if(t)return[t];let n=Km(e,"src");if(n)return[n];if(typeof e.querySelectorAll!="function")return[];let r=[];for(let o of Array.from(e.querySelectorAll("source"))){let i=o.getAttribute("src");i&&r.push(i)}return r}function rH(e,t){let n;try{n=new URL(e,tH(t))}catch{return null}return n.protocol!=="http:"&&n.protocol!=="https:"?null:n}function oH(){return typeof window.origin=="string"?window.origin:window.location.origin}function iH(e,t){if(typeof window>"u")return null;let n=rH(e,t);if(!n)return null;let r=oH(),o=r==="null";return!o&&n.origin===r||eH(t)?null:o?"opaque_document_origin":"cross_origin_no_cors"}function Aw(e){return(typeof e.currentSrc=="string"?e.currentSrc:"")?!0:pa(e,"src")}function Ro(e){for(let t of nH(e)){let n=iH(t,e);if(n)return{kind:"decode-only",reason:n,asset:t}}return{kind:"web-audio"}}function aH(e){let t=[];pa(e,Pn)&&t.push("fx-chain"),pa(e,on)&&t.push("automation"),pa(e,Xs)&&t.push("audio-group");let n=Number.parseFloat(Km(e,"data-volume")??"");return Number.isFinite(n)&&n>1&&t.push("above-unity-gain"),t}function sH(){return typeof window<"u"&&!!window.__HF_EXPORT_RENDER_SEEK_CONFIG}var vw=new WeakSet,lH={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"},uH={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 Mo(e,t){if(t.kind==="web-audio"||sH()||vw.has(e))return;let n=aH(e);vw.add(e);let r={asset:t.asset,reason:t.reason,lostProcessing:n,note:lH[t.reason]};Re({source:"hf-preview",type:"diagnostic",code:Ew,details:r});let o=n.length>0?` Native playback cannot reproduce: ${n.join(", ")}. Fix: ${uH[t.reason]}`:"";globalThis.console.info(`[hyperframes] ${Ew}: "${t.asset}" (${t.reason}): Web Audio capture withheld; the track plays through native HTMLMediaElement output.${o}`)}function fu(e){return new URL(e,document.baseURI).href}var cH={automation:null};function Ym(e){return!Number.isFinite(e)||e<=0?1:e}function ww(e){return Ve(e)}function dH(e,t){t||e.paused||!ts().__hfDebug||globalThis.console.debug("[hyperframes] webAudioTransport claimed fallback-playing element:",e.currentSrc||e.getAttribute("src")||"")}function fH(e,t){let{elapsed:n,mediaStart:r,scheduledAt:o,globalRate:i,mediaRate:a,clipDuration:l,headCut:s}=t,c=Number.isFinite(l)&&l>0,d=Math.max(n,s,0),m=(l-d)*a;if(c&&m<=0)return!1;let f=d>n?o+(d-n)/i:0;return c?e.start(f,d*a+r,m):e.start(f,d*a+r),!0}function mH(e,t,n,r,o){let i=bd(Ks(t),o);if(i.fadeIn<=0&&i.fadeOut<=0||i.fadeOut>0&&!Number.isFinite(o))return null;let a=e.createGain(),l=a.gain,s=d=>Ys(d,o,i),c=d=>{let m=Math.max(r,d.elapsed),f=p=>d.scheduledAt+Math.max(0,p-d.elapsed)/d.rate;if(l.value=s(m),l.setValueAtTime(s(m),f(m)),i.fadeIn>m&&l.linearRampToValueAtTime(s(i.fadeIn),f(i.fadeIn)),i.fadeOut>0){let p=o-i.fadeOut;p>m&&p>i.fadeIn&&l.setValueAtTime(s(p),f(p)),l.linearRampToValueAtTime(0,f(o))}};return c(n),{node:a,rebook:d=>{l.cancelScheduledValues(0),c(d)}}}function _w(e,t,n,r,o,i){let a=e.createGain();a.connect(r);let l=e.createGain(),s=mH(e,t,o,i.from,i.clipDuration);return s&&n.connect(s.node),(s?.node??n).connect(l),{fx:du(e,t,l,a,o,void 0,{param:a.gain,gain:()=>Si(t),gainAhead:!0}),laneNode:a,clipGainNode:l,fades:s}}function ko(e){return e.sourceKind==="buffer"}var Cw=e=>{let t=e.currentSrc||e.getAttribute("src");if(!t)return null;try{return fu(t)}catch{return t}},Xm=.015,Tw=["seeked","error","emptied","abort"],Rw=["playing","seeked","ratechange"],pH=1e4,mu=class{constructor(){Se(this,"_ctx",null);Se(this,"_bufferCache",new Map);Se(this,"_decoding",new Map);Se(this,"_failedSrcs",new Set);Se(this,"_mediaElementSources",new WeakMap);Se(this,"_activeSources",[]);Se(this,"_masterGain",null);Se(this,"_busOut",null);Se(this,"_master",null);Se(this,"_monitorGain",null);Se(this,"_masterVolume",1);Se(this,"_masterMuted",!1);Se(this,"_groups",new Map);Se(this,"_metering",!1);Se(this,"_masterTap",null);Se(this,"_groupTaps",new Map);Se(this,"_rateAnchorCtx",0);Se(this,"_rateAnchorComp",0);Se(this,"_rate",1);Se(this,"_paused",!0);Se(this,"_playGeneration",0);Se(this,"_playingCaptured",new Set);Se(this,"_suspendPending",!1);Se(this,"_restTimer",null)}async init(){try{return this._ctx=new AudioContext,this._ctx.onstatechange=()=>this.rest(),this._masterGain=this._ctx.createGain(),this._busOut=this._ctx.createGain(),this._monitorGain=this._ctx.createGain(),this._masterGain.connect(this._busOut),this._busOut.connect(this._monitorGain),this._monitorGain.connect(this._ctx.destination),this.applyMasterGain(),this._metering&&this.attachMasterTap(),!0}catch{return!1}}async wake(){!this._ctx||this._ctx.state==="running"&&!this._suspendPending||(this._suspendPending=!1,await this._ctx.resume())}rest(){this._restTimer!==null&&clearTimeout(this._restTimer),this._restTimer=null,!(!this._ctx||this._ctx.state!=="running"||this._suspendPending)&&(this._restTimer=setTimeout(()=>{this._restTimer=null,this.suspendIfIdle()},pH))}suspendIfIdle(){for(let t of this._playingCaptured)t.paused&&this._playingCaptured.delete(t);!this._ctx||!this._paused||this._suspendPending||this._playingCaptured.size>0||(this._suspendPending=!0,this._ctx.suspend().catch(t=>{this._suspendPending=!1,$("webAudioTransport.suspend",t)}))}get context(){return this._ctx}getTime(){return!this._ctx||this._paused?-1:this._rateAnchorComp+(this._ctx.currentTime-this._rateAnchorCtx)*this._rate}releaseDecodedExcept(t){let n=new Set(t.map(Cw));for(let r of[...this._bufferCache.keys()])n.has(r)||this._bufferCache.delete(r)}decodeAudioElement(t){let n=Cw(t);if(!n)return Promise.resolve(null);let r=this._decoding.get(n);if(r)return r;let o=this.fetchAndDecode(n).finally(()=>this._decoding.delete(n));return this._decoding.set(n,o),o}async fetchAndDecode(t){if(this._bufferCache.has(t))return this._bufferCache.get(t);if(this._failedSrcs.has(t)||!this._ctx)return null;let n;try{let r=await fetch(t,{cache:"no-store"});if(!r.ok)return $("webAudioTransport.fetch",new Error(`${r.status} ${t}`)),null;n=await r.arrayBuffer()}catch(r){return $("webAudioTransport.fetch",r),null}try{let r=await this._ctx.decodeAudioData(n);return this._bufferCache.set(t,r),r}catch(r){return this._failedSrcs.add(t),$("webAudioTransport.decode",r),null}}startGeneration(){return this._playGeneration+=1,this._playGeneration}currentGeneration(){return this._playGeneration}acquireMediaElementSource(t){let n=this._mediaElementSources.get(t);if(n){let a=Ro(t);if(a.kind!=="web-audio"){try{n.disconnect()}catch{}return this._mediaElementSources.delete(t),Mo(t,a),null}return n}if(!this._ctx)return null;let r=Ro(t);if(r.kind!=="web-audio")return Mo(t,r),null;let o=this._ctx.createMediaElementSource(t);this._mediaElementSources.set(t,o),t.paused||this._playingCaptured.add(t),t.addEventListener("play",()=>{this._playingCaptured.add(t),this.wake()});let i=()=>{this._playingCaptured.delete(t),this.rest()};return t.addEventListener("pause",i),t.addEventListener("emptied",i),o}async scheduleMediaElementPlayback(t,n,r,o,i,a,l=1,s=Number.POSITIVE_INFINITY){if(!this._ctx||!this._masterGain||a!==this._playGeneration)return null;try{if(await this.wake(),a!==this._playGeneration)return null;let c=this.acquireMediaElementSource(t);if(!c)return null;c.disconnect();let d=Ym(l),m=this._ctx.createGain();m.gain.value=i;let f=this._ctx.currentTime,p=o-n,b={scheduledAt:f,elapsed:p,rate:d};m.connect(this.resolveDestination(t,f,o,d)??this._masterGain);let y=this._ctx.createGain();c.connect(y);let{fx:x,laneNode:v,clipGainNode:E,fades:C}=_w(this._ctx,t,y,m,b,{from:Math.max(p,0),clipDuration:s});this._rate=d,this._rateAnchorCtx=f,this._rateAnchorComp=o;let H={fx:x,fades:C,dipNode:y,el:t,sourceNode:c,sourceKind:"media-element",gainNode:m,laneNode:v,clipGainNode:E,compositionStart:n,mediaStart:r,scheduledAt:f,priorMuted:t.muted,priorVolume:t.volume,mediaPlaybackRate:mt(t),bounded:!1,unfollow:this.followElement(t,n,r,x,C)};return t.volume=1,this._activeSources.push(H),this._paused=!1,H}catch(c){return $("webAudioTransport.mediaElementSource",c),null}}followElement(t,n,r,o,i){let a=()=>{if(t.paused||!this._ctx)return;let l=Et(t),s=t.currentTime-r,c=t.duration-r;if(t.loop&&c>0){let p=Dn(l,this.getTime()-n);s+=Math.round((p-s)/c)*c}let d=an(l,s),m=t.playbackRate/ai(l,d);if(!(m>0)||!Number.isFinite(d))return;let f={scheduledAt:this._ctx.currentTime,elapsed:d,rate:m};o?.retime(f),i?.rebook(f)};for(let l of Rw)t.addEventListener(l,a);return()=>{for(let l of Rw)t.removeEventListener(l,a)}}seekUnderDip(t,n){let r=this._activeSources.find(s=>s.el===t&&s.sourceKind==="media-element"),o=this._ctx;if(!o||!r?.dipNode)return!1;if(r.dipping)return!0;r.dipping=!0;let i=r.dipNode.gain,a=s=>{let c=o.currentTime;i.cancelScheduledValues(c),i.setValueAtTime(i.value,c),i.linearRampToValueAtTime(s,c+Xm)},l=()=>{for(let s of Tw)t.removeEventListener(s,l);r.dipping=!1,a(1)};return a(0),setTimeout(()=>{if(this._activeSources.includes(r)){for(let s of Tw)t.addEventListener(s,l);try{t.currentTime=At(n+Xm*t.playbackRate)}catch(s){$("webAudioTransport.seekUnderDip",s),l()}}},Xm*1e3),!0}groupInput(t,n,r){let o=this._groups.get(t);if(o){if(o.generation!==this._playGeneration)try{o.reanchor(r),o.generation=this._playGeneration}catch(p){$("webAudioTransport.groupReanchor",p)}return o.input}if(!this._ctx||!this._masterGain)return null;let i=this._ctx.createGain(),a=this._ctx.createGain();a.connect(this._masterGain);let l=()=>yd(n,t),s=l(),c=this._ctx.createGain();c.gain.value=s?.hasAttribute("data-hidden")?0:1,c.connect(a);let d=this._ctx.createGain();d.gain.value=ww(Si(s)),d.connect(c);let m={param:d.gain,gain:()=>Si(l())},f=du(this._ctx,s??{getAttribute:()=>null},i,d,r,void 0,s?m:void 0);return this._groups.set(t,{input:i,output:a,isPresent:()=>l()!==null,fader:d,muteGain:c,fx:f,generation:this._playGeneration,reanchor:p=>{wo([{param:d.gain}]);let b=l();d.gain.value=ww(Si(b)),c.gain.value=b?.hasAttribute("data-hidden")?0:1,f?.reanchor(p),b&&b!==s&&zm(m,xw(b),p)},dispose:()=>{try{f?.dispose(),i.disconnect(),d.disconnect(),c.disconnect(),a.disconnect()}catch{}}}),this.attachGroupTap(t,a),i}startMetering(){this._metering=!0,this.attachMasterTap();for(let[t,n]of this._groups)this.attachGroupTap(t,n.output)}stopMetering(){this._metering=!1,this._masterTap?.dispose(),this._masterTap=null;for(let t of this._groupTaps.values())t.dispose();this._groupTaps.clear()}readLevels(){let t={};for(let[n,r]of this._groupTaps)this._groups.get(n)?.isPresent()&&(t[n]=r.read());return{master:this._masterTap?.read()??{l:0,r:0},groups:t}}attachMasterTap(){this._ctx&&this._masterGain&&!this._masterTap&&(this._masterTap=jm(this._ctx,this._busOut??this._masterGain))}attachGroupTap(t,n){this._metering&&this._ctx&&!this._groupTaps.has(t)&&this._groupTaps.set(t,jm(this._ctx,n))}setGroupMuted(t,n){let r=this._groups.get(t);if(r)try{r.muteGain.gain.value=n?0:1}catch(o){$("webAudioTransport.setGroupMuted",o)}}ensureMasterBus(t,n){if(!this._ctx||!this._masterGain||!this._busOut)return;if(this._master){if(this._master.generation===this._playGeneration)return;try{this._master.fx?.reanchor(n),this._master.generation=this._playGeneration}catch(i){$("webAudioTransport.masterReanchor",i)}return}let r=xd(t);if(!r)return;this._masterGain.disconnect(this._busOut);let o=du(this._ctx,r,this._masterGain,this._busOut,n,cH);this._master={fx:o,generation:this._playGeneration}}resolveDestination(t,n,r,o){if(!this._masterGain)return null;let i={scheduledAt:n,elapsed:r,rate:o};this.ensureMasterBus(t.ownerDocument,i);let a=Qs(t);return a?this.groupInput(a,t.ownerDocument,i)??this._masterGain:this._masterGain}handleSourceEnded(t,n,r,o){let i=this._activeSources.indexOf(n);if(i!==-1){this._activeSources.splice(i,1),r.muted=o;try{t.disconnect(),n.fx?.dispose(),n.fades?.node.disconnect(),n.clipGainNode.disconnect(),n.laneNode.disconnect(),n.gainNode.disconnect()}catch{}this._activeSources.length===0&&(this._paused=!0)}}async schedulePlayback(t,n,r,o,i,a,l,s=1,c=Number.POSITIVE_INFINITY,d=r){if(!this._ctx||!this._masterGain||l!==this._playGeneration)return null;try{if(await this.wake(),l!==this._playGeneration)return null;let m=i(),f=Ym(s),p=mt(t),b=f*p,y=this._ctx.createBufferSource();y.buffer=n,y.playbackRate.value=b;let x=this._ctx.createGain();x.gain.value=a;let v=m-r,E=this._ctx.currentTime,C={scheduledAt:E,elapsed:v,rate:f};x.connect(this.resolveDestination(t,E,m,f)??this._masterGain);let H=d-r,{fx:V,laneNode:M,clipGainNode:R,fades:U}=_w(this._ctx,t,y,x,C,{from:Math.max(v,H,0),clipDuration:c});if(this._rate=f,this._rateAnchorCtx=E,this._rateAnchorComp=m,!fH(y,{elapsed:v,mediaStart:o,scheduledAt:E,globalRate:f,mediaRate:p,clipDuration:c,headCut:H}))return y.disconnect(),V?.dispose(),U?.node.disconnect(),R.disconnect(),M.disconnect(),x.disconnect(),null;let T=t.muted;t.muted=!0,dH(t,T);let F={fx:V,fades:U,el:t,sourceNode:y,sourceKind:"buffer",gainNode:x,laneNode:M,clipGainNode:R,compositionStart:r,mediaStart:o,scheduledAt:E,priorMuted:T,priorVolume:t.volume,mediaPlaybackRate:p,bounded:Number.isFinite(c)&&c>0};return this._activeSources.push(F),this._paused=!1,y.addEventListener("ended",()=>this.handleSourceEnded(y,F,t,T)),F}catch(m){return $("webAudioTransport.schedule",m),null}}setRate(t){let n=Ym(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)if(ko(r))try{r.sourceNode.playbackRate.value=n*r.mediaPlaybackRate,r.fx?.setRate(n),this._ctx&&!this._paused&&r.fades?.rebook({scheduledAt:this._ctx.currentTime,elapsed:this.getTime()-r.compositionStart,rate:n})}catch(o){$("webAudioTransport.setRate",o)}return this.setBusRate(n),!0}setBusRate(t){let n=[...this._groups.values(),...this._master?[this._master]:[]];for(let r of n)try{r.fx?.setRate(t)}catch(o){$("webAudioTransport.setRate.bus",o)}}hasBoundedActiveSources(){return this._activeSources.some(t=>ko(t)&&t.bounded)}stopAll(){for(let t of this._activeSources)this.dispose(t);this._activeSources=[],this._paused=!0,this._playGeneration+=1,this.rest()}releaseDetached(){this._activeSources=this._activeSources.filter(t=>t.el.isConnected?!0:(this.dispose(t,!1),!1))}dispose(t,n=!0){t.unfollow?.();try{ko(t)&&t.sourceNode.stop(),t.sourceNode.disconnect(),t.fx?.dispose(),t.fades?.node.disconnect(),t.dipNode?.disconnect(),t.clipGainNode.disconnect(),t.laneNode.disconnect(),t.gainNode.disconnect()}catch{}ko(t)?t.el.muted=t.priorMuted:(t.el.volume=t.priorVolume,this._ctx&&n&&t.sourceNode.connect(this._ctx.destination))}setVolume(t){this._masterVolume=Math.max(0,Math.min(1,t)),this.applyMasterGain()}setElementVolume(t,n,r=1,o=n){for(let i of this._activeSources)if(i.el===t)try{i.sourceKind==="media-element"&&(i.el.volume=1),i.gainNode.gain.value=Ve(i.fades?o:n),i.clipGainNode.gain.value=Ve(r)}catch(a){$("webAudioTransport.setElementVolume",a)}}setMuted(t){this._masterMuted=t,this.applyMasterGain()}applyMasterGain(){this._monitorGain&&(this._monitorGain.gain.value=this._masterMuted?0:this._masterVolume)}ownsClock(){return!this._paused&&this._activeSources.some(ko)}ownsElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t&&ko(n))}routesElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t)}destroy(){this.stopAll(),this.stopMetering();for(let t of this._groups.values())t.dispose();if(this._groups.clear(),this._master?.fx?.dispose(),this._master=null,this._bufferCache.clear(),this._failedSrcs.clear(),this._mediaElementSources=new WeakMap,this._playingCaptured.clear(),this._suspendPending=!1,this._restTimer!==null&&clearTimeout(this._restTimer),this._restTimer=null,this._ctx)try{this._ctx.close()}catch{}this._ctx=null,this._masterGain=null,this._busOut=null,this._monitorGain=null,this._masterVolume=1,this._masterMuted=!1}};var ha="data-hf-studio-manual-edit-gesture";var Mw=`[${ha}]`;function kw(e,t){let n=e.defaultView?.MutationObserver??globalThis.MutationObserver;if(!n||!e.documentElement)return{isActive:()=>e.querySelector(Mw)!=null,observing:!1,disconnect:()=>{}};let r=new Set(e.querySelectorAll(Mw)),o=l=>{for(let s of l){let c=s.target;He(c)&&(c.hasAttribute(ha)?r.add(c):r.delete(c))}},i=l=>{l.length!==0&&(o(l),t())},a=new n(i);return a.observe(e.documentElement,{subtree:!0,attributes:!0,attributeFilter:[ha]}),{observing:!0,isActive:()=>{i(a.takeRecords());for(let l of r){if(l.isConnected&&l.hasAttribute(ha))return!0;r.delete(l)}return!1},disconnect:()=>{a.disconnect(),r.clear()}}}var gn=e=>({ok:!1,reason:e});function Jm(e,t){if(e<=0)return gn("non-positive");let n=e/t;return n<1||n>240?gn("out-of-range"):{ok:!0,value:{num:e,den:t}}}function hH(e){return Number.isFinite(e)?Number.isInteger(e)?Jm(e,1):gn("ambiguous-decimal"):gn("not-a-number")}function gH(e){let t=e.split("/");if(t.length!==2)return gn("invalid-fraction");let n=Number(t[0]),r=Number(t[1]);return!Number.isFinite(n)||!Number.isFinite(r)?gn("not-a-number"):!Number.isInteger(n)||!Number.isInteger(r)||r<=0?gn("invalid-fraction"):Jm(n,r)}function Lw(e){if(typeof e=="number")return hH(e);let t=e.trim();return t===""?gn("empty"):t.includes("/")?gH(t):/^-?\d+$/.test(t)?Jm(Number(t),1):gn(/^-?\d*\.\d+$/.test(t)?"ambiguous-decimal":"not-a-number")}var Nw=333.3333333333333,Qm=1e3*60/60;function Fw(e){return e.isPlaying&&e.hasCapturedTimeline&&e.currentTimeSeconds<2?!1:e.compositionChanged===!0?!0:e.isPlaying?e.playingPollDue===!0:Number.isInteger(e.tick)&&e.tick>0&&e.tick%60===0}var bH=/^\s*spring\(\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+))\s*\)\s*$/;function Pw(e){return Math.max(0,Math.min(1,e))}function Dw(e){let t=bH.exec(e);if(!t)return null;let n=Number(t[1]);return Number.isFinite(n)?Pw(n):null}function Iw(e,t){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let n=Pw(t),r=12-n*6,o=Math.PI*2*(1+n*1.5),i=1-Math.exp(-r)*Math.cos(o);return(1-Math.exp(-r*e)*Math.cos(o*e))/i}var yH=/^\s*wiggle\(\s*(\d+)\s*,\s*(easeOut|easeInOut|anticipate|uniform)\s*(?:,\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?)\s*)?\)\s*$/,xH=Math.PI*2;function SH(e){let t=yH.exec(e);if(!t)return null;let n=Number(t[1]);if(!Number.isSafeInteger(n)||n<1)return null;let r=t[2];if(r!=="easeOut"&&r!=="easeInOut"&&r!=="anticipate"&&r!=="uniform")return null;if(t[3]===void 0)return{wiggles:n,type:r};let o=Number(t[3]);return!Number.isFinite(o)||o<0||o>1?null:{wiggles:n,type:r,amplitude:o}}function EH(e,t,n,r){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let o=r??(n==="easeInOut"?.08:n==="uniform"?.14:n==="anticipate"?.12:.16),i=n==="easeInOut"?o*Math.sin(Math.PI*e):n==="uniform"?o:o*(1-e);return e+(n==="anticipate"?-1:1)*i*Math.sin(xH*t*e)}function Ow(e,t){let n=SH(e);if(!n)return null;let r=`${n.wiggles}:${n.type}:${n.amplitude??"default"}`,o=t?.get(r);if(o)return o;let i=a=>EH(a,n.wiggles,n.type,n.amplitude);return t?.set(r,i),i}var vH=24,Hw=e=>e>=1?1:0,AH=e=>e,pu=String.raw`([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?)`,wH=new RegExp(String.raw`^\s*M\s*0\s*,\s*0\s+C\s*${pu}\s*,\s*${pu}\s+${pu}\s*,\s*${pu}\s+1\s*,\s*1\s*$`,"i");function Gw(e,t,n){let r=1-e;return 3*r*r*e*t+3*r*e*e*n+e*e*e}function _H(e,t,n,r,o){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let i=0,a=1;for(let l=0;l<vH;l+=1){let s=(i+a)/2;Gw(s,t,r)<e?i=s:a=s}return Gw((i+a)/2,n,o)}function CH(e){let t=wH.exec(e);if(!t)return null;let n=Number(t[1]),r=Number(t[2]),o=Number(t[3]),i=Number(t[4]);return Math.min(n,o)<0||Math.max(n,o)>1?null:a=>_H(a,n,r,o,i)}function TH(e,t){if(!e.startsWith("spring("))return null;let n=Dw(e);if(n===null)return null;let r=t.get(n);if(r)return r;let o=i=>Iw(i,n);return t.set(n,o),o}function RH(e,t){if(!e.startsWith("custom(")||!e.endsWith(")"))return null;let n=e.slice(7,-1),r=t.get(n);if(r)return r;let o=CH(n);return o&&t.set(n,o),o}function Bw(e){if(e.__hfCustomEaseInstalled)return!0;let t=e.parseEase;if(!t)return!1;let n=new Map,r=new Map,o=new Map,i=s=>typeof s!="string"?null:s==="hold"?Hw:Ow(s,o)??TH(s,r)??RH(s,n),a=(s,c,d=[])=>{let m=i(s);return m||(typeof s=="string"&&/^(?:hold|spring|wiggle|custom)(?:\(|$)/.test(s.trim())&&wt("custom_ease_parse_failed",{ease:s}),t.call(c,s,...d)??AH)};e.parseEase=function(c,...d){return a(c,this,d)};let l=e.registerEase;if(typeof l=="function"){l("hold",Hw);let s=c=>{let d=m=>m;d.config=(...m)=>a(`${c}(${m.join(",")})`,e),l(c,d)};s("spring"),s("wiggle"),s("custom")}return e.__hfCustomEaseInstalled=!0,!0}var ep="first-frame",MH=3;function kH(e){let t=e.ownerDocument?.defaultView;return t&&e instanceof t.Element?!0:e instanceof Element}function LH(e){if(!kH(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 NH(e){return e.hasAttribute("data-start")||e.hasAttribute("data-track-index")}function FH(e,t,n){let r=e;for(;r;){if(NH(r)&&!Ts(r,{currentTime:0,compositionDuration:Number.POSITIVE_INFINITY,canonicalFps:30,exportRenderSeek:!1,timelineRegistry:n,resolver:t}))return!1;r=r.parentElement}return!0}function Uw(e,t,n,r){return t==="all"?!0:FH(e,n,r)}function PH(e,{scope:t="all"}={}){let n=e.defaultView,r=lt({documentRef:e,timelineRegistry:n?.__timelines,includeAuthoredTimingAttrs:!0}),o=e.querySelector(`meta[name="${ns}"]`)!==null,i=Array.from(e.querySelectorAll("video, audio")).filter(LH).filter(s=>Uw(s,o&&s.preload!=="auto"?ep:t,r,n?.__timelines??{})).filter(s=>s.readyState<MH),a=Array.from(e.querySelectorAll("img")).filter(s=>Uw(s,s.getAttribute("loading")?.toLowerCase()==="lazy"?ep:t,r,n?.__timelines??{})).filter(s=>!s.complete),l=e.fonts?.status==="loading";return{pendingMedia:i,pendingImages:a,fontsLoading:l}}function DH(e,{pendingMedia:t,pendingImages:n,fontsLoading:r},o){let i=t.map(s=>new Promise(c=>{if(s.error){c();return}let d=()=>{s.removeEventListener("canplay",d),s.removeEventListener("error",d),o.removeEventListener("abort",d),c()};s.addEventListener("canplay",d),s.addEventListener("error",d),o.addEventListener("abort",d,{once:!0})})),a=n.map(s=>s.decode?s.decode().catch(()=>{}):Promise.resolve()),l=r&&e.fonts?e.fonts.ready.then(()=>{}):Promise.resolve();return Promise.all([...i,...a,l]).then(()=>{})}function IH(e,t,{scope:n="all"}={}){let r=PH(e,{scope:n});return r.pendingMedia.length===0&&r.pendingImages.length===0&&!r.fontsLoading?null:DH(e,r,t)}var OH=50;function HH(e,t){let n=e.defaultView;return!n||n.__renderReady||!n.__hf?null:new Promise(r=>{let o,i=()=>{o!==void 0&&clearTimeout(o),t.removeEventListener("abort",i),r()};if(t.aborted){i();return}t.addEventListener("abort",i,{once:!0});let a=()=>{if(n.__renderReady){i();return}o=setTimeout(a,OH)};a()})}var GH=50,BH=1.5,UH=2,WH=1500;function Zm(e,t){return new Promise(n=>{if(t.aborted){n(-1);return}let r=0,o=()=>{e.cancelAnimationFrame?.(r),n(-1)};t.addEventListener("abort",o,{once:!0}),r=e.requestAnimationFrame(i=>{t.removeEventListener("abort",o),n(i)})})}function VH(e,t){let n=e.defaultView;return n?(async()=>{let r=await Zm(n,t);if(t.aborted)return;let o=await Zm(n,t),i=o-r,a=0;for(;!t.aborted&&a<UH;){if(o-r>=WH)return;let l=await Zm(n,t);if(t.aborted)return;let s=l-o;i=Math.min(i,s),a=s<GH||s<=i*BH?a+1:0,o=l}})():null}var $H=8e3;function qH(e,t,n={}){let r=n.inputs??[(c,d)=>IH(c,d,{scope:n.scope}),HH,VH],o=new AbortController,i=r.map(c=>c(e,o.signal)).filter(c=>c!==null);if(i.length===0){t({timedOut:!1});return}let a=n.timeoutMs??$H,l,s=new Promise(c=>{l=setTimeout(()=>c("timed-out"),a)});Promise.race([Promise.all(i).then(()=>"done"),s]).then(c=>{clearTimeout(l),o.abort(),t({timedOut:c==="timed-out"})})}function Ww(e,t,n={}){qH(e,t,{...n,scope:ep})}var rp=new Map,ga=new Map,tp=new Map,np=()=>{},$w=()=>{},Vw=0;function op(e){return/^[a-z][a-z0-9-]{0,63}$/.test(e)}function qw(e){let t=(tp.get(e)??0)+1;return tp.set(e,t),t}function zw(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>0?e:(Vw-=1,Vw)}function ip(e,t){let n=ga.get(e);if(!n)return;let r=()=>tp.get(e)===t.generation&&ga.get(e)===n;try{Promise.resolve(n(t.payload)).then(()=>{r()&&$w(e,t.requestId)},o=>{r()&&np(e,t.requestId,o)})}catch(o){r()&&np(e,t.requestId,o)}}function jw(e){np=e}function Kw(e){$w=e}function hu(e,t,n){if(!op(e))return;let r={payload:t,requestId:zw(n),generation:qw(e)};rp.set(e,r),ip(e,r)}function gu(e,t){op(e)&&(rp.delete(e),ip(e,{payload:void 0,requestId:zw(t),generation:qw(e)}))}function Yw(e,t){if(!op(e))throw new Error(`Invalid HyperFrames runtime-data channel: ${e}`);ga.set(e,t);let n=rp.get(e);return n&&ip(e,n),()=>{ga.get(e)===t&&ga.delete(e)}}var Xw=!1;function bn(e){if(e){if(typeof e.pause!="function"){Xw||(Xw=!0,wt("timeline_missing_pause",{}));return}try{e.pause()}catch(t){$("runtime.timeline.pause",t)}}}function KH(e){let t=e;if(typeof t.remove=="function")for(let n of e.getChildren?.(!1,!0,!1)??[])n.data===li&&t.remove(n)}function YH(){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 XH(){let e=Lw(gt()?.getAttribute("data-fps")??"");return e.ok?e.value.num/e.value.den:null}function JH(e,t){return t!==null&&e.length===t.length&&e.every((n,r)=>n===t[r])}function Jw(e,t,n){let r=null,o=!0;return()=>{let i=e();if(i.length===0)return r=null,o=!0,!0;if(JH(i,r))return o;r=i,o=!1;let a=i.length===1?i[0]:Promise.all(i);return Promise.resolve(a).then(()=>{r===i&&(o=!0,t())},l=>{r===i&&(o=!0,n(l),t())}),o}}function ya(e){let t=e.querySelector(`meta[name="${Rn}"]`)?.getAttribute("content");if(!t)return null;try{return JSON.parse(t)}catch{return null}}var sp=e=>JSON.stringify([Array.from(e.attributes,t=>[t.name,t.value]).filter(([t])=>t!==vr),e.innerHTML]),QH=new Set(["style","preload","src",vr,jn,We,...os]),ZH=e=>e.split(/\s+/).filter(t=>t&&!t.startsWith("__hf-")).join(" "),Qw=e=>JSON.stringify([Array.from(e.attributes,({name:t,value:n})=>[t,t==="class"?ZH(n):n]).filter(([t,n])=>!QH.has(t)&&!(t==="class"&&!n)).sort(([t],[n])=>t<n?-1:1),e.hasAttribute("data-var-src")?null:Ti(e),e.innerHTML]),xa=new WeakMap,e_=e=>e.localName==="video"||e.localName==="audio",bu=e=>{if(!He(e))return;let t=e_(e)?[e]:e.firstElementChild?e.querySelectorAll("video, audio"):[];for(let n of t)xa.has(n)||xa.set(n,sp(n))},yu=null;function t_(){typeof MutationObserver>"u"||!ya(document)||(bu(document.documentElement),yu=new MutationObserver(e=>{for(let t of e){t.addedNodes.forEach(bu);let{target:n}=t;He(n)&&e_(n)&&xa.set(n,sp(n))}}),yu.observe(document.documentElement,{childList:!0,subtree:!0}))}function n_(){let e=o=>o?.config?.({force3D:!1}),t=Object.getOwnPropertyDescriptor(window,"gsap"),n=window.gsap;if(e(n),t?.configurable===!1||t?.get?.hfFlat)return;let r=Object.assign(()=>t?.get?t.get.call(window):n,{hfFlat:!0});Object.defineProperty(window,"gsap",{configurable:!0,enumerable:!0,get:r,set:o=>{t?.set?t.set.call(window,o):n=o,e(o)}})}var e2=new Map([["image",["href","xlink:href"]],["object",["data"]]]),t2=1e3,n2=16;function r2(){let e;return()=>e??(e=document.getAnimations())}var ap=e=>is(e)||Ne(e)&&Ls(e)&&B0({volume:Number.parseFloat(e.dataset.volume??""),fxChain:e.getAttribute("data-fx-chain"),automation:e.getAttribute("data-automation"),audioGroup:e.getAttribute("data-audio-group"),masterChain:ty(e.ownerDocument)}),r_="audio[data-start], video[data-start]",ba=e=>Array.from(e.querySelectorAll(r_)).filter(ap);function Zw(e){let t=e.matches(`[${rs}]`)?[e]:Array.from(e.querySelectorAll(`img[${rs}]`)).filter(n=>n.closest("[data-start]")===e);for(let n of t)n.setAttribute("loading","eager")}function o_(){let e=Wc(),t=window.parent!==window,n=u=>t&&u.hasAttribute(Ut);yu?.disconnect(),yu=null,ya(document)&&bu(document.documentElement);let r=()=>{};ob(Re),jw((u,h,g)=>{Re({source:"hf-preview",type:"runtime-data-error",channel:u,requestId:h,message:g instanceof Error?g.message:String(g)})}),Kw((u,h)=>{try{r()}catch(g){Re({source:"hf-preview",type:"runtime-data-error",channel:u,requestId:h,message:g instanceof Error?g.message:String(g)});return}Re({source:"hf-preview",type:"runtime-data-applied",channel:u,requestId:h})}),ea(document),Wl(document),ny(document);let o=YH();if(e.canonicalFps=o.fps??XH()??e.canonicalFps,j0(e.canonicalFps),window.__HF_EXPORT_RENDER_SEEK_CONFIG){let u=JSON.stringify({canonicalFps:e.canonicalFps,source:o.source,rawFpsSource:o.rawFpsSource,rawFps:o.rawFps,fallbackReason:o.fallbackReason});globalThis.console.info(`[hyperframes] render runtime fps ${u}`)}let i=null,a=null,l=null,s=[],c=new Set,d=null,m=new Set,f=(u,h,g)=>{m.has(u)||(m.add(u),wt(h,g))};if(typeof window.__hfRuntimeTeardown=="function")try{window.__hfRuntimeTeardown()}catch(u){$("runtime.init.site1",u)}let p=new cu;e.transportClock=p;let b=new mu,y=!1;b.init().then(u=>{y=u}),window.__hf=window.__hf||{};let x=u=>u.closest("[data-hidden]")!==null||Js(u.ownerDocument,u),v=()=>{let u=window.gsap,h=window;if(!(!u?.registerPlugin||h.__hfAutoNoopRegistered))try{u.registerPlugin({name:"_auto",init:()=>!1}),h.__hfAutoNoopRegistered=!0}catch(g){f("auto_marker_install_failed","auto_marker_install_failed",{reason:"threw"}),$("runtime.autoMarker.install",g)}},E=()=>{let u=window.gsap;if(!u){f("custom_ease_missing_gsap","custom_ease_install_failed",{reason:"missing_gsap"});return}try{Bw(u)||f("custom_ease_no_parse_ease","custom_ease_install_failed",{reason:"no_parseEase"})}catch(h){f("custom_ease_install_threw","custom_ease_install_failed",{reason:"threw"}),$("runtime.customEase.install",h)}};v(),E(),document.documentElement&&(document.documentElement.style.margin="0",document.documentElement.style.padding="0",document.documentElement.style.overflow="hidden"),document.body&&(document.body.style.margin="0",document.body.style.padding="0",document.body.style.overflow="hidden");try{db(document)}catch(u){$("runtime.init.cssVariables",u)}if(window.__timelines=window.__timelines||{},Array.isArray(window.__timelines)){let u=window.__timelines,h=gt()?.getAttribute("data-composition-id")??"root",g={};if(u.length===1)g[h]=u[0];else for(let S=0;S<u.length;S++)g[`tl-${S}`]=u[S];window.__timelines=g}let C=gt();C&&!C.hasAttribute("data-start")&&C.setAttribute("data-start","0");let H=u=>{s.push(u)},V=(u,h,g)=>{let S=g??`${u}:${JSON.stringify(h)}`;c.has(S)||(c.add(S),Re({source:"hf-preview",type:"diagnostic",code:u,details:h}))},M=u=>{let h={scale:1,focusX:960,focusY:540},g=[],S=[],A={time:u.getTime(),duration:u.getDuration(),isPlaying:u.isPlaying(),renderMode:!1,timelineDirty:!1};return{play:u.play,pause:u.pause,seek:u.seek,getTime:u.getTime,getDuration:u.getDuration,isPlaying:u.isPlaying,getMainTimeline:()=>null,getElementBounds:()=>{},getElementsAtPoint:()=>{},setElementPosition:()=>{},previewElementPosition:()=>{},setElementKeyframes:()=>{},setElementScale:()=>{},setElementFontSize:()=>{},setElementTextContent:()=>{},setElementTextColor:()=>{},setElementTextShadow:()=>{},setElementTextFontWeight:()=>{},setElementTextFontFamily:()=>{},setElementTextOutline:()=>{},setElementTextHighlight:()=>{},setElementVolume:()=>{},setStageZoom:()=>{},getStageZoom:()=>h,setStageZoomKeyframes:()=>{},getStageZoomKeyframes:()=>g,addElement:()=>!1,removeElement:()=>!1,updateElementTiming:()=>!1,setElementTiming:()=>{},updateElementSrc:()=>!1,updateElementLayer:()=>!1,updateElementBasePosition:()=>!1,markTimelineDirty:()=>{},isTimelineDirty:()=>!1,rebuildTimeline:()=>{},ensureTimeline:()=>{},enableRenderMode:()=>{},disableRenderMode:()=>{},renderSeek:u.renderSeek,getElementVisibility:()=>({visible:!1}),getVisibleElements:()=>S,getRenderState:()=>({...A,time:u.getTime(),duration:u.getDuration(),isPlaying:u.isPlaying()})}},R=.75,U=.05,T=100,F=240,W=u=>{if(u instanceof Error)return u.message||String(u);if(typeof u=="string")return u;try{return JSON.stringify(u)}catch{return String(u??"")}},B=u=>{let h=u.toLowerCase();return h.includes("cannot read properties of null")||h.includes("cannot set properties of null")?{code:"runtime_null_dom_access",category:"dom-null-access"}:h.includes("failed to execute 'queryselector'")?{code:"runtime_invalid_selector",category:"selector-invalid"}:h.includes("is not defined")?{code:"runtime_reference_missing",category:"reference-missing"}:{code:"runtime_script_error",category:"script-error"}},X=u=>{let h=br(u);return h===null?null:`${h}px`},ae=null,N=!1,j=()=>{if(!N)return gt();if(Sp(),Ke&&!nt&&ae?.revision===xt&&(ae.el===null||ae.el.isConnected))return ae.el;let u=gt();return ae={revision:xt,el:u},u},I=()=>{let u=j();if(!u)return;let h=X(u.getAttribute("data-width")),g=X(u.getAttribute("data-height"));h&&(u.style.width=h),g&&(u.style.height=g),h&&u.style.setProperty("--comp-width",h),g&&u.style.setProperty("--comp-height",g),h&&(document.documentElement.style.width=h),g&&(document.documentElement.style.height=g),h&&(document.body.style.width=h),g&&(document.body.style.height=g)},P=()=>{let u=j(),h=Array.from(document.querySelectorAll("[data-composition-id]")).filter(g=>g.hasAttribute("data-duration")||g.hasAttribute("data-end"));for(let g of h){if(u&&g===u)continue;let S=g.getAttribute("data-duration"),A=g.getAttribute("data-end");S!=null&&!g.hasAttribute(kn)&&g.setAttribute(kn,S),A!=null&&!g.hasAttribute(Ln)&&g.setAttribute(Ln,A),g.removeAttribute("data-duration"),g.removeAttribute("data-end")}},D=new WeakMap,w=u=>[u.className,u.style.position,u.style.top,u.style.left,u.style.width,u.style.height,u.style.transform,u.getAttribute("data-width"),u.getAttribute("data-height")].join("|"),L=()=>{let u=j();if(!u)return;u.style.position||(u.style.position="relative"),u.style.overflow="hidden";let h=X(u.getAttribute("data-width")),g=X(u.getAttribute("data-height"));h&&(u.style.width=h),g&&(u.style.height=g);let S=Array.from(u.children).filter(_=>{let O=_.tagName.toLowerCase();return O==="script"||O==="style"||O==="link"||O==="meta"||!_.hasAttribute("data-start")||_.hasAttribute(Ut)?!1:D.get(_)!==w(_)}),A=S.filter(_=>_.style.getPropertyValue("display")==="none").map(_=>({el:_,priority:_.style.getPropertyPriority("display")}));for(let{el:_}of A)_.style.removeProperty("display");for(let _ of S){let O=_.tagName.toLowerCase(),q=(_.style.top==="0px"||_.style.top==="0")&&(_.style.left==="0px"||_.style.left==="0")&&_.style.width==="100%"&&_.style.height==="100%",G=/translate\(\s*-50%\s*,\s*-50%\s*\)/.test(_.style.transform);if(q&&G&&!_.hasAttribute("data-width")&&!_.hasAttribute("data-height")){let be=_.style.top,ie=_.style.left,pe=_.style.width,Xe=_.style.height;_.style.top="",_.style.left="",_.style.width="",_.style.height="";let Ye=window.getComputedStyle(_);Ye.top!=="auto"||Ye.bottom!=="auto"||Ye.left!=="auto"||Ye.right!=="auto"||Ye.width!=="0px"||Ye.height!=="0px"||(_.style.top=be,_.style.left=ie,_.style.width=pe,_.style.height=Xe)}let k=window.getComputedStyle(_),J=k.position;if(J!=="absolute"&&J!=="fixed"&&(_.style.position="absolute"),O!=="audio"){let be=X(_.getAttribute("data-width")),ie=X(_.getAttribute("data-height")),pe=k.width!=="0px"&&k.width!=="auto",Xe=k.height!=="0px"&&k.height!=="auto";be?!_.style.width&&!pe&&(_.style.width=be):!_.style.width&&k.width==="0px"&&(_.style.width="100%"),ie?!_.style.height&&!Xe&&(_.style.height=ie):!_.style.height&&k.height==="0px"&&(_.style.height="100%")}}for(let{el:_,priority:O}of A)_.style.setProperty("display","none",O);if(document.readyState==="complete")for(let _ of S)D.set(_,w(_))},Y=u=>lt({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:u}),te=null,he=u=>{let h=te;te=Y(!0);try{return u()}finally{te=h}},Ee=u=>u&&te?te:Y(u),z=(u,h=0,g)=>Ee(g?.includeAuthoredTimingAttrs??!0).resolveStartForElement(u,h),Z=(u,h)=>Ee(h?.includeAuthoredTimingAttrs??!0).resolveDurationForElement(u),Q=u=>{let h=u.closest("[data-composition-id]"),g=h?z(h,0):null,S=h?Z(h,{includeAuthoredTimingAttrs:!0}):null;return{compositionRoot:h,inheritedStart:g,inheritedDuration:S}},de=u=>Ee(!0).resolveHostSlotsForElement(u),ge=(u,h)=>{let g=Ue(u.dataset.duration),S=g!=null&&g>0?h+g:1/0;return yr({start:h,end:S},de(u))},se=u=>Ee(!0).resolveMediaStartForElement(u);window.__hfResolveMediaStartSeconds=se,s.push(()=>{window.__hfResolveMediaStartSeconds===se&&delete window.__hfResolveMediaStartSeconds});let ue=!!document.querySelector("[data-composition-src]"),re=!1;{let u=document.querySelectorAll("[data-composition-id]:not([data-composition-src])");for(let h of u){let g=h.getAttribute("data-composition-id");if(g&&h.children.length===0&&document.querySelector(`template#${CSS.escape(g)}-template`)){re=!0;break}}}let Be=!ue&&!re,Me=u=>{let h=sn(u);return h==null?null:Math.max(0,h)},we=u=>typeof u=="number"&&Number.isFinite(u)&&u>ln,_e=()=>Array.from(document.querySelectorAll("video[data-start], audio[data-start]")).length===0?null:he(()=>A0(document,{mediaStart:se,mediaDuration:Vr})),Tt=()=>{let u=j();if(!u)return null;let h=window.__timelines??{},g=lt({timelineRegistry:h,includeAuthoredTimingAttrs:!0});return w0(u,g)},va=()=>{let u=window;return!!(u.lottie||u.DotLottie)},Fo=()=>{let u=j();if(!u)return Kr({authoredDurationSeconds:null,clipEndsSeconds:[]});let h=lt({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:!0});return _0(u,h,{unregisteredLottie:va()})},Po=null,Cu=()=>{if(nt)return Fo();let u=Lr();return Po?.revision!==u&&(Po={revision:u,result:Fo()}),Po.result},Aa=u=>{window.__hf=window.__hf||{},window.__hf.durationSource={source:u.source,seconds:u.seconds,pendingClips:u.pendingClips},u.source==="derived"&&V("composition_duration_derived",{source:u.source,seconds:u.seconds,pendingClips:u.pendingClips},`composition_duration_derived:${u.seconds}`)},wa=()=>{let u=_e();return typeof u!="number"||!Number.isFinite(u)||u<=ln?null:u},Tu=u=>we(u)?Math.max(ln,u*R):ln,kr=(u=!1)=>{let h=0;for(let g of e.deterministicAdapters){let S=u?g.getAnimationCycleEndSeconds:g.getInferredDurationSeconds;if(typeof S!="function")continue;let A=null;try{A=S()}catch(_){$("runtime.init.adapterDuration",_)}typeof A=="number"&&Number.isFinite(A)&&A>0&&(h=Math.max(h,A))}return h>ln?h:null},nt=!1,_a=()=>nt&&window.__HF_EXPORT_RENDER_SEEK_CONFIG!=null,fe=[...["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",As,"data-playback-rate","data-automation","data-playback-start","data-media-start","id","src"],"data-width","data-height"],ke=$E(fe),Rt=["loadedmetadata","durationchange","emptied"],rt=null,xn=-1,Sn=null,Do=Number.NEGATIVE_INFINITY,Ke=null,xt=0,bp=new Map,Ca=u=>{if(!Ke||nt)return Array.from(document.querySelectorAll(u));ke(Ke.takeRecords())&&vn();let h=bp.get(u);if(h?.revision===xt)return h.nodes;let g=Array.from(document.querySelectorAll(u));return bp.set(u,{revision:xt,nodes:g}),g},En=()=>{},vn=()=>{xt+=1,En()},yp=()=>({media:wa(),authoredComposition:Tt()}),U_=()=>{let u=window.__timelines??{},h="";for(let g of Object.keys(u)){let S=u[g];S&&(h+=`${g}=${Me(S)??"?"};`)}return h},xp=u=>{let h=u.target;Te(h)&&Ps(h)||vn()},W_=(u,h)=>{let g=Ke?.takeRecords()??[];h();let S=Ke?.takeRecords()??[];(ke(g)||ke(S.filter(A=>A.target!==u)))&&vn()},V_=u=>{let h=Ke?.takeRecords()??[];u(),Ke?.takeRecords(),ke(h)&&vn()},Sp=()=>{if(!(Ke||typeof MutationObserver>"u")){Ke=new MutationObserver(u=>{ke(u)&&vn()}),Ke.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0,attributeFilter:fe});for(let u of Rt)document.addEventListener(u,xp,!0);s.push(()=>{Ke?.disconnect(),Ke=null,vn();for(let u of Rt)document.removeEventListener(u,xp,!0)})}};N=!0;let Lr=()=>{Sp(),Ke&&ke(Ke.takeRecords())&&vn();let u=Date.now();if(!p.isPlaying()||u-Do>=Qm){Do=u;let h=U_();h!==Sn&&(Sn=h,vn())}return xt},Ep=u=>nt?yp():(u??(u=Lr()),rt&&xn===u||(xn=u,rt=yp()),rt),ot=(u,h=0,g)=>{let S=null,A=C0({declared:Ue(j()?.getAttribute("data-duration")),timeline:()=>Me(u),floors:()=>{let{media:_,authoredComposition:O}=Ep(g);return[_,O,kr()]},fallback:h,derived:()=>(S=Cu(),S.seconds??0)});return S?Aa(S):window.__hf?.durationSource&&delete window.__hf.durationSource,A},Ru=new WeakMap,Io=u=>u.__hfReal??u,Mu=null,Oo=new Set,vp=()=>{for(let u of Oo)u===e.capturedTimeline||u===Mu?.timeline||(Oo.delete(u),u.kill?.())},ku=()=>{let u=window.__timelines??{},h=ye=>{let me=Object.entries(u).filter(oe=>!!oe[1]&&typeof oe[1].play=="function"&&typeof oe[1].pause=="function");if(me.length!==1)return{timeline:null};let K=me[0];if(!K)return{timeline:null};let[ee,ce]=K;return{timeline:ce,selectedTimelineIds:[ee],selectedDurationSeconds:Me(ce),diagnostics:{code:"root_timeline_sole_registered_fallback",details:{reason:ye,soleTimelineId:ee}}}},g=lt({timelineRegistry:u,includeAuthoredTimingAttrs:!0}),{media:S,authoredComposition:A}=Ep(),_=Math.max(S??0,A??0)||null,O=Tu(_),q=ye=>{let me=document.querySelector(`[data-composition-id="${CSS.escape(ye)}"]`);return me?g.resolveStartForElement(me,0):0},G=(ye,me)=>{let K=q(me.compositionId);ye.add(me.timeline,K),Ru.set(Io(me.timeline),{hostId:me.compositionId,parent:ye,at:K})},k=(ye,me)=>{let K=Io(me.timeline),ee=Ru.get(K);return ee&&ee.parent===ye&&K.parent===Io(ye)?ee:null},J=(ye,me)=>Math.abs(ye.at-q(me.compositionId))<1e-6,le=(ye,me)=>{let K=k(ye,me);!K||J(K,me)||G(ye,me)},be=ye=>{let me=window.gsap;if(!me||typeof me.timeline!="function")return null;let K=me.timeline({paused:!0});Oo.add(K);for(let ee of ye)G(K,ee);return Zt(pe(K,ye)),K},ie=(ye,me)=>{if(!we(ye))return null;let K=window.gsap;if(!K||typeof K.timeline!="function")return null;let ee=K.timeline({paused:!0});if(Oo.add(ee),me){try{ee.add(me,0)}catch(oe){$("runtime.init.site2",oe)}Zt(pe(ee,[{timeline:me}]))}let ce=ee;if(typeof ce.to=="function")try{ce.to({},{duration:ye,data:li})}catch(oe){$("runtime.init.site3",oe)}return ee},pe=(ye,me)=>{if(!ye||typeof ye.getChildren!="function")return[];try{let K=ye.getChildren(!0,!0,!0);return Array.isArray(K)?me.filter(ee=>K.includes(Io(ee.timeline))):[]}catch{return[]}},Xe=(ye,me)=>{let K=ye,ee={addedIds:[],nested:[]};if(typeof K.getChildren!="function")return ee;try{let ce=K.getChildren(!0,!0,!0)??[];if(!Array.isArray(ce))return ee;let oe=[];for(let ve of me){if(ce.includes(Io(ve.timeline))){le(ye,ve);continue}try{G(ye,ve),oe.push(ve.compositionId)}catch(Ie){$("runtime.init.site4",Ie)}}return{addedIds:oe,nested:pe(ye,me)}}catch{return ee}},Ye=j(),Ge=Ye?.getAttribute("data-composition-id")??null;if(!Ge)return h("root_missing_composition_id");let Je=u[Ge]??null,$e=(()=>{if(!Ye)return[];let ye=new Set,me=Array.from(Ye.querySelectorAll("[data-composition-id]")),K=[];for(let ee of me){let ce=ee.getAttribute("data-composition-id");if(!ce||ce===Ge||ye.has(ce))continue;ye.add(ce);let oe=u[ce]??null;if(!oe||typeof oe.play!="function"||typeof oe.pause!="function")continue;let ve=Me(oe);K.push({compositionId:ce,timeline:oe,durationSeconds:ve??0})}return K})(),Zt=ye=>{for(let me of ye){let K=me.timeline;if(typeof K.paused=="function")try{K.paused(!1)}catch(ee){$("runtime.init.site5",ee)}}};if(Je){let ye=$e.length>0?Xe(Je,$e):{addedIds:[],nested:[]},me=ye.addedIds;if(Zt(ye.nested),($e.length>0||!document.querySelector("[data-composition-id]:not([data-composition-id='"+Ge+"'])"))&&(rr=!0),me.length>0)try{xi(Je,Je.time(),!1)}catch{}KH(Je);let K=Me(Je);if(!we(K)&&$e.length>0){let oe=$e.map(en=>en.compositionId),ve=be($e),Ie=Me(ve);if(ve&&we(Ie))return{timeline:ve,selectedTimelineIds:oe,selectedDurationSeconds:Ie,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_fallback",details:{rootCompositionId:Ge,rootDurationSeconds:K,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:O,selectedDurationSeconds:Ie,mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:A,selectedTimelineIds:oe,autoNestedChildren:me}}};let st=ie(_??0,Je),dt=Me(st);if(st&&we(dt))return{timeline:st,selectedTimelineIds:[Ge],selectedDurationSeconds:dt,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Ge,rootDurationSeconds:K,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:A,selectedDurationSeconds:dt,selectedTimelineIds:[Ge],autoNestedChildren:me}}}}if(!we(K)&&$e.length===0){let oe=ie(_??0,Je),ve=Me(oe);if(oe&&we(ve))return{timeline:oe,selectedTimelineIds:[Ge],selectedDurationSeconds:ve,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Ge,rootDurationSeconds:K,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:A,selectedDurationSeconds:ve,selectedTimelineIds:[Ge]}}}}let ee=Ue(Ye?.getAttribute("data-duration")),ce=Math.max(we(ee)?ee:0,A??0);if(ce>0&&we(ce)&&we(K)&&ce>=K+.5){let oe=Je;if(typeof oe.to=="function")try{oe.to({},{duration:0,data:li},ce)}catch(Ie){$("runtime.init.site6",Ie)}let ve=Me(Je);if(we(ve))return{timeline:Je,selectedTimelineIds:[Ge],selectedDurationSeconds:ve,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_padded_to_declared_duration",details:{rootCompositionId:Ge,rootDurationSeconds:K,rootDeclaredDur:ee,authoredCompositionDurationFloorSeconds:A,newDur:ve}}}}return{timeline:Je,selectedTimelineIds:[Ge],selectedDurationSeconds:K,mediaDurationFloorSeconds:S,diagnostics:me.length>0?{code:"root_timeline_auto_nested_children",details:{rootCompositionId:Ge,selectedDurationSeconds:K,autoNestedChildren:me}}:void 0}}if($e.length>0){let ye=$e.map(oe=>oe.compositionId),me=Mu,K=me?.size===$e.length&&we(Me(me.timeline))&&$e.every(oe=>{let ve=k(me.timeline,oe);return ve!==null&&J(ve,oe)})?me.timeline:null,ee=K??be($e),ce=Me(ee);if(ee)return K||(Mu={timeline:ee,size:$e.length}),{timeline:ee,selectedTimelineIds:ye,selectedDurationSeconds:ce,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_missing_fallback",details:{rootCompositionId:Ge,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:O,selectedDurationSeconds:ce,mediaDurationFloorSeconds:S,selectedTimelineIds:ye}}}}return h("root_composition_id_unmatched_in_registry")},rr=!1,$_=u=>{let h=window.gsap,g=u;if(!(!g||typeof g.getChildren!="function"||!h||typeof h.parseEase!="function"))for(let S of g.getChildren(!0,!0,!0)){let A=S,_=A.timeline;if(!_||!("_ease"in _)||typeof _._ease=="function")continue;let O=A.vars?.keyframes,G=(O&&!Array.isArray(O)?O.ease:void 0)??A.vars?.ease??"none";try{let k=h.parseEase(G);typeof k=="function"&&(_._ease=k)}catch(k){wt("keyframe_ease_repair_failed",{ease:typeof G=="string"?G:String(G)}),$("runtime.keyframeEase.repair",k)}}},or=()=>{if(E(),!Be)return!1;let u=e.capturedTimeline,h=Me(u),g=we(h);if(u&&g&&rr)return!1;let S=ku();if(!S.timeline)return!1;if(u&&u===S.timeline)return typeof u.timeScale=="function"&&u.timeScale(e.playbackRate),!1;e.capturedTimeline=S.timeline,vp(),typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate),$_(e.capturedTimeline);let A=ot(e.capturedTimeline,0);if(A<=0&&typeof e.capturedTimeline.progress=="function"&&(e.capturedTimeline.progress(1,!0),e.capturedTimeline.progress(0,!1),bn(e.capturedTimeline)),A>0){try{p.setDuration(A)}catch{}if(typeof e.capturedTimeline.totalTime=="function"){typeof e.capturedTimeline.progress=="function"&&e.capturedTimeline.progress(1e-4,!0);let q=Math.max(0,e.currentTime||0);e.capturedTimeline.totalTime(q,!1),bn(e.capturedTimeline)}let O=window.__hfStudioManualEditsApply;typeof O=="function"&&O(),ea(document)}if(S.diagnostics&&Re({source:"hf-preview",type:"diagnostic",code:S.diagnostics.code,details:S.diagnostics.details}),Re({source:"hf-preview",type:"diagnostic",code:"timeline_bound",details:{selectedTimelineIds:S.selectedTimelineIds??[],selectedDurationSeconds:S.selectedDurationSeconds??null,mediaDurationFloorSeconds:S.mediaDurationFloorSeconds??null}}),t){let O=j(),q=A>0?A:0,G=String(q>0?q:1),k=new Set,J=ie=>ie.tagName.toLowerCase()===cn,le=new Set(document.querySelectorAll("[data-start]")),be=ie=>{let pe=ie.parentElement;for(;pe&&pe!==O;){if(le.has(pe))return!0;pe=pe.parentElement}return!1};if(e.capturedTimeline.getChildren)try{for(let ie of e.capturedTimeline.getChildren(!0))if(typeof ie.targets=="function")for(let pe of ie.targets())Ce(pe)&&pe!==O&&(J(pe)||pe.hasAttribute("data-start")||be(pe)||k.has(pe)||(k.add(pe),pe.setAttribute("data-start","0"),pe.setAttribute("data-duration",G),pe.setAttribute(Ut,"1")))}catch{}if(Ce(O))for(let ie of O.querySelectorAll("[id]"))Ce(ie)&&ie!==O&&(ie.hasAttribute("data-start")||be(ie)||k.has(ie)||ie.tagName==="SCRIPT"||ie.tagName==="STYLE"||ie.tagName==="LINK"||J(ie)||(k.add(ie),ie.setAttribute("data-start","0"),ie.setAttribute("data-duration",G),ie.setAttribute(Ut,"1")))}let _=Lu();for(let O of An)Ho.delete(O),Nu(O,_);return!0},Ap=()=>{if(e.tornDown)return;let u=ku();if(!u.timeline){e.capturedTimeline=null,rr=!1,p.setDuration(0),Qt(e.currentTime);return}if(e.capturedTimeline!==u.timeline)rr=!1,or();else{let h=ot(e.capturedTimeline,0);h>0&&h!==p.getDuration()&&(p.setDuration(h),at())}Qt(e.currentTime)};r=()=>{Ap(),at()},window.__hfForceTimelineRebind=Ap;let q_=()=>{let u=j();if(!Ce(u))return;let h=u.getBoundingClientRect(),g=br(u.getAttribute("data-width")),S=br(u.getAttribute("data-height")),A=window.getComputedStyle(u),_=g!==null&&S!==null,O=h.width<=0||h.height<=0||u.clientWidth<=0||u.clientHeight<=0;!_||!O||V("root_stage_layout_zero",{compositionId:u.getAttribute("data-composition-id")??null,declaredWidth:g,declaredHeight:S,rectWidth:Math.round(h.width),rectHeight:Math.round(h.height),clientWidth:u.clientWidth,clientHeight:u.clientHeight,display:A.display,visibility:A.visibility,overflow:A.overflow},`root-stage-layout-zero:${u.getAttribute("data-composition-id")??"unknown"}`)},z_=()=>{e.tornDown||(d!=null&&window.cancelAnimationFrame(d),d=window.requestAnimationFrame(()=>{d=null,q_()}))},j_=()=>{a=u=>{let h=W(u.error??u.message).slice(0,F);if(!h)return;let g=B(h);Re({source:"hf-preview",type:"diagnostic",code:g.code,details:{category:g.category,message:h,filename:u.filename||null,line:Number.isFinite(u.lineno)?u.lineno:null,column:Number.isFinite(u.colno)?u.colno:null}})},l=u=>{let h=W(u.reason).slice(0,F);if(!h)return;let g=B(h);Re({source:"hf-preview",type:"diagnostic",code:`${g.code}_unhandled_rejection`,details:{category:`${g.category}-unhandled-rejection`,message:h}})},window.addEventListener("error",a),window.addEventListener("unhandledrejection",l)},wp=new WeakSet,K_=()=>{let u=Array.from(document.querySelectorAll("img, video, audio, source, link[rel='stylesheet']"));for(let g of u){if(wp.has(g))continue;wp.add(g);let S=()=>{if(!He(g))return;let A=g.tagName.toLowerCase(),_=g.getAttribute("src")??g.getAttribute("href")??g.getAttribute("poster")??null,O=A==="link"?"runtime_stylesheet_load_failed":"runtime_asset_load_failed";V(O,{tagName:A,assetUrl:_,currentSrc:(Qe(g)||Te(g))&&g.currentSrc||null,readyState:Te(g)?g.readyState:null,networkState:Te(g)?g.networkState:null},`${O}:${A}:${_??"unknown"}`)};g.addEventListener("error",S),H(()=>{g.removeEventListener("error",S)})}let h=document.fonts;h&&h.ready.then(()=>{if(e.tornDown)return;let g=Array.from(h).filter(S=>S.status==="error").map(S=>S.family).filter(S=>!!S).slice(0,10);g.length!==0&&V("runtime_font_load_issue",{failedFamilies:g,totalFaces:Array.from(h).length},`runtime-font-load-issue:${g.join("|")}`)}).catch(()=>{})},Y_=(u,h)=>{if(!u.timeline)return!1;let g=e.capturedTimeline;if(g&&g===u.timeline)return!1;let S=Math.max(0,e.currentTime||0);e.capturedTimeline=u.timeline,vp(),typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate);try{bn(e.capturedTimeline),typeof e.capturedTimeline.seek=="function"&&xi(e.capturedTimeline,S,!1)}catch(A){$("runtime.init.site7",A)}return Re({source:"hf-preview",type:"diagnostic",code:"timeline_loop_guard_rebind",details:{reason:h,previousTime:S,selectedTimelineIds:u.selectedTimelineIds??[],selectedDurationSeconds:u.selectedDurationSeconds??null,mediaDurationFloorSeconds:u.mediaDurationFloorSeconds??null}}),!0},ir=null,_p=!1,An=new Set,Ho=new WeakMap,Lu=()=>{let u;return()=>u??(u=hd(e.capturedTimeline??{}))},Ta=()=>{e.tornDown||(ir!=null&&window.clearTimeout(ir),ir=window.setTimeout(()=>{if(e.tornDown||(ir=null,_a()))return;let u=ku();if(!u.timeline||!we(u.mediaDurationFloorSeconds??null))return;if(!e.capturedTimeline){or()&&(at(),it(!0));return}if(_p)return;let g=Me(e.capturedTimeline),S=u.selectedDurationSeconds??Me(u.timeline);we(S)&&(!we(g)||S>=g+U)&&Y_(u,"manual")&&(_p=!0,Re({source:"hf-preview",type:"diagnostic",code:"timeline_rebind_after_media_metadata",details:{previousDurationSeconds:g??null,selectedDurationSeconds:S??null,selectedTimelineIds:u.selectedTimelineIds??[],mediaDurationFloorSeconds:u.mediaDurationFloorSeconds??null}}),at(),it(!0))},T))},Cp=u=>{Te(u.currentTarget)&&Ly(u.currentTarget)},Tp=u=>{let h=u.currentTarget;e.tornDown||p.isPlaying()||!Te(h)||oo(h)||(Gt=null,e.mediaForceSyncNextTick=!0,ht())},Rp=u=>{Te(u.currentTarget)&&Ny(u.currentTarget)},Mp=u=>{ap(u)&&Aw(u)&&Mo(u,Ro(u))},kp=u=>{let h=u.currentTarget;Te(h)&&Mp(h)},Lp=u=>{u.removeEventListener("loadedmetadata",Ta),u.removeEventListener("durationchange",Ta),u.removeEventListener("loadedmetadata",Cp),u.removeEventListener("loadedmetadata",Tp),u.removeEventListener("loadedmetadata",kp),u.removeEventListener("error",Rp),An.delete(u)},X_=()=>{for(let u of An)Lp(u)},Np=()=>{for(let u of An)u.isConnected||(Lp(u),u.pause(),ed(u),u.remove());b.releaseDetached()},Fp=u=>{let h=Number.parseFloat(u.dataset.volume??"");return Number.isFinite(h)?Math.max(0,Math.min(1,h)):null},Ra=()=>{if(e.tornDown)return;let u=Array.from(document.querySelectorAll("video, audio")),h=[],g=Lu();for(let S of u){if(An.has(S))continue;An.add(S);let A=Fp(S);A!==null&&(S.volume=A),S.addEventListener("loadedmetadata",Ta),S.addEventListener("durationchange",Ta),S.addEventListener("loadedmetadata",kp),Mp(S),S.addEventListener("loadedmetadata",Cp),S.addEventListener("loadedmetadata",Tp),S.addEventListener("error",Rp),_y(S),Iu(S)?h.push(S):Fs(S),Nu(S,g)}h.length>0&&Qt(e.currentTime,h)},Nu=(u,h)=>{Ho.has(u)||Yb(u,e.capturedTimeline,ot(e.capturedTimeline,0),Ho,{allowLiveTimelineSeek:!window.__HF_RENDER_CAPTURE_MODE,...h&&{movers:h}})},Fu=new WeakMap,J_=u=>{let h=Fu.get(u);if(h!==void 0)return h;let g=window.getComputedStyle(u).position,S=g==="static"||g==="relative"||g==="sticky";return Fu.set(u,S),S},Pu=new WeakMap,Q_=u=>{let h=Pu.get(u);if(h!==void 0)return h;let g=u.querySelector("[data-start]")===null;return Pu.set(u,g),g},Z_=()=>{Fu=new WeakMap,Pu=new WeakMap},Nr=new WeakMap,Pp=(u,h)=>{if(!Nr.has(u)){let g=u.style.getPropertyValue("display"),S=u.style.getPropertyPriority("display"),A=h&&g==="none"&&!S;Nr.set(u,A?{value:"",priority:""}:{value:g,priority:S})}u.style.display="none"},Dp=u=>{let h=Nr.get(u);h&&(Nr.delete(u),h.value?u.style.setProperty("display",h.value,h.priority):u.style.removeProperty("display"))},Ma=new WeakSet,ka=!1,Ip=u=>Te(u)&&u.hasAttribute("data-start")&&(ap(u)||b.routesElement(u)),Op=u=>Ip(u)||Array.from(u.querySelectorAll(r_)).some(Ip),Hp=new WeakMap,eC=(u,h)=>{for(let g of ba(document)){if(Qs(g)!==u||b.routesElement(g)||x(g))continue;let S=se(g),A=Ue(g.dataset.duration),_=A!=null&&A>0?S+A:1/0;if(Number.isFinite(S)&&h<_)return!0}return!1},tC=u=>{let h=!1;for(let g of Ca(cn)){let S=g.hasAttribute("data-hidden"),A=Hp.get(g);A!==S&&(Hp.set(g,S),g.id&&(b.setGroupMuted(g.id,S),A&&!S&&eC(g.id,u)&&(h=!0)))}return h},Gp=u=>{let h=ot(e.capturedTimeline,0,u);return(g,S)=>Ts(g,{currentTime:S,compositionDuration:h,canonicalFps:e.canonicalFps,exportRenderSeek:!!window.__HF_EXPORT_RENDER_SEEK_CONFIG,timelineRegistry:window.__timelines??{},resolver:Ee(!0)})},Bp=(u,h,g,S)=>{for(let A=u;A&&A!==S;A=A.parentElement)if(mr(A)&&A.hasAttribute("data-start")&&!n(A)&&!g(A,h))return!1;return!0},Up=()=>({canonicalFps:e.canonicalFps,parked:I0(),parkedClips:ks}),Wp=gc(),Vp=ss(),nC=Dg(u=>Cs(u,{timelineRegistry:window.__timelines??{},resolver:Ee(!0)})),La=new Set,$p=new WeakSet,rC=u=>{if(La.size===0||!p.isPlaying())return;let h=[];for(let A of La){let _=z(A,Number.NaN);A.isConnected&&A.hasAttribute(We)&&!(_<=u+Fa)||(La.delete(A),A.isConnected&&A.hasAttribute(We)&&_>u&&h.push(A))}if(h.length===0)return;let g=new Set(h.flatMap(A=>A.closest(`[${Lt}]`)??[]));for(let A of g)A.removeAttribute(Lt);let S=hc(h);getComputedStyle(h[0]).visibility,S();for(let A of g)A.setAttribute(Lt,"");for(let A of h)$p.add(A)},Na=u=>!1,Fa=2,Pa=4,Du=(u,h,g,S=Fa)=>{let A=Te(u)?se(u):z(u,Number.NaN),_=A+(Z(u)??Number.NaN);return A>g&&A<=g+S||_<=g&&_>=g-S||h(u,g+S)},Fr=null,Iu=u=>Vp&&u.hasAttribute("data-start")&&Ps(u),Pr=new WeakMap,Ou=new WeakMap,Go=new WeakSet,Hu=new WeakSet,qp=u=>V0(u,()=>!e.tornDown&&Pr.get(u)===!0&&se(u)>p.now()),zp=u=>u.parentElement?.closest("[data-composition-id]"),jp=3,Bo=new Set,Uo=new Set,Kp=["canplay","suspend","error"],Yp=u=>{for(let h of Kp)u.removeEventListener(h,Xp);return Bo.delete(u)},Xp=u=>{let h=u.currentTarget;u.type!=="error"&&h.readyState<3||(Yp(h),Jp())},Jp=()=>{let u=Array.from(Uo).filter(h=>h.isConnected).sort((h,g)=>se(h)-se(g));for(let h of u){if(Bo.size>=jp)break;Uo.delete(h),Qt(e.currentTime,[h])}},Qp=u=>{if(Fs(u),qp(u),!(Bo.has(u)||u.readyState>=3)){Bo.add(u);for(let h of Kp)u.addEventListener(h,Xp)}},oC=u=>{let h=Xr(u,Number.NaN),g=$o(Array.from(An).filter(_=>_.isConnected&&Xr(_,Number.NaN)===h&&zp(_)===zp(u))).mediaClips,S=g.find(_=>_.el===u)?.end??Number.NaN,A;for(let _ of g)_.el!==u&&_.start>=S-si(S)&&!(A&&A.start<=_.start)&&(A=_);!A||!Iu(A.el)||(Ou.set(A.el,u),Pr.get(A.el)!==!0&&(Pr.set(A.el,!0),Uo.delete(A.el),Qp(A.el)))},iC=(u,h,g,S,A)=>{let _=p.isPlaying();h&&_?Go.has(u)||(Go.add(u),oC(u)):Go.delete(u);let O=Ou.get(u),q=O!==void 0&&Go.has(O),G=Pr.get(u),k=!h&&!q&&G!==!0&&Bo.size>=jp;k&&g?Uo.add(u):Uo.delete(u);let le=!h&&!A&&_&&se(u)+(Z(u)??Number.NaN)<=S&&(G!==!0||u.networkState===2&&u.readyState<4),be=h||q||g&&!k&&!le;(h||!be)&&Yp(u)&&queueMicrotask(Jp);let ie=be&&!h&&se(u)>p.now(),pe=Hu.has(u);if(ie?Hu.add(u):Hu.delete(u),G===be){ie&&!pe&&qp(u);return}Pr.set(u,be),be?(!h||G===void 0)&&(h?Fs(u):Qp(u)):u.preload!=="none"&&(u.preload="none",G&&W_(u,()=>$0(u)))},Zp=(u,h)=>Fr!==null&&p.isPlaying()&&(h(u,Fr)||Du(u,h,Fr,Pa)),aC=(u,h,g)=>Pr.get(u)===!0&&Du(u,h,g,Pa)||Zp(u,h),Gu=new WeakMap,eh=new WeakSet,Bu=new WeakSet,th=new WeakMap,nh=u=>u.style.visibility==="hidden"&&u.style.getPropertyPriority("visibility")!=="important"&&!Bu.has(u),Uu=new WeakMap,Wu=(u,h)=>{for(let g=u.parentElement;g&&g!==h;g=g.parentElement)if(g.hasAttribute("data-start")&&mr(g)&&nh(g))return!0;return!1},Vu=new Map,rh=-1,sC=Pa+Fa+1,lC=1,uC=(u,h,g)=>{let S=g(u);if(!S||!Number.isFinite(S.start))return null;let A=[];for(let _ of[0,Fa,Pa])A.push(S.start-_,S.end-_,S.end+_);for(let _=u.parentElement;_&&_!==h;_=_.parentElement){if(!_.hasAttribute("data-start"))continue;let O=g(_);if(!O||!Number.isFinite(O.start))return null;A.push(O.start,O.end)}return A.filter(_=>Number.isFinite(_))},cC=(u,h,g,S)=>{if(!g||!(Math.abs(h-u)<=lC))return null;if(rh!==S)return Vu.clear(),rh=S,null;let A={timelineRegistry:window.__timelines??{},resolver:Ee(!0)},_=G=>Cs(G,A),O=Math.min(u,h),q=Math.max(u,h);return G=>{let k=Gu.get(G);if(k===void 0||Te(G)&&(Ou.has(G)||Go.has(G))||!G.hasAttribute(Ut)&&G.style.visibility!==(k?"visible":"hidden")||Wu(G,g)!==(Uu.get(G)??!1))return!1;let J=Vu.get(G);if(J===void 0&&(J=uC(G,g,_),Vu.set(G,J)),!J)return!1;for(let le of J)if(le>=O&&le<=q||Fr!==null&&Math.abs(le-Fr)<=sC)return!1;return!0}},dC=(u,h,g,S)=>{if(Na(u))return;let A=j(),_=!1,O=Gp(g),q=S===void 0||g===void 0?null:cC(S,u,A,g);for(let k of h){if(!mr(k))continue;if(k.hasAttribute("data-hidden")){Ma.has(k)||(Ma.add(k),Op(k)&&(ka=!0)),Pp(k,!1),(Ne(k)||Qe(k))&&i?.setSourceVisibility(k,!1);continue}if(Ma.has(k)&&(Dp(k),Ma.delete(k),Op(k)&&(ka=!0)),!k.hasAttribute("data-start")||q?.(k))continue;let le=Wu(k,A);Uu.set(k,le);let be=O(k,u)&&Bp(k.parentElement,u,O,A)&&!le;Gu.set(k,be);let ie=n(k);if(eh.has(k)||(eh.add(k),k.style.visibility==="hidden"&&Bu.add(k)),!ie&&!(be&&nh(k))){let Xe=k.style,Ye=Xe.getPropertyPriority("visibility")==="important";!be&&!Ye&&!Bu.has(k)&&th.set(k,Xe.getPropertyValue("visibility"));let Ge=be?Ye&&th.get(k)||"visible":"hidden";Xe.setProperty("visibility",Ge,be?"":"important")}k.toggleAttribute(We,!ie&&!be),!ie&&!be&&!$p.has(k)&&La.add(k);let pe=(Wp||Vp)&&!be&&Du(k,O,u);pe&&!k.hasAttribute(dr)&&Zw(k),k.toggleAttribute(dr,pe),Te(k)&&An.has(k)&&Iu(k)&&iC(k,be,pe||aC(k,O,u),u,Zp(k,O)),!Te(k)&&!Qe(k)&&(_=!0),(Ne(k)||Qe(k))&&i?.setSourceVisibility(k,be),be?Dp(k):J_(k)&&Q_(k)&&Pp(k,!0)}_&&vg()&&i?.refresh(),nC(u);let G=tC(u);if((ka||G)&&p.isPlaying()){b.stopAll();for(let k of ba(document))x(k)&&(k.volume=0);oc()}ka=!1},fC=u=>{let h=j(),g=Ca("[data-start]").filter(S=>Gu.has(S)&&Wu(S,h)!==(Uu.get(S)??!1));g.length>0&&Qt(u,g)},Qt=(u,h=Ca("[data-start], [data-hidden]"),g,S)=>he(()=>dC(u,h,g,S)),mC=u=>he(()=>{if(!Wp)return[];let h=j(),g=Gp();return Array.from(document.images).filter(S=>S.closest(`[data-start]:not([${Ut}])[style*="visibility: hidden"]`)!==null&&(S.closest(as)!==null||!S.complete)&&Bp(S,u,g,h))}),Wo=null,Gt=null,Vo=[],oh=u=>u.hasAttribute("data-start")||!!Q(u).compositionRoot,$o=u=>ly({elements:u,shouldIncludeElement:oh,resolveStartSeconds:h=>se(h),resolveDurationSeconds:h=>{let g=Q(h),S=se(h),A=g.inheritedStart!=null&&g.inheritedDuration!=null&&g.inheritedDuration>0?Math.max(0,g.inheritedStart+g.inheritedDuration-S):null,_=Number.isFinite(h.duration)?Vt(h,h.duration):null,O=Ue(h.dataset.duration),q=O!=null&&O>0?O:null;return sy({isVideo:h.tagName==="VIDEO",sourceDuration:_,hostRemaining:A,explicitDuration:q})},resolveHostSlots:de}),pC=(u=Lr())=>{if(Wo&&Wo.revision===u)return Wo;let h=$o().mediaClips;return Wo={revision:u,clips:h,byStart:[...h].sort((g,S)=>g.start-S.start),byEnd:[...h].sort((g,S)=>g.end-S.end)},Gt=null,Vo=[],Wo},$u=(u,h,g,S)=>{let A=0,_=u.length;for(;A<_;){let q=A+_>>1;h(u[q])<g?A=q+1:_=q}let O=[];for(let q=A;q<u.length&&h(u[q])<=S;q+=1)O.push(u[q]);return O},hC=(u,h,g)=>{let S=Gt;if(S===null)return u.clips.map(G=>G.el);let A=2*si(Math.max(Math.abs(S),Math.abs(h))),_=Math.min(S,h)-A,O=Math.max(S,h)+A,q=new Set;for(let G of Vo)q.add(G.el);for(let G of $u(u.byStart,k=>k.start,_,O+g))q.add(G.el);for(let G of $u(u.byEnd,k=>k.end,_,O))q.add(G.el);if(e.isPlaying&&!window.__HF_EXPORT_RENDER_SEEK_CONFIG)for(let G of $u(u.byStart,k=>k.start,h,h+Md*e.playbackRate))q.add(G.el);return[...q]},Da=new WeakSet,ih=u=>{Da.add(u)},ah=u=>{Da.delete(u),En()};window.__hf.leasePausedMedia=ih,window.__hf.releasePausedMedia=ah;let sh=u=>e.nativeMediaSyncDisabled?null:e.isPlaying?u:u.filter(h=>!Da.has(h.el));window.__hf.setLoopStart=u=>{Fr=u!=null&&Number.isFinite(u)&&u>=0?u:null};let gC=u=>{let h=Ru.get(u)?.hostId,g=h?document.querySelector(`[data-composition-id="${CSS.escape(h)}"]`):null,S=g?Z(g):null;return g&&S?z(g,0)+S:1/0},lh=u=>{let h=0;for(let g of u){if(g.data===li)continue;let S=g.getChildren?g:g.timeline,A=Number(g.duration?.())/Number(S?.duration?.()),_=S?.getChildren?lh(S.getChildren(!1,!0,!0))*(Number.isFinite(A)&&A>0?A:1):Number(g.duration?.())||0,O=Math.abs(Number(g.timeScale?.())||1),q=(Number(g.startTime?.())||0)+_/O;q>=Yr||(h=Math.max(h,Math.min(q,gC(g))))}return h};window.__hf.animationEnd=()=>{let u=e.capturedTimeline,h=u?.getChildren?lh(u.getChildren(!1,!0,!0)):Me(u)??0,g=Math.max(h,kr(!0)??0);return g>0&&g<Yr?g:null},window.__hf.audioMeter={start:()=>b.startMetering(),stop:()=>b.stopMetering(),read:()=>b.readLevels()};let bC=()=>{for(let u of document.querySelectorAll("video, audio"))if(Te(u)&&!u.paused&&oh(u)&&!Da.has(u))return!0;return!1},uh=()=>En();document.addEventListener("play",uh,!0),s.push(()=>{document.removeEventListener("play",uh,!0)});let qu=null,ht=u=>{let h=!nt,g=e.isPlaying&&!e.mediaForceSyncNextTick&&Gt!==null?Math.min(Math.max(0,e.currentTime-Gt),.04*Math.min(1,e.playbackRate)):0,S=he(()=>{if(!h)return $o().mediaClips;let q=pC(u);return $o(hC(q,e.currentTime,g)).mediaClips});for(let q of S){let G=Ho.get(q.el);G&&(q.volumeKeyframes=G)}let A=sh(S),_=e.mediaForceSyncNextTick;_&&(e.mediaForceSyncNextTick=!1),A&&(uy({clips:A,timeSeconds:e.currentTime,playing:e.isPlaying,playbackRate:e.playbackRate,outputMuted:e.mediaOutputMuted,userMuted:e.bridgeMuted,userVolume:e.bridgeVolume,forceSync:_,cueAheadSeconds:g,clockAdvancing:p.getSource()!=="audio"||Gt===null||e.currentTime>Gt,getCompositionDuration:()=>ot(e.capturedTimeline,0,u),onElementVolume:(q,G,k,J,le)=>b.setElementVolume(q,k,J,le),isWebAudioOwned:q=>b.ownsElement(q),isWebAudioRouted:q=>b.routesElement(q),seekUnderDip:(q,G)=>b.seekUnderDip(q,G),onAutoplayBlocked:()=>{e.mediaAutoplayBlockedPosted||(e.mediaAutoplayBlockedPosted=!0,Re({source:"hf-preview",type:"media-autoplay-blocked"}))}}),h?(Gt=e.currentTime,Vo=S.filter(q=>In(e.currentTime,q.start-.04,q.end))):(Gt=null,Vo=[]));let O=h&&e.isPlaying&&!_&&qu!==null?qu:void 0;Qt(e.currentTime,void 0,u,O),qu=e.currentTime},it=u=>{u&&En(),u&&ju&&!p.isPlaying()&&at();let h=Math.max(0,Math.round((e.currentTime||0)*e.canonicalFps)),g=Date.now();(u||h!==e.bridgeLastPostedFrame||e.isPlaying!==e.bridgeLastPostedPlaying||e.bridgeMuted!==e.bridgeLastPostedMuted||g-e.bridgeLastPostedAt>=e.bridgeMaxPostIntervalMs)&&(e.bridgeLastPostedFrame=h,e.bridgeLastPostedPlaying=e.isPlaying,e.bridgeLastPostedMuted=e.bridgeMuted,e.bridgeLastPostedAt=g,Re({source:"hf-preview",type:"state",frame:h,currentTime:e.currentTime||0,ended:p.reachedEnd(),isPlaying:e.isPlaying,muted:e.bridgeMuted,playbackRate:e.playbackRate}))},zu="",ch=!1,dh=!1,fh=0,mh="",yC=()=>{let u="";for(let h of document.querySelectorAll("[data-start]"))u+=`${h.id}:${h.tagName}|`;return u},ju=!1,Ia=!1,Ku=!1,xC=()=>{Ku||(Ku=!0,Lb().then(()=>window.requestAnimationFrame(()=>setTimeout(()=>{Ku=!1,Ia=!1,e.tornDown||at()}))))},at=()=>{P(),I(),L();let u=j();if(u){let{width:S,height:A}=v0(u);S!==null&&A!==null&&Re({source:"hf-preview",type:"stage-size",width:S,height:A})}if(or(),ju=p.isPlaying(),ju){delete window.__clipTree;return}if(Ia&&!nt&&Nb())return xC();Ia=!1;let h=qc(Up());window.__clipManifest=h,mh=JSON.stringify(h);let g=yC();if(zu!==g&&Z_(),!window.__clipTree||zu!==g){let S=window;window.__clipTree=l0({startResolver:lt({timelineRegistry:S.__timelines??{},includeAuthoredTimingAttrs:!0}),timelineRegistry:S.__timelines??{},rootDuration:h.durationInFrames/e.canonicalFps}),zu=g}Re({...h,assetsReady:dh}),ch||(ch=!0,Ww(document,({timedOut:S})=>{e.tornDown||(dh=!0,Re({source:"hf-preview",type:"assets-ready",timedOut:S}))})),z_()},SC=()=>{JSON.stringify(qc(Up()))!==mh&&at()},Yu=u=>typeof u=="number"&&Number.isFinite(u)&&u>0?u:0,EC=u=>{let h=Yu(Number(u));if(h<=0)return;let g=j(),S=Yu(Ue(g?.getAttribute("data-duration"))),A=Math.max(fh,Yu(p.getDuration()),S);h<=A||(fh=h,g?.setAttribute("data-duration",String(h)),p.setDuration(h),at(),it(!0))},ct=(u,h=0,g)=>{for(let S of e.deterministicAdapters){try{u==="discover"&&S.discover(),u==="pause"&&S.pause({pageAnimations:g}),u==="play"&&S.play&&S.play()}catch(A){$("runtime.init.site8",A)}if(u==="discover")try{S.seek({time:h,suppressEvents:!0})}catch(A){$("runtime.init.site9",A)}}},ar=()=>{window.__renderReady=!1},vC=Jw(()=>{let u=[];for(let h of e.deterministicAdapters){let g=h.getReadyPromise;if(typeof g=="function")try{let S=g();S&&u.push(S)}catch(S){$("runtime.init.adapterReady",S)}}return u},()=>ar(),u=>$("runtime.init.adapterReady",u)),AC=Jw(()=>{let u=window.__hf?.buildReady;return u?Object.values(u).filter(h=>h!=null&&typeof h.then=="function"):[]},()=>ar(),u=>$("runtime.init.buildReady",u));function Xu(){let u=j();u&&ZA({root:u,fps:e.canonicalFps,durationSeconds:()=>ot(e.capturedTimeline,0)||Number(u.getAttribute("data-duration"))||0,timeline:()=>e.capturedTimeline,now:()=>Math.max(0,e.currentTime||0),seek:(h,g)=>{Wh(e.capturedTimeline,h,{suppressEvents:g})},ignoreMutations:V_})}let wC=()=>{Ra(),K_();let u=qf();return Wl(document),eu(document.body,e.canonicalFps),Xu(),u};if(Be)qf();else{let u={injectedStyles:e.injectedCompStyles,injectedScripts:e.injectedCompScripts,injectedLinks:e.injectedCompLinks,parseDimensionPx:X,onDiagnostic:({code:h,details:g})=>{Re({source:"hf-preview",type:"diagnostic",code:h,details:g})}};ME(u).finally(()=>{Be=!0,wC(),ar()})}let ph=u=>{let h=new Set,g=S=>{for(let A of(S??"").matchAll(/url\(\s*(['"]?)(.*?)\1\s*\)|@import\s+(['"])(.*?)\3/gi))h.add(A[2]??A[4]);for(let A of(S??"").matchAll(/image-set\((?:[^()]|\([^()]*\))*\)/gi))for(let _ of A[0].matchAll(/(['"])(.*?)\1/g))h.add(_[2])};for(let S of u)if(S.tagName==="STYLE"&&g(S.textContent),!(S.tagName==="STYLE"||S.tagName==="SCRIPT"))for(let A of[S,...S.querySelectorAll("*")]){let _=e2.get(A.localName)??[],O=[VE(A),...[..._,"poster","srcset"].map(q=>A.getAttribute(q))];for(let q of O)q&&h.add(q);g(A.getAttribute("style"))}return h},Ju=0,_C=(u,h,g)=>{let S=new Map;for(let A of g?u.querySelectorAll("video, audio"):[]){let _=xa.get(A);if(!_||i?.isGraded(A))continue;let{srcObject:O,sinkId:q,mediaKeys:G}=A;O||q||G||S.set(_,[...S.get(_)??[],A])}for(let A of h.querySelectorAll("video, audio")){let _=sp(A),O=S.get(_)?.shift();if(!O||Qw(O)!==Qw(A)){xa.set(A,_);continue}A.replaceWith(O),window.gsap?.set?.(O,{clearProps:"all"});let q=A.getAttribute("style");q===null?O.removeAttribute("style"):O.setAttribute("style",q),GE(O);let G=O;G.volume=Fp(G)??1,G.muted=e.bridgeMuted||e.mediaOutputMuted||G.defaultMuted,G.defaultPlaybackRate=1,G.playbackRate=e.playbackRate,G.preservesPitch=!0}},Oa=u=>[u,...u.querySelectorAll("[data-composition-id]")].flatMap(h=>h.getAttribute("data-composition-id")||[]),hh=u=>{let h=new Set([e.capturedTimeline,window.gsap?.globalTimeline,...Oo]);for(let[g,S]of Object.entries(window.__timelines??{}))u.includes(g)||h.add(S);return h},Qu=(u,h)=>{let g=hh(h);return(u.getChildren?u.getChildren(!0,!0,!1):[u]).flatMap(A=>(A.targets?.()??[]).filter(_=>typeof _?.totalTime=="function"&&typeof _.kill=="function"&&!g.has(_)))},CC=(u,h,g,S)=>{let A=Oa(h),_=new Set(A.flatMap(G=>[g[G],...S[G]??[]]));for(let G of _)if(G)for(let k of Qu(G,A))_.add(k);let O=new Set([h,...h.querySelectorAll("*")]);for(let G of window.gsap?.globalTimeline?.getChildren?.(!0,!0,!1)??[]){if(!G.targets?.().some(J=>O.has(J)))continue;let k=G;for(;k&&!_.has(k);)k=k.parent;if(!k)throw new Error(`scene ${u} cannot be swapped: an animation outside it moves its elements`)}let q=G=>typeof G?.nodeType=="number"&&!O.has(G);for(let G of _)for(let k of G?[G,...G.getChildren?.(!0,!0,!1)??[]]:[])if(k.targets?.().some(q))throw new Error(`scene ${u} cannot be swapped: its animations write outside the scene`)},gh=async(u,h)=>{let g=window.gsap?.globalTimeline,S=new Set(g?.getChildren?.(!1,!0,!0));await Il(h);let A=window.__hfSceneAnimations,_=u.length===1?Oa(u[0])[0]:void 0;if(!A||!_||!g?.getChildren)return;await Qi(),await new Promise(G=>window.setTimeout(G,0));let O=new Set([...Object.values(A).flat(),...hh([_])]),q=g.getChildren(!1,!0,!0).filter(G=>!S.has(G)&&!O.has(G));(A[_]??(A[_]=[])).push(...q)},bh=(u,h=()=>{})=>{let g=()=>window.__timelines??(window.__timelines={}),S=()=>window.__hfSceneAnimations??(window.__hfSceneAnimations={}),A=e.capturedTimeline,_=u.flatMap(J=>Oa(J)),O=new Set,q=J=>{if(!J||O.has(J))return;O.add(J);let le=J;le.revert?le.revert():le.totalTime?.(0,!0),A?.remove?.(J),le.revert||le.kill?.()},G=()=>{let J=O.size,le=_.flatMap(ie=>[...(S()[ie]??[]).slice().reverse(),g()[ie]]),be=new Set;for(let ie of le)ie&&Qu(ie,_).forEach(pe=>be.add(pe));for(let ie of be)Qu(ie,_).forEach(pe=>be.add(pe));for(let ie of[...le.filter(pe=>!be.has(pe)),...be])q(ie);return O.size>J},k=0;for(;G();)if(++k>8)throw new Error("the old scene keeps starting animations as they stop");h();for(let J of _)delete g()[J],delete S()[J]},TC=u=>{let h=Cn(e.currentTime);ct("pause",0,h),ct("play"),y&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&ic(u.flatMap(ba),b.currentGeneration())},yh=(u,h,g,S=!1)=>{for(let G of u)Wl(document,G);Ra();let A=()=>{for(let G of h)for(let k of[G,...G.querySelectorAll("[data-composition-id]")]){let J=k.getAttribute("data-composition-id");J&&window.__timelines?.[J]?.totalTime?.(0,!0)}};eu(document.body,e.canonicalFps),Xu(),zf(g,h,A),Np(),rr=!1,or();let _=Lu();for(let G of u)for(let k of G.querySelectorAll("video, audio"))Ho.delete(k),Nu(k,_);let O=ot(e.capturedTimeline,0);O>0&&p.setDuration(O),ct("discover",e.currentTime),ea(document);let q=p.isPlaying()&&O>0&&e.currentTime>=O;S&&p.isPlaying()&&!q?TC(u):Wa.seek(q?O:e.currentTime,{keepPlaying:!q}),Qt(e.currentTime),at()},xh=u=>{let h=O=>Array.from(O.querySelectorAll(`style[${vc}]`)),g=h(document),S=new Set(g.flatMap(O=>Ac(O.textContent??""))),A=new Set(h(u).flatMap(O=>Ac(O.textContent??"")).filter(O=>!S.has(O)));if(A.size===0)return;let _=document.createElement("style");_.setAttribute(vc,""),_.textContent=[...A].join(`
|
|
1136
|
-
`),g.length>0?g.at(-1).after(_):document.head.prepend(_)},
|
|
1137
|
-
`);if(A===Ga)return g!==void 0;let _=Mt.filter(({name:k})=>S.has(k)&&h(k)).sort((k,J)=>Math.abs(k.start-u)-Math.abs(J.start-u))[0],O=g??_,q=O?[]:Mt.filter(({name:k})=>!S.has(k)&&!h(k));if(!O&&q.length===0)return Ga=A,!1;let G=k=>Ba.has(k)||Ms(Mt,e.currentTime,p.isPlaying()).has(k);return sr=(async()=>{if(g)await
|
|
1138
|
-
${_}`;if(Ph.has(O))return;Ph.add(O),globalThis.console.warn(`${ig} "${u}" ${_}`)}},Dh=new Map,IC=u=>{let h=Dh.get(u);if(!nt&&h){if(h instanceof WeakRef){let S=h.deref();if(S?.isConnected&&S.getAttribute("data-composition-id")===u)return S}else if(h.missingAt===xt)return null}let g=document.querySelector(`[data-composition-id="${CSS.escape(u)}"]`);return Dh.set(u,g?new WeakRef(g):{missingAt:xt}),g},Ka=new WeakMap,Ih=-1,OC=(u,h)=>{if(Ka.has(h))return Ka.get(h);let g=IC(u),S=g?z(g,0):Number.NaN,A=g&&Number.isFinite(S)?{start:S,hiddenFrom:g.hasAttribute("data-start")&&!n(g)?S+(Z(g)??1/0):1/0,playbackStart:Ci(g),rate:Et(g),timelineDuration:Me(h)}:null;return Ka.set(h,A),A},Oh=new WeakMap,HC=(u,h)=>{if(Oh.get(u)!==h)return!1;try{return u.paused()===!0&&Number(u.totalTime?.())===h}catch{return!1}},GC=(u,h,g)=>{(Ih!==h||nt)&&(Ka=new WeakMap,Ih=h);let S=window.__timelines??{},A=j()?.getAttribute("data-composition-id")??null;for(let[_,O]of Object.entries(S)){if(!O||typeof O!="object"||_===A)continue;let q=OC(_,O);if(!q)continue;let G=q.playbackStart+Dn(q.rate,Math.max(0,Math.min(u,q.hiddenFrom)-q.start)),k=Math.max(0,q.timelineDuration!=null&&q.timelineDuration>0?Math.min(q.timelineDuration,G):G);!nt&&HC(O,k)||(DC(_,O,k,g),Oh.set(O,k))}},Hh=u=>typeof u=="object"&&u!==null,BC=["onStart","onUpdate","onComplete","onReverseComplete","onRepeat"],Gh=(u,h)=>{let g=u[h];if(typeof g!="function")return null;try{let S=Number(g.call(u));return Number.isFinite(S)?S:null}catch(S){return $("runtime.init.gsapCallbackDuration",S),null}},Bh=new WeakMap,UC=(u,h)=>{if(!h)return Uh(u);let g=Bh.get(h.owner);if(g?.version===h.version)return g.value;let S=Uh(u);return Bh.set(h.owner,{version:h.version,value:S}),S},Uh=u=>{if(!("getChildren"in u)||typeof u.getChildren!="function")return!1;let h;try{h=u.getChildren(!0,!0,!0)}catch(g){return $("runtime.init.gsapCallbackChildren",g),!1}if(!Array.isArray(h))return!1;for(let g of h){if(!Hh(g))continue;let S=g.vars;if(!Hh(S)||!BC.some(q=>typeof S[q]=="function"))continue;let O=Gh(g,"totalDuration")??Gh(g,"duration");if(O!=null&&O<=1e-6)return!0}return!1};function Cn(u,h){let g=e.capturedTimeline,S=Wh(g,u,h);return $a=u,qa=g,S}function Wh(u,h,g){let S=g?.suppressEvents===!0,A=g?.revision??Lr();A!==Ir.revision&&(Ir={revision:A,time:Number.NEGATIVE_INFINITY}),rC(h);let _=h>Ir.time,O=_&&u?H0(u,Ir.time,h):null,q=_&&O?.size!==0?Sg(O?k=>O.has(k):void 0):null;if(GC(h,A,g),u){let k=h;if(typeof u.totalDuration=="function")try{let J=Number(u.totalDuration());Number.isFinite(J)&&J>0&&h>J&&(k=J)}catch(J){$("runtime.init.transport.clampDuration",J)}try{if(typeof u.totalTime=="function"){let J=Fh(u);!xi(u,k,S,J)&&!S&&!UC(u,J)&&Vs({totalTime:u.totalTime.bind(u),totalDuration:u.totalDuration?.bind(u),getChildren:u.getChildren?.bind(u)},k,J)}else u.seek(k,S)}catch(J){$("runtime.init.transport.seek",J)}}q?.(),Ir.time=Math.max(Ir.time,h);let G=r2();for(let k of e.deterministicAdapters)if(!(k.name==="gsap"&&u))try{k.seek({time:h,suppressEvents:S,pageAnimations:G})}catch(J){$("runtime.init.transport.adapter",J)}return G}let nc=kw(document,()=>{En()});s.push(()=>nc.disconnect());let Vh=()=>{try{return nc.isActive()}catch{return!1}},WC=()=>!p.isPlaying()&&!_a()&&nc.observing&&(!za||Vh())&&!qo&&e.currentTime===$a&&e.capturedTimeline===qa,rc=()=>`${Lr()}|${kr()??""}`,$h=()=>{_n=window.setTimeout(VC,Ch&&e.capturedTimeline&&rr?t2:e.bridgeMaxPostIntervalMs)},VC=()=>{if(_n=null,!e.tornDown&&!(typeof window>"u"||typeof document>"u")){if(rc()!==Th){En();return}it(!1),$h()}},Or=null,qh=()=>e.transportRafId!=null||Or!=null,Ya=()=>{if(document.visibilityState==="hidden"){Or=window.setTimeout(()=>{Or=null,Yh()},n2);return}e.transportRafId=window.requestAnimationFrame(Yh)},zh=()=>{e.transportRafId!=null&&(window.cancelAnimationFrame(e.transportRafId),e.transportRafId=null),Or!=null&&(window.clearTimeout(Or),Or=null)},jh=()=>{e.tornDown||!qh()||(zh(),Ya())};document.addEventListener("visibilitychange",jh);let $C=()=>{if(e.transportRafId=null,e.tornDown)return;let u=ja;if(ja=!1,u||!WC()){Ya();return}Th=rc(),$h()};En=()=>{e.tornDown||(ja=!0,!(Va||qh())&&(_n!=null&&(window.clearTimeout(_n),_n=null),ja=!1,Ya()))};let qC=u=>{let h=Ca("audio[data-start]"),g=null;for(let S of u?[u,...h]:h){if(!Te(S)||!S.isConnected||x(S)||Rd(S)||S.ended&&!S.loop||!S.hasAttribute("src")&&!S.querySelector("source[src]"))continue;let A=se(S),_=ge(S,A);if(!Number.isFinite(A)||!In(e.currentTime,_.start,_.end))continue;if(S===u)return{el:S,start:A};let O=A+(Vr(S)??1/0);(!g||O>g.runsUntil)&&(g={el:S,start:A,runsUntil:O})}return g},zC=3e3,zo=null,jC=u=>u.readyState>=HTMLMediaElement.HAVE_FUTURE_DATA?(zo=null,!0):(zo?.el!==u&&(zo={el:u,sinceMs:performance.now()}),performance.now()-zo.sinceMs<zC);function Kh(){if(p.isPlaying()&&!e.mediaOutputMuted)if(!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&b.ownsClock()&&b.context){let u=b.getTime();u>=0&&p.attachAudioSource({currentTimeSeconds:u})}else{let u=qC(p.audioElement());u&&!jC(u.el)?p.hasAudioSource()&&p.detachAudioSource():u&&!u.el.paused?p.attachAudioSource({el:u.el,compositionStart:u.start,mediaStart:Ci(u.el),rate:Et(u.el)}):u&&u.el.readyState<HTMLMediaElement.HAVE_FUTURE_DATA?p.attachAudioSource({currentTimeSeconds:e.currentTime}):p.hasAudioSource()&&p.detachAudioSource()}else zo=null,p.hasAudioSource()&&p.detachAudioSource()}let Yh=()=>{if(!(e.tornDown||Va)){Va=!0;try{tc+=1;let u=Lr();u!==Rh&&(Rh=u,qo=!0);let h=Date.now(),g=p.isPlaying(),S=g&&h-kh>=Qm,A=Nh&&!g;if(Nh=g,S){kh=h;let le=rc();le!==Lh&&(Lh=le,qo=!0)}let _=qo&&h-Mh>=Nw;_&&(Mh=h);let O=le=>!g&&tc%le===0;if(Fw({tick:tc,isPlaying:g,hasCapturedTimeline:e.capturedTimeline!=null,currentTimeSeconds:p.now(),compositionChanged:_,playingPollDue:S})){let le=e.capturedTimeline;if(or()){e.capturedTimeline&&e.capturedTimeline!==le&&bn(e.capturedTimeline);let be=ot(e.capturedTimeline,0,u);be>0&&p.setDuration(be),at()}}if(_||O(20)?(at(),qo=!1):A&&SC(),(_||O(30))&&Ra(),e.capturedTimeline){let le=ot(e.capturedTimeline,0,u);le>0&&(!p.isPlaying()||le>=p.getDuration())&&p.setDuration(le)}Kh();let q=p.now();e.currentTime=q,window.__HF_EXPORT_RENDER_SEEK_CONFIG||Z0({nowMs:performance.now(),filmTime:q,fps:e.canonicalFps,rate:e.playbackRate,playing:g,hidden:document.visibilityState==="hidden",waiting:Vo.some(({el:le})=>le.tagName==="VIDEO"&&!le.paused&&le.readyState<3),layoutKey:`${window.innerWidth}x${window.innerHeight}@${window.devicePixelRatio}`});let G=p.isPlaying(),k=!G&&Vh(),J=G&&tw();if(k?za=!0:!J&&(G||za||q!==$a||e.capturedTimeline!==qa)&&(Cn(q,{revision:u}),Ao(q,{playing:G}),G||(za=!1)),G&&Bt.redrawAnimated(),p.isPlaying()&&p.reachedEnd()){b.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1;let le=p.getStopTime();Number.isFinite(le)&&(p.seek(le),e.currentTime=le,Cn(le)),ct("pause"),ht(u),Ao(e.currentTime),it(!0);return}p.isPlaying()?(YC(),ht(u)):bC()&&(Gt=null,ht(u)),it(!1)}finally{Va=!1,$C()}}},Xh=u=>{let h=he(()=>$o().mediaClips);for(let g of sh(h)??[]){if(!g.el.isConnected||!In(u,g.start,g.end))continue;let S=wi(g,u);if(!(Math.abs(g.el.currentTime-S)<=.001))try{g.el.currentTime=At(S)}catch{}}},oc=()=>{if(e.nativeMediaSyncDisabled||e.webAudioMediaDisabled)return;let u=b.startGeneration(),h=ba(document);b.releaseDecodedExcept(h),ic(h,u)},KC=10,Xa={gen:-1,clips:[]},Jh=()=>p.now()+KC*Math.max(1,e.playbackRate),YC=()=>{let u=Xa;if(u.gen!==b.currentGeneration()||u.clips.length===0||e.nativeMediaSyncDisabled||e.webAudioMediaDisabled)return;let h=Jh(),g=u.clips.filter(S=>S.start<=h);g.length!==0&&(u.clips=u.clips.filter(S=>S.start>h),ic(g.flatMap(({el:S})=>S.isConnected?[S]:[]),u.gen))},ic=(u,h)=>{Xa.gen!==h&&(Xa={gen:h,clips:[]});let g=p.now(),S=Jh();for(let A of u){if(x(A))continue;let _=se(A);if(!Number.isFinite(_))continue;let O=Ci(A),q=Number.parseFloat(A.dataset.volume??""),G=Number.isFinite(q)?q:1,k=Ue(A.dataset.duration),J=k!=null&&k>0?k:Number.POSITIVE_INFINITY,{inheritedStart:le,inheritedDuration:be}=Q(A);le!=null&&be!=null&&be>0&&(J=Math.min(J,Math.max(0,le+be-_)));let ie=de(A),pe=yr({start:_,end:_+J},ie);if(ie.length>0){if(pe.end<=pe.start)continue;J=pe.end-_}if(pe.end<=g)continue;if(pe.start>S){Xa.clips.push({el:A,start:pe.start});continue}let Xe=Ro(A);Mo(A,Xe),(Xe.kind==="web-audio"?b.scheduleMediaElementPlayback(A,_,O,p.now(),G,h,e.playbackRate,J):Promise.resolve(null)).then(Ge=>{let Je=h!==b.currentGeneration();if(Ge||!is(A)||!p.isPlaying()||Je||typeof Et(A)!="number")return;let Ja=e.playbackRate*mt(A),$e=A.hasAttribute("data-fx-chain")||A.hasAttribute("data-automation");if(Math.abs(Ja-1)>1e-9){Xe.kind==="web-audio"&&$e&&(A.muted=!0);return}b.decodeAudioElement(A).then(Zt=>{!Zt||!p.isPlaying()||b.schedulePlayback(A,Zt,_,O,()=>p.now(),G,h,e.playbackRate,J,pe.start)})})}};function Qh(){b.setRate(e.playbackRate)&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&y&&p.isPlaying()&&b.hasBoundedActiveSources()&&(b.stopAll(),oc())}if(e.capturedTimeline){let u=ot(e.capturedTimeline,0);u>0&&p.setDuration(u),bn(e.capturedTimeline)}BE(window),Ya(),at(),it(!0),e.controlBridgeHandler=K0({onPlay:()=>{lr.play(),wt("composition_played",{time:lr.getTime()})},onPause:()=>{lr.pause(),wt("composition_paused",{time:lr.getTime()})},onStopMedia:()=>{b.stopAll();let u=document.querySelectorAll("video, audio");for(let h of u)Te(h)&&!h.paused&&h.pause()},onSeek:(u,h)=>{lr.seek(u),wt("composition_seeked",{time:u})},onSetMuted:u=>{e.bridgeMuted=u;let h=u||e.mediaOutputMuted;b.setMuted(h);let g=document.querySelectorAll("video, audio");for(let S of g)Te(S)&&(S.muted=h||S.defaultMuted)},onSetVolume:u=>{e.bridgeVolume=u,b.setVolume(u);let h=document.querySelectorAll("video, audio");for(let g of h){if(!Te(g))continue;let S=parseFloat(g.dataset.volume??""),A=Number.isFinite(S)?S:1;g.volume=ps(A*u)}},onSetMediaOutputMuted:u=>{e.mediaOutputMuted=u;let h=u||e.bridgeMuted;b.setMuted(h);let g=document.querySelectorAll("video, audio");for(let S of g)Te(S)&&(S.muted=h||S.defaultMuted)},onSetNativeMediaSyncDisabled:u=>{e.nativeMediaSyncDisabled!==u&&(e.nativeMediaSyncDisabled=u,e.mediaForceSyncNextTick=!0,u?(b.stopAll(),p.detachAudioSource()):ht())},onSetWebAudioMediaDisabled:u=>{e.webAudioMediaDisabled!==u&&(e.webAudioMediaDisabled=u,e.mediaForceSyncNextTick=!0,u&&(b.stopAll(),p.detachAudioSource()),ht())},onSetPlaybackRate:u=>{ec(u),e.transportClock&&e.transportClock.setRate(e.playbackRate),Qh()},onSetDisplayScale:u=>{Sy(u),Fg(u),Q0(u)},onRequestPreviewFacts:()=>Re({source:"hf-preview",type:"preview-facts",facts:{sceneCount:Mt.length,mountedElementCount:document.body.querySelectorAll("*").length,durationSeconds:p.getDuration(),videos:My(),lighterAt:Ry(),copiesReady:rb()}}),onSetPreviewQuality:Ty,onRetryPreviewCopies:ky,onSetIdleHeartbeat:u=>{Ch=u,En()},onSetRootDuration:EC,onSetPlayRange:(u,h)=>{p.setPlayRange(u,h,e.canonicalFps);let g=p.getPlayStart();if(p.isPlaying()&&(p.now()<g||p.reachedEnd())){Wa.seek(g,{keepPlaying:!0});return}it(!0)},onSetColorGrading:(u,h)=>{Bt.setGrading(u,h)},onSetColorGradingCompare:(u,h)=>{Bt.setCompare(u,h)},onTick:()=>{if(e.tornDown||!p.isPlaying())return;Kh();let u=p.now();if(e.currentTime=u,(u!==$a||e.capturedTimeline!==qa)&&Cn(u),p.reachedEnd()){b.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1;let h=p.getStopTime();Number.isFinite(h)&&(p.seek(h),e.currentTime=h,Cn(h)),ct("pause"),ht(),it(!0)}},onEnablePickMode:()=>Ua.enablePickMode(),onDisablePickMode:()=>Ua.disablePickMode(),onSetRuntimeData:hu,onClearRuntimeData:gu,getCanonicalFps:()=>e.canonicalFps});let ac=()=>{if(!e.tornDown){e.tornDown=!0,zh(),document.removeEventListener("visibilitychange",jh),_n!=null&&(window.clearTimeout(_n),_n=null),e.transportClock=null,b.destroy(),ir!=null&&(window.clearTimeout(ir),ir=null),d!=null&&(window.cancelAnimationFrame(d),d=null),X_(),e.controlBridgeHandler&&(window.removeEventListener("message",e.controlBridgeHandler),e.controlBridgeHandler=null),a&&(window.removeEventListener("error",a),a=null),l&&(window.removeEventListener("unhandledrejection",l),l=null),e.beforeUnloadHandler&&(window.removeEventListener("beforeunload",e.beforeUnloadHandler),e.beforeUnloadHandler=null),Ua.disablePickMode();for(let u of e.deterministicAdapters)if(!(!u||typeof u.revert!="function"))try{u.revert()}catch(h){$("runtime.init.site12",h)}e.deterministicAdapters=[],window.__hf?.buildReady&&(window.__hf.buildReady={});for(let u of s.splice(0))try{u()}catch(h){$("runtime.init.site13",h)}for(let u of e.injectedCompStyles)try{u.remove()}catch(h){$("runtime.init.site14",h)}e.injectedCompStyles=[];for(let u of e.injectedCompLinks)try{u.remove()}catch(h){$("runtime.init.site15",h)}e.injectedCompLinks=[];for(let u of e.injectedCompScripts)try{u.remove()}catch(h){$("runtime.init.site16",h)}e.injectedCompScripts=[],e.capturedTimeline=null,r=()=>{},window.__hfRuntimeTeardown===ac&&(window.__hfRuntimeTeardown=null)}};window.__hfRuntimeTeardown=ac,e.beforeUnloadHandler=ac,window.addEventListener("beforeunload",e.beforeUnloadHandler)}var i_=["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"],lp=[[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 o2(e){if(e<=255)return i_[e];let t=0,n=lp.length-1;for(;t<=n;){let r=t+n>>1,o=lp[r];if(e<o[0]){n=r-1;continue}if(e>o[1]){t=r+1;continue}return o[2]}return"L"}function i2(e){let t=e.length;if(t===0)return null;let n=new Array(t),r=!1;for(let c=0;c<t;){let d=e.charCodeAt(c),m=d,f=1;if(d>=55296&&d<=56319&&c+1<t){let b=e.charCodeAt(c+1);b>=56320&&b<=57343&&(m=(d-55296<<10)+(b-56320)+65536,f=2)}let p=o2(m);(p==="R"||p==="AL"||p==="AN")&&(r=!0);for(let b=0;b<f;b++)n[c+b]=p;c+=f}if(!r)return null;let o=0;for(let c=0;c<t;c++){let d=n[c];if(d==="L"){o=0;break}if(d==="R"||d==="AL"){o=1;break}}let i=new Int8Array(t);for(let c=0;c<t;c++)i[c]=o;let a=o&1?"R":"L",l=a,s=l;for(let c=0;c<t;c++)n[c]==="NSM"?n[c]=s:s=n[c];s=l;for(let c=0;c<t;c++){let d=n[c];d==="EN"?n[c]=s==="AL"?"AN":"EN":(d==="R"||d==="L"||d==="AL")&&(s=d)}for(let c=0;c<t;c++)n[c]==="AL"&&(n[c]="R");for(let c=1;c<t-1;c++)n[c]==="ES"&&n[c-1]==="EN"&&n[c+1]==="EN"&&(n[c]="EN"),n[c]==="CS"&&(n[c-1]==="EN"||n[c-1]==="AN")&&n[c+1]===n[c-1]&&(n[c]=n[c-1]);for(let c=0;c<t;c++){if(n[c]!=="EN")continue;let d;for(d=c-1;d>=0&&n[d]==="ET";d--)n[d]="EN";for(d=c+1;d<t&&n[d]==="ET";d++)n[d]="EN"}for(let c=0;c<t;c++){let d=n[c];(d==="WS"||d==="ES"||d==="ET"||d==="CS")&&(n[c]="ON")}s=l;for(let c=0;c<t;c++){let d=n[c];d==="EN"?n[c]=s==="L"?"L":"EN":(d==="R"||d==="L")&&(s=d)}for(let c=0;c<t;c++){if(n[c]!=="ON")continue;let d=c+1;for(;d<t&&n[d]==="ON";)d++;let m=c>0?n[c-1]:l,f=d<t?n[d]:l,p=m!=="L"?"R":"L";if(p===(f!=="L"?"R":"L"))for(let y=c;y<d;y++)n[y]=p;c=d-1}for(let c=0;c<t;c++)n[c]==="ON"&&(n[c]=a);for(let c=0;c<t;c++){let d=n[c];(i[c]&1)===0?d==="R"?i[c]++:(d==="AN"||d==="EN")&&(i[c]+=2):(d==="L"||d==="AN"||d==="EN")&&i[c]++}return i}function a_(e,t){let n=i2(e);if(n===null)return null;let r=new Int8Array(t.length);for(let o=0;o<t.length;o++)r[o]=n[t[o]];return r}var a2=/[ \t\n\r\f]+/g,s2=/[\t\n\r\f]| {2,}|^ | $/;function l2(e){let t=e??"normal";return t==="pre-wrap"?{mode:t,preserveOrdinarySpaces:!0,preserveHardBreaks:!0}:{mode:t,preserveOrdinarySpaces:!1,preserveHardBreaks:!1}}function u2(e){if(!s2.test(e))return e;let t=e.replace(a2," ");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 c2(e){return/[\r\f]/.test(e)?e.replace(/\r\n/g,`
|
|
1135
|
+
`+dw,Wm=new WeakMap;function Vm(e){return fw.has(e)}var fw=new WeakSet;function $m(e){let t=Wm.get(e);return t||(t=(async()=>{if(!e.audioWorklet)throw new Error("AudioWorklet is unavailable: the page needs a secure context (https, localhost or file://)");let n=`data:text/javascript;base64,${btoa(String.fromCharCode(...new TextEncoder().encode($O)))}`;await e.audioWorklet.addModule(n),fw.add(e)})().catch(n=>{throw Wm.delete(e),n}),Wm.set(e,t)),t}function qO(e,t,n){let r=.6+Math.max(0,Math.min(1,t))*2.6,o=Math.max(1,Math.floor(e*r)),i=new Float32Array(o),a=Math.round(t*1e3)*2654435761+Math.round(n*1e3)*40503>>>0,l=()=>(a=a*1664525+1013904223>>>0,a/4294967295*2-1),s=Math.max(.001,1-Math.max(0,Math.min(1,n))),c=0,d=0;for(let f=0;f<o;f++){c+=s*(l()-c);let p=c*Math.pow(1-f/o,2.5);i[f]=p,d+=p*p}let m=Math.sqrt(d);if(m>0)for(let f=0;f<o;f++)i[f]=(i[f]??0)/m;return i}var Pe=e=>typeof e=="number"?e:Number(e??0),qm=e=>e/1e3;function gw(e,t,n,r){let o=Math.max(1,Math.round(e.sampleRate)),i=e.createBuffer(1,o,e.sampleRate),a=i.getChannelData(0);for(let c=0;c<o;c++){let d=c/o;a[c]=t==="sine"?Math.sin(2*Math.PI*d):4*Math.abs((d+.75)%1-.5)-1}let l=e.createBufferSource();l.buffer=i,l.loop=!0,l.playbackRate.value=n;let s=(r*n%1+1)%1*(o/e.sampleRate);return l.start(typeof e.currentTime=="number"?e.currentTime:0,s),l}function bw(e){try{e.stop()}catch{}e.disconnect()}function zm(e,t){return[{param:e},{param:t,map:n=>1-n}]}function yw(e,t,n){e.gain.value=n,t.gain.value=1-n}function jm(e,t,n){return{input:e,output:e,update:t,automation:n,dispose:()=>e.disconnect()}}var zO=new Set(["peaking","highpass","lowpass"]),mw=e=>Math.pow(10,e/20),jO=(e,t)=>{let n=e.createGain(),r=o=>{n.gain.value=mw(Pe(o.gain))};return r(t),jm(n,r,{gain:[{param:n.gain,map:mw}]})};function ma(e,t){return(n,r)=>{let o=n.createBiquadFilter();o.type=e;let i=a=>{o.frequency.value=Pe(a.frequency),a.q!==void 0&&(o.Q.value=Pe(a.q)),t&&(o.gain.value=Pe(a.gain))};return i(r),jm(o,i,{frequency:[{param:o.frequency}],...zO.has(e)?{q:[{param:o.Q}]}:{},...t?{gain:[{param:o.gain}]}:{}})}}function KO(e){return(t,n)=>{let r=Math.tan(Math.PI*Pe(n.frequency)/t.sampleRate),o=e==="highpass"?t.createIIRFilter([1/(1+r),-1/(1+r)],[1,(r-1)/(r+1)]):t.createIIRFilter([r/(1+r),r/(1+r)],[1,(r-1)/(r+1)]);return jm(o,()=>{})}}function Co(e,t=!1){return(n,r,o)=>{let i=new AudioWorkletNode(n,e,{processorOptions:{...r,__hfElapsed:o}});return{input:i,output:i,update:a=>i.port.postMessage({...a}),...t?{reset:()=>i.port.postMessage({__hfReset:!0})}:{},dispose:()=>{i.port.postMessage({__hfDispose:!0}),i.disconnect()}}}}var YO={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))},XO=(e,t)=>{let n=e.createWaveShaper(),r=e.createGain(),o=e.createGain();r.connect(n).connect(o);let i=a=>{let l=YO[String(a.type)]??Math.tanh,s=Math.pow(10,Pe(a.threshold)/20),c=8192,d=new Float32Array(c);for(let m=0;m<c;m++){let f=m/(c-1)*2-1;d[m]=l(f/Math.max(1e-6,s))*s}n.curve=d,n.oversample=Pe(a.oversample)>=4?"4x":Pe(a.oversample)>=2?"2x":"none",o.gain.value=Math.pow(10,Pe(a.output)/20)};return i(t),{input:r,output:o,update:i,automation:{output:[{param:o.gain,map:a=>Math.pow(10,a/20)}]},dispose:()=>{r.disconnect(),n.disconnect(),o.disconnect()}}},JO=(e,t)=>{let n=e.createGain(),r=e.createGain(),o=e.createDelay(5),i=e.createGain(),a=e.createGain(),l=e.createGain();n.connect(o),o.connect(i),i.connect(o),o.connect(a).connect(r),n.connect(l).connect(r);let s=c=>{o.delayTime.value=Math.min(5,Pe(c.time)/1e3),i.gain.value=Pe(c.feedback),yw(a,l,Pe(c.mix))};return s(t),{input:n,output:r,update:s,automation:{time:[{param:o.delayTime,map:c=>Math.min(5,qm(c))}],feedback:[{param:i.gain}],mix:zm(a.gain,l.gain)},dispose:()=>[n,r,o,i,a,l].forEach(c=>c.disconnect())}},QO=(e,t,n)=>{let r=e.createGain(),o=e.createGain(),i=e.createDelay(.5),a=gw(e,"sine",Pe(t.speed),n),l=e.createGain(),s=e.createGain(),c=e.createGain();a.connect(l).connect(i.delayTime),r.connect(i).connect(s).connect(o),r.connect(c).connect(o);let d=m=>{i.delayTime.value=Pe(m.delay)/1e3,l.gain.value=Pe(m.depth)/1e3,a.playbackRate.value=Pe(m.speed),yw(s,c,Pe(m.mix))};return d(t),{input:r,output:o,update:d,automation:{delay:[{param:i.delayTime,map:qm}],depth:[{param:l.gain,map:qm}],speed:[{param:a.playbackRate}],mix:zm(s.gain,c.gain)},dispose:()=>{bw(a),[r,o,i,l,s,c].forEach(m=>m.disconnect())}}},ZO=6,eH=(e,t,n)=>{let r=e.createGain(),o=e.createGain(),i=e.createGain(),a=e.createGain(),l=gw(e,String(t.type)==="1"?"sine":"triangle",Pe(t.speed),n),s=e.createGain(),c=e.createGain(),d=e.createGain(),m=[];r.connect(i);let f=i;for(let b=0;b<ZO;b++){let y=e.createBiquadFilter();y.type="allpass",y.Q.value=.7071,s.connect(y.frequency),f.connect(y),f=y,m.push(y)}l.connect(s),f.connect(c).connect(a),i.connect(d).connect(a),a.connect(o);let p=b=>{let y=1e3/Math.max(.1,Pe(b.delay));for(let x of m)x.frequency.value=y;s.gain.value=y*Pe(b.decay),l.playbackRate.value=Pe(b.speed),i.gain.value=Pe(b.in_gain),a.gain.value=Pe(b.out_gain),c.gain.value=1,d.gain.value=1};return p(t),{input:r,output:o,update:p,automation:{speed:[{param:l.playbackRate}],in_gain:[{param:i.gain}],out_gain:[{param:a.gain}]},dispose:()=>{bw(l),[r,o,i,a,s,c,d,...m].forEach(b=>b.disconnect())}}},tH=(e,t)=>{let n=e.createGain(),r=e.createGain(),o=e.createConvolver(),i=e.createGain(),a=e.createGain();o.normalize=!1,n.connect(o).connect(i).connect(r),n.connect(a).connect(r);let l="",s=c=>{let d=`${Pe(c.size)}:${Pe(c.damping)}`;if(d!==l){let m=qO(e.sampleRate,Pe(c.size),Pe(c.damping)),f=e.createBuffer(1,m.length,e.sampleRate);f.getChannelData(0).set(m),o.buffer=f,l=d}i.gain.value=Pe(c.wet),a.gain.value=Pe(c.dry)};return s(t),{input:n,output:r,update:s,automation:{wet:[{param:i.gain}],dry:[{param:a.gain}]},dispose:()=>[n,r,o,i,a].forEach(c=>c.disconnect())}},nH={"gain-node":jO,"biquad-peaking":ma("peaking",!0),"biquad-lowshelf":ma("lowshelf",!0),"biquad-highshelf":ma("highshelf",!0),"biquad-highpass":ma("highpass",!1),"biquad-lowpass":ma("lowpass",!1),"worklet-compressor":Co("hf-compressor"),"worklet-limiter":Co("hf-limiter"),"worklet-truepeak":Co("hf-truepeak",!0),"worklet-gate":Co("hf-gate"),"worklet-bitcrush":Co("hf-bitcrush"),"worklet-pitchshift":Co("hf-pitchshift"),waveshaper:XO,"delay-feedback":JO,"chorus-lfo":QO,"allpass-phaser":eH,convolver:tH};function xw(e){return e.nodes.some(t=>ti(t.type)?.web.startsWith("worklet-")??!1)}function rH(e,t,n,r=0){let o=ti(t);if(!o)throw new Error(`Unknown effect type: ${t}`);let i=ni(t,n);if((t==="highpass"||t==="lowpass")&&String(i.poles)==="1")return KO(t)(e,i,r);let a=nH[o.web];if(!a)throw new Error(`No Web Audio builder for ${o.web}`);return a(e,i,r)}function pw(e){let t=[];for(let n of e){let r=n.fromPreset,o=t.at(-1);if(o&&o.preset===r)o.nodes.push(n);else{let i=typeof n.presetAmount=="number"?n.presetAmount:1;t.push({...r?{preset:r}:{},amount:Math.min(1,Math.max(0,i)),nodes:[n]})}}return t}function hw(e){return ri(e).map(t=>{let n=ni(t.type,t.params),r=n.poles!==void 0?`:${n.poles}`:"",o=String(n.poles)==="1"?`@${n.frequency}`:"",i=t.type==="phaser"?`~${n.type}`:"",a=t.fromPreset?`%${t.fromPreset}`:"",l=t.type==="truepeak"?`^${n.lookahead}`:"";return`${t.type}${r}${o}${i}${l}${a}`}).join("|")}function Sw(e,t,n=0){var m;let r=e.createGain(),o=e.createGain(),i=[],a=[],l=pw(ri(t)),s=r;for(let f of l){let p=null;if(f.preset){let b=e.createGain(),y=e.createGain(),x=e.createGain(),v=e.createGain();x.gain.value=f.amount,y.gain.value=1-f.amount,s.connect(b),b.connect(y).connect(v),p={entry:b,wet:x,dry:y,join:v},s=b}for(let b of f.nodes){let y=rH(e,b.type,b.params??{},n);s.connect(y.input),s=y.output,i.push({...b.id?{id:b.id}:{},type:b.type,handle:y})}p&&f.preset&&(s.connect(p.wet).connect(p.join),a.push({id:f.preset,...p}),s=p.join)}s.connect(o);let c=hw(t),d={};for(let f of a)(d[m=f.id]??(d[m]=[])).push(...zm(f.wet.gain,f.dry.gain));return{input:r,output:o,presets:d,nodes:i,update(f){if(hw(f)!==c)return!1;ri(f).forEach((b,y)=>{let x=i[y];x&&(x.handle.update(ni(b.type,b.params)),b.id===void 0?delete x.id:x.id=b.id)});let p=0;for(let b of pw(ri(f))){if(!b.preset)continue;let y=a[p++];!y||y.id!==b.preset||(y.wet.gain.value=b.amount,y.dry.gain.value=1-b.amount)}return!0},reset(){for(let{handle:f}of i)f.reset?.()},dispose(){for(let{handle:f}of i)f.dispose();for(let{entry:f,wet:p,dry:b,join:y}of a)f.disconnect(),p.disconnect(),b.disconnect(),y.disconnect();r.disconnect(),o.disconnect()}}}var Ew={version:1,nodes:[]},vw={version:1,lanes:[]};function Aw(e,t,n=on){let r=(n&&typeof e.getAttribute=="function"?e.getAttribute(n):null)??"";if(!r)return vw;try{return t0(Ss(r),t)}catch{return vw}}function To(e){let t=(typeof e.getAttribute=="function"?e.getAttribute(Pn):null)??"";if(!t)return{chain:Ew,raw:""};try{return{chain:Kg(t),raw:t}}catch{return{chain:Ew,raw:""}}}function ww(e){return Aw(e,To(e).chain)}function Km(e,t,n){let r=cw(t);if(!r)return[];let o=Jg(r,e.gain?.()??1,e.gainAhead);return Um([{param:e.param}],{...r,points:o},xs.scale,n),[{param:e.param}]}function oH(e,t){wo([e]),e.param.setValueAtTime(e.gainAhead?1:Ve(e.gain?.()??1),t.scheduledAt)}function fu(e,t,n,r,o,i={automation:on},a){let{chain:l}=To(t),s=null,c=[],d=!1,m=0,f=()=>{try{s?(n.disconnect(s.input),s.output.disconnect(r),s.dispose()):n.disconnect(r)}catch{}s=null},p=(M,R)=>{if(M.nodes.length===0){n.connect(r);return}if(xw(M)&&!Vm(e)){n.connect(r);let U=++m;$m(e).then(()=>{d||U!==m||E(To(t).chain)}).catch(()=>{});return}try{let U=Sw(e,M,R);n.connect(U.input),U.output.connect(r),s=U}catch{n.connect(r)}},b=(M,R)=>{if(!R){c=[];return}let U=Aw(t,M,i.automation),T=s?uw(U,M,s.nodes,R,s.presets):[],F=a?Km(a,U,R):[];a&&F.length===0&&c.some(W=>W.param===a.param)&&oH(a,R),c=[...T,...F]},y=o?{...o}:null;p(l,y?.elapsed??0),b(l,y);let x=()=>{if(!y)return null;let M=typeof e.currentTime=="number"?e.currentTime:y.scheduledAt;return{scheduledAt:M,elapsed:y.elapsed+(M-y.scheduledAt)*y.rate,rate:y.rate}},v=M=>{let R=x();R&&(_o(c,R.scheduledAt),b(M,R))},E=M=>{let R=x();_o(c,R?.scheduledAt??0),f(),p(M,R?.elapsed??0),b(M,R)},C=null,H=t;typeof MutationObserver<"u"&&typeof H?.nodeType=="number"&&(C=new MutationObserver(()=>{let M=To(t);c.length>0&&wo(c),!s||!s.update(M.chain)?E(M.chain):v(M.chain)}),C.observe(H,{attributes:!0,attributeFilter:[Pn,...i.automation?[i.automation]:[],...a?.gain?["data-volume"]:[]]}));let V=M=>{if(d)return;let R=x();R&&_o(c,R.scheduledAt),y={...M},b(To(t).chain,y)};return{reanchor:M=>{d||(s?.reset(),V(M))},retime:V,setRate:M=>{let R=x();d||!R||!Number.isFinite(M)||M<=0||M===R.rate||(y={...R,rate:M},_o(c,R.scheduledAt),b(To(t).chain,y))},dispose:()=>{d=!0,C?.disconnect(),c.length>0&&_o(c,typeof e.currentTime=="number"?e.currentTime:0),s?.dispose()}}}function _w(e,t){e.getFloatTimeDomainData(t);let n=0;for(let r=0;r<t.length;r++)n=Math.max(n,Math.abs(t[r]??0));return n}function Ym(e,t){let n=e.createGain();n.channelCount=2,n.channelCountMode="explicit";let r=e.createChannelSplitter(2),o=e.createAnalyser(),i=e.createAnalyser();o.fftSize=i.fftSize=2048,t.connect(n),n.connect(r),r.connect(o,0),r.connect(i,1);let a=new Float32Array(new ArrayBuffer(2048*4)),l=new Float32Array(new ArrayBuffer(2048*4));return{read:()=>({l:_w(o,a),r:_w(i,l)}),dispose:()=>{try{t.disconnect(n),n.disconnect(),r.disconnect()}catch{}}}}var Cw="runtime_web_audio_bypass";function Xm(e,t){return typeof e.getAttribute=="function"?e.getAttribute(t):null}function pa(e,t){return Xm(e,t)!==null}function iH(e){return pa(e,"crossorigin")?!0:e.crossOrigin!=null}function aH(e){return typeof e.baseURI=="string"&&e.baseURI?e.baseURI:typeof document<"u"?document.baseURI:""}function sH(e){let t=typeof e.currentSrc=="string"?e.currentSrc:"";if(t)return[t];let n=Xm(e,"src");if(n)return[n];if(typeof e.querySelectorAll!="function")return[];let r=[];for(let o of Array.from(e.querySelectorAll("source"))){let i=o.getAttribute("src");i&&r.push(i)}return r}function lH(e,t){let n;try{n=new URL(e,aH(t))}catch{return null}return n.protocol!=="http:"&&n.protocol!=="https:"?null:n}function uH(){return typeof window.origin=="string"?window.origin:window.location.origin}function cH(e,t){if(typeof window>"u")return null;let n=lH(e,t);if(!n)return null;let r=uH(),o=r==="null";return!o&&n.origin===r||iH(t)?null:o?"opaque_document_origin":"cross_origin_no_cors"}function Rw(e){return(typeof e.currentSrc=="string"?e.currentSrc:"")?!0:pa(e,"src")}function Ro(e){for(let t of sH(e)){let n=cH(t,e);if(n)return{kind:"decode-only",reason:n,asset:t}}return{kind:"web-audio"}}function dH(e){let t=[];pa(e,Pn)&&t.push("fx-chain"),pa(e,on)&&t.push("automation"),pa(e,Js)&&t.push("audio-group");let n=Number.parseFloat(Xm(e,"data-volume")??"");return Number.isFinite(n)&&n>1&&t.push("above-unity-gain"),t}function fH(){return typeof window<"u"&&!!window.__HF_EXPORT_RENDER_SEEK_CONFIG}var Tw=new WeakSet,mH={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"},pH={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 Mo(e,t){if(t.kind==="web-audio"||fH()||Tw.has(e))return;let n=dH(e);Tw.add(e);let r={asset:t.asset,reason:t.reason,lostProcessing:n,note:mH[t.reason]};Re({source:"hf-preview",type:"diagnostic",code:Cw,details:r});let o=n.length>0?` Native playback cannot reproduce: ${n.join(", ")}. Fix: ${pH[t.reason]}`:"";globalThis.console.info(`[hyperframes] ${Cw}: "${t.asset}" (${t.reason}): Web Audio capture withheld; the track plays through native HTMLMediaElement output.${o}`)}function mu(e){return new URL(e,document.baseURI).href}var hH={automation:null};function Jm(e){return!Number.isFinite(e)||e<=0?1:e}function Mw(e){return Ve(e)}function gH(e,t){t||e.paused||!ts().__hfDebug||globalThis.console.debug("[hyperframes] webAudioTransport claimed fallback-playing element:",e.currentSrc||e.getAttribute("src")||"")}function bH(e,t){let{elapsed:n,mediaStart:r,scheduledAt:o,globalRate:i,mediaRate:a,clipDuration:l,headCut:s}=t,c=Number.isFinite(l)&&l>0,d=Math.max(n,s,0),m=(l-d)*a;if(c&&m<=0)return!1;let f=d>n?o+(d-n)/i:0;return c?e.start(f,d*a+r,m):e.start(f,d*a+r),!0}function yH(e,t,n,r,o){let i=xd(Ys(t),o);if(i.fadeIn<=0&&i.fadeOut<=0||i.fadeOut>0&&!Number.isFinite(o))return null;let a=e.createGain(),l=a.gain,s=d=>Xs(d,o,i),c=d=>{let m=Math.max(r,d.elapsed),f=p=>d.scheduledAt+Math.max(0,p-d.elapsed)/d.rate;if(l.value=s(m),l.setValueAtTime(s(m),f(m)),i.fadeIn>m&&l.linearRampToValueAtTime(s(i.fadeIn),f(i.fadeIn)),i.fadeOut>0){let p=o-i.fadeOut;p>m&&p>i.fadeIn&&l.setValueAtTime(s(p),f(p)),l.linearRampToValueAtTime(0,f(o))}};return c(n),{node:a,rebook:d=>{l.cancelScheduledValues(0),c(d)}}}function kw(e,t,n,r,o,i){let a=e.createGain();a.connect(r);let l=e.createGain(),s=yH(e,t,o,i.from,i.clipDuration);return s&&n.connect(s.node),(s?.node??n).connect(l),{fx:fu(e,t,l,a,o,void 0,{param:a.gain,gain:()=>Si(t),gainAhead:!0}),laneNode:a,clipGainNode:l,fades:s}}function ko(e){return e.sourceKind==="buffer"}var Lw=e=>{let t=e.currentSrc||e.getAttribute("src");if(!t)return null;try{return mu(t)}catch{return t}},Qm=.015,Nw=["seeked","error","emptied","abort"],Fw=["playing","seeked","ratechange"],xH=1e4,pu=class{constructor(){Se(this,"_ctx",null);Se(this,"_bufferCache",new Map);Se(this,"_decoding",new Map);Se(this,"_failedSrcs",new Set);Se(this,"_mediaElementSources",new WeakMap);Se(this,"_activeSources",[]);Se(this,"_masterGain",null);Se(this,"_busOut",null);Se(this,"_master",null);Se(this,"_monitorGain",null);Se(this,"_masterVolume",1);Se(this,"_masterMuted",!1);Se(this,"_groups",new Map);Se(this,"_metering",!1);Se(this,"_masterTap",null);Se(this,"_groupTaps",new Map);Se(this,"_rateAnchorCtx",0);Se(this,"_rateAnchorComp",0);Se(this,"_rate",1);Se(this,"_paused",!0);Se(this,"_playGeneration",0);Se(this,"_playingCaptured",new Set);Se(this,"_suspendPending",!1);Se(this,"_restTimer",null)}async init(){try{return this._ctx=new AudioContext,this._ctx.onstatechange=()=>this.rest(),this._masterGain=this._ctx.createGain(),this._busOut=this._ctx.createGain(),this._monitorGain=this._ctx.createGain(),this._masterGain.connect(this._busOut),this._busOut.connect(this._monitorGain),this._monitorGain.connect(this._ctx.destination),this.applyMasterGain(),this._metering&&this.attachMasterTap(),!0}catch{return!1}}async wake(){!this._ctx||this._ctx.state==="running"&&!this._suspendPending||(this._suspendPending=!1,await this._ctx.resume())}rest(){this._restTimer!==null&&clearTimeout(this._restTimer),this._restTimer=null,!(!this._ctx||this._ctx.state!=="running"||this._suspendPending)&&(this._restTimer=setTimeout(()=>{this._restTimer=null,this.suspendIfIdle()},xH))}suspendIfIdle(){for(let t of this._playingCaptured)t.paused&&this._playingCaptured.delete(t);!this._ctx||!this._paused||this._suspendPending||this._playingCaptured.size>0||(this._suspendPending=!0,this._ctx.suspend().catch(t=>{this._suspendPending=!1,$("webAudioTransport.suspend",t)}))}get context(){return this._ctx}getTime(){return!this._ctx||this._paused?-1:this._rateAnchorComp+(this._ctx.currentTime-this._rateAnchorCtx)*this._rate}releaseDecodedExcept(t){let n=new Set(t.map(Lw));for(let r of[...this._bufferCache.keys()])n.has(r)||this._bufferCache.delete(r)}decodeAudioElement(t){let n=Lw(t);if(!n)return Promise.resolve(null);let r=this._decoding.get(n);if(r)return r;let o=this.fetchAndDecode(n).finally(()=>this._decoding.delete(n));return this._decoding.set(n,o),o}async fetchAndDecode(t){if(this._bufferCache.has(t))return this._bufferCache.get(t);if(this._failedSrcs.has(t)||!this._ctx)return null;let n;try{let r=await fetch(t,{cache:"no-store"});if(!r.ok)return $("webAudioTransport.fetch",new Error(`${r.status} ${t}`)),null;n=await r.arrayBuffer()}catch(r){return $("webAudioTransport.fetch",r),null}try{let r=await this._ctx.decodeAudioData(n);return this._bufferCache.set(t,r),r}catch(r){return this._failedSrcs.add(t),$("webAudioTransport.decode",r),null}}startGeneration(){return this._playGeneration+=1,this._playGeneration}currentGeneration(){return this._playGeneration}acquireMediaElementSource(t){let n=this._mediaElementSources.get(t);if(n){let a=Ro(t);if(a.kind!=="web-audio"){try{n.disconnect()}catch{}return this._mediaElementSources.delete(t),Mo(t,a),null}return n}if(!this._ctx)return null;let r=Ro(t);if(r.kind!=="web-audio")return Mo(t,r),null;let o=this._ctx.createMediaElementSource(t);this._mediaElementSources.set(t,o),t.paused||this._playingCaptured.add(t),t.addEventListener("play",()=>{this._playingCaptured.add(t),this.wake()});let i=()=>{this._playingCaptured.delete(t),this.rest()};return t.addEventListener("pause",i),t.addEventListener("emptied",i),o}async scheduleMediaElementPlayback(t,n,r,o,i,a,l=1,s=Number.POSITIVE_INFINITY){if(!this._ctx||!this._masterGain||a!==this._playGeneration)return null;try{if(await this.wake(),a!==this._playGeneration)return null;let c=this.acquireMediaElementSource(t);if(!c)return null;c.disconnect();let d=Jm(l),m=this._ctx.createGain();m.gain.value=i;let f=this._ctx.currentTime,p=o-n,b={scheduledAt:f,elapsed:p,rate:d};m.connect(this.resolveDestination(t,f,o,d)??this._masterGain);let y=this._ctx.createGain();c.connect(y);let{fx:x,laneNode:v,clipGainNode:E,fades:C}=kw(this._ctx,t,y,m,b,{from:Math.max(p,0),clipDuration:s});this._rate=d,this._rateAnchorCtx=f,this._rateAnchorComp=o;let H={fx:x,fades:C,dipNode:y,el:t,sourceNode:c,sourceKind:"media-element",gainNode:m,laneNode:v,clipGainNode:E,compositionStart:n,mediaStart:r,scheduledAt:f,priorMuted:t.muted,priorVolume:t.volume,mediaPlaybackRate:mt(t),bounded:!1,unfollow:this.followElement(t,n,r,x,C)};return t.volume=1,this._activeSources.push(H),this._paused=!1,H}catch(c){return $("webAudioTransport.mediaElementSource",c),null}}followElement(t,n,r,o,i){let a=()=>{if(t.paused||!this._ctx)return;let l=Et(t),s=t.currentTime-r,c=t.duration-r;if(t.loop&&c>0){let p=Dn(l,this.getTime()-n);s+=Math.round((p-s)/c)*c}let d=an(l,s),m=t.playbackRate/ai(l,d);if(!(m>0)||!Number.isFinite(d))return;let f={scheduledAt:this._ctx.currentTime,elapsed:d,rate:m};o?.retime(f),i?.rebook(f)};for(let l of Fw)t.addEventListener(l,a);return()=>{for(let l of Fw)t.removeEventListener(l,a)}}seekUnderDip(t,n){let r=this._activeSources.find(s=>s.el===t&&s.sourceKind==="media-element"),o=this._ctx;if(!o||!r?.dipNode)return!1;if(r.dipping)return!0;r.dipping=!0;let i=r.dipNode.gain,a=s=>{let c=o.currentTime;i.cancelScheduledValues(c),i.setValueAtTime(i.value,c),i.linearRampToValueAtTime(s,c+Qm)},l=()=>{for(let s of Nw)t.removeEventListener(s,l);r.dipping=!1,a(1)};return a(0),setTimeout(()=>{if(this._activeSources.includes(r)){for(let s of Nw)t.addEventListener(s,l);try{t.currentTime=At(n+Qm*t.playbackRate)}catch(s){$("webAudioTransport.seekUnderDip",s),l()}}},Qm*1e3),!0}groupInput(t,n,r){let o=this._groups.get(t);if(o){if(o.generation!==this._playGeneration)try{o.reanchor(r),o.generation=this._playGeneration}catch(p){$("webAudioTransport.groupReanchor",p)}return o.input}if(!this._ctx||!this._masterGain)return null;let i=this._ctx.createGain(),a=this._ctx.createGain();a.connect(this._masterGain);let l=()=>Sd(n,t),s=l(),c=this._ctx.createGain();c.gain.value=s?.hasAttribute("data-hidden")?0:1,c.connect(a);let d=this._ctx.createGain();d.gain.value=Mw(Si(s)),d.connect(c);let m={param:d.gain,gain:()=>Si(l())},f=fu(this._ctx,s??{getAttribute:()=>null},i,d,r,void 0,s?m:void 0);return this._groups.set(t,{input:i,output:a,isPresent:()=>l()!==null,fader:d,muteGain:c,fx:f,generation:this._playGeneration,reanchor:p=>{wo([{param:d.gain}]);let b=l();d.gain.value=Mw(Si(b)),c.gain.value=b?.hasAttribute("data-hidden")?0:1,f?.reanchor(p),b&&b!==s&&Km(m,ww(b),p)},dispose:()=>{try{f?.dispose(),i.disconnect(),d.disconnect(),c.disconnect(),a.disconnect()}catch{}}}),this.attachGroupTap(t,a),i}startMetering(){this._metering=!0,this.attachMasterTap();for(let[t,n]of this._groups)this.attachGroupTap(t,n.output)}stopMetering(){this._metering=!1,this._masterTap?.dispose(),this._masterTap=null;for(let t of this._groupTaps.values())t.dispose();this._groupTaps.clear()}readLevels(){let t={};for(let[n,r]of this._groupTaps)this._groups.get(n)?.isPresent()&&(t[n]=r.read());return{master:this._masterTap?.read()??{l:0,r:0},groups:t}}attachMasterTap(){this._ctx&&this._masterGain&&!this._masterTap&&(this._masterTap=Ym(this._ctx,this._busOut??this._masterGain))}attachGroupTap(t,n){this._metering&&this._ctx&&!this._groupTaps.has(t)&&this._groupTaps.set(t,Ym(this._ctx,n))}setGroupMuted(t,n){let r=this._groups.get(t);if(r)try{r.muteGain.gain.value=n?0:1}catch(o){$("webAudioTransport.setGroupMuted",o)}}ensureMasterBus(t,n){if(!this._ctx||!this._masterGain||!this._busOut)return;if(this._master){if(this._master.generation===this._playGeneration)return;try{this._master.fx?.reanchor(n),this._master.generation=this._playGeneration}catch(i){$("webAudioTransport.masterReanchor",i)}return}let r=Ed(t);if(!r)return;this._masterGain.disconnect(this._busOut);let o=fu(this._ctx,r,this._masterGain,this._busOut,n,hH);this._master={fx:o,generation:this._playGeneration}}resolveDestination(t,n,r,o){if(!this._masterGain)return null;let i={scheduledAt:n,elapsed:r,rate:o};this.ensureMasterBus(t.ownerDocument,i);let a=Zs(t);return a?this.groupInput(a,t.ownerDocument,i)??this._masterGain:this._masterGain}handleSourceEnded(t,n,r,o){let i=this._activeSources.indexOf(n);if(i!==-1){this._activeSources.splice(i,1),r.muted=o;try{t.disconnect(),n.fx?.dispose(),n.fades?.node.disconnect(),n.clipGainNode.disconnect(),n.laneNode.disconnect(),n.gainNode.disconnect()}catch{}this._activeSources.length===0&&(this._paused=!0)}}async schedulePlayback(t,n,r,o,i,a,l,s=1,c=Number.POSITIVE_INFINITY,d=r){if(!this._ctx||!this._masterGain||l!==this._playGeneration)return null;try{if(await this.wake(),l!==this._playGeneration)return null;let m=i(),f=Jm(s),p=mt(t),b=f*p,y=this._ctx.createBufferSource();y.buffer=n,y.playbackRate.value=b;let x=this._ctx.createGain();x.gain.value=a;let v=m-r,E=this._ctx.currentTime,C={scheduledAt:E,elapsed:v,rate:f};x.connect(this.resolveDestination(t,E,m,f)??this._masterGain);let H=d-r,{fx:V,laneNode:M,clipGainNode:R,fades:U}=kw(this._ctx,t,y,x,C,{from:Math.max(v,H,0),clipDuration:c});if(this._rate=f,this._rateAnchorCtx=E,this._rateAnchorComp=m,!bH(y,{elapsed:v,mediaStart:o,scheduledAt:E,globalRate:f,mediaRate:p,clipDuration:c,headCut:H}))return y.disconnect(),V?.dispose(),U?.node.disconnect(),R.disconnect(),M.disconnect(),x.disconnect(),null;let T=t.muted;t.muted=!0,gH(t,T);let F={fx:V,fades:U,el:t,sourceNode:y,sourceKind:"buffer",gainNode:x,laneNode:M,clipGainNode:R,compositionStart:r,mediaStart:o,scheduledAt:E,priorMuted:T,priorVolume:t.volume,mediaPlaybackRate:p,bounded:Number.isFinite(c)&&c>0};return this._activeSources.push(F),this._paused=!1,y.addEventListener("ended",()=>this.handleSourceEnded(y,F,t,T)),F}catch(m){return $("webAudioTransport.schedule",m),null}}setRate(t){let n=Jm(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)if(ko(r))try{r.sourceNode.playbackRate.value=n*r.mediaPlaybackRate,r.fx?.setRate(n),this._ctx&&!this._paused&&r.fades?.rebook({scheduledAt:this._ctx.currentTime,elapsed:this.getTime()-r.compositionStart,rate:n})}catch(o){$("webAudioTransport.setRate",o)}return this.setBusRate(n),!0}setBusRate(t){let n=[...this._groups.values(),...this._master?[this._master]:[]];for(let r of n)try{r.fx?.setRate(t)}catch(o){$("webAudioTransport.setRate.bus",o)}}hasBoundedActiveSources(){return this._activeSources.some(t=>ko(t)&&t.bounded)}stopAll(){for(let t of this._activeSources)this.dispose(t);this._activeSources=[],this._paused=!0,this._playGeneration+=1,this.rest()}releaseDetached(){this._activeSources=this._activeSources.filter(t=>t.el.isConnected?!0:(this.dispose(t,!1),!1))}dispose(t,n=!0){t.unfollow?.();try{ko(t)&&t.sourceNode.stop(),t.sourceNode.disconnect(),t.fx?.dispose(),t.fades?.node.disconnect(),t.dipNode?.disconnect(),t.clipGainNode.disconnect(),t.laneNode.disconnect(),t.gainNode.disconnect()}catch{}ko(t)?t.el.muted=t.priorMuted:(t.el.volume=t.priorVolume,this._ctx&&n&&t.sourceNode.connect(this._ctx.destination))}setVolume(t){this._masterVolume=Math.max(0,Math.min(1,t)),this.applyMasterGain()}setElementVolume(t,n,r=1,o=n){for(let i of this._activeSources)if(i.el===t)try{i.sourceKind==="media-element"&&(i.el.volume=1),i.gainNode.gain.value=Ve(i.fades?o:n),i.clipGainNode.gain.value=Ve(r)}catch(a){$("webAudioTransport.setElementVolume",a)}}setMuted(t){this._masterMuted=t,this.applyMasterGain()}applyMasterGain(){this._monitorGain&&(this._monitorGain.gain.value=this._masterMuted?0:this._masterVolume)}ownsClock(){return!this._paused&&this._activeSources.some(ko)}ownsElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t&&ko(n))}routesElement(t){return!this._paused&&this._activeSources.some(n=>n.el===t)}destroy(){this.stopAll(),this.stopMetering();for(let t of this._groups.values())t.dispose();if(this._groups.clear(),this._master?.fx?.dispose(),this._master=null,this._bufferCache.clear(),this._failedSrcs.clear(),this._mediaElementSources=new WeakMap,this._playingCaptured.clear(),this._suspendPending=!1,this._restTimer!==null&&clearTimeout(this._restTimer),this._restTimer=null,this._ctx)try{this._ctx.close()}catch{}this._ctx=null,this._masterGain=null,this._busOut=null,this._monitorGain=null,this._masterVolume=1,this._masterMuted=!1}};var ha="data-hf-studio-manual-edit-gesture";var Pw=`[${ha}]`;function Dw(e,t){let n=e.defaultView?.MutationObserver??globalThis.MutationObserver;if(!n||!e.documentElement)return{isActive:()=>e.querySelector(Pw)!=null,observing:!1,disconnect:()=>{}};let r=new Set(e.querySelectorAll(Pw)),o=l=>{for(let s of l){let c=s.target;He(c)&&(c.hasAttribute(ha)?r.add(c):r.delete(c))}},i=l=>{l.length!==0&&(o(l),t())},a=new n(i);return a.observe(e.documentElement,{subtree:!0,attributes:!0,attributeFilter:[ha]}),{observing:!0,isActive:()=>{i(a.takeRecords());for(let l of r){if(l.isConnected&&l.hasAttribute(ha))return!0;r.delete(l)}return!1},disconnect:()=>{a.disconnect(),r.clear()}}}var gn=e=>({ok:!1,reason:e});function Zm(e,t){if(e<=0)return gn("non-positive");let n=e/t;return n<1||n>240?gn("out-of-range"):{ok:!0,value:{num:e,den:t}}}function SH(e){return Number.isFinite(e)?Number.isInteger(e)?Zm(e,1):gn("ambiguous-decimal"):gn("not-a-number")}function EH(e){let t=e.split("/");if(t.length!==2)return gn("invalid-fraction");let n=Number(t[0]),r=Number(t[1]);return!Number.isFinite(n)||!Number.isFinite(r)?gn("not-a-number"):!Number.isInteger(n)||!Number.isInteger(r)||r<=0?gn("invalid-fraction"):Zm(n,r)}function Iw(e){if(typeof e=="number")return SH(e);let t=e.trim();return t===""?gn("empty"):t.includes("/")?EH(t):/^-?\d+$/.test(t)?Zm(Number(t),1):gn(/^-?\d*\.\d+$/.test(t)?"ambiguous-decimal":"not-a-number")}var Ow=333.3333333333333,ep=1e3*60/60;function Hw(e){return e.isPlaying&&e.hasCapturedTimeline&&e.currentTimeSeconds<2?!1:e.compositionChanged===!0?!0:e.isPlaying?e.playingPollDue===!0:Number.isInteger(e.tick)&&e.tick>0&&e.tick%60===0}var vH=/^\s*spring\(\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+))\s*\)\s*$/;function Gw(e){return Math.max(0,Math.min(1,e))}function Bw(e){let t=vH.exec(e);if(!t)return null;let n=Number(t[1]);return Number.isFinite(n)?Gw(n):null}function Uw(e,t){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let n=Gw(t),r=12-n*6,o=Math.PI*2*(1+n*1.5),i=1-Math.exp(-r)*Math.cos(o);return(1-Math.exp(-r*e)*Math.cos(o*e))/i}var AH=/^\s*wiggle\(\s*(\d+)\s*,\s*(easeOut|easeInOut|anticipate|uniform)\s*(?:,\s*([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:[eE][+-]?\d+)?)\s*)?\)\s*$/,wH=Math.PI*2;function _H(e){let t=AH.exec(e);if(!t)return null;let n=Number(t[1]);if(!Number.isSafeInteger(n)||n<1)return null;let r=t[2];if(r!=="easeOut"&&r!=="easeInOut"&&r!=="anticipate"&&r!=="uniform")return null;if(t[3]===void 0)return{wiggles:n,type:r};let o=Number(t[3]);return!Number.isFinite(o)||o<0||o>1?null:{wiggles:n,type:r,amplitude:o}}function CH(e,t,n,r){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let o=r??(n==="easeInOut"?.08:n==="uniform"?.14:n==="anticipate"?.12:.16),i=n==="easeInOut"?o*Math.sin(Math.PI*e):n==="uniform"?o:o*(1-e);return e+(n==="anticipate"?-1:1)*i*Math.sin(wH*t*e)}function Ww(e,t){let n=_H(e);if(!n)return null;let r=`${n.wiggles}:${n.type}:${n.amplitude??"default"}`,o=t?.get(r);if(o)return o;let i=a=>CH(a,n.wiggles,n.type,n.amplitude);return t?.set(r,i),i}var TH=24,Vw=e=>e>=1?1:0,RH=e=>e,hu=String.raw`([+-]?(?:\d+(?:\.\d*)?|\.\d+)(?:e[+-]?\d+)?)`,MH=new RegExp(String.raw`^\s*M\s*0\s*,\s*0\s+C\s*${hu}\s*,\s*${hu}\s+${hu}\s*,\s*${hu}\s+1\s*,\s*1\s*$`,"i");function $w(e,t,n){let r=1-e;return 3*r*r*e*t+3*r*e*e*n+e*e*e}function kH(e,t,n,r,o){if(!Number.isFinite(e))return e;if(e<=0)return 0;if(e>=1)return 1;let i=0,a=1;for(let l=0;l<TH;l+=1){let s=(i+a)/2;$w(s,t,r)<e?i=s:a=s}return $w((i+a)/2,n,o)}function LH(e){let t=MH.exec(e);if(!t)return null;let n=Number(t[1]),r=Number(t[2]),o=Number(t[3]),i=Number(t[4]);return Math.min(n,o)<0||Math.max(n,o)>1?null:a=>kH(a,n,r,o,i)}function NH(e,t){if(!e.startsWith("spring("))return null;let n=Bw(e);if(n===null)return null;let r=t.get(n);if(r)return r;let o=i=>Uw(i,n);return t.set(n,o),o}function FH(e,t){if(!e.startsWith("custom(")||!e.endsWith(")"))return null;let n=e.slice(7,-1),r=t.get(n);if(r)return r;let o=LH(n);return o&&t.set(n,o),o}function qw(e){if(e.__hfCustomEaseInstalled)return!0;let t=e.parseEase;if(!t)return!1;let n=new Map,r=new Map,o=new Map,i=s=>typeof s!="string"?null:s==="hold"?Vw:Ww(s,o)??NH(s,r)??FH(s,n),a=(s,c,d=[])=>{let m=i(s);return m||(typeof s=="string"&&/^(?:hold|spring|wiggle|custom)(?:\(|$)/.test(s.trim())&&wt("custom_ease_parse_failed",{ease:s}),t.call(c,s,...d)??RH)};e.parseEase=function(c,...d){return a(c,this,d)};let l=e.registerEase;if(typeof l=="function"){l("hold",Vw);let s=c=>{let d=m=>m;d.config=(...m)=>a(`${c}(${m.join(",")})`,e),l(c,d)};s("spring"),s("wiggle"),s("custom")}return e.__hfCustomEaseInstalled=!0,!0}var np="first-frame",PH=3;function DH(e){let t=e.ownerDocument?.defaultView;return t&&e instanceof t.Element?!0:e instanceof Element}function IH(e){if(!DH(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 OH(e){return e.hasAttribute("data-start")||e.hasAttribute("data-track-index")}function HH(e,t,n){let r=e;for(;r;){if(OH(r)&&!Ts(r,{currentTime:0,compositionDuration:Number.POSITIVE_INFINITY,canonicalFps:30,exportRenderSeek:!1,timelineRegistry:n,resolver:t}))return!1;r=r.parentElement}return!0}function zw(e,t,n,r){return t==="all"?!0:HH(e,n,r)}function GH(e,{scope:t="all"}={}){let n=e.defaultView,r=lt({documentRef:e,timelineRegistry:n?.__timelines,includeAuthoredTimingAttrs:!0}),o=e.querySelector(`meta[name="${ns}"]`)!==null,i=Array.from(e.querySelectorAll("video, audio")).filter(IH).filter(s=>zw(s,o&&s.preload!=="auto"?np:t,r,n?.__timelines??{})).filter(s=>s.readyState<PH),a=Array.from(e.querySelectorAll("img")).filter(s=>zw(s,s.getAttribute("loading")?.toLowerCase()==="lazy"?np:t,r,n?.__timelines??{})).filter(s=>!s.complete),l=e.fonts?.status==="loading";return{pendingMedia:i,pendingImages:a,fontsLoading:l}}function BH(e,{pendingMedia:t,pendingImages:n,fontsLoading:r},o){let i=t.map(s=>new Promise(c=>{if(s.error){c();return}let d=()=>{s.removeEventListener("canplay",d),s.removeEventListener("error",d),o.removeEventListener("abort",d),c()};s.addEventListener("canplay",d),s.addEventListener("error",d),o.addEventListener("abort",d,{once:!0})})),a=n.map(s=>s.decode?s.decode().catch(()=>{}):Promise.resolve()),l=r&&e.fonts?e.fonts.ready.then(()=>{}):Promise.resolve();return Promise.all([...i,...a,l]).then(()=>{})}function UH(e,t,{scope:n="all"}={}){let r=GH(e,{scope:n});return r.pendingMedia.length===0&&r.pendingImages.length===0&&!r.fontsLoading?null:BH(e,r,t)}var WH=50;function VH(e,t){let n=e.defaultView;return!n||n.__renderReady||!n.__hf?null:new Promise(r=>{let o,i=()=>{o!==void 0&&clearTimeout(o),t.removeEventListener("abort",i),r()};if(t.aborted){i();return}t.addEventListener("abort",i,{once:!0});let a=()=>{if(n.__renderReady){i();return}o=setTimeout(a,WH)};a()})}var $H=50,qH=1.5,zH=2,jH=1500;function tp(e,t){return new Promise(n=>{if(t.aborted){n(-1);return}let r=0,o=()=>{e.cancelAnimationFrame?.(r),n(-1)};t.addEventListener("abort",o,{once:!0}),r=e.requestAnimationFrame(i=>{t.removeEventListener("abort",o),n(i)})})}function KH(e,t){let n=e.defaultView;return n?(async()=>{let r=await tp(n,t);if(t.aborted)return;let o=await tp(n,t),i=o-r,a=0;for(;!t.aborted&&a<zH;){if(o-r>=jH)return;let l=await tp(n,t);if(t.aborted)return;let s=l-o;i=Math.min(i,s),a=s<$H||s<=i*qH?a+1:0,o=l}})():null}var YH=8e3;function XH(e,t,n={}){let r=n.inputs??[(c,d)=>UH(c,d,{scope:n.scope}),VH,KH],o=new AbortController,i=r.map(c=>c(e,o.signal)).filter(c=>c!==null);if(i.length===0){t({timedOut:!1});return}let a=n.timeoutMs??YH,l,s=new Promise(c=>{l=setTimeout(()=>c("timed-out"),a)});Promise.race([Promise.all(i).then(()=>"done"),s]).then(c=>{clearTimeout(l),o.abort(),t({timedOut:c==="timed-out"})})}function jw(e,t,n={}){XH(e,t,{...n,scope:np})}var ip=new Map,ga=new Map,rp=new Map,op=()=>{},Yw=()=>{},Kw=0;function ap(e){return/^[a-z][a-z0-9-]{0,63}$/.test(e)}function Xw(e){let t=(rp.get(e)??0)+1;return rp.set(e,t),t}function Jw(e){return typeof e=="number"&&Number.isSafeInteger(e)&&e>0?e:(Kw-=1,Kw)}function sp(e,t){let n=ga.get(e);if(!n)return;let r=()=>rp.get(e)===t.generation&&ga.get(e)===n;try{Promise.resolve(n(t.payload)).then(()=>{r()&&Yw(e,t.requestId)},o=>{r()&&op(e,t.requestId,o)})}catch(o){r()&&op(e,t.requestId,o)}}function Qw(e){op=e}function Zw(e){Yw=e}function gu(e,t,n){if(!ap(e))return;let r={payload:t,requestId:Jw(n),generation:Xw(e)};ip.set(e,r),sp(e,r)}function bu(e,t){ap(e)&&(ip.delete(e),sp(e,{payload:void 0,requestId:Jw(t),generation:Xw(e)}))}function e_(e,t){if(!ap(e))throw new Error(`Invalid HyperFrames runtime-data channel: ${e}`);ga.set(e,t);let n=ip.get(e);return n&&sp(e,n),()=>{ga.get(e)===t&&ga.delete(e)}}var t_=!1;function bn(e){if(e){if(typeof e.pause!="function"){t_||(t_=!0,wt("timeline_missing_pause",{}));return}try{e.pause()}catch(t){$("runtime.timeline.pause",t)}}}function ZH(e){let t=e;if(typeof t.remove=="function")for(let n of e.getChildren?.(!1,!0,!1)??[])n.data===li&&t.remove(n)}function e2(){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 t2(){let e=Iw(gt()?.getAttribute("data-fps")??"");return e.ok?e.value.num/e.value.den:null}function n2(e,t){return t!==null&&e.length===t.length&&e.every((n,r)=>n===t[r])}function n_(e,t,n){let r=null,o=!0;return()=>{let i=e();if(i.length===0)return r=null,o=!0,!0;if(n2(i,r))return o;r=i,o=!1;let a=i.length===1?i[0]:Promise.all(i);return Promise.resolve(a).then(()=>{r===i&&(o=!0,t())},l=>{r===i&&(o=!0,n(l),t())}),o}}function ya(e){let t=e.querySelector(`meta[name="${Rn}"]`)?.getAttribute("content");if(!t)return null;try{return JSON.parse(t)}catch{return null}}var up=e=>JSON.stringify([Array.from(e.attributes,t=>[t.name,t.value]).filter(([t])=>t!==vr),e.innerHTML]),r2=new Set(["style","preload","src",vr,jn,We,...os]),o2=e=>e.split(/\s+/).filter(t=>t&&!t.startsWith("__hf-")).join(" "),r_=e=>JSON.stringify([Array.from(e.attributes,({name:t,value:n})=>[t,t==="class"?o2(n):n]).filter(([t,n])=>!r2.has(t)&&!(t==="class"&&!n)).sort(([t],[n])=>t<n?-1:1),e.hasAttribute("data-var-src")?null:Ti(e),e.innerHTML]),xa=new WeakMap,i_=e=>e.localName==="video"||e.localName==="audio",yu=e=>{if(!He(e))return;let t=i_(e)?[e]:e.firstElementChild?e.querySelectorAll("video, audio"):[];for(let n of t)xa.has(n)||xa.set(n,up(n))},xu=null;function a_(){typeof MutationObserver>"u"||!ya(document)||(yu(document.documentElement),xu=new MutationObserver(e=>{for(let t of e){t.addedNodes.forEach(yu);let{target:n}=t;He(n)&&i_(n)&&xa.set(n,up(n))}}),xu.observe(document.documentElement,{childList:!0,subtree:!0}))}function s_(){let e=o=>o?.config?.({force3D:!1}),t=Object.getOwnPropertyDescriptor(window,"gsap"),n=window.gsap;if(e(n),t?.configurable===!1||t?.get?.hfFlat)return;let r=Object.assign(()=>t?.get?t.get.call(window):n,{hfFlat:!0});Object.defineProperty(window,"gsap",{configurable:!0,enumerable:!0,get:r,set:o=>{t?.set?t.set.call(window,o):n=o,e(o)}})}var i2=new Map([["image",["href","xlink:href"]],["object",["data"]]]),a2=1e3,s2=16;function l2(){let e;return()=>e??(e=document.getAnimations())}var lp=e=>is(e)||Ne(e)&&Ls(e)&&W0({volume:Number.parseFloat(e.dataset.volume??""),fxChain:e.getAttribute("data-fx-chain"),automation:e.getAttribute("data-automation"),audioGroup:e.getAttribute("data-audio-group"),masterChain:ry(e.ownerDocument)}),l_="audio[data-start], video[data-start]",ba=e=>Array.from(e.querySelectorAll(l_)).filter(lp);function o_(e){let t=e.matches(`[${rs}]`)?[e]:Array.from(e.querySelectorAll(`img[${rs}]`)).filter(n=>n.closest("[data-start]")===e);for(let n of t)n.setAttribute("loading","eager")}function u_(){let e=Vc(),t=window.parent!==window,n=u=>t&&u.hasAttribute(Ut);xu?.disconnect(),xu=null,ya(document)&&yu(document.documentElement);let r=()=>{};ab(Re),Qw((u,h,g)=>{Re({source:"hf-preview",type:"runtime-data-error",channel:u,requestId:h,message:g instanceof Error?g.message:String(g)})}),Zw((u,h)=>{try{r()}catch(g){Re({source:"hf-preview",type:"runtime-data-error",channel:u,requestId:h,message:g instanceof Error?g.message:String(g)});return}Re({source:"hf-preview",type:"runtime-data-applied",channel:u,requestId:h})}),ea(document),Hl(document),oy(document);let o=e2();if(e.canonicalFps=o.fps??t2()??e.canonicalFps,Y0(e.canonicalFps),window.__HF_EXPORT_RENDER_SEEK_CONFIG){let u=JSON.stringify({canonicalFps:e.canonicalFps,source:o.source,rawFpsSource:o.rawFpsSource,rawFps:o.rawFps,fallbackReason:o.fallbackReason});globalThis.console.info(`[hyperframes] render runtime fps ${u}`)}let i=null,a=null,l=null,s=[],c=new Set,d=null,m=new Set,f=(u,h,g)=>{m.has(u)||(m.add(u),wt(h,g))};if(typeof window.__hfRuntimeTeardown=="function")try{window.__hfRuntimeTeardown()}catch(u){$("runtime.init.site1",u)}let p=new du;e.transportClock=p;let b=new pu,y=!1;b.init().then(u=>{y=u}),window.__hf=window.__hf||{};let x=u=>u.closest("[data-hidden]")!==null||Qs(u.ownerDocument,u),v=()=>{let u=window.gsap,h=window;if(!(!u?.registerPlugin||h.__hfAutoNoopRegistered))try{u.registerPlugin({name:"_auto",init:()=>!1}),h.__hfAutoNoopRegistered=!0}catch(g){f("auto_marker_install_failed","auto_marker_install_failed",{reason:"threw"}),$("runtime.autoMarker.install",g)}},E=()=>{let u=window.gsap;if(!u){f("custom_ease_missing_gsap","custom_ease_install_failed",{reason:"missing_gsap"});return}try{qw(u)||f("custom_ease_no_parse_ease","custom_ease_install_failed",{reason:"no_parseEase"})}catch(h){f("custom_ease_install_threw","custom_ease_install_failed",{reason:"threw"}),$("runtime.customEase.install",h)}};v(),E(),document.documentElement&&(document.documentElement.style.margin="0",document.documentElement.style.padding="0",document.documentElement.style.overflow="hidden"),document.body&&(document.body.style.margin="0",document.body.style.padding="0",document.body.style.overflow="hidden");try{mb(document)}catch(u){$("runtime.init.cssVariables",u)}if(window.__timelines=window.__timelines||{},Array.isArray(window.__timelines)){let u=window.__timelines,h=gt()?.getAttribute("data-composition-id")??"root",g={};if(u.length===1)g[h]=u[0];else for(let S=0;S<u.length;S++)g[`tl-${S}`]=u[S];window.__timelines=g}let C=gt();C&&!C.hasAttribute("data-start")&&C.setAttribute("data-start","0");let H=u=>{s.push(u)},V=(u,h,g)=>{let S=g??`${u}:${JSON.stringify(h)}`;c.has(S)||(c.add(S),Re({source:"hf-preview",type:"diagnostic",code:u,details:h}))},M=u=>{let h={scale:1,focusX:960,focusY:540},g=[],S=[],A={time:u.getTime(),duration:u.getDuration(),isPlaying:u.isPlaying(),renderMode:!1,timelineDirty:!1};return{play:u.play,pause:u.pause,seek:u.seek,getTime:u.getTime,getDuration:u.getDuration,isPlaying:u.isPlaying,getMainTimeline:()=>null,getElementBounds:()=>{},getElementsAtPoint:()=>{},setElementPosition:()=>{},previewElementPosition:()=>{},setElementKeyframes:()=>{},setElementScale:()=>{},setElementFontSize:()=>{},setElementTextContent:()=>{},setElementTextColor:()=>{},setElementTextShadow:()=>{},setElementTextFontWeight:()=>{},setElementTextFontFamily:()=>{},setElementTextOutline:()=>{},setElementTextHighlight:()=>{},setElementVolume:()=>{},setStageZoom:()=>{},getStageZoom:()=>h,setStageZoomKeyframes:()=>{},getStageZoomKeyframes:()=>g,addElement:()=>!1,removeElement:()=>!1,updateElementTiming:()=>!1,setElementTiming:()=>{},updateElementSrc:()=>!1,updateElementLayer:()=>!1,updateElementBasePosition:()=>!1,markTimelineDirty:()=>{},isTimelineDirty:()=>!1,rebuildTimeline:()=>{},ensureTimeline:()=>{},enableRenderMode:()=>{},disableRenderMode:()=>{},renderSeek:u.renderSeek,getElementVisibility:()=>({visible:!1}),getVisibleElements:()=>S,getRenderState:()=>({...A,time:u.getTime(),duration:u.getDuration(),isPlaying:u.isPlaying()})}},R=.75,U=.05,T=100,F=240,W=u=>{if(u instanceof Error)return u.message||String(u);if(typeof u=="string")return u;try{return JSON.stringify(u)}catch{return String(u??"")}},B=u=>{let h=u.toLowerCase();return h.includes("cannot read properties of null")||h.includes("cannot set properties of null")?{code:"runtime_null_dom_access",category:"dom-null-access"}:h.includes("failed to execute 'queryselector'")?{code:"runtime_invalid_selector",category:"selector-invalid"}:h.includes("is not defined")?{code:"runtime_reference_missing",category:"reference-missing"}:{code:"runtime_script_error",category:"script-error"}},X=u=>{let h=br(u);return h===null?null:`${h}px`},ae=null,N=!1,j=()=>{if(!N)return gt();if(vp(),Ke&&!nt&&ae?.revision===xt&&(ae.el===null||ae.el.isConnected))return ae.el;let u=gt();return ae={revision:xt,el:u},u},I=()=>{let u=j();if(!u)return;let h=X(u.getAttribute("data-width")),g=X(u.getAttribute("data-height"));h&&(u.style.width=h),g&&(u.style.height=g),h&&u.style.setProperty("--comp-width",h),g&&u.style.setProperty("--comp-height",g),h&&(document.documentElement.style.width=h),g&&(document.documentElement.style.height=g),h&&(document.body.style.width=h),g&&(document.body.style.height=g)},P=()=>{let u=j(),h=Array.from(document.querySelectorAll("[data-composition-id]")).filter(g=>g.hasAttribute("data-duration")||g.hasAttribute("data-end"));for(let g of h){if(u&&g===u)continue;let S=g.getAttribute("data-duration"),A=g.getAttribute("data-end");S!=null&&!g.hasAttribute(kn)&&g.setAttribute(kn,S),A!=null&&!g.hasAttribute(Ln)&&g.setAttribute(Ln,A),g.removeAttribute("data-duration"),g.removeAttribute("data-end")}},D=new WeakMap,w=u=>[u.className,u.style.position,u.style.top,u.style.left,u.style.width,u.style.height,u.style.transform,u.getAttribute("data-width"),u.getAttribute("data-height")].join("|"),L=()=>{let u=j();if(!u)return;u.style.position||(u.style.position="relative"),u.style.overflow="hidden";let h=X(u.getAttribute("data-width")),g=X(u.getAttribute("data-height"));h&&(u.style.width=h),g&&(u.style.height=g);let S=Array.from(u.children).filter(_=>{let O=_.tagName.toLowerCase();return O==="script"||O==="style"||O==="link"||O==="meta"||!_.hasAttribute("data-start")||_.hasAttribute(Ut)?!1:D.get(_)!==w(_)}),A=S.filter(_=>_.style.getPropertyValue("display")==="none").map(_=>({el:_,priority:_.style.getPropertyPriority("display")}));for(let{el:_}of A)_.style.removeProperty("display");for(let _ of S){let O=_.tagName.toLowerCase(),q=(_.style.top==="0px"||_.style.top==="0")&&(_.style.left==="0px"||_.style.left==="0")&&_.style.width==="100%"&&_.style.height==="100%",G=/translate\(\s*-50%\s*,\s*-50%\s*\)/.test(_.style.transform);if(q&&G&&!_.hasAttribute("data-width")&&!_.hasAttribute("data-height")){let be=_.style.top,ie=_.style.left,pe=_.style.width,Xe=_.style.height;_.style.top="",_.style.left="",_.style.width="",_.style.height="";let Ye=window.getComputedStyle(_);Ye.top!=="auto"||Ye.bottom!=="auto"||Ye.left!=="auto"||Ye.right!=="auto"||Ye.width!=="0px"||Ye.height!=="0px"||(_.style.top=be,_.style.left=ie,_.style.width=pe,_.style.height=Xe)}let k=window.getComputedStyle(_),J=k.position;if(J!=="absolute"&&J!=="fixed"&&(_.style.position="absolute"),O!=="audio"){let be=X(_.getAttribute("data-width")),ie=X(_.getAttribute("data-height")),pe=k.width!=="0px"&&k.width!=="auto",Xe=k.height!=="0px"&&k.height!=="auto";be?!_.style.width&&!pe&&(_.style.width=be):!_.style.width&&k.width==="0px"&&(_.style.width="100%"),ie?!_.style.height&&!Xe&&(_.style.height=ie):!_.style.height&&k.height==="0px"&&(_.style.height="100%")}}for(let{el:_,priority:O}of A)_.style.setProperty("display","none",O);if(document.readyState==="complete")for(let _ of S)D.set(_,w(_))},Y=u=>lt({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:u}),te=null,he=u=>{let h=te;te=Y(!0);try{return u()}finally{te=h}},Ee=u=>u&&te?te:Y(u),z=(u,h=0,g)=>Ee(g?.includeAuthoredTimingAttrs??!0).resolveStartForElement(u,h),Z=(u,h)=>Ee(h?.includeAuthoredTimingAttrs??!0).resolveDurationForElement(u),Q=u=>{let h=u.closest("[data-composition-id]"),g=h?z(h,0):null,S=h?Z(h,{includeAuthoredTimingAttrs:!0}):null;return{compositionRoot:h,inheritedStart:g,inheritedDuration:S}},de=u=>Ee(!0).resolveHostSlotsForElement(u),ge=(u,h)=>{let g=Ue(u.dataset.duration),S=g!=null&&g>0?h+g:1/0;return yr({start:h,end:S},de(u))},se=u=>Ee(!0).resolveMediaStartForElement(u);window.__hfResolveMediaStartSeconds=se,s.push(()=>{window.__hfResolveMediaStartSeconds===se&&delete window.__hfResolveMediaStartSeconds});let ue=!!document.querySelector("[data-composition-src]"),re=!1;{let u=document.querySelectorAll("[data-composition-id]:not([data-composition-src])");for(let h of u){let g=h.getAttribute("data-composition-id");if(g&&h.children.length===0&&document.querySelector(`template#${CSS.escape(g)}-template`)){re=!0;break}}}let Be=!ue&&!re,Me=u=>{let h=sn(u);return h==null?null:Math.max(0,h)},we=u=>typeof u=="number"&&Number.isFinite(u)&&u>ln,_e=()=>Array.from(document.querySelectorAll("video[data-start], audio[data-start]")).length===0?null:he(()=>_0(document,{mediaStart:se,mediaDuration:Vr})),Tt=()=>{let u=j();if(!u)return null;let h=window.__timelines??{},g=lt({timelineRegistry:h,includeAuthoredTimingAttrs:!0});return C0(u,g)},va=()=>{let u=window;return!!(u.lottie||u.DotLottie)},Fo=()=>{let u=j();if(!u)return Kr({authoredDurationSeconds:null,clipEndsSeconds:[]});let h=lt({timelineRegistry:window.__timelines??{},includeAuthoredTimingAttrs:!0});return T0(u,h,{unregisteredLottie:va()})},Po=null,Tu=()=>{if(nt)return Fo();let u=Lr();return Po?.revision!==u&&(Po={revision:u,result:Fo()}),Po.result},Aa=u=>{window.__hf=window.__hf||{},window.__hf.durationSource={source:u.source,seconds:u.seconds,pendingClips:u.pendingClips},u.source==="derived"&&V("composition_duration_derived",{source:u.source,seconds:u.seconds,pendingClips:u.pendingClips},`composition_duration_derived:${u.seconds}`)},wa=()=>{let u=_e();return typeof u!="number"||!Number.isFinite(u)||u<=ln?null:u},Ru=u=>we(u)?Math.max(ln,u*R):ln,kr=(u=!1)=>{let h=0;for(let g of e.deterministicAdapters){let S=u?g.getAnimationCycleEndSeconds:g.getInferredDurationSeconds;if(typeof S!="function")continue;let A=null;try{A=S()}catch(_){$("runtime.init.adapterDuration",_)}typeof A=="number"&&Number.isFinite(A)&&A>0&&(h=Math.max(h,A))}return h>ln?h:null},nt=!1,_a=()=>nt&&window.__HF_EXPORT_RENDER_SEEK_CONFIG!=null,fe=[...["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",As,"data-playback-rate","data-automation","data-playback-start","data-media-start","id","src"],"data-width","data-height"],ke=YE(fe),Rt=["loadedmetadata","durationchange","emptied"],rt=null,xn=-1,Sn=null,Do=Number.NEGATIVE_INFINITY,Ke=null,xt=0,xp=new Map,Ca=u=>{if(!Ke||nt)return Array.from(document.querySelectorAll(u));ke(Ke.takeRecords())&&vn();let h=xp.get(u);if(h?.revision===xt)return h.nodes;let g=Array.from(document.querySelectorAll(u));return xp.set(u,{revision:xt,nodes:g}),g},En=()=>{},vn=()=>{xt+=1,En()},Sp=()=>({media:wa(),authoredComposition:Tt()}),z_=()=>{let u=window.__timelines??{},h="";for(let g of Object.keys(u)){let S=u[g];S&&(h+=`${g}=${Me(S)??"?"};`)}return h},Ep=u=>{let h=u.target;Te(h)&&Ps(h)||vn()},j_=(u,h)=>{let g=Ke?.takeRecords()??[];h();let S=Ke?.takeRecords()??[];(ke(g)||ke(S.filter(A=>A.target!==u)))&&vn()},K_=u=>{let h=Ke?.takeRecords()??[];u(),Ke?.takeRecords(),ke(h)&&vn()},vp=()=>{if(!(Ke||typeof MutationObserver>"u")){Ke=new MutationObserver(u=>{ke(u)&&vn()}),Ke.observe(document.documentElement,{childList:!0,subtree:!0,attributes:!0,attributeFilter:fe});for(let u of Rt)document.addEventListener(u,Ep,!0);s.push(()=>{Ke?.disconnect(),Ke=null,vn();for(let u of Rt)document.removeEventListener(u,Ep,!0)})}};N=!0;let Lr=()=>{vp(),Ke&&ke(Ke.takeRecords())&&vn();let u=Date.now();if(!p.isPlaying()||u-Do>=ep){Do=u;let h=z_();h!==Sn&&(Sn=h,vn())}return xt},Ap=u=>nt?Sp():(u??(u=Lr()),rt&&xn===u||(xn=u,rt=Sp()),rt),ot=(u,h=0,g)=>{let S=null,A=R0({declared:Ue(j()?.getAttribute("data-duration")),timeline:()=>Me(u),floors:()=>{let{media:_,authoredComposition:O}=Ap(g);return[_,O,kr()]},fallback:h,derived:()=>(S=Tu(),S.seconds??0)});return S?Aa(S):window.__hf?.durationSource&&delete window.__hf.durationSource,A},Mu=new WeakMap,Io=u=>u.__hfReal??u,ku=null,Oo=new Set,wp=()=>{for(let u of Oo)u===e.capturedTimeline||u===ku?.timeline||(Oo.delete(u),u.kill?.())},Lu=()=>{let u=window.__timelines??{},h=ye=>{let me=Object.entries(u).filter(oe=>!!oe[1]&&typeof oe[1].play=="function"&&typeof oe[1].pause=="function");if(me.length!==1)return{timeline:null};let K=me[0];if(!K)return{timeline:null};let[ee,ce]=K;return{timeline:ce,selectedTimelineIds:[ee],selectedDurationSeconds:Me(ce),diagnostics:{code:"root_timeline_sole_registered_fallback",details:{reason:ye,soleTimelineId:ee}}}},g=lt({timelineRegistry:u,includeAuthoredTimingAttrs:!0}),{media:S,authoredComposition:A}=Ap(),_=Math.max(S??0,A??0)||null,O=Ru(_),q=ye=>{let me=document.querySelector(`[data-composition-id="${CSS.escape(ye)}"]`);return me?g.resolveStartForElement(me,0):0},G=(ye,me)=>{let K=q(me.compositionId);ye.add(me.timeline,K),Mu.set(Io(me.timeline),{hostId:me.compositionId,parent:ye,at:K})},k=(ye,me)=>{let K=Io(me.timeline),ee=Mu.get(K);return ee&&ee.parent===ye&&K.parent===Io(ye)?ee:null},J=(ye,me)=>Math.abs(ye.at-q(me.compositionId))<1e-6,le=(ye,me)=>{let K=k(ye,me);!K||J(K,me)||G(ye,me)},be=ye=>{let me=window.gsap;if(!me||typeof me.timeline!="function")return null;let K=me.timeline({paused:!0});Oo.add(K);for(let ee of ye)G(K,ee);return Zt(pe(K,ye)),K},ie=(ye,me)=>{if(!we(ye))return null;let K=window.gsap;if(!K||typeof K.timeline!="function")return null;let ee=K.timeline({paused:!0});if(Oo.add(ee),me){try{ee.add(me,0)}catch(oe){$("runtime.init.site2",oe)}Zt(pe(ee,[{timeline:me}]))}let ce=ee;if(typeof ce.to=="function")try{ce.to({},{duration:ye,data:li})}catch(oe){$("runtime.init.site3",oe)}return ee},pe=(ye,me)=>{if(!ye||typeof ye.getChildren!="function")return[];try{let K=ye.getChildren(!0,!0,!0);return Array.isArray(K)?me.filter(ee=>K.includes(Io(ee.timeline))):[]}catch{return[]}},Xe=(ye,me)=>{let K=ye,ee={addedIds:[],nested:[]};if(typeof K.getChildren!="function")return ee;try{let ce=K.getChildren(!0,!0,!0)??[];if(!Array.isArray(ce))return ee;let oe=[];for(let ve of me){if(ce.includes(Io(ve.timeline))){le(ye,ve);continue}try{G(ye,ve),oe.push(ve.compositionId)}catch(Ie){$("runtime.init.site4",Ie)}}return{addedIds:oe,nested:pe(ye,me)}}catch{return ee}},Ye=j(),Ge=Ye?.getAttribute("data-composition-id")??null;if(!Ge)return h("root_missing_composition_id");let Je=u[Ge]??null,$e=(()=>{if(!Ye)return[];let ye=new Set,me=Array.from(Ye.querySelectorAll("[data-composition-id]")),K=[];for(let ee of me){let ce=ee.getAttribute("data-composition-id");if(!ce||ce===Ge||ye.has(ce))continue;ye.add(ce);let oe=u[ce]??null;if(!oe||typeof oe.play!="function"||typeof oe.pause!="function")continue;let ve=Me(oe);K.push({compositionId:ce,timeline:oe,durationSeconds:ve??0})}return K})(),Zt=ye=>{for(let me of ye){let K=me.timeline;if(typeof K.paused=="function")try{K.paused(!1)}catch(ee){$("runtime.init.site5",ee)}}};if(Je){let ye=$e.length>0?Xe(Je,$e):{addedIds:[],nested:[]},me=ye.addedIds;if(Zt(ye.nested),($e.length>0||!document.querySelector("[data-composition-id]:not([data-composition-id='"+Ge+"'])"))&&(rr=!0),me.length>0)try{xi(Je,Je.time(),!1)}catch{}ZH(Je);let K=Me(Je);if(!we(K)&&$e.length>0){let oe=$e.map(en=>en.compositionId),ve=be($e),Ie=Me(ve);if(ve&&we(Ie))return{timeline:ve,selectedTimelineIds:oe,selectedDurationSeconds:Ie,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_fallback",details:{rootCompositionId:Ge,rootDurationSeconds:K,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:O,selectedDurationSeconds:Ie,mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:A,selectedTimelineIds:oe,autoNestedChildren:me}}};let st=ie(_??0,Je),dt=Me(st);if(st&&we(dt))return{timeline:st,selectedTimelineIds:[Ge],selectedDurationSeconds:dt,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Ge,rootDurationSeconds:K,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:A,selectedDurationSeconds:dt,selectedTimelineIds:[Ge],autoNestedChildren:me}}}}if(!we(K)&&$e.length===0){let oe=ie(_??0,Je),ve=Me(oe);if(oe&&we(ve))return{timeline:oe,selectedTimelineIds:[Ge],selectedDurationSeconds:ve,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_unusable_media_floor_fallback",details:{rootCompositionId:Ge,rootDurationSeconds:K,fallbackKind:"media_duration_floor",mediaDurationFloorSeconds:S,authoredCompositionDurationFloorSeconds:A,selectedDurationSeconds:ve,selectedTimelineIds:[Ge]}}}}let ee=Ue(Ye?.getAttribute("data-duration")),ce=Math.max(we(ee)?ee:0,A??0);if(ce>0&&we(ce)&&we(K)&&ce>=K+.5){let oe=Je;if(typeof oe.to=="function")try{oe.to({},{duration:0,data:li},ce)}catch(Ie){$("runtime.init.site6",Ie)}let ve=Me(Je);if(we(ve))return{timeline:Je,selectedTimelineIds:[Ge],selectedDurationSeconds:ve,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_padded_to_declared_duration",details:{rootCompositionId:Ge,rootDurationSeconds:K,rootDeclaredDur:ee,authoredCompositionDurationFloorSeconds:A,newDur:ve}}}}return{timeline:Je,selectedTimelineIds:[Ge],selectedDurationSeconds:K,mediaDurationFloorSeconds:S,diagnostics:me.length>0?{code:"root_timeline_auto_nested_children",details:{rootCompositionId:Ge,selectedDurationSeconds:K,autoNestedChildren:me}}:void 0}}if($e.length>0){let ye=$e.map(oe=>oe.compositionId),me=ku,K=me?.size===$e.length&&we(Me(me.timeline))&&$e.every(oe=>{let ve=k(me.timeline,oe);return ve!==null&&J(ve,oe)})?me.timeline:null,ee=K??be($e),ce=Me(ee);if(ee)return K||(ku={timeline:ee,size:$e.length}),{timeline:ee,selectedTimelineIds:ye,selectedDurationSeconds:ce,mediaDurationFloorSeconds:S,diagnostics:{code:"root_timeline_missing_fallback",details:{rootCompositionId:Ge,fallbackKind:"composite_by_root_children",minCandidateDurationSeconds:O,selectedDurationSeconds:ce,mediaDurationFloorSeconds:S,selectedTimelineIds:ye}}}}return h("root_composition_id_unmatched_in_registry")},rr=!1,Y_=u=>{let h=window.gsap,g=u;if(!(!g||typeof g.getChildren!="function"||!h||typeof h.parseEase!="function"))for(let S of g.getChildren(!0,!0,!0)){let A=S,_=A.timeline;if(!_||!("_ease"in _)||typeof _._ease=="function")continue;let O=A.vars?.keyframes,G=(O&&!Array.isArray(O)?O.ease:void 0)??A.vars?.ease??"none";try{let k=h.parseEase(G);typeof k=="function"&&(_._ease=k)}catch(k){wt("keyframe_ease_repair_failed",{ease:typeof G=="string"?G:String(G)}),$("runtime.keyframeEase.repair",k)}}},or=()=>{if(E(),!Be)return!1;let u=e.capturedTimeline,h=Me(u),g=we(h);if(u&&g&&rr)return!1;let S=Lu();if(!S.timeline)return!1;if(u&&u===S.timeline)return typeof u.timeScale=="function"&&u.timeScale(e.playbackRate),!1;e.capturedTimeline=S.timeline,wp(),typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate),Y_(e.capturedTimeline);let A=ot(e.capturedTimeline,0);if(A<=0&&typeof e.capturedTimeline.progress=="function"&&(e.capturedTimeline.progress(1,!0),e.capturedTimeline.progress(0,!1),bn(e.capturedTimeline)),A>0){try{p.setDuration(A)}catch{}if(typeof e.capturedTimeline.totalTime=="function"){typeof e.capturedTimeline.progress=="function"&&e.capturedTimeline.progress(1e-4,!0);let q=Math.max(0,e.currentTime||0);e.capturedTimeline.totalTime(q,!1),bn(e.capturedTimeline)}let O=window.__hfStudioManualEditsApply;typeof O=="function"&&O(),ea(document)}if(S.diagnostics&&Re({source:"hf-preview",type:"diagnostic",code:S.diagnostics.code,details:S.diagnostics.details}),Re({source:"hf-preview",type:"diagnostic",code:"timeline_bound",details:{selectedTimelineIds:S.selectedTimelineIds??[],selectedDurationSeconds:S.selectedDurationSeconds??null,mediaDurationFloorSeconds:S.mediaDurationFloorSeconds??null}}),t){let O=j(),q=A>0?A:0,G=String(q>0?q:1),k=new Set,J=ie=>ie.tagName.toLowerCase()===cn,le=new Set(document.querySelectorAll("[data-start]")),be=ie=>{let pe=ie.parentElement;for(;pe&&pe!==O;){if(le.has(pe))return!0;pe=pe.parentElement}return!1};if(e.capturedTimeline.getChildren)try{for(let ie of e.capturedTimeline.getChildren(!0))if(typeof ie.targets=="function")for(let pe of ie.targets())Ce(pe)&&pe!==O&&(J(pe)||pe.hasAttribute("data-start")||be(pe)||k.has(pe)||(k.add(pe),pe.setAttribute("data-start","0"),pe.setAttribute("data-duration",G),pe.setAttribute(Ut,"1")))}catch{}if(Ce(O))for(let ie of O.querySelectorAll("[id]"))Ce(ie)&&ie!==O&&(ie.hasAttribute("data-start")||be(ie)||k.has(ie)||ie.tagName==="SCRIPT"||ie.tagName==="STYLE"||ie.tagName==="LINK"||J(ie)||(k.add(ie),ie.setAttribute("data-start","0"),ie.setAttribute("data-duration",G),ie.setAttribute(Ut,"1")))}let _=Nu();for(let O of An)Ho.delete(O),Fu(O,_);return!0},_p=()=>{if(e.tornDown)return;let u=Lu();if(!u.timeline){e.capturedTimeline=null,rr=!1,p.setDuration(0),Qt(e.currentTime);return}if(e.capturedTimeline!==u.timeline)rr=!1,or();else{let h=ot(e.capturedTimeline,0);h>0&&h!==p.getDuration()&&(p.setDuration(h),at())}Qt(e.currentTime)};r=()=>{_p(),at()},window.__hfForceTimelineRebind=_p;let X_=()=>{let u=j();if(!Ce(u))return;let h=u.getBoundingClientRect(),g=br(u.getAttribute("data-width")),S=br(u.getAttribute("data-height")),A=window.getComputedStyle(u),_=g!==null&&S!==null,O=h.width<=0||h.height<=0||u.clientWidth<=0||u.clientHeight<=0;!_||!O||V("root_stage_layout_zero",{compositionId:u.getAttribute("data-composition-id")??null,declaredWidth:g,declaredHeight:S,rectWidth:Math.round(h.width),rectHeight:Math.round(h.height),clientWidth:u.clientWidth,clientHeight:u.clientHeight,display:A.display,visibility:A.visibility,overflow:A.overflow},`root-stage-layout-zero:${u.getAttribute("data-composition-id")??"unknown"}`)},J_=()=>{e.tornDown||(d!=null&&window.cancelAnimationFrame(d),d=window.requestAnimationFrame(()=>{d=null,X_()}))},Q_=()=>{a=u=>{let h=W(u.error??u.message).slice(0,F);if(!h)return;let g=B(h);Re({source:"hf-preview",type:"diagnostic",code:g.code,details:{category:g.category,message:h,filename:u.filename||null,line:Number.isFinite(u.lineno)?u.lineno:null,column:Number.isFinite(u.colno)?u.colno:null}})},l=u=>{let h=W(u.reason).slice(0,F);if(!h)return;let g=B(h);Re({source:"hf-preview",type:"diagnostic",code:`${g.code}_unhandled_rejection`,details:{category:`${g.category}-unhandled-rejection`,message:h}})},window.addEventListener("error",a),window.addEventListener("unhandledrejection",l)},Cp=new WeakSet,Z_=()=>{let u=Array.from(document.querySelectorAll("img, video, audio, source, link[rel='stylesheet']"));for(let g of u){if(Cp.has(g))continue;Cp.add(g);let S=()=>{if(!He(g))return;let A=g.tagName.toLowerCase(),_=g.getAttribute("src")??g.getAttribute("href")??g.getAttribute("poster")??null,O=A==="link"?"runtime_stylesheet_load_failed":"runtime_asset_load_failed";V(O,{tagName:A,assetUrl:_,currentSrc:(Qe(g)||Te(g))&&g.currentSrc||null,readyState:Te(g)?g.readyState:null,networkState:Te(g)?g.networkState:null},`${O}:${A}:${_??"unknown"}`)};g.addEventListener("error",S),H(()=>{g.removeEventListener("error",S)})}let h=document.fonts;h&&h.ready.then(()=>{if(e.tornDown)return;let g=Array.from(h).filter(S=>S.status==="error").map(S=>S.family).filter(S=>!!S).slice(0,10);g.length!==0&&V("runtime_font_load_issue",{failedFamilies:g,totalFaces:Array.from(h).length},`runtime-font-load-issue:${g.join("|")}`)}).catch(()=>{})},eC=(u,h)=>{if(!u.timeline)return!1;let g=e.capturedTimeline;if(g&&g===u.timeline)return!1;let S=Math.max(0,e.currentTime||0);e.capturedTimeline=u.timeline,wp(),typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate);try{bn(e.capturedTimeline),typeof e.capturedTimeline.seek=="function"&&xi(e.capturedTimeline,S,!1)}catch(A){$("runtime.init.site7",A)}return Re({source:"hf-preview",type:"diagnostic",code:"timeline_loop_guard_rebind",details:{reason:h,previousTime:S,selectedTimelineIds:u.selectedTimelineIds??[],selectedDurationSeconds:u.selectedDurationSeconds??null,mediaDurationFloorSeconds:u.mediaDurationFloorSeconds??null}}),!0},ir=null,Tp=!1,An=new Set,Ho=new WeakMap,Nu=()=>{let u;return()=>u??(u=bd(e.capturedTimeline??{}))},Ta=()=>{e.tornDown||(ir!=null&&window.clearTimeout(ir),ir=window.setTimeout(()=>{if(e.tornDown||(ir=null,_a()))return;let u=Lu();if(!u.timeline||!we(u.mediaDurationFloorSeconds??null))return;if(!e.capturedTimeline){or()&&(at(),it(!0));return}if(Tp)return;let g=Me(e.capturedTimeline),S=u.selectedDurationSeconds??Me(u.timeline);we(S)&&(!we(g)||S>=g+U)&&eC(u,"manual")&&(Tp=!0,Re({source:"hf-preview",type:"diagnostic",code:"timeline_rebind_after_media_metadata",details:{previousDurationSeconds:g??null,selectedDurationSeconds:S??null,selectedTimelineIds:u.selectedTimelineIds??[],mediaDurationFloorSeconds:u.mediaDurationFloorSeconds??null}}),at(),it(!0))},T))},Rp=u=>{Te(u.currentTarget)&&Fy(u.currentTarget)},Mp=u=>{let h=u.currentTarget;e.tornDown||p.isPlaying()||!Te(h)||oo(h)||(Gt=null,e.mediaForceSyncNextTick=!0,ht())},kp=u=>{Te(u.currentTarget)&&Py(u.currentTarget)},Lp=u=>{lp(u)&&Rw(u)&&Mo(u,Ro(u))},Np=u=>{let h=u.currentTarget;Te(h)&&Lp(h)},Fp=u=>{u.removeEventListener("loadedmetadata",Ta),u.removeEventListener("durationchange",Ta),u.removeEventListener("loadedmetadata",Rp),u.removeEventListener("loadedmetadata",Mp),u.removeEventListener("loadedmetadata",Np),u.removeEventListener("error",kp),An.delete(u)},tC=()=>{for(let u of An)Fp(u)},Pp=()=>{for(let u of An)u.isConnected||(Fp(u),u.pause(),td(u),u.remove());b.releaseDetached()},Dp=u=>{let h=Number.parseFloat(u.dataset.volume??"");return Number.isFinite(h)?Math.max(0,Math.min(1,h)):null},Ra=()=>{if(e.tornDown)return;let u=Array.from(document.querySelectorAll("video, audio")),h=[],g=Nu();for(let S of u){if(An.has(S))continue;An.add(S);let A=Dp(S);A!==null&&(S.volume=A),S.addEventListener("loadedmetadata",Ta),S.addEventListener("durationchange",Ta),S.addEventListener("loadedmetadata",Np),Lp(S),S.addEventListener("loadedmetadata",Rp),S.addEventListener("loadedmetadata",Mp),S.addEventListener("error",kp),Ty(S),Ou(S)?h.push(S):Fs(S),Fu(S,g)}h.length>0&&Qt(e.currentTime,h)},Fu=(u,h)=>{Ho.has(u)||Jb(u,e.capturedTimeline,ot(e.capturedTimeline,0),Ho,{allowLiveTimelineSeek:!window.__HF_RENDER_CAPTURE_MODE,...h&&{movers:h}})},Pu=new WeakMap,nC=u=>{let h=Pu.get(u);if(h!==void 0)return h;let g=window.getComputedStyle(u).position,S=g==="static"||g==="relative"||g==="sticky";return Pu.set(u,S),S},Du=new WeakMap,rC=u=>{let h=Du.get(u);if(h!==void 0)return h;let g=u.querySelector("[data-start]")===null;return Du.set(u,g),g},oC=()=>{Pu=new WeakMap,Du=new WeakMap},Nr=new WeakMap,Ip=(u,h)=>{if(!Nr.has(u)){let g=u.style.getPropertyValue("display"),S=u.style.getPropertyPriority("display"),A=h&&g==="none"&&!S;Nr.set(u,A?{value:"",priority:""}:{value:g,priority:S})}u.style.display="none"},Op=u=>{let h=Nr.get(u);h&&(Nr.delete(u),h.value?u.style.setProperty("display",h.value,h.priority):u.style.removeProperty("display"))},Ma=new WeakSet,ka=!1,Hp=u=>Te(u)&&u.hasAttribute("data-start")&&(lp(u)||b.routesElement(u)),Gp=u=>Hp(u)||Array.from(u.querySelectorAll(l_)).some(Hp),Bp=new WeakMap,iC=(u,h)=>{for(let g of ba(document)){if(Zs(g)!==u||b.routesElement(g)||x(g))continue;let S=se(g),A=Ue(g.dataset.duration),_=A!=null&&A>0?S+A:1/0;if(Number.isFinite(S)&&h<_)return!0}return!1},aC=u=>{let h=!1;for(let g of Ca(cn)){let S=g.hasAttribute("data-hidden"),A=Bp.get(g);A!==S&&(Bp.set(g,S),g.id&&(b.setGroupMuted(g.id,S),A&&!S&&iC(g.id,u)&&(h=!0)))}return h},Up=u=>{let h=ot(e.capturedTimeline,0,u);return(g,S)=>Ts(g,{currentTime:S,compositionDuration:h,canonicalFps:e.canonicalFps,exportRenderSeek:!!window.__HF_EXPORT_RENDER_SEEK_CONFIG,timelineRegistry:window.__timelines??{},resolver:Ee(!0)})},Wp=(u,h,g,S)=>{for(let A=u;A&&A!==S;A=A.parentElement)if(mr(A)&&A.hasAttribute("data-start")&&!n(A)&&!g(A,h))return!1;return!0},Vp=()=>({canonicalFps:e.canonicalFps,parked:H0(),parkedClips:ks}),$p=bc(),qp=ss(),sC=Og(u=>Cs(u,{timelineRegistry:window.__timelines??{},resolver:Ee(!0)})),La=new Set,zp=new WeakSet,lC=u=>{if(La.size===0||!p.isPlaying())return;let h=[];for(let A of La){let _=z(A,Number.NaN);A.isConnected&&A.hasAttribute(We)&&!(_<=u+Fa)||(La.delete(A),A.isConnected&&A.hasAttribute(We)&&_>u&&h.push(A))}if(h.length===0)return;let g=new Set(h.flatMap(A=>A.closest(`[${Lt}]`)??[]));for(let A of g)A.removeAttribute(Lt);let S=gc(h);getComputedStyle(h[0]).visibility,S();for(let A of g)A.setAttribute(Lt,"");for(let A of h)zp.add(A)},Na=u=>!1,Fa=2,Pa=4,Iu=(u,h,g,S=Fa)=>{let A=Te(u)?se(u):z(u,Number.NaN),_=A+(Z(u)??Number.NaN);return A>g&&A<=g+S||_<=g&&_>=g-S||h(u,g+S)},Fr=null,Ou=u=>qp&&u.hasAttribute("data-start")&&Ps(u),Pr=new WeakMap,Hu=new WeakMap,Go=new WeakSet,Gu=new WeakSet,jp=u=>q0(u,()=>!e.tornDown&&Pr.get(u)===!0&&se(u)>p.now()),Kp=u=>u.parentElement?.closest("[data-composition-id]"),Yp=3,Bo=new Set,Uo=new Set,Xp=["canplay","suspend","error"],Jp=u=>{for(let h of Xp)u.removeEventListener(h,Qp);return Bo.delete(u)},Qp=u=>{let h=u.currentTarget;u.type!=="error"&&h.readyState<3||(Jp(h),Zp())},Zp=()=>{let u=Array.from(Uo).filter(h=>h.isConnected).sort((h,g)=>se(h)-se(g));for(let h of u){if(Bo.size>=Yp)break;Uo.delete(h),Qt(e.currentTime,[h])}},eh=u=>{if(Fs(u),jp(u),!(Bo.has(u)||u.readyState>=3)){Bo.add(u);for(let h of Xp)u.addEventListener(h,Qp)}},uC=u=>{let h=Xr(u,Number.NaN),g=$o(Array.from(An).filter(_=>_.isConnected&&Xr(_,Number.NaN)===h&&Kp(_)===Kp(u))).mediaClips,S=g.find(_=>_.el===u)?.end??Number.NaN,A;for(let _ of g)_.el!==u&&_.start>=S-si(S)&&!(A&&A.start<=_.start)&&(A=_);!A||!Ou(A.el)||(Hu.set(A.el,u),Pr.get(A.el)!==!0&&(Pr.set(A.el,!0),Uo.delete(A.el),eh(A.el)))},cC=(u,h,g,S,A)=>{let _=p.isPlaying();h&&_?Go.has(u)||(Go.add(u),uC(u)):Go.delete(u);let O=Hu.get(u),q=O!==void 0&&Go.has(O),G=Pr.get(u),k=!h&&!q&&G!==!0&&Bo.size>=Yp;k&&g?Uo.add(u):Uo.delete(u);let le=!h&&!A&&_&&se(u)+(Z(u)??Number.NaN)<=S&&(G!==!0||u.networkState===2&&u.readyState<4),be=h||q||g&&!k&&!le;(h||!be)&&Jp(u)&&queueMicrotask(Zp);let ie=be&&!h&&se(u)>p.now(),pe=Gu.has(u);if(ie?Gu.add(u):Gu.delete(u),G===be){ie&&!pe&&jp(u);return}Pr.set(u,be),be?(!h||G===void 0)&&(h?Fs(u):eh(u)):u.preload!=="none"&&(u.preload="none",G&&j_(u,()=>z0(u)))},th=(u,h)=>Fr!==null&&p.isPlaying()&&(h(u,Fr)||Iu(u,h,Fr,Pa)),dC=(u,h,g)=>Pr.get(u)===!0&&Iu(u,h,g,Pa)||th(u,h),Bu=new WeakMap,nh=new WeakSet,Uu=new WeakSet,rh=new WeakMap,oh=u=>u.style.visibility==="hidden"&&u.style.getPropertyPriority("visibility")!=="important"&&!Uu.has(u),Wu=new WeakMap,Vu=(u,h)=>{for(let g=u.parentElement;g&&g!==h;g=g.parentElement)if(g.hasAttribute("data-start")&&mr(g)&&oh(g))return!0;return!1},$u=new Map,ih=-1,fC=Pa+Fa+1,mC=1,pC=(u,h,g)=>{let S=g(u);if(!S||!Number.isFinite(S.start))return null;let A=[];for(let _ of[0,Fa,Pa])A.push(S.start-_,S.end-_,S.end+_);for(let _=u.parentElement;_&&_!==h;_=_.parentElement){if(!_.hasAttribute("data-start"))continue;let O=g(_);if(!O||!Number.isFinite(O.start))return null;A.push(O.start,O.end)}return A.filter(_=>Number.isFinite(_))},hC=(u,h,g,S)=>{if(!g||!(Math.abs(h-u)<=mC))return null;if(ih!==S)return $u.clear(),ih=S,null;let A={timelineRegistry:window.__timelines??{},resolver:Ee(!0)},_=G=>Cs(G,A),O=Math.min(u,h),q=Math.max(u,h);return G=>{let k=Bu.get(G);if(k===void 0||Te(G)&&(Hu.has(G)||Go.has(G))||!G.hasAttribute(Ut)&&G.style.visibility!==(k?"visible":"hidden")||Vu(G,g)!==(Wu.get(G)??!1))return!1;let J=$u.get(G);if(J===void 0&&(J=pC(G,g,_),$u.set(G,J)),!J)return!1;for(let le of J)if(le>=O&&le<=q||Fr!==null&&Math.abs(le-Fr)<=fC)return!1;return!0}},gC=(u,h,g,S)=>{if(Na(u))return;let A=j(),_=!1,O=Up(g),q=S===void 0||g===void 0?null:hC(S,u,A,g);for(let k of h){if(!mr(k))continue;if(k.hasAttribute("data-hidden")){Ma.has(k)||(Ma.add(k),Gp(k)&&(ka=!0)),Ip(k,!1),(Ne(k)||Qe(k))&&i?.setSourceVisibility(k,!1);continue}if(Ma.has(k)&&(Op(k),Ma.delete(k),Gp(k)&&(ka=!0)),!k.hasAttribute("data-start")||q?.(k))continue;let le=Vu(k,A);Wu.set(k,le);let be=O(k,u)&&Wp(k.parentElement,u,O,A)&&!le;Bu.set(k,be);let ie=n(k);if(nh.has(k)||(nh.add(k),k.style.visibility==="hidden"&&Uu.add(k)),!ie&&!(be&&oh(k))){let Xe=k.style,Ye=Xe.getPropertyPriority("visibility")==="important";!be&&!Ye&&!Uu.has(k)&&rh.set(k,Xe.getPropertyValue("visibility"));let Ge=be?Ye&&rh.get(k)||"visible":"hidden";Xe.setProperty("visibility",Ge,be?"":"important")}k.toggleAttribute(We,!ie&&!be),!ie&&!be&&!zp.has(k)&&La.add(k);let pe=($p||qp)&&!be&&Iu(k,O,u);pe&&!k.hasAttribute(dr)&&o_(k),k.toggleAttribute(dr,pe),Te(k)&&An.has(k)&&Ou(k)&&cC(k,be,pe||dC(k,O,u),u,th(k,O)),!Te(k)&&!Qe(k)&&(_=!0),(Ne(k)||Qe(k))&&i?.setSourceVisibility(k,be),be?Op(k):nC(k)&&rC(k)&&Ip(k,!0)}_&&wg()&&i?.refresh(),sC(u);let G=aC(u);if((ka||G)&&p.isPlaying()){b.stopAll();for(let k of ba(document))x(k)&&(k.volume=0);ic()}ka=!1},bC=u=>{let h=j(),g=Ca("[data-start]").filter(S=>Bu.has(S)&&Vu(S,h)!==(Wu.get(S)??!1));g.length>0&&Qt(u,g)},Qt=(u,h=Ca("[data-start], [data-hidden]"),g,S)=>he(()=>gC(u,h,g,S)),yC=u=>he(()=>{if(!$p)return[];let h=j(),g=Up();return Array.from(document.images).filter(S=>S.closest(`[data-start]:not([${Ut}])[style*="visibility: hidden"]`)!==null&&(S.closest(as)!==null||!S.complete)&&Wp(S,u,g,h))}),Wo=null,Gt=null,Vo=[],ah=u=>u.hasAttribute("data-start")||!!Q(u).compositionRoot,$o=u=>cy({elements:u,shouldIncludeElement:ah,resolveStartSeconds:h=>se(h),resolveDurationSeconds:h=>{let g=Q(h),S=se(h),A=g.inheritedStart!=null&&g.inheritedDuration!=null&&g.inheritedDuration>0?Math.max(0,g.inheritedStart+g.inheritedDuration-S):null,_=Number.isFinite(h.duration)?Vt(h,h.duration):null,O=Ue(h.dataset.duration),q=O!=null&&O>0?O:null;return uy({isVideo:h.tagName==="VIDEO",sourceDuration:_,hostRemaining:A,explicitDuration:q})},resolveHostSlots:de}),xC=(u=Lr())=>{if(Wo&&Wo.revision===u)return Wo;let h=$o().mediaClips;return Wo={revision:u,clips:h,byStart:[...h].sort((g,S)=>g.start-S.start),byEnd:[...h].sort((g,S)=>g.end-S.end)},Gt=null,Vo=[],Wo},qu=(u,h,g,S)=>{let A=0,_=u.length;for(;A<_;){let q=A+_>>1;h(u[q])<g?A=q+1:_=q}let O=[];for(let q=A;q<u.length&&h(u[q])<=S;q+=1)O.push(u[q]);return O},SC=(u,h,g)=>{let S=Gt;if(S===null)return u.clips.map(G=>G.el);let A=2*si(Math.max(Math.abs(S),Math.abs(h))),_=Math.min(S,h)-A,O=Math.max(S,h)+A,q=new Set;for(let G of Vo)q.add(G.el);for(let G of qu(u.byStart,k=>k.start,_,O+g))q.add(G.el);for(let G of qu(u.byEnd,k=>k.end,_,O))q.add(G.el);if(e.isPlaying&&!window.__HF_EXPORT_RENDER_SEEK_CONFIG)for(let G of qu(u.byStart,k=>k.start,h,h+Ld*e.playbackRate))q.add(G.el);return[...q]},Da=new WeakSet,sh=u=>{Da.add(u)},lh=u=>{Da.delete(u),En()};window.__hf.leasePausedMedia=sh,window.__hf.releasePausedMedia=lh;let uh=u=>e.nativeMediaSyncDisabled?null:e.isPlaying?u:u.filter(h=>!Da.has(h.el));window.__hf.setLoopStart=u=>{Fr=u!=null&&Number.isFinite(u)&&u>=0?u:null};let EC=u=>{let h=Mu.get(u)?.hostId,g=h?document.querySelector(`[data-composition-id="${CSS.escape(h)}"]`):null,S=g?Z(g):null;return g&&S?z(g,0)+S:1/0},ch=u=>{let h=0;for(let g of u){if(g.data===li)continue;let S=g.getChildren?g:g.timeline,A=Number(g.duration?.())/Number(S?.duration?.()),_=S?.getChildren?ch(S.getChildren(!1,!0,!0))*(Number.isFinite(A)&&A>0?A:1):Number(g.duration?.())||0,O=Math.abs(Number(g.timeScale?.())||1),q=(Number(g.startTime?.())||0)+_/O;q>=Yr||(h=Math.max(h,Math.min(q,EC(g))))}return h};window.__hf.animationEnd=()=>{let u=e.capturedTimeline,h=u?.getChildren?ch(u.getChildren(!1,!0,!0)):Me(u)??0,g=Math.max(h,kr(!0)??0);return g>0&&g<Yr?g:null},window.__hf.audioMeter={start:()=>b.startMetering(),stop:()=>b.stopMetering(),read:()=>b.readLevels()};let vC=()=>{for(let u of document.querySelectorAll("video, audio"))if(Te(u)&&!u.paused&&ah(u)&&!Da.has(u))return!0;return!1},dh=()=>En();document.addEventListener("play",dh,!0),s.push(()=>{document.removeEventListener("play",dh,!0)});let zu=null,ht=u=>{let h=!nt,g=e.isPlaying&&!e.mediaForceSyncNextTick&&Gt!==null?Math.min(Math.max(0,e.currentTime-Gt),.04*Math.min(1,e.playbackRate)):0,S=he(()=>{if(!h)return $o().mediaClips;let q=xC(u);return $o(SC(q,e.currentTime,g)).mediaClips});for(let q of S){let G=Ho.get(q.el);G&&(q.volumeKeyframes=G)}let A=uh(S),_=e.mediaForceSyncNextTick;_&&(e.mediaForceSyncNextTick=!1),A&&(dy({clips:A,timeSeconds:e.currentTime,playing:e.isPlaying,playbackRate:e.playbackRate,outputMuted:e.mediaOutputMuted,userMuted:e.bridgeMuted,userVolume:e.bridgeVolume,forceSync:_,cueAheadSeconds:g,clockAdvancing:p.getSource()!=="audio"||Gt===null||e.currentTime>Gt,getCompositionDuration:()=>ot(e.capturedTimeline,0,u),onElementVolume:(q,G,k,J,le)=>b.setElementVolume(q,k,J,le),isWebAudioOwned:q=>b.ownsElement(q),isWebAudioRouted:q=>b.routesElement(q),seekUnderDip:(q,G)=>b.seekUnderDip(q,G),onAutoplayBlocked:()=>{e.mediaAutoplayBlockedPosted||(e.mediaAutoplayBlockedPosted=!0,Re({source:"hf-preview",type:"media-autoplay-blocked"}))}}),h?(Gt=e.currentTime,Vo=S.filter(q=>In(e.currentTime,q.start-.04,q.end))):(Gt=null,Vo=[]));let O=h&&e.isPlaying&&!_&&zu!==null?zu:void 0;Qt(e.currentTime,void 0,u,O),zu=e.currentTime},it=u=>{u&&En(),u&&Ku&&!p.isPlaying()&&at();let h=Math.max(0,Math.round((e.currentTime||0)*e.canonicalFps)),g=Date.now();(u||h!==e.bridgeLastPostedFrame||e.isPlaying!==e.bridgeLastPostedPlaying||e.bridgeMuted!==e.bridgeLastPostedMuted||g-e.bridgeLastPostedAt>=e.bridgeMaxPostIntervalMs)&&(e.bridgeLastPostedFrame=h,e.bridgeLastPostedPlaying=e.isPlaying,e.bridgeLastPostedMuted=e.bridgeMuted,e.bridgeLastPostedAt=g,Re({source:"hf-preview",type:"state",frame:h,currentTime:e.currentTime||0,ended:p.reachedEnd(),isPlaying:e.isPlaying,muted:e.bridgeMuted,playbackRate:e.playbackRate}))},ju="",fh=!1,mh=!1,ph=0,hh="",AC=()=>{let u="";for(let h of document.querySelectorAll("[data-start]"))u+=`${h.id}:${h.tagName}|`;return u},Ku=!1,Ia=!1,Yu=!1,wC=()=>{Yu||(Yu=!0,Fb().then(()=>window.requestAnimationFrame(()=>setTimeout(()=>{Yu=!1,Ia=!1,e.tornDown||at()}))))},at=()=>{P(),I(),L();let u=j();if(u){let{width:S,height:A}=w0(u);S!==null&&A!==null&&Re({source:"hf-preview",type:"stage-size",width:S,height:A})}if(or(),Ku=p.isPlaying(),Ku){delete window.__clipTree;return}if(Ia&&!nt&&Pb())return wC();Ia=!1;let h=zc(Vp());window.__clipManifest=h,hh=JSON.stringify(h);let g=AC();if(ju!==g&&oC(),!window.__clipTree||ju!==g){let S=window;window.__clipTree=c0({startResolver:lt({timelineRegistry:S.__timelines??{},includeAuthoredTimingAttrs:!0}),timelineRegistry:S.__timelines??{},rootDuration:h.durationInFrames/e.canonicalFps}),ju=g}Re({...h,assetsReady:mh}),fh||(fh=!0,jw(document,({timedOut:S})=>{e.tornDown||(mh=!0,Re({source:"hf-preview",type:"assets-ready",timedOut:S}))})),J_()},_C=()=>{JSON.stringify(zc(Vp()))!==hh&&at()},Xu=u=>typeof u=="number"&&Number.isFinite(u)&&u>0?u:0,CC=u=>{let h=Xu(Number(u));if(h<=0)return;let g=j(),S=Xu(Ue(g?.getAttribute("data-duration"))),A=Math.max(ph,Xu(p.getDuration()),S);h<=A||(ph=h,g?.setAttribute("data-duration",String(h)),p.setDuration(h),at(),it(!0))},ct=(u,h=0,g)=>{for(let S of e.deterministicAdapters){try{u==="discover"&&S.discover(),u==="pause"&&S.pause({pageAnimations:g}),u==="play"&&S.play&&S.play()}catch(A){$("runtime.init.site8",A)}if(u==="discover")try{S.seek({time:h,suppressEvents:!0})}catch(A){$("runtime.init.site9",A)}}},ar=()=>{window.__renderReady=!1},TC=n_(()=>{let u=[];for(let h of e.deterministicAdapters){let g=h.getReadyPromise;if(typeof g=="function")try{let S=g();S&&u.push(S)}catch(S){$("runtime.init.adapterReady",S)}}return u},()=>ar(),u=>$("runtime.init.adapterReady",u)),RC=n_(()=>{let u=window.__hf?.buildReady;return u?Object.values(u).filter(h=>h!=null&&typeof h.then=="function"):[]},()=>ar(),u=>$("runtime.init.buildReady",u));function Ju(){let u=j();u&&ow({root:u,fps:e.canonicalFps,durationSeconds:()=>ot(e.capturedTimeline,0)||Number(u.getAttribute("data-duration"))||0,timeline:()=>e.capturedTimeline,now:()=>Math.max(0,e.currentTime||0),seek:(h,g)=>{$h(e.capturedTimeline,h,{suppressEvents:g})},ignoreMutations:K_})}let MC=()=>{Ra(),Z_();let u=Yf();return Hl(document),tu(document.body,e.canonicalFps),Ju(),u};if(Be)Yf();else{let u={injectedStyles:e.injectedCompStyles,injectedScripts:e.injectedCompScripts,injectedLinks:e.injectedCompLinks,parseDimensionPx:X,onDiagnostic:({code:h,details:g})=>{Re({source:"hf-preview",type:"diagnostic",code:h,details:g})}};OE(u).finally(()=>{Be=!0,MC(),ar()})}let gh=u=>{let h=new Set,g=S=>{for(let A of(S??"").matchAll(/url\(\s*(['"]?)(.*?)\1\s*\)|@import\s+(['"])(.*?)\3/gi))h.add(A[2]??A[4]);for(let A of(S??"").matchAll(/image-set\((?:[^()]|\([^()]*\))*\)/gi))for(let _ of A[0].matchAll(/(['"])(.*?)\1/g))h.add(_[2])};for(let S of u)if(S.tagName==="STYLE"&&g(S.textContent),!(S.tagName==="STYLE"||S.tagName==="SCRIPT"))for(let A of[S,...S.querySelectorAll("*")]){let _=i2.get(A.localName)??[],O=[vE(A),...[..._,"poster","srcset"].map(q=>A.getAttribute(q))];for(let q of O)q&&h.add(q);g(A.getAttribute("style"))}return h},Qu=0,kC=(u,h,g)=>{let S=new Map;for(let A of g?u.querySelectorAll("video, audio"):[]){let _=xa.get(A);if(!_||i?.isGraded(A))continue;let{srcObject:O,sinkId:q,mediaKeys:G}=A;O||q||G||S.set(_,[...S.get(_)??[],A])}for(let A of h.querySelectorAll("video, audio")){let _=up(A),O=S.get(_)?.shift();if(!O||r_(O)!==r_(A)){xa.set(A,_);continue}A.replaceWith(O),window.gsap?.set?.(O,{clearProps:"all"});let q=A.getAttribute("style");q===null?O.removeAttribute("style"):O.setAttribute("style",q),jE(O);let G=O;G.volume=Dp(G)??1,G.muted=e.bridgeMuted||e.mediaOutputMuted||G.defaultMuted,G.defaultPlaybackRate=1,G.playbackRate=e.playbackRate,G.preservesPitch=!0}},Oa=u=>[u,...u.querySelectorAll("[data-composition-id]")].flatMap(h=>h.getAttribute("data-composition-id")||[]),bh=u=>{let h=new Set([e.capturedTimeline,window.gsap?.globalTimeline,...Oo]);for(let[g,S]of Object.entries(window.__timelines??{}))u.includes(g)||h.add(S);return h},Zu=(u,h)=>{let g=bh(h);return(u.getChildren?u.getChildren(!0,!0,!1):[u]).flatMap(A=>(A.targets?.()??[]).filter(_=>typeof _?.totalTime=="function"&&typeof _.kill=="function"&&!g.has(_)))},LC=(u,h,g,S)=>{let A=Oa(h),_=new Set(A.flatMap(G=>[g[G],...S[G]??[]]));for(let G of _)if(G)for(let k of Zu(G,A))_.add(k);let O=new Set([h,...h.querySelectorAll("*")]);for(let G of window.gsap?.globalTimeline?.getChildren?.(!0,!0,!1)??[]){if(!G.targets?.().some(J=>O.has(J)))continue;let k=G;for(;k&&!_.has(k);)k=k.parent;if(!k)throw new Error(`scene ${u} cannot be swapped: an animation outside it moves its elements`)}let q=G=>typeof G?.nodeType=="number"&&!O.has(G);for(let G of _)for(let k of G?[G,...G.getChildren?.(!0,!0,!1)??[]]:[])if(k.targets?.().some(q))throw new Error(`scene ${u} cannot be swapped: its animations write outside the scene`)},yh=async(u,h)=>{let g=window.gsap?.globalTimeline,S=new Set(g?.getChildren?.(!1,!0,!0));await Bl(h);let A=window.__hfSceneAnimations,_=u.length===1?Oa(u[0])[0]:void 0;if(!A||!_||!g?.getChildren)return;await Qi(),await new Promise(G=>window.setTimeout(G,0));let O=new Set([...Object.values(A).flat(),...bh([_])]),q=g.getChildren(!1,!0,!0).filter(G=>!S.has(G)&&!O.has(G));(A[_]??(A[_]=[])).push(...q)},xh=(u,h=()=>{})=>{let g=()=>window.__timelines??(window.__timelines={}),S=()=>window.__hfSceneAnimations??(window.__hfSceneAnimations={}),A=e.capturedTimeline,_=u.flatMap(J=>Oa(J)),O=new Set,q=J=>{if(!J||O.has(J))return;O.add(J);let le=J;le.revert?le.revert():le.totalTime?.(0,!0),A?.remove?.(J),le.revert||le.kill?.()},G=()=>{let J=O.size,le=_.flatMap(ie=>[...(S()[ie]??[]).slice().reverse(),g()[ie]]),be=new Set;for(let ie of le)ie&&Zu(ie,_).forEach(pe=>be.add(pe));for(let ie of be)Zu(ie,_).forEach(pe=>be.add(pe));for(let ie of[...le.filter(pe=>!be.has(pe)),...be])q(ie);return O.size>J},k=0;for(;G();)if(++k>8)throw new Error("the old scene keeps starting animations as they stop");h();for(let J of _)delete g()[J],delete S()[J]},NC=u=>{let h=Cn(e.currentTime);ct("pause",0,h),ct("play"),y&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&ac(u.flatMap(ba),b.currentGeneration())},Sh=(u,h,g,S=!1)=>{for(let G of u)Hl(document,G);Ra();let A=()=>{for(let G of h)for(let k of[G,...G.querySelectorAll("[data-composition-id]")]){let J=k.getAttribute("data-composition-id");J&&window.__timelines?.[J]?.totalTime?.(0,!0)}};tu(document.body,e.canonicalFps),Ju(),Xf(g,h,A),Pp(),rr=!1,or();let _=Nu();for(let G of u)for(let k of G.querySelectorAll("video, audio"))Ho.delete(k),Fu(k,_);let O=ot(e.capturedTimeline,0);O>0&&p.setDuration(O),ct("discover",e.currentTime),ea(document);let q=p.isPlaying()&&O>0&&e.currentTime>=O;S&&p.isPlaying()&&!q?NC(u):Wa.seek(q?O:e.currentTime,{keepPlaying:!q}),Qt(e.currentTime),at()},Eh=u=>{let h=O=>Array.from(O.querySelectorAll(`style[${Ac}]`)),g=h(document),S=new Set(g.flatMap(O=>wc(O.textContent??""))),A=new Set(h(u).flatMap(O=>wc(O.textContent??"")).filter(O=>!S.has(O)));if(A.size===0)return;let _=document.createElement("style");_.setAttribute(Ac,""),_.textContent=[...A].join(`
|
|
1136
|
+
`),g.length>0?g.at(-1).after(_):document.head.prepend(_)},FC=async(u,h)=>{let g=Qu,S=new DOMParser().parseFromString(u,"text/html"),A=ya(document),_=ya(S);if(!A||!_)throw new Error("no scene manifest");if(A.shared!==_.shared)throw new Error("the film changed outside its scenes");let O=Object.keys(_.scenes);if(O.length!==Object.keys(A.scenes).length||O.some(K=>!(K in A.scenes)))throw new Error("scenes were added or removed");let q=O.filter(K=>_.scenes[K]!==A.scenes[K]);if(q.length===0)throw new Error("no scene changed");let G=(K,ee)=>Array.from(K.querySelectorAll(`[${ft}="${CSS.escape(ee)}"]`)),k=K=>{let ee=Jr(K);return ee!==null&&Hn(ee)},J=K=>K.filter(ee=>ee.tagName==="STYLE"),le=q.filter(k).map(K=>{let ee=G(S,K),ce=ee.find(Ie=>Ie.tagName!=="STYLE"&&Ie.tagName!=="SCRIPT");if(!ce)throw new Error(`scene ${K} cannot be swapped: it has no single host`);let oe=ce.getAttribute(Mn);if(oe!==null)throw new Error(`scene ${K} cannot be swapped: ${oe}`);if(!Kc(ce))throw new Error(`scene ${K} cannot be swapped: a clip's length is not written`);if(!Yc(ce))throw new Error(`scene ${K} cannot be swapped: its start or length is not in seconds`);let ve=J(G(document,K));if(ve.length!==J(ee).length)throw new Error(`scene ${K} cannot be swapped: its styles moved`);return{name:K,parts:ee,host:ce,oldStyles:ve}});le.length>0&&Eh(S);for(let{name:K,parts:ee,host:ce,oldStyles:oe}of le){let ve=J(ee);oe.forEach((Ie,st)=>Ie.replaceWith(document.importNode(ve[st],!0))),Jc(K,ce,ee.filter(Ie=>Ie.tagName==="SCRIPT"))}let be=q.filter(K=>!k(K));if(be.length===0){document.querySelector(`meta[name="${Rn}"]`)?.setAttribute("content",JSON.stringify(_)),Mt=Rs(),at();return}let ie=be.map(K=>{let ee=Hr=>Hr.tagName!=="STYLE"&&Hr.tagName!=="SCRIPT",ce=G(document,K),oe=G(S,K),ve=ce.filter(ee),Ie=oe.filter(ee),st=ve[0],dt=Ie[0];if(!st||!dt||ve.length>1||Ie.length>1)throw new Error(`scene ${K} cannot be swapped: it has no single host`);if(st.hasAttribute("data-hf-original-composition-id"))throw new Error(`scene ${K} cannot be swapped: it is a duplicated instance`);let en=st.getAttribute(Mn)??dt.getAttribute(Mn);if(en!==null)throw new Error(`scene ${K} cannot be swapped: ${en}`);let tT=gh(ce);if([...gh(oe)].some(Hr=>!tT.has(Hr)))throw new Error(`scene ${K} cannot be swapped: it loads media this scene has not loaded`);if(J(ce).length!==J(oe).length)throw new Error(`scene ${K} cannot be swapped: its styles moved`);return{name:K,oldParts:ce,homes:ce.map(Hr=>Hr.parentNode),newParts:oe,oldHost:st,newHost:dt}}),pe=()=>{let K=j(),ee=new Set;for(let ce of document.querySelectorAll(`[${ft}]`)){if(ce.tagName==="STYLE"||ce.tagName==="SCRIPT")continue;let oe=ce.parentElement;for(;oe;oe=oe===K?null:oe.parentElement)ee.add(oe)}return[...ee].flatMap(ce=>[ce,...Array.from(ce.children).filter(oe=>!oe.hasAttribute("data-hf-ignore")),null])},Xe=pe(),Ye=ie.some(({newHost:K})=>K.querySelector(".caption-group"))?await Kf():[];if(e.tornDown)throw new Error("the preview was torn down during the swap");if(h?.aborted)throw new Error("the swap was cancelled");if(g!==Qu)throw new Error("the preview changed while this swap waited");let Ge=()=>{let K=({oldParts:oe,homes:ve})=>oe.some((Ie,st)=>!Ie.isConnected||Ie.parentNode!==ve[st]),ee=pe();if(ee.length!==Xe.length||ee.some((oe,ve)=>oe!==Xe[ve])||ie.some(K))throw new Error("a scene changed while this swap waited")};Ge();let Je=()=>window.__timelines??(window.__timelines={}),Ja=()=>window.__hfSceneAnimations??(window.__hfSceneAnimations={}),$e=()=>{for(let{name:K,oldHost:ee}of ie)LC(K,ee,Je(),Ja())};$e(),Qu+=1;let Zt=[],ye=[];xh(ie.map(({oldHost:K})=>K),()=>{Ge(),$e()}),b.stopAll(),p.detachAudioSource();for(let{oldParts:K,newParts:ee,oldHost:ce,newHost:oe}of ie){let ve=J(ee);J(K).forEach((dt,en)=>dt.replaceWith(document.importNode(ve[en],!0)));for(let dt of K)dt!==ce&&dt.remove();let Ie=document.importNode(oe,!0),st=dt=>JSON.stringify(dt.flatMap(en=>en.tagName==="SCRIPT"?en.textContent:[]));kC(ce,Ie,st(K)===st(ee)),ce.replaceWith(Ie),ye.push(Ie),Ie.querySelector(".caption-group")&&Zt.push(Ie)}Eh(S),cr();let me=ie.flatMap(({newParts:K})=>K.filter(ee=>ee.tagName==="SCRIPT").map(ee=>document.body.appendChild(document.importNode(ee,!0))));if(await yh(ye,me),e.tornDown)throw new Error("the preview was torn down during the swap");document.querySelector(`meta[name="${Rn}"]`)?.setAttribute("content",JSON.stringify(_));for(let{name:K,newParts:ee,newHost:ce}of ie)Jc(K,ce,ee.filter(oe=>oe.tagName==="SCRIPT"));Sh(ye,Zt,Ye),Mt=Rs()},Mt=Rs(),Ha=new Set(Array.from(document.querySelectorAll(`[${Tn}]`),u=>u.getAttribute(ft))),sr=null,Ga="",ec=()=>new Promise(u=>window.setTimeout(u,0)),vh=(u,h)=>{let g=Nr.get(u);g&&Nr.set(h,g)},Ah=async u=>{let h=D0(u);if(!h)return;let{host:g,placeholder:S,scripts:A}=h;vh(S,g),yu(g),cr();let _=g.querySelector(".caption-group")?[g]:[],O=_.length>0?await Kf():[];await ec(),await yh([g],A.map(q=>document.body.appendChild(q))),await ec(),Ha.delete(u),e.tornDown||Sh([g],_,O,!0)},PC=u=>{let h=Oa(u),g=new Set(h.flatMap(S=>window.__hfSceneAnimations?.[S]??[]));return Object.entries(window.__timelines??{}).find(([S,A])=>g.has(A)&&!h.includes(S))?.[0]},DC=u=>{let h=Jr(u);if(!h||Hn(h)||h.hasAttribute(Mn))return;let g=PC(h);if(g!==void 0){h.setAttribute(Mn,`its script registers a timeline as ${g}`);return}xh([h]);let S=Xc(u);S&&vh(h,S),Ha.add(u),Pp(),b.releaseDecodedExcept(ba(document)),rr=!1,or(),at()},Ba=new Set;Na=u=>{if(Mt.length===0||e.tornDown)return!1;let h=k=>Ha.has(k),g=Mt.find(({name:k,start:J,end:le})=>J<=u&&u<=le&&h(k));if(sr)return g&&Ze(sr.then(()=>sr)),g!==void 0;let S=Ms(Mt,u,p.isPlaying());for(let k of Ba)S.add(k);let A=[...S].join(`
|
|
1137
|
+
`);if(A===Ga)return g!==void 0;let _=Mt.filter(({name:k})=>S.has(k)&&h(k)).sort((k,J)=>Math.abs(k.start-u)-Math.abs(J.start-u))[0],O=g??_,q=O?[]:Mt.filter(({name:k})=>!S.has(k)&&!h(k));if(!O&&q.length===0)return Ga=A,!1;let G=k=>Ba.has(k)||Ms(Mt,e.currentTime,p.isPlaying()).has(k);return sr=(async()=>{if(g)await Ah(g.name);else if(O)await ec(),G(O.name)&&await Ah(O.name);else for(let{name:k}of q)DC(k)})().finally(()=>{sr=null,Ga="",Na(e.currentTime)}),g&&Ze(sr),g!==void 0};let IC=async u=>{Ba=new Set(u.filter(h=>Mt.some(g=>g.name===h))),Ga="";for(let h=0;h<=Mt.length&&!e.tornDown;h++){if(Na(e.currentTime),![...Ba].some(g=>Ha.has(g)))return;await(sr??Promise.resolve())}};ya(document)&&(window.__hfSwapScenes=FC,window.__hfHoldScenes=IC,window.__hfParkedSceneMarkup=Qc,H(()=>{delete window.__hfSwapScenes,delete window.__hfHoldScenes,delete window.__hfParkedSceneMarkup}));let Ua=gx({postMessage:u=>Re(u)});Ua.installPickerApi(),Qt(e.currentTime,Array.from(document.querySelectorAll("video[data-start], img[data-start]")));let Bt=Dv({lease:sh,release:lh});i=Bt,H(()=>{Bt.destroy(),i=null}),tu(document.body,e.canonicalFps),Ju();let tc=u=>{let h=Number(u);!Number.isFinite(h)||h<=0?e.playbackRate=1:e.playbackRate=Math.max(.1,Math.min(5,h)),e.mediaForceSyncNextTick=!0,e.capturedTimeline&&typeof e.capturedTimeline.timeScale=="function"&&e.capturedTimeline.timeScale(e.playbackRate)},OC=1e3,wn=null,wh=()=>{let u=wn;wn=null,u?.apply()},_h=(u,h)=>{b.stopAll(),p.detachAudioSource();let g=p.isPlaying();g&&p.pause(),p.seek(u),e.currentTime=p.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0;let S=h?.keepPlaying&&g;Ia=!S,S||ht();let A=e.capturedTimeline;bn(A);let _=Cn(e.currentTime);if(S||bC(e.currentTime),ct("pause",0,_),S){Wa.play();return}Bt.redraw(),Em(e.currentTime);let O=Ao(e.currentTime);O&&Ze(O),it(!0)},Wa={play:()=>{wh();let u=e.capturedTimeline;if(p.isPlaying())return;let h=ot(u,0);if(h>0){if(p.setDuration(h),p.reachedEnd()){let g=p.getPlayStart();p.seek(g),e.currentTime=g,Cn(g)}}else{let g=j(),S=Number(g?.getAttribute("data-duration")??0);S>0&&p.setDuration(S)}bn(u),p.play()&&(e.isPlaying=!0,e.mediaForceSyncNextTick=!0,Qh(p.now()),y&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&ic(),ct("play"),ht(),Bt.redraw(),it(!0))},pause:()=>{if(!p.isPlaying())return;b.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1,e.currentTime=p.now(),e.mediaForceSyncNextTick=!0,Qh(e.currentTime);let u=e.capturedTimeline;bn(u),ct("pause"),ht(),Bt.redraw(),Ao(e.currentTime),it(!0)},seek:(u,h)=>{let g=Bc(Math.max(0,Number(u)||0),e.canonicalFps);wn=null;let S=p.isPlaying()?[]:yC(g);if(S.length===0){_h(g,h);return}let A={time:g,apply:()=>_h(g,h)};wn=A;for(let k of S){o_(k);for(let J=k.closest(as);J;J=k.closest(as))J.setAttribute(dr,"")}let _=0,O=new Promise(k=>{_=window.setTimeout(()=>{wn===A&&$("runtime.init.seekHoldCap",S),k()},OC)}),q=Promise.all(S.map(k=>k.decode?k.decode().catch(()=>{}):void 0)),G=Promise.race([q,O]).then(()=>{window.clearTimeout(_),wn===A&&wh()});return Ze(G),G},renderSeek:(u,h)=>{wn=null,nt=!0;let g=bl(Math.max(0,Number(u)||0),e.canonicalFps,h);b.stopAll(),p.detachAudioSource(),p.isPlaying()&&p.pause(),p.seek(g),e.currentTime=p.now(),e.isPlaying=!1,e.mediaForceSyncNextTick=!0;let S=Cn(e.currentTime,{suppressEvents:h?.suppressEvents});ct("pause",0,S),ht(),Bt.redraw(),Em(e.currentTime,{engineMode:!0});let A=Ao(e.currentTime,{engineMode:!0});A&&Ze(A),it(!0)},getTime:()=>wn?.time??p.now(),getDuration:()=>{let u=p.getDuration();return Number.isFinite(u)?u:0},isPlaying:()=>p.isPlaying(),setPlaybackRate:u=>{tc(u),p.setRate(e.playbackRate),eg()},getPlaybackRate:()=>e.playbackRate},Ch=ot(e.capturedTimeline,0);Ch>0&&p.setDuration(Ch);let lr=yx({getTimeline:()=>e.capturedTimeline,setTimeline:u=>{e.capturedTimeline=u},getTimelineRegistry:()=>window.__timelines??{},getIsPlaying:()=>e.isPlaying,setIsPlaying:u=>{e.isPlaying!==u&&(e.mediaForceSyncNextTick=!0),e.isPlaying=u},getPlaybackRate:()=>e.playbackRate,setPlaybackRate:tc,getCanonicalFps:()=>e.canonicalFps,onSyncMedia:(u,h)=>{e.currentTime=Math.max(0,Number(u)||0),e.isPlaying!==h&&(e.mediaForceSyncNextTick=!0),e.isPlaying=h,ht()},onStatePost:it,onDeterministicSeek:(u,h)=>{for(let g of e.deterministicAdapters)if(!(g.name==="gsap"&&e.capturedTimeline))try{g.seek({time:Number(u)||0,suppressEvents:h?.suppressEvents})}catch(S){$("runtime.init.site11",S)}},onDeterministicPause:()=>ct("pause"),onDeterministicPlay:()=>ct("play"),onRenderFrameSeek:()=>{Bt.redraw()},onShowNativeVideos:()=>{},getSafeDuration:()=>ot(e.capturedTimeline,0),transport:Wa});window.__player=M(lr),window.__playerReady=!0,wt("composition_loaded",{duration:lr.getDuration(),compositionId:gt()?.getAttribute("data-composition-id")??null}),e.deterministicAdapters=[qb({start:u=>z(u,0),duration:u=>Z(u),compositionDuration:()=>ot(e.capturedTimeline,0),canonicalFps:()=>e.canonicalFps,exportRenderSeek:()=>!!window.__HF_EXPORT_RENDER_SEEK_CONFIG}),Yb(),hb({resolveStartSeconds:u=>z(u,0)}),_b(),Mb({resolveStartSeconds:u=>z(u,0)}),Ib(),Ob(),Hb(),Gb(),Bb(),Ub(),Wb(),wb({getTimeline:()=>e.capturedTimeline})],jb(),Kb(),window.__hfReseekGpu=u=>{let h=Math.max(0,Number(u)||0);window.__hfThreeTime=h,window.__hfTypegpuTime=h,js(h)};let Th=u=>(sw(),Db(u));window.__hfWaitForSeekCompletion=Th,s.push(()=>{window.__hfWaitForSeekCompletion===Th&&delete window.__hfWaitForSeekCompletion}),Q_(),Ra(),ct("discover");let HC=()=>{or();let u=ot(e.capturedTimeline,0);if(u>0&&p.setDuration(u),ct("discover",e.currentTime),!e.capturedTimeline){let h=window.__timelines??{},g=Object.keys(h).filter(S=>h[S]);if(g.length>0){let A=j()?.getAttribute("data-composition-id")??null;V("root_timeline_unbound_registry_present",{reason:A?"root data-composition-id has no matching key in window.__timelines":"root composition element has no data-composition-id attribute",rootCompositionId:A,registeredTimelineKeys:g},"root_timeline_unbound_registry_present"),globalThis.console.warn("[hyperframes] Root timeline not bound, so render will freeze at t=0. "+(A?`Root data-composition-id is "${A}" but window.__timelines has no such key. `:"Root composition element has no data-composition-id. ")+`Registered timeline keys: [${g.join(", ")}]. Register the root timeline under its data-composition-id (window.__timelines["${A??"<root-id>"}"] = tl).`)}}Qt(e.currentTime,Array.from(document.querySelectorAll("[data-start]:not(video, audio, img)"))),window.__renderReady=!0;try{at()}catch(h){throw window.__renderReady=!1,Yo(h),h}it(!0)},Dr=null,GC=()=>{if(Dr)return;let u=()=>{window.removeEventListener("hf-timelines-built",u),Dr=null,ar()};Dr=u,window.addEventListener("hf-timelines-built",u)};H(()=>{Dr&&(window.removeEventListener("hf-timelines-built",Dr),Dr=null)}),ar=()=>{if(!e.tornDown){if(!Be){window.__renderReady=!1;return}if(window.__hfTimelinesBuilding){window.__renderReady=!1,GC();return}if(ct("discover",e.currentTime),!TC()){window.__renderReady=!1;return}if(!RC()){window.__renderReady=!1;return}HC()}},ar(),Be&&setTimeout(()=>{ar()},0);let nc=0,Va=!1,$a=Number.NaN,Ir={revision:Number.NaN,time:Number.NEGATIVE_INFINITY},qa=null,za=!1,_n=null,Rh=!1,ja=!1,Mh="",kh=-1,qo=!1,Lh=Number.NEGATIVE_INFINITY,Nh=Number.NEGATIVE_INFINITY,Fh="",Ph=!1,Dh=u=>nt?void 0:{owner:u,version:`${xt}:${u.getChildren?.(!1,!0,!0).length??0}`},Ih=new Set,BC=(u,h,g,S)=>{try{let A=S?.suppressEvents===!0;bn(h),xi(h,g,A,Dh(h))}catch(A){let _=A instanceof Error?`${A.name}: ${A.message}`:String(A),O=`${u}
|
|
1138
|
+
${_}`;if(Ih.has(O))return;Ih.add(O),globalThis.console.warn(`${sg} "${u}" ${_}`)}},Oh=new Map,UC=u=>{let h=Oh.get(u);if(!nt&&h){if(h instanceof WeakRef){let S=h.deref();if(S?.isConnected&&S.getAttribute("data-composition-id")===u)return S}else if(h.missingAt===xt)return null}let g=document.querySelector(`[data-composition-id="${CSS.escape(u)}"]`);return Oh.set(u,g?new WeakRef(g):{missingAt:xt}),g},Ka=new WeakMap,Hh=-1,WC=(u,h)=>{if(Ka.has(h))return Ka.get(h);let g=UC(u),S=g?z(g,0):Number.NaN,A=g&&Number.isFinite(S)?{start:S,hiddenFrom:g.hasAttribute("data-start")&&!n(g)?S+(Z(g)??1/0):1/0,playbackStart:Ci(g),rate:Et(g),timelineDuration:Me(h)}:null;return Ka.set(h,A),A},Gh=new WeakMap,VC=(u,h)=>{if(Gh.get(u)!==h)return!1;try{return u.paused()===!0&&Number(u.totalTime?.())===h}catch{return!1}},$C=(u,h,g)=>{(Hh!==h||nt)&&(Ka=new WeakMap,Hh=h);let S=window.__timelines??{},A=j()?.getAttribute("data-composition-id")??null;for(let[_,O]of Object.entries(S)){if(!O||typeof O!="object"||_===A)continue;let q=WC(_,O);if(!q)continue;let G=q.playbackStart+Dn(q.rate,Math.max(0,Math.min(u,q.hiddenFrom)-q.start)),k=Math.max(0,q.timelineDuration!=null&&q.timelineDuration>0?Math.min(q.timelineDuration,G):G);!nt&&VC(O,k)||(BC(_,O,k,g),Gh.set(O,k))}},Bh=u=>typeof u=="object"&&u!==null,qC=["onStart","onUpdate","onComplete","onReverseComplete","onRepeat"],Uh=(u,h)=>{let g=u[h];if(typeof g!="function")return null;try{let S=Number(g.call(u));return Number.isFinite(S)?S:null}catch(S){return $("runtime.init.gsapCallbackDuration",S),null}},Wh=new WeakMap,zC=(u,h)=>{if(!h)return Vh(u);let g=Wh.get(h.owner);if(g?.version===h.version)return g.value;let S=Vh(u);return Wh.set(h.owner,{version:h.version,value:S}),S},Vh=u=>{if(!("getChildren"in u)||typeof u.getChildren!="function")return!1;let h;try{h=u.getChildren(!0,!0,!0)}catch(g){return $("runtime.init.gsapCallbackChildren",g),!1}if(!Array.isArray(h))return!1;for(let g of h){if(!Bh(g))continue;let S=g.vars;if(!Bh(S)||!qC.some(q=>typeof S[q]=="function"))continue;let O=Uh(g,"totalDuration")??Uh(g,"duration");if(O!=null&&O<=1e-6)return!0}return!1};function Cn(u,h){let g=e.capturedTimeline,S=$h(g,u,h);return $a=u,qa=g,S}function $h(u,h,g){let S=g?.suppressEvents===!0,A=g?.revision??Lr();A!==Ir.revision&&(Ir={revision:A,time:Number.NEGATIVE_INFINITY}),lC(h);let _=h>Ir.time,O=_&&u?B0(u,Ir.time,h):null,q=_&&O?.size!==0?vg(O?k=>O.has(k):void 0):null;if($C(h,A,g),u){let k=h;if(typeof u.totalDuration=="function")try{let J=Number(u.totalDuration());Number.isFinite(J)&&J>0&&h>J&&(k=J)}catch(J){$("runtime.init.transport.clampDuration",J)}try{if(typeof u.totalTime=="function"){let J=Dh(u);!xi(u,k,S,J)&&!S&&!zC(u,J)&&$s({totalTime:u.totalTime.bind(u),totalDuration:u.totalDuration?.bind(u),getChildren:u.getChildren?.bind(u)},k,J)}else u.seek(k,S)}catch(J){$("runtime.init.transport.seek",J)}}q?.(),Ir.time=Math.max(Ir.time,h);let G=l2();for(let k of e.deterministicAdapters)if(!(k.name==="gsap"&&u))try{k.seek({time:h,suppressEvents:S,pageAnimations:G})}catch(J){$("runtime.init.transport.adapter",J)}return G}let rc=Dw(document,()=>{En()});s.push(()=>rc.disconnect());let qh=()=>{try{return rc.isActive()}catch{return!1}},jC=()=>!p.isPlaying()&&!_a()&&rc.observing&&(!za||qh())&&!qo&&e.currentTime===$a&&e.capturedTimeline===qa,oc=()=>`${Lr()}|${kr()??""}`,zh=()=>{_n=window.setTimeout(KC,Rh&&e.capturedTimeline&&rr?a2:e.bridgeMaxPostIntervalMs)},KC=()=>{if(_n=null,!e.tornDown&&!(typeof window>"u"||typeof document>"u")){if(oc()!==Mh){En();return}it(!1),zh()}},Or=null,jh=()=>e.transportRafId!=null||Or!=null,Ya=()=>{if(document.visibilityState==="hidden"){Or=window.setTimeout(()=>{Or=null,Jh()},s2);return}e.transportRafId=window.requestAnimationFrame(Jh)},Kh=()=>{e.transportRafId!=null&&(window.cancelAnimationFrame(e.transportRafId),e.transportRafId=null),Or!=null&&(window.clearTimeout(Or),Or=null)},Yh=()=>{e.tornDown||!jh()||(Kh(),Ya())};document.addEventListener("visibilitychange",Yh);let YC=()=>{if(e.transportRafId=null,e.tornDown)return;let u=ja;if(ja=!1,u||!jC()){Ya();return}Mh=oc(),zh()};En=()=>{e.tornDown||(ja=!0,!(Va||jh())&&(_n!=null&&(window.clearTimeout(_n),_n=null),ja=!1,Ya()))};let XC=u=>{let h=Ca("audio[data-start]"),g=null;for(let S of u?[u,...h]:h){if(!Te(S)||!S.isConnected||x(S)||kd(S)||S.ended&&!S.loop||!S.hasAttribute("src")&&!S.querySelector("source[src]"))continue;let A=se(S),_=ge(S,A);if(!Number.isFinite(A)||!In(e.currentTime,_.start,_.end))continue;if(S===u)return{el:S,start:A};let O=A+(Vr(S)??1/0);(!g||O>g.runsUntil)&&(g={el:S,start:A,runsUntil:O})}return g},JC=3e3,zo=null,QC=u=>u.readyState>=HTMLMediaElement.HAVE_FUTURE_DATA?(zo=null,!0):(zo?.el!==u&&(zo={el:u,sinceMs:performance.now()}),performance.now()-zo.sinceMs<JC);function Xh(){if(p.isPlaying()&&!e.mediaOutputMuted)if(!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&b.ownsClock()&&b.context){let u=b.getTime();u>=0&&p.attachAudioSource({currentTimeSeconds:u})}else{let u=XC(p.audioElement());u&&!QC(u.el)?p.hasAudioSource()&&p.detachAudioSource():u&&!u.el.paused?p.attachAudioSource({el:u.el,compositionStart:u.start,mediaStart:Ci(u.el),rate:Et(u.el)}):u&&u.el.readyState<HTMLMediaElement.HAVE_FUTURE_DATA?p.attachAudioSource({currentTimeSeconds:e.currentTime}):p.hasAudioSource()&&p.detachAudioSource()}else zo=null,p.hasAudioSource()&&p.detachAudioSource()}let Jh=()=>{if(!(e.tornDown||Va)){Va=!0;try{nc+=1;let u=Lr();u!==kh&&(kh=u,qo=!0);let h=Date.now(),g=p.isPlaying(),S=g&&h-Nh>=ep,A=Ph&&!g;if(Ph=g,S){Nh=h;let le=oc();le!==Fh&&(Fh=le,qo=!0)}let _=qo&&h-Lh>=Ow;_&&(Lh=h);let O=le=>!g&&nc%le===0;if(Hw({tick:nc,isPlaying:g,hasCapturedTimeline:e.capturedTimeline!=null,currentTimeSeconds:p.now(),compositionChanged:_,playingPollDue:S})){let le=e.capturedTimeline;if(or()){e.capturedTimeline&&e.capturedTimeline!==le&&bn(e.capturedTimeline);let be=ot(e.capturedTimeline,0,u);be>0&&p.setDuration(be),at()}}if(_||O(20)?(at(),qo=!1):A&&_C(),(_||O(30))&&Ra(),e.capturedTimeline){let le=ot(e.capturedTimeline,0,u);le>0&&(!p.isPlaying()||le>=p.getDuration())&&p.setDuration(le)}Xh();let q=p.now();e.currentTime=q,window.__HF_EXPORT_RENDER_SEEK_CONFIG||tb({nowMs:performance.now(),filmTime:q,fps:e.canonicalFps,rate:e.playbackRate,playing:g,hidden:document.visibilityState==="hidden",waiting:Vo.some(({el:le})=>le.tagName==="VIDEO"&&!le.paused&&le.readyState<3),layoutKey:`${window.innerWidth}x${window.innerHeight}@${window.devicePixelRatio}`});let G=p.isPlaying(),k=!G&&qh(),J=G&&aw();if(k?za=!0:!J&&(G||za||q!==$a||e.capturedTimeline!==qa)&&(Cn(q,{revision:u}),Ao(q,{playing:G}),G||(za=!1)),G&&Bt.redrawAnimated(),p.isPlaying()&&p.reachedEnd()){b.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1;let le=p.getStopTime();Number.isFinite(le)&&(p.seek(le),e.currentTime=le,Cn(le)),ct("pause"),ht(u),Ao(e.currentTime),it(!0);return}p.isPlaying()?(eT(),ht(u)):vC()&&(Gt=null,ht(u)),it(!1)}finally{Va=!1,YC()}}},Qh=u=>{let h=he(()=>$o().mediaClips);for(let g of uh(h)??[]){if(!g.el.isConnected||!In(u,g.start,g.end))continue;let S=wi(g,u);if(!(Math.abs(g.el.currentTime-S)<=.001))try{g.el.currentTime=At(S)}catch{}}},ic=()=>{if(e.nativeMediaSyncDisabled||e.webAudioMediaDisabled)return;let u=b.startGeneration(),h=ba(document);b.releaseDecodedExcept(h),ac(h,u)},ZC=10,Xa={gen:-1,clips:[]},Zh=()=>p.now()+ZC*Math.max(1,e.playbackRate),eT=()=>{let u=Xa;if(u.gen!==b.currentGeneration()||u.clips.length===0||e.nativeMediaSyncDisabled||e.webAudioMediaDisabled)return;let h=Zh(),g=u.clips.filter(S=>S.start<=h);g.length!==0&&(u.clips=u.clips.filter(S=>S.start>h),ac(g.flatMap(({el:S})=>S.isConnected?[S]:[]),u.gen))},ac=(u,h)=>{Xa.gen!==h&&(Xa={gen:h,clips:[]});let g=p.now(),S=Zh();for(let A of u){if(x(A))continue;let _=se(A);if(!Number.isFinite(_))continue;let O=Ci(A),q=Number.parseFloat(A.dataset.volume??""),G=Number.isFinite(q)?q:1,k=Ue(A.dataset.duration),J=k!=null&&k>0?k:Number.POSITIVE_INFINITY,{inheritedStart:le,inheritedDuration:be}=Q(A);le!=null&&be!=null&&be>0&&(J=Math.min(J,Math.max(0,le+be-_)));let ie=de(A),pe=yr({start:_,end:_+J},ie);if(ie.length>0){if(pe.end<=pe.start)continue;J=pe.end-_}if(pe.end<=g)continue;if(pe.start>S){Xa.clips.push({el:A,start:pe.start});continue}let Xe=Ro(A);Mo(A,Xe),(Xe.kind==="web-audio"?b.scheduleMediaElementPlayback(A,_,O,p.now(),G,h,e.playbackRate,J):Promise.resolve(null)).then(Ge=>{let Je=h!==b.currentGeneration();if(Ge||!is(A)||!p.isPlaying()||Je||typeof Et(A)!="number")return;let Ja=e.playbackRate*mt(A),$e=A.hasAttribute("data-fx-chain")||A.hasAttribute("data-automation");if(Math.abs(Ja-1)>1e-9){Xe.kind==="web-audio"&&$e&&(A.muted=!0);return}b.decodeAudioElement(A).then(Zt=>{!Zt||!p.isPlaying()||b.schedulePlayback(A,Zt,_,O,()=>p.now(),G,h,e.playbackRate,J,pe.start)})})}};function eg(){b.setRate(e.playbackRate)&&!e.nativeMediaSyncDisabled&&!e.webAudioMediaDisabled&&y&&p.isPlaying()&&b.hasBoundedActiveSources()&&(b.stopAll(),ic())}if(e.capturedTimeline){let u=ot(e.capturedTimeline,0);u>0&&p.setDuration(u),bn(e.capturedTimeline)}KE(window),Ya(),at(),it(!0),e.controlBridgeHandler=X0({onPlay:()=>{lr.play(),wt("composition_played",{time:lr.getTime()})},onPause:()=>{lr.pause(),wt("composition_paused",{time:lr.getTime()})},onStopMedia:()=>{b.stopAll();let u=document.querySelectorAll("video, audio");for(let h of u)Te(h)&&!h.paused&&h.pause()},onSeek:(u,h)=>{lr.seek(u),wt("composition_seeked",{time:u})},onSetMuted:u=>{e.bridgeMuted=u;let h=u||e.mediaOutputMuted;b.setMuted(h);let g=document.querySelectorAll("video, audio");for(let S of g)Te(S)&&(S.muted=h||S.defaultMuted)},onSetVolume:u=>{e.bridgeVolume=u,b.setVolume(u);let h=document.querySelectorAll("video, audio");for(let g of h){if(!Te(g))continue;let S=parseFloat(g.dataset.volume??""),A=Number.isFinite(S)?S:1;g.volume=ps(A*u)}},onSetMediaOutputMuted:u=>{e.mediaOutputMuted=u;let h=u||e.bridgeMuted;b.setMuted(h);let g=document.querySelectorAll("video, audio");for(let S of g)Te(S)&&(S.muted=h||S.defaultMuted)},onSetNativeMediaSyncDisabled:u=>{e.nativeMediaSyncDisabled!==u&&(e.nativeMediaSyncDisabled=u,e.mediaForceSyncNextTick=!0,u?(b.stopAll(),p.detachAudioSource()):ht())},onSetWebAudioMediaDisabled:u=>{e.webAudioMediaDisabled!==u&&(e.webAudioMediaDisabled=u,e.mediaForceSyncNextTick=!0,u&&(b.stopAll(),p.detachAudioSource()),ht())},onSetPlaybackRate:u=>{tc(u),e.transportClock&&e.transportClock.setRate(e.playbackRate),eg()},onSetDisplayScale:u=>{vy(u),Dg(u),eb(u)},onRequestPreviewFacts:()=>Re({source:"hf-preview",type:"preview-facts",facts:{sceneCount:Mt.length,mountedElementCount:document.body.querySelectorAll("*").length,durationSeconds:p.getDuration(),videos:Ly(),lighterAt:ky(),copiesReady:ib()}}),onSetPreviewQuality:My,onRetryPreviewCopies:Ny,onSetIdleHeartbeat:u=>{Rh=u,En()},onSetRootDuration:CC,onSetPlayRange:(u,h)=>{p.setPlayRange(u,h,e.canonicalFps);let g=p.getPlayStart();if(p.isPlaying()&&(p.now()<g||p.reachedEnd())){Wa.seek(g,{keepPlaying:!0});return}it(!0)},onSetColorGrading:(u,h)=>{Bt.setGrading(u,h)},onSetColorGradingCompare:(u,h)=>{Bt.setCompare(u,h)},onTick:()=>{if(e.tornDown||!p.isPlaying())return;Xh();let u=p.now();if(e.currentTime=u,(u!==$a||e.capturedTimeline!==qa)&&Cn(u),p.reachedEnd()){b.stopAll(),p.detachAudioSource(),p.pause(),e.isPlaying=!1;let h=p.getStopTime();Number.isFinite(h)&&(p.seek(h),e.currentTime=h,Cn(h)),ct("pause"),ht(),it(!0)}},onEnablePickMode:()=>Ua.enablePickMode(),onDisablePickMode:()=>Ua.disablePickMode(),onSetRuntimeData:gu,onClearRuntimeData:bu,getCanonicalFps:()=>e.canonicalFps});let sc=()=>{if(!e.tornDown){e.tornDown=!0,Kh(),document.removeEventListener("visibilitychange",Yh),_n!=null&&(window.clearTimeout(_n),_n=null),e.transportClock=null,b.destroy(),ir!=null&&(window.clearTimeout(ir),ir=null),d!=null&&(window.cancelAnimationFrame(d),d=null),tC(),e.controlBridgeHandler&&(window.removeEventListener("message",e.controlBridgeHandler),e.controlBridgeHandler=null),a&&(window.removeEventListener("error",a),a=null),l&&(window.removeEventListener("unhandledrejection",l),l=null),e.beforeUnloadHandler&&(window.removeEventListener("beforeunload",e.beforeUnloadHandler),e.beforeUnloadHandler=null),Ua.disablePickMode();for(let u of e.deterministicAdapters)if(!(!u||typeof u.revert!="function"))try{u.revert()}catch(h){$("runtime.init.site12",h)}e.deterministicAdapters=[],window.__hf?.buildReady&&(window.__hf.buildReady={});for(let u of s.splice(0))try{u()}catch(h){$("runtime.init.site13",h)}for(let u of e.injectedCompStyles)try{u.remove()}catch(h){$("runtime.init.site14",h)}e.injectedCompStyles=[];for(let u of e.injectedCompLinks)try{u.remove()}catch(h){$("runtime.init.site15",h)}e.injectedCompLinks=[];for(let u of e.injectedCompScripts)try{u.remove()}catch(h){$("runtime.init.site16",h)}e.injectedCompScripts=[],e.capturedTimeline=null,r=()=>{},window.__hfRuntimeTeardown===sc&&(window.__hfRuntimeTeardown=null)}};window.__hfRuntimeTeardown=sc,e.beforeUnloadHandler=sc,window.addEventListener("beforeunload",e.beforeUnloadHandler)}var c_=["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"],cp=[[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 u2(e){if(e<=255)return c_[e];let t=0,n=cp.length-1;for(;t<=n;){let r=t+n>>1,o=cp[r];if(e<o[0]){n=r-1;continue}if(e>o[1]){t=r+1;continue}return o[2]}return"L"}function c2(e){let t=e.length;if(t===0)return null;let n=new Array(t),r=!1;for(let c=0;c<t;){let d=e.charCodeAt(c),m=d,f=1;if(d>=55296&&d<=56319&&c+1<t){let b=e.charCodeAt(c+1);b>=56320&&b<=57343&&(m=(d-55296<<10)+(b-56320)+65536,f=2)}let p=u2(m);(p==="R"||p==="AL"||p==="AN")&&(r=!0);for(let b=0;b<f;b++)n[c+b]=p;c+=f}if(!r)return null;let o=0;for(let c=0;c<t;c++){let d=n[c];if(d==="L"){o=0;break}if(d==="R"||d==="AL"){o=1;break}}let i=new Int8Array(t);for(let c=0;c<t;c++)i[c]=o;let a=o&1?"R":"L",l=a,s=l;for(let c=0;c<t;c++)n[c]==="NSM"?n[c]=s:s=n[c];s=l;for(let c=0;c<t;c++){let d=n[c];d==="EN"?n[c]=s==="AL"?"AN":"EN":(d==="R"||d==="L"||d==="AL")&&(s=d)}for(let c=0;c<t;c++)n[c]==="AL"&&(n[c]="R");for(let c=1;c<t-1;c++)n[c]==="ES"&&n[c-1]==="EN"&&n[c+1]==="EN"&&(n[c]="EN"),n[c]==="CS"&&(n[c-1]==="EN"||n[c-1]==="AN")&&n[c+1]===n[c-1]&&(n[c]=n[c-1]);for(let c=0;c<t;c++){if(n[c]!=="EN")continue;let d;for(d=c-1;d>=0&&n[d]==="ET";d--)n[d]="EN";for(d=c+1;d<t&&n[d]==="ET";d++)n[d]="EN"}for(let c=0;c<t;c++){let d=n[c];(d==="WS"||d==="ES"||d==="ET"||d==="CS")&&(n[c]="ON")}s=l;for(let c=0;c<t;c++){let d=n[c];d==="EN"?n[c]=s==="L"?"L":"EN":(d==="R"||d==="L")&&(s=d)}for(let c=0;c<t;c++){if(n[c]!=="ON")continue;let d=c+1;for(;d<t&&n[d]==="ON";)d++;let m=c>0?n[c-1]:l,f=d<t?n[d]:l,p=m!=="L"?"R":"L";if(p===(f!=="L"?"R":"L"))for(let y=c;y<d;y++)n[y]=p;c=d-1}for(let c=0;c<t;c++)n[c]==="ON"&&(n[c]=a);for(let c=0;c<t;c++){let d=n[c];(i[c]&1)===0?d==="R"?i[c]++:(d==="AN"||d==="EN")&&(i[c]+=2):(d==="L"||d==="AN"||d==="EN")&&i[c]++}return i}function d_(e,t){let n=c2(e);if(n===null)return null;let r=new Int8Array(t.length);for(let o=0;o<t.length;o++)r[o]=n[t[o]];return r}var d2=/[ \t\n\r\f]+/g,f2=/[\t\n\r\f]| {2,}|^ | $/;function m2(e){let t=e??"normal";return t==="pre-wrap"?{mode:t,preserveOrdinarySpaces:!0,preserveHardBreaks:!0}:{mode:t,preserveOrdinarySpaces:!1,preserveHardBreaks:!1}}function p2(e){if(!f2.test(e))return e;let t=e.replace(d2," ");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 h2(e){return/[\r\f]/.test(e)?e.replace(/\r\n/g,`
|
|
1139
1139
|
`).replace(/[\r\f]/g,`
|
|
1140
1140
|
`):e.replace(/\r\n/g,`
|
|
1141
|
-
`)}var
|
|
1142
|
-
`)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 M2=/[\x20\t\n\xA0\xAD\u200B\u202F\u2060\uFEFF]/;function Ct(e){return e.length===1?e[0]:e.join("")}function k2(e,t){let n=[];for(let r=e.length-1;r>=0;r--)n.push(e[r]);return n.push(t),Ct(n)}function L2(e,t,n,r){if(!M2.test(e))return[{text:e,isWordLike:t,kind:"text",start:n}];let o=[],i=null,a=[],l=n,s=!1,c=0;for(let d of e){let m=R2(d,r),f=m==="text"&&t;if(i!==null&&m===i&&f===s){a.push(d),c+=d.length;continue}i!==null&&o.push({text:Ct(a),isWordLike:s,kind:i,start:l}),i=m,a=[d],l=n+c,s=f,c+=d.length}return i!==null&&o.push({text:Ct(a),isWordLike:s,kind:i,start:l}),o}function cp(e){return e==="space"||e==="preserved-space"||e==="zero-width-break"||e==="hard-break"}var N2=/^[A-Za-z][A-Za-z0-9+.-]*:$/;function F2(e,t){let n=e.texts[t];return n.startsWith("www.")?!0:N2.test(n)&&t+1<e.len&&e.kinds[t+1]==="text"&&e.texts[t+1]==="//"}function P2(e){return e.includes("?")&&(e.includes("://")||e.startsWith("www."))}function D2(e){let t=e.texts.slice(),n=e.isWordLike.slice(),r=e.kinds.slice(),o=e.starts.slice();for(let a=0;a<e.len;a++){if(r[a]!=="text"||!F2(e,a))continue;let l=[t[a]],s=a+1;for(;s<e.len&&!cp(r[s]);){l.push(t[s]),n[a]=!0;let c=t[s].includes("?");if(r[s]="text",t[s]="",s++,c)break}t[a]=Ct(l)}let i=0;for(let a=0;a<t.length;a++){let l=t[a];l.length!==0&&(i!==a&&(t[i]=l,n[i]=n[a],r[i]=r[a],o[i]=o[a]),i++)}return t.length=i,n.length=i,r.length=i,o.length=i,{len:i,texts:t,isWordLike:n,kinds:r,starts:o}}function I2(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i];if(t.push(a),n.push(e.isWordLike[i]),r.push(e.kinds[i]),o.push(e.starts[i]),!P2(a))continue;let l=i+1;if(l>=e.len||cp(e.kinds[l]))continue;let s=[],c=e.starts[l],d=l;for(;d<e.len&&!cp(e.kinds[d]);)s.push(e.texts[d]),d++;s.length>0&&(t.push(Ct(s)),n.push(!0),r.push("text"),o.push(c),i=d-1)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}var O2=new Set([":","-","/","\xD7",",",".","+","\u2013","\u2014"]),d_=/^[A-Za-z0-9_]+[,:;]*$/,f_=/[,:;]+$/;function g_(e){for(let t of e)if(p_.test(t))return!0;return!1}function Sa(e){if(e.length===0)return!1;for(let t of e)if(!(p_.test(t)||O2.has(t)))return!1;return!0}function H2(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i],l=e.kinds[i];if(l==="text"&&Sa(a)&&g_(a)){let s=[a],c=i+1;for(;c<e.len&&e.kinds[c]==="text"&&Sa(e.texts[c]);)s.push(e.texts[c]),c++;t.push(Ct(s)),n.push(!0),r.push("text"),o.push(e.starts[i]),i=c-1;continue}t.push(a),n.push(e.isWordLike[i]),r.push(l),o.push(e.starts[i])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function G2(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i],l=e.kinds[i],s=e.isWordLike[i];if(l==="text"&&s&&d_.test(a)){let c=[a],d=f_.test(a),m=i+1;for(;d&&m<e.len&&e.kinds[m]==="text"&&e.isWordLike[m]&&d_.test(e.texts[m]);){let f=e.texts[m];c.push(f),d=f_.test(f),m++}t.push(Ct(c)),n.push(!0),r.push("text"),o.push(e.starts[i]),i=m-1;continue}t.push(a),n.push(s),r.push(l),o.push(e.starts[i])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function B2(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i];if(e.kinds[i]==="text"&&a.includes("-")){let l=a.split("-"),s=l.length>1;for(let c=0;c<l.length;c++){let d=l[c];if(!s)break;(d.length===0||!g_(d)||!Sa(d))&&(s=!1)}if(s){let c=0;for(let d=0;d<l.length;d++){let m=l[d],f=d<l.length-1?`${m}-`:m;t.push(f),n.push(!0),r.push("text"),o.push(e.starts[i]+c),c+=f.length}continue}}t.push(a),n.push(e.isWordLike[i]),r.push(e.kinds[i]),o.push(e.starts[i])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function U2(e){let t=[],n=[],r=[],o=[],i=0;for(;i<e.len;){let a=[e.texts[i]],l=e.isWordLike[i],s=e.kinds[i],c=e.starts[i];if(s==="glue"){let d=[a[0]],m=c;for(i++;i<e.len&&e.kinds[i]==="glue";)d.push(e.texts[i]),i++;let f=Ct(d);if(i<e.len&&e.kinds[i]==="text")a[0]=f,a.push(e.texts[i]),l=e.isWordLike[i],s="text",c=m,i++;else{t.push(f),n.push(!1),r.push("glue"),o.push(m);continue}}else i++;if(s==="text")for(;i<e.len&&e.kinds[i]==="glue";){let d=[];for(;i<e.len&&e.kinds[i]==="glue";)d.push(e.texts[i]),i++;let m=Ct(d);if(i<e.len&&e.kinds[i]==="text"){a.push(m,e.texts[i]),l=l||e.isWordLike[i],i++;continue}a.push(m)}t.push(Ct(a)),n.push(l),r.push(s),o.push(c)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function W2(e){let t=e.texts.slice(),n=e.isWordLike.slice(),r=e.kinds.slice(),o=e.starts.slice();for(let i=0;i<t.length-1;i++){if(r[i]!=="text"||r[i+1]!=="text"||!Ht(t[i])||!Ht(t[i+1]))continue;let a=w2(t[i]);a!==null&&(t[i]=a.head,t[i+1]=a.tail+t[i+1],o[i+1]=o[i]+a.head.length)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function m_(e,t,n){let r=f2(),o=0,i=[],a=[],l=[],s=[],c=[],d=[],m=[],f=[],p=[],b=[],y=[],x=[];for(let M of r.segment(e))for(let R of L2(M.segment,M.isWordLike??!1,M.index,n)){let j=function(){d[N]!==null&&(a[N]=[u_(i,d,m,N)],d[N]=null),a[N].push(R.text),l[N]=l[N]||R.isWordLike,f[N]=f[N]||F,p[N]=p[N]||W,b[N]=X,y[N]=ae,x[N]=c_(p[N],B)},U=R.kind==="text",T=_2(R.text,R.isWordLike,R.kind),F=Ht(R.text),W=s_(R.text),B=vu(R.text),X=Au(R.text),ae=C2(R.text),N=o-1;t.carryCJKAfterClosingQuote&&U&&o>0&&s[N]==="text"&&F&&f[N]&&b[N]||U&&o>0&&s[N]==="text"&&v2(R.text)&&f[N]||U&&o>0&&s[N]==="text"&&y[N]?j():U&&o>0&&s[N]==="text"&&R.isWordLike&&W&&x[N]?(j(),l[N]=!0):T!==null&&o>0&&s[N]==="text"&&d[N]===T?m[N]=(m[N]??1)+1:U&&!R.isWordLike&&o>0&&s[N]==="text"&&(E2(R.text)||R.text==="-"&&l[N])?j():(i[o]=R.text,a[o]=[R.text],l[o]=R.isWordLike,s[o]=R.kind,c[o]=R.start,d[o]=T,m[o]=T===null?0:1,f[o]=F,p[o]=W,b[o]=X,y[o]=ae,x[o]=c_(W,B),o++)}for(let M=0;M<o;M++){if(d[M]!==null){i[M]=u_(i,d,m,M);continue}i[M]=Ct(a[M])}for(let M=1;M<o;M++)s[M]==="text"&&!l[M]&&fp(i[M])&&s[M-1]==="text"&&(i[M-1]+=i[M],l[M-1]=l[M-1]||l[M],i[M]="");let v=Array.from({length:o},()=>null),E=-1;for(let M=o-1;M>=0;M--){let R=i[M];if(R.length!==0){if(s[M]==="text"&&!l[M]&&A2(R)&&E>=0&&s[E]==="text"){let U=v[E]??[];U.push(R),v[E]=U,c[E]=c[M],i[M]="";continue}E=M}}for(let M=0;M<o;M++){let R=v[M];R!=null&&(i[M]=k2(R,i[M]))}let C=0;for(let M=0;M<o;M++){let R=i[M];R.length!==0&&(C!==M&&(i[C]=R,l[C]=l[M],s[C]=s[M],c[C]=c[M]),C++)}i.length=C,l.length=C,s.length=C,c.length=C;let H=U2({len:C,texts:i,isWordLike:l,kinds:s,starts:c}),V=W2(G2(B2(H2(I2(D2(H))))));for(let M=0;M<V.len-1;M++){let R=T2(V.texts[M]);R!==null&&(V.kinds[M]!=="space"&&V.kinds[M]!=="preserved-space"||V.kinds[M+1]!=="text"||!s_(V.texts[M+1])||(V.texts[M]=R.space,V.isWordLike[M]=!1,V.kinds[M]=V.kinds[M]==="preserved-space"?"preserved-space":"space",V.texts[M+1]=R.marks+V.texts[M+1],V.starts[M+1]=V.starts[M]+R.space.length))}return V}function V2(e,t){if(e.len===0)return[];if(!t.preserveHardBreaks)return[{startSegmentIndex:0,endSegmentIndex:e.len,consumedEndSegmentIndex:e.len}];let n=[],r=0;for(let o=0;o<e.len;o++)e.kinds[o]==="hard-break"&&(n.push({startSegmentIndex:r,endSegmentIndex:o,consumedEndSegmentIndex:o+1}),r=o+1);return r<e.len&&n.push({startSegmentIndex:r,endSegmentIndex:e.len,consumedEndSegmentIndex:e.len}),n}function $2(e){if(e.len<=1)return e;let t=[],n=[],r=[],o=[],i=null,a=!1,l=0,s=!1,c=!1;function d(){i!==null&&(t.push(Ct(i)),n.push(a),r.push("text"),o.push(l),i=null)}for(let m=0;m<e.len;m++){let f=e.texts[m],p=e.kinds[m],b=e.isWordLike[m],y=e.starts[m];if(p==="text"){let x=g2(f),v=Su(f);if(i!==null&&s&&c){i.push(f),a=a||b,s=s||x,c=v;continue}d(),i=[f],a=b,l=y,s=x,c=v;continue}d(),t.push(f),n.push(b),r.push(p),o.push(y)}return d(),{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function b_(e,t,n="normal",r="normal"){let o=l2(n),i=o.mode==="pre-wrap"?c2(e):u2(e);if(i.length===0)return{normalized:i,chunks:[],len:0,texts:[],isWordLike:[],kinds:[],starts:[]};let a=r==="keep-all"?$2(m_(i,t,o)):m_(i,t,o);return{normalized:i,chunks:V2(a,o),...a}}var Lo=null,y_=new Map,No=null,q2=96,z2=/\p{Emoji_Presentation}/u,j2=/[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u,mp=null,x_=new Map;function pp(){if(Lo!==null)return Lo;if(typeof OffscreenCanvas<"u")return Lo=new OffscreenCanvas(1,1).getContext("2d"),Lo;if(typeof document<"u")return Lo=document.createElement("canvas").getContext("2d"),Lo;throw new Error("Text measurement requires OffscreenCanvas or a DOM canvas context.")}function K2(e){let t=y_.get(e);return t||(t=new Map,y_.set(e,t)),t}function yn(e,t){let n=t.get(e);return n===void 0&&(n={width:pp().measureText(e).width,containsCJK:Ht(e)},t.set(e,n)),n}function tr(){if(No!==null)return No;if(typeof navigator>"u")return No={lineFitEpsilon:.005,carryCJKAfterClosingQuote:!1,preferPrefixWidthsForBreakableRuns:!1,preferEarlySoftHyphenBreak:!1},No;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 No={lineFitEpsilon:n?1/64:.005,carryCJKAfterClosingQuote:r,preferPrefixWidthsForBreakableRuns:n,preferEarlySoftHyphenBreak:n},No}function Y2(e){let t=e.match(/(\d+(?:\.\d+)?)\s*px/);return t?parseFloat(t[1]):16}function S_(){return mp===null&&(mp=new Intl.Segmenter(void 0,{granularity:"grapheme"})),mp}function X2(e){return z2.test(e)||e.includes("\uFE0F")}function E_(e){return j2.test(e)}function J2(e,t){let n=x_.get(e);if(n!==void 0)return n;let r=pp();r.font=e;let o=r.measureText("\u{1F600}").width;if(n=0,o>t+.5&&typeof document<"u"&&document.body!==null){let i=document.createElement("span");i.style.font=e,i.style.display="inline-block",i.style.visibility="hidden",i.style.position="absolute",i.textContent="\u{1F600}",document.body.appendChild(i);let a=i.getBoundingClientRect().width;document.body.removeChild(i),o-a>.5&&(n=o-a)}return x_.set(e,n),n}function Q2(e){let t=0,n=S_();for(let r of n.segment(e))X2(r.segment)&&t++;return t}function Z2(e,t){return t.emojiCount===void 0&&(t.emojiCount=Q2(e)),t.emojiCount}function er(e,t,n){return n===0?t.width:t.width-Z2(e,t)*n}function v_(e,t,n,r,o){if(t.breakableFitAdvances!==void 0)return t.breakableFitAdvances;let i=S_(),a=[];for(let d of i.segment(e))a.push(d.segment);if(a.length<=1)return t.breakableFitAdvances=null,t.breakableFitAdvances;if(o==="sum-graphemes"){let d=[];for(let m of a){let f=yn(m,n);d.push(er(m,f,r))}return t.breakableFitAdvances=d,t.breakableFitAdvances}if(o==="pair-context"||a.length>q2){let d=[],m=null,f=0;for(let p of a){let b=yn(p,n),y=er(p,b,r);if(m===null)d.push(y);else{let x=m+p,v=yn(x,n);d.push(er(x,v,r)-f)}m=p,f=y}return t.breakableFitAdvances=d,t.breakableFitAdvances}let l=[],s="",c=0;for(let d of a){s+=d;let m=yn(s,n),f=er(s,m,r);l.push(f-c),c=f}return t.breakableFitAdvances=l,t.breakableFitAdvances}function A_(e,t){let n=pp();n.font=e;let r=K2(e),o=Y2(e),i=t?J2(e,o):0;return{cache:r,fontSize:o,emojiCorrection:i}}function eG(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 w_(e,t){if(t<=0)return 0;let n=e%t;return Math.abs(n)<=1e-6?t:t-n}function __(e,t,n,r,o){let i=0,a=t;for(;i<e.length;){let l=a+e[i];if((i+1<e.length?l+o:l)>n+r)break;a=l,i++}return{fitCount:i,fittedWidth:a}}function tG(e,t){let n=0,r=e.chunks.length;for(;n<r;){let o=Math.floor((n+r)/2);t<e.chunks[o].consumedEndSegmentIndex?r=o:n=o+1}return n<e.chunks.length?n:-1}function C_(e,t,n){let r=n.segmentIndex;if(n.graphemeIndex>0)return t;let o=e.chunks[t];if(o.startSegmentIndex===o.endSegmentIndex&&r===o.startSegmentIndex)return n.segmentIndex=r,n.graphemeIndex=0,t;for(r<o.startSegmentIndex&&(r=o.startSegmentIndex);r<o.endSegmentIndex;){let i=e.kinds[r];if(i!=="space"&&i!=="zero-width-break"&&i!=="soft-hyphen")return n.segmentIndex=r,n.graphemeIndex=0,t;r++}return o.consumedEndSegmentIndex>=e.widths.length?-1:(n.segmentIndex=o.consumedEndSegmentIndex,n.graphemeIndex=0,t+1)}function T_(e,t){if(t.segmentIndex>=e.widths.length)return-1;let n=tG(e,t.segmentIndex);return n<0?-1:C_(e,n,t)}function nG(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:C_(e,r,n)}function R_(e,t){return e.simpleLineWalkFastPath?M_(e,t):hp(e,t)}function M_(e,t,n){let{widths:r,kinds:o,breakableFitAdvances:i}=e;if(r.length===0)return 0;let l=tr().lineFitEpsilon,s=t+l,c=0,d=0,m=!1,f=0,p=0,b=0,y=0,x=-1,v=0;function E(){x=-1,v=0}function C(T=b,F=y,W=d){c++,n?.({startSegmentIndex:f,startGraphemeIndex:p,endSegmentIndex:T,endGraphemeIndex:F,width:W}),d=0,m=!1,E()}function H(T,F){m=!0,f=T,p=0,b=T+1,y=0,d=F}function V(T,F,W){m=!0,f=T,p=F,b=T,y=F+1,d=W}function M(T,F){if(!m){H(T,F);return}d+=F,b=T+1,y=0}function R(T,F){let W=i[T];for(let B=F;B<W.length;B++){let X=W[B];m?d+X>s?(C(),V(T,B,X)):(d+=X,b=T,y=B+1):V(T,B,X)}m&&b===T&&y===W.length&&(b=T+1,y=0)}let U=0;for(;U<r.length&&!(!m&&(U=eG(e,U),U>=r.length));){let T=r[U],F=o[U],W=F==="space"||F==="preserved-space"||F==="tab"||F==="zero-width-break"||F==="soft-hyphen";if(!m){T>t&&i[U]!==null?R(U,0):H(U,T),W&&(x=U+1,v=d-T),U++;continue}if(d+T>s){if(W){M(U,T),C(U+1,0,d-T),U++;continue}if(x>=0){if(b>x||b===x&&y>0){C();continue}C(x,0,v);continue}if(T>t&&i[U]!==null){C(),R(U,0),U++;continue}C();continue}M(U,T),W&&(x=U+1,v=d-T),U++}return m&&C(),c}function hp(e,t,n){if(e.simpleLineWalkFastPath)return M_(e,t,n);let{widths:r,lineEndFitAdvances:o,lineEndPaintAdvances:i,kinds:a,breakableFitAdvances:l,discretionaryHyphenWidth:s,tabStopAdvance:c,chunks:d}=e;if(r.length===0||d.length===0)return 0;let m=tr(),f=m.lineFitEpsilon,p=t+f,b=0,y=0,x=!1,v=0,E=0,C=0,H=0,V=-1,M=0,R=0,U=null;function T(){V=-1,M=0,R=0,U=null}function F(P=C,D=H,w=y){b++,n?.({startSegmentIndex:v,startGraphemeIndex:E,endSegmentIndex:P,endGraphemeIndex:D,width:w}),y=0,x=!1,T()}function W(P,D){x=!0,v=P,E=0,C=P+1,H=0,y=D}function B(P,D,w){x=!0,v=P,E=D,C=P,H=D+1,y=w}function X(P,D){if(!x){W(P,D);return}y+=D,C=P+1,H=0}function ae(P,D,w,L){if(!D)return;let Y=P==="tab"?0:o[w],te=P==="tab"?L:i[w];V=w+1,M=y-L+Y,R=y-L+te,U=P}function N(P,D){let w=l[P];for(let L=D;L<w.length;L++){let Y=w[L];x?y+Y>p?(F(),B(P,L,Y)):(y+=Y,C=P,H=L+1):B(P,L,Y)}x&&C===P&&H===w.length&&(C=P+1,H=0)}function j(P){if(U!=="soft-hyphen")return!1;let D=l[P];if(D==null)return!1;let{fitCount:w,fittedWidth:L}=__(D,y,t,f,s);return w===0?!1:(y=L,C=P,H=w,T(),w===D.length?(C=P+1,H=0,!0):(F(P,w,L+s),N(P,w),!0))}function I(P){b++,n?.({startSegmentIndex:P.startSegmentIndex,startGraphemeIndex:0,endSegmentIndex:P.consumedEndSegmentIndex,endGraphemeIndex:0,width:0}),T()}for(let P=0;P<d.length;P++){let D=d[P];if(D.startSegmentIndex===D.endSegmentIndex){I(D);continue}x=!1,y=0,v=D.startSegmentIndex,E=0,C=D.startSegmentIndex,H=0,T();let w=D.startSegmentIndex;for(;w<D.endSegmentIndex;){let L=a[w],Y=L==="space"||L==="preserved-space"||L==="tab"||L==="zero-width-break"||L==="soft-hyphen",te=L==="tab"?w_(y,c):r[w];if(L==="soft-hyphen"){x&&(C=w+1,H=0,V=w+1,M=y+s,R=y+s,U=L),w++;continue}if(!x){te>t&&l[w]!==null?N(w,0):W(w,te),ae(L,Y,w,te),w++;continue}if(y+te>p){let Ee=y+(L==="tab"?0:o[w]),z=y+(L==="tab"?te:i[w]);if(U==="soft-hyphen"&&m.preferEarlySoftHyphenBreak&&M<=p){F(V,0,R);continue}if(U==="soft-hyphen"&&j(w)){w++;continue}if(Y&&Ee<=p){X(w,te),F(w+1,0,z),w++;continue}if(V>=0&&M<=p){if(C>V||C===V&&H>0){F();continue}let Z=V;F(Z,0,R),w=Z;continue}if(te>t&&l[w]!==null){F(),N(w,0),w++;continue}F();continue}X(w,te),ae(L,Y,w,te),w++}if(x){let L=V===D.consumedEndSegmentIndex?R:y;F(D.consumedEndSegmentIndex,0,L)}}return b}function k_(e,t,n,r){let o=e.chunks[n];if(o.startSegmentIndex===o.endSegmentIndex)return t.segmentIndex=o.consumedEndSegmentIndex,t.graphemeIndex=0,0;let{widths:i,lineEndFitAdvances:a,lineEndPaintAdvances:l,kinds:s,breakableFitAdvances:c,discretionaryHyphenWidth:d,tabStopAdvance:m}=e,f=tr(),p=f.lineFitEpsilon,b=r+p,y=0,x=!1,v=t.segmentIndex,E=t.graphemeIndex,C=-1,H=0,V=0,M=null;function R(){C=-1,H=0,V=0,M=null}function U(N=v,j=E,I=y){return x?(t.segmentIndex=N,t.graphemeIndex=j,I):null}function T(N,j){x=!0,v=N+1,E=0,y=j}function F(N,j,I){x=!0,v=N,E=j+1,y=I}function W(N,j){if(!x){T(N,j);return}y+=j,v=N+1,E=0}function B(N,j,I,P){if(!j)return;let D=N==="tab"?0:a[I],w=N==="tab"?P:l[I];C=I+1,H=y-P+D,V=y-P+w,M=N}function X(N,j){let I=c[N];for(let P=j;P<I.length;P++){let D=I[P];if(!x)F(N,P,D);else{if(y+D>b)return U();y+=D,v=N,E=P+1}}return x&&v===N&&E===I.length&&(v=N+1,E=0),null}function ae(N){if(M!=="soft-hyphen"||C<0)return null;let j=c[N]??null;if(j!==null){let{fitCount:I,fittedWidth:P}=__(j,y,r,p,d);if(I===j.length)return y=P,v=N+1,E=0,R(),null;if(I>0)return U(N,I,P+d)}return H<=b?U(C,0,V):null}for(let N=t.segmentIndex;N<o.endSegmentIndex;N++){let j=s[N],I=j==="space"||j==="preserved-space"||j==="tab"||j==="zero-width-break"||j==="soft-hyphen",P=N===t.segmentIndex?t.graphemeIndex:0,D=j==="tab"?w_(y,m):i[N];if(j==="soft-hyphen"&&P===0){x&&(v=N+1,E=0,C=N+1,H=y+d,V=y+d,M=j);continue}if(!x){if(P>0){let L=X(N,P);if(L!==null)return L}else if(D>r&&c[N]!==null){let L=X(N,0);if(L!==null)return L}else T(N,D);B(j,I,N,D);continue}if(y+D>b){let L=y+(j==="tab"?0:a[N]),Y=y+(j==="tab"?D:l[N]);if(M==="soft-hyphen"&&f.preferEarlySoftHyphenBreak&&H<=b)return U(C,0,V);let te=ae(N);if(te!==null)return te;if(I&&L<=b)return W(N,D),U(N+1,0,Y);if(C>=0&&H<=b)return v>C||v===C&&E>0?U():U(C,0,V);if(D>r&&c[N]!==null){let he=U();if(he!==null)return he;let Ee=X(N,0);if(Ee!==null)return Ee}return U()}W(N,D),B(j,I,N,D)}return C===o.consumedEndSegmentIndex&&E===0?U(o.consumedEndSegmentIndex,0,V):U(o.consumedEndSegmentIndex,0,y)}function rG(e,t,n){let{widths:r,kinds:o,breakableFitAdvances:i}=e,l=tr().lineFitEpsilon,s=n+l,c=0,d=!1,m=t.segmentIndex,f=t.graphemeIndex,p=-1,b=0;for(let y=t.segmentIndex;y<r.length;y++){let x=r[y],v=o[y],E=v==="space"||v==="preserved-space"||v==="tab"||v==="zero-width-break"||v==="soft-hyphen",C=y===t.segmentIndex?t.graphemeIndex:0,H=i[y];if(!d){if(C>0||x>n&&H!==null){let V=H,M=V[C];d=!0,c=M,m=y,f=C+1;for(let R=C+1;R<V.length;R++){let U=V[R];if(c+U>s)return t.segmentIndex=m,t.graphemeIndex=f,c;c+=U,m=y,f=R+1}m===y&&f===V.length&&(m=y+1,f=0)}else d=!0,c=x,m=y+1,f=0;E&&(p=y+1,b=c-x);continue}if(c+x>s)return E?(t.segmentIndex=y+1,t.graphemeIndex=0,c):p>=0?m>p||m===p&&f>0?(t.segmentIndex=m,t.graphemeIndex=f,c):(t.segmentIndex=p,t.graphemeIndex=0,b):(t.segmentIndex=m,t.graphemeIndex=f,c);c+=x,m=y+1,f=0,E&&(p=y+1,b=c-x)}return d?(t.segmentIndex=m,t.graphemeIndex=f,c):null}function oG(e,t,n){let r=T_(e,t);return r<0?null:e.simpleLineWalkFastPath?rG(e,t,n):k_(e,t,r,n)}function L_(e,t){if(e.widths.length===0)return{lineCount:0,maxLineWidth:0};let n={segmentIndex:0,graphemeIndex:0},r=0,o=0;if(!e.simpleLineWalkFastPath){let i=T_(e,n);for(;i>=0;){let a=k_(e,n,i,t);if(a===null)return{lineCount:r,maxLineWidth:o};r++,a>o&&(o=a),i=nG(e,i,n)}return{lineCount:r,maxLineWidth:o}}for(;;){let i=oG(e,n,t);if(i===null)return{lineCount:r,maxLineWidth:o};r++,i>o&&(o=i)}}var gp=null;function iG(){return gp===null&&(gp=new Intl.Segmenter(void 0,{granularity:"grapheme"})),gp}function aG(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 sG(e,t){let n=[],r=[],o=0,i=!1,a=!1,l=!1;function s(){r.length!==0&&(n.push({text:r.length===1?r[0]:r.join(""),start:o}),r=[],i=!1,a=!1,l=!1)}function c(m,f,p){r=[m],o=f,i=p,a=Au(m),l=Ea.has(m)}function d(m,f){r.push(m),i=i||f;let p=Au(m);m.length===1&&Zn.has(m)?a=a||p:a=p,l=!1}for(let m of iG().segment(e)){let f=m.segment,p=Ht(f);if(r.length===0){c(f,m.index,p);continue}if(l||Eu.has(f)||Zn.has(f)||t.carryCJKAfterClosingQuote&&p&&a){d(f,p);continue}if(!i&&!p){d(f,p);continue}s(),c(f,m.index,p)}return s(),n}function lG(e){if(e.length<=1)return e;let t=[],n=[e[0].text],r=e[0].start,o=Ht(e[0].text),i=Su(e[0].text);function a(){t.push({text:n.length===1?n[0]:n.join(""),start:r})}for(let l=1;l<e.length;l++){let s=e[l],c=Ht(s.text),d=Su(s.text);if(o&&i){n.push(s.text),o=o||c,i=d;continue}a(),n=[s.text],r=s.start,o=c,i=d}return a(),t}function uG(e,t,n,r){let o=tr(),{cache:i,emojiCorrection:a}=A_(t,E_(e.normalized)),l=er("-",yn("-",i),a),c=er(" ",yn(" ",i),a)*8;if(e.len===0)return aG(n);let d=[],m=[],f=[],p=[],b=e.chunks.length<=1,y=n?[]:null,x=[],v=n?[]:null,E=Array.from({length:e.len});function C(R,U,T,F,W,B,X){W!=="text"&&W!=="space"&&W!=="zero-width-break"&&(b=!1),d.push(U),m.push(T),f.push(F),p.push(W),y?.push(B),x.push(X),v!==null&&v.push(R)}function H(R,U,T,F,W){let B=yn(R,i),X=er(R,B,a),ae=U==="space"||U==="preserved-space"||U==="zero-width-break"?0:X,N=U==="space"||U==="zero-width-break"?0:X;if(W&&F&&R.length>1){let j="sum-graphemes";Sa(R)?j="pair-context":o.preferPrefixWidthsForBreakableRuns&&(j="segment-prefixes");let I=v_(R,B,i,a,j);C(R,X,ae,N,U,T,I);return}C(R,X,ae,N,U,T,null)}for(let R=0;R<e.len;R++){E[R]=d.length;let U=e.texts[R],T=e.isWordLike[R],F=e.kinds[R],W=e.starts[R];if(F==="soft-hyphen"){C(U,0,l,l,F,W,null);continue}if(F==="hard-break"){C(U,0,0,0,F,W,null);continue}if(F==="tab"){C(U,0,0,0,F,W,null);continue}let B=yn(U,i);if(F==="text"&&B.containsCJK){let X=sG(U,o),ae=r==="keep-all"?lG(X):X;for(let N=0;N<ae.length;N++){let j=ae[N];H(j.text,"text",W+j.start,T,r==="keep-all"||!Ht(j.text))}continue}H(U,F,W,T,!0)}let V=cG(e.chunks,E,d.length),M=y===null?null:a_(e.normalized,y);return v!==null?{widths:d,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:p,simpleLineWalkFastPath:b,segLevels:M,breakableFitAdvances:x,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:V,segments:v}:{widths:d,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:p,simpleLineWalkFastPath:b,segLevels:M,breakableFitAdvances:x,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:V}}function cG(e,t,n){let r=[];for(let o=0;o<e.length;o++){let i=e[o],a=i.startSegmentIndex<t.length?t[i.startSegmentIndex]:n,l=i.endSegmentIndex<t.length?t[i.endSegmentIndex]:n,s=i.consumedEndSegmentIndex<t.length?t[i.consumedEndSegmentIndex]:n;r.push({startSegmentIndex:a,endSegmentIndex:l,consumedEndSegmentIndex:s})}return r}function N_(e,t,n,r){let o=r?.wordBreak??"normal",i=b_(e,tr(),r?.whiteSpace,o);return uG(i,t,n,o)}function wu(e,t,n){return N_(e,t,!1,n)}function F_(e,t,n){return N_(e,t,!0,n)}function _u(e,t,n){let r=R_(e,t);return{lineCount:r,height:r*n}}function dG(e){return{width:e.width,start:{segmentIndex:e.startSegmentIndex,graphemeIndex:e.startGraphemeIndex},end:{segmentIndex:e.endSegmentIndex,graphemeIndex:e.endGraphemeIndex}}}function fG(e,t,n){return e.widths.length===0?0:hp(e,t,r=>{n(dG(r))})}function P_(e,t){return L_(e,t)}function D_(e){let t=0;return fG(e,Number.POSITIVE_INFINITY,n=>{n.width>t&&(t=n.width)}),t}var mG={maxWidth:1600,baseFontSize:78,minFontSize:42,fontWeight:900,fontFamily:"Outfit",step:2};function I_(e,t){let n={...mG,...t},r=1.2;for(let o=n.baseFontSize;o>=n.minFontSize;o=Math.max(n.minFontSize,o-n.step)){let i=`${n.fontWeight} ${o}px ${n.fontFamily}`,a=wu(e,i),{lineCount:l}=_u(a,n.maxWidth,o*r);if(l<=1)return{fontSize:o,fits:!0};if(o===n.minFontSize)break}return{fontSize:n.minFontSize,fits:!1}}var O_={prepare:wu,layout:_u,prepareWithSegments:F_,measureLineStats:P_,measureNaturalWidth:D_};var nr="appifact-film:";function H_(e){let{iframe:t,runnerHtml:n,load:r}=e,o=(t.getAttribute("sandbox")??"").split(/\s+/);if(!o.includes("allow-scripts")||o.includes("allow-same-origin"))throw new Error('Film runners require sandbox="allow-scripts" without allow-same-origin');let i=0,a=!1,l=!1,s=null,c,d,m=new Promise((C,H)=>{c=C,d=H});m.catch(()=>{});let f=null,p=C=>{s=C,clearTimeout(b),d(C),f&&(clearTimeout(f.timer),f.reject(C),f=null)},b=setTimeout(()=>p(new Error("Film runner did not become ready within 20 s")),2e4),y=C=>{if(C.type!==nr+"frame"&&C.type!==nr+"frame-error"||!("seq"in C)||f===null||f.sequence!==C.seq)return;let H=f;f=null,clearTimeout(H.timer),C.type===nr+"frame-error"?H.reject(new Error("message"in C?String(C.message):"Film frame failed")):H.resolve()},x=C=>{try{let H=t.contentWindow;if(!H)throw new Error("Film runner window is unavailable");H.postMessage(C,"*")}catch(H){p(H instanceof Error?H:new Error(String(H)))}},v=C=>{if(C.type===nr+"hello"){if(a){p(new Error("Film runner reloaded; recreate the bridge before seeking"));return}a=!0,x({...r,type:nr+"load"})}else C.type===nr+"ready"&&a?(clearTimeout(b),c()):C.type===nr+"error"&&p(new Error("message"in C?String(C.message):"Film runner failed"))},E=C=>{if(l||s||C.source!==t.contentWindow||C.origin!=="null")return;let H=C.data;!H||typeof H!="object"||!("type"in H)||(v(H),y(H))};return window.addEventListener("message",E),t.srcdoc=n,{ready:m,async render(C){if(await m,s)throw s;if(f)throw new Error("Film seeks must be serialized; use registerFrameSource");let H=++i;return new Promise((V,M)=>{let R=setTimeout(()=>{p(new Error("Film frame did not arrive within 15 s"))},15e3);f={sequence:H,resolve:V,reject:M,timer:R},x({type:nr+"frame",t:C,seq:H})})},dispose(){l||(l=!0,window.removeEventListener("message",E),p(new Error("Film bridge was disposed")),t.srcdoc="")}}}window.__timelines=window.__timelines||{};rv();t_();n_();JA();window.__hfHasFrameSources=Ub;Eg();q0();window.__hyperframes={assetUrl:fu,fitTextFontSize:I_,getVariables:sb,pretext:O_,registerRuntimeDataHandler:Yw,setRuntimeData:hu,clearRuntimeData:gu,registerFrameSource:Wb,createFilmBridge:H_};function G_(){let e=window;e.__hyperframeRuntimeBootstrapped||(e.__hyperframeRuntimeBootstrapped=!0,Ag(),o_())}function B_(){try{P0(),cr();let e=Array.from(document.querySelectorAll(sE));e.length===0?G_():Il(e,G_).catch(t=>{Yo(t),reportError(t)})}catch(e){throw Yo(e),e}}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",B_,{once:!0}):B_();})();
|
|
1141
|
+
`)}var dp=null,g2;function b2(){return dp===null&&(dp=new Intl.Segmenter(g2,{granularity:"word"})),dp}var y2=/\p{Script=Arabic}/u,Su=/\p{M}/u,x_=/\p{Nd}/u;function f_(e){return y2.test(e)}function m_(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 Ht(e){for(let t=0;t<e.length;t++){let n=e.charCodeAt(t);if(!(n<12288)){if(n>=55296&&n<=56319&&t+1<e.length){let r=e.charCodeAt(t+1);if(r>=56320&&r<=57343){let o=(n-55296<<10)+(r-56320)+65536;if(m_(o))return!0;t++;continue}}if(m_(n))return!0}}return!1}function x2(e){let t=Au(e);return t!==null&&(vu.has(t)||Zn.has(t))}var S2=new Set(["\xA0","\u202F","\u2060","\uFEFF"]);function E2(e){return Ht(e)}function v2(e){let t=Au(e);return t!==null&&S2.has(t)}function Eu(e){return!x2(e)&&!v2(e)}var vu=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"]),Ea=new Set(['"',"(","[","{","\u201C","\u2018","\xAB","\u2039","\uFF08","\u3014","\u3008","\u300A","\u300C","\u300E","\u3010","\u3016","\u3018","\u301A"]),mp=new Set(["'","\u2019"]),Zn=new Set([".",",","!","?",":",";","\u060C","\u061B","\u061F","\u0964","\u0965","\u104A","\u104B","\u104C","\u104D","\u104F",")","]","}","%",'"',"\u201D","\u2019","\xBB","\u203A","\u2026"]),A2=new Set([":",".","\u060C","\u061B"]),w2=new Set(["\u104F"]),_2=new Set(["\u201D","\u2019","\xBB","\u203A","\u300D","\u300F","\u3011","\u300B","\u3009","\u3015","\uFF09"]);function C2(e){if(pp(e))return!0;let t=!1;for(let n of e){if(Zn.has(n)){t=!0;continue}if(!(t&&Su.test(n)))return!1}return t}function T2(e){for(let t of e)if(!vu.has(t)&&!Zn.has(t))return!1;return e.length>0}function R2(e){if(pp(e))return!0;for(let t of e)if(!Ea.has(t)&&!mp.has(t)&&!Su.test(t))return!1;return e.length>0}function pp(e){let t=!1;for(let n of e)if(!(n==="\\"||Su.test(n))){if(Ea.has(n)||Zn.has(n)||mp.has(n)){t=!0;continue}return!1}return t}function S_(e,t){let n=t-1;if(n<=0)return Math.max(n,0);let r=e.charCodeAt(n);if(r<56320||r>57343)return n;let o=n-1;if(o<0)return n;let i=e.charCodeAt(o);return i>=55296&&i<=56319?o:n}function Au(e){if(e.length===0)return null;let t=S_(e,e.length);return e.slice(t)}function M2(e){let t=Array.from(e),n=t.length;for(;n>0;){let r=t[n-1];if(Su.test(r)){n--;continue}if(Ea.has(r)||mp.has(r)){n--;continue}break}return n<=0||n===t.length?null:{head:t.slice(0,n).join(""),tail:t.slice(n).join("")}}function k2(e,t,n){return n==="text"&&!t&&e.length===1&&e!=="-"&&e!=="\u2014"?e:null}function p_(e,t,n,r){let o=t[r],i=e[r];if(o==null)return i;let a=n[r];if(i.length===a)return i;let l=o.repeat(a);return e[r]=l,l}function h_(e,t){return e&&t!==null&&A2.has(t)}function L2(e){let t=Au(e);return t!==null&&w2.has(t)}function N2(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 wu(e){let t=e.length;for(;t>0;){let n=S_(e,t),r=e.slice(n,t);if(_2.has(r))return!0;if(!Zn.has(r))return!1;t=n}return!1}function F2(e,t){if(t.preserveOrdinarySpaces||t.preserveHardBreaks){if(e===" ")return"preserved-space";if(e===" ")return"tab";if(t.preserveHardBreaks&&e===`
|
|
1142
|
+
`)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 P2=/[\x20\t\n\xA0\xAD\u200B\u202F\u2060\uFEFF]/;function Ct(e){return e.length===1?e[0]:e.join("")}function D2(e,t){let n=[];for(let r=e.length-1;r>=0;r--)n.push(e[r]);return n.push(t),Ct(n)}function I2(e,t,n,r){if(!P2.test(e))return[{text:e,isWordLike:t,kind:"text",start:n}];let o=[],i=null,a=[],l=n,s=!1,c=0;for(let d of e){let m=F2(d,r),f=m==="text"&&t;if(i!==null&&m===i&&f===s){a.push(d),c+=d.length;continue}i!==null&&o.push({text:Ct(a),isWordLike:s,kind:i,start:l}),i=m,a=[d],l=n+c,s=f,c+=d.length}return i!==null&&o.push({text:Ct(a),isWordLike:s,kind:i,start:l}),o}function fp(e){return e==="space"||e==="preserved-space"||e==="zero-width-break"||e==="hard-break"}var O2=/^[A-Za-z][A-Za-z0-9+.-]*:$/;function H2(e,t){let n=e.texts[t];return n.startsWith("www.")?!0:O2.test(n)&&t+1<e.len&&e.kinds[t+1]==="text"&&e.texts[t+1]==="//"}function G2(e){return e.includes("?")&&(e.includes("://")||e.startsWith("www."))}function B2(e){let t=e.texts.slice(),n=e.isWordLike.slice(),r=e.kinds.slice(),o=e.starts.slice();for(let a=0;a<e.len;a++){if(r[a]!=="text"||!H2(e,a))continue;let l=[t[a]],s=a+1;for(;s<e.len&&!fp(r[s]);){l.push(t[s]),n[a]=!0;let c=t[s].includes("?");if(r[s]="text",t[s]="",s++,c)break}t[a]=Ct(l)}let i=0;for(let a=0;a<t.length;a++){let l=t[a];l.length!==0&&(i!==a&&(t[i]=l,n[i]=n[a],r[i]=r[a],o[i]=o[a]),i++)}return t.length=i,n.length=i,r.length=i,o.length=i,{len:i,texts:t,isWordLike:n,kinds:r,starts:o}}function U2(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i];if(t.push(a),n.push(e.isWordLike[i]),r.push(e.kinds[i]),o.push(e.starts[i]),!G2(a))continue;let l=i+1;if(l>=e.len||fp(e.kinds[l]))continue;let s=[],c=e.starts[l],d=l;for(;d<e.len&&!fp(e.kinds[d]);)s.push(e.texts[d]),d++;s.length>0&&(t.push(Ct(s)),n.push(!0),r.push("text"),o.push(c),i=d-1)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}var W2=new Set([":","-","/","\xD7",",",".","+","\u2013","\u2014"]),g_=/^[A-Za-z0-9_]+[,:;]*$/,b_=/[,:;]+$/;function E_(e){for(let t of e)if(x_.test(t))return!0;return!1}function Sa(e){if(e.length===0)return!1;for(let t of e)if(!(x_.test(t)||W2.has(t)))return!1;return!0}function V2(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i],l=e.kinds[i];if(l==="text"&&Sa(a)&&E_(a)){let s=[a],c=i+1;for(;c<e.len&&e.kinds[c]==="text"&&Sa(e.texts[c]);)s.push(e.texts[c]),c++;t.push(Ct(s)),n.push(!0),r.push("text"),o.push(e.starts[i]),i=c-1;continue}t.push(a),n.push(e.isWordLike[i]),r.push(l),o.push(e.starts[i])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function $2(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i],l=e.kinds[i],s=e.isWordLike[i];if(l==="text"&&s&&g_.test(a)){let c=[a],d=b_.test(a),m=i+1;for(;d&&m<e.len&&e.kinds[m]==="text"&&e.isWordLike[m]&&g_.test(e.texts[m]);){let f=e.texts[m];c.push(f),d=b_.test(f),m++}t.push(Ct(c)),n.push(!0),r.push("text"),o.push(e.starts[i]),i=m-1;continue}t.push(a),n.push(s),r.push(l),o.push(e.starts[i])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function q2(e){let t=[],n=[],r=[],o=[];for(let i=0;i<e.len;i++){let a=e.texts[i];if(e.kinds[i]==="text"&&a.includes("-")){let l=a.split("-"),s=l.length>1;for(let c=0;c<l.length;c++){let d=l[c];if(!s)break;(d.length===0||!E_(d)||!Sa(d))&&(s=!1)}if(s){let c=0;for(let d=0;d<l.length;d++){let m=l[d],f=d<l.length-1?`${m}-`:m;t.push(f),n.push(!0),r.push("text"),o.push(e.starts[i]+c),c+=f.length}continue}}t.push(a),n.push(e.isWordLike[i]),r.push(e.kinds[i]),o.push(e.starts[i])}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function z2(e){let t=[],n=[],r=[],o=[],i=0;for(;i<e.len;){let a=[e.texts[i]],l=e.isWordLike[i],s=e.kinds[i],c=e.starts[i];if(s==="glue"){let d=[a[0]],m=c;for(i++;i<e.len&&e.kinds[i]==="glue";)d.push(e.texts[i]),i++;let f=Ct(d);if(i<e.len&&e.kinds[i]==="text")a[0]=f,a.push(e.texts[i]),l=e.isWordLike[i],s="text",c=m,i++;else{t.push(f),n.push(!1),r.push("glue"),o.push(m);continue}}else i++;if(s==="text")for(;i<e.len&&e.kinds[i]==="glue";){let d=[];for(;i<e.len&&e.kinds[i]==="glue";)d.push(e.texts[i]),i++;let m=Ct(d);if(i<e.len&&e.kinds[i]==="text"){a.push(m,e.texts[i]),l=l||e.isWordLike[i],i++;continue}a.push(m)}t.push(Ct(a)),n.push(l),r.push(s),o.push(c)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function j2(e){let t=e.texts.slice(),n=e.isWordLike.slice(),r=e.kinds.slice(),o=e.starts.slice();for(let i=0;i<t.length-1;i++){if(r[i]!=="text"||r[i+1]!=="text"||!Ht(t[i])||!Ht(t[i+1]))continue;let a=M2(t[i]);a!==null&&(t[i]=a.head,t[i+1]=a.tail+t[i+1],o[i+1]=o[i]+a.head.length)}return{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function y_(e,t,n){let r=b2(),o=0,i=[],a=[],l=[],s=[],c=[],d=[],m=[],f=[],p=[],b=[],y=[],x=[];for(let M of r.segment(e))for(let R of I2(M.segment,M.isWordLike??!1,M.index,n)){let j=function(){d[N]!==null&&(a[N]=[p_(i,d,m,N)],d[N]=null),a[N].push(R.text),l[N]=l[N]||R.isWordLike,f[N]=f[N]||F,p[N]=p[N]||W,b[N]=X,y[N]=ae,x[N]=h_(p[N],B)},U=R.kind==="text",T=k2(R.text,R.isWordLike,R.kind),F=Ht(R.text),W=f_(R.text),B=Au(R.text),X=wu(R.text),ae=L2(R.text),N=o-1;t.carryCJKAfterClosingQuote&&U&&o>0&&s[N]==="text"&&F&&f[N]&&b[N]||U&&o>0&&s[N]==="text"&&T2(R.text)&&f[N]||U&&o>0&&s[N]==="text"&&y[N]?j():U&&o>0&&s[N]==="text"&&R.isWordLike&&W&&x[N]?(j(),l[N]=!0):T!==null&&o>0&&s[N]==="text"&&d[N]===T?m[N]=(m[N]??1)+1:U&&!R.isWordLike&&o>0&&s[N]==="text"&&(C2(R.text)||R.text==="-"&&l[N])?j():(i[o]=R.text,a[o]=[R.text],l[o]=R.isWordLike,s[o]=R.kind,c[o]=R.start,d[o]=T,m[o]=T===null?0:1,f[o]=F,p[o]=W,b[o]=X,y[o]=ae,x[o]=h_(W,B),o++)}for(let M=0;M<o;M++){if(d[M]!==null){i[M]=p_(i,d,m,M);continue}i[M]=Ct(a[M])}for(let M=1;M<o;M++)s[M]==="text"&&!l[M]&&pp(i[M])&&s[M-1]==="text"&&(i[M-1]+=i[M],l[M-1]=l[M-1]||l[M],i[M]="");let v=Array.from({length:o},()=>null),E=-1;for(let M=o-1;M>=0;M--){let R=i[M];if(R.length!==0){if(s[M]==="text"&&!l[M]&&R2(R)&&E>=0&&s[E]==="text"){let U=v[E]??[];U.push(R),v[E]=U,c[E]=c[M],i[M]="";continue}E=M}}for(let M=0;M<o;M++){let R=v[M];R!=null&&(i[M]=D2(R,i[M]))}let C=0;for(let M=0;M<o;M++){let R=i[M];R.length!==0&&(C!==M&&(i[C]=R,l[C]=l[M],s[C]=s[M],c[C]=c[M]),C++)}i.length=C,l.length=C,s.length=C,c.length=C;let H=z2({len:C,texts:i,isWordLike:l,kinds:s,starts:c}),V=j2($2(q2(V2(U2(B2(H))))));for(let M=0;M<V.len-1;M++){let R=N2(V.texts[M]);R!==null&&(V.kinds[M]!=="space"&&V.kinds[M]!=="preserved-space"||V.kinds[M+1]!=="text"||!f_(V.texts[M+1])||(V.texts[M]=R.space,V.isWordLike[M]=!1,V.kinds[M]=V.kinds[M]==="preserved-space"?"preserved-space":"space",V.texts[M+1]=R.marks+V.texts[M+1],V.starts[M+1]=V.starts[M]+R.space.length))}return V}function K2(e,t){if(e.len===0)return[];if(!t.preserveHardBreaks)return[{startSegmentIndex:0,endSegmentIndex:e.len,consumedEndSegmentIndex:e.len}];let n=[],r=0;for(let o=0;o<e.len;o++)e.kinds[o]==="hard-break"&&(n.push({startSegmentIndex:r,endSegmentIndex:o,consumedEndSegmentIndex:o+1}),r=o+1);return r<e.len&&n.push({startSegmentIndex:r,endSegmentIndex:e.len,consumedEndSegmentIndex:e.len}),n}function Y2(e){if(e.len<=1)return e;let t=[],n=[],r=[],o=[],i=null,a=!1,l=0,s=!1,c=!1;function d(){i!==null&&(t.push(Ct(i)),n.push(a),r.push("text"),o.push(l),i=null)}for(let m=0;m<e.len;m++){let f=e.texts[m],p=e.kinds[m],b=e.isWordLike[m],y=e.starts[m];if(p==="text"){let x=E2(f),v=Eu(f);if(i!==null&&s&&c){i.push(f),a=a||b,s=s||x,c=v;continue}d(),i=[f],a=b,l=y,s=x,c=v;continue}d(),t.push(f),n.push(b),r.push(p),o.push(y)}return d(),{len:t.length,texts:t,isWordLike:n,kinds:r,starts:o}}function v_(e,t,n="normal",r="normal"){let o=m2(n),i=o.mode==="pre-wrap"?h2(e):p2(e);if(i.length===0)return{normalized:i,chunks:[],len:0,texts:[],isWordLike:[],kinds:[],starts:[]};let a=r==="keep-all"?Y2(y_(i,t,o)):y_(i,t,o);return{normalized:i,chunks:K2(a,o),...a}}var Lo=null,A_=new Map,No=null,X2=96,J2=/\p{Emoji_Presentation}/u,Q2=/[\p{Emoji_Presentation}\p{Extended_Pictographic}\p{Regional_Indicator}\uFE0F\u20E3]/u,hp=null,w_=new Map;function gp(){if(Lo!==null)return Lo;if(typeof OffscreenCanvas<"u")return Lo=new OffscreenCanvas(1,1).getContext("2d"),Lo;if(typeof document<"u")return Lo=document.createElement("canvas").getContext("2d"),Lo;throw new Error("Text measurement requires OffscreenCanvas or a DOM canvas context.")}function Z2(e){let t=A_.get(e);return t||(t=new Map,A_.set(e,t)),t}function yn(e,t){let n=t.get(e);return n===void 0&&(n={width:gp().measureText(e).width,containsCJK:Ht(e)},t.set(e,n)),n}function tr(){if(No!==null)return No;if(typeof navigator>"u")return No={lineFitEpsilon:.005,carryCJKAfterClosingQuote:!1,preferPrefixWidthsForBreakableRuns:!1,preferEarlySoftHyphenBreak:!1},No;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 No={lineFitEpsilon:n?1/64:.005,carryCJKAfterClosingQuote:r,preferPrefixWidthsForBreakableRuns:n,preferEarlySoftHyphenBreak:n},No}function eG(e){let t=e.match(/(\d+(?:\.\d+)?)\s*px/);return t?parseFloat(t[1]):16}function __(){return hp===null&&(hp=new Intl.Segmenter(void 0,{granularity:"grapheme"})),hp}function tG(e){return J2.test(e)||e.includes("\uFE0F")}function C_(e){return Q2.test(e)}function nG(e,t){let n=w_.get(e);if(n!==void 0)return n;let r=gp();r.font=e;let o=r.measureText("\u{1F600}").width;if(n=0,o>t+.5&&typeof document<"u"&&document.body!==null){let i=document.createElement("span");i.style.font=e,i.style.display="inline-block",i.style.visibility="hidden",i.style.position="absolute",i.textContent="\u{1F600}",document.body.appendChild(i);let a=i.getBoundingClientRect().width;document.body.removeChild(i),o-a>.5&&(n=o-a)}return w_.set(e,n),n}function rG(e){let t=0,n=__();for(let r of n.segment(e))tG(r.segment)&&t++;return t}function oG(e,t){return t.emojiCount===void 0&&(t.emojiCount=rG(e)),t.emojiCount}function er(e,t,n){return n===0?t.width:t.width-oG(e,t)*n}function T_(e,t,n,r,o){if(t.breakableFitAdvances!==void 0)return t.breakableFitAdvances;let i=__(),a=[];for(let d of i.segment(e))a.push(d.segment);if(a.length<=1)return t.breakableFitAdvances=null,t.breakableFitAdvances;if(o==="sum-graphemes"){let d=[];for(let m of a){let f=yn(m,n);d.push(er(m,f,r))}return t.breakableFitAdvances=d,t.breakableFitAdvances}if(o==="pair-context"||a.length>X2){let d=[],m=null,f=0;for(let p of a){let b=yn(p,n),y=er(p,b,r);if(m===null)d.push(y);else{let x=m+p,v=yn(x,n);d.push(er(x,v,r)-f)}m=p,f=y}return t.breakableFitAdvances=d,t.breakableFitAdvances}let l=[],s="",c=0;for(let d of a){s+=d;let m=yn(s,n),f=er(s,m,r);l.push(f-c),c=f}return t.breakableFitAdvances=l,t.breakableFitAdvances}function R_(e,t){let n=gp();n.font=e;let r=Z2(e),o=eG(e),i=t?nG(e,o):0;return{cache:r,fontSize:o,emojiCorrection:i}}function iG(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 M_(e,t){if(t<=0)return 0;let n=e%t;return Math.abs(n)<=1e-6?t:t-n}function k_(e,t,n,r,o){let i=0,a=t;for(;i<e.length;){let l=a+e[i];if((i+1<e.length?l+o:l)>n+r)break;a=l,i++}return{fitCount:i,fittedWidth:a}}function aG(e,t){let n=0,r=e.chunks.length;for(;n<r;){let o=Math.floor((n+r)/2);t<e.chunks[o].consumedEndSegmentIndex?r=o:n=o+1}return n<e.chunks.length?n:-1}function L_(e,t,n){let r=n.segmentIndex;if(n.graphemeIndex>0)return t;let o=e.chunks[t];if(o.startSegmentIndex===o.endSegmentIndex&&r===o.startSegmentIndex)return n.segmentIndex=r,n.graphemeIndex=0,t;for(r<o.startSegmentIndex&&(r=o.startSegmentIndex);r<o.endSegmentIndex;){let i=e.kinds[r];if(i!=="space"&&i!=="zero-width-break"&&i!=="soft-hyphen")return n.segmentIndex=r,n.graphemeIndex=0,t;r++}return o.consumedEndSegmentIndex>=e.widths.length?-1:(n.segmentIndex=o.consumedEndSegmentIndex,n.graphemeIndex=0,t+1)}function N_(e,t){if(t.segmentIndex>=e.widths.length)return-1;let n=aG(e,t.segmentIndex);return n<0?-1:L_(e,n,t)}function sG(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:L_(e,r,n)}function F_(e,t){return e.simpleLineWalkFastPath?P_(e,t):bp(e,t)}function P_(e,t,n){let{widths:r,kinds:o,breakableFitAdvances:i}=e;if(r.length===0)return 0;let l=tr().lineFitEpsilon,s=t+l,c=0,d=0,m=!1,f=0,p=0,b=0,y=0,x=-1,v=0;function E(){x=-1,v=0}function C(T=b,F=y,W=d){c++,n?.({startSegmentIndex:f,startGraphemeIndex:p,endSegmentIndex:T,endGraphemeIndex:F,width:W}),d=0,m=!1,E()}function H(T,F){m=!0,f=T,p=0,b=T+1,y=0,d=F}function V(T,F,W){m=!0,f=T,p=F,b=T,y=F+1,d=W}function M(T,F){if(!m){H(T,F);return}d+=F,b=T+1,y=0}function R(T,F){let W=i[T];for(let B=F;B<W.length;B++){let X=W[B];m?d+X>s?(C(),V(T,B,X)):(d+=X,b=T,y=B+1):V(T,B,X)}m&&b===T&&y===W.length&&(b=T+1,y=0)}let U=0;for(;U<r.length&&!(!m&&(U=iG(e,U),U>=r.length));){let T=r[U],F=o[U],W=F==="space"||F==="preserved-space"||F==="tab"||F==="zero-width-break"||F==="soft-hyphen";if(!m){T>t&&i[U]!==null?R(U,0):H(U,T),W&&(x=U+1,v=d-T),U++;continue}if(d+T>s){if(W){M(U,T),C(U+1,0,d-T),U++;continue}if(x>=0){if(b>x||b===x&&y>0){C();continue}C(x,0,v);continue}if(T>t&&i[U]!==null){C(),R(U,0),U++;continue}C();continue}M(U,T),W&&(x=U+1,v=d-T),U++}return m&&C(),c}function bp(e,t,n){if(e.simpleLineWalkFastPath)return P_(e,t,n);let{widths:r,lineEndFitAdvances:o,lineEndPaintAdvances:i,kinds:a,breakableFitAdvances:l,discretionaryHyphenWidth:s,tabStopAdvance:c,chunks:d}=e;if(r.length===0||d.length===0)return 0;let m=tr(),f=m.lineFitEpsilon,p=t+f,b=0,y=0,x=!1,v=0,E=0,C=0,H=0,V=-1,M=0,R=0,U=null;function T(){V=-1,M=0,R=0,U=null}function F(P=C,D=H,w=y){b++,n?.({startSegmentIndex:v,startGraphemeIndex:E,endSegmentIndex:P,endGraphemeIndex:D,width:w}),y=0,x=!1,T()}function W(P,D){x=!0,v=P,E=0,C=P+1,H=0,y=D}function B(P,D,w){x=!0,v=P,E=D,C=P,H=D+1,y=w}function X(P,D){if(!x){W(P,D);return}y+=D,C=P+1,H=0}function ae(P,D,w,L){if(!D)return;let Y=P==="tab"?0:o[w],te=P==="tab"?L:i[w];V=w+1,M=y-L+Y,R=y-L+te,U=P}function N(P,D){let w=l[P];for(let L=D;L<w.length;L++){let Y=w[L];x?y+Y>p?(F(),B(P,L,Y)):(y+=Y,C=P,H=L+1):B(P,L,Y)}x&&C===P&&H===w.length&&(C=P+1,H=0)}function j(P){if(U!=="soft-hyphen")return!1;let D=l[P];if(D==null)return!1;let{fitCount:w,fittedWidth:L}=k_(D,y,t,f,s);return w===0?!1:(y=L,C=P,H=w,T(),w===D.length?(C=P+1,H=0,!0):(F(P,w,L+s),N(P,w),!0))}function I(P){b++,n?.({startSegmentIndex:P.startSegmentIndex,startGraphemeIndex:0,endSegmentIndex:P.consumedEndSegmentIndex,endGraphemeIndex:0,width:0}),T()}for(let P=0;P<d.length;P++){let D=d[P];if(D.startSegmentIndex===D.endSegmentIndex){I(D);continue}x=!1,y=0,v=D.startSegmentIndex,E=0,C=D.startSegmentIndex,H=0,T();let w=D.startSegmentIndex;for(;w<D.endSegmentIndex;){let L=a[w],Y=L==="space"||L==="preserved-space"||L==="tab"||L==="zero-width-break"||L==="soft-hyphen",te=L==="tab"?M_(y,c):r[w];if(L==="soft-hyphen"){x&&(C=w+1,H=0,V=w+1,M=y+s,R=y+s,U=L),w++;continue}if(!x){te>t&&l[w]!==null?N(w,0):W(w,te),ae(L,Y,w,te),w++;continue}if(y+te>p){let Ee=y+(L==="tab"?0:o[w]),z=y+(L==="tab"?te:i[w]);if(U==="soft-hyphen"&&m.preferEarlySoftHyphenBreak&&M<=p){F(V,0,R);continue}if(U==="soft-hyphen"&&j(w)){w++;continue}if(Y&&Ee<=p){X(w,te),F(w+1,0,z),w++;continue}if(V>=0&&M<=p){if(C>V||C===V&&H>0){F();continue}let Z=V;F(Z,0,R),w=Z;continue}if(te>t&&l[w]!==null){F(),N(w,0),w++;continue}F();continue}X(w,te),ae(L,Y,w,te),w++}if(x){let L=V===D.consumedEndSegmentIndex?R:y;F(D.consumedEndSegmentIndex,0,L)}}return b}function D_(e,t,n,r){let o=e.chunks[n];if(o.startSegmentIndex===o.endSegmentIndex)return t.segmentIndex=o.consumedEndSegmentIndex,t.graphemeIndex=0,0;let{widths:i,lineEndFitAdvances:a,lineEndPaintAdvances:l,kinds:s,breakableFitAdvances:c,discretionaryHyphenWidth:d,tabStopAdvance:m}=e,f=tr(),p=f.lineFitEpsilon,b=r+p,y=0,x=!1,v=t.segmentIndex,E=t.graphemeIndex,C=-1,H=0,V=0,M=null;function R(){C=-1,H=0,V=0,M=null}function U(N=v,j=E,I=y){return x?(t.segmentIndex=N,t.graphemeIndex=j,I):null}function T(N,j){x=!0,v=N+1,E=0,y=j}function F(N,j,I){x=!0,v=N,E=j+1,y=I}function W(N,j){if(!x){T(N,j);return}y+=j,v=N+1,E=0}function B(N,j,I,P){if(!j)return;let D=N==="tab"?0:a[I],w=N==="tab"?P:l[I];C=I+1,H=y-P+D,V=y-P+w,M=N}function X(N,j){let I=c[N];for(let P=j;P<I.length;P++){let D=I[P];if(!x)F(N,P,D);else{if(y+D>b)return U();y+=D,v=N,E=P+1}}return x&&v===N&&E===I.length&&(v=N+1,E=0),null}function ae(N){if(M!=="soft-hyphen"||C<0)return null;let j=c[N]??null;if(j!==null){let{fitCount:I,fittedWidth:P}=k_(j,y,r,p,d);if(I===j.length)return y=P,v=N+1,E=0,R(),null;if(I>0)return U(N,I,P+d)}return H<=b?U(C,0,V):null}for(let N=t.segmentIndex;N<o.endSegmentIndex;N++){let j=s[N],I=j==="space"||j==="preserved-space"||j==="tab"||j==="zero-width-break"||j==="soft-hyphen",P=N===t.segmentIndex?t.graphemeIndex:0,D=j==="tab"?M_(y,m):i[N];if(j==="soft-hyphen"&&P===0){x&&(v=N+1,E=0,C=N+1,H=y+d,V=y+d,M=j);continue}if(!x){if(P>0){let L=X(N,P);if(L!==null)return L}else if(D>r&&c[N]!==null){let L=X(N,0);if(L!==null)return L}else T(N,D);B(j,I,N,D);continue}if(y+D>b){let L=y+(j==="tab"?0:a[N]),Y=y+(j==="tab"?D:l[N]);if(M==="soft-hyphen"&&f.preferEarlySoftHyphenBreak&&H<=b)return U(C,0,V);let te=ae(N);if(te!==null)return te;if(I&&L<=b)return W(N,D),U(N+1,0,Y);if(C>=0&&H<=b)return v>C||v===C&&E>0?U():U(C,0,V);if(D>r&&c[N]!==null){let he=U();if(he!==null)return he;let Ee=X(N,0);if(Ee!==null)return Ee}return U()}W(N,D),B(j,I,N,D)}return C===o.consumedEndSegmentIndex&&E===0?U(o.consumedEndSegmentIndex,0,V):U(o.consumedEndSegmentIndex,0,y)}function lG(e,t,n){let{widths:r,kinds:o,breakableFitAdvances:i}=e,l=tr().lineFitEpsilon,s=n+l,c=0,d=!1,m=t.segmentIndex,f=t.graphemeIndex,p=-1,b=0;for(let y=t.segmentIndex;y<r.length;y++){let x=r[y],v=o[y],E=v==="space"||v==="preserved-space"||v==="tab"||v==="zero-width-break"||v==="soft-hyphen",C=y===t.segmentIndex?t.graphemeIndex:0,H=i[y];if(!d){if(C>0||x>n&&H!==null){let V=H,M=V[C];d=!0,c=M,m=y,f=C+1;for(let R=C+1;R<V.length;R++){let U=V[R];if(c+U>s)return t.segmentIndex=m,t.graphemeIndex=f,c;c+=U,m=y,f=R+1}m===y&&f===V.length&&(m=y+1,f=0)}else d=!0,c=x,m=y+1,f=0;E&&(p=y+1,b=c-x);continue}if(c+x>s)return E?(t.segmentIndex=y+1,t.graphemeIndex=0,c):p>=0?m>p||m===p&&f>0?(t.segmentIndex=m,t.graphemeIndex=f,c):(t.segmentIndex=p,t.graphemeIndex=0,b):(t.segmentIndex=m,t.graphemeIndex=f,c);c+=x,m=y+1,f=0,E&&(p=y+1,b=c-x)}return d?(t.segmentIndex=m,t.graphemeIndex=f,c):null}function uG(e,t,n){let r=N_(e,t);return r<0?null:e.simpleLineWalkFastPath?lG(e,t,n):D_(e,t,r,n)}function I_(e,t){if(e.widths.length===0)return{lineCount:0,maxLineWidth:0};let n={segmentIndex:0,graphemeIndex:0},r=0,o=0;if(!e.simpleLineWalkFastPath){let i=N_(e,n);for(;i>=0;){let a=D_(e,n,i,t);if(a===null)return{lineCount:r,maxLineWidth:o};r++,a>o&&(o=a),i=sG(e,i,n)}return{lineCount:r,maxLineWidth:o}}for(;;){let i=uG(e,n,t);if(i===null)return{lineCount:r,maxLineWidth:o};r++,i>o&&(o=i)}}var yp=null;function cG(){return yp===null&&(yp=new Intl.Segmenter(void 0,{granularity:"grapheme"})),yp}function dG(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 fG(e,t){let n=[],r=[],o=0,i=!1,a=!1,l=!1;function s(){r.length!==0&&(n.push({text:r.length===1?r[0]:r.join(""),start:o}),r=[],i=!1,a=!1,l=!1)}function c(m,f,p){r=[m],o=f,i=p,a=wu(m),l=Ea.has(m)}function d(m,f){r.push(m),i=i||f;let p=wu(m);m.length===1&&Zn.has(m)?a=a||p:a=p,l=!1}for(let m of cG().segment(e)){let f=m.segment,p=Ht(f);if(r.length===0){c(f,m.index,p);continue}if(l||vu.has(f)||Zn.has(f)||t.carryCJKAfterClosingQuote&&p&&a){d(f,p);continue}if(!i&&!p){d(f,p);continue}s(),c(f,m.index,p)}return s(),n}function mG(e){if(e.length<=1)return e;let t=[],n=[e[0].text],r=e[0].start,o=Ht(e[0].text),i=Eu(e[0].text);function a(){t.push({text:n.length===1?n[0]:n.join(""),start:r})}for(let l=1;l<e.length;l++){let s=e[l],c=Ht(s.text),d=Eu(s.text);if(o&&i){n.push(s.text),o=o||c,i=d;continue}a(),n=[s.text],r=s.start,o=c,i=d}return a(),t}function pG(e,t,n,r){let o=tr(),{cache:i,emojiCorrection:a}=R_(t,C_(e.normalized)),l=er("-",yn("-",i),a),c=er(" ",yn(" ",i),a)*8;if(e.len===0)return dG(n);let d=[],m=[],f=[],p=[],b=e.chunks.length<=1,y=n?[]:null,x=[],v=n?[]:null,E=Array.from({length:e.len});function C(R,U,T,F,W,B,X){W!=="text"&&W!=="space"&&W!=="zero-width-break"&&(b=!1),d.push(U),m.push(T),f.push(F),p.push(W),y?.push(B),x.push(X),v!==null&&v.push(R)}function H(R,U,T,F,W){let B=yn(R,i),X=er(R,B,a),ae=U==="space"||U==="preserved-space"||U==="zero-width-break"?0:X,N=U==="space"||U==="zero-width-break"?0:X;if(W&&F&&R.length>1){let j="sum-graphemes";Sa(R)?j="pair-context":o.preferPrefixWidthsForBreakableRuns&&(j="segment-prefixes");let I=T_(R,B,i,a,j);C(R,X,ae,N,U,T,I);return}C(R,X,ae,N,U,T,null)}for(let R=0;R<e.len;R++){E[R]=d.length;let U=e.texts[R],T=e.isWordLike[R],F=e.kinds[R],W=e.starts[R];if(F==="soft-hyphen"){C(U,0,l,l,F,W,null);continue}if(F==="hard-break"){C(U,0,0,0,F,W,null);continue}if(F==="tab"){C(U,0,0,0,F,W,null);continue}let B=yn(U,i);if(F==="text"&&B.containsCJK){let X=fG(U,o),ae=r==="keep-all"?mG(X):X;for(let N=0;N<ae.length;N++){let j=ae[N];H(j.text,"text",W+j.start,T,r==="keep-all"||!Ht(j.text))}continue}H(U,F,W,T,!0)}let V=hG(e.chunks,E,d.length),M=y===null?null:d_(e.normalized,y);return v!==null?{widths:d,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:p,simpleLineWalkFastPath:b,segLevels:M,breakableFitAdvances:x,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:V,segments:v}:{widths:d,lineEndFitAdvances:m,lineEndPaintAdvances:f,kinds:p,simpleLineWalkFastPath:b,segLevels:M,breakableFitAdvances:x,discretionaryHyphenWidth:l,tabStopAdvance:c,chunks:V}}function hG(e,t,n){let r=[];for(let o=0;o<e.length;o++){let i=e[o],a=i.startSegmentIndex<t.length?t[i.startSegmentIndex]:n,l=i.endSegmentIndex<t.length?t[i.endSegmentIndex]:n,s=i.consumedEndSegmentIndex<t.length?t[i.consumedEndSegmentIndex]:n;r.push({startSegmentIndex:a,endSegmentIndex:l,consumedEndSegmentIndex:s})}return r}function O_(e,t,n,r){let o=r?.wordBreak??"normal",i=v_(e,tr(),r?.whiteSpace,o);return pG(i,t,n,o)}function _u(e,t,n){return O_(e,t,!1,n)}function H_(e,t,n){return O_(e,t,!0,n)}function Cu(e,t,n){let r=F_(e,t);return{lineCount:r,height:r*n}}function gG(e){return{width:e.width,start:{segmentIndex:e.startSegmentIndex,graphemeIndex:e.startGraphemeIndex},end:{segmentIndex:e.endSegmentIndex,graphemeIndex:e.endGraphemeIndex}}}function bG(e,t,n){return e.widths.length===0?0:bp(e,t,r=>{n(gG(r))})}function G_(e,t){return I_(e,t)}function B_(e){let t=0;return bG(e,Number.POSITIVE_INFINITY,n=>{n.width>t&&(t=n.width)}),t}var yG={maxWidth:1600,baseFontSize:78,minFontSize:42,fontWeight:900,fontFamily:"Outfit",step:2};function U_(e,t){let n={...yG,...t},r=1.2;for(let o=n.baseFontSize;o>=n.minFontSize;o=Math.max(n.minFontSize,o-n.step)){let i=`${n.fontWeight} ${o}px ${n.fontFamily}`,a=_u(e,i),{lineCount:l}=Cu(a,n.maxWidth,o*r);if(l<=1)return{fontSize:o,fits:!0};if(o===n.minFontSize)break}return{fontSize:n.minFontSize,fits:!1}}var W_={prepare:_u,layout:Cu,prepareWithSegments:H_,measureLineStats:G_,measureNaturalWidth:B_};var nr="appifact-film:";function V_(e){let{iframe:t,runnerHtml:n,load:r}=e,o=(t.getAttribute("sandbox")??"").split(/\s+/);if(!o.includes("allow-scripts")||o.includes("allow-same-origin"))throw new Error('Film runners require sandbox="allow-scripts" without allow-same-origin');let i=0,a=!1,l=!1,s=null,c,d,m=new Promise((C,H)=>{c=C,d=H});m.catch(()=>{});let f=null,p=C=>{s=C,clearTimeout(b),d(C),f&&(clearTimeout(f.timer),f.reject(C),f=null)},b=setTimeout(()=>p(new Error("Film runner did not become ready within 20 s")),2e4),y=C=>{if(C.type!==nr+"frame"&&C.type!==nr+"frame-error"||!("seq"in C)||f===null||f.sequence!==C.seq)return;let H=f;f=null,clearTimeout(H.timer),C.type===nr+"frame-error"?H.reject(new Error("message"in C?String(C.message):"Film frame failed")):H.resolve()},x=C=>{try{let H=t.contentWindow;if(!H)throw new Error("Film runner window is unavailable");H.postMessage(C,"*")}catch(H){p(H instanceof Error?H:new Error(String(H)))}},v=C=>{if(C.type===nr+"hello"){if(a){p(new Error("Film runner reloaded; recreate the bridge before seeking"));return}a=!0,x({...r,type:nr+"load"})}else C.type===nr+"ready"&&a?(clearTimeout(b),c()):C.type===nr+"error"&&p(new Error("message"in C?String(C.message):"Film runner failed"))},E=C=>{if(l||s||C.source!==t.contentWindow||C.origin!=="null")return;let H=C.data;!H||typeof H!="object"||!("type"in H)||(v(H),y(H))};return window.addEventListener("message",E),t.srcdoc=n,{ready:m,async render(C){if(await m,s)throw s;if(f)throw new Error("Film seeks must be serialized; use registerFrameSource");let H=++i;return new Promise((V,M)=>{let R=setTimeout(()=>{p(new Error("Film frame did not arrive within 15 s"))},15e3);f={sequence:H,resolve:V,reject:M,timer:R},x({type:nr+"frame",t:C,seq:H})})},dispose(){l||(l=!0,window.removeEventListener("message",E),p(new Error("Film bridge was disposed")),t.srcdoc="")}}}window.__timelines=window.__timelines||{};lv();a_();s_();nw();window.__hfHasFrameSources=Vb;Ag();j0();window.__hyperframes={assetUrl:mu,fitTextFontSize:U_,getVariables:ub,pretext:W_,registerRuntimeDataHandler:e_,setRuntimeData:gu,clearRuntimeData:bu,registerFrameSource:$b,createFilmBridge:V_};function $_(){let e=window;e.__hyperframeRuntimeBootstrapped||(e.__hyperframeRuntimeBootstrapped=!0,_g(),u_())}function q_(){try{I0(),cr();let e=Array.from(document.querySelectorAll(uE));e.length===0?$_():Bl(e,$_).catch(t=>{Yo(t),reportError(t)})}catch(e){throw Yo(e),e}}document.readyState==="loading"?document.addEventListener("DOMContentLoaded",q_,{once:!0}):q_();})();
|
|
1143
1143
|
|