@vivliostyle/print 2.45.0 → 2.45.1

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/index.cjs.js CHANGED
@@ -1,12 +1,12 @@
1
- var bm=Object.create;var So=Object.defineProperty;var xm=Object.getOwnPropertyDescriptor;var Sm=Object.getOwnPropertyNames;var Cm=Object.getPrototypeOf,km=Object.prototype.hasOwnProperty;var Pm=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(i){throw e=0,i}},Em=(t,e)=>{for(var i in e)So(t,i,{get:e[i],enumerable:!0})},Jh=(t,e,i,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Sm(e))!km.call(t,r)&&r!==i&&So(t,r,{get:()=>e[r],enumerable:!(n=xm(e,r))||n.enumerable});return t};var Nm=(t,e,i)=>(i=t!=null?bm(Cm(t)):{},Jh(e||!t||!t.__esModule?So(i,"default",{value:t,enumerable:!0}):i,t)),Tm=t=>Jh(So({},"__esModule",{value:!0}),t);var gm=Pm((Mk,fm)=>{"use strict";var Im=Object.create,io=Object.defineProperty,Am=Object.getOwnPropertyDescriptor,Fm=Object.getOwnPropertyNames,Rm=Object.getPrototypeOf,Lm=Object.prototype.hasOwnProperty,Yc=t=>{throw TypeError(t)},Om=(t,e,i)=>e in t?io(t,e,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[e]=i,Bm=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(i){throw e=0,i}},Mm=(t,e)=>{for(var i in e)io(t,i,{get:e[i],enumerable:!0})},Zc=(t,e,i,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Fm(e))!Lm.call(t,r)&&r!==i&&io(t,r,{get:()=>e[r],enumerable:!(n=Am(e,r))||n.enumerable});return t},_m=(t,e,i)=>(i=t!=null?Im(Rm(t)):{},Zc(e||!t||!t.__esModule?io(i,"default",{value:t,enumerable:!0}):i,t)),Dm=t=>Zc(io({},"__esModule",{value:!0}),t),u=(t,e,i)=>Om(t,typeof e!="symbol"?e+"":e,i),jl=(t,e,i)=>e.has(t)||Yc("Cannot "+i),U=(t,e,i)=>(jl(t,e,"read from private field"),i?i.call(t):e.get(t)),ne=(t,e,i)=>e.has(t)?Yc("Cannot add the same private member more than once"):e instanceof WeakSet?e.add(t):e.set(t,i),pe=(t,e,i,n)=>(jl(t,e,"write to private field"),n?n.call(t,i):e.set(t,i),i),le=(t,e,i)=>(jl(t,e,"access private method"),i),zm=Bm((t,e)=>{var i=-1,n=1,r=0;function o(P,M,A,H,z){if(P===M)return P?[[r,P]]:[];if(A!=null){var E=J(P,M,A);if(E)return E}var O=l(P,M),T=P.substring(0,O);P=P.substring(O),M=M.substring(O),O=d(P,M);var $=P.substring(P.length-O);P=P.substring(0,P.length-O),M=M.substring(0,M.length-O);var G=s(P,M);return T&&G.unshift([r,T]),$&&G.push([r,$]),y(G,z),H&&f(G),G}function s(P,M){var A;if(!P)return[[n,M]];if(!M)return[[i,P]];var H=P.length>M.length?P:M,z=P.length>M.length?M:P,E=H.indexOf(z);if(E!==-1)return A=[[n,H.substring(0,E)],[r,z],[n,H.substring(E+z.length)]],P.length>M.length&&(A[0][0]=A[2][0]=i),A;if(z.length===1)return[[i,P],[n,M]];var O=p(P,M);if(O){var T=O[0],$=O[1],G=O[2],q=O[3],Q=O[4],oe=o(T,G),se=o($,q);return oe.concat([[r,Q]],se)}return a(P,M)}function a(P,M){for(var A=P.length,H=M.length,z=Math.ceil((A+H)/2),E=z,O=2*z,T=new Array(O),$=new Array(O),G=0;G<O;G++)T[G]=-1,$[G]=-1;T[E+1]=0,$[E+1]=0;for(var q=A-H,Q=q%2!==0,oe=0,se=0,me=0,Me=0,ue=0;ue<z;ue++){for(var fe=-ue+oe;fe<=ue-se;fe+=2){var ke=E+fe,ye;fe===-ue||fe!==ue&&T[ke-1]<T[ke+1]?ye=T[ke+1]:ye=T[ke-1]+1;for(var Fe=ye-fe;ye<A&&Fe<H&&P.charAt(ye)===M.charAt(Fe);)ye++,Fe++;if(T[ke]=ye,ye>A)se+=2;else if(Fe>H)oe+=2;else if(Q){var _e=E+q-fe;if(_e>=0&&_e<O&&$[_e]!==-1){var Re=A-$[_e];if(ye>=Re)return h(P,M,ye,Fe)}}}for(var We=-ue+me;We<=ue-Me;We+=2){var _e=E+We,Re;We===-ue||We!==ue&&$[_e-1]<$[_e+1]?Re=$[_e+1]:Re=$[_e-1]+1;for(var gt=Re-We;Re<A&&gt<H&&P.charAt(A-Re-1)===M.charAt(H-gt-1);)Re++,gt++;if($[_e]=Re,Re>A)Me+=2;else if(gt>H)me+=2;else if(!Q){var ke=E+q-We;if(ke>=0&&ke<O&&T[ke]!==-1){var ye=T[ke],Fe=E+ye-ke;if(Re=A-Re,ye>=Re)return h(P,M,ye,Fe)}}}}return[[i,P],[n,M]]}function h(P,M,A,H){var z=P.substring(0,A),E=M.substring(0,H),O=P.substring(A),T=M.substring(H),$=o(z,E),G=o(O,T);return $.concat(G)}function l(P,M){if(!P||!M||P.charAt(0)!==M.charAt(0))return 0;for(var A=0,H=Math.min(P.length,M.length),z=H,E=0;A<z;)P.substring(E,z)==M.substring(E,z)?(A=z,E=A):H=z,z=Math.floor((H-A)/2+A);return k(P.charCodeAt(z-1))&&z--,z}function c(P,M){var A=P.length,H=M.length;if(A==0||H==0)return 0;A>H?P=P.substring(A-H):A<H&&(M=M.substring(0,A));var z=Math.min(A,H);if(P==M)return z;for(var E=0,O=1;;){var T=P.substring(z-O),$=M.indexOf(T);if($==-1)return E;O+=$,($==0||P.substring(z-O)==M.substring(0,O))&&(E=O,O++)}}function d(P,M){if(!P||!M||P.slice(-1)!==M.slice(-1))return 0;for(var A=0,H=Math.min(P.length,M.length),z=H,E=0;A<z;)P.substring(P.length-z,P.length-E)==M.substring(M.length-z,M.length-E)?(A=z,E=A):H=z,z=Math.floor((H-A)/2+A);return S(P.charCodeAt(P.length-z))&&z--,z}function p(P,M){var A=P.length>M.length?P:M,H=P.length>M.length?M:P;if(A.length<4||H.length*2<A.length)return null;function z(se,me,Me){for(var ue=se.substring(Me,Me+Math.floor(se.length/4)),fe=-1,ke="",ye,Fe,_e,Re;(fe=me.indexOf(ue,fe+1))!==-1;){var We=l(se.substring(Me),me.substring(fe)),gt=d(se.substring(0,Me),me.substring(0,fe));ke.length<gt+We&&(ke=me.substring(fe-gt,fe)+me.substring(fe,fe+We),ye=se.substring(0,Me-gt),Fe=se.substring(Me+We),_e=me.substring(0,fe-gt),Re=me.substring(fe+We))}return ke.length*2>=se.length?[ye,Fe,_e,Re,ke]:null}var E=z(A,H,Math.ceil(A.length/4)),O=z(A,H,Math.ceil(A.length/2)),T;if(!E&&!O)return null;O?E?T=E[4].length>O[4].length?E:O:T=O:T=E;var $,G,q,Q;P.length>M.length?($=T[0],G=T[1],q=T[2],Q=T[3]):(q=T[0],Q=T[1],$=T[2],G=T[3]);var oe=T[4];return[$,G,q,Q,oe]}function f(P){for(var M=!1,A=[],H=0,z=null,E=0,O=0,T=0,$=0,G=0;E<P.length;)P[E][0]==r?(A[H++]=E,O=$,T=G,$=0,G=0,z=P[E][1]):(P[E][0]==n?$+=P[E][1].length:G+=P[E][1].length,z&&z.length<=Math.max(O,T)&&z.length<=Math.max($,G)&&(P.splice(A[H-1],0,[i,z]),P[A[H-1]+1][0]=n,H--,H--,E=H>0?A[H-1]:-1,O=0,T=0,$=0,G=0,z=null,M=!0)),E++;for(M&&y(P),C(P),E=1;E<P.length;){if(P[E-1][0]==i&&P[E][0]==n){var q=P[E-1][1],Q=P[E][1],oe=c(q,Q),se=c(Q,q);oe>=se?(oe>=q.length/2||oe>=Q.length/2)&&(P.splice(E,0,[r,Q.substring(0,oe)]),P[E-1][1]=q.substring(0,q.length-oe),P[E+1][1]=Q.substring(oe),E++):(se>=q.length/2||se>=Q.length/2)&&(P.splice(E,0,[r,q.substring(0,se)]),P[E-1][0]=n,P[E-1][1]=Q.substring(0,Q.length-se),P[E+1][0]=i,P[E+1][1]=q.substring(se),E++),E++}E++}}var g=/[^a-zA-Z0-9]/,m=/\s/,v=/[\r\n]/,b=/\n\r?\n$/,x=/^\r?\n\r?\n/;function C(P){function M(se,me){if(!se||!me)return 6;var Me=se.charAt(se.length-1),ue=me.charAt(0),fe=Me.match(g),ke=ue.match(g),ye=fe&&Me.match(m),Fe=ke&&ue.match(m),_e=ye&&Me.match(v),Re=Fe&&ue.match(v),We=_e&&se.match(b),gt=Re&&me.match(x);return We||gt?5:_e||Re?4:fe&&!ye&&Fe?3:ye||Fe?2:fe||ke?1:0}for(var A=1;A<P.length-1;){if(P[A-1][0]==r&&P[A+1][0]==r){var H=P[A-1][1],z=P[A][1],E=P[A+1][1],O=d(H,z);if(O){var T=z.substring(z.length-O);H=H.substring(0,H.length-O),z=T+z.substring(0,z.length-O),E=T+E}for(var $=H,G=z,q=E,Q=M(H,z)+M(z,E);z.charAt(0)===E.charAt(0);){H+=z.charAt(0),z=z.substring(1)+E.charAt(0),E=E.substring(1);var oe=M(H,z)+M(z,E);oe>=Q&&(Q=oe,$=H,G=z,q=E)}P[A-1][1]!=$&&($?P[A-1][1]=$:(P.splice(A-1,1),A--),P[A][1]=G,q?P[A+1][1]=q:(P.splice(A+1,1),A--))}A++}}function y(P,M){P.push([r,""]);for(var A=0,H=0,z=0,E="",O="",T;A<P.length;){if(A<P.length-1&&!P[A][1]){P.splice(A,1);continue}switch(P[A][0]){case n:z++,O+=P[A][1],A++;break;case i:H++,E+=P[A][1],A++;break;case r:var $=A-z-H-1;if(M){if($>=0&&L(P[$][1])){var G=P[$][1].slice(-1);if(P[$][1]=P[$][1].slice(0,-1),E=G+E,O=G+O,!P[$][1]){P.splice($,1),A--;var q=$-1;P[q]&&P[q][0]===n&&(z++,O=P[q][1]+O,q--),P[q]&&P[q][0]===i&&(H++,E=P[q][1]+E,q--),$=q}}if(N(P[A][1])){var G=P[A][1].charAt(0);P[A][1]=P[A][1].slice(1),E+=G,O+=G}}if(A<P.length-1&&!P[A][1]){P.splice(A,1);break}if(E.length>0||O.length>0){E.length>0&&O.length>0&&(T=l(O,E),T!==0&&($>=0?P[$][1]+=O.substring(0,T):(P.splice(0,0,[r,O.substring(0,T)]),A++),O=O.substring(T),E=E.substring(T)),T=d(O,E),T!==0&&(P[A][1]=O.substring(O.length-T)+P[A][1],O=O.substring(0,O.length-T),E=E.substring(0,E.length-T)));var Q=z+H;E.length===0&&O.length===0?(P.splice(A-Q,Q),A=A-Q):E.length===0?(P.splice(A-Q,Q,[n,O]),A=A-Q+1):O.length===0?(P.splice(A-Q,Q,[i,E]),A=A-Q+1):(P.splice(A-Q,Q,[i,E],[n,O]),A=A-Q+2)}A!==0&&P[A-1][0]===r?(P[A-1][1]+=P[A][1],P.splice(A,1)):A++,z=0,H=0,E="",O="";break}}P[P.length-1][1]===""&&P.pop();var oe=!1;for(A=1;A<P.length-1;)P[A-1][0]===r&&P[A+1][0]===r&&(P[A][1].substring(P[A][1].length-P[A-1][1].length)===P[A-1][1]?(P[A][1]=P[A-1][1]+P[A][1].substring(0,P[A][1].length-P[A-1][1].length),P[A+1][1]=P[A-1][1]+P[A+1][1],P.splice(A-1,1),oe=!0):P[A][1].substring(0,P[A+1][1].length)==P[A+1][1]&&(P[A-1][1]+=P[A+1][1],P[A][1]=P[A][1].substring(P[A+1][1].length)+P[A+1][1],P.splice(A+1,1),oe=!0)),A++;oe&&y(P,M)}function k(P){return P>=55296&&P<=56319}function S(P){return P>=56320&&P<=57343}function N(P){return S(P.charCodeAt(0))}function L(P){return k(P.charCodeAt(P.length-1))}function I(P){for(var M=[],A=0;A<P.length;A++)P[A][1].length>0&&M.push(P[A]);return M}function D(P,M,A,H){return L(P)||N(H)?null:I([[r,P],[i,M],[n,A],[r,H]])}function J(P,M,A){var H=typeof A=="number"?{index:A,length:0}:A.oldRange,z=typeof A=="number"?null:A.newRange,E=P.length,O=M.length;if(H.length===0&&(z===null||z.length===0)){var T=H.index,$=P.slice(0,T),G=P.slice(T),q=z?z.index:null;e:{var Q=T+O-E;if(q!==null&&q!==Q||Q<0||Q>O)break e;var oe=M.slice(0,Q),se=M.slice(Q);if(se!==G)break e;var me=Math.min(T,Q),Me=$.slice(0,me),ue=oe.slice(0,me);if(Me!==ue)break e;var fe=$.slice(me),ke=oe.slice(me);return D(Me,fe,ke,G)}e:{if(q!==null&&q!==T)break e;var ye=T,oe=M.slice(0,ye),se=M.slice(ye);if(oe!==$)break e;var Fe=Math.min(E-ye,O-ye),_e=G.slice(G.length-Fe),Re=se.slice(se.length-Fe);if(_e!==Re)break e;var fe=G.slice(0,G.length-Fe),ke=se.slice(0,se.length-Fe);return D($,fe,ke,_e)}}if(H.length>0&&z&&z.length===0)e:{var Me=P.slice(0,H.index),_e=P.slice(H.index+H.length),me=Me.length,Fe=_e.length;if(O<me+Fe)break e;var ue=M.slice(0,me),Re=M.slice(O-Fe);if(Me!==ue||_e!==Re)break e;var fe=P.slice(me,E-Fe),ke=M.slice(me,O-Fe);return D(Me,fe,ke,_e)}return null}function te(P,M,A,H){return o(P,M,A,H,!0)}te.INSERT=n,te.DELETE=i,te.EQUAL=r,e.exports=te}),Kc={};Mm(Kc,{CoreViewer:()=>dm,HOOKS:()=>qs,Navigation:()=>pm,PageProgression:()=>Xl,PageSide:()=>ed,PageViewMode:()=>Pk,Profiler:()=>nd,ReadyState:()=>td,UserAgentBaseCss:()=>dp,UserAgentCounterStylesCss:()=>gp,UserAgentPageCss:()=>cp,UserAgentTocCss:()=>pp,UserAgentXml:()=>up,ValidationTxt:()=>hp,VivliostylePolyfillCss:()=>fp,VivliostyleViewportCss:()=>lp,VivliostyleViewportScreenCss:()=>ap,ZoomType:()=>kk,getHooksForName:()=>zt,isDebug:()=>Vr,pageProgressionOf:()=>Qc,plugin:()=>$m,printHTML:()=>Nk,profile:()=>Gm,profiler:()=>Nt,registerHook:()=>Ft,removeHook:()=>ql,setDebug:()=>Jc});fm.exports=Dm(Kc);var Vr=!1;function Jc(t){Vr=t}var Xl=(t=>(t.LTR="ltr",t.RTL="rtl",t))(Xl||{});function Qc(t){switch(t){case"ltr":return"ltr";case"rtl":return"rtl";default:throw new Error(`unknown PageProgression: ${t}`)}}var ed=(t=>(t.LEFT="left",t.RIGHT="right",t))(ed||{}),td=(t=>(t.LOADING="loading",t.INTERACTIVE="interactive",t.COMPLETE="complete",t))(td||{}),id=(t=>(t[t.DEBUG=1]="DEBUG",t[t.INFO=2]="INFO",t[t.WARN=3]="WARN",t[t.ERROR=4]="ERROR",t))(id||{}),Vm=class{constructor(t){u(this,"opt_console",t),u(this,"listeners",{})}consoleDebug(t){this.opt_console?this.opt_console.debug?this.opt_console.debug(...t):this.opt_console.log(...t):console.debug(...t)}consoleInfo(t){this.opt_console?this.opt_console.info?this.opt_console.info(...t):this.opt_console.log(...t):console.info(...t)}consoleWarn(t){this.opt_console?this.opt_console.warn?this.opt_console.warn(...t):this.opt_console.log(...t):console.warn(...t)}consoleError(t){this.opt_console?this.opt_console.error?this.opt_console.error(...t):this.opt_console.log(...t):console.error(...t)}triggerListeners(t,e){let i=this.listeners[t];i&&i(e)}addListener(t,e){this.listeners[t]=e}debug(...t){let e=Co(arguments);this.consoleDebug(ko(e)),this.triggerListeners(1,e)}info(...t){let e=Co(arguments);this.consoleInfo(ko(e)),this.triggerListeners(2,e)}warn(...t){let e=Co(arguments);this.consoleWarn(ko(e)),this.triggerListeners(3,e)}error(...t){let e=Co(arguments);this.consoleError(ko(e)),this.triggerListeners(4,e)}};function Co(t){let e=Array.from(t),i=null;return e[0]instanceof Error&&(i=e.shift()),{error:i,messages:e}}function ko(t){let e=t.error,i=e&&(e.frameTrace||e.stack),n=[].concat(t.messages);return e&&(n.length>0&&(n=n.concat([`
2
- `])),n=n.concat([e.toString()]),i&&(n=n.concat([`
3
- `]).concat(i))),n}var Y=new Vm,qs=(t=>(t.SIMPLE_PROPERTY="SIMPLE_PROPERTY",t.PREPROCESS_SINGLE_DOCUMENT="PREPROCESS_SINGLE_DOCUMENT",t.PREPROCESS_TEXT_CONTENT="PREPROCESS_TEXT_CONTENT",t.PREPROCESS_ELEMENT_STYLE="PREPROCESS_ELEMENT_STYLE",t.POLYFILLED_INHERITED_PROPS="POLYFILLED_INHERITED_PROPS",t.CONFIGURATION="CONFIGURATION",t.RESOLVE_TEXT_NODE_BREAKER="RESOLVE_TEXT_NODE_BREAKER",t.RESOLVE_FORMATTING_CONTEXT="RESOLVE_FORMATTING_CONTEXT",t.RESOLVE_LAYOUT_PROCESSOR="RESOLVE_LAYOUT_PROCESSOR",t.POST_LAYOUT_BLOCK="POST_LAYOUT_BLOCK",t.PAGINATION_PROGRESS="PAGINATION_PROGRESS",t))(qs||{}),ds={};function Ft(t,e,i){if(!qs[t])Y.warn(new Error(`Skipping unknown plugin hook '${t}'.`));else{let n=ds[t];n||(n=ds[t]=[]),i?n.unshift(e):n.push(e)}}function ql(t,e){if(!qs[t])Y.warn(new Error(`Ignoring unknown plugin hook '${t}'.`));else{let i=ds[t];if(i){let n=i.indexOf(e);n>=0&&i.splice(n,1)}}}function zt(t){return ds[t]||[]}var $m={registerHook:Ft,removeHook:ql},nd=class{constructor(t){u(this,"performanceInstance",t),u(this,"timestamps",{}),u(this,"registerTiming"),u(this,"registerStartTiming"),u(this,"registerEndTiming"),this.registerTiming=mn,this.registerStartTiming=this.registerStartTiming=mn,this.registerEndTiming=this.registerEndTiming=mn}forceRegisterStartTiming(t,e){ba.call(this,t,"start",e)}forceRegisterEndTiming(t,e){ba.call(this,t,"end",e)}printTimings(){let t=this.timestamps,e="";Object.keys(t).forEach(i=>{let n=t[i],r=n.length;for(let o=0;o<r;o++){let s=n[o];e+=i,r>1&&(e+=`(${o})`),e+=` => start: ${s.start}, end: ${s.end}, duration: ${s.end-s.start}
4
- `}}),Y.info(e)}disable(){this.registerTiming=mn,this.registerStartTiming=this.registerStartTiming=mn,this.registerEndTiming=this.registerEndTiming=mn}enable(){this.registerTiming=ba,this.registerStartTiming=this.registerStartTiming=Qh,this.registerEndTiming=this.registerEndTiming=Hm}isEnabled(){return this.registerStartTiming===Qh}};function mn(){}function ba(t,e,i){i||(i=this.performanceInstance.now());let n=this.timestamps[t];n||(n=this.timestamps[t]=[]);let r,o=n.length;for(let s=o-1;s>=0&&(r=n[s],!(r&&!r[e]));s--)r=null;r||(r={},n.push(r)),r[e]=i}function Qh(t,e){this.registerTiming(t,"start",e)}function Hm(t,e){this.registerTiming(t,"end",e)}var Um={now:Date.now},Wm=window&&window.performance,Nt=new nd(Wm||Um);Nt.forceRegisterStartTiming("load_vivliostyle");var Gm={profiler:{registerStartTiming:Nt.registerStartTiming,registerEndTiming:Nt.registerEndTiming,printTimings:Nt.printTimings,disable:Nt.disable,enable:Nt.enable}},no=navigator.userAgent.includes("Chrome")?"chromium":navigator.userAgent.includes("Firefox")?"firefox":navigator.userAgent.includes("AppleWebKit")?"webkit":"unknown",ps=/^[\s\p{Zs}\p{P}\p{Mn}]*[\p{L}\p{N}]\p{Mn}*(?:[\s\p{Zs}]*\p{P}\p{Mn}*)*/u,jt="data-adapt-eloff",jm={};function Yl(t){return JSON.parse(t)}function ft(t){let e=t.match(/^([^#]*)/);return e?e[1]:t}function rd(t){let e=t.match(/^([^#?]*)/);return e?e[1]:t}var Zl="?viv-toc-box";function Ys(t){return t.endsWith(Zl)}function bn(t){return Ys(t)?t.slice(0,-Zl.length):t}function Ua(t){return Ys(t)?t:ft(t)+Zl}var an=window.location.href;function eu(t){an=t}var Ei=window.location.href;function tu(t){Ei=t}function Xm(t){let e=rd(t).match(/^(https?:\/\/raw\.githack\.com\/web-platform-tests\/wpt\/[^/]+)(?:\/|$)/);return e?e[1]:null}function $r(t){return t.replace(/^(https?:)\/\/raw\.githack\.com\/web-platform-tests\/wpt\/[^/]+\//,"$1//wpt.live/")}function Ie(t,e){if(/^data:/i.test(e))return t||e;if(!e||t.match(/^\w{2,}:/))return t.toLowerCase().match("^javascript:")?"#":(t.match(/^\w{2,}:\/\/[^\/]+$/)&&(t=`${t}/`),t);e.match(/^\w{2,}:\/\/[^\/]+$/)&&(e=`${e}/`);let i;if(t.match(/^\/\//))return i=e.match(/^(\w{2,}:)\/\//),i?i[1]+t:t;if(t.match(/^\//)){let s=Xm(e);return s?s+t:(i=e.match(/^(\w{2,}:\/\/[^\/]+)\//),i?i[1]+t:t)}if(t.match(/^\.(\/|$)/)&&(t=t.substr(2)),e=rd(e),t.match(/^#/))return e+t;let n=e.lastIndexOf("/");if(n<0)return t;let r=e.substr(0,n+1)+t,o="";for(i=r.match(/^([^?#]*)([?#].*)$/),i&&(r=i[1],o=i[2]);n=r.indexOf("/../"),!(n<=0);){let s=r.lastIndexOf("/",n-1);if(s<=0)break;r=r.substr(0,s)+r.substr(n+3)}return r.replace(/\/(\.\/)+/g,"/")+o}function fs(t,e){return t.match(/^#/)&&e?ft(e)+t:Ie(t,e)}function od(t){return/^about:blank($|[?#])/i.test(t)?"data:text/html,":t}function _n(t){let e;return(t=od(t))!==t||((e=/^(https?:)\/\/github\.com\/web-platform-tests\/wpt\/(blob\/|tree\/|raw\/)?(.*)$/.exec(t))?t=`${e[1]}//raw.githack.com/web-platform-tests/wpt/${e[2]?"":"master/"}${e[3]}`:(e=/^(https?:)\/\/github\.com\/([^/]+\/[^/]+)\/(blob\/|tree\/|raw\/)?(.*)$/.exec(t))?t=`${e[1]}//raw.githubusercontent.com/${e[2]}/${e[3]?"":"master/"}${e[4]}`:(e=/^(https?:)\/\/wpt\.live\/(.*)$/.exec(t))?/\.sub\.[^/]+(?:[?#].*)?$/.test(e[2])||(t=`${e[1]}//raw.githack.com/web-platform-tests/wpt/master/${e[2]}`):(e=/^(https?:)\/\/www\.aozora\.gr\.jp\/(cards\/[^/]+\/files\/[^/.]+\.html)$/.exec(t))?t=`${e[1]}//raw.githubusercontent.com/aozorabunko/aozorabunko/master/${e[2]}`:(e=/^(https?:)\/\/gist\.github\.com\/([^/]+\/\w+)(\/|$)(raw(\/|$))?(.*)$/.exec(t))?t=`${e[1]}//gist.githubusercontent.com/${e[2]}/raw/${e[6]}`:(e=/^(https?:)\/\/gist\.github\.com\/([^/]+\/\w+)(?:#|%23)file-(.*)-(\w+)$/.exec(t))?t=`${e[1]}//gist.githubusercontent.com/${e[2]}/raw/${e[3]}.${e[4]}`:(e=/^(https?:)\/\/(?:[^/.]+\.)?jsbin\.com\/(?!(?:blog|help)\b)(\w+)((\/\d+)?).*$/.exec(t))&&(t=`${e[1]}//output.jsbin.com/${e[2]}${e[3]}/`)),t}function iu(t){return t==null?t:t.toString()}var qm=class{constructor(){u(this,"queue",[null])}length(){return this.queue.length-1}add(t){let e=this.queue.length;for(;e>1;){let i=Math.floor(e/2),n=this.queue[i];if(n.compare(t)>0){this.queue[e]=t;return}this.queue[e]=n,e=i}this.queue[1]=t}peek(){return this.queue[1]}remove(){let t=this.queue[1],e=this.queue.pop(),i=this.queue.length;if(i>1){let n=1;for(;;){let r=n*2;if(r>=i)break;if(this.queue[r].compare(e)>0)r+1<i&&this.queue[r+1].compare(this.queue[r])>0&&r++;else if(r+1<i&&this.queue[r+1].compare(e)>0)r++;else break;this.queue[n]=this.queue[r],n=r}this.queue[n]=e}return t}},sd=["","-webkit-","-moz-"],xn={};function Xo(t,e){return CSS.supports(t+e,"unset")}function Ym(t){let e=xn[t];if(e||e===null)return e;switch(t){case"behavior":case"template":case"ua-list-item-count":case"x-first-pseudo":return xn[t]=null,null;case"text-combine-upright":if(Xo("-webkit-","text-combine")&&!Xo("","text-combine-upright"))return xn[t]=["-webkit-text-combine"],["-webkit-text-combine"];break}for(let i of sd)if(Xo(i,t))return e=[i+t],xn[t]=e,e;return Y.warn("Property not supported by the browser: ",t),xn[t]=null,null}function R(t,e,i){let n=t?.style;if(!n)return;if(e.startsWith("--")){n.setProperty(e,i||" ");return}let r=Ym(e);if(r)for(let o of r){switch(o){case"-webkit-text-combine":i==="all"&&(i="horizontal");break;case"text-combine-upright":i==="all"&&n.setProperty("text-indent","0");break}n.setProperty(o,i)}}function Ni(t,e,i){try{let n=xn[e];return t.style.getPropertyValue(n?n[0]:e)}catch{}return i||""}function Zm(t){return t.documentElement}function Wa(t){return t.nextElementSibling}function nu(t){return t.previousElementSibling}var Km=class Ga{constructor(e,i){u(this,"root",e),u(this,"node",i)}static atRoot(e){return new Ga(e,e)}moveTo(e){return e===null?null:new Ga(this.root,e)}get firstChild(){return this.moveTo(this.node.firstChild)}get nextSibling(){return this.moveTo(this.node.nextSibling)}get parent(){if(this.node===this.root)return null;let e=this.node.parentNode;return e===this.root||e===this.root.parentNode?null:this.moveTo(e)}};function ja(t){let e=t.getAttributeNS("http://www.w3.org/XML/1998/namespace","lang");return!e&&t.namespaceURI=="http://www.w3.org/1999/xhtml"&&(e=t.getAttribute("lang")),e}var mi=class{constructor(){u(this,"list",[])}append(t){return this.list.push(t),this}clear(){this.list=[]}toString(){let t=this.list.join("");return this.list=[t],t}};function Kl(t){return`\\${t.charCodeAt(0).toString(16)} `}function Fi(t){return t.replace(/[^-_a-zA-Z0-9\u0080-\uFFFF]/g,Kl)}function ro(t){return t.replace(/[\u0000-\u001F"\\]/g,Kl)}function ru(t){return t.replace(/[\s+&?=#\u007F-\uFFFF]+/g,encodeURIComponent)}function ou(t){return!!t.match(/^[a-zA-Z\u009E\u009F\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u024F\u037B-\u037D\u0386\u0388-\u0482\u048A-\u0527]$/)}function Jm(t,e){return e=typeof e=="string"?e:"\\u",e+(65536|t.charCodeAt(0)).toString(16).substr(1)}function ad(t,e){function i(n){return Jm(n,e)}return t.replace(/[^-a-zA-Z0-9_]/g,i)}function gs(t){return ad(t)}function Qm(t,e){return e=typeof e=="string"?e:"\\u",t.indexOf(e)===0?String.fromCharCode(parseInt(t.substring(e.length),16)):t}function ey(t,e){e=typeof e=="string"?e:"\\u";function i(r){return Qm(r,e)}let n=new RegExp(`${gs(e)}[0-9a-fA-F]{4}`,"g");return t.replace(n,i)}function yi(t,e){let i=0,n=t;for(;;){if(i<=n,i==0||e(i-1),n==t||e(n),i==n)return i;let r=i+n>>1;e(r)?n=r:i=r+1}}function ld(t,e){return t-e}function su(t,e){let i={};for(let n of t){let r=e(n);r&&!i[r]&&(i[r]=n)}return i}function ty(t){let e={};for(let i=0;i<t.length;i++)e[t[i]]=!0;return e}function xa(t,e){let i={};for(let n of t){let r=e(n);r&&(i[r]?i[r].push(n):i[r]=[n])}return i}function iy(t,e){let i={};for(let n in t)i[n]=e(t[n],n);return i}var Jl=class{constructor(){u(this,"listeners",{})}dispatchEvent(t){let e=this.listeners[t.type];if(e){t.target=this,t.currentTarget=this;for(let i=0;i<e.length;i++)e[i](t)}}addEventListener(t,e,i){if(i)return;let n=this.listeners[t];n?n.includes(e)||n.push(e):this.listeners[t]=[e]}removeEventListener(t,e,i){if(i)return;let n=this.listeners[t];if(n){let r=n.indexOf(e);r>=0&&n.splice(r,1)}}},tn={audio:!0,canvas:!0,embed:!0,iframe:!0,img:!0,math:!0,object:!0,picture:!0,svg:!0,video:!0};function hd(){return{fontFamily:"serif",lineHeight:1.25,margin:8,hyphenate:!1,columnWidth:25,horizontal:!1,nightMode:!1,spreadView:!1,pageBorder:1,enabledMediaTypes:{vivliostyle:!0,print:!0},defaultPaperSize:void 0}}function ud(t){return{fontFamily:t.fontFamily,lineHeight:t.lineHeight,margin:t.margin,hyphenate:t.hyphenate,columnWidth:t.columnWidth,horizontal:t.horizontal,nightMode:t.nightMode,spreadView:t.spreadView,pageBorder:t.pageBorder,enabledMediaTypes:Object.assign({},t.enabledMediaTypes),defaultPaperSize:t.defaultPaperSize?Object.assign({},t.defaultPaperSize):void 0}}var Ql=hd(),au={PENDING:{}};function cd(t,e,i,n){let r=Math.min((t-0)/i,(e-0)/n);return`matrix(${r},0,0,${r},0,0)`}function ny(t){return`"${ro(`${t}`)}"`}function ry(t){return Fi(`${t}`)}function Xa(t,e){return t?`${Fi(t)}.${Fi(e)}`:Fi(e)}var dd=0,qa=class{constructor(t,e){if(u(this,"parent",t),u(this,"resolver",e),u(this,"scopeKey"),u(this,"children",[]),u(this,"zero"),u(this,"one"),u(this,"_true"),u(this,"_false"),u(this,"values",{}),u(this,"funcs",{}),u(this,"builtIns",{}),this.scopeKey=`S${dd++}`,this.zero=new it(this,0),this.one=new it(this,1),this._true=new it(this,!0),this._false=new it(this,!1),t&&t.children.push(this),!t){let i=this.builtIns;i.floor=Math.floor,i.ceil=Math.ceil,i.round=Math.round,i.sqrt=Math.sqrt,i.min=Math.min,i.max=Math.max,i.letterbox=cd,i["css-string"]=ny,i["css-name"]=ry,i.typeof=n=>typeof n,this.defineBuiltInName("page-width",function(){return this.pageWidth()}),this.defineBuiltInName("page-height",function(){return this.pageHeight()}),this.defineBuiltInName("pref-font-family",function(){return this.pref.fontFamily}),this.defineBuiltInName("pref-night-mode",function(){return this.pref.nightMode}),this.defineBuiltInName("pref-hyphenate",function(){return this.pref.hyphenate}),this.defineBuiltInName("pref-margin",function(){return this.pref.margin}),this.defineBuiltInName("pref-line-height",function(){return this.pref.lineHeight}),this.defineBuiltInName("pref-column-width",function(){return this.pref.columnWidth*this.fontSize}),this.defineBuiltInName("pref-horizontal",function(){return this.pref.horizontal}),this.defineBuiltInName("pref-spread-view",function(){return this.pref.spreadView}),this.defineBuiltInName("pub-title",function(){return this.pubTitle?this.pubTitle:""}),this.defineBuiltInName("doc-title",function(){return this.docTitle?this.docTitle:""})}}defineBuiltInName(t,e){this.values[t]=new be(this,e,t)}defineName(t,e){this.values[t]=e}defineFunc(t,e){this.funcs[t]=e}defineBuiltIn(t,e){this.builtIns[t]=e}};function oy(t){switch(t?.toLowerCase()){case"px":case"in":case"pt":case"pc":case"cm":case"mm":case"q":return!0;default:return!1}}function pd(t){switch(t?.toLowerCase()){case"vw":case"vh":case"vi":case"vb":case"vmin":case"vmax":case"pvw":case"pvh":case"pvi":case"pvb":case"pvmin":case"pvmax":return!0;default:return!1}}function sy(t){switch(t?.toLowerCase()){case"em":case"rem":case"lh":case"rlh":return!0;default:return!1}}function ay(t){switch(t?.toLowerCase()){case"rem":case"rlh":return!0;default:return!1}}var vi={px:1,in:96,pt:4/3,pc:96/6,cm:96/2.54,mm:96/25.4,q:96/2.54/40,em:16,rem:16,lh:20,rlh:20,dppx:1,dpi:1/96,dpcm:2.54/96};function fd(t){switch(t){case"q":return!CSS.supports("font-size","1q");case"lh":return!CSS.supports("line-height","1lh");case"rem":case"rlh":return!0;default:return!1}}var Ya=class{constructor(t,e,i,n,r){u(this,"rootScope",t),u(this,"viewportWidth",e),u(this,"viewportHeight",i),u(this,"actualPageWidth",null),u(this,"pageWidth"),u(this,"actualPageHeight",null),u(this,"pageHeight"),u(this,"initialFontSize"),u(this,"rootFontSize",null),u(this,"isRelativeRootFontSize",null),u(this,"fontSize"),u(this,"rootLineHeight"),u(this,"isRootLineHeightFromRelativeCalc",!1),u(this,"pref"),u(this,"scopes",{}),u(this,"pageAreaWidth",null),u(this,"pageAreaHeight",null),u(this,"pageVertical",null),u(this,"pubTitle",null),u(this,"docTitle",null),this.pageWidth=function(){return this.actualPageWidth?this.actualPageWidth:this.pref.spreadView?Math.floor(e/2)-this.pref.pageBorder:e},this.pageHeight=function(){return this.actualPageHeight?this.actualPageHeight:i},this.initialFontSize=n,this.rootLineHeight=r,this.fontSize=function(){return this.rootFontSize?this.rootFontSize:n},this.pref=Ql}getScopeContext(t){let e=this.scopes[t.scopeKey];return e||(e={},this.scopes[t.scopeKey]=e),e}clearScope(t){this.scopes[t.scopeKey]={};for(let e=0;e<t.children.length;e++)this.clearScope(t.children[e])}queryUnitSize(t,e,i){if(pd(t)){let n=this.pageWidth()/100,r=this.pageHeight()/100,o=this.pageAreaWidth!=null?this.pageAreaWidth/100:n,s=this.pageAreaHeight!=null?this.pageAreaHeight/100:r,a=i??this.pageVertical;switch(t){case"vw":return o;case"vh":return s;case"vi":return a?s:o;case"vb":return a?o:s;case"vmin":return o<s?o:s;case"vmax":return o>s?o:s;case"pvw":return n;case"pvh":return r;case"pvi":return a?r:n;case"pvb":return a?n:r;case"pvmin":return n<r?n:r;case"pvmax":return n>r?n:r}}return t=="em"||t=="rem"?e?this.initialFontSize:this.fontSize():t=="lh"||t=="rlh"?this.rootLineHeight:vi[t]}evalName(t,e){let i=t;for(;i;){let n=i.values[e];if(n||i.resolver&&(n=i.resolver.call(this,e,!1),n))return n;i=i.parent}throw new Error(`Name '${e}' is undefined`)}evalCall(t,e,i,n){let r=t;for(;r;){let o=r.funcs[e];if(o||r.resolver&&(o=r.resolver.call(this,e,!0),o))return o;let s=r.builtIns[e];if(s){if(n)return r.zero;let a=Array(i.length);for(let h=0;h<i.length;h++)a[h]=i[h].evaluate(this);return new it(r,s.apply(this,a))}r=r.parent}throw new Error(`Function '${e}' is undefined`)}evalMediaName(t,e){let i=t==="all"||!!this.pref.enabledMediaTypes[t];return e?!i:i}evalMediaTest(t,e){let i="",n=t.match(/^(min|max)-(.*)$/);n&&(i=n[1],t=n[2]);let r=null,o=null;switch(t){case"width":case"height":case"device-width":case"device-height":case"color":e&&(r=e.evaluate(this));break}switch(t){case"width":o=this.pageWidth();break;case"height":o=this.pageHeight();break;case"device-width":o=window.screen.availWidth;break;case"device-height":o=window.screen.availHeight;break;case"color":o=window.screen.pixelDepth;break}if(o!=null&&r!=null)switch(i){case"min":return o>=Number(r);case"max":return o<=Number(r);default:return o==r}else if(o!=null&&e==null)return o!==0;return!1}evalSupportsTest(t,e,i){return!1}queryVal(t,e){let i=this.scopes[t.scopeKey];return i?i[e]:void 0}storeVal(t,e,i){this.getScopeContext(t)[e]=i}},Kt=class{constructor(t){u(this,"scope",t),u(this,"key"),this.key=`_${dd++}`}toString(){let t=new mi;return this.appendTo(t,0),t.toString()}expand(t,e){return this}dependCore(t,e,i){return t===this}dependOuter(t,e,i){let n=i[this.key];if(n!=null)return n===au.PENDING?!1:n;{i[this.key]=au.PENDING;let r=this.dependCore(t,e,i);return i[this.key]=r,r}}depend(t,e){return this.dependOuter(t,e,{})}evaluate(t){let e=t.queryVal(this.scope,this.key);return typeof e<"u"||(e=this.evaluateCore(t),t.storeVal(this.scope,this.key,e)),e}isMediaName(){return!1}},gd=class extends Kt{constructor(t,e){super(t),u(this,"val",e)}evaluateCore(t){let e=this.val.evaluate(t);return this.evalPrefix(e)}dependCore(t,e,i){return t===this||this.val.dependOuter(t,e,i)}appendTo(t,e){10<e&&t.append("("),t.append(this.getOp()),this.val.appendTo(t,10),10<e&&t.append(")")}expand(t,e){let i=this.val.expand(t,e);return i===this.val?this:new this.constructor(this.scope,i)}},md=class extends Kt{constructor(t,e,i){super(t),u(this,"lhs",e),u(this,"rhs",i)}dependCore(t,e,i){return t===this||this.lhs.dependOuter(t,e,i)||this.rhs.dependOuter(t,e,i)}appendTo(t,e){let i=this.getPriority();i<=e&&t.append("("),this.lhs.appendTo(t,i),t.append(this.getOp()),this.rhs.appendTo(t,i),i<=e&&t.append(")")}expand(t,e){let i=this.lhs.expand(t,e),n=this.rhs.expand(t,e);return i===this.lhs&&n===this.rhs?this:new this.constructor(this.scope,i,n)}},eh=class extends md{evaluateCore(t){let e=this.lhs.evaluate(t),i=this.rhs.evaluate(t);return this.evalInfix(e,i)}},yd=class extends md{constructor(t,e,i){super(t,e,i)}getPriority(){return 1}},Zn=class extends eh{constructor(t,e,i){super(t,e,i)}getPriority(){return 2}},vd=class extends eh{constructor(t,e,i){super(t,e,i)}getPriority(){return 3}},th=class extends eh{constructor(t,e,i){super(t,e,i)}getPriority(){return 4}},Ri=class extends gd{constructor(t,e){super(t,e)}getOp(){return"!"}evalPrefix(t){return!t}},ly=class extends Ri{constructor(t,e){super(t,e)}getOp(){return"not "}},In=class extends gd{constructor(t,e){super(t,e)}getOp(){return"-"}evalPrefix(t){return-t}},ih=class extends yd{constructor(t,e,i){super(t,e,i)}getOp(){return"&&"}evaluateCore(t){return this.lhs.evaluate(t)&&this.rhs.evaluate(t)}},hy=class extends ih{constructor(t,e,i){super(t,e,i)}getOp(){return" and "}},nh=class extends yd{constructor(t,e,i){super(t,e,i)}getOp(){return"||"}evaluateCore(t){return this.lhs.evaluate(t)||this.rhs.evaluate(t)}},uy=class extends nh{constructor(t,e,i){super(t,e,i)}getOp(){return", "}},cy=class extends nh{constructor(t,e,i){super(t,e,i)}getOp(){return" or "}},dy=class extends Zn{constructor(t,e,i){super(t,e,i)}getOp(){return"<"}evalInfix(t,e){return t<e}},py=class extends Zn{constructor(t,e,i){super(t,e,i)}getOp(){return"<="}evalInfix(t,e){return t<=e}},fy=class extends Zn{constructor(t,e,i){super(t,e,i)}getOp(){return">"}evalInfix(t,e){return t>e}},Za=class extends Zn{constructor(t,e,i){super(t,e,i)}getOp(){return">="}evalInfix(t,e){return t>=e}},rh=class extends Zn{constructor(t,e,i){super(t,e,i)}getOp(){return"=="}evalInfix(t,e){return t==e}},gy=class extends Zn{constructor(t,e,i){super(t,e,i)}getOp(){return"!="}evalInfix(t,e){return t!=e}},wd=class extends vd{constructor(t,e,i){super(t,e,i)}getOp(){return"+"}evalInfix(t,e){return t+e}},bd=class extends vd{constructor(t,e,i){super(t,e,i)}getOp(){return" - "}evalInfix(t,e){return t-e}},oh=class extends th{constructor(t,e,i){super(t,e,i)}getOp(){return"*"}evalInfix(t,e){return t*e}},xd=class extends th{constructor(t,e,i){super(t,e,i)}getOp(){return"/"}evalInfix(t,e){return t/e}},Sd=class extends th{constructor(t,e,i){super(t,e,i)}getOp(){return"%"}evalInfix(t,e){return t%e}},oo=class extends Kt{constructor(t,e,i){var n;super(t),u(this,"num",e),u(this,"unit"),this.unit=(n=i?.toLowerCase())!=null?n:""}appendTo(t,e){t.append(this.num.toString()),t.append(Fi(this.unit))}evaluateCore(t){return this.num*t.queryUnitSize(this.unit,!1)}},Qe=class extends Kt{constructor(t,e){super(t),u(this,"qualifiedName",e)}appendTo(t,e){t.append(this.qualifiedName)}evaluateCore(t){return t.evalName(this.scope,this.qualifiedName).evaluate(t)}dependCore(t,e,i){return t===this||e.evalName(this.scope,this.qualifiedName).dependOuter(t,e,i)}},lu=class extends Kt{constructor(t,e,i){super(t),u(this,"not",e),u(this,"name",i)}appendTo(t,e){this.not&&t.append("not "),t.append(Fi(this.name))}evaluateCore(t){return t.evalMediaName(this.name,this.not)}isMediaName(){return!0}},be=class extends Kt{constructor(t,e,i){super(t),u(this,"fn",e),u(this,"str",i)}appendTo(t,e){t.append(this.str)}evaluateCore(t){return this.fn.call(t)}};function my(t,e){t.append("(");for(let i=0;i<e.length;i++)i&&t.append(","),e[i].appendTo(t,0);t.append(")")}function yy(t,e,i){let n=e;for(let r=0;r<e.length;r++){let o=e[r].expand(t,i);if(e!==n)n[r]=o;else if(o!==e[r]){n=Array(e.length);for(let s=0;s<r;s++)n[s]=e[s];n[r]=o}}return n}var Er=class Cd extends Kt{constructor(e,i,n){super(e),u(this,"qualifiedName",i),u(this,"params",n)}appendTo(e,i){e.append(this.qualifiedName),my(e,this.params)}evaluateCore(e){return e.evalCall(this.scope,this.qualifiedName,this.params,!1).expand(e,this.params).evaluate(e)}dependCore(e,i,n){if(e===this)return!0;for(let r=0;r<this.params.length;r++)if(this.params[r].dependOuter(e,i,n))return!0;return i.evalCall(this.scope,this.qualifiedName,this.params,!0).dependOuter(e,i,n)}expand(e,i){let n=yy(e,this.params,i);return n===this.params?this:new Cd(this.scope,this.qualifiedName,n)}},vy=class kd extends Kt{constructor(e,i,n,r){super(e),u(this,"cond",i),u(this,"ifTrue",n),u(this,"ifFalse",r)}appendTo(e,i){i>0&&e.append("("),this.cond.appendTo(e,0),e.append("?"),this.ifTrue.appendTo(e,0),e.append(":"),this.ifFalse.appendTo(e,0),i>0&&e.append(")")}evaluateCore(e){return this.cond.evaluate(e)?this.ifTrue.evaluate(e):this.ifFalse.evaluate(e)}dependCore(e,i,n){return e===this||this.cond.dependOuter(e,i,n)||this.ifTrue.dependOuter(e,i,n)||this.ifFalse.dependOuter(e,i,n)}expand(e,i){let n=this.cond.expand(e,i),r=this.ifTrue.expand(e,i),o=this.ifFalse.expand(e,i);return n===this.cond&&r===this.ifTrue&&o===this.ifFalse?this:new kd(this.scope,n,r,o)}},it=class extends Kt{constructor(t,e){super(t),u(this,"val",e)}appendTo(t,e){switch(typeof this.val){case"number":case"boolean":t.append(this.val.toString());break;case"string":t.append('"'),t.append(ro(this.val)),t.append('"');break;default:throw new Error("F_UNEXPECTED_STATE")}}evaluateCore(t){return this.val}},hu=class Pd extends Kt{constructor(e,i,n){super(e),u(this,"name",i),u(this,"value",n)}appendTo(e,i){e.append("("),e.append(ro(this.name.name)),e.append(":"),this.value.appendTo(e,0),e.append(")")}evaluateCore(e){return e.evalMediaTest(this.name.name,this.value)}dependCore(e,i,n){return e===this||this.value.dependOuter(e,i,n)}expand(e,i){let n=this.value.expand(e,i);return n===this.value?this:new Pd(this.scope,this.name,n)}},wy=class extends Kt{constructor(t,e,i,n){super(t),u(this,"name",e),u(this,"value",i),u(this,"isFunc",n)}appendTo(t,e){this.isFunc&&t.append(this.name),t.append("("),!this.isFunc&&this.name&&(t.append(this.name),t.append(":")),t.append(this.value),t.append(")")}evaluateCore(t){return t.evalSupportsTest(this.name,this.value,this.isFunc)}},Ed=class extends Kt{constructor(t,e){super(t),u(this,"index",e)}appendTo(t,e){t.append("$"),t.append(this.index.toString())}evaluateCore(t){throw new Error(`Parameter not expanded: ${this.index}`)}expand(t,e){let i=e[this.index];if(!i)throw new Error(`Parameter missing: ${this.index}`);return i}};function Xt(t,e,i){return e===t._false||e===t.zero||i==t._false||i==t.zero?t._false:e===t._true||e===t.one?i:i===t._true||i===t.one?e:new ih(t,e,i)}function re(t,e,i){return e===t.zero?i:i===t.zero?e:new wd(t,e,i)}function we(t,e,i){return e===t.zero?new In(t,i):i===t.zero?e:new bd(t,e,i)}function qo(t,e,i){return e===t.zero||i===t.zero?t.zero:e===t.one?i:i===t.one?e:new oh(t,e,i)}function Ka(t,e,i){return e===t.zero?t.zero:i===t.one?e:new xd(t,e,i)}var Zt=class{visitValues(t){for(let e=0;e<t.length;e++)t[e].visit(this);return null}visitEmpty(t){return null}visitSlash(t){return null}visitStr(t){return null}visitIdent(t){return null}visitNumeric(t){return null}visitNum(t){return null}visitInt(t){return this.visitNum(t)}visitHexColor(t){return null}visitURL(t){return null}visitURange(t){return null}visitSpaceList(t){return this.visitValues(t.values),null}visitCommaList(t){return this.visitValues(t.values),null}visitFunc(t){return this.visitValues(t.values),null}visitExpr(t){return null}},dn=class extends Zt{constructor(){super(),u(this,"error",!1)}visitValues(t){let e=null;for(let i=0;i<t.length;i++){let n=t[i],r=n.visit(this);if(this.error)return[];if(e)e[i]=r;else if(n!==r){e=new Array(t.length);for(let o=0;o<i;o++)e[o]=t[o];e[i]=r}}return e||t}visitEmpty(t){return t}visitStr(t){return t}visitIdent(t){return t}visitSlash(t){return t}visitNumeric(t){return t}visitNum(t){return t}visitInt(t){return t}visitHexColor(t){return t}visitURL(t){return t}visitURange(t){return t}visitSpaceList(t){let e=this.visitValues(t.values);return this.error?Ae:e===t.values?t:new ee(e)}visitCommaList(t){let e=this.visitValues(t.values);return this.error?Ae:e===t.values?t:new Be(e)}visitFunc(t){let e=this.visitValues(t.values);return this.error?Ae:e===t.values?t:new Vt(t.name,e)}visitExpr(t){return t}},ot=class{toString(){let t=new mi;return this.appendTo(t,!0),t.toString()}stringValue(){let t=new mi;return this.appendTo(t,!1),t.toString()}toExpr(t,e){return null}appendTo(t,e){t.append("[error]")}isExpr(){return!1}isNumeric(){return!1}isNum(){return!1}isIdent(){return!1}isSpaceList(){return!1}visit(t){return this}},Nd=class Td extends ot{static get instance(){return this.empty||(this.empty=new Td),this.empty}constructor(){super()}toExpr(e,i){return new it(e,"")}appendTo(e,i){}visit(e){return e.visitEmpty(this)}};u(Nd,"empty");var by=Nd,Ae=by.instance,Id=class Ad extends ot{static get instance(){return this.slash||(this.slash=new Ad),this.slash}constructor(){super()}toExpr(e,i){return new it(e,"/")}appendTo(e,i){e.append("/")}visit(e){return e.visitSlash(this)}};u(Id,"slash");var xy=Id,Kn=xy.instance,K=class extends ot{constructor(t){super(),u(this,"str",t)}toExpr(t,e){return new it(t,this.str)}appendTo(t,e){e?(t.append('"'),t.append(ro(this.str)),t.append('"')):t.append(this.str)}visit(t){return t.visitStr(this)}},Ja=Object.create(null),he=class extends ot{constructor(t){if(super(),u(this,"name",t),Ja[t])throw new Error("E_INVALID_CALL");Ja[t]=this}toExpr(t,e){return new it(t,this.name)}appendTo(t,e){e?t.append(Fi(this.name)):t.append(this.name)}visit(t){return t.visitIdent(this)}isIdent(){return!0}};function _(t){let e=Ja[t];return e||(e=new he(t)),e}var B=class extends ot{constructor(t,e){var i;super(),u(this,"num",t),u(this,"unit"),this.unit=(i=e?.toLowerCase())!=null?i:""}toExpr(t,e){return this.num==0?t.zero:e&&this.unit=="%"?this.num==100?e:new oh(t,e,new it(t,this.num/100)):new oo(t,this.num,this.unit)}appendTo(t,e){t.append(this.num.toString()),t.append(this.unit)}visit(t){return t.visitNumeric(this)}isNumeric(){return!0}},It=class extends ot{constructor(t){super(),u(this,"num",t)}toExpr(t,e){return this.num==0?t.zero:this.num==1?t.one:new it(t,this.num)}appendTo(t,e){t.append(this.num.toString())}visit(t){return t.visitNum(this)}isNum(){return!0}},ht=class extends It{constructor(t){super(t)}visit(t){return t.visitInt(this)}},Fd=class extends ot{constructor(t){super(),u(this,"hex",t)}appendTo(t,e){t.append("#"),t.append(this.hex)}visit(t){return t.visitHexColor(this)}},et=class extends ot{constructor(t){super(),u(this,"url",t)}appendTo(t,e){t.append('url("'),t.append(ro(this.url)),t.append('")')}visit(t){return t.visitURL(this)}},Rd=class extends ot{constructor(t){super(),u(this,"urangeText",t)}appendTo(t,e){t.append(this.urangeText)}visit(t){return t.visitURange(this)}};function sh(t,e,i,n){var r,o;let s=e.length;if(s>0){(r=e[0])==null||r.appendTo(t,n);for(let a=1;a<s;a++)t.append(i),(o=e[a])==null||o.appendTo(t,n)}}var ee=class extends ot{constructor(t){super(),u(this,"values",t)}appendTo(t,e){sh(t,this.values," ",e)}visit(t){return t.visitSpaceList(this)}isSpaceList(){return!0}},Be=class extends ot{constructor(t){super(),u(this,"values",t)}appendTo(t,e){sh(t,this.values,",",e)}visit(t){return t.visitCommaList(this)}},Vt=class extends ot{constructor(t,e){super(),u(this,"name",t),u(this,"values",e)}appendTo(t,e){t.append(Fi(this.name)),t.append("("),sh(t,this.values,",",e),t.append(")")}visit(t){return t.visitFunc(this)}},j=class extends ot{constructor(t){super(),u(this,"expr",t)}toExpr(){return this.expr}appendTo(t,e){this.expr instanceof it||this.expr instanceof oo?this.expr.appendTo(t,0):(t.append("-epubx-expr("),this.expr.appendTo(t,0),t.append(")"))}visit(t){return t.visitExpr(this)}isExpr(){return!0}},Sn=class extends ot{constructor(t){super(),u(this,"text",t)}appendTo(t,e){t.append(this.text||" ")}};function ct(t,e){if(t){if(t.isNumeric()){let i=t;return e.queryUnitSize(i.unit,!1)*i.num}if(t.isNum())return t.num}return 0}function Ld(t,e){return new B(ct(t,e),"px")}var w={absolute:_("absolute"),all:_("all"),always:_("always"),anywhere:_("anywhere"),auto:_("auto"),avoid:_("avoid"),balance:_("balance"),balance_all:_("balance-all"),block:_("block"),block_end:_("block-end"),block_start:_("block-start"),both:_("both"),bottom:_("bottom"),border_box:_("border-box"),break_all:_("break-all"),break_word:_("break-word"),clip:_("clip"),crop:_("crop"),cross:_("cross"),column:_("column"),discard:_("discard"),exclusive:_("exclusive"),_false:_("false"),fixed:_("fixed"),flex:_("flex"),flow_root:_("flow-root"),footnote:_("footnote"),footer:_("footer"),grid:_("grid"),header:_("header"),hidden:_("hidden"),horizontal_tb:_("horizontal-tb"),inherit:_("inherit"),initial:_("initial"),inline:_("inline"),inline_block:_("inline-block"),inline_end:_("inline-end"),inline_start:_("inline-start"),inside:_("inside"),keep:_("keep"),landscape:_("landscape"),left:_("left"),line:_("line"),list_item:_("list-item"),ltr:_("ltr"),manual:_("manual"),max_content:_("max-content"),min_content:_("min-content"),none:_("none"),normal:_("normal"),oeb_page_foot:_("oeb-page-foot"),oeb_page_head:_("oeb-page-head"),outside:_("outside"),padding_box:_("padding-box"),page:_("page"),relative:_("relative"),revert:_("revert"),revert_layer:_("revert-layer"),revert_rule:_("revert-rule"),right:_("right"),same:_("same"),scale:_("scale"),snap_block:_("snap-block"),snap_inline:_("snap-inline"),solid:_("solid"),spread:_("spread"),_static:_("static"),rtl:_("rtl"),table:_("table"),table_caption:_("table-caption"),table_cell:_("table-cell"),table_footer_group:_("table-footer-group"),table_header_group:_("table-header-group"),table_row:_("table-row"),top:_("top"),transparent:_("transparent"),unset:_("unset"),vertical_lr:_("vertical-lr"),vertical_rl:_("vertical-rl"),visible:_("visible"),_true:_("true")},uu=new B(100,"%"),so=new B(100,"pvw"),ao=new B(100,"pvh"),Oe=new B(0,"px"),Ak=new Rd("U+0-10FFFF"),cu={"font-size":1,"line-height":2,color:3};function Z(t){return t===w.inherit||t===w.initial||t===w.unset||Rt(t)}function Rt(t){return t===w.revert||t===w.revert_layer||t===w.revert_rule}var Sy=class extends Zt{constructor(){super(...arguments),u(this,"found",!1)}visitIdent(t){return Rt(t)&&(this.found=!0),null}};function Cy(t){let e=new Sy;return t.visit(e),e.found}function du(t,e){let i=cu[t]||Number.MAX_VALUE,n=cu[e]||Number.MAX_VALUE;return i-n}function ze(t){return t!=null&&t.length>2&&t.startsWith("--")}var Cn,kn,Pn,Od=class hi{constructor(e,i,n){ne(this,Cn),ne(this,kn),ne(this,Pn),pe(this,Cn,Math.round(Math.max(0,Math.min(e,hi.MAX)))),pe(this,kn,Math.round(Math.max(0,Math.min(i,hi.MAX)))),pe(this,Pn,Math.round(Math.max(0,Math.min(n,hi.MAX))))}static fromInt(e,i,n){return new hi(e,i,n)}offset(e,i,n){return new hi(U(this,Cn)+e,U(this,kn)+i,U(this,Pn)+n)}toKey(){return JSON.stringify([U(this,Cn),U(this,kn),U(this,Pn)])}toColorFunc(e){return new Vt("color",[new ee([_("srgb"),new It(U(this,Cn)/hi.MAX),new It(U(this,kn)/hi.MAX),new It(U(this,Pn)/hi.MAX),...e!==null?[Kn,new It(e)]:[]])])}};Cn=new WeakMap,kn=new WeakMap,Pn=new WeakMap,u(Od,"MAX",1e4);var ci=Od;function ky(t){return Array.isArray(t)?t.every(e=>{if(!Array.isArray(e)||e.length!==2)return!1;let[i,n]=e;if(!i||typeof i!="object"||Array.isArray(i)||!n||typeof n!="object"||Array.isArray(n))return!1;let r=i,o=n;return Number.isFinite(r.r)&&Number.isFinite(r.g)&&Number.isFinite(r.b)&&Number.isFinite(o.c)&&Number.isFinite(o.m)&&Number.isFinite(o.y)&&Number.isFinite(o.k)}):!1}var ji,Xi,qi,ti,Bd=class yt{constructor(e,i,n,r){ne(this,ji),ne(this,Xi),ne(this,qi),ne(this,ti),pe(this,ji,Math.round(Math.max(0,Math.min(e,yt.MAX)))),pe(this,Xi,Math.round(Math.max(0,Math.min(i,yt.MAX)))),pe(this,qi,Math.round(Math.max(0,Math.min(n,yt.MAX)))),pe(this,ti,Math.round(Math.max(0,Math.min(r,yt.MAX))))}static fromInt(e,i,n,r){return new yt(e,i,n,r)}static fromNumber(e,i,n,r){return new yt(e*yt.MAX,i*yt.MAX,n*yt.MAX,r*yt.MAX)}toSRGB(){let e=yt.MAX-U(this,ti);return ci.fromInt(ci.MAX-Math.min(ci.MAX,Math.round(U(this,ji)*e/yt.MAX)+U(this,ti)),ci.MAX-Math.min(ci.MAX,Math.round(U(this,Xi)*e/yt.MAX)+U(this,ti)),ci.MAX-Math.min(ci.MAX,Math.round(U(this,qi)*e/yt.MAX)+U(this,ti)))}equals(e){return U(this,ji)===U(e,ji)&&U(this,Xi)===U(e,Xi)&&U(this,qi)===U(e,qi)&&U(this,ti)===U(e,ti)}toJSON(){return{c:U(this,ji),m:U(this,Xi),y:U(this,qi),k:U(this,ti)}}};ji=new WeakMap,Xi=new WeakMap,qi=new WeakMap,ti=new WeakMap,u(Bd,"MAX",1e4);var Md=Bd;function yn(t){return t instanceof It?Math.max(0,Math.min(1,t.num)):t instanceof B&&t.unit==="%"?Math.max(0,Math.min(1,t.num/100)):null}function _d(t){if(t.name!=="device-cmyk"&&t.name!=="cmyk")return null;let e=t.values.length===1?t.values[0]:null,i=e instanceof ee?e.values:t.values;if(i.length<4||i.length>6)return null;let n=yn(i[0]),r=yn(i[1]),o=yn(i[2]),s=yn(i[3]);if(n===null||r===null||o===null||s===null)return null;let a=null;if(i.length>=5){if(i[4]===Kn){if(i.length!==6)return null;a=yn(i[5])}else{if(i.length!==5)return null;a=yn(i[4])}if(a===null)return null}return{cmyk:Md.fromNumber(n,r,o,s),alpha:a}}function*Py(t){for(let e=-t;e<=t;e++)for(let i=-t;i<=t;i++)for(let n=-t;n<=t;n++)Math.abs(e)+Math.abs(i)+Math.abs(n)===t&&(yield[e,i,n])}var Pi,ms,Dd,pu,zd=class{constructor(){ne(this,ms),ne(this,Pi,new Map)}registerDeviceCmyk(t){let e=_d(t);return e?le(this,ms,Dd).call(this,e.cmyk).toColorFunc(e.alpha):null}registerCmykReserveMap(t){for(let[e,i]of t){let n=ci.fromInt(e.r,e.g,e.b),r=Md.fromInt(i.c,i.m,i.y,i.k);U(this,Pi).set(n.toKey(),r)}}toJSON(){let t={};return U(this,Pi).forEach((e,i)=>{t[i]=e.toJSON()}),t}};Pi=new WeakMap,ms=new WeakSet,Dd=function(t){let e=t.toSRGB(),i=e.toKey(),n=U(this,Pi).get(i);return n?n.equals(t)?e:le(this,ms,pu).call(this,t,e):(U(this,Pi).set(i,t),e)},pu=function(t,e){for(let i=1;i<=ci.MAX;i++)for(let[n,r,o]of Py(i)){let s=e.offset(n,r,o),a=s.toKey();if(!U(this,Pi).has(a))return U(this,Pi).set(a,t),s}return Y.warn(`CmykStore: Exceeded trackable color limit for ${JSON.stringify(t.toJSON())}`),e};var Yo,fr,gr,Vd=class extends dn{constructor(t){super(),ne(this,Yo),ne(this,fr,new Map),ne(this,gr,!1),pe(this,Yo,t??new zd)}reset(){pe(this,gr,!1)}hadDeviceCmyk(){return U(this,gr)}recordConversion(t,e){U(this,fr).set(t,e)}getConversions(){if(U(this,fr).size===0)return null;let t={};return U(this,fr).forEach((e,i)=>{t[i]=e}),t}visitFunc(t){let e=U(this,Yo).registerDeviceCmyk(t);return e?(pe(this,gr,!0),e):super.visitFunc(t)}};Yo=new WeakMap,fr=new WeakMap,gr=new WeakMap;function $d(t){if(t.nodeType==1){let e=t.getAttribute("id");if(e)return e}return null}function Ey(t){return`^${t}`}function fu(t){return t.replace(/[\[\]\(\),=;^]/g,Ey)}function Ny(t){return t.substr(1)}function Qa(t){return t&&t.replace(/\^[\[\]\(\),=;^]/g,Ny)}function Ty(t){let e=[];do{let i=t.match(/^(\^,|[^,])*/),n=Qa(i[0]);if(t=t.substr(i[0].length+1),!t&&!e.length)return n;e.push(n)}while(t);return e}function gu(t){let e={};for(;t;){let i=t.match(/^;([^;=]+)=(([^;]|\^;)*)/);if(!i)return e;e[i[1]]=Ty(i[2]),t=t.substr(i[0].length)}return e}var mu=class{appendTo(t){t.append("!")}applyTo(t){return!1}},yu=class{constructor(t,e,i){u(this,"index",t),u(this,"id",e),u(this,"sideBias",i)}appendTo(t){t.append("/"),t.append(this.index.toString()),(this.id||this.sideBias)&&(t.append("["),this.id&&t.append(this.id),this.sideBias&&(t.append(";s="),t.append(this.sideBias)),t.append("]"))}applyTo(t){if(t.node.nodeType!=1)throw new Error("E_CFI_NOT_ELEMENT");let e=t.node,i=e.children,n=i.length,r,o=Math.floor(this.index/2)-1;if(o<0||n==0)r=e.firstChild,t.node=r||e;else{if(r=i[Math.min(o,n-1)],this.index&1){let s=r.nextSibling;!s||s.nodeType==1?t.after=!0:r=s}t.node=r}if(this.id&&(t.after||this.id!=$d(t.node))){let s=e.ownerDocument.getElementById(this.id);s?t.node=s:Y.warn("E_CFI_ID_MISMATCH:",this.id)}return t.sideBias=this.sideBias,!0}},vu=class{constructor(t,e,i,n){u(this,"offset",t),u(this,"textBefore",e),u(this,"textAfter",i),u(this,"sideBias",n)}applyTo(t){if(this.offset>0&&!t.after){let e=this.offset,i=t.node;for(;;){let n=i.nodeType;if(n==1)break;let r=i.nextSibling;if(3<=n&&n<=5){let o=i.textContent.length;if(e<=o)break;if(!r){e=o;break}e-=o}if(!r){e=0;break}i=r}t.node=i,t.offset=e}return t.sideBias=this.sideBias,!0}appendTo(t){t.append(":"),t.append(this.offset.toString()),(this.textBefore||this.textAfter||this.sideBias)&&(t.append("["),(this.textBefore||this.textAfter)&&(this.textBefore&&t.append(fu(this.textBefore)),t.append(","),this.textAfter&&t.append(fu(this.textAfter))),this.sideBias&&(t.append(";s="),t.append(this.sideBias)),t.append("]"))}},wu=class Hd{constructor(){u(this,"steps",null)}fromString(e){var i,n,r;let o=e.match(/^#?epubcfi\((.*)\)$/);if(!o)throw new Error("E_CFI_NOT_CFI");let s=decodeURIComponent(o[1]),a=0,h=[];for(;;){let l;switch(s.charAt(a)){case"/":{if(a++,o=s.substr(a).match(/^(0|[1-9][0-9]*)(\[(.*?)(;([^\]]|\^\])*)?\])?/),!o)throw new Error("E_CFI_NUMBER_EXPECTED");a+=o[0].length;let c=parseInt(o[1],10),d=(i=o[3])!=null?i:null;l=gu(o[4]),h.push(new yu(c,d,iu(l.s)));break}case":":{if(a++,o=s.substr(a).match(/^(0|[1-9][0-9]*)(\[((([^\];,]|\^[\];,])*)(,(([^\];,]|\^[\];,])*))?)(;([^]]|\^\])*)?\])?/),!o)throw new Error("E_CFI_NUMBER_EXPECTED");a+=o[0].length;let c=parseInt(o[1],10),d=(n=o[4])!=null?n:null;d&&(d=Qa(d));let p=(r=o[7])!=null?r:null;p&&(p=Qa(p)),l=gu(o[10]),h.push(new vu(c,d,p,iu(l.s)));break}case"!":a++,h.push(new mu);break;case"~":case"@":case"":this.steps=h;return;default:throw new Error("E_CFI_PARSE_ERROR")}}}navigate(e){let i={node:e.documentElement,offset:0,after:!1,sideBias:null,ref:null};for(let n=0;n<this.steps.length;n++)if(!this.steps[n].applyTo(i)){i.ref=new Hd,i.ref.steps=this.steps.slice(n+1);break}return i}trim(e,i){return e.replace(/\s+/g," ").match(i?/^[ -\uD7FF\uE000-\uFFFF]{0,8}/:/[ -\uD7FF\uE000-\uFFFF]{0,8}$/)[0].replace(/^\s/,"").replace(/\s$/,"")}prependPathFromNode(e,i,n,r){let o=[],s=e.parentNode,a="",h="";for(;e;){switch(e.nodeType){case 3:case 4:case 5:{let l=e.textContent,c=l.length;n?(i+=c,a||(a=l)):(i>c&&(i=c),n=!0,a=l.substr(0,i),h=l.substr(i)),e=e.previousSibling;continue}case 8:e=e.previousSibling;continue}break}for((i>0||a||h)&&(a=this.trim(a,!1),h=this.trim(h,!0),o.push(new vu(i,a,h,r)),r=null);s&&!(!s||s.nodeType==9);){let l=n?null:$d(e),c=n?1:0;for(;e;)e.nodeType==1&&(c+=2),e=e.previousSibling;o.push(new yu(c,l,r)),r=null,e=s,s=s.parentNode,n=!1}o.reverse(),this.steps?(o.push(new mu),this.steps=o.concat(this.steps)):this.steps=o}toString(){if(!this.steps)return"";let e=new mi;e.append("epubcfi(");for(let i=0;i<this.steps.length;i++)this.steps[i].appendTo(e);return e.append(")"),e.toString().replace(/%/g,"%25")}},Dt=class{constructor(t,e,i,n){u(this,"x1",t),u(this,"y1",e),u(this,"x2",i),u(this,"y2",n)}},Ti=class{constructor(t,e){u(this,"x",t),u(this,"y",e)}},Sa=class{constructor(t,e,i,n){u(this,"left",t),u(this,"top",e),u(this,"right",i),u(this,"bottom",n)}},bu=class{constructor(t,e,i,n){u(this,"low",t),u(this,"high",e),u(this,"winding",i),u(this,"shapeId",n)}},fi=class{constructor(t,e,i,n){u(this,"y1",t),u(this,"y2",e),u(this,"x1",i),u(this,"x2",n),u(this,"left",null),u(this,"right",null)}};function Iy(t,e){return t.low.y-e.low.y||t.low.x-e.low.x}var Zs=class Ud{constructor(e){u(this,"points",e)}addSegments(e,i){let n=this.points,r=n.length,o=n[r-1];for(let s=0;s<r;s++){let a=n[s],h;o.y<a.y?h=new bu(o,a,1,i):h=new bu(a,o,-1,i),e.push(h),o=a}}withOffset(e,i){let n=[];for(let r of this.points)n.push(new Ti(r.x+e,r.y+i));return new Ud(n)}};function xu(t,e,i,n){let r=[];for(let o=0;o<20;o++){let s=o*2*Math.PI/20;r.push(new Ti(t+i*Math.sin(s),e+n*Math.cos(s)))}return new Zs(r)}function ah(t,e,i,n){return new Zs([new Ti(t,e),new Ti(i,e),new Ti(i,n),new Ti(t,n)])}var Po=class{constructor(t,e,i,n){u(this,"x",t),u(this,"winding",e),u(this,"shapeId",i),u(this,"lowOrHigh",n)}};function Su(t,e){let i=t.low.x+(t.high.x-t.low.x)*(e-t.low.y)/(t.high.y-t.low.y);if(isNaN(i))throw new Error("Bad intersection");return i}function Ay(t,e,i,n){let r,o,s,a;e.high.y<i&&Y.warn("Error: inconsistent segment (1)"),e.low.y<=i?(r=Su(e,i),o=e.winding):(r=e.low.x,o=0),e.high.y>=n?(s=Su(e,n),a=e.winding):(s=e.high.x,a=0),r<s?(t.push(new Po(r,o,e.shapeId,-1)),t.push(new Po(s,a,e.shapeId,1))):(t.push(new Po(s,a,e.shapeId,-1)),t.push(new Po(r,o,e.shapeId,1)))}function Fy(t,e,i){let n=e+i,r=Array(n),o=Array(n),s;for(s=0;s<=n;s++)r[s]=0,o[s]=0;let a=[],h=!1,l=t.length;for(let c=0;c<l;c++){let d=t[c];r[d.shapeId]+=d.winding,o[d.shapeId]+=d.lowOrHigh;let p=!1;for(s=0;s<e;s++)if(r[s]&&!o[s]){p=!0;break}if(p){for(s=e;s<=n;s++)if(r[s]||o[s]){p=!1;break}}h!=p&&(a.push(d.x),h=p)}return a}function Ry(t,e){return e?Math.ceil(t/e)*e:t}function Cu(t,e){return e?Math.floor(t/e)*e:t}function Ly(t){return new Ti(t.y,-t.x)}function ys(t){return new Dt(t.y1,-t.x2,t.y2,-t.x1)}function Wd(t){return new Dt(-t.y2,t.x1,-t.y1,t.x2)}function ku(t){return new Zs(t.points.map(e=>Ly(e)))}function Oy(t,e,i,n,r,o){o&&(t=ys(t),e=e.map(x=>ku(x)),i=i.map(x=>ku(x)));let s=e.length,a=i?i.length:0,h=[],l=[],c,d,p;for(c=0;c<s;c++)e[c].addSegments(l,c);for(c=0;c<a;c++)i[c].addSegments(l,c+s);let f=l.length;l.sort(Iy);let g=0;for(;l[g].shapeId>=s;)g++;let m=l[g].low.y;m>t.y1&&h.push(new fi(t.y1,m,t.x2,t.x2));let v=0,b=[];for(;v<f&&(p=l[v]).low.y<m;)p.high.y>m&&b.push(p),v++;for(;v<f||b.length>0;){let x=t.y2,C=Math.min(Ry(Math.ceil(m+n),r),t.y2);for(d=0;d<b.length&&x>C;d++)p=b[d],p.low.x==p.high.x?p.high.y<x&&(x=Math.max(Cu(p.high.y,r),C)):p.low.x!=p.high.x&&(x=C);for(x>t.y2&&(x=t.y2);v<f&&(p=l[v]).low.y<x;){if(p.high.y<m){v++;continue}if(p.low.y<C)p.low.y==p.high.y&&p.low.y==m||(b.push(p),x=C),v++;else{let S=Cu(p.low.y,r);S<x&&(x=S);break}}let y=[];for(d=0;d<b.length;d++)Ay(y,b[d],m,x);y.sort((S,N)=>S.x-N.x||S.lowOrHigh-N.lowOrHigh);let k=Fy(y,s,a);if(k.length==0)h.push(new fi(m,x,t.x2,t.x2));else{let S=0,N=t.x1;for(d=0;d<k.length;d+=2){let L=Math.max(t.x1,k[d]),I=Math.min(t.x2,k[d+1])-L;I>S&&(S=I,N=L)}S==0?h.push(new fi(m,x,t.x2,t.x2)):h.push(new fi(m,x,Math.max(N,t.x1),Math.min(N+S,t.x2)))}if(x==t.y2)break;for(m=x,d=b.length-1;d>=0;d--)b[d].high.y<=x&&b.splice(d,1)}return Gd(t,h),h}function Gd(t,e){let i=e.length-1,n=new fi(t.y2,t.y2,t.x1,t.x2);for(;i>=0;){let r=n;n=e[i],(n.y2-n.y1<1||n.x1==r.x1&&n.x2==r.x2)&&(r.y1=n.y1,e.splice(i,1),n=r),i--}}function jd(t,e){let i=0,n=t.length;for(;i<n;){let r=Math.floor((i+n)/2);e>=t[r].y2?i=r+1:n=r}return i}function By(t,e){if(!t.length)return e;let i=e.y1,n,r;for(r=0;r<t.length&&(n=t[r],!(n.y2>e.y1&&n.x1-.1<=e.x1&&n.x2+.1>=e.x2));r++)i=Math.max(i,n.y2);let o=i;for(;r<t.length&&(n=t[r],!(n.y1>=e.y2||n.x1-.1>e.x1||n.x2+.1<e.x2));r++)o=n.y2;return r===t.length?o=e.y2:o=Math.min(o,e.y2),o<=i?null:new Dt(e.x1,i,e.x2,o)}function My(t,e){if(!t.length)return e;let i=e.y2,n,r;for(r=t.length-1;r>=0&&(n=t[r],!(r===t.length-1&&n.y2<e.y2))&&!(n.y1<e.y2&&n.x1-.1<=e.x1&&n.x2+.1>=e.x2);r--)i=Math.min(i,n.y1);let o=Math.min(i,n.y2);for(;r>=0&&(n=t[r],!(n.y2<=e.y1||n.x1-.1>e.x1||n.x2+.1<e.x2));r--)o=n.y1;return o=Math.max(o,e.y1),i<=o?null:new Dt(e.x1,o,e.x2,i)}function _y(t,e,i,n){let r=i.y1,o=i.x2-i.x1,s=i.y2-i.y1,a=jd(e,r);for(;;){let h=r+s;if(h>t.y2)return!1;let l=t.x1,c=t.x2;for(let d=a;d<e.length&&e[d].y1<h;d++){let p=e[d];p.x1>l&&(l=p.x1),p.x2<c&&(c=p.x2)}if(l+o<=c||a>=e.length)return n=="left"?(i.x1=l,i.x2=l+o):(i.x1=c-o,i.x2=c),i.y2+=r-i.y1,i.y1=r,!0;r=e[a].y2,a++}}function Dy(t,e,i,n,r){for(n||(n=[new fi(i.y1,i.y2,i.x1,i.x2)]);n.length>0&&n[0].y2<=t.y1;)n.shift();if(n.length==0)return;n[0].y1<t.y1&&(n[0].y1=t.y1);let o,s=e.length==0?t.y1:e[e.length-1].y2;s<t.y2&&e.push(new fi(s,t.y2,t.x1,t.x2));let a=jd(e,n[0].y1);for(let h of n){if(a==e.length)break;for(e[a].y1<h.y1&&(o=e[a],a++,e.splice(a,0,new fi(h.y1,o.y2,o.x1,o.x2)),o.y2=h.y1);a<e.length&&(o=e[a++],o.y2>h.y2&&(e.splice(a,0,new fi(h.y2,o.y2,o.x1,o.x2)),o.y2=h.y2),h.x1!=h.x2&&(r=="left"?o.x1=Math.min(h.x2,t.x2):o.x2=Math.max(h.x1,t.x1)),o.y2!=h.y2););}Gd(t,e)}var zy=class extends Zt{constructor(){super(),u(this,"propSet",{})}visitIdent(t){return this.propSet[t.name]=!0,t}visitSpaceList(t){return this.visitValues(t.values),t}};function Vy(t){if(t){let e=new zy;try{return t.visit(e),e.propSet}catch(i){Y.warn(i,"toSet:")}}return{}}var $y=class extends Zt{constructor(t){super(),u(this,"value",t)}visitInt(t){return this.value=t.num,t}};function Pu(t,e){if(t){let i=new $y(e);try{return t.visit(i),i.value}catch(n){Y.warn(n,"toInt: ")}}return e}var Hy=class extends Zt{constructor(){super(),u(this,"collect",!1),u(this,"coords",[]),u(this,"name",null)}visitNumeric(t){return this.collect&&this.coords.push(t),null}visitNum(t){return this.collect&&t.num==0&&this.coords.push(new B(0,"px")),null}visitSpaceList(t){return this.visitValues(t.values),null}visitFunc(t){return this.collect||(this.collect=!0,this.visitValues(t.values),this.collect=!1,this.name=t.name.toLowerCase()),null}getShape(t,e,i,n,r){if(this.coords.length>0){let o=[];switch(this.coords.forEach((s,a)=>{if(s.unit=="%"){let h=a%2==0?i:n;a==3&&this.name=="circle"&&(h=Math.sqrt((i*i+n*n)/2)),o.push(s.num*h/100)}else o.push(s.num*r.queryUnitSize(s.unit,!1))}),this.name){case"polygon":if(o.length%2==0){let s=[];for(let a=0;a<o.length;a+=2)s.push(new Ti(t+o[a],e+o[a+1]));return new Zs(s)}break;case"rectangle":if(o.length==4)return ah(t+o[0],e+o[1],t+o[0]+o[2],e+o[1]+o[3]);break;case"ellipse":if(o.length==4)return xu(t+o[0],e+o[1],o[2],o[3]);break;case"circle":if(o.length==3)return xu(t+o[0],e+o[1],o[2],o[2]);break}}return null}};function Xd(t,e,i,n,r,o){if(t){let s=new Hy;try{return t.visit(s),s.getShape(e,i,n,r,o)}catch(a){Y.warn(a,"toShape:")}}return ah(e,i,e+n,i+r)}var Uy=class extends Zt{constructor(t,e){super(),u(this,"reset",t),u(this,"defaultValue",e),u(this,"counters",Object.create(null)),u(this,"name",null)}visitIdent(t){return this.name=t.toString(),this.reset?this.counters[this.name]=0:this.counters[this.name]=(this.counters[this.name]||0)+this.defaultValue,t}visitInt(t){return this.name&&(this.counters[this.name]+=t.num-(this.reset?0:this.defaultValue)),t}visitSpaceList(t){return this.visitValues(t.values),t}};function nn(t,e){var i,n;let r=(i=e?.reset)!=null?i:!1,o=(n=e?.defaultValue)!=null?n:r?0:1,s=new Uy(r,o);try{t.visit(s)}catch(a){Y.warn(a,"toCounters:")}return s.counters}var Wy=class extends dn{constructor(t,e){super(),u(this,"baseUrl",t),u(this,"transformer",e)}visitURL(t){return new et($r(this.transformer.transformURL(t.url,this.baseUrl)))}};function Si(t){let e=Object.create(null);return Object.keys(t).forEach(i=>{e[i]=Array.from(t[i])}),e}function Gy(t){return t.replace(/\\([0-9a-fA-F]{1,6})\s?|\\(.)/g,(e,i,n)=>i?String.fromCodePoint(parseInt(i,16)):n)}function An(t,e){var i;if(e==="content"){let n=t.cloneNode(!0);return n.querySelectorAll("[data-adapt-pseudo]").forEach(r=>r.remove()),n.textContent||""}else if(e==="marker"){let n=t.querySelector('[data-adapt-pseudo="marker"], [data-adapt-pseudo="footnote-marker"]');if(n)return n.textContent||"";let r=(i=t.style)==null?void 0:i.getPropertyValue("--viv-marker-content");if(r){let o=r.match(/"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'/g);if(o&&o.length>0)return o.map(s=>Gy(s.substring(1,s.length-1))).join("")}return""}else{let n=t.querySelector(`[data-adapt-pseudo="${e}"]`);return n&&n.textContent||""}}var jy=class{constructor(t,e){u(this,"targetId",t),u(this,"resolved",e),u(this,"pageCounters",null),u(this,"spineIndex",-1),u(this,"pageIndex",-1)}equals(t){return this===t?!0:t?this.targetId===t.targetId&&this.resolved===t.resolved&&this.spineIndex===t.spineIndex&&this.pageIndex===t.pageIndex:!1}isResolved(){return this.resolved}resolve(){this.resolved=!0}unresolve(){this.resolved=!1}},Xy=class{constructor(t,e){u(this,"counterStore",t),u(this,"baseURL",e)}countersOfId(t,e){t=this.counterStore.documentURLTransformer.transformFragment(t,this.baseURL),this.counterStore.countersById[t]=e}getExprContentListener(){return this.counterStore.getExprContentListener()}},qy=class{constructor(t,e,i,n){u(this,"counterStore",t),u(this,"baseURL",e),u(this,"rootScope",i),u(this,"pageScope",n),u(this,"styler",null),u(this,"namedStringValues",Object.create(null)),u(this,"runningElements",Object.create(null))}setStyler(t){this.styler=t}getFragment(t){let e=t.match(/^[^#]*#(.*)$/);return e?e[1]:null}getTransformedId(t){let e=this.counterStore.documentURLTransformer.transformURL(Ie(t,this.baseURL),this.baseURL);return e.charAt(0)==="#"&&(e=e.substring(1)),e}getPageCounterVal(t,e){let i=()=>{let o=this.counterStore.currentPageCounters[t];return o&&o.length?o[o.length-1]:null},n=new be(this.pageScope,()=>e(i()),`page-counter-${t}`),r=o=>e(o[o.length-1]);return this.counterStore.registerPageCounterExpr(t,r,n),n}getPageCountersVal(t,e){let i=()=>this.counterStore.currentPageCounters[t]||[],n=new be(this.pageScope,()=>e(i()),`page-counters-${t}`);return this.counterStore.registerPageCounterExpr(t,e,n),n}getTargetCounters(t,e,i){let n=this.counterStore.countersById[e];return!n&&i&&t&&(this.styler.styleUntilIdIsReached(t),n=this.counterStore.countersById[e]),n||null}getTargetPageCounters(t){return this.counterStore.currentPage.elementsById[t]?this.counterStore.currentPageCounters:this.counterStore.pageCountersById[t]||null}getTargetPageDocCounters(t){return this.counterStore.currentPage.elementsById[t]?this.counterStore.currentPageDocCounters:this.counterStore.pageDocCountersById[t]||null}adjustCountersForCrossScope(t,e,i,n){if(!this.counterStore.isPageControlledCounter(t)||!i)return e;let r=i[t]||[],o=r.length?r[r.length-1]:0,s=n?.[t]||[],a=s.length?s[0]:0;return e.length?[o+(e[0]-a),...e.slice(1)]:[o]}getTargetPageText(t,e){if(this.counterStore.currentPage.elementsById[t]){let i=this.counterStore.currentPage.elementsById[t];if(i&&i.length>0){let n=i[0];return e==="before"||e==="after"||e==="marker"?An(n,e):An(n,"content")}return""}else{if(t in this.counterStore.pageTextById){let i=this.counterStore.pageTextById[t];return i[e]!==void 0?i[e]:i.content||""}return null}}getTargetCounterVal(t,e,i){let n=this.getFragment(t),r=this.getTransformedId(t),o=new be(this.pageScope,()=>{let s=this.getTargetCounters(n,r,!0);if(s)if(s[e]){let a=s[e],h=this.getTargetPageCounters(r),l=this.getTargetPageDocCounters(r),c=this.adjustCountersForCrossScope(e,a,h,l);return h&&this.counterStore.resolveReference(r),i(c[c.length-1]||null)}else{let a=this.getTargetPageCounters(r);if(a)if(this.counterStore.resolveReference(r),a[e]){let h=a[e];return i(h[h.length-1]||null)}else return i(0);else return this.counterStore.saveReferenceOfCurrentPage(r,!1),"??"}else return this.counterStore.saveReferenceOfCurrentPage(r,!1),"??"},`target-counter-${e}-of-${t}`);return this.counterStore.registerTargetCounterExpr(e,i,o,r),o}getTargetCountersVal(t,e,i){let n=this.getFragment(t),r=this.getTransformedId(t);return new be(this.pageScope,()=>{let o=this.getTargetPageCounters(r);if(o){this.counterStore.resolveReference(r);let s=this.getTargetCounters(n,r,!0),a=s?.[e]||[],h=this.getTargetPageDocCounters(r),l=this.adjustCountersForCrossScope(e,a,o,h);if(l.length)return i(l);let c=o[e]||[];return i(c)}else return this.counterStore.saveReferenceOfCurrentPage(r,!1),"??"},`target-counters-${e}-of-${t}`)}getTargetTextVal(t,e){let i=this.getTransformedId(t),n=new be(this.pageScope,()=>{if(e==="first-letter"){let o=this.getTargetPageText(i,"before"),s=this.getTargetPageText(i,"content"),a=this.getTargetPageText(i,"after");if(o===null&&s===null&&a===null)return this.counterStore.saveReferenceOfCurrentPage(i,!1),"??";let h=(o??"")+(s??"")+(a??"");this.counterStore.resolveReference(i);let l=h.match(ps);return l?l[0]:""}let r=this.getTargetPageText(i,e);return r!==null?(this.counterStore.resolveReference(i),r):(this.counterStore.saveReferenceOfCurrentPage(i,!1),"??")},`target-text-${e}-of-${t}`);return this.counterStore.registerTargetTextExpr(e,n,i),n}getNamedStringVal(t,e){let i=new be(this.pageScope,()=>this.getRunningValue(this.namedStringValues,t,e),`named-string-${e}-${t}`);return i.getContentList=()=>this.getRunningContentList(t,e),i}getRunningElementVal(t,e){return new be(this.pageScope,()=>this.getRunningValue(this.runningElements,t,e),`running-element-${e}-${t}`)}getRunningValue(t,e,i){let n=this.getRunningRawValue(t,e,i);return typeof n.value=="string"?n.value:this.contentListToString(this.resolveDeferredContentList(n.value,n.offset))}getRunningContentList(t,e){let i=this.getRunningRawValue(this.namedStringValues,t,e);return typeof i.value=="string"?null:this.resolveDeferredContentList(i.value,i.offset)}resolveDeferredContentList(t,e){return this.freezePageCounters(t,e)}freezePageCounters(t,e){if(t instanceof j){let i=t.expr;if(i instanceof be){let n=/^page-counters?-(.+)$/.exec(i.str);if(n){if(n[1]==="pages")return t;let r=this.counterStore,o=n[1],s=r.getPageCounterFormat(i)||(h=>h.length?String(h[h.length-1]):""),a=r.getOrCreateNamedStringPageCounterExpr(this.pageScope,e,o,s);return new j(a)}}return t}return t instanceof ee?new ee(t.values.map(i=>this.freezePageCounters(i,e))):t instanceof Be?new Be(t.values.map(i=>this.freezePageCounters(i,e))):t}contentListToString(t){if(t instanceof K)return t.stringValue();if(t instanceof j){let e=t.expr;if(e instanceof be){let i=e.fn.call(null);return i==null?"":String(i)}return""}return t instanceof ee?t.values.map(e=>this.contentListToString(e)).join(""):t instanceof Be?t.values.map(e=>this.contentListToString(e)).join(""):""}getRunningRawValue(t,e,i){let n=t[e];if(!n)return{value:"",offset:-1};let r=Object.keys(n).map(p=>parseInt(p,10)).sort(ld),o=this.counterStore.currentPage;if(!o)return{value:"",offset:-1};let s=o.isBlankPage?o.offset-1:o.offset,a=o.isBlankPage?s:Math.max(s,...Array.from(o.container.querySelectorAll(`[${jt}]`)).map(p=>parseInt(p.getAttribute(jt),10))),h=-1,l=-1,c=-1,d=-1;for(let p=0;p<r.length;p++){let f=r[p],g=p>0?r[p-1]:-1,m=p<r.length-1?r[p+1]:-1;if(f>a)break;if(f>=s){if(h<0&&(h=f,d=-1),l<0)if(f===s)l=f;else{g<h&&(l=g);let v=o.container.querySelector(`[${jt}="${f}"]`);if(!v)l<0&&(l=f);else{let b=o.container.querySelector(`[${jt}="${s}"]`);if(b||(b=o.container.querySelector(`[${jt}="0"]`)),b){for(let x=b;x;x=x.firstElementChild)if(x===v){l=f;break}}}}c=f}else(m>a||m<0)&&(h=l=c=d=f)}return{value:n[{first:h,start:l,last:c,"first-except":d}[i]]||"",offset:{first:h,start:l,last:c,"first-except":d}[i]}}setNamedString(t,e,i){let n=this.namedStringValues[t]||(this.namedStringValues[t]=Object.create(null));n[i]=e,typeof e!="string"&&(this.counterStore.hasDeferredNamedStrings=!0)}setRunningElement(t,e){let i=this.runningElements[t]||(this.runningElements[t]=Object.create(null));i[e]=String(e)}},Yy=class{constructor(t){u(this,"documentURLTransformer",t),u(this,"countersById",Object.create(null)),u(this,"pageCountersById",Object.create(null)),u(this,"pageDocCountersById",Object.create(null)),u(this,"pageTextById",Object.create(null)),u(this,"currentPageDocCounters",null),u(this,"previousPageDocCounters",null),u(this,"currentPageDocCounterChanges",Object.create(null)),u(this,"currentPageDocCounterChangeTypes",Object.create(null)),u(this,"currentPageCounters",Object.create(null)),u(this,"previousPageCounters",Object.create(null)),u(this,"pageCountersBeforeOverride",Object.create(null)),u(this,"hasDeferredNamedStrings",!1),u(this,"namedStringPageSnapshots",Object.create(null)),u(this,"namedStringPageCounterExprMap",Object.create(null)),u(this,"currentPageCountersStack",[]),u(this,"pageIndicesById",Object.create(null)),u(this,"currentPage",null),u(this,"newReferencesOfCurrentPage",[]),u(this,"referencesToSolve",[]),u(this,"referencesToSolveStack",[]),u(this,"unresolvedReferences",Object.create(null)),u(this,"resolvedReferences",Object.create(null)),u(this,"pageControlledCounterNames",Object.assign(Object.create(null),{page:!0})),u(this,"pagesCounterExprs",[]),u(this,"pageCounterExprs",[]),u(this,"targetCounterExprs",[]),u(this,"targetTextExprs",[]),this.currentPageCounters.page=[0]}createCounterListener(t){return new Xy(this,t)}createCounterResolver(t,e,i){return new qy(this,t,e,i)}setCurrentPage(t){this.currentPage=t}setCurrentPageDocCounters(t,e,i){this.previousPageDocCounters=this.currentPageDocCounters?Si(this.currentPageDocCounters):null,this.currentPageDocCounters=t?Si(t):null,this.currentPageDocCounterChanges=Object.create(null),this.currentPageDocCounterChangeTypes=i?{...i}:Object.create(null),e&&e.forEach(n=>{this.currentPageDocCounterChanges[n]=!0})}setPageControlledCounterNames(t){let e=Object.assign(Object.create(null),{page:!0});t.forEach(i=>{e[i]=!0}),this.pageControlledCounterNames=e}isPageControlledCounter(t){return!!this.pageControlledCounterNames[t]}definePageCounter(t,e){this.currentPageCounters[t]?this.currentPageCounters[t].push(e):this.currentPageCounters[t]=[e]}forceSetPageCounter(t){let e=this.currentPageCounters.page;!e||!e.length?this.currentPageCounters.page=[t]:e[e.length-1]=t}updatePageCounters(t,e){this.previousPageCounters=Si(this.currentPageCounters);let i=this.currentPageDocCounterChanges||{},n=this.currentPageDocCounterChangeTypes||{},r=Object.create(null);if(this.currentPageDocCounters){let b=this.previousPageDocCounters||{};for(let x in this.currentPageDocCounters){if(!i[x])continue;let C=this.currentPageDocCounters[x],y=C.length?C[C.length-1]:0,k=b[x]||[],S=k.length?k[k.length-1]:0,N=y-S,L=n[x],I=L==="reset"||L==="set";r[x]={delta:N,reset:I,value:y}}}let o=Object.create(null),s,a=!1,h=t["counter-reset"];if(h){let b=h.evaluate(e);b&&(a=b===w.none,a||(s=nn(b,{reset:!0})))}s&&"pages"in s&&delete s.pages;let l,c=t["counter-set"];if(c){let b=c.evaluate(e);b&&(l=nn(b,{defaultValue:0}))}l&&"pages"in l&&delete l.pages;let d=[];if(s)for(let b in s)d.push(b);if(l)for(let b in l)d.push(b);let p,f=t["counter-increment"];if(f){let b=f.evaluate(e);b&&(p=nn(b))}p&&"pages"in p&&delete p.pages,p?!("page"in p)&&!(r.page&&r.page.reset)&&(p.page=1):(p=Object.create(null),r.page&&r.page.reset||(p.page=1));for(let b in p)d.push(b);this.setPageControlledCounterNames(d);let g=Si(this.previousPageCounters);if(a)for(let b in this.pageCountersBeforeOverride)g[b]=Array.from(this.pageCountersBeforeOverride[b]);if(this.currentPageDocCounters)for(let b in this.currentPageDocCounters){if(this.isPageControlledCounter(b)){let x=r[b];if(x){if(x.reset)g[b]=[x.value],o[b]=!0;else if(x.delta!==0){g[b]||(g[b]=[0]);let C=g[b];C[C.length-1]+=x.delta}}else g[b]||(g[b]=Array.from(this.currentPageDocCounters[b]));continue}g[b]=Array.from(this.currentPageDocCounters[b])}this.currentPageCounters=g;let m=Object.create(null),v=b=>{if(!Object.prototype.hasOwnProperty.call(m,b)){let x=g[b];x&&(m[b]=Array.from(x))}};if(s)for(let b in s)v(b),this.definePageCounter(b,s[b]);for(let b in p){if(o[b])continue;this.currentPageCounters[b]||this.definePageCounter(b,0);let x=this.currentPageCounters[b];x[x.length-1]+=p[b]}if(l)for(let b in l)if(v(b),!this.currentPageCounters[b])this.definePageCounter(b,l[b]);else{let x=this.currentPageCounters[b];x[x.length-1]=l[b]}for(let b in m)this.pageCountersBeforeOverride[b]=Array.from(m[b])}pushPageCounters(t){this.currentPageCountersStack.push(this.currentPageCounters),this.currentPageCounters=Si(t)}popPageCounters(){this.currentPageCounters=this.currentPageCountersStack.pop()}resolveReference(t){let e=this.unresolvedReferences[t],i=this.resolvedReferences[t];i||(i=this.resolvedReferences[t]=[]);let n=!1;for(let r=0;r<this.referencesToSolve.length;){let o=this.referencesToSolve[r];if(o.targetId===t){if(o.resolve(),this.referencesToSolve.splice(r,1),e){let s=e.indexOf(o);s>=0&&e.splice(s,1)}i.push(o),n=!0}else r++}n||this.saveReferenceOfCurrentPage(t,!0)}saveReferenceOfCurrentPage(t,e){if(!this.newReferencesOfCurrentPage.some(i=>i.targetId===t)){let i=new jy(t,e);this.newReferencesOfCurrentPage.push(i)}}finishPage(t,e){let i=Object.keys(this.currentPage.elementsById);if(i.length>0){let o=Si(this.currentPageCounters),s=this.currentPageDocCounters?Si(this.currentPageDocCounters):null;i.forEach(a=>{this.pageCountersById[a]=o,s&&(this.pageDocCountersById[a]=s);let h=this.currentPage.elementsById[a];if(h&&h.length>0){let c=h[0];this.pageTextById[a]={content:An(c,"content"),before:An(c,"before"),after:An(c,"after"),marker:An(c,"marker")}}let l=this.pageIndicesById[a];if(l&&l.pageIndex<e){let c=this.resolvedReferences[a];if(c){let d=this.unresolvedReferences[a];d||(d=this.unresolvedReferences[a]=[]);let p;for(;p=c.shift();)p.unresolve(),d.push(p)}}this.pageIndicesById[a]={spineIndex:t,pageIndex:e}})}let n=this.previousPageCounters,r;for(;r=this.newReferencesOfCurrentPage.shift();){r.pageCounters=n,r.spineIndex=t,r.pageIndex=e;let o;r.isResolved()?(o=this.resolvedReferences[r.targetId],o||(o=this.resolvedReferences[r.targetId]=[])):(o=this.unresolvedReferences[r.targetId],o||(o=this.unresolvedReferences[r.targetId]=[])),o.every(s=>!r.equals(s))&&o.push(r)}this.hasDeferredNamedStrings&&this.currentPage&&this.recordNamedStringPageSnapshot(t),this.currentPage=null}recordNamedStringPageSnapshot(t){let e=this.currentPage,i=e.isBlankPage?e.offset-1:e.offset,n=e.isBlankPage?i:Math.max(i,...Array.from(e.container.querySelectorAll(`[${jt}]`)).map(r=>parseInt(r.getAttribute(jt),10)));for(let r of Object.keys(this.namedStringPageSnapshots)){let o=parseInt(r,10);if(o<=i)continue;let s=this.namedStringPageSnapshots[o];o<=n&&i<=s.lastOffset&&delete this.namedStringPageSnapshots[o]}this.namedStringPageSnapshots[i]={lastOffset:n,spineIndex:t,counters:Si(this.currentPageCounters)}}getPageCountersForOffset(t){for(let e of Object.keys(this.namedStringPageSnapshots)){let i=parseInt(e,10);if(i>t)break;let n=this.namedStringPageSnapshots[i];if(t<=n.lastOffset)return n.counters}return null}adjustPageCountersOfLaterSpines(t,e){if(e<=0)return;let i=new Set;for(let n of Object.keys(this.pageIndicesById))if(this.pageIndicesById[n].spineIndex>t){let r=this.pageCountersById[n];r&&r.page&&!i.has(r)&&(i.add(r),r.page=r.page.map(o=>o+e))}for(let n of Object.keys(this.namedStringPageSnapshots)){let r=this.namedStringPageSnapshots[parseInt(n,10)];r.spineIndex>t&&r.counters.page&&!i.has(r.counters)&&(i.add(r.counters),r.counters.page=r.counters.page.map(o=>o+e))}}updateTargetCounterNodesInPages(t){for(let e of t){if(!e||!e.container)continue;let i=e.container.querySelectorAll(`[${or}]`);for(let n of i){let r=n.getAttribute(or),o=this.targetCounterExprs.find(s=>s.expr.key===r);if(o&&o.transformedId){let s=this.pageCountersById[o.transformedId];if(s){let a=s[o.name];a&&(n.textContent=o.format(a[a.length-1]))}}}}}getPageCountersForPage(t,e){let i=Object.keys(t.elementsById);for(let n of i){let r=this.pageCountersById[n];if(r)return r}return e||null}updatePageCounterNodesInPages(t,e){var i;for(let n=0;n<t.length;n++){let r=t[n];if(!(r!=null&&r.container))continue;let o=r.container.querySelectorAll(`[${ka}]`);for(let h of o){let l=h.getAttribute(ka),c=this.namedStringPageCounterExprMap[l];if(!c)continue;let d=this.getPageCountersForOffset(c.offset),p=d?.[c.counterName];p&&(h.textContent=c.format(p))}let s=this.getPageCountersForPage(r,e?.[n]);if(!s)continue;let a=r.container.querySelectorAll(`[${rr}]`);for(let h of a){let l=h.getAttribute(rr),c=this.pageCounterExprs.find(g=>g.expr.key===l);if(!c)continue;let d=(i=c.expr)==null?void 0:i.str,p=d?.replace(/^page-counters?-/,""),f=s[p];f&&(h.textContent=c.format(f))}}}getUnresolvedRefsToPage(t){let e=[];Object.keys(t.elementsById).forEach(r=>{let o=this.unresolvedReferences[r];o&&(e=e.concat(o))}),e.sort((r,o)=>r.spineIndex-o.spineIndex||r.pageIndex-o.pageIndex);let i=[],n=null;return e.forEach(r=>{!n||n.spineIndex!==r.spineIndex||n.pageIndex!==r.pageIndex?(n={spineIndex:r.spineIndex,pageIndex:r.pageIndex,pageCounters:r.pageCounters,refs:[r]},i.push(n)):n.refs.push(r)}),i}pushReferencesToSolve(t){this.referencesToSolveStack.push(this.referencesToSolve),this.referencesToSolve=t}popReferencesToSolve(){this.referencesToSolve=this.referencesToSolveStack.pop()}registerPageCounterExpr(t,e,i){t==="pages"?this.pagesCounterExprs.push({expr:i,format:e}):this.pageCounterExprs.push({expr:i,format:e})}getPageCounterFormat(t){let e=this.pageCounterExprs.find(i=>i.expr===t);return e?e.format:null}getOrCreateNamedStringPageCounterExpr(t,e,i,n){for(let o in this.namedStringPageCounterExprMap){let s=this.namedStringPageCounterExprMap[o];if(s.offset===e&&s.counterName===i)return s.expr}let r=new be(t,()=>{let o=((e>=0?this.getPageCountersForOffset(e):null)||this.currentPageCounters)[i]||[];return n(o)},`named-string-page-counter-${i}`);return this.namedStringPageCounterExprMap[r.key]={expr:r,offset:e,counterName:i,format:n},r}registerTargetCounterExpr(t,e,i,n){this.targetCounterExprs.push({name:t,expr:i,format:e,transformedId:n})}registerTargetTextExpr(t,e,i){this.targetTextExprs.push({pseudoElement:t,expr:e,transformedId:i})}getExprContentListener(){return this.exprContentListener.bind(this)}exprContentListener(t,e,i){if(t instanceof be){if(t.str=="viv-leader"){let o=i.createElementNS("http://www.w3.org/1999/xhtml","span");return o.textContent=e,o.setAttribute("data-viv-leader",t.key),o.setAttribute("data-viv-leader-value",e),o}else if(t.str.startsWith("running-element-")){let o=e&&i.querySelectorAll(`[${jt}="${e}"]`);if(!o||o.length===0)return null;let s=o[o.length-1].cloneNode(!0);return this.fixPageCounterInRunningElement(s),s.style.position="",s.style.visibility="",s}else if(t.str.startsWith("target-counter-")){let o=i.createElementNS("http://www.w3.org/1999/xhtml","span");return o.textContent=e,o.setAttribute(or,t.key),o}else if(t.str.startsWith("target-text-")){let o=i.createElementNS("http://www.w3.org/1999/xhtml","span");return o.textContent=e,o.setAttribute(Pa,t.key),o}else if(t.str.startsWith("named-string-page-counter-")){let o=i.createElementNS("http://www.w3.org/1999/xhtml","span");return o.textContent=e,o.setAttribute(ka,t.key),o}}let n=this.pagesCounterExprs.findIndex(o=>o.expr===t)>=0,r=!n&&this.pageCounterExprs.findIndex(o=>o.expr===t)>=0;if(n||r){let o=i.createElementNS("http://www.w3.org/1999/xhtml","span");return o.textContent=e,o.setAttribute(n?Ca:rr,t.key),o}else return null}fixPageCounterInRunningElement(t){let e=t.querySelectorAll(`[${rr}]`);for(let r of e){let o=r.getAttribute(rr),s=this.pageCounterExprs.find(c=>c.expr.key===o),a=(s?.expr).str,h=a?.replace(/^page-counters?-/,""),l=this.currentPageCounters[h];l&&(r.textContent=s.format(l))}let i=t.querySelectorAll(`[${or}]`);for(let r of i)r.setAttribute(Eu,!0);let n=t.querySelectorAll(`[${Pa}]`);for(let r of n)r.setAttribute(Nu,!0)}finishLastPage(t){var e;let i=t.root.querySelectorAll(`[${Ca}]`),n=t.contentContainer.childElementCount;for(let s of i){let a=s.getAttribute(Ca),h=this.pagesCounterExprs.findIndex(l=>l.expr.key===a);h>=0,s.textContent=this.pagesCounterExprs[h].format([n])}let r=t.root.querySelectorAll(`[${Eu}]`);for(let s of r){let a=s.getAttribute(or),h=this.targetCounterExprs.find(l=>l.expr.key===a);if(h&&h.transformedId){let l=this.pageCountersById[h.transformedId];if(l){let c=l[h.name];c&&(s.textContent=h.format(c[c.length-1]))}}}let o=t.root.querySelectorAll(`[${Nu}]`);for(let s of o){let a=s.getAttribute(Pa),h=this.targetTextExprs.find(l=>l.expr.key===a);if(h&&h.transformedId){let l=this.pageTextById[h.transformedId];l&&(s.textContent=(e=l[h.pseudoElement])!=null?e:"")}}}createLayoutConstraint(t){return new Zy(this,t)}},Ca="data-vivliostyle-pages-counter",rr="data-vivliostyle-page-counter",ka="data-vivliostyle-named-string-page-counter",or="data-vivliostyle-target-counter",Pa="data-vivliostyle-target-text",Eu="data-vivliostyle-target-counter-in-running",Nu="data-vivliostyle-target-text-in-running",Zy=class{constructor(t,e){u(this,"counterStore",t),u(this,"pageIndex",e)}allowLayout(t){if(!t||t.after)return!0;let e=t.viewNode;if(!e||e.nodeType!==1)return!0;let i=e.getAttribute("data-vivliostyle-id")||e.getAttribute("id")||e.getAttribute("name");if(!i||!this.counterStore.resolvedReferences[i]&&!this.counterStore.unresolvedReferences[i])return!0;let n=this.counterStore.pageIndicesById[i];return n?this.pageIndex>=n.pageIndex:!0}},Ky=new Set(["before","after","first-line","first-letter"]),Tu=new Set(["media","supports","layer","-epubx-when"]),qd=new Set([";","}"]),Yd=new Set(["{",";","}"]),Jy=new Set([";","{","}"]),Qy=":where(:scope)",ev=":where(:not(*))";function tv(t){let{statements:e,changed:i}=el(t,0,t.length,null);return i?e.join(`
5
- `):t}function el(t,e,i,n){let r=[],o=[],s=!1,a=e,h=()=>{o.length!==0&&(n?r.push(iv(n,o)):r.push(Zd(o)),o.length=0)};for(;a<i&&(a=ln(t,a,i),!(a>=i||t[a]==="}"));){if(t[a]==="@"){let d=mv(t,a,i);if(!d)break;if(n&&!Tu.has(d.name)){o.push(Qi(t.slice(a,d.end))),a=d.end;continue}if(h(),d.hasBlock&&Tu.has(d.name)){let p=el(t,d.blockStart,d.blockEnd,n);s||(s=p.changed||n!=null),r.push(`${d.header} {${nv(p.statements)}}`)}else r.push(Qi(t.slice(a,d.end)));a=d.end;continue}if(n&&lv(t,a,i)){let d=cv(t,a,i);if(!d)break;o.push(Qi(d.text)),a=d.end;continue}h();let l=dv(t,a,i);if(!l){let d=yv(t,a,i);r.push(Qi(d.text)),a=d.end;continue}if(n&&pv(t,a,l)){let d=gv(t,a,l.end,i);o.push(Qi(d.text)),a=d.end;continue}let c=n?rv(n,l.prelude):Kd(l.prelude);if(c){s||(s=n!=null);let d=el(t,l.blockStart,l.blockEnd,c);s||(s=d.changed),d.statements.length===0?r.push(`${c} {}`):r.push(...d.statements)}a=l.end}return h(),{statements:r,changed:s}}function iv(t,e){return`${t} { ${Zd(e)} }`}function Zd(t){return t.map(e=>e.endsWith(";")?e:`${e};`).join(" ")}function nv(t){return t.length===0?"":` ${t.join(" ")} `}function rv(t,e){let i=ov(t);if(!i)return null;let n=Qd(e,",").map(r=>r.trim()).filter(Boolean).map(r=>{let o=Jd(r,i);return o.found?o.text:`${i} ${r}`}).filter(Boolean);return n.length===0?null:n.join(", ")}function Kd(t){return Jd(t.trim(),Qy).text}function ov(t){let e=Qd(t,",").map(i=>i.trim()).filter(Boolean).filter(i=>!sv(i));return e.length===0?null:`:is(${e.join(", ")})`}function sv(t){let e=0;for(;e<t.length;){let i=Ks(t,e);if(i!=null){e=i;continue}let n=pn(t,e,t.length);if(n!=null){e=n;continue}if(t[e]===":"){if(t[e+1]===":")return!0;let r=e+1,o=lo(t,r,t.length),s=t.slice(r,o).toLowerCase();if(Ky.has(s))return!0;e=o;continue}e++}return!1}function Jd(t,e){let i=0,n=!1,r="",o=[],s=av(e);for(;i<t.length;){let a=Ks(t,i);if(a!=null){r+=t.slice(i,a),i=a;continue}let h=pn(t,i,t.length);if(h!=null){r+=t.slice(i,h),i=h;continue}let l=t[i];if(l===":"&&t[i+1]!==":"){let c=i+1,d=lo(t,c,t.length);if(d>c&&t[d]==="("){o.push(t.slice(c,d).toLowerCase()),r+=t.slice(i,d+1),i=d+1;continue}}if(l==="("){o.push(""),r+=l,i++;continue}if(l===")"){o.pop(),r+=l,i++;continue}if(l==="&"){r+=s&&o.includes("has")?ev:e,n=!0,i++;continue}r+=l,i++}return{text:r,found:n}}function av(t){let e=0;for(;e<t.length;){let i=Ks(t,e);if(i!=null){e=i;continue}let n=pn(t,e,t.length);if(n!=null){e=n;continue}if(t[e]===":"&&t[e+1]!==":"){let r=e+1,o=lo(t,r,t.length);if(o>r&&t.slice(r,o).toLowerCase()==="has"&&t[o]==="(")return!0;e=o;continue}e++}return!1}function Qd(t,e){let i=[],n=0,r=0,o=0,s=0;for(;r<t.length;){let a=Ks(t,r);if(a!=null){r=a;continue}let h=pn(t,r,t.length);if(h!=null){r=h;continue}let l=t[r];switch(l){case"(":o++;break;case")":o=Math.max(0,o-1);break;case"[":s++;break;case"]":s=Math.max(0,s-1);break;default:o===0&&s===0&&l===e&&(i.push(t.slice(n,r)),n=r+1);break}r++}return i.push(t.slice(n)),i}function lv(t,e,i){let n=e,r=uv(t,n,i);if(r<=n)return!1;let o=ln(t,r,i);if(o>=i||t[o]!==":")return!1;let s=ho(t,o+1,i,Jy);return s?.char==="{"?!hv(t,e,r,o,s.index):!0}function hv(t,e,i,n,r){if(ln(t,i,r)!==n)return!1;let o=ln(t,n+1,r);if(o!==n+1||o>=r)return!1;let s=t[o];return s===":"||s==="\\"||/[A-Za-z_-]/.test(s)}function uv(t,e,i){let n=e;return t[n]==="-"&&(n++,n<i&&t[n]==="-"&&n++),lo(t,n,i)}function lo(t,e,i){let n=e;for(;n<i;){let r=t[n];if(r==="\\"){n+=2;continue}if(!/[0-9A-Za-z_-]/.test(r))break;n++}return n}function cv(t,e,i){let n=ho(t,e,i,qd);if(!n){let o=t.slice(e,i).trim();return o?{text:o,end:i}:null}let r=n.char===";"?n.index+1:n.index;return{text:t.slice(e,r).trim(),end:r}}function dv(t,e,i){let n=ho(t,e,i,Yd);if(!n||n.char!=="{")return null;let r=ep(t,n.index,i);return r<0?null:{prelude:Qi(t.slice(e,n.index)),blockStart:n.index+1,blockEnd:r,end:r+1}}function pv(t,e,i){if(!fv(t,e,i.blockStart-1))return!0;let n=ln(t,i.blockStart,i.blockEnd);return n<i.blockEnd&&t[n]===";"}function fv(t,e,i){let n=ln(t,e,i);if(n>=i)return!1;let r=t[n];return r==="&"||r==="."||r==="#"||r===":"||r==="["||r==="|"||r==="*"||r===">"||r==="+"||r==="~"||r==="\\"||/[A-Za-z_-]/.test(r)}function gv(t,e,i,n){let r=ln(t,i,n),o=r<n&&t[r]===";"?r+1:i;return{text:t.slice(e,o),end:o}}function mv(t,e,i){let n=ho(t,e,i,Yd);if(!n)return null;let r=lo(t,e+1,i),o=t.slice(e+1,r).toLowerCase(),s=Qi(t.slice(e,n.index));if(n.char!=="{")return{name:o,header:s,hasBlock:!1,blockStart:-1,blockEnd:-1,end:n.index+(n.char===";"?1:0)};let a=ep(t,n.index,i);return a<0?null:{name:o,header:s,hasBlock:!0,blockStart:n.index+1,blockEnd:a,end:a+1}}function yv(t,e,i){let n=ho(t,e,i,qd);if(!n)return{text:t.slice(e,i),end:i};let r=n.char===";"?n.index+1:n.index;return{text:t.slice(e,r),end:r}}function ho(t,e,i,n){let r=e,o=0,s=0,a=0;for(;r<i;){let h=pn(t,r,i);if(h!=null){r=h;continue}let l=t[r];switch(l){case"(":o++;break;case")":o=Math.max(0,o-1);break;case"[":s++;break;case"]":s=Math.max(0,s-1);break;case"{":if(o===0&&s===0&&a===0&&n.has(l))return{index:r,char:l};a++;break;case"}":if(o===0&&s===0&&a===0&&n.has(l))return{index:r,char:l};a=Math.max(0,a-1);break;default:if(o===0&&s===0&&a===0&&n.has(l))return{index:r,char:l};break}r++}return null}function ep(t,e,i){let n=e+1,r=1;for(;n<i;){let o=pn(t,n,i);if(o!=null){n=o;continue}let s=t[n];if(s==="{")r++;else if(s==="}"&&(r--,r===0))return n;n++}return-1}function ln(t,e,i){let n=e;for(;n<i;){let r=t[n];if(ip(r)){n++;continue}if(r==="/"&&t[n+1]==="*"){n=tp(t,n,i);continue}break}return n}function tp(t,e,i){let n=t.indexOf("*/",e+2);return n<0||n+2>i?i:n+2}function pn(t,e,i){let n=t[e];return n==='"'||n==="'"?vv(t,e):n==="/"&&t[e+1]==="*"?tp(t,e,i):null}function Ks(t,e){return t[e]!=="\\"?null:e+1>=t.length?t.length:e+2}function vv(t,e){let i=t[e],n=e+1;for(;n<t.length;){let r=t[n];if(r==="\\"){n+=2;continue}if(r===i)return n+1;n++}return t.length}function ip(t){return t===" "||t===`
6
- `||t==="\r"||t===" "||t==="\f"}function Qi(t){let e="",i=0,n=!1;for(;i<t.length;){let r=pn(t,i,t.length);if(r!=null&&t[i]!=="/"){n&&e.length>0&&(e+=" ",n=!1),e+=t.slice(i,r),i=r;continue}if(r!=null){n=e.length>0,i=r;continue}let o=t[i];if(ip(o)){n=e.length>0,i++;continue}n&&e.length>0&&(e+=" ",n=!1),e+=o,i++}return e}function wv(t){if(t=t.substr(1),t.match(/^[^0-9a-fA-F\n\r]$/))return t;let e=parseInt(t,16);return isNaN(e)?"":e===0||e>=55296&&e<=57343||e>1114111?"\uFFFD":String.fromCodePoint(e)}function Ci(t){return t.replace(/\\([0-9a-fA-F]{1,6}(\r\n|[ \n\r\t\f])?|[^0-9a-fA-F\n\r])/g,wv)}var bv=class{constructor(){u(this,"type"),u(this,"precededBySpace",!1),u(this,"num",0),u(this,"text",""),u(this,"position",0),this.type=0}toString(){switch(this.type){case 10:return"(";case 11:return")";case 12:return"{";case 13:return"}";case 14:return"[";case 15:return"]";case 16:return",";case 17:return";";case 18:return":";case 19:return"/";case 21:return"%";case 22:return"?";case 23:return"+";case 24:return"-";case 25:return"||";case 26:return"&&";case 31:return"!";case 32:return"$";case 33:return"^";case 34:return"|";case 35:return"~";case 36:return"*";case 37:return">";case 38:return"<";case 39:return"=";case 41:return"!=";case 42:return"$=";case 43:return"^=";case 44:return"|=";case 45:return"~=";case 46:return"*=";case 47:return">=";case 48:return"<=";case 49:return"==";case 50:return"::";case 51:return"<!--";case 52:return"-->";case 3:return this.num.toString()+this.text;case 4:case 5:return this.num.toString();case 20:return"@"+this.text;case 7:return"#"+this.text;case 6:return this.text+"(";case 9:return"."+this.text;case 0:return"/*EOF*/";default:return this.text}}};function tt(t,e){let i=Array(128),n;for(n=0;n<128;n++)i[n]=t;for(i[NaN]=t==35?35:72,n=0;n<e.length;n+=2)i[e[n]]=e[n+1];return i}var ii=[72,72,72,72,72,72,72,72,72,1,1,72,1,1,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,1,4,34,6,7,8,9,33,10,11,12,13,14,15,16,17,2,2,2,2,2,2,2,2,2,2,18,19,20,21,22,23,24,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,25,29,26,30,3,72,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,27,31,28,32,72];ii[NaN]=80;var ni=[43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,52,43,43,43,43,39,43,43,39,39,39,39,39,39,39,39,39,39,43,43,43,43,43,43,43,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,43,44,43,43,39,43,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,43,43,43,43,43];ni[NaN]=43;var xv=[72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,78,59,72,59,59,59,59,59,59,59,59,59,59,72,72,72,72,72,72,72,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,72,61,72,72,78,72,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,72,72,72,72,72];ni[NaN]=43;var np=[35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,57,59,35,58,58,58,58,58,58,58,58,58,58,35,35,35,35,35,35,35,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,35,61,35,35,60,35,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,35,35,35,35,35];np[NaN]=35;var rp=[45,45,45,45,45,45,45,45,45,73,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,73,45,45,45,45,45,45,45,53,45,45,45,45,45,45,45,39,39,39,39,39,39,39,39,39,39,45,45,45,45,45,45,45,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,45,44,45,45,39,45,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,45,45,45,45,45];rp[NaN]=45;var tl=[37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,41,37,37,37,37,37,37,37,37,42,37,39,39,39,39,39,39,39,39,39,39,37,37,37,37,37,37,37,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,37,37,37,37,40,37,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,37,37,37,37,37];tl[NaN]=37;var il=[38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,41,38,38,38,38,38,38,38,38,38,38,39,39,39,39,39,39,39,39,39,39,38,38,38,38,38,38,38,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,38,38,38,38,40,38,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,38,38,38,38,38];il[NaN]=38;var Hi=tt(35,[61,36]),Sv=tt(35,[58,77]),Cv=tt(35,[61,36,124,50]),kv=tt(35,[38,51]),Pv=tt(35,[42,54]),Ev=tt(39,[42,55]),Nv=tt(54,[42,55,47,56]),Tv=tt(62,[62,82]),Iv=tt(35,[61,36,33,70]),Av=tt(62,[45,71]),Fv=tt(63,[45,81]),Ea=tt(76,[10,72,13,72]),Rv=tt(39,[39,46,10,72,13,72,92,48]),Lv=tt(39,[34,46,10,72,13,72,92,49]),Ov=tt(39,[39,47,10,74,13,74,92,48]),Bv=tt(39,[34,47,10,74,13,74,92,49]),Iu=tt(64,[9,39,32,39,34,66,39,65,41,72,10,39,13,39]),Mv=tt(39,[41,67,9,79,10,79,13,79,32,79,92,75,40,72,91,72,93,72,123,72,125,72,NaN,67]),_v=tt(39,[39,68,10,74,13,74,92,75,NaN,67]),Dv=tt(39,[34,68,10,74,13,74,92,75,NaN,67]),zv=tt(72,[9,39,10,39,13,39,32,39,41,69]),Vv=15,xt=class{constructor(t,e){u(this,"input",t),u(this,"handler",e),u(this,"indexMask"),u(this,"buffer"),u(this,"tail",0),u(this,"curr",0),u(this,"position",0),this.indexMask=Vv,this.buffer=Array(this.indexMask+1);for(let i=0;i<=this.indexMask;i++)this.buffer[i]=new bv}token(){return this.tail==this.curr&&this.fillBuffer(),this.buffer[this.curr]}nthToken(t){return(this.tail-this.curr&this.indexMask)<=t&&this.fillBuffer(),this.buffer[this.curr+t&this.indexMask]}consume(){this.curr=this.curr+1&this.indexMask}fillBuffer(){let t=this.tail,e=this.curr,i=this.indexMask;if(t>=e?e+=i:e--,e==t)throw new Error("F_CSSTOK_INTERNAL");let n=ii,r=this.input,o=this.position,s=this.buffer,a=0,h=0,l="",c=0,d=!1,p=s[t],f=-9;for(;;){let g=r.charCodeAt(o);switch(n[g]||n[65]){case 72:isNaN(g)?(l=r.substring(h,o),a=0):n===ii&&a===0?(a=54,h=o,l=r.substring(o,o+1),o++):(l=r.substring(h,o),a=54),n=ii;break;case 1:o++,d=!0;continue;case 2:h=o++,n=tl;continue;case 3:a=1,h=o++,n=ni;continue;case 4:h=o++,a=31,n=Hi;continue;case 33:a=2,h=++o,n=Rv;continue;case 34:a=2,h=++o,n=Lv;continue;case 6:h=++o,a=7,n=ni;continue;case 7:h=o++,a=32,n=Hi;continue;case 8:h=o++,a=21;break;case 9:h=o++,a=32,n=kv;continue;case 10:h=o++,a=10;break;case 11:h=o++,a=11;break;case 12:h=o++,a=36,n=Hi;continue;case 13:h=o++,a=23;break;case 14:h=o++,a=16;break;case 15:a=24,h=o++,n=np;continue;case 16:h=o++,n=xv;continue;case 78:h=o++,a=9,n=ni;continue;case 17:h=o++,a=19,n=Pv;continue;case 18:h=o++,a=18,n=Sv;continue;case 77:o++,a=50;break;case 19:h=o++,a=17;break;case 20:h=o++,a=38,n=Iv;continue;case 21:h=o++,a=39,n=Hi;continue;case 22:h=o++,a=37,n=Hi;continue;case 23:h=o++,a=22;break;case 24:h=++o,a=20,n=ni;continue;case 25:h=o++,a=14;break;case 26:h=o++,a=15;break;case 27:h=o++,a=12;break;case 28:h=o++,a=13;break;case 29:h=o++,f=h,a=1,n=Ea;continue;case 30:h=o++,a=33,n=Hi;continue;case 31:h=o++,a=34,n=Cv;continue;case 32:h=o++,a=35,n=Hi;continue;case 35:break;case 36:o++,a=a+41-31;break;case 37:a=5,c=parseInt(r.substring(h,o),10);break;case 38:a=4,c=parseFloat(r.substring(h,o));break;case 39:o++;continue;case 40:a=3,c=parseFloat(r.substring(h,o)),h=o++,n=ni;continue;case 41:a=3,c=parseFloat(r.substring(h,o)),l="%",h=o++;break;case 42:o++,n=il;continue;case 43:if(l=Ci(r.substring(h,o)),a===27&&g===63||a===1&&l.toLowerCase()==="u"&&/^(\bu\+[?0-9a-f]+(-[?0-9a-f]+)?|,|\s+|\/\*([^*]|\*[^/])*\*\/)+[;}]/i.test(r.substring(o-1))){a=27,o++;continue}break;case 44:f=o++,n=Ea;continue;case 45:l=Ci(r.substring(h,o));break;case 46:l=r.substring(h,o),o++;break;case 47:l=Ci(r.substring(h,o)),o++;break;case 48:f=o,o+=2,n=Ov;continue;case 49:f=o,o+=2,n=Bv;continue;case 50:o++,a=25;break;case 51:o++,a=26;break;case 52:if(l=r.substring(h,o),a==1){if(o++,l.toLowerCase()=="url"){n=Iu;continue}a=6}break;case 53:if(l=Ci(r.substring(h,o)),a==1){if(o++,l.toLowerCase()=="url"){n=Iu;continue}a=6}break;case 54:n=Ev,o++;continue;case 55:n=Nv,o++;continue;case 56:n=ii,o++;continue;case 57:n=Tv,o++,r[o]!==">"&&(a=1,n=ni);continue;case 81:a=51,l=r.substring(h,++o),n=ii;break;case 82:a=52,l=r.substring(h,++o),n=ii;break;case 58:a=5,n=tl,o++;continue;case 59:a=4,n=il,o++;continue;case 60:a=1,n=ni,o++;continue;case 61:a=1,n=Ea,f=o++;continue;case 62:o--;break;case 63:o-=2;break;case 64:h=o++,n=Mv;continue;case 65:h=++o,n=_v;continue;case 66:h=++o,n=Dv;continue;case 67:a=8,l=Ci(r.substring(h,o)),o++;break;case 69:o++;break;case 70:n=Av,o++;continue;case 71:n=Fv,o++;continue;case 79:if(o-f<8&&r.substring(f+1,o+1).match(/^[0-9a-fA-F]{0,6}(\r\n|[\n\r])|[ \t]$/)){o++;continue}case 68:a=8,l=Ci(r.substring(h,o)),o++,n=zv;continue;case 74:if(o++,o-f<9&&r.substring(f+1,o).match(/^[0-9a-fA-F]{0,6}(\r\n|[\n\r])$/))continue;a=54,l="E_CSS_UNEXPECTED_NEWLINE",n=ii;break;case 73:if(o-f<9&&r.substring(f+1,o+1).match(/^[0-9a-fA-F]{0,6}[ \t]$/)){o++,n=ni;continue}l=Ci(r.substring(h,o));break;case 75:f=o++;continue;case 76:o++,n=rp;continue;default:if(n!==ii){a=54,l="E_CSS_UNEXPECTED_STATE";break}h=o,a=0}if(p.type=a,p.precededBySpace=d,p.num=c,p.text=l,p.position=h,t++,t>=e)break;n=ii,d=!1,a=0,h=o,l="",c=0,p=s[t&i]}this.position=o,this.tail=t&i}},qe=null,nl=null;function Hr(){return qe}function V(t){if(!qe)throw new Error("E_TASK_NO_CONTEXT");qe.name||(qe.name=t);let e=qe,i=new Js(e,e.top,t);return e.top=i,i.state=1,i}function $v(t){return new Wv(t||new Uv)}function F(t){return new rl(t)}function hn(t,e,i){let n=V(t);n.handler=i;try{e(n)}catch(r){n.task.raise(r,n)}return n.result()}function Hv(t,e){return(qe?qe.getScheduler():nl||$v()).run(t,e)}var Uv=class{currentTime(){return new Date().valueOf()}setTimeout(t,e){return setTimeout(t,e)}clearTimeout(t){clearTimeout(t)}},Wv=class{constructor(t){u(this,"timer",t),u(this,"timeout",1),u(this,"slice",25),u(this,"sliceOverTime",0),u(this,"queue"),u(this,"wakeupTime",null),u(this,"timeoutToken",null),u(this,"inTimeSlice",!1),u(this,"order",0),this.queue=new qm,nl||(nl=this)}setSlice(t){this.slice=t}setTimeout(t){this.timeout=t}isTimeSliceOver(){return this.timer.currentTime()>=this.sliceOverTime}arm(){if(this.inTimeSlice)return;let t=this.queue.peek().scheduledTime,e=this.timer.currentTime();if(this.timeoutToken!=null){if(e+this.timeout>this.wakeupTime)return;this.timer.clearTimeout(this.timeoutToken)}let i=t-e;i<=this.timeout&&(i=this.timeout),this.wakeupTime=e+i,this.timeoutToken=this.timer.setTimeout(()=>{this.timeoutToken=null,this.doTimeSlice()},i)}schedule(t,e){let i=this.timer.currentTime();t.order=this.order++,t.scheduledTime=i+(e||0),this.queue.add(t),this.arm()}doTimeSlice(){this.timeoutToken!=null&&(this.timer.clearTimeout(this.timeoutToken),this.timeoutToken=null),this.inTimeSlice=!0;try{let t=this.timer.currentTime();for(this.sliceOverTime=t+this.slice;this.queue.length();){let e=this.queue.peek();if(e.scheduledTime>t||(this.queue.remove(),e.canceled||e.resumeInternal(),t=this.timer.currentTime(),t>=this.sliceOverTime))break}}catch(t){Y.error(t)}this.inTimeSlice=!1,this.queue.length()&&this.arm()}run(t,e){let i=new Gv(this,e||"");i.top=new Js(i,null,"bootstrap"),i.top.state=1,i.top.then(()=>{let r=()=>{i.running=!1;for(let o of i.callbacks)try{o()}catch(s){Y.error(s)}};try{t().then(o=>{i.result=o,r()})}catch(o){i.raise(o),r()}});let n=qe;return qe=i,this.schedule(i.top.suspend("bootstrap")),qe=n,i}},op=class{constructor(t){u(this,"task",t),u(this,"scheduledTime",0),u(this,"order",0),u(this,"result",null),u(this,"canceled",!1)}compare(t){let e=t;return e.scheduledTime-this.scheduledTime||e.order-this.order}getTask(){return this.task}schedule(t,e){this.result=t;let i=this.task;i&&i.scheduler.schedule(this,e)}resumeInternal(){let t=this.task;if(this.task=null,t&&t.continuation==this){t.continuation=null;let e=qe;return qe=t,t.top.finish(this.result),qe=e,!0}return!1}cancel(){this.canceled=!0}},Gv=class{constructor(t,e){u(this,"scheduler",t),u(this,"name",e),u(this,"callbacks",[]),u(this,"exception",null),u(this,"running",!0),u(this,"result",null),u(this,"waitTarget",null),u(this,"top",null),u(this,"continuation",null)}getName(){return this.name}interrupt(t){if(this.raise(t||new Error("E_TASK_INTERRUPT")),this!==qe&&this.continuation){this.continuation.cancel();let e=new op(this);this.waitTarget="interrupt",this.continuation=e,this.scheduler.schedule(e)}}getScheduler(){return this.scheduler}isRunning(){return this.running}whenDone(t){this.callbacks.push(t)}join(){let t=V("Task.join");if(!this.running)t.finish(this.result);else{let e=t.suspend(this);this.whenDone(()=>{e.schedule(this.result)})}return t.result()}unwind(){for(;this.top&&!this.top.handler;)this.top=this.top.parent;if(this.top&&this.top.handler&&this.exception){let t=this.exception;this.exception=null,this.top.handler(this.top,t)}else this.exception&&Y.error(this.exception,"Unhandled exception in task",this.name)}raise(t,e){if(this.fillStack(t),e){let i=this.top;for(;i&&i!=e;)i=i.parent;i==e&&(this.top=i)}this.exception=t,this.unwind()}fillStack(t){let e=t.frameTrace;if(!e){e=t.stack?`${t.stack}
1
+ var fm=Object.create;var vs=Object.defineProperty;var gm=Object.getOwnPropertyDescriptor;var mm=Object.getOwnPropertyNames;var ym=Object.getPrototypeOf,vm=Object.prototype.hasOwnProperty;var wm=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(i){throw t=0,i}},bm=(e,t)=>{for(var i in t)vs(e,i,{get:t[i],enumerable:!0})},Zh=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of mm(t))!vm.call(e,r)&&r!==i&&vs(e,r,{get:()=>t[r],enumerable:!(n=gm(t,r))||n.enumerable});return e};var xm=(e,t,i)=>(i=e!=null?fm(ym(e)):{},Zh(t||!e||!e.__esModule?vs(i,"default",{value:e,enumerable:!0}):i,e)),Sm=e=>Zh(vs({},"__esModule",{value:!0}),e);var hm=wm((OP,lm)=>{"use strict";var Cm=Object.create,es=Object.defineProperty,Pm=Object.getOwnPropertyDescriptor,km=Object.getOwnPropertyNames,Em=Object.getPrototypeOf,Nm=Object.prototype.hasOwnProperty,Xc=e=>{throw TypeError(e)},Tm=(e,t,i)=>t in e?es(e,t,{enumerable:!0,configurable:!0,writable:!0,value:i}):e[t]=i,Im=(e,t)=>()=>{try{return t||e((t={exports:{}}).exports,t),t.exports}catch(i){throw t=0,i}},Am=(e,t)=>{for(var i in t)es(e,i,{get:t[i],enumerable:!0})},qc=(e,t,i,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of km(t))!Nm.call(e,r)&&r!==i&&es(e,r,{get:()=>t[r],enumerable:!(n=Pm(t,r))||n.enumerable});return e},Fm=(e,t,i)=>(i=e!=null?Cm(Em(e)):{},qc(t||!e||!e.__esModule?es(i,"default",{value:e,enumerable:!0}):i,e)),Rm=e=>qc(es({},"__esModule",{value:!0}),e),u=(e,t,i)=>Tm(e,typeof t!="symbol"?t+"":t,i),Gl=(e,t,i)=>t.has(e)||Xc("Cannot "+i),H=(e,t,i)=>(Gl(e,t,"read from private field"),i?i.call(e):t.get(e)),se=(e,t,i)=>t.has(e)?Xc("Cannot add the same private member more than once"):t instanceof WeakSet?t.add(e):t.set(e,i),de=(e,t,i,n)=>(Gl(e,t,"write to private field"),n?n.call(e,i):t.set(e,i),i),le=(e,t,i)=>(Gl(e,t,"access private method"),i),Lm=Im((e,t)=>{var i=-1,n=1,r=0;function s(k,M,T,$,O){if(k===M)return k?[[r,k]]:[];if(T!=null){var A=X(k,M,T);if(A)return A}var L=l(k,M),W=k.substring(0,L);k=k.substring(L),M=M.substring(L),L=d(k,M);var G=k.substring(k.length-L);k=k.substring(0,k.length-L),M=M.substring(0,M.length-L);var U=o(k,M);return W&&U.unshift([r,W]),G&&U.push([r,G]),y(U,O),$&&f(U),U}function o(k,M){var T;if(!k)return[[n,M]];if(!M)return[[i,k]];var $=k.length>M.length?k:M,O=k.length>M.length?M:k,A=$.indexOf(O);if(A!==-1)return T=[[n,$.substring(0,A)],[r,O],[n,$.substring(A+O.length)]],k.length>M.length&&(T[0][0]=T[2][0]=i),T;if(O.length===1)return[[i,k],[n,M]];var L=p(k,M);if(L){var W=L[0],G=L[1],U=L[2],V=L[3],K=L[4],ne=s(W,U),ie=s(G,V);return ne.concat([[r,K]],ie)}return a(k,M)}function a(k,M){for(var T=k.length,$=M.length,O=Math.ceil((T+$)/2),A=O,L=2*O,W=new Array(L),G=new Array(L),U=0;U<L;U++)W[U]=-1,G[U]=-1;W[A+1]=0,G[A+1]=0;for(var V=T-$,K=V%2!==0,ne=0,ie=0,be=0,xe=0,pe=0;pe<O;pe++){for(var fe=-pe+ne;fe<=pe-ie;fe+=2){var Se=A+fe,Ne;fe===-pe||fe!==pe&&W[Se-1]<W[Se+1]?Ne=W[Se+1]:Ne=W[Se-1]+1;for(var Le=Ne-fe;Ne<T&&Le<$&&k.charAt(Ne)===M.charAt(Le);)Ne++,Le++;if(W[Se]=Ne,Ne>T)ie+=2;else if(Le>$)ne+=2;else if(K){var Oe=A+V-fe;if(Oe>=0&&Oe<L&&G[Oe]!==-1){var ge=T-G[Oe];if(Ne>=ge)return h(k,M,Ne,Le)}}}for(var rt=-pe+be;rt<=pe-xe;rt+=2){var Oe=A+rt,ge;rt===-pe||rt!==pe&&G[Oe-1]<G[Oe+1]?ge=G[Oe+1]:ge=G[Oe-1]+1;for(var ot=ge-rt;ge<T&&ot<$&&k.charAt(T-ge-1)===M.charAt($-ot-1);)ge++,ot++;if(G[Oe]=ge,ge>T)xe+=2;else if(ot>$)be+=2;else if(!K){var Se=A+V-rt;if(Se>=0&&Se<L&&W[Se]!==-1){var Ne=W[Se],Le=A+Ne-Se;if(ge=T-ge,Ne>=ge)return h(k,M,Ne,Le)}}}}return[[i,k],[n,M]]}function h(k,M,T,$){var O=k.substring(0,T),A=M.substring(0,$),L=k.substring(T),W=M.substring($),G=s(O,A),U=s(L,W);return G.concat(U)}function l(k,M){if(!k||!M||k.charAt(0)!==M.charAt(0))return 0;for(var T=0,$=Math.min(k.length,M.length),O=$,A=0;T<O;)k.substring(A,O)==M.substring(A,O)?(T=O,A=T):$=O,O=Math.floor(($-T)/2+T);return C(k.charCodeAt(O-1))&&O--,O}function c(k,M){var T=k.length,$=M.length;if(T==0||$==0)return 0;T>$?k=k.substring(T-$):T<$&&(M=M.substring(0,T));var O=Math.min(T,$);if(k==M)return O;for(var A=0,L=1;;){var W=k.substring(O-L),G=M.indexOf(W);if(G==-1)return A;L+=G,(G==0||k.substring(O-L)==M.substring(0,L))&&(A=L,L++)}}function d(k,M){if(!k||!M||k.slice(-1)!==M.slice(-1))return 0;for(var T=0,$=Math.min(k.length,M.length),O=$,A=0;T<O;)k.substring(k.length-O,k.length-A)==M.substring(M.length-O,M.length-A)?(T=O,A=T):$=O,O=Math.floor(($-T)/2+T);return S(k.charCodeAt(k.length-O))&&O--,O}function p(k,M){var T=k.length>M.length?k:M,$=k.length>M.length?M:k;if(T.length<4||$.length*2<T.length)return null;function O(ie,be,xe){for(var pe=ie.substring(xe,xe+Math.floor(ie.length/4)),fe=-1,Se="",Ne,Le,Oe,ge;(fe=be.indexOf(pe,fe+1))!==-1;){var rt=l(ie.substring(xe),be.substring(fe)),ot=d(ie.substring(0,xe),be.substring(0,fe));Se.length<ot+rt&&(Se=be.substring(fe-ot,fe)+be.substring(fe,fe+rt),Ne=ie.substring(0,xe-ot),Le=ie.substring(xe+rt),Oe=be.substring(0,fe-ot),ge=be.substring(fe+rt))}return Se.length*2>=ie.length?[Ne,Le,Oe,ge,Se]:null}var A=O(T,$,Math.ceil(T.length/4)),L=O(T,$,Math.ceil(T.length/2)),W;if(!A&&!L)return null;L?A?W=A[4].length>L[4].length?A:L:W=L:W=A;var G,U,V,K;k.length>M.length?(G=W[0],U=W[1],V=W[2],K=W[3]):(V=W[0],K=W[1],G=W[2],U=W[3]);var ne=W[4];return[G,U,V,K,ne]}function f(k){for(var M=!1,T=[],$=0,O=null,A=0,L=0,W=0,G=0,U=0;A<k.length;)k[A][0]==r?(T[$++]=A,L=G,W=U,G=0,U=0,O=k[A][1]):(k[A][0]==n?G+=k[A][1].length:U+=k[A][1].length,O&&O.length<=Math.max(L,W)&&O.length<=Math.max(G,U)&&(k.splice(T[$-1],0,[i,O]),k[T[$-1]+1][0]=n,$--,$--,A=$>0?T[$-1]:-1,L=0,W=0,G=0,U=0,O=null,M=!0)),A++;for(M&&y(k),P(k),A=1;A<k.length;){if(k[A-1][0]==i&&k[A][0]==n){var V=k[A-1][1],K=k[A][1],ne=c(V,K),ie=c(K,V);ne>=ie?(ne>=V.length/2||ne>=K.length/2)&&(k.splice(A,0,[r,K.substring(0,ne)]),k[A-1][1]=V.substring(0,V.length-ne),k[A+1][1]=K.substring(ne),A++):(ie>=V.length/2||ie>=K.length/2)&&(k.splice(A,0,[r,V.substring(0,ie)]),k[A-1][0]=n,k[A-1][1]=K.substring(0,K.length-ie),k[A+1][0]=i,k[A+1][1]=V.substring(ie),A++),A++}A++}}var g=/[^a-zA-Z0-9]/,m=/\s/,w=/[\r\n]/,b=/\n\r?\n$/,x=/^\r?\n\r?\n/;function P(k){function M(ie,be){if(!ie||!be)return 6;var xe=ie.charAt(ie.length-1),pe=be.charAt(0),fe=xe.match(g),Se=pe.match(g),Ne=fe&&xe.match(m),Le=Se&&pe.match(m),Oe=Ne&&xe.match(w),ge=Le&&pe.match(w),rt=Oe&&ie.match(b),ot=ge&&be.match(x);return rt||ot?5:Oe||ge?4:fe&&!Ne&&Le?3:Ne||Le?2:fe||Se?1:0}for(var T=1;T<k.length-1;){if(k[T-1][0]==r&&k[T+1][0]==r){var $=k[T-1][1],O=k[T][1],A=k[T+1][1],L=d($,O);if(L){var W=O.substring(O.length-L);$=$.substring(0,$.length-L),O=W+O.substring(0,O.length-L),A=W+A}for(var G=$,U=O,V=A,K=M($,O)+M(O,A);O.charAt(0)===A.charAt(0);){$+=O.charAt(0),O=O.substring(1)+A.charAt(0),A=A.substring(1);var ne=M($,O)+M(O,A);ne>=K&&(K=ne,G=$,U=O,V=A)}k[T-1][1]!=G&&(G?k[T-1][1]=G:(k.splice(T-1,1),T--),k[T][1]=U,V?k[T+1][1]=V:(k.splice(T+1,1),T--))}T++}}function y(k,M){k.push([r,""]);for(var T=0,$=0,O=0,A="",L="",W;T<k.length;){if(T<k.length-1&&!k[T][1]){k.splice(T,1);continue}switch(k[T][0]){case n:O++,L+=k[T][1],T++;break;case i:$++,A+=k[T][1],T++;break;case r:var G=T-O-$-1;if(M){if(G>=0&&E(k[G][1])){var U=k[G][1].slice(-1);if(k[G][1]=k[G][1].slice(0,-1),A=U+A,L=U+L,!k[G][1]){k.splice(G,1),T--;var V=G-1;k[V]&&k[V][0]===n&&(O++,L=k[V][1]+L,V--),k[V]&&k[V][0]===i&&($++,A=k[V][1]+A,V--),G=V}}if(N(k[T][1])){var U=k[T][1].charAt(0);k[T][1]=k[T][1].slice(1),A+=U,L+=U}}if(T<k.length-1&&!k[T][1]){k.splice(T,1);break}if(A.length>0||L.length>0){A.length>0&&L.length>0&&(W=l(L,A),W!==0&&(G>=0?k[G][1]+=L.substring(0,W):(k.splice(0,0,[r,L.substring(0,W)]),T++),L=L.substring(W),A=A.substring(W)),W=d(L,A),W!==0&&(k[T][1]=L.substring(L.length-W)+k[T][1],L=L.substring(0,L.length-W),A=A.substring(0,A.length-W)));var K=O+$;A.length===0&&L.length===0?(k.splice(T-K,K),T=T-K):A.length===0?(k.splice(T-K,K,[n,L]),T=T-K+1):L.length===0?(k.splice(T-K,K,[i,A]),T=T-K+1):(k.splice(T-K,K,[i,A],[n,L]),T=T-K+2)}T!==0&&k[T-1][0]===r?(k[T-1][1]+=k[T][1],k.splice(T,1)):T++,O=0,$=0,A="",L="";break}}k[k.length-1][1]===""&&k.pop();var ne=!1;for(T=1;T<k.length-1;)k[T-1][0]===r&&k[T+1][0]===r&&(k[T][1].substring(k[T][1].length-k[T-1][1].length)===k[T-1][1]?(k[T][1]=k[T-1][1]+k[T][1].substring(0,k[T][1].length-k[T-1][1].length),k[T+1][1]=k[T-1][1]+k[T+1][1],k.splice(T-1,1),ne=!0):k[T][1].substring(0,k[T+1][1].length)==k[T+1][1]&&(k[T-1][1]+=k[T+1][1],k[T][1]=k[T][1].substring(k[T+1][1].length)+k[T+1][1],k.splice(T+1,1),ne=!0)),T++;ne&&y(k,M)}function C(k){return k>=55296&&k<=56319}function S(k){return k>=56320&&k<=57343}function N(k){return S(k.charCodeAt(0))}function E(k){return C(k.charCodeAt(k.length-1))}function R(k){for(var M=[],T=0;T<k.length;T++)k[T][1].length>0&&M.push(k[T]);return M}function _(k,M,T,$){return E(k)||N($)?null:R([[r,k],[i,M],[n,T],[r,$]])}function X(k,M,T){var $=typeof T=="number"?{index:T,length:0}:T.oldRange,O=typeof T=="number"?null:T.newRange,A=k.length,L=M.length;if($.length===0&&(O===null||O.length===0)){var W=$.index,G=k.slice(0,W),U=k.slice(W),V=O?O.index:null;e:{var K=W+L-A;if(V!==null&&V!==K||K<0||K>L)break e;var ne=M.slice(0,K),ie=M.slice(K);if(ie!==U)break e;var be=Math.min(W,K),xe=G.slice(0,be),pe=ne.slice(0,be);if(xe!==pe)break e;var fe=G.slice(be),Se=ne.slice(be);return _(xe,fe,Se,U)}e:{if(V!==null&&V!==W)break e;var Ne=W,ne=M.slice(0,Ne),ie=M.slice(Ne);if(ne!==G)break e;var Le=Math.min(A-Ne,L-Ne),Oe=U.slice(U.length-Le),ge=ie.slice(ie.length-Le);if(Oe!==ge)break e;var fe=U.slice(0,U.length-Le),Se=ie.slice(0,ie.length-Le);return _(G,fe,Se,Oe)}}if($.length>0&&O&&O.length===0)e:{var xe=k.slice(0,$.index),Oe=k.slice($.index+$.length),be=xe.length,Le=Oe.length;if(L<be+Le)break e;var pe=M.slice(0,be),ge=M.slice(L-Le);if(xe!==pe||Oe!==ge)break e;var fe=k.slice(be,A-Le),Se=M.slice(be,L-Le);return _(xe,fe,Se,Oe)}return null}function te(k,M,T,$){return s(k,M,T,$,!0)}te.INSERT=n,te.DELETE=i,te.EQUAL=r,t.exports=te}),Yc={};Am(Yc,{CoreViewer:()=>om,HOOKS:()=>Go,Navigation:()=>am,PageProgression:()=>jl,PageSide:()=>Jc,PageViewMode:()=>EP,Profiler:()=>td,ReadyState:()=>Qc,UserAgentBaseCss:()=>hp,UserAgentCounterStylesCss:()=>dp,UserAgentPageCss:()=>lp,UserAgentTocCss:()=>up,UserAgentXml:()=>ap,ValidationTxt:()=>op,VivliostylePolyfillCss:()=>cp,VivliostyleViewportCss:()=>sp,VivliostyleViewportScreenCss:()=>rp,ZoomType:()=>kP,getHooksForName:()=>Dt,isDebug:()=>_r,pageProgressionOf:()=>Zc,plugin:()=>Bm,printHTML:()=>TP,profile:()=>zm,profiler:()=>Nt,registerHook:()=>Ft,removeHook:()=>Xl,setDebug:()=>Kc});lm.exports=Rm(Yc);var _r=!1;function Kc(e){_r=e}var jl=(e=>(e.LTR="ltr",e.RTL="rtl",e))(jl||{});function Zc(e){switch(e){case"ltr":return"ltr";case"rtl":return"rtl";default:throw new Error(`unknown PageProgression: ${e}`)}}var Jc=(e=>(e.LEFT="left",e.RIGHT="right",e))(Jc||{}),Qc=(e=>(e.LOADING="loading",e.INTERACTIVE="interactive",e.COMPLETE="complete",e))(Qc||{}),ed=(e=>(e[e.DEBUG=1]="DEBUG",e[e.INFO=2]="INFO",e[e.WARN=3]="WARN",e[e.ERROR=4]="ERROR",e))(ed||{}),Om=class{constructor(e){u(this,"opt_console",e),u(this,"listeners",{})}consoleDebug(e){this.opt_console?this.opt_console.debug?this.opt_console.debug(...e):this.opt_console.log(...e):console.debug(...e)}consoleInfo(e){this.opt_console?this.opt_console.info?this.opt_console.info(...e):this.opt_console.log(...e):console.info(...e)}consoleWarn(e){this.opt_console?this.opt_console.warn?this.opt_console.warn(...e):this.opt_console.log(...e):console.warn(...e)}consoleError(e){this.opt_console?this.opt_console.error?this.opt_console.error(...e):this.opt_console.log(...e):console.error(...e)}triggerListeners(e,t){let i=this.listeners[e];i&&i(t)}addListener(e,t){this.listeners[e]=t}debug(...e){let t=ws(arguments);this.consoleDebug(bs(t)),this.triggerListeners(1,t)}info(...e){let t=ws(arguments);this.consoleInfo(bs(t)),this.triggerListeners(2,t)}warn(...e){let t=ws(arguments);this.consoleWarn(bs(t)),this.triggerListeners(3,t)}error(...e){let t=ws(arguments);this.consoleError(bs(t)),this.triggerListeners(4,t)}};function ws(e){let t=Array.from(e),i=null;return t[0]instanceof Error&&(i=t.shift()),{error:i,messages:t}}function bs(e){let t=e.error,i=t&&(t.frameTrace||t.stack),n=[].concat(e.messages);return t&&(n.length>0&&(n=n.concat([`
2
+ `])),n=n.concat([t.toString()]),i&&(n=n.concat([`
3
+ `]).concat(i))),n}var Z=new Om,Go=(e=>(e.SIMPLE_PROPERTY="SIMPLE_PROPERTY",e.PREPROCESS_SINGLE_DOCUMENT="PREPROCESS_SINGLE_DOCUMENT",e.PREPROCESS_TEXT_CONTENT="PREPROCESS_TEXT_CONTENT",e.PREPROCESS_ELEMENT_STYLE="PREPROCESS_ELEMENT_STYLE",e.POLYFILLED_INHERITED_PROPS="POLYFILLED_INHERITED_PROPS",e.CONFIGURATION="CONFIGURATION",e.RESOLVE_TEXT_NODE_BREAKER="RESOLVE_TEXT_NODE_BREAKER",e.RESOLVE_FORMATTING_CONTEXT="RESOLVE_FORMATTING_CONTEXT",e.RESOLVE_LAYOUT_PROCESSOR="RESOLVE_LAYOUT_PROCESSOR",e.POST_LAYOUT_BLOCK="POST_LAYOUT_BLOCK",e.PAGINATION_PROGRESS="PAGINATION_PROGRESS",e))(Go||{}),uo={};function Ft(e,t,i){if(!Go[e])Z.warn(new Error(`Skipping unknown plugin hook '${e}'.`));else{let n=uo[e];n||(n=uo[e]=[]),i?n.unshift(t):n.push(t)}}function Xl(e,t){if(!Go[e])Z.warn(new Error(`Ignoring unknown plugin hook '${e}'.`));else{let i=uo[e];if(i){let n=i.indexOf(t);n>=0&&i.splice(n,1)}}}function Dt(e){return uo[e]||[]}var Bm={registerHook:Ft,removeHook:Xl},td=class{constructor(e){u(this,"performanceInstance",e),u(this,"timestamps",{}),u(this,"registerTiming"),u(this,"registerStartTiming"),u(this,"registerEndTiming"),this.registerTiming=mn,this.registerStartTiming=this.registerStartTiming=mn,this.registerEndTiming=this.registerEndTiming=mn}forceRegisterStartTiming(e,t){va.call(this,e,"start",t)}forceRegisterEndTiming(e,t){va.call(this,e,"end",t)}printTimings(){let e=this.timestamps,t="";Object.keys(e).forEach(i=>{let n=e[i],r=n.length;for(let s=0;s<r;s++){let o=n[s];t+=i,r>1&&(t+=`(${s})`),t+=` => start: ${o.start}, end: ${o.end}, duration: ${o.end-o.start}
4
+ `}}),Z.info(t)}disable(){this.registerTiming=mn,this.registerStartTiming=this.registerStartTiming=mn,this.registerEndTiming=this.registerEndTiming=mn}enable(){this.registerTiming=va,this.registerStartTiming=this.registerStartTiming=Jh,this.registerEndTiming=this.registerEndTiming=Mm}isEnabled(){return this.registerStartTiming===Jh}};function mn(){}function va(e,t,i){i||(i=this.performanceInstance.now());let n=this.timestamps[e];n||(n=this.timestamps[e]=[]);let r,s=n.length;for(let o=s-1;o>=0&&(r=n[o],!(r&&!r[t]));o--)r=null;r||(r={},n.push(r)),r[t]=i}function Jh(e,t){this.registerTiming(e,"start",t)}function Mm(e,t){this.registerTiming(e,"end",t)}var _m={now:Date.now},Dm=window&&window.performance,Nt=new td(Dm||_m);Nt.forceRegisterStartTiming("load_vivliostyle");var zm={profiler:{registerStartTiming:Nt.registerStartTiming,registerEndTiming:Nt.registerEndTiming,printTimings:Nt.printTimings,disable:Nt.disable,enable:Nt.enable}},ts=navigator.userAgent.includes("Chrome")?"chromium":navigator.userAgent.includes("Firefox")?"firefox":navigator.userAgent.includes("AppleWebKit")?"webkit":"unknown",Dr=/^[\s\p{Zs}\p{P}\p{Mn}]*[\p{L}\p{N}]\p{Mn}*(?:[\s\p{Zs}]*\p{P}\p{Mn}*)*/u,jt="data-adapt-eloff",Vm={};function ql(e){return JSON.parse(e)}function gt(e){let t=e.match(/^([^#]*)/);return t?t[1]:e}function id(e){let t=e.match(/^([^#?]*)/);return t?t[1]:e}var Yl="?viv-toc-box";function jo(e){return e.endsWith(Yl)}function wn(e){return jo(e)?e.slice(0,-Yl.length):e}function Ua(e){return jo(e)?e:gt(e)+Yl}var an=window.location.href;function Qh(e){an=e}var Ti=window.location.href;function eu(e){Ti=e}function Um(e){let t=id(e).match(/^(https?:\/\/raw\.githack\.com\/web-platform-tests\/wpt\/[^/]+)(?:\/|$)/);return t?t[1]:null}function zr(e){return e.replace(/^(https?:)\/\/raw\.githack\.com\/web-platform-tests\/wpt\/[^/]+\//,"$1//wpt.live/")}function Fe(e,t){if(/^data:/i.test(t))return e||t;if(!t||e.match(/^\w{2,}:/))return e.toLowerCase().match("^javascript:")?"#":(e.match(/^\w{2,}:\/\/[^\/]+$/)&&(e=`${e}/`),e);t.match(/^\w{2,}:\/\/[^\/]+$/)&&(t=`${t}/`);let i;if(e.match(/^\/\//))return i=t.match(/^(\w{2,}:)\/\//),i?i[1]+e:e;if(e.match(/^\//)){let o=Um(t);return o?o+e:(i=t.match(/^(\w{2,}:\/\/[^\/]+)\//),i?i[1]+e:e)}if(e.match(/^\.(\/|$)/)&&(e=e.substr(2)),t=id(t),e.match(/^#/))return t+e;let n=t.lastIndexOf("/");if(n<0)return e;let r=t.substr(0,n+1)+e,s="";for(i=r.match(/^([^?#]*)([?#].*)$/),i&&(r=i[1],s=i[2]);n=r.indexOf("/../"),!(n<=0);){let o=r.lastIndexOf("/",n-1);if(o<=0)break;r=r.substr(0,o)+r.substr(n+3)}return r.replace(/\/(\.\/)+/g,"/")+s}function co(e,t){return e.match(/^#/)&&t?gt(t)+e:Fe(e,t)}function nd(e){return/^about:blank($|[?#])/i.test(e)?"data:text/html,":e}function Mn(e){let t;return(e=nd(e))!==e||((t=/^(https?:)\/\/github\.com\/web-platform-tests\/wpt\/(blob\/|tree\/|raw\/)?(.*)$/.exec(e))?e=`${t[1]}//raw.githack.com/web-platform-tests/wpt/${t[2]?"":"master/"}${t[3]}`:(t=/^(https?:)\/\/github\.com\/([^/]+\/[^/]+)\/(blob\/|tree\/|raw\/)?(.*)$/.exec(e))?e=`${t[1]}//raw.githubusercontent.com/${t[2]}/${t[3]?"":"master/"}${t[4]}`:(t=/^(https?:)\/\/wpt\.live\/(.*)$/.exec(e))?/\.sub\.[^/]+(?:[?#].*)?$/.test(t[2])||(e=`${t[1]}//raw.githack.com/web-platform-tests/wpt/master/${t[2]}`):(t=/^(https?:)\/\/www\.aozora\.gr\.jp\/(cards\/[^/]+\/files\/[^/.]+\.html)$/.exec(e))?e=`${t[1]}//raw.githubusercontent.com/aozorabunko/aozorabunko/master/${t[2]}`:(t=/^(https?:)\/\/gist\.github\.com\/([^/]+\/\w+)(\/|$)(raw(\/|$))?(.*)$/.exec(e))?e=`${t[1]}//gist.githubusercontent.com/${t[2]}/raw/${t[6]}`:(t=/^(https?:)\/\/gist\.github\.com\/([^/]+\/\w+)(?:#|%23)file-(.*)-(\w+)$/.exec(e))?e=`${t[1]}//gist.githubusercontent.com/${t[2]}/raw/${t[3]}.${t[4]}`:(t=/^(https?:)\/\/(?:[^/.]+\.)?jsbin\.com\/(?!(?:blog|help)\b)(\w+)((\/\d+)?).*$/.exec(e))&&(e=`${t[1]}//output.jsbin.com/${t[2]}${t[3]}/`)),e}function tu(e){return e==null?e:e.toString()}var $m=class{constructor(){u(this,"queue",[null])}length(){return this.queue.length-1}add(e){let t=this.queue.length;for(;t>1;){let i=Math.floor(t/2),n=this.queue[i];if(n.compare(e)>0){this.queue[t]=e;return}this.queue[t]=n,t=i}this.queue[1]=e}peek(){return this.queue[1]}remove(){let e=this.queue[1],t=this.queue.pop(),i=this.queue.length;if(i>1){let n=1;for(;;){let r=n*2;if(r>=i)break;if(this.queue[r].compare(t)>0)r+1<i&&this.queue[r+1].compare(this.queue[r])>0&&r++;else if(r+1<i&&this.queue[r+1].compare(t)>0)r++;else break;this.queue[n]=this.queue[r],n=r}this.queue[n]=t}return e}},rd=["","-webkit-","-moz-"],bn={};function Gs(e,t){return CSS.supports(e+t,"unset")}function Hm(e){let t=bn[e];if(t||t===null)return t;switch(e){case"behavior":case"template":case"ua-list-item-count":case"x-first-pseudo":return bn[e]=null,null;case"text-combine-upright":if(Gs("-webkit-","text-combine")&&!Gs("","text-combine-upright"))return bn[e]=["-webkit-text-combine"],["-webkit-text-combine"];break}for(let i of rd)if(Gs(i,e))return t=[i+e],bn[e]=t,t;return Z.warn("Property not supported by the browser: ",e),bn[e]=null,null}function F(e,t,i){let n=e?.style;if(!n)return;if(t.startsWith("--")){n.setProperty(t,i||" ");return}let r=Hm(t);if(r)for(let s of r){switch(s){case"-webkit-text-combine":i==="all"&&(i="horizontal");break;case"text-combine-upright":i==="all"&&n.setProperty("text-indent","0");break}n.setProperty(s,i)}}function Ii(e,t,i){try{let n=bn[t];return e.style.getPropertyValue(n?n[0]:t)}catch{}return i||""}function Wm(e){return e.documentElement}function $a(e){return e.nextElementSibling}function iu(e){return e.previousElementSibling}var Gm=class Ha{constructor(t,i){u(this,"root",t),u(this,"node",i)}static atRoot(t){return new Ha(t,t)}moveTo(t){return t===null?null:new Ha(this.root,t)}get firstChild(){return this.moveTo(this.node.firstChild)}get nextSibling(){return this.moveTo(this.node.nextSibling)}get parent(){if(this.node===this.root)return null;let t=this.node.parentNode;return t===this.root||t===this.root.parentNode?null:this.moveTo(t)}};function Wa(e){let t=e.getAttributeNS("http://www.w3.org/XML/1998/namespace","lang");return!t&&e.namespaceURI=="http://www.w3.org/1999/xhtml"&&(t=e.getAttribute("lang")),t}var yi=class{constructor(){u(this,"list",[])}append(e){return this.list.push(e),this}clear(){this.list=[]}toString(){let e=this.list.join("");return this.list=[e],e}};function Kl(e){return`\\${e.charCodeAt(0).toString(16)} `}function Qt(e){return e.replace(/[^-_a-zA-Z0-9\u0080-\uFFFF]/g,Kl)}function Xo(e){return e.replace(/[\u0000-\u001F"\\]/g,Kl)}function nu(e){return e.replace(/[\s+&?=#\u007F-\uFFFF]+/g,encodeURIComponent)}function ru(e){return!!e.match(/^[a-zA-Z\u009E\u009F\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u024F\u037B-\u037D\u0386\u0388-\u0482\u048A-\u0527]$/)}function jm(e,t){return t=typeof t=="string"?t:"\\u",t+(65536|e.charCodeAt(0)).toString(16).substr(1)}function sd(e,t){function i(n){return jm(n,t)}return e.replace(/[^-a-zA-Z0-9_]/g,i)}function po(e){return sd(e)}function Xm(e,t){return t=typeof t=="string"?t:"\\u",e.indexOf(t)===0?String.fromCharCode(parseInt(e.substring(t.length),16)):e}function qm(e,t){t=typeof t=="string"?t:"\\u";function i(r){return Xm(r,t)}let n=new RegExp(`${po(t)}[0-9a-fA-F]{4}`,"g");return e.replace(n,i)}function vi(e,t){let i=0,n=e;for(;;){if(i<=n,i==0||t(i-1),n==e||t(n),i==n)return i;let r=i+n>>1;t(r)?n=r:i=r+1}}function od(e,t){return e-t}function su(e,t){let i={};for(let n of e){let r=t(n);r&&!i[r]&&(i[r]=n)}return i}function Ym(e){let t={};for(let i=0;i<e.length;i++)t[e[i]]=!0;return t}function wa(e,t){let i={};for(let n of e){let r=t(n);r&&(i[r]?i[r].push(n):i[r]=[n])}return i}function Km(e,t){let i={};for(let n in e)i[n]=t(e[n],n);return i}var Zl=class{constructor(){u(this,"listeners",{})}dispatchEvent(e){let t=this.listeners[e.type];if(t){e.target=this,e.currentTarget=this;for(let i=0;i<t.length;i++)t[i](e)}}addEventListener(e,t,i){if(i)return;let n=this.listeners[e];n?n.includes(t)||n.push(t):this.listeners[e]=[t]}removeEventListener(e,t,i){if(i)return;let n=this.listeners[e];if(n){let r=n.indexOf(t);r>=0&&n.splice(r,1)}}},tn={audio:!0,canvas:!0,embed:!0,iframe:!0,img:!0,math:!0,object:!0,picture:!0,svg:!0,video:!0};function ad(){return{fontFamily:"serif",lineHeight:1.25,margin:8,hyphenate:!1,columnWidth:25,horizontal:!1,nightMode:!1,spreadView:!1,pageBorder:1,enabledMediaTypes:{vivliostyle:!0,print:!0},defaultPaperSize:void 0}}function ld(e){return{fontFamily:e.fontFamily,lineHeight:e.lineHeight,margin:e.margin,hyphenate:e.hyphenate,columnWidth:e.columnWidth,horizontal:e.horizontal,nightMode:e.nightMode,spreadView:e.spreadView,pageBorder:e.pageBorder,enabledMediaTypes:Object.assign({},e.enabledMediaTypes),defaultPaperSize:e.defaultPaperSize?Object.assign({},e.defaultPaperSize):void 0}}var Jl=ad(),ou={PENDING:{}};function hd(e,t,i,n){let r=Math.min((e-0)/i,(t-0)/n);return`matrix(${r},0,0,${r},0,0)`}function Zm(e){return`"${Xo(`${e}`)}"`}function Jm(e){return Qt(`${e}`)}function Ga(e,t){return e?`${Qt(e)}.${Qt(t)}`:Qt(t)}var ud=0,ja=class{constructor(e,t){if(u(this,"parent",e),u(this,"resolver",t),u(this,"scopeKey"),u(this,"children",[]),u(this,"zero"),u(this,"one"),u(this,"_true"),u(this,"_false"),u(this,"values",{}),u(this,"funcs",{}),u(this,"builtIns",{}),this.scopeKey=`S${ud++}`,this.zero=new it(this,0),this.one=new it(this,1),this._true=new it(this,!0),this._false=new it(this,!1),e&&e.children.push(this),!e){let i=this.builtIns;i.floor=Math.floor,i.ceil=Math.ceil,i.round=Math.round,i.sqrt=Math.sqrt,i.min=Math.min,i.max=Math.max,i.letterbox=hd,i["css-string"]=Zm,i["css-name"]=Jm,i.typeof=n=>typeof n,this.defineBuiltInName("page-width",function(){return this.pageWidth()}),this.defineBuiltInName("page-height",function(){return this.pageHeight()}),this.defineBuiltInName("pref-font-family",function(){return this.pref.fontFamily}),this.defineBuiltInName("pref-night-mode",function(){return this.pref.nightMode}),this.defineBuiltInName("pref-hyphenate",function(){return this.pref.hyphenate}),this.defineBuiltInName("pref-margin",function(){return this.pref.margin}),this.defineBuiltInName("pref-line-height",function(){return this.pref.lineHeight}),this.defineBuiltInName("pref-column-width",function(){return this.pref.columnWidth*this.fontSize}),this.defineBuiltInName("pref-horizontal",function(){return this.pref.horizontal}),this.defineBuiltInName("pref-spread-view",function(){return this.pref.spreadView}),this.defineBuiltInName("pub-title",function(){return this.pubTitle?this.pubTitle:""}),this.defineBuiltInName("doc-title",function(){return this.docTitle?this.docTitle:""})}}defineBuiltInName(e,t){this.values[e]=new we(this,t,e)}defineName(e,t){this.values[e]=t}defineFunc(e,t){this.funcs[e]=t}defineBuiltIn(e,t){this.builtIns[e]=t}};function Qm(e){switch(e?.toLowerCase()){case"px":case"in":case"pt":case"pc":case"cm":case"mm":case"q":return!0;default:return!1}}function cd(e){switch(e?.toLowerCase()){case"vw":case"vh":case"vi":case"vb":case"vmin":case"vmax":case"pvw":case"pvh":case"pvi":case"pvb":case"pvmin":case"pvmax":return!0;default:return!1}}function ey(e){switch(e?.toLowerCase()){case"em":case"rem":case"lh":case"rlh":return!0;default:return!1}}function ty(e){switch(e?.toLowerCase()){case"rem":case"rlh":return!0;default:return!1}}var wi={px:1,in:96,pt:4/3,pc:96/6,cm:96/2.54,mm:96/25.4,q:96/2.54/40,em:16,rem:16,lh:20,rlh:20,dppx:1,dpi:1/96,dpcm:2.54/96};function dd(e){switch(e){case"q":return!CSS.supports("font-size","1q");case"lh":return!CSS.supports("line-height","1lh");case"rem":case"rlh":return!0;default:return!1}}var Xa=class{constructor(e,t,i,n,r){u(this,"rootScope",e),u(this,"viewportWidth",t),u(this,"viewportHeight",i),u(this,"actualPageWidth",null),u(this,"pageWidth"),u(this,"actualPageHeight",null),u(this,"pageHeight"),u(this,"initialFontSize"),u(this,"rootFontSize",null),u(this,"isRelativeRootFontSize",null),u(this,"fontSize"),u(this,"rootLineHeight"),u(this,"isRootLineHeightFromRelativeCalc",!1),u(this,"pref"),u(this,"scopes",{}),u(this,"pageAreaWidth",null),u(this,"pageAreaHeight",null),u(this,"pageVertical",null),u(this,"pubTitle",null),u(this,"docTitle",null),this.pageWidth=function(){return this.actualPageWidth?this.actualPageWidth:this.pref.spreadView?Math.floor(t/2)-this.pref.pageBorder:t},this.pageHeight=function(){return this.actualPageHeight?this.actualPageHeight:i},this.initialFontSize=n,this.rootLineHeight=r,this.fontSize=function(){return this.rootFontSize?this.rootFontSize:n},this.pref=Jl}getScopeContext(e){let t=this.scopes[e.scopeKey];return t||(t={},this.scopes[e.scopeKey]=t),t}clearScope(e){this.scopes[e.scopeKey]={};for(let t=0;t<e.children.length;t++)this.clearScope(e.children[t])}queryUnitSize(e,t,i){if(cd(e)){let n=this.pageWidth()/100,r=this.pageHeight()/100,s=this.pageAreaWidth!=null?this.pageAreaWidth/100:n,o=this.pageAreaHeight!=null?this.pageAreaHeight/100:r,a=i??this.pageVertical;switch(e){case"vw":return s;case"vh":return o;case"vi":return a?o:s;case"vb":return a?s:o;case"vmin":return s<o?s:o;case"vmax":return s>o?s:o;case"pvw":return n;case"pvh":return r;case"pvi":return a?r:n;case"pvb":return a?n:r;case"pvmin":return n<r?n:r;case"pvmax":return n>r?n:r}}return e=="em"||e=="rem"?t?this.initialFontSize:this.fontSize():e=="lh"||e=="rlh"?this.rootLineHeight:wi[e]}evalName(e,t){let i=e;for(;i;){let n=i.values[t];if(n||i.resolver&&(n=i.resolver.call(this,t,!1),n))return n;i=i.parent}throw new Error(`Name '${t}' is undefined`)}evalCall(e,t,i,n){let r=e;for(;r;){let s=r.funcs[t];if(s||r.resolver&&(s=r.resolver.call(this,t,!0),s))return s;let o=r.builtIns[t];if(o){if(n)return r.zero;let a=Array(i.length);for(let h=0;h<i.length;h++)a[h]=i[h].evaluate(this);return new it(r,o.apply(this,a))}r=r.parent}throw new Error(`Function '${t}' is undefined`)}evalMediaName(e,t){let i=e==="all"||!!this.pref.enabledMediaTypes[e];return t?!i:i}parseMediaFeature(e){let t="",i=e.match(/^(min|max)-(.*)$/);return i&&(t=i[1],e=i[2]),{feature:e,prefix:t}}actualMediaFeatureValue(e){switch(e){case"width":return this.pageWidth();case"height":return this.pageHeight();case"device-width":return window.screen.availWidth;case"device-height":return window.screen.availHeight;case"color":return window.screen.pixelDepth;default:return null}}evalMediaBooleanTest(e){let t=this.parseMediaFeature(e),i=this.actualMediaFeatureValue(t.feature);return i!=null&&i!==0}evalMediaTest(e,t){let i=this.parseMediaFeature(e),n=this.actualMediaFeatureValue(i.feature);if(n==null)return!1;let r=t.evaluate(this);if(r==null)return!1;switch(i.prefix){case"min":return n>=Number(r);case"max":return n<=Number(r);default:return n==r}}evalSupportsTest(e,t,i){return!1}queryVal(e,t){let i=this.scopes[e.scopeKey];return i?i[t]:void 0}storeVal(e,t,i){this.getScopeContext(e)[t]=i}},Vt=class{constructor(e){u(this,"scope",e),u(this,"key"),this.key=`_${ud++}`}toString(){let e=new yi;return this.appendTo(e,0),e.toString()}expand(e,t){return this}dependCore(e,t,i){return e===this}dependOuter(e,t,i){let n=i[this.key];if(n!=null)return n===ou.PENDING?!1:n;{i[this.key]=ou.PENDING;let r=this.dependCore(e,t,i);return i[this.key]=r,r}}depend(e,t){return this.dependOuter(e,t,{})}evaluate(e){let t=e.queryVal(this.scope,this.key);return typeof t<"u"||(t=this.evaluateCore(e),e.storeVal(this.scope,this.key,t)),t}isMediaName(){return!1}},pd=class extends Vt{constructor(e,t){super(e),u(this,"val",t)}evaluateCore(e){let t=this.val.evaluate(e);return this.evalPrefix(t)}dependCore(e,t,i){return e===this||this.val.dependOuter(e,t,i)}appendTo(e,t){10<t&&e.append("("),e.append(this.getOp()),this.val.appendTo(e,10),10<t&&e.append(")")}expand(e,t){let i=this.val.expand(e,t);return i===this.val?this:new this.constructor(this.scope,i)}},fd=class extends Vt{constructor(e,t,i){super(e),u(this,"lhs",t),u(this,"rhs",i)}dependCore(e,t,i){return e===this||this.lhs.dependOuter(e,t,i)||this.rhs.dependOuter(e,t,i)}appendTo(e,t){let i=this.getPriority();i<=t&&e.append("("),this.lhs.appendTo(e,i),e.append(this.getOp()),this.rhs.appendTo(e,i),i<=t&&e.append(")")}expand(e,t){let i=this.lhs.expand(e,t),n=this.rhs.expand(e,t);return i===this.lhs&&n===this.rhs?this:new this.constructor(this.scope,i,n)}},Ql=class extends fd{evaluateCore(e){let t=this.lhs.evaluate(e),i=this.rhs.evaluate(e);return this.evalInfix(t,i)}},gd=class extends fd{constructor(e,t,i){super(e,t,i)}getPriority(){return 1}},Yn=class extends Ql{constructor(e,t,i){super(e,t,i)}getPriority(){return 2}},md=class extends Ql{constructor(e,t,i){super(e,t,i)}getPriority(){return 3}},eh=class extends Ql{constructor(e,t,i){super(e,t,i)}getPriority(){return 4}},Li=class extends pd{constructor(e,t){super(e,t)}getOp(){return"!"}evalPrefix(e){return!e}},iy=class extends Li{constructor(e,t){super(e,t)}getOp(){return"not "}},Tn=class extends pd{constructor(e,t){super(e,t)}getOp(){return"-"}evalPrefix(e){return-Number(e)}},th=class extends gd{constructor(e,t,i){super(e,t,i)}getOp(){return"&&"}evaluateCore(e){return this.lhs.evaluate(e)&&this.rhs.evaluate(e)}},ny=class extends th{constructor(e,t,i){super(e,t,i)}getOp(){return" and "}},ih=class extends gd{constructor(e,t,i){super(e,t,i)}getOp(){return"||"}evaluateCore(e){return this.lhs.evaluate(e)||this.rhs.evaluate(e)}},ry=class extends ih{constructor(e,t,i){super(e,t,i)}getOp(){return", "}},sy=class extends ih{constructor(e,t,i){super(e,t,i)}getOp(){return" or "}},oy=class extends Yn{constructor(e,t,i){super(e,t,i)}getOp(){return"<"}evalInfix(e,t){return typeof e=="string"&&typeof t=="string"?e<t:Number(e)<Number(t)}},ay=class extends Yn{constructor(e,t,i){super(e,t,i)}getOp(){return"<="}evalInfix(e,t){return typeof e=="string"&&typeof t=="string"?e<=t:Number(e)<=Number(t)}},ly=class extends Yn{constructor(e,t,i){super(e,t,i)}getOp(){return">"}evalInfix(e,t){return typeof e=="string"&&typeof t=="string"?e>t:Number(e)>Number(t)}},qa=class extends Yn{constructor(e,t,i){super(e,t,i)}getOp(){return">="}evalInfix(e,t){return typeof e=="string"&&typeof t=="string"?e>=t:Number(e)>=Number(t)}},nh=class extends Yn{constructor(e,t,i){super(e,t,i)}getOp(){return"=="}evalInfix(e,t){return e==t}},hy=class extends Yn{constructor(e,t,i){super(e,t,i)}getOp(){return"!="}evalInfix(e,t){return e!=t}},yd=class extends md{constructor(e,t,i){super(e,t,i)}getOp(){return"+"}evalInfix(e,t){return typeof e=="string"||typeof t=="string"?`${e}${t}`:Number(e)+Number(t)}},vd=class extends md{constructor(e,t,i){super(e,t,i)}getOp(){return" - "}evalInfix(e,t){return Number(e)-Number(t)}},rh=class extends eh{constructor(e,t,i){super(e,t,i)}getOp(){return"*"}evalInfix(e,t){return Number(e)*Number(t)}},wd=class extends eh{constructor(e,t,i){super(e,t,i)}getOp(){return"/"}evalInfix(e,t){return Number(e)/Number(t)}},bd=class extends eh{constructor(e,t,i){super(e,t,i)}getOp(){return"%"}evalInfix(e,t){return Number(e)%Number(t)}},is=class extends Vt{constructor(e,t,i){var n;super(e),u(this,"num",t),u(this,"unit"),this.unit=(n=i?.toLowerCase())!=null?n:""}appendTo(e,t){e.append(this.num.toString()),e.append(Qt(this.unit))}evaluateCore(e){return this.num*e.queryUnitSize(this.unit,!1)}},Je=class extends Vt{constructor(e,t){super(e),u(this,"qualifiedName",t)}appendTo(e,t){e.append(this.qualifiedName)}evaluateCore(e){return e.evalName(this.scope,this.qualifiedName).evaluate(e)}dependCore(e,t,i){return e===this||t.evalName(this.scope,this.qualifiedName).dependOuter(e,t,i)}},au=class extends Vt{constructor(e,t,i){super(e),u(this,"not",t),u(this,"name",i)}appendTo(e,t){this.not&&e.append("not "),e.append(Qt(this.name))}evaluateCore(e){return e.evalMediaName(this.name,this.not)}isMediaName(){return!0}},we=class extends Vt{constructor(e,t,i){super(e),u(this,"fn",t),u(this,"str",i)}appendTo(e,t){e.append(this.str)}evaluateCore(e){return this.fn.call(e)}};function uy(e,t){e.append("(");for(let i=0;i<t.length;i++)i&&e.append(","),t[i].appendTo(e,0);e.append(")")}function cy(e,t,i){let n=t;for(let r=0;r<t.length;r++){let s=t[r].expand(e,i);if(t!==n)n[r]=s;else if(s!==t[r]){n=Array(t.length);for(let o=0;o<r;o++)n[o]=t[o];n[r]=s}}return n}var Cr=class xd extends Vt{constructor(t,i,n){super(t),u(this,"qualifiedName",i),u(this,"params",n)}appendTo(t,i){t.append(this.qualifiedName),uy(t,this.params)}evaluateCore(t){return t.evalCall(this.scope,this.qualifiedName,this.params,!1).expand(t,this.params).evaluate(t)}dependCore(t,i,n){if(t===this)return!0;for(let r=0;r<this.params.length;r++)if(this.params[r].dependOuter(t,i,n))return!0;return i.evalCall(this.scope,this.qualifiedName,this.params,!0).dependOuter(t,i,n)}expand(t,i){let n=cy(t,this.params,i);return n===this.params?this:new xd(this.scope,this.qualifiedName,n)}},dy=class Sd extends Vt{constructor(t,i,n,r){super(t),u(this,"cond",i),u(this,"ifTrue",n),u(this,"ifFalse",r)}appendTo(t,i){i>0&&t.append("("),this.cond.appendTo(t,0),t.append("?"),this.ifTrue.appendTo(t,0),t.append(":"),this.ifFalse.appendTo(t,0),i>0&&t.append(")")}evaluateCore(t){return this.cond.evaluate(t)?this.ifTrue.evaluate(t):this.ifFalse.evaluate(t)}dependCore(t,i,n){return t===this||this.cond.dependOuter(t,i,n)||this.ifTrue.dependOuter(t,i,n)||this.ifFalse.dependOuter(t,i,n)}expand(t,i){let n=this.cond.expand(t,i),r=this.ifTrue.expand(t,i),s=this.ifFalse.expand(t,i);return n===this.cond&&r===this.ifTrue&&s===this.ifFalse?this:new Sd(this.scope,n,r,s)}},it=class extends Vt{constructor(e,t){super(e),u(this,"val",t)}appendTo(e,t){switch(typeof this.val){case"number":case"boolean":e.append(this.val.toString());break;case"string":e.append('"'),e.append(Xo(this.val)),e.append('"');break;default:throw new Error("F_UNEXPECTED_STATE")}}evaluateCore(e){return this.val}},py=class extends Vt{constructor(e,t){super(e),u(this,"name",t)}appendTo(e,t){e.append("("),e.append(Qt(this.name.name)),e.append(")")}evaluateCore(e){return e.evalMediaBooleanTest(this.name.name)}},fy=class Cd extends Vt{constructor(t,i,n){super(t),u(this,"name",i),u(this,"value",n)}appendTo(t,i){t.append("("),t.append(Qt(this.name.name)),t.append(":"),this.value.appendTo(t,0),t.append(")")}evaluateCore(t){return t.evalMediaTest(this.name.name,this.value)}dependCore(t,i,n){return t===this||this.value.dependOuter(t,i,n)}expand(t,i){let n=this.value.expand(t,i);return n===this.value?this:new Cd(this.scope,this.name,n)}},gy=class extends Vt{constructor(e,t,i,n){super(e),u(this,"name",t),u(this,"value",i),u(this,"isFunc",n)}appendTo(e,t){this.isFunc&&e.append(this.name),e.append("("),!this.isFunc&&this.name&&(e.append(this.name),e.append(":")),e.append(this.value),e.append(")")}evaluateCore(e){return e.evalSupportsTest(this.name,this.value,this.isFunc)}},Pd=class extends Vt{constructor(e,t){super(e),u(this,"index",t)}appendTo(e,t){e.append("$"),e.append(this.index.toString())}evaluateCore(e){throw new Error(`Parameter not expanded: ${this.index}`)}expand(e,t){let i=t[this.index];if(!i)throw new Error(`Parameter missing: ${this.index}`);return i}};function qt(e,t,i){return t===e._false||t===e.zero||i==e._false||i==e.zero?e._false:t===e._true||t===e.one?i:i===e._true||i===e.one?t:new th(e,t,i)}function oe(e,t,i){return t===e.zero?i:i===e.zero?t:new yd(e,t,i)}function ve(e,t,i){return t===e.zero?new Tn(e,i):i===e.zero?t:new vd(e,t,i)}function js(e,t,i){return t===e.zero||i===e.zero?e.zero:t===e.one?i:i===e.one?t:new rh(e,t,i)}function Ya(e,t,i){return t===e.zero?e.zero:i===e.one?t:new wd(e,t,i)}var Zt=class{visitValues(e){for(let t=0;t<e.length;t++)e[t].visit(this);return null}visitEmpty(e){return null}visitSlash(e){return null}visitStr(e){return null}visitIdent(e){return null}visitNumeric(e){return null}visitNum(e){return null}visitInt(e){return this.visitNum(e)}visitHexColor(e){return null}visitURL(e){return null}visitURange(e){return null}visitSpaceList(e){return this.visitValues(e.values),null}visitCommaList(e){return this.visitValues(e.values),null}visitFunc(e){return this.visitValues(e.values),null}visitExpr(e){return null}},dn=class extends Zt{constructor(){super(),u(this,"error",!1)}visitValues(e){let t=null;for(let i=0;i<e.length;i++){let n=e[i],r=n.visit(this);if(this.error)return[];if(t)t[i]=r;else if(n!==r){t=new Array(e.length);for(let s=0;s<i;s++)t[s]=e[s];t[i]=r}}return t||e}visitEmpty(e){return e}visitStr(e){return e}visitIdent(e){return e}visitSlash(e){return e}visitNumeric(e){return e}visitNum(e){return e}visitInt(e){return e}visitHexColor(e){return e}visitURL(e){return e}visitURange(e){return e}visitSpaceList(e){let t=this.visitValues(e.values);return this.error?Re:t===e.values?e:new ee(t)}visitCommaList(e){let t=this.visitValues(e.values);return this.error?Re:t===e.values?e:new _e(t)}visitFunc(e){let t=this.visitValues(e.values);return this.error?Re:t===e.values?e:new zt(e.name,t)}visitExpr(e){return e}},st=class{toString(){let e=new yi;return this.appendTo(e,!0),e.toString()}stringValue(){let e=new yi;return this.appendTo(e,!1),e.toString()}toExpr(e,t){return null}appendTo(e,t){e.append("[error]")}isExpr(){return!1}isNumeric(){return!1}isNum(){return!1}isIdent(){return!1}isSpaceList(){return!1}visit(e){return this}},kd=class Ed extends st{static get instance(){return this.empty||(this.empty=new Ed),this.empty}constructor(){super()}toExpr(t,i){return new it(t,"")}appendTo(t,i){}visit(t){return t.visitEmpty(this)}};u(kd,"empty");var my=kd,Re=my.instance,Nd=class Td extends st{static get instance(){return this.slash||(this.slash=new Td),this.slash}constructor(){super()}toExpr(t,i){return new it(t,"/")}appendTo(t,i){t.append("/")}visit(t){return t.visitSlash(this)}};u(Nd,"slash");var yy=Nd,Kn=yy.instance,Q=class extends st{constructor(e){super(),u(this,"str",e)}toExpr(e,t){return new it(e,this.str)}appendTo(e,t){t?(e.append('"'),e.append(Xo(this.str)),e.append('"')):e.append(this.str)}visit(e){return e.visitStr(this)}},Ka=Object.create(null),he=class extends st{constructor(e){if(super(),u(this,"name",e),Ka[e])throw new Error("E_INVALID_CALL");Ka[e]=this}toExpr(e,t){return new it(e,this.name)}appendTo(e,t){t?e.append(Qt(this.name)):e.append(this.name)}visit(e){return e.visitIdent(this)}isIdent(){return!0}};function D(e){let t=Ka[e];return t||(t=new he(e)),t}var B=class extends st{constructor(e,t){var i;super(),u(this,"num",e),u(this,"unit"),this.unit=(i=t?.toLowerCase())!=null?i:""}toExpr(e,t){return this.num==0?e.zero:t&&this.unit=="%"?this.num==100?t:new rh(e,t,new it(e,this.num/100)):new is(e,this.num,this.unit)}appendTo(e,t){e.append(this.num.toString()),e.append(this.unit)}visit(e){return e.visitNumeric(this)}isNumeric(){return!0}},It=class extends st{constructor(e){super(),u(this,"num",e)}toExpr(e,t){return this.num==0?e.zero:this.num==1?e.one:new it(e,this.num)}appendTo(e,t){e.append(this.num.toString())}visit(e){return e.visitNum(this)}isNum(){return!0}},ut=class extends It{constructor(e){super(e)}visit(e){return e.visitInt(this)}},Id=class extends st{constructor(e){super(),u(this,"hex",e)}appendTo(e,t){e.append("#"),e.append(this.hex)}visit(e){return e.visitHexColor(this)}},Qe=class extends st{constructor(e){super(),u(this,"url",e)}appendTo(e,t){e.append('url("'),e.append(Xo(this.url)),e.append('")')}visit(e){return e.visitURL(this)}},vy=class extends st{constructor(e){super(),u(this,"urangeText",e)}appendTo(e,t){e.append(this.urangeText)}visit(e){return e.visitURange(this)}};function sh(e,t,i,n){var r,s;let o=t.length;if(o>0){(r=t[0])==null||r.appendTo(e,n);for(let a=1;a<o;a++)e.append(i),(s=t[a])==null||s.appendTo(e,n)}}var ee=class extends st{constructor(e){super(),u(this,"values",e)}appendTo(e,t){sh(e,this.values," ",t)}visit(e){return e.visitSpaceList(this)}isSpaceList(){return!0}},_e=class extends st{constructor(e){super(),u(this,"values",e)}appendTo(e,t){sh(e,this.values,",",t)}visit(e){return e.visitCommaList(this)}},zt=class extends st{constructor(e,t){super(),u(this,"name",e),u(this,"values",t)}appendTo(e,t){e.append(Qt(this.name)),e.append("("),sh(e,this.values,",",t),e.append(")")}visit(e){return e.visitFunc(this)}},q=class extends st{constructor(e){super(),u(this,"expr",e)}toExpr(){return this.expr}appendTo(e,t){this.expr instanceof it||this.expr instanceof is?this.expr.appendTo(e,0):(e.append("-epubx-expr("),this.expr.appendTo(e,0),e.append(")"))}visit(e){return e.visitExpr(this)}isExpr(){return!0}},xn=class extends st{constructor(e){super(),u(this,"text",e)}appendTo(e,t){e.append(this.text||" ")}};function dt(e,t){if(e){if(e.isNumeric()){let i=e;return t.queryUnitSize(i.unit,!1)*i.num}if(e.isNum())return e.num}return 0}function Ad(e,t){return new B(dt(e,t),"px")}var v={absolute:D("absolute"),all:D("all"),always:D("always"),anywhere:D("anywhere"),auto:D("auto"),avoid:D("avoid"),balance:D("balance"),balance_all:D("balance-all"),block:D("block"),block_end:D("block-end"),block_start:D("block-start"),both:D("both"),bottom:D("bottom"),border_box:D("border-box"),break_all:D("break-all"),break_word:D("break-word"),clip:D("clip"),crop:D("crop"),cross:D("cross"),column:D("column"),discard:D("discard"),exclusive:D("exclusive"),_false:D("false"),fixed:D("fixed"),flex:D("flex"),flow_root:D("flow-root"),footnote:D("footnote"),footer:D("footer"),grid:D("grid"),header:D("header"),hidden:D("hidden"),horizontal_tb:D("horizontal-tb"),inherit:D("inherit"),initial:D("initial"),inline:D("inline"),inline_block:D("inline-block"),inline_end:D("inline-end"),inline_start:D("inline-start"),inside:D("inside"),keep:D("keep"),landscape:D("landscape"),left:D("left"),line:D("line"),list_item:D("list-item"),ltr:D("ltr"),manual:D("manual"),max_content:D("max-content"),min_content:D("min-content"),none:D("none"),normal:D("normal"),oeb_page_foot:D("oeb-page-foot"),oeb_page_head:D("oeb-page-head"),outside:D("outside"),padding_box:D("padding-box"),page:D("page"),relative:D("relative"),revert:D("revert"),revert_layer:D("revert-layer"),revert_rule:D("revert-rule"),right:D("right"),same:D("same"),scale:D("scale"),snap_block:D("snap-block"),snap_inline:D("snap-inline"),solid:D("solid"),spread:D("spread"),_static:D("static"),rtl:D("rtl"),table:D("table"),table_caption:D("table-caption"),table_cell:D("table-cell"),table_footer_group:D("table-footer-group"),table_header_group:D("table-header-group"),table_row:D("table-row"),top:D("top"),transparent:D("transparent"),unset:D("unset"),vertical_lr:D("vertical-lr"),vertical_rl:D("vertical-rl"),visible:D("visible"),_true:D("true")},lu=new B(100,"%"),ns=new B(100,"pvw"),rs=new B(100,"pvh"),Me=new B(0,"px"),hu={"font-size":1,"line-height":2,color:3};function J(e){return e===v.inherit||e===v.initial||e===v.unset||Rt(e)}function Rt(e){return e===v.revert||e===v.revert_layer||e===v.revert_rule}var wy=class extends Zt{constructor(){super(...arguments),u(this,"found",!1)}visitIdent(e){return Rt(e)&&(this.found=!0),null}};function by(e){let t=new wy;return e.visit(t),t.found}function uu(e,t){let i=hu[e]||Number.MAX_VALUE,n=hu[t]||Number.MAX_VALUE;return i-n}function ze(e){return e!=null&&e.length>2&&e.startsWith("--")}var Sn,Cn,Pn,Fd=class ui{constructor(t,i,n){se(this,Sn),se(this,Cn),se(this,Pn),de(this,Sn,Math.round(Math.max(0,Math.min(t,ui.MAX)))),de(this,Cn,Math.round(Math.max(0,Math.min(i,ui.MAX)))),de(this,Pn,Math.round(Math.max(0,Math.min(n,ui.MAX))))}static fromInt(t,i,n){return new ui(t,i,n)}offset(t,i,n){return new ui(H(this,Sn)+t,H(this,Cn)+i,H(this,Pn)+n)}toKey(){return JSON.stringify([H(this,Sn),H(this,Cn),H(this,Pn)])}toColorFunc(t){return new zt("color",[new ee([D("srgb"),new It(H(this,Sn)/ui.MAX),new It(H(this,Cn)/ui.MAX),new It(H(this,Pn)/ui.MAX),...t!==null?[Kn,new It(t)]:[]])])}};Sn=new WeakMap,Cn=new WeakMap,Pn=new WeakMap,u(Fd,"MAX",1e4);var di=Fd;function xy(e){return Array.isArray(e)?e.every(t=>{if(!Array.isArray(t)||t.length!==2)return!1;let[i,n]=t;if(!i||typeof i!="object"||Array.isArray(i)||!n||typeof n!="object"||Array.isArray(n))return!1;let r=i,s=n;return Number.isFinite(r.r)&&Number.isFinite(r.g)&&Number.isFinite(r.b)&&Number.isFinite(s.c)&&Number.isFinite(s.m)&&Number.isFinite(s.y)&&Number.isFinite(s.k)}):!1}var ji,Xi,qi,ti,Rd=class yt{constructor(t,i,n,r){se(this,ji),se(this,Xi),se(this,qi),se(this,ti),de(this,ji,Math.round(Math.max(0,Math.min(t,yt.MAX)))),de(this,Xi,Math.round(Math.max(0,Math.min(i,yt.MAX)))),de(this,qi,Math.round(Math.max(0,Math.min(n,yt.MAX)))),de(this,ti,Math.round(Math.max(0,Math.min(r,yt.MAX))))}static fromInt(t,i,n,r){return new yt(t,i,n,r)}static fromNumber(t,i,n,r){return new yt(t*yt.MAX,i*yt.MAX,n*yt.MAX,r*yt.MAX)}toSRGB(){let t=yt.MAX-H(this,ti);return di.fromInt(di.MAX-Math.min(di.MAX,Math.round(H(this,ji)*t/yt.MAX)+H(this,ti)),di.MAX-Math.min(di.MAX,Math.round(H(this,Xi)*t/yt.MAX)+H(this,ti)),di.MAX-Math.min(di.MAX,Math.round(H(this,qi)*t/yt.MAX)+H(this,ti)))}equals(t){return H(this,ji)===H(t,ji)&&H(this,Xi)===H(t,Xi)&&H(this,qi)===H(t,qi)&&H(this,ti)===H(t,ti)}toJSON(){return{c:H(this,ji),m:H(this,Xi),y:H(this,qi),k:H(this,ti)}}};ji=new WeakMap,Xi=new WeakMap,qi=new WeakMap,ti=new WeakMap,u(Rd,"MAX",1e4);var Ld=Rd;function yn(e){return e instanceof It?Math.max(0,Math.min(1,e.num)):e instanceof B&&e.unit==="%"?Math.max(0,Math.min(1,e.num/100)):null}function Od(e){if(e.name!=="device-cmyk"&&e.name!=="cmyk")return null;let t=e.values.length===1?e.values[0]:null,i=t instanceof ee?t.values:e.values;if(i.length<4||i.length>6)return null;let n=yn(i[0]),r=yn(i[1]),s=yn(i[2]),o=yn(i[3]);if(n===null||r===null||s===null||o===null)return null;let a=null;if(i.length>=5){if(i[4]===Kn){if(i.length!==6)return null;a=yn(i[5])}else{if(i.length!==5)return null;a=yn(i[4])}if(a===null)return null}return{cmyk:Ld.fromNumber(n,r,s,o),alpha:a}}function*Sy(e){for(let t=-e;t<=e;t++)for(let i=-e;i<=e;i++)for(let n=-e;n<=e;n++)Math.abs(t)+Math.abs(i)+Math.abs(n)===e&&(yield[t,i,n])}var Ni,fo,Bd,cu,Md=class{constructor(){se(this,fo),se(this,Ni,new Map)}registerDeviceCmyk(e){let t=Od(e);return t?le(this,fo,Bd).call(this,t.cmyk).toColorFunc(t.alpha):null}registerCmykReserveMap(e){for(let[t,i]of e){let n=di.fromInt(t.r,t.g,t.b),r=Ld.fromInt(i.c,i.m,i.y,i.k);H(this,Ni).set(n.toKey(),r)}}toJSON(){let e={};return H(this,Ni).forEach((t,i)=>{e[i]=t.toJSON()}),e}};Ni=new WeakMap,fo=new WeakSet,Bd=function(e){let t=e.toSRGB(),i=t.toKey(),n=H(this,Ni).get(i);return n?n.equals(e)?t:le(this,fo,cu).call(this,e,t):(H(this,Ni).set(i,e),t)},cu=function(e,t){for(let i=1;i<=di.MAX;i++)for(let[n,r,s]of Sy(i)){let o=t.offset(n,r,s),a=o.toKey();if(!H(this,Ni).has(a))return H(this,Ni).set(a,e),o}return Z.warn(`CmykStore: Exceeded trackable color limit for ${JSON.stringify(e.toJSON())}`),t};var Xs,cr,dr,_d=class extends dn{constructor(e){super(),se(this,Xs),se(this,cr,new Map),se(this,dr,!1),de(this,Xs,e??new Md)}reset(){de(this,dr,!1)}hadDeviceCmyk(){return H(this,dr)}recordConversion(e,t){H(this,cr).set(e,t)}getConversions(){if(H(this,cr).size===0)return null;let e={};return H(this,cr).forEach((t,i)=>{e[i]=t}),e}visitFunc(e){let t=H(this,Xs).registerDeviceCmyk(e);return t?(de(this,dr,!0),t):super.visitFunc(e)}};Xs=new WeakMap,cr=new WeakMap,dr=new WeakMap;function Dd(e){if(e.nodeType==1){let t=e.getAttribute("id");if(t)return t}return null}function Cy(e){return`^${e}`}function du(e){return e.replace(/[\[\]\(\),=;^]/g,Cy)}function Py(e){return e.substr(1)}function Za(e){return e&&e.replace(/\^[\[\]\(\),=;^]/g,Py)}function ky(e){let t=[];do{let i=e.match(/^(\^,|[^,])*/),n=Za(i[0]);if(e=e.substr(i[0].length+1),!e&&!t.length)return n;t.push(n)}while(e);return t}function pu(e){let t={};for(;e;){let i=e.match(/^;([^;=]+)=(([^;]|\^;)*)/);if(!i)return t;t[i[1]]=ky(i[2]),e=e.substr(i[0].length)}return t}var fu=class{appendTo(e){e.append("!")}applyTo(e){return!1}},gu=class{constructor(e,t,i){u(this,"index",e),u(this,"id",t),u(this,"sideBias",i)}appendTo(e){e.append("/"),e.append(this.index.toString()),(this.id||this.sideBias)&&(e.append("["),this.id&&e.append(this.id),this.sideBias&&(e.append(";s="),e.append(this.sideBias)),e.append("]"))}applyTo(e){if(e.node.nodeType!=1)throw new Error("E_CFI_NOT_ELEMENT");let t=e.node,i=t.children,n=i.length,r,s=Math.floor(this.index/2)-1;if(s<0||n==0)r=t.firstChild,e.node=r||t;else{if(r=i[Math.min(s,n-1)],this.index&1){let o=r.nextSibling;!o||o.nodeType==1?e.after=!0:r=o}e.node=r}if(this.id&&(e.after||this.id!=Dd(e.node))){let o=t.ownerDocument.getElementById(this.id);o?e.node=o:Z.warn("E_CFI_ID_MISMATCH:",this.id)}return e.sideBias=this.sideBias,!0}},mu=class{constructor(e,t,i,n){u(this,"offset",e),u(this,"textBefore",t),u(this,"textAfter",i),u(this,"sideBias",n)}applyTo(e){if(this.offset>0&&!e.after){let t=this.offset,i=e.node;for(;;){let n=i.nodeType;if(n==1)break;let r=i.nextSibling;if(3<=n&&n<=5){let s=i.textContent.length;if(t<=s)break;if(!r){t=s;break}t-=s}if(!r){t=0;break}i=r}e.node=i,e.offset=t}return e.sideBias=this.sideBias,!0}appendTo(e){e.append(":"),e.append(this.offset.toString()),(this.textBefore||this.textAfter||this.sideBias)&&(e.append("["),(this.textBefore||this.textAfter)&&(this.textBefore&&e.append(du(this.textBefore)),e.append(","),this.textAfter&&e.append(du(this.textAfter))),this.sideBias&&(e.append(";s="),e.append(this.sideBias)),e.append("]"))}},yu=class zd{constructor(){u(this,"steps",null)}fromString(t){var i,n,r;let s=t.match(/^#?epubcfi\((.*)\)$/);if(!s)throw new Error("E_CFI_NOT_CFI");let o=decodeURIComponent(s[1]),a=0,h=[];for(;;){let l;switch(o.charAt(a)){case"/":{if(a++,s=o.substr(a).match(/^(0|[1-9][0-9]*)(\[(.*?)(;([^\]]|\^\])*)?\])?/),!s)throw new Error("E_CFI_NUMBER_EXPECTED");a+=s[0].length;let c=parseInt(s[1],10),d=(i=s[3])!=null?i:null;l=pu(s[4]),h.push(new gu(c,d,tu(l.s)));break}case":":{if(a++,s=o.substr(a).match(/^(0|[1-9][0-9]*)(\[((([^\];,]|\^[\];,])*)(,(([^\];,]|\^[\];,])*))?)(;([^]]|\^\])*)?\])?/),!s)throw new Error("E_CFI_NUMBER_EXPECTED");a+=s[0].length;let c=parseInt(s[1],10),d=(n=s[4])!=null?n:null;d&&(d=Za(d));let p=(r=s[7])!=null?r:null;p&&(p=Za(p)),l=pu(s[10]),h.push(new mu(c,d,p,tu(l.s)));break}case"!":a++,h.push(new fu);break;case"~":case"@":case"":this.steps=h;return;default:throw new Error("E_CFI_PARSE_ERROR")}}}navigate(t){let i={node:t.documentElement,offset:0,after:!1,sideBias:null,ref:null};for(let n=0;n<this.steps.length;n++)if(!this.steps[n].applyTo(i)){i.ref=new zd,i.ref.steps=this.steps.slice(n+1);break}return i}trim(t,i){return t.replace(/\s+/g," ").match(i?/^[ -\uD7FF\uE000-\uFFFF]{0,8}/:/[ -\uD7FF\uE000-\uFFFF]{0,8}$/)[0].replace(/^\s/,"").replace(/\s$/,"")}prependPathFromNode(t,i,n,r){let s=[],o=t.parentNode,a="",h="";for(;t;){switch(t.nodeType){case 3:case 4:case 5:{let l=t.textContent,c=l.length;n?(i+=c,a||(a=l)):(i>c&&(i=c),n=!0,a=l.substr(0,i),h=l.substr(i)),t=t.previousSibling;continue}case 8:t=t.previousSibling;continue}break}for((i>0||a||h)&&(a=this.trim(a,!1),h=this.trim(h,!0),s.push(new mu(i,a,h,r)),r=null);o&&!(!o||o.nodeType==9);){let l=n?null:Dd(t),c=n?1:0;for(;t;)t.nodeType==1&&(c+=2),t=t.previousSibling;s.push(new gu(c,l,r)),r=null,t=o,o=o.parentNode,n=!1}s.reverse(),this.steps?(s.push(new fu),this.steps=s.concat(this.steps)):this.steps=s}toString(){if(!this.steps)return"";let t=new yi;t.append("epubcfi(");for(let i=0;i<this.steps.length;i++)this.steps[i].appendTo(t);return t.append(")"),t.toString().replace(/%/g,"%25")}},_t=class{constructor(e,t,i,n){u(this,"x1",e),u(this,"y1",t),u(this,"x2",i),u(this,"y2",n)}},Ai=class{constructor(e,t){u(this,"x",e),u(this,"y",t)}},ba=class{constructor(e,t,i,n){u(this,"left",e),u(this,"top",t),u(this,"right",i),u(this,"bottom",n)}},vu=class{constructor(e,t,i,n){u(this,"low",e),u(this,"high",t),u(this,"winding",i),u(this,"shapeId",n)}},gi=class{constructor(e,t,i,n){u(this,"y1",e),u(this,"y2",t),u(this,"x1",i),u(this,"x2",n),u(this,"left",null),u(this,"right",null)}};function Ey(e,t){return e.low.y-t.low.y||e.low.x-t.low.x}var qo=class Vd{constructor(t){u(this,"points",t)}addSegments(t,i){let n=this.points,r=n.length,s=n[r-1];for(let o=0;o<r;o++){let a=n[o],h;s.y<a.y?h=new vu(s,a,1,i):h=new vu(a,s,-1,i),t.push(h),s=a}}withOffset(t,i){let n=[];for(let r of this.points)n.push(new Ai(r.x+t,r.y+i));return new Vd(n)}};function wu(e,t,i,n){let r=[];for(let s=0;s<20;s++){let o=s*2*Math.PI/20;r.push(new Ai(e+i*Math.sin(o),t+n*Math.cos(o)))}return new qo(r)}function oh(e,t,i,n){return new qo([new Ai(e,t),new Ai(i,t),new Ai(i,n),new Ai(e,n)])}var xs=class{constructor(e,t,i,n){u(this,"x",e),u(this,"winding",t),u(this,"shapeId",i),u(this,"lowOrHigh",n)}};function bu(e,t){let i=e.low.x+(e.high.x-e.low.x)*(t-e.low.y)/(e.high.y-e.low.y);if(isNaN(i))throw new Error("Bad intersection");return i}function Ny(e,t,i,n){let r,s,o,a;t.high.y<i&&Z.warn("Error: inconsistent segment (1)"),t.low.y<=i?(r=bu(t,i),s=t.winding):(r=t.low.x,s=0),t.high.y>=n?(o=bu(t,n),a=t.winding):(o=t.high.x,a=0),r<o?(e.push(new xs(r,s,t.shapeId,-1)),e.push(new xs(o,a,t.shapeId,1))):(e.push(new xs(o,a,t.shapeId,-1)),e.push(new xs(r,s,t.shapeId,1)))}function Ty(e,t,i){let n=t+i,r=Array(n),s=Array(n),o;for(o=0;o<=n;o++)r[o]=0,s[o]=0;let a=[],h=!1,l=e.length;for(let c=0;c<l;c++){let d=e[c];r[d.shapeId]+=d.winding,s[d.shapeId]+=d.lowOrHigh;let p=!1;for(o=0;o<t;o++)if(r[o]&&!s[o]){p=!0;break}if(p){for(o=t;o<=n;o++)if(r[o]||s[o]){p=!1;break}}h!=p&&(a.push(d.x),h=p)}return a}function Iy(e,t){return t?Math.ceil(e/t)*t:e}function xu(e,t){return t?Math.floor(e/t)*t:e}function Ay(e){return new Ai(e.y,-e.x)}function go(e){return new _t(e.y1,-e.x2,e.y2,-e.x1)}function Ud(e){return new _t(-e.y2,e.x1,-e.y1,e.x2)}function Su(e){return new qo(e.points.map(t=>Ay(t)))}function Fy(e,t,i,n,r,s){s&&(e=go(e),t=t.map(x=>Su(x)),i=i.map(x=>Su(x)));let o=t.length,a=i?i.length:0,h=[],l=[],c,d,p;for(c=0;c<o;c++)t[c].addSegments(l,c);for(c=0;c<a;c++)i[c].addSegments(l,c+o);let f=l.length;l.sort(Ey);let g=0;for(;l[g].shapeId>=o;)g++;let m=l[g].low.y;m>e.y1&&h.push(new gi(e.y1,m,e.x2,e.x2));let w=0,b=[];for(;w<f&&(p=l[w]).low.y<m;)p.high.y>m&&b.push(p),w++;for(;w<f||b.length>0;){let x=e.y2,P=Math.min(Iy(Math.ceil(m+n),r),e.y2);for(d=0;d<b.length&&x>P;d++)p=b[d],p.low.x==p.high.x?p.high.y<x&&(x=Math.max(xu(p.high.y,r),P)):p.low.x!=p.high.x&&(x=P);for(x>e.y2&&(x=e.y2);w<f&&(p=l[w]).low.y<x;){if(p.high.y<m){w++;continue}if(p.low.y<P)p.low.y==p.high.y&&p.low.y==m||(b.push(p),x=P),w++;else{let S=xu(p.low.y,r);S<x&&(x=S);break}}let y=[];for(d=0;d<b.length;d++)Ny(y,b[d],m,x);y.sort((S,N)=>S.x-N.x||S.lowOrHigh-N.lowOrHigh);let C=Ty(y,o,a);if(C.length==0)h.push(new gi(m,x,e.x2,e.x2));else{let S=0,N=e.x1;for(d=0;d<C.length;d+=2){let E=Math.max(e.x1,C[d]),R=Math.min(e.x2,C[d+1])-E;R>S&&(S=R,N=E)}S==0?h.push(new gi(m,x,e.x2,e.x2)):h.push(new gi(m,x,Math.max(N,e.x1),Math.min(N+S,e.x2)))}if(x==e.y2)break;for(m=x,d=b.length-1;d>=0;d--)b[d].high.y<=x&&b.splice(d,1)}return $d(e,h),h}function $d(e,t){let i=t.length-1,n=new gi(e.y2,e.y2,e.x1,e.x2);for(;i>=0;){let r=n;n=t[i],(n.y2-n.y1<1||n.x1==r.x1&&n.x2==r.x2)&&(r.y1=n.y1,t.splice(i,1),n=r),i--}}function Hd(e,t){let i=0,n=e.length;for(;i<n;){let r=Math.floor((i+n)/2);t>=e[r].y2?i=r+1:n=r}return i}function Ry(e,t){if(!e.length)return t;let i=t.y1,n,r;for(r=0;r<e.length&&(n=e[r],!(n.y2>t.y1&&n.x1-.1<=t.x1&&n.x2+.1>=t.x2));r++)i=Math.max(i,n.y2);let s=i;for(;r<e.length&&(n=e[r],!(n.y1>=t.y2||n.x1-.1>t.x1||n.x2+.1<t.x2));r++)s=n.y2;return r===e.length?s=t.y2:s=Math.min(s,t.y2),s<=i?null:new _t(t.x1,i,t.x2,s)}function Ly(e,t){if(!e.length)return t;let i=t.y2,n,r;for(r=e.length-1;r>=0&&(n=e[r],!(r===e.length-1&&n.y2<t.y2))&&!(n.y1<t.y2&&n.x1-.1<=t.x1&&n.x2+.1>=t.x2);r--)i=Math.min(i,n.y1);let s=Math.min(i,n.y2);for(;r>=0&&(n=e[r],!(n.y2<=t.y1||n.x1-.1>t.x1||n.x2+.1<t.x2));r--)s=n.y1;return s=Math.max(s,t.y1),i<=s?null:new _t(t.x1,s,t.x2,i)}function Oy(e,t,i,n){let r=i.y1,s=i.x2-i.x1,o=i.y2-i.y1,a=Hd(t,r);for(;;){let h=r+o;if(h>e.y2)return!1;let l=e.x1,c=e.x2;for(let d=a;d<t.length&&t[d].y1<h;d++){let p=t[d];p.x1>l&&(l=p.x1),p.x2<c&&(c=p.x2)}if(l+s<=c||a>=t.length)return n=="left"?(i.x1=l,i.x2=l+s):(i.x1=c-s,i.x2=c),i.y2+=r-i.y1,i.y1=r,!0;r=t[a].y2,a++}}function By(e,t,i,n,r){for(n||(n=[new gi(i.y1,i.y2,i.x1,i.x2)]);n.length>0&&n[0].y2<=e.y1;)n.shift();if(n.length==0)return;n[0].y1<e.y1&&(n[0].y1=e.y1);let s,o=t.length==0?e.y1:t[t.length-1].y2;o<e.y2&&t.push(new gi(o,e.y2,e.x1,e.x2));let a=Hd(t,n[0].y1);for(let h of n){if(a==t.length)break;for(t[a].y1<h.y1&&(s=t[a],a++,t.splice(a,0,new gi(h.y1,s.y2,s.x1,s.x2)),s.y2=h.y1);a<t.length&&(s=t[a++],s.y2>h.y2&&(t.splice(a,0,new gi(h.y2,s.y2,s.x1,s.x2)),s.y2=h.y2),h.x1!=h.x2&&(r=="left"?s.x1=Math.min(h.x2,e.x2):s.x2=Math.max(h.x1,e.x1)),s.y2!=h.y2););}$d(e,t)}var My=class extends Zt{constructor(){super(),u(this,"propSet",{})}visitIdent(e){return this.propSet[e.name]=!0,e}visitSpaceList(e){return this.visitValues(e.values),e}};function _y(e){if(e){let t=new My;try{return e.visit(t),t.propSet}catch(i){Z.warn(i,"toSet:")}}return{}}var Dy=class extends Zt{constructor(e){super(),u(this,"value",e)}visitInt(e){return this.value=e.num,e}};function Cu(e,t){if(e){let i=new Dy(t);try{return e.visit(i),i.value}catch(n){Z.warn(n,"toInt: ")}}return t}var zy=class extends Zt{constructor(){super(),u(this,"collect",!1),u(this,"coords",[]),u(this,"name",null)}visitNumeric(e){return this.collect&&this.coords.push(e),null}visitNum(e){return this.collect&&e.num==0&&this.coords.push(new B(0,"px")),null}visitSpaceList(e){return this.visitValues(e.values),null}visitFunc(e){return this.collect||(this.collect=!0,this.visitValues(e.values),this.collect=!1,this.name=e.name.toLowerCase()),null}getShape(e,t,i,n,r){if(this.coords.length>0){let s=[];switch(this.coords.forEach((o,a)=>{if(o.unit=="%"){let h=a%2==0?i:n;a==3&&this.name=="circle"&&(h=Math.sqrt((i*i+n*n)/2)),s.push(o.num*h/100)}else s.push(o.num*r.queryUnitSize(o.unit,!1))}),this.name){case"polygon":if(s.length%2==0){let o=[];for(let a=0;a<s.length;a+=2)o.push(new Ai(e+s[a],t+s[a+1]));return new qo(o)}break;case"rectangle":if(s.length==4)return oh(e+s[0],t+s[1],e+s[0]+s[2],t+s[1]+s[3]);break;case"ellipse":if(s.length==4)return wu(e+s[0],t+s[1],s[2],s[3]);break;case"circle":if(s.length==3)return wu(e+s[0],t+s[1],s[2],s[2]);break}}return null}};function Wd(e,t,i,n,r,s){if(e){let o=new zy;try{return e.visit(o),o.getShape(t,i,n,r,s)}catch(a){Z.warn(a,"toShape:")}}return oh(t,i,t+n,i+r)}var Vy=class extends Zt{constructor(e,t){super(),u(this,"reset",e),u(this,"defaultValue",t),u(this,"counters",Object.create(null)),u(this,"name",null)}visitIdent(e){return this.name=e.toString(),this.reset?this.counters[this.name]=0:this.counters[this.name]=(this.counters[this.name]||0)+this.defaultValue,e}visitInt(e){return this.name&&(this.counters[this.name]+=e.num-(this.reset?0:this.defaultValue)),e}visitSpaceList(e){return this.visitValues(e.values),e}};function nn(e,t){var i,n;let r=(i=t?.reset)!=null?i:!1,s=(n=t?.defaultValue)!=null?n:r?0:1,o=new Vy(r,s);try{e.visit(o)}catch(a){Z.warn(a,"toCounters:")}return o.counters}var Uy=class extends dn{constructor(e,t){super(),u(this,"baseUrl",e),u(this,"transformer",t)}visitURL(e){return new Qe(zr(this.transformer.transformURL(e.url,this.baseUrl)))}};function Pi(e){let t=Object.create(null);return Object.keys(e).forEach(i=>{t[i]=Array.from(e[i])}),t}function $y(e){return e.replace(/\\([0-9a-fA-F]{1,6})\s?|\\(.)/g,(t,i,n)=>i?String.fromCodePoint(parseInt(i,16)):n)}function In(e,t){var i;if(t==="content"){let n=e.cloneNode(!0);return n.querySelectorAll("[data-adapt-pseudo]").forEach(r=>r.remove()),n.textContent||""}else if(t==="marker"){let n=e.querySelector('[data-adapt-pseudo="marker"], [data-adapt-pseudo="footnote-marker"]');if(n)return n.textContent||"";let r=(i=e.style)==null?void 0:i.getPropertyValue("--viv-marker-content");if(r){let s=r.match(/"(?:[^"\\]|\\.)*"|'(?:[^'\\]|\\.)*'/g);if(s&&s.length>0)return s.map(o=>$y(o.substring(1,o.length-1))).join("")}return""}else{let n=e.querySelector(`[data-adapt-pseudo="${t}"]`);return n&&n.textContent||""}}var Hy=class{constructor(e,t){u(this,"targetId",e),u(this,"resolved",t),u(this,"pageCounters",null),u(this,"spineIndex",-1),u(this,"pageIndex",-1)}equals(e){return this===e?!0:e?this.targetId===e.targetId&&this.resolved===e.resolved&&this.spineIndex===e.spineIndex&&this.pageIndex===e.pageIndex:!1}isResolved(){return this.resolved}resolve(){this.resolved=!0}unresolve(){this.resolved=!1}},Wy=class{constructor(e,t){u(this,"counterStore",e),u(this,"baseURL",t)}countersOfId(e,t){e=this.counterStore.documentURLTransformer.transformFragment(e,this.baseURL),this.counterStore.countersById[e]=t}getExprContentListener(){return this.counterStore.getExprContentListener()}},Gy=class{constructor(e,t,i,n){u(this,"counterStore",e),u(this,"baseURL",t),u(this,"rootScope",i),u(this,"pageScope",n),u(this,"styler",null),u(this,"namedStringValues",Object.create(null)),u(this,"runningElements",Object.create(null))}setStyler(e){this.styler=e}getFragment(e){let t=e.match(/^[^#]*#(.*)$/);return t?t[1]:null}getTransformedId(e){let t=this.counterStore.documentURLTransformer.transformURL(Fe(e,this.baseURL),this.baseURL);return t.charAt(0)==="#"&&(t=t.substring(1)),t}getPageCounterVal(e,t){let i=()=>{let s=this.counterStore.currentPageCounters[e];return s&&s.length?s[s.length-1]:null},n=new we(this.pageScope,()=>t(i()),`page-counter-${e}`),r=s=>t(s[s.length-1]);return this.counterStore.registerPageCounterExpr(e,r,n),n}getPageCountersVal(e,t){let i=()=>this.counterStore.currentPageCounters[e]||[],n=new we(this.pageScope,()=>t(i()),`page-counters-${e}`);return this.counterStore.registerPageCounterExpr(e,t,n),n}getTargetCounters(e,t,i){let n=this.counterStore.countersById[t];return!n&&i&&e&&(this.styler.styleUntilIdIsReached(e),n=this.counterStore.countersById[t]),n||null}getTargetPageCounters(e){return this.counterStore.currentPage.elementsById[e]?this.counterStore.currentPageCounters:this.counterStore.pageCountersById[e]||null}getTargetPageDocCounters(e){return this.counterStore.currentPage.elementsById[e]?this.counterStore.currentPageDocCounters:this.counterStore.pageDocCountersById[e]||null}adjustCountersForCrossScope(e,t,i,n){if(!this.counterStore.isPageControlledCounter(e)||!i)return t;let r=i[e]||[],s=r.length?r[r.length-1]:0,o=n?.[e]||[],a=o.length?o[0]:0;return t.length?[s+(t[0]-a),...t.slice(1)]:[s]}getTargetPageText(e,t){if(this.counterStore.currentPage.elementsById[e]){let i=this.counterStore.currentPage.elementsById[e];if(i&&i.length>0){let n=i[0];return t==="before"||t==="after"||t==="marker"?In(n,t):In(n,"content")}return""}else{if(e in this.counterStore.pageTextById){let i=this.counterStore.pageTextById[e];return i[t]!==void 0?i[t]:i.content||""}return null}}getTargetCounterVal(e,t,i){let n=this.getFragment(e),r=this.getTransformedId(e),s=new we(this.pageScope,()=>{let o=this.getTargetCounters(n,r,!0);if(o)if(o[t]){let a=o[t],h=this.getTargetPageCounters(r),l=this.getTargetPageDocCounters(r),c=this.adjustCountersForCrossScope(t,a,h,l);return h&&this.counterStore.resolveReference(r),i(c[c.length-1]||null)}else{let a=this.getTargetPageCounters(r);if(a)if(this.counterStore.resolveReference(r),a[t]){let h=a[t];return i(h[h.length-1]||null)}else return i(0);else return this.counterStore.saveReferenceOfCurrentPage(r,!1),"??"}else return this.counterStore.saveReferenceOfCurrentPage(r,!1),"??"},`target-counter-${t}-of-${e}`);return this.counterStore.registerTargetCounterExpr(t,i,s,r),s}getTargetCountersVal(e,t,i){let n=this.getFragment(e),r=this.getTransformedId(e);return new we(this.pageScope,()=>{let s=this.getTargetPageCounters(r);if(s){this.counterStore.resolveReference(r);let o=this.getTargetCounters(n,r,!0),a=o?.[t]||[],h=this.getTargetPageDocCounters(r),l=this.adjustCountersForCrossScope(t,a,s,h);if(l.length)return i(l);let c=s[t]||[];return i(c)}else return this.counterStore.saveReferenceOfCurrentPage(r,!1),"??"},`target-counters-${t}-of-${e}`)}getTargetTextVal(e,t){let i=this.getTransformedId(e),n=new we(this.pageScope,()=>{if(t==="first-letter"){let s=this.getTargetPageText(i,"before"),o=this.getTargetPageText(i,"content"),a=this.getTargetPageText(i,"after");if(s===null&&o===null&&a===null)return this.counterStore.saveReferenceOfCurrentPage(i,!1),"??";let h=(s??"")+(o??"")+(a??"");this.counterStore.resolveReference(i);let l=h.match(Dr);return l?l[0]:""}let r=this.getTargetPageText(i,t);return r!==null?(this.counterStore.resolveReference(i),r):(this.counterStore.saveReferenceOfCurrentPage(i,!1),"??")},`target-text-${t}-of-${e}`);return this.counterStore.registerTargetTextExpr(t,n,i),n}getNamedStringVal(e,t){let i=new we(this.pageScope,()=>this.getRunningValue(this.namedStringValues,e,t),`named-string-${t}-${e}`);return i.getContentList=()=>this.getRunningContentList(e,t),i}getRunningElementVal(e,t){return new we(this.pageScope,()=>this.getRunningValue(this.runningElements,e,t),`running-element-${t}-${e}`)}getRunningValue(e,t,i){let n=this.getRunningRawValue(e,t,i);return typeof n.value=="string"?n.value:this.contentListToString(this.resolveDeferredContentList(n.value,n.offset))}getRunningContentList(e,t){let i=this.getRunningRawValue(this.namedStringValues,e,t);return typeof i.value=="string"?null:this.resolveDeferredContentList(i.value,i.offset)}resolveDeferredContentList(e,t){return this.freezePageCounters(e,t)}freezePageCounters(e,t){if(e instanceof q){let i=e.expr;if(i instanceof we){let n=/^page-counters?-(.+)$/.exec(i.str);if(n){if(n[1]==="pages")return e;let r=this.counterStore,s=n[1],o=r.getPageCounterFormat(i)||(h=>h.length?String(h[h.length-1]):""),a=r.getOrCreateNamedStringPageCounterExpr(this.pageScope,t,s,o);return new q(a)}}return e}return e instanceof ee?new ee(e.values.map(i=>this.freezePageCounters(i,t))):e instanceof _e?new _e(e.values.map(i=>this.freezePageCounters(i,t))):e}contentListToString(e){if(e instanceof Q)return e.stringValue();if(e instanceof q){let t=e.expr;if(t instanceof we){let i=t.fn.call(null);return i==null?"":String(i)}return""}return e instanceof ee?e.values.map(t=>this.contentListToString(t)).join(""):e instanceof _e?e.values.map(t=>this.contentListToString(t)).join(""):""}getRunningRawValue(e,t,i){let n=e[t];if(!n)return{value:"",offset:-1};let r=Object.keys(n).map(p=>parseInt(p,10)).sort(od),s=this.counterStore.currentPage;if(!s)return{value:"",offset:-1};let o=s.isBlankPage?s.offset-1:s.offset,a=s.isBlankPage?o:Math.max(o,...Array.from(s.container.querySelectorAll(`[${jt}]`)).map(p=>parseInt(p.getAttribute(jt),10))),h=-1,l=-1,c=-1,d=-1;for(let p=0;p<r.length;p++){let f=r[p],g=p>0?r[p-1]:-1,m=p<r.length-1?r[p+1]:-1;if(f>a)break;if(f>=o){if(h<0&&(h=f,d=-1),l<0)if(f===o)l=f;else{g<h&&(l=g);let w=s.container.querySelector(`[${jt}="${f}"]`);if(!w)l<0&&(l=f);else{let b=s.container.querySelector(`[${jt}="${o}"]`);if(b||(b=s.container.querySelector(`[${jt}="0"]`)),b){for(let x=b;x;x=x.firstElementChild)if(x===w){l=f;break}}}}c=f}else(m>a||m<0)&&(h=l=c=d=f)}return{value:n[{first:h,start:l,last:c,"first-except":d}[i]]||"",offset:{first:h,start:l,last:c,"first-except":d}[i]}}setNamedString(e,t,i){let n=this.namedStringValues[e]||(this.namedStringValues[e]=Object.create(null));n[i]=t,typeof t!="string"&&(this.counterStore.hasDeferredNamedStrings=!0)}setRunningElement(e,t){let i=this.runningElements[e]||(this.runningElements[e]=Object.create(null));i[t]=String(t)}},jy=class{constructor(e){u(this,"documentURLTransformer",e),u(this,"countersById",Object.create(null)),u(this,"pageCountersById",Object.create(null)),u(this,"pageDocCountersById",Object.create(null)),u(this,"pageTextById",Object.create(null)),u(this,"currentPageDocCounters",null),u(this,"previousPageDocCounters",null),u(this,"currentPageDocCounterChanges",Object.create(null)),u(this,"currentPageDocCounterChangeTypes",Object.create(null)),u(this,"currentPageCounters",Object.create(null)),u(this,"previousPageCounters",Object.create(null)),u(this,"pageCountersBeforeOverride",Object.create(null)),u(this,"hasDeferredNamedStrings",!1),u(this,"namedStringPageSnapshots",Object.create(null)),u(this,"namedStringPageCounterExprMap",Object.create(null)),u(this,"currentPageCountersStack",[]),u(this,"pageIndicesById",Object.create(null)),u(this,"currentPage",null),u(this,"newReferencesOfCurrentPage",[]),u(this,"referencesToSolve",[]),u(this,"referencesToSolveStack",[]),u(this,"unresolvedReferences",Object.create(null)),u(this,"resolvedReferences",Object.create(null)),u(this,"referenceTargetIdsBySourcePage",new Map),u(this,"targetsMovedEarlierAfterPageBreak",new Set),u(this,"pageControlledCounterNames",Object.assign(Object.create(null),{page:!0})),u(this,"pagesCounterExprs",[]),u(this,"pageCounterExprs",[]),u(this,"targetCounterExprs",[]),u(this,"targetTextExprs",[]),this.currentPageCounters.page=[0]}createCounterListener(e){return new Wy(this,e)}createCounterResolver(e,t,i){return new Gy(this,e,t,i)}setCurrentPage(e){this.currentPage=e}setCurrentPageDocCounters(e,t,i){this.previousPageDocCounters=this.currentPageDocCounters?Pi(this.currentPageDocCounters):null,this.currentPageDocCounters=e?Pi(e):null,this.currentPageDocCounterChanges=Object.create(null),this.currentPageDocCounterChangeTypes=i?{...i}:Object.create(null),t&&t.forEach(n=>{this.currentPageDocCounterChanges[n]=!0})}setPageControlledCounterNames(e){let t=Object.assign(Object.create(null),{page:!0});e.forEach(i=>{t[i]=!0}),this.pageControlledCounterNames=t}isPageControlledCounter(e){return!!this.pageControlledCounterNames[e]}definePageCounter(e,t){this.currentPageCounters[e]?this.currentPageCounters[e].push(t):this.currentPageCounters[e]=[t]}forceSetPageCounter(e){let t=this.currentPageCounters.page;!t||!t.length?this.currentPageCounters.page=[e]:t[t.length-1]=e}updatePageCounters(e,t){this.previousPageCounters=Pi(this.currentPageCounters);let i=this.currentPageDocCounterChanges||{},n=this.currentPageDocCounterChangeTypes||{},r=Object.create(null);if(this.currentPageDocCounters){let b=this.previousPageDocCounters||{};for(let x in this.currentPageDocCounters){if(!i[x])continue;let P=this.currentPageDocCounters[x],y=P.length?P[P.length-1]:0,C=b[x]||[],S=C.length?C[C.length-1]:0,N=y-S,E=n[x],R=E==="reset"||E==="set";r[x]={delta:N,reset:R,value:y}}}let s=Object.create(null),o,a=!1,h=e["counter-reset"];if(h){let b=h.evaluate(t);b&&(a=b===v.none,a||(o=nn(b,{reset:!0})))}o&&"pages"in o&&delete o.pages;let l,c=e["counter-set"];if(c){let b=c.evaluate(t);b&&(l=nn(b,{defaultValue:0}))}l&&"pages"in l&&delete l.pages;let d=[];if(o)for(let b in o)d.push(b);if(l)for(let b in l)d.push(b);let p,f=e["counter-increment"];if(f){let b=f.evaluate(t);b&&(p=nn(b))}p&&"pages"in p&&delete p.pages,p?!("page"in p)&&!(r.page&&r.page.reset)&&(p.page=1):(p=Object.create(null),r.page&&r.page.reset||(p.page=1));for(let b in p)d.push(b);this.setPageControlledCounterNames(d);let g=Pi(this.previousPageCounters);if(a)for(let b in this.pageCountersBeforeOverride)g[b]=Array.from(this.pageCountersBeforeOverride[b]);if(this.currentPageDocCounters)for(let b in this.currentPageDocCounters){if(this.isPageControlledCounter(b)){let x=r[b];if(x){if(x.reset)g[b]=[x.value],s[b]=!0;else if(x.delta!==0){g[b]||(g[b]=[0]);let P=g[b];P[P.length-1]+=x.delta}}else g[b]||(g[b]=Array.from(this.currentPageDocCounters[b]));continue}g[b]=Array.from(this.currentPageDocCounters[b])}this.currentPageCounters=g;let m=Object.create(null),w=b=>{if(!Object.prototype.hasOwnProperty.call(m,b)){let x=g[b];x&&(m[b]=Array.from(x))}};if(o)for(let b in o)w(b),this.definePageCounter(b,o[b]);for(let b in p){if(s[b])continue;this.currentPageCounters[b]||this.definePageCounter(b,0);let x=this.currentPageCounters[b];x[x.length-1]+=p[b]}if(l)for(let b in l)if(w(b),!this.currentPageCounters[b])this.definePageCounter(b,l[b]);else{let x=this.currentPageCounters[b];x[x.length-1]=l[b]}for(let b in m)this.pageCountersBeforeOverride[b]=Array.from(m[b])}pushPageCounters(e){this.currentPageCountersStack.push(this.currentPageCounters),this.currentPageCounters=Pi(e)}popPageCounters(){this.currentPageCounters=this.currentPageCountersStack.pop()}resolveReference(e){let t=this.unresolvedReferences[e],i=this.resolvedReferences[e];i||(i=this.resolvedReferences[e]=[]);for(let n=0;n<this.referencesToSolve.length;){let r=this.referencesToSolve[n];if(r.targetId===e){if(r.resolve(),this.referencesToSolve.splice(n,1),t){let s=t.indexOf(r);s>=0&&t.splice(s,1)}i.push(r)}else n++}this.saveReferenceOfCurrentPage(e,!0)}saveReferenceOfCurrentPage(e,t){if(!this.newReferencesOfCurrentPage.some(i=>i.targetId===e)){let i=new Hy(e,t);this.newReferencesOfCurrentPage.push(i)}}finishPage(e,t){let i=Object.keys(this.currentPage.elementsById);if(i.length>0){let s=Pi(this.currentPageCounters),o=this.currentPageDocCounters?Pi(this.currentPageDocCounters):null;i.forEach(a=>{this.pageCountersById[a]=s,o&&(this.pageDocCountersById[a]=o);let h=this.currentPage.elementsById[a];if(h&&h.length>0){let c=h[0];this.pageTextById[a]={content:In(c,"content"),before:In(c,"before"),after:In(c,"after"),marker:In(c,"marker")}}let l=this.pageIndicesById[a];l&&l.pageIndex<t&&this.unresolveReferences(a),this.pageIndicesById[a]={spineIndex:e,pageIndex:t}})}this.discardReferencesFromPage(e,t);let n=this.previousPageCounters,r;for(;r=this.newReferencesOfCurrentPage.shift();){r.pageCounters=n,r.spineIndex=e,r.pageIndex=t;let s;r.isResolved()?(s=this.resolvedReferences[r.targetId],s||(s=this.resolvedReferences[r.targetId]=[])):(s=this.unresolvedReferences[r.targetId],s||(s=this.unresolvedReferences[r.targetId]=[])),s.every(h=>!r.equals(h))&&s.push(r);let o=this.referenceTargetIdsBySourcePage.get(e);o||(o=new Map,this.referenceTargetIdsBySourcePage.set(e,o));let a=o.get(t);a||(a=new Set,o.set(t,a)),a.add(r.targetId)}this.hasDeferredNamedStrings&&this.currentPage&&this.recordNamedStringPageSnapshot(e),this.currentPage=null}discardReferencesFromPage(e,t){let i=this.referenceTargetIdsBySourcePage.get(e),n=i?.get(t);if(!n)return;let r=s=>s.spineIndex!==e||s.pageIndex!==t;for(let s of n)this.retainReferences(s,r);this.referencesToSolve=this.referencesToSolve.filter(r),this.referencesToSolveStack=this.referencesToSolveStack.map(s=>s.filter(r)),i.delete(t),i.size===0&&this.referenceTargetIdsBySourcePage.delete(e)}retainReferences(e,t){let i=(this.resolvedReferences[e]||[]).filter(t),n=(this.unresolvedReferences[e]||[]).filter(t);i.length?this.resolvedReferences[e]=i:delete this.resolvedReferences[e],n.length?this.unresolvedReferences[e]=n:delete this.unresolvedReferences[e]}isReferenceTracked(e){return(this.resolvedReferences[e.targetId]||[]).includes(e)||(this.unresolvedReferences[e.targetId]||[]).includes(e)}recordNamedStringPageSnapshot(e){let t=this.currentPage,i=t.isBlankPage?t.offset-1:t.offset,n=t.isBlankPage?i:Math.max(i,...Array.from(t.container.querySelectorAll(`[${jt}]`)).map(r=>parseInt(r.getAttribute(jt),10)));for(let r of Object.keys(this.namedStringPageSnapshots)){let s=parseInt(r,10);if(s<=i)continue;let o=this.namedStringPageSnapshots[s];s<=n&&i<=o.lastOffset&&delete this.namedStringPageSnapshots[s]}this.namedStringPageSnapshots[i]={lastOffset:n,spineIndex:e,counters:Pi(this.currentPageCounters)}}getPageCountersForOffset(e){for(let t of Object.keys(this.namedStringPageSnapshots)){let i=parseInt(t,10);if(i>e)break;let n=this.namedStringPageSnapshots[i];if(e<=n.lastOffset)return n.counters}return null}adjustPageCountersOfLaterSpines(e,t){if(t<=0)return;let i=new Set;for(let n of Object.keys(this.pageIndicesById))if(this.pageIndicesById[n].spineIndex>e){let r=this.pageCountersById[n];r&&r.page&&!i.has(r)&&(i.add(r),r.page=r.page.map(s=>s+t))}for(let n of Object.keys(this.namedStringPageSnapshots)){let r=this.namedStringPageSnapshots[parseInt(n,10)];r.spineIndex>e&&r.counters.page&&!i.has(r.counters)&&(i.add(r.counters),r.counters.page=r.counters.page.map(s=>s+t))}}discardReferencesFromSpine(e){let t=new Set([...Object.keys(this.resolvedReferences),...Object.keys(this.unresolvedReferences)]),i=n=>n.spineIndex<e;for(let n of t)this.retainReferences(n,i);for(let n of Object.keys(this.pageIndicesById))this.pageIndicesById[n].spineIndex>=e&&(delete this.pageCountersById[n],delete this.pageDocCountersById[n],delete this.pageTextById[n]);for(let n of Object.keys(this.namedStringPageSnapshots))this.namedStringPageSnapshots[parseInt(n,10)].spineIndex>=e&&delete this.namedStringPageSnapshots[parseInt(n,10)];for(let n of this.referenceTargetIdsBySourcePage.keys())n>=e&&this.referenceTargetIdsBySourcePage.delete(n);this.newReferencesOfCurrentPage=this.newReferencesOfCurrentPage.filter(i),this.referencesToSolve=this.referencesToSolve.filter(i),this.referencesToSolveStack=this.referencesToSolveStack.map(n=>n.filter(i))}updateTargetCounterNodesInPages(e,t){return this.updateGeneratedContentNodesInPages(e,Ss,i=>{var n;let r=this.targetCounterExprs.find(o=>o.expr.key===i);if(!r||!r.transformedId)return null;let s=(n=this.pageCountersById[r.transformedId])==null?void 0:n[r.name];return s?{id:r.transformedId,value:r.format(s[s.length-1])}:null},t)}updateTargetTextNodesInPages(e,t){return this.updateGeneratedContentNodesInPages(e,Cs,i=>{var n,r,s,o,a,h;let l=this.targetTextExprs.find(p=>p.expr.key===i);if(!l||!l.transformedId)return null;let c=this.pageTextById[l.transformedId];if(!c)return null;let d;return l.pseudoElement==="first-letter"?d=(a=(o=(((n=c.before)!=null?n:"")+((r=c.content)!=null?r:"")+((s=c.after)!=null?s:"")).match(Dr))==null?void 0:o[0])!=null?a:"":d=(h=c[l.pseudoElement])!=null?h:"",{id:l.transformedId,value:d}},t)}updateGeneratedContentNodesInPages(e,t,i,n){let r=new Set;for(let s of e){if(!s||!s.container)continue;let o=s.container.querySelectorAll(`[${t}]`);for(let a of o){let h=i(a.getAttribute(t));h&&a.textContent!==h.value&&(a.textContent=h.value,r.add(s),n?.add(h.id))}}return r}getPageCountersForPage(e,t){let i=Object.keys(e.elementsById);for(let n of i){let r=this.pageCountersById[n];if(r)return r}return t||null}updatePageCounterNodesInPages(e,t){var i;for(let n=0;n<e.length;n++){let r=e[n];if(!(r!=null&&r.container))continue;let s=r.container.querySelectorAll(`[${Sa}]`);for(let h of s){let l=h.getAttribute(Sa),c=this.namedStringPageCounterExprMap[l];if(!c)continue;let d=this.getPageCountersForOffset(c.offset),p=d?.[c.counterName];p&&(h.textContent=c.format(p))}let o=this.getPageCountersForPage(r,t?.[n]);if(!o)continue;let a=r.container.querySelectorAll(`[${ir}]`);for(let h of a){let l=h.getAttribute(ir),c=this.pageCounterExprs.find(g=>g.expr.key===l);if(!c)continue;let d=(i=c.expr)==null?void 0:i.str,p=d?.replace(/^page-counters?-/,""),f=o[p];f&&(h.textContent=c.format(f))}}}getUnresolvedRefsToPage(e){let t=[];Object.keys(e.elementsById).forEach(r=>{let s=this.unresolvedReferences[r];s&&(t=t.concat(s))}),t.sort((r,s)=>r.spineIndex-s.spineIndex||r.pageIndex-s.pageIndex);let i=[],n=null;return t.forEach(r=>{!n||n.spineIndex!==r.spineIndex||n.pageIndex!==r.pageIndex?(n={spineIndex:r.spineIndex,pageIndex:r.pageIndex,pageCounters:r.pageCounters,refs:[r]},i.push(n)):n.refs.push(r)}),i}pushReferencesToSolve(e){this.referencesToSolveStack.push(this.referencesToSolve),this.referencesToSolve=e}popReferencesToSolve(){this.referencesToSolve=this.referencesToSolveStack.pop()}registerPageCounterExpr(e,t,i){e==="pages"?this.pagesCounterExprs.push({expr:i,format:t}):this.pageCounterExprs.push({expr:i,format:t})}getPageCounterFormat(e){let t=this.pageCounterExprs.find(i=>i.expr===e);return t?t.format:null}getOrCreateNamedStringPageCounterExpr(e,t,i,n){for(let s in this.namedStringPageCounterExprMap){let o=this.namedStringPageCounterExprMap[s];if(o.offset===t&&o.counterName===i)return o.expr}let r=new we(e,()=>{let s=((t>=0?this.getPageCountersForOffset(t):null)||this.currentPageCounters)[i]||[];return n(s)},`named-string-page-counter-${i}`);return this.namedStringPageCounterExprMap[r.key]={expr:r,offset:t,counterName:i,format:n},r}registerTargetCounterExpr(e,t,i,n){this.targetCounterExprs.push({name:e,expr:i,format:t,transformedId:n})}registerTargetTextExpr(e,t,i){this.targetTextExprs.push({pseudoElement:e,expr:t,transformedId:i})}getExprContentListener(){return this.exprContentListener.bind(this)}exprContentListener(e,t,i){if(e instanceof we){if(e.str=="viv-leader"){let s=i.createElementNS("http://www.w3.org/1999/xhtml","span");return s.textContent=t,s.setAttribute("data-viv-leader",e.key),s.setAttribute("data-viv-leader-value",t),s}else if(e.str.startsWith("running-element-")){let s=t&&i.querySelectorAll(`[${jt}="${t}"]`);if(!s||s.length===0)return null;let o=s[s.length-1].cloneNode(!0);return this.fixPageCounterInRunningElement(o),o.style.position="",o.style.visibility="",o}else if(e.str.startsWith("target-counter-")){let s=i.createElementNS("http://www.w3.org/1999/xhtml","span");return s.textContent=t,s.setAttribute(Ss,e.key),s}else if(e.str.startsWith("target-text-")){let s=i.createElementNS("http://www.w3.org/1999/xhtml","span");return s.textContent=t,s.setAttribute(Cs,e.key),s}else if(e.str.startsWith("named-string-page-counter-")){let s=i.createElementNS("http://www.w3.org/1999/xhtml","span");return s.textContent=t,s.setAttribute(Sa,e.key),s}}let n=this.pagesCounterExprs.findIndex(s=>s.expr===e)>=0,r=!n&&this.pageCounterExprs.findIndex(s=>s.expr===e)>=0;if(n||r){let s=i.createElementNS("http://www.w3.org/1999/xhtml","span");return s.textContent=t,s.setAttribute(n?xa:ir,e.key),s}else return null}fixPageCounterInRunningElement(e){let t=e.querySelectorAll(`[${ir}]`);for(let r of t){let s=r.getAttribute(ir),o=this.pageCounterExprs.find(c=>c.expr.key===s),a=(o?.expr).str,h=a?.replace(/^page-counters?-/,""),l=this.currentPageCounters[h];l&&(r.textContent=o.format(l))}let i=e.querySelectorAll(`[${Ss}]`);for(let r of i)r.setAttribute(Pu,!0);let n=e.querySelectorAll(`[${Cs}]`);for(let r of n)r.setAttribute(ku,!0)}finishLastPage(e){var t;let i=e.root.querySelectorAll(`[${xa}]`),n=e.contentContainer.childElementCount;for(let o of i){let a=o.getAttribute(xa),h=this.pagesCounterExprs.findIndex(l=>l.expr.key===a);h>=0,o.textContent=this.pagesCounterExprs[h].format([n])}let r=e.root.querySelectorAll(`[${Pu}]`);for(let o of r){let a=o.getAttribute(Ss),h=this.targetCounterExprs.find(l=>l.expr.key===a);if(h&&h.transformedId){let l=this.pageCountersById[h.transformedId];if(l){let c=l[h.name];c&&(o.textContent=h.format(c[c.length-1]))}}}let s=e.root.querySelectorAll(`[${ku}]`);for(let o of s){let a=o.getAttribute(Cs),h=this.targetTextExprs.find(l=>l.expr.key===a);if(h&&h.transformedId){let l=this.pageTextById[h.transformedId];l&&(o.textContent=(t=l[h.pseudoElement])!=null?t:"")}}}createLayoutConstraint(e){return new Xy(this,e)}moveTargetEarlierAfterPageBreak(e,t){let i=this.pageIndicesById[e];return!i||t>=i.pageIndex?!0:this.targetsMovedEarlierAfterPageBreak.has(e)?!1:(this.targetsMovedEarlierAfterPageBreak.add(e),this.pageIndicesById[e]={...i,pageIndex:t},this.unresolveReferences(e),!0)}unresolveReferencesForTargets(e){for(let t of e)this.unresolveReferences(t)}unresolveReferences(e){let t=this.resolvedReferences[e];if(!t)return;let i=this.unresolvedReferences[e];i||(i=this.unresolvedReferences[e]=[]);let n;for(;n=t.shift();)n.unresolve(),i.push(n)}},xa="data-vivliostyle-pages-counter",ir="data-vivliostyle-page-counter",Sa="data-vivliostyle-named-string-page-counter",Ss="data-vivliostyle-target-counter",Cs="data-vivliostyle-target-text",Pu="data-vivliostyle-target-counter-in-running",ku="data-vivliostyle-target-text-in-running",Xy=class{constructor(e,t){u(this,"counterStore",e),u(this,"pageIndex",t)}allowLayoutAfterPageBreak(e){if(this.allowLayout(e))return!0;let t=this.getReferencedTargetId(e);return!!t&&this.counterStore.moveTargetEarlierAfterPageBreak(t,this.pageIndex)}allowLayout(e){let t=this.getReferencedTargetId(e);if(!t)return!0;let i=this.counterStore.pageIndicesById[t];return i?this.pageIndex>=i.pageIndex:!0}getReferencedTargetId(e){if(!e||e.after)return null;let t=e.viewNode;if(!t||t.nodeType!==1)return null;let i=t.getAttribute("data-vivliostyle-id")||t.getAttribute("id")||t.getAttribute("name");return!i||!this.counterStore.resolvedReferences[i]&&!this.counterStore.unresolvedReferences[i]?null:i}},qy=new Set(["before","after","first-line","first-letter"]),Eu=new Set(["media","supports","layer","-epubx-when"]),Gd=new Set([";","}"]),jd=new Set(["{",";","}"]),Yy=new Set([";","{","}"]),Ky=":where(:scope)",Zy=":where(:not(*))";function Jy(e){let{statements:t,changed:i}=Ja(e,0,e.length,null);return i?t.join(`
5
+ `):e}function Ja(e,t,i,n){let r=[],s=[],o=!1,a=t,h=()=>{s.length!==0&&(n?r.push(Qy(n,s)):r.push(Xd(s)),s.length=0)};for(;a<i&&(a=ln(e,a,i),!(a>=i||e[a]==="}"));){if(e[a]==="@"){let d=pv(e,a,i);if(!d)break;if(n&&!Eu.has(d.name)){s.push(Qi(e.slice(a,d.end))),a=d.end;continue}if(h(),d.hasBlock&&Eu.has(d.name)){let p=Ja(e,d.blockStart,d.blockEnd,n);o||(o=p.changed||n!=null),r.push(`${d.header} {${ev(p.statements)}}`)}else r.push(Qi(e.slice(a,d.end)));a=d.end;continue}if(n&&sv(e,a,i)){let d=lv(e,a,i);if(!d)break;s.push(Qi(d.text)),a=d.end;continue}h();let l=hv(e,a,i);if(!l){let d=fv(e,a,i);r.push(Qi(d.text)),a=d.end;continue}if(n&&uv(e,a,l)){let d=dv(e,a,l.end,i);s.push(Qi(d.text)),a=d.end;continue}let c=n?tv(n,l.prelude):qd(l.prelude);if(c){o||(o=n!=null);let d=Ja(e,l.blockStart,l.blockEnd,c);o||(o=d.changed),d.statements.length===0?r.push(`${c} {}`):r.push(...d.statements)}a=l.end}return h(),{statements:r,changed:o}}function Qy(e,t){return`${e} { ${Xd(t)} }`}function Xd(e){return e.map(t=>t.endsWith(";")?t:`${t};`).join(" ")}function ev(e){return e.length===0?"":` ${e.join(" ")} `}function tv(e,t){let i=iv(e);if(!i)return null;let n=Kd(t,",").map(r=>r.trim()).filter(Boolean).map(r=>{let s=Yd(r,i);return s.found?s.text:`${i} ${r}`}).filter(Boolean);return n.length===0?null:n.join(", ")}function qd(e){return Yd(e.trim(),Ky).text}function iv(e){let t=Kd(e,",").map(i=>i.trim()).filter(Boolean).filter(i=>!nv(i));return t.length===0?null:`:is(${t.join(", ")})`}function nv(e){let t=0;for(;t<e.length;){let i=Yo(e,t);if(i!=null){t=i;continue}let n=pn(e,t,e.length);if(n!=null){t=n;continue}if(e[t]===":"){if(e[t+1]===":")return!0;let r=t+1,s=ss(e,r,e.length),o=e.slice(r,s).toLowerCase();if(qy.has(o))return!0;t=s;continue}t++}return!1}function Yd(e,t){let i=0,n=!1,r="",s=[],o=rv(t);for(;i<e.length;){let a=Yo(e,i);if(a!=null){r+=e.slice(i,a),i=a;continue}let h=pn(e,i,e.length);if(h!=null){r+=e.slice(i,h),i=h;continue}let l=e[i];if(l===":"&&e[i+1]!==":"){let c=i+1,d=ss(e,c,e.length);if(d>c&&e[d]==="("){s.push(e.slice(c,d).toLowerCase()),r+=e.slice(i,d+1),i=d+1;continue}}if(l==="("){s.push(""),r+=l,i++;continue}if(l===")"){s.pop(),r+=l,i++;continue}if(l==="&"){r+=o&&s.includes("has")?Zy:t,n=!0,i++;continue}r+=l,i++}return{text:r,found:n}}function rv(e){let t=0;for(;t<e.length;){let i=Yo(e,t);if(i!=null){t=i;continue}let n=pn(e,t,e.length);if(n!=null){t=n;continue}if(e[t]===":"&&e[t+1]!==":"){let r=t+1,s=ss(e,r,e.length);if(s>r&&e.slice(r,s).toLowerCase()==="has"&&e[s]==="(")return!0;t=s;continue}t++}return!1}function Kd(e,t){let i=[],n=0,r=0,s=0,o=0;for(;r<e.length;){let a=Yo(e,r);if(a!=null){r=a;continue}let h=pn(e,r,e.length);if(h!=null){r=h;continue}let l=e[r];switch(l){case"(":s++;break;case")":s=Math.max(0,s-1);break;case"[":o++;break;case"]":o=Math.max(0,o-1);break;default:s===0&&o===0&&l===t&&(i.push(e.slice(n,r)),n=r+1);break}r++}return i.push(e.slice(n)),i}function sv(e,t,i){let n=t,r=av(e,n,i);if(r<=n)return!1;let s=ln(e,r,i);if(s>=i||e[s]!==":")return!1;let o=os(e,s+1,i,Yy);return o?.char==="{"?!ov(e,r,s,o.index):!0}function ov(e,t,i,n){if(ln(e,t,n)!==i)return!1;let r=ln(e,i+1,n);if(r!==i+1||r>=n)return!1;let s=e[r];return s===":"||s==="\\"||/[A-Za-z_-]/.test(s)}function av(e,t,i){let n=t;return e[n]==="-"&&(n++,n<i&&e[n]==="-"&&n++),ss(e,n,i)}function ss(e,t,i){let n=t;for(;n<i;){let r=e[n];if(r==="\\"){n+=2;continue}if(!/[0-9A-Za-z_-]/.test(r))break;n++}return n}function lv(e,t,i){let n=os(e,t,i,Gd);if(!n){let s=e.slice(t,i).trim();return s?{text:s,end:i}:null}let r=n.char===";"?n.index+1:n.index;return{text:e.slice(t,r).trim(),end:r}}function hv(e,t,i){let n=os(e,t,i,jd);if(!n||n.char!=="{")return null;let r=Zd(e,n.index,i);return r<0?null:{prelude:Qi(e.slice(t,n.index)),blockStart:n.index+1,blockEnd:r,end:r+1}}function uv(e,t,i){if(!cv(e,t,i.blockStart-1))return!0;let n=ln(e,i.blockStart,i.blockEnd);return n<i.blockEnd&&e[n]===";"}function cv(e,t,i){let n=ln(e,t,i);if(n>=i)return!1;let r=e[n];return r==="&"||r==="."||r==="#"||r===":"||r==="["||r==="|"||r==="*"||r===">"||r==="+"||r==="~"||r==="\\"||/[A-Za-z_-]/.test(r)}function dv(e,t,i,n){let r=ln(e,i,n),s=r<n&&e[r]===";"?r+1:i;return{text:e.slice(t,s),end:s}}function pv(e,t,i){let n=os(e,t,i,jd);if(!n)return null;let r=ss(e,t+1,i),s=e.slice(t+1,r).toLowerCase(),o=Qi(e.slice(t,n.index));if(n.char!=="{")return{name:s,header:o,hasBlock:!1,blockStart:-1,blockEnd:-1,end:n.index+(n.char===";"?1:0)};let a=Zd(e,n.index,i);return a<0?null:{name:s,header:o,hasBlock:!0,blockStart:n.index+1,blockEnd:a,end:a+1}}function fv(e,t,i){let n=os(e,t,i,Gd);if(!n)return{text:e.slice(t,i),end:i};let r=n.char===";"?n.index+1:n.index;return{text:e.slice(t,r),end:r}}function os(e,t,i,n){let r=t,s=0,o=0,a=0;for(;r<i;){let h=pn(e,r,i);if(h!=null){r=h;continue}let l=e[r];switch(l){case"(":s++;break;case")":s=Math.max(0,s-1);break;case"[":o++;break;case"]":o=Math.max(0,o-1);break;case"{":if(s===0&&o===0&&a===0&&n.has(l))return{index:r,char:l};a++;break;case"}":if(s===0&&o===0&&a===0&&n.has(l))return{index:r,char:l};a=Math.max(0,a-1);break;default:if(s===0&&o===0&&a===0&&n.has(l))return{index:r,char:l};break}r++}return null}function Zd(e,t,i){let n=t+1,r=1;for(;n<i;){let s=pn(e,n,i);if(s!=null){n=s;continue}let o=e[n];if(o==="{")r++;else if(o==="}"&&(r--,r===0))return n;n++}return-1}function ln(e,t,i){let n=t;for(;n<i;){let r=e[n];if(Qd(r)){n++;continue}if(r==="/"&&e[n+1]==="*"){n=Jd(e,n,i);continue}break}return n}function Jd(e,t,i){let n=e.indexOf("*/",t+2);return n<0||n+2>i?i:n+2}function pn(e,t,i){let n=e[t];return n==='"'||n==="'"?gv(e,t):n==="/"&&e[t+1]==="*"?Jd(e,t,i):null}function Yo(e,t){return e[t]!=="\\"?null:t+1>=e.length?e.length:t+2}function gv(e,t){let i=e[t],n=t+1;for(;n<e.length;){let r=e[n];if(r==="\\"){n+=2;continue}if(r===i)return n+1;n++}return e.length}function Qd(e){return e===" "||e===`
6
+ `||e==="\r"||e===" "||e==="\f"}function Qi(e){let t="",i=0,n=!1;for(;i<e.length;){let r=pn(e,i,e.length);if(r!=null&&e[i]!=="/"){n&&t.length>0&&(t+=" ",n=!1),t+=e.slice(i,r),i=r;continue}if(r!=null){n=t.length>0,i=r;continue}let s=e[i];if(Qd(s)){n=t.length>0,i++;continue}n&&t.length>0&&(t+=" ",n=!1),t+=s,i++}return t}function mv(e){if(e=e.substr(1),e.match(/^[^0-9a-fA-F\n\r]$/))return e;let t=parseInt(e,16);return isNaN(t)?"":t===0||t>=55296&&t<=57343||t>1114111?"\uFFFD":String.fromCodePoint(t)}function ki(e){return e.replace(/\\([0-9a-fA-F]{1,6}(\r\n|[ \n\r\t\f])?|[^0-9a-fA-F\n\r])/g,mv)}var yv=class{constructor(){u(this,"type"),u(this,"precededBySpace",!1),u(this,"num",0),u(this,"text",""),u(this,"position",0),this.type=0}toString(){switch(this.type){case 10:return"(";case 11:return")";case 12:return"{";case 13:return"}";case 14:return"[";case 15:return"]";case 16:return",";case 17:return";";case 18:return":";case 19:return"/";case 21:return"%";case 22:return"?";case 23:return"+";case 24:return"-";case 25:return"||";case 26:return"&&";case 31:return"!";case 32:return"$";case 33:return"^";case 34:return"|";case 35:return"~";case 36:return"*";case 37:return">";case 38:return"<";case 39:return"=";case 41:return"!=";case 42:return"$=";case 43:return"^=";case 44:return"|=";case 45:return"~=";case 46:return"*=";case 47:return">=";case 48:return"<=";case 49:return"==";case 50:return"::";case 51:return"<!--";case 52:return"-->";case 3:return this.num.toString()+this.text;case 4:case 5:return this.num.toString();case 20:return"@"+this.text;case 7:return"#"+this.text;case 6:return this.text+"(";case 9:return"."+this.text;case 0:return"/*EOF*/";default:return this.text}}};function et(e,t){let i=Array(128),n;for(n=0;n<128;n++)i[n]=e;for(i[NaN]=e==35?35:72,n=0;n<t.length;n+=2)i[t[n]]=t[n+1];return i}var ii=[72,72,72,72,72,72,72,72,72,1,1,72,1,1,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,1,4,34,6,7,8,9,33,10,11,12,13,14,15,16,17,2,2,2,2,2,2,2,2,2,2,18,19,20,21,22,23,24,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,25,29,26,30,3,72,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,3,27,31,28,32,72];ii[NaN]=80;var ni=[43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,43,52,43,43,43,43,39,43,43,39,39,39,39,39,39,39,39,39,39,43,43,43,43,43,43,43,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,43,44,43,43,39,43,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,43,43,43,43,43];ni[NaN]=43;var vv=[72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,72,78,59,72,59,59,59,59,59,59,59,59,59,59,72,72,72,72,72,72,72,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,72,61,72,72,78,72,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,78,72,72,72,72,72];ni[NaN]=43;var ep=[35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,35,57,59,35,58,58,58,58,58,58,58,58,58,58,35,35,35,35,35,35,35,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,35,61,35,35,60,35,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,60,35,35,35,35,35];ep[NaN]=35;var tp=[45,45,45,45,45,45,45,45,45,73,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,73,45,45,45,45,45,45,45,53,45,45,45,45,45,45,45,39,39,39,39,39,39,39,39,39,39,45,45,45,45,45,45,45,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,45,44,45,45,39,45,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,39,45,45,45,45,45];tp[NaN]=45;var Qa=[37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,37,41,37,37,37,37,37,37,37,37,42,37,39,39,39,39,39,39,39,39,39,39,37,37,37,37,37,37,37,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,37,37,37,37,40,37,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,37,37,37,37,37];Qa[NaN]=37;var el=[38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,38,41,38,38,38,38,38,38,38,38,38,38,39,39,39,39,39,39,39,39,39,39,38,38,38,38,38,38,38,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,38,38,38,38,40,38,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,40,38,38,38,38,38];el[NaN]=38;var $i=et(35,[61,36]),wv=et(35,[58,77]),bv=et(35,[61,36,124,50]),xv=et(35,[38,51]),Sv=et(35,[42,54]),Cv=et(39,[42,55]),Pv=et(54,[42,55,47,56]),kv=et(62,[62,82]),Ev=et(35,[61,36,33,70]),Nv=et(62,[45,71]),Tv=et(63,[45,81]),Ca=et(76,[10,72,13,72]),Iv=et(39,[39,46,10,72,13,72,92,48]),Av=et(39,[34,46,10,72,13,72,92,49]),Fv=et(39,[39,47,10,74,13,74,92,48]),Rv=et(39,[34,47,10,74,13,74,92,49]),Nu=et(64,[9,39,32,39,34,66,39,65,41,72,10,39,13,39]),Lv=et(39,[41,67,9,79,10,79,13,79,32,79,92,75,40,72,91,72,93,72,123,72,125,72,NaN,67]),Ov=et(39,[39,68,10,74,13,74,92,75,NaN,67]),Bv=et(39,[34,68,10,74,13,74,92,75,NaN,67]),Mv=et(72,[9,39,10,39,13,39,32,39,41,69]),_v=15,xt=class{constructor(e,t){u(this,"input",e),u(this,"handler",t),u(this,"indexMask"),u(this,"buffer"),u(this,"tail",0),u(this,"curr",0),u(this,"position",0),this.indexMask=_v,this.buffer=Array(this.indexMask+1);for(let i=0;i<=this.indexMask;i++)this.buffer[i]=new yv}token(){return this.tail==this.curr&&this.fillBuffer(),this.buffer[this.curr]}nthToken(e){return(this.tail-this.curr&this.indexMask)<=e&&this.fillBuffer(),this.buffer[this.curr+e&this.indexMask]}consume(){this.curr=this.curr+1&this.indexMask}fillBuffer(){let e=this.tail,t=this.curr,i=this.indexMask;if(e>=t?t+=i:t--,t==e)throw new Error("F_CSSTOK_INTERNAL");let n=ii,r=this.input,s=this.position,o=this.buffer,a=0,h=0,l="",c=0,d=!1,p=o[e],f=-9;for(;;){let g=r.charCodeAt(s);switch(n[g]||n[65]){case 72:isNaN(g)?(l=r.substring(h,s),a=0):n===ii&&a===0?(a=54,h=s,l=r.substring(s,s+1),s++):(l=r.substring(h,s),a=54),n=ii;break;case 1:s++,d=!0;continue;case 2:h=s++,n=Qa;continue;case 3:a=1,h=s++,n=ni;continue;case 4:h=s++,a=31,n=$i;continue;case 33:a=2,h=++s,n=Iv;continue;case 34:a=2,h=++s,n=Av;continue;case 6:h=++s,a=7,n=ni;continue;case 7:h=s++,a=32,n=$i;continue;case 8:h=s++,a=21;break;case 9:h=s++,a=32,n=xv;continue;case 10:h=s++,a=10;break;case 11:h=s++,a=11;break;case 12:h=s++,a=36,n=$i;continue;case 13:h=s++,a=23;break;case 14:h=s++,a=16;break;case 15:a=24,h=s++,n=ep;continue;case 16:h=s++,n=vv;continue;case 78:h=s++,a=9,n=ni;continue;case 17:h=s++,a=19,n=Sv;continue;case 18:h=s++,a=18,n=wv;continue;case 77:s++,a=50;break;case 19:h=s++,a=17;break;case 20:h=s++,a=38,n=Ev;continue;case 21:h=s++,a=39,n=$i;continue;case 22:h=s++,a=37,n=$i;continue;case 23:h=s++,a=22;break;case 24:h=++s,a=20,n=ni;continue;case 25:h=s++,a=14;break;case 26:h=s++,a=15;break;case 27:h=s++,a=12;break;case 28:h=s++,a=13;break;case 29:h=s++,f=h,a=1,n=Ca;continue;case 30:h=s++,a=33,n=$i;continue;case 31:h=s++,a=34,n=bv;continue;case 32:h=s++,a=35,n=$i;continue;case 35:break;case 36:s++,a=a+41-31;break;case 37:a=5,c=parseInt(r.substring(h,s),10);break;case 38:a=4,c=parseFloat(r.substring(h,s));break;case 39:s++;continue;case 40:a=3,c=parseFloat(r.substring(h,s)),h=s++,n=ni;continue;case 41:a=3,c=parseFloat(r.substring(h,s)),l="%",h=s++;break;case 42:s++,n=el;continue;case 43:if(l=ki(r.substring(h,s)),a===27&&g===63||a===1&&l.toLowerCase()==="u"&&/^(\bu\+[?0-9a-f]+(-[?0-9a-f]+)?|,|\s+|\/\*([^*]|\*[^/])*\*\/)+[;}]/i.test(r.substring(s-1))){a=27,s++;continue}break;case 44:f=s++,n=Ca;continue;case 45:l=ki(r.substring(h,s));break;case 46:l=r.substring(h,s),s++;break;case 47:l=ki(r.substring(h,s)),s++;break;case 48:f=s,s+=2,n=Fv;continue;case 49:f=s,s+=2,n=Rv;continue;case 50:s++,a=25;break;case 51:s++,a=26;break;case 52:if(l=r.substring(h,s),a==1){if(s++,l.toLowerCase()=="url"){n=Nu;continue}a=6}break;case 53:if(l=ki(r.substring(h,s)),a==1){if(s++,l.toLowerCase()=="url"){n=Nu;continue}a=6}break;case 54:n=Cv,s++;continue;case 55:n=Pv,s++;continue;case 56:n=ii,s++;continue;case 57:n=kv,s++,r[s]!==">"&&(a=1,n=ni);continue;case 81:a=51,l=r.substring(h,++s),n=ii;break;case 82:a=52,l=r.substring(h,++s),n=ii;break;case 58:a=5,n=Qa,s++;continue;case 59:a=4,n=el,s++;continue;case 60:a=1,n=ni,s++;continue;case 61:a=1,n=Ca,f=s++;continue;case 62:s--;break;case 63:s-=2;break;case 64:h=s++,n=Lv;continue;case 65:h=++s,n=Ov;continue;case 66:h=++s,n=Bv;continue;case 67:a=8,l=ki(r.substring(h,s)),s++;break;case 69:s++;break;case 70:n=Nv,s++;continue;case 71:n=Tv,s++;continue;case 79:if(s-f<8&&r.substring(f+1,s+1).match(/^[0-9a-fA-F]{0,6}(\r\n|[\n\r])|[ \t]$/)){s++;continue}case 68:a=8,l=ki(r.substring(h,s)),s++,n=Mv;continue;case 74:if(s++,s-f<9&&r.substring(f+1,s).match(/^[0-9a-fA-F]{0,6}(\r\n|[\n\r])$/))continue;a=54,l="E_CSS_UNEXPECTED_NEWLINE",n=ii;break;case 73:if(s-f<9&&r.substring(f+1,s+1).match(/^[0-9a-fA-F]{0,6}[ \t]$/)){s++,n=ni;continue}l=ki(r.substring(h,s));break;case 75:f=s++;continue;case 76:s++,n=tp;continue;default:if(n!==ii){a=54,l="E_CSS_UNEXPECTED_STATE";break}h=s,a=0}if(p.type=a,p.precededBySpace=d,p.num=c,p.text=l,p.position=h,e++,e>=t)break;n=ii,d=!1,a=0,h=s,l="",c=0,p=o[e&i]}this.position=s,this.tail=e&i}},Xe=null,tl=null;function Vr(){return Xe}function z(e){if(!Xe)throw new Error("E_TASK_NO_CONTEXT");Xe.name||(Xe.name=e);let t=Xe,i=new Ko(t,t.top,e);return t.top=i,i.state=1,i}function Dv(e){return new Uv(e||new Vv)}function I(e){return new il(e)}function hn(e,t,i){let n=z(e);n.handler=i;try{t(n)}catch(r){n.task.raise(r,n)}return n.result()}function zv(e,t){return(Xe?Xe.getScheduler():tl||Dv()).run(e,t)}var Vv=class{currentTime(){return new Date().valueOf()}setTimeout(e,t){return setTimeout(e,t)}clearTimeout(e){clearTimeout(e)}},Uv=class{constructor(e){u(this,"timer",e),u(this,"timeout",1),u(this,"slice",25),u(this,"sliceOverTime",0),u(this,"queue"),u(this,"wakeupTime",null),u(this,"timeoutToken",null),u(this,"inTimeSlice",!1),u(this,"order",0),this.queue=new $m,tl||(tl=this)}setSlice(e){this.slice=e}setTimeout(e){this.timeout=e}isTimeSliceOver(){return this.timer.currentTime()>=this.sliceOverTime}arm(){if(this.inTimeSlice)return;let e=this.queue.peek().scheduledTime,t=this.timer.currentTime();if(this.timeoutToken!=null){if(t+this.timeout>this.wakeupTime)return;this.timer.clearTimeout(this.timeoutToken)}let i=e-t;i<=this.timeout&&(i=this.timeout),this.wakeupTime=t+i,this.timeoutToken=this.timer.setTimeout(()=>{this.timeoutToken=null,this.doTimeSlice()},i)}schedule(e,t){let i=this.timer.currentTime();e.order=this.order++,e.scheduledTime=i+(t||0),this.queue.add(e),this.arm()}doTimeSlice(){this.timeoutToken!=null&&(this.timer.clearTimeout(this.timeoutToken),this.timeoutToken=null),this.inTimeSlice=!0;try{let e=this.timer.currentTime();for(this.sliceOverTime=e+this.slice;this.queue.length();){let t=this.queue.peek();if(t.scheduledTime>e||(this.queue.remove(),t.canceled||t.resumeInternal(),e=this.timer.currentTime(),e>=this.sliceOverTime))break}}catch(e){Z.error(e)}this.inTimeSlice=!1,this.queue.length()&&this.arm()}run(e,t){let i=new $v(this,t||"");i.top=new Ko(i,null,"bootstrap"),i.top.state=1,i.top.then(()=>{let r=()=>{i.running=!1;for(let s of i.callbacks)try{s()}catch(o){Z.error(o)}};try{e().then(s=>{i.result=s,r()})}catch(s){i.raise(s),r()}});let n=Xe;return Xe=i,this.schedule(i.top.suspend("bootstrap")),Xe=n,i}},ip=class{constructor(e){u(this,"task",e),u(this,"scheduledTime",0),u(this,"order",0),u(this,"result",null),u(this,"canceled",!1)}compare(e){let t=e;return t.scheduledTime-this.scheduledTime||t.order-this.order}getTask(){return this.task}schedule(e,t){this.result=e;let i=this.task;i&&i.scheduler.schedule(this,t)}resumeInternal(){let e=this.task;if(this.task=null,e&&e.continuation==this){e.continuation=null;let t=Xe;return Xe=e,e.top.finish(this.result),Xe=t,!0}return!1}cancel(){this.canceled=!0}},$v=class{constructor(e,t){u(this,"scheduler",e),u(this,"name",t),u(this,"callbacks",[]),u(this,"exception",null),u(this,"running",!0),u(this,"result",null),u(this,"waitTarget",null),u(this,"top",null),u(this,"continuation",null)}getName(){return this.name}interrupt(e){if(this.raise(e||new Error("E_TASK_INTERRUPT")),this!==Xe&&this.continuation){this.continuation.cancel();let t=new ip(this);this.waitTarget="interrupt",this.continuation=t,this.scheduler.schedule(t)}}getScheduler(){return this.scheduler}isRunning(){return this.running}whenDone(e){this.callbacks.push(e)}join(){let e=z("Task.join");if(!this.running)e.finish(this.result);else{let t=e.suspend(this);this.whenDone(()=>{t.schedule(this.result)})}return e.result()}unwind(){for(;this.top&&!this.top.handler;)this.top=this.top.parent;if(this.top&&this.top.handler&&this.exception){let e=this.exception;this.exception=null,this.top.handler(this.top,e)}else this.exception&&Z.error(this.exception,"Unhandled exception in task",this.name)}raise(e,t){if(this.fillStack(e),t){let i=this.top;for(;i&&i!=t;)i=i.parent;i==t&&(this.top=i)}this.exception=e,this.unwind()}fillStack(e){let t=e.frameTrace;if(!t){t=e.stack?`${e.stack}
7
7
  ---- async ---
8
- `:"";for(let i=this.top;i;i=i.parent)e+=" ",e+=i.getName(),e+=`
9
- `;t.frameTrace=e}}},rl=class sp{constructor(e){u(this,"value",e)}then(e){e(this.value)}thenAsync(e){return e(this.value)}thenReturn(e){return new sp(e)}thenFinish(e){e.finish(this.value)}isPending(){return!1}get(){return this.value}},jv=class{constructor(t){u(this,"frame",t)}then(t){this.frame.then(t)}thenAsync(t){if(this.isPending()){let e=new Js(this.frame.task,this.frame.parent,"AsyncResult.thenAsync");return e.state=1,this.frame.parent=e,this.frame.then(i=>{t(i).then(n=>{e.finish(n)})}),e.result()}else return t(this.frame.res)}thenReturn(t){return this.isPending()?this.thenAsync(()=>new rl(t)):new rl(t)}thenFinish(t){this.isPending()?this.then(e=>{t.finish(e)}):t.finish(this.frame.res)}isPending(){return this.frame.state==1}get(){if(this.isPending())throw new Error("Result is pending");return this.frame.res}},Js=class{constructor(t,e,i){u(this,"task",t),u(this,"parent",e),u(this,"name",i),u(this,"res",null),u(this,"state"),u(this,"callback",null),u(this,"handler",null),this.state=0}checkEnvironment(){if(!qe)throw new Error("F_TASK_NO_CONTEXT");if(this!==qe.top)throw new Error("F_TASK_NOT_TOP_FRAME")}result(){return new jv(this)}finish(t){this.checkEnvironment(),qe&&!qe.exception&&(this.res=t),this.state=2;let e=this.parent;if(qe&&(qe.top=e),this.callback){try{this.callback(t)}catch(i){this.task.raise(i,e)}this.state=3}}getTask(){return this.task}getName(){return this.name}getScheduler(){return this.task.scheduler}then(t){switch(this.state){case 1:if(this.callback)throw new Error("F_TASK_FRAME_ALREADY_HAS_CALLBACK");this.callback=t;break;case 2:{let e=this.task,i=this.parent;try{t(this.res),this.state=3}catch(n){this.state=3,e.raise(n,i)}break}case 3:throw new Error("F_TASK_DEAD_FRAME");default:throw new Error(`F_TASK_UNEXPECTED_FRAME_STATE ${this.state}`)}}timeSlice(){let t=V("Frame.timeSlice");return t.getScheduler().isTimeSliceOver()?(Y.debug("-- time slice --"),t.suspend().schedule(!0)):t.finish(!0),t.result()}sleep(t){let e=V("Frame.sleep");return e.suspend().schedule(!0,t),e.result()}loop(t){let e=V("Frame.loop"),i=n=>{try{for(;n;){let r=t();if(r.isPending()){r.then(i);return}else r.then(o=>{n=o})}e.finish(!0)}catch(r){e.task.raise(r,e)}};return i(!0),e.result()}loopWithFrame(t){let e=qe;if(!e)throw new Error("E_TASK_NO_CONTEXT");return this.loop(()=>{let i;do{let n=new Xv(e,e.top);e.top=n,n.state=1,t(n),i=n.result()}while(!i.isPending()&&i.get());return i})}suspend(t){if(this.checkEnvironment(),this.task.continuation)throw new Error("E_TASK_ALREADY_SUSPENDED");let e=new op(this.task);return this.task.continuation=e,qe=null,this.task.waitTarget=t||null,e}},Xv=class extends Js{constructor(t,e){super(t,e,"loop")}continueLoop(){this.finish(!0)}breakLoop(){this.finish(!1)}},Qs=class{constructor(t,e){u(this,"fetch",t),u(this,"name"),u(this,"arrived",!1),u(this,"resource",null),u(this,"task",null),u(this,"piggybacks",[]),this.name=e}start(){this.task||(this.task=Hr().getScheduler().run(()=>{let t=V("Fetcher.run");return this.fetch().then(e=>{let i=this.piggybacks;if(this.arrived=!0,this.resource=e,this.task=null,this.piggybacks=[],i)for(let n=0;n<i.length;n++)try{i[n](e)}catch(r){Y.error(r,"Error:")}t.finish(e)}),t.result()},this.name))}piggyback(t){this.arrived?t(this.resource):this.piggybacks.push(t)}get(){return this.arrived?F(this.resource):(this.start(),this.task.join())}hasArrived(){return this.arrived}},Hn=t=>{if(t.length==0)return F(!0);if(t.length==1)return t[0].get().thenReturn(!0);let e=V("waitForFetches"),i=0;return e.loop(()=>{for(;i<t.length;){let n=t[i++];if(!n.hasArrived())return n.get().thenReturn(!0)}return F(!1)}).then(()=>{e.finish(!0)}),e.result()},ap=`
8
+ `:"";for(let i=this.top;i;i=i.parent)t+=" ",t+=i.getName(),t+=`
9
+ `;e.frameTrace=t}}},il=class np{constructor(t){u(this,"value",t)}then(t){t(this.value)}thenAsync(t){return t(this.value)}thenReturn(t){return new np(t)}thenFinish(t){t.finish(this.value)}isPending(){return!1}get(){return this.value}},Hv=class{constructor(e){u(this,"frame",e)}then(e){this.frame.then(e)}thenAsync(e){if(this.isPending()){let t=new Ko(this.frame.task,this.frame.parent,"AsyncResult.thenAsync");return t.state=1,this.frame.parent=t,this.frame.then(i=>{e(i).then(n=>{t.finish(n)})}),t.result()}else return e(this.frame.res)}thenReturn(e){return this.isPending()?this.thenAsync(()=>new il(e)):new il(e)}thenFinish(e){this.isPending()?this.then(t=>{e.finish(t)}):e.finish(this.frame.res)}isPending(){return this.frame.state==1}get(){if(this.isPending())throw new Error("Result is pending");return this.frame.res}},Ko=class{constructor(e,t,i){u(this,"task",e),u(this,"parent",t),u(this,"name",i),u(this,"res",null),u(this,"state"),u(this,"callback",null),u(this,"handler",null),this.state=0}checkEnvironment(){if(!Xe)throw new Error("F_TASK_NO_CONTEXT");if(this!==Xe.top)throw new Error("F_TASK_NOT_TOP_FRAME")}result(){return new Hv(this)}finish(e){this.checkEnvironment(),Xe&&!Xe.exception&&(this.res=e),this.state=2;let t=this.parent;if(Xe&&(Xe.top=t),this.callback){try{this.callback(e)}catch(i){this.task.raise(i,t)}this.state=3}}getTask(){return this.task}getName(){return this.name}getScheduler(){return this.task.scheduler}then(e){switch(this.state){case 1:if(this.callback)throw new Error("F_TASK_FRAME_ALREADY_HAS_CALLBACK");this.callback=e;break;case 2:{let t=this.task,i=this.parent;try{e(this.res),this.state=3}catch(n){this.state=3,t.raise(n,i)}break}case 3:throw new Error("F_TASK_DEAD_FRAME");default:throw new Error(`F_TASK_UNEXPECTED_FRAME_STATE ${this.state}`)}}timeSlice(){let e=z("Frame.timeSlice");return e.getScheduler().isTimeSliceOver()?(Z.debug("-- time slice --"),e.suspend().schedule(!0)):e.finish(!0),e.result()}sleep(e){let t=z("Frame.sleep");return t.suspend().schedule(!0,e),t.result()}loop(e){let t=z("Frame.loop"),i=n=>{try{for(;n;){let r=e();if(r.isPending()){r.then(i);return}else r.then(s=>{n=s})}t.finish(!0)}catch(r){t.task.raise(r,t)}};return i(!0),t.result()}loopWithFrame(e){let t=Xe;if(!t)throw new Error("E_TASK_NO_CONTEXT");return this.loop(()=>{let i;do{let n=new Wv(t,t.top);t.top=n,n.state=1,e(n),i=n.result()}while(!i.isPending()&&i.get());return i})}suspend(e){if(this.checkEnvironment(),this.task.continuation)throw new Error("E_TASK_ALREADY_SUSPENDED");let t=new ip(this.task);return this.task.continuation=t,Xe=null,this.task.waitTarget=e||null,t}},Wv=class extends Ko{constructor(e,t){super(e,t,"loop")}continueLoop(){this.finish(!0)}breakLoop(){this.finish(!1)}},Zo=class{constructor(e,t){u(this,"fetch",e),u(this,"name"),u(this,"arrived",!1),u(this,"resource",null),u(this,"task",null),u(this,"piggybacks",[]),this.name=t}start(){this.task||(this.task=Vr().getScheduler().run(()=>{let e=z("Fetcher.run");return this.fetch().then(t=>{let i=this.piggybacks;if(this.arrived=!0,this.resource=t,this.task=null,this.piggybacks=[],i)for(let n=0;n<i.length;n++)try{i[n](t)}catch(r){Z.error(r,"Error:")}e.finish(t)}),e.result()},this.name))}piggyback(e){this.arrived?e(this.resource):this.piggybacks.push(e)}get(){return this.arrived?I(this.resource):(this.start(),this.task.join())}hasArrived(){return this.arrived}},Un=e=>{if(e.length==0)return I(!0);if(e.length==1)return e[0].get().thenReturn(!0);let t=z("waitForFetches"),i=0;return t.loop(()=>{for(;i<e.length;){let n=e[i++];if(!n.hasArrived())return n.get().thenReturn(!0)}return I(!1)}).then(()=>{t.finish(!0)}),t.result()},rp=`
10
10
  @media screen {
11
11
  [data-vivliostyle-viewer-viewport] {
12
12
  background: #aaaaaa;
@@ -75,7 +75,7 @@ var bm=Object.create;var So=Object.defineProperty;var xm=Object.getOwnPropertyDe
75
75
  transform-origin: center top;
76
76
  }
77
77
  }
78
- `,lp=`
78
+ `,sp=`
79
79
  [data-vivliostyle-layout-box] {
80
80
  position: absolute;
81
81
  left: 0;
@@ -198,7 +198,7 @@ var bm=Object.create;var So=Object.defineProperty;var xm=Object.getOwnPropertyDe
198
198
  break-after: page;
199
199
  }
200
200
  }
201
- `,hp=`
201
+ `,op=`
202
202
  /*
203
203
  * Copyright 2013 Google, Inc.
204
204
  * Copyright 2015 Daishinsha Inc.
@@ -829,7 +829,7 @@ word-wrap = overflow-wrap;
829
829
  [adapt,webkit]start = inline-start;
830
830
  [adapt,webkit]end = inline-end;
831
831
 
832
- `,up=`
832
+ `,ap=`
833
833
  <!DOCTYPE html>
834
834
  <html xmlns="http://www.w3.org/1999/xhtml" xmlns:s="http://www.pyroxy.com/ns/shadow">
835
835
  <head>
@@ -853,7 +853,7 @@ word-wrap = overflow-wrap;
853
853
  <s:template id="table-cell"><div data-vivliostyle-flow-root="true" class="-vivliostyle-table-cell-container"><s:content/></div></s:template>
854
854
 
855
855
  </body>
856
- </html>`,cp=`
856
+ </html>`,lp=`
857
857
  @namespace "http://www.w3.org/1999/xhtml";
858
858
 
859
859
  :root {
@@ -976,7 +976,7 @@ word-wrap = overflow-wrap;
976
976
  margin: 10%;
977
977
  }
978
978
  }
979
- `,dp=String.raw`
979
+ `,hp=String.raw`
980
980
  @namespace "http://www.w3.org/1999/xhtml";
981
981
  @namespace m "http://www.w3.org/1998/Math/MathML";
982
982
  @namespace epub "http://www.idpf.org/2007/ops";
@@ -1407,7 +1407,7 @@ epub|case[required-namespace::supported] ~ epub|case {
1407
1407
  epub|case[required-namespace::supported] ~ epub|default {
1408
1408
  display: none;
1409
1409
  }
1410
- `,pp=`
1410
+ `,up=`
1411
1411
  @namespace "http://www.w3.org/1999/xhtml";
1412
1412
 
1413
1413
  *:not([data-vivliostyle-role=doc-toc],
@@ -1441,7 +1441,7 @@ epub|case[required-namespace::supported] ~ epub|default {
1441
1441
  [data-vivliostyle-role=doc-toc]:is(ol,ul) {
1442
1442
  -adapt-behavior: toc-container;
1443
1443
  }
1444
- `,fp=`
1444
+ `,cp=`
1445
1445
  [data-viv-margin-discard~="block-start"] {
1446
1446
  margin-block-start: 0 !important;
1447
1447
  }
@@ -1650,7 +1650,7 @@ span[data-viv-leader] {
1650
1650
  -webkit-initial-letter: var(--viv-initialLetter);
1651
1651
  initial-letter: var(--viv-initialLetter);
1652
1652
  }
1653
- `,gp=String.raw`
1653
+ `,dp=String.raw`
1654
1654
  @counter-style decimal-leading-zero {
1655
1655
  system: extends decimal;
1656
1656
  pad: 2 '0';
@@ -1874,12 +1874,12 @@ span[data-viv-leader] {
1874
1874
  @counter-style upper-russian {
1875
1875
  system: alphabetic;
1876
1876
  symbols: \u0410 \u0411 \u0412 \u0413 \u0414 \u0415 \u0416 \u0417 \u0418 \u041A \u041B \u041C \u041D \u041E \u041F \u0420 \u0421 \u0422 \u0423 \u0424 \u0425 \u0426 \u0427 \u0428 \u0429 \u042D \u042E \u042F;
1877
- }`;function ea(t,e,i){let n=V("fetchFromURL"),r={method:i||"GET",mode:"cors"},o=n.suspend(),s={status:0,statusText:"",url:t,contentType:null,responseText:null,responseXML:null,responseBlob:null};return fetch(t,r).then(a=>{var h,l;if(s.status=a.status,s.url=a.url,s.statusText=a.statusText,s.contentType=(l=(h=a.headers.get("Content-Type"))==null?void 0:h.replace(/;.*$/,"").toLowerCase())!=null?l:null,!a.ok)throw new Error(`HTTP ${a.status}${a.statusText?` ${a.statusText}`:""}`);return e==="blob"?a.blob():e==="arraybuffer"?a.arrayBuffer():e==="json"?a.json():/\/aozorabunko\/[^/]+\/cards\/[^/]+\/files\/[^/.]+\.html$/.test(t)?(s.contentType="text/html",a.arrayBuffer().then(c=>new TextDecoder("Shift_JIS").decode(c))):(/^data:,(<|%3c)/i.test(t)&&(s.contentType="text/html"),a.text())}).then(a=>{e==="blob"&&a instanceof Blob?s.responseBlob=a:e==="arraybuffer"&&a instanceof ArrayBuffer?s.responseBlob=mp([a]):e==="json"?s.responseText=JSON.stringify(a):typeof a=="string"&&(s.responseText=a),o.schedule(s)}).catch(a=>{s.status>=400?Y.warn(`Error fetching ${t} (${s.status}${s.statusText?" "+s.statusText:""})`):Y.warn(a,`Error fetching ${t}`),o.schedule(s)}),n.result()}function mp(t,e){let i=e||"application/octet-stream";return new Blob(t,{type:i})}function qv(t){let e=V("readBlob"),i=new FileReader,n=e.suspend(i);return i.addEventListener("load",()=>{n.schedule(i.result)},!1),i.readAsArrayBuffer(t),e.result()}function Yv(t){return URL.createObjectURL(t)}var lh=class{constructor(t,e){u(this,"parser",t),u(this,"type",e),u(this,"resources",{}),u(this,"fetchers",{})}load(t,e,i){t=ft(t);let n=this.resources[t];return typeof n<"u"?F(n):this.fetch(t,e,i).get()}fetchInner(t,e,i){let n=V("fetch"),r=Ys(t);r&&(t=bn(t));let o=Ie("user-agent.xml",Ei),s=!r&&t===o;return s&&(t=`data:application/xml,${encodeURIComponent(up)}`),ea(t,this.type).then(a=>{if(a.status>=400&&e)throw new Error((i||`Failed to fetch required resource: ${t}`)+` (${a.status}${a.statusText?" "+a.statusText:""})`);r?(t=Ua(t),a.url=Ua(a.url)):s&&(a.url=t=o),this.parser(a,this).then(h=>{delete this.fetchers[t],this.resources[t]=h,n.finish(h)})}),n.result()}fetch(t,e,i){if(t=ft(t),this.resources[t])return null;let n=this.fetchers[t];return n||(n=new Qs(()=>this.fetchInner(t,e,i),`Fetch ${t}`),this.fetchers[t]=n,n.start()),n}get(t){return this.resources[ft(t)]}delete(t){delete this.resources[ft(t)]}};function Zv(t,e){let i=t.responseText;return F(i?Yl(i):null)}function Kv(){return new lh(Zv,"text")}function Pt(t,e,i){let n=new Qs(()=>{let r=V("loadElement"),o=r.suspend(t),s=!1,a=null,h=l=>{s||(s=!0,a!==null&&(clearTimeout(a),a=null),o.schedule(l?l.type:"timeout"))};if(t.addEventListener("load",h,!1),t.addEventListener("error",h,!1),t.addEventListener("abort",h,!1),t.namespaceURI=="http://www.w3.org/2000/svg")e&&t.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",e),a=setTimeout(h,300);else if(t.localName==="script")a=setTimeout(h,3e3);else if(e)if(t.localName==="img"){let l=t;l.loading==="lazy"&&(l.loading="eager"),l.src=e,i&&(l.alt=i),l.complete?setTimeout(()=>h(new Event("load")),0):a=setTimeout(h,3e4)}else t.src=e,i&&(t.alt=i);else(t.localName==="img"||t.localName==="embed"||t.localName==="object"||t.localName==="iframe")&&(t.complete?setTimeout(()=>h(new Event("load")),0):a=setTimeout(h,3e4));return r.result()},`loadElement ${e||t.localName}`);return n.start(),n}var Au=0,Jv=16777216,yp=33554432,vp=50331648,wp=67108864,Qv=83886080,ew=100663296,ta=class{constructor(t){u(this,"scope",t),u(this,"flavor"),this.flavor="Author"}getCurrentToken(){return null}getScope(){return this.scope}error(t,e){}startStylesheet(t){this.flavor=t}tagSelector(t,e){}classSelector(t){}pseudoclassSelector(t,e){}pseudoelementSelector(t,e){}idSelector(t){}attributeSelector(t,e,i,n,r){}descendantSelector(){}childSelector(){}adjacentSiblingSelector(){}followingSiblingSelector(){}nextSelector(){}startSelectorRule(){}startFontFaceRule(){}startCounterStyleRule(t){}startFootnoteRule(t){}startViewportRule(){}startDefineRule(){}startRegionRule(){}startPageRule(){}startPageMarginBoxRule(t){}startWhenRule(t){}startMediaRule(t){this.startWhenRule(t)}startLayerRule(t){}layerStatementRule(t){}startFlowRule(t){}startPageTemplateRule(){}startPageMasterRule(t,e,i){}startPartitionRule(t,e,i){}startPartitionGroupRule(t,e,i){}startRuleBody(){}property(t,e,i){}endRule(){}startFuncWithSelector(t,e){}endFuncWithSelector(){}pushSelectorText(t){}getImportantSpecificity(){switch(this.flavor){case"UA":return Au;case"User":return ew;default:return Qv}}getBaseSpecificity(){switch(this.flavor){case"UA":return Au;case"User":return Jv;default:return yp}}},tw=class{constructor(t){u(this,"outer",t)}},iw=class extends ta{constructor(t,e){super(t),u(this,"tokenizer",null),u(this,"initialSlave"),u(this,"slave"),this.initialSlave=this.slave=e(this)}delegateTo(t){let e=t(new tw(this.slave));return this.slave=e,e}takeBack(t){this.slave=t.outer}getCurrentToken(){return this.tokenizer?this.tokenizer.token():null}getScope(){return this.slave.getScope()}error(t,e){this.slave.error(t,e)}errorMsg(t,e){var i;Y.warn(t,(i=e?.toString())!=null?i:"")}startStylesheet(t){super.startStylesheet(t),this.slave=this.initialSlave,this.slave.startStylesheet(t)}tagSelector(t,e){this.slave.tagSelector(t,e)}classSelector(t){this.slave.classSelector(t)}pseudoclassSelector(t,e){this.slave.pseudoclassSelector(t,e)}pseudoelementSelector(t,e){this.slave.pseudoelementSelector(t,e)}idSelector(t){this.slave.idSelector(t)}attributeSelector(t,e,i,n,r){this.slave.attributeSelector(t,e,i,n,r)}descendantSelector(){this.slave.descendantSelector()}childSelector(){this.slave.childSelector()}adjacentSiblingSelector(){this.slave.adjacentSiblingSelector()}followingSiblingSelector(){this.slave.followingSiblingSelector()}nextSelector(){this.slave.nextSelector()}startSelectorRule(){this.slave.startSelectorRule()}startFontFaceRule(){this.slave.startFontFaceRule()}startCounterStyleRule(t){this.slave.startCounterStyleRule(t)}startFootnoteRule(t){this.slave.startFootnoteRule(t)}startViewportRule(){this.slave.startViewportRule()}startDefineRule(){this.slave.startDefineRule()}startRegionRule(){this.slave.startRegionRule()}startPageRule(){this.slave.startPageRule()}startPageMarginBoxRule(t){this.slave.startPageMarginBoxRule(t)}startWhenRule(t){this.slave.startWhenRule(t)}startLayerRule(t){this.slave.startLayerRule(t)}layerStatementRule(t){this.slave.layerStatementRule(t)}startFlowRule(t){this.slave.startFlowRule(t)}startPageTemplateRule(){this.slave.startPageTemplateRule()}startPageMasterRule(t,e,i){this.slave.startPageMasterRule(t,e,i)}startPartitionRule(t,e,i){this.slave.startPartitionRule(t,e,i)}startPartitionGroupRule(t,e,i){this.slave.startPartitionGroupRule(t,e,i)}startRuleBody(){this.slave.startRuleBody()}property(t,e,i){this.slave.property(t,e,i)}endRule(){this.slave.endRule()}startFuncWithSelector(t,e){this.slave.startFuncWithSelector(t,e)}endFuncWithSelector(){this.slave.endFuncWithSelector()}pushSelectorText(t){this.slave.pushSelectorText(t)}},Fu=class extends ta{constructor(t,e,i){super(t),u(this,"owner",e),u(this,"delegation",i),u(this,"depth",0),this.flavor=e.flavor}getCurrentToken(){return this.owner.getCurrentToken()}error(t,e){this.owner.errorMsg(t,e)}startRuleBody(){this.depth++}endDelegation(){this.delegation&&this.owner.takeBack(this.delegation)}endRule(){--this.depth==0&&this.endDelegation()}},Jn=class extends Fu{constructor(t,e,i){super(t,e,i)}report(t){this.error(t,this.getCurrentToken())}reportAndSkip(t){this.report(t),this.owner.delegateTo(e=>new Fu(this.scope,this.owner,e))}startSelectorRule(){this.reportAndSkip("E_CSS_UNEXPECTED_SELECTOR")}startFontFaceRule(){this.reportAndSkip("E_CSS_UNEXPECTED_FONT_FACE")}startCounterStyleRule(t){this.reportAndSkip("E_CSS_UNEXPECTED_COUNTER_STYLE")}startFootnoteRule(t){this.reportAndSkip("E_CSS_UNEXPECTED_FOOTNOTE")}startViewportRule(){this.reportAndSkip("E_CSS_UNEXPECTED_VIEWPORT")}startDefineRule(){this.reportAndSkip("E_CSS_UNEXPECTED_DEFINE")}startRegionRule(){this.reportAndSkip("E_CSS_UNEXPECTED_REGION")}startPageRule(){this.reportAndSkip("E_CSS_UNEXPECTED_PAGE")}startWhenRule(t){this.reportAndSkip("E_CSS_UNEXPECTED_WHEN")}startLayerRule(t){this.reportAndSkip("E_CSS_UNEXPECTED_LAYER")}layerStatementRule(t){this.report("E_CSS_UNEXPECTED_LAYER")}startFlowRule(t){this.reportAndSkip("E_CSS_UNEXPECTED_FLOW")}startPageTemplateRule(){this.reportAndSkip("E_CSS_UNEXPECTED_PAGE_TEMPLATE")}startPageMasterRule(t,e,i){this.reportAndSkip("E_CSS_UNEXPECTED_PAGE_MASTER")}startPartitionRule(t,e,i){this.reportAndSkip("E_CSS_UNEXPECTED_PARTITION")}startPartitionGroupRule(t,e,i){this.reportAndSkip("E_CSS_UNEXPECTED_PARTITION_GROUP")}startFuncWithSelector(t,e){this.reportAndSkip("E_CSS_UNEXPECTED_SELECTOR_FUNC")}endFuncWithSelector(){this.reportAndSkip("E_CSS_UNEXPECTED_END_SELECTOR_FUNC")}property(t,e,i){this.error("E_CSS_UNEXPECTED_PROPERTY",this.getCurrentToken())}},Ue=[],vs=[],Ce=[],De=[],Ut=[],at=[],He=[],Je=[],Se=[],Ke=[],dt=[],je=[],$e=[],En=55,Nn=56,Eo=57;Ue[1]=28,Ue[36]=29,Ue[7]=29,Ue[9]=29,Ue[14]=29,Ue[18]=29,Ue[50]=29,Ue[20]=30,Ue[13]=27,Ue[0]=200,vs[1]=46,vs[0]=200,at[1]=2,at[36]=4,at[7]=6,at[9]=8,at[14]=10,at[18]=14,at[50]=42,Ce[37]=11,Ce[23]=12,Ce[35]=56,Ce[1]=1,Ce[36]=3,Ce[7]=5,Ce[9]=7,Ce[14]=9,Ce[12]=13,Ce[18]=55,Ce[50]=58,Ce[16]=41,De[37]=11,De[23]=12,De[35]=56,De[1]=1,De[36]=3,De[7]=5,De[9]=7,De[14]=9,De[18]=55,Ut[1]=2,Ut[36]=4,Ut[7]=6,Ut[9]=8,Ut[18]=14,Ut[50]=42,Ut[14]=10,Ut[12]=13,He[1]=15,He[7]=16,He[4]=17,He[5]=18,He[3]=19,He[2]=20,He[8]=21,He[27]=57,He[16]=22,He[19]=23,He[6]=24,He[11]=25,He[17]=26,He[13]=48,He[31]=47,He[23]=54,He[0]=44,Je[1]=31,Je[4]=32,Je[5]=32,Je[3]=33,Je[2]=34,Je[10]=40,Je[6]=38,Je[31]=36,Je[24]=36,Je[32]=35,Se[1]=45,Se[16]=37,Se[37]=37,Se[38]=37,Se[47]=37,Se[48]=37,Se[39]=37,Se[49]=37,Se[41]=37,Se[26]=37,Se[25]=37,Se[23]=37,Se[24]=37,Se[19]=37,Se[21]=37,Se[36]=37,Se[18]=37,Se[22]=37,Se[11]=39,Se[12]=43,Se[17]=49,Ke[0]=200,Ke[12]=50,Ke[13]=51,Ke[14]=50,Ke[15]=51,Ke[10]=50,Ke[11]=51,Ke[17]=53,dt[0]=200,dt[12]=50,dt[13]=52,dt[14]=50,dt[15]=51,dt[10]=50,dt[11]=51,dt[17]=53,je[0]=200,je[12]=50,je[13]=51,je[14]=50,je[15]=51,je[10]=50,je[11]=51,$e[11]=0,$e[16]=0,$e[22]=1,$e[18]=1,$e[26]=2,$e[25]=2,$e[38]=3,$e[37]=3,$e[48]=3,$e[47]=3,$e[39]=3,$e[49]=3,$e[41]=3,$e[23]=4,$e[24]=4,$e[36]=5,$e[19]=5,$e[21]=5,$e[0]=6,$e[En]=2,$e[Nn]=2;var uo=class{constructor(t,e,i,n){u(this,"actions",t),u(this,"tokenizer",e),u(this,"handler",i),u(this,"baseURL",n),u(this,"valStack",[]),u(this,"namespacePrefixToURI",{}),u(this,"defaultNamespaceURI",null),u(this,"propName",null),u(this,"propImportant",!1),u(this,"exprContext"),u(this,"result",null),u(this,"importReady",!1),u(this,"importURL",null),u(this,"importCondition",null),u(this,"importHasLayer",!1),u(this,"importLayerNames",null),u(this,"errorBrackets",[]),u(this,"ruleStack",[]),u(this,"regionRule",!1),u(this,"pageRule",!1),u(this,"inStyleDeclaration",!1),this.exprContext=2}extractVals(t,e){let i=[],n=this.valStack;for(;e<n.length&&(i.push(n[e++]),e!==n.length);){if(n[e++]!==t)throw new Error("Unexpected state");e===n.length&&i.push(Ae)}return i}valStackReduce(t,e){let i=this.valStack,n=i.length,r=0,o;do if(o=i[--n],t===")"&&o instanceof Sn){if(o.text===")")r++;else if(o.text==="("){if(r===0)return null;r--}}while(typeof o<"u"&&typeof o!="string");let s=i.length-(n+1);if(s>1&&i.splice(n+1,s,new ee(i.slice(n+1,i.length))),t==",")return null;n++;do o=i[--n];while(typeof o<"u"&&(typeof o!="string"||o==","));if(s=i.length-(n+1),o=="("){if(t!=")"&&e.type!==0)return this.handler.error("E_CSS_MISMATCHED_C_PAR",e),this.actions=dt,null;let h=new Vt(i[n-1],this.extractVals(",",n+1));if(i.splice(n-1,s+2,h),h.name==="var"){let l=h.values[0]instanceof he&&h.values[0].name;ze(l||void 0)||(this.handler.error(`E_CSS_INVALID_VAR ${h.toString()}`,e),this.actions=dt)}return h}if(t!=";"||n>=0)return this.handler.error("E_CSS_UNEXPECTED_VAL_END",e),this.actions=dt,null;if(s>1)return new Be(this.extractVals(",",n+1));let a=i[0];return a instanceof ot?a:a?new Sn(a.toString()):Ae}exprError(t,e){this.actions=this.propName?dt:Ke,Y.warn(t,e.toString())}exprStackReduce(t,e){let i=this.valStack,n=this.handler,r=i.pop(),o;for(;;){let s=i.pop();if(t==11){let a=[r];for(;s==16;)a.unshift(i.pop()),s=i.pop();if(typeof s=="string"){if(s=="{"){for(;a.length>=2;){let h=a.shift(),l=a.shift(),c=new uy(n.getScope(),h,l);a.unshift(c)}return i.push(new j(a[0])),!0}else if(s=="("){let h=i.pop(),l=i.pop();r=new Er(n.getScope(),Xa(l,h),a),t=0;continue}}if(s==10){r.isMediaName()&&(r=new hu(n.getScope(),r,null)),t=0;continue}}else if(typeof s=="string"){i.push(s);break}if(s<0)if(s==-31)r=new Ri(n.getScope(),r);else if(s==-24)r=new In(n.getScope(),r);else if(s==-Eo)r=new ly(n.getScope(),r);else return this.exprError("F_UNEXPECTED_STATE",e),!1;else{if($e[t]>$e[s]){i.push(s);break}switch(o=i.pop(),s){case 26:r=new ih(n.getScope(),o,r);break;case En:r=new hy(n.getScope(),o,r);break;case Nn:r=new cy(n.getScope(),o,r);break;case 25:r=new nh(n.getScope(),o,r);break;case 38:r=new dy(n.getScope(),o,r);break;case 37:r=new fy(n.getScope(),o,r);break;case 48:r=new py(n.getScope(),o,r);break;case 47:r=new Za(n.getScope(),o,r);break;case 39:case 49:r=new rh(n.getScope(),o,r);break;case 41:r=new gy(n.getScope(),o,r);break;case 23:r=new wd(n.getScope(),o,r);break;case 24:r=new bd(n.getScope(),o,r);break;case 36:r=new oh(n.getScope(),o,r);break;case 19:r=new xd(n.getScope(),o,r);break;case 21:r=new Sd(n.getScope(),o,r);break;case 18:if(i.length>1)switch(i[i.length-1]){case 22:i.pop(),r=new vy(n.getScope(),i.pop(),o,r);break;case 10:if(o.isMediaName())r=new hu(n.getScope(),o,r);else return this.exprError("E_CSS_MEDIA_TEST",e),!1;break}else return this.exprError("E_CSS_EXPR_COND",e),!1;break;case 22:if(t!=18)return this.exprError("E_CSS_EXPR_COND",e),!1;case 10:return i.push(o),i.push(s),i.push(r),!1;default:return this.exprError("F_UNEXPECTED_STATE",e),!1}}}return i.push(r),!1}readLayerName(){let t=this.tokenizer,e=t.token();if(e.type!==1)return null;let i=[e.text];for(t.consume();;){if(e=t.token(),e.type!==9||e.precededBySpace)return i;i.push(e.text),t.consume()}}readSupportsTest(t){let e=t.type===6,i=this.tokenizer,n,r="";if(e)r=t.text,n=t.position+r.length+1;else if(t.type===10){let d=i.nthToken(1),p=i.nthToken(2);if(d.type===1&&p.type===18)i.consume(),i.consume(),r=d.text,n=p.position+1;else{if(d.type===10||d.type===6||d.type===1&&d.text.toLowerCase()==="not"&&(p.type===10||p.type===6))return null;n=t.position+1}}else return null;let o=0,s,a=0;for(;o>=0;)switch(i.consume(),s=i.token(),s.type){case 11:o--;break;case 10:case 6:o++;break;case 16:o===0&&a++;break;case 0:return this.exprError("E_CSS_UNEXPECTED_EOF",s),null}i.consume();let h=s.position,l=i.input.substring(n,h),c=e&&r==="selector"&&a>0?"":ze(r)?l:l.trim();return new wy(this.handler.getScope(),r,c,e)}readPseudoParams(){let t=[];for(;;){let e=this.tokenizer.token();switch(e.type){case 1:t.push(e.text);break;case 23:t.push("+");break;case 4:case 5:t.push(e.num);break;default:return t}this.tokenizer.consume()}}skipPseudoFunctionContents(){let t=0;for(;;){switch(this.tokenizer.token().type){case 0:return!1;case 11:if(t===0)return!0;t--;break;case 10:case 6:t++;break}this.tokenizer.consume()}}readNthPseudoParams(){let t=!1,e=this.tokenizer.token();if(e.type===23)t=!0,this.tokenizer.consume(),e=this.tokenizer.token();else if(e.type===1&&(e.text==="even"||e.text==="odd"))return this.tokenizer.consume(),[2,e.text==="odd"?1:0];switch(e.type){case 3:if(t&&e.num<0)return null;case 1:if(t&&e.text.charAt(0)==="-")return null;if(e.text==="n"||e.text==="-n"){if(t&&e.precededBySpace)return null;let i=e.text==="-n"?-1:1;e.type===3&&(i=e.num);let n=0;this.tokenizer.consume(),e=this.tokenizer.token();let r=e.type===24,o=e.type===23||r;if(o&&(this.tokenizer.consume(),e=this.tokenizer.token()),e.type===5){if(n=e.num,1/n===-1/0){if(n=0,o)return null}else if(n<0){if(o)return null}else if(n>=0&&!o)return null;this.tokenizer.consume()}else if(o)return null;return[i,r&&n>0?-n:n]}else if(e.text==="n-"||e.text==="-n-"){if(t&&e.precededBySpace)return null;let i=e.text==="-n-"?-1:1;if(e.type===3&&(i=e.num),this.tokenizer.consume(),e=this.tokenizer.token(),e.type===5)return e.num<0||1/e.num===-1/0?null:(this.tokenizer.consume(),[i,e.num])}else{let i=e.text.match(/^n(-[0-9]+)$/);if(i)return t&&e.precededBySpace?null:(this.tokenizer.consume(),[e.type===3?e.num:1,parseInt(i[1],10)]);if(i=e.text.match(/^-n(-[0-9]+)$/),i)return this.tokenizer.consume(),[-1,parseInt(i[1],10)]}return null;case 5:return t&&(e.precededBySpace||e.num<0)?null:(this.tokenizer.consume(),[0,e.num])}return null}makeCondition(t,e){let i=this.handler.getScope();if(e=e||i._true,t){let n=t.split(/\s+/);for(let r of n)switch(r){case"vertical":e=Xt(i,e,new Ri(i,new Qe(i,"pref-horizontal")));break;case"horizontal":e=Xt(i,e,new Qe(i,"pref-horizontal"));break;case"day":e=Xt(i,e,new Ri(i,new Qe(i,"pref-night-mode")));break;case"night":e=Xt(i,e,new Qe(i,"pref-night-mode"));break;default:e=i._false}}return e===i._true?null:new j(e)}isInsidePropertyOnlyRule(){switch(this.ruleStack[this.ruleStack.length-1]){case"[selector]":case"font-face":case"counter-style":case"-epubx-flow":case"-epubx-viewport":case"-epubx-define":case"-adapt-footnote-area":case"footnote":return!0}return!1}runParser(t,e,i,n,r,o){let s=this.handler,a=this.tokenizer,h=this.valStack,l,c,d,p,f,g=null,m,v=null;for(i&&(this.inStyleDeclaration=!0),n&&(this.exprContext=2,this.valStack.push("{"));t>0;--t){if(l=a.token(),r&&v===null&&(v=l.position-1,a.input[v]==="("&&v++),this.actions===He&&this.errorBrackets.length>0&&(l.type===this.errorBrackets[this.errorBrackets.length-1]||l.type===17||l.type===31)){if(l.type===this.errorBrackets[this.errorBrackets.length-1]&&(this.errorBrackets.pop(),l.type===11&&this.valStackReduce(")",l))){a.consume();continue}h.push(new Sn(l.toString())),a.consume();continue}switch(this.actions[l.type]){case 28:if(!this.inStyleDeclaration||a.nthToken(1).type!=18){this.isInsidePropertyOnlyRule()?(s.error("E_CSS_COLON_EXPECTED",a.nthToken(1)),this.actions=dt):(this.actions=at,s.startSelectorRule());continue}this.propName=l.text,this.propImportant=!1,a.consume(),a.consume(),this.actions=He,h.splice(0,h.length);continue;case 46:if(a.nthToken(1).type!=18){this.actions=dt,s.error("E_CSS_COLON_EXPECTED",a.nthToken(1));continue}this.propName=l.text,this.propImportant=!1,a.consume(),a.consume(),this.actions=He,h.splice(0,h.length);continue;case 29:this.actions=at,s.startSelectorRule();continue;case 1:if(!l.precededBySpace){this.actions=je,s.error("E_CSS_SPACE_EXPECTED",l);continue}s.descendantSelector();case 2:if(a.nthToken(1).type==34)if(a.consume(),a.consume(),d=this.namespacePrefixToURI[l.text],d!=null)switch(l=a.token(),l.type){case 1:s.tagSelector(d,l.text),r?this.actions=De:this.actions=Ce,a.consume();break;case 36:s.tagSelector(d,null),r?this.actions=De:this.actions=Ce,a.consume();break;default:this.actions=Ke,s.error("E_CSS_NAMESPACE",l)}else this.actions=Ke,s.error("E_CSS_UNDECLARED_PREFIX",l);else s.tagSelector(this.defaultNamespaceURI,l.text),r?this.actions=De:this.actions=Ce,a.consume();continue;case 3:if(!l.precededBySpace){this.actions=je,s.error("E_CSS_SPACE_EXPECTED",l);continue}s.descendantSelector();case 4:if(a.nthToken(1).type==34)switch(a.consume(),a.consume(),l=a.token(),l.type){case 1:s.tagSelector(null,l.text),r?this.actions=De:this.actions=Ce,a.consume();break;case 36:s.tagSelector(null,null),r?this.actions=De:this.actions=Ce,a.consume();break;default:this.actions=Ke,s.error("E_CSS_NAMESPACE",l)}else s.tagSelector(this.defaultNamespaceURI,null),r?this.actions=De:this.actions=Ce,a.consume();continue;case 5:l.precededBySpace&&s.descendantSelector();case 6:if(!l.text){s.error("E_CSS_SYNTAX",l),a.consume();continue}s.idSelector(l.text),r?this.actions=De:this.actions=Ce,a.consume();continue;case 7:l.precededBySpace&&s.descendantSelector();case 8:s.classSelector(l.text),r?this.actions=De:this.actions=Ce,a.consume();continue;case 55:l.precededBySpace&&s.descendantSelector();case 14:a.consume(),l=a.token();e:switch(l.type){case 1:s.pseudoclassSelector(l.text,null),a.consume(),r?this.actions=De:this.actions=Ce;continue;case 6:switch(p=l.text.toLowerCase(),a.consume(),p){case"is":case"not":case"where":case"has":this.actions=at,s.startFuncWithSelector(p),this.runParser(Number.POSITIVE_INFINITY,!1,!1,!1,!0,p==="has")?this.actions=Ce:this.actions=je;continue;case"lang":case"href-epub-type":case"href-role-type":if(l=a.token(),l.type===1){m=[l.text],a.consume(),(p==="href-epub-type"||p==="href-role-type")&&a.token().type===16&&(a.consume(),l=a.token(),l.type===1&&(m.push(l.text),a.consume()));break}else break e;case"nth-child":case"nth-of-type":case"nth-last-child":case"nth-last-of-type":case"nth":if(m=this.readNthPseudoParams(),m)if(p==="nth-child"||p==="nth-last-child"){if(c=a.nthToken(0),c.type===1&&c.text==="of"){a.consume(),this.actions=at,s.startFuncWithSelector(p,m),this.runParser(Number.POSITIVE_INFINITY,!1,!1,!1,!0,!1)?r?this.actions=De:this.actions=Ce:this.actions=je;continue}break}else if(p==="nth"){if(c=a.nthToken(0),c.type===1&&c.text==="of")if(a.consume(),c=a.token(),c.type===1)m.push(c.text),a.consume();else break e;break}else break;else break e;case"dir":if(l=a.token(),l.type===1&&a.nthToken(1).type===11){m=[l.text],a.consume();break}default:if(m=[],!this.skipPseudoFunctionContents())break e}if(l=a.token(),l.type==11){s.pseudoclassSelector(p,m),a.consume(),r?this.actions=De:this.actions=Ce;continue}break}s.error("E_CSS_PSEUDOCLASS_SYNTAX",l),this.actions=Ke;continue;case 58:l.precededBySpace&&s.descendantSelector();case 42:switch(a.consume(),l=a.token(),l.type){case 1:s.pseudoelementSelector(l.text,null),r?this.actions=De:this.actions=Ce,a.consume();continue;case 6:if(p=l.text.toLowerCase(),a.consume(),p=="nth-fragment"){if(m=this.readNthPseudoParams(),m===null)break}else m=this.readPseudoParams();if(l=a.token(),l.type==11){s.pseudoelementSelector(p,m),r?this.actions=De:this.actions=Ce,a.consume();continue}break}s.error("E_CSS_PSEUDOELEM_SYNTAX",l),this.actions=Ke;continue;case 9:l.precededBySpace&&s.descendantSelector();case 10:{if(a.consume(),l=a.token(),l.type==1)p=l.text,a.consume();else if(l.type==36)p=null,a.consume();else if(l.type==34)p="";else{this.actions=je,s.error("E_CSS_ATTR",l),a.consume();continue}if(l=a.token(),l.type==34){if(d=p&&this.namespacePrefixToURI[p],d===void 0){this.actions=je,s.error("E_CSS_UNDECLARED_PREFIX",l),a.consume();continue}if(a.consume(),l=a.token(),l.type!=1){this.actions=je,s.error("E_CSS_ATTR_NAME_EXPECTED",l);continue}p=l.text,a.consume(),l=a.token()}else d="";switch(l.type){case 39:case 45:case 44:case 43:case 42:case 46:case 50:f=l.type,a.consume(),l=a.token();break;case 15:s.attributeSelector(d,p,0,null,null),r?this.actions=De:this.actions=Ce,a.consume();continue;default:this.actions=je,s.error("E_CSS_ATTR_OP_EXPECTED",l);continue}let b=p,x=null;switch(l.type){case 1:case 2:{let C=l.text;if(a.consume(),l=a.token(),l.type==1){let y=l.text.toLowerCase();(y=="i"||y=="s")&&(x=y,a.consume(),l=a.token())}s.attributeSelector(d,b,f,C,x);break}default:this.actions=je,s.error("E_CSS_ATTR_VAL_EXPECTED",l);continue}if(l.type!=15){this.actions=je,s.error("E_CSS_ATTR",l);continue}r?this.actions=De:this.actions=Ce,a.consume();continue}case 11:s.childSelector(),this.actions=Ut,a.consume();continue;case 12:s.adjacentSiblingSelector(),this.actions=Ut,a.consume();continue;case 56:s.followingSiblingSelector(),this.actions=Ut,a.consume();continue;case 13:this.regionRule?(this.ruleStack.push("-epubx-region"),this.regionRule=!1):this.pageRule?(this.ruleStack.push("page"),this.pageRule=!1,this.inStyleDeclaration=!0):(this.ruleStack.push("[selector]"),this.inStyleDeclaration=!0),s.startRuleBody(),this.actions=Ue,a.consume();continue;case 41:s.nextSelector(),this.actions=at,a.consume();continue;case 15:h.push(_(l.text)),a.consume();continue;case 16:f=parseInt(l.text,16),h.push(new Fd(l.text)),a.consume();continue;case 17:h.push(new It(l.num)),a.consume();continue;case 18:h.push(new ht(l.num)),a.consume();continue;case 19:h.push(new B(l.num,l.text)),a.consume();continue;case 20:h.push(new K(l.text)),a.consume();continue;case 21:h.push(new et(Ie(l.text,this.baseURL))),a.consume();continue;case 57:h.push(new Rd(l.text)),a.consume();continue;case 22:this.valStackReduce(",",l),h.push(","),a.consume();continue;case 23:h.push(Kn),a.consume();continue;case 24:p=l.text.toLowerCase(),p=="-epubx-expr"||p=="env"?(this.actions=Je,this.exprContext=0,h.push("{")):(h.push(p),h.push("("),this.errorBrackets.length>0&&this.errorBrackets.push(11)),a.consume();continue;case 25:this.valStackReduce(")",l),a.consume();continue;case 47:if(a.consume(),l=a.token(),c=a.nthToken(1),l.type==1&&l.text.toLowerCase()=="important"&&(c.type==17||c.type==0||c.type==13)){a.consume(),this.propImportant=!0;continue}this.exprError("E_CSS_SYNTAX",l);continue;case 54:switch(c=a.nthToken(1),c.type){case 4:case 3:case 5:if(!c.precededBySpace){a.consume();continue}}h.push(new Sn("+")),a.consume();continue;case 26:a.consume();case 48:g=this.valStackReduce(";",l),g&&this.propName&&s.property(this.propName,g,this.propImportant),this.actions=i?vs:Ue;continue;case 44:for(a.consume();h.length>0;){let b=h.length;if(g=this.valStackReduce(";",l),!g||h.length===b)break}return e?(this.result=g,!0):(this.propName&&g&&s.property(this.propName,g,this.propImportant),!0);case 31:if(c=a.nthToken(1),c.type==9)a.nthToken(2).type==10&&!a.nthToken(2).precededBySpace?(h.push(l.text,c.text,"("),a.consume()):(h.push(new Qe(s.getScope(),Xa(l.text,c.text))),this.actions=Se),a.consume();else{if(this.exprContext==2||this.exprContext==3)l.text.toLowerCase()=="not"?(a.consume(),h.push(new lu(s.getScope(),!0,c.text))):(l.text.toLowerCase()=="only"&&(a.consume(),l=c),h.push(new lu(s.getScope(),!1,l.text)));else if(this.exprContext===4&&l.text.toLowerCase()==="not"&&h[h.length-1]!==En&&h[h.length-1]!==Nn&&(c.type===10||c.type===6)){h.push(-Eo),a.consume();continue}else h.push(new Qe(s.getScope(),l.text));this.actions=Se}a.consume();continue;case 38:if(this.exprContext===4){h.push(this.readSupportsTest(l)),this.actions=Se;continue}h.push(null,l.text,"("),a.consume();continue;case 32:h.push(new it(s.getScope(),l.num)),a.consume(),this.actions=Se;continue;case 33:p=l.text,p=="%"&&(this.propName&&this.propName.match(/height|^(top|bottom)$/)?p="vh":p="vw"),h.push(new oo(s.getScope(),l.num,p)),a.consume(),this.actions=Se;continue;case 34:h.push(new it(s.getScope(),l.text)),a.consume(),this.actions=Se;continue;case 35:a.consume(),l=a.token(),l.type!=5||l.precededBySpace?this.exprError("E_CSS_SYNTAX",l):(h.push(new Ed(s.getScope(),l.num)),a.consume(),this.actions=Se);continue;case 36:h.push(-l.type),a.consume();continue;case 37:this.actions=Je,this.exprStackReduce(l.type,l),h.push(l.type),a.consume();continue;case 45:l.text.toLowerCase()==="and"&&h[h.length-2]!==Nn&&h[h.length-2]!==-Eo?(this.actions=Je,this.exprStackReduce(En,l),h.push(En),a.consume()):l.text.toLowerCase()==="or"&&h[h.length-2]!==En&&h[h.length-2]!==-Eo?(this.actions=Je,this.exprStackReduce(Nn,l),h.push(Nn),a.consume()):this.exprError("E_CSS_SYNTAX",l);continue;case 39:this.exprStackReduce(l.type,l)&&(this.actions=He),a.consume();continue;case 43:this.exprStackReduce(11,l)&&(this.propName||this.exprContext==3?this.exprError("E_CSS_UNEXPECTED_BRC",l):(this.exprContext==1?s.startWhenRule(h.pop()):s.startMediaRule(h.pop()),this.ruleStack.push("media"),s.startRuleBody(),this.actions=Ue)),a.consume();continue;case 49:if(this.exprStackReduce(11,l))return this.propName||this.exprContext!=3?(this.exprError("E_CSS_UNEXPECTED_SEMICOL",l),this.actions=Ue,a.consume(),!1):(this.importCondition=h.pop(),this.importReady=!0,this.actions=Ue,a.consume(),!1);a.consume();continue;case 40:if(this.exprContext===4){let b=this.readSupportsTest(l);if(b){h.push(b),this.actions=Se;continue}}h.push(l.type),a.consume();continue;case 27:if(this.actions=Ue,a.consume(),s.endRule(),this.inStyleDeclaration=!1,this.ruleStack.length)switch(this.ruleStack.pop(),this.ruleStack[this.ruleStack.length-1]){case"page":case"-epubx-page-master":case"-epubx-partition-group":this.inStyleDeclaration=!0}continue;case 30:switch(p=l.text.toLowerCase(),p){case"import":if(a.consume(),l=a.token(),l.type==2||l.type==8){if(this.importURL=l.text,a.consume(),l=a.token(),l.type==1&&l.text.toLowerCase()=="layer")this.importHasLayer=!0,this.importLayerNames=null,a.consume(),l=a.token();else if(l.type==6&&l.text.toLowerCase()=="layer"){a.consume();let b=this.readLayerName();if(l=a.token(),!b||l.type!=11){s.error("E_CSS_IMPORT_SYNTAX",l),this.actions=Ke;continue}this.importHasLayer=!0,this.importLayerNames=b,a.consume(),l=a.token()}if(l.type==17||l.type==0)return this.importReady=!0,a.consume(),!1;this.propName=null,this.exprContext=3,this.actions=Je,h.push("{");continue}s.error("E_CSS_IMPORT_SYNTAX",l),this.actions=Ke;continue;case"namespace":switch(a.consume(),l=a.token(),l.type){case 1:if(p=l.text,a.consume(),l=a.token(),(l.type==2||l.type==8)&&a.nthToken(1).type==17){this.namespacePrefixToURI[p]=l.text,a.consume(),a.consume();continue}break;case 2:case 8:if(a.nthToken(1).type==17){this.defaultNamespaceURI=l.text,a.consume(),a.consume();continue}break}s.error("E_CSS_NAMESPACE_SYNTAX",l),this.actions=Ke;continue;case"charset":if(a.consume(),l=a.token(),l.type==2&&a.nthToken(1).type==17){p=l.text.toLowerCase(),p!="utf-8"&&p!="utf-16"&&s.error(`E_CSS_UNEXPECTED_CHARSET ${p}`,l),a.consume(),a.consume();continue}s.error("E_CSS_CHARSET_SYNTAX",l),this.actions=Ke;continue;case"font-face":case"-epubx-page-template":case"-epubx-define":case"-epubx-viewport":if(a.nthToken(1).type==12){switch(a.consume(),a.consume(),p){case"font-face":s.startFontFaceRule(),this.inStyleDeclaration=!0;break;case"-epubx-page-template":s.startPageTemplateRule();break;case"-epubx-define":s.startDefineRule(),this.inStyleDeclaration=!0;break;case"-epubx-viewport":s.startViewportRule(),this.inStyleDeclaration=!0;break}this.ruleStack.push(p),s.startRuleBody();continue}break;case"-epubx-region":a.consume(),s.startRegionRule(),this.regionRule=!0,this.actions=at;continue;case"page":a.consume(),s.startPageRule(),this.pageRule=!0,this.actions=Ut;continue;case"-adapt-footnote-area":case"footnote":switch(a.consume(),l=a.token(),l.type){case 12:a.consume(),s.startFootnoteRule(null),this.ruleStack.push(p),s.startRuleBody(),this.inStyleDeclaration=!0;continue;case 50:if(a.consume(),l=a.token(),l.type==1&&a.nthToken(1).type==12){let b=l.text;a.consume(),a.consume(),s.startFootnoteRule(b),this.ruleStack.push(p==="footnote"?"footnote":"-adapt-footnote-area"),s.startRuleBody(),this.inStyleDeclaration=!0;continue}break}break;case"top-left-corner":case"top-left":case"top-center":case"top-right":case"top-right-corner":case"right-top":case"right-middle":case"right-bottom":case"bottom-right-corner":case"bottom-right":case"bottom-center":case"bottom-left":case"bottom-left-corner":case"left-bottom":case"left-middle":case"left-top":if(a.consume(),l=a.token(),l.type==12){a.consume(),s.startPageMarginBoxRule(p),this.ruleStack.push(p),s.startRuleBody(),this.inStyleDeclaration=!0;continue}break;case"-epubx-when":a.consume(),this.propName=null,this.exprContext=1,this.actions=Je,h.push("{");continue;case"media":a.consume(),this.propName=null,this.exprContext=2,this.actions=Je,h.push("{");continue;case"supports":a.consume(),this.propName=null,this.exprContext=4,this.actions=Je,h.push("{");continue;case"layer":{if(a.consume(),l=a.token(),l.type==12){a.consume(),s.startLayerRule(null),this.ruleStack.push(p),s.startRuleBody();continue}let b=[];for(;;){let x=this.readLayerName();if(!x){b.length=0;break}if(b.push(x),a.token().type!=16)break;a.consume()}if(b.length>0){if(l=a.token(),l.type==17){a.consume(),s.layerStatementRule(b);continue}if(l.type==12&&b.length==1){a.consume(),s.startLayerRule(b[0]),this.ruleStack.push(p),s.startRuleBody();continue}}break}case"-epubx-flow":if(a.nthToken(1).type==1&&a.nthToken(2).type==12){s.startFlowRule(a.nthToken(1).text),a.consume(),a.consume(),a.consume(),this.ruleStack.push(p),s.startRuleBody(),this.inStyleDeclaration=!0;continue}break;case"counter-style":if(a.nthToken(1).type==1&&a.nthToken(2).type==12){s.startCounterStyleRule(a.nthToken(1).text),a.consume(),a.consume(),a.consume(),this.ruleStack.push(p),s.startRuleBody(),this.inStyleDeclaration=!0;continue}break;case"-epubx-page-master":case"-epubx-partition":case"-epubx-partition-group":{a.consume(),l=a.token();let b=null,x=null,C=[];for(l.type==1&&(b=l.text,a.consume(),l=a.token()),l.type==18&&a.nthToken(1).type==1&&(x=a.nthToken(1).text,a.consume(),a.consume(),l=a.token());l.type==6&&l.text.toLowerCase()=="class"&&a.nthToken(1).type==1&&a.nthToken(2).type==11;)C.push(a.nthToken(1).text),a.consume(),a.consume(),a.consume(),l=a.token();if(l.type==12){switch(a.consume(),p){case"-epubx-page-master":s.startPageMasterRule(b,x,C);break;case"-epubx-partition":s.startPartitionRule(b,x,C);break;case"-epubx-partition-group":s.startPartitionGroupRule(b,x,C);break}this.ruleStack.push(p),s.startRuleBody(),this.inStyleDeclaration=!0;continue}break}case"":s.error(`E_CSS_UNEXPECTED_AT${p}`,l),this.actions=je;continue;default:s.error(`E_CSS_AT_UNKNOWN ${p}`,l),this.actions=Ke;continue}s.error(`E_CSS_AT_SYNTAX ${p}`,l),this.actions=Ke;continue;case 50:this.errorBrackets.push(l.type+1),a.consume();continue;case 52:if(this.errorBrackets.length==0){this.actions=Ue;continue}case 51:if(r&&this.errorBrackets.length==0&&l.type==11)return a.consume(),s.endFuncWithSelector(),!0;this.errorBrackets.length>0&&this.errorBrackets[this.errorBrackets.length-1]==l.type&&this.errorBrackets.pop(),this.errorBrackets.length==0&&l.type==13&&(this.actions=Ue),a.consume();continue;case 53:if(r&&this.errorBrackets.length==0&&l.type==16){s.nextSelector(),this.actions=at,v=l.position+1,a.consume();continue}this.errorBrackets.length==0&&(this.actions=Ue),a.consume();continue;case 200:return!0;default:if(n)return this.exprStackReduce(11,l)?(this.result=h.pop(),!0):!1;if(r){if(this.actions===je)switch(l.type){case 16:this.errorBrackets.length==0&&(s.nextSelector(),v=l.position+1,this.actions=at),a.consume();continue;case 11:if(this.errorBrackets.length==0)return s.endFuncWithSelector(),a.consume(),!0;this.errorBrackets.length>0&&this.errorBrackets[this.errorBrackets.length-1]==l.type&&this.errorBrackets.pop(),a.consume();continue;case 12:case 14:case 10:this.errorBrackets.push(l.type+1),a.consume();continue;case 6:this.errorBrackets.push(11),a.consume();continue;case 13:case 15:this.errorBrackets.length>0&&this.errorBrackets[this.errorBrackets.length-1]==l.type&&this.errorBrackets.pop(),a.consume();continue;default:a.consume();continue}switch(l.type){case 16:case 11:if(this.actions===at)s.error("E_CSS_SYNTAX",l);else{let b=a.input.substring(v,l.position);s.pushSelectorText(b),v=l.position+1}if(l.type===16){s.nextSelector(),this.actions=at,a.consume();continue}else return s.endFuncWithSelector(),a.consume(),!0;case 37:case 23:case 35:if(o){this.actions=Ce;continue}break;case 12:case 14:case 10:this.errorBrackets.push(l.type+1);break}s.error("E_CSS_SYNTAX",l),a.consume(),this.actions=je;continue}if(this.actions!==Ke&&this.actions!==je&&this.actions!==dt){if(l.type==54)s.error("E_CSS_SYNTAX",l);else if(this.actions===He){switch(l.type){case 10:case 12:case 14:this.errorBrackets.push(l.type+1);break}h.push(new Sn(l.toString())),a.consume();continue}else if(l.type===12&&this.actions==Je&&h.length>0){s.startMediaRule(h.pop()),this.ruleStack.push("media"),s.startRuleBody(),this.actions=Ue,a.consume();continue}else{if(l.type===17&&this.actions==Je)return this.actions=Ue,a.consume(),!1;s.error("E_CSS_SYNTAX",l)}this.isInsidePropertyOnlyRule()?this.actions=dt:this.actions=je;continue}a.consume();continue}}return!1}},bp=class extends ta{constructor(t){super(t)}error(t,e){Y.warn(t,e.toString())}};function nw(t,e,i,n,r){let o=i??"",s=tv(t.input);return s!==t.input?Ru(new xt(s,e),e,o,n,r):Ru(t,e,o,n,r)}function Ru(t,e,i,n,r){let o=V("parseStylesheet"),s=new uo(Ue,t,e,i),a=null;return r&&(a=Cp(new xt(r,e),e,i)),a=s.makeCondition(n,a&&a.toExpr()),a&&(e.startMediaRule(a),e.startRuleBody()),o.loop(()=>{for(;!s.runParser(100,!1,!1,!1,!1);){if(s.importReady){let l=Ie(s.importURL,i);s.importHasLayer&&(e.startLayerRule(s.importLayerNames),e.startRuleBody()),s.importCondition&&(e.startMediaRule(s.importCondition),e.startRuleBody());let c=V("parseStylesheet.import");return Sp(l,e,null,null).then(()=>{s.importCondition&&e.endRule(),s.importHasLayer&&e.endRule(),s.importReady=!1,s.importURL=null,s.importCondition=null,s.importHasLayer=!1,s.importLayerNames=null,c.finish(!0)}),c.result()}let h=o.timeSlice();if(h.isPending)return h}return F(!1)}).then(()=>{a&&e.endRule(),o.finish(!0)}),o.result()}function xp(t,e,i,n,r){return hn("parseStylesheetFromText",o=>{let s=new xt(t,e);nw(s,e,i,n,r).thenFinish(o)},(o,s)=>{Y.warn(s,`Failed to parse stylesheet text: ${t}`),o.finish(!1)})}function Sp(t,e,i,n){return hn("parseStylesheetFromURL",r=>{ea(t).then(o=>{o.responseText?xp(o.responseText,e,t,i,n).then(s=>{s||Y.warn(`Failed to parse stylesheet from ${t}`),r.finish(!0)}):r.finish(!0)})},(r,o)=>{Y.warn(o,"Exception while fetching and parsing:",t),r.finish(!0)})}function Mi(t,e,i){let n=new uo(He,e,new bp(t),i);return n.runParser(Number.POSITIVE_INFINITY,!0,!1,!1,!1),n.result}function rw(t,e,i){new uo(vs,t,e,i).runParser(Number.POSITIVE_INFINITY,!1,!0,!1,!1)}function Cp(t,e,i){let n=new uo(Je,t,e,i);return n.runParser(Number.POSITIVE_INFINITY,!1,!1,!0,!1),n.result}var ow={"z-index":!0,"column-count":!0,"flow-linger":!0,opacity:!0,page:!0,"flow-priority":!0,utilization:!0};function sw(t){return!!(t&&ow[t])}function aw(t,e,i){if(e instanceof be&&e.str==="viv-leader")return new j(e);if(i==="content"&&e instanceof be)return new j(e);let n=e.evaluate(t);switch(typeof n){case"number":return sw(i)?n==Math.round(n)?new ht(n):new It(n):new B(n,"px");case"string":return n?i==="content"?new K(n):Mi(e.scope,new xt(n,null),""):Ae;case"boolean":return n?w._true:w._false;case"undefined":return Ae}throw new Error("E_UNEXPECTED")}var lw="data-vivliostyle-flow-root";function hw(t){return t.getAttribute(lw)==="true"}function Lu(t){let e=t?.toString()||"block",i;switch(e){case"inline-flex":i="flex";break;case"inline-grid":i="grid";break;case"inline-table":i="table";break;case"initial":case"unset":case"inline":case"table-row-group":case"table-column":case"table-column-group":case"table-header-group":case"table-footer-group":case"table-row":case"table-cell":case"table-caption":case"inline-block":i="block";break;default:i=e}return _(i)}function Ur(t){return t===w.absolute||t===w.fixed}function Nr(t){return t instanceof Vt&&t.name==="running"}function kp(t,e,i,n){return t===w.none||(Ur(e)?(i=w.none,t=Lu(t)):(i&&i!==w.none&&!Z(i)||n)&&(t=Lu(t))),{display:t,position:e,float:i}}function uw(t,e,i,n){return kp(t,e,i,n).display===w.block}function ia(t){return t instanceof he||t instanceof ee||typeof t=="string"}function Wt(t){if(!ia(t))return!1;let e=t.toString();switch(e){case"inline":case"inline-block":case"inline-flex":case"inline-grid":case"ruby":case"inline-table":return!0;default:return e.includes("inline")}}function mr(t){return ia(t)?t.toString().includes("list-item"):!1}function cw(t){if(!ia(t))return!1;switch(t.toString()){case"block":case"flex":case"grid":case"table":case"list-item":case"flow-root":return!0;default:return!1}}function Pp(t){if(!ia(t))return!1;switch(t.toString()){case"ruby-base":case"ruby-text":case"ruby-base-container":case"ruby-text-container":return!0;default:return!1}}function dw(t,e,i,n,r,o,s){return r=r||o||w.horizontal_tb,!!s||!!i&&i!==w.none&&!Z(i)||Ur(e)||t===w.inline_block||t===w.table_cell||t===w.table_caption||t==w.flex||t==w.grid||t==w.flow_root||(t===w.block||t===w.list_item)&&!!n&&n!==w.visible&&n!==w.clip&&!Z(n)||!!o&&r!==o}function pw(t){return t===w.relative||t===w.absolute||t===w.fixed}function Fn(t){var e,i;return((e=t?.style)==null?void 0:e["box-decoration-break"])==="clone"||((i=t?.style)==null?void 0:i["-webkit-box-decoration-break"])==="clone"}function Ep(t){let e=t.getAttribute("data-viv-box-break");return e?e.split(" "):[]}function Np(t,e){t.setAttribute("data-viv-box-break",e.join(" "))}function Ct(t,e){let i=Ep(t);i.includes(e)||(i.push(e),Np(t,i))}function fw(t){let e=t.getAttribute("data-viv-margin-discard");return e?e.split(" "):[]}function gw(t,e){t.setAttribute("data-viv-margin-discard",e.join(" "))}function Na(t,e){let i=fw(t);i.includes(e)||(i.push(e),gw(t,i))}function mw(t){let e=t.name,i=t.value;switch(e){case"page-break-before":case"page-break-after":case"page-break-inside":return{name:e.replace(/^page-/,""),value:i===w.always?w.page:i,important:t.important};default:return t}}var ol={page:!0,left:!0,right:!0,recto:!0,verso:!0,column:!0,region:!0};function Ye(t){return t!=null&&!!ol[t]}var yw={left:!0,right:!0,recto:!0,verso:!0};function un(t){return t!=null&&!!yw[t]}function Ou(t){return Ye(t)&&t!=="column"&&t!=="region"}var vw={avoid:!0,"avoid-page":!0,"avoid-column":!0,"avoid-region":!0};function ws(t){return t!=null&&!!vw[t]}function nt(t,e){if(t)if(e){if(un(e))return e;if(un(t))return t;{let i=Ye(t),n=Ye(e);if(i&&n)switch(e){case"column":return t;case"region":return t==="column"?e:t;default:return e}else return n?e:i?t:ws(e)?e:ws(t)?t:e}}else return t;else return e}function Bu(t){return t!=null&&Ye(t)?t:"auto"}Ft("SIMPLE_PROPERTY",mw);var Tr=_m(zm());function ww(t,e){return(0,Tr.default)(t,e,0)}function Mu(t){return t.reduce((e,i)=>i[0]===Tr.default.DELETE?e:e+i[1],"")}function bw(t,e){return Tp(t,e,1)}function xw(t,e){return Tp(t,e,-1)}function Tp(t,e,i){let n=0,r=0;return t.some(o=>{for(let s=0;s<o[1].length;s++){switch(o[0]*i){case Tr.default.INSERT:n++;break;case Tr.default.DELETE:n--,r++;break;case Tr.default.EQUAL:r++;break}if(r>e)return!0}return!1}),Math.max(Math.min(e,r-1)+n,0)}var sl;(t=>{function e(i){return i.formattingContextType==="Block"}t.isInstanceOfBlockFormattingContext=e})(sl||(sl={}));var Dn;(t=>{let e;(i=>(i.INLINE="inline",i.COLUMN="column",i.REGION="region",i.PAGE="page"))(e=t.FloatReference||(t.FloatReference={}))})(Dn||(Dn={}));var bs;(t=>{function e(i){return i&&i.flagmentLayoutConstraintType=="AfterIfContinue"}t.isInstanceOfAfterIfContinuesLayoutConstraint=e})(bs||(bs={}));var rn;(t=>{function e(n){return n.formattingContextType==="RepetitiveElementsOwner"||_i.isInstanceOfTableFormattingContext(n)}t.isInstanceOfRepetitiveElementsOwnerFormattingContext=e;function i(n){return n?n.flagmentLayoutConstraintType==="RepetitiveElementsOwner"||_i.isInstanceOfTableRowLayoutConstraint(n):!1}t.isInstanceOfRepetitiveElementsOwnerLayoutConstraint=i})(rn||(rn={}));var _i;(t=>{function e(n){return n.formattingContextType==="Table"}t.isInstanceOfTableFormattingContext=e;function i(n){return n&&n.flagmentLayoutConstraintType==="TableRow"}t.isInstanceOfTableRowLayoutConstraint=i})(_i||(_i={}));var wi;(t=>{let e;(n=>(n[n.IGNORE=0]="IGNORE",n[n.NEWLINE=1]="NEWLINE",n[n.PRESERVE=2]="PRESERVE"))(e=t.Whitespace||(t.Whitespace={}));let i;(n=>(n[n.NONE=0]="NONE",n[n.CONTENT=1]="CONTENT",n[n.ROOTLESS=2]="ROOTLESS",n[n.ROOTED=3]="ROOTED"))(i=t.ShadowType||(t.ShadowType={}))})(wi||(wi={}));var Sw={transform:!0,"transform-origin":!0},Cw={top:!0,bottom:!0,left:!0,right:!0},hh=class{constructor(t,e,i){u(this,"target",t),u(this,"name",e),u(this,"value",i)}},kw={show:function(t){t.style.visibility="visible"},hide:function(t){t.style.visibility="hidden"},play:function(t){t.currentTime=0,t.play()},pause:function(t){t.pause()},resume:function(t){t.play()},mute:function(t){t.muted=!0},unmute:function(t){t.muted=!1}};function Pw(t,e){let i=kw[e];return i?()=>{for(let n=0;n<t.length;n++)try{i(t[n])}catch{}}:null}var al=class yr extends Jl{constructor(e,i){super(),u(this,"container",e),u(this,"bleedBox",i),u(this,"pageAreaElement",null),u(this,"delayedItems",[]),u(this,"hrefHandler"),u(this,"elementsById",{}),u(this,"dimensions",{width:0,height:0}),u(this,"isFirstPage",!1),u(this,"isLastPage",!1),u(this,"isBlankPage",!1),u(this,"isAutoPageWidth",!0),u(this,"isAutoPageHeight",!0),u(this,"spineIndex",0),u(this,"position",null),u(this,"offset",-1),u(this,"side",null),u(this,"fetchers",[]),u(this,"marginBoxes",{top:{},bottom:{},left:{},right:{}}),u(this,"pageFloatLayoutContext",null),u(this,"pageType",null),this.hrefHandler=n=>{let r=n.currentTarget,o=r.getAttribute("href")||r.getAttributeNS("http://www.w3.org/1999/xlink","href");if(o){let s={type:"hyperlink",target:null,currentTarget:null,anchorElement:r,href:o,preventDefault(){n.preventDefault()}};this.dispatchEvent(s)}}}setAutoPageWidth(e){this.isAutoPageWidth=e,e?this.container.setAttribute(yr.AUTO_PAGE_WIDTH_ATTRIBUTE,"true"):this.container.removeAttribute(yr.AUTO_PAGE_WIDTH_ATTRIBUTE)}setAutoPageHeight(e){this.isAutoPageHeight=e,e?this.container.setAttribute(yr.AUTO_PAGE_HEIGHT_ATTRIBUTE,"true"):this.container.removeAttribute(yr.AUTO_PAGE_HEIGHT_ATTRIBUTE)}registerElementWithId(e,i){let n=this.elementsById[i];n?n.push(e):this.elementsById[i]=[e]}finish(e,i){Object.keys(this.elementsById).forEach(o=>{let s=this.elementsById[o];for(let a=0;a<s.length;)this.container.contains(s[a])?a++:s.splice(a,1);s.length===0&&delete this.elementsById[o]});let n=this.delayedItems;for(let o=0;o<n.length;o++){let s=n[o];s.target===this.container&&s.name==="transform"&&!this.isAutoPageWidth&&!this.isAutoPageHeight||R(s.target,s.name,s.value.toString())}let r=i.getElementClientRect(this.container);this.dimensions.width=r.width,this.dimensions.height=r.height;for(let o=0;o<e.length;o++){let s=e[o],a=this.elementsById[s.ref],h=this.elementsById[s.observer];if(a&&h){let l=Pw(a,s.action);if(l)for(let c=0;c<h.length;c++)h[c].addEventListener(s.event,l,!1)}}}};u(al,"AUTO_PAGE_WIDTH_ATTRIBUTE","data-vivliostyle-auto-page-width"),u(al,"AUTO_PAGE_HEIGHT_ATTRIBUTE","data-vivliostyle-auto-page-height");var Ip=al,bt=wi.Whitespace;function Ap(t){switch(t){case"normal":case"nowrap":return bt.IGNORE;case"pre-line":return bt.NEWLINE;case"pre":case"pre-wrap":case"break-spaces":return bt.PRESERVE;default:return null}}function Ee(t,e){return t?t.nodeType==1?!1:Fp(t.textContent,e):!0}function Fp(t,e){switch(e){case bt.PRESERVE:return t.length==0;case bt.NEWLINE:return!!t.match(/^[ \t]*$/);case bt.IGNORE:default:return!!t.match(/^[ \t\r\n\f]*$/)}}var Ew=class{constructor(t,e,i){u(this,"flowName",t),u(this,"parentFlowName",e),u(this,"formattingContext",i),u(this,"forcedBreakOffsets",[])}},Nw=class{constructor(t,e,i,n,r,o,s,a,h){u(this,"flowName",t),u(this,"element",e),u(this,"startOffset",i),u(this,"priority",n),u(this,"linger",r),u(this,"exclusive",o),u(this,"repeated",s),u(this,"last",a),u(this,"breakBefore",h),u(this,"startPage",-1)}isBetter(t){return this.exclusive?!t.exclusive||this.priority>t.priority?!0:this.last:!1}};function Tw(t,e){return t.top-e.top}function Iw(t,e){return e.right-t.right}function Rp(t,e){var i,n;return t===e?!0:!t||!e?!1:(t.node===e.node||!!t.shadowContext&&!!e.shadowContext&&t.shadowType===wi.ShadowType.ROOTLESS&&e.shadowType===wi.ShadowType.ROOTLESS&&((i=t.node)==null?void 0:i.outerHTML)===((n=e.node)==null?void 0:n.outerHTML))&&t.shadowType===e.shadowType&&ll(t.shadowContext,e.shadowContext)&&ll(t.nodeShadow,e.nodeShadow)&&Rp(t.shadowSibling,e.shadowSibling)}function Di(t,e){if(t===e)return!0;if(!t||!e||t.offsetInNode!==e.offsetInNode||t.after!==e.after||t.steps.length!==e.steps.length)return!1;for(let i=0;i<t.steps.length;i++)if(!Rp(t.steps[i],e.steps[i]))return!1;return!0}function Aw(t){return{steps:[{node:t,shadowType:st.NONE,shadowContext:null,nodeShadow:null,shadowSibling:null,formattingContext:null,fragmentIndex:0}],offsetInNode:0,after:!1,preprocessedTextContent:null}}function xs(t,e){return{steps:[{node:t.sourceNode,shadowType:st.NONE,shadowContext:t.shadowContext,nodeShadow:null,shadowSibling:null,formattingContext:t.formattingContext,fragmentIndex:e??t.fragmentIndex}],offsetInNode:0,after:!1,preprocessedTextContent:t.preprocessedTextContent}}function Ss(t,e){var i;let n=e,r=new en(t.node,n,0,(i=t.formattingContext)!=null?i:n.formattingContext);return r.blockContainer=Cs(n),Lp(r,t),r.shadowSibling=t.shadowSibling?Ss(t.shadowSibling,e.copy()):null,r}function Fw(t,e){var i;let n=new en(t.node,null,0,(i=t.formattingContext)!=null?i:e);return Lp(n,t),n.shadowSibling=t.shadowSibling,n}function Lp(t,e){t.shadowType=e.shadowType,t.shadowContext=e.shadowContext,t.nodeShadow=e.nodeShadow,t.fragmentIndex=e.fragmentIndex+1}function Rw(t){return t.steps[t.steps.length-1]}var st=wi.ShadowType,Zo=class{constructor(t,e,i,n,r,o,s){u(this,"owner",t),u(this,"root",e),u(this,"xmldoc",i),u(this,"parentShadow",n),u(this,"type",o),u(this,"styler",s),u(this,"subShadow",null),r&&(r.subShadow=this)}equals(t){return t?this.owner===t.owner&&this.xmldoc===t.xmldoc&&this.type===t.type&&ll(this.parentShadow,t.parentShadow):!1}};function ll(t,e){return t===e||!!t&&!!e&&t.equals(e)}var Lw=class{constructor(t,e){u(this,"outer",t),u(this,"count",e)}},en=class Ko{constructor(e,i,n,r){u(this,"sourceNode",e),u(this,"parent",i),u(this,"boxOffset",n),u(this,"formattingContext",r),u(this,"offsetInNode",0),u(this,"after",!1),u(this,"shadowType"),u(this,"shadowContext"),u(this,"nodeShadow",null),u(this,"shadowSibling",null),u(this,"shared",!1),u(this,"inline",!0),u(this,"overflow",!1),u(this,"breakPenalty"),u(this,"display",null),u(this,"floatReference"),u(this,"floatSide",null),u(this,"clearSide",null),u(this,"floatMinWrapBlock",null),u(this,"columnSpan",null),u(this,"captionSide","top"),u(this,"inlineBorderSpacing",0),u(this,"blockBorderSpacing",0),u(this,"flexContainer",!1),u(this,"whitespace"),u(this,"hyphenateCharacter"),u(this,"breakWord"),u(this,"establishesBFC",!1),u(this,"containingBlockForAbsolute",!1),u(this,"breakBefore",null),u(this,"breakAfter",null),u(this,"viewNode",null),u(this,"clearSpacer",null),u(this,"inheritedProps"),u(this,"vertical"),u(this,"direction"),u(this,"firstPseudo"),u(this,"lang",null),u(this,"preprocessedTextContent",null),u(this,"repeatOnBreak",null),u(this,"pluginProps",{}),u(this,"fragmentIndex",1),u(this,"afterIfContinues",null),u(this,"footnotePolicy",null),u(this,"pageType"),u(this,"blockContainer",null),this.shadowType=st.NONE,this.shadowContext=i?i.shadowContext:null,this.breakPenalty=i?i.breakPenalty:0,this.floatReference=Dn.FloatReference.INLINE,this.whitespace=i?i.whitespace:bt.IGNORE,this.hyphenateCharacter=i?i.hyphenateCharacter:null,this.breakWord=i?i.breakWord:!1,this.inheritedProps=i?i.inheritedProps:{},this.vertical=i?i.vertical:!1,this.direction=i?i.direction:"ltr",this.firstPseudo=i?i.firstPseudo:null,this.pageType=i?i.pageType:null}static childOf(e,i,n){let r=new Ko(e,i,n,i.formattingContext);return r.blockContainer=Cs(i),r}static siblingOf(e,i,n){let r=i.parent,o=new Ko(e,r,n,(r??i).formattingContext);return o.blockContainer=i.blockContainer,o}resetView(){this.inline=!0,this.breakPenalty=this.parent?this.parent.breakPenalty:0,this.viewNode=null,this.clearSpacer=null,this.offsetInNode=0,this.after=!1,this.display=null,this.floatReference=Dn.FloatReference.INLINE,this.floatSide=null,this.clearSide=null,this.floatMinWrapBlock=null,this.columnSpan=null,this.flexContainer=!1,this.whitespace=this.parent?this.parent.whitespace:bt.IGNORE,this.hyphenateCharacter=this.parent?this.parent.hyphenateCharacter:null,this.breakWord=this.parent?this.parent.breakWord:!1,this.breakBefore=null,this.breakAfter=null,this.nodeShadow=null,this.establishesBFC=!1,this.containingBlockForAbsolute=!1,this.vertical=this.parent?this.parent.vertical:!1,this.nodeShadow=null,this.preprocessedTextContent=null,this.parent&&(this.formattingContext=this.parent.formattingContext),this.repeatOnBreak=null,this.pluginProps={},this.fragmentIndex=1,this.afterIfContinues=null,this.footnotePolicy=null,this.pageType=this.parent?this.parent.pageType:null}cloneItem(){let e=new Ko(this.sourceNode,this.parent,this.boxOffset,this.formattingContext);return e.offsetInNode=this.offsetInNode,e.after=this.after,e.nodeShadow=this.nodeShadow,e.shadowType=this.shadowType,e.shadowContext=this.shadowContext,e.shadowSibling=this.shadowSibling,e.inline=this.inline,e.breakPenalty=this.breakPenalty,e.display=this.display,e.floatReference=this.floatReference,e.floatSide=this.floatSide,e.clearSide=this.clearSide,e.floatMinWrapBlock=this.floatMinWrapBlock,e.columnSpan=this.columnSpan,e.captionSide=this.captionSide,e.inlineBorderSpacing=this.inlineBorderSpacing,e.blockBorderSpacing=this.blockBorderSpacing,e.establishesBFC=this.establishesBFC,e.containingBlockForAbsolute=this.containingBlockForAbsolute,e.flexContainer=this.flexContainer,e.whitespace=this.whitespace,e.hyphenateCharacter=this.hyphenateCharacter,e.breakWord=this.breakWord,e.breakBefore=this.breakBefore,e.breakAfter=this.breakAfter,e.viewNode=this.viewNode,e.clearSpacer=this.clearSpacer,e.firstPseudo=this.firstPseudo,e.vertical=this.vertical,e.overflow=this.overflow,e.preprocessedTextContent=this.preprocessedTextContent,e.repeatOnBreak=this.repeatOnBreak,e.pluginProps=Object.create(this.pluginProps),e.fragmentIndex=this.fragmentIndex,e.afterIfContinues=this.afterIfContinues,e.footnotePolicy=this.footnotePolicy,e.pageType=this.pageType,e.blockContainer=this.blockContainer,e}modify(){return this.shared?this.cloneItem():this}copy(){let e=this;do{if(e.shared)break;e.shared=!0,e=e.parent}while(e);return this}clone(){let e=this.cloneItem(),i=[e],n=e,r;for(;(r=n.parent)!=null;)r=r.cloneItem(),n.parent=r,n=r,i.push(r);for(let o=i.length-2;o>=0;o--)i[o].blockContainer=Cs(i[o+1]);return e}toNodePositionStep(){var e;return{node:this.sourceNode,shadowType:this.shadowType,shadowContext:this.shadowContext,nodeShadow:this.nodeShadow,shadowSibling:this.shadowSibling?this.shadowSibling.toNodePositionStep():null,formattingContext:this.formattingContext,fragmentIndex:((e=this.viewNode)==null?void 0:e.parentNode)===null?0:this.fragmentIndex}}toNodePosition(){var e,i,n;let r=this.shadowType===wi.ShadowType.ROOTLESS&&(this.floatReference!==Dn.FloatReference.INLINE||this.floatSide==="footnote")&&(n=(i=(e=this.shadowContext)==null?void 0:e.styler)==null?void 0:i.style)!=null&&n._pseudos?this:null,o=[],s=_u(r?r.parent:this);for(;Ow(s);)(!s.firstPseudo||s.parent.firstPseudo===s.firstPseudo)&&o.push(s.toNodePositionStep()),s=_u(s.parent);let a=this.preprocessedTextContent?xw(this.preprocessedTextContent,this.offsetInNode):this.offsetInNode;return{steps:[...o,Bw(s)],offsetInNode:a,after:this.after,preprocessedTextContent:this.preprocessedTextContent}}isInsideBFC(){let e=this.parent;for(;e;){if(e.establishesBFC)return!0;e=e.parent}return!1}getContainingBlockForAbsolute(){let e=this.parent;for(;e;){if(e.containingBlockForAbsolute)return Lt(e);e=e.parent}return null}belongsTo(e){return this.formattingContext===e&&!!this.parent&&this.parent.formattingContext===e}};function Op(t){return t.parent!==null?t:null}function _u(t){return t.parent,t}function Ow(t){return t.parent!==null}function Bw(t){return{...t.toNodePositionStep(),shadowSibling:t.shadowSibling}}function uh(t){var e;return t.parent!==null&&((e=t.viewNode)==null?void 0:e.nodeType)===3?t:null}function Lt(t){return t.viewNode!==null&&t.viewNode.nodeType===1?t:null}function Mw(t){var e;return t.floatSide!==null&&((e=t.viewNode)==null?void 0:e.nodeType)===1?t:null}function _w(t){var e;return t.clearSide!==null&&((e=t.viewNode)==null?void 0:e.nodeType)===1?t:null}function Dw(t){var e;return t.afterIfContinues!==null&&((e=t.viewNode)==null?void 0:e.nodeType)===1?t:null}function Yi(t){var e;return(e=Lt(t))!=null?e:uh(t)}function Cs(t){let e=Lt(t);return e&&!(t.inline&&t.blockContainer)?e:t.blockContainer}var zi=class Bp{constructor(e){u(this,"primary",e),u(this,"floats",null)}clone(){let e=new Bp(this.primary);if(this.floats){e.floats=[];for(let i=0;i<this.floats.length;++i)e.floats[i]=this.floats[i]}return e}isSamePosition(e){if(!e)return!1;if(this===e)return!0;if(!Di(this.primary,e.primary))return!1;if(this.floats){if(!e.floats||this.floats.length!==e.floats.length)return!1;for(let i=0;i<this.floats.length;i++)if(!Di(this.floats[i],e.floats[i]))return!1}else if(e.floats)return!1;return!0}},zw=class Mp{constructor(e,i){u(this,"chunkPosition",e),u(this,"flowChunk",i)}clone(){return new Mp(this.chunkPosition.clone(),this.flowChunk)}isSamePosition(e){return!!e&&(this===e||this.chunkPosition.isSamePosition(e.chunkPosition))}},Vw=class _p{constructor(){u(this,"positions",[]),u(this,"startBreakType",null),u(this,"breakAfter",null)}clone(){let e=new _p,i=this.positions,n=e.positions;for(let r=0;r<i.length;r++)n[r]=i[r].clone();return e.startBreakType=this.startBreakType,e.breakAfter=this.breakAfter,e}isSamePosition(e){if(this===e)return!0;if(!e||this.positions.length!==e.positions.length)return!1;for(let i=0;i<this.positions.length;i++)if(!this.positions[i].isSamePosition(e.positions[i]))return!1;return!0}hasContent(e){return this.positions.length>0&&this.positions[0].flowChunk.startOffset<=e}},$w=class Dp{constructor(){u(this,"page",0),u(this,"flows",{}),u(this,"flowPositions",{}),u(this,"isBlankPage",!1),u(this,"highestSeenOffset",0),u(this,"highestSeenNode",null),u(this,"lookupPositionOffset",null)}clone(){let e=new Dp;e.page=this.page,e.isBlankPage=this.isBlankPage,e.highestSeenNode=this.highestSeenNode,e.highestSeenOffset=this.highestSeenOffset,e.lookupPositionOffset=this.lookupPositionOffset,e.flows=this.flows;for(let i in this.flowPositions)e.flowPositions[i]=this.flowPositions[i].clone();return e}isSamePosition(e){if(this===e)return!0;if(!e||this.page!==e.page)return!1;let i=Object.keys(this.flowPositions),n=Object.keys(e.flowPositions);if(i.length!==n.length)return!1;for(let r of i)if(!this.flowPositions[r].isSamePosition(e.flowPositions[r]))return!1;return!0}hasContent(e,i){let n=this.flowPositions[e];return n?n.hasContent(i):!1}startSideOfFlow(e){var i;let n=(i=this.flowPositions[e])==null?void 0:i.startBreakType;return n&&un(n)?n:"any"}firstFlowChunkOfFlow(e){let i=this.flowPositions[e];if(!i)return null;let n=i.positions[0];return n?n.flowChunk:null}};function zp(t,e){e.left=t.left,e.top=t.top,e.marginLeft=t.marginLeft,e.marginRight=t.marginRight,e.marginTop=t.marginTop,e.marginBottom=t.marginBottom,e.borderLeft=t.borderLeft,e.borderRight=t.borderRight,e.borderTop=t.borderTop,e.borderBottom=t.borderBottom,e.paddingLeft=t.paddingLeft,e.paddingRight=t.paddingRight,e.paddingTop=t.paddingTop,e.paddingBottom=t.paddingBottom,e.width=t.width,e.height=t.height,e.originX=t.originX,e.originY=t.originY,e.snapWidth=t.snapWidth,e.snapHeight=t.snapHeight,e.vertical=t.vertical,e.rtl=t.rtl,e.borderBoxSizing=t.borderBoxSizing}var Vp=class{constructor(t){u(this,"element",t),u(this,"left",0),u(this,"top",0),u(this,"marginLeft",0),u(this,"marginRight",0),u(this,"marginTop",0),u(this,"marginBottom",0),u(this,"borderLeft",0),u(this,"borderRight",0),u(this,"borderTop",0),u(this,"borderBottom",0),u(this,"paddingLeft",0),u(this,"paddingRight",0),u(this,"paddingTop",0),u(this,"paddingBottom",0),u(this,"width",0),u(this,"height",0),u(this,"originX",0),u(this,"originY",0),u(this,"exclusions",null),u(this,"innerShape",null),u(this,"computedBlockSize",0),u(this,"snapWidth",0),u(this,"snapHeight",0),u(this,"snapOffsetX",0),u(this,"snapOffsetY",0),u(this,"vertical",!1),u(this,"rtl",!1),u(this,"borderBoxSizing",!1)}getInsetTop(){return this.marginTop+(this.borderBoxSizing?0:this.borderTop+this.paddingTop)}getInsetBottom(){return this.marginBottom+(this.borderBoxSizing?0:this.borderBottom+this.paddingBottom)}getInsetLeft(){return this.marginLeft+(this.borderBoxSizing?0:this.borderLeft+this.paddingLeft)}getInsetRight(){return this.marginRight+(this.borderBoxSizing?0:this.borderRight+this.paddingRight)}getInsetBefore(){return this.vertical?this.getInsetRight():this.getInsetTop()}getInsetAfter(){return this.vertical?this.getInsetLeft():this.getInsetBottom()}getInsetStart(){return this.vertical?this.getInsetTop():this.getInsetLeft()}getInsetEnd(){return this.vertical?this.getInsetBottom():this.getInsetRight()}getBeforeEdge(t){return this.vertical?t.right:t.top}getAfterEdge(t){return this.vertical?t.left:t.bottom}getStartEdge(t){return this.vertical?this.rtl?t.bottom:t.top:this.rtl?t.right:t.left}getEndEdge(t){return this.vertical?this.rtl?t.top:t.bottom:this.rtl?t.left:t.right}getInlineSize(t){return this.vertical?t.bottom-t.top:t.right-t.left}getBoxSize(t){return this.vertical?t.right-t.left:t.bottom-t.top}getBoxDir(){return this.vertical?-1:1}getInlineDir(){return this.rtl?-1:1}copyFrom(t){this.element=t.element,zp(t,this),this.innerShape=t.innerShape,this.exclusions=t.exclusions,this.computedBlockSize=t.computedBlockSize}setVerticalPosition(t,e){this.top=t,this.height=e,R(this.element,"top",`${t}px`),R(this.element,"height",`${e}px`)}setHorizontalPosition(t,e){this.left=t,this.width=e,R(this.element,"left",`${t}px`),R(this.element,"width",`${e}px`)}setBlockPosition(t,e){if(this.vertical){let i=e+this.marginLeft+this.marginRight+(this.borderBoxSizing?0:this.paddingLeft+this.paddingRight+this.borderLeft+this.borderRight);this.setHorizontalPosition(t+i*this.getBoxDir(),e)}else this.setVerticalPosition(t,e)}setInlinePosition(t,e){if(this.vertical)if(this.rtl){let i=e+this.marginTop+this.marginBottom+(this.borderBoxSizing?0:this.paddingTop+this.paddingBottom+this.borderTop+this.borderBottom);this.setVerticalPosition(t+i*this.getInlineDir(),e)}else this.setVerticalPosition(t,e);else if(this.rtl){let i=e+this.marginLeft+this.marginRight+(this.borderBoxSizing?0:this.paddingLeft+this.paddingRight+this.borderLeft+this.borderRight);this.setHorizontalPosition(t+i*this.getInlineDir(),e)}else this.setHorizontalPosition(t,e)}clear(){let t=this.element,e;for(;e=t.lastChild;)t.removeChild(e)}getInnerShape(){let t=this.getInnerRect();return this.innerShape?this.innerShape.withOffset(t.x1,t.y1):ah(t.x1,t.y1,t.x2,t.y2)}getInnerRect(){let t=this.originX+this.left+this.getInsetLeft(),e=this.originY+this.top+this.getInsetTop();return new Dt(t,e,t+this.width,e+this.height)}getPaddingRect(){let t=this.originX+this.left+this.marginLeft+this.borderLeft,e=this.originY+this.top+this.marginTop+this.borderTop,i=this.paddingLeft+this.width+this.paddingRight,n=this.paddingTop+this.height+this.paddingBottom;return new Dt(t,e,t+i,e+n)}getOuterShape(t,e){let i=this.getOuterRect();return Xd(t,i.x1,i.y1,i.x2-i.x1,i.y2-i.y1,e)}getOuterRect(){let t=this.originX+this.left,e=this.originY+this.top,i=this.getInsetLeft()+this.width+this.getInsetRight(),n=this.getInsetTop()+this.height+this.getInsetBottom();return new Dt(t,e,t+i,e+n)}},Wr=class extends Zt{constructor(t,e,i,n){super(),u(this,"elem",t),u(this,"context",e),u(this,"rootContentValue",i),u(this,"exprContentListener",n)}visitStrInner(t,e){var i;if(!e){if(((i=this.elem.lastChild)==null?void 0:i.nodeType)===3){this.elem.lastChild.textContent+=t;return}e=this.elem.ownerDocument.createTextNode(t)}this.elem.appendChild(e)}visitStr(t){return this.visitStrInner(t.str),null}visitURL(t){if(this.rootContentValue instanceof et)this.elem.setAttribute("src",t.url);else{let e=this.elem.ownerDocument.createElementNS("http://www.w3.org/1999/xhtml","img");e.setAttribute("src",t.url),this.elem.appendChild(e)}return null}visitSpaceList(t){return this.visitValues(t.values),null}visitExpr(t){let e=t.toExpr();if(e instanceof be){let n=e;if(typeof n.getContentList=="function"){let r=n.getContentList();if(r)return r.visit(this),null}}let i=e.evaluate(this.context);if(typeof i=="string"){this.elem.ownerDocument;let n=this.exprContentListener(e,i,this.elem.ownerDocument);!n&&i&&e instanceof be&&e.str.startsWith("running-element-")&&(i=""),this.visitStrInner(i,n)}return null}};function At(t){return t!=null&&t!==Ae&&t!==w.normal&&t!==w.none&&!Z(t)}var ri=1e5;function ch(t){let e=t.element.style;e.columnGap=`${ri-(t.vertical?t.height:t.width)}px`,e.columnFill="auto",e.columnCount="1",e.columnWidth="0"}function na(t){let e=("element"in t?t.element:t).style;e.columnWidth="",e.columnCount="",e.columnGap="",e.columnFill=""}function ks(t){return t.element.style.columnCount==="1"}function Hw(t){t.element.setAttribute("data-vivliostyle-column","true")}function Gr(t,e){let i=e?t.bottom:Math.max(Math.abs(t.left),Math.abs(t.right));return Math.round(i/ri)}function dh(t,e){let i=Gr(t,e);if(i===0)return 0;let n=e?t.top:Math.min(Math.abs(t.left),Math.abs(t.right)),r=Math.round(n/ri),o=r*ri,s=i*ri;return e?(t.top-=o,t.bottom-=s,t.bottom<t.top&&(t.bottom+=ri),t.right-=o,t.left-=s):t.left<-ri/2?(t.right+=o,t.left+=s,t.left>t.right&&(t.left-=ri),t.top+=o,t.bottom+=s):(t.left-=o,t.right-=s,t.right<t.left&&(t.right+=ri),t.top+=o,t.bottom+=s),t.width=t.right-t.left,t.height=t.bottom-t.top,r}function Ps(t,e){for(let i=0;i<t.length;i++)dh(t[i],e)}function _t(t,e,i){let n=t.getElementClientRect(e);if(dh(n,i)>0&&t.getElementComputedStyle(e).display.startsWith("table")&&!co(e)){let r=e.closest("[data-vivliostyle-column]");if(r)return na(r),t.getElementClientRect(e)}return n}function Uw(t,e){var i,n;if(t.nodeType===1){let r=t;((i=r.style)==null?void 0:i.breakAfter)==="column"&&(r.style.breakAfter="")}if(e.nodeType===1){let r=e;((n=r.style)==null?void 0:n.breakBefore)==="column"&&(r.style.breakBefore="")}}function hl(t){let e=t.style;return e?!isNaN(parseFloat(e.columnCount))||!isNaN(parseFloat(e.columnWidth)):!1}function Ww(t){if(!t.hasAttribute("data-vivliostyle-column")&&hl(t))return!0;for(let e of t.querySelectorAll("*"))if(!e.hasAttribute("data-vivliostyle-column")&&hl(e))return!0;return!1}function co(t){for(let e=t.nodeType===1?t:t.parentElement;e;e=e.parentElement){let i=e.style;if(!i||e.hasAttribute("data-vivliostyle-column"))break;if(hl(e))return e;if(i.position==="absolute")break}return null}function Gw(t){var e;if(t.nodeType!==1)return;let i=t,n=i.style,r=n?.breakBefore==="column",o=i.previousElementSibling,s=o&&((e=o.style)==null?void 0:e.breakAfter)==="column";if(!r&&!s)return;let a=co(i);if(!a)return;let h=a.ownerDocument.defaultView.getComputedStyle(a),{writingMode:l,direction:c,columnGap:d,fontSize:p}=h,f=l==="vertical-rl"||l==="vertical-lr",g=c==="rtl",m=(parseFloat(d)||parseFloat(p)||16)/2,v=a.getBoundingClientRect(),b=i.getBoundingClientRect();(f?b.top>v.bottom+m:g?b.right<v.left-m:b.left>v.right+m)&&(r&&(n.breakBefore=""),s&&o&&(o.style.breakAfter=""),n.marginBlockStart=`${ri}px`)}function No(t){let e=t.element.lastElementChild,i=e&&t.clientLayout.getElementClientRect(e);return i?Gr(i,t.vertical):0}function $p(t,e){if(t.getAttribute("data-viv-saved-column-fill")!=="auto"||No(e))return;let i=e.clientLayout.getElementComputedStyle(t),n=parseFloat(i.blockSize);t.style.columnFill="auto";let r=parseFloat(i.blockSize);if(r<=0||t.parentElement&&co(t.parentElement)){t.removeAttribute("data-viv-saved-column-fill");return}let o=NaN;if(t.style.blockSize=`${r}px`,No(e)){if(t.style.blockSize=`${n}px`,!No(e)){let s=1/(e.clientLayout.pixelRatio||1),a=n,h=r;for(;h-a>s;){let l=(a+h)/2;t.style.blockSize=`${l}px`,No(e)?h=l:a=l}o=a,t.style.blockSize=`${o}px`}}else if(o=parseFloat(i.blockSize),o<r){let s=1/e.clientLayout.layoutUnitPerPixel;o=r+s,t.style.blockSize=`${o}px`}if(isNaN(o)){t.style.blockSize="",t.style.columnFill="balance";return}t.removeAttribute("data-viv-saved-column-fill")}function jw(t){let e=t.element.querySelectorAll('[data-viv-saved-column-fill="auto"]');for(let i of e)$p(i,t)}function Tn(t,e,i,n){let r=t.viewNode;if(!r)return NaN;let o=r.nodeType===1?r:r.parentElement;if(o&&o.namespaceURI==="http://www.w3.org/1999/xhtml"){let s=o.style;if(o.localName==="wbr"||s&&Wt(s.display)&&/^([\d\.]|super|(text-)?top)/.test(s.verticalAlign))return NaN}if(r===o){if(o.localName==="br"){let s=o.ownerDocument.createElement("span");o.before(s);let a=e.getElementClientRect(s);if(s.remove(),a){let h=[a];Ps(h,n);let l=h[0],c=n?l.left:l.bottom;if(!isNaN(c)&&c!==0)return c}return NaN}if(t.after||!t.inline){if(t.after&&!t.inline&&o.querySelector("ruby")){let a=o.parentNode,h=o.nextSibling;a.removeChild(o),a.insertBefore(o,h)}let s=_t(e,o,n);if(s.left===0&&s.top===0&&s.right===0&&s.bottom===0)return NaN;if(s.right>=s.left&&s.bottom>=s.top)return t.after?n?s.left:s.bottom:n?s.right:s.top}return NaN}else{let s=NaN,a=r.ownerDocument.createRange(),h=r.textContent.length;if(!h)return NaN;t.after&&(i+=h),i>=h&&(i=h-1),a.setStart(r,i),a.setEnd(r,i+1);let l=e.getRangeClientRects(a);Ps(l,n);let c=l.filter(d=>d.right>d.left&&d.bottom>d.top);if(c.length>0)l=c;else{let d=o?e.getElementComputedStyle(o).whiteSpace:"";l=d==="pre"||d==="pre-wrap"||d==="pre-line"||d==="break-spaces"?l.filter(p=>n?p.right>p.left:p.bottom>p.top):[]}return l.length?(n?s=Math.min.apply(null,l.map(d=>d.left)):s=Math.max.apply(null,l.map(d=>d.bottom)),s):NaN}}function ul(t,e,i){let n=ks(e);n&&na(e);let r=e.clientLayout.getElementClientRect(t);n&&ch(e);let o=e.getComputedMargin(t);return i?r.width+o.left+o.right:r.height+o.top+o.bottom}function Rn(t){for(;t;){if(t.parentNode===t.ownerDocument)return!1;t=t.parentNode}return!0}function Hp(t,e){var i;if(t)for(let n=t.lastChild,r=n;n!==e;n=r)r=n.previousSibling,!(n.nodeType===1&&n.hasAttribute("data-vivliostyle-float-box-moved")&&((i=e.style)==null?void 0:i.display)==="inline")&&t.removeChild(n)}var Un="data-adapt-spec";function ph(t){return!!t.getAttribute(Un)}function Mt(t){return t?.nodeType!==1?!1:ph(t)?!0:Up(t)}function Up(t){var e,i;if(t?.nodeType!==1)return!1;let n=t,r=(e=n.style)==null?void 0:e.position;if(r==="absolute"||r==="fixed")return!0;let o=(i=n.style)==null?void 0:i.float;return o==="left"||o==="right"||o==="inline-start"||o==="inline-end"}function Du(t){var e;return t?.nodeType!==1?!1:((e=t.style)==null?void 0:e.position)==="fixed"}function Ln(t){let e=t?.viewNode;return e?.nodeType===1&&ph(e)}function Xw(t){return t!=="inline"&&(Wt(t)||Pp(t))}function zu(t){var e;for(let i=t.parent;i;i=i.parent)if((i.display!=="inline"||i.vertical!==((e=i.parent)==null?void 0:e.vertical))&&Wt(i.display))return Lt(i);return null}function Wp(t){let e=t.parentElement;return e?.localName==="viv-ts-inner"?e.parentElement:null}function qw(t){let e=t;for(;e;){if(e.nodeType===Node.TEXT_NODE&&e.textContent.length>0)return e;if(e.lastChild)e=e.lastChild;else{for(;e&&!e.previousSibling;)if(e=e.parentNode,e===t||!e)return null;e=e?.previousSibling||null}}return null}function Gp(t,e){let i={};return Object.keys(t).forEach(n=>{let r=i[n]={},o=t[n];Object.keys(o).forEach(s=>{r[s]=o[s].map(a=>{let h=e?a.logical:a.physical,l=e?a.physical:a.logical;return{regexp:new RegExp(`(-?)${h}(-?)`),to:`$1${l}$2`}})})}),i}function jp(t,e,i,n){let r=n[e];if(!r)throw new Error(`unknown writing-mode: ${e}`);let o=r[i||"ltr"];if(!o)throw new Error(`unknown direction: ${i}`);for(let s of o){let a=t.replace(s.regexp,s.to);if(a!==t)return a}return t}var Xp={"horizontal-tb":{ltr:[{logical:"inline-start",physical:"left"},{logical:"inline-end",physical:"right"},{logical:"block-start",physical:"top"},{logical:"block-end",physical:"bottom"},{logical:"inline-size",physical:"width"},{logical:"block-size",physical:"height"}],rtl:[{logical:"inline-start",physical:"right"},{logical:"inline-end",physical:"left"},{logical:"block-start",physical:"top"},{logical:"block-end",physical:"bottom"},{logical:"inline-size",physical:"width"},{logical:"block-size",physical:"height"}]},"vertical-rl":{ltr:[{logical:"inline-start",physical:"top"},{logical:"inline-end",physical:"bottom"},{logical:"block-start",physical:"right"},{logical:"block-end",physical:"left"},{logical:"inline-size",physical:"height"},{logical:"block-size",physical:"width"}],rtl:[{logical:"inline-start",physical:"bottom"},{logical:"inline-end",physical:"top"},{logical:"block-start",physical:"right"},{logical:"block-end",physical:"left"},{logical:"inline-size",physical:"height"},{logical:"block-size",physical:"width"}]},"vertical-lr":{ltr:[{logical:"inline-start",physical:"top"},{logical:"inline-end",physical:"bottom"},{logical:"block-start",physical:"left"},{logical:"block-end",physical:"right"},{logical:"inline-size",physical:"height"},{logical:"block-size",physical:"width"}],rtl:[{logical:"inline-start",physical:"bottom"},{logical:"inline-end",physical:"top"},{logical:"block-start",physical:"left"},{logical:"block-end",physical:"right"},{logical:"inline-size",physical:"height"},{logical:"block-size",physical:"width"}]}},Yw=Gp(Xp,!0);function qp(t,e,i){return jp(t,e,i||null,Yw)}var Zw=Gp(Xp,!1);function Yp(t,e,i){return jp(t,e,i||null,Zw)}var Kw={"horizontal-tb":[{logical:"line-left",physical:"left"},{logical:"line-right",physical:"right"},{logical:"over",physical:"top"},{logical:"under",physical:"bottom"}],"vertical-rl":[{logical:"line-left",physical:"top"},{logical:"line-right",physical:"bottom"},{logical:"over",physical:"right"},{logical:"under",physical:"left"}],"vertical-lr":[{logical:"line-left",physical:"top"},{logical:"line-right",physical:"bottom"},{logical:"over",physical:"right"},{logical:"under",physical:"left"}]};function Jw(t,e){let i=Kw[e];if(!i)throw new Error(`unknown writing-mode: ${e}`);for(let n=0;n<i.length;n++)if(i[n].physical===t)return i[n].logical;return t}function fh(t,e,i){var n;let r=e,o={width:r.style.width,height:r.style.height};function s(p){return t.getElementComputedStyle(e).getPropertyValue(p)}let a=s("writing-mode")!=="horizontal-tb",h=a?"height":"width",l=a?"width":"height";function c(p,f){r.style[p]=f;let g=s(p);return r.style[p]=o[p],g}let d={};for(let p of i){let f;switch(p){case"max-content inline size":f=c(h,"max-content");break;case"min-content inline size":f=c(h,"min-content");break;case"fit-content inline size":f=c(h,"fit-content");break;case"max-content block size":f=c(l,"max-content");break;case"min-content block size":f=c(l,"min-content");break;case"fit-content block size":f=c(l,"fit-content");break;case"max-content width":f=c("width","max-content");break;case"max-content height":f=c("height","max-content");break;case"min-content width":f=c("width","min-content");break;case"min-content height":f=c("height","min-content");break;case"fit-content width":f=c("width","fit-content");break;case"fit-content height":f=c("height","fit-content");break}f==="0px"&&e.childNodes.length===1&&((n=e.firstElementChild)==null?void 0:n.localName)==="img"&&!e.firstElementChild.complete&&(f="1px"),d[p]=parseFloat(f)}return d}var Ne=Dn.FloatReference,Qw=20;function eb(t){switch(t){case"inline":return Ne.INLINE;case"column":return Ne.COLUMN;case"region":return Ne.REGION;case"page":return Ne.PAGE;default:throw new Error(`Unknown float-reference: ${t}`)}}function Li(t){switch(t){case Ne.INLINE:return!1;case Ne.COLUMN:case Ne.REGION:case Ne.PAGE:return!0;default:throw new Error(`Unknown float-reference: ${t}`)}}function Ta(t,e,i,n){let r=e?"vertical-rl":"horizontal-tb";if((t==="top"||t==="bottom")&&(t=Yp(t,r,i)),t==="block-start"&&(t="inline-start"),t==="block-end"&&(t="inline-end"),t==="inline-start"||t==="inline-end"){let o=qp(t,r,i),s=Jw(o,r);s==="line-left"?t="left":s==="line-right"&&(t="right")}else t==="inside"?t=n==="left"?"right":"left":t==="outside"&&(t=n==="left"?"left":"right");return t!=="left"&&t!=="right"&&(Y.warn(`Invalid float value: ${t}. Fallback to left.`),t="left"),t}var Zp=class{constructor(t,e,i,n,r,o){u(this,"nodePosition",t),u(this,"floatReference",e),u(this,"floatSide",i),u(this,"clearSide",n),u(this,"flowName",r),u(this,"floatMinWrapBlock",o),u(this,"order",null),u(this,"id",null),u(this,"insidePageFloatArea",!1),u(this,"parentPageFloat",null)}getOrder(){if(this.order===null)throw new Error("The page float is not yet added");return this.order}getId(){if(!this.id)throw new Error("The page float is not yet added");return this.id}isAllowedOnContext(t){return t.isAnchorAlreadyAppeared(this.getId())?!0:this.insidePageFloatArea&&this.parentPageFloat?!!t.findPageFloatFragment(this.parentPageFloat):!1}isAllowedToPrecede(t){return!1}},tb=class{constructor(){u(this,"floats",[]),u(this,"nextPageFloatIndex",0)}nextOrder(){return this.nextPageFloatIndex++}createPageFloatId(t){return`pf${t}`}addPageFloat(t){if(this.floats.findIndex(e=>Di(e.nodePosition,t.nodePosition))>=0)throw new Error("A page float with the same source node is already registered");{let e=t.order=this.nextOrder();t.id=this.createPageFloatId(e),this.floats.push(t)}}findPageFloatByNodePosition(t){let e=this.floats.findIndex(n=>Di(n.nodePosition,t));if(e>=0)return this.floats[e];let i=t?.steps;if(i!=null&&i.length){let n=this.floats.findIndex(r=>{let o=r.nodePosition.steps;if(!(o!=null&&o.length)||o.length===i.length||r.nodePosition.offsetInNode!==t.offsetInNode||r.nodePosition.after!==t.after)return!1;let s=Math.min(o.length,i.length);for(let a=0;a<s;a++)if(o[a].node!==i[a].node)return!1;return!0});if(n>=0)return this.floats[n]}return null}findPageFloatById(t){let e=this.floats.findIndex(i=>i.id===t);return e>=0?this.floats[e]:null}},Kp=class{constructor(t,e,i,n,r,o){u(this,"floatReference",t),u(this,"floatSide",e),u(this,"clearSide",i),u(this,"continuations",n),u(this,"area",r),u(this,"continues",o)}hasFloat(t){return this.continuations.some(e=>e.float===t)}findNotAllowedFloat(t){for(let e=this.continuations.length-1;e>=0;e--){let i=this.continuations[e].float;if(!i.isAllowedOnContext(t))return i}return null}getOuterShape(){return this.area.getOuterShape(null,null)}getOuterRect(){return this.area.getOuterRect()}getOrder(){let t=this.continuations.map(e=>e.float);return Math.min.apply(null,t.map(e=>e.getOrder()))}shouldBeStashedBefore(t){return this.getOrder()<t.getOrder()}addContinuations(t){t.forEach(e=>{this.continuations.push(e)})}getFlowName(){let t=this.continuations[0].float.flowName;return this.continuations.every(e=>e.float.flowName===t),t}},Vu=class{constructor(t,e){u(this,"float",t),u(this,"nodePosition",e)}equals(t){return t?this===t?!0:this.float===t.float&&Di(this.nodePosition,t.nodePosition):!1}};function Jp(t,e){if(t==="inside"||t==="outside"){let i=e.pageSide==="left";t=t==="inside"?i?"right":"left":i?"left":"right"}return Yp(t,e.writingMode.toString(),e.direction.toString())}function ib(t,e){return qp(t,e.writingMode.toString(),e.direction.toString())}function nb(t,e){let i=t.split(" "),n=[];for(let a of i){let h=Jp(a,e);n.includes(h)||n.push(h)}let r=[],o=!1,s=!1;for(let a=0;a<n.length;a++){let h=n[a];h.includes("block")?o||(n.slice(a+1).some(l=>l.includes("block"))?(r.push("snap-block"),o=!0):r.push(h)):h.includes("inline")&&(s||(n.slice(a+1).some(l=>l.includes("inline"))?(r.push("snap-inline"),s=!0):r.push(h)))}return r}var Oi=class Jo{constructor(e,i){u(this,"parent"),u(this,"floatReference"),u(this,"flowName"),u(this,"generatingNodePosition"),u(this,"writingMode"),u(this,"direction"),u(this,"pageSide"),u(this,"outerContext"),u(this,"floatStore"),u(this,"state"),this.parent=e.parent,this.floatReference=e.floatReference,this.flowName=e.flowName,this.generatingNodePosition=e.generatingNodePosition,this.writingMode=e.writingMode,this.direction=e.direction,this.pageSide=e.pageSide,this.outerContext=e.outerContext,this.floatStore=e.floatStore,this.state=i??this.newState()}static buildIdentity(e,i,n,r,o,s,a,h){var l,c,d;return{parent:e,floatReference:i,flowName:n,generatingNodePosition:r,writingMode:!Z(o)&&o||e?.writingMode||w.horizontal_tb,direction:!Z(s)&&s||e?.direction||w.ltr,pageSide:(c=(l=h??e?.pageSide)!=null?l:a?.pageSide)!=null?c:null,outerContext:a,floatStore:e?e.floatStore:(d=a?.floatStore)!=null?d:new tb}}newState(){let e=this.getPreviousSibling();return{children:[],floatAnchors:{},invalidated:!1,locked:!1,forbiddenFloats:[],floatFragments:[],stashedFloatFragments:[],floatsDeferredToNext:[],floatsDeferredFromPrevious:e?[...e.state.floatsDeferredToNext]:[],layoutConstraints:[],footnoteMaxBlockSize:null,ignoreFootnoteAreaMaxHeight:!1,footnoteAnchorsSeen:new Set,lineFootnoteInvalidationMaxBlockSize:new Map,lineFootnoteFinishInvalidatedOnce:new Set}}static createDetached(e,i,n,r){return new $u(Jo.buildIdentity(null,i,n,r,null,null,e,null))}static create(e,i,n,r,o,s,a=null,h=null){let l=Jo.buildIdentity(e,i,n,r,o,s,a,h);return new $u(l)}static createWithContainer(e,i,n,r,o,s,a,h=null,l=null){let c=Jo.buildIdentity(i,n,r,o,s,a,h,l);return new tf(c,e)}static register(e,i){if(!e)return;let n=e.state.children.findIndex(r=>r.state===i.state);n>=0?e.state.children[n]=i:e.state.children.push(i)}identity(){return{parent:this.parent,floatReference:this.floatReference,flowName:this.flowName,generatingNodePosition:this.generatingNodePosition,writingMode:this.writingMode,direction:this.direction,pageSide:this.pageSide,outerContext:this.outerContext,floatStore:this.floatStore}}get floatFragments(){return this.state.floatFragments}get footnoteMaxBlockSize(){return this.state.footnoteMaxBlockSize}set footnoteMaxBlockSize(e){this.state.footnoteMaxBlockSize=e}get ignoreFootnoteAreaMaxHeight(){return this.state.ignoreFootnoteAreaMaxHeight}set ignoreFootnoteAreaMaxHeight(e){this.state.ignoreFootnoteAreaMaxHeight=e}get effectiveParent(){var e;return(e=this.parent)!=null?e:this.outerContext}getParent(e){if(this.parent)return this.parent;if(this.outerContext)return this.outerContext;throw new Error(`No PageFloatLayoutContext for ${e}`)}getPreviousSibling(){let e=this,i=this.parent,n;for(;i;){if(n=i.getPreviousSiblingOf(e,this.floatReference,this.flowName,this.generatingNodePosition),n)return n;e=i,i=i.parent}return null}addPageFloat(e){this.floatStore.addPageFloat(e)}getPageFloatLayoutContext(e){return e===this.floatReference?this:this.getParent(e).getPageFloatLayoutContext(e)}findPageFloatByNodePosition(e){return this.floatStore.findPageFloatByNodePosition(e)}isForbidden(e){let i=e.getId(),n=e.floatReference;return n===this.floatReference?this.state.forbiddenFloats.includes(i):this.getParent(n).isForbidden(e)}findPageFloatFragment(e){if(e.floatReference!==this.floatReference)return this.getParent(e.floatReference).findPageFloatFragment(e);let i=this.floatFragments.findIndex(n=>n.hasFloat(e));return i>=0?this.floatFragments[i]:null}hasFloatFragments(e){return this.floatFragments.length>0&&(!e||this.floatFragments.some(e))?!0:this.parent?this.parent.hasFloatFragments(e):!1}hasContinuingFloatFragmentsInFlow(e){return this.hasFloatFragments(i=>i.continues&&i.getFlowName()===e&&i.floatSide!=="block-end")}markPageFloatAnchorSeen(e){var i;if(!("footnotePolicy"in e))return;let n=this;for(;n;)n.state.footnoteAnchorsSeen.add(e.getId()),n=(i=n.parent)!=null?i:n.outerContext}registerPageFloatAnchor(e,i){this.state.floatAnchors[e.getId()]=i,this.markPageFloatAnchorSeen(e)}hasInvalidatedForLineFootnote(e){return e.floatReference===this.floatReference?this.state.lineFootnoteInvalidationMaxBlockSize.get(e.getId())===this.footnoteMaxBlockSize:this.getParent(e.floatReference).hasInvalidatedForLineFootnote(e)}markInvalidatedForLineFootnote(e){e.floatReference===this.floatReference?this.state.lineFootnoteInvalidationMaxBlockSize.set(e.getId(),this.footnoteMaxBlockSize):this.getParent(e.floatReference).markInvalidatedForLineFootnote(e)}deferPageFloat(e){let i=e.float;if(i.floatReference===this.floatReference){let n=this.state.floatsDeferredToNext.findIndex(r=>r.float===i);n>=0?this.state.floatsDeferredToNext.splice(n,1,e):this.state.floatsDeferredToNext.push(e)}else this.getParent(i.floatReference).deferPageFloat(e)}removeFloatDeferredToNext(e){let i=this.state.floatsDeferredToNext.findIndex(n=>n.float===e);i>=0&&this.state.floatsDeferredToNext.splice(i,1)}hasPrecedingFloatsDeferredToNext(e,i){if(!i&&e.floatReference!==this.floatReference)return this.getParent(e.floatReference).hasPrecedingFloatsDeferredToNext(e,!1);let n=e.getOrder();return this.state.floatsDeferredToNext.some(r=>r.float.getOrder()<n&&!e.isAllowedToPrecede(r.float))?!0:this.parent?this.parent.hasPrecedingFloatsDeferredToNext(e,!0):!1}getLastFollowingFloatInFragments(e){let i=e.getOrder(),n=null;if(this.floatFragments.forEach(r=>{r.continuations.forEach(o=>{let s=o.float,a=s.getOrder();a>i&&(!n||a>n.getOrder())&&(n=s)})}),this.parent){let r=this.parent.getLastFollowingFloatInFragments(e);r&&(!n||r.getOrder()>n.getOrder())&&(n=r)}return n}getDeferredPageFloatContinuations(e){e=e||this.flowName;let i=this.state.floatsDeferredFromPrevious.filter(n=>!e||n.float.flowName===e);return this.parent&&(i=this.parent.getDeferredPageFloatContinuations(e).concat(i)),i.sort((n,r)=>n.float.getOrder()-r.float.getOrder())}getPageFloatContinuationsDeferredToNext(e){e=e||this.flowName;let i=this.state.floatsDeferredToNext.filter(n=>!e||n.float.flowName===e);return this.parent?this.parent.getPageFloatContinuationsDeferredToNext(e).concat(i):i}trySetFootnoteRetryMaxBlockSize(e){let i=this.footnoteMaxBlockSize!=null?this.footnoteMaxBlockSize/2:e/2;return i<Qw?!1:(this.footnoteMaxBlockSize=i,!0)}isInvalidated(){return this.state.invalidated||!!this.parent&&this.parent.isInvalidated()}validate(){this.state.invalidated=!1}toLogical(e){return Jp(e,this)}toPhysical(e){return ib(e,this)}toLogicalFloatSides(e){return nb(e,this)}discardStashedFragments(e){if(e!==this.floatReference){this.getParent(e).discardStashedFragments(e);return}this.state.stashedFloatFragments.splice(0)}getStashedFloatFragments(e){return e===this.floatReference?this.state.stashedFloatFragments.concat().sort((i,n)=>n.getOrder()-i.getOrder()):this.getParent(e).getStashedFloatFragments(e)}getFloatFragmentExclusions(){let e=this.floatFragments.map(i=>i.getOuterShape());return this.parent?this.parent.getFloatFragmentExclusions().concat(e):e}getLayoutConstraints(){return(this.parent?this.parent.getLayoutConstraints():[]).concat(this.state.layoutConstraints)}addLayoutConstraint(e,i){i===this.floatReference?this.state.layoutConstraints.push(e):this.getParent(i).addLayoutConstraint(e,i)}lock(){this.state.locked=!0}unlock(){this.state.locked=!1}isLocked(){return this.state.locked}},$u=class extends Oi{withContainer(t){return new tf(this.identity(),t,this.state)}},Qp=class extends Oi{get children(){return this.state.children}attachChildren(t){t.forEach(e=>{this.state.children.push(e),e.reattachFloatFragments()})}detachChildren(){let t=this.state.children.splice(0);return t.forEach(e=>{e.floatFragments.forEach(i=>{let n=i.area.element;n&&n.parentNode&&n.parentNode.removeChild(n)})}),t}collectPageFloatAnchors(){let t=Object.assign({},this.state.floatAnchors);return this.state.children.reduce((e,i)=>Object.assign(e,i.collectPageFloatAnchors()),t)}getFloatsDeferredToNextInChildContexts(){let t=[],e=[];for(let i=this.state.children.length-1;i>=0;i--){let n=this.state.children[i];e.includes(n.flowName)||(e.push(n.flowName),t=t.concat(n.state.floatsDeferredToNext.map(r=>r.float)),t=t.concat(n.getFloatsDeferredToNextInChildContexts()))}return t}findPageFloatAnchor(t){var e;for(let i=this.state.children.length-1;i>=0;i--){let n=this.state.children[i].findPageFloatAnchor(t);if(n)return n}return(e=this.state.floatAnchors[t])!=null?e:null}hasRootMultiColumnFootnoteContext(){return this.state.children.some(t=>{let e=0;for(let i of t.state.children)if(!i.generatingNodePosition&&(e+=1,e>1))return!0;return!1})}getPreviousSiblingOf(t,e,i,n){let r=this.state.children.indexOf(t);r<0&&(r=this.state.children.length);for(let o=r-1;o>=0;o--){let s=this.state.children[o];if(s.floatReference===e&&s.flowName===i&&Di(s.generatingNodePosition,n)||(s=s.getPreviousSiblingOf(null,e,i,n),s))return s}return null}},Hu=class ef extends Qp{asAttached(){return null}addPageFloatLayoutContextAsPreviousSibling(e){this.state.children.push(e)}static createRoot(){return new ef(Oi.buildIdentity(null,null,null,null,null,null,null,null))}},tf=class extends Qp{constructor(t,e,i){var n,r;super(t,i),u(this,"container",e),u(this,"attachedParent"),u(this,"attachedOuter"),this.attachedParent=(r=(n=t.parent)==null?void 0:n.asAttached())!=null?r:null,this.attachedOuter=t.outerContext,this.reattachFloatFragments(),Oi.register(this.parent,this)}asAttached(){return this}getParent(t){var e;let i=(e=this.attachedParent)!=null?e:this.attachedOuter;if(i)return i;throw new Error(`No PageFloatLayoutContext for ${t}`)}getPageFloatLayoutContext(t){return t===this.floatReference?this:this.getParent(t).getPageFloatLayoutContext(t)}forbid(t){let e=t.getId(),i=t.floatReference;i===this.floatReference?this.state.forbiddenFloats.includes(e)||(this.state.forbiddenFloats.push(e),new Wn().findByFloat(t).forbid(t,this)):this.getParent(i).forbid(t)}addPageFloatFragment(t,e){let i=t.floatReference;i!==this.floatReference?this.getParent(i).addPageFloatFragment(t,e):this.floatFragments.includes(t)||(this.floatFragments.push(t),this.floatFragments.sort((n,r)=>n.getOrder()-r.getOrder())),e||this.invalidate()}removePageFloatFragment(t,e){let i=t.floatReference;if(i!==this.floatReference)this.getParent(i).removePageFloatFragment(t,e);else{let n=this.floatFragments.indexOf(t);if(n>=0){let r=this.floatFragments.splice(n,1)[0],o=r.area&&r.area.element;o&&o.parentNode&&o.parentNode.removeChild(o),e||this.invalidate()}}}hasCurrentAnchor(t){let e=this.findPageFloatAnchor(t);return e?this.container.element.contains(e):!1}isAnchorAlreadyAppeared(t){if(this.getDeferredPageFloatContinuations().some(i=>i.float.getId()===t))return!0;let e=this.findPageFloatAnchor(t);return e?this.container.element.contains(e):!1}hasNonRootMultiColumnFootnoteContext(){return this.state.children.some(t=>t.state.children.some(e=>Ww(e.container.element)))}hasMultiColumnFootnoteContext(){return this.hasRootMultiColumnFootnoteContext()||this.hasNonRootMultiColumnFootnoteContext()}initFootnoteRetryFromEmptyFragment(t,e){if(!("footnotePolicy"in t&&this.footnoteMaxBlockSize==null&&this.state.footnoteAnchorsSeen.has(t.getId())&&this.hasMultiColumnFootnoteContext()))return!1;let i=(e.vertical?e.width:e.height)+e.getInsetBefore()+e.getInsetAfter();return this.trySetFootnoteRetryMaxBlockSize(i)}checkAndForbidNotAllowedFloat(){var t;if(this.checkAndForbidFloatFollowingDeferredFloat())return!0;for(let e=this.floatFragments.length-1;e>=0;e--){let i=this.floatFragments[e],n=i.findNotAllowedFloat(this);if(n){let r=i.area&&"isFootnote"in i.area&&i.area.isFootnote;if(this.state.locked)this.invalidate();else{let o=r&&"footnotePolicy"in n&&n.footnotePolicy===w.line;if(r&&this.state.footnoteAnchorsSeen.has(n.getId())&&(o||this.hasMultiColumnFootnoteContext())){let s=i.area.computedBlockSize+i.area.getInsetBefore()+i.area.getInsetAfter();if(this.trySetFootnoteRetryMaxBlockSize(s))return this.removePageFloatFragment(i),this.removeEndFloatFragments(i.floatSide),!0}this.removePageFloatFragment(i),this.forbid(n),this.removeEndFloatFragments(i.floatSide)}return!0}}return this.floatReference===Ne.REGION&&(t=this.attachedParent)!=null&&t.isLocked()?this.attachedParent.checkAndForbidNotAllowedFloat():!1}checkAndForbidFloatFollowingDeferredFloat(){let t=this.getFloatsDeferredToNextInChildContexts(),e=this.floatFragments.reduce((i,n)=>i.concat(n.continuations.map(r=>r.float)),[]);e.sort((i,n)=>n.getOrder()-i.getOrder());for(let i of e){let n=i.getOrder();if(t.some(r=>!i.isAllowedToPrecede(r)&&n>r.getOrder())){if(this.state.locked)this.invalidate();else{this.forbid(i);let r=this.findPageFloatFragment(i);this.removePageFloatFragment(r)}return!0}}return!1}finish(){for(let t=this.floatFragments.length-1;t>=0;t--){let e=this.floatFragments[t];if(e.continuations.some(i=>{let n=i.float;return"footnotePolicy"in n&&n.footnotePolicy===w.line&&!this.hasCurrentAnchor(n.getId())&&!this.state.floatsDeferredFromPrevious.some(r=>r.float===n)})){if(this.state.locked){this.invalidate();return}this.removePageFloatFragment(e);return}}if(!this.checkAndForbidNotAllowedFloat()){for(let t=this.state.floatsDeferredToNext.length-1;t>=0;t--){let e=this.state.floatsDeferredToNext[t].float,i=this.findPageFloatFragment(e);if("footnotePolicy"in e&&e.footnotePolicy===w.line&&this.hasCurrentAnchor(e.getId())&&!i&&!this.state.lineFootnoteFinishInvalidatedOnce.has(e.getId())){if(this.state.locked){this.invalidate();return}this.state.lineFootnoteFinishInvalidatedOnce.add(e.getId()),this.removeFloatDeferredToNext(e),this.forbid(e),this.invalidate();return}}for(let t=this.state.floatsDeferredToNext.length-1;t>=0;t--)if(!this.state.floatsDeferredToNext[t].float.isAllowedOnContext(this)){if(this.state.locked){this.invalidate();return}this.state.floatsDeferredToNext.splice(t,1)}this.state.floatsDeferredFromPrevious.forEach(t=>{this.state.floatsDeferredToNext.findIndex(e=>t.equals(e))>=0||this.floatFragments.some(e=>e.hasFloat(t.float))||this.state.floatsDeferredToNext.push(t)})}}restoreStashedFragments(t){if(t!==this.floatReference){this.getParent(t).restoreStashedFragments(t);return}this.state.stashedFloatFragments.forEach(e=>{this.addPageFloatFragment(e,!0)}),this.state.stashedFloatFragments.splice(0)}hasSameContainerAs(t){return this.container.element===t.container.element}invalidate(){this.state.invalidated=!0,!this.state.locked&&(this.state.children.forEach(t=>{this.hasSameContainerAs(t)&&t.floatFragments.forEach(e=>{let i=e.area.element;i&&i.parentNode&&i.parentNode.removeChild(i)})}),this.container.clear(),this.state.children.forEach(t=>{t.state.layoutConstraints.splice(0)}),this.state.children.splice(0),Object.keys(this.state.floatAnchors).forEach(t=>{delete this.state.floatAnchors[t]}))}removeEndFloatFragments(t){let e=this.toLogicalFloatSides(t)[0];if(e==="block-end"||e==="inline-end"){let i=0;for(;i<this.floatFragments.length;){let n=this.floatFragments[i];this.toLogicalFloatSides(n.floatSide)[0]===e?this.removePageFloatFragment(n):i++}}}isFragmentInCurrentContainer(t){if(this.floatReference!==Ne.REGION)return!0;let e=t.area;return!e.parentElement||e.parentElement===this.container.element}stashEndFloatFragments(t){let e=t.floatReference;if(e!==this.floatReference){this.getParent(e).stashEndFloatFragments(t);return}let i=this.toLogicalFloatSides(t.floatSide)[0];if(i==="block-end"||i==="snap-block"||i==="inline-end"||i==="snap-inline"){let n=0;for(;n<this.floatFragments.length;){let r=this.floatFragments[n],o=this.toLogicalFloatSides(r.floatSide)[0];this.isFragmentInCurrentContainer(r)&&(o===i||i==="snap-block"&&o==="block-end"||i==="snap-inline"&&o==="inline-end")&&r.shouldBeStashedBefore(t)?(this.state.stashedFloatFragments.push(r),this.floatFragments.splice(n,1)):n++}}}getLimitValue(t,e,i,n,r,o=!0,s){let a=this.toLogical(t),h=this.toPhysical(t),l=e&&this.toLogical(e),c=e&&this.toPhysical(e),d=this.getLimitValueInner(a,l,i,n,r,s),p=this.attachedParent;if(o&&p){let f=p.getLimitValue(h,c,i,n,r,o,s);switch(h){case"top":return Math.max(d,f);case"left":return Math.max(d,f);case"bottom":return Math.min(d,f);case"right":return Math.min(d,f);default:}}return d}getLimitValueInner(t,e,i,n,r,o){let s=this.getLimitValuesInner(i,n,r,t,e,o);switch(t){case"block-start":return this.container.vertical?s.right:s.top;case"block-end":return this.container.vertical?s.left:s.bottom;case"inline-start":return this.container.vertical?this.container.rtl?s.bottom:s.top:this.container.rtl?s.right:s.left;case"inline-end":return this.container.vertical?this.container.rtl?s.top:s.bottom:this.container.rtl?s.left:s.right;default:throw new Error(`Unknown logical side: ${t}`)}}getLimitValuesInner(t,e,i,n,r,o){var s,a,h,l;let c=this.container.originX,d=this.container.originY,p=this.container.getPaddingRect(),f={top:p.y1-d,left:p.x1-c,bottom:p.y2-d,right:p.x2-c,floatMinWrapBlockStart:0,floatMinWrapBlockEnd:0};if(this.container.vertical){let v=parseFloat((a=(s=this.container.element)==null?void 0:s.style)==null?void 0:a.width);isFinite(v)&&v>this.container.width&&(f.right+=v-this.container.width)}else{let v=parseFloat((l=(h=this.container.element)==null?void 0:h.style)==null?void 0:l.height);isFinite(v)&&v>this.container.height&&(f.bottom+=v-this.container.height)}function g(v,b,x){return v.unit==="%"?x*v.num/100:t.convertLengthToPx(v,b,e)}let m=this.floatFragments;return m.length>0&&(f=m.reduce((v,b)=>{if(b.area===o||!this.isFragmentInCurrentContainer(b)||i&&!i(b,this))return v;let[x,C]=this.toLogicalFloatSides(b.floatSide);if(C&&(n&&C.includes("block")===n.includes("block")&&C!==n||r&&C.includes("block")===r.includes("block")&&C!==r))return v;let y=b.area,k=b.continuations[0].float.floatMinWrapBlock,S=y.vertical?y.left+y.getInsetLeft()+y.width+y.getInsetRight():y.top+y.getInsetTop()+y.height+y.getInsetBottom(),N=y.vertical?y.top+y.getInsetTop()+y.height+y.getInsetBottom():y.left+y.getInsetLeft()+y.width+y.getInsetRight(),L=v.top,I=v.left,D=v.bottom,J=v.right,te=v.floatMinWrapBlockStart,P=v.floatMinWrapBlockEnd;switch(x){case"inline-start":y.vertical?L=Math.max(L,N):I=Math.max(I,N);break;case"block-start":y.vertical?(k&&y.left<J&&(te=g(k,y.rootViewNodes[0],p.x2-p.x1)),J=Math.min(J,y.left)):(k&&S>L&&(te=g(k,y.rootViewNodes[0],p.y2-p.y1)),L=Math.max(L,S));break;case"inline-end":y.vertical?D=Math.min(D,y.top):J=Math.min(J,y.left);break;case"block-end":y.vertical?(k&&S>I&&(P=g(k,y.rootViewNodes[0],p.x2-p.x1)),I=Math.max(I,S)):(k&&y.top<D&&(P=g(k,y.rootViewNodes[0],p.y2-p.y1)),D=Math.min(D,y.top));break;default:throw new Error(`Unknown logical float side: ${x}`)}return{top:L,left:I,bottom:D,right:J,floatMinWrapBlockStart:te,floatMinWrapBlockEnd:P}},f)),f.left+=c,f.right+=c,f.top+=d,f.bottom+=d,f}setFloatAreaDimensions(t,e,i,n,r,o,s){if(e!==this.floatReference)return this.getParent(e).setFloatAreaDimensions(t,e,i,n,r,o,s);let a=this.toLogicalFloatSides(i);if(a[0]==="snap-block"){if(!s["block-start"]&&!s["block-end"])return null}else if(a[0].includes("block")&&!s[a[0]])return null;let h=a.find(S=>S.includes("inline")&&s[S==="inline-start"?"inline-end":"inline-start"]),l=a.find(S=>S.includes("block")),c=!0,d=this.getLimitValue("block-start",h,t.layoutContext,t.clientLayout,void 0,c,t),p=this.getLimitValue("block-end",h,t.layoutContext,t.clientLayout,void 0,c,t),f=this.getLimitValue("inline-start",l,t.layoutContext,t.clientLayout,void 0,c,t),g=this.getLimitValue("inline-end",l,t.layoutContext,t.clientLayout,void 0,c,t),m=t.vertical?t.originX:t.originY,v=t.vertical?t.originY:t.originX;t.isFootnote||(d=t.vertical?Math.min(d,t.left+t.getInsetLeft()+t.width+t.getInsetRight()+m):Math.max(d,t.top+m),p=t.vertical?Math.max(p,t.left+m):Math.min(p,t.top+t.getInsetTop()+t.height+t.getInsetBottom()+m));function b(S,N){let L=S(t.bands,N);return L?(t.vertical&&(L=Wd(L)),d=t.vertical?Math.min(d,L.x2):Math.max(d,L.y1),p=t.vertical?Math.max(p,L.x1):Math.min(p,L.y2),!0):o}let x,C,y,k;if(r){let S=t.vertical?ys(new Dt(p,f,d,g)):new Dt(f,d,g,p);if((a[0]==="block-start"||a[0]==="snap-block"||a[0]==="inline-start"||a[0]==="snap-inline")&&!b(By,S)||(a[0]==="block-end"||a[0]==="snap-block"||a[0]==="inline-end"||a[0]==="snap-inline")&&!b(My,S)||(t.isFootnote&&n!==null&&isFinite(n)&&a[0]==="block-end"&&(t.vertical?d=Math.min(d,n):d=Math.max(d,n)),y=(p-d)*t.getBoxDir(),t.isFootnote&&this.footnoteMaxBlockSize!=null&&(y=Math.min(y,this.footnoteMaxBlockSize),t.vertical?d=p+y:d=p-y),x=Math.max(0,y-t.getInsetBefore()-t.getInsetAfter()),k=(g-f)*t.getInlineDir(),C=k-t.getInsetStart()-t.getInsetEnd(),!o&&(x<=0||C<=0)))return null}else{let S=t.getContentBlockMarginAfter();x=Math.max(0,t.computedBlockSize+Math.min(0,S)),y=x+t.getInsetBefore()+t.getInsetAfter();let N=(p-d)*t.getBoxDir();if(a[0]==="snap-block"){if(n===null)a[0]="block-start";else{let I=this.container.getPaddingRect(),D=this.container.getBoxDir()*(n-(this.container.vertical?I.x2:I.y1)),J=this.container.getBoxDir()*((this.container.vertical?I.x1:I.y2)-n-y);D<=J?a[0]="block-start":a[0]="block-end"}if(!s[a[0]])if(s["block-end"])a[0]="block-end";else return null}else if(a[0]==="snap-inline")if(n===null)a[0]="inline-start";else if(s["inline-start"])a[0]="inline-start";else if(s["inline-end"])a[0]="inline-end";else return null;if(!o&&N<y)return null;a[0]==="inline-start"||a[0]==="inline-end"||a[1]?C=fh(t.clientLayout,t.element,["fit-content inline size"])["fit-content inline size"]:t.adjustContentRelativeSize?C=t.getContentInlineSize():C=t.vertical?t.height:t.width,k=C+t.getInsetStart()+t.getInsetEnd();let L=(g-f)*t.getInlineDir();if(!o&&L<k)return null}if(d-=m,p-=m,f-=v,g-=v,a.some(S=>S==="inline-start"||S==="snap-inline")||a.length===1&&(a[0]==="block-start"||a[0]==="snap-block")?t.setInlinePosition(f,C):(a.some(S=>S==="inline-end")||a.length===1&&a[0]==="block-end")&&t.setInlinePosition(g-k*t.getInlineDir(),C),a.some(S=>S==="block-start"||S==="snap-block")||a.length===1&&(a[0]==="inline-start"||a[0]==="snap-inline"))t.setBlockPosition(d,x);else if(a.some(S=>S==="block-end")||a.length===1&&a[0]==="inline-end"){let S=p-y*t.getBoxDir();t.setBlockPosition(S,x)}return a.join(" ")}reattachFloatFragments(){let t=this.container.element&&this.container.element.parentNode;t&&this.floatFragments.forEach(e=>{t.appendChild(e.area.element)})}getMaxReachedAfterEdge(){let t=this.container.vertical;return this.floatFragments.reduce((e,i)=>{let n=i.getOuterRect();return t?Math.min(e,n.x1):Math.max(e,n.y2)},t?1/0:0)}getBlockEndEdgeOfBlockStartFloats(t){let e=this.container.vertical,i=NaN;this.floatFragments.filter(r=>r.floatSide.includes("block-start")).filter(r=>{if(t===void 0||!isFinite(t))return!0;let o=r.getOuterRect();return e?o.y1<=t&&t<=o.y2:o.x1<=t&&t<=o.x2}).forEach(r=>{let o=r.getOuterRect(),s=e?o.x1:o.y2;i=isFinite(i)?e?Math.min(i,s):Math.max(i,s):s});let n=this.attachedParent;if(n){let r=n.getBlockEndEdgeOfBlockStartFloats(t);isFinite(r)&&(i=isFinite(i)?e?Math.min(i,r):Math.max(i,r):r)}return i}getBlockStartEdgeOfBlockEndFloats(t){let e=this.container.vertical,i=NaN;this.floatFragments.filter(r=>r.floatSide.includes("block-end")).filter(r=>{if(t===void 0||!isFinite(t))return!0;let o=r.getOuterRect();return e?o.y1<=t&&t<=o.y2:o.x1<=t&&t<=o.x2}).forEach(r=>{let o=r.getOuterRect(),s=e?o.x2:o.y1;i=isFinite(i)?e?Math.max(i,s):Math.min(i,s):s});let n=this.attachedParent;if(n){let r=n.getBlockStartEdgeOfBlockEndFloats(t);isFinite(r)&&(i=isFinite(i)?e?Math.max(i,r):Math.min(i,r):r)}return i}getPageFloatClearEdge(t,e){let i=c=>{let d=this.toLogicalFloatSides(c),p=d[0];return t==="both"?p==="block-end":t==="inline-start"?d.includes("inline-end")||p==="block-end":t==="inline-end"?d.includes("inline-start")||p==="block-start"||p==="block-end":!1};function n(c){return d=>!i(d.float.floatSide)&&c.isAnchorAlreadyAppeared(d.float.getId())}function r(c,d){return i(c.floatSide)?!1:c.continuations.some(n(d))}let o=e.getPaddingRect(),s=e.vertical?o.x1:o.y2,a=this;for(;a;){if(a.state.floatsDeferredToNext.some(n(a)))return s;a=a.attachedParent}function h(c){return c.floatFragments.some(d=>r(d,c))||c.state.children.some(d=>h(d))}if(t==="column"||t==="region"||t==="page"){for(a=this;a;a=a.attachedParent)if(a.floatReference===t){if(h(a))return s;break}}let l=this.getLimitValue("block-start",null,e.layoutContext,e.clientLayout,r);return this.getLimitValue("block-end",null,e.layoutContext,e.clientLayout,r)*e.getBoxDir()<s*e.getBoxDir()?s:l}getPageFloatPlacementCondition(t,e,i){if(t.floatReference!==this.floatReference)return this.getParent(t.floatReference).getPageFloatPlacementCondition(t,e,i);let n={"block-start":!0,"block-end":!0,"inline-start":!0,"inline-end":!0};if(!i)return n;let r=this.toLogicalFloatSides(e)[0],o=this.toLogical(i),s;o==="all"?s=["block-start","block-end","inline-start","inline-end"]:o==="both"?s=["inline-start","inline-end"]:o==="same"?r==="snap-block"?s=["block-start","block-end"]:s=[r]:s=[o];let a=t.getOrder();function h(d){return p=>(!d||p.floatSide.includes(d))&&p.getOrder()<a}function l(d,p){return d.state.children.some(f=>f.floatFragments.some(h(p))||l(f,p))}function c(d,p){let f=d.parent;return!!f&&(f.floatFragments.some(h(p))||c(f,p))}if(i==="column"||i==="region"||i==="page"){for(let d=this;d;d=d.attachedParent)if(d.floatReference===i){(d.floatFragments.some(h(null))||l(d,null))&&(n["block-start"]=!1,n["block-end"]=!1,n["inline-start"]=!1,n["inline-end"]=!1);break}return n}return s.forEach(d=>{switch(d){case"block-start":n[d]=!l(this,d);break;case"block-end":n[d]=!c(this,d);break;case"inline-start":case"inline-end":n[d]=!this.floatFragments.some(h(d));break;default:throw new Error(`Unexpected side: ${d}`)}}),n}isColumnFullWithPageFloats(t){let e=t.layoutContext,i=t.clientLayout,n=this.getLimitValuesInner(e,i);for(let o=this.attachedParent;o;o=o.attachedParent){let s=o.getLimitValuesInner(e,i);t.vertical?(s.right<n.right&&(n.right=s.right,n.floatMinWrapBlockStart=s.floatMinWrapBlockStart),s.left>n.left&&(n.left=s.left,n.floatMinWrapBlockEnd=s.floatMinWrapBlockEnd)):(s.top>n.top&&(n.top=s.top,n.floatMinWrapBlockStart=s.floatMinWrapBlockStart),s.bottom<n.bottom&&(n.bottom=s.bottom,n.floatMinWrapBlockEnd=s.floatMinWrapBlockEnd))}let r=Math.max(n.floatMinWrapBlockStart,n.floatMinWrapBlockEnd);return(t.vertical?n.right-n.left:n.bottom-n.top)<=r}getMaxBlockSizeOfPageFloats(){let t=this.container.vertical;return this.floatFragments.length?Math.max.apply(null,this.floatFragments.map(e=>{let i=e.area;return t?i.width:i.height})):0}},sr=[],Wn=class{static register(t){sr.push(t)}findByNodeContext(t){for(let e=sr.length-1;e>=0;e--){let i=sr[e];if(i.appliesToNodeContext(t))return i}throw new Error(`No PageFloatLayoutStrategy found for ${t}`)}findByFloat(t){for(let e=sr.length-1;e>=0;e--){let i=sr[e];if(i.appliesToFloat(t))return i}throw new Error(`No PageFloatLayoutStrategy found for ${t}`)}},rb=class{appliesToNodeContext(t){return Li(t.floatReference)}appliesToFloat(t){return!0}createPageFloat(t,e,i){let n=t.floatReference,r=t.floatSide,o=t.toNodePosition(),s=!!e.generatingNodePosition;return i.resolveFloatReferenceFromColumnSpan(n,t.columnSpan,t).thenAsync(a=>{n=a,e.flowName;let h=new Zp(o,n,r,t.clearSide,e.flowName,t.floatMinWrapBlock);if(h.insidePageFloatArea=s,s){let l=e.generatingNodePosition;l&&(h.parentPageFloat=e.findPageFloatByNodePosition(l))}return e.addPageFloat(h),F(h)})}createPageFloatFragment(t,e,i,n,r){let o=t[0].float;return new Kp(o.floatReference,e,i,t,n,r)}findPageFloatFragment(t,e){return e.findPageFloatFragment(t)}adjustPageFloatArea(t,e,i){return F(void 0)}forbid(t,e){}};Wn.register(new rb);var nf="data-vivliostyle-footnote-first-ref",rf="data-vivliostyle-footnote-referenced";function Es(t,e){return!!(t&&t.match(new RegExp(`(^|\\s)${e}($|\\s)`)))}function Et(t){if(t.localName!=="aside")return!1;if(Es(t.getAttribute("role"),"doc-footnote"))return!0;let e=t.getAttributeNS("http://www.idpf.org/2007/ops","type")||t.getAttribute("epub:type");return Es(e,"footnote")}function qt(t){if(t.localName!=="a")return!1;if(Es(t.getAttribute("role"),"doc-noteref"))return!0;let e=t.getAttributeNS("http://www.idpf.org/2007/ops","type")||t.getAttribute("epub:type");return Es(e,"noteref")}function gh(t,e){if(!qt(t))return null;let i=t.getAttribute("href")||t.getAttributeNS("http://www.w3.org/1999/xlink","href");if(!i)return null;let n=fs(i,e);return n==="#"?null:n}function of(t,e,i){let n=gh(t,e);if(!n)return null;let r=i(n);return r&&Et(r)?r:null}function ob(t,e,i,n,r){if(r.value)return;let o=t.getElementsByTagName("a");for(let s=0;s<o.length;s++){let a=o.item(s),h=gh(a,e);!h||n.has(h)||n.set(h,i(a))}r.value=!0}function Uu(t,e,i,n,r){if(t.localName!=="a"||!qt(t))return!0;let o=gh(t,e);if(!o)return!0;ob(t.ownerDocument,e,i,n,r);let s=n.get(o);return s==null||i(t)===s}function mh(t,e){let i=e.getProp(t,"footnote-display");if(i)return i;let n=e.getProp(t,"display");return n?.value===w.inline?e.createCascadeValue(w.inline,n.priority):null}function sb(t,e,i,n,r,o,s){if(t.namespaceURI!=="http://www.pyroxy.com/ns/shadow"||t.localName!=="include"||!t.classList.contains("-vivliostyle-footnote-content"))return e;let a=i?.owner;if(!(a instanceof Element)||!qt(a))return e;let h=of(a,n,r);if(!h)return e;let l=a.getAttribute(o);l?(t.setAttribute(o,l),h.setAttribute(o,l)):(t.removeAttribute(o),h.removeAttribute(o));let c=s.getStyle(h);if(!c)return e;let d={...e},p=mh(c,s),f=s.getProp(c,"footnote-policy"),g=s.getStyleMap(c,"_pseudos"),m=g?.after;if(p&&(d["footnote-display"]=p),f&&(d["footnote-policy"]=f),m){let v=s.getMutableStyleMap(d,"_pseudos");v.after={...m}}return d}function ab(t,e,i,n,r){if(!(i?.type===st.ROOTED&&Et(t)))return e;let o=r.getStyle(t);if(!o)return e;let s={...e},a=mh(o,r),h=r.getProp(o,"footnote-policy"),l=r.getStyleMap(o,"_pseudos"),c=l?.["footnote-marker"],d=r.getProp(c,"content"),p=r.getProp(c,"list-style-position");if(a&&(s["footnote-display"]=a),h&&(s["footnote-policy"]=h),d&&p?.evaluate(n,"list-style-position")===w.outside){let f=r.filterFootnoteMarkerContent(d,t);s["--viv-marker-content"]=r.createCascadeValue(f,0),s.display=r.createCascadeValue(_("list-item"),0),s["list-style-position"]=r.createCascadeValue(w.outside,0),s["list-style-type"]=r.createCascadeValue(w.none,0),s["list-style-image"]=r.createCascadeValue(w.none,0)}return s}function lb(t,e,i){var n,r;let o=e?.type===st.ROOTED&&Et(t)?i.getStyle(t):null;return{sourceStyle:o,footnoteDisplay:((n=mh(o,i))==null?void 0:n.value)||null,footnotePolicy:((r=i.getProp(o,"footnote-policy"))==null?void 0:r.value)||null}}function sf(t,e){if(t instanceof j){let i=t.expr.evaluate(e);return typeof i=="string"?new K(i):typeof i=="number"?new K(String(i)):t}return t instanceof ee?new ee(t.values.map(i=>sf(i,e))):t}function hb(t,e,i){let n=t?.["_footnote-marker-content"];n&&(e["--viv-marker-content"]=sf(n.value,i))}function ub(t){let e=t.getElementsByTagName("a"),i=new Set;for(let n=0;n<e.length;n++){let r=e.item(n);if(!qt(r)||!(r instanceof HTMLAnchorElement)||!r.hash||r.href!==r.baseURI.replace(/#.*$/,"")+r.hash)continue;let o=r.hash.substring(1),s=t.getElementById(o);if(s&&Et(s)){let a=r.baseURI.replace(/#.*$/,"")+r.hash;i.has(a)||(i.add(a),r.setAttribute(nf,"true")),s.setAttribute(rf,"true")}}}Ft("PREPROCESS_SINGLE_DOCUMENT",ub);var cb=Kp,db=.1,jr=class af extends Zp{constructor(e,i,n,r,o,s){super(e,i,"block-end",null,n,o),u(this,"footnotePolicy",r),u(this,"policyAnchorNode",s)}isAllowedToPrecede(e){return!(e instanceof af)}};function pb(t){let e=t.nodeType===Node.ELEMENT_NODE?t:t.parentElement;for(;e;){if(/^(p|li|dd|dt|td|th|blockquote)$/i.test(e.localName)&&!e.querySelector("br"))return e;e=e.parentElement}return t}function lf(t){return t?-1:1}function cl(t,e){return e?t.right:t.top}function yh(t,e){return e?t.left:t.bottom}function hf(t){return{left:t.left,top:t.top,right:t.right,bottom:t.bottom,width:t.width,height:t.height}}function uf(t,e){let i=hf(t.getBoundingClientRect());return dh(i,e),i.right<i.left||i.bottom<i.top?null:i}function dl(t,e){let i=Array.from(t,hf);return Ps(i,e),i.filter(n=>n.right>n.left&&n.bottom>n.top)}function cf(t,e){return t.length?e?Math.min(...t.map(i=>i.left)):Math.max(...t.map(i=>i.bottom)):NaN}function fb(t,e){if(!t.length)return NaN;let i=lf(e),n=t.reduce((r,o)=>cl(o,e)*i<cl(r,e)*i?o:r);return yh(n,e)}function gb(t,e){if(!t)return NaN;if(t.nodeType===Node.ELEMENT_NODE){let o=uf(t,e);return o?yh(o,e):NaN}let i=t.textContent||"";if(!i.length)return NaN;let n=t.ownerDocument.createRange();n.setStart(t,0),n.setEnd(t,i.length);let r=dl(n.getClientRects(),e);return cf(r,e)}function mb(t,e){let i=t.viewNode;if(!i)return NaN;if(i.nodeType===Node.ELEMENT_NODE){let a=i;if(t.after||!t.inline){let l=uf(a,e);if(l)return t.after?yh(l,e):cl(l,e)}let h=dl(a.getClientRects(),e);return fb(h,e)}let n=i.textContent||"";if(!n.length)return NaN;let r=t.offsetInNode;t.after&&(r+=n.length),r=Math.max(0,Math.min(r,n.length-1));let o=i.ownerDocument.createRange();o.setStart(i,r),o.setEnd(i,r+1);let s=dl(o.getClientRects(),e);return cf(s,e)}var Wu=class extends cb{constructor(t,e,i,n){super(t,"block-end",null,e,i,n)}getOrder(){return 1/0}shouldBeStashedBefore(t){return t instanceof jr?!0:this.getOrder()<t.getOrder()}},yb=class{constructor(t,e,i){u(this,"footnote",t),u(this,"vertical",i),u(this,"anchorEdge"),this.anchorEdge=gb(e,i)}allowLayout(t){if(!isNaN(this.anchorEdge)){let i=mb(t,this.vertical);if(!isNaN(i)){let n=lf(this.vertical);return i*n<this.anchorEdge*n-db}}let e=t.toNodePosition();return!Di(e,this.footnote.nodePosition)}},vb=class{appliesToNodeContext(t){return t.floatSide==="footnote"}appliesToFloat(t){return t instanceof jr}createPageFloat(t,e,i){var n;let r=Ne.REGION,o=e.getPageFloatLayoutContext(r);e.getPageFloatLayoutContext(Ne.PAGE).hasSameContainerAs(o)&&(r=Ne.PAGE);let s=!!e.generatingNodePosition;s&&r!==Ne.PAGE&&(r=Ne.PAGE);let a=t.toNodePosition();e.flowName;let h=t.sourceNode,l=(n=t.shadowContext)==null?void 0:n.owner;l instanceof Element&&qt(l)&&(h=l),h=pb(h);let c=new jr(a,r,e.flowName,t.footnotePolicy,t.floatMinWrapBlock,h);if(c.insidePageFloatArea=s,s){let d=e.generatingNodePosition;d&&(c.parentPageFloat=e.findPageFloatByNodePosition(d))}return e.addPageFloat(c),F(c)}createPageFloatFragment(t,e,i,n,r){let o=t[0].float;return new Wu(o.floatReference,t,n,r)}findPageFloatFragment(t,e){let i=e.getPageFloatLayoutContext(t.floatReference),n=i.container.element,r=i.floatFragments.filter(o=>o instanceof Wu&&(t.floatReference!==Ne.REGION||!o.area.parentElement||o.area.parentElement===n));return r.find(o=>o.hasFloat(t))||r[0]||null}adjustPageFloatArea(t,e,i){t.isFootnote=!0,t.adjustContentRelativeSize=!1;let n=t.element;return i.layoutContext.applyFootnoteStyle(e.vertical,i.layoutContext.nodeContext&&i.layoutContext.nodeContext.direction==="rtl",n).thenAsync(r=>{var o,s;if(t.vertical=r,t.convertPercentageSizesToPx(n),i.setComputedInsets(n,t),i.setComputedWidthAndHeight(n,t),((o=i.clientLayout.getElementComputedStyle(n))==null?void 0:o.boxSizing)==="border-box"){let h=t.vertical?t.paddingLeft+t.paddingRight+t.borderLeft+t.borderRight:t.paddingTop+t.paddingBottom+t.borderTop+t.borderBottom,l=t.vertical?["max-width","min-width","width"]:["max-height","min-height","height"],c=getComputedStyle(n);for(let d of l){let p=c.getPropertyValue(d);if(p&&p!=="none"){let f=parseFloat(p);isNaN(f)||R(n,d,`${Math.max(0,f-h)}px`)}}R(n,"box-sizing","content-box")}let a=i.pageFloatLayoutContext;for(;a;){if(a.ignoreFootnoteAreaMaxHeight){R(n,"max-block-size",""),R(n,t.vertical?"max-width":"max-height","");break}a=(s=a.parent)!=null?s:null}return F(void 0)})}forbid(t,e){let i=t;if(i.footnotePolicy===w.line){let n=e.collectPageFloatAnchors()[i.getId()]||null,r=new yb(i,n,e.getPageFloatLayoutContext(i.floatReference).container.vertical);e.addLayoutConstraint(r,i.floatReference)}}};Wn.register(new vb);var vh=class{calculateOffset(t){return zn(this.getNodeContext(),t.collectElementsOffset())}breakPositionChosen(t){}getNodeContext(){return null}};function zn(t,e){return{current:e.reduce((i,n)=>i+n.calculateOffset(t),0),minimum:e.reduce((i,n)=>i+n.calculateMinimumOffset(t),0)}}var po=class extends vh{constructor(t,e,i,n){super(),u(this,"position",t),u(this,"breakOnEdge",e),u(this,"overflows",i),u(this,"computedBlockSize",n),u(this,"overflowIfRepetitiveElementsDropped"),u(this,"isEdgeUpdated",!1),u(this,"edge",0),this.overflowIfRepetitiveElementsDropped=i}findAcceptableBreak(t,e){return this.updateOverflows(t),e<this.getMinBreakPenalty()?null:t.findEdgeBreakPosition(this)}getMinBreakPenalty(){if(!this.isEdgeUpdated)throw new Error("EdgeBreakPosition.prototype.updateEdge not called");let t=this.isFirstContentOfRepetitiveElementsOwner()&&!this.overflowIfRepetitiveElementsDropped;return(ws(this.breakOnEdge)?1:0)+(this.overflows&&!t?3:0)+(this.position.parent?this.position.parent.breakPenalty:0)}updateEdge(t){var e;let i=t.calculateClonedPaddingBorder(this.position);if(this.edge=Tn(this.position,t.clientLayout,0,t.vertical)+i,!this.position.after&&!this.position.inline){let n=t.parseComputedLength(t.clientLayout.getElementComputedStyle(this.position.viewNode).marginBlockStart);this.edge-=(t.vertical?-1:1)*n}else if(this.position.after&&((e=this.position.shadowContext)==null?void 0:e.root.id)==="table-cell"){let n=t.element.parentElement,r=n?.closest("table, [style*='display: table;']");if(r){let o=r.style.borderCollapse==="collapse",s=0,a=0;for(let h=n;h;h=h.parentElement){let l=t.clientLayout.getElementComputedStyle(h);if((h===n||h===r&&!o)&&(s+=t.parseComputedLength(l.paddingBlockEnd)),h===r&&!o&&(s+=t.parseComputedLength(l.borderSpacing.replace(/^\S+ (\S+)$/,"$1"))),o?a=Math.max(a,t.parseComputedLength(l.borderBlockEndWidth)):(h===n||h===r)&&(a+=t.parseComputedLength(l.borderBlockEndWidth)),h===r)break}this.edge+=(t.vertical?-1:1)*(s+a)}}this.isEdgeUpdated=!0}updateOverflows(t){this.isEdgeUpdated||this.updateEdge(t);let e=this.edge,i=this.calculateOffset(t);this.overflowIfRepetitiveElementsDropped=t.isOverflown(e+(t.vertical?-1:1)*i.minimum),this.overflows=this.position.overflow=t.isOverflown(e+(t.vertical?-1:1)*i.current)}getNodeContext(){return this.position}isFirstContentOfRepetitiveElementsOwner(){let t=this.getNodeContext();if(!t||!t.parent)return!1;let{formattingContext:e}=t.parent;if(!rn.isInstanceOfRepetitiveElementsOwnerFormattingContext(e))return!1;let i=e.getRepetitiveElements();return i?i.isFirstContentNode(t):!1}},ar=class{find(t){let e=zt("RESOLVE_LAYOUT_PROCESSOR");for(let i=0;i<e.length;i++){let n=e[i](t);if(n)return n}throw new Error(`No processor found for a formatting context: ${t.getName()}`)}},On=class{layout(t,e,i){let n=e.asFloatNodeContext(t);return n?e.layoutFloatOrFootnote(n):e.isBreakable(t)?e.layoutBreakableBlock(t):e.layoutUnbreakable(t)}createEdgeBreakPosition(t,e,i,n){return new po(t.copy(),e,i,n)}startNonInlineElementNode(t){return!1}afterNonInlineElementNode(t,e){return!1}clearOverflownViewNodes(t,e,i,n){var r;if(!i.viewNode||!i.viewNode.parentNode||i.shadowType===wi.ShadowType.ROOTLESS&&Ln(i))return;let o=i.viewNode;o=(r=Wp(o))!=null?r:o;let s=o.parentNode;Hp(s,o),n&&o.remove()}finishBreak(t,e,i,n){let r=i||e.viewNode!=null&&e.viewNode.nodeType==1&&!e.after;return t.clearOverflownViewNodes(e,r),n&&t.layoutContext.processFragmentedBlockEdge(e),F(!0)}},ra=class{constructor(t){u(this,"parent",t),u(this,"formattingContextType","Block")}getName(){return"Block formatting context (BlockFormattingContext)"}isFirstTime(t,e){return e}getParent(){return this.parent}saveState(){}restoreState(t){}},wh=new On,wb=sl.isInstanceOfBlockFormattingContext;Ft("RESOLVE_FORMATTING_CONTEXT",t=>{let e=t.parent;return!e||t.formattingContext!==e.formattingContext?null:t.establishesBFC?new ra(e.formattingContext):null});Ft("RESOLVE_LAYOUT_PROCESSOR",t=>t instanceof ra?wh:null);var bh=class{constructor(){u(this,"initialBreakPositions",null),u(this,"initialStateOfFormattingContext",null),u(this,"initialPosition",null),u(this,"initialFragmentLayoutConstraints",null)}layout(t,e){return this.prepareLayout(t,e),this.tryLayout(t,e)}tryLayout(t,e){let i=V("AbstractLayoutRetryer.tryLayout");this.saveState(t,e);let n=this.resolveLayoutMode(t);return n.doLayout(t,e).then(r=>{let o=n.accept(r,e);o=n.postLayout(r,this.initialPosition,e,o),o?i.finish(r):(this.initialPosition,this.clearNodes(this.initialPosition),this.restoreState(t,e),this.tryLayout(this.initialPosition,e).thenFinish(i))}),i.result()}prepareLayout(t,e){}clearNodes(t){var e,i;let n=(i=t.viewNode)!=null?i:(e=t.parent)==null?void 0:e.viewNode;if(!n)return;let r;for(;r=n.lastChild;)n.removeChild(r);let o;for(;o=n.nextSibling;)o.remove()}saveState(t,e){this.initialPosition=t.copy(),this.initialBreakPositions=[].concat(e.breakPositions),this.initialFragmentLayoutConstraints=[].concat(e.fragmentLayoutConstraints),this.initialStateOfFormattingContext=t.formattingContext.saveState()}restoreState(t,e){e.breakPositions=this.initialBreakPositions,e.fragmentLayoutConstraints=this.initialFragmentLayoutConstraints,t.formattingContext.restoreState(this.initialStateOfFormattingContext)}};function bb(t){return t.nodeContext!==null?t:null}function xb(t){return Yi(t.nodeContext)!==null?t:null}var Sb=class{initialState(t){return{nodeContext:t,atUnforcedBreak:!1,break:!1}}startNonDisplayableNode(t){}afterNonDisplayableNode(t){}startIgnoredTextNode(t){}afterIgnoredTextNode(t){}startNonElementNode(t){}afterNonElementNode(t){}startInlineElementNode(t){}afterInlineElementNode(t){}startNonInlineElementNode(t){}afterNonInlineElementNode(t){}finish(t){}},pl=class{constructor(t,e){u(this,"strategy",t),u(this,"layoutContext",e)}iterate(t){let e=this.strategy,i=e.initialState(t),n=V("LayoutIterator");return n.loopWithFrame(r=>{for(;;){let o=bb(i);if(!o)break;let s=this.step(o);if(s.isPending()){s.then(a=>{i.break?r.breakLoop():(i.nodeContext=a,r.continueLoop())});return}else if(i.break){r.breakLoop();return}else i.nodeContext=s.get()}e.finish(i),r.breakLoop()}).then(()=>{n.finish(i.nodeContext)}),n.result()}step(t){let e=this.strategy,i,n=xb(t);return n?n.nodeContext.viewNode.nodeType!==1?Ee(n.nodeContext.viewNode,n.nodeContext.whitespace)?n.nodeContext.after?i=e.afterIgnoredTextNode(n):i=e.startIgnoredTextNode(n):n.nodeContext.after?i=e.afterNonElementNode(n):i=e.startNonElementNode(n):n.nodeContext.inline?n.nodeContext.after?i=e.afterInlineElementNode(n):i=e.startInlineElementNode(n):n.nodeContext.after?i=e.afterNonInlineElementNode(n):i=e.startNonInlineElementNode(n):t.nodeContext.after?i=e.afterNonDisplayableNode(t):i=e.startNonDisplayableNode(t),(i&&i.isPending()?i:F(!0)).thenAsync(()=>t.break?F(null):this.layoutContext.nextInTree(t.nodeContext,t.atUnforcedBreak))}},Ir=class extends Sb{constructor(t){super(),u(this,"leadingEdge",t)}startNonInlineBox(t){}endEmptyNonInlineBox(t){}endNonInlineBox(t){}initialState(t){return{nodeContext:t,atUnforcedBreak:!!this.leadingEdge&&t.after,break:!1,leadingEdge:this.leadingEdge,breakAtTheEdge:null,onStartEdges:!1,leadingEdgeContexts:[],lastAfterNodeContext:null}}processForcedBreak(t,e){let i=!t.leadingEdge&&Ye(t.breakAtTheEdge);return i&&((t.nodeContext=t.leadingEdgeContexts[0]||t.nodeContext).viewNode.remove(),e.pageBreakType=t.breakAtTheEdge),i}saveEdgeAndProcessOverflow(t,e){let i=e.checkOverflowAndSaveEdgeAndBreakPosition(t.lastAfterNodeContext,null,!0,t.breakAtTheEdge);return i&&(t.nodeContext=(t.lastAfterNodeContext||t.nodeContext).modify(),t.nodeContext.overflow=!0),i}processLayoutConstraint(t,e,i){let n=t.nodeContext,r=!e.allowLayout(n);return r&&(i.checkOverflowAndSaveEdgeAndBreakPosition(t.lastAfterNodeContext,null,!1,t.breakAtTheEdge),n=t.nodeContext=n.modify(),n.overflow=!0),r}startNonElementNode(t){t.onStartEdges=!1}startNonInlineElementNode(t){return t.leadingEdgeContexts.push(t.nodeContext.copy()),t.breakAtTheEdge=nt(t.breakAtTheEdge,t.nodeContext.breakBefore),t.onStartEdges=!0,this.startNonInlineBox(t)}afterNonInlineElementNode(t){let e,i;return t.onStartEdges?(e=this.endEmptyNonInlineBox(t),i=e&&e.isPending()?e:F(!0),i=i.thenAsync(()=>(t.break||(t.leadingEdgeContexts=[],t.leadingEdge=!1,t.atUnforcedBreak=!1,t.breakAtTheEdge=null),F(!0)))):(e=this.endNonInlineBox(t),i=e&&e.isPending()?e:F(!0)),i.thenAsync(()=>(t.break||(t.onStartEdges=!1,t.lastAfterNodeContext=t.nodeContext.copy(),t.breakAtTheEdge=nt(t.breakAtTheEdge,t.nodeContext.breakAfter)),F(!0)))}},fl=[];function Cb(){fl=[]}var To;function Io(t){if(t==="")return 0;if(To===void 0){let i=Intl.Segmenter;To=typeof i=="function"?new i(void 0,{granularity:"grapheme"}):null}if(To===null)return[...t].length;let e=0;for(let i of To.segment(t))e++;return e}var kb=["decimal","disc","square","circle","disclosure-open","disclosure-closed"],Pb=new Set(kb);function Eb(t){return!(t.toLowerCase()==="none"||Pb.has(t))}var Nb=["cyclic","numeric","alphabetic","symbolic","additive","fixed"],Tb=new Set(Nb),Ib=["fixed","extends"],Ab=new Set(Ib);function fo(t){return t instanceof he&&t.name.toLowerCase()!=="none"}function df(t){return t.name}function Fb(t){if(t instanceof he)return Tb.has(t.name);if(t instanceof ee&&t.values.length===2){let e=t.values[0],i=t.values[1];if(e instanceof he){let n=e.name;return Ab.has(n)&&(n==="fixed"&&i instanceof ht||n==="extends"&&fo(i))}}return!1}function Rb(t){let e=pt(t,"system");return e instanceof he&&e.name==="cyclic"}function Lb(t){let e=pt(t,"system");if(e instanceof he&&e.name==="fixed")return!0;if(e instanceof ee&&e.values.length===2){let[i,n]=e.values;return i instanceof he&&i.name==="fixed"&&n instanceof ht}return!1}function Ob(t){let e=pt(t,"system");return e instanceof he?1:e.values[1].num}function Bb(t){let e=pt(t,"system");return e instanceof he&&e.name==="alphabetic"}function Mb(t){let e=pt(t,"system");return e instanceof he&&e.name==="numeric"}function _b(t){let e=pt(t,"system");return e instanceof he&&e.name==="additive"}function Db(t){let e=pt(t,"system");if(e instanceof ee&&e.values.length===2){let[i,n]=e.values;return i instanceof he&&i.name==="extends"&&fo(n)}return!1}function zb(t){let e=pt(t,"system");return df(e.values[1])}function Yt(t){return t instanceof K||t instanceof he}function gi(t){return t instanceof K?t.str:t.name}function pf(t){if(Yt(t))return!0;if(t instanceof ee&&t.values.length===2){let e=t.values[0],i=t.values[1];return Yt(e)&&Yt(i)}return!1}function Vb(t){if(Yt(t))return{prefix:gi(t),suffix:null};{let e=t.values[0],i=t.values[1];return{prefix:gi(e),suffix:gi(i)}}}function Gu(t){return t instanceof ht||t instanceof he&&t.name==="infinite"}function Ns(t,e){return t instanceof ht?t.num:e?-1/0:1/0}function gl(t){if(!(t instanceof ee&&t.values.length===2))return!1;let e=t.values[0],i=t.values[1];if(!(Gu(e)&&Gu(i)))return!1;let n=Ns(e,!0),r=Ns(i,!1);return!(n>r)}function $b(t){return{lower:Ns(t.values[0],!0),upper:Ns(t.values[1],!1)}}function ff(t){return t instanceof he&&t.name==="auto"||gl(t)||t instanceof Be&&t.values.length>=1&&t.values.every(e=>gl(e))}function Hb(t){return t instanceof he?null:(gl(t)?[t]:t.values).map(e=>$b(e))}function Ts(t){if(!(t instanceof ee&&t.values.length===2))return!1;let e=t.values[0],i=t.values[1];return e instanceof ht&&e.num>=0&&Yt(i)||Yt(e)&&i instanceof ht&&i.num>=0}function Is(t){let[e,i]=t.values;return e instanceof ht?[e.num,gi(i)]:[i.num,gi(e)]}function gf(t){return Ts(t)}function Ub(t){let[e,i]=Is(t);return{minLength:e,symbol:i}}function mf(t){return Yt(t)||t instanceof ee&&t.values.length>=1&&t.values.every(e=>Yt(e))}function Wb(t){return Yt(t)?[gi(t)]:t.values.map(e=>gi(e))}function yf(t){if(Ts(t))return!0;if(t instanceof Be&&t.values.length>=1){let e=1/0;for(let i of t.values){if(!Ts(i))return!1;let[n]=Is(i);if(n>=e)return!1;e=n}return!0}return!1}function Gb(t){if(Ts(t)){let[e,i]=Is(t);return[{weight:e,symbol:i}]}else return t.values.map(e=>{let[i,n]=Is(e);return{weight:i,symbol:n}})}var jb=["auto","bullets","numbers","words","spell-out"],Xb=new Set(jb);function qb(t){return t instanceof he&&Xb.has(t.name)||fo(t)}function Yb(t,e){switch(t){case"system":return Fb(e);case"negative":return pf(e);case"prefix":case"suffix":return Yt(e);case"range":return ff(e);case"pad":return gf(e);case"fallback":return fo(e);case"symbols":return mf(e);case"additive-symbols":return yf(e);case"speak-as":return qb(e);default:return!0}}function pt(t,e){var i;let n=(i=t[e])==null?void 0:i.value;return n??null}function Zb(t,e){return e.some(({lower:i,upper:n})=>t>=i&&t<=n)}function Gn(t){let e=t.get("decimal");return e||(e=de.createDecimal(t),t.set("decimal",e)),e}var Qo,es,ts,is,ns,vr,rs,os,Ao,di,vf,Fo,wf,Ro,bf,Lo,xf,Oo,Sf,Bo,Cf,Mo,kf,wt,Ia,Pf,Ef,ju,Xu,Aa,qu,wr,Ve=class Zi{constructor(e,i){ne(this,wt),u(this,"_store"),ne(this,Qo),ne(this,es),ne(this,ts),ne(this,is),ne(this,ns),ne(this,vr),ne(this,rs),ne(this,os),this._store=e;let n=pt(i,"negative");pe(this,Qo,n&&pf(n)?Vb(n):null);let r=pt(i,"prefix");pe(this,es,r&&Yt(r)?gi(r):null);let o=pt(i,"suffix");pe(this,ts,o&&Yt(o)?gi(o):null);let s=pt(i,"range");pe(this,is,s&&ff(s)?Hb(s):null);let a=pt(i,"pad");pe(this,ns,a&&gf(a)?Ub(a):null);let h=pt(i,"fallback");pe(this,vr,h&&fo(h)?df(h):null);let l=pt(i,"symbols");pe(this,rs,l&&mf(l)?Wb(l):null);let c=pt(i,"additive-symbols");pe(this,os,c&&yf(c)?Gb(c):null)}static create(e,i){return Rb(i)?new Ui(e,i):Lb(i)?new Kb(e,i):Bb(i)?new Qb(e,i):Mb(i)?new Yu(e,i):_b(i)?new e0(e,i):Db(i)?new t0(e,i):new Jb(e,i)}static createDecimal(e){var i;return new Yu(e,le(i=Zi,di,vf).call(i))}static createDisc(e){var i;return new Ui(e,le(i=Zi,di,wf).call(i))}static createSquare(e){var i;return new Ui(e,le(i=Zi,di,bf).call(i))}static createCircle(e){var i;return new Ui(e,le(i=Zi,di,xf).call(i))}static createDisclosureOpen(e){var i;return new Ui(e,le(i=Zi,di,Sf).call(i))}static createDisclosureClosed(e){return new Ui(e,le(this,di,Cf).call(this))}static createNone(e){var i;return new Ui(e,le(i=Zi,di,kf).call(i))}static get CHINESE_LONGHAND_NAMES(){return Zu.NAMES}static createChineseLonghand(e,i){return new Zu(e,i)}static createEthiopicNumeric(e){return new n0(e)}_getNegative(){return U(this,Qo)}static _getNegativeFrom(e){return e._getNegative()}_getPrefix(){return U(this,es)}static _getPrefixFrom(e){return e._getPrefix()}_getSuffix(){return U(this,ts)}static _getSuffixFrom(e){return e._getSuffix()}static _getAutoRangeFrom(e){return e._getAutoRange()}_getRange(){return U(this,is)}static _getRangeFrom(e){return e._getRange()}_getPad(){return U(this,ns)}static _getPadFrom(e){return e._getPad()}_getFallback(){var e;return U(this,vr)!=null&&(e=this._store.get(U(this,vr)))!=null?e:null}static _getFallbackFrom(e){return e._getFallback()}_getSymbols(){return U(this,rs)}static _getSymbolsFrom(e){return e._getSymbols()}_getAdditiveSymbols(){return U(this,os)}static _getAdditiveSymbolsFrom(e){return e._getAdditiveSymbols()}static _useNegativeSignFrom(e,i){return e._usesNegativeSign(i)}static _generateInitialRepresentationFrom(e,i){return e._generateInitialRepresentation(i)}format(e){return le(this,wt,wr).call(this,e,new Set)}formatMarker(e){return le(this,wt,Pf).call(this)+this.format(e)+le(this,wt,Ef).call(this)}};Qo=new WeakMap,es=new WeakMap,ts=new WeakMap,is=new WeakMap,ns=new WeakMap,vr=new WeakMap,rs=new WeakMap,os=new WeakMap,Ao=new WeakMap,di=new WeakSet,vf=function(){var t;return(t=U(Ve,Ao))!=null?t:pe(Ve,Ao,{system:new X(_("numeric"),0),symbols:new X(new ee([new K("0"),new K("1"),new K("2"),new K("3"),new K("4"),new K("5"),new K("6"),new K("7"),new K("8"),new K("9")]),0)})},Fo=new WeakMap,wf=function(){var t;return(t=U(Ve,Fo))!=null?t:pe(Ve,Fo,{system:new X(_("cyclic"),0),symbols:new X(new K("\u2022"),0),suffix:new X(new K(" "),0)})},Ro=new WeakMap,bf=function(){var t;return(t=U(Ve,Ro))!=null?t:pe(Ve,Ro,{system:new X(_("cyclic"),0),symbols:new X(new K("\u25AA"),0),suffix:new X(new K(" "),0)})},Lo=new WeakMap,xf=function(){var t;return(t=U(Ve,Lo))!=null?t:pe(Ve,Lo,{system:new X(_("cyclic"),0),symbols:new X(new K("\u25E6"),0),suffix:new X(new K(" "),0)})},Oo=new WeakMap,Sf=function(){var t;return(t=U(Ve,Oo))!=null?t:pe(Ve,Oo,{system:new X(_("cyclic"),0),symbols:new X(new K("\u25BE"),0),suffix:new X(new K(" "),0)})},Bo=new WeakMap,Cf=function(){var t;return(t=U(Ve,Bo))!=null?t:pe(Ve,Bo,{system:new X(_("cyclic"),0),symbols:new X(new K("\u25B8"),0),suffix:new X(new K(" "),0)})},Mo=new WeakMap,kf=function(){var t;return(t=U(Ve,Mo))!=null?t:pe(Ve,Mo,{system:new X(_("cyclic"),0),symbols:new X(new K(""),0),suffix:new X(new K(""),0)})},wt=new WeakSet,Ia=function(){var t;return(t=this._getNegative())!=null?t:{prefix:"-",suffix:null}},Pf=function(){var t;return(t=this._getPrefix())!=null?t:""},Ef=function(){var t;return(t=this._getSuffix())!=null?t:". "},ju=function(){var t;return(t=this._getRange())!=null?t:this._getAutoRange()},Xu=function(){var t;return(t=this._getPad())!=null?t:{minLength:0,symbol:""}},Aa=function(){var t;return(t=this._getFallback())!=null?t:Gn(this._store)},qu=function(t,e){let{minLength:i,symbol:n}=le(this,wt,Xu).call(this);if(i===0||n==="")return t;let{prefix:r,suffix:o}=le(this,wt,Ia).call(this),s=e?Io(r)+(o?Io(o):0):0,a=i-Io(t)-s;if(a<=0)return t;let h=Io(n),l=Math.ceil(a/h);return n.repeat(l)+t},wr=function(t,e){var i,n,r;if(e.has(this))return le(i=Gn(this._store),wt,wr).call(i,t,new Set);if(e.add(this),!Zb(t,le(this,wt,ju).call(this))){let l=le(this,wt,Aa).call(this);return le(n=l,wt,wr).call(n,t,e)}let o=this._usesNegativeSign(t),s=o?Math.abs(t):t,a=this._generateInitialRepresentation(s);if(a===null){let l=le(this,wt,Aa).call(this);return le(r=l,wt,wr).call(r,t,e)}let h=le(this,wt,qu).call(this,a,o);if(o){let{prefix:l,suffix:c}=le(this,wt,Ia).call(this);h=l+h+(c??"")}return h},ne(Ve,di),ne(Ve,Ao,null),ne(Ve,Fo,null),ne(Ve,Ro,null),ne(Ve,Lo,null),ne(Ve,Oo,null),ne(Ve,Bo,null),ne(Ve,Mo,null);var de=Ve,Ui=class extends de{constructor(t,e){super(t,e)}_getAutoRange(){return[{lower:-1/0,upper:1/0}]}_usesNegativeSign(t){return!1}_generateInitialRepresentation(t){let e=this._getSymbols();if(!e||e.length===0)return null;let i=e.length,n=((t-1)%i+i)%i;return e[n]}},ss,Kb=class extends de{constructor(t,e){super(t,e),ne(this,ss),pe(this,ss,Ob(e))}_getAutoRange(){return[{lower:-1/0,upper:1/0}]}_usesNegativeSign(t){return!1}_generateInitialRepresentation(t){var e;let i=this._getSymbols();if(!i||i.length===0)return null;let n=t-U(this,ss);return(e=i[n])!=null?e:null}};ss=new WeakMap;var Jb=class extends de{constructor(t,e){super(t,e)}_getAutoRange(){return[{lower:1,upper:1/0}]}_usesNegativeSign(t){return t<0}_generateInitialRepresentation(t){let e=this._getSymbols();if(!e||e.length===0||t<1)return null;let i=e.length,n=e[(t-1)%i],r=Math.ceil(t/i);return n.repeat(r)}},Qb=class extends de{constructor(t,e){super(t,e)}_getAutoRange(){return[{lower:1,upper:1/0}]}_usesNegativeSign(t){return t<0}_generateInitialRepresentation(t){let e=this._getSymbols();if(!e||e.length<2||t<1)return null;let i=e.length,n="",r=t;for(;r!==0;)r=r-1,n=e[r%i]+n,r=Math.floor(r/i);return n}},Yu=class extends de{constructor(t,e){super(t,e)}_getAutoRange(){return[{lower:-1/0,upper:1/0}]}_usesNegativeSign(t){return t<0}_generateInitialRepresentation(t){let e=this._getSymbols();if(!e||e.length<2)return null;let i=e.length;if(t===0)return e[0];let n="",r=t;for(;r!==0;)n=e[r%i]+n,r=Math.floor(r/i);return n}},e0=class extends de{constructor(t,e){super(t,e)}_getAutoRange(){return[{lower:0,upper:1/0}]}_usesNegativeSign(t){return t<0}_generateInitialRepresentation(t){let e=this._getAdditiveSymbols();if(!e||e.length===0)return null;let i="";if(t===0){let r=e.find(o=>o.weight===0);return r?r.symbol:null}let n=t;for(let r of e){let{weight:o,symbol:s}=r;if(o===0||o>n)continue;let a=Math.floor(n/o);if(i+=s.repeat(a),n-=o*a,n===0)return i}return null}},Ar,kt,Bt,Nf=class extends de{constructor(e,i){super(e,i),ne(this,kt),ne(this,Ar);let n=zb(i),r=n.toLowerCase();r==="disc"||r==="circle"||r==="square"||r==="disclosure-open"||r==="disclosure-closed"?pe(this,Ar,r):pe(this,Ar,n)}_getNegative(){var e;return(e=super._getNegative())!=null?e:de._getNegativeFrom(le(this,kt,Bt).call(this))}_getPrefix(){var e;return(e=super._getPrefix())!=null?e:de._getPrefixFrom(le(this,kt,Bt).call(this))}_getSuffix(){var e;return(e=super._getSuffix())!=null?e:de._getSuffixFrom(le(this,kt,Bt).call(this))}_getAutoRange(){return de._getAutoRangeFrom(le(this,kt,Bt).call(this))}_getRange(){var e;return(e=super._getRange())!=null?e:de._getRangeFrom(le(this,kt,Bt).call(this))}_getPad(){var e;return(e=super._getPad())!=null?e:de._getPadFrom(le(this,kt,Bt).call(this))}_getFallback(){var e;return(e=super._getFallback())!=null?e:de._getFallbackFrom(le(this,kt,Bt).call(this))}_getSymbols(){var e;return(e=super._getSymbols())!=null?e:de._getSymbolsFrom(le(this,kt,Bt).call(this))}_getAdditiveSymbols(){var e;return(e=super._getAdditiveSymbols())!=null?e:de._getAdditiveSymbolsFrom(le(this,kt,Bt).call(this))}_usesNegativeSign(e){return de._useNegativeSignFrom(le(this,kt,Bt).call(this),e)}_generateInitialRepresentation(e){return super._getSymbols()||super._getAdditiveSymbols()?null:de._generateInitialRepresentationFrom(le(this,kt,Bt).call(this),e)}};Ar=new WeakMap,kt=new WeakSet,Bt=function(t=new Set){var e;if(t.has(this))return Gn(this._store);t.add(this);let i=this._store.get(U(this,Ar));return i?i instanceof Nf?le(e=i,kt,Bt).call(e,t):i:Gn(this._store)};var t0=Nf,i0=["simp-chinese-informal","simp-chinese-formal","trad-chinese-informal","trad-chinese-formal","cjk-ideographic"];function lr(t){return{suffix:new X(new K("\u3001"),0),fallback:new X(_("cjk-decimal"),0),range:new X(new ee([new ht(-9999),new ht(9999)]),0),negative:new X(new K(t),0)}}var Fa,Ra,_o,La,Do,ml,Tf,as,vt=class If extends de{constructor(e,i){var n;let{chars:r,descriptors:o}=le(n=If,ml,Tf).call(n).get(i);super(e,o),ne(this,as),pe(this,as,r)}_getAutoRange(){return[{lower:-9999,upper:9999}]}_usesNegativeSign(e){return e<0}_generateInitialRepresentation(e){let i=U(this,as);if(e===0)return i.digits[0];let n=[],r=0,o=e;for(;o>0;)n.unshift({digit:o%10,position:r}),o=Math.floor(o/10),r++;let s=i.informal&&e>=10&&e<=19,a="",h=!1;for(let l=0;l<n.length;l++){let{digit:c,position:d}=n[l],p=l===n.length-1;c===0?!p&&!h&&(h=!0):(h&&(a+=i.digits[0],h=!1),s&&d===1?a+=i.markers[d]:(a+=i.digits[c],d>0&&(a+=i.markers[d])))}return a}};Fa=new WeakMap,Ra=new WeakMap,_o=new WeakMap,La=new WeakMap,Do=new WeakMap,ml=new WeakSet,Tf=function(){var t;return(t=U(vt,Do))!=null?t:pe(vt,Do,new Map([["simp-chinese-informal",{chars:U(vt,Fa),descriptors:lr("\u8D1F")}],["simp-chinese-formal",{chars:U(vt,Ra),descriptors:lr("\u8D1F")}],["trad-chinese-informal",{chars:U(vt,_o),descriptors:lr("\u8CA0")}],["trad-chinese-formal",{chars:U(vt,La),descriptors:lr("\u8CA0")}],["cjk-ideographic",{chars:U(vt,_o),descriptors:lr("\u8CA0")}]]))},as=new WeakMap,ne(vt,ml),ne(vt,Fa,{digits:["\u96F6","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D"],markers:["","\u5341","\u767E","\u5343"],informal:!0}),ne(vt,Ra,{digits:["\u96F6","\u58F9","\u8D30","\u53C1","\u8086","\u4F0D","\u9646","\u67D2","\u634C","\u7396"],markers:["","\u62FE","\u4F70","\u4EDF"],informal:!1}),ne(vt,_o,{digits:["\u96F6","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D"],markers:["","\u5341","\u767E","\u5343"],informal:!0}),ne(vt,La,{digits:["\u96F6","\u58F9","\u8CB3","\u53C3","\u8086","\u4F0D","\u9678","\u67D2","\u634C","\u7396"],markers:["","\u62FE","\u4F70","\u4EDF"],informal:!1}),u(vt,"NAMES",new Set(i0)),ne(vt,Do,null);var Zu=vt,zo,yl,Af,vl,As,wl,bl,ui=class Ki extends de{constructor(e){var i;super(e,le(i=Ki,yl,Af).call(i))}_getAutoRange(){return[{lower:1,upper:1/0}]}_usesNegativeSign(e){return!1}_generateInitialRepresentation(e){if(e<1)return null;if(e===1)return U(Ki,As)[1];let i=[],n=e;for(;n>0;)i.push(n%100),n=Math.floor(n/100);let r=i.length,o="";for(let s=r-1;s>=0;s--){let a=i[s],h=s%2===1,l=s===r-1;if(!(a===0||l&&a===1||h&&a===1)){let c=Math.floor(a/10),d=a%10;o+=U(Ki,vl)[c]+U(Ki,As)[d]}h?a!==0&&(o+=U(Ki,wl)):s!==0&&(o+=U(Ki,bl))}return o}};zo=new WeakMap,yl=new WeakSet,Af=function(){var t;return(t=U(ui,zo))!=null?t:pe(ui,zo,{range:new X(new ee([new ht(1),_("infinite")]),0),suffix:new X(new K("/ "),0)})},vl=new WeakMap,As=new WeakMap,wl=new WeakMap,bl=new WeakMap,ne(ui,yl),ne(ui,zo,null),ne(ui,vl,["","\u1372","\u1373","\u1374","\u1375","\u1376","\u1377","\u1378","\u1379","\u137A"]),ne(ui,As,["","\u1369","\u136A","\u136B","\u136C","\u136D","\u136E","\u136F","\u1370","\u1371"]),ne(ui,wl,"\u137B"),ne(ui,bl,"\u137C");var n0=ui,Le,br,r0=class{constructor(){ne(this,Le),ne(this,br,new Map),pe(this,Le,new Map),U(this,Le).set("none",de.createNone(U(this,Le))),U(this,Le).set("decimal",de.createDecimal(U(this,Le))),U(this,Le).set("disc",de.createDisc(U(this,Le))),U(this,Le).set("square",de.createSquare(U(this,Le))),U(this,Le).set("circle",de.createCircle(U(this,Le))),U(this,Le).set("disclosure-open",de.createDisclosureOpen(U(this,Le))),U(this,Le).set("disclosure-closed",de.createDisclosureClosed(U(this,Le)));for(let t of de.CHINESE_LONGHAND_NAMES)U(this,Le).set(t,de.createChineseLonghand(U(this,Le),t));U(this,Le).set("ethiopic-numeric",de.createEthiopicNumeric(U(this,Le)))}define(t,e,i){if(!Eb(t))return null;let n=de.create(U(this,Le),e),r=i&&U(this,br).get(t);return r&&Vi(i,r)<0||(i?U(this,br).set(t,i):U(this,br).delete(t),U(this,Le).set(t,n)),n}getStyle(t){var e;return(e=U(this,Le).get(t))!=null?e:null}format(t,e){var i;return((i=this.getStyle(t))!=null?i:Gn(U(this,Le))).format(e)}formatMarker(t,e){var i;return((i=this.getStyle(t))!=null?i:Gn(U(this,Le))).formatMarker(e)}};Le=new WeakMap,br=new WeakMap;var Bn=class{constructor(t){u(this,"validator",t),u(this,"success",null),u(this,"failure",null),u(this,"code",0)}isSpecial(){return this.code!=0}markAsStartGroup(){this.code=-1}isStartGroup(){return this.code==-1}markAsEndGroup(){this.code=-2}isEndGroup(){return this.code==-2}markAsStartAlternate(t){this.code=2*t+1}isStartAlternate(){return this.code>0&&this.code%2!=0}markAsEndAlternate(t){this.code=2*t+2}isEndAlternate(){return this.code>0&&this.code%2==0}getAlternate(){return Math.floor((this.code-1)/2)}},Wi=class{constructor(t,e){u(this,"where",t),u(this,"success",e),u(this,"what",-1)}},hr=class Ff{constructor(){u(this,"nodes",[]),u(this,"connections",[]),u(this,"match",[]),u(this,"nomatch",[]),u(this,"error",[]),u(this,"emptyHead",!0)}connect(e,i){for(let n=0;n<e.length;n++)this.connections[e[n]].what=i;e.splice(0,e.length)}clone(){let e=new Ff;for(let i=0;i<this.nodes.length;i++){let n=this.nodes[i],r=new Bn(n.validator);r.code=n.code,e.nodes.push(r)}for(let i=0;i<this.connections.length;i++){let n=this.connections[i],r=new Wi(n.where,n.success);r.what=n.what,e.connections.push(r)}return e.match.push(...this.match),e.nomatch.push(...this.nomatch),e.error.push(...this.error),e}addSpecialToArr(e,i,n){let r=this.nodes.length,o=new Bn(Ku);n>=0?i?o.markAsStartAlternate(n):o.markAsEndAlternate(n):i?o.markAsStartGroup():o.markAsEndGroup(),this.nodes.push(o),this.connect(e,r);let s=new Wi(r,!0),a=new Wi(r,!1);e.push(this.connections.length),this.connections.push(a),e.push(this.connections.length),this.connections.push(s)}endSpecialGroup(){let e=[this.match,this.nomatch,this.error];for(let i=0;i<e.length;i++)this.addSpecialToArr(e[i],!1,-1)}startSpecialGroup(){if(this.nodes.length)throw new Error("invalid call");this.addSpecialToArr(this.match,!0,-1)}endClause(e){this.addSpecialToArr(this.match,!1,e)}startClause(e){if(this.nodes.length)throw new Error("invalid call");let i=new Bn(Ku);i.markAsStartAlternate(e),this.nodes.push(i);let n=new Wi(0,!0),r=new Wi(0,!1);this.nomatch.push(this.connections.length),this.connections.push(r),this.match.push(this.connections.length),this.connections.push(n)}addPrimitive(e){let i=this.nodes.length;this.nodes.push(new Bn(e));let n=new Wi(i,!0),r=new Wi(i,!1);this.connect(this.match,i),this.emptyHead?(this.nomatch.push(this.connections.length),this.emptyHead=!1):this.error.push(this.connections.length),this.connections.push(r),this.match.push(this.connections.length),this.connections.push(n)}isSimple(){return this.nodes.length==1&&!this.nodes[0].isSpecial()}isPrimitive(){return this.isSimple()&&this.nodes[0].validator instanceof ce}addGroup(e,i){if(e.nodes.length==0)return;let n=this.nodes.length;if(i==4&&n==1&&e.isPrimitive()&&this.isPrimitive()){this.nodes[0].validator=this.nodes[0].validator.combine(e.nodes[0].validator);return}for(let o=0;o<e.nodes.length;o++)this.nodes.push(e.nodes[o]);i==4?(this.emptyHead=!0,this.connect(this.nomatch,n)):this.connect(this.match,n);let r=this.connections.length;for(let o=0;o<e.connections.length;o++){let s=e.connections[o];s.where+=n,s.what>=0&&(s.what+=n),this.connections.push(s)}for(let o=0;o<e.match.length;o++)this.match.push(e.match[o]+r);if(i==3&&this.connect(this.match,n),i==2||i==3)for(let o=0;o<e.nomatch.length;o++)this.match.push(e.nomatch[o]+r);else if(this.emptyHead){for(let o=0;o<e.nomatch.length;o++)this.nomatch.push(e.nomatch[o]+r);this.emptyHead=e.emptyHead}else for(let o=0;o<e.nomatch.length;o++)this.error.push(e.nomatch[o]+r);for(let o=0;o<e.error.length;o++)this.error.push(e.error[o]+r);e.nodes=null,e.connections=null}finish(e,i){let n=this.nodes.length;this.nodes.push(e),this.nodes.push(i),this.connect(this.match,n),this.connect(this.nomatch,n+1),this.connect(this.error,n+1);for(let r of this.connections)r.success?this.nodes[r.where].success=this.nodes[r.what]:this.nodes[r.where].failure=this.nodes[r.what];for(let r=0;r<n;r++)if(this.nodes[r].failure==null||this.nodes[r].success==null)throw new Error("Invalid validator state");return this.nodes[0]}},o0=1,Fs=2,Rf=4,ki=8,on=16,jn=32,Vn=64,Rs=128,oi=256,si=512,Ls=1024,Lf=2048,Of=4096,Os=8192,xh=class extends Zt{constructor(){super()}validateForShorthand(t,e){let i=t[e].visit(this);return i?[i]:null}},ce=class Bf extends xh{constructor(e,i,n){super(),u(this,"allowed",e),u(this,"idents",i),u(this,"units",n)}visitEmpty(e){return this.allowed&o0?e:null}visitSlash(e){return this.allowed&Lf?e:null}visitStr(e){return this.allowed&Fs?e:null}visitIdent(e){return this.idents[e.name.toLowerCase()]||(this.allowed&Rf||this.allowed&Vn&&CSS.supports("color",e.name)?e:null)}visitNumeric(e){return e.num==0&&!(this.allowed&si)?e.unit=="%"&&this.allowed&Ls?e:null:e.num<0&&!(this.allowed&oi)?null:this.units[e.unit]?e:null}visitNum(e){return e.num==0?this.allowed&si?e:null:e.num<=0&&!(this.allowed&oi)?null:this.allowed&on?e:null}visitInt(e){return e.num==0?this.allowed&si?e:null:e.num<=0&&!(this.allowed&oi)?null:this.allowed&(jn|on)?e:this.idents[`${e.num}`]||null}visitHexColor(e){return this.allowed&Vn&&/^([0-9A-F]{3,4}|([0-9A-F]{2}){3,4})$/i.test(e.hex)?e:null}visitURL(e){return this.allowed&Rs?e:null}visitURange(e){return this.allowed&Of?e:null}visitSpaceList(e){return null}visitCommaList(e){return null}visitFunc(e){if(e.name.toLowerCase()==="attr"){let i=Ph(e);if(i&&u0(i.type,this.allowed,this.units))return e}if(this.allowed&Vn){if(e.name==="device-cmyk"||e.name==="cmyk")return CSS.supports("color","color(srgb 0 0 0)")&&_d(e)!==null?e:null;if(CSS.supports("color",e.toString()))return e}if(this.allowed&Os){let i=e.visit(new Vd);if(CSS.supports("background-image",i.toString()))return e}return e.name==="calc"&&this.allowed&(ki|on|jn|oi|si|Ls)?e:null}visitExpr(e){return this.allowed&2046?e:null}combine(e){let i={},n={};for(let r in this.idents)i[r]=this.idents[r];for(let r in e.idents)i[r]=e.idents[r];for(let r in this.units)n[r]=this.units[r];for(let r in e.units)n[r]=e.units[r];return new Bf(this.allowed|e.allowed,i,n)}},ie=Object.create(null),s0=on|oi|si,a0=jn|oi|si,Gi=ki|oi|si|Ls;function go(t){let e=Object.create(null);for(let i of t)e[i]=Ae;return e}var oa=go(["%"]),sa=go(["em","ex","ch","rem","lh","rlh","vw","vh","vi","vb","vmin","vmax","pvw","pvh","pvi","pvb","pvmin","pvmax","cm","mm","in","px","pt","pc","q"]),Mf={...sa,...oa},Sh=go(["deg","grad","rad","turn"]),Ch=go(["s","ms"]),kh=go(["hz","khz"]);function l0(t){return t.replace(/\s+/g,"").toLowerCase()}function aa(t){return t.toLowerCase()}function h0(t){if(t instanceof he)switch(t.name.toLowerCase()){case"string":case"raw-string":return{kind:"string"};case"url":return{kind:"url"};case"color":case"integer":case"number":case"length":case"angle":case"time":case"frequency":return{kind:"syntax",syntax:`<${t.name.toLowerCase()}>`};default:return{kind:"unit",unit:aa(t.name)}}if(t instanceof Vt&&t.name.toLowerCase()==="type"){if(t.values.length!==1)return null;let e=l0(t.values[0].stringValue());return e?{kind:"syntax",syntax:e}:null}return null}function Ph(t){var e;if(t.name.toLowerCase()!=="attr"||t.values.length<1||t.values.length>2)return null;let i,n={kind:"string"},r=t.values[0];if(r instanceof he)i=r.name;else if(r instanceof ee){let o=r.values;if(o.length<1||o.length>2||!(o[0]instanceof he)||(i=o[0].name,o.length===2&&(n=h0(o[1]),!n)))return null}else return null;return{attributeName:i,type:n,fallback:(e=t.values[1])!=null?e:null}}function _f(t,e){return!!t[aa(e)]}function vn(t,e){return Object.keys(e).some(i=>_f(t,i))}function u0(t,e,i){switch(t.kind){case"string":return!!(e&Fs);case"url":return!!(e&(Rs|Os));case"unit":return _f(i,t.unit);case"syntax":switch(t.syntax){case"<string>":return!!(e&Fs);case"<url>":return!!(e&(Rs|Os));case"<color>":return!!(e&Vn);case"<integer>":return!!(e&(jn|on|oi|si));case"<number>":return!!(e&(on|jn|oi|si));case"<length>":return vn(i,sa);case"<length-percentage>":return vn(i,Mf);case"<percentage>":return vn(i,oa);case"<angle>":return vn(i,Sh);case"<time>":return vn(i,Ch);case"<frequency>":return vn(i,kh);default:return!1}}return!1}function xl(t){switch(t.kind){case"string":return null;case"url":return null;case"unit":return new ce(Gi,ie,{[aa(t.unit)]:Ae});case"syntax":switch(t.syntax){case"<color>":return new ce(Vn,ie,ie);case"<integer>":return new ce(a0,ie,ie);case"<number>":return new ce(s0,ie,ie);case"<length>":return new ce(Gi,ie,sa);case"<length-percentage>":return new ce(Gi,ie,Mf);case"<percentage>":return new ce(Gi,ie,oa);case"<angle>":return new ce(Gi,ie,Sh);case"<time>":return new ce(Gi,ie,Ch);case"<frequency>":return new ce(Gi,ie,kh);default:return null}}return null}function c0(t){switch(t.kind){case"string":case"url":case"unit":return!0;case"syntax":return t.syntax==="<string>"||t.syntax==="<url>"||!!xl(t)}return!1}function d0(t){switch(t.kind){case"url":return new et("about:invalid");case"string":return new K("");default:return w.unset}}function p0(t,e,i){if(e==null)return null;switch(i.kind){case"string":return new K(e);case"url":return e?new et(e):new et("about:invalid");case"unit":{let n=Mi(t,new xt(`${e.trim()}${aa(i.unit)}`,null),""),r=xl(i);return n&&r?n.visit(r):null}case"syntax":{if(i.syntax==="<string>")return new K(e);if(i.syntax==="<url>")return e?new et(e):new et("about:invalid");let n=Mi(t,new xt(e,null),""),r=xl(i);return n&&r?n.visit(r):null}}return null}var Ku=new ce(0,ie,ie),Eh=class extends xh{constructor(t){super(),u(this,"successTerminal"),u(this,"failureTerminal"),u(this,"first"),this.successTerminal=new Bn(null),this.failureTerminal=new Bn(null),this.first=t.finish(this.successTerminal,this.failureTerminal)}validateList(t,e,i){let n=e?[]:t,r=this.first,o=i,s=null,a=null;for(;r!==this.successTerminal&&r!==this.failureTerminal;){if(o>=t.length){r=r.failure;continue}let h=t[o],l=h;if(r.isSpecial()){let c=!0;r.isStartGroup()?(s?s.push(a):s=[a],a=[]):r.isEndGroup()?s.length>0?a=s.pop():a=null:r.isEndAlternate()?a[r.getAlternate()]="taken":c=a[r.getAlternate()]==null,r=c?r.success:r.failure}else{if(o==0&&!e&&r.validator instanceof Fr&&this instanceof Fr){if(l=new ee(t).visit(r.validator),l){o=t.length,r=r.success;continue}}else if(o==0&&!e&&r.validator instanceof Nh&&this instanceof Fr){if(l=new Be(t).visit(r.validator),l){o=t.length,r=r.success;continue}}else l=h.visit(r.validator);if(!l){r=r.failure;continue}if(l!==h&&t===n){n=[];for(let c=0;c<o;c++)n[c]=t[c]}t!==n&&(n[o-i]=l),o++,r=r.success}}return r===this.successTerminal&&(e?n.length>0:o==t.length)?n:null}validateSingle(t){let e=this.validateList([t],!1,0);return e?e[0]:null}visitEmpty(t){return this.validateSingle(t)}visitSlash(t){return this.validateSingle(t)}visitStr(t){return this.validateSingle(t)}visitIdent(t){return this.validateSingle(t)}visitNumeric(t){return this.validateSingle(t)}visitNum(t){return this.validateSingle(t)}visitInt(t){return this.validateSingle(t)}visitHexColor(t){return this.validateSingle(t)}visitURL(t){return this.validateSingle(t)}visitURange(t){return this.validateSingle(t)}visitSpaceList(t){return null}visitCommaList(t){return null}visitFunc(t){return this.validateSingle(t)}visitExpr(t){return null}},Fr=class extends Eh{constructor(t){super(t)}visitSpaceList(t){let e=this.validateList(t.values,!1,0);return e===t.values?t:e?new ee(e):null}visitCommaList(t){let e=this.first,i=!1;for(;e;){if(e.validator instanceof Nh){i=!0;break}e=e.failure}if(i){let n=this.validateList(t.values,!1,0);return n===t.values?t:n?new Be(n):null}return null}validateForShorthand(t,e){return this.validateList(t,!0,e)}},Nh=class extends Eh{constructor(t){super(t)}visitSpaceList(t){return this.validateSingle(t)}visitCommaList(t){let e=this.validateList(t.values,!1,0);return e===t.values?t:e?new Be(e):null}validateForShorthand(t,e){let i=this.first,n;for(;i!==this.failureTerminal;){if(n=i.validator.validateForShorthand(t,e),n)return n;i=i.failure}return null}},f0=class extends Eh{constructor(t,e){super(e),u(this,"name",t)}validateSingle(t){return null}visitFunc(t){if(t.name.toLowerCase()!=this.name)return null;let e=this.validateList(t.values,!1,0);return e===t.values?t:e?new Vt(t.name,e):null}},Ju=class extends xh{validateSingle(t){return null}visitFunc(t){let e=Ph(t);return e&&c0(e.type)?t:null}},Df=class{tryParse(t,e,i){return e}success(t,e){}},zf=class extends Df{constructor(t,e){super(),u(this,"name",e),u(this,"validator"),this.validator=t.validators[this.name]}tryParse(t,e,i){if(i.values[this.name])return e;let n=this.validator.validateForShorthand(t,e);if(n){let r=n.length,o=r>1?new ee(n):n[0];return this.success(o,i),e+r}return e}success(t,e){e.values[this.name]=t}},g0=class extends zf{constructor(t,e){super(t,e[0]),u(this,"names",e)}success(t,e){for(let i=0;i<this.names.length;i++)e.values[this.names[i]]=t}},m0=class extends Df{constructor(t,e){super(),u(this,"nodes",t),u(this,"slash",e)}tryParse(t,e,i){let n=e;if(this.slash)if(t[e]==Kn){if(++e==t.length)return n}else return n;let r=this.nodes[0].tryParse(t,e,i);if(r==e)return n;e=r;for(let o=1;o<this.nodes.length&&e<t.length&&(r=this.nodes[o].tryParse(t,e,i),r!=e);o++)e=r;return e}},la=class extends Zt{constructor(t,e,i){super(),u(this,"validatorSet",t),u(this,"syntax",e),u(this,"propList",i),u(this,"error",!1),u(this,"values",{})}static create(t,e,i){return new this(t,e,i)}clone(t){return new this.constructor(this.validatorSet,this.syntax,this.propList)}finish(t,e){var i,n;if(!this.error){for(let r of this.propList)e.simpleProperty(r,(n=(i=this.values[r])!=null?i:this.validatorSet.defaultValues[r])!=null?n:w.initial,t);return!0}return!1}propagateDefaultingValue(t,e,i){for(let n of this.propList)i.simpleProperty(n,t,e)}validateList(t){return this.error=!0,0}validateSingle(t){return this.validateList([t]),null}visitEmpty(t){return this.validateSingle(t)}visitStr(t){return this.validateSingle(t)}visitIdent(t){return this.validateSingle(t)}visitNumeric(t){return this.validateSingle(t)}visitNum(t){return this.validateSingle(t)}visitInt(t){return this.validateSingle(t)}visitHexColor(t){return this.validateSingle(t)}visitURL(t){return this.validateSingle(t)}visitSpaceList(t){return this.validateList(t.values),null}visitCommaList(t){return this.error=!0,null}visitFunc(t){return this.validateSingle(t)}visitExpr(t){return this.validateSingle(t)}},Qn=class extends la{validateList(t){let e=0,i=0;for(;e<t.length;){let n=this.syntax[i].tryParse(t,e,this);if(n>e){e=n,i=0;continue}if(++i==this.syntax.length){this.error=!0;break}}return e}},Vf=class extends la{validateList(t){if(t.length>this.syntax.length||t.length==0)return this.error=!0,0;for(let e=0;e<this.syntax.length;e++){let i=e;for(;i>=t.length;)i=i==1?0:i-2;if(this.syntax[e].tryParse(t,i,this)!=i+1)return this.error=!0,0}return t.length}createSyntaxNode(){return new g0(this.validatorSet,this.propList)}},y0=class extends la{validateList(t){let e=t.length;for(let i=0;i<t.length;i++)if(t[i]===Kn){e=i;break}if(e>this.syntax.length||t.length==0)return this.error=!0,0;for(let i=0;i<this.syntax.length;i++){let n=i;for(;n>=e;)n=n==1?0:n-2;let r;if(e+1<t.length)for(r=e+i+1;r>=t.length;)r=r-(r==e+2?1:2);else r=n;let o=[t[n],t[r]];if(this.syntax[i].tryParse(o,0,this)!=2)return this.error=!0,0}return t.length}},v0=class extends Qn{mergeIn(t,e){var i,n;for(let r of this.propList){let o=(n=(i=e[r])!=null?i:this.validatorSet.defaultValues[r])!=null?n:w.initial,s=t[r];s||(s=[],t[r]=s),s.push(o)}}visitCommaList(t){let e={};for(let i=0;i<t.values.length;i++)if(this.values={},t.values[i]instanceof Be?this.error=!0:(t.values[i].visit(this),this.mergeIn(e,this.values),this.values["background-color"]&&i!=t.values.length-1&&(this.error=!0)),this.error)return null;this.values={};for(let i in e)i=="background-color"?this.values[i]=e[i].pop():this.values[i]=new Be(e[i]);return null}},w0=class $f extends Qn{static create(e,i,n){return new $f(e,i,[...n,"font-family","line-height","font-size","font-stretch","font-variant-ligatures","font-variant-caps","font-variant-numeric","font-variant-east-asian"])}validateList(e){let i=super.validateList(e),n=this.values["font-variant_css2"];n&&(delete this.values["font-variant_css2"],this.values["font-variant-caps"]=n);let r=this.values["font-stretch_css3"];if(r&&(delete this.values["font-stretch_css3"],this.values["font-stretch"]=r),i+2>e.length)return this.error=!0,i;this.error=!1;let o=this.validatorSet.validators;if(!e[i].visit(o["font-size"])){let a=this.values["font-weight"],h=a instanceof Vt&&a.name==="calc"?e.indexOf(a):-1;if(h>=0&&e[h].visit(o["font-size"]))delete this.values["font-weight"],i=h;else return this.error=!0,i}if(this.values["font-size"]=e[i++],e[i]===Kn){if(i++,i+2>e.length)return this.error=!0,i;if(!e[i].visit(o["line-height"]))return this.error=!0,i;this.values["line-height"]=e[i++]}let s=i==e.length-1?e[i]:new ee(e.slice(i,e.length));return s.visit(o["font-family"])?(this.values["font-family"]=s,e.length):(this.error=!0,i)}visitCommaList(e){if(e.values[0].visit(this),this.error)return null;let i=[this.values["font-family"]];for(let r=1;r<e.values.length;r++)i.push(e.values[r]);let n=new Be(i);return n.visit(this.validatorSet.validators["font-family"])?this.values["font-family"]=n:this.error=!0,null}visitIdent(e){let i=this.validatorSet.systemFonts[e.name];if(i)for(let n in i)this.values[n]=i[n];else this.error=!0;return null}},b0=class extends Qn{validateList(t){if(t.length===1&&t[0]instanceof he)switch(t[0].name.toLowerCase()){case"normal":t=[this.validatorSet.defaultValues["text-autospace"],this.validatorSet.defaultValues["text-spacing-trim"]];break;case"auto":t=[w.auto,w.auto];break;case"none":t=[_("no-autospace"),_("space-all")];break}return super.validateList(t)}},Hf=class extends la{constructor(t,e,i=[]){super(t,[],i),u(this,"name",e)}clone(t){return new x0(this.validatorSet,this.name,[...this.propList],t)}},x0=class extends Hf{constructor(t,e,i,n){super(t,e,i),u(this,"scope",n)}validateValueText(t){let e=this.validatorSet.expandBrowserShorthand(this.name,t);if(!e)return this.error=!0,!1;this.propList=e.propList,this.values={};for(let i of e.propList){let n=e.values[i];if(!n)continue;let r=Mi(this.scope,new xt(n,null),"");if(!r)return this.error=!0,!1;this.values[i]=r}return this.error=!1,!0}validateList(t){let e=t.length===1?t[0].toString():new ee(t).toString();return this.validateValueText(e)?t.length:0}visitCommaList(t){return this.validateValueText(t.toString()),null}},Qu=["unicode-bidi","direction","margin-block-start","margin-block-end","margin-inline-start","margin-inline-end","padding-block-start","padding-block-end","padding-inline-start","padding-inline-end","border-block-start-color","border-block-end-color","border-inline-start-color","border-inline-end-color","border-block-start-style","border-block-end-style","border-inline-start-style","border-inline-end-style","border-block-start-width","border-block-end-width","border-inline-start-width","border-inline-end-width","block-start","block-end","inline-start","inline-end","inset-block-start","inset-block-end","inset-inline-start","inset-inline-end","block-size","inline-size","max-block-size","max-inline-size","min-block-size","min-inline-size","behavior","bleed","conflicting-partitions","crop-offset","crop-marks-line-color","enabled","flow-consume","flow-from","flow-into","flow-linger","flow-options","flow-priority","font-display","font-size-adjust","font-stretch_css3","font-variant_css2","glyph-orientation-vertical","marks","min-page-height","min-page-width","repeat-on-break","required","required-partitions","ruby-align","shape-inside","snap-height","snap-width","src","template","text-decoration-skip","text-justify","text-zoom","unicode-range","utilization","wrap-flow"],Uf=class extends Qn{refreshPropList(){this.propList=this.validatorSet.getPropertiesForAll()}validateList(t){return this.error=!0,0}},ec={SIMPLE:Qn,INSETS:Vf,INSETS_SLASH:y0,COMMA:v0,FONT:w0,TEXT_SPACING:b0,ALL:Uf},S0=["initial-letter"],C0=class{constructor(){u(this,"validators",{}),u(this,"prefixes",{}),u(this,"defaultValues",{}),u(this,"namedValidators",{}),u(this,"systemFonts",{}),u(this,"shorthands",{}),u(this,"layoutProps",{}),u(this,"backgroundProps",{}),u(this,"browserShorthandStyle",null),u(this,"browserShorthandMisses",{}),u(this,"browserPropertyNamesForAll",null),u(this,"allPropertyNames",null)}invalidateAllPropertyNames(){this.allPropertyNames=null}getBrowserPropertyNamesForAll(){if(this.browserPropertyNamesForAll)return this.browserPropertyNamesForAll;if(typeof document>"u"||typeof getComputedStyle!="function")return null;let t=document.documentElement;if(!t)return null;let e=getComputedStyle(t),i=[];for(let n=0;n<e.length;n++){let r=e.item(n);!r||ze(r)||Qu.includes(r)||i.push(r)}return this.browserPropertyNamesForAll=i,this.browserPropertyNamesForAll}getPropertiesForAll(){if(this.allPropertyNames)return this.allPropertyNames;let t=new Set;for(let n in this.validators)Qu.includes(n)||t.add(n);let e=this.getBrowserPropertyNamesForAll();if(e)for(let n of e)this.shorthands[n]||t.add(n);let i=Array.from(t);return e&&(this.allPropertyNames=i),i}getBrowserShorthandStyle(){return this.browserShorthandStyle!==null?this.browserShorthandStyle:typeof document>"u"?null:(this.browserShorthandStyle=document.createElement("div").style,this.browserShorthandStyle)}expandBrowserShorthand(t,e){let i=this.getBrowserShorthandStyle();if(!i)return null;i.cssText="",i.setProperty(t,e);let n=Array.from({length:i.length},(o,s)=>i.item(s)).filter(o=>!!o);if(!n.length||n.length===1&&n[0]===t.toLowerCase())return null;let r={};for(let o of n)r[o]=i.getPropertyValue(o);return{propList:n,values:r}}getShorthand(t,e){if(ze(t))return null;t=t.toLowerCase();let i=this.shorthands[t];if(i)return i instanceof Uf&&!this.allPropertyNames&&i.refreshPropList(),i;if(this.validators[t]||this.browserShorthandMisses[t]||e==null)return null;let n=this.expandBrowserShorthand(t,typeof e=="string"?e:e.toString());if(!n)return(typeof e=="string"?!/\bvar\(/i.test(e):!Sl(e))&&(this.browserShorthandMisses[t]=!0),null;let r=new Hf(this,t,n.propList);return this.shorthands[t]=r,this.invalidateAllPropertyNames(),r}addReplacement(t,e){let i;if(e.type==3)i=new B(e.num,e.text);else if(e.type==7)i=new Fd(e.text);else if(e.type==1)i=_(e.text);else throw new Error("unexpected replacement");if(t.isPrimitive()){let n=t.nodes[0].validator.idents;for(let r in n)n[r]=i;return t}throw new Error("unexpected replacement")}newGroup(t,e){let i=new hr;if(t=="||"){for(let r=0;r<e.length;r++){let o=new hr;o.startClause(r),o.addGroup(e[r],1),o.endClause(r),i.addGroup(o,r==0?1:4)}let n=new hr;return n.startSpecialGroup(),n.addGroup(i,3),n.endSpecialGroup(),n}else{let n;switch(t){case" ":n=1;break;case"|":case"||":n=4;break;default:throw new Error("unexpected op")}for(let r=0;r<e.length;r++)i.addGroup(e[r],r==0?1:n);return i}}addCounts(t,e,i){let n=new hr;for(let r=0;r<e;r++)n.addGroup(t.clone(),1);if(i==Number.POSITIVE_INFINITY)n.addGroup(t,3);else for(let r=e;r<i;r++)n.addGroup(t.clone(),2);return n}primitive(t){let e=new hr;return e.addPrimitive(t),e}newFunc(t,e){let i;switch(t){case"COMMA":i=new Nh(e);break;case"SPACE":i=new Fr(e);break;case"attr":i=new Ju;break;default:i=new f0(t.toLowerCase(),e);break}return this.primitive(i)}initBuiltInValidators(){this.namedValidators.COLOR=this.primitive(new ce(Vn,ie,ie)),this.namedValidators.ATTR=this.primitive(new Ju),this.namedValidators.IMAGE_FUNCTION=this.primitive(new ce(Os,ie,ie)),this.namedValidators.POS_INT=this.primitive(new ce(jn,ie,ie)),this.namedValidators.POS_NUM=this.primitive(new ce(on,ie,ie)),this.namedValidators.POS_PERCENTAGE=this.primitive(new ce(ki,ie,oa)),this.namedValidators.NEGATIVE=this.primitive(new ce(oi,ie,ie)),this.namedValidators.ZERO=this.primitive(new ce(si,ie,ie)),this.namedValidators.ZERO_PERCENTAGE=this.primitive(new ce(Ls,ie,ie)),this.namedValidators.POS_LENGTH=this.primitive(new ce(ki,ie,sa)),this.namedValidators.POS_ANGLE=this.primitive(new ce(ki,ie,Sh)),this.namedValidators.POS_TIME=this.primitive(new ce(ki,ie,Ch)),this.namedValidators.FREQUENCY=this.primitive(new ce(ki,ie,kh)),this.namedValidators.RESOLUTION=this.primitive(new ce(ki,ie,{dpi:Ae,dpcm:Ae,dppx:Ae})),this.namedValidators.URI=this.primitive(new ce(Rs,ie,ie)),this.namedValidators.URANGE=this.primitive(new ce(Of,ie,ie)),this.namedValidators.IDENT=this.primitive(new ce(Rf,ie,ie)),this.namedValidators.STRING=this.primitive(new ce(Fs,ie,ie)),this.namedValidators.SLASH=this.primitive(new ce(Lf,ie,ie));let t={"font-family":_("sans-serif")};this.systemFonts.caption=t,this.systemFonts.icon=t,this.systemFonts.menu=t,this.systemFonts["message-box"]=t,this.systemFonts["small-caption"]=t,this.systemFonts["status-bar"]=t}isBuiltIn(t){return!!t.match(/^[A-Z_0-9]+$/)}readNameAndPrefixes(t,e){let i=t.token();if(i.type==0)return null;let n={"":!0};if(i.type==14){do{if(t.consume(),i=t.token(),i.type!=1)throw new Error("Prefix name expected");n[i.text]=!0,t.consume(),i=t.token()}while(i.type==16);if(i.type!=15)throw new Error("']' expected");t.consume(),i=t.token()}if(i.type!=1)throw new Error("Property name expected");if(e==2?i.text=="SHORTHANDS":i.text=="DEFAULTS")return t.consume(),null;let r=i.text;if(t.consume(),e!=2){if(t.token().type!=39)throw new Error("'=' expected");this.isBuiltIn(r)||(this.prefixes[r]=n)}else if(t.token().type!=18)throw new Error("':' expected");return r}parseValidators(t){for(;;){let e=this.readNameAndPrefixes(t,1);if(!e)return;let i=[],n=[],r="",o,s=!0,a=()=>{if(i.length==0)throw new Error("No values");return i.length==1?i[0]:this.newGroup(r,i)},h=c=>{if(s)throw new Error(`'${c}': unexpected`);if(r&&r!=c)throw new Error(`mixed operators: '${c}' and '${r}'`);r=c,s=!0},l=null;for(;!l;){t.consume();let c=t.token();switch(c.type){case 1:if(s||h(" "),this.isBuiltIn(c.text)){let d=this.namedValidators[c.text];if(!d)throw new Error(`'${c.text}' unexpected`);i.push(d.clone())}else{let d={};d[c.text.toLowerCase()]=_(c.text),i.push(this.primitive(new ce(0,d,ie)))}s=!1;break;case 5:{let d={};d[`${c.num}`]=new ht(c.num),i.push(this.primitive(new ce(0,d,ie))),s=!1;break}case 34:h("|");break;case 25:h("||");break;case 14:s||h(" "),n.push({vals:i,op:r,b:"["}),r="",i=[],s=!0;break;case 6:s||h(" "),n.push({vals:i,op:r,b:"(",fn:c.text}),r="",i=[],s=!0;break;case 15:{o=a();let d=n.pop();if(d.b!="[")throw new Error("']' unexpected");i=d.vals,i.push(o),r=d.op,s=!1;break}case 11:{o=a();let d=n.pop();if(d.b!="(")throw new Error("')' unexpected");i=d.vals,i.push(this.newFunc(d.fn,o)),r=d.op,s=!1;break}case 18:if(s)throw new Error("':' unexpected");t.consume(),i.push(this.addReplacement(i.pop(),t.token()));break;case 22:if(s)throw new Error("'?' unexpected");i.push(this.addCounts(i.pop(),0,1));break;case 36:if(s)throw new Error("'*' unexpected");i.push(this.addCounts(i.pop(),0,Number.POSITIVE_INFINITY));break;case 23:if(s)throw new Error("'+' unexpected");i.push(this.addCounts(i.pop(),1,Number.POSITIVE_INFINITY));break;case 12:{if(t.consume(),c=t.token(),c.type!=5)throw new Error("<int> expected");let d=c.num,p=d;if(t.consume(),c=t.token(),c.type==16){if(t.consume(),c=t.token(),c.type!=5)throw new Error("<int> expected");p=c.num,t.consume(),c=t.token()}if(c.type!=13)throw new Error("'}' expected");i.push(this.addCounts(i.pop(),d,p));break}case 17:if(l=a(),n.length>0)throw new Error(`unclosed '${n.pop().b}'`);break;default:throw new Error("unexpected token")}}t.consume(),this.isBuiltIn(e)?this.namedValidators[e]=l:l.isSimple()?this.validators[e]=l.nodes[0].validator:this.validators[e]=new Fr(l)}}parseDefaults(t){for(;;){let e=this.readNameAndPrefixes(t,2);if(!e)return;let i=[];for(;;){t.consume();let n=t.token();if(n.type==17){t.consume();break}switch(n.type){case 1:i.push(_(n.text));break;case 4:i.push(new It(n.num));break;case 5:i.push(new ht(n.num));break;case 3:i.push(new B(n.num,n.text));break;default:throw new Error("unexpected token")}}this.defaultValues[e]=i.length>1?new ee(i):i[0]}}parseShorthands(t){for(;;){let e=this.readNameAndPrefixes(t,3);if(!e)return;let i=t.nthToken(1),n;i.type==1&&ec[i.text]?(n=ec[i.text],t.consume()):n=Qn;let r=!1,o=[],s=!1,a=[],h=[];for(;!r;)switch(t.consume(),i=t.token(),i.type){case 1:if(this.validators[i.text])o.push(new zf(this,i.text)),i.text.includes("_")||h.push(i.text);else if(this.shorthands[i.text]instanceof Vf){let c=this.shorthands[i.text];o.push(c.createSyntaxNode()),h.push(...c.propList)}else throw new Error(`'${i.text}' is neither a simple property nor an inset shorthand`);break;case 19:if(o.length>0||s)throw new Error("unexpected slash");s=!0;break;case 14:a.push({slash:s,syntax:o}),o=[],s=!1;break;case 15:{let c=new m0(o,s),d=a.pop();o=d.syntax,s=d.slash,o.push(c);break}case 17:r=!0,t.consume();break;default:throw new Error("unexpected token")}let l=n.create(this,o,h);this.shorthands[e]=l,this.invalidateAllPropertyNames()}}parse(t){let e=new xt(t,null);this.parseValidators(e),this.parseDefaults(e),this.parseShorthands(e),this.backgroundProps=this.makePropSet(["background"]),this.layoutProps=this.makePropSet(["margin","border","padding","columns","column-gap","column-rule","column-fill"])}makePropSet(t){var e;let i={};for(let n of t){let r=this.shorthands[n],o=r?r.propList:[n];for(let s of o)i[s]=(e=this.defaultValues[s])!=null?e:w.initial}return i}validatePropertyAndHandleShorthand(t,e,i,n,r){var o,s;let a=r.ruleType;if(ze(t)||a==="font-face"){r.simpleProperty(t,e,i);return}if(a==="counter-style"){Yb(t,e)?r.simpleProperty(t,e,i):r.invalidPropertyValue(t,e);return}let h="",l=t;t=t.toLowerCase();let c=t.match(/^-([a-z]+)-([-a-z0-9]+)$/);c&&(h=c[1],t=c[2]);let d=h?l:t;if(Sl(e)){this.getShorthand(d,e),r.simpleProperty(d,e,i);return}let p=this.prefixes[t],f=Rt(e)?"unset":e.toString();if(!p||!p[h]){if(CSS.supports(l,f)){let m=(o=this.getShorthand(d,f))==null?void 0:o.clone(n);m?Z(e)?m.propagateDefaultingValue(e,i,r):(e.visit(m),m.finish(i,r)||r.invalidPropertyValue(l,e)):r.simpleProperty(l,e,i)}else h&&!sd.includes(`-${h}-`)||r.unknownProperty(l,e);return}else if(S0.includes(t)&&!Object.keys(p).some(m=>Xo(m?`-${m}-`:"",t))){r.unknownProperty(l,e);return}let g=this.validators[t];if(g){let m=Z(e)||e.isExpr()?e:e.visit(g);m?r.simpleProperty(t,m,i):!h&&CSS.supports(t,e.toString())?r.simpleProperty(t,e,i):r.invalidPropertyValue(l,e)}else{let m=(s=this.getShorthand(t,e))==null?void 0:s.clone(n);if(!m){r.unknownProperty(l,e);return}Z(e)?m.propagateDefaultingValue(e,i,r):(e.visit(m),m.finish(i,r)||r.invalidPropertyValue(l,e))}}};function k0(){let t=new C0;return t.initBuiltInValidators(),t.parse(hp),t}var P0=class extends Zt{constructor(){super(...arguments),u(this,"varFound",!1)}visitFunc(t){return t.name==="var"?this.varFound=!0:this.varFound||this.visitValues(t.values),null}};function Sl(t){let e=new P0;return t.visit(e),e.varFound}function Wf(t,e,i){return t-=i,e===0?t===0:t%e===0&&t/e>=0}var E0=class{constructor(t){u(this,"matchers",t)}matches(){return this.matchers.some(t=>t.matches())}},N0=class{constructor(t){u(this,"matchers",t)}matches(){return this.matchers.every(t=>t.matches())}},Gf=class ls{constructor(e,i,n){u(this,"elementOffset",e),u(this,"a",i),u(this,"b",n)}static registerFragmentIndex(e,i,n){let r=ls.fragmentIndices;(!r[e]||r[e].priority<=n)&&(r[e]={fragmentIndex:i,priority:n})}static clearFragmentIndices(){ls.fragmentIndices={}}matches(){let e=ls.fragmentIndices[this.elementOffset];return e!=null&&e.fragmentIndex!=null&&Wf(e.fragmentIndex,this.a,this.b)}};u(Gf,"fragmentIndices",{});var ha=Gf,Vo=class{static buildViewConditionMatcher(t,e){let i=e.split("_");return i[0]=="NFS"?new ha(t,parseInt(i[1],10),parseInt(i[2],10)):(`${e}`,null)}static buildAllMatcher(t){return new N0(t)}static buildAnyMatcher(t){return new E0(t)}},jf={"border-collapse":!0,"border-spacing":!0,"caption-side":!0,"clip-rule":!0,color:!0,"color-interpolation":!0,"color-rendering":!0,cursor:!0,direction:!0,"empty-cells":!0,fill:!0,"fill-opacity":!0,"fill-rule":!0,"font-kerning":!0,"font-size":!0,"font-size-adjust":!0,"font-family":!0,"font-feature-settings":!0,"font-style":!0,"font-stretch":!0,"font-variant-ligatures":!0,"font-variant-caps":!0,"font-variant-numeric":!0,"font-variant-east-asian":!0,"font-weight":!0,"glyph-orientation-vertical":!0,"hanging-punctuation":!0,hyphens:!0,"hyphenate-character":!0,"hyphenate-limit-chars":!0,"hyphenate-limit-last":!0,"image-rendering":!0,"image-resolution":!0,"letter-spacing":!0,"line-break":!0,"line-height":!0,"list-style-image":!0,"list-style-position":!0,"list-style-type":!0,marker:!0,"marker-end":!0,"marker-mid":!0,"marker-start":!0,orphans:!0,"overflow-wrap":!0,"paint-order":!0,"pointer-events":!0,quotes:!0,"ruby-align":!0,"ruby-position":!0,"shape-rendering":!0,stroke:!0,"stroke-dasharray":!0,"stroke-dashoffset":!0,"stroke-linecap":!0,"stroke-linejoin":!0,"stroke-miterlimit":!0,"stroke-opacity":!0,"stroke-width":!0,"tab-size":!0,"text-align":!0,"text-align-last":!0,"text-anchor":!0,"text-autospace":!0,"text-decoration-skip":!0,"text-decoration-skip-ink":!0,"text-emphasis-color":!0,"text-emphasis-position":!0,"text-emphasis-style":!0,"text-fill-color":!0,"text-combine-upright":!0,"text-indent":!0,"text-justify":!0,"text-orientation":!0,"text-rendering":!0,"text-shadow":!0,"text-size-adjust":!0,"text-spacing-trim":!0,"text-stroke-color":!0,"text-stroke-width":!0,"text-transform":!0,"text-underline-offset":!0,"text-underline-position":!0,"text-wrap":!0,"text-wrap-mode":!0,"text-wrap-style":!0,visibility:!0,"white-space":!0,widows:!0,"word-break":!0,"word-spacing":!0,"writing-mode":!0},T0=["image-resolution","orphans","widows"];function I0(){return zt("POLYFILLED_INHERITED_PROPS").reduce((t,e)=>t.concat(e()),[].concat(T0))}var A0={"http://www.idpf.org/2007/ops":!0,"http://www.w3.org/1999/xhtml":!0,"http://www.w3.org/2000/svg":!0,"http://www.w3.org/1998/Math/MathML":!0},Cl=["margin-%","padding-%","border-%-width","border-%-style","border-%-color","%"],F0=["max-%","min-%","%"],tc=(()=>{let t=["left","right","top","bottom"],e={width:!0,height:!0,"max-width":!0,"max-height":!0,"min-width":!0,"min-height":!0};for(let i=0;i<Cl.length;i++)for(let n=0;n<t.length;n++){let r=Cl[i].replace("%",t[n]);e[r]=!0}return e})();function er(t,e){let i={};for(let n of Cl)for(let r in t){let o=n.replace("%",r),s=n.replace("%",t[r]);i[o]=s,i[s]=o}for(let n of F0)for(let r in e){let o=n.replace("%",r),s=n.replace("%",e[r]);i[o]=s,i[s]=o}return i}var Xf=er({"block-start":"right","block-end":"left","inline-start":"top","inline-end":"bottom"},{"block-size":"width","inline-size":"height"}),qf=er({"block-start":"top","block-end":"bottom","inline-start":"left","inline-end":"right"},{"block-size":"height","inline-size":"width"}),R0=er({"block-start":"right","block-end":"left","inline-start":"bottom","inline-end":"top"},{"block-size":"width","inline-size":"height"}),L0=er({"block-start":"top","block-end":"bottom","inline-start":"right","inline-end":"left"},{"block-size":"height","inline-size":"width"}),O0=er({inside:"right",outside:"left"},{}),B0=er({inside:"left",outside:"right"},{}),Oa=class{constructor(t,e){u(this,"name",t),u(this,"parent",e),u(this,"order",0),u(this,"children",[])}},M0=class{constructor(){u(this,"root",new Oa(null,null))}register(t,e){let i=t??this.root;if(e)for(let n of e){let r=i.children.find(o=>o.name===n);r||(r=new Oa(n,i),i.children.push(r)),i=r}else{let n=new Oa(null,i);i.children.push(n),i=n}return this.renumber(),i}renumber(){let t=0,e=i=>{for(let n of i.children)e(n);i.order=t++};for(let i of this.root.children)e(i)}},Bs=16777216,_0=4,D0=0;function mo(){return++D0}function ic(t){switch(Math.floor(t.priority/Bs)){case 0:return 0;case 1:case 6:return 1;default:return 2}}function nc(t){switch(Math.floor(t.priority/Bs)){case 0:return 0;case 1:case 6:return 1;case 3:case 4:return 3;default:return 2}}function Ms(t){return t.layer?t.layer.order:1/0}function Vi(t,e){let i=Math.floor(t.priority/Bs),n=Math.floor(e.priority/Bs);if(i!==n)return i-n;if(t.layer!==e.layer){let r=Ms(t),o=Ms(e);if(r!==o){let s=r>o?1:-1;return i>=_0?-s:s}}return t.priority-e.priority}var X=class kl{constructor(e,i,n=null,r=0){u(this,"value",e),u(this,"priority",i),u(this,"layer",n),u(this,"ruleId",r)}getBaseValue(){return this}withValue(e){return e===this.value?this:new kl(e,this.priority,this.layer,this.ruleId)}filterValue(e){return this.withValue(this.value.visit(e))}increaseSpecificity(e){return e==0?this:new kl(this.value,this.priority+e,this.layer,this.ruleId)}evaluate(e,i,n,r){return i&&ze(i)?this.value:Hs(e,this.value,i,n,r)}isEnabled(e){return!0}},Pl=class El extends X{constructor(e,i,n,r=null,o=0){super(e,i,r,o),u(this,"condition",n)}getBaseValue(){return new X(this.value,this.priority,this.layer,this.ruleId)}withValue(e){return e===this.value?this:new El(e,this.priority,this.condition,this.layer,this.ruleId)}increaseSpecificity(e){return e==0?this:new El(this.value,this.priority+e,this.condition,this.layer,this.ruleId)}isEnabled(e){try{return!!this.condition.evaluate(e)}catch(i){Y.warn(i)}return!1}};function Nl(t,e,i){return(!e||Vi(i,e)>=0)&&i.isEnabled(t)?i.getBaseValue():e}function ei(t,e,i,n){if(!t)return;if(!i){delete t[e];return}if(n&&!i.isEnabled(n))return;z0(t,e,i);let r=t[e];(!r||Vi(i,r)>=0)&&(t[e]=n?i.getBaseValue():i)}var Rr=new Set;function yo(t,e,i){var n;if(Rt(e)){Rr.add(t);return}if(!Cy(e))return;Rr.add(t);let r=(n=i?.getShorthand(t,e))==null?void 0:n.propList;if(r)for(let o of r)Rr.add(o)}var _s=new WeakMap;function z0(t,e,i){if(!Rr.has(e)||i.value===Ae)return;let n=_s.get(t);n||(n={},_s.set(t,n));let r=n[e];if(!r){r=n[e]=[];let o=t[e];o&&o.value!==Ae&&r.push(o)}r.push(i)}function V0(t,e){switch(e.value){case w.revert_rule:return t.ruleId===e.ruleId;case w.revert_layer:return nc(t)===nc(e)&&Ms(t)>=Ms(e);default:return ic(t)>=ic(e)}}function $0(t,e,i){let n=i;for(;Rt(e.value);){n=n.filter(o=>!V0(o,e));let r=null;for(let o of n)(!r||Vi(o,r)>=0)&&(r=o);if(!r)return ze(t)?w.initial:e.value;e=r}return e.value}function Xn(t,e=!1){var i;if(!Rr.size)return!1;let n=_s.get(t),r=!1;for(let o in t)if(Or(o)){let s=lt(t,o);for(let a in s)Xn(s[a],e)&&(r=!0)}else if(o==="_viewConditionalStyles")for(let s of Th(t))Xn(s.styles,e)&&(r=!0);else if(Ii(o)){let s=ge(t,o);if(!s||!Rt(s.value))continue;if(e&&ze(o)){t[o]=s.withValue(w.initial);continue}let a=$0(o,s,(i=n?.[o])!=null?i:[]);t[o]=s.withValue(a),Sl(a)&&(r=!0)}return e&&_s.delete(t),r}var Yf={"region-id":!0,"fragment-selector-id":!0},Lr="data-viv-footnote-counter";function Ds(t){let e=t.getAttribute(Lr);if(!e)return Object.create(null);let i;try{i=JSON.parse(e)}catch{return Object.create(null)}if(!i||typeof i!="object"||Array.isArray(i))return Object.create(null);let n=Object.create(null);return Object.entries(i).forEach(([r,o])=>{if(Array.isArray(o)){let s=o.filter(a=>typeof a=="number"&&isFinite(a));n[r]=s}else typeof o=="number"&&isFinite(o)&&(n[r]=[o])}),n}function Zf(t,e,i){let n=Ds(t);n[e]=i,t.setAttribute(Lr,JSON.stringify(n))}function H0(t,e){var i,n;if(!qt(t)||t.hasAttribute(nf))return null;let r=Ds(t)[e];if(r)return r;let o=t.getAttribute("href")||t.getAttributeNS("http://www.w3.org/1999/xlink","href");if(!o)return null;let s=t.baseURI||((i=t.ownerDocument)==null?void 0:i.baseURI)||"",a=fs(o,s);if(a==="#"||a.replace(/#.*$/,"")!==s.replace(/#.*$/,""))return null;let h=a.indexOf("#");if(h<0||h===a.length-1)return null;let l=(n=t.ownerDocument)==null?void 0:n.getElementById(a.substring(h+1));if(!(l instanceof Element))return null;let c=Ds(l)[e];return c?(Zf(t,e,c),c):null}function U0(t){let e=ge(t,"content");return!!e&&At(e.value)}function W0(t){return!!Yf[t]}function Or(t){return t.charAt(0)==="_"&&t!=="_viewConditionalStyles"}function Ii(t){return t.charAt(0)!=="_"&&!Yf[t]}function Mn(t){return!!jf[t]||ze(t)}function ge(t,e){return t[e]}function Bi(t,e,i){i?t[e]=i:delete t[e]}function lt(t,e){return t[e]}function li(t,e){let i=t[e];return i||(i={},t[e]=i),i}var Th=t=>{let e=t._viewConditionalStyles;return e||(e=[],t._viewConditionalStyles=e),e};function Kf(t,e){return t[e]}function Jf(t,e){let i=t[e];return i||(i=[],t[e]=i),i}function zs(t,e,i,n,r,o,s,a){var h;if([{id:r,styleKey:"_pseudos"},{id:o,styleKey:"_regions"}].forEach(l=>{if(l.id){let c=li(e,l.styleKey);e=c[l.id],e||(e={},c[l.id]=e)}}),s){let l=Th(e);e={},l.push({styles:e,matcher:s})}for(let l in i)if(!Or(l))if(W0(l)){let c=Kf(i,l),d=Jf(e,l);Array.prototype.push.apply(d,c)}else{let c=ge(i,l);if(!c.isEnabled(t))continue;let d=c.increaseSpecificity(n);ei(e,l,d,t);let p=(h=a?.getShorthand(l,d.value))==null?void 0:h.propList;if(p)for(let f of p){let g=d.withValue(Ae);ei(e,f,g,t)}}}function G0(t,e){let i={};for(let n=0;n<e.length;n++)zs(t,i,e[n],0,null,null,null,null);return i}function Ih(t,e){if(t.length>0){t.sort((i,n)=>n.getPriority()-i.getPriority());for(let i=t.length-1;i>=0;i--)e=t[i].wire(e)}return e}var j0=class extends dn{constructor(t,e){super(),u(this,"props",t),u(this,"context",e),u(this,"propName","")}setPropName(t){this.propName=t}getFontSize(){let t=ge(this.props,"font-size");if(!t.value.isNumeric())return vi.em;let e=t.value;if(!oy(e.unit))throw new Error("Unexpected state");return e.num*vi[e.unit]}visitNumeric(t){return this.propName==="font-size"?Tl(t,this.getFontSize(),this.context):t.unit==="em"||t.unit==="rem"||t.unit==="lh"||t.unit==="rlh"?Ah(t,this.getFontSize(),this.context):t}visitExpr(t){return this.propName=="font-size"?Hs(this.context,t,this.propName).visit(this):t}};function Ah(t,e,i){let n=t.unit,r=t.num;return n==="em"?new B(r*e,"px"):n==="rem"?new B(r*i.fontSize(),"px"):n==="rlh"?new B(r*i.rootLineHeight,"px"):t}function Tl(t,e,i){t=Ah(t,e??0,i);let n=t.unit,r=t.num;return n==="px"?t:n==="%"?new B(r/100*(e??0),"px"):new B(r*i.queryUnitSize(n,!1),"px")}var Qf=class{constructor(t,e,i,n){u(this,"instance",t),u(this,"currentStyle",e),u(this,"currentClassNames",i),u(this,"currentEpubTypes",n)}},eg=class extends Qf{constructor(t,e,i,n,r){super(t,e,i,n),u(this,"currentElement",r)}},tr=class{apply(t){}mergeWith(t){return new X0([this,t])}clone(){return this}},$o=class extends tr{constructor(t){super(),u(this,"conditionItem",t)}apply(t){t.instance.pushConditionItem(this.conditionItem.fresh(t.instance))}},X0=class tg extends tr{constructor(e){super(),u(this,"list",e)}apply(e){for(let i=0;i<this.list.length;i++)this.list[i].apply(e)}mergeWith(e){return this.list.push(e),this}clone(){return new tg([].concat(this.list))}},Fh=class extends tr{constructor(t,e,i,n,r){super(),u(this,"style",t),u(this,"specificity",e),u(this,"pseudoelement",i),u(this,"regionId",n),u(this,"viewConditionId",r)}apply(t){zs(t.instance.context,t.currentStyle,this.style,this.specificity,this.pseudoelement,this.regionId,t.instance.buildViewConditionMatcher(this.viewConditionId),t.instance.mergeValidatorSet)}},Te=class{getPriority(){return 0}primarySlot(t){return null}wire(t){return new q0(this,t)}},Rh=class extends tr{constructor(t,e){super(),u(this,"condition",t),u(this,"chained",e)}makePrimary(t){let e=this.condition.primarySlot(t);return e?(t.insertInTable(e.table,e.key,this.chained),!0):!1}},q0=class extends Rh{apply(t){this.condition.matches(t)&&this.chained.apply(t)}},Y0=class extends Rh{apply(t){if(this.condition.matches(t)){t.instance.dependentConditions.push(this.condition.condition);try{this.chained.apply(t)}finally{t.instance.dependentConditions.pop()}}}},Z0=class extends Te{constructor(t){super(),u(this,"className",t)}matches(t){return t.currentClassNames.includes(this.className)}getPriority(){return 10}primarySlot(t){return{table:t.classes,key:this.className}}},K0=class extends Te{constructor(t){super(),u(this,"id",t)}matches(t){return t.instance.currentId==this.id||t.instance.currentXmlId==this.id}getPriority(){return 11}primarySlot(t){return{table:t.ids,key:this.id}}},rc=class extends Te{constructor(t){super(),u(this,"localName",t)}matches(t){return t.instance.currentLocalName==this.localName}getPriority(){return 8}primarySlot(t){return{table:t.tags,key:this.localName}}},J0=class extends Te{constructor(t,e){super(),u(this,"ns",t),u(this,"localName",e)}matches(t){return t.instance.currentLocalName==this.localName&&t.instance.currentNamespace==this.ns}getPriority(){return 8}primarySlot(t){let e=t.nsPrefix[this.ns];return e||(e=`ns${t.nsCount++}:`,t.nsPrefix[this.ns]=e),{table:t.nstags,key:e+this.localName}}},Q0=class extends Te{constructor(t,e,i=!1){super(),u(this,"epubTypePatt",t),u(this,"targetLocalName",e),u(this,"useRoleAttr",i)}matches(t){let e=t.currentElement;if(e instanceof HTMLAnchorElement&&e.hash&&e.href==e.baseURI.replace(/#.*$/,"")+e.hash){let i=e.hash.substring(1),n=e.ownerDocument.getElementById(i);if(n&&(!this.targetLocalName||n.localName==this.targetLocalName)){let r=this.useRoleAttr?n.getAttribute("role"):n.getAttributeNS("http://www.idpf.org/2007/ops","type")||n.getAttribute("epub:type");if(r&&r.match(this.epubTypePatt))return!0}}return!1}},ex=class extends Te{constructor(t){super(),u(this,"ns",t)}matches(t){return t.instance.currentNamespace==this.ns}};function ua(t,e,i,n){var r;if(!t)return!1;let o=((r=t.ownerDocument)==null?void 0:r.contentType)==="text/html",s=o?Xr(i):i;if(e!==null){let a=t.getAttributeNodeNS(e||null,s);return!!a&&n(a)}for(let a of Array.from(t.attributes))if((o?Xr(a.localName):a.localName)===s&&n(a))return!0;return!1}function Xr(t){return t.replace(/[A-Z]/g,e=>e.toLowerCase())}function ig(t){return t==="i"}function ur(t,e){return Array.from(t,i=>{let n=gs(i);if(!ig(e))return n;let r=Xr(i),o=r.toUpperCase();return r!==o&&/^[a-z]$/i.test(i)?`[${r}${o}]`:n}).join("")}function cr(t){return new RegExp(t)}function tx(t,e,i){return ig(i)?Xr(t)===Xr(e):t===e}var oc=class extends Te{constructor(t,e){super(),u(this,"ns",t),u(this,"name",e)}matches(t){return ua(t.currentElement,this.ns,this.name,()=>!0)}},ix=class extends Te{constructor(t,e,i,n=null){super(),u(this,"ns",t),u(this,"name",e),u(this,"value",i),u(this,"caseSensitivity",n)}matches(t){return ua(t.currentElement,this.ns,this.name,e=>tx(e.value,this.value,this.caseSensitivity))}getPriority(){return this.name=="type"&&this.ns=="http://www.idpf.org/2007/ops"?9:0}primarySlot(t){return this.name=="type"&&this.ns=="http://www.idpf.org/2007/ops"?{table:t.epubtypes,key:this.value}:null}},nx=class extends Te{constructor(t,e){super(),u(this,"ns",t),u(this,"name",e)}matches(t){return ua(t.currentElement,this.ns,this.name,e=>!!A0[e.value])}getPriority(){return 0}primarySlot(t){return null}},dr=class extends Te{constructor(t,e,i,n=null){super(),u(this,"ns",t),u(this,"name",e),u(this,"regexp",i),u(this,"caseSensitivity",n)}matches(t){return ua(t.currentElement,this.ns,this.name,e=>!!e.value.match(this.regexp))}},rx=class extends Te{constructor(t){super(),u(this,"langRegExp",t)}matches(t){return!!t.instance.lang.match(this.langRegExp)}},sc=class extends Te{constructor(){super()}matches(t){return t.instance.isFirst}getPriority(){return 6}},ox=class extends Te{constructor(){super()}matches(t){return t.instance.isRoot}getPriority(){return 12}},fn=class extends Te{constructor(t,e){super(),u(this,"a",t),u(this,"b",e)}matchANPlusB(t){return Wf(t,this.a,this.b)}},sx=class extends fn{constructor(t,e){super(t,e)}matches(t){return this.matchANPlusB(t.instance.currentSiblingOrder)}getPriority(){return 5}};function Ho(){return{byNamespace:{},noNamespace:null}}function Vs(t,e){let i=e!==null?t.byNamespace[e]:t.noNamespace;return i||(i={},e!==null?t.byNamespace[e]=i:t.noNamespace=i),i}var Il=class extends fn{constructor(t,e){super(t,e)}matches(t){let e=Vs(t.instance.currentSiblingTypeCounts,t.instance.currentNamespace)[t.instance.currentLocalName];return this.matchANPlusB(e)}getPriority(){return 5}},Al=class extends fn{constructor(t,e){super(t,e)}matches(t){let e=t.instance.currentFollowingSiblingOrder;return e===null&&(e=t.instance.currentFollowingSiblingOrder=t.currentElement.parentNode.childElementCount-t.instance.currentSiblingOrder+1),this.matchANPlusB(e)}getPriority(){return 4}},Fl=class extends fn{constructor(t,e){super(t,e)}matches(t){let e=t.instance.currentFollowingSiblingTypeCounts,i=t.instance.currentNamespace!==null?e.byNamespace[t.instance.currentNamespace]:e.noNamespace;if(!i){let n=t.currentElement;do{let r=n.namespaceURI,o=n.localName,s=Vs(e,r);s[o]=(s[o]||0)+1}while(n=Wa(n));i=Vs(e,t.instance.currentNamespace)}return this.matchANPlusB(i[t.instance.currentLocalName])}getPriority(){return 4}},ax=class extends Te{constructor(){super()}matches(t){let e=t.currentElement.firstChild;for(;e;){switch(e.nodeType){case Node.ELEMENT_NODE:return!1;case Node.TEXT_NODE:if(e.length>0)return!1}e=e.nextSibling}return!0}getPriority(){return 4}},lx=class extends Te{constructor(){super()}matches(t){return t.currentElement.disabled===!1}getPriority(){return 5}},hx=class extends Te{constructor(){super()}matches(t){return t.currentElement.disabled===!0}getPriority(){return 5}},ux=class extends Te{constructor(){super()}matches(t){let e=t.currentElement;return e.selected===!0||e.checked===!0}getPriority(){return 5}},cx=class extends Te{constructor(t){super(),u(this,"selector",t)}matches(t){let e=t.currentElement;try{return!!e&&e.matches(this.selector)}catch{return!1}}},rt=class extends Te{constructor(t){super(),u(this,"condition",t)}matches(t){return!!t.instance.conditions[this.condition]}wire(t){return new Y0(this,t)}getPriority(){return 5}},ng=class rg extends tr{constructor(){super(),u(this,"applied",!1)}apply(e){this.applied=!0}clone(){let e=new rg;return e.applied=this.applied,e}},Lh=class extends Te{constructor(t){super(),u(this,"checkAppliedAction"),u(this,"firstActions",[]),u(this,"priority"),this.checkAppliedAction=new ng,this.priority=Math.max(...t.map(e=>e.length>0?Math.max(...e.map(i=>i.getPriority())):0));for(let e of t)this.firstActions.push(Ih(e,this.checkAppliedAction))}matches(t){for(let i of this.firstActions)if(i.apply(t),this.checkAppliedAction.applied)break;let e=this.checkAppliedAction.applied;return this.checkAppliedAction.applied=!1,e===this.positive()}getPriority(){return this.priority}positive(){return!0}relational(){return!1}},dx=class extends Lh{positive(){return!1}},px=class extends Lh{constructor(t){super([]),u(this,"selectorTexts",t)}matches(t){for(let i of this.selectorTexts){let n,r;/^\s*[+~]/.test(i)?(r=t.currentElement.parentNode,n=`:scope > :nth-child(${Array.from(r.children).indexOf(t.currentElement)+1}) ${i}`):(r=t.currentElement,n=`:scope ${i}`);try{if(r.querySelector(n)){this.checkAppliedAction.apply(t);break}}catch{}}let e=this.checkAppliedAction.applied;return this.checkAppliedAction.applied=!1,e}relational(){return!0}},og=class extends fn{constructor(t,e,i){super(t,e),u(this,"checkAppliedAction"),u(this,"firstActions",[]),this.checkAppliedAction=new ng;for(let n of i)this.firstActions.push(Ih(n,this.checkAppliedAction))}matches(t){for(let r of this.firstActions)if(r.apply(t),this.checkAppliedAction.applied)break;if(!this.checkAppliedAction.applied)return!1;this.checkAppliedAction.applied=!1;let e=t.currentElement,i=1,n=nu(e);for(;n;)this.matchesSelector(n,t)&&i++,n=nu(n);return this.matchANPlusB(i)}matchesSelector(t,e){let i=e.instance,n=i.currentNamespace,r=i.currentLocalName,o=i.currentId,s=i.currentSiblingOrder;i.currentNamespace=t.namespaceURI,i.currentLocalName=t.localName,i.currentId=t.getAttribute("id");let a=1,h=t.previousElementSibling;for(;h;)a++,h=h.previousElementSibling;i.currentSiblingOrder=a;let l=new eg(i,e.currentStyle,t.classList?Array.from(t.classList):[],e.currentEpubTypes,t);for(let d of this.firstActions)if(d.apply(l),this.checkAppliedAction.applied)break;let c=this.checkAppliedAction.applied;return this.checkAppliedAction.applied=!1,i.currentNamespace=n,i.currentLocalName=r,i.currentId=o,i.currentSiblingOrder=s,c}getPriority(){return 5}},fx=class extends og{constructor(t,e,i){super(t,e,i)}matches(t){for(let r of this.firstActions)if(r.apply(t),this.checkAppliedAction.applied)break;if(!this.checkAppliedAction.applied)return!1;this.checkAppliedAction.applied=!1;let e=t.currentElement,i=1,n=Wa(e);for(;n;)this.matchesSelector(n,t)&&i++,n=Wa(n);return this.matchANPlusB(i)}getPriority(){return 4}},ca=class{constructor(t,e,i){u(this,"condition",t),u(this,"viewConditionId",e),u(this,"viewCondition",i)}increment(t){t.increment(this.condition,this.viewCondition)}decrement(t){t.decrement(this.condition,this.viewCondition)}buildViewConditionMatcher(t){return t.buildViewConditionMatcher(this.viewConditionId)}},gx=class sg extends ca{constructor(e,i,n){super(e,i,n)}fresh(e){return new sg(this.condition,this.viewConditionId,this.buildViewConditionMatcher(e))}push(e,i){return i==0&&this.increment(e),!1}pop(e,i){return i==0?(this.decrement(e),!0):!1}},mx=class ag extends ca{constructor(e,i,n){super(e,i,n)}fresh(e){return new ag(this.condition,this.viewConditionId,this.buildViewConditionMatcher(e))}push(e,i){return i==0?this.increment(e):i==1&&this.decrement(e),!1}pop(e,i){return i==0?(this.decrement(e),!0):(i==1&&this.increment(e),!1)}},yx=class lg extends ca{constructor(e,i,n){super(e,i,n),u(this,"fired",!1)}fresh(e){return new lg(this.condition,this.viewConditionId,this.buildViewConditionMatcher(e))}push(e,i){return this.fired?(this.decrement(e),!0):!1}pop(e,i){return this.fired?(this.decrement(e),!0):(i==0&&(this.fired=!0,this.increment(e)),!1)}},vx=class hg extends ca{constructor(e,i,n){super(e,i,n),u(this,"fired",!1)}fresh(e){return new hg(this.condition,this.viewConditionId,this.buildViewConditionMatcher(e))}push(e,i){return this.fired&&(i==-1?this.increment(e):i==0&&this.decrement(e)),!1}pop(e,i){if(this.fired){if(i==-1)return this.decrement(e),!0;i==0&&this.increment(e)}else i==0&&(this.fired=!0,this.increment(e));return!1}},wx=class{constructor(t,e,i){u(this,"afterprop",t),u(this,"element",e),u(this,"elementStyle",i)}fresh(t){return this}push(t,e){return!1}pop(t,e){return e==0?(t.processPseudoelementProps(this.afterprop,this.element,this.elementStyle),!0):!1}},bx=class{constructor(t){u(this,"lang",t)}fresh(t){return this}push(t,e){return!1}pop(t,e){return e==0?(t.lang=this.lang,!0):!1}},xx=class{constructor(t){u(this,"oldQuotes",t)}fresh(t){return this}push(t,e){return!1}pop(t,e){return e==0?(t.quotes=this.oldQuotes,!0):!1}},Sx=class extends dn{constructor(t,e,i,n){super(),u(this,"element",t),u(this,"scope",e),u(this,"propName",i),u(this,"validatorSet",n),u(this,"hadAttrFunction",!1)}validatePropertyValue(t){var e;if(Z(t))return t;let i=this.validatorSet.validators[this.propName];return i?(e=t.visit(i))!=null?e:w.unset:!this.propName||CSS.supports(this.propName,t.toString())?t:w.unset}visitFunc(t){var e;if(t.name.toLowerCase()!=="attr")return super.visitFunc(t);this.hadAttrFunction=!0;let i=Ph(t);if(!i)return super.visitFunc(t);let n=((e=i.fallback)!=null?e:d0(i.type)).visit(this);return!this.element||!this.element.hasAttribute(i.attributeName)?n:p0(this.scope,this.element.getAttribute(i.attributeName),i.type)||n}};function qr(t,e){if(At(t)){if(t instanceof K)return t.stringValue();if(t instanceof j&&e){let i=t.expr.evaluate(e);return typeof i=="string"?i:typeof i=="number"?String(i):""}if(t instanceof ee)return t.values.map(i=>qr(i,e)).join("")}return""}function Oh(t){if(t instanceof j){let e=t.expr;return e instanceof be&&/^page-counters?-/.test(e.str)}return t instanceof ee||t instanceof Be?t.values.some(e=>Oh(e)):!1}function Rl(t,e){return Oh(t)?t instanceof ee?new ee(t.values.map(i=>Rl(i,e))):t instanceof Be?new Be(t.values.map(i=>Rl(i,e))):t:new K(qr(t,e))}var Yr=class extends dn{constructor(t,e,i,n,r){super(),u(this,"cascade",t),u(this,"element",e),u(this,"counterResolver",i),u(this,"elementStyle",n),u(this,"pseudoName",r)}getCounterStore(){var t,e;return(e=(t=this.cascade.context)==null?void 0:t.counterStore)!=null?e:null}hasLocalCounterResetOrSet(t){return this.hasLocalCounter(t,"counter-reset",{reset:!0})||this.hasLocalCounter(t,"counter-set",{defaultValue:0})}hasLocalCounterIncrement(t){return this.hasLocalCounter(t,"counter-increment",{})}hasLocalCounter(t,e,i){let n=this.elementStyle[e];if(!n)return!1;let r=n.evaluate(this.cascade.context);if(!r||Z(r))return!1;let o=nn(r,i);return Object.prototype.hasOwnProperty.call(o,t)}evaluateAndGetString(t){if(!t)return"";let e=this.cascade.quoteDepth,i=t.visit(this),n=qr(i,this.cascade.context);return this.cascade.quoteDepth=e,n}visitIdent(t){let e=this.cascade,i=e.quotes,n=Math.floor(i.length/2)-1;switch(t.name){case"open-quote":{let r=i[2*Math.min(n,e.quoteDepth)];return e.quoteDepth++,r}case"close-quote":return e.quoteDepth>0&&e.quoteDepth--,i[2*Math.min(n,e.quoteDepth)+1];case"no-open-quote":return e.quoteDepth++,new K("");case"no-close-quote":return e.quoteDepth>0&&e.quoteDepth--,new K("")}return t}format(t,e){return this.cascade.counterStyleStore.format(e,t)}formatCounterList(t,e,i){if(!t.length)return this.format(0,i);let n=new mi;for(let r=0;r<t.length;r++)r>0&&n.append(e),n.append(this.format(t[r],i));return n.toString()}formatLastValue(t,e){let i=t.length?t[t.length-1]:0;return this.format(i,e)}buildCounterText(t,e,i,n,r,o=!1,s=!1){var a,h,l,c,d,p,f,g,m;let v=typeof r=="string",b=L=>v?this.formatCounterList(L,r,i):this.formatLastValue(L,i),x=L=>{this.pseudoName==="footnote-call"&&this.element&&Zf(this.element,e,L)},C=(L,I)=>L.length===I.length&&L.every((D,J)=>D===I[J]);if(this.pseudoName==="footnote-call"&&this.element){let L=H0(this.element,e);if(L)return b(L)}if(this.pseudoName==="footnote-marker"&&this.element){let L=Ds(this.element)[e];if(L)return b(L)}let y;if(e==="pages")return b([]);if(!this.element){if(o&&n.length)return y=n,x(y),b(y);if((a=t.isPageControlledCounter)!=null&&a.call(t,e)&&s&&n.length){let L=((h=t.currentPageCounters)==null?void 0:h[e])||[];return y=[(L.length?L[L.length-1]:0)+n[n.length-1]],x(y),b(y)}if(!((l=t.isPageControlledCounter)!=null&&l.call(t,e))){let L=((c=t.currentPageCounters)==null?void 0:c[e])||[];if(L.length)return y=L,x(y),b(y)}}let k=((d=t.currentPageDocCounters)==null?void 0:d[e])||[],S=!this.element&&n.length&&!C(n,k),N=this.element||S?n:k.length?k:n;if((p=t.isPageControlledCounter)!=null&&p.call(t,e)){let L=((f=t.currentPageDocCounters)==null?void 0:f[e])||[],I=((g=t.currentPageCounters)==null?void 0:g[e])||[],D=I.length?I[I.length-1]:0,J=L.length?L[0]:0,te=N.length?N[0]:0,P=D+(te-J);return y=N.length?[P,...N.slice(1)]:I.length?I:[0],x(y),b(y)}return N.length?(y=N,x(y),b(y)):(y=((m=t.currentPageCounters)==null?void 0:m[e])||[],x(y),b(y))}visitFuncCounter(t){var e;let i=t[0].toString(),n=t.length>1?t[1].stringValue():"decimal",r=(this.cascade.counters[i]||[]).slice(),o=!this.element&&this.hasLocalCounterResetOrSet(i),s=!this.element&&this.hasLocalCounterIncrement(i),a=this.getCounterStore();if(a){let l=i==="pages"||((e=a?.isPageControlledCounter)==null?void 0:e.call(a,i)),c=this.counterResolver.pageScope,d=new be(c,()=>this.buildCounterText(a,i,n,r,void 0,o,s),l?`page-counter-${i}`:`counter-${i}`);if(l&&a!=null&&a.registerPageCounterExpr){let p=f=>this.formatLastValue(f,n);a.registerPageCounterExpr(i,p,d)}return new j(d)}let h=this.cascade.counters[i];if(h&&h.length){let l=h&&h.length&&h[h.length-1]||0;return new K(this.format(l,n))}else{let l=new j(this.counterResolver.getPageCounterVal(i,c=>this.format(c||0,n)));return new ee([l])}}visitFuncCounters(t){var e;let i=t[0].toString(),n=t[1].stringValue(),r=t.length>2?t[2].stringValue():"decimal",o=(this.cascade.counters[i]||[]).slice(),s=!this.element&&this.hasLocalCounterResetOrSet(i),a=!this.element&&this.hasLocalCounterIncrement(i),h=this.getCounterStore();if(h){let p=i==="pages"||((e=h?.isPageControlledCounter)==null?void 0:e.call(h,i)),f=this.counterResolver.pageScope,g=new be(f,()=>this.buildCounterText(h,i,r,o,n,s,a),p?`page-counters-${i}`:`counters-${i}`);return p&&h!=null&&h.registerPageCounterExpr&&h.registerPageCounterExpr(i,m=>this.formatCounterList(m,n,r),g),new j(g)}let l=this.cascade.counters[i],c=new mi;if(l&&l.length)for(let p=0;p<l.length;p++)p>0&&c.append(n),c.append(this.format(l[p],r));let d=new j(this.counterResolver.getPageCountersVal(i,p=>{let f=[];if(p.length)for(let m=0;m<p.length;m++)f.push(this.format(p[m],r));let g=c.toString();return g.length&&f.push(g),f.length?f.join(n):this.format(0,r)}));return new ee([d])}visitFuncTargetCounter(t){let e=t[0],i;e instanceof et?i=e.url:i=e.stringValue();let n=t[1].toString(),r=t.length>2?t[2].stringValue():"decimal",o=new j(this.counterResolver.getTargetCounterVal(i,n,s=>this.format(s||0,r)));return new ee([o])}visitFuncTargetCounters(t){let e=t[0],i;e instanceof et?i=e.url:i=e.stringValue();let n=t[1].toString(),r=t[2].stringValue(),o=t.length>3?t[3].stringValue():"decimal",s=new j(this.counterResolver.getTargetCountersVal(i,n,a=>{let h=a.map(l=>this.format(l,o));return h.length?h.join(r):this.format(0,o)}));return new ee([s])}visitFuncTargetText(t){let e=t[0],i;e instanceof et?i=e.url:i=e.stringValue();let n=t.length>1?t[1].stringValue():"content",r=new j(this.counterResolver.getTargetTextVal(i,n));return new ee([r])}visitFuncString(t){let e=t.length>0?t[0].stringValue():"",i=t.length>1?t[1].stringValue():"first";return new j(this.counterResolver.getNamedStringVal(e,i))}visitFuncElement(t){let e=t.length>0?t[0].stringValue():"",i=t.length>1?t[1].stringValue():"first";return new j(this.counterResolver.getRunningElementVal(e,i))}visitFuncContent(t){var e,i,n,r,o,s,a,h;let l=t.length>0?t[0].stringValue():"text",c="";switch(l){case"text":c=this.element.textContent;break;case"before":case"after":case"marker":{let d=(e=this.element)==null?void 0:e.querySelectorAll(`[data-adapt-pseudo="${l}"]`),p=null;if(d&&this.element)for(let f=0;f<d.length;f++){let g=d[f];if(g.parentElement===this.element){p=g;break}}if(p)c=p.textContent||"";else{let f=lt(this.elementStyle,"_pseudos"),g=(n=(i=f?.[l])==null?void 0:i.content)==null?void 0:n.value;if(g)c=this.evaluateAndGetString(g);else if(l==="marker"){let m=(r=this.elementStyle["--viv-marker-content"])==null?void 0:r.value;c=qr(m,this.cascade.context)}}}break;case"first-letter":{let d=lt(this.elementStyle,"_pseudos"),p=(s=(o=d?.before)==null?void 0:o.content)==null?void 0:s.value,f=(h=(a=d?.after)==null?void 0:a.content)==null?void 0:h.value,g=(this.evaluateAndGetString(p)||this.element.textContent||this.evaluateAndGetString(f)).match(ps);c=g?g[0]:""}break}return new K(c)}visitFuncLeader(t){let e="";if(t[0]instanceof he)switch(t[0].stringValue()){case"dotted":e=".";break;case"solid":e="_";break;case"space":e=" ";break}else t[0]instanceof K&&(e=t[0].stringValue());return e.length==0?new K(""):new j(new be(this.counterResolver.rootScope,()=>e,"viv-leader"))}visitFunc(t){switch(t.name){case"counter":if(t.values.length<=2)return this.visitFuncCounter(t.values);break;case"counters":if(t.values.length<=3)return this.visitFuncCounters(t.values);break;case"target-counter":if(t.values.length<=3)return this.visitFuncTargetCounter(t.values);break;case"target-counters":if(t.values.length<=4)return this.visitFuncTargetCounters(t.values);break;case"target-text":if(t.values.length>=1&&t.values.length<=2)return this.visitFuncTargetText(t.values);break;case"string":if(t.values.length<=2)return this.visitFuncString(t.values);break;case"element":if(t.values.length<=2)return this.visitFuncElement(t.values);break;case"content":if(t.values.length<=1)return this.visitFuncContent(t.values);break;case"leader":if(t.values.length<=1)return this.visitFuncLeader(t.values);break}return t}};function Ba(t,e,i){let n;if(t.nodeType===1)n=Array.from(t.getClientRects());else{let r=t.ownerDocument.createRange();r.selectNodeContents(t),n=e.getRangeClientRects(r)}return n.reduce((r,o)=>r+(i==="vertical-rl"||i==="vertical-lr"?o.height:o.width),0)}function Cx(t){let e=Lt(t);return e!==null&&e.after&&e.viewNode.hasAttribute("data-viv-leader")&&e.blockContainer!==null?e:null}var kx=(t,e,i)=>{let n=e.flatMap(h=>{let l=Cx(h),c=l?.viewNode.parentElement,d=c?.parentElement;return l&&c&&d?[{leaderContext:l,pseudoElem:c,pseudoParent:d}]:[]});for(let{leaderContext:h,pseudoElem:l,pseudoParent:c}of n){let d=function(E){y==="rtl"?v.textContent=(E.startsWith("\u200F")?"":"\u200F")+E+(E.endsWith("\u200F")?"":"\u200F"):v.textContent=E},p=function(){let E=i.clientLayout.getElementClientRect(l);return C==="vertical-rl"||C==="vertical-lr"?y==="rtl"?E.top-=M:E.bottom+=M:y==="rtl"?E.left-=M:E.right+=M,L.left>E.left||L.right<E.right||L.top>E.top||L.bottom<E.bottom},f=function(){let E,O,T=x.repeat(1e4);if(d(T),p())E=1,O=1e4;else return;for(let $=0;$<16;$++){let G="",q=Math.floor((E+O)/2);for(let Q=0;Q<q;Q++)G+=x;if(d(G),p())O=q;else{if(E==q)return;E=q}}d(x)},g=function(E){let O=0,T=l.parentElement;for(;T&&T!==m.viewNode;)O+=i.getComputedInsets(T)[E],T=T.parentElement;return O};var r=d,o=p,s=f,a=g;let m=h.blockContainer,v=h.viewNode,b=l.getAttribute("data-adapt-pseudo"),x=v.getAttribute("data-viv-leader-value"),{writingMode:C,direction:y,marginInlineEnd:k}=i.clientLayout.getElementComputedStyle(l);v.style.marginInlineStart="1px",d(x),l.style.display="inline-block",l.style.textIndent="0";let S=co(m.viewNode),N=S?.style.columnFill||null;S&&(S.style.columnFill="auto");let L=i.clientLayout.getElementClientRect(m.viewNode),I=i.clientLayout.getElementClientRect(l),D=i.parseComputedLength(k),J=[],te=c;for(;te.parentElement&&te.parentElement!==m.viewNode;)te=te.parentElement;let P=te.nextSibling;for(;P;){if(P.nodeType===1){let E=P,{display:O,float:T,position:$}=i.clientLayout.getElementComputedStyle(E);if(T!=="none"||$==="absolute"||$==="fixed"){P=P.nextSibling;continue}if(Wt(O))J.push(E);else if(cw(O))break}else if(P.nodeType===3){let E=P;E.length>0&&J.push(E)}P=P.nextSibling}let M=J.reduce((E,O)=>E+Ba(O,i.clientLayout,C),0);if(b!=="after"){let E=Ba(te,i.clientLayout,C),O=Ba(l,i.clientLayout,C);M+=E-O}C==="vertical-rl"||C==="vertical-lr"?(y==="rtl"?L.top+=D:L.bottom-=D,L.top=Math.min(I.top,L.top),L.bottom=Math.max(I.bottom,L.bottom)):(y==="rtl"?L.left+=D:L.right-=D,L.left=Math.min(I.left,L.left),L.right=Math.max(I.right,L.right)),f();let A=i.clientLayout.getElementClientRect(l);y=="rtl"?l.style.float="left":l.style.float="right";let H=i.clientLayout.getElementClientRect(l),z=0;y=="rtl"?C=="vertical-rl"||C=="vertical-lr"?z=A.top-H.top-g("top"):z=A.left-H.left-g("left"):C=="vertical-rl"||C=="vertical-lr"?z=H.bottom-A.bottom-g("bottom"):z=H.right-A.right-g("right"),z-=M,z=Math.max(0,z-.1),l.style.float="",v.style.marginInlineStart=`${z}px`,S&&(N?S.style.columnFill=N:S.style.removeProperty("column-fill"))}};Ft("POST_LAYOUT_BLOCK",kx);var Bh=1/1048576;function wn(t,e){for(let i in t)e[i]=t[i].clone()}var Px=class ug{constructor(){u(this,"nsCount",0),u(this,"nsPrefix",{}),u(this,"tags",{}),u(this,"nstags",{}),u(this,"epubtypes",{}),u(this,"classes",{}),u(this,"ids",{}),u(this,"pagetypes",{}),u(this,"order",0),u(this,"layerTrees",{})}clone(){let e=new ug;e.nsCount=this.nsCount;for(let i in this.nsPrefix)e.nsPrefix[i]=this.nsPrefix[i];wn(this.tags,e.tags),wn(this.nstags,e.nstags),wn(this.epubtypes,e.epubtypes),wn(this.classes,e.classes),wn(this.ids,e.ids),wn(this.pagetypes,e.pagetypes),e.order=this.order;for(let i in this.layerTrees)e.layerTrees[i]=this.layerTrees[i];return e}registerLayer(e,i,n){var r,o;return((o=(r=this.layerTrees)[e])!=null?o:r[e]=new M0).register(i,n)}insertInTable(e,i,n){let r=e[i];r&&(n=r.mergeWith(n)),e[i]=n}createInstance(e,i,n,r,o,s,a,h,l,c,d){return new Ex(this,e,i,n,r,o,s,a,h,l,c,d)}nextOrder(){return this.order+=Bh}},cg=class dg{constructor(e,i,n,r,o,s,a,h,l,c,d,p){u(this,"context",i),u(this,"counterListener",n),u(this,"counterResolver",r),u(this,"counterStyleStore",s),u(this,"cmykStore",a),u(this,"root",h),u(this,"scope",l),u(this,"validatorSet",c),u(this,"styles",d),u(this,"mergeValidatorSet",p),u(this,"code"),u(this,"stack",[[],[]]),u(this,"conditions",Object.create(null)),u(this,"currentElement",null),u(this,"currentElementOffset",null),u(this,"currentLocalName",""),u(this,"currentNamespace",null),u(this,"currentId",null),u(this,"currentXmlId",null),u(this,"currentNSTag",""),u(this,"currentPageType",null),u(this,"previousPageType",null),u(this,"firstPageType",null),u(this,"pageTypePageIndices",Object.create(null)),u(this,"isFirst",!0),u(this,"isRoot",!0),u(this,"counters",Object.create(null)),u(this,"lastCounterChanges",[]),u(this,"lastCounterChangeTypes",Object.create(null)),u(this,"counterScoping",[Object.create(null)]),u(this,"quotes"),u(this,"quoteDepth",0),u(this,"lang",""),u(this,"siblingOrderStack",[0]),u(this,"currentSiblingOrder",0),u(this,"siblingTypeCountsStack",[Ho()]),u(this,"currentSiblingTypeCounts"),u(this,"currentFollowingSiblingOrder",null),u(this,"followingSiblingOrderStack"),u(this,"followingSiblingTypeCountsStack",[Ho()]),u(this,"currentFollowingSiblingTypeCounts"),u(this,"viewConditions",Object.create(null)),u(this,"dependentConditions",[]),u(this,"elementStack",[]),this.code=e,this.quotes=[new K("\u201C"),new K("\u201D"),new K("\u2018"),new K("\u2019")],this.currentSiblingTypeCounts=this.siblingTypeCountsStack[0],this.followingSiblingOrderStack=[this.currentFollowingSiblingOrder],this.currentFollowingSiblingTypeCounts=this.siblingTypeCountsStack[0]}pushConditionItem(e){this.stack[this.stack.length-1].push(e)}increment(e,i){this.conditions[e]=(this.conditions[e]||0)+1,i&&(this.viewConditions[e]?this.viewConditions[e].push(i):this.viewConditions[e]=[i])}decrement(e,i){this.conditions[e]--,this.viewConditions[e]&&(this.viewConditions[e]=this.viewConditions[e].filter(n=>n!==i),this.viewConditions[e].length===0&&delete this.viewConditions[e])}buildViewConditionMatcher(e){let i=null;e&&(this.currentElementOffset,i=Vo.buildViewConditionMatcher(this.currentElementOffset,e));let n=this.dependentConditions.map(r=>{let o=this.viewConditions[r];return o&&o.length>0?o.length===1?o[0]:Vo.buildAnyMatcher([].concat(o)):null}).filter(r=>r!==null);return n.length<=0?i:i===null?n.length===1?n[0]:Vo.buildAllMatcher(n):Vo.buildAllMatcher([i].concat(n))}applyAction(e,i,n){let r=i[n];r&&r.apply(e)}pushRule(e,i,n){this.currentElement=null,this.currentElementOffset=null,this.currentNamespace=null,this.currentLocalName="",this.currentId=null,this.currentXmlId=null,this.currentNSTag="",this.currentPageType=i,this.applyActions(new Qf(this,n,e,Ma))}defineCounter(e,i){let n=this.counterScoping[this.counterScoping.length-1];n||(n=Object.create(null),this.counterScoping[this.counterScoping.length-1]=n),this.counters[e]?(n[e]&&this.counters[e].pop(),this.counters[e].push(i)):this.counters[e]=[i],n[e]=!0}pushCounters(e,i){var n,r,o,s,a,h,l,c,d,p;let f=new Set,g=Object.create(null),m=w.inline,v=e.display;if(v&&(m=v.evaluate(this.context)),m===w.none){(n=this.currentElement)==null||n.setAttribute("data-viv-display-none","true"),this.lastCounterChanges=[],this.lastCounterChangeTypes=Object.create(null),this.counterScoping.push(null);return}else if((r=this.currentElement)!=null&&r.closest("[data-viv-display-none]")){this.lastCounterChanges=[],this.lastCounterChangeTypes=Object.create(null),this.counterScoping.push(null);return}let b=w.inline,x=e.float;x&&(b=x.evaluate(this.context));let C=null,y=null,k=null,S=e["counter-reset"];if(S){let I=S.evaluate(this.context);I&&(C=nn(I,{reset:!0}))}let N=e["counter-set"];if(N){let I=N.evaluate(this.context);I&&(k=nn(I,{defaultValue:0}))}let L=e["counter-increment"];if(L){let I=L.evaluate(this.context);I&&(y=nn(I))}if((this.currentLocalName=="ol"||this.currentLocalName=="ul")&&this.currentNamespace=="http://www.w3.org/1999/xhtml"&&(C||(C=Object.create(null)),C["list-item"]=((s=(o=this.currentElement)==null?void 0:o.start)!=null?s:1)-1),mr(m)&&(y||(y=Object.create(null)),y["list-item"]=(a=y["list-item"])!=null?a:1,/^\s*[-+]?\d/.test((l=(h=this.currentElement)==null?void 0:h.getAttribute("value"))!=null?l:"")&&(k||(k=Object.create(null)),k["list-item"]=this.currentElement.value)),((d=(c=this.currentElement)==null?void 0:c.parentNode)==null?void 0:d.nodeType)===Node.DOCUMENT_NODE&&(C||(C=Object.create(null)),C.footnote===void 0&&(C.footnote=0)),b===w.footnote&&!i["--viv-semantic-footnote-content"]&&(y||(y=Object.create(null)),y.footnote===void 0)){let I=(p=i["counter-increment"])==null?void 0:p.value;(!I||!(I===w.footnote||I instanceof ee&&I.values.includes(w.footnote)))&&(y.footnote=1)}if(C)for(let I in C)f.add(I),g[I]="reset";if(y)for(let I in y)f.add(I),g[I]||(g[I]="increment");if(k)for(let I in k)f.add(I),g[I]="set";if(this.lastCounterChanges=Array.from(f),this.lastCounterChangeTypes=g,C)for(let I in C)this.defineCounter(I,C[I]);if(y)for(let I in y){this.counters[I]||this.defineCounter(I,0);let D=this.counters[I];D[D.length-1]+=y[I]}if(k)for(let I in k)if(!this.counters[I])this.defineCounter(I,k[I]);else{let D=this.counters[I];D[D.length-1]=k[I]}if(mr(m)){let I=this.counters["list-item"],D=I[I.length-1];e["ua-list-item-count"]=new X(new It(D),0);let J=li(e,"_pseudos");J.marker||(J.marker={})}this.counterScoping.push(null)}popCounters(){let e=this.counterScoping.pop();if(e)for(let i in e){let n=this.counters[i];n&&(n.length==1?delete this.counters[i]:n.pop())}}setNamedStrings(e,i,n){let r=e["string-set"];if(!r)return;r=r.filterValue(new Yr(this,i,this.counterResolver,e));let o=r.value instanceof Be?r.value.values:[r.value];for(let s of o)if(s instanceof ee){let a=s.values[0].stringValue(),h=s.values.slice(1);if(h.some(l=>Oh(l)))this.counterResolver.setNamedString(a,Rl(new ee(h),this.context),n);else{let l=h.map(c=>qr(c,this.context)).join("");this.counterResolver.setNamedString(a,l,n)}}delete e["string-set"]}setRunningElement(e,i){let n=e.position;if(n?.value instanceof Vt&&n.value.name==="running"){let r=n.value.values[0].stringValue();this.counterResolver.setRunningElement(r,i)}}processPseudoelementProps(e,i,n,r){this.pushCounters(e,n);let o=e.content;o&&(e.content=o.filterValue(new Yr(this,i,this.counterResolver,n,r))),this.popCounters()}pushElement(e,i,n){var r,o,s;let a=this.currentPageType;this.currentPageType=null,this.currentElement=e,this.currentElementOffset=n,this.currentNamespace=e.namespaceURI,this.currentLocalName=e.localName;let h=this.currentNamespace!==null?this.code.nsPrefix[this.currentNamespace]:void 0;h?this.currentNSTag=h+this.currentLocalName:this.currentNSTag="",this.currentId=e.getAttribute("id"),this.currentXmlId=e.getAttributeNS("http://www.w3.org/XML/1998/namespace","id");let l=e.getAttribute("class"),c=l?l.split(/\s+/):Ma,d=e.getAttributeNS("http://www.idpf.org/2007/ops","type"),p=d?d.split(/\s+/):Ma,f=ja(e);f&&(this.stack[this.stack.length-1].push(new bx(this.lang)),this.lang=f.toLowerCase());let g=this.isRoot,m=this.siblingOrderStack;this.currentSiblingOrder=++m[m.length-1],m.push(0);let v=this.siblingTypeCountsStack,b=this.currentSiblingTypeCounts=v[v.length-1],x=Vs(b,this.currentNamespace);x[this.currentLocalName]=(x[this.currentLocalName]||0)+1,v.push(Ho());let C=this.followingSiblingOrderStack,y=C[C.length-1];y!==null?this.currentFollowingSiblingOrder=C[C.length-1]=y-1:this.currentFollowingSiblingOrder=null,C.push(null);let k=this.followingSiblingTypeCountsStack,S=this.currentFollowingSiblingTypeCounts=k[k.length-1],N=S&&(this.currentNamespace!==null?S.byNamespace[this.currentNamespace]:S.noNamespace);N&&N[this.currentLocalName]--,k.push(Ho());let L=new eg(this,i,c,p,e);this.applyActions(L),this.currentPageType=a,this.applyVarFilter([i],e),Xn(i,!0)&&this.applyVarFilter([i],e),this.applyCalcFilter(i,this.context),this.applyCmykFilter(i,e),this.applyAttrFilter(e,i);let I=i.quotes,D=null;if(I){let P=I.evaluate(this.context);P&&(D=new xx(this.quotes),P===w.none?this.quotes=[new K(""),new K("")]:P===w.auto||P===w.initial?this.quotes=[new K("\u201C"),new K("\u201D"),new K("\u2018"),new K("\u2019")]:P instanceof ee&&(this.quotes=P.values))}this.pushCounters(i,i);let J=this.currentId||this.currentXmlId||e.getAttribute("name")||"";if(g||J){let P=Object.create(null);Object.keys(this.counters).forEach(M=>{P[M]=Array.from(this.counters[M])}),this.counterListener.countersOfId(J,P)}let te=lt(i,"_pseudos");if(te){let P=!0;for(let M of Nx){M||(P=!1);let A=te[M];if(A){let H=(r=ge(i,"float"))==null?void 0:r.value,z=e instanceof Element&&qt(e),E=e instanceof Element&&Et(e),O=!!ge(i,"--viv-semantic-footnote-content"),T=H===w.footnote,$=(M==="before"||M==="after")&&(T||E||O)&&!!A.content,G=U0(A),q=M==="footnote-call"&&z&&G,Q=M==="footnote-marker"&&(E||O)&&G;if((M==="before"||M==="after")&&!($||At((o=A.content)==null?void 0:o.value)||this.hasNonTrivialViewConditionalPseudoContent(A))||M==="marker"&&!mr((s=ge(i,"display"))==null?void 0:s.value)||(M==="footnote-call"||M==="footnote-marker")&&H!==w.footnote&&!q&&!Q||(M==="footnote-call"||M==="footnote-marker")&&O&&!G)delete te[M];else if(P){if(this.processPseudoelementProps(A,e,i,M),M==="marker")this.processMarkerPseudoelementProps(A,e,i),delete te[M];else if(M==="footnote-marker"){if(this.resolvePseudoelementInheritedPropertyValue(A,"list-style-position",e,i)===w.outside){this.processMarkerPseudoelementProps(A,e,i);let oe=A.content;oe&&(i["_footnote-marker-content"]=oe),i.display=new X(_("list-item"),0),i["list-style-position"]=new X(w.outside,0),i["list-style-type"]=new X(w.none,0),i["list-style-image"]=new X(w.none,0),delete te[M]}}else if(M==="first-letter"&&A["initial-letter"]){let oe=A["initial-letter"].evaluate(this.context);oe!==w.normal&&!Z(oe)&&(i["--viv-initialLetter"]=new X(oe,0)),delete A["initial-letter"]}}else this.stack[this.stack.length-2].push(new wx(A,e,i))}}}return this.setNamedStrings(i,e,n),this.setRunningElement(i,n),D&&this.stack[this.stack.length-2].push(D),L}hasNonTrivialViewConditionalPseudoContent(e){let i=e._viewConditionalStyles;return!i||i.length<=0?!1:i.some(n=>{var r;return At((r=n.styles.content)==null?void 0:r.value)})}processMarkerPseudoelementProps(e,i,n){var r,o,s,a,h;let l=mr((r=n.display)==null?void 0:r.value);if(!At((o=e.content)==null?void 0:o.value)&&l){let d=this.getInheritedPropertyValue("list-style-type",i,n),p=this.getInheritedPropertyValue("list-style-image",i,n);if(p instanceof et)e.content=new X(new ee([p,new K(" ")]),0);else if(d instanceof K)e.content=new X(d,0);else if(d instanceof he&&d!==w.none){let f=(a=(s=n["ua-list-item-count"])==null?void 0:s.value)==null?void 0:a.num;if(f!=null){let g=d.name.toLowerCase();g==="disc"||g==="circle"||g==="square"||g==="disclosure-open"||g==="disclosure-closed"||(e.content=new X(new K(this.counterStyleStore.formatMarker(d.name,f)),0))}}}let c=e.content;if(c){let d=c.value;if(At(d)){let p=this.resolveMarkerContentVal(d);n["--viv-marker-content"]=new X(p,0)}}for(let d of dg.markerAllowedProps){let p=e[d];if(p){let f=p.evaluate(this.context,d);f&&!Z(f)&&(n[`--viv-marker-${d}`]=new X(f,0))}}if(!Wt((h=ge(n,"display"))==null?void 0:h.value)){let d=this.getInheritedPropertyValue("list-style-position",i,n);d&&d!==w.outside&&!Z(d)&&(n["list-style-position"]=new X(d,0))}}resolveMarkerContentVal(e){if(e instanceof j){let i=e.expr.evaluate(this.context);return typeof i=="string"?new K(i):typeof i=="number"?new K(String(i)):e}if(e instanceof ee){let i=e.values.map(n=>this.resolveMarkerContentVal(n));return new ee(i)}return e}getInheritedPropertyValue(e,i,n){var r;for(let o=i;o;o=o.parentElement){let s=(o===i?n:this.styles.styleOf(o))[e];if(s){let a=s.evaluate(this.context,e);if(a===w.inherit||a===w.unset||Rt(a))continue;if(a===w.initial)break;return a}}return(r=this.validatorSet.defaultValues[e])!=null?r:null}resolvePseudoelementInheritedPropertyValue(e,i,n,r){var o;let s=e[i];if(s){let a=s.evaluate(this.context,i);if(a!==w.inherit&&a!==w.unset&&!Rt(a))return a===w.initial?(o=this.validatorSet.defaultValues[i])!=null?o:null:a}return this.getInheritedPropertyValue(i,n,r)}applyAttrFilterInner(e,i){for(let n in i)if(Ii(n)&&!ze(n)){let r=i[n],o=new Sx(e,this.scope,n,this.validatorSet),s=r.filterValue(o);if(!o.hadAttrFunction){i[n]=s;continue}let a=o.validatePropertyValue(s.value);i[n]=s.withValue(a)}}applyAttrFilter(e,i){let n=lt(i,"_pseudos");for(let r in n)this.applyAttrFilterInner(e,n[r]);this.applyAttrFilterInner(e,i)}applyVarFilter(e,i){let n=e[0],r=e.map(c=>({...c})),o=32,s={},a=lt(n,"_pseudos"),h=Object.keys(n).filter(Ii),l=c=>{var d,p,f;let g=ge(n,c),m=g.value,v=ze(c)?r:e,b=new Mx(v,this.styles,this.root,i,ze(c)?c:null);ze(c)&&b.getFallbackCycleMembers(m,v,i)&&(m=w.initial);for(let x=0;;x++){if(x>=o){m=ze(c)?w.initial:w.unset;break}let C=m.visit(b);if(b.error){m=ze(c)?w.initial:w.unset,b.error=!1;break}if(C===m)break;m=C}if(m!==g.value){let x=(d=this.validatorSet.getShorthand(c,m))==null?void 0:d.clone(this.scope);if(x)if(Z(m)){for(let C of x.propList){let y=g.withValue(m),k=ge(n,C);Bi(s,C,Nl(this.context,k,y))}delete n[c]}else{let C=Mi(this.scope,new xt(m.toString(),null),"");if(C&&(C.visit(x),!x.error)){for(let y of x.propList){let k=g.withValue((f=(p=x.values[y])!=null?p:this.validatorSet.defaultValues[y])!=null?f:w.initial),S=ge(n,y);Bi(s,y,Nl(this.context,S,k))}delete n[c]}}else n[c]=g.withValue(m)}if(s[c]){let x=ge(n,c);x&&x.value!==Ae&&ei(s,c,x,this.context)}};for(let c in n)if(Or(c)){if(c==="_pseudos")continue;let d=lt(n,c);for(let p in d)this.applyVarFilter([d[p],...e],i)}for(let c of h)ze(c)&&l(c);for(let c of h)ze(c)||l(c);if(a)for(let c in a)this.applyVarFilter([a[c],...e],i);for(let c in s)n[c]=s[c]}applyCalcFilter(e,i){let n=new Mh(i);for(let r in e)if(Or(r)){let o=lt(e,r);for(let s in o)this.applyCalcFilter(o[s],i)}else if(Ii(r)&&!ze(r)){let o=ge(e,r);e[r]=o.withValue(o.value.visit(n))}}applyCmykFilter(e,i){let n=new Vd(this.cmykStore);if(this.applyCmykFilterInternal(e,n,""),i){let r=n.getConversions();r&&i.setAttribute("data-viv-device-cmyk",JSON.stringify(r))}}applyCmykFilterInternal(e,i,n){for(let r in e)if(Or(r)){let o=lt(e,r);for(let s in o)this.applyCmykFilterInternal(o[s],i,`::${s}:`)}else if(Ii(r)&&!ze(r)){let o=ge(e,r),s=o.value.toString();i.reset();let a=o.value.visit(i);a!==o.value&&(i.hadDeviceCmyk()&&i.recordConversion(n+r,s),e[r]=o.withValue(a))}}applyActions(e){let i,n=e.currentClassNames;for(i=0;i<n.length;i++)this.applyAction(e,this.code.classes,n[i]);let r=e.currentEpubTypes;for(i=0;i<r.length;i++)this.applyAction(e,this.code.epubtypes,r[i]);this.currentId!==null&&this.applyAction(e,this.code.ids,this.currentId),this.applyAction(e,this.code.tags,this.currentLocalName),this.currentLocalName!=""&&this.applyAction(e,this.code.tags,"*"),this.applyAction(e,this.code.nstags,this.currentNSTag),this.currentPageType!==null&&(this.applyAction(e,this.code.pagetypes,this.currentPageType),this.applyAction(e,this.code.pagetypes,"*")),this.stack.push([]);for(let o=1;o>=-1;--o){let s=this.stack[this.stack.length-o-2];for(i=0;i<s.length;)s[i].push(this,o)?s.splice(i,1):i++}this.isFirst=!0,this.isRoot=!1,Xn(e.currentStyle)}pop(){for(let e=1;e>=-1;--e){let i=this.stack[this.stack.length-e-2],n=0;for(;n<i.length;)i[n].pop(this,e)?i.splice(n,1):n++}this.stack.pop(),this.isFirst=!1}popRule(){this.pop()}popElement(e){this.siblingOrderStack.pop(),this.siblingTypeCountsStack.pop(),this.followingSiblingOrderStack.pop(),this.followingSiblingTypeCountsStack.pop(),this.pop(),this.popCounters()}};u(cg,"markerAllowedProps",["color","font-family","font-size","font-style","font-weight","font-variant","hyphens","line-height","tab-size","text-combine-upright","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-orientation","text-shadow","text-transform","unicode-bidi","direction","white-space"]);var Ex=cg,Ma=[],Nx=["before","footnote-call","footnote-marker","marker","inner","first-letter","first-line","","after"],Ll=class pg{constructor(){u(this,"actions",[])}push(e){this.actions.push(e)}restartWith(e){let i=new pg;return i.push(e),i}emit(e,i){i.insertChained(Ih(this.actions,e))}contributeTo(e){e.takeAlternative(this.actions)}recordTextIn(e,i){e.push(i)}finishIn(e){e.applyRuleForSelector()}},ac=class{push(){}restartWith(){return this}emit(){}contributeTo(){}recordTextIn(){}finishIn(){}},$s=class extends Jn{constructor(t,e,i,n,r,o,s){super(t,e,s),u(this,"condition",i),u(this,"regionId",r),u(this,"validatorSet",o),u(this,"chain",new ac),u(this,"selectorListVoided",!1),u(this,"pendingChained",[]),u(this,"specificity",0),u(this,"elementStyle",null),u(this,"ruleId",0),u(this,"conditionCount",0),u(this,"pseudoelement",null),u(this,"footnoteContent",!1),u(this,"cascade"),u(this,"layer"),u(this,"state"),u(this,"viewConditionId",null),u(this,"insideSelectorRule"),u(this,"invalid",!1),this.cascade=n?n.cascade:new Px,this.layer=n?n.layer:null,this.state=0}layerStatementRule(t){for(let e of t)this.cascade.registerLayer(this.flavor,this.layer,e)}insertNonPrimary(t){this.cascade.insertInTable(this.cascade.tags,"*",t)}processChain(t){this.chain.emit(t,this)}insertChained(t){this.pendingChained.push(t)}takePendingChained(){for(let t of this.pendingChained)t instanceof Rh&&t.makePrimary(this.cascade)||this.insertNonPrimary(t);this.pendingChained.splice(0)}invalidContinuationAfterPseudoelement(t){return this.pseudoelement?(this.invalidSelector(`::${this.pseudoelement} followed by ${t}`),!0):!1}isInsideSelectorRule(t){return this.state!=0?(this.reportAndSkip(t),!0):!1}tagSelector(t,e){!e&&!t||this.invalidContinuationAfterPseudoelement(e||"*")||(e&&(this.specificity+=1),e&&t?this.chain.push(new J0(t,e.toLowerCase())):e?this.chain.push(new rc(e.toLowerCase())):this.chain.push(new ex(t)))}invalidSelector(t){Y.warn(t),this.setInvalid(),this.voidSelectorList()}setInvalid(){this.invalid=!0;for(let t=this;t instanceof qn;t=t.parent)t.parent.invalid=!0}classSelector(t){this.invalidContinuationAfterPseudoelement(`.${t}`)||(this.specificity+=256,this.chain.push(new Z0(t)))}pseudoclassSelector(t,e){if(!this.invalidContinuationAfterPseudoelement(`:${t}`)){if(e?!lc.has(t.toLowerCase()):lc.has(t.toLowerCase())){this.invalidSelector(`Unsupported pseudo-class :${t}`);return}switch(t.toLowerCase()){case"enabled":this.chain.push(new lx);break;case"disabled":this.chain.push(new hx);break;case"checked":this.chain.push(new ux);break;case"root":case"scope":this.chain.push(new ox);break;case"link":case"any-link":this.chain.push(new rc("a")),this.chain.push(new oc("","href"));break;case"href-epub-type":case"href-role-type":if(e&&e.length>=1&&typeof e[0]=="string"){let i=e[0],n=new RegExp(`(^|\\s)${gs(i)}($|\\s)`),r=e[1];this.chain.push(new Q0(n,r,t==="href-role-type"))}else this.chain.push(new rt(""));break;case"footnote-content":this.footnoteContent=!0;break;case"visited":case"active":case"hover":case"focus":this.chain.push(new rt(""));break;case"lang":if(e&&e.length==1&&typeof e[0]=="string"){let i=e[0];this.chain.push(new rx(new RegExp(`^${gs(i.toLowerCase())}($|-)`)))}else this.chain.push(new rt(""));break;case"dir":if(e&&e.length==1&&typeof e[0]=="string"){/^(ltr|rtl)$/i.test(e[0])?this.chain.push(new cx(`:dir(${e[0].toLowerCase()})`)):this.chain.push(new rt(""));break}this.invalidSelector(`Invalid pseudo-class :${t}`);return;case"nth-child":case"nth-last-child":case"nth-of-type":case"nth-last-of-type":{let i=Tx[t.toLowerCase()];e&&e.length==2?this.chain.push(new i(e[0],e[1])):this.chain.push(new rt(""));break}case"first-child":this.chain.push(new sc);break;case"last-child":this.chain.push(new Al(0,1));break;case"first-of-type":this.chain.push(new Il(0,1));break;case"last-of-type":this.chain.push(new Fl(0,1));break;case"only-child":this.chain.push(new sc),this.chain.push(new Al(0,1));break;case"only-of-type":this.chain.push(new Il(0,1)),this.chain.push(new Fl(0,1));break;case"empty":this.chain.push(new ax);break;case"before":case"after":case"first-line":case"first-letter":this.pseudoelementSelector(t,e);return;default:this.invalidSelector(`Unknown pseudo-class :${t}`);return}this.specificity+=256}}pseudoelementSelector(t,e){if(t=t.toLowerCase(),!this.invalidContinuationAfterPseudoelement(`::${t}`)){switch(t){case"before":case"after":case"first-line":case"first-letter":case"footnote-call":case"footnote-marker":case"marker":case"inner":case"after-if-continues":if(!this.pseudoelement)this.pseudoelement=t;else{this.invalidSelector(`Double pseudo-element ::${this.pseudoelement}::${t}`);return}break;case"first-n-lines":if(e&&e.length==1&&typeof e[0]=="number"){let i=Math.round(e[0]);if(i>0&&i==e[0]){if(!this.pseudoelement)this.pseudoelement=`first-${i}-lines`;else{this.invalidSelector(`Double pseudo-element ::${this.pseudoelement}::${t}`);return}break}}this.chain.push(new rt(""));break;case"nth-fragment":e&&e.length==2?this.viewConditionId=`NFS_${e[0]}_${e[1]}`:this.chain.push(new rt(""));break;default:this.invalidSelector(`Unknown pseudo-element ::${t}`);return}this.specificity+=1}}idSelector(t){this.invalidContinuationAfterPseudoelement(`#${t}`)||(this.specificity+=65536,this.chain.push(new K0(t)))}attributeSelector(t,e,i,n,r){if(this.invalidContinuationAfterPseudoelement(`[${e}]`))return;this.specificity+=256,n=n||"";let o;switch(i){case 0:o=new oc(t,e);break;case 39:o=new ix(t,e,n,r??null);break;case 45:!n||n.match(/\s/)?o=new rt(""):o=new dr(t,e,cr(`(^|\\s)${ur(n,r??null)}($|\\s)`),r??null);break;case 44:o=new dr(t,e,cr(`^${ur(n,r??null)}($|-)`),r??null);break;case 43:n?o=new dr(t,e,cr(`^${ur(n,r??null)}`),r??null):o=new rt("");break;case 42:n?o=new dr(t,e,cr(`${ur(n,r??null)}$`),r??null):o=new rt("");break;case 46:n?o=new dr(t,e,cr(ur(n,r??null)),r??null):o=new rt("");break;case 50:if(n=="supported")o=new nx(t,e);else{this.invalidSelector(`Unsupported :: attr selector op: ${n}`);return}break;default:this.invalidSelector(`Unsupported attr selector: ${i}`);return}this.chain.push(o)}descendantSelector(){if(this.invalidContinuationAfterPseudoelement("descendant selector"))return;let t=`d${Uo++}`;this.processChain(new $o(new gx(t,this.viewConditionId,null))),this.chain=this.chain.restartWith(new rt(t)),this.viewConditionId=null}childSelector(){if(this.invalidContinuationAfterPseudoelement("child selector"))return;let t=`c${Uo++}`;this.processChain(new $o(new mx(t,this.viewConditionId,null))),this.chain=this.chain.restartWith(new rt(t)),this.viewConditionId=null}adjacentSiblingSelector(){if(this.invalidContinuationAfterPseudoelement("adjacent sibling selector"))return;let t=`a${Uo++}`;this.processChain(new $o(new yx(t,this.viewConditionId,null))),this.chain=this.chain.restartWith(new rt(t)),this.viewConditionId=null}followingSiblingSelector(){if(this.invalidContinuationAfterPseudoelement("following sibling selector"))return;let t=`f${Uo++}`;this.processChain(new $o(new vx(t,this.viewConditionId,null))),this.chain=this.chain.restartWith(new rt(t)),this.viewConditionId=null}nextSelector(){this.finishChain(),this.pseudoelement=null,this.footnoteContent=!1,this.specificity=0,this.selectorListVoided||(this.chain=new Ll)}startSelectorRule(){this.isInsideSelectorRule("E_CSS_UNEXPECTED_SELECTOR")||(this.state=1,this.elementStyle={},this.ruleId=mo(),this.pseudoelement=null,this.viewConditionId=null,this.specificity=0,this.footnoteContent=!1,this.selectorListVoided=!1,this.pendingChained.splice(0),this.chain=new Ll,this.invalid=!1)}error(t,e){super.error(t,e),this.state==1&&(this.state=0),this.setInvalid()}startStylesheet(t){super.startStylesheet(t),this.state=0}startRuleBody(){this.finishChain(),this.selectorListVoided?this.pendingChained.splice(0):this.takePendingChained(),super.startRuleBody(),this.state==1&&(this.state=0)}endRule(){super.endRule(),this.insideSelectorRule=0}finishChain(){this.chain.finishIn(this)}voidSelector(){this.chain=new ac,this.pseudoelement=null,this.viewConditionId=null,this.footnoteContent=!1,this.specificity=0}voidSelectorList(){this.voidSelector(),this.selectorListVoided=!0}applyRuleForSelector(){this.processChain(this.makeApplyRuleAction(this.specificity)),this.voidSelector()}makeApplyRuleAction(t){let e=this.regionId;return this.footnoteContent&&(e?e="xxx-bogus-xxx":e="footnote"),new Fh(this.elementStyle,t,this.pseudoelement,e,this.viewConditionId)}special(t,e){let i;this.condition?i=new Pl(e,0,this.condition):i=new X(e,0),Jf(this.elementStyle,t).push(i)}property(t,e,i){this.validatorSet.validatePropertyAndHandleShorthand(t,e,i,this.scope,this)}invalidPropertyValue(t,e){this.report(`E_INVALID_PROPERTY_VALUE ${t}: ${e.toString()}`)}unknownProperty(t,e){this.report(`E_INVALID_PROPERTY ${t}: ${e.toString()}`)}simpleProperty(t,e,i){t=="display"&&(e===w.oeb_page_head||e===w.oeb_page_foot)&&(this.simpleProperty("flow-options",new ee([w.exclusive,w._static]),i),this.simpleProperty("flow-into",e,i),e=w.block),zt("SIMPLE_PROPERTY").forEach(o=>{let s=o({name:t,value:e,important:i});t=s.name,e=s.value,i=s.important});let n=(i?this.getImportantSpecificity():this.getBaseSpecificity())+this.cascade.nextOrder();yo(t,e,this.validatorSet);let r=this.condition?new Pl(e,n,this.condition,this.layer,this.ruleId):new X(e,n,this.layer,this.ruleId);ei(this.elementStyle,t,r)}finish(){return this.cascade}startFuncWithSelector(t,e){let i;switch(t){case"is":i=n=>new qn(this,n);break;case"not":i=n=>new Ix(this,n);break;case"where":i=n=>new Ax(this,n);break;case"has":i=n=>new Fx(this,n);break;case"nth-child":e&&e.length>=2&&(i=n=>new fg(this,n,e[0],e[1]));break;case"nth-last-child":e&&e.length>=2&&(i=n=>new Rx(this,n,e[0],e[1]));break}i&&this.owner.delegateTo(n=>{let r=i(n);return r.startSelectorRule(),r})}},Tx={"nth-child":sx,"nth-of-type":Il,"nth-last-child":Al,"nth-last-of-type":Fl},lc=new Set(["dir","href-epub-type","href-role-type","lang","nth-child","nth-last-child","nth-last-of-type","nth-of-type"]),Uo=0,qn=class Ol extends $s{constructor(e,i){super(e.scope,e.owner,e.condition,e,e.regionId,e.validatorSet,i),u(this,"parent",e),u(this,"parentChain"),u(this,"chains",[]),u(this,"maxSpecificity",0),u(this,"selectorTexts",[]),this.parentChain=e.chain}insertChained(e){this.parent.insertChained(e)}takeAlternative(e){this.chains.push(e),this.maxSpecificity=Math.max(this.maxSpecificity,this.specificity)}nextSelector(){this.chain.contributeTo(this),this.chain=new Ll,this.pseudoelement=null,this.viewConditionId=null,this.footnoteContent=!1,this.specificity=0}endFuncWithSelector(){this.chain.contributeTo(this),this.chains.length>0?(this.parentChain.push(this.relational()?new px(this.selectorTexts):this.positive()?new Lh(this.chains):new dx(this.chains)),this.increasingSpecificity()&&(this.parent.specificity+=this.maxSpecificity)):this.parentChain.push(new rt("")),this.endDelegation()}startRuleBody(){this.reportAndSkip("E_CSS_UNEXPECTED_RULE_BODY")}error(e,i){super.error(e,i),this.voidAlternative()}pseudoelementSelector(e,i){this.invalidSelector(`Pseudo-element ::${e} in a selector list`)}invalidSelector(e){Y.warn(e),this.setInvalid(),this.voidAlternative()}voidAlternative(){this.voidSelector();let e=this;for(;e instanceof Ol&&!e.forgiving();)e=e.parent,e.voidSelector();e instanceof Ol||(e.voidSelectorList(),this.endDelegation())}pushSelectorText(e){this.relational()&&this.chain.recordTextIn(this.selectorTexts,e)}positive(){return!0}increasingSpecificity(){return!0}forgiving(){return!0}relational(){return!1}},Ix=class extends qn{positive(){return!1}forgiving(){return!1}},Ax=class extends qn{increasingSpecificity(){return!1}},Fx=class extends qn{relational(){return!0}forgiving(){return!1}},fg=class extends qn{constructor(t,e,i,n){super(t,e),u(this,"a",i),u(this,"b",n)}endFuncWithSelector(){this.chain.contributeTo(this),this.chains.length>0?(this.parentChain.push(new og(this.a,this.b,this.chains)),this.parent.specificity+=256+this.maxSpecificity):this.parentChain.push(new rt("")),this.endDelegation()}forgiving(){return!1}},Rx=class extends fg{endFuncWithSelector(){this.chain.contributeTo(this),this.chains.length>0?(this.parentChain.push(new fx(this.a,this.b,this.chains)),this.parent.specificity+=256+this.maxSpecificity):this.parentChain.push(new rt("")),this.endDelegation()}},Lx=class extends Jn{constructor(t,e,i){super(t,e,i)}property(t,e,i){if(this.scope.values[t])this.error(`E_CSS_NAME_REDEFINED ${t}`,this.getCurrentToken());else{let n=t.match(/height|^(top|bottom)$/)?"vh":"vw",r=new oo(this.scope,100,n);this.scope.defineName(t,e.toExpr(this.scope,r))}}},hs=class extends Jn{constructor(t,e,i,n,r,o,s,a=null){super(t,e,o),u(this,"condition",i),u(this,"elementStyle",n),u(this,"validatorSet",r),u(this,"ruleType",s),u(this,"layer",a),u(this,"order"),u(this,"ruleId",mo()),this.order=0}property(t,e,i){i?Y.warn("E_IMPORTANT_NOT_ALLOWED"):this.validatorSet.validatePropertyAndHandleShorthand(t,e,i,this.scope,this)}invalidPropertyValue(t,e){Y.warn("E_INVALID_PROPERTY_VALUE",`${t}:`,e.toString())}unknownProperty(t,e){Y.warn("E_INVALID_PROPERTY",`${t}:`,e.toString())}simpleProperty(t,e,i){let n=i?this.getImportantSpecificity():this.getBaseSpecificity();n+=this.order,this.order+=Bh,yo(t,e,this.validatorSet);let r=this.condition?new Pl(e,n,this.condition,this.layer,this.ruleId):new X(e,n,this.layer,this.ruleId);ei(this.elementStyle,t,r)}},Ox=class extends bp{constructor(t,e){super(t),u(this,"validatorSet",e),u(this,"elementStyle",{}),u(this,"order",0),u(this,"ruleId",mo())}property(t,e,i){this.validatorSet.validatePropertyAndHandleShorthand(t,e,i,this.scope,this)}invalidPropertyValue(t,e){Y.warn("E_INVALID_PROPERTY_VALUE",`${t}:`,e.toString())}unknownProperty(t,e){Y.warn("E_INVALID_PROPERTY",`${t}:`,e.toString())}simpleProperty(t,e,i){let n=i?wp:vp;n+=this.order,this.order+=Bh,yo(t,e,this.validatorSet);let r=new X(e,n,null,this.ruleId);ei(this.elementStyle,t,r)}};function gg(t,e){let i=Th(t);i&&i.forEach(n=>{n.matcher.matches()&&e(n.styles)})}function Bl(t,e,i){gg(i,n=>{Br(t,n,e)})}function Bx(t,e,i,n){let r=new Ox(t,e),o=new xt(n,r);try{rw(o,r,i)}catch(s){Y.warn(s,"Style attribute parse error:")}return r.elementStyle}function Ml(t,e,i){let n=t["writing-mode"];if(n){let r=n.evaluate(e,"writing-mode");if(r&&r!==w.inherit&&r!==w.unset&&!Rt(r))return r===w.vertical_rl}return i}function mg(t,e,i){let n=t.direction;if(n){let r=n.evaluate(e,"direction");if(r&&r!==w.inherit&&r!==w.unset&&!Rt(r))return r===w.rtl}return i}function _l(t,e,i,n){let r={};for(let o in t)Ii(o)&&(r[o]=ge(t,o));return Bl(r,e,t),yg(t,i,n,(o,s)=>{Br(r,s,e),Bl(r,e,s)}),r}function yg(t,e,i,n){let r=lt(t,"_regions");if((e||i)&&r){if(i){let o=["footnote"];e?e=e.concat(o):e=o}for(let o of e){let s=r[o];s&&n(o,s)}}}function Br(t,e,i){for(let n in e)if(Ii(n)){let r=ge(e,n),o=t[n];t[n]=Nl(i,o,r)}}var vg=(t,e,i,n,r,o)=>{var s,a;let h=i?n?R0:Xf:n?L0:qf,l=r?O0:B0;for(let c in t){let d=t[c];if(!d)continue;let p=(s=h[c])!=null?s:h[l[c]],f=(a=l[c])!=null?a:l[h[c]],g=p??f,m;if(g){let v=t[g];if(v&&Vi(v,d)>0||p&&f&&p!==f&&(g=f,v=t[g],v&&Vi(v,d)>0))continue;m=tc[p]?p:tc[f]?f:c}else m=c,c.startsWith("text-align")&&(d.value===w.inside||d.value===w.outside)&&(d=d.withValue(r===(d.value===w.inside)?w.right:w.left));e[m]=o(c,d)}},Mx=class wg extends dn{constructor(e,i,n,r,o=null){super(),u(this,"elementStyles",e),u(this,"styles",i),u(this,"root",n),u(this,"element",r),u(this,"currentCustomPropertyName",o),u(this,"resolvingCustomProperties",[]),u(this,"varResolutionState",{cycleMembers:new Set}),o&&this.resolvingCustomProperties.push(o)}getRawCustomPropertyLookup(e,i,n){var r,o;let s=n??this.root;if(i!=null&&i.length){for(let a=0;a<i.length;a++){let h=(r=i[a][e])==null?void 0:r.value;if(h){if(h===w.initial)return{found:!0,value:null,elementStyles:i.slice(a),element:n};if(!(h===w.inherit||h===w.unset||Rt(h)))return{found:!0,value:h,elementStyles:i.slice(a),element:n}}}n&&(s=n.parentElement)}for(;s;s=s.parentElement){let a=this.styles.styleOf(s),h=(o=a?.[e])==null?void 0:o.value;if(h){if(h===w.initial)return{found:!0,value:null,elementStyles:a?[a]:[],element:s};if(!(h===w.inherit||h===w.unset||Rt(h)))return{found:!0,value:h,elementStyles:a?[a]:[],element:s}}}return{found:!1,value:null,elementStyles:[],element:null}}collectReferencedCustomProperties(e){let i=new Set;class n extends Zt{visitFunc(o){let s=o.values[0]instanceof he&&o.values[0].name;return o.name==="var"&&s&&ze(s)&&i.add(s),super.visitFunc(o)}}return e.visit(new n),Array.from(i)}findReferencedCycleStart(e,i,n,r=new Set){for(let o of this.collectReferencedCustomProperties(e)){if(this.resolvingCustomProperties.includes(o))return o;if(r.has(o))continue;r.add(o);let s=this.getRawCustomPropertyLookup(o,i,n),a=s.value&&this.findReferencedCycleStart(s.value,s.elementStyles,s.element,r);if(a)return a}return null}getFallbackCycleMembers(e,i,n){let r=null,o=this;class s extends Zt{visitFunc(l){if(l.name==="var")for(let c of l.values.slice(1)){let d=o.findReferencedCycleStart(c,i,n);if(d)return r=d,l}return super.visitFunc(l)}}if(e.visit(new s),!r)return null;let a=this.resolvingCustomProperties.indexOf(r);return new Set(this.resolvingCustomProperties.slice(a))}resolveCustomProperty(e,i,n,r){if(!i)return{found:!1,value:null,continueLookup:!1};if(i===w.initial)return{found:!0,value:null,continueLookup:!1};if(i===w.inherit||i===w.unset||Rt(i))return{found:!0,value:null,continueLookup:!0};let o=this.getFallbackCycleMembers(i,n,r);return o?(o.forEach(s=>this.varResolutionState.cycleMembers.add(s)),{found:!0,value:null,continueLookup:!1}):{found:!0,value:this.resolveReferencedCustomProperty(e,i,n,r),continueLookup:!1}}resolveReferencedCustomProperty(e,i,n,r){let o=this.resolvingCustomProperties.indexOf(e);if(o>=0)return this.resolvingCustomProperties.slice(o).forEach(d=>this.varResolutionState.cycleMembers.add(d)),null;let s=new Set(this.varResolutionState.cycleMembers);this.varResolutionState.cycleMembers=new Set;let a=new wg(n,this.styles,this.root,r,e);a.resolvingCustomProperties=this.resolvingCustomProperties,a.resolvingCustomProperties.push(e),a.varResolutionState=this.varResolutionState;let h=i,l=32;for(let d=0;;d++){if(d>=l){h=null;break}let p=h.visit(a);if(a.error){h=null;break}if(p===h)break;h=p}let c=this.varResolutionState.cycleMembers;return this.varResolutionState.cycleMembers=new Set([...s,...c]),this.resolvingCustomProperties.pop(),c.has(e)?null:h}getVarValue(e){var i,n,r,o;let s=(i=this.element)!=null?i:this.root;if((n=this.elementStyles)!=null&&n.length){for(let a=0;a<this.elementStyles.length;a++){let h=this.elementStyles[a],l=this.resolveCustomProperty(e,(r=h[e])==null?void 0:r.value,this.elementStyles.slice(a),this.element);if(l.found){if(l.value)return l.value;if(!l.continueLookup)return null}}this.element&&(s=this.element.parentElement)}for(;s;s=s.parentElement){let a=this.styles.styleOf(s),h=this.resolveCustomProperty(e,(o=a?.[e])==null?void 0:o.value,a?[a]:[],s);if(h.found){if(h.value)return h.value;if(!h.continueLookup)return null}}return null}visitFunc(e){if(e.name!=="var")return super.visitFunc(e);let i=e.values[0]instanceof he&&e.values[0].name;return!i||!ze(i)?(this.error=!0,Ae):this.getVarValue(i)||(this.currentCustomPropertyName&&this.varResolutionState.cycleMembers.has(this.currentCustomPropertyName)?(this.error=!0,Ae):e.values.length<2?(this.error=!0,Ae):e.values.length===2?e.values[1]:new Be(e.values.slice(1)))}visitSpaceList(e){let i=this.visitValues(e.values);if(this.error)return Ae;if(i===e.values)return e;let n=[];for(let r of i)r instanceof ee?n.push(...r.values):n.push(r);return new ee(n)}visitCommaList(e){let i=this.visitValues(e.values);if(this.error)return Ae;if(i===e.values)return e;let n=[];for(let r of i)r instanceof Be?n.push(...r.values):n.push(r);return new Be(n)}},Mh=class extends dn{constructor(t,e,i,n){super(),u(this,"context",t),u(this,"resolveViewportUnit",e),u(this,"percentRef",i),u(this,"vertical",n)}visitFunc(t){let e=super.visitFunc(t);if(t.name!=="calc")return e;let i=e.toString().replace(/^calc\b/,"-epubx-expr");if(this.hasUnresolvableUnit(i))return e;let n=Mi(this.context.rootScope,new xt(i,null),"");if(n instanceof j)try{let r=n.expr.evaluate(this.context);typeof r=="number"&&!isNaN(r)&&(this.isLengthExpr(i)?e=new B(r,"px"):/\d[a-z]/i.test(i)||(e=new It(r)))}catch(r){Y.warn(r)}return e}hasUnresolvableUnit(t){return/\d(%|em|ex|cap|ch|ic|lh|p?v[whbi]|p?vmin|p?vmax)\W|\Wvar\(\s*--/i.test(t)}isLengthExpr(t){return/\d(px|in|pt|pc|cm|mm|q|rem|rlh)\W/i.test(t)}visitNumeric(t){return this.resolveViewportUnit&&pd(t.unit)||this.context.rootFontSize!=null&&ay(t.unit)?new B(t.num*this.context.queryUnitSize(t.unit,!1,this.vertical),"px"):typeof this.percentRef=="number"&&t.unit==="%"?new B(t.num*this.percentRef/100,"px"):t}},_x=class extends Mh{hasUnresolvableUnit(t){return/\d(%|em|ex|cap|ch|ic|p?v[whbi]|p?vmin|p?vmax)\W|\Wvar\(\s*--/i.test(t)}isLengthExpr(t){return/\d(px|in|pt|pc|cm|mm|q|rem|r?lh)\W/i.test(t)}};function Hs(t,e,i,n,r){try{if(e instanceof j)return e.expr instanceof be&&(e.expr.str.startsWith("named-string-")||e.expr.str.startsWith("running-element-"))?e:aw(t,e.expr,i);if(e instanceof B||e instanceof Vt||e instanceof ee||e instanceof Be)return e.visit(new Mh(t,!0,n,r))}catch(o){return Y.warn(o),Ae}return e}var hc={first:!1,forceEnd:!1,allowEnd:!1,last:!1};function uc(t){let e=t instanceof ot?t:typeof t=="string"?_(t):w.none;if(e===w.none)return hc;let i=e instanceof ee?e.values:[e],n=Object.create(hc);for(let r of i)if(r instanceof he)switch(r.name){case"first":n.first=!0;break;case"force-end":n.forceEnd=!0,n.allowEnd=!1;break;case"allow-end":n.forceEnd=!1,n.allowEnd=!0;break;case"last":n.last=!0;break}return n}function cc(t){return!t.first&&!t.last&&!t.forceEnd&&!t.allowEnd}var Dx={trimStart:!1,spaceFirst:!1,trimEnd:!1,allowEnd:!1,trimAdjacent:!1},dc={trimStart:!1,spaceFirst:!1,trimEnd:!1,allowEnd:!0,trimAdjacent:!0},pc={trimStart:!0,spaceFirst:!1,trimEnd:!0,allowEnd:!1,trimAdjacent:!0};function fc(t){let e=t instanceof ot?t:typeof t=="string"?_(t):w.normal;if(e===w.normal)return dc;if(e===w.auto)return pc;let i=e instanceof ee?e.values:[e],n=Object.create(dc);for(let r of i)if(r instanceof he)switch(r.name){case"trim-both":case"trim-auto":return pc;case"space-all":return Dx;case"trim-start":n.trimStart=!0,n.spaceFirst=!1;break;case"space-start":n.trimStart=!1,n.spaceFirst=!1;break;case"space-first":n.trimStart=!1,n.spaceFirst=!0;break;case"trim-end":n.trimEnd=!0,n.allowEnd=!1;break;case"space-end":n.trimEnd=!1,n.allowEnd=!1;break;case"allow-end":n.trimEnd=!1,n.allowEnd=!0;break;case"trim-adjacent":n.trimAdjacent=!0;break;case"space-adjacent":n.trimAdjacent=!1;break}return n}var _a={ideographAlpha:!1,ideographNumeric:!1},zx={ideographAlpha:!0,ideographNumeric:!0};function gc(t){let e=t instanceof ot?t:typeof t=="string"?_(t):w.normal;if(e===w.normal||e===w.auto)return zx;if(e===w.none)return _a;let i=e instanceof ee?e.values:[e],n=Object.create(_a);for(let r of i)if(r instanceof he)switch(r.name){case"no-autospace":return _a;case"ideograph-alpha":n.ideographAlpha=!0;break;case"ideograph-numeric":n.ideographNumeric=!0;break}return n}function mc(t,e){return!t.ideographAlpha&&!t.ideographNumeric&&!e.trimStart&&!e.spaceFirst&&!e.trimEnd&&!e.allowEnd&&!e.trimAdjacent}function yc(t){return t?(t=t.toLowerCase(),/^zh\b.*-(hant|tw|hk)\b/.test(t)?"zh-hant":/^zh\b/.test(t)?"zh-hans":/^ja\b/.test(t)?"ja":/^ko\b/.test(t)?"ko":t):null}var Vx=/^[‘’“”〰﹙﹚﹛﹜﹝﹞〚〛]\p{M}*$/u,$x=/^[‘“﹙﹛﹝〚]\p{M}*$/u;function Hx(t,e){return no==="chromium"&&e&&Vx.test(t)}function Ux(t){return $x.test(t)?"viv-ts-open":"viv-ts-close"}var Wx=class{getPolyfilledInheritedProps(){return["hanging-punctuation","text-autospace","text-spacing-trim"]}preprocessSingleDocument(t){t.body&&this.preprocessForTextSpacing(t.body)}preprocessForTextSpacing(t){var e;let i=t.ownerDocument.createNodeIterator(t,NodeFilter.SHOW_TEXT);for(let n=i.nextNode();n;n=i.nextNode()){let r=n.parentElement;if(!r||r.namespaceURI!=="http://www.w3.org/1999/xhtml"||((e=r.dataset)==null?void 0:e.mathTypeset)==="true")continue;let o=n.textContent.replace(/(?![()\[\]{}])[\p{Ps}\p{Pe}\p{Pf}\p{Pi}、。,.:;、。\u3000\u3030]\p{M}*(?=\P{M})|.(?=(?![()\[\]{}])[\p{Ps}\p{Pe}\p{Pf}\p{Pi}、。,.:;、。\u3000\u3030])|(?!\p{P})[\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF]\p{M}*(?=(?![\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF\uFF01-\uFF60])[\p{L}\p{Nd}])|(?![\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF\uFF01-\uFF60])[\p{L}\p{Nd}]\p{M}*(?=(?!\p{P})[\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF])/gsu,"$&\0").split("\0");if(o.length>1){let s=o.length-1;for(let a=0;a<s;a++)n.before(document.createTextNode(o[a]));n.textContent=o[s]}}}processGeneratedContent(t,e,i,n,r,o){r=yc(r);let s=gc(e),a=fc(i),h=uc(n);if(cc(h)&&mc(s,a))return;this.preprocessForTextSpacing(t);let l=t.style.whiteSpace;(o?t.offsetHeight:t.offsetWidth)===0&&(t.style.whiteSpace="pre");let c=t.ownerDocument.createNodeIterator(t,NodeFilter.SHOW_TEXT),d=null,p=null;for(let f=c.nextNode();f;f=p){p=c.nextNode();let g=!d,m=!d||/\n$/.test(d.textContent),v=!p||/^\n/.test(p.textContent),b=!p;this.processTextSpacing(f,g||m,g,m,v,b,d,p,s,a,h,r,o),d=f}t.style.whiteSpace=l}postLayoutBlock(t,e){var i,n,r,o,s,a,h,l;let c=!t||t.fragmentIndex===1&&f(),d=c||m();function p(C){var y;if(C?.nodeType!==1)return!1;let k=C;if(k.hasAttribute(Un))return!0;let{position:S,float:N}=(y=k.style)!=null?y:{};return S==="absolute"||S==="fixed"||!!(N&&N!=="none")}function f(){let C=e[0];for(let y=C;;y=y.parent)if(!y||!y.inline){if(y?.fragmentIndex!==1)return!1;break}if(!C.inline)return!0;for(let y=C.viewNode.previousSibling;y;y=y.previousSibling)if(!Ee(y,C.whitespace)&&!p(y))return!1;return!0}function g(){var C;for(let y=e[0];y&&y.inline;y=y.parent){let k=(C=y.viewNode)==null?void 0:C.previousSibling,S=k&&k.nodeType===Node.TEXT_NODE&&/^[ \t\r\n\f]*$/.test(k.textContent)&&y.whitespace!==bt.PRESERVE?k.previousSibling:k;if(S)return{nodeContext:y,prevNode:S}}return null}function m(){var C;let y=g();if(!y)return!1;let k=y.nodeContext;for(let S=y.prevNode;S;S=S.lastChild)if(S.nodeType===Node.ELEMENT_NODE){if(S.localName==="br")return!0;let N=(C=S.style)==null?void 0:C.display;if(N&&N!=="inline")return!/^(inline|ruby)\b/.test(N)}else if(S.nodeType===Node.TEXT_NODE){if(k.whitespace===bt.PRESERVE){if(/\n$/.test(S.textContent))return!0}else if(k.whitespace===bt.NEWLINE&&/\n[ \t\r\n\f]*$/.test(S.textContent))return!0}return!1}let v=-1;for(let C=0;C<e.length;C++){let y=e[C],k=!y.after&&y.inline&&!y.display?uh(y):null;if(k&&k.viewNode.parentNode&&!Ee(k.viewNode,k.whitespace)){let S=function(O){var T,$,G;if(((T=O.viewNode)==null?void 0:T.nodeType)===Node.ELEMENT_NODE)return O.viewNode.localName==="br";if((($=O.viewNode)==null?void 0:$.nodeType)===Node.TEXT_NODE){let q=O.viewNode;if(O.whitespace===bt.PRESERVE){if(/\n$/.test(q.textContent))return!0}else if(O.whitespace===bt.NEWLINE&&/\n[ \t\r\n\f]*$/.test(q.textContent))return!0;if(((G=q.previousElementSibling)==null?void 0:G.localName)==="br")return Ee(q,O.whitespace)}return!1},N=function(O){var T,$,G;if(((T=O.viewNode)==null?void 0:T.nodeType)===Node.ELEMENT_NODE)return O.viewNode.localName==="br";if((($=O.viewNode)==null?void 0:$.nodeType)===Node.TEXT_NODE){let q=O.viewNode;if(O.whitespace===bt.PRESERVE){if(/^\n/.test(q.textContent))return!0}else if(O.whitespace===bt.NEWLINE&&/^[ \t\r\n\f]*\n/.test(q.textContent))return!0;if(((G=q.nextElementSibling)==null?void 0:G.localName)==="br")return Ee(q,O.whitespace)}return!1};var b=S,x=N;v<0&&(v=C);let L=yc((o=(n=(i=k.lang)!=null?i:k.parent.lang)!=null?n:t?.lang)!=null?o:(r=t?.parent)==null?void 0:r.lang),I=gc(k.inheritedProps["text-autospace"]),D=fc(k.inheritedProps["text-spacing-trim"]),J=uc(k.inheritedProps["hanging-punctuation"]);if(cc(J)&&mc(I,D)||/\b(flex|grid)\b/.test((s=k.parent.display)!=null?s:""))continue;let te=null,P=null,M=C===v,A=C===v&&c,H=C===v&&d,z=!1,E=!1;for(let O=C-1;O>=0;O--){let T=e[O];if(S(T)){H=!0;break}if(!T.display&&T.viewNode.nodeType===Node.TEXT_NODE&&T.viewNode.textContent.length>0){te=T.viewNode;break}if(((a=T.viewNode)==null?void 0:a.nodeType)===Node.ELEMENT_NODE&&Qt(T.viewNode)==="footnote-call"){if(T.viewNode.contains(k.viewNode))continue;let $=qw(T.viewNode);if($){te=$;break}}if(T.display&&!/^(inline|ruby)\b/.test(T.display)||((h=T.viewNode)==null?void 0:h.nodeType)===Node.ELEMENT_NODE&&(T.viewNode.localName==="br"||tn[T.viewNode.localName]))break;O===0&&(M=!0,c&&(A=!0,H=!0))}for(let O=C+1;O<e.length;O++){let T=e[O];if(N(T)){z=!0;break}if(T.viewNode!==k.viewNode&&!T.display&&T.viewNode.nodeType===Node.TEXT_NODE&&T.viewNode.textContent.length>0){P=T.viewNode;break}if(T.display&&!/^(inline|ruby)\b/.test(T.display)||((l=T.viewNode)==null?void 0:l.nodeType)===Node.ELEMENT_NODE&&(T.viewNode.localName==="br"||tn[T.viewNode.localName])){O===e.length-1&&p(T.viewNode)&&(E=!0);break}if(O===e.length-1){z=!0,E=!0;for(let $=T.viewNode.nextSibling;$;$=$.nextSibling)if(!p($)){E=!1;break}}}if(k.parent.display==="inline-block"){let O=Lt(k.parent);if(!A){let T=O.viewNode.firstChild;for(;Ee(T,k.whitespace);)T=T.nextSibling;k.viewNode===T&&(A=!0)}if(!E){let T=O.viewNode.lastChild;for(;Ee(T,k.whitespace);)T=T.previousSibling;k.viewNode===T&&(E=!0)}}if(this.processTextSpacing(k.viewNode,M,A,H,z,E,te,P,I,D,J,L,k.vertical)>0)break}}}processTextSpacing(t,e,i,n,r,o,s,a,h,l,c,d,p){var f,g;let m=t.textContent,v=t.ownerDocument,b=0,x,C,y;function k(){if(e)return!0;if(!s)return!1;x||(x=v.createRange(),x.selectNode(t));let E=x.getClientRects()[0];if(!E)return!1;C||(C=v.createRange(),C.selectNode(s));let O=C.getClientRects(),T=O[O.length-1];return T?(b||(b=Gr(T,p)),p?E.top<T.top+T.height-E.width||E.left+E.width<T.left+E.width/10||E.left>T.left+T.width-E.width/10:E.left<T.left+T.width-E.height||E.top>T.top+T.height-E.height/10||E.top+E.height<T.top+E.height/10):!1}function S(){if(!a)return!1;x||(x=v.createRange(),x.selectNode(t));let E=x.getClientRects()[0];if(!E)return!1;b||(b=Gr(E,p)),y||(y=v.createRange(),y.selectNode(a));let O=y.getClientRects()[0];return O?p?E.top+E.height>O.top+E.width||E.left>O.left+O.width-E.width/10||E.left+E.width<O.left+E.width/10:E.left+E.width>O.left+E.height||E.top+E.height<O.top+E.height/10||E.top>O.top+O.height-E.height/10:!1}let N=!1,L=!1,I=!1,D=!1,J,te=Hx(m,p);if(i&&c.first&&/^[\p{Ps}\p{Pf}\p{Pi}'"\u3000]\p{M}*$/u.test(m)?(J="viv-ts-open",L=!0):o&&c.last&&/^[\p{Pe}\p{Pf}\p{Pi}'"]\p{M}*$/u.test(m)?(J="viv-ts-close",I=!0):(c.forceEnd||c.allowEnd)&&/^[、。,.、。]\p{M}*$/u.test(m)?(J="viv-ts-close",D=!0):(l.trimStart||l.spaceFirst||l.trimAdjacent)&&/^[‘“〝([{⦅〈〈《「『【〔〖〘〚]\p{M}*$/u.test(m)?J="viv-ts-open":(l.trimEnd||l.allowEnd||l.trimAdjacent)&&(/^[’”〞〟)]}⦆〉〉》」』】〕〗〙〛]\p{M}*$/u.test(m)||d==="zh-hans"&&/^[:;]\p{M}*$/u.test(m)||d!=="zh-hant"&&/^[、。,.]\p{M}*$/u.test(m))?J="viv-ts-close":te&&(J=Ux(m),N=!0),J!==void 0){let E=function(q){let Q=parseFloat(v.defaultView.getComputedStyle(q).fontSize)*.7;return(p?q.offsetHeight:q.offsetWidth)>Q},O=function(){return p?T.offsetLeft:T.offsetTop};var P=E,M=O;if(((f=t.parentElement)==null?void 0:f.localName)==="viv-ts-inner")return 0;let T=v.createElement(J),$=v.createElement("viv-ts-inner");if(T.appendChild($),t.before(T),$.appendChild(t),te&&v.defaultView.getComputedStyle(T).textOrientation==="mixed"&&($.style.textOrientation="sideways"),N)return 0;let G=E($);if(G||L||I||D){if(J==="viv-ts-open"){if(L)T.className="viv-hang-first";else if(i||n)l.trimStart?T.className="viv-ts-trim":T.className="viv-ts-space";else if(!(l.trimStart||l.spaceFirst)&&k())T.className="viv-ts-space";else if(l.trimAdjacent&&s&&/[\p{Ps}\p{Pi}\p{Pe}\p{Pf}\u00B7\u2027\u30FB\u3000:;、。,.]\p{M}*$/u.test(s.textContent)&&(!/[\p{Pe}\p{Pf}]\p{M}*$/u.test(s.textContent)||((g=s.parentElement)==null?void 0:g.localName)==="viv-ts-inner"&&E(s.parentElement)))T.className="viv-ts-trim";else if((l.trimStart||l.spaceFirst)&&k()){let q=O();T.className="viv-ts-auto",q===O()&&!k()&&(T.className="viv-ts-trim")}}else if(J==="viv-ts-close"){if(I)T.className=G?"viv-hang-last":"viv-hang-last viv-hang-hw";else if(o||r){let q=O();D?(T.className=G?c.allowEnd&&l.allowEnd?"viv-ts-auto":"viv-hang-end":"viv-hang-end viv-hang-hw",c.allowEnd&&q===O()&&(l.trimEnd?T.className="viv-ts-trim":l.allowEnd?(T.className="viv-hang-end",q===O()&&(T.className="")):T.className="viv-ts-space")):l.trimEnd?T.className="viv-ts-trim":l.allowEnd?(T.className="viv-ts-auto",q===O()&&(T.className="")):T.className="viv-ts-space"}else if(a&&/^[\p{Pe}\p{Pf}\u00B7\u2027\u30FB\u3000:;、。,.]/u.test(a.textContent))G&&l.trimAdjacent&&(T.className="viv-ts-trim");else if(D){let q=S(),Q=q&&c.allowEnd;Q||(T.className=G?"viv-hang-end":"viv-hang-end viv-hang-hw"),G?Q&&l.trimEnd?T.className="viv-ts-auto":!Q&&!S()?T.className="":!q&&c.allowEnd&&(l.trimEnd?(T.className="viv-ts-auto",S()||(T.className="viv-hang-end")):(T.className="viv-ts-space",S()||(l.allowEnd?(T.className="viv-ts-auto",S()||(T.className="viv-hang-end")):T.className="viv-hang-end"))):!q&&!S()&&(T.className="")}else if(l.trimEnd||l.allowEnd)if(S())l.allowEnd?T.className="viv-ts-space":T.className="viv-ts-auto";else{let q=O();T.className="viv-ts-auto",q===O()&&(T.className="")}}}}let A=!1;function H(E){var O;let T=(O=E?.ownerDocument.defaultView)==null?void 0:O.getComputedStyle(E);return!!T&&(T.textOrientation==="upright"||T.textCombineUpright==="all"||T["-webkit-text-combine"]==="horizontal")}function z(E,O){if(E.nodeType===Node.ELEMENT_NODE){let G=v.defaultView.getComputedStyle(E);if(parseFloat(G.marginInlineEnd)||parseFloat(G.borderInlineEndWidth)||parseFloat(G.paddingInlineEnd))return!0}let T=E.parentElement;if(T&&!T.contains(O))return z(T,O);if(O.nodeType===Node.ELEMENT_NODE){let G=v.defaultView.getComputedStyle(O);if(parseFloat(G.marginInlineStart)||parseFloat(G.borderInlineStartWidth)||parseFloat(G.paddingInlineStart))return!0}let $=O.parentElement;return $&&!$.contains(E)?z(E,$):!1}return(h.ideographAlpha||h.ideographNumeric)&&(s&&/^(?!\p{P})[\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF]/u.test(m)&&(h.ideographAlpha&&/(?![\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF\uFF01-\uFF60])\p{L}\p{M}*$/u.test(s.textContent)||h.ideographNumeric&&/(?![\uFF01-\uFF60])\p{Nd}\p{M}*$/u.test(s.textContent))&&!(p&&s.parentElement!==null&&H(s.parentElement))&&!z(s,t)&&(t.before(v.createElement("viv-ts-thin-sp")),A=!0),a&&/(?!\p{P})[\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF]\p{M}*$/u.test(m)&&(h.ideographAlpha&&/^(?![\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF\uFF01-\uFF60])\p{L}/u.test(a.textContent)||h.ideographNumeric&&/^(?![\uFF01-\uFF60])\p{Nd}/u.test(a.textContent))&&!(p&&a.parentElement!==null&&H(a.parentElement))&&!z(t,a)&&(t.after(v.createElement("viv-ts-thin-sp")),A=!0)),b}registerHooks(){Ft("POLYFILLED_INHERITED_PROPS",this.getPolyfilledInheritedProps.bind(this)),Ft("PREPROCESS_SINGLE_DOCUMENT",this.preprocessSingleDocument.bind(this)),Ft("POST_LAYOUT_BLOCK",this.postLayoutBlock.bind(this),!0)}},_h=new Wx;_h.registerHooks();function Gx(t){_h.preprocessForTextSpacing(t)}function jx(t,e,i,n,r,o){_h.processGeneratedContent(t,e,i,n,r,o)}var xr=new DOMParser().parseFromString('<root xmlns="http://www.pyroxy.com/ns/shadow"/>',"text/xml"),Xx=["footnote-marker","marker","first-5-lines","first-4-lines","first-3-lines","first-2-lines","first-line","first-letter","before","footnote-call","","after"],Dh="data-adapt-pseudo";function Qt(t){return t.getAttribute(Dh)||""}function Mr(t,e){t.setAttribute(Dh,e)}var Da=class{constructor(t,e,i,n,r){u(this,"element",t),u(this,"style",e),u(this,"styler",i),u(this,"context",n),u(this,"exprContentListener",r),u(this,"contentProcessed",{}),u(this,"afterStyleTaken",!1)}getStyle(t,e){let i=Qt(t);!this.afterStyleTaken&&i&&i.match(/after$/)&&(this.style=this.styler.getStyle(this.element,!0),this.afterStyleTaken=!0);let n=lt(this.style,"_pseudos"),r=n?.[i]||{};if(i.match(/^first-/)&&!r["x-first-pseudo"]){let o=1,s;i=="first-letter"?o=0:(s=i.match(/^first-([0-9]+)-lines$/))!=null&&(o=s[1]-0),r["x-first-pseudo"]=new X(new ht(o),0)}return r}processContent(t,e,i){let n=Qt(t);if(!this.contentProcessed[n]){this.contentProcessed[n]=!0;let r=e.content;At(r)&&(r.visit(new Wr(t,this.context,r,this.exprContentListener)),Gx(t))}}},Rk=bs.isInstanceOfAfterIfContinuesLayoutConstraint,qx=ha.registerFragmentIndex,Lk=ha.clearFragmentIndices,Yx=class{constructor(t,e){u(this,"sourceNode",t),u(this,"styler",e)}createElement(t,e){let i=e.viewNode.ownerDocument.createElement("div"),n=new zh(t,i,e),r=n.getColumn().pageBreakType;return n.getColumn().pageBreakType=null,n.layout(this.createNodePositionForPseudoElement(),!0).thenAsync(()=>{this.styler.contentProcessed["after-if-continues"]=!1,n.getColumn().pageBreakType=r;let o=i.firstChild;return R(o,"display","block"),F(o)})}createNodePositionForPseudoElement(){let t=xr.createElementNS("http://www.w3.org/1999/xhtml","div");Mr(t,"after-if-continues");let e=this.createShadowContext(t),i={steps:[{node:t,shadowType:e.type,shadowContext:e,nodeShadow:null,shadowSibling:null}],offsetInNode:0,after:!1,preprocessedTextContent:null};return new zi(i)}createShadowContext(t){return new Zo(this.sourceNode,t,null,null,null,wi.ShadowType.ROOTED,this.styler)}},Zx=class bg{constructor(e,i,n){u(this,"nodeContext",e),u(this,"afterIfContinues",i),u(this,"pseudoElementHeight",n),u(this,"flagmentLayoutConstraintType","AfterIfContinue")}allowLayout(e,i,n){return!(i&&!e||e&&e.overflow)}nextCandidate(e){return!1}postLayout(e,i,n,r){}finishBreak(e,i){return this.getRepetitiveElements().affectTo(e)?this.afterIfContinues.createElement(i,this.nodeContext).thenAsync(n=>(this.nodeContext.viewNode.appendChild(n),F(!0))):F(!0)}getRepetitiveElements(){return new Kx(this.nodeContext,this.pseudoElementHeight)}equalsTo(e){return e instanceof bg?this.afterIfContinues==e.afterIfContinues:!1}getPriorityOfFinishBreak(){return 9}},Kx=class{constructor(t,e){u(this,"nodeContext",t),u(this,"pseudoElementHeight",e)}calculateOffset(t){return this.affectTo(t)?this.pseudoElementHeight:0}calculateMinimumOffset(t){return this.calculateOffset(t)}affectTo(t){if(!t)return!1;let e=t.shadowContext?t.shadowContext.owner:t.sourceNode;if(e===this.nodeContext.sourceNode)return!!t.after;for(let i=e.parentNode;i;i=i.parentNode)if(i===this.nodeContext.sourceNode)return!0;return!1}};function xg(t,e){let i=t&&Dw(t);if(!i||i.after||e.asFloatNodeContext(i))return F(t);let n=i.afterIfContinues,r=i;return n.createElement(e,r).thenAsync(o=>{let s=Qx(r,e,o);return e.fragmentLayoutConstraints.push(new Zx(r,n,s)),F(t)})}function Sg(t,e){return t.thenAsync(i=>xg(i,e))}function Jx(t,e){let i=V("processAfterIfContinuesOfAncestors"),n=t;return i.loop(()=>{if(n!==null){let r=xg(n,e);return n=n.parent,r.thenReturn(!0)}else return F(!1)}).then(()=>{i.finish(!0)}),i.result()}function Qx(t,e,i){let n=t.viewNode;n.appendChild(i);let r=ul(i,e,t.vertical);return n.removeChild(i),r}var eS=class{constructor(t){u(this,"constraints",t)}allowLayout(t){return this.constraints.every(e=>e.allowLayout(t))}},Sr=class extends vh{constructor(t,e){super(),u(this,"checkPoints",t),u(this,"penalty",e),u(this,"alreadyEvaluated",!1),u(this,"breakNodeContext",null)}findAcceptableBreak(t,e){return e<this.getMinBreakPenalty()?null:(this.alreadyEvaluated||(this.breakNodeContext=t.findBoxBreakPosition(this,e>0),this.alreadyEvaluated=!!this.breakNodeContext||e>0||!!t.pseudoParent),this.breakNodeContext)}getMinBreakPenalty(){return this.penalty}getNodeContext(){return this.alreadyEvaluated?this.breakNodeContext:this.checkPoints[this.checkPoints.length-1]}},Us=class extends Vp{constructor(t,e,i,n,r,o,s,a,h){super(t),u(this,"layoutContext",e),u(this,"clientLayout",i),u(this,"layoutConstraint",n),u(this,"flowRootFormattingContext",h),u(this,"last"),u(this,"viewDocument"),u(this,"isNonFirstColumn",!1),u(this,"isFloat",!1),u(this,"isFootnote",!1),u(this,"startEdge",0),u(this,"endEdge",0),u(this,"beforeEdge",0),u(this,"afterEdge",0),u(this,"footnoteEdge",0),u(this,"chunkPositions",[]),u(this,"bands"),u(this,"overflown",!1),u(this,"breakPositions",[]),u(this,"pageBreakType",null),u(this,"forceNonfitting",!0),u(this,"leftFloatEdge",0),u(this,"rightFloatEdge",0),u(this,"bottommostFloatTop",0),u(this,"stopAtOverflow",!0),u(this,"lastAfterPosition",null),u(this,"fragmentLayoutConstraints",[]),u(this,"pseudoParent",null),u(this,"nodeContextOverflowingDueToRepetitiveElements",null),u(this,"blockDistanceToBlockEndFloats",NaN),u(this,"lastLineStride",0),u(this,"breakAtTheEdgeBeforeFloat",null),u(this,"lineFootnoteOverflowEdge",null),u(this,"pageFloatLayoutContext"),Hw(this),this.last=t.lastChild,this.viewDocument=t.ownerDocument,this.pageFloatLayoutContext=r.withContainer(this),zp(o,this),this.innerShape=s,this.exclusions=a,this.bands=this.measure(),this.createFloats()}getTopEdge(){return this.vertical?this.rtl?this.endEdge:this.startEdge:this.beforeEdge}getBottomEdge(){return this.vertical?this.rtl?this.startEdge:this.endEdge:this.afterEdge}getLeftEdge(){return this.vertical?this.afterEdge:this.rtl?this.endEdge:this.startEdge}getRightEdge(){return this.vertical?this.beforeEdge:this.rtl?this.startEdge:this.endEdge}asFloatNodeContext(t){let e=Lt(t);return e&&e.floatSide&&(!this.isFloat||e.parent)?e:null}stopByOverflow(t){return this.stopAtOverflow&&!!t&&t.overflow}almostEquals(t,e,i=this.clientLayout.pixelRatio===0?.5:1.5/(this.clientLayout.pixelRatio||1)){return Math.abs(t-e)<i}getFloatLayoutUnit(){return this.clientLayout.pixelRatio===0?0:1/(this.clientLayout.pixelRatio||1)}getFloatLayoutTolerance(t){return t||1}isOverflown(t){let e=1.5/(this.clientLayout.pixelRatio||1);return this.almostEquals(t,this.footnoteEdge,e)?!1:this.vertical?t<this.footnoteEdge:t>this.footnoteEdge}getExclusions(){let t=this.pageFloatLayoutContext.getFloatFragmentExclusions();return this.exclusions.concat(t)}openAllViews(t){let e=V("openAllViews"),i=t.steps;this.layoutContext.setViewRoot(this.element,this.isFootnote);let n=i.length-1,r=null;return e.loop(()=>{for(;n>=0;){let o=r;if(r=o?Ss(i[n],o):Fw(Rw(t),this.flowRootFormattingContext),n==0&&(r.offsetInNode=this.calculateOffsetInNodeForNodeContext(t),r.after=t.after,r.preprocessedTextContent=t.preprocessedTextContent,r.after))break;let s=this.layoutContext.setCurrent(r,n==0&&r.offsetInNode==0);if(n--,s.isPending())return s}return F(!1)}).then(()=>{e.finish(r)}),e.result()}calculateOffsetInNodeForNodeContext(t){return t.preprocessedTextContent?bw(t.preprocessedTextContent,t.offsetInNode):t.offsetInNode}maybePeelOff(t,e){var i,n,r;if(t.firstPseudo&&t.inline&&!t.after&&t.firstPseudo.count==0){let o=uh(t);if(o){let s=o.viewNode,a=s.textContent,h=a.match(ps),l=h?h[0].length:0;if(!h&&((i=t.sourceNode)==null?void 0:i.nodeType)===3&&((n=t.sourceNode.nextSibling)==null?void 0:n.nodeType)===3&&a===t.sourceNode.textContent){let c=a+t.sourceNode.nextSibling.textContent,d=c.match(ps);if(d){let p=d[0];l=p.length,t.sourceNode.textContent=p,s.textContent=p,t.sourceNode.nextSibling.textContent=c.substr(l)}}if(l>0){let c=(r=s.textContent)!=null?r:"";s.textContent=c.substr(0,l)}return this.layoutContext.peelOff(o,l)}}return F(t)}buildViewToNextBlockEdge(t,e){let i=!1,n=V("buildViewToNextBlockEdge");return n.loopWithFrame(r=>{var o;let s=Yi(t);if(s&&!Ln(s)&&((o=s.viewNode.parentElement)==null?void 0:o.namespaceURI)==="http://www.w3.org/1999/xhtml"&&(e.push(s.copy()),e.length>1e3)){let a=s.viewNode.nodeType===1?s.viewNode:s.viewNode.parentElement,h=this.clientLayout.getElementClientRect(a);if(Gr(h,this.vertical)>=2){r.breakLoop();return}}this.maybePeelOff(t,0).then(a=>{let h=a;if(h!==t){t=h;let l=Yi(h);l&&!Ln(l)&&e.push(l.copy())}this.nextInTree(t).then(l=>{if(t=l,!t){r.breakLoop();return}(i||!this.layoutConstraint.allowLayout(t))&&(i=!0,t=t.modify(),t.overflow=!0);let c=this.asFloatNodeContext(t);c&&(Li(c.floatReference)||c.floatSide==="footnote")?this.layoutFloatOrFootnote(c).then(d=>{if(t=d,this.pageFloatLayoutContext.isInvalidated()&&(t=null),!t){r.breakLoop();return}if(t.pluginProps.lineFootnoteOverflow){r.breakLoop();return}r.continueLoop()}):t.inline?r.continueLoop():r.breakLoop()})})}).then(()=>{n.finish(t)}),n.result()}nextInTree(t,e){let i=this.layoutContext.nextInTree(t,e);return Sg(i,this)}buildDeepElementView(t){if(!t.viewNode)return F(t);let e=[],i=t.sourceNode,n=V("buildDeepElementView");return n.loopWithFrame(r=>{let o=Yi(t);o&&o.inline&&!Ln(o)?e.push(o.copy()):(e.length>0&&this.postLayoutBlock(t,e),e=[]),this.maybePeelOff(t,0).then(s=>{let a=s;if(a!==t){let h=a;for(;h&&h.sourceNode!=i;)h=h.parent;if(h==null){t=a,r.breakLoop();return}let l=Yi(a);l&&!Ln(l)&&e.push(l.copy())}this.nextInTree(a).then(h=>{if(t=h,!t||t.sourceNode==i){r.breakLoop();return}if(!this.layoutConstraint.allowLayout(t)&&(t=t.modify(),t.overflow=!0,this.stopAtOverflow)){r.breakLoop();return}let l=this.asFloatNodeContext(t);if(l&&(Li(l.floatReference)||l.floatSide==="footnote")){this.layoutFloatOrFootnote(l).then(c=>{if(t=c,this.pageFloatLayoutContext.isInvalidated()&&(t=null),!t){r.breakLoop();return}r.continueLoop()});return}r.continueLoop()})})}).then(()=>{e.length>0&&this.postLayoutBlock(t,e),n.finish(t)}),n.result()}createFloat(t,e,i,n){let r=this.viewDocument.createElement("div");return this.vertical?(n>=this.height&&(n-=.1),n<1&&(n=0),R(r,"height",`${i}px`),R(r,"width",`${n}px`)):(i>=this.width&&(i-=.1),i<1&&(i=0),R(r,"width",`${i}px`),R(r,"height",`${n}px`)),R(r,"float",e),R(r,"clear",e),this.element.insertBefore(r,t),r}killFloats(){let t=this.element.firstChild;for(;t;){let e=t.nextSibling;if(t.nodeType==1){let i=t,n=i.style.cssFloat;if(n=="left"||n=="right"||n==="none")this.element.removeChild(i);else break}t=e}}createFloats(){let t=this.element.firstChild,e=this.bands,i=this.vertical?this.getTopEdge():this.getLeftEdge(),n=this.vertical?this.getBottomEdge():this.getRightEdge(),r=this.vertical?-this.getRightEdge():this.getTopEdge(),o=this.vertical?-this.getLeftEdge():this.getBottomEdge(),s=null,a=1.5/(this.clientLayout.pixelRatio||1);for(let p of e){let f=Math.abs(p.x1-i)<a&&Math.abs(p.x2-n)<a?a:void 0;this.almostEquals(p.x1,i,f)?p.x1=i:this.almostEquals(p.x1,n,f)&&(p.x1=n),this.almostEquals(p.x2,n,f)?p.x2=n:this.almostEquals(p.x2,i,f)&&(p.x2=i),this.almostEquals(p.y1,r,f)?p.y1=r:this.almostEquals(p.y1,o,f)&&(p.y1=o),this.almostEquals(p.y2,o,f)?p.y2=o:this.almostEquals(p.y2,r,f)&&(p.y2=r)}let h=this.getFloatLayoutUnit(),l=no==="webkit"?Math.floor:Math.round,c=e.map(p=>h>0?(l(p.y2/h)-l(p.y1/h))*h:p.y2-p.y1),d=.01;for(let p=0;p<e.length;p++){let f=p<e.length-1?e[p+1].x1:i,g=p<e.length-1?e[p+1].x2:n,m=f-e[p].x1,v=e[p].x2-g,b=0,x=0;m>d?b=1:m<-d&&(b=-1),v>d?x=1:v<-d&&(x=-1);let C=b!==0&&x!==0?b===x?b:0:b||x;if(h>0&&C!==0){let y=C*h;c[p]+y>=0&&(p>=e.length-1||c[p+1]-y>=0)&&(c[p]+=y,p<e.length-1&&(c[p+1]-=y))}}for(let p=0;p<e.length;p++){let f=e[p];f.left=this.createFloat(t,"left",f.x1-i,c[p]),f.right=this.createFloat(t,"right",n-f.x2,c[p]),f.x1<n&&f.x2>i?s=f:s||R(f.right,"float","none")}if(s){let p=e[e.length-1],f=1.5/(this.clientLayout.pixelRatio||1);if(s!==p&&(p.y2>=o||this.almostEquals(p.y2,o,f))&&(this.footnoteEdge=this.vertical?-s.y2:s.y2,s.x1===i&&s.x2===n))for(let g=e.indexOf(s);g<e.length;g++){let m=e[g];this.element.removeChild(m.left),this.element.removeChild(m.right),m.left=null,m.right=null}}this.adjustColumnBlockSizeForBlockEndFloats()}adjustColumnBlockSizeForBlockEndFloats(){var t;if(this.element.hasAttribute("data-vivliostyle-in-column-balancing")||(t=this.element.parentElement)!=null&&t.hasAttribute("data-vivliostyle-in-column-balancing"))return;let e=this.vertical?this.width:this.height,i=this.getBoxDir()*(this.footnoteEdge-this.beforeEdge),n=1.5/(this.clientLayout.pixelRatio||1);if(i>0&&i<e&&!this.almostEquals(i,e,n)){let r=this.vertical?"width":"height";if(R(this.element,r,`${i}px`),this.vertical){let o=this.left+(e-i);R(this.element,"left",`${o}px`)}this.element.setAttribute("data-vivliostyle-column-block-size-adjusted","true")}}calculateEdge(t,e,i,n){let r;if(t&&Rn(t.viewNode))return NaN;if(t&&t.after&&!t.inline&&(r=Tn(t,this.clientLayout,0,this.vertical),!isNaN(r)))return r;t=e[i];let o=n-t.boxOffset;for(;;){if(r=Tn(t,this.clientLayout,o,this.vertical),!isNaN(r))return r;if(o>0){o--;continue}if(i--,i<0)return this.beforeEdge;let s=e[i];t=s,s.viewNode.nodeType!=1&&(o=s.viewNode.textContent.length)}}parseComputedLength(t){let e=t.match(/^(-?[0-9]*(\.[0-9]*)?)px$/);return e?this.clientLayout.adjustLengthValue(parseFloat(e[0])):0}getComputedMargin(t){let e=this.clientLayout.getElementComputedStyle(t),i=new Sa(0,0,0,0);return e&&(i.left=this.parseComputedLength(e.marginLeft),i.top=this.parseComputedLength(e.marginTop),i.right=this.parseComputedLength(e.marginRight),i.bottom=this.parseComputedLength(e.marginBottom)),i}getComputedPaddingBorder(t){let e=this.clientLayout.getElementComputedStyle(t),i=new Sa(0,0,0,0);return e&&(i.left=this.parseComputedLength(e.borderLeftWidth)+this.parseComputedLength(e.paddingLeft),i.top=this.parseComputedLength(e.borderTopWidth)+this.parseComputedLength(e.paddingTop),i.right=this.parseComputedLength(e.borderRightWidth)+this.parseComputedLength(e.paddingRight),i.bottom=this.parseComputedLength(e.borderBottomWidth)+this.parseComputedLength(e.paddingBottom)),i}getComputedInsets(t){let e=this.clientLayout.getElementComputedStyle(t),i=new Sa(0,0,0,0);if(e){if(e.boxSizing=="border-box")return this.getComputedMargin(t);i.left=this.parseComputedLength(e.marginLeft)+this.parseComputedLength(e.borderLeftWidth)+this.parseComputedLength(e.paddingLeft),i.top=this.parseComputedLength(e.marginTop)+this.parseComputedLength(e.borderTopWidth)+this.parseComputedLength(e.paddingTop),i.right=this.parseComputedLength(e.marginRight)+this.parseComputedLength(e.borderRightWidth)+this.parseComputedLength(e.paddingRight),i.bottom=this.parseComputedLength(e.marginBottom)+this.parseComputedLength(e.borderBottomWidth)+this.parseComputedLength(e.paddingBottom)}return i}setComputedInsets(t,e){let i=this.clientLayout.getElementComputedStyle(t);i&&(e.marginLeft=this.parseComputedLength(i.marginLeft),e.borderLeft=this.parseComputedLength(i.borderLeftWidth),e.paddingLeft=this.parseComputedLength(i.paddingLeft),e.marginTop=this.parseComputedLength(i.marginTop),e.borderTop=this.parseComputedLength(i.borderTopWidth),e.paddingTop=this.parseComputedLength(i.paddingTop),e.marginRight=this.parseComputedLength(i.marginRight),e.borderRight=this.parseComputedLength(i.borderRightWidth),e.paddingRight=this.parseComputedLength(i.paddingRight),e.marginBottom=this.parseComputedLength(i.marginBottom),e.borderBottom=this.parseComputedLength(i.borderBottomWidth),e.paddingBottom=this.parseComputedLength(i.paddingBottom))}setComputedWidthAndHeight(t,e){let i=this.clientLayout.getElementComputedStyle(t);i&&(e.width=this.parseComputedLength(i.width),e.height=this.parseComputedLength(i.height))}layoutUnbreakable(t){return this.buildDeepElementView(t)}layoutFloat(t){let e=V("layoutFloat"),i=t.viewNode,n=Ta(t.floatSide,t.vertical,t.direction,this.layoutContext.page.side);return R(i,"float","none"),R(i,"display","inline-block"),R(i,"vertical-align","top"),this.buildDeepElementView(t).then(r=>{let o=_t(this.clientLayout,i,this.vertical),s=this.getComputedMargin(i),a=new Dt(o.left-s.left,o.top-s.top,o.right+s.right,o.bottom+s.bottom),h=this.rtl?this.endEdge:this.startEdge,l=this.rtl?this.startEdge:this.endEdge,c=t.parent;for(;c&&c.inline;)c=c.parent;let d=c&&Yi(c);if(d){let k=d.viewNode,S=k.ownerDocument.createElement("div");S.style.left="0px",S.style.top="0px",this.vertical?(S.style.bottom="0px",S.style.width="1px"):(S.style.right="0px",S.style.height="1px"),k.appendChild(S);let N=_t(this.clientLayout,S,this.vertical);h=Math.max(this.rtl?this.getEndEdge(N):this.getStartEdge(N),h),l=Math.min(this.rtl?this.getStartEdge(N):this.getEndEdge(N),l),k.removeChild(S);let L=this.vertical?a.y2-a.y1:a.x2-a.x1;n=="left"?l=Math.max(l,h+L):h=Math.min(h,l-L),c!==t.parent&&!t.firstPseudo&&(k.appendChild(i),i.setAttribute("data-vivliostyle-float-box-moved","true"))}let p=new Dt(h,this.getBoxDir()*this.beforeEdge,l,this.getBoxDir()*this.afterEdge),f=a;this.vertical&&(f=ys(a));let g=this.getBoxDir();if(f.y1<this.bottommostFloatTop*g){let k=f.y2-f.y1;f.y1=this.bottommostFloatTop*g,f.y2=f.y1+k}if(t.clearSide){let k=/^(top|bottom|inside|outside|(block|inline)-(start|end))$/.test(t.clearSide)?Ta(t.clearSide,t.vertical,t.direction,this.layoutContext.page.side):t.clearSide==="same"?n:t.clearSide,S=this.beforeEdge;k!=="right"&&(S=g*Math.max(S*g,this.leftFloatEdge*g)),k!=="left"&&(S=g*Math.max(S*g,this.rightFloatEdge*g));let N=S*g;if(f.y1<N){let L=f.y2-f.y1;f.y1=N,f.y2=f.y1+L}}p.y2+=this.getFloatLayoutUnit(),_y(p,this.bands,f,n),this.vertical&&(a=Wd(f));let m=this.getComputedInsets(i);R(i,"width",`${a.x2-a.x1-m.left-m.right}px`),R(i,"height",`${a.y2-a.y1-m.top-m.bottom}px`),R(i,"position","absolute"),t.display,R(i,"display",t.display);let v,b=c?c.containingBlockForAbsolute?Lt(c):c.getContainingBlockForAbsolute():null;if(b){let k=b.viewNode,S=k.ownerDocument.createElement("div");S.style.position="absolute",b.vertical?S.style.right="0":S.style.left="0",S.style.top="0",k.appendChild(S),v=_t(this.clientLayout,S,this.vertical),k.removeChild(S)}else v={left:this.getLeftEdge()-this.paddingLeft,right:this.getRightEdge()+this.paddingRight,top:this.getTopEdge()-this.paddingTop};if(b?b.vertical:this.vertical){let k=Math.max(0,v.right-a.x2);R(i,"right",`${k}px`)}else{let k=Math.max(0,a.x1-v.left);R(i,"left",`${k}px`)}let x=Math.max(0,a.y1-v.top);R(i,"top",`${x}px`),t.clearSpacer&&(t.clearSpacer.remove(),t.clearSpacer=null);let C=this.vertical?a.x1:a.y2,y=this.vertical?a.x2:a.y1;!this.isOverflown(C)||this.breakPositions.length==0?(this.killFloats(),p=new Dt(this.getLeftEdge(),this.getTopEdge(),this.getRightEdge(),this.getBottomEdge()),this.vertical&&(p=ys(p)),Dy(p,this.bands,f,null,n),this.createFloats(),n=="left"?this.leftFloatEdge=C:this.rightFloatEdge=C,this.bottommostFloatTop=y,this.updateMaxReachedAfterEdge(C),e.finish(r)):(t=t.modify(),t.overflow=!0,e.finish(t))}),e.result()}setupFloatArea(t,e,i,n,r,o){let s=this.pageFloatLayoutContext,a=s.getPageFloatLayoutContext(e).container,h=t.element;return r.adjustPageFloatArea(t,a,this).thenAsync(()=>{t.killFloats(),t.remeasure();let l=!!s.setFloatAreaDimensions(t,e,i,n,!0,t.isFootnote||!s.hasFloatFragments(),o);if(l){if(t.isFootnote){let c=getComputedStyle(t.element);if(t.vertical){let d=parseFloat(c.maxWidth);!isNaN(d)&&t.width>d&&(t.width=d,R(t.element,"width",`${d}px`))}else{let d=parseFloat(c.maxHeight);!isNaN(d)&&t.height>d&&(t.height=d,R(t.element,"height",`${d}px`))}}t.killFloats(),t.remeasure()}else h.remove();return F(l)})}createPageFloatArea(t,e,i,n,r){let o=this.element.ownerDocument.createElement("div");R(o,"position","absolute");let s=this.pageFloatLayoutContext.getPageFloatLayoutContext(t.floatReference),a=Oi.createDetached(this.pageFloatLayoutContext,Ne.COLUMN,this.pageFloatLayoutContext.flowName,t.nodePosition),h=s.container,l=this.pageFloatLayoutContext.getPageFloatLayoutContext(t.floatReference).container;l.element.parentNode.appendChild(o);let c=l.getPaddingRect(),d=c.x1-l.originX,p=c.y1-l.originY;R(o,"left",`${d}px`),R(o,"top",`${p}px`);let f=new nS(e,o,this.layoutContext.clone(),this.clientLayout,this.layoutConstraint,a,h,{vertical:l.vertical,rtl:l.rtl,snapWidth:0,snapHeight:0,originX:l.originX,originY:l.originY,left:d,top:p,width:c.x2-c.x1,height:c.y2-c.y1,marginLeft:0,marginRight:0,marginTop:0,marginBottom:0,borderLeft:0,borderRight:0,borderTop:0,borderBottom:0,paddingLeft:0,paddingRight:0,paddingTop:0,paddingBottom:0,borderBoxSizing:!1},null,(l.exclusions||[]).concat(),this.flowRootFormattingContext);return f.isFloat=!0,f.forceNonfitting=!this.pageFloatLayoutContext.hasFloatFragments(),this.setupFloatArea(f,t.floatReference,e,i,n,r).thenAsync(g=>F(g?f:null))}layoutSinglePageFloatFragment(t,e,i,n,r,o,s){let a=this.pageFloatLayoutContext;t=(s?s.continuations:[]).concat(t);let h=t[0].float,l=a.getPageFloatPlacementCondition(h,e,i),c={floatArea:null,pageFloatFragment:null,newPosition:null},d=V("layoutSinglePageFloatFragment");return this.createPageFloatArea(h,e,o,r,l).then(p=>{if(c.floatArea=p,!p){d.finish(c);return}let f=!1,g=0;d.loopWithFrame(m=>{if(g>=t.length){m.breakLoop();return}let v=t[g],b=new zi(v.nodePosition),x=p.getRootViewNodeCount();p.layout(b,!0).then(C=>{if(c.newPosition=C,!C||n){if(C&&p.isFootnote&&p.breakPositions&&!(p.breakPositions.some(y=>y instanceof Sr)&&p.hasNonPseudoTextContentAfter(x))){f=!0,m.breakLoop();return}g++,m.continueLoop()}else f=!0,m.breakLoop()})}).then(()=>{if(!f&&p.isFootnote&&p.computedBlockSize<=0&&c.newPosition){let m=a.getPageFloatLayoutContext(h.floatReference);if(m.footnoteMaxBlockSize==null){if(m.initFootnoteRetryFromEmptyFragment(h,p)){p.element.parentNode&&p.element.parentNode.removeChild(p.element),this.layoutSinglePageFloatFragment(t,e,i,n,r,o,s).then(v=>{d.finish(v)});return}f=!0}}if(!f){p.isFootnote&&p.applyCompactFootnoteDisplay();let m=a.setFloatAreaDimensions(p,h.floatReference,e,o,!1,n,l);if(!m)f=!0;else{let v=r.createPageFloatFragment(t,m,i,p,!!c.newPosition);a.addPageFloatFragment(v,!0),c.pageFloatFragment=v}}d.finish(c)})}),d.result()}layoutPageFloatInner(t,e,i,n){let r=this.pageFloatLayoutContext,o=t.float,s=o instanceof jr,a=s&&o.footnotePolicy===w.line&&!!n&&!n.hasFloat(o),h=new Set;for(let d=r;d;d=d.effectiveParent)for(let p of d.floatFragments)p.continuations.some(f=>f.float.insidePageFloatArea)&&h.add(p);a||r.stashEndFloatFragments(o);function l(d,p){p?r.removePageFloatFragment(p,!0):d&&d.element.parentNode.removeChild(d.element);let f=[];for(let g=r;g;g=g.effectiveParent)for(let m of g.floatFragments)!h.has(m)&&m.continuations.some(v=>v.float.insidePageFloatArea)&&f.push(m);for(let g of f)r.removePageFloatFragment(g,!0);r.restoreStashedFragments(o.floatReference),r.deferPageFloat(t)}let c=V("layoutPageFloatInner");return this.layoutSinglePageFloatFragment([t],o.floatSide,o.clearSide,s||!r.hasFloatFragments(),e,i,a?null:n).then(d=>{let p=d.floatArea,f=d.pageFloatFragment,g=d.newPosition;f?this.layoutStashedPageFloats(o.floatReference,[n]).then(m=>{if(m){let v=f;if(a&&n){let y=n.area,k=y.getRootViewNodeCount();if(y.appendContentFrom(f.area),r.removePageFloatFragment(f,!0),!r.setFloatAreaDimensions(y,o.floatReference,n.floatSide,i,!1,!0,r.getPageFloatPlacementCondition(o,o.floatSide,o.clearSide))){y.removeContentAfter(k),l(p,f),c.finish(!1);return}n.addContinuations(f.continuations),v=n}let b=!!r.generatingNodePosition,x=!b&&o instanceof jr&&o.footnotePolicy===w.line,C=x&&r.hasInvalidatedForLineFootnote(o);if(r.addPageFloatFragment(v,b||C),x&&!C&&r.markInvalidatedForLineFootnote(o),r.discardStashedFragments(o.floatReference),g){let y=new Vu(o,g.primary);r.deferPageFloat(y)}c.finish(!0)}else l(p,f),c.finish(!1)}):(l(p,f),c.finish(!1))}),c.result()}layoutStashedPageFloats(t,e){let i=this.pageFloatLayoutContext,n=i.getStashedFloatFragments(t),r=[],o=[],s=!1,a=V("layoutStashedPageFloats"),h=0;return a.loopWithFrame(l=>{if(h>=n.length){l.breakLoop();return}let c=n[h];if(e.includes(c)){h++,l.continueLoop();return}let d=new Wn().findByFloat(c.continuations[0].float);this.layoutSinglePageFloatFragment(c.continuations,c.floatSide,c.clearSide,!1,d,null).then(p=>{let f=p.floatArea;f&&r.push(f);let g=p.pageFloatFragment;g?(o.push(g),h++,l.continueLoop()):(s=!0,l.breakLoop())})}).then(()=>{s?(o.forEach(l=>{i.removePageFloatFragment(l,!0)}),r.forEach(l=>{let c=l.element;c&&c.parentNode&&c.parentNode.removeChild(c)})):n.forEach(l=>{let c=l.area.element;c&&c.parentNode&&c.parentNode.removeChild(c)}),a.finish(!s)}),a.result()}findFootnoteCallElement(t){let e=t.previousSibling;for(;e;){if(e.nodeType===Node.ELEMENT_NODE&&Qt(e)==="footnote-call")return e;e=e.previousSibling}return null}setFloatAnchorViewNode(t){let e=t.viewNode.ownerDocument.createElement("span");if(e.setAttribute(Un,"1"),t.floatSide==="footnote"){let n=this.findFootnoteCallElement(t.viewNode);n?e=n:t.viewNode.before(e)}else t.viewNode.parentNode.appendChild(e);t.viewNode.remove();let i=t.modify();return i.after=!0,i.viewNode=e,t.floatSide==="footnote"&&(i.display="inline"),i}resolveFloatReferenceFromColumnSpan(t,e,i){let n=V("resolveFloatReferenceFromColumnSpan"),r=this.pageFloatLayoutContext,o=r.getPageFloatLayoutContext(Ne.REGION);return r.container.width<o.container.width&&t===Ne.COLUMN?e===w.auto?this.buildDeepElementView(i.copy()).then(s=>{let a=s.viewNode,h=fh(this.clientLayout,a,["min-content inline size"])["min-content inline size"],l=this.getComputedMargin(a);this.vertical?h+=l.top+l.bottom:h+=l.left+l.right,h>this.width?n.finish(Ne.REGION):n.finish(t)}):e===w.all?n.finish(Ne.REGION):n.finish(t):n.finish(t),n.result()}layoutPageFloat(t){let e=this.pageFloatLayoutContext,i=new Wn().findByNodeContext(t),n,r=e.findPageFloatByNodePosition(t.toNodePosition());return r?n=F(r):n=i.createPageFloat(t,e,this),n.thenAsync(o=>{let s=xs(t,0),a=this.setFloatAnchorViewNode(t);e.markPageFloatAnchorSeen(o);let h=i.findPageFloatFragment(o,e),l=new Vu(o,s);if(h&&h.hasFloat(o))return e.registerPageFloatAnchor(o,a.viewNode),F(a);if(e.isForbidden(o)||e.hasPrecedingFloatsDeferredToNext(o))return e.deferPageFloat(l),e.registerPageFloatAnchor(o,a.viewNode),F(a);if(this.nodeContextOverflowingDueToRepetitiveElements)return F(null);{let c=p=>{if(!p||p.nodeType!==1)return NaN;let f=_t(this.clientLayout,p,this.vertical);return f.right>=f.left&&f.bottom>=f.top?this.vertical?f.left:f.bottom:NaN},d=Tn(a,this.clientLayout,0,this.vertical);if(t.floatSide==="footnote"){let p=o;if(p.footnotePolicy===w.line||isNaN(d)){let f=a;for(;f;){if((f.shadowContext?f.shadowContext.owner:f.sourceNode)===p.policyAnchorNode){let g=c(f.viewNode);isNaN(g)||(d=g);break}f=f.parent}}}return isNaN(d)&&t.floatSide==="footnote"&&(d=c(a.viewNode)),!(t.floatSide==="footnote"&&o.footnotePolicy===w.line)&&this.isOverflown(d)?F(a):(t.floatSide==="footnote"&&e.registerPageFloatAnchor(o,a.viewNode),this.layoutPageFloatInner(l,i,d,h).thenAsync(p=>{if(!p)return e.registerPageFloatAnchor(o,a.viewNode),F(a);if(t.floatSide==="footnote"){if(o.footnotePolicy===w.line&&e.hasInvalidatedForLineFootnote(o)){if(e.isInvalidated())return F(null);let f=i.findPageFloatFragment(o,e);if(f!=null&&f.hasFloat(o)&&f.continues)return this.registerLineFootnoteOverflowEdge(d),F(a)}return F(a)}return e.generatingNodePosition?F(a):F(null)}))}})}processLineStyling(t,e,i){let n=V("processLineStyling"),r=i.concat([]);i.splice(0,i.length);let o=0,s=t.firstPseudo;return s?.count===0&&(s=s.outer),n.loopWithFrame(a=>{if(!s){a.breakLoop();return}let h=this.findLinePositions(r),l=s.count-o;if(h.length<=l){a.breakLoop();return}let c=this.findAcceptableBreakInside(r,h[l-1],!0),d=c&&Op(c);if(!d){a.breakLoop();return}this.finishBreak(d,!1,!1).then(()=>{o+=l,this.layoutContext.peelOff(d,0).then(p=>{t=p,s=t.firstPseudo,r=[],this.buildViewToNextBlockEdge(t,r).then(f=>{e=f,a.continueLoop()})})})}).then(()=>{Array.prototype.push.apply(i,r),n.finish(e)}),n.result()}registerLineFootnoteOverflowEdge(t){if(!isFinite(t))return;let e=this.getBoxDir();(this.lineFootnoteOverflowEdge==null||e*t<e*this.lineFootnoteOverflowEdge)&&(this.lineFootnoteOverflowEdge=t)}findLineFootnoteOverflowBreak(t){if(this.lineFootnoteOverflowEdge==null||t.length===0)return null;let e=this.findLinePositions(t),i=this.getBoxDir(),n=1.5/(this.clientLayout.pixelRatio||1),r=e.find(o=>i*(o-this.lineFootnoteOverflowEdge)>=-n);return r==null?null:this.findAcceptableBreakInside(t,r,!0)}isLoneImage(t){return t.length!=2&&this.breakPositions.length>0?!1:t[0].sourceNode==t[1].sourceNode&&tn[t[0].sourceNode.localName]}getTrailingMarginEdgeAdjustment(t){let e=0,i=0;for(let n=t.length-1;n>=0;n--){let r=t[n];if(!r||!r.after||!r.viewNode||r.viewNode.nodeType!=1)break;let o=this.getComputedMargin(r.viewNode),s=this.vertical?-o.left:o.bottom;s>0?e=Math.max(e,s):i=Math.min(i,s)}return e+i}layoutBreakableBlock(t){let e=V("layoutBreakableBlock"),i=[];return this.lineFootnoteOverflowEdge=null,this.buildViewToNextBlockEdge(t,i).then(n=>{let r=i.length-1;if(r<0){e.finish(n);return}this.postLayoutBlock(n,i);let o=this.suppressOpenAncestorBlockEndInset(n??t),s=this.calculateEdge(n,i,r,i[r].boxOffset);o();let a=!1;if(!n||!Rn(n.viewNode)){let l=zn(n,this.collectElementsOffset());a=this.isOverflown(s+(this.vertical?-1:1)*l.minimum),this.isOverflown(s+(this.vertical?-1:1)*l.current)&&!this.nodeContextOverflowingDueToRepetitiveElements&&(this.nodeContextOverflowingDueToRepetitiveElements=n)}n==null&&(s+=this.getTrailingMarginEdgeAdjustment(i)),this.updateMaxReachedAfterEdge(s);let h;t.firstPseudo?h=this.processLineStyling(t,n,i):h=F(n),h.then(l=>{let c=this.findLineFootnoteOverflowBreak(i);if(c){let d=c.modify();d.overflow=!0,d.pluginProps.lineFootnoteOverflow=1,this.breakPositions=[],this.saveEdgeBreakPosition(d,null,!0),this.lineFootnoteOverflowEdge=null,e.finish(d);return}this.lineFootnoteOverflowEdge=null,i.length>0&&(this.saveBoxBreakPosition(i),a&&!this.isLoneImage(i)&&l&&(l=l.modify(),l.overflow=!0)),e.finish(l)})}),e.result()}postLayoutBlock(t,e){zt("POST_LAYOUT_BLOCK").forEach(i=>{i(t,e,this)})}findEndOfLine(t,e,i){let n=this.vertical?t-1:t+1,r=0,o=e[0].boxOffset,s=r,a=e.length-1,h=e[a].boxOffset,l;for(;o<h;){l=o+Math.ceil((h-o)/2),s=r;let c=a;for(;s<c;){let p=s+Math.ceil((c-s)/2);e[p].boxOffset>l?c=p-1:s=p}let d=this.calculateEdge(null,e,s,l);if(this.vertical?d<=n:d>=n){for(h=l-1;e[s].boxOffset==l;)s--;a=s}else i&&this.updateMaxReachedAfterEdge(d),o=l,r=s}return{nodeContext:e[s],index:o,checkPointIndex:s}}findAcceptableBreakInside(t,e,i){var n,r,o;let s=this.findEndOfLine(e,t,!0),a=s.nodeContext,h=a;if(s.checkPointIndex===0&&s.index===h.boxOffset)return null;let l=a.viewNode;if(l.nodeType!=1&&((n=l.parentElement)==null?void 0:n.localName)!=="viv-ts-inner"){let c=l;h=this.resolveTextNodeBreaker(h).breakTextNode(c,a,s.index,t,s.checkPointIndex,i)}else{let c=zu(h);if(c){if(((r=this.breakPositions)==null?void 0:r[0])instanceof Sr&&c.viewNode.contains(this.breakPositions[0].checkPoints[0].viewNode))return null;for(h=c;!h.after&&h.inline&&h.parent;){let d=(o=h.viewNode)==null?void 0:o.previousSibling;for(;d&&(Ee(d,h.parent.whitespace)||Mt(d));)d=d.previousSibling;if(d)break;h=h.parent}}}return this.clearOverflownViewNodes(h,!1),h}resolveTextNodeBreaker(t){return zt("RESOLVE_TEXT_NODE_BREAKER").reduce((e,i)=>i(t)||e,Ws.instance)}getRangeBoxes(t,e){let i=[],n=t.ownerDocument.createRange(),r=!1,o=t,s=null,a=!1,h=!0;for(;h;){let l=!0;do{let c=null;o==e&&(e.nodeType===1?h=!(!e.firstChild||r):h=!1);let d=o.nodeType===1?o:null;d?r?r=!1:ph(d)?l=!a:!d.firstChild||tn[d.localName]||/^r(uby|[bt]c?)$/.test(d.localName)||Xw(this.clientLayout.getElementComputedStyle(d).display)?(l=!a,l?(d.localName==="ruby"&&o.firstChild&&(o=o.firstChild),n.setStartBefore(o),a=!0,s=o):/^r(uby|tc?)$/.test(d.localName)||(s=o),o.contains(e)&&(h=!1)):c=o.firstChild:(a||(o.parentNode==null?h=!1:(n.setStartBefore(o),a=!0)),s=o),c||(c=o.nextSibling,c||(r=!0,c=o.parentNode)),o=c}while(l&&h);if(a){n.setEndAfter(s);let c=this.clientLayout.getRangeClientRects(n);Ps(c,this.vertical);for(let d=0;d<c.length;d++)i.push(c[d]);a=!1}}return i}findLinePositions(t){let e=[],i=this.getRangeBoxes(t[0].viewNode,t[t.length-1].viewNode);i.sort(this.vertical?Iw:Tw);let n=0,r=0,o=0,s=0,a=0,h=this.getBoxDir();for(;;){if(a<i.length){let l=i[a],c=1;if(s>0){let d=Math.max(this.getBoxSize(l),1);h*this.getBeforeEdge(l)<h*n?c=h*(this.getAfterEdge(l)-n)/d:h*this.getAfterEdge(l)>h*r?c=h*(r-this.getBeforeEdge(l))/d:c=1}if(s==0||c>=.6||c>=.2&&this.getStartEdge(l)>=o-1){o=this.getEndEdge(l),this.vertical?(n=s==0?l.right:Math.max(n,l.right),r=s==0?l.left:Math.min(r,l.left)):(n=s==0?l.top:Math.min(n,l.top),r=s==0?l.bottom:Math.max(r,l.bottom)),s++,a++;continue}}if(s>0&&(e.push(r),s=0),a>=i.length)break}return e.sort(ld),this.vertical&&e.reverse(),e}calculateClonedPaddingBorder(t){let e=0;for(let i=t;i;i=i.parent)if(!i.inline&&Fn(i.viewNode)){let n=this.getComputedPaddingBorder(i.viewNode);e+=i.vertical?-n.left:n.bottom,i.display==="table"&&(e+=(i.vertical?-1:1)*i.blockBorderSpacing)}return e}getOffsetByRepetitiveElements(t){let e;return t?e=t.calculateOffset(this):e=zn(null,this.collectElementsOffset()),e.current}findBoxBreakPosition(t,e){var i,n;let r=this.element.parentNode,o=this.element.nextSibling;r.removeChild(this.element),r.insertBefore(this.element,o);let s=t.checkPoints,a=s[0];for(;a.parent&&a.inline;)a=a.parent;let h,l;e&&!this.isFootnote?(h=1,l=1):(h=Math.max((a.inheritedProps.widows||2)-0,1),l=Math.max((a.inheritedProps.orphans||2)-0,1));let c=this.calculateClonedPaddingBorder(a),d=this.findLinePositions(s),p=this.footnoteEdge-c,f=this.getBoxDir(),g=this.getOffsetByRepetitiveElements(t);p-=f*g;let m=this.findFirstOverflowingEdgeAndCheckPoint(s);isNaN(m.edge)&&(m.edge=f*(1/0));let v=yi(d.length,y=>{let k=d[y];return this.vertical?k<p||k<=m.edge:k>p||k>=m.edge}),b=v<=0;b&&(v=yi(d.length,y=>this.vertical?d[y]<p:d[y]>p));let x=s[s.length-1].viewNode;if(x=(i=Wp(x))!=null?i:x,(v===d.length&&x.nextSibling||v>=d.length-1&&(n=x.parentElement)!=null&&n.querySelector(".MJXc-display"))&&(h=0,l=1),v=Math.min(d.length-h,v),v<l)return null;p=d[v-1];let C;if(b?C=m.checkPoint:C=this.findAcceptableBreakInside(t.checkPoints,p,e),C){let y=this.getAfterEdgeOfBlockContainer(C);if(!isNaN(y)&&f*(p-y)>0&&(p=y),this.computedBlockSize=f*(p-this.beforeEdge)+g,d.length>=2){let k=Math.max(1,Math.min(v-1,d.length-1));this.lastLineStride=Math.abs(d[k]-d[k-1])}}return C}getAfterEdgeOfBlockContainer(t){let e=t;do e=e.parent;while(e&&e.inline);return e?(e=e.copy().modify(),e.after=!0,Tn(e,this.clientLayout,0,this.vertical)):NaN}findFirstOverflowingEdgeAndCheckPoint(t){let e=t.findIndex(n=>n.overflow);if(e<0)return{edge:NaN,checkPoint:null};let i=t[e];return{edge:this.calculateEdge(null,t,e,i.boxOffset),checkPoint:i}}findEdgeBreakPosition(t){return this.computedBlockSize=t.computedBlockSize+this.getOffsetByRepetitiveElements(t),t.position}finishBreak(t,e,i){let n=new ar().find(t.formattingContext).finishBreak(this,t,e,i);return n||(n=wh.finishBreak(this,t,e,i)),n}findAcceptableBreakPosition(){let t=null,e=0,i=0;do{e=i,i=Number.MAX_VALUE;for(let n=this.breakPositions.length-1;n>=0&&!t;--n){let r=this.breakPositions[n],o=r.findAcceptableBreak(this,e);o&&(t={breakPosition:r,nodeContext:o});let s=r.getMinBreakPenalty();s>e&&(i=Math.min(i,s))}}while(i>e&&!t&&this.forceNonfitting);return t}doFinishBreak(t,e,i,n){if(this.pageFloatLayoutContext.isInvalidated()||this.pageBreakType||!e)return F(t);let r=V("doFinishBreak"),o=!1;if(!t){if(this.forceNonfitting&&!this.isFootnote)return Y.warn("Could not find any page breaks?!!"),this.skipTailEdges(e).then(s=>{s?(s=s.modify(),s.overflow=!1,this.finishBreak(s,o,!0).then(()=>{r.finish(s)})):r.finish(s)}),r.result();t=i,o=!0,this.computedBlockSize=n}return this.finishBreak(t,o,!0).then(()=>{r.finish(t)}),r.result()}isBreakable(t){for(let e=t;e;e=e.parent)if(Mt(e.viewNode))return!1;return t.after?!0:t.sourceNode.namespaceURI==="http://www.w3.org/2000/svg"?!1:!t.flexContainer}isZeroLength(t){let e=t.trim();return e===""||/^0+(?:\.0+)?(?:[a-z%]*)$/i.test(e)}hasNonZeroBlockStartInset(t){return this.vertical?!(this.isZeroLength(t.paddingRight)&&this.isZeroLength(t.borderRightWidth)):!(this.isZeroLength(t.paddingTop)&&this.isZeroLength(t.borderTopWidth))}hasNonZeroBlockEndInset(t){return this.vertical?!(this.isZeroLength(t.paddingLeft)&&this.isZeroLength(t.borderLeftWidth)):!(this.isZeroLength(t.paddingBottom)&&this.isZeroLength(t.borderBottomWidth))}suppressOpenAncestorBlockEndInset(t){if(!ks(this))return()=>{};let e=[];for(let i=t?.parent;i;i=i.parent){if(i.after||i.inline)continue;let n=i.viewNode;if(!n||n.nodeType!==1||Fn(n))continue;let r=this.clientLayout.getElementComputedStyle(n);if(r&&!this.hasNonZeroBlockEndInset(r))continue;let o=n.getAttribute("data-viv-box-break");Ct(n,"block-end"),e.push({element:n,original:o})}return()=>{for(let{element:i,original:n}of e)n===null?i.removeAttribute("data-viv-box-break"):i.setAttribute("data-viv-box-break",n)}}checkOverflowAndSaveEdge(t,e){if(!t)return!1;for(let s=t;s;s=s.parent)if(Mt(s.viewNode))return!1;if(Rn(t.viewNode))return!1;let i=this.suppressOpenAncestorBlockEndInset(t),n=Tn(t,this.clientLayout,0,this.vertical);i();let r=zn(t,this.collectElementsOffset()),o=this.isOverflown(n+(this.vertical?-1:1)*r.minimum);if(this.isOverflown(n+(this.vertical?-1:1)*r.current)&&!this.nodeContextOverflowingDueToRepetitiveElements)this.nodeContextOverflowingDueToRepetitiveElements=t;else if(e){let s=n+this.getTrailingMarginEdgeAdjustment(e),a=this.footnoteEdge-this.getBoxDir()*r.current;n=this.vertical?Math.min(n,Math.max(s,a)):Math.max(n,Math.min(s,a))}return this.updateMaxReachedAfterEdge(n),o}checkOverflowAndSaveEdgeAndBreakPosition(t,e,i,n){if(!t||Rn(t.viewNode))return!1;let r=this.checkOverflowAndSaveEdge(t,e);return(i||!r)&&this.saveEdgeBreakPosition(t,n,r),r}applyClearance(t){var e;if(!t.viewNode.parentNode||t.floatReference!==Ne.INLINE||t.floatSide)return!1;let i=(e=t.clearSide==="same"?t.floatSide:t.clearSide)!=null?e:"",n=/^(page|column|region)$/.test(i),r=this.getComputedMargin(t.viewNode),o=t.viewNode.ownerDocument.createElement("div");this.vertical?(o.style.bottom="0px",o.style.width="1px",o.style.marginRight=`${r.right}px`):(o.style.right="0px",o.style.height="1px",o.style.marginTop=`${r.top}px`);let s=()=>n?this.clientLayout.getElementClientRect(o):_t(this.clientLayout,o,this.vertical);t.viewNode.parentNode.insertBefore(o,t.viewNode);let a=s(),h=this.getBeforeEdge(a),l=this.getBoxDir(),c=/^(top|bottom|inside|outside|(block|inline)-(start|end))$/.test(i)?Ta(i,t.vertical,t.direction,this.layoutContext.page.side):i,d=c==="left"||c==="right"?t.direction==="rtl"==(c==="left")?"inline-end":"inline-start":c,p=this.pageFloatLayoutContext.getPageFloatClearEdge(d,this),f=p;switch(c){case"left":p=l*Math.max(p*l,this.leftFloatEdge*l);break;case"right":p=l*Math.max(p*l,this.rightFloatEdge*l);break;default:p=l*Math.max(p*l,Math.max(this.rightFloatEdge*l,this.leftFloatEdge*l))}let g=this.getFloatLayoutUnit(),m=this.leftFloatEdge*l>this.beforeEdge*l||this.rightFloatEdge*l>this.beforeEdge*l;if(g>0&&m){let b=p*l>f*l;p=l*(Math.ceil(p*l/g)+(b?1:0))*g}let v=this.getFloatLayoutTolerance(g);if(h*l+v>p*l)return t.viewNode.parentNode.removeChild(o),!1;{let b=Math.max(1,(p-h)*l);this.vertical?o.style.width=`${b}px`:o.style.height=`${b}px`,a=s();let x=this.getAfterEdge(a);if(!t.floatSide)if(this.vertical){let C=x-r.right-p;C>0==r.right>=0&&(C+=r.right),o.style.marginLeft=`${C}px`}else{let C=p-(x+r.top);C>0==r.top>=0&&(C+=r.top),o.style.marginBottom=`${C}px`}return t.clearSpacer=o,!0}}isBFC(t){return!!(wb(t)||rn.isInstanceOfRepetitiveElementsOwnerFormattingContext(t))}hasFixedPositionAncestor(t){for(let e=t;e;e=e.parent)if(Du(e.viewNode))return!0;return!1}skipEdges(t,e,i){var n;let r=t,o=r.after?(n=r.parent)==null?void 0:n.formattingContext:r.formattingContext;if(o&&!this.isBFC(o))return F(r);let s=V("skipEdges"),a=this,h=!i&&e&&r&&r.after,l=i,c=null,d=[],p=[],f=!1;function g(S){var N,L;if(!(!e||a.isNonFirstColumn||i||!Ou(l))){for(let I=S;I;I=I.parent)if(I.breakBefore==="column"&&(I.breakBefore=null),((N=I.viewNode)==null?void 0:N.nodeType)===1){let D=I.viewNode;((L=D.style)==null?void 0:L.breakBefore)==="column"&&(D.style.breakBefore="")}}}function m(S){var N,L;if(!(!e||!a.isNonFirstColumn||i||l!=="column")){for(let I=S;I;I=I.parent)if(I.breakBefore==="column"&&(I.breakBefore=null),((N=I.viewNode)==null?void 0:N.nodeType)===1){let D=I.viewNode;((L=D.style)==null?void 0:L.breakBefore)==="column"&&(D.style.breakBefore="")}l=null}}function v(S){var N,L;if(!(i||!Ou(l))){for(let I=S;I;I=I.parent)if(I.breakAfter==="column"&&(I.breakAfter=null),((N=I.viewNode)==null?void 0:N.nodeType)===1){let D=I.viewNode;((L=D.style)==null?void 0:L.breakAfter)==="column"&&(D.style.breakAfter="")}}}function b(S){l=nt(l,S)}function x(){return i?!0:Ye(l)?e?a.isNonFirstColumn&&l!=="column"&&l!=="region":!C()&&!y():!1}function C(){var S;if(!c||!r||r.floatSide)return!1;for(let N=c;N!=null&&N.parent;N=N.parent){if(N.parent.viewNode&&Mt(N.parent.viewNode))continue;let L=N.after?N.viewNode:(S=N.viewNode)==null?void 0:S.previousSibling;for(;L&&(Ee(L,N.parent.whitespace)||Mt(L));)L=L.previousSibling;if(L)return!1}return!0}function y(){var S,N;if(c||!(r!=null&&r.viewNode)||r.shadowContext||r.after||r.floatSide||!((S=r.parent)!=null&&S.viewNode)||Mt(r.parent.viewNode))return!1;let L=!1;for(let I=r;I!=null&&I.parent&&!I.after;I=I.parent){if(I!==r&&Mt(I.viewNode))return!1;let D=(N=I.viewNode)==null?void 0:N.previousSibling;for(;D&&(Ee(D,I.parent.whitespace)||Mt(D));)Mt(D)&&(L=!0),D=D.previousSibling;if(D)return!1}return L}let k=S=>{let N=d[0]||S;r=N,N.viewNode.remove(),this.pageBreakType=l};return s.loopWithFrame(S=>{for(var N;r;){let L=new ar().find(r.formattingContext);do{let D=Yi(r);if(!D)break;if(r.inline&&D.viewNode.nodeType!=1){if(Ee(D.viewNode,r.whitespace)||this.hasFixedPositionAncestor(r))break;if(!r.after){b(r.breakBefore),g(r),m(r),x()?k(D):this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!0,l)?(r=(this.stopAtOverflow&&c||r).modify(),r.overflow=!0):(!c&&!e&&d.length===0&&this.saveEdgeBreakPosition(r,l,!1),r=r.modify(),r.breakBefore=l),S.breakLoop();return}}if(!r.after){if(r.floatSide&&(this.breakAtTheEdgeBeforeFloat=ws(l)?l:null),L&&L.startNonInlineElementNode(r))break;let M=_w(r);if(M&&this.applyClearance(M)&&e&&this.breakPositions.length===0&&this.saveEdgeBreakPosition(r.copy(),l,!1),!r.inline&&!r.repeatOnBreak&&(c?zu(c):this.breakPositions[this.breakPositions.length-1]instanceof Sr||!e&&d.length===0)&&this.saveEdgeBreakPosition(r.copy(),l,!1),!this.isBFC(r.formattingContext)||rn.isInstanceOfRepetitiveElementsOwnerFormattingContext(r.formattingContext)||this.asFloatNodeContext(r)!==null||r.flexContainer||!r.nodeShadow&&!r.sourceNode.firstElementChild&&Ee(r.sourceNode.firstChild,r.whitespace)){d.push(D.copy()),b(r.breakBefore),g(r),m(r),x()?k(D):(this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!0,l)||!this.layoutConstraint.allowLayout(r))&&(r=(this.stopAtOverflow&&c||r).modify(),r.overflow=!0),S.breakLoop();return}}let J=Lt(D);if(!J)break;let te=J.viewNode,P=te.style;if(r.after){$p(te,this),r.floatSide&&(l=l??this.breakAtTheEdgeBeforeFloat,this.breakAtTheEdgeBeforeFloat=null);let M=r.sourceNode;if(M.localName==="svg"||M.localName==="math"||M.getAttribute("data-math-typeset")==="true"){f=!1,c=J.copy(),p.push(c),l=null,b(r.breakAfter),v(r),this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!this.stopAtOverflow,l);break}if(r.inline||L&&L.afterNonInlineElementNode(r,this.stopAtOverflow))break;if(f){if(Du(r.viewNode))break;if(x()){k(J),S.breakLoop();return}d=[],e=!1,h=!1,l=null}f=!1,Up(J.viewNode)||(c=J.copy(),p.push(c)),b(r.breakAfter),v(r),P&&!Mt(r.viewNode)&&this.hasNonZeroBlockEndInset(P)&&(p=c?[c]:[])}else{if(d.push(J.copy()),b(r.breakBefore),g(r),m(r),c&&Ye(l)&&Uw(c.viewNode,J.viewNode),(r.pageType!=((N=r.parent)==null?void 0:N.pageType)||!Ye(l))&&!this.layoutConstraint.allowLayout(r)&&(this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!this.stopAtOverflow,l),r=r.modify(),r.overflow=!0,this.stopAtOverflow)){S.breakLoop();return}let M=te.localName;if(tn[M]){x()?k(J):this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!0,l)&&(r=(this.stopAtOverflow&&c||r).modify(),r.overflow=!0),S.breakLoop();return}P&&this.hasNonZeroBlockStartInset(P)&&(h=!1,p=[]),f=!0}}while(!1);let I=this.nextInTree(r,h);if(I.isPending()){I.then(D=>{r=D,S.continueLoop()});return}else r=I.get()}this.checkOverflowAndSaveEdgeAndBreakPosition(c,p,!this.stopAtOverflow,l)?c&&this.stopAtOverflow&&(r=c.modify(),r.overflow=!0):Ye(l)&&(this.pageBreakType=l),S.breakLoop()}).then(()=>{c&&(this.lastAfterPosition=c.toNodePosition()),s.finish(r)}),s.result()}skipTailEdges(t){let e=t,i=e.copy(),n=V("skipEdges"),r=null,o=!1;return n.loopWithFrame(s=>{for(;e;){do{if(!e.viewNode)break;if(e.inline&&e.viewNode.nodeType!=1){if(Ee(e.viewNode,e.whitespace))break;if(!e.after){Ye(r)&&(this.pageBreakType=r),s.breakLoop();return}}if(!e.after&&(this.asFloatNodeContext(e)!==null||e.flexContainer)){r=nt(r,e.breakBefore),Ye(r)&&(this.pageBreakType=r),s.breakLoop();return}if(e.viewNode.nodeType!=1)break;let h=e.viewNode,l=h.style;if(e.after){if(o){if(Ye(r)){this.pageBreakType=r,s.breakLoop();return}r=null}o=!1,r=nt(r,e.breakAfter)}else{r=nt(r,e.breakBefore);let c=h.localName;if(tn[c]){Ye(r)&&(this.pageBreakType=r),s.breakLoop();return}if(l&&this.hasNonZeroBlockStartInset(l)){s.breakLoop();return}}o=!0}while(!1);let a=this.layoutContext.nextInTree(e);if(a.isPending()){a.then(h=>{e=h,s.continueLoop()});return}else e=a.get()}i=null,s.breakLoop()}).then(()=>{n.finish(i)}),n.result()}layoutFloatOrFootnote(t){if(Li(t.floatReference)||t.floatSide==="footnote"){let e=this.pageFloatLayoutContext.generatingNodePosition;if(e&&t.sourceNode===e.steps[0].node){let i=t.modify();return i.floatSide=null,i.floatReference=Ne.INLINE,i.clearSide=null,this.isBreakable(i)?this.layoutBreakableBlock(i):this.layoutUnbreakable(i)}return this.layoutPageFloat(t)}else return this.layoutFloat(t)}layoutNext(t,e,i){let n=V("layoutNext");return this.skipEdges(t,e,i||null).then(r=>{if(t=r,!t||this.pageBreakType||this.stopByOverflow(t))n.finish(t);else{let o=t.formattingContext;new ar().find(o).layout(t,this,e).thenFinish(n)}}),n.result()}clearOverflownViewNodes(t,e){if(t)for(let i=t.parent;t;t=i,i=i?i.parent:null){let n=(i||t).formattingContext;new ar().find(n).clearOverflownViewNodes(this,i,t,e),e=!1}}measure(){R(this.element,"width",`${this.width}px`),R(this.element,"height",`${this.height}px`);let t=this.element.ownerDocument.createElement("div");t.style.position="absolute",t.style.top=`${this.paddingTop}px`,t.style.right=`${this.paddingRight}px`,t.style.bottom=`${this.paddingBottom}px`,t.style.left=`${this.paddingLeft}px`,this.element.appendChild(t);let e=this.clientLayout.getElementClientRect(t);this.element.removeChild(t);let i=this.originX+this.left+this.getInsetLeft(),n=this.originY+this.top+this.getInsetTop(),r=new Dt(i,n,i+this.width,n+this.height);return this.startEdge=e?this.vertical?this.rtl?e.bottom:e.top:this.rtl?e.right:e.left:0,this.endEdge=e?this.vertical?this.rtl?e.top:e.bottom:this.rtl?e.left:e.right:0,this.beforeEdge=e?this.vertical?e.right:e.top:0,this.afterEdge=e?this.vertical?e.left:e.bottom:0,this.leftFloatEdge=this.beforeEdge,this.rightFloatEdge=this.beforeEdge,this.bottommostFloatTop=this.beforeEdge,this.footnoteEdge=this.afterEdge,Oy(r,[this.getInnerShape()],this.getExclusions(),8,this.snapHeight,this.vertical)}remeasure(){this.chunkPositions=[],this.bands=this.measure(),this.createFloats(),this.computedBlockSize=0,this.overflown=!1,this.pageBreakType=null,this.lastAfterPosition=null,this.lastLineStride=0}saveEdgeBreakPosition(t,e,i){let n=t.copy(),r=new ar().find(t.formattingContext),o=this.calculateClonedPaddingBorder(n),s=r.createEdgeBreakPosition(n,e,i,this.computedBlockSize+o);this.breakPositions.push(s)}saveBoxBreakPosition(t){let e=t[0].breakPenalty;if(e){let n=t[0];for(;n.parent&&n.inline;)n=n.parent;e=n.breakPenalty}let i=new Sr(t,e);this.breakPositions.push(i)}updateMaxReachedAfterEdge(t){if(!isNaN(t)){let e=this.getBoxDir()*(t-this.beforeEdge);this.computedBlockSize=Math.max(e,this.computedBlockSize)}}layout(t,e,i){if(this.chunkPositions.push(t),t.primary.after&&(this.lastAfterPosition=t.primary),this.stopAtOverflow&&this.overflown)return F(t);if(this.isFullWithPageFloats())return t.primary.after&&t.primary.steps.length===1?F(null):F(t);ch(this);let n=V("layout");return this.openAllViews(t.primary).then(r=>{let o=null;if(r.viewNode)o=r.copy();else{let a=h=>{h.nodeContext.viewNode&&(o=h.nodeContext,this.layoutContext.removeEventListener("nextInTree",a))};this.layoutContext.addEventListener("nextInTree",a)}let s=new tS(e,i);s.layout(r,this).then(a=>{this.doFinishBreak(a,s.context.overflownNodeContext,o,s.initialComputedBlockSize).then(h=>{let l;this.pseudoParent?l=F(!0):l=this.doFinishBreakOfFragmentLayoutConstraints(h),l.then(()=>{if(ks(this)&&(jw(this),na(this)),this.element.hasAttribute("data-vivliostyle-column-block-size-adjusted")&&(this.vertical?(R(this.element,"width",`${this.width}px`),R(this.element,"left",`${this.left}px`)):R(this.element,"height",`${this.height}px`),this.element.removeAttribute("data-vivliostyle-column-block-size-adjusted")),this.pageFloatLayoutContext.isInvalidated()){n.finish(null);return}if(!h)n.finish(null);else{this.overflown=!0;let c=new zi(h.toNodePosition());n.finish(c)}})})})}),n.result()}isFullWithPageFloats(){return this.pageFloatLayoutContext.isColumnFullWithPageFloats(this)}getMaxBlockSizeOfPageFloats(){return this.pageFloatLayoutContext.getMaxBlockSizeOfPageFloats()}doFinishBreakOfFragmentLayoutConstraints(t){let e=V("doFinishBreakOfFragmentLayoutConstraints"),i=this.fragmentLayoutConstraints.slice();i.sort((r,o)=>r.getPriorityOfFinishBreak()-o.getPriorityOfFinishBreak());let n=0;return e.loop(()=>n<i.length?i[n++].finishBreak(t,this).thenReturn(!0):F(!1)).then(()=>{e.finish(!0)}),e.result()}doLayout(t,e,i){let n=V("doLayout"),r=null;return this.breakPositions=[],this.nodeContextOverflowingDueToRepetitiveElements=null,n.loopWithFrame(o=>{for(;t;){let s=!0;if(this.layoutNext(t,e,i||null).then(a=>{if(e=!1,i=null,this.nodeContextOverflowingDueToRepetitiveElements&&this.stopAtOverflow?(this.pageBreakType=null,t=this.nodeContextOverflowingDueToRepetitiveElements,t.overflow=!0):t=a,this.pageFloatLayoutContext.isInvalidated())o.breakLoop();else if(this.pageBreakType)o.breakLoop();else if(t&&this.stopByOverflow(t)){r=t;let h=this.findAcceptableBreakPosition();t=h&&h.nodeContext,h&&h.breakPosition.breakPositionChosen(this),o.breakLoop()}else s?s=!1:o.continueLoop()}),s){s=!1;return}}this.computedBlockSize+=this.getOffsetByRepetitiveElements(),o.breakLoop()}).then(()=>{n.finish({nodeContext:t,overflownNodeContext:r})}),n.result()}saveDistanceToBlockEndFloats(){let t=this.pageFloatLayoutContext.getBlockStartEdgeOfBlockEndFloats();t>0&&isFinite(t)&&(this.blockDistanceToBlockEndFloats=this.getBoxDir()*(t-this.beforeEdge-this.computedBlockSize))}collectElementsOffset(){let t=[];for(let e=this;e;e=e.pseudoParent)e.fragmentLayoutConstraints.forEach(i=>{if(rn.isInstanceOfRepetitiveElementsOwnerLayoutConstraint(i)){let n=i.getRepetitiveElements();t.push(n)}if(bs.isInstanceOfAfterIfContinuesLayoutConstraint(i)){let n=i.getRepetitiveElements();t.push(n)}_i.isInstanceOfTableRowLayoutConstraint(i)&&i.getElementsOffsetsForTableCell(this).forEach(n=>{t.push(n)})});return t}},zh=class{constructor(t,e,i){u(this,"startNodeContexts",[]),u(this,"column"),u(this,"flowRootSourceNode"),this.flowRootSourceNode=i.sourceNode,this.column=Object.create(t),this.column.element=e,this.column.layoutContext=t.layoutContext.clone(),this.column.stopAtOverflow=!1,this.column.flowRootFormattingContext=i.formattingContext,this.column.pseudoParent=t;let n=this.column.calculateClonedPaddingBorder(i);this.column.footnoteEdge=this.column.footnoteEdge-n;let r=this;this.column.openAllViews=function(o){return Us.prototype.openAllViews.call(this,o).thenAsync(s=>(r.startNodeContexts.push(s.copy()),F(s)))}}layout(t,e){return this.column.layout(t,e)}findAcceptableBreakPosition(){let t=this.column.findAcceptableBreakPosition(),e=this.startNodeContexts[0].copy(),i=new po(e,null,e.overflow,0);return i.findAcceptableBreak(this.column,0),t??{breakPosition:i,nodeContext:e}}finishBreak(t,e,i){return this.column.finishBreak(t,e,i)}doFinishBreakOfFragmentLayoutConstraints(t){this.column.doFinishBreakOfFragmentLayoutConstraints(t)}isStartNodeContext(t){let e=this.startNodeContexts[0];return e.viewNode===t.viewNode&&e.after===t.after&&e.offsetInNode===t.offsetInNode}isLastAfterNodeContext(t){return Di(t.toNodePosition(),this.column.lastAfterPosition)||this.isEffectivelyLastAfterNodeContext(t)}isEffectivelyLastAfterNodeContext(t){var e;let i=this.flowRootSourceNode,n=t.sourceNode;if(!i||!n||!t.after||i!==n&&!((e=i.contains)!=null&&e.call(i,n)))return!1;if(n.nodeType===Node.TEXT_NODE){let r=n;if(t.offsetInNode<r.length){let o=r.data.slice(t.offsetInNode);if(!Fp(o,t.whitespace))return!1}}for(let r=n;r&&r!==i;r=r.parentNode)for(let o=r.nextSibling;o;o=o.nextSibling)if(!Ee(o,t.whitespace))return!1;return!0}getColumnElement(){return this.column.element}getColumn(){return this.column}},Ws=class{breakTextNode(t,e,i,n,r,o){if(e.after)e.offsetInNode=t.length;else{let s=i-e.boxOffset,a=t.data;a.charCodeAt(s)==173?s=this.breakAfterSoftHyphen(t,a,s,e):s=this.breakAfterOtherCharacter(t,a,s,e),s>0&&(e=this.updateNodeContext(e,s,t))}return e}breakAfterSoftHyphen(t,e,i,n){let r=/[\u0620\u0626\u0628\u062A-\u062E\u0633-\u0647\u0649\u064A\u066E\u066F\u0678-\u0687\u069A-\u06BF\u06C1\u06C2\u06CC\u06CE\u06D0\u06D1\u06FA-\u06FC\u06FF\u0712-\u0714\u071A-\u071D\u071F-\u0727\u0729\u072B\u072D\u072E\u074E-\u0758\u075C-\u076A\u076D-\u0770\u0772\u0775-\u0777\u077A-\u077F\u07CA-\u07EA\u07FA\u0841-\u0845\u0848\u084A-\u0853\u0855\u0860\u0862-\u0865\u0868\u0883-\u0886\u0889-\u088D\u08A0-\u08A9\u08AF\u08B0\u08B3-\u08B8\u08BA-\u08C8\u1807\u180A\u1820-\u1878\u1887-\u18A8\u18AA\u200D\uA840-\uA871\u{10AC0}-\u{10AC4}\u{10AD3}-\u{10AD6}\u{10AD8}-\u{10ADC}\u{10ADE}-\u{10AE0}\u{10AEB}-\u{10AEE}\u{10B80}\u{10B82}\u{10B86}-\u{10B88}\u{10B8A}\u{10B8B}\u{10B8D}\u{10B90}\u{10BAD}\u{10BAE}\u{10D01}-\u{10D21}\u{10D23}\u{10EC3}\u{10EC4}\u{10F30}-\u{10F32}\u{10F34}-\u{10F44}\u{10F51}-\u{10F53}\u{10F70}-\u{10F73}\u{10F76}-\u{10F81}\u{10FB0}\u{10FB2}\u{10FB3}\u{10FB8}\u{10FBB}\u{10FBC}\u{10FBE}\u{10FBF}\u{10FC1}\u{10FC4}\u{10FCA}\u{1E900}-\u{1E943}]\p{Mn}*$/u.test(e.slice(0,i))?"\u200D":"";if(t.replaceData(i,e.length-i,n.breakWord?"":r+vc(n)),r){let o=n.preprocessedTextContent[0][1];n.preprocessedTextContent[0][1]=o.slice(0,i+1)+r+o.slice(i+1)}return i+1}breakAfterOtherCharacter(t,e,i,n){let r=e.charAt(i);i++;let o=e.charAt(i);return t.replaceData(i,e.length-i,!n.breakWord&&ou(r)&&ou(o)?vc(n):""),i}updateNodeContext(t,e,i){return t=t.modify(),t.offsetInNode+=e,t.breakBefore=null,t}};u(Ws,"instance");Ws.instance=new Ws;function vc(t){return t.hyphenateCharacter||t.parent&&t.parent.hyphenateCharacter||"-"}var tS=class extends bh{constructor(t,e){super(),u(this,"leadingEdge",t),u(this,"breakAfter"),u(this,"initialPageBreakType",null),u(this,"initialComputedBlockSize",0),u(this,"initialOverflown",!1),u(this,"initialLastLineStride",0),u(this,"context",{overflownNodeContext:null}),this.breakAfter=e||null}resolveLayoutMode(t){return new iS(this.leadingEdge,this.breakAfter,this.context)}prepareLayout(t,e){e.fragmentLayoutConstraints=[],e.pseudoParent||Cb()}clearNodes(t){super.clearNodes(t);let e=t;for(;e;){let i=e.viewNode;i&&Hp(i.parentNode,i),e=e.parent}}saveState(t,e){super.saveState(t,e),this.initialPageBreakType=e.pageBreakType,this.initialComputedBlockSize=e.computedBlockSize,this.initialOverflown=e.overflown,this.initialLastLineStride=e.lastLineStride}restoreState(t,e){super.restoreState(t,e),e.pageBreakType=this.initialPageBreakType,e.computedBlockSize=this.initialComputedBlockSize,e.overflown=this.initialOverflown,e.lastLineStride=this.initialLastLineStride}},iS=class{constructor(t,e,i){u(this,"leadingEdge",t),u(this,"breakAfter",e),u(this,"context",i)}doLayout(t,e){let i=V("DefaultLayoutMode.doLayout");return Jx(t,e).then(()=>{e.doLayout(t,this.leadingEdge,this.breakAfter).then(n=>{this.context.overflownNodeContext=n.overflownNodeContext,i.finish(n.nodeContext)})}),i.result()}accept(t,e){return e.pageFloatLayoutContext.isInvalidated()||e.pageBreakType||e.fragmentLayoutConstraints.length<=0?!0:e.fragmentLayoutConstraints.every(i=>i.allowLayout(t,this.context.overflownNodeContext,e))}postLayout(t,e,i,n){return n||(n=!i.fragmentLayoutConstraints.some(r=>r.nextCandidate(t))),i.fragmentLayoutConstraints.forEach(r=>{r.postLayout(n,t,e,i)}),n}},nS=class extends Us{constructor(t,e,i,n,r,o,s,a,h,l,c){super(e,i,n,r,o,a,h,l,c),u(this,"floatSide",t),u(this,"parentContainer",s),u(this,"rootViewNodes",[]),u(this,"floatMargins",[]),u(this,"adjustContentRelativeSize",!0),u(this,"parentElement"),this.parentElement=s.element}openAllViews(t){return super.openAllViews(t).thenAsync(e=>(e&&this.fixFloatSizeAndPosition(e),F(e)))}convertPercentageSizesToPx(t){let e=this.parentContainer.getPaddingRect(),i=e.x2-e.x1,n=e.y2-e.y1;function r(o,s){o.forEach(a=>{let h=Ni(t,a);if(h&&h.charAt(h.length-1)==="%"){let l=parseFloat(h),c=s*l/100;R(t,a,`${c}px`)}})}r(["width","max-width","min-width"],i),r(["height","max-height","min-height"],n),r(["margin-top","margin-right","margin-bottom","margin-left","padding-top","padding-right","padding-bottom","padding-left"],this.vertical?n:i),["margin-top","margin-right","margin-bottom","margin-left"].forEach(o=>{Ni(t,o)==="auto"&&R(t,o,"0")})}fixFloatSizeAndPosition(t){for(;t.parent;)t=t.parent;t.viewNode.nodeType;let e=t.viewNode;if(this.rootViewNodes.push(e),this.adjustContentRelativeSize&&this.convertPercentageSizesToPx(e),this.floatMargins.push(this.getComputedMargin(e)),this.adjustContentRelativeSize){let i=this.floatSide;if(this.parentContainer.vertical){if(i==="block-end"||i==="left"){let n=Ni(e,"height");n!==""&&n!=="auto"&&R(e,"margin-top","auto")}}else if(i==="block-end"||i==="bottom"){let n=Ni(e,"width");n!==""&&n!=="auto"&&R(e,"margin-left","auto")}}}getRootViewNodeCount(){return this.rootViewNodes.length}hasNonPseudoTextContentAfter(t){let e=i=>{var n;return i.nodeType===Node.TEXT_NODE?!!((n=i.textContent)!=null&&n.trim()):i.nodeType!==Node.ELEMENT_NODE||Qt(i)?!1:Array.from(i.childNodes).some(e)};return this.rootViewNodes.slice(t).some(e)}appendContentFrom(t){t.rootViewNodes.forEach(e=>{this.element.appendChild(e)}),this.rootViewNodes.push(...t.rootViewNodes),this.floatMargins.push(...t.floatMargins),t.rootViewNodes.splice(0),t.floatMargins.splice(0),t.element.parentNode&&t.element.parentNode.removeChild(t.element),this.applyCompactFootnoteDisplay(),this.updateComputedBlockSizeForFootnoteArea(!0)}removeContentAfter(t){let e=this.rootViewNodes.splice(t);this.floatMargins.splice(t),e.forEach(i=>{i.parentNode&&i.parentNode.removeChild(i)}),this.applyCompactFootnoteDisplay(),this.updateComputedBlockSizeForFootnoteArea(!0)}getContentInlineSize(){return Math.max.apply(null,this.rootViewNodes.map((t,e)=>{let i=_t(this.clientLayout,t,this.vertical),n=this.floatMargins[e];return this.vertical?n.top+i.height+n.bottom:n.left+i.width+n.right}))}getContentBlockMarginAfter(){return this.rootViewNodes.length===0?0:Math.max.apply(null,this.rootViewNodes.map((t,e)=>{let i=this.floatMargins[e];return this.vertical?i.left:i.bottom}))}applyCompactFootnoteDisplay(){let t=this.layoutContext,e=t?.styler,i=t?.xmldoc,n=this.rootViewNodes.filter(h=>{var l,c,d,p;let f=(l=h.ownerDocument.defaultView)==null?void 0:l.getComputedStyle(h);if((f?.getPropertyValue("--viv-footnote-display").trim()||"")==="compact")return!(f?.display==="list-item"&&f.getPropertyValue("list-style-position").trim()==="outside");let g=h.getAttribute(jt);if(!g||!e||!i)return!1;let m=i.getNodeByOffset(parseInt(g,10));if(!m||m.nodeType!==Node.ELEMENT_NODE)return!1;let v=e.getStyle(m,!1),b=(d=(c=ge(v,"footnote-display"))==null?void 0:c.value)==null?void 0:d.toString(),x=!!((p=ge(v,"--viv-marker-content"))!=null&&p.value);return b==="compact"&&!x});if(n.length===0){this.updateInlineFootnoteSeparators(),this.updateComputedBlockSizeForFootnoteArea(!0);return}let r=this.element.getBoundingClientRect(),o=this.vertical?r.height:r.width;n.forEach(h=>{R(h,"display","inline"),h.style.setProperty("--viv-footnote-white-space","nowrap")});let s=1.5/(this.clientLayout.pixelRatio||1),a=h=>{let l=h.cloneNode(!0);R(l,"display","inline-block"),R(l,"position","absolute"),R(l,"visibility","hidden"),R(l,"white-space","nowrap"),R(l,"max-width","none"),R(l,"left","0"),R(l,"top","0"),this.element.appendChild(l);let c=l.getBoundingClientRect();return this.element.removeChild(l),this.vertical?c.height:c.width};n.forEach(h=>{a(h)>o+s&&(R(h,"display","block"),h.style.removeProperty("--viv-footnote-white-space"))}),this.updateInlineFootnoteSeparators(),this.updateComputedBlockSizeForFootnoteArea(!0)}updateComputedBlockSizeForFootnoteArea(t=!1){if(this.rootViewNodes.length===0){this.computedBlockSize=0;return}let e=this.getBoxDir(),i=this.beforeEdge;if(t){let n=_t(this.clientLayout,this.element,this.vertical),r=this.vertical?this.borderRight+this.paddingRight:this.borderTop+this.paddingTop;i=this.getBeforeEdge(n)+e*r}this.computedBlockSize=Math.max(0,...this.rootViewNodes.map(n=>{let r=_t(this.clientLayout,n,this.vertical),o=this.getComputedMargin(n),s=this.vertical?o.left:o.bottom;return e*(this.getAfterEdge(r)-i)+Math.max(0,s)}))}getFootnoteAfterPseudo(t){return Array.from(t.children).find(e=>Qt(e)==="after")}hasAuthorFootnoteAfterPseudo(t){let e=this.getFootnoteAfterPseudo(t);if(e&&!e.hasAttribute("data-vivliostyle-default-footnote-separator"))return!0;let i=Array.from(t.children).find(r=>r instanceof Element&&Et(r)),n=i?this.getFootnoteAfterPseudo(i):null;return!!n&&!n.hasAttribute("data-vivliostyle-default-footnote-separator")}createDefaultFootnoteAfterPseudo(t){let e=t.ownerDocument.createElement("span");Mr(e,"after"),e.setAttribute("data-vivliostyle-default-footnote-separator","1"),e.style.whiteSpace="normal",e.textContent=" ",t.appendChild(e)}getFootnoteBreakOpportunity(t){let e=t.nextElementSibling;return e!=null&&e.hasAttribute("data-vivliostyle-footnote-break")?e:null}createFootnoteBreakOpportunity(t){let e=t.ownerDocument.createElement("wbr");e.setAttribute("data-vivliostyle-footnote-break","1"),t.insertAdjacentElement("afterend",e)}updateInlineFootnoteSeparators(){this.rootViewNodes.forEach((t,e)=>{var i,n;let r=t,o=(i=r.ownerDocument.defaultView)==null?void 0:i.getComputedStyle(r).display,s=this.rootViewNodes[e+1],a=(n=s?.ownerDocument.defaultView)==null?void 0:n.getComputedStyle(s).display,h=this.getFootnoteAfterPseudo(r),l=this.hasAuthorFootnoteAfterPseudo(r),c=!!(h!=null&&h.hasAttribute("data-vivliostyle-default-footnote-separator")),d=this.getFootnoteBreakOpportunity(r);if(o==="inline"&&a==="inline"){let p=!h&&!l;p&&this.createDefaultFootnoteAfterPseudo(r),!p&&!d?this.createFootnoteBreakOpportunity(r):p&&d?.remove()}else c&&h.remove(),d?.remove()})}},cn=class{constructor(t,e){u(this,"parent",t),u(this,"rootSourceNode",e),u(this,"formattingContextType","RepetitiveElementsOwner"),u(this,"isRoot",!1),u(this,"repetitiveElements",null)}getName(){return"Repetitive elements owner formatting context (RepetitiveElementsOwnerFormattingContext)"}isFirstTime(t,e){return e}getParent(){return this.parent}getRepetitiveElements(){return this.repetitiveElements}getRootViewNode(t){let e=this.getRootNodeContext(t);return e?e.viewNode:null}getRootNodeContext(t){let e=t;do if(!e.belongsTo(this)&&e.sourceNode===this.rootSourceNode)return e;while(e=e.parent);return null}initializeRepetitiveElements(t){this.repetitiveElements||fl.some(e=>e.root===this.rootSourceNode?(this.repetitiveElements=e.elements,!0):!1)||(this.repetitiveElements=new rS(t,this.rootSourceNode),fl.push({root:this.rootSourceNode,elements:this.repetitiveElements}))}saveState(){}restoreState(t){}},rS=class{constructor(t,e){u(this,"vertical",t),u(this,"ownerSourceNode",e),u(this,"headerSourceNode",null),u(this,"footerSourceNode",null),u(this,"headerViewNode",null),u(this,"footerViewNode",null),u(this,"headerNodePosition",null),u(this,"footerNodePosition",null),u(this,"headerHeight",0),u(this,"footerHeight",0),u(this,"isSkipHeader",!1),u(this,"isSkipFooter",!1),u(this,"enableSkippingFooter",!0),u(this,"enableSkippingHeader",!0),u(this,"doneInitialLayout",!1),u(this,"firstContentSourceNode",null),u(this,"lastContentSourceNode",null),u(this,"affectedNodeCache",[]),u(this,"afterLastContentNodeCache",[]),u(this,"allowInsert",!1),u(this,"allowInsertRepeatitiveElements",!1)}setHeaderNodeContext(t){this.headerNodePosition||(this.headerNodePosition=xs(t,0),this.headerSourceNode=t.sourceNode,this.headerViewNode=t.viewNode)}setFooterNodeContext(t){this.footerNodePosition||(this.footerNodePosition=xs(t,0),this.footerSourceNode=t.sourceNode,this.footerViewNode=t.viewNode)}updateHeight(t){this.headerViewNode&&(this.headerHeight=ul(this.headerViewNode,t,this.vertical),this.headerViewNode=null),this.footerViewNode&&(this.footerHeight=ul(this.footerViewNode,t,this.vertical),this.footerViewNode=null)}prepareLayoutFragment(){this.isSkipHeader=this.isSkipFooter=!1,this.enableSkippingFooter=!0,this.enableSkippingHeader=!0}appendHeaderToFragment(t,e,i){return!this.headerNodePosition||this.isSkipHeader?F(!0):this.appendElementToFragment(this.headerNodePosition,t,e,i)}appendFooterToFragment(t,e,i){return!this.footerNodePosition||this.isSkipFooter?F(!0):this.appendElementToFragment(this.footerNodePosition,t,e,i)}appendElementToFragment(t,e,i,n){let r=e.viewNode,o=r.ownerDocument.createElement("div");r.appendChild(o);let s=new zh(n,o,e),a=s.getColumn().pageBreakType;return s.getColumn().pageBreakType=null,this.allowInsertRepeatitiveElements=!0,s.layout(new zi(t),!0).thenAsync(()=>(this.allowInsertRepeatitiveElements=!1,r.removeChild(o),this.moveChildren(o,r,i),s.getColumn().pageBreakType=a,F(!0)))}moveChildren(t,e,i){if(e)for(;t.firstChild;){let n=t.firstChild;t.removeChild(n),n.setAttribute(Un,"1"),i?e.insertBefore(n,i):e.appendChild(n)}}calculateOffset(t){let e=0;return t&&!this.affectTo(t)||((!this.isSkipFooter||t&&this.isAfterLastContent(t))&&(e+=this.footerHeight),this.isSkipHeader||(e+=this.headerHeight)),e}calculateMinimumOffset(t){let e=0;return t&&!this.affectTo(t)||(!this.enableSkippingFooter&&t&&this.isAfterLastContent(t)&&(e+=this.footerHeight),this.enableSkippingHeader||(e+=this.headerHeight)),e}isAfterLastContent(t){return this.findResultFromCache(t,this.afterLastContentNodeCache,e=>this.isAfterNodeContextOf(this.lastContentSourceNode,t,!1))}affectTo(t){return this.findResultFromCache(t,this.affectedNodeCache,e=>this.isAfterNodeContextOf(this.ownerSourceNode,t,!0))}findResultFromCache(t,e,i){let n=e.filter(r=>r.nodeContext.sourceNode===t.sourceNode&&r.nodeContext.after===t.after);if(n.length>0)return n[0].result;{let r=i(t);return e.push({nodeContext:t,result:r}),r}}isAfterNodeContextOf(t,e,i){let n=[];for(let r=t;r;r=r.parentNode){if(e.sourceNode===r)return e.after;n.push(r)}for(let r=e.sourceNode;r;r=r.parentNode){let o=n.indexOf(r);if(o>=0)return i?o===0:!1;for(let s=r;s;s=s.previousElementSibling)if(n.includes(s))return!0}return e.after}isFirstContentNode(t){return t&&this.firstContentSourceNode===t.sourceNode}isEnableToUpdateState(){return!!(!this.isSkipFooter&&this.enableSkippingFooter&&this.footerNodePosition||!this.isSkipHeader&&this.enableSkippingHeader&&this.headerNodePosition)}updateState(){!this.isSkipFooter&&this.enableSkippingFooter&&this.footerNodePosition?this.isSkipFooter=!0:!this.isSkipHeader&&this.enableSkippingHeader&&this.headerNodePosition&&(this.isSkipHeader=!0)}preventSkippingHeader(){this.isSkipHeader=!1,this.enableSkippingHeader=!1}preventSkippingFooter(){this.isSkipFooter=!1,this.enableSkippingFooter=!1}isHeaderRegistered(){return!!this.headerNodePosition}isFooterRegistered(){return!!this.footerNodePosition}isHeaderSourceNode(t){return this.headerSourceNode===t}isFooterSourceNode(t){return this.footerSourceNode===t}},Cg=class{constructor(t){u(this,"formattingContext",t)}accept(t,e){return!!t}postLayout(t,e,i,n){let r=this.formattingContext.getRepetitiveElements();return r&&(r.doneInitialLayout||(r.updateHeight(i),r.doneInitialLayout=!0)),n}},kg=class{constructor(t){u(this,"formattingContext",t)}accept(t,e){return!0}postLayout(t,e,i,n){return n}},oS=class extends Cg{constructor(t,e){super(t),u(this,"processor",e)}doLayout(t,e){return this.processor.doInitialLayout(t,e)}accept(t,e){return!1}},sS=class extends kg{constructor(t,e){super(t),u(this,"processor",e)}doLayout(t,e){return!t.belongsTo(this.formattingContext)&&!t.after&&e.fragmentLayoutConstraints.unshift(new Vh(t)),this.processor.doLayout(t,e)}},Vh=class Pg{constructor(e){u(this,"flagmentLayoutConstraintType","RepetitiveElementsOwner"),u(this,"nodeContext");let i=pi(e.formattingContext);this.nodeContext=i.getRootNodeContext(e)}allowLayout(e,i,n){let r=this.getRepetitiveElements();return!r||Rn(this.nodeContext.viewNode)||!r.isEnableToUpdateState()?!0:i&&!e||e&&e.overflow?!Ng(e,i,r):!0}nextCandidate(e){let i=this.getRepetitiveElements();return i&&i.isEnableToUpdateState()?(i.updateState(),!0):!1}postLayout(e,i,n,r){let o=this.getRepetitiveElements();o&&e&&r.stopAtOverflow&&(i==null||o.isAfterLastContent(i))&&o.preventSkippingFooter()}finishBreak(e,i){let n=pi(this.nodeContext.formattingContext),r=this.getRepetitiveElements();if(!r)return F(!0);let o=this.nodeContext;return cS(n,o,i).thenAsync(()=>dS(n,o,i).thenAsync(()=>(r.prepareLayoutFragment(),F(!0))))}getRepetitiveElements(){return pi(this.nodeContext.formattingContext).getRepetitiveElements()}equalsTo(e){return e instanceof Pg?pi(this.nodeContext.formattingContext)===pi(e.nodeContext.formattingContext):!1}getPriorityOfFinishBreak(){return 10}},aS=class extends bh{constructor(t,e){super(),u(this,"formattingContext",t),u(this,"processor",e)}resolveLayoutMode(t){let e=this.formattingContext.getRepetitiveElements();return!t.belongsTo(this.formattingContext)&&!e.doneInitialLayout?new oS(this.formattingContext,this.processor):(!t.belongsTo(this.formattingContext)&&!t.after&&e&&e.preventSkippingHeader(),new sS(this.formattingContext,this.processor))}},lS=class extends Ir{constructor(t,e){super(),u(this,"formattingContext",t),u(this,"column",e)}startNonInlineElementNode(t){let e=this.formattingContext,i=t.nodeContext,n=e.getRepetitiveElements();if(i.parent&&e.rootSourceNode===i.parent.sourceNode){switch(i.repeatOnBreak){case"header":if(n.isHeaderRegistered())i.repeatOnBreak="none";else return n.setHeaderNodeContext(i),F(!0);break;case"footer":if(n.isFooterRegistered())i.repeatOnBreak="none";else return n.setFooterNodeContext(i),F(!0);break}n.firstContentSourceNode||(n.firstContentSourceNode=i.sourceNode)}return Ir.prototype.startNonInlineElementNode.call(this,t)}afterNonInlineElementNode(t){let e=this.formattingContext,i=t.nodeContext;return i.sourceNode===e.rootSourceNode&&(e.getRepetitiveElements().lastContentSourceNode=t.lastAfterNodeContext&&t.lastAfterNodeContext.sourceNode,t.break=!0),i.repeatOnBreak==="header"||i.repeatOnBreak==="footer"?F(!0):Ir.prototype.afterNonInlineElementNode.call(this,t)}},hS=class extends On{layout(t,e,i){let n=e.asFloatNodeContext(t);if(n)return e.layoutFloatOrFootnote(n);let r=pi(t.formattingContext);return r.getRootViewNode(t)?(i&&Eg(t.parent,e),t.belongsTo(r)?On.prototype.layout.call(this,t,e,i):new aS(r,this).layout(t,e)):e.buildDeepElementView(t)}startNonInlineElementNode(t){let e=pS(t).getRepetitiveElements();return e&&!e.allowInsertRepeatitiveElements&&(e.isHeaderSourceNode(t.sourceNode)||e.isFooterSourceNode(t.sourceNode))&&Lt(t).viewNode.remove(),!1}doInitialLayout(t,e){let i=pi(t.formattingContext),n=V("BlockLayoutProcessor.doInitialLayout");return this.layoutEntireBlock(t,e).thenFinish(n),n.result()}layoutEntireBlock(t,e){let i=pi(t.formattingContext),n=new lS(i,e);return new pl(n,e.layoutContext).iterate(t)}doLayout(t,e){let i=pi(t.formattingContext),n=V("doLayout"),r=e.layoutContext.nextInTree(t,!1);return Sg(r,e).then(o=>{let s=o;n.loopWithFrame(a=>{for(;s;){let h=!0;if(e.layoutNext(s,!1).then(l=>{s=l,e.pageFloatLayoutContext.isInvalidated()||e.pageBreakType||s&&e.stopByOverflow(s)||s&&s.after&&s.sourceNode==i.rootSourceNode?a.breakLoop():h?h=!1:a.continueLoop()}),h){h=!1;return}}a.breakLoop()}).then(()=>{n.finish(s)})}),n.result()}finishBreak(t,e,i,n){return On.prototype.finishBreak.call(this,t,e,i,n)}clearOverflownViewNodes(t,e,i,n){On.prototype.clearOverflownViewNodes(t,e,i,n)}};function uS(t,e){for(let i=t;i;i=i.parent){let n=i.formattingContext;n instanceof cn&&!i.belongsTo(n)&&e(n,i)}}function Eg(t,e){t&&uS(t.after?t.parent:t,(i,n)=>{_i.isInstanceOfTableFormattingContext(i)||e.fragmentLayoutConstraints.push(new Vh(n))})}function cS(t,e,i){let n=t.getRepetitiveElements();if(n){let r=t.getRootNodeContext(e),o=r&&Lt(r);if(o){let s=o.viewNode.firstChild;return n.appendHeaderToFragment(o,s,i)}}return F(!0)}function dS(t,e,i){let n=t.getRepetitiveElements();if(n&&!n.isSkipFooter){let r=t.getRootNodeContext(e),o=r&&Lt(r);if(o)return n.appendFooterToFragment(o,null,i)}return F(!0)}function Ng(t,e,i){let n=i.ownerSourceNode,r=t||e;return!r||n.contains(r.sourceNode)}function pS(t){let e=t.formattingContext;return e instanceof cn?e:null}function pi(t){return t instanceof cn,t}var fS=new hS;Ft("RESOLVE_LAYOUT_PROCESSOR",t=>t instanceof cn&&!_i.isInstanceOfTableFormattingContext(t)?fS:null);var Tg=class{constructor(t,e){u(this,"rowIndex",t),u(this,"sourceNode",e),u(this,"cells",[]),u(this,"breakBefore",null),u(this,"breakAfter",null)}addCell(t){this.cells.push(t)}getMinimumHeight(){return Math.min.apply(null,this.cells.map(t=>t.height))}},gS=class{constructor(t,e,i,n){u(this,"rowIndex",t),u(this,"columnIndex",e),u(this,"anchorColumnIndex",i),u(this,"viewElement"),u(this,"colSpan"),u(this,"rowSpan"),u(this,"height",0),this.viewElement=n,this.colSpan=n.colSpan||1,this.rowSpan=n.rowSpan||1}setHeight(t){this.height=t}},mS=class{constructor(t,e,i){u(this,"rowIndex",t),u(this,"columnIndex",e),u(this,"cell",i)}},yS=class{constructor(t,e,i){u(this,"column",t),u(this,"cellNodeContext",i),u(this,"pseudoColumn"),u(this,"empty",!1),this.pseudoColumn=new zh(t,e,i)}findAcceptableBreakPosition(){let t=this.cellNodeContext.viewNode,{verticalAlign:e,alignContent:i}=t.style;e!=="top"&&e!=="baseline"&&R(t,"vertical-align","top"),i&&i!=="normal"&&R(t,"align-content","normal");let n=this.pseudoColumn.findAcceptableBreakPosition();return R(t,"vertical-align",e),i&&i!=="normal"&&R(t,"align-content",i),n}},vS=class{constructor(t,e){u(this,"viewNode",t),u(this,"side",e)}},wS=class extends po{constructor(t,e,i,n){super(t,e,i,n),u(this,"formattingContext"),u(this,"acceptableCellBreakPositions",null),u(this,"rowIndex",null),this.formattingContext=t.formattingContext}findAcceptableBreak(t,e){let i=super.findAcceptableBreak(t,e);return e<this.getMinBreakPenalty()||this.hasUnfinishedCells()?null:i}hasUnfinishedCells(){let t=this.getRowIndex(),e=this.formattingContext.getCellsFallingOnRow(t);for(let i of e){if(i.rowIndex+i.rowSpan-1>t)continue;let n=this.formattingContext.getCellFragmentOfCell(i);if(n){let r=n.findAcceptableBreakPosition();if(!n.pseudoColumn.isLastAfterNodeContext(r.nodeContext))return!0}}return!1}getMinBreakPenalty(){let t=super.getMinBreakPenalty();this.getAcceptableCellBreakPositions().forEach(i=>{t+=i.breakPosition.getMinBreakPenalty()});let e=this.getCellFragments();return t+=Math.max(0,...e.map(i=>i.cellNodeContext.breakPenalty)),t}getAcceptableCellBreakPositions(){if(!this.acceptableCellBreakPositions){let t=this.formattingContext,e=this.getCellFragments();this.acceptableCellBreakPositions=e.map(i=>i.findAcceptableBreakPosition())}return this.acceptableCellBreakPositions}getRowIndex(){return this.rowIndex!=null?this.rowIndex:this.rowIndex=this.formattingContext.findRowIndexBySourceNode(this.position.sourceNode)}getCellFragments(){return this.formattingContext.getRowSpanningCellsOverflowingTheRow(this.getRowIndex()).map(this.formattingContext.getCellFragmentOfCell,this.formattingContext)}},bS=class extends vh{constructor(t,e,i){super(),u(this,"rowIndex",t),u(this,"beforeNodeContext",e),u(this,"formattingContext",i),u(this,"acceptableCellBreakPositions",null)}findAcceptableBreak(t,e){if(this!==t.breakPositions[0]&&e<this.getMinBreakPenalty())return null;let i=this.getCellFragments(),n=this.getAcceptableCellBreakPositions(),r=n.some((o,s)=>{let a=i[s].pseudoColumn,h=o.nodeContext;return!a.isStartNodeContext(h)&&!a.isLastAfterNodeContext(h)});return this.beforeNodeContext.overflow=n.some(o=>o.nodeContext.overflow),r?this.beforeNodeContext:null}getMinBreakPenalty(){let t=this.formattingContext.getRowByIndex(this.rowIndex),e=this.beforeNodeContext.breakPenalty,i=this.getAcceptableCellBreakPositions(),n=this.getCellFragments();e+=Math.max(0,...n.map(o=>o.cellNodeContext.breakPenalty));let r=i.some((o,s)=>o.breakPosition instanceof Sr&&n[s].cellNodeContext.sourceNode.rowSpan>1);return i.forEach((o,s)=>{let a=o.breakPosition.getMinBreakPenalty();r&&o.breakPosition instanceof po&&o.breakPosition.overflows&&a>=3&&(n[s].column.checkOverflowAndSaveEdge(o.nodeContext,null)||(a-=3)),e+=a}),e}getAcceptableCellBreakPositions(){if(!this.acceptableCellBreakPositions){let t=this.getCellFragments();this.acceptableCellBreakPositions=t.map(e=>e.findAcceptableBreakPosition())}return this.acceptableCellBreakPositions}getCellFragments(){return this.formattingContext.getCellsFallingOnRow(this.rowIndex).map(this.formattingContext.getCellFragmentOfCell,this.formattingContext)}},$n=class extends cn{constructor(t,e){super(t,e),u(this,"tableSourceNode",e),u(this,"formattingContextType","Table"),u(this,"vertical",!1),u(this,"columnCount",-1),u(this,"tableWidth",0),u(this,"captions",[]),u(this,"colGroups",null),u(this,"colWidths",null),u(this,"inlineBorderSpacing",0),u(this,"rows",[]),u(this,"slots",[]),u(this,"cellFragments",[]),u(this,"lastRowViewNode",null),u(this,"cellBreakPositions",[]),u(this,"repetitiveElements",null)}getName(){return"Table formatting context (Table.TableFormattingContext)"}isFirstTime(t,e){var i;if(!e)return e;switch(t.display){case"table-row":{let n=this.findRowIndexBySourceNode(t.sourceNode);return this.cellBreakPositions.every(r=>this.isPreviousFragmentRowSpanningCellBreakPosition(r,n))&&t.fragmentIndex<=1}case"table-cell":return t.fragmentIndex>1||((i=t.parent)==null?void 0:i.display)==="table-row"&&t.parent.fragmentIndex>1?!1:!this.cellBreakPositions.some(n=>n.cellNodePosition.steps[0].node===t.sourceNode);default:return e}}getParent(){return this.parent}finishFragment(){this.cellFragments=[]}addRow(t,e){this.rows[t]=e}getRowSlots(t){let e=this.slots[t];return e||(e=this.slots[t]=[]),e}addCell(t,e,i){let n=this.rows[t];n||(this.addRow(t,new Tg(t,null)),n=this.rows[t]);let r=this.getRowSlots(t),o=0;for(;r[o];)o++;let s=new gS(t,e,o,i);n.addCell(s);let a=t+s.rowSpan,h=o+s.colSpan;for(let l=t;l<a;l++){let c=this.getRowSlots(l);for(let d=o;d<h;d++)c[d]=new mS(l,d,s)}}getRowByIndex(t){return this.rows[t]}findRowIndexBySourceNode(t){return this.rows.findIndex(e=>t===e.sourceNode)}isPreviousFragmentRowSpanningCellBreakPosition(t,e){let i=t.cell;return e>=0&&i.rowIndex<e&&i.rowIndex+i.rowSpan>e}addCellFragment(t,e,i){let n=this.cellFragments[t];n||(n=this.cellFragments[t]=[]),n[e]=i}getCellsFallingOnRow(t){return this.getRowSlots(t).reduce((e,i)=>i.cell!==e[e.length-1]?e.concat(i.cell):e,[])}getRowSpanningCellsOverflowingTheRow(t){return this.getCellsFallingOnRow(t).filter(e=>e.rowIndex+e.rowSpan-1>t)}getCellFragmentOfCell(t){return this.cellFragments[t.rowIndex]&&this.cellFragments[t.rowIndex][t.columnIndex]}getColumnCount(){return this.columnCount<0&&(this.columnCount=Math.max.apply(null,this.rows.map(t=>t.cells.reduce((e,i)=>e+i.colSpan,0)))),this.columnCount}updateCellSizes(t){this.rows.forEach(e=>{e.cells.forEach(i=>{let n=_t(t,i.viewElement,this.vertical);i.viewElement=null,i.setHeight(this.vertical?n.width:n.height)})})}findCellFromColumn(t){if(!t)return null;let e=null,i=0,n=0;e:for(i=0;i<this.cellFragments.length;i++)if(this.cellFragments[i]){for(n=0;n<this.cellFragments[i].length;n++)if(this.cellFragments[i][n]&&t===this.cellFragments[i][n].pseudoColumn.getColumn()){e=this.rows[i].cells[n];break e}}if(!e)return null;for(;i<this.slots.length;i++)for(;n<this.slots[i].length;n++){let r=this.slots[i][n];if(r.cell===e)return{rowIndex:r.rowIndex,columnIndex:r.columnIndex}}return null}collectElementsOffsetOfUpperCells(t){let e=[];return this.slots.reduce((i,n,r)=>{if(r>=t.rowIndex)return i;let o=n[t.columnIndex]&&this.getCellFragmentOfCell(n[t.columnIndex].cell);return!o||e.includes(o)||(this.collectElementsOffsetFromColumn(o.pseudoColumn.getColumn(),i),e.push(o)),i},[])}collectElementsOffsetOfHighestColumn(){let t=[];return this.rows.forEach(e=>{e.cells.forEach((i,n)=>{t[n]||(t[n]={collected:[],elements:[]});let r=t[n],o=this.getCellFragmentOfCell(i);!o||r.collected.includes(o)||(this.collectElementsOffsetFromColumn(o.pseudoColumn.getColumn(),r.elements),r.collected.push(o))})}),[new xS(t.map(e=>e.elements))]}collectElementsOffsetFromColumn(t,e){t.fragmentLayoutConstraints.forEach(i=>{if(rn.isInstanceOfRepetitiveElementsOwnerLayoutConstraint(i)){let n=i.getRepetitiveElements();e.push(n)}_i.isInstanceOfTableRowLayoutConstraint(i)&&i.getElementsOffsetsForTableCell(null).forEach(n=>{e.push(n)})})}saveState(){return[].concat(this.cellBreakPositions)}restoreState(t){this.cellBreakPositions=[].concat(t)}},xS=class{constructor(t){u(this,"repeatitiveElementsInColumns",t)}calculateOffset(t){return this.calculateMaxOffsetOfColumn(t,e=>e.current)}calculateMinimumOffset(t){return this.calculateMaxOffsetOfColumn(t,e=>e.minimum)}calculateMaxOffsetOfColumn(t,e){let i=0;return this.repeatitiveElementsInColumns.forEach(n=>{let r=zn(t,n);i=Math.max(i,e(r))}),i}};function Gt(t){return t instanceof $n,t}function SS(t){return t==="table-row-group"||t==="table-header-group"||t==="table-footer-group"}function CS(t){return t==="table"||t==="inline-table"}function wc(t){return SS(t)||CS(t)}function Ig(t,e,i){let n=t.nodeContext,r=n.display,o=n.parent?n.parent.display:null,s=!1;if(o==="inline-table"&&!(n.formattingContext instanceof $n)){for(let a=n.parent;a;a=a.parent)if(a.formattingContext instanceof $n){s=a.formattingContext===e;break}}return s||r==="table-row"&&!wc(o)||r==="table-cell"&&o!=="table-row"&&!wc(o)||n.formattingContext instanceof $n&&n.formattingContext!==e?i.buildDeepElementView(n).thenAsync(a=>(t.nodeContext=a,F(!0))):null}function Ag(t,e){let i=Mw(e.nodeContext);return!i||!(Li(i.floatReference)||i.floatSide==="footnote")?null:t.layoutFloatOrFootnote(i).thenAsync(n=>(n&&(e.nodeContext=n),F(!0)))}var kS=class extends Ir{constructor(t,e){super(),u(this,"formattingContext",t),u(this,"column",e),u(this,"rowIndex",-1),u(this,"columnIndex",0),u(this,"inRow",!1),u(this,"checkPoints",[]),u(this,"inHeaderOrFooter",!1)}startNonInlineElementNode(t){let e=this.formattingContext,i=Ig(t,e,this.column);if(i)return i;this.postLayoutBlockContents(t);let n=Ag(this.column,t);if(n)return n;let r=t.nodeContext,o=r.display,s=e.getRepetitiveElements();switch(o){case"table":e.inlineBorderSpacing=r.inlineBorderSpacing;break;case"table-caption":{let a=new vS(r.viewNode,r.captionSide);e.captions.push(a);break}case"table-header-group":return s.isHeaderRegistered()||(this.inHeaderOrFooter=!0,s.setHeaderNodeContext(r)),F(!0);case"table-footer-group":return s.isFooterRegistered()||(this.inHeaderOrFooter=!0,s.setFooterNodeContext(r)),F(!0);case"table-row":this.inHeaderOrFooter||(this.inRow=!0,this.rowIndex++,this.columnIndex=0,e.addRow(this.rowIndex,new Tg(this.rowIndex,r.sourceNode)),r.breakBefore&&(e.rows[this.rowIndex].breakBefore=r.breakBefore),s.firstContentSourceNode||(s.firstContentSourceNode=r.sourceNode));break}return super.startNonInlineElementNode(t)}afterNonInlineElementNode(t){let e=this.formattingContext,i=t.nodeContext,n=i.display,r=this.column.clientLayout;if(this.postLayoutBlockContents(t),i.sourceNode===e.tableSourceNode){let o=r.getElementComputedStyle(e.getRootViewNode(i));e.tableWidth=parseFloat(o[e.vertical?"height":"width"]),e.getRepetitiveElements().lastContentSourceNode=t.lastAfterNodeContext&&t.lastAfterNodeContext.sourceNode,t.break=!0}else switch(n){case"table-header-group":case"table-footer-group":if(this.inHeaderOrFooter)return this.inHeaderOrFooter=!1,F(!0);break;case"table-row":if(!this.inHeaderOrFooter){e.lastRowViewNode=i.viewNode,this.inRow=!1;let o=e.rows[this.rowIndex];o&&i.breakAfter&&(o.breakAfter=nt(o.breakAfter,i.breakAfter))}break;case"table-cell":if(!this.inHeaderOrFooter){this.inRow||(this.rowIndex++,this.columnIndex=0,this.inRow=!0);let o=i.viewNode;e.addCell(this.rowIndex,this.columnIndex,o),this.columnIndex++,Og(o);let s=e.rows[this.rowIndex];s&&(i.breakBefore&&(s.breakBefore=nt(s.breakBefore,i.breakBefore)),i.breakAfter&&(s.breakAfter=nt(s.breakAfter,i.breakAfter)))}break}return super.afterNonInlineElementNode(t)}startNonElementNode(t){this.registerCheckPoint(t)}afterNonElementNode(t){this.registerCheckPoint(t)}startInlineElementNode(t){this.registerCheckPoint(t)}afterInlineElementNode(t){this.registerCheckPoint(t)}registerCheckPoint(t){let e=t.nodeContext;Ln(e)||this.checkPoints.push(e.clone())}postLayoutBlockContents(t){this.checkPoints.length>0&&this.column.postLayoutBlock(t.nodeContext,this.checkPoints),this.checkPoints=[]}},Fg=class Rg extends Ir{constructor(e,i){super(!0),u(this,"formattingContext",e),u(this,"column",i),u(this,"inRow",!1),u(this,"currentRowIndex",-1),u(this,"currentColumnIndex",0),u(this,"originalStopAtOverflow"),u(this,"inHeader",!1),u(this,"inFooter",!1),u(this,"didExtractRowSpanningCellBreakPositions",!1),this.originalStopAtOverflow=i.stopAtOverflow,i.stopAtOverflow=!1}startNonInlineElementNode(e){return Ag(this.column,e)||super.startNonInlineElementNode(e)}resetColumn(){this.column.stopAtOverflow=this.originalStopAtOverflow}getColSpanningCellWidth(e){let i=this.formattingContext.colWidths,n=0;for(let r=0;r<e.colSpan;r++)n+=i[e.anchorColumnIndex+r];return n+=this.formattingContext.inlineBorderSpacing*(e.colSpan-1),n}layoutCell(e,i,n){let r=e.rowIndex,o=e.columnIndex,s=e.colSpan,a=i.viewNode;s>1&&(R(a,"box-sizing","border-box"),R(a,this.formattingContext.vertical?"height":"width",`${this.getColSpanningCellWidth(e)}px`));let h=a.ownerDocument.createElement("div");a.appendChild(h);let l=new yS(this.column,h,i);return this.formattingContext.addCellFragment(r,o,l),n.primary.steps.length===1&&n.primary.after&&(l.empty=!0),l.pseudoColumn.layout(n,!0).thenAsync(()=>(Og(a),F(!0)))}findBrokenCellAtSlot(e,i){let n=this.formattingContext.cellBreakPositions;for(let r=0;r<n.length;r++){let o=n[r];if(o.cell.anchorColumnIndex===e&&o.cellNodePosition.steps[0].node===i)return{position:o,index:r}}return null}extractRowSpanningCellBreakPositions(){if(this.didExtractRowSpanningCellBreakPositions)return[];let e=this.formattingContext.cellBreakPositions;if(e.length===0)return[];let i=[];return e.forEach(n=>{let r=n.cell,o=r.rowIndex;if(o<this.currentRowIndex&&o+r.rowSpan>this.currentRowIndex){let s=i[o];s||(s=i[o]=[]),s.push(n)}}),this.didExtractRowSpanningCellBreakPositions=i.length>0,i}layoutRowSpanningCellsFromPreviousFragment(e){let i=this.formattingContext,n=this.extractRowSpanningCellBreakPositions(),r=n.reduce(d=>d+1,0);if(r===0)return F(!0);let o=this.column.layoutContext,s=e.nodeContext;s.viewNode.remove();let a=V("layoutRowSpanningCellsFromPreviousFragment"),h=F(!0),l=0,c=[];return n.forEach(d=>{h=h.thenAsync(()=>{let p=Ss(d[0].cellNodePosition.steps[1],s.parent);return o.setCurrent(p,!1).thenAsync(()=>{let g=Lt(p).viewNode,m=F(!0),v=0;function b(x){for(;v<x;){if(!c.includes(v)){let C=g.ownerDocument.createElement("td");R(C,"padding","0"),g.appendChild(C)}v++}}return d.forEach(x=>{m=m.thenAsync(()=>{let C=x.cell;b(C.anchorColumnIndex);let y=x.cellNodePosition,k=Ss(y.steps[0],p);return k.offsetInNode=y.offsetInNode,k.after=y.after,k.fragmentIndex=y.steps[0].fragmentIndex+1,o.setCurrent(k,!1).thenAsync(()=>{let S=x.breakChunkPosition;for(let N=0;N<C.colSpan;N++)c.push(v+N);return v+=C.colSpan,this.layoutCell(C,k,S).thenAsync(()=>(k.viewNode.rowSpan=C.rowIndex+C.rowSpan-this.currentRowIndex+r-l,F(!0)))})})}),m.thenAsync(()=>(b(i.getColumnCount()),l++,F(!0)))})})}),h.then(()=>{o.setCurrent(s,!0,e.atUnforcedBreak).then(()=>{a.finish(!0)})}),a.result()}startTableRow(e){if(this.inHeader||this.inFooter)return F(!0);let i=e.nodeContext,n=this.formattingContext;return this.currentRowIndex<0?this.currentRowIndex=n.findRowIndexBySourceNode(i.sourceNode):this.currentRowIndex++,this.currentColumnIndex=0,this.inRow=!0,this.layoutRowSpanningCellsFromPreviousFragment(e).thenAsync(()=>{var r;this.registerCellFragmentIndex();let o=e.breakAtTheEdge;if(this.currentRowIndex>0){let a=n.rows[this.currentRowIndex-1];a!=null&&a.breakAfter&&(o=nt(o,a.breakAfter))}let s=n.rows[this.currentRowIndex];return s!=null&&s.breakBefore&&(o=nt(o,s.breakBefore)),!e.leadingEdge&&Ye(o)?(this.column.checkOverflowAndSaveEdgeAndBreakPosition(e.lastAfterNodeContext,null,!0,o),(r=i.viewNode)==null||r.remove(),e.lastAfterNodeContext&&this.column.layoutContext.processFragmentedBlockEdge(e.lastAfterNodeContext),this.column.pageBreakType=o,this.resetColumn(),e.break=!0,F(!0)):(this.column.checkOverflowAndSaveEdgeAndBreakPosition(e.lastAfterNodeContext,null,!0,o)&&n.getRowSpanningCellsOverflowingTheRow(this.currentRowIndex-1).length===0&&(this.resetColumn(),i.overflow=!0,e.break=!0),F(!0))})}registerCellFragmentIndex(){this.formattingContext.getRowByIndex(this.currentRowIndex).cells.forEach(e=>{let i=this.formattingContext.cellBreakPositions.find(n=>n.cell===e);if(i){let n=i.cellNodePosition.steps[0],r=this.column.layoutContext.xmldoc.getElementOffset(n.node);qx(r,n.fragmentIndex+1,1)}})}startTableCell(e){if(this.inHeader||this.inFooter)return F(!0);let i=e.nodeContext;this.inRow||(this.currentRowIndex<0?this.currentRowIndex=0:this.currentRowIndex++,this.currentColumnIndex=0,this.inRow=!0);let n=this.formattingContext.getRowByIndex(this.currentRowIndex).cells[this.currentColumnIndex];if(!n)return e.break=!0,F(!0);let r=i.copy().modify();r.after=!0,e.nodeContext=r;let o=V("startTableCell"),s,a=this.findBrokenCellAtSlot(n.anchorColumnIndex,i.sourceNode);if(a){let h=a.position;this.formattingContext.cellBreakPositions.splice(a.index,1),i.fragmentIndex=h.cellNodePosition.steps[0].fragmentIndex+1,s=F(h.breakChunkPosition)}else s=this.column.nextInTree(i,e.atUnforcedBreak).thenAsync(h=>{let l=h.viewNode;l&&i.viewNode.removeChild(l);let c=xs(h,0);return F(new zi(c))});return s.then(h=>{this.layoutCell(n,i,h).then(()=>{this.afterNonInlineElementNode(e),this.currentColumnIndex++,o.finish(!0)})}),o.result()}startNonInlineBox(e){let i=Ig(e,Gt(this.formattingContext),this.column);if(i)return i;let n=e.nodeContext,r=this.formattingContext.getRepetitiveElements(),o=n.display;return o==="table-header-group"&&r&&r.isHeaderSourceNode(n.sourceNode)?(this.inHeader=!0,F(!0)):o==="table-footer-group"&&r&&r.isFooterSourceNode(n.sourceNode)?(this.inFooter=!0,F(!0)):o==="table-row"?this.startTableRow(e):o==="table-cell"?this.startTableCell(e):F(!0)}endNonInlineBox(e){let i=e.nodeContext;if(i.display==="table-row"&&(this.inRow=!1,!this.inHeader&&!this.inFooter)){let n=i.copy().modify();n.after=!1;let r=new bS(this.currentRowIndex,n,this.formattingContext);this.column.breakPositions.push(r)}return F(!0)}afterNonInlineElementNode(e){let i=e.nodeContext,n=this.formattingContext.getRepetitiveElements(),r=i.display;if(r==="table-header-group"?n&&!n.allowInsertRepeatitiveElements&&n.isHeaderSourceNode(i.sourceNode)?(this.inHeader=!1,i.viewNode.remove()):R(i.viewNode,"display","table-row-group"):r==="table-footer-group"&&(n&&!n.allowInsertRepeatitiveElements&&n.isFooterSourceNode(i.sourceNode)?(this.inFooter=!1,i.viewNode.remove()):R(i.viewNode,"display","table-row-group")),r&&Rg.ignoreList[r])i.viewNode.remove();else if(i.sourceNode===this.formattingContext.tableSourceNode)i.overflow=this.column.checkOverflowAndSaveEdge(i,null),this.resetColumn(),e.break=!0;else if(r==="table-row"&&!this.inHeader&&!this.inFooter){let o=super.afterNonInlineElementNode(e);return(o&&o.isPending()?o:F(!0)).thenAsync(()=>{if(!e.break){let s=this.column.checkOverflowAndSaveEdge(i,null),a=this.formattingContext.getRepetitiveElements(),h=this.column.nodeContextOverflowingDueToRepetitiveElements===i,l=!s&&h&&!!(a!=null&&a.isFooterRegistered());(s||h)&&!l&&this.formattingContext.getRowSpanningCellsOverflowingTheRow(this.currentRowIndex).length===0&&(this.resetColumn(),i.overflow=!0,e.break=!0)}return F(!0)})}else return super.afterNonInlineElementNode(e);return F(!0)}};u(Fg,"ignoreList",{"table-caption":!0,"table-column-group":!0,"table-column":!0});var PS=Fg,Zr=[];function ES(t){let e=Zr.findIndex(n=>n.root===t),i=Zr[e];return i?i.tableLayoutOption:null}function NS(t){let e=Zr.findIndex(i=>i.root===t);e>=0&&Zr.splice(e,1)}var Lg=class{layoutEntireTable(t,e){let i=Gt(t.formattingContext),n=new kS(i,e);return new pl(n,e.layoutContext).iterate(t)}getColumnWidths(t,e,i,n){let r=t.ownerDocument,o=r.createElement("tr"),s=[];for(let h=0;h<e;h++){let l=r.createElement("td");o.appendChild(l),s.push(l)}t.after(o);let a=s.map(h=>{let l=_t(n,h,i),c=i?l.height:l.width;return Math.ceil(c)});return o.remove(),a}getColGroupElements(t){let e=[],i=t.firstElementChild;for(;i;)i.localName==="colgroup"&&e.push(i),i=i.nextElementSibling;return e}normalizeAndGetColElements(t){let e=[];return t.forEach(i=>{let n=i.span;i.removeAttribute("span");let r=i.firstElementChild;for(;r;){if(r.localName==="col"){let o=r.span;for(r.removeAttribute("span"),n-=o;o-- >1;){let s=r.cloneNode(!0);i.insertBefore(s,r),e.push(s)}e.push(r)}r=r.nextElementSibling}for(;n-- >0;)r=i.ownerDocument.createElement("col"),i.appendChild(r),e.push(r)}),e}addMissingColElements(t,e,i,n){if(t.length<i){let r=n.ownerDocument.createElement("colgroup");e.push(r);for(let o=t.length;o<i;o++){let s=n.ownerDocument.createElement("col");r.appendChild(s),t.push(s)}}}normalizeColGroups(t,e,i){let n=t.vertical,r=t.lastRowViewNode;if(!r)return;t.lastRowViewNode=null;let o=r.ownerDocument.createDocumentFragment(),s=t.getColumnCount();if(!(s>0)){t.colGroups=o;return}let a=t.colWidths=this.getColumnWidths(r,s,n,i.clientLayout),h=this.getColGroupElements(e),l=this.normalizeAndGetColElements(h);this.addMissingColElements(l,h,s,e),l.forEach((c,d)=>{R(c,n?"height":"width",`${a[d]}px`)}),h.forEach(c=>{o.appendChild(c.cloneNode(!0))}),t.colGroups=o}doInitialLayout(t,e){let i=Gt(t.formattingContext);i.vertical=t.vertical,i.initializeRepetitiveElements(t.vertical);let n=ES(t.sourceNode);NS(t.sourceNode);let r=V("TableLayoutProcessor.doInitialLayout"),o=t.copy();return this.layoutEntireTable(t,e).then(s=>{var a;let h=s.viewNode,l=i.rows[0];if(l&&Ye(l.breakBefore)&&this.hasInFlowContentBefore(h,e)){(a=h.parentNode)==null||a.removeChild(h),e.pageBreakType=l.breakBefore,r.finish(o);return}let c=_t(e.clientLayout,h,e.vertical),d=e.vertical?c.left:c.bottom;if(d+=(e.vertical?-1:1)*zn(t,e.collectElementsOffset()).current,!e.isOverflown(d)&&(!n||!n.calculateBreakPositionsInside)&&!this.hasForcedBreakInRows(i)){e.breakPositions.push(new FS(o)),r.finish(s);return}this.normalizeColGroups(i,h,e),i.updateCellSizes(e.clientLayout),r.finish(null)}),r.result()}hasForcedBreakInRows(t){for(let e=0;e<t.rows.length;e++){let i=t.rows[e];if(i&&(e>0&&Ye(i.breakBefore)||e<t.rows.length-1&&Ye(i.breakAfter)))return!0}return!1}hasInFlowContentBefore(t,e){let i=t;for(;i&&i!==e.element;){let n=i.previousSibling;for(;n;){if(n.nodeType===1&&!Mt(n)||n.nodeType===3&&!Ee(n))return!0;n=n.previousSibling}i=i.parentNode}return!1}addCaptions(t,e,i){let n=t.captions;n.forEach((r,o)=>{r&&(e.insertBefore(r.viewNode,i),r.side==="top"&&(n[o]=null))})}addColGroups(t,e,i){t.colGroups&&this.getColGroupElements(e).length===0&&(e.insertBefore(t.colGroups.cloneNode(!0),i),R(e,"table-layout","fixed"),R(e,t.vertical?"height":"width",`${t.tableWidth}px`))}removeColGroups(t,e){if(t.colGroups&&e){let i=this.getColGroupElements(e);i&&i.forEach(n=>{e.removeChild(n)})}}doLayout(t,e){let i=Gt(t.formattingContext),n=i.getRootViewNode(t),r=n.firstChild;this.addCaptions(i,n,r),this.addColGroups(i,n,r);let o=new PS(i,e),s=new pl(o,e.layoutContext),a=V("TableFormattingContext.doLayout");return s.iterate(t).thenFinish(a),a.result()}layout(t,e,i){let n=Gt(t.formattingContext);if(n.getRootViewNode(t)){if(i){let r=n.getRepetitiveElements();r&&t.sourceNode!==n.tableSourceNode&&!t.after&&!r.isFooterRegistered()&&r.preventSkippingHeader(),Eg(t.parent,e)}return new IS(n,this).layout(t,e)}else return e.buildDeepElementView(t)}createEdgeBreakPosition(t,e,i,n){return new wS(t,e,i,n)}startNonInlineElementNode(t){return!1}afterNonInlineElementNode(t,e){return za(t),!1}finishBreak(t,e,i,n){let r=Gt(e.formattingContext);if(e.display==="table-row"){let o=r.findRowIndexBySourceNode(e.sourceNode),s;if(e.after?s=r.getRowSpanningCellsOverflowingTheRow(o):s=r.getCellsFallingOnRow(o),r.cellBreakPositions=r.cellBreakPositions.filter(a=>!s.includes(a.cell)),s.length){let a=V("TableLayoutProcessor.finishBreak"),h=0;return a.loopWithFrame(l=>{if(h===s.length){l.breakLoop();return}let c=s[h++],d=r.getCellFragmentOfCell(c),p=d.findAcceptableBreakPosition().nodeContext,f=d.cellNodeContext,g=f.toNodePosition(),m=new zi(p.toNodePosition());r.cellBreakPositions.push({cellNodePosition:g,breakChunkPosition:m,cell:c});let v=f.viewNode;d.column.layoutContext.processFragmentedBlockEdge(d.cellNodeContext),o<c.rowIndex+c.rowSpan-1&&(v.rowSpan=o-c.rowIndex+1),d.empty?l.continueLoop():d.pseudoColumn.finishBreak(p,!1,!0).then(()=>{TS(d,r,p),l.continueLoop()})}).then(()=>{t.clearOverflownViewNodes(e,!1),t.layoutContext.processFragmentedBlockEdge(e),za(e),r.finishFragment(),a.finish(!0)}),a.result()}}return za(e),r.finishFragment(),wh.finishBreak(t,e,i,n)}clearOverflownViewNodes(t,e,i,n){On.prototype.clearOverflownViewNodes(t,e,i,n)}};function TS(t,e,i){let n=e.getRepetitiveElements();if(!n||!(n.isHeaderRegistered()||n.isFooterRegistered()))return;let r=e.vertical,o=t.column,s=t.pseudoColumn.getColumnElement(),a=t.cellNodeContext.viewNode,h=_t(o.clientLayout,a,r),l=o.getComputedPaddingBorder(a);if(r){let c=h.right-o.footnoteEdge-n.calculateOffset(i)-l.right;R(s,"max-width",`${c}px`)}else{let c=o.footnoteEdge-n.calculateOffset(i)-h.top-l.top;R(s,"max-height",`${c}px`)}}function Og(t){let e=t.matches("td, th")?t:t.closest("td, th");if(!e||e.style.verticalAlign!=="baseline")return;let i=e.querySelector(".-vivliostyle-table-cell-container");if(!i)return;let n=i.children;if(n.length!==0){for(let r=0;r<n.length;r++){let o=n[r].style.position;if(o!=="absolute"&&o!=="fixed")return}R(i,"display","contents")}}function za(t){let e=t.display;if(e!=="table-row"&&e!=="table")return;let i=Lt(t),n=e==="table-row"?i.viewNode.parentElement:i.viewNode.querySelector("tbody");if(!n)return;let r;try{r=n.querySelectorAll(":scope>tr:has(>:empty):not(:has(>:not([rowspan]:not([rowspan='1']),:empty)))")}catch{return}if(r.length===0)return;let o=Array.from(r).reduce((f,g)=>{let m=g.getBoundingClientRect(),v=t.vertical?m.width:m.height;return f+v},0),s=r[r.length-1],a=Array.from(n.children).indexOf(s),h=Array.from(s.children).reduce((f,g)=>{let m=g.rowSpan;return m>1&&a+m<n.childElementCount?Math.max(f,m):f},0),l=h?n.children[a+h-1]:n.lastElementChild;if(l!=n.lastElementChild&&l.querySelector(":scope>*>div>div")){for(let f=l;f&&f!==n.lastElementChild;f=f.nextElementSibling)if(f.querySelector(":scope>[rowspan]:not([rowspan='1'])")){l=f;break}}let c=l.getBoundingClientRect(),d=t.vertical?c.width:c.height,p=o+d;R(l,t.vertical?"width":"height",`${p}px`)}var IS=class extends bh{constructor(t,e){super(),u(this,"tableFormattingContext",t),u(this,"processor",e)}resolveLayoutMode(t){let e=this.tableFormattingContext.getRepetitiveElements();return!e||!e.doneInitialLayout?new AS(this.tableFormattingContext,this.processor):(t.sourceNode===this.tableFormattingContext.tableSourceNode&&!t.after&&e&&e.preventSkippingHeader(),new LS(this.tableFormattingContext,this.processor))}clearNodes(t){super.clearNodes(t);let e=this.tableFormattingContext.getRootViewNode(t);this.processor.removeColGroups(this.tableFormattingContext,e)}restoreState(t,e){super.restoreState(t,e),this.tableFormattingContext.finishFragment()}},AS=class extends Cg{constructor(t,e){super(t),u(this,"processor",e)}doLayout(t,e){return this.processor.doInitialLayout(t,e)}},FS=class extends po{constructor(t){super(t,null,t.overflow,0)}getMinBreakPenalty(){if(!this.isEdgeUpdated)throw new Error("EdgeBreakPosition.prototype.updateEdge not called");return(this.overflows?3:0)+(this.position.parent?this.position.parent.breakPenalty:0)}breakPositionChosen(t){t.fragmentLayoutConstraints.push(new RS(this.position.sourceNode))}},RS=class Bg{constructor(e){u(this,"tableRootNode",e),u(this,"flagmentLayoutConstraintType","EntireTable")}allowLayout(e,i,n){return e.overflow,!1}nextCandidate(e){return!0}postLayout(e,i,n,r){Zr.push({root:i.sourceNode,tableLayoutOption:{calculateBreakPositionsInside:!0}})}finishBreak(e,i){return F(!0)}equalsTo(e){return e instanceof Bg&&e.tableRootNode===this.tableRootNode}getPriorityOfFinishBreak(){return 0}},LS=class extends kg{constructor(t,e){super(t),u(this,"processor",e)}doLayout(t,e){let i=this.formattingContext.getRepetitiveElements();if(i&&!i.isAfterLastContent(t)){let n=new OS(t);e.fragmentLayoutConstraints.some(r=>n.equalsTo(r))||e.fragmentLayoutConstraints.unshift(n)}return this.processor.doLayout(t,e)}},OS=class Mg extends Vh{constructor(e){super(e),u(this,"flagmentLayoutConstraintType","TableRow"),u(this,"cellFragmentLayoutConstraints",[])}allowLayout(e,i,n){let r=this.getRepetitiveElements();return!r||n.pseudoParent||Rn(this.nodeContext.viewNode)||!r.isEnableToUpdateState()?!0:i&&!e||e&&e.overflow?!Ng(e,i,r):!0}nextCandidate(e){let i=Gt(this.nodeContext.formattingContext);return this.collectCellFragmentLayoutConstraints(e,i).some(n=>n.constraints.some(r=>r.nextCandidate(e)))?!0:super.nextCandidate(e)}postLayout(e,i,n,r){let o=Gt(this.nodeContext.formattingContext);if(this.cellFragmentLayoutConstraints=this.collectCellFragmentLayoutConstraints(i,o),this.cellFragmentLayoutConstraints.forEach(s=>{s.constraints.forEach(a=>{a.postLayout(e,s.breakPosition,n,r)})}),!e){let s=o.getRootViewNode(this.nodeContext);new Lg().removeColGroups(o,s),this.removeDummyRowNodes(n)}super.postLayout(e,i,n,r)}finishBreak(e,i){let n=Gt(this.nodeContext.formattingContext),r=V("finishBreak"),o=this.cellFragmentLayoutConstraints.reduce((a,h)=>a.concat(h.constraints.map(l=>({constraint:l,breakPosition:h.breakPosition}))),[]),s=0;return r.loop(()=>{if(s<o.length){let a=o[s++];return a.constraint.finishBreak(a.breakPosition,i).thenReturn(!0)}else return F(!1)}).then(()=>{r.finish(!0)}),r.result().thenAsync(()=>super.finishBreak(e,i))}removeDummyRowNodes(e){if(!(!e||e.display!=="table-row"||!e.viewNode))for(;e.viewNode.previousElementSibling;){let i=e.viewNode.previousElementSibling;i.parentNode&&i.parentNode.removeChild(i)}}collectCellFragmentLayoutConstraints(e,i){return this.getCellFragemnts(e,i).map(n=>({constraints:n.fragment.pseudoColumn.getColumn().fragmentLayoutConstraints,breakPosition:n.breakPosition}))}getCellFragemnts(e,i){let n=Number.MAX_VALUE;e&&e.display==="table-row"&&(n=i.findRowIndexBySourceNode(e.sourceNode)+1),n=Math.min(i.cellFragments.length,n);let r=[];for(let o=0;o<n;o++)i.cellFragments[o]&&i.cellFragments[o].forEach(s=>{s&&r.push({fragment:s,breakPosition:s.findAcceptableBreakPosition().nodeContext})});return r}getElementsOffsetsForTableCell(e){let i=Gt(this.nodeContext.formattingContext),n=i.findCellFromColumn(e);return n?i.collectElementsOffsetOfUpperCells(n):i.collectElementsOffsetOfHighestColumn()}equalsTo(e){return e instanceof Mg?Gt(this.nodeContext.formattingContext)===Gt(e.nodeContext.formattingContext):!1}},BS=new Lg;function MS(t,e,i,n,r,o){if(!e)return null;if(i===w.table){let s=t.parent;return new $n(s?s.formattingContext:null,t.sourceNode)}return null}function _S(t){return t instanceof $n?BS:null}Ft("RESOLVE_FORMATTING_CONTEXT",MS);Ft("RESOLVE_LAYOUT_PROCESSOR",_S);function bc(t){return t.reduce((e,i)=>e+i,0)/t.length}function DS(t){let e=bc(t);return bc(t.map(i=>{let n=i-e;return n*n}))}var zS=class{constructor(t,e){u(this,"layoutResult",t),u(this,"penalty",e)}};function Kr(t){return t.vertical?t.width:t.height}function Jr(t,e){t.vertical?t.width=e:t.height=e}var _g=class{constructor(t,e,i){u(this,"layoutContainer",t),u(this,"columnGenerator",e),u(this,"regionPageFloatLayoutContext",i),u(this,"originalContainerBlockSize"),this.originalContainerBlockSize=Kr(t)}balanceColumns(t){let e=V("ColumnBalancer#balanceColumns");this.layoutContainer.element.setAttribute("data-vivliostyle-in-column-balancing","true"),this.preBalance(t),this.savePageFloatLayoutContexts(t),this.layoutContainer.clear();let i=[this.createTrialResult(t)];return e.loopWithFrame(n=>{if(!this.hasNextCandidate(i)){n.breakLoop();return}this.updateCondition(i),this.columnGenerator().then(r=>{if(this.savePageFloatLayoutContexts(r),this.layoutContainer.clear(),!r){n.breakLoop();return}i.push(this.createTrialResult(r)),n.continueLoop()})}).then(()=>{let n=i.reduce((r,o)=>o.penalty<r.penalty?o:r,i[0]);this.layoutContainer.element.removeAttribute("data-vivliostyle-in-column-balancing"),this.restoreContents(n.layoutResult),this.tightenColumnBlockSizes(n.layoutResult.columns),this.postBalance(),e.finish(n.layoutResult)}),e.result()}createTrialResult(t){let e=this.calculatePenalty(t);return new zS(t,e)}preBalance(t){}postBalance(){Jr(this.layoutContainer,this.originalContainerBlockSize)}tightenColumnBlockSizes(t){if(t.length<=1)return;let e=Math.max.apply(null,t.map(i=>i.computedBlockSize));if(!(e<=0))for(let i of t)if(i.vertical){let n=parseFloat(i.element.style.width),r=parseFloat(i.element.style.left);if(isFinite(n)&&isFinite(r)&&n>e){let o=r+n-e;R(i.element,"width",`${e}px`),R(i.element,"left",`${o}px`),i.width=e,i.left=o}}else{let n=parseFloat(i.element.style.height);isFinite(n)&&n>e&&(R(i.element,"height",`${e}px`),i.height=e)}}savePageFloatLayoutContexts(t){let e=this.regionPageFloatLayoutContext.detachChildren();t&&(t.columnPageFloatLayoutContexts=e)}restoreContents(t){let e=this.layoutContainer.element;t.columns.forEach(i=>{e.appendChild(i.element)}),t.columnPageFloatLayoutContexts,this.regionPageFloatLayoutContext.attachChildren(t.columnPageFloatLayoutContexts)}},Dl=1;function Dg(t){let e=t[t.length-1];if(e.penalty===0)return!1;let i=t[t.length-2];if(i&&e.penalty>=i.penalty)return!1;let n=e.layoutResult.columns,r=Math.max.apply(null,n.map(s=>s.computedBlockSize)),o=Math.max.apply(null,n.map(s=>s.getMaxBlockSizeOfPageFloats()));return r>o+Dl}function zg(t,e){let i=t[t.length-1].layoutResult.columns,n=Math.max.apply(null,i.map(r=>isNaN(r.blockDistanceToBlockEndFloats)?r.computedBlockSize:r.computedBlockSize-r.blockDistanceToBlockEndFloats+Dl))-Dl;n<Kr(e)?Jr(e,n):Jr(e,Kr(e)-1)}var VS=class extends _g{constructor(t,e,i,n){super(i,t,e),u(this,"columnCount",n),u(this,"originalPosition",null),u(this,"foundUpperBound",!1)}preBalance(t){let e=t.columns.reduce((i,n)=>i+n.computedBlockSize,0);Jr(this.layoutContainer,e/this.columnCount),this.originalPosition=t.position}checkPosition(t){return this.originalPosition?this.originalPosition.isSamePosition(t):t===null}calculatePenalty(t){if(!this.checkPosition(t.position))return 1/0;let e=t.columns;return xc(e)?1/0:Math.max.apply(null,e.map(i=>i.computedBlockSize))}hasNextCandidate(t){if(t.length===1)return!0;if(this.foundUpperBound)return Dg(t);{let e=t[t.length-1];return this.checkPosition(e.layoutResult.position)&&!xc(e.layoutResult.columns)?(this.foundUpperBound=!0,!0):Kr(this.layoutContainer)<this.originalContainerBlockSize}}updateCondition(t){if(this.foundUpperBound)zg(t,this.layoutContainer);else{let e=Math.min(this.originalContainerBlockSize,Kr(this.layoutContainer)+this.originalContainerBlockSize*.1);Jr(this.layoutContainer,e)}}};function xc(t){if(t.length<=1)return!1;let e=t[t.length-1].computedBlockSize,i=t.slice(0,t.length-1),n=Math.max(...t.map(o=>o.lastLineStride||0)),r=n>0?n/2:6;return i.every(o=>e>o.computedBlockSize+r)}var $S=class extends _g{constructor(t,e,i){super(i,t,e)}calculatePenalty(t){if(t.columns.every(i=>i.computedBlockSize===0))return 1/0;let e=t.columns.filter(i=>!i.pageBreakType).map(i=>i.computedBlockSize);return DS(e)}hasNextCandidate(t){return Dg(t)}updateCondition(t){zg(t,this.layoutContainer)}};function HS(t,e,i,n,r,o,s){if(e===w.auto)return null;{let a=s.positions.length===0,h=o[o.length-1],l=!!(h&&h.pageBreakType);return a||l?new VS(i,n,r,t):e===w.balance_all?new $S(i,n,r):(w.balance,null)}}var Va=class{constructor(t,e,i){u(this,"endStuckFixed"),u(this,"endFixed"),u(this,"endSlipped"),this.endStuckFixed=t,this.endFixed=e,this.endSlipped=i}},US=class{constructor(){u(this,"map",[])}getMaxFixed(){return this.map.length==0?0:this.map[this.map.length-1].endFixed}getMaxSlipped(){return this.map.length==0?0:this.map[this.map.length-1].endSlipped}addStuckRange(t){if(this.map.length==0)this.map.push(new Va(t,t,t));else{let e=this.map[this.map.length-1],i=e.endSlipped+t-e.endFixed;e.endFixed==e.endStuckFixed?(e.endFixed=t,e.endStuckFixed=t,e.endSlipped=i):this.map.push(new Va(t,t,i))}}addSlippedRange(t){this.map.length==0?this.map.push(new Va(t,0,0)):this.map[this.map.length-1].endFixed=t}slippedByFixed(t){let e=yi(this.map.length,n=>t<=this.map[n].endFixed),i=this.map[e];return i.endSlipped-Math.max(0,i.endStuckFixed-t)}fixedBySlipped(t){let e=yi(this.map.length,n=>t<=this.map[n].endSlipped),i=this.map[e];return i.endStuckFixed-(i.endSlipped-t)}};function WS(t){let e={};return Object.keys(t).forEach(i=>{e[i]=Array.from(t[i])}),e}var GS=class zl{constructor(e,i,n,r,o,s,a,h){if(u(this,"context",e),u(this,"style",i),u(this,"offset",n),u(this,"isRoot",r),u(this,"flowChunk",o),u(this,"atBlockStart",s),u(this,"atFlowStart",a),u(this,"isParentBoxDisplayed",h),u(this,"flowName"),u(this,"isBlockValue",null),u(this,"hasBoxValue",null),u(this,"styleValues",{}),u(this,"beforeBox",null),u(this,"afterBox",null),u(this,"breakBefore",null),this.flowName=o.flowName,this.hasBox()){let l=i._pseudos;if(l&&l.before){let c=new zl(e,l.before,n,!1,o,this.isBlock(),a,!0),d=c.styleValue("content");At(d)&&(this.beforeBox=c,this.breakBefore=c.breakBefore)}}this.breakBefore=nt(this.getBreakValue("before"),this.breakBefore),this.atFlowStart&&Ye(this.breakBefore)&&(o.breakBefore=nt(o.breakBefore,this.breakBefore))}buildAfterPseudoElementBox(e,i,n){if(this.hasBox()){let r=this.style._pseudos;if(r&&r.after){let o=new zl(this.context,r.after,e,!1,this.flowChunk,i,n,!0),s=o.styleValue("content");At(s)&&(this.afterBox=o)}}}styleValue(e,i){if(!(e in this.styleValues)){let n=this.style[e];this.styleValues[e]=n?n.evaluate(this.context,e):i||null}return this.styleValues[e]}displayValue(){return this.styleValue("display",w.inline)}isBlock(){if(this.isBlockValue===null){let e=this.displayValue(),i=this.styleValue("position"),n=this.styleValue("float");this.isBlockValue=uw(e,i,n,this.isRoot)}return this.isBlockValue}hasBox(){return this.hasBoxValue===null&&(this.hasBoxValue=this.isParentBoxDisplayed&&this.displayValue()!==w.none&&!Nr(this.styleValue("position"))),this.hasBoxValue}getBreakValue(e){let i=null;if(this.isBlock()){let n=this.styleValue(`break-${e}`);n&&(i=n.toString())}return i}},jS=class{constructor(t){u(this,"context",t),u(this,"stack",[]),u(this,"atBlockStart",!0),u(this,"atFlowStart",!0),u(this,"atStartStack",[])}empty(){return this.stack.length===0}lastBox(){return this.stack[this.stack.length-1]}lastFlowName(){let t=this.lastBox();return t?t.flowChunk.flowName:null}isCurrentBoxDisplayed(){return this.stack.every(t=>t.displayValue()!==w.none)}push(t,e,i,n){let r=this.lastBox();n&&r&&n.flowName!==r.flowName&&this.atStartStack.push({atBlockStart:this.atBlockStart,atFlowStart:this.atFlowStart});let o=n||r.flowChunk,s=this.atFlowStart||!!n,a=this.isCurrentBoxDisplayed(),h=new GS(this.context,t,e,i,o,s||this.atBlockStart,s,a);return this.stack.push(h),this.atBlockStart=h.hasBox()?!h.beforeBox&&h.isBlock():this.atBlockStart,this.atFlowStart=h.hasBox()?!h.beforeBox&&s:this.atFlowStart,h}encounteredTextNode(t){let e=this.lastBox();if((t.nodeType===Node.TEXT_NODE||t.nodeType===Node.CDATA_SECTION_NODE)&&(this.atBlockStart||this.atFlowStart)&&e.hasBox()){let i=e.styleValue("white-space",w.normal).toString(),n=Ap(i);n&&!Ee(t,n)&&(this.atBlockStart=!1,this.atFlowStart=!1)}}pop(t){let e=this.stack.pop();if(e.buildAfterPseudoElementBox(t,this.atBlockStart,this.atFlowStart),this.atFlowStart&&e.afterBox){let n=e.afterBox.getBreakValue("before");e.flowChunk.breakBefore=nt(e.flowChunk.breakBefore,n)}let i=this.lastBox();if(i)if(i.flowName===e.flowName)e.hasBox()&&(this.atBlockStart=this.atFlowStart=!1);else{let n=this.atStartStack.pop();this.atBlockStart=n.atBlockStart,this.atFlowStart=n.atFlowStart}return e}nearestBlockStartOffset(t){if(!t.atBlockStart)return t.offset;let e=this.stack.length-1,i=this.stack[e];for(i===t&&(e--,i=this.stack[e]);e>=0;){if(i.flowName!==t.flowName)return t.offset;if(!i.atBlockStart||i.isRoot)return i.offset;t=i,i=this.stack[--e]}throw new Error("No block start offset found!")}},XS=class{constructor(t){u(this,"xmldoc",t),u(this,"map",{})}setAt(t,e){this.map[`e${t}`]=e}styleOf(t){return this.map[`e${this.xmldoc.getElementOffset(t)}`]}},Sc=class{constructor(t,e,i,n,r,o,s,a,h,l,c){u(this,"xmldoc",t),u(this,"scope",i),u(this,"context",n),u(this,"primaryFlows",r),u(this,"validatorSet",o),u(this,"counterListener",s),u(this,"root"),u(this,"cascadeHolder"),u(this,"last"),u(this,"rootStyle",{}),u(this,"bodyPropagatedStyle",{}),u(this,"styles"),u(this,"counterSnapshots",[]),u(this,"flows",{}),u(this,"flowChunks",[]),u(this,"flowListener",null),u(this,"flowToReach",null),u(this,"idToReach",null),u(this,"cascade"),u(this,"elementWindow"),u(this,"offsetMap"),u(this,"primary",!0),u(this,"primaryStack",[]),u(this,"rootBackgroundAssigned",!1),u(this,"rootLayoutAssigned",!1),u(this,"lastOffset"),u(this,"breakBeforeValues",{}),u(this,"boxStack"),u(this,"bodyReached",!0),this.root=t.root,this.cascadeHolder=e,this.styles=new XS(t),this.last=Km.atRoot(this.root),this.cascade=e.createInstance(n,s,a,t.lang,h,l,this.root,i,o,this.styles,c),this.offsetMap=new US;let d=t.getElementOffset(this.root);this.lastOffset=d,this.boxStack=new jS(n),this.offsetMap.addStuckRange(d);let p=this.getAttrStyle(this.root);this.elementWindow=this.cascade.pushElement(this.root,p,d),this.recordCounterSnapshot(d,this.cascade.counters,this.cascade.lastCounterChanges,this.cascade.lastCounterChangeTypes),this.postprocessTopStyle(p,!1),this.determineRootSizes(p),this.root.namespaceURI==="http://www.w3.org/1999/xhtml"&&(this.bodyReached=!1),this.primaryStack.push(!0),this.styles.setAt(d,p),this.lastOffset++,this.replayFlowElementsFromOffset(-1)}hasProp(t,e,i){let n=t[i];return n&&n.evaluate(this.context)!==e[i]}transferPropsToRoot(t,e){for(let i in e){let n=t[i];if(n)this.rootStyle[i]=n,delete t[i];else{let r=e[i];r&&(this.rootStyle[i]=new X(r,yp))}}}postprocessTopStyle(t,e){if(e)for(let i of["writing-mode","direction"])t[i]&&!this.rootStyle[i]&&(this.rootStyle[i]=t[i],this.bodyPropagatedStyle[i]=t[i]);else for(let i in t)Mn(i)&&(this.rootStyle[i]=t[i]);if(!this.rootBackgroundAssigned){let i=this.hasProp(t,this.validatorSet.backgroundProps,"background-color")?t["background-color"].evaluate(this.context):null,n=this.hasProp(t,this.validatorSet.backgroundProps,"background-image")?t["background-image"].evaluate(this.context):null;if(i&&!Z(i)||n&&!Z(n)){this.transferPropsToRoot(t,this.validatorSet.backgroundProps);for(let r of["background-position-x","background-position-y"]){let o=t[r];o&&(this.rootStyle[r]=o,delete t[r])}this.rootBackgroundAssigned=!0}}if(!this.rootLayoutAssigned){for(let i=0;i<Cc.length;i++)if(this.hasProp(t,this.validatorSet.layoutProps,Cc[i])){this.transferPropsToRoot(t,this.validatorSet.layoutProps),this.rootLayoutAssigned=!0;break}}}determineRootSizes(t){var e;let i=t["font-size"],n=!0;if(i&&!Z(i.value)){let h=i.evaluate(this.context),l=this.resolveRootSizingCalc(h),c=h instanceof Vt&&l instanceof B;if(l instanceof B){let d=l.num;switch(l.unit){case"em":case"rem":d*=this.context.initialFontSize;break;case"%":d*=this.context.initialFontSize/100;break;case"lh":case"rlh":d*=this.context.rootLineHeight;break;default:{let p=vi[l.unit];p&&(d*=p),n=c}}this.context.rootFontSize=d,this.context.isRelativeRootFontSize=n}}let r=(e=this.context.rootFontSize)!=null?e:this.context.initialFontSize,o=t["line-height"],s=null,a=!1;if(o&&!Z(o.value)){let h=o.evaluate(this.context),l=this.resolveRootSizingCalc(h);if(a=h instanceof Vt&&l instanceof B,l instanceof It)s=l.num*r;else if(l instanceof B){let c=l.num;switch(l.unit){case"em":case"rem":c*=r;break;case"%":c*=r/100;break;case"lh":case"rlh":c*=this.context.rootLineHeight;break;default:{let d=vi[l.unit];d&&(c*=d)}}s=c}}this.context.rootLineHeight=s??this.context.fontSize()*this.context.pref.lineHeight,this.context.isRootLineHeightFromRelativeCalc=a}resolveRootSizingCalc(t){return t instanceof Vt?t.visit(new _x(this.context)):t}getTopContainerStyle(){let t=0;for(;!this.bodyReached&&(t+=5e3,this.styleUntil(t,0)!=Number.POSITIVE_INFINITY););return this.rootStyle}getAttrStyle(t){if(t.style instanceof CSSStyleDeclaration){let e=t.getAttribute("style");if(e)return Bx(this.scope,this.validatorSet,this.xmldoc.url,e)}return{}}recordCounterSnapshot(t,e,i=[],n){let r={offset:t,counters:WS(e),changes:Array.from(i||[]),changeTypes:n?{...n}:void 0},o=this.counterSnapshots[this.counterSnapshots.length-1];if(o&&o.offset===t){this.counterSnapshots[this.counterSnapshots.length-1]=r;return}this.counterSnapshots.push(r)}getCounterSnapshotAtOffset(t){if(!this.counterSnapshots.length)return null;let e=yi(this.counterSnapshots.length,n=>t<this.counterSnapshots[n].offset),i=e===0?0:e-1;return this.counterSnapshots[i]||null}getLastCounterSnapshot(){return this.counterSnapshots.length?this.counterSnapshots[this.counterSnapshots.length-1]:null}getReachedOffset(){return this.lastOffset}replayFlowElementsFromOffset(t){if(t>=this.lastOffset)return;let e=this.context,i=this.xmldoc.getElementOffset(this.root);if(t<i){let o=this.getStyle(this.root,!1);if(!this.cascade.firstPageType){let l=o.page,c=l&&!Z(l.value)&&l.value.toString();c&&c.toLowerCase()!=="auto"&&(this.cascade.firstPageType=c)}let s=ge(o,"flow-into"),a=s?s.evaluate(e,"flow-into").toString():"body",h=this.encounteredFlowElement(a,o,this.root,i);this.boxStack.empty()&&this.boxStack.push(o,i,!0,h)}let n=this.xmldoc.getNodeByOffset(t),r=this.xmldoc.getNodeOffset(n,0,!1);if(!(r>=this.lastOffset))for(;;){if(n.nodeType!=1)r+=n.textContent.length;else{let s=n,a=this.getStyle(s,!1),h=a["flow-into"];if(h){let l=h.evaluate(e,"flow-into").toString();this.encounteredFlowElement(l,a,s,r)}r++}if(r>=this.lastOffset)break;let o=n.firstChild;if(o==null){for(;o=n.nextSibling,!o;)if(n=n.parentNode,n===this.root)return}n=o}}resetFlowChunkStream(t){this.flowListener=t;for(let e=0;e<this.flowChunks.length;e++)this.flowListener.encounteredFlowChunk(this.flowChunks[e],this.flows[this.flowChunks[e].flowName])}styleUntilFlowIsReached(t){this.flowToReach=t;let e=0;for(;!(this.flowToReach==null||(e+=5e3,this.styleUntil(e,0)==Number.POSITIVE_INFINITY)););}styleUntilIdIsReached(t){if(!t)return;this.idToReach=t;let e=0;for(;!(!this.idToReach||(e+=5e3,this.styleUntil(e,0)===Number.POSITIVE_INFINITY)););this.idToReach=null}encounteredFlowElement(t,e,i,n){let r=0,o=Number.POSITIVE_INFINITY,s=!1,a=!1,h=!1,l=e["flow-options"];if(l){let m=Vy(l.evaluate(this.context,"flow-options"));s=!!m.exclusive,a=!!m.static,h=!!m.last}let c=e["flow-linger"];c&&(o=Pu(c.evaluate(this.context,"flow-linger"),Number.POSITIVE_INFINITY));let d=e["flow-priority"];d&&(r=Pu(d.evaluate(this.context,"flow-priority"),0));let p=this.breakBeforeValues[n]||null,f=this.flows[t];if(!f){let m=this.boxStack.lastFlowName();f=this.flows[t]=new Ew(t,m,new ra(null))}let g=new Nw(t,i,n,r,o,s,a,h,p);return this.flowChunks.push(g),this.flowToReach==t&&(this.flowToReach=null),this.flowListener&&this.flowListener.encounteredFlowChunk(g,f),g}registerForcedBreakOffset(t,e,i){if(Ye(t)){let r=this.flows[i].forcedBreakOffsets;(r.length===0||r[r.length-1]<e)&&r.push(e)}let n=this.breakBeforeValues[e];this.breakBeforeValues[e]=nt(n,t)}styleUntil(t,e){let i=-1,n;if(t<=this.lastOffset&&(n=this.offsetMap.slippedByFixed(t),i=n+e,i<this.offsetMap.getMaxSlipped()))return this.offsetMap.fixedBySlipped(i);if(this.last==null)return Number.POSITIVE_INFINITY;let r=this.context;for(;this.last;){let o=this.last.firstChild;if(o==null)for(;this.last;){if(this.last.node.nodeType==1){this.cascade.popElement(this.last.node),this.primary=this.primaryStack.pop();let a=this.boxStack.pop(this.lastOffset),h=null;if(a.afterBox){let l=a.afterBox.getBreakValue("before");this.registerForcedBreakOffset(l,a.afterBox.atBlockStart?this.boxStack.nearestBlockStartOffset(a):a.afterBox.offset,a.flowName),h=a.afterBox.getBreakValue("after")}h=nt(h,a.getBreakValue("after")),this.registerForcedBreakOffset(h,this.lastOffset,a.flowName)}if(o=this.last.nextSibling,o)break;if(this.last=this.last.parent,!this.last)return t<this.lastOffset&&(i<0&&(n=this.offsetMap.slippedByFixed(t),i=n+e),i<=this.offsetMap.getMaxSlipped())?this.offsetMap.fixedBySlipped(i):Number.POSITIVE_INFINITY}let s=o;if(this.last=s,s.node.nodeType!=1)this.lastOffset+=s.node.textContent.length,this.boxStack.encounteredTextNode(s.node),this.primary?this.offsetMap.addStuckRange(this.lastOffset):this.offsetMap.addSlippedRange(this.lastOffset);else{let a=s.node,h=this.getAttrStyle(a);this.primaryStack.push(this.primary),this.elementWindow=this.cascade.pushElement(a,h,this.lastOffset),this.cascade.lastCounterChanges.length>0&&this.recordCounterSnapshot(this.lastOffset,this.cascade.counters,this.cascade.lastCounterChanges,this.cascade.lastCounterChangeTypes);let l=a.getAttribute("id")||a.getAttributeNS("http://www.w3.org/XML/1998/namespace","id");l&&l===this.idToReach&&(this.idToReach=null),!this.bodyReached&&a.localName=="body"&&a.parentNode==this.root&&(this.postprocessTopStyle(h,!0),this.bodyReached=!0);let c,d=h["flow-into"];if(d){let f=d.evaluate(r,"flow-into").toString(),g=this.encounteredFlowElement(f,h,a,this.lastOffset);this.primary=!!this.primaryFlows[f],c=this.boxStack.push(h,this.lastOffset,a===this.root,g)}else c=this.boxStack.push(h,this.lastOffset,a===this.root),a===this.xmldoc.body&&(c.breakBefore=nt(c.flowChunk.breakBefore,c.breakBefore));let p=this.boxStack.nearestBlockStartOffset(c);if(p===0||a===this.xmldoc.body){let f=h.page,g=f&&!Z(f.value)&&f.value.toString();!this.cascade.firstPageType&&g&&g.toLowerCase()!=="auto"&&(this.cascade.firstPageType=g)}if(this.registerForcedBreakOffset(c.breakBefore,p,c.flowName),c.beforeBox){let f=c.beforeBox.getBreakValue("after");this.registerForcedBreakOffset(f,c.beforeBox.atBlockStart?p:c.offset,c.flowName)}if(this.primary&&c.displayValue()===w.none&&(this.primary=!1),this.styles.setAt(this.lastOffset,h),this.lastOffset++,this.primary?this.offsetMap.addStuckRange(this.lastOffset):this.offsetMap.addSlippedRange(this.lastOffset),this.bodyReached&&p===0)continue;if(t<this.lastOffset&&(i<0&&(n=this.offsetMap.slippedByFixed(t),i=n+e),i<=this.offsetMap.getMaxSlipped()))return this.offsetMap.fixedBySlipped(i)}}return Number.POSITIVE_INFINITY}getStyle(t,e){let i=this.xmldoc.getElementOffset(t);return e&&(i=this.xmldoc.getNodeOffset(t,0,!0)),this.lastOffset<=i&&this.styleUntil(i,0),this.styles.styleOf(t)}processContent(t,e,i){}},Cc=["column-count","column-width","column-fill"],Ok=`OTTO${new Date().valueOf()}`;function $h(t){return Object.keys(t).filter(e=>!["src","font-family","font-display"].includes(e)).sort()}function qS(t){let e=new mi;for(let i of $h(t))e.append(`${i}:${t[i].toString()};`);return e.toString()}function YS(t,e){let i={};for(let n in t)i[n]=ge(t,n).evaluate(e,n);return i}var Vg=class{constructor(t){u(this,"properties",t),u(this,"fontTraitKey"),u(this,"src"),u(this,"blobURLs",[]),u(this,"blobs",[]),u(this,"family"),u(this,"styleElement",null),this.fontTraitKey=qS(this.properties),this.src=this.properties.src?this.properties.src.toString():null;let e=this.properties["font-family"];this.family=e?e.stringValue():null}traitsEqual(t){return this.fontTraitKey==t.fontTraitKey}makeAtRule(t,e){let i=new mi;i.append(`@font-face {
1877
+ }`;function Jo(e,t,i){let n=z("fetchFromURL"),r={method:i||"GET",mode:"cors"},s=n.suspend(),o={status:0,statusText:"",url:e,contentType:null,responseText:null,responseXML:null,responseBlob:null};return fetch(e,r).then(a=>{var h,l;if(o.status=a.status,o.url=a.url,o.statusText=a.statusText,o.contentType=(l=(h=a.headers.get("Content-Type"))==null?void 0:h.replace(/;.*$/,"").toLowerCase())!=null?l:null,!a.ok)throw new Error(`HTTP ${a.status}${a.statusText?` ${a.statusText}`:""}`);return t==="blob"?a.blob():t==="arraybuffer"?a.arrayBuffer():t==="json"?a.json():/\/aozorabunko\/[^/]+\/cards\/[^/]+\/files\/[^/.]+\.html$/.test(e)?(o.contentType="text/html",a.arrayBuffer().then(c=>new TextDecoder("Shift_JIS").decode(c))):(/^data:,(<|%3c)/i.test(e)&&(o.contentType="text/html"),a.text())}).then(a=>{t==="blob"&&a instanceof Blob?o.responseBlob=a:t==="arraybuffer"&&a instanceof ArrayBuffer?o.responseBlob=pp([a]):t==="json"?o.responseText=JSON.stringify(a):typeof a=="string"&&(o.responseText=a),s.schedule(o)}).catch(a=>{o.status>=400?Z.warn(`Error fetching ${e} (${o.status}${o.statusText?" "+o.statusText:""})`):Z.warn(a,`Error fetching ${e}`),s.schedule(o)}),n.result()}function pp(e,t){let i=t||"application/octet-stream";return new Blob(e,{type:i})}function Gv(e){let t=z("readBlob"),i=new FileReader,n=t.suspend(i);return i.addEventListener("load",()=>{n.schedule(i.result)},!1),i.readAsArrayBuffer(e),t.result()}function jv(e){return URL.createObjectURL(e)}var ah=class{constructor(e,t){u(this,"parser",e),u(this,"type",t),u(this,"resources",{}),u(this,"fetchers",{})}load(e,t,i){e=gt(e);let n=this.resources[e];return typeof n<"u"?I(n):this.fetch(e,t,i).get()}fetchInner(e,t,i){let n=z("fetch"),r=jo(e);r&&(e=wn(e));let s=Fe("user-agent.xml",Ti),o=!r&&e===s;return o&&(e=`data:application/xml,${encodeURIComponent(ap)}`),Jo(e,this.type).then(a=>{if(a.status>=400&&t)throw new Error((i||`Failed to fetch required resource: ${e}`)+` (${a.status}${a.statusText?" "+a.statusText:""})`);r?(e=Ua(e),a.url=Ua(a.url)):o&&(a.url=e=s),this.parser(a,this).then(h=>{delete this.fetchers[e],this.resources[e]=h,n.finish(h)})}),n.result()}fetch(e,t,i){if(e=gt(e),this.resources[e])return null;let n=this.fetchers[e];return n||(n=new Zo(()=>this.fetchInner(e,t,i),`Fetch ${e}`),this.fetchers[e]=n,n.start()),n}get(e){return this.resources[gt(e)]}delete(e){delete this.resources[gt(e)]}};function Xv(e,t){let i=e.responseText;return I(i?ql(i):null)}function qv(){return new ah(Xv,"text")}function kt(e,t,i){let n=new Zo(()=>{let r=z("loadElement"),s=r.suspend(e),o=!1,a=null,h=l=>{o||(o=!0,a!==null&&(clearTimeout(a),a=null),s.schedule(l?l.type:"timeout"))};if(e.addEventListener("load",h,!1),e.addEventListener("error",h,!1),e.addEventListener("abort",h,!1),e.namespaceURI=="http://www.w3.org/2000/svg")t&&e.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",t),a=setTimeout(h,300);else if(e.localName==="script")a=setTimeout(h,3e3);else if(t)if(e.localName==="img"){let l=e;l.loading==="lazy"&&(l.loading="eager"),l.src=t,i&&(l.alt=i),l.complete?setTimeout(()=>h(new Event("load")),0):a=setTimeout(h,3e4)}else e.src=t,i&&(e.alt=i);else(e.localName==="img"||e.localName==="embed"||e.localName==="object"||e.localName==="iframe")&&(e.complete?setTimeout(()=>h(new Event("load")),0):a=setTimeout(h,3e4));return r.result()},`loadElement ${t||e.localName}`);return n.start(),n}var Tu=0,Yv=16777216,fp=33554432,gp=50331648,mp=67108864,Kv=83886080,Zv=100663296,Qo=class{constructor(e){u(this,"scope",e),u(this,"flavor"),this.flavor="Author"}getCurrentToken(){return null}getScope(){return this.scope}error(e,t){}startStylesheet(e){this.flavor=e}tagSelector(e,t){}classSelector(e){}pseudoclassSelector(e,t){}pseudoelementSelector(e,t){}idSelector(e){}attributeSelector(e,t,i,n,r){}descendantSelector(){}childSelector(){}adjacentSiblingSelector(){}followingSiblingSelector(){}nextSelector(){}startSelectorRule(){}startFontFaceRule(){}startCounterStyleRule(e){}startFootnoteRule(e){}startViewportRule(){}startDefineRule(){}startRegionRule(){}startPageRule(){}startPageMarginBoxRule(e){}startWhenRule(e){}startMediaRule(e){this.startWhenRule(e)}startLayerRule(e){}layerStatementRule(e){}startFlowRule(e){}startPageTemplateRule(){}startPageMasterRule(e,t,i){}startPartitionRule(e,t,i){}startPartitionGroupRule(e,t,i){}startRuleBody(){}property(e,t,i){}endRule(){}startFuncWithSelector(e,t){}endFuncWithSelector(){}pushSelectorText(e){}getImportantSpecificity(){switch(this.flavor){case"UA":return Tu;case"User":return Zv;default:return Kv}}getBaseSpecificity(){switch(this.flavor){case"UA":return Tu;case"User":return Yv;default:return fp}}},Jv=class{constructor(e){u(this,"outer",e)}},Qv=class extends Qo{constructor(e,t){super(e),u(this,"tokenizer",null),u(this,"initialSlave"),u(this,"slave"),this.initialSlave=this.slave=t(this)}delegateTo(e){let t=e(new Jv(this.slave));return this.slave=t,t}takeBack(e){this.slave=e.outer}getCurrentToken(){return this.tokenizer?this.tokenizer.token():null}getScope(){return this.slave.getScope()}error(e,t){this.slave.error(e,t)}errorMsg(e,t){var i;Z.warn(e,(i=t?.toString())!=null?i:"")}startStylesheet(e){super.startStylesheet(e),this.slave=this.initialSlave,this.slave.startStylesheet(e)}tagSelector(e,t){this.slave.tagSelector(e,t)}classSelector(e){this.slave.classSelector(e)}pseudoclassSelector(e,t){this.slave.pseudoclassSelector(e,t)}pseudoelementSelector(e,t){this.slave.pseudoelementSelector(e,t)}idSelector(e){this.slave.idSelector(e)}attributeSelector(e,t,i,n,r){this.slave.attributeSelector(e,t,i,n,r)}descendantSelector(){this.slave.descendantSelector()}childSelector(){this.slave.childSelector()}adjacentSiblingSelector(){this.slave.adjacentSiblingSelector()}followingSiblingSelector(){this.slave.followingSiblingSelector()}nextSelector(){this.slave.nextSelector()}startSelectorRule(){this.slave.startSelectorRule()}startFontFaceRule(){this.slave.startFontFaceRule()}startCounterStyleRule(e){this.slave.startCounterStyleRule(e)}startFootnoteRule(e){this.slave.startFootnoteRule(e)}startViewportRule(){this.slave.startViewportRule()}startDefineRule(){this.slave.startDefineRule()}startRegionRule(){this.slave.startRegionRule()}startPageRule(){this.slave.startPageRule()}startPageMarginBoxRule(e){this.slave.startPageMarginBoxRule(e)}startWhenRule(e){this.slave.startWhenRule(e)}startLayerRule(e){this.slave.startLayerRule(e)}layerStatementRule(e){this.slave.layerStatementRule(e)}startFlowRule(e){this.slave.startFlowRule(e)}startPageTemplateRule(){this.slave.startPageTemplateRule()}startPageMasterRule(e,t,i){this.slave.startPageMasterRule(e,t,i)}startPartitionRule(e,t,i){this.slave.startPartitionRule(e,t,i)}startPartitionGroupRule(e,t,i){this.slave.startPartitionGroupRule(e,t,i)}startRuleBody(){this.slave.startRuleBody()}property(e,t,i){this.slave.property(e,t,i)}endRule(){this.slave.endRule()}startFuncWithSelector(e,t){this.slave.startFuncWithSelector(e,t)}endFuncWithSelector(){this.slave.endFuncWithSelector()}pushSelectorText(e){this.slave.pushSelectorText(e)}},Iu=class extends Qo{constructor(e,t,i){super(e),u(this,"owner",t),u(this,"delegation",i),u(this,"depth",0),this.flavor=t.flavor}getCurrentToken(){return this.owner.getCurrentToken()}error(e,t){this.owner.errorMsg(e,t)}startRuleBody(){this.depth++}endDelegation(){this.delegation&&this.owner.takeBack(this.delegation)}endRule(){--this.depth==0&&this.endDelegation()}},Zn=class extends Iu{constructor(e,t,i){super(e,t,i)}report(e){this.error(e,this.getCurrentToken())}reportAndSkip(e){this.report(e),this.owner.delegateTo(t=>new Iu(this.scope,this.owner,t))}startSelectorRule(){this.reportAndSkip("E_CSS_UNEXPECTED_SELECTOR")}startFontFaceRule(){this.reportAndSkip("E_CSS_UNEXPECTED_FONT_FACE")}startCounterStyleRule(e){this.reportAndSkip("E_CSS_UNEXPECTED_COUNTER_STYLE")}startFootnoteRule(e){this.reportAndSkip("E_CSS_UNEXPECTED_FOOTNOTE")}startViewportRule(){this.reportAndSkip("E_CSS_UNEXPECTED_VIEWPORT")}startDefineRule(){this.reportAndSkip("E_CSS_UNEXPECTED_DEFINE")}startRegionRule(){this.reportAndSkip("E_CSS_UNEXPECTED_REGION")}startPageRule(){this.reportAndSkip("E_CSS_UNEXPECTED_PAGE")}startWhenRule(e){this.reportAndSkip("E_CSS_UNEXPECTED_WHEN")}startLayerRule(e){this.reportAndSkip("E_CSS_UNEXPECTED_LAYER")}layerStatementRule(e){this.report("E_CSS_UNEXPECTED_LAYER")}startFlowRule(e){this.reportAndSkip("E_CSS_UNEXPECTED_FLOW")}startPageTemplateRule(){this.reportAndSkip("E_CSS_UNEXPECTED_PAGE_TEMPLATE")}startPageMasterRule(e,t,i){this.reportAndSkip("E_CSS_UNEXPECTED_PAGE_MASTER")}startPartitionRule(e,t,i){this.reportAndSkip("E_CSS_UNEXPECTED_PARTITION")}startPartitionGroupRule(e,t,i){this.reportAndSkip("E_CSS_UNEXPECTED_PARTITION_GROUP")}startFuncWithSelector(e,t){this.reportAndSkip("E_CSS_UNEXPECTED_SELECTOR_FUNC")}endFuncWithSelector(){this.reportAndSkip("E_CSS_UNEXPECTED_END_SELECTOR_FUNC")}property(e,t,i){this.error("E_CSS_UNEXPECTED_PROPERTY",this.getCurrentToken())}},He=[],mo=[],ke=[],De=[],Ht=[],lt=[],$e=[],Ke=[],Pe=[],Ye=[],pt=[],Ge=[],Ue=[],kn=55,En=56,Ps=57;He[1]=28,He[36]=29,He[7]=29,He[9]=29,He[14]=29,He[18]=29,He[50]=29,He[20]=30,He[13]=27,He[0]=200,mo[1]=46,mo[0]=200,lt[1]=2,lt[36]=4,lt[7]=6,lt[9]=8,lt[14]=10,lt[18]=14,lt[50]=42,ke[37]=11,ke[23]=12,ke[35]=56,ke[1]=1,ke[36]=3,ke[7]=5,ke[9]=7,ke[14]=9,ke[12]=13,ke[18]=55,ke[50]=58,ke[16]=41,De[37]=11,De[23]=12,De[35]=56,De[1]=1,De[36]=3,De[7]=5,De[9]=7,De[14]=9,De[18]=55,Ht[1]=2,Ht[36]=4,Ht[7]=6,Ht[9]=8,Ht[18]=14,Ht[50]=42,Ht[14]=10,Ht[12]=13,$e[1]=15,$e[7]=16,$e[4]=17,$e[5]=18,$e[3]=19,$e[2]=20,$e[8]=21,$e[27]=57,$e[16]=22,$e[19]=23,$e[6]=24,$e[11]=25,$e[17]=26,$e[13]=48,$e[31]=47,$e[23]=54,$e[0]=44,Ke[1]=31,Ke[4]=32,Ke[5]=32,Ke[3]=33,Ke[2]=34,Ke[10]=40,Ke[6]=38,Ke[31]=36,Ke[24]=36,Ke[32]=35,Pe[1]=45,Pe[16]=37,Pe[37]=37,Pe[38]=37,Pe[47]=37,Pe[48]=37,Pe[39]=37,Pe[49]=37,Pe[41]=37,Pe[26]=37,Pe[25]=37,Pe[23]=37,Pe[24]=37,Pe[19]=37,Pe[21]=37,Pe[36]=37,Pe[18]=37,Pe[22]=37,Pe[11]=39,Pe[12]=43,Pe[17]=49,Ye[0]=200,Ye[12]=50,Ye[13]=51,Ye[14]=50,Ye[15]=51,Ye[10]=50,Ye[11]=51,Ye[17]=53,pt[0]=200,pt[12]=50,pt[13]=52,pt[14]=50,pt[15]=51,pt[10]=50,pt[11]=51,pt[17]=53,Ge[0]=200,Ge[12]=50,Ge[13]=51,Ge[14]=50,Ge[15]=51,Ge[10]=50,Ge[11]=51,Ue[11]=0,Ue[16]=0,Ue[22]=1,Ue[18]=1,Ue[26]=2,Ue[25]=2,Ue[38]=3,Ue[37]=3,Ue[48]=3,Ue[47]=3,Ue[39]=3,Ue[49]=3,Ue[41]=3,Ue[23]=4,Ue[24]=4,Ue[36]=5,Ue[19]=5,Ue[21]=5,Ue[0]=6,Ue[kn]=2,Ue[En]=2;var as=class{constructor(e,t,i,n){u(this,"actions",e),u(this,"tokenizer",t),u(this,"handler",i),u(this,"baseURL",n),u(this,"valStack",[]),u(this,"namespacePrefixToURI",{}),u(this,"defaultNamespaceURI",null),u(this,"propName",null),u(this,"propImportant",!1),u(this,"exprContext"),u(this,"result",null),u(this,"importReady",!1),u(this,"importURL",null),u(this,"importCondition",null),u(this,"importHasLayer",!1),u(this,"importLayerNames",null),u(this,"errorBrackets",[]),u(this,"ruleStack",[]),u(this,"regionRule",!1),u(this,"pageRule",!1),u(this,"inStyleDeclaration",!1),this.exprContext=2}extractVals(e,t){let i=[],n=this.valStack;for(;t<n.length&&(i.push(n[t++]),t!==n.length);){if(n[t++]!==e)throw new Error("Unexpected state");t===n.length&&i.push(Re)}return i}valStackReduce(e,t){let i=this.valStack,n=i.length,r=0,s;do if(s=i[--n],e===")"&&s instanceof xn){if(s.text===")")r++;else if(s.text==="("){if(r===0)return null;r--}}while(typeof s<"u"&&typeof s!="string");let o=i.length-(n+1);if(o>1&&i.splice(n+1,o,new ee(i.slice(n+1,i.length))),e==",")return null;n++;do s=i[--n];while(typeof s<"u"&&(typeof s!="string"||s==","));if(o=i.length-(n+1),s=="("){if(e!=")"&&t.type!==0)return this.handler.error("E_CSS_MISMATCHED_C_PAR",t),this.actions=pt,null;let h=new zt(i[n-1],this.extractVals(",",n+1));if(i.splice(n-1,o+2,h),h.name==="var"){let l=h.values[0]instanceof he&&h.values[0].name;ze(l||void 0)||(this.handler.error(`E_CSS_INVALID_VAR ${h.toString()}`,t),this.actions=pt)}return h}if(e!=";"||n>=0)return this.handler.error("E_CSS_UNEXPECTED_VAL_END",t),this.actions=pt,null;if(o>1)return new _e(this.extractVals(",",n+1));let a=i[0];return a instanceof st?a:a?new xn(a.toString()):Re}exprError(e,t){this.actions=this.propName?pt:Ye,Z.warn(e,t.toString())}exprStackReduce(e,t){let i=this.valStack,n=this.handler,r=i.pop(),s;for(;;){let o=i.pop();if(e==11){let a=[r];for(;o==16;)a.unshift(i.pop()),o=i.pop();if(typeof o=="string"){if(o=="{"){for(;a.length>=2;){let h=a.shift(),l=a.shift(),c=new ry(n.getScope(),h,l);a.unshift(c)}return i.push(new q(a[0])),!0}else if(o=="("){let h=i.pop(),l=i.pop();r=new Cr(n.getScope(),Ga(l,h),a),e=0;continue}}if(o==10){r.isMediaName()&&(r=new py(n.getScope(),r)),e=0;continue}}else if(typeof o=="string"){i.push(o);break}if(o<0)if(o==-31)r=new Li(n.getScope(),r);else if(o==-24)r=new Tn(n.getScope(),r);else if(o==-Ps)r=new iy(n.getScope(),r);else return this.exprError("F_UNEXPECTED_STATE",t),!1;else{if(Ue[e]>Ue[o]){i.push(o);break}switch(s=i.pop(),o){case 26:r=new th(n.getScope(),s,r);break;case kn:r=new ny(n.getScope(),s,r);break;case En:r=new sy(n.getScope(),s,r);break;case 25:r=new ih(n.getScope(),s,r);break;case 38:r=new oy(n.getScope(),s,r);break;case 37:r=new ly(n.getScope(),s,r);break;case 48:r=new ay(n.getScope(),s,r);break;case 47:r=new qa(n.getScope(),s,r);break;case 39:case 49:r=new nh(n.getScope(),s,r);break;case 41:r=new hy(n.getScope(),s,r);break;case 23:r=new yd(n.getScope(),s,r);break;case 24:r=new vd(n.getScope(),s,r);break;case 36:r=new rh(n.getScope(),s,r);break;case 19:r=new wd(n.getScope(),s,r);break;case 21:r=new bd(n.getScope(),s,r);break;case 18:if(i.length>1)switch(i[i.length-1]){case 22:i.pop(),r=new dy(n.getScope(),i.pop(),s,r);break;case 10:if(s.isMediaName())r=new fy(n.getScope(),s,r);else return this.exprError("E_CSS_MEDIA_TEST",t),!1;break}else return this.exprError("E_CSS_EXPR_COND",t),!1;break;case 22:if(e!=18)return this.exprError("E_CSS_EXPR_COND",t),!1;case 10:return i.push(s),i.push(o),i.push(r),!1;default:return this.exprError("F_UNEXPECTED_STATE",t),!1}}}return i.push(r),!1}readLayerName(){let e=this.tokenizer,t=e.token();if(t.type!==1)return null;let i=[t.text];for(e.consume();;){if(t=e.token(),t.type!==9||t.precededBySpace)return i;i.push(t.text),e.consume()}}readSupportsTest(e){let t=e.type===6,i=this.tokenizer,n,r="";if(t)r=e.text,n=e.position+r.length+1;else if(e.type===10){let d=i.nthToken(1),p=i.nthToken(2);if(d.type===1&&p.type===18)i.consume(),i.consume(),r=d.text,n=p.position+1;else{if(d.type===10||d.type===6||d.type===1&&d.text.toLowerCase()==="not"&&(p.type===10||p.type===6))return null;n=e.position+1}}else return null;let s=0,o,a=0;for(;s>=0;)switch(i.consume(),o=i.token(),o.type){case 11:s--;break;case 10:case 6:s++;break;case 16:s===0&&a++;break;case 0:return this.exprError("E_CSS_UNEXPECTED_EOF",o),null}i.consume();let h=o.position,l=i.input.substring(n,h),c=t&&r==="selector"&&a>0?"":ze(r)?l:l.trim();return new gy(this.handler.getScope(),r,c,t)}readPseudoParams(){let e=[];for(;;){let t=this.tokenizer.token();switch(t.type){case 1:e.push(t.text);break;case 23:e.push("+");break;case 4:case 5:e.push(t.num);break;default:return e}this.tokenizer.consume()}}rawPseudoFunctionArg(e){let t=this.tokenizer,i=t.input.substring(e,t.token().position);return i.substring(i.indexOf("(")+1)}skipPseudoFunctionContents(){let e=0;for(;;){switch(this.tokenizer.token().type){case 0:return!1;case 11:if(e===0)return!0;e--;break;case 10:case 6:e++;break}this.tokenizer.consume()}}readNthPseudoParams(){let e=!1,t=this.tokenizer.token();if(t.type===23)e=!0,this.tokenizer.consume(),t=this.tokenizer.token();else if(t.type===1&&(t.text==="even"||t.text==="odd"))return this.tokenizer.consume(),[2,t.text==="odd"?1:0];switch(t.type){case 3:if(e&&t.num<0)return null;case 1:if(e&&t.text.charAt(0)==="-")return null;if(t.text==="n"||t.text==="-n"){if(e&&t.precededBySpace)return null;let i=t.text==="-n"?-1:1;t.type===3&&(i=t.num);let n=0;this.tokenizer.consume(),t=this.tokenizer.token();let r=t.type===24,s=t.type===23||r;if(s&&(this.tokenizer.consume(),t=this.tokenizer.token()),t.type===5){if(n=t.num,1/n===-1/0){if(n=0,s)return null}else if(n<0){if(s)return null}else if(n>=0&&!s)return null;this.tokenizer.consume()}else if(s)return null;return[i,r&&n>0?-n:n]}else if(t.text==="n-"||t.text==="-n-"){if(e&&t.precededBySpace)return null;let i=t.text==="-n-"?-1:1;if(t.type===3&&(i=t.num),this.tokenizer.consume(),t=this.tokenizer.token(),t.type===5)return t.num<0||1/t.num===-1/0?null:(this.tokenizer.consume(),[i,t.num])}else{let i=t.text.match(/^n(-[0-9]+)$/);if(i)return e&&t.precededBySpace?null:(this.tokenizer.consume(),[t.type===3?t.num:1,parseInt(i[1],10)]);if(i=t.text.match(/^-n(-[0-9]+)$/),i)return this.tokenizer.consume(),[-1,parseInt(i[1],10)]}return null;case 5:return e&&(t.precededBySpace||t.num<0)?null:(this.tokenizer.consume(),[0,t.num])}return null}makeCondition(e,t){let i=this.handler.getScope();if(t=t||i._true,e){let n=e.split(/\s+/);for(let r of n)switch(r){case"vertical":t=qt(i,t,new Li(i,new Je(i,"pref-horizontal")));break;case"horizontal":t=qt(i,t,new Je(i,"pref-horizontal"));break;case"day":t=qt(i,t,new Li(i,new Je(i,"pref-night-mode")));break;case"night":t=qt(i,t,new Je(i,"pref-night-mode"));break;default:t=i._false}}return t===i._true?null:new q(t)}isInsidePropertyOnlyRule(){switch(this.ruleStack[this.ruleStack.length-1]){case"[selector]":case"font-face":case"counter-style":case"-epubx-flow":case"-epubx-viewport":case"-epubx-define":case"-adapt-footnote-area":case"footnote":return!0}return!1}runParser(e,t,i,n,r,s){let o=this.handler,a=this.tokenizer,h=this.valStack,l,c,d,p,f,g=null,m,w=0,b=null;for(i&&(this.inStyleDeclaration=!0),n&&(this.exprContext=2,this.valStack.push("{"));e>0;--e){if(l=a.token(),r&&b===null&&(b=l.position-1,a.input[b]==="("&&b++),this.actions===$e&&this.errorBrackets.length>0&&(l.type===this.errorBrackets[this.errorBrackets.length-1]||l.type===17||l.type===31)){if(l.type===this.errorBrackets[this.errorBrackets.length-1]&&(this.errorBrackets.pop(),l.type===11&&this.valStackReduce(")",l))){a.consume();continue}h.push(new xn(l.toString())),a.consume();continue}switch(this.actions[l.type]){case 28:if(!this.inStyleDeclaration||a.nthToken(1).type!=18){this.isInsidePropertyOnlyRule()?(o.error("E_CSS_COLON_EXPECTED",a.nthToken(1)),this.actions=pt):(this.actions=lt,o.startSelectorRule());continue}this.propName=l.text,this.propImportant=!1,a.consume(),a.consume(),this.actions=$e,h.splice(0,h.length);continue;case 46:if(a.nthToken(1).type!=18){this.actions=pt,o.error("E_CSS_COLON_EXPECTED",a.nthToken(1));continue}this.propName=l.text,this.propImportant=!1,a.consume(),a.consume(),this.actions=$e,h.splice(0,h.length);continue;case 29:this.actions=lt,o.startSelectorRule();continue;case 1:if(!l.precededBySpace){this.actions=Ge,o.error("E_CSS_SPACE_EXPECTED",l);continue}o.descendantSelector();case 2:if(a.nthToken(1).type==34)if(a.consume(),a.consume(),d=this.namespacePrefixToURI[l.text],d!=null)switch(l=a.token(),l.type){case 1:o.tagSelector(d,l.text),r?this.actions=De:this.actions=ke,a.consume();break;case 36:o.tagSelector(d,null),r?this.actions=De:this.actions=ke,a.consume();break;default:this.actions=Ye,o.error("E_CSS_NAMESPACE",l)}else this.actions=Ye,o.error("E_CSS_UNDECLARED_PREFIX",l);else o.tagSelector(this.defaultNamespaceURI,l.text),r?this.actions=De:this.actions=ke,a.consume();continue;case 3:if(!l.precededBySpace){this.actions=Ge,o.error("E_CSS_SPACE_EXPECTED",l);continue}o.descendantSelector();case 4:if(a.nthToken(1).type==34)switch(a.consume(),a.consume(),l=a.token(),l.type){case 1:o.tagSelector(null,l.text),r?this.actions=De:this.actions=ke,a.consume();break;case 36:o.tagSelector(null,null),r?this.actions=De:this.actions=ke,a.consume();break;default:this.actions=Ye,o.error("E_CSS_NAMESPACE",l)}else o.tagSelector(this.defaultNamespaceURI,null),r?this.actions=De:this.actions=ke,a.consume();continue;case 5:l.precededBySpace&&o.descendantSelector();case 6:if(!l.text){o.error("E_CSS_SYNTAX",l),a.consume();continue}o.idSelector(l.text),r?this.actions=De:this.actions=ke,a.consume();continue;case 7:l.precededBySpace&&o.descendantSelector();case 8:o.classSelector(l.text),r?this.actions=De:this.actions=ke,a.consume();continue;case 55:l.precededBySpace&&o.descendantSelector();case 14:a.consume(),l=a.token();e:switch(l.type){case 1:o.pseudoclassSelector(l.text,null),a.consume(),r?this.actions=De:this.actions=ke;continue;case 6:switch(p=l.text.toLowerCase(),w=l.position,a.consume(),p){case"is":case"not":case"where":case"has":this.actions=lt,o.startFuncWithSelector(p),this.runParser(Number.POSITIVE_INFINITY,!1,!1,!1,!0,p==="has")?this.actions=ke:this.actions=Ge;continue;case"lang":case"href-epub-type":case"href-role-type":if(l=a.token(),l.type===1){m=[l.text],a.consume(),(p==="href-epub-type"||p==="href-role-type")&&a.token().type===16&&(a.consume(),l=a.token(),l.type===1&&(m.push(l.text),a.consume()));break}else break e;case"nth-child":case"nth-of-type":case"nth-last-child":case"nth-last-of-type":case"nth":if(m=this.readNthPseudoParams(),m)if(p==="nth-child"||p==="nth-last-child"){if(c=a.nthToken(0),c.type===1&&c.text==="of"){a.consume(),this.actions=lt,o.startFuncWithSelector(p,m),this.runParser(Number.POSITIVE_INFINITY,!1,!1,!1,!0,!1)?r?this.actions=De:this.actions=ke:this.actions=Ge;continue}break}else if(p==="nth"){if(c=a.nthToken(0),c.type===1&&c.text==="of")if(a.consume(),c=a.token(),c.type===1)m.push(c.text),a.consume();else break e;break}else break;else break e;case"dir":if(l=a.token(),l.type===1&&a.nthToken(1).type===11){m=[l.text],a.consume();break}if(m=[],!this.skipPseudoFunctionContents())break e;break;default:if(!this.skipPseudoFunctionContents())break e;m=[this.rawPseudoFunctionArg(w)]}if(l=a.token(),l.type==11){o.pseudoclassSelector(p,m),a.consume(),r?this.actions=De:this.actions=ke;continue}break}o.error("E_CSS_PSEUDOCLASS_SYNTAX",l),this.actions=Ye;continue;case 58:l.precededBySpace&&o.descendantSelector();case 42:switch(a.consume(),l=a.token(),l.type){case 1:o.pseudoelementSelector(l.text,null),r?this.actions=De:this.actions=ke,a.consume();continue;case 6:if(p=l.text.toLowerCase(),w=l.position,a.consume(),p=="nth-fragment"){if(m=this.readNthPseudoParams(),m===null)break}else if(p=="first-n-lines")m=this.readPseudoParams();else{if(!this.skipPseudoFunctionContents())break;m=[this.rawPseudoFunctionArg(w)]}if(l=a.token(),l.type==11){o.pseudoelementSelector(p,m),r?this.actions=De:this.actions=ke,a.consume();continue}break}o.error("E_CSS_PSEUDOELEM_SYNTAX",l),this.actions=Ye;continue;case 9:l.precededBySpace&&o.descendantSelector();case 10:{if(a.consume(),l=a.token(),l.type==1)p=l.text,a.consume();else if(l.type==36)p=null,a.consume();else if(l.type==34)p="";else{this.actions=Ge,o.error("E_CSS_ATTR",l),a.consume();continue}if(l=a.token(),l.type==34){if(d=p&&this.namespacePrefixToURI[p],d===void 0){this.actions=Ge,o.error("E_CSS_UNDECLARED_PREFIX",l),a.consume();continue}if(a.consume(),l=a.token(),l.type!=1){this.actions=Ge,o.error("E_CSS_ATTR_NAME_EXPECTED",l);continue}p=l.text,a.consume(),l=a.token()}else d="";switch(l.type){case 39:case 45:case 44:case 43:case 42:case 46:case 50:f=l.type,a.consume(),l=a.token();break;case 15:o.attributeSelector(d,p,0,null,null),r?this.actions=De:this.actions=ke,a.consume();continue;default:this.actions=Ge,o.error("E_CSS_ATTR_OP_EXPECTED",l);continue}let x=p,P=null;switch(l.type){case 1:case 2:{let y=l.text;if(a.consume(),l=a.token(),l.type==1){let C=l.text.toLowerCase();(C=="i"||C=="s")&&(P=C,a.consume(),l=a.token())}o.attributeSelector(d,x,f,y,P);break}default:this.actions=Ge,o.error("E_CSS_ATTR_VAL_EXPECTED",l);continue}if(l.type!=15){this.actions=Ge,o.error("E_CSS_ATTR",l);continue}r?this.actions=De:this.actions=ke,a.consume();continue}case 11:o.childSelector(),this.actions=Ht,a.consume();continue;case 12:o.adjacentSiblingSelector(),this.actions=Ht,a.consume();continue;case 56:o.followingSiblingSelector(),this.actions=Ht,a.consume();continue;case 13:this.regionRule?(this.ruleStack.push("-epubx-region"),this.regionRule=!1):this.pageRule?(this.ruleStack.push("page"),this.pageRule=!1,this.inStyleDeclaration=!0):(this.ruleStack.push("[selector]"),this.inStyleDeclaration=!0),o.startRuleBody(),this.actions=He,a.consume();continue;case 41:o.nextSelector(),this.actions=lt,a.consume();continue;case 15:h.push(D(l.text)),a.consume();continue;case 16:f=parseInt(l.text,16),h.push(new Id(l.text)),a.consume();continue;case 17:h.push(new It(l.num)),a.consume();continue;case 18:h.push(new ut(l.num)),a.consume();continue;case 19:h.push(new B(l.num,l.text)),a.consume();continue;case 20:h.push(new Q(l.text)),a.consume();continue;case 21:h.push(new Qe(Fe(l.text,this.baseURL))),a.consume();continue;case 57:h.push(new vy(l.text)),a.consume();continue;case 22:this.valStackReduce(",",l),h.push(","),a.consume();continue;case 23:h.push(Kn),a.consume();continue;case 24:p=l.text.toLowerCase(),p=="-epubx-expr"||p=="env"?(this.actions=Ke,this.exprContext=0,h.push("{")):(h.push(p),h.push("("),this.errorBrackets.length>0&&this.errorBrackets.push(11)),a.consume();continue;case 25:this.valStackReduce(")",l),a.consume();continue;case 47:if(a.consume(),l=a.token(),c=a.nthToken(1),l.type==1&&l.text.toLowerCase()=="important"&&(c.type==17||c.type==0||c.type==13)){a.consume(),this.propImportant=!0;continue}this.exprError("E_CSS_SYNTAX",l);continue;case 54:switch(c=a.nthToken(1),c.type){case 4:case 3:case 5:if(!c.precededBySpace){a.consume();continue}}h.push(new xn("+")),a.consume();continue;case 26:a.consume();case 48:g=this.valStackReduce(";",l),g&&this.propName&&o.property(this.propName,g,this.propImportant),this.actions=i?mo:He;continue;case 44:for(a.consume();h.length>0;){let x=h.length;if(g=this.valStackReduce(";",l),!g||h.length===x)break}return t?(this.result=g,!0):(this.propName&&g&&o.property(this.propName,g,this.propImportant),!0);case 31:if(c=a.nthToken(1),c.type==9)a.nthToken(2).type==10&&!a.nthToken(2).precededBySpace?(h.push(l.text,c.text,"("),a.consume()):(h.push(new Je(o.getScope(),Ga(l.text,c.text))),this.actions=Pe),a.consume();else{if(this.exprContext==2||this.exprContext==3)l.text.toLowerCase()=="not"?(a.consume(),h.push(new au(o.getScope(),!0,c.text))):(l.text.toLowerCase()=="only"&&(a.consume(),l=c),h.push(new au(o.getScope(),!1,l.text)));else if(this.exprContext===4&&l.text.toLowerCase()==="not"&&h[h.length-1]!==kn&&h[h.length-1]!==En&&(c.type===10||c.type===6)){h.push(-Ps),a.consume();continue}else h.push(new Je(o.getScope(),l.text));this.actions=Pe}a.consume();continue;case 38:if(this.exprContext===4){h.push(this.readSupportsTest(l)),this.actions=Pe;continue}h.push(null,l.text,"("),a.consume();continue;case 32:h.push(new it(o.getScope(),l.num)),a.consume(),this.actions=Pe;continue;case 33:p=l.text,p=="%"&&(this.propName&&this.propName.match(/height|^(top|bottom)$/)?p="vh":p="vw"),h.push(new is(o.getScope(),l.num,p)),a.consume(),this.actions=Pe;continue;case 34:h.push(new it(o.getScope(),l.text)),a.consume(),this.actions=Pe;continue;case 35:a.consume(),l=a.token(),l.type!=5||l.precededBySpace?this.exprError("E_CSS_SYNTAX",l):(h.push(new Pd(o.getScope(),l.num)),a.consume(),this.actions=Pe);continue;case 36:h.push(-l.type),a.consume();continue;case 37:this.actions=Ke,this.exprStackReduce(l.type,l),h.push(l.type),a.consume();continue;case 45:l.text.toLowerCase()==="and"&&h[h.length-2]!==En&&h[h.length-2]!==-Ps?(this.actions=Ke,this.exprStackReduce(kn,l),h.push(kn),a.consume()):l.text.toLowerCase()==="or"&&h[h.length-2]!==kn&&h[h.length-2]!==-Ps?(this.actions=Ke,this.exprStackReduce(En,l),h.push(En),a.consume()):this.exprError("E_CSS_SYNTAX",l);continue;case 39:this.exprStackReduce(l.type,l)&&(this.actions=$e),a.consume();continue;case 43:this.exprStackReduce(11,l)&&(this.propName||this.exprContext==3?this.exprError("E_CSS_UNEXPECTED_BRC",l):(this.exprContext==1?o.startWhenRule(h.pop()):o.startMediaRule(h.pop()),this.ruleStack.push("media"),o.startRuleBody(),this.actions=He)),a.consume();continue;case 49:if(this.exprStackReduce(11,l))return this.propName||this.exprContext!=3?(this.exprError("E_CSS_UNEXPECTED_SEMICOL",l),this.actions=He,a.consume(),!1):(this.importCondition=h.pop(),this.importReady=!0,this.actions=He,a.consume(),!1);a.consume();continue;case 40:if(this.exprContext===4){let x=this.readSupportsTest(l);if(x){h.push(x),this.actions=Pe;continue}}h.push(l.type),a.consume();continue;case 27:if(this.actions=He,a.consume(),o.endRule(),this.inStyleDeclaration=!1,this.ruleStack.length)switch(this.ruleStack.pop(),this.ruleStack[this.ruleStack.length-1]){case"page":case"-epubx-page-master":case"-epubx-partition-group":this.inStyleDeclaration=!0}continue;case 30:switch(p=l.text.toLowerCase(),p){case"import":if(a.consume(),l=a.token(),l.type==2||l.type==8){if(this.importURL=l.text,a.consume(),l=a.token(),l.type==1&&l.text.toLowerCase()=="layer")this.importHasLayer=!0,this.importLayerNames=null,a.consume(),l=a.token();else if(l.type==6&&l.text.toLowerCase()=="layer"){a.consume();let x=this.readLayerName();if(l=a.token(),!x||l.type!=11){o.error("E_CSS_IMPORT_SYNTAX",l),this.actions=Ye;continue}this.importHasLayer=!0,this.importLayerNames=x,a.consume(),l=a.token()}if(l.type==17||l.type==0)return this.importReady=!0,a.consume(),!1;this.propName=null,this.exprContext=3,this.actions=Ke,h.push("{");continue}o.error("E_CSS_IMPORT_SYNTAX",l),this.actions=Ye;continue;case"namespace":switch(a.consume(),l=a.token(),l.type){case 1:if(p=l.text,a.consume(),l=a.token(),(l.type==2||l.type==8)&&a.nthToken(1).type==17){this.namespacePrefixToURI[p]=l.text,a.consume(),a.consume();continue}break;case 2:case 8:if(a.nthToken(1).type==17){this.defaultNamespaceURI=l.text,a.consume(),a.consume();continue}break}o.error("E_CSS_NAMESPACE_SYNTAX",l),this.actions=Ye;continue;case"charset":if(a.consume(),l=a.token(),l.type==2&&a.nthToken(1).type==17){p=l.text.toLowerCase(),p!="utf-8"&&p!="utf-16"&&o.error(`E_CSS_UNEXPECTED_CHARSET ${p}`,l),a.consume(),a.consume();continue}o.error("E_CSS_CHARSET_SYNTAX",l),this.actions=Ye;continue;case"font-face":case"-epubx-page-template":case"-epubx-define":case"-epubx-viewport":if(a.nthToken(1).type==12){switch(a.consume(),a.consume(),p){case"font-face":o.startFontFaceRule(),this.inStyleDeclaration=!0;break;case"-epubx-page-template":o.startPageTemplateRule();break;case"-epubx-define":o.startDefineRule(),this.inStyleDeclaration=!0;break;case"-epubx-viewport":o.startViewportRule(),this.inStyleDeclaration=!0;break}this.ruleStack.push(p),o.startRuleBody();continue}break;case"-epubx-region":a.consume(),o.startRegionRule(),this.regionRule=!0,this.actions=lt;continue;case"page":a.consume(),o.startPageRule(),this.pageRule=!0,this.actions=Ht;continue;case"-adapt-footnote-area":case"footnote":switch(a.consume(),l=a.token(),l.type){case 12:a.consume(),o.startFootnoteRule(null),this.ruleStack.push(p),o.startRuleBody(),this.inStyleDeclaration=!0;continue;case 50:if(a.consume(),l=a.token(),l.type==1&&a.nthToken(1).type==12){let x=l.text;a.consume(),a.consume(),o.startFootnoteRule(x),this.ruleStack.push(p==="footnote"?"footnote":"-adapt-footnote-area"),o.startRuleBody(),this.inStyleDeclaration=!0;continue}break}break;case"top-left-corner":case"top-left":case"top-center":case"top-right":case"top-right-corner":case"right-top":case"right-middle":case"right-bottom":case"bottom-right-corner":case"bottom-right":case"bottom-center":case"bottom-left":case"bottom-left-corner":case"left-bottom":case"left-middle":case"left-top":if(a.consume(),l=a.token(),l.type==12){a.consume(),o.startPageMarginBoxRule(p),this.ruleStack.push(p),o.startRuleBody(),this.inStyleDeclaration=!0;continue}break;case"-epubx-when":a.consume(),this.propName=null,this.exprContext=1,this.actions=Ke,h.push("{");continue;case"media":a.consume(),this.propName=null,this.exprContext=2,this.actions=Ke,h.push("{");continue;case"supports":a.consume(),this.propName=null,this.exprContext=4,this.actions=Ke,h.push("{");continue;case"layer":{if(a.consume(),l=a.token(),l.type==12){a.consume(),o.startLayerRule(null),this.ruleStack.push(p),o.startRuleBody();continue}let x=[];for(;;){let P=this.readLayerName();if(!P){x.length=0;break}if(x.push(P),a.token().type!=16)break;a.consume()}if(x.length>0){if(l=a.token(),l.type==17){a.consume(),o.layerStatementRule(x);continue}if(l.type==12&&x.length==1){a.consume(),o.startLayerRule(x[0]),this.ruleStack.push(p),o.startRuleBody();continue}}break}case"-epubx-flow":if(a.nthToken(1).type==1&&a.nthToken(2).type==12){o.startFlowRule(a.nthToken(1).text),a.consume(),a.consume(),a.consume(),this.ruleStack.push(p),o.startRuleBody(),this.inStyleDeclaration=!0;continue}break;case"counter-style":if(a.nthToken(1).type==1&&a.nthToken(2).type==12){o.startCounterStyleRule(a.nthToken(1).text),a.consume(),a.consume(),a.consume(),this.ruleStack.push(p),o.startRuleBody(),this.inStyleDeclaration=!0;continue}break;case"-epubx-page-master":case"-epubx-partition":case"-epubx-partition-group":{a.consume(),l=a.token();let x=null,P=null,y=[];for(l.type==1&&(x=l.text,a.consume(),l=a.token()),l.type==18&&a.nthToken(1).type==1&&(P=a.nthToken(1).text,a.consume(),a.consume(),l=a.token());l.type==6&&l.text.toLowerCase()=="class"&&a.nthToken(1).type==1&&a.nthToken(2).type==11;)y.push(a.nthToken(1).text),a.consume(),a.consume(),a.consume(),l=a.token();if(l.type==12){switch(a.consume(),p){case"-epubx-page-master":o.startPageMasterRule(x,P,y);break;case"-epubx-partition":o.startPartitionRule(x,P,y);break;case"-epubx-partition-group":o.startPartitionGroupRule(x,P,y);break}this.ruleStack.push(p),o.startRuleBody(),this.inStyleDeclaration=!0;continue}break}case"":o.error(`E_CSS_UNEXPECTED_AT${p}`,l),this.actions=Ge;continue;default:o.error(`E_CSS_AT_UNKNOWN ${p}`,l),this.actions=Ye;continue}o.error(`E_CSS_AT_SYNTAX ${p}`,l),this.actions=Ye;continue;case 50:this.errorBrackets.push(l.type+1),a.consume();continue;case 52:if(this.errorBrackets.length==0){this.actions=He;continue}case 51:if(r&&this.errorBrackets.length==0&&l.type==11)return a.consume(),o.endFuncWithSelector(),!0;this.errorBrackets.length>0&&this.errorBrackets[this.errorBrackets.length-1]==l.type&&this.errorBrackets.pop(),this.errorBrackets.length==0&&l.type==13&&(this.actions=He),a.consume();continue;case 53:if(r&&this.errorBrackets.length==0&&l.type==16){o.nextSelector(),this.actions=lt,b=l.position+1,a.consume();continue}this.errorBrackets.length==0&&(this.actions=He),a.consume();continue;case 200:return!0;default:if(n)return this.exprStackReduce(11,l)?(this.result=h.pop(),!0):!1;if(r){if(this.actions===Ge)switch(l.type){case 16:this.errorBrackets.length==0&&(o.nextSelector(),b=l.position+1,this.actions=lt),a.consume();continue;case 11:if(this.errorBrackets.length==0)return o.endFuncWithSelector(),a.consume(),!0;this.errorBrackets.length>0&&this.errorBrackets[this.errorBrackets.length-1]==l.type&&this.errorBrackets.pop(),a.consume();continue;case 12:case 14:case 10:this.errorBrackets.push(l.type+1),a.consume();continue;case 6:this.errorBrackets.push(11),a.consume();continue;case 13:case 15:this.errorBrackets.length>0&&this.errorBrackets[this.errorBrackets.length-1]==l.type&&this.errorBrackets.pop(),a.consume();continue;default:a.consume();continue}switch(l.type){case 16:case 11:if(this.actions===lt)o.error("E_CSS_SYNTAX",l);else{let x=a.input.substring(b,l.position);o.pushSelectorText(x),b=l.position+1}if(l.type===16){o.nextSelector(),this.actions=lt,a.consume();continue}else return o.endFuncWithSelector(),a.consume(),!0;case 37:case 23:case 35:if(s){this.actions=ke;continue}break;case 12:case 14:case 10:this.errorBrackets.push(l.type+1);break}o.error("E_CSS_SYNTAX",l),a.consume(),this.actions=Ge;continue}if(this.actions!==Ye&&this.actions!==Ge&&this.actions!==pt){if(l.type==54)o.error("E_CSS_SYNTAX",l);else if(this.actions===$e){switch(l.type){case 10:case 12:case 14:this.errorBrackets.push(l.type+1);break}h.push(new xn(l.toString())),a.consume();continue}else if(l.type===12&&this.actions==Ke&&h.length>0){o.startMediaRule(h.pop()),this.ruleStack.push("media"),o.startRuleBody(),this.actions=He,a.consume();continue}else{if(l.type===17&&this.actions==Ke)return this.actions=He,a.consume(),!1;o.error("E_CSS_SYNTAX",l)}this.isInsidePropertyOnlyRule()?this.actions=pt:this.actions=Ge;continue}a.consume();continue}}return!1}},yp=class extends Qo{constructor(e){super(e)}error(e,t){Z.warn(e,t.toString())}};function ew(e,t,i,n,r){let s=i??"",o=Jy(e.input);return o!==e.input?Au(new xt(o,t),t,s,n,r):Au(e,t,s,n,r)}function Au(e,t,i,n,r){let s=z("parseStylesheet"),o=new as(He,e,t,i),a=null;return r&&(a=bp(new xt(r,t),t,i)),a=o.makeCondition(n,a&&a.toExpr()),a&&(t.startMediaRule(a),t.startRuleBody()),s.loop(()=>{for(;!o.runParser(100,!1,!1,!1,!1);){if(o.importReady){let l=Fe(o.importURL,i);o.importHasLayer&&(t.startLayerRule(o.importLayerNames),t.startRuleBody()),o.importCondition&&(t.startMediaRule(o.importCondition),t.startRuleBody());let c=z("parseStylesheet.import");return wp(l,t,null,null).then(()=>{o.importCondition&&t.endRule(),o.importHasLayer&&t.endRule(),o.importReady=!1,o.importURL=null,o.importCondition=null,o.importHasLayer=!1,o.importLayerNames=null,c.finish(!0)}),c.result()}let h=s.timeSlice();if(h.isPending)return h}return I(!1)}).then(()=>{a&&t.endRule(),s.finish(!0)}),s.result()}function vp(e,t,i,n,r){return hn("parseStylesheetFromText",s=>{let o=new xt(e,t);ew(o,t,i,n,r).thenFinish(s)},(s,o)=>{Z.warn(o,`Failed to parse stylesheet text: ${e}`),s.finish(!1)})}function wp(e,t,i,n){return hn("parseStylesheetFromURL",r=>{Jo(e).then(s=>{s.responseText?vp(s.responseText,t,e,i,n).then(o=>{o||Z.warn(`Failed to parse stylesheet from ${e}`),r.finish(!0)}):r.finish(!0)})},(r,s)=>{Z.warn(s,"Exception while fetching and parsing:",e),r.finish(!0)})}function _i(e,t,i){let n=new as($e,t,new yp(e),i);return n.runParser(Number.POSITIVE_INFINITY,!0,!1,!1,!1),n.result}function tw(e,t,i){new as(mo,e,t,i).runParser(Number.POSITIVE_INFINITY,!1,!0,!1,!1)}function bp(e,t,i){let n=new as(Ke,e,t,i);return n.runParser(Number.POSITIVE_INFINITY,!1,!1,!0,!1),n.result}var iw={"z-index":!0,"column-count":!0,"flow-linger":!0,opacity:!0,page:!0,"flow-priority":!0,utilization:!0};function nw(e){return!!(e&&iw[e])}function rw(e,t,i){if(t instanceof we&&t.str==="viv-leader")return new q(t);if(i==="content"&&t instanceof we)return new q(t);let n=t.evaluate(e);switch(typeof n){case"number":return nw(i)?n==Math.round(n)?new ut(n):new It(n):new B(n,"px");case"string":return n?i==="content"?new Q(n):_i(t.scope,new xt(n,null),""):Re;case"boolean":return n?v._true:v._false;case"undefined":return Re}throw new Error("E_UNEXPECTED")}var sw="data-vivliostyle-flow-root";function ow(e){return e.getAttribute(sw)==="true"}function Fu(e){let t=e?.toString()||"block",i;switch(t){case"inline-flex":i="flex";break;case"inline-grid":i="grid";break;case"inline-table":i="table";break;case"initial":case"unset":case"inline":case"table-row-group":case"table-column":case"table-column-group":case"table-header-group":case"table-footer-group":case"table-row":case"table-cell":case"table-caption":case"inline-block":i="block";break;default:i=t}return D(i)}function Ur(e){return e===v.absolute||e===v.fixed}function Pr(e){return e instanceof zt&&e.name==="running"}function xp(e,t,i,n){return e===v.none||(Ur(t)?(i=v.none,e=Fu(e)):(i&&i!==v.none&&!J(i)||n)&&(e=Fu(e))),{display:e,position:t,float:i}}function aw(e,t,i,n){return xp(e,t,i,n).display===v.block}function ea(e){return e instanceof he||e instanceof ee||typeof e=="string"}function Wt(e){if(!ea(e))return!1;let t=e.toString();switch(t){case"inline":case"inline-block":case"inline-flex":case"inline-grid":case"ruby":case"inline-table":return!0;default:return t.includes("inline")}}function pr(e){return ea(e)?e.toString().includes("list-item"):!1}function lw(e){if(!ea(e))return!1;switch(e.toString()){case"block":case"flex":case"grid":case"table":case"list-item":case"flow-root":return!0;default:return!1}}function Sp(e){if(!ea(e))return!1;switch(e.toString()){case"ruby-base":case"ruby-text":case"ruby-base-container":case"ruby-text-container":return!0;default:return!1}}function hw(e,t,i,n,r,s,o){return r=r||s||v.horizontal_tb,!!o||!!i&&i!==v.none&&!J(i)||Ur(t)||e===v.inline_block||e===v.table_cell||e===v.table_caption||e==v.flex||e==v.grid||e==v.flow_root||(e===v.block||e===v.list_item)&&!!n&&n!==v.visible&&n!==v.clip&&!J(n)||!!s&&r!==s}function uw(e){return e===v.relative||e===v.absolute||e===v.fixed}function An(e){var t,i;return((t=e?.style)==null?void 0:t["box-decoration-break"])==="clone"||((i=e?.style)==null?void 0:i["-webkit-box-decoration-break"])==="clone"}function Cp(e){let t=e.getAttribute("data-viv-box-break");return t?t.split(" "):[]}function Pp(e,t){e.setAttribute("data-viv-box-break",t.join(" "))}function Ct(e,t){let i=Cp(e);i.includes(t)||(i.push(t),Pp(e,i))}function cw(e){let t=e.getAttribute("data-viv-margin-discard");return t?t.split(" "):[]}function dw(e,t){e.setAttribute("data-viv-margin-discard",t.join(" "))}function Pa(e,t){let i=cw(e);i.includes(t)||(i.push(t),dw(e,i))}function pw(e){let t=e.name,i=e.value;switch(t){case"page-break-before":case"page-break-after":case"page-break-inside":return{name:t.replace(/^page-/,""),value:i===v.always?v.page:i,important:e.important};default:return e}}var nl={page:!0,left:!0,right:!0,recto:!0,verso:!0,column:!0,region:!0};function Ze(e){return e!=null&&!!nl[e]}var fw={left:!0,right:!0,recto:!0,verso:!0};function un(e){return e!=null&&!!fw[e]}function ka(e){return Ze(e)&&e!=="column"&&e!=="region"}var gw={avoid:!0,"avoid-page":!0,"avoid-column":!0,"avoid-region":!0};function yo(e){return e!=null&&!!gw[e]}function nt(e,t){if(e)if(t){if(un(t))return t;if(un(e))return e;{let i=Ze(e),n=Ze(t);if(i&&n)switch(t){case"column":return e;case"region":return e==="column"?t:e;default:return t}else return n?t:i?e:yo(t)?t:yo(e)?e:t}}else return e;else return t}function Ru(e){return e!=null&&Ze(e)?e:"auto"}Ft("SIMPLE_PROPERTY",pw);var kr=Fm(Lm());function mw(e,t){return(0,kr.default)(e,t,0)}function Lu(e){return e.reduce((t,i)=>i[0]===kr.default.DELETE?t:t+i[1],"")}function yw(e,t){return kp(e,t,1)}function vw(e,t){return kp(e,t,-1)}function kp(e,t,i){let n=0,r=0;return e.some(s=>{for(let o=0;o<s[1].length;o++){switch(s[0]*i){case kr.default.INSERT:n++;break;case kr.default.DELETE:n--,r++;break;case kr.default.EQUAL:r++;break}if(r>t)return!0}return!1}),Math.max(Math.min(t,r-1)+n,0)}var rl;(e=>{function t(i){return i.formattingContextType==="Block"}e.isInstanceOfBlockFormattingContext=t})(rl||(rl={}));var _n;(e=>{let t;(i=>(i.INLINE="inline",i.COLUMN="column",i.REGION="region",i.PAGE="page"))(t=e.FloatReference||(e.FloatReference={}))})(_n||(_n={}));var sl;(e=>{function t(i){return i&&i.flagmentLayoutConstraintType=="AfterIfContinue"}e.isInstanceOfAfterIfContinuesLayoutConstraint=t})(sl||(sl={}));var rn;(e=>{function t(n){return n.formattingContextType==="RepetitiveElementsOwner"||bi.isInstanceOfTableFormattingContext(n)}e.isInstanceOfRepetitiveElementsOwnerFormattingContext=t;function i(n){return n?n.flagmentLayoutConstraintType==="RepetitiveElementsOwner"||bi.isInstanceOfTableRowLayoutConstraint(n):!1}e.isInstanceOfRepetitiveElementsOwnerLayoutConstraint=i})(rn||(rn={}));var bi;(e=>{function t(n){return n.formattingContextType==="Table"}e.isInstanceOfTableFormattingContext=t;function i(n){return n&&n.flagmentLayoutConstraintType==="TableRow"}e.isInstanceOfTableRowLayoutConstraint=i})(bi||(bi={}));var xi;(e=>{let t;(n=>(n[n.IGNORE=0]="IGNORE",n[n.NEWLINE=1]="NEWLINE",n[n.PRESERVE=2]="PRESERVE"))(t=e.Whitespace||(e.Whitespace={}));let i;(n=>(n[n.NONE=0]="NONE",n[n.CONTENT=1]="CONTENT",n[n.ROOTLESS=2]="ROOTLESS",n[n.ROOTED=3]="ROOTED"))(i=e.ShadowType||(e.ShadowType={}))})(xi||(xi={}));var ww={transform:!0,"transform-origin":!0},bw={top:!0,bottom:!0,left:!0,right:!0},lh=class{constructor(e,t,i){u(this,"target",e),u(this,"name",t),u(this,"value",i)}},xw={show:function(e){e.style.visibility="visible"},hide:function(e){e.style.visibility="hidden"},play:function(e){e.currentTime=0,e.play()},pause:function(e){e.pause()},resume:function(e){e.play()},mute:function(e){e.muted=!0},unmute:function(e){e.muted=!1}};function Sw(e,t){let i=xw[t];return i?()=>{for(let n=0;n<e.length;n++)try{i(e[n])}catch{}}:null}var ol=class fr extends Zl{constructor(t,i){super(),u(this,"container",t),u(this,"bleedBox",i),u(this,"pageAreaElement",null),u(this,"delayedItems",[]),u(this,"hrefHandler"),u(this,"elementsById",{}),u(this,"dimensions",{width:0,height:0}),u(this,"isFirstPage",!1),u(this,"isLastPage",!1),u(this,"isBlankPage",!1),u(this,"isAutoPageWidth",!0),u(this,"isAutoPageHeight",!0),u(this,"spineIndex",0),u(this,"position",null),u(this,"offset",-1),u(this,"side",null),u(this,"fetchers",[]),u(this,"marginBoxes",{top:{},bottom:{},left:{},right:{}}),u(this,"pageFloatLayoutContext",null),u(this,"pageType",null),this.hrefHandler=n=>{let r=n.currentTarget,s=r.getAttribute("href")||r.getAttributeNS("http://www.w3.org/1999/xlink","href");if(s){let o={type:"hyperlink",target:null,currentTarget:null,anchorElement:r,href:s,preventDefault(){n.preventDefault()}};this.dispatchEvent(o)}}}setAutoPageWidth(t){this.isAutoPageWidth=t,t?this.container.setAttribute(fr.AUTO_PAGE_WIDTH_ATTRIBUTE,"true"):this.container.removeAttribute(fr.AUTO_PAGE_WIDTH_ATTRIBUTE)}setAutoPageHeight(t){this.isAutoPageHeight=t,t?this.container.setAttribute(fr.AUTO_PAGE_HEIGHT_ATTRIBUTE,"true"):this.container.removeAttribute(fr.AUTO_PAGE_HEIGHT_ATTRIBUTE)}registerElementWithId(t,i){let n=this.elementsById[i];n?n.push(t):this.elementsById[i]=[t]}finish(t,i){Object.keys(this.elementsById).forEach(s=>{let o=this.elementsById[s];for(let a=0;a<o.length;)this.container.contains(o[a])?a++:o.splice(a,1);o.length===0&&delete this.elementsById[s]});let n=this.delayedItems;for(let s=0;s<n.length;s++){let o=n[s];o.target===this.container&&o.name==="transform"&&!this.isAutoPageWidth&&!this.isAutoPageHeight||F(o.target,o.name,o.value.toString())}let r=i.getElementClientRect(this.container);this.dimensions.width=r.width,this.dimensions.height=r.height;for(let s=0;s<t.length;s++){let o=t[s],a=this.elementsById[o.ref],h=this.elementsById[o.observer];if(a&&h){let l=Sw(a,o.action);if(l)for(let c=0;c<h.length;c++)h[c].addEventListener(o.event,l,!1)}}}};u(ol,"AUTO_PAGE_WIDTH_ATTRIBUTE","data-vivliostyle-auto-page-width"),u(ol,"AUTO_PAGE_HEIGHT_ATTRIBUTE","data-vivliostyle-auto-page-height");var Ep=ol,bt=xi.Whitespace;function Np(e){switch(e){case"normal":case"nowrap":return bt.IGNORE;case"pre-line":return bt.NEWLINE;case"pre":case"pre-wrap":case"break-spaces":return bt.PRESERVE;default:return null}}function Ee(e,t){return e?e.nodeType==1?!1:Tp(e.textContent,t):!0}function Tp(e,t){switch(t){case bt.PRESERVE:return e.length==0;case bt.NEWLINE:return!!e.match(/^[ \t]*$/);case bt.IGNORE:default:return!!e.match(/^[ \t\r\n\f]*$/)}}var Cw=class{constructor(e,t,i){u(this,"flowName",e),u(this,"parentFlowName",t),u(this,"formattingContext",i),u(this,"forcedBreakOffsets",[])}},Pw=class{constructor(e,t,i,n,r,s,o,a,h){u(this,"flowName",e),u(this,"element",t),u(this,"startOffset",i),u(this,"priority",n),u(this,"linger",r),u(this,"exclusive",s),u(this,"repeated",o),u(this,"last",a),u(this,"breakBefore",h),u(this,"startPage",-1)}isBetter(e){return this.exclusive?!e.exclusive||this.priority>e.priority?!0:this.last:!1}};function kw(e,t){return e.top-t.top}function Ew(e,t){return t.right-e.right}function Ip(e,t){var i,n;return e===t?!0:!e||!t?!1:(e.node===t.node||!!e.shadowContext&&!!t.shadowContext&&e.shadowType===xi.ShadowType.ROOTLESS&&t.shadowType===xi.ShadowType.ROOTLESS&&((i=e.node)==null?void 0:i.outerHTML)===((n=t.node)==null?void 0:n.outerHTML))&&e.shadowType===t.shadowType&&al(e.shadowContext,t.shadowContext)&&al(e.nodeShadow,t.nodeShadow)&&Ip(e.shadowSibling,t.shadowSibling)}function Di(e,t){if(e===t)return!0;if(!e||!t||e.offsetInNode!==t.offsetInNode||e.after!==t.after||e.steps.length!==t.steps.length)return!1;for(let i=0;i<e.steps.length;i++)if(!Ip(e.steps[i],t.steps[i]))return!1;return!0}function Nw(e){return{steps:[{node:e,shadowType:at.NONE,shadowContext:null,nodeShadow:null,shadowSibling:null,formattingContext:null,fragmentIndex:0}],offsetInNode:0,after:!1,preprocessedTextContent:null}}function vo(e,t){return{steps:[{node:e.sourceNode,shadowType:at.NONE,shadowContext:e.shadowContext,nodeShadow:null,shadowSibling:null,formattingContext:e.formattingContext,fragmentIndex:t??e.fragmentIndex}],offsetInNode:0,after:!1,preprocessedTextContent:e.preprocessedTextContent}}function wo(e,t){var i;let n=t,r=new en(e.node,n,0,(i=e.formattingContext)!=null?i:n.formattingContext);return r.blockContainer=bo(n),Ap(r,e),r.shadowSibling=e.shadowSibling?wo(e.shadowSibling,t.copy()):null,r}function Tw(e,t){var i;let n=new en(e.node,null,0,(i=e.formattingContext)!=null?i:t);return Ap(n,e),n.shadowSibling=e.shadowSibling,n}function Ap(e,t){e.shadowType=t.shadowType,e.shadowContext=t.shadowContext,e.nodeShadow=t.nodeShadow,e.fragmentIndex=t.fragmentIndex+1}function Iw(e){return e.steps[e.steps.length-1]}var at=xi.ShadowType,qs=class{constructor(e,t,i,n,r,s,o){u(this,"owner",e),u(this,"root",t),u(this,"xmldoc",i),u(this,"parentShadow",n),u(this,"type",s),u(this,"styler",o),u(this,"subShadow",null),r&&(r.subShadow=this)}equals(e){return e?this.owner===e.owner&&this.xmldoc===e.xmldoc&&this.type===e.type&&al(this.parentShadow,e.parentShadow):!1}};function al(e,t){return e===t||!!e&&!!t&&e.equals(t)}var Aw=class{constructor(e,t){u(this,"outer",e),u(this,"count",t)}},en=class Ys{constructor(t,i,n,r){u(this,"sourceNode",t),u(this,"parent",i),u(this,"boxOffset",n),u(this,"formattingContext",r),u(this,"offsetInNode",0),u(this,"after",!1),u(this,"shadowType"),u(this,"shadowContext"),u(this,"nodeShadow",null),u(this,"shadowSibling",null),u(this,"shared",!1),u(this,"inline",!0),u(this,"overflow",!1),u(this,"breakPenalty"),u(this,"display",null),u(this,"floatReference"),u(this,"floatSide",null),u(this,"clearSide",null),u(this,"floatMinWrapBlock",null),u(this,"columnSpan",null),u(this,"captionSide","top"),u(this,"inlineBorderSpacing",0),u(this,"blockBorderSpacing",0),u(this,"flexContainer",!1),u(this,"whitespace"),u(this,"hyphenateCharacter"),u(this,"breakWord"),u(this,"establishesBFC",!1),u(this,"containingBlockForAbsolute",!1),u(this,"breakBefore",null),u(this,"breakAfter",null),u(this,"viewNode",null),u(this,"clearSpacer",null),u(this,"inheritedProps"),u(this,"vertical"),u(this,"direction"),u(this,"firstPseudo"),u(this,"lang",null),u(this,"preprocessedTextContent",null),u(this,"repeatOnBreak",null),u(this,"pluginProps",{}),u(this,"fragmentIndex",1),u(this,"afterIfContinues",null),u(this,"footnotePolicy",null),u(this,"pageType"),u(this,"blockContainer",null),this.shadowType=at.NONE,this.shadowContext=i?i.shadowContext:null,this.breakPenalty=i?i.breakPenalty:0,this.floatReference=_n.FloatReference.INLINE,this.whitespace=i?i.whitespace:bt.IGNORE,this.hyphenateCharacter=i?i.hyphenateCharacter:null,this.breakWord=i?i.breakWord:!1,this.inheritedProps=i?i.inheritedProps:{},this.vertical=i?i.vertical:!1,this.direction=i?i.direction:"ltr",this.firstPseudo=i?i.firstPseudo:null,this.pageType=i?i.pageType:null}static childOf(t,i,n){let r=new Ys(t,i,n,i.formattingContext);return r.blockContainer=bo(i),r}static siblingOf(t,i,n){let r=i.parent,s=new Ys(t,r,n,(r??i).formattingContext);return s.blockContainer=i.blockContainer,s}resetView(){this.inline=!0,this.breakPenalty=this.parent?this.parent.breakPenalty:0,this.viewNode=null,this.clearSpacer=null,this.offsetInNode=0,this.after=!1,this.display=null,this.floatReference=_n.FloatReference.INLINE,this.floatSide=null,this.clearSide=null,this.floatMinWrapBlock=null,this.columnSpan=null,this.flexContainer=!1,this.whitespace=this.parent?this.parent.whitespace:bt.IGNORE,this.hyphenateCharacter=this.parent?this.parent.hyphenateCharacter:null,this.breakWord=this.parent?this.parent.breakWord:!1,this.breakBefore=null,this.breakAfter=null,this.nodeShadow=null,this.establishesBFC=!1,this.containingBlockForAbsolute=!1,this.vertical=this.parent?this.parent.vertical:!1,this.nodeShadow=null,this.preprocessedTextContent=null,this.parent&&(this.formattingContext=this.parent.formattingContext),this.repeatOnBreak=null,this.pluginProps={},this.fragmentIndex=1,this.afterIfContinues=null,this.footnotePolicy=null,this.pageType=this.parent?this.parent.pageType:null}cloneItem(){let t=new Ys(this.sourceNode,this.parent,this.boxOffset,this.formattingContext);return t.offsetInNode=this.offsetInNode,t.after=this.after,t.nodeShadow=this.nodeShadow,t.shadowType=this.shadowType,t.shadowContext=this.shadowContext,t.shadowSibling=this.shadowSibling,t.inline=this.inline,t.breakPenalty=this.breakPenalty,t.display=this.display,t.floatReference=this.floatReference,t.floatSide=this.floatSide,t.clearSide=this.clearSide,t.floatMinWrapBlock=this.floatMinWrapBlock,t.columnSpan=this.columnSpan,t.captionSide=this.captionSide,t.inlineBorderSpacing=this.inlineBorderSpacing,t.blockBorderSpacing=this.blockBorderSpacing,t.establishesBFC=this.establishesBFC,t.containingBlockForAbsolute=this.containingBlockForAbsolute,t.flexContainer=this.flexContainer,t.whitespace=this.whitespace,t.hyphenateCharacter=this.hyphenateCharacter,t.breakWord=this.breakWord,t.breakBefore=this.breakBefore,t.breakAfter=this.breakAfter,t.viewNode=this.viewNode,t.clearSpacer=this.clearSpacer,t.firstPseudo=this.firstPseudo,t.vertical=this.vertical,t.overflow=this.overflow,t.preprocessedTextContent=this.preprocessedTextContent,t.repeatOnBreak=this.repeatOnBreak,t.pluginProps=Object.create(this.pluginProps),t.fragmentIndex=this.fragmentIndex,t.afterIfContinues=this.afterIfContinues,t.footnotePolicy=this.footnotePolicy,t.pageType=this.pageType,t.blockContainer=this.blockContainer,t}modify(){return this.shared?this.cloneItem():this}copy(){let t=this;do{if(t.shared)break;t.shared=!0,t=t.parent}while(t);return this}clone(){let t=this.cloneItem(),i=[t],n=t,r;for(;(r=n.parent)!=null;)r=r.cloneItem(),n.parent=r,n=r,i.push(r);for(let s=i.length-2;s>=0;s--)i[s].blockContainer=bo(i[s+1]);return t}toNodePositionStep(){var t;return{node:this.sourceNode,shadowType:this.shadowType,shadowContext:this.shadowContext,nodeShadow:this.nodeShadow,shadowSibling:this.shadowSibling?this.shadowSibling.toNodePositionStep():null,formattingContext:this.formattingContext,fragmentIndex:((t=this.viewNode)==null?void 0:t.parentNode)===null?0:this.fragmentIndex}}toNodePosition(){var t,i,n;let r=this.shadowType===xi.ShadowType.ROOTLESS&&(this.floatReference!==_n.FloatReference.INLINE||this.floatSide==="footnote")&&(n=(i=(t=this.shadowContext)==null?void 0:t.styler)==null?void 0:i.style)!=null&&n._pseudos?this:null,s=[],o=Ou(r?r.parent:this);for(;Fw(o);)(!o.firstPseudo||o.parent.firstPseudo===o.firstPseudo)&&s.push(o.toNodePositionStep()),o=Ou(o.parent);let a=this.preprocessedTextContent?vw(this.preprocessedTextContent,this.offsetInNode):this.offsetInNode;return{steps:[...s,Rw(o)],offsetInNode:a,after:this.after,preprocessedTextContent:this.preprocessedTextContent}}isInsideBFC(){let t=this.parent;for(;t;){if(t.establishesBFC)return!0;t=t.parent}return!1}getContainingBlockForAbsolute(){let t=this.parent;for(;t;){if(t.containingBlockForAbsolute)return Lt(t);t=t.parent}return null}belongsTo(t){return this.formattingContext===t&&!!this.parent&&this.parent.formattingContext===t}};function Fp(e){return e.parent!==null?e:null}function Ou(e){return e.parent,e}function Fw(e){return e.parent!==null}function Rw(e){return{...e.toNodePositionStep(),shadowSibling:e.shadowSibling}}function hh(e){var t;return e.parent!==null&&((t=e.viewNode)==null?void 0:t.nodeType)===3?e:null}function Lt(e){return e.viewNode!==null&&e.viewNode.nodeType===1?e:null}function Lw(e){var t;return e.floatSide!==null&&((t=e.viewNode)==null?void 0:t.nodeType)===1?e:null}function Ow(e){var t;return e.clearSide!==null&&((t=e.viewNode)==null?void 0:t.nodeType)===1?e:null}function Bw(e){var t;return e.afterIfContinues!==null&&((t=e.viewNode)==null?void 0:t.nodeType)===1?e:null}function Yi(e){var t;return(t=Lt(e))!=null?t:hh(e)}function bo(e){let t=Lt(e);return t&&!(e.inline&&e.blockContainer)?t:e.blockContainer}var zi=class Rp{constructor(t){u(this,"primary",t),u(this,"floats",null)}clone(){let t=new Rp(this.primary);if(this.floats){t.floats=[];for(let i=0;i<this.floats.length;++i)t.floats[i]=this.floats[i]}return t}isSamePosition(t){if(!t)return!1;if(this===t)return!0;if(!Di(this.primary,t.primary))return!1;if(this.floats){if(!t.floats||this.floats.length!==t.floats.length)return!1;for(let i=0;i<this.floats.length;i++)if(!Di(this.floats[i],t.floats[i]))return!1}else if(t.floats)return!1;return!0}},Mw=class Lp{constructor(t,i){u(this,"chunkPosition",t),u(this,"flowChunk",i)}clone(){return new Lp(this.chunkPosition.clone(),this.flowChunk)}isSamePosition(t){return!!t&&(this===t||this.chunkPosition.isSamePosition(t.chunkPosition))}},_w=class Op{constructor(){u(this,"positions",[]),u(this,"startBreakType",null),u(this,"breakAfter",null)}clone(){let t=new Op,i=this.positions,n=t.positions;for(let r=0;r<i.length;r++)n[r]=i[r].clone();return t.startBreakType=this.startBreakType,t.breakAfter=this.breakAfter,t}isSamePosition(t){if(this===t)return!0;if(!t||this.positions.length!==t.positions.length)return!1;for(let i=0;i<this.positions.length;i++)if(!this.positions[i].isSamePosition(t.positions[i]))return!1;return!0}hasContent(t){return this.positions.length>0&&this.positions[0].flowChunk.startOffset<=t}},Dw=class Bp{constructor(){u(this,"page",0),u(this,"flows",{}),u(this,"flowPositions",{}),u(this,"isBlankPage",!1),u(this,"highestSeenOffset",0),u(this,"highestSeenNode",null),u(this,"lookupPositionOffset",null)}clone(){let t=new Bp;t.page=this.page,t.isBlankPage=this.isBlankPage,t.highestSeenNode=this.highestSeenNode,t.highestSeenOffset=this.highestSeenOffset,t.lookupPositionOffset=this.lookupPositionOffset,t.flows=this.flows;for(let i in this.flowPositions)t.flowPositions[i]=this.flowPositions[i].clone();return t}isSamePosition(t){if(this===t)return!0;if(!t||this.page!==t.page)return!1;let i=Object.keys(this.flowPositions),n=Object.keys(t.flowPositions);if(i.length!==n.length)return!1;for(let r of i)if(!this.flowPositions[r].isSamePosition(t.flowPositions[r]))return!1;return!0}hasContent(t,i){let n=this.flowPositions[t];return n?n.hasContent(i):!1}startSideOfFlow(t){var i;let n=(i=this.flowPositions[t])==null?void 0:i.startBreakType;return n&&un(n)?n:"any"}firstFlowChunkOfFlow(t){let i=this.flowPositions[t];if(!i)return null;let n=i.positions[0];return n?n.flowChunk:null}};function Mp(e,t){t.left=e.left,t.top=e.top,t.marginLeft=e.marginLeft,t.marginRight=e.marginRight,t.marginTop=e.marginTop,t.marginBottom=e.marginBottom,t.borderLeft=e.borderLeft,t.borderRight=e.borderRight,t.borderTop=e.borderTop,t.borderBottom=e.borderBottom,t.paddingLeft=e.paddingLeft,t.paddingRight=e.paddingRight,t.paddingTop=e.paddingTop,t.paddingBottom=e.paddingBottom,t.width=e.width,t.height=e.height,t.originX=e.originX,t.originY=e.originY,t.snapWidth=e.snapWidth,t.snapHeight=e.snapHeight,t.vertical=e.vertical,t.rtl=e.rtl,t.borderBoxSizing=e.borderBoxSizing}var _p=class{constructor(e){u(this,"element",e),u(this,"left",0),u(this,"top",0),u(this,"marginLeft",0),u(this,"marginRight",0),u(this,"marginTop",0),u(this,"marginBottom",0),u(this,"borderLeft",0),u(this,"borderRight",0),u(this,"borderTop",0),u(this,"borderBottom",0),u(this,"paddingLeft",0),u(this,"paddingRight",0),u(this,"paddingTop",0),u(this,"paddingBottom",0),u(this,"width",0),u(this,"height",0),u(this,"originX",0),u(this,"originY",0),u(this,"exclusions",null),u(this,"innerShape",null),u(this,"computedBlockSize",0),u(this,"snapWidth",0),u(this,"snapHeight",0),u(this,"snapOffsetX",0),u(this,"snapOffsetY",0),u(this,"vertical",!1),u(this,"rtl",!1),u(this,"borderBoxSizing",!1)}getInsetTop(){return this.marginTop+(this.borderBoxSizing?0:this.borderTop+this.paddingTop)}getInsetBottom(){return this.marginBottom+(this.borderBoxSizing?0:this.borderBottom+this.paddingBottom)}getInsetLeft(){return this.marginLeft+(this.borderBoxSizing?0:this.borderLeft+this.paddingLeft)}getInsetRight(){return this.marginRight+(this.borderBoxSizing?0:this.borderRight+this.paddingRight)}getInsetBefore(){return this.vertical?this.getInsetRight():this.getInsetTop()}getInsetAfter(){return this.vertical?this.getInsetLeft():this.getInsetBottom()}getInsetStart(){return this.vertical?this.getInsetTop():this.getInsetLeft()}getInsetEnd(){return this.vertical?this.getInsetBottom():this.getInsetRight()}getBeforeEdge(e){return this.vertical?e.right:e.top}getAfterEdge(e){return this.vertical?e.left:e.bottom}getStartEdge(e){return this.vertical?this.rtl?e.bottom:e.top:this.rtl?e.right:e.left}getEndEdge(e){return this.vertical?this.rtl?e.top:e.bottom:this.rtl?e.left:e.right}getInlineSize(e){return this.vertical?e.bottom-e.top:e.right-e.left}getBoxSize(e){return this.vertical?e.right-e.left:e.bottom-e.top}getBoxDir(){return this.vertical?-1:1}getInlineDir(){return this.rtl?-1:1}copyFrom(e){this.element=e.element,Mp(e,this),this.innerShape=e.innerShape,this.exclusions=e.exclusions,this.computedBlockSize=e.computedBlockSize}setVerticalPosition(e,t){this.top=e,this.height=t,F(this.element,"top",`${e}px`),F(this.element,"height",`${t}px`)}setHorizontalPosition(e,t){this.left=e,this.width=t,F(this.element,"left",`${e}px`),F(this.element,"width",`${t}px`)}setBlockPosition(e,t){if(this.vertical){let i=t+this.marginLeft+this.marginRight+(this.borderBoxSizing?0:this.paddingLeft+this.paddingRight+this.borderLeft+this.borderRight);this.setHorizontalPosition(e+i*this.getBoxDir(),t)}else this.setVerticalPosition(e,t)}setInlinePosition(e,t){if(this.vertical)if(this.rtl){let i=t+this.marginTop+this.marginBottom+(this.borderBoxSizing?0:this.paddingTop+this.paddingBottom+this.borderTop+this.borderBottom);this.setVerticalPosition(e+i*this.getInlineDir(),t)}else this.setVerticalPosition(e,t);else if(this.rtl){let i=t+this.marginLeft+this.marginRight+(this.borderBoxSizing?0:this.paddingLeft+this.paddingRight+this.borderLeft+this.borderRight);this.setHorizontalPosition(e+i*this.getInlineDir(),t)}else this.setHorizontalPosition(e,t)}clear(){let e=this.element,t;for(;t=e.lastChild;)e.removeChild(t)}getInnerShape(){let e=this.getInnerRect();return this.innerShape?this.innerShape.withOffset(e.x1,e.y1):oh(e.x1,e.y1,e.x2,e.y2)}getInnerRect(){let e=this.originX+this.left+this.getInsetLeft(),t=this.originY+this.top+this.getInsetTop();return new _t(e,t,e+this.width,t+this.height)}getPaddingRect(){let e=this.originX+this.left+this.marginLeft+this.borderLeft,t=this.originY+this.top+this.marginTop+this.borderTop,i=this.paddingLeft+this.width+this.paddingRight,n=this.paddingTop+this.height+this.paddingBottom;return new _t(e,t,e+i,t+n)}getOuterShape(e,t){let i=this.getOuterRect();return Wd(e,i.x1,i.y1,i.x2-i.x1,i.y2-i.y1,t)}getOuterRect(){let e=this.originX+this.left,t=this.originY+this.top,i=this.getInsetLeft()+this.width+this.getInsetRight(),n=this.getInsetTop()+this.height+this.getInsetBottom();return new _t(e,t,e+i,t+n)}},$r=class extends Zt{constructor(e,t,i,n){super(),u(this,"elem",e),u(this,"context",t),u(this,"rootContentValue",i),u(this,"exprContentListener",n)}visitStrInner(e,t){var i;if(!t){if(((i=this.elem.lastChild)==null?void 0:i.nodeType)===3){this.elem.lastChild.textContent+=e;return}t=this.elem.ownerDocument.createTextNode(e)}this.elem.appendChild(t)}visitStr(e){return this.visitStrInner(e.str),null}visitURL(e){if(this.rootContentValue instanceof Qe)this.elem.setAttribute("src",e.url);else{let t=this.elem.ownerDocument.createElementNS("http://www.w3.org/1999/xhtml","img");t.setAttribute("src",e.url),this.elem.appendChild(t)}return null}visitSpaceList(e){return this.visitValues(e.values),null}visitExpr(e){let t=e.toExpr();if(t instanceof we){let n=t;if(typeof n.getContentList=="function"){let r=n.getContentList();if(r)return r.visit(this),null}}let i=t.evaluate(this.context);if(typeof i=="string"){this.elem.ownerDocument;let n=this.exprContentListener(t,i,this.elem.ownerDocument);!n&&i&&t instanceof we&&t.str.startsWith("running-element-")&&(i=""),this.visitStrInner(i,n)}return null}};function At(e){return e!=null&&e!==Re&&e!==v.normal&&e!==v.none&&!J(e)}var ri=1e5;function uh(e){let t=e.element.style;t.columnGap=`${ri-(e.vertical?e.height:e.width)}px`,t.columnFill="auto",t.columnCount="1",t.columnWidth="0"}function ta(e){let t=("element"in e?e.element:e).style;t.columnWidth="",t.columnCount="",t.columnGap="",t.columnFill=""}function xo(e){return e.element.style.columnCount==="1"}function zw(e){e.element.setAttribute("data-vivliostyle-column","true")}function Hr(e,t){let i=t?e.bottom:Math.max(Math.abs(e.left),Math.abs(e.right));return Math.round(i/ri)}function ch(e,t){let i=Hr(e,t);if(i===0)return 0;let n=t?e.top:Math.min(Math.abs(e.left),Math.abs(e.right)),r=Math.round(n/ri),s=r*ri,o=i*ri;return t?(e.top-=s,e.bottom-=o,e.bottom<e.top&&(e.bottom+=ri),e.right-=s,e.left-=o):e.left<-ri/2?(e.right+=s,e.left+=o,e.left>e.right&&(e.left-=ri),e.top+=s,e.bottom+=o):(e.left-=s,e.right-=o,e.right<e.left&&(e.right+=ri),e.top+=s,e.bottom+=o),e.width=e.right-e.left,e.height=e.bottom-e.top,r}function So(e,t){for(let i=0;i<e.length;i++)ch(e[i],t)}function Xt(e,t,i){let n=e.getElementClientRect(t);if(ch(n,i)>0&&e.getElementComputedStyle(t).display.startsWith("table")&&!ls(t)){let r=t.closest("[data-vivliostyle-column]");if(r)return ta(r),e.getElementClientRect(t)}return n}function Vw(e,t){var i,n;if(e.nodeType===1){let r=e;((i=r.style)==null?void 0:i.breakAfter)==="column"&&(r.style.breakAfter="")}if(t.nodeType===1){let r=t;((n=r.style)==null?void 0:n.breakBefore)==="column"&&(r.style.breakBefore="")}}function ll(e){let t=e.style;return t?!isNaN(parseFloat(t.columnCount))||!isNaN(parseFloat(t.columnWidth)):!1}function Uw(e){if(!e.hasAttribute("data-vivliostyle-column")&&ll(e))return!0;for(let t of e.querySelectorAll("*"))if(!t.hasAttribute("data-vivliostyle-column")&&ll(t))return!0;return!1}function ls(e){for(let t=e.nodeType===1?e:e.parentElement;t;t=t.parentElement){let i=t.style;if(!i||t.hasAttribute("data-vivliostyle-column"))break;if(ll(t))return t;if(i.position==="absolute")break}return null}function $w(e){var t;if(e.nodeType!==1)return;let i=e,n=i.style,r=n?.breakBefore==="column",s=i.previousElementSibling,o=s&&((t=s.style)==null?void 0:t.breakAfter)==="column";if(!r&&!o)return;let a=ls(i);if(!a)return;let h=a.ownerDocument.defaultView.getComputedStyle(a),{writingMode:l,direction:c,columnGap:d,fontSize:p}=h,f=l==="vertical-rl"||l==="vertical-lr",g=c==="rtl",m=(parseFloat(d)||parseFloat(p)||16)/2,w=a.getBoundingClientRect(),b=i.getBoundingClientRect();(f?b.top>w.bottom+m:g?b.right<w.left-m:b.left>w.right+m)&&(r&&(n.breakBefore=""),o&&s&&(s.style.breakAfter=""),n.marginBlockStart=`${ri}px`)}function ks(e){let t=e.element.lastElementChild,i=t&&e.clientLayout.getElementClientRect(t);return i?Hr(i,e.vertical):0}function Dp(e,t){if(e.getAttribute("data-viv-saved-column-fill")!=="auto"||ks(t))return;let i=t.clientLayout.getElementComputedStyle(e),n=parseFloat(i.blockSize);e.style.columnFill="auto";let r=parseFloat(i.blockSize);if(r<=0||e.parentElement&&ls(e.parentElement)){e.removeAttribute("data-viv-saved-column-fill");return}let s=NaN;if(e.style.blockSize=`${r}px`,ks(t)){if(e.style.blockSize=`${n}px`,!ks(t)){let o=1/(t.clientLayout.pixelRatio||1),a=n,h=r;for(;h-a>o;){let l=(a+h)/2;e.style.blockSize=`${l}px`,ks(t)?h=l:a=l}s=a,e.style.blockSize=`${s}px`}}else if(s=parseFloat(i.blockSize),s<r){let o=1/t.clientLayout.layoutUnitPerPixel;s=r+o,e.style.blockSize=`${s}px`}if(isNaN(s)){e.style.blockSize="",e.style.columnFill="balance";return}e.removeAttribute("data-viv-saved-column-fill")}function Hw(e){let t=e.element.querySelectorAll('[data-viv-saved-column-fill="auto"]');for(let i of t)Dp(i,e)}function Nn(e,t,i,n){let r=e.viewNode;if(!r)return NaN;let s=r.nodeType===1?r:r.parentElement;if(s&&s.namespaceURI==="http://www.w3.org/1999/xhtml"){let o=s.style;if(s.localName==="wbr"||o&&Wt(o.display)&&/^([\d\.]|super|(text-)?top)/.test(o.verticalAlign))return NaN}if(r===s){if(s.localName==="br"){let o=s.ownerDocument.createElement("span");s.before(o);let a=t.getElementClientRect(o);if(o.remove(),a){let h=[a];So(h,n);let l=h[0],c=n?l.left:l.bottom;if(!isNaN(c)&&c!==0)return c}return NaN}if(e.after||!e.inline){if(e.after&&!e.inline&&s.querySelector("ruby")){let a=s.parentNode,h=s.nextSibling;a.removeChild(s),a.insertBefore(s,h)}let o=Xt(t,s,n);if(o.left===0&&o.top===0&&o.right===0&&o.bottom===0)return NaN;if(o.right>=o.left&&o.bottom>=o.top)return e.after?n?o.left:o.bottom:n?o.right:o.top}return NaN}else{let o=NaN,a=r.ownerDocument.createRange(),h=r.textContent.length;if(!h)return NaN;e.after&&(i+=h),i>=h&&(i=h-1),a.setStart(r,i),a.setEnd(r,i+1);let l=t.getRangeClientRects(a);So(l,n);let c=l.filter(d=>d.right>d.left&&d.bottom>d.top);if(c.length>0)l=c;else{let d=s?t.getElementComputedStyle(s).whiteSpace:"";l=d==="pre"||d==="pre-wrap"||d==="pre-line"||d==="break-spaces"?l.filter(p=>n?p.right>p.left:p.bottom>p.top):[]}return l.length?(n?o=Math.min.apply(null,l.map(d=>d.left)):o=Math.max.apply(null,l.map(d=>d.bottom)),o):NaN}}function hl(e,t,i){let n=xo(t);n&&ta(t);let r=t.clientLayout.getElementClientRect(e);n&&uh(t);let s=t.getComputedMargin(e);return i?r.width+s.left+s.right:r.height+s.top+s.bottom}function Fn(e){for(;e;){if(e.parentNode===e.ownerDocument)return!1;e=e.parentNode}return!0}function zp(e,t){var i;if(e)for(let n=e.lastChild,r=n;n!==t;n=r)r=n.previousSibling,!(n.nodeType===1&&n.hasAttribute("data-vivliostyle-float-box-moved")&&((i=t.style)==null?void 0:i.display)==="inline")&&e.removeChild(n)}var $n="data-adapt-spec";function dh(e){return!!e.getAttribute($n)}function Mt(e){return e?.nodeType!==1?!1:dh(e)?!0:Vp(e)}function Vp(e){var t,i;if(e?.nodeType!==1)return!1;let n=e,r=(t=n.style)==null?void 0:t.position;if(r==="absolute"||r==="fixed")return!0;let s=(i=n.style)==null?void 0:i.float;return s==="left"||s==="right"||s==="inline-start"||s==="inline-end"}function Bu(e){var t;return e?.nodeType!==1?!1:((t=e.style)==null?void 0:t.position)==="fixed"}function Rn(e){let t=e?.viewNode;return t?.nodeType===1&&dh(t)}function Ww(e){return e!=="inline"&&(Wt(e)||Sp(e))}function Mu(e){var t;for(let i=e.parent;i;i=i.parent)if((i.display!=="inline"||i.vertical!==((t=i.parent)==null?void 0:t.vertical))&&Wt(i.display))return Lt(i);return null}function Up(e){let t=e.parentElement;return t?.localName==="viv-ts-inner"?t.parentElement:null}function Gw(e){let t=e;for(;t;){if(t.nodeType===Node.TEXT_NODE&&t.textContent.length>0)return t;if(t.lastChild)t=t.lastChild;else{for(;t&&!t.previousSibling;)if(t=t.parentNode,t===e||!t)return null;t=t?.previousSibling||null}}return null}function $p(e,t){let i={};return Object.keys(e).forEach(n=>{let r=i[n]={},s=e[n];Object.keys(s).forEach(o=>{r[o]=s[o].map(a=>{let h=t?a.logical:a.physical,l=t?a.physical:a.logical;return{regexp:new RegExp(`(-?)${h}(-?)`),to:`$1${l}$2`}})})}),i}function Hp(e,t,i,n){let r=n[t];if(!r)throw new Error(`unknown writing-mode: ${t}`);let s=r[i||"ltr"];if(!s)throw new Error(`unknown direction: ${i}`);for(let o of s){let a=e.replace(o.regexp,o.to);if(a!==e)return a}return e}var Wp={"horizontal-tb":{ltr:[{logical:"inline-start",physical:"left"},{logical:"inline-end",physical:"right"},{logical:"block-start",physical:"top"},{logical:"block-end",physical:"bottom"},{logical:"inline-size",physical:"width"},{logical:"block-size",physical:"height"}],rtl:[{logical:"inline-start",physical:"right"},{logical:"inline-end",physical:"left"},{logical:"block-start",physical:"top"},{logical:"block-end",physical:"bottom"},{logical:"inline-size",physical:"width"},{logical:"block-size",physical:"height"}]},"vertical-rl":{ltr:[{logical:"inline-start",physical:"top"},{logical:"inline-end",physical:"bottom"},{logical:"block-start",physical:"right"},{logical:"block-end",physical:"left"},{logical:"inline-size",physical:"height"},{logical:"block-size",physical:"width"}],rtl:[{logical:"inline-start",physical:"bottom"},{logical:"inline-end",physical:"top"},{logical:"block-start",physical:"right"},{logical:"block-end",physical:"left"},{logical:"inline-size",physical:"height"},{logical:"block-size",physical:"width"}]},"vertical-lr":{ltr:[{logical:"inline-start",physical:"top"},{logical:"inline-end",physical:"bottom"},{logical:"block-start",physical:"left"},{logical:"block-end",physical:"right"},{logical:"inline-size",physical:"height"},{logical:"block-size",physical:"width"}],rtl:[{logical:"inline-start",physical:"bottom"},{logical:"inline-end",physical:"top"},{logical:"block-start",physical:"left"},{logical:"block-end",physical:"right"},{logical:"inline-size",physical:"height"},{logical:"block-size",physical:"width"}]}},jw=$p(Wp,!0);function Gp(e,t,i){return Hp(e,t,i||null,jw)}var Xw=$p(Wp,!1);function jp(e,t,i){return Hp(e,t,i||null,Xw)}var qw={"horizontal-tb":[{logical:"line-left",physical:"left"},{logical:"line-right",physical:"right"},{logical:"over",physical:"top"},{logical:"under",physical:"bottom"}],"vertical-rl":[{logical:"line-left",physical:"top"},{logical:"line-right",physical:"bottom"},{logical:"over",physical:"right"},{logical:"under",physical:"left"}],"vertical-lr":[{logical:"line-left",physical:"top"},{logical:"line-right",physical:"bottom"},{logical:"over",physical:"right"},{logical:"under",physical:"left"}]};function Yw(e,t){let i=qw[t];if(!i)throw new Error(`unknown writing-mode: ${t}`);for(let n=0;n<i.length;n++)if(i[n].physical===e)return i[n].logical;return e}function ph(e,t,i){var n;let r=t,s={width:r.style.width,height:r.style.height};function o(p){return e.getElementComputedStyle(t).getPropertyValue(p)}let a=o("writing-mode")!=="horizontal-tb",h=a?"height":"width",l=a?"width":"height";function c(p,f){r.style[p]=f;let g=o(p);return r.style[p]=s[p],g}let d={};for(let p of i){let f;switch(p){case"max-content inline size":f=c(h,"max-content");break;case"min-content inline size":f=c(h,"min-content");break;case"fit-content inline size":f=c(h,"fit-content");break;case"max-content block size":f=c(l,"max-content");break;case"min-content block size":f=c(l,"min-content");break;case"fit-content block size":f=c(l,"fit-content");break;case"max-content width":f=c("width","max-content");break;case"max-content height":f=c("height","max-content");break;case"min-content width":f=c("width","min-content");break;case"min-content height":f=c("height","min-content");break;case"fit-content width":f=c("width","fit-content");break;case"fit-content height":f=c("height","fit-content");break}f==="0px"&&t.childNodes.length===1&&((n=t.firstElementChild)==null?void 0:n.localName)==="img"&&!t.firstElementChild.complete&&(f="1px"),d[p]=parseFloat(f)}return d}var Ie=_n.FloatReference,Kw=20;function Zw(e){switch(e){case"inline":return Ie.INLINE;case"column":return Ie.COLUMN;case"region":return Ie.REGION;case"page":return Ie.PAGE;default:throw new Error(`Unknown float-reference: ${e}`)}}function Oi(e){switch(e){case Ie.INLINE:return!1;case Ie.COLUMN:case Ie.REGION:case Ie.PAGE:return!0;default:throw new Error(`Unknown float-reference: ${e}`)}}function Ea(e,t,i,n){let r=t?"vertical-rl":"horizontal-tb";if((e==="top"||e==="bottom")&&(e=jp(e,r,i)),e==="block-start"&&(e="inline-start"),e==="block-end"&&(e="inline-end"),e==="inline-start"||e==="inline-end"){let s=Gp(e,r,i),o=Yw(s,r);o==="line-left"?e="left":o==="line-right"&&(e="right")}else e==="inside"?e=n==="left"?"right":"left":e==="outside"&&(e=n==="left"?"left":"right");return e!=="left"&&e!=="right"&&(Z.warn(`Invalid float value: ${e}. Fallback to left.`),e="left"),e}var Xp=class{constructor(e,t,i,n,r,s){u(this,"nodePosition",e),u(this,"floatReference",t),u(this,"floatSide",i),u(this,"clearSide",n),u(this,"flowName",r),u(this,"floatMinWrapBlock",s),u(this,"order",null),u(this,"id",null),u(this,"insidePageFloatArea",!1),u(this,"parentPageFloat",null)}getOrder(){if(this.order===null)throw new Error("The page float is not yet added");return this.order}getId(){if(!this.id)throw new Error("The page float is not yet added");return this.id}isAllowedOnContext(e){return e.isAnchorAlreadyAppeared(this.getId())?!0:this.insidePageFloatArea&&this.parentPageFloat?!!e.findPageFloatFragment(this.parentPageFloat):!1}isAllowedToPrecede(e){return!1}},Jw=class{constructor(){u(this,"floats",[]),u(this,"nextPageFloatIndex",0)}nextOrder(){return this.nextPageFloatIndex++}createPageFloatId(e){return`pf${e}`}addPageFloat(e){if(this.floats.findIndex(t=>Di(t.nodePosition,e.nodePosition))>=0)throw new Error("A page float with the same source node is already registered");{let t=e.order=this.nextOrder();e.id=this.createPageFloatId(t),this.floats.push(e)}}findPageFloatByNodePosition(e){let t=this.floats.findIndex(n=>Di(n.nodePosition,e));if(t>=0)return this.floats[t];let i=e?.steps;if(i!=null&&i.length){let n=this.floats.findIndex(r=>{let s=r.nodePosition.steps;if(!(s!=null&&s.length)||s.length===i.length||r.nodePosition.offsetInNode!==e.offsetInNode||r.nodePosition.after!==e.after)return!1;let o=Math.min(s.length,i.length);for(let a=0;a<o;a++)if(s[a].node!==i[a].node)return!1;return!0});if(n>=0)return this.floats[n]}return null}},qp=class{constructor(e,t,i,n,r,s){u(this,"floatReference",e),u(this,"floatSide",t),u(this,"clearSide",i),u(this,"continuations",n),u(this,"area",r),u(this,"continues",s)}hasFloat(e){return this.continuations.some(t=>t.float===e)}findNotAllowedFloat(e){for(let t=this.continuations.length-1;t>=0;t--){let i=this.continuations[t].float;if(!i.isAllowedOnContext(e))return i}return null}getOuterShape(){return this.area.getOuterShape(null,null)}getOuterRect(){return this.area.getOuterRect()}getOrder(){let e=this.continuations.map(t=>t.float);return Math.min.apply(null,e.map(t=>t.getOrder()))}shouldBeStashedBefore(e){return this.getOrder()<e.getOrder()}addContinuations(e){e.forEach(t=>{this.continuations.push(t)})}getFlowName(){let e=this.continuations[0].float.flowName;return this.continuations.every(t=>t.float.flowName===e),e}},_u=class{constructor(e,t){u(this,"float",e),u(this,"nodePosition",t)}equals(e){return e?this===e?!0:this.float===e.float&&Di(this.nodePosition,e.nodePosition):!1}};function Yp(e,t){if(e==="inside"||e==="outside"){let i=t.pageSide==="left";e=e==="inside"?i?"right":"left":i?"left":"right"}return jp(e,t.writingMode.toString(),t.direction.toString())}function Qw(e,t){return Gp(e,t.writingMode.toString(),t.direction.toString())}function eb(e,t){let i=e.split(" "),n=[];for(let a of i){let h=Yp(a,t);n.includes(h)||n.push(h)}let r=[],s=!1,o=!1;for(let a=0;a<n.length;a++){let h=n[a];h.includes("block")?s||(n.slice(a+1).some(l=>l.includes("block"))?(r.push("snap-block"),s=!0):r.push(h)):h.includes("inline")&&(o||(n.slice(a+1).some(l=>l.includes("inline"))?(r.push("snap-inline"),o=!0):r.push(h)))}return r}var Bi=class Ks{constructor(t,i){u(this,"parent"),u(this,"floatReference"),u(this,"flowName"),u(this,"generatingNodePosition"),u(this,"writingMode"),u(this,"direction"),u(this,"pageSide"),u(this,"outerContext"),u(this,"floatStore"),u(this,"state"),this.parent=t.parent,this.floatReference=t.floatReference,this.flowName=t.flowName,this.generatingNodePosition=t.generatingNodePosition,this.writingMode=t.writingMode,this.direction=t.direction,this.pageSide=t.pageSide,this.outerContext=t.outerContext,this.floatStore=t.floatStore,this.state=i??this.newState()}static buildIdentity(t,i,n,r,s,o,a,h){var l,c,d;return{parent:t,floatReference:i,flowName:n,generatingNodePosition:r,writingMode:!J(s)&&s||t?.writingMode||v.horizontal_tb,direction:!J(o)&&o||t?.direction||v.ltr,pageSide:(c=(l=h??t?.pageSide)!=null?l:a?.pageSide)!=null?c:null,outerContext:a,floatStore:t?t.floatStore:(d=a?.floatStore)!=null?d:new Jw}}newState(){let t=this.getPreviousSibling();return{children:[],floatAnchors:{},invalidated:!1,locked:!1,forbiddenFloats:[],floatFragments:[],stashedFloatFragments:[],floatsDeferredToNext:[],floatsDeferredFromPrevious:t?[...t.state.floatsDeferredToNext]:[],layoutConstraints:[],footnoteMaxBlockSize:null,ignoreFootnoteAreaMaxHeight:!1,footnoteAnchorsSeen:new Set,lineFootnoteInvalidationMaxBlockSize:new Map,lineFootnoteFinishInvalidatedOnce:new Set}}static createDetached(t,i,n,r){return new Du(Ks.buildIdentity(null,i,n,r,null,null,t,null))}static create(t,i,n,r,s,o,a=null,h=null){let l=Ks.buildIdentity(t,i,n,r,s,o,a,h);return new Du(l)}static createWithContainer(t,i,n,r,s,o,a,h=null,l=null){let c=Ks.buildIdentity(i,n,r,s,o,a,h,l);return new Jp(c,t)}static register(t,i){if(!t)return;let n=t.state.children.findIndex(r=>r.state===i.state);n>=0?t.state.children[n]=i:t.state.children.push(i)}identity(){return{parent:this.parent,floatReference:this.floatReference,flowName:this.flowName,generatingNodePosition:this.generatingNodePosition,writingMode:this.writingMode,direction:this.direction,pageSide:this.pageSide,outerContext:this.outerContext,floatStore:this.floatStore}}get floatFragments(){return this.state.floatFragments}get footnoteMaxBlockSize(){return this.state.footnoteMaxBlockSize}set footnoteMaxBlockSize(t){this.state.footnoteMaxBlockSize=t}get ignoreFootnoteAreaMaxHeight(){return this.state.ignoreFootnoteAreaMaxHeight}set ignoreFootnoteAreaMaxHeight(t){this.state.ignoreFootnoteAreaMaxHeight=t}get effectiveParent(){var t;return(t=this.parent)!=null?t:this.outerContext}getParent(t){if(this.parent)return this.parent;if(this.outerContext)return this.outerContext;throw new Error(`No PageFloatLayoutContext for ${t}`)}getPreviousSibling(){let t=this,i=this.parent,n;for(;i;){if(n=i.getPreviousSiblingOf(t,this.floatReference,this.flowName,this.generatingNodePosition),n)return n;t=i,i=i.parent}return null}addPageFloat(t){this.floatStore.addPageFloat(t)}getPageFloatLayoutContext(t){return t===this.floatReference?this:this.getParent(t).getPageFloatLayoutContext(t)}findPageFloatByNodePosition(t){return this.floatStore.findPageFloatByNodePosition(t)}isForbidden(t){let i=t.getId(),n=t.floatReference;return n===this.floatReference?this.state.forbiddenFloats.includes(i):this.getParent(n).isForbidden(t)}findPageFloatFragment(t){if(t.floatReference!==this.floatReference)return this.getParent(t.floatReference).findPageFloatFragment(t);let i=this.floatFragments.findIndex(n=>n.hasFloat(t));return i>=0?this.floatFragments[i]:null}hasFloatFragments(t){return this.floatFragments.length>0&&(!t||this.floatFragments.some(t))?!0:this.parent?this.parent.hasFloatFragments(t):!1}hasContinuingFloatFragmentsInFlow(t){return this.hasFloatFragments(i=>i.continues&&i.getFlowName()===t&&i.floatSide!=="block-end")}markPageFloatAnchorSeen(t){var i;if(!("footnotePolicy"in t))return;let n=this;for(;n;)n.state.footnoteAnchorsSeen.add(t.getId()),n=(i=n.parent)!=null?i:n.outerContext}registerPageFloatAnchor(t,i){this.state.floatAnchors[t.getId()]=i,this.markPageFloatAnchorSeen(t)}hasInvalidatedForLineFootnote(t){return t.floatReference===this.floatReference?this.state.lineFootnoteInvalidationMaxBlockSize.get(t.getId())===this.footnoteMaxBlockSize:this.getParent(t.floatReference).hasInvalidatedForLineFootnote(t)}markInvalidatedForLineFootnote(t){t.floatReference===this.floatReference?this.state.lineFootnoteInvalidationMaxBlockSize.set(t.getId(),this.footnoteMaxBlockSize):this.getParent(t.floatReference).markInvalidatedForLineFootnote(t)}deferPageFloat(t){let i=t.float;if(i.floatReference===this.floatReference){let n=this.state.floatsDeferredToNext.findIndex(r=>r.float===i);n>=0?this.state.floatsDeferredToNext.splice(n,1,t):this.state.floatsDeferredToNext.push(t)}else this.getParent(i.floatReference).deferPageFloat(t)}removeFloatDeferredToNext(t){let i=this.state.floatsDeferredToNext.findIndex(n=>n.float===t);i>=0&&this.state.floatsDeferredToNext.splice(i,1)}hasPrecedingFloatsDeferredToNext(t,i){if(!i&&t.floatReference!==this.floatReference)return this.getParent(t.floatReference).hasPrecedingFloatsDeferredToNext(t,!1);let n=t.getOrder();return this.state.floatsDeferredToNext.some(r=>r.float.getOrder()<n&&!t.isAllowedToPrecede(r.float))?!0:this.parent?this.parent.hasPrecedingFloatsDeferredToNext(t,!0):!1}getLastFollowingFloatInFragments(t){let i=t.getOrder(),n=null;if(this.floatFragments.forEach(r=>{r.continuations.forEach(s=>{let o=s.float,a=o.getOrder();a>i&&(!n||a>n.getOrder())&&(n=o)})}),this.parent){let r=this.parent.getLastFollowingFloatInFragments(t);r&&(!n||r.getOrder()>n.getOrder())&&(n=r)}return n}getDeferredPageFloatContinuations(t){t=t||this.flowName;let i=this.state.floatsDeferredFromPrevious.filter(n=>!t||n.float.flowName===t);return this.parent&&(i=this.parent.getDeferredPageFloatContinuations(t).concat(i)),i.sort((n,r)=>n.float.getOrder()-r.float.getOrder())}getPageFloatContinuationsDeferredToNext(t){t=t||this.flowName;let i=this.state.floatsDeferredToNext.filter(n=>!t||n.float.flowName===t);return this.parent?this.parent.getPageFloatContinuationsDeferredToNext(t).concat(i):i}trySetFootnoteRetryMaxBlockSize(t){let i=this.footnoteMaxBlockSize!=null?this.footnoteMaxBlockSize/2:t/2;return i<Kw?!1:(this.footnoteMaxBlockSize=i,!0)}isInvalidated(){return this.state.invalidated||!!this.parent&&this.parent.isInvalidated()}validate(){this.state.invalidated=!1}toLogical(t){return Yp(t,this)}toPhysical(t){return Qw(t,this)}toLogicalFloatSides(t){return eb(t,this)}discardStashedFragments(t){if(t!==this.floatReference){this.getParent(t).discardStashedFragments(t);return}this.state.stashedFloatFragments.splice(0)}getStashedFloatFragments(t){return t===this.floatReference?this.state.stashedFloatFragments.concat().sort((i,n)=>n.getOrder()-i.getOrder()):this.getParent(t).getStashedFloatFragments(t)}getFloatFragmentExclusions(){let t=this.floatFragments.map(i=>i.getOuterShape());return this.parent?this.parent.getFloatFragmentExclusions().concat(t):t}getLayoutConstraints(){return(this.parent?this.parent.getLayoutConstraints():[]).concat(this.state.layoutConstraints)}addLayoutConstraint(t,i){i===this.floatReference?this.state.layoutConstraints.push(t):this.getParent(i).addLayoutConstraint(t,i)}lock(){this.state.locked=!0}unlock(){this.state.locked=!1}isLocked(){return this.state.locked}},Du=class extends Bi{withContainer(e){return new Jp(this.identity(),e,this.state)}},Kp=class extends Bi{get children(){return this.state.children}attachChildren(e){e.forEach(t=>{this.state.children.push(t),t.reattachFloatFragments()})}detachChildren(){let e=this.state.children.splice(0);return e.forEach(t=>{t.floatFragments.forEach(i=>{let n=i.area.element;n&&n.parentNode&&n.parentNode.removeChild(n)})}),e}collectPageFloatAnchors(){let e=Object.assign({},this.state.floatAnchors);return this.state.children.reduce((t,i)=>Object.assign(t,i.collectPageFloatAnchors()),e)}getFloatsDeferredToNextInChildContexts(){let e=[],t=[];for(let i=this.state.children.length-1;i>=0;i--){let n=this.state.children[i];t.includes(n.flowName)||(t.push(n.flowName),e=e.concat(n.state.floatsDeferredToNext.map(r=>r.float)),e=e.concat(n.getFloatsDeferredToNextInChildContexts()))}return e}findPageFloatAnchor(e){var t;for(let i=this.state.children.length-1;i>=0;i--){let n=this.state.children[i].findPageFloatAnchor(e);if(n)return n}return(t=this.state.floatAnchors[e])!=null?t:null}hasRootMultiColumnFootnoteContext(){return this.state.children.some(e=>{let t=0;for(let i of e.state.children)if(!i.generatingNodePosition&&(t+=1,t>1))return!0;return!1})}getPreviousSiblingOf(e,t,i,n){let r=this.state.children.indexOf(e);r<0&&(r=this.state.children.length);for(let s=r-1;s>=0;s--){let o=this.state.children[s];if(o.floatReference===t&&o.flowName===i&&Di(o.generatingNodePosition,n)||(o=o.getPreviousSiblingOf(null,t,i,n),o))return o}return null}},zu=class Zp extends Kp{asAttached(){return null}addPageFloatLayoutContextAsPreviousSibling(t){this.state.children.push(t)}static createRoot(){return new Zp(Bi.buildIdentity(null,null,null,null,null,null,null,null))}},Jp=class extends Kp{constructor(e,t,i){var n,r;super(e,i),u(this,"container",t),u(this,"attachedParent"),u(this,"attachedOuter"),this.attachedParent=(r=(n=e.parent)==null?void 0:n.asAttached())!=null?r:null,this.attachedOuter=e.outerContext,this.reattachFloatFragments(),Bi.register(this.parent,this)}asAttached(){return this}getParent(e){var t;let i=(t=this.attachedParent)!=null?t:this.attachedOuter;if(i)return i;throw new Error(`No PageFloatLayoutContext for ${e}`)}getPageFloatLayoutContext(e){return e===this.floatReference?this:this.getParent(e).getPageFloatLayoutContext(e)}forbid(e){let t=e.getId(),i=e.floatReference;i===this.floatReference?this.state.forbiddenFloats.includes(t)||(this.state.forbiddenFloats.push(t),new Hn().findByFloat(e).forbid(e,this)):this.getParent(i).forbid(e)}addPageFloatFragment(e,t){let i=e.floatReference;i!==this.floatReference?this.getParent(i).addPageFloatFragment(e,t):this.floatFragments.includes(e)||(this.floatFragments.push(e),this.floatFragments.sort((n,r)=>n.getOrder()-r.getOrder())),t||this.invalidate()}removePageFloatFragment(e,t){let i=e.floatReference;if(i!==this.floatReference)this.getParent(i).removePageFloatFragment(e,t);else{let n=this.floatFragments.indexOf(e);if(n>=0){let r=this.floatFragments.splice(n,1)[0],s=r.area&&r.area.element;s&&s.parentNode&&s.parentNode.removeChild(s),t||this.invalidate()}}}hasCurrentAnchor(e){let t=this.findPageFloatAnchor(e);return t?this.container.element.contains(t):!1}isAnchorAlreadyAppeared(e){if(this.getDeferredPageFloatContinuations().some(i=>i.float.getId()===e))return!0;let t=this.findPageFloatAnchor(e);return t?this.container.element.contains(t):!1}hasNonRootMultiColumnFootnoteContext(){return this.state.children.some(e=>e.state.children.some(t=>Uw(t.container.element)))}hasMultiColumnFootnoteContext(){return this.hasRootMultiColumnFootnoteContext()||this.hasNonRootMultiColumnFootnoteContext()}initFootnoteRetryFromEmptyFragment(e,t){if(!("footnotePolicy"in e&&this.footnoteMaxBlockSize==null&&this.state.footnoteAnchorsSeen.has(e.getId())&&this.hasMultiColumnFootnoteContext()))return!1;let i=(t.vertical?t.width:t.height)+t.getInsetBefore()+t.getInsetAfter();return this.trySetFootnoteRetryMaxBlockSize(i)}checkAndForbidNotAllowedFloat(){var e;if(this.checkAndForbidFloatFollowingDeferredFloat())return!0;for(let t=this.floatFragments.length-1;t>=0;t--){let i=this.floatFragments[t],n=i.findNotAllowedFloat(this);if(n){let r=i.area&&"isFootnote"in i.area&&i.area.isFootnote;if(this.state.locked)this.invalidate();else{let s=r&&"footnotePolicy"in n&&n.footnotePolicy===v.line;if(r&&this.state.footnoteAnchorsSeen.has(n.getId())&&(s||this.hasMultiColumnFootnoteContext())){let o=i.area.computedBlockSize+i.area.getInsetBefore()+i.area.getInsetAfter();if(this.trySetFootnoteRetryMaxBlockSize(o))return this.removePageFloatFragment(i),this.removeEndFloatFragments(i.floatSide),!0}this.removePageFloatFragment(i),this.forbid(n),this.removeEndFloatFragments(i.floatSide)}return!0}}return this.floatReference===Ie.REGION&&(e=this.attachedParent)!=null&&e.isLocked()?this.attachedParent.checkAndForbidNotAllowedFloat():!1}checkAndForbidFloatFollowingDeferredFloat(){let e=this.getFloatsDeferredToNextInChildContexts(),t=this.floatFragments.reduce((i,n)=>i.concat(n.continuations.map(r=>r.float)),[]);t.sort((i,n)=>n.getOrder()-i.getOrder());for(let i of t){let n=i.getOrder();if(e.some(r=>!i.isAllowedToPrecede(r)&&n>r.getOrder())){if(this.state.locked)this.invalidate();else{this.forbid(i);let r=this.findPageFloatFragment(i);this.removePageFloatFragment(r)}return!0}}return!1}finish(){for(let e=this.floatFragments.length-1;e>=0;e--){let t=this.floatFragments[e];if(t.continuations.some(i=>{let n=i.float;return"footnotePolicy"in n&&n.footnotePolicy===v.line&&!this.hasCurrentAnchor(n.getId())&&!this.state.floatsDeferredFromPrevious.some(r=>r.float===n)})){if(this.state.locked){this.invalidate();return}this.removePageFloatFragment(t);return}}if(!this.checkAndForbidNotAllowedFloat()){for(let e=this.state.floatsDeferredToNext.length-1;e>=0;e--){let t=this.state.floatsDeferredToNext[e].float,i=this.findPageFloatFragment(t);if("footnotePolicy"in t&&t.footnotePolicy===v.line&&this.hasCurrentAnchor(t.getId())&&!i&&!this.state.lineFootnoteFinishInvalidatedOnce.has(t.getId())){if(this.state.locked){this.invalidate();return}this.state.lineFootnoteFinishInvalidatedOnce.add(t.getId()),this.removeFloatDeferredToNext(t),this.forbid(t),this.invalidate();return}}for(let e=this.state.floatsDeferredToNext.length-1;e>=0;e--)if(!this.state.floatsDeferredToNext[e].float.isAllowedOnContext(this)){if(this.state.locked){this.invalidate();return}this.state.floatsDeferredToNext.splice(e,1)}this.state.floatsDeferredFromPrevious.forEach(e=>{this.state.floatsDeferredToNext.findIndex(t=>e.equals(t))>=0||this.floatFragments.some(t=>t.hasFloat(e.float))||this.state.floatsDeferredToNext.push(e)})}}restoreStashedFragments(e){if(e!==this.floatReference){this.getParent(e).restoreStashedFragments(e);return}this.state.stashedFloatFragments.forEach(t=>{this.addPageFloatFragment(t,!0)}),this.state.stashedFloatFragments.splice(0)}hasSameContainerAs(e){return this.container.element===e.container.element}invalidate(){this.state.invalidated=!0,!this.state.locked&&(this.state.children.forEach(e=>{this.hasSameContainerAs(e)&&e.floatFragments.forEach(t=>{let i=t.area.element;i&&i.parentNode&&i.parentNode.removeChild(i)})}),this.container.clear(),this.state.children.forEach(e=>{e.state.layoutConstraints.splice(0)}),this.state.children.splice(0),Object.keys(this.state.floatAnchors).forEach(e=>{delete this.state.floatAnchors[e]}))}removeEndFloatFragments(e){let t=this.toLogicalFloatSides(e)[0];if(t==="block-end"||t==="inline-end"){let i=0;for(;i<this.floatFragments.length;){let n=this.floatFragments[i];this.toLogicalFloatSides(n.floatSide)[0]===t?this.removePageFloatFragment(n):i++}}}isFragmentInCurrentContainer(e){if(this.floatReference!==Ie.REGION)return!0;let t=e.area;return!t.parentElement||t.parentElement===this.container.element}stashEndFloatFragments(e){let t=e.floatReference;if(t!==this.floatReference){this.getParent(t).stashEndFloatFragments(e);return}let i=this.toLogicalFloatSides(e.floatSide)[0];if(i==="block-end"||i==="snap-block"||i==="inline-end"||i==="snap-inline"){let n=0;for(;n<this.floatFragments.length;){let r=this.floatFragments[n],s=this.toLogicalFloatSides(r.floatSide)[0];this.isFragmentInCurrentContainer(r)&&(s===i||i==="snap-block"&&s==="block-end"||i==="snap-inline"&&s==="inline-end")&&r.shouldBeStashedBefore(e)?(this.state.stashedFloatFragments.push(r),this.floatFragments.splice(n,1)):n++}}}getLimitValue(e,t,i,n,r,s=!0,o){let a=this.toLogical(e),h=this.toPhysical(e),l=t&&this.toLogical(t),c=t&&this.toPhysical(t),d=this.getLimitValueInner(a,l,i,n,r,o),p=this.attachedParent;if(s&&p){let f=p.getLimitValue(h,c,i,n,r,s,o);switch(h){case"top":return Math.max(d,f);case"left":return Math.max(d,f);case"bottom":return Math.min(d,f);case"right":return Math.min(d,f);default:}}return d}getLimitValueInner(e,t,i,n,r,s){let o=this.getLimitValuesInner(i,n,r,e,t,s);switch(e){case"block-start":return this.container.vertical?o.right:o.top;case"block-end":return this.container.vertical?o.left:o.bottom;case"inline-start":return this.container.vertical?this.container.rtl?o.bottom:o.top:this.container.rtl?o.right:o.left;case"inline-end":return this.container.vertical?this.container.rtl?o.top:o.bottom:this.container.rtl?o.left:o.right;default:throw new Error(`Unknown logical side: ${e}`)}}getLimitValuesInner(e,t,i,n,r,s){var o,a,h,l;let c=this.container.originX,d=this.container.originY,p=this.container.getPaddingRect(),f={top:p.y1-d,left:p.x1-c,bottom:p.y2-d,right:p.x2-c,floatMinWrapBlockStart:0,floatMinWrapBlockEnd:0};if(this.container.vertical){let w=parseFloat((a=(o=this.container.element)==null?void 0:o.style)==null?void 0:a.width);isFinite(w)&&w>this.container.width&&(f.right+=w-this.container.width)}else{let w=parseFloat((l=(h=this.container.element)==null?void 0:h.style)==null?void 0:l.height);isFinite(w)&&w>this.container.height&&(f.bottom+=w-this.container.height)}function g(w,b,x){return w.unit==="%"?x*w.num/100:e.convertLengthToPx(w,b,t)}let m=this.floatFragments;return m.length>0&&(f=m.reduce((w,b)=>{if(b.area===s||!this.isFragmentInCurrentContainer(b)||i&&!i(b,this))return w;let[x,P]=this.toLogicalFloatSides(b.floatSide);if(P&&(n&&P.includes("block")===n.includes("block")&&P!==n||r&&P.includes("block")===r.includes("block")&&P!==r))return w;let y=b.area,C=b.continuations[0].float.floatMinWrapBlock,S=y.vertical?y.left+y.getInsetLeft()+y.width+y.getInsetRight():y.top+y.getInsetTop()+y.height+y.getInsetBottom(),N=y.vertical?y.top+y.getInsetTop()+y.height+y.getInsetBottom():y.left+y.getInsetLeft()+y.width+y.getInsetRight(),E=w.top,R=w.left,_=w.bottom,X=w.right,te=w.floatMinWrapBlockStart,k=w.floatMinWrapBlockEnd;switch(x){case"inline-start":y.vertical?E=Math.max(E,N):R=Math.max(R,N);break;case"block-start":y.vertical?(C&&y.left<X&&(te=g(C,y.rootViewNodes[0],p.x2-p.x1)),X=Math.min(X,y.left)):(C&&S>E&&(te=g(C,y.rootViewNodes[0],p.y2-p.y1)),E=Math.max(E,S));break;case"inline-end":y.vertical?_=Math.min(_,y.top):X=Math.min(X,y.left);break;case"block-end":y.vertical?(C&&S>R&&(k=g(C,y.rootViewNodes[0],p.x2-p.x1)),R=Math.max(R,S)):(C&&y.top<_&&(k=g(C,y.rootViewNodes[0],p.y2-p.y1)),_=Math.min(_,y.top));break;default:throw new Error(`Unknown logical float side: ${x}`)}return{top:E,left:R,bottom:_,right:X,floatMinWrapBlockStart:te,floatMinWrapBlockEnd:k}},f)),f.left+=c,f.right+=c,f.top+=d,f.bottom+=d,f}setFloatAreaDimensions(e,t,i,n,r,s,o){if(t!==this.floatReference)return this.getParent(t).setFloatAreaDimensions(e,t,i,n,r,s,o);let a=this.toLogicalFloatSides(i);if(a[0]==="snap-block"){if(!o["block-start"]&&!o["block-end"])return null}else if(a[0].includes("block")&&!o[a[0]])return null;let h=a.find(S=>S.includes("inline")&&o[S==="inline-start"?"inline-end":"inline-start"]),l=a.find(S=>S.includes("block")),c=!0,d=this.getLimitValue("block-start",h,e.layoutContext,e.clientLayout,void 0,c,e),p=this.getLimitValue("block-end",h,e.layoutContext,e.clientLayout,void 0,c,e),f=this.getLimitValue("inline-start",l,e.layoutContext,e.clientLayout,void 0,c,e),g=this.getLimitValue("inline-end",l,e.layoutContext,e.clientLayout,void 0,c,e),m=e.vertical?e.originX:e.originY,w=e.vertical?e.originY:e.originX;e.isFootnote||(d=e.vertical?Math.min(d,e.left+e.getInsetLeft()+e.width+e.getInsetRight()+m):Math.max(d,e.top+m),p=e.vertical?Math.max(p,e.left+m):Math.min(p,e.top+e.getInsetTop()+e.height+e.getInsetBottom()+m));function b(S,N){let E=S(e.bands,N);return E?(e.vertical&&(E=Ud(E)),d=e.vertical?Math.min(d,E.x2):Math.max(d,E.y1),p=e.vertical?Math.max(p,E.x1):Math.min(p,E.y2),!0):s}let x,P,y,C;if(r){let S=e.vertical?go(new _t(p,f,d,g)):new _t(f,d,g,p);if((a[0]==="block-start"||a[0]==="snap-block"||a[0]==="inline-start"||a[0]==="snap-inline")&&!b(Ry,S)||(a[0]==="block-end"||a[0]==="snap-block"||a[0]==="inline-end"||a[0]==="snap-inline")&&!b(Ly,S)||(e.isFootnote&&n!==null&&isFinite(n)&&a[0]==="block-end"&&(e.vertical?d=Math.min(d,n):d=Math.max(d,n)),y=(p-d)*e.getBoxDir(),e.isFootnote&&this.footnoteMaxBlockSize!=null&&(y=Math.min(y,this.footnoteMaxBlockSize),e.vertical?d=p+y:d=p-y),x=Math.max(0,y-e.getInsetBefore()-e.getInsetAfter()),C=(g-f)*e.getInlineDir(),P=C-e.getInsetStart()-e.getInsetEnd(),!s&&(x<=0||P<=0)))return null}else{let S=e.getContentBlockMarginAfter();x=Math.max(0,e.computedBlockSize+Math.min(0,S)),y=x+e.getInsetBefore()+e.getInsetAfter();let N=(p-d)*e.getBoxDir();if(a[0]==="snap-block"){if(n===null)a[0]="block-start";else{let R=this.container.getPaddingRect(),_=this.container.getBoxDir()*(n-(this.container.vertical?R.x2:R.y1)),X=this.container.getBoxDir()*((this.container.vertical?R.x1:R.y2)-n-y);_<=X?a[0]="block-start":a[0]="block-end"}if(!o[a[0]])if(o["block-end"])a[0]="block-end";else return null}else if(a[0]==="snap-inline")if(n===null)a[0]="inline-start";else if(o["inline-start"])a[0]="inline-start";else if(o["inline-end"])a[0]="inline-end";else return null;if(!s&&N<y)return null;a[0]==="inline-start"||a[0]==="inline-end"||a[1]?P=ph(e.clientLayout,e.element,["fit-content inline size"])["fit-content inline size"]:e.adjustContentRelativeSize?P=e.getContentInlineSize():P=e.vertical?e.height:e.width,C=P+e.getInsetStart()+e.getInsetEnd();let E=(g-f)*e.getInlineDir();if(!s&&E<C)return null}if(d-=m,p-=m,f-=w,g-=w,a.some(S=>S==="inline-start"||S==="snap-inline")||a.length===1&&(a[0]==="block-start"||a[0]==="snap-block")?e.setInlinePosition(f,P):(a.some(S=>S==="inline-end")||a.length===1&&a[0]==="block-end")&&e.setInlinePosition(g-C*e.getInlineDir(),P),a.some(S=>S==="block-start"||S==="snap-block")||a.length===1&&(a[0]==="inline-start"||a[0]==="snap-inline"))e.setBlockPosition(d,x);else if(a.some(S=>S==="block-end")||a.length===1&&a[0]==="inline-end"){let S=p-y*e.getBoxDir();e.setBlockPosition(S,x)}return a.join(" ")}reattachFloatFragments(){let e=this.container.element&&this.container.element.parentNode;e&&this.floatFragments.forEach(t=>{e.appendChild(t.area.element)})}getMaxReachedAfterEdge(){let e=this.container.vertical;return this.floatFragments.reduce((t,i)=>{let n=i.getOuterRect();return e?Math.min(t,n.x1):Math.max(t,n.y2)},e?1/0:0)}getBlockEndEdgeOfBlockStartFloats(e){let t=this.container.vertical,i=NaN;this.floatFragments.filter(r=>r.floatSide.includes("block-start")).filter(r=>{if(e===void 0||!isFinite(e))return!0;let s=r.getOuterRect();return t?s.y1<=e&&e<=s.y2:s.x1<=e&&e<=s.x2}).forEach(r=>{let s=r.getOuterRect(),o=t?s.x1:s.y2;i=isFinite(i)?t?Math.min(i,o):Math.max(i,o):o});let n=this.attachedParent;if(n){let r=n.getBlockEndEdgeOfBlockStartFloats(e);isFinite(r)&&(i=isFinite(i)?t?Math.min(i,r):Math.max(i,r):r)}return i}getBlockStartEdgeOfBlockEndFloats(e){let t=this.container.vertical,i=NaN;this.floatFragments.filter(r=>r.floatSide.includes("block-end")).filter(r=>{if(e===void 0||!isFinite(e))return!0;let s=r.getOuterRect();return t?s.y1<=e&&e<=s.y2:s.x1<=e&&e<=s.x2}).forEach(r=>{let s=r.getOuterRect(),o=t?s.x2:s.y1;i=isFinite(i)?t?Math.max(i,o):Math.min(i,o):o});let n=this.attachedParent;if(n){let r=n.getBlockStartEdgeOfBlockEndFloats(e);isFinite(r)&&(i=isFinite(i)?t?Math.max(i,r):Math.min(i,r):r)}return i}getPageFloatClearEdge(e,t){let i=c=>{let d=this.toLogicalFloatSides(c),p=d[0];return e==="both"?p==="block-end":e==="inline-start"?d.includes("inline-end")||p==="block-end":e==="inline-end"?d.includes("inline-start")||p==="block-start"||p==="block-end":!1};function n(c){return d=>!i(d.float.floatSide)&&c.isAnchorAlreadyAppeared(d.float.getId())}function r(c,d){return i(c.floatSide)?!1:c.continuations.some(n(d))}let s=t.getPaddingRect(),o=t.vertical?s.x1:s.y2,a=this;for(;a;){if(a.state.floatsDeferredToNext.some(n(a)))return o;a=a.attachedParent}function h(c){return c.floatFragments.some(d=>r(d,c))||c.state.children.some(d=>h(d))}if(e==="column"||e==="region"||e==="page"){for(a=this;a;a=a.attachedParent)if(a.floatReference===e){if(h(a))return o;break}}let l=this.getLimitValue("block-start",null,t.layoutContext,t.clientLayout,r);return this.getLimitValue("block-end",null,t.layoutContext,t.clientLayout,r)*t.getBoxDir()<o*t.getBoxDir()?o:l}getPageFloatPlacementCondition(e,t,i){if(e.floatReference!==this.floatReference)return this.getParent(e.floatReference).getPageFloatPlacementCondition(e,t,i);let n={"block-start":!0,"block-end":!0,"inline-start":!0,"inline-end":!0};if(!i)return n;let r=this.toLogicalFloatSides(t)[0],s=this.toLogical(i),o;s==="all"?o=["block-start","block-end","inline-start","inline-end"]:s==="both"?o=["inline-start","inline-end"]:s==="same"?r==="snap-block"?o=["block-start","block-end"]:o=[r]:o=[s];let a=e.getOrder();function h(d){return p=>(!d||p.floatSide.includes(d))&&p.getOrder()<a}function l(d,p){return d.state.children.some(f=>f.floatFragments.some(h(p))||l(f,p))}function c(d,p){let f=d.parent;return!!f&&(f.floatFragments.some(h(p))||c(f,p))}if(i==="column"||i==="region"||i==="page"){for(let d=this;d;d=d.attachedParent)if(d.floatReference===i){(d.floatFragments.some(h(null))||l(d,null))&&(n["block-start"]=!1,n["block-end"]=!1,n["inline-start"]=!1,n["inline-end"]=!1);break}return n}return o.forEach(d=>{switch(d){case"block-start":n[d]=!l(this,d);break;case"block-end":n[d]=!c(this,d);break;case"inline-start":case"inline-end":n[d]=!this.floatFragments.some(h(d));break;default:throw new Error(`Unexpected side: ${d}`)}}),n}isColumnFullWithPageFloats(e){let t=e.layoutContext,i=e.clientLayout,n=this.getLimitValuesInner(t,i);for(let s=this.attachedParent;s;s=s.attachedParent){let o=s.getLimitValuesInner(t,i);e.vertical?(o.right<n.right&&(n.right=o.right,n.floatMinWrapBlockStart=o.floatMinWrapBlockStart),o.left>n.left&&(n.left=o.left,n.floatMinWrapBlockEnd=o.floatMinWrapBlockEnd)):(o.top>n.top&&(n.top=o.top,n.floatMinWrapBlockStart=o.floatMinWrapBlockStart),o.bottom<n.bottom&&(n.bottom=o.bottom,n.floatMinWrapBlockEnd=o.floatMinWrapBlockEnd))}let r=Math.max(n.floatMinWrapBlockStart,n.floatMinWrapBlockEnd);return(e.vertical?n.right-n.left:n.bottom-n.top)<=r}getMaxBlockSizeOfPageFloats(){let e=this.container.vertical;return this.floatFragments.length?Math.max.apply(null,this.floatFragments.map(t=>{let i=t.area;return e?i.width:i.height})):0}},nr=[],Hn=class{static register(e){nr.push(e)}findByNodeContext(e){for(let t=nr.length-1;t>=0;t--){let i=nr[t];if(i.appliesToNodeContext(e))return i}throw new Error(`No PageFloatLayoutStrategy found for ${e}`)}findByFloat(e){for(let t=nr.length-1;t>=0;t--){let i=nr[t];if(i.appliesToFloat(e))return i}throw new Error(`No PageFloatLayoutStrategy found for ${e}`)}},tb=class{appliesToNodeContext(e){return Oi(e.floatReference)}appliesToFloat(e){return!0}createPageFloat(e,t,i){let n=e.floatReference,r=e.floatSide,s=e.toNodePosition(),o=!!t.generatingNodePosition;return i.resolveFloatReferenceFromColumnSpan(n,e.columnSpan,e).thenAsync(a=>{n=a,t.flowName;let h=new Xp(s,n,r,e.clearSide,t.flowName,e.floatMinWrapBlock);if(h.insidePageFloatArea=o,o){let l=t.generatingNodePosition;l&&(h.parentPageFloat=t.findPageFloatByNodePosition(l))}return t.addPageFloat(h),I(h)})}createPageFloatFragment(e,t,i,n,r){let s=e[0].float;return new qp(s.floatReference,t,i,e,n,r)}findPageFloatFragment(e,t){return t.findPageFloatFragment(e)}adjustPageFloatArea(e,t,i){return I(void 0)}forbid(e,t){}};Hn.register(new tb);var Qp="data-vivliostyle-footnote-first-ref",ef="data-vivliostyle-footnote-referenced";function Co(e,t){return!!(e&&e.match(new RegExp(`(^|\\s)${t}($|\\s)`)))}function Et(e){if(e.localName!=="aside")return!1;if(Co(e.getAttribute("role"),"doc-footnote"))return!0;let t=e.getAttributeNS("http://www.idpf.org/2007/ops","type")||e.getAttribute("epub:type");return Co(t,"footnote")}function Yt(e){if(e.localName!=="a")return!1;if(Co(e.getAttribute("role"),"doc-noteref"))return!0;let t=e.getAttributeNS("http://www.idpf.org/2007/ops","type")||e.getAttribute("epub:type");return Co(t,"noteref")}function fh(e,t){if(!Yt(e))return null;let i=e.getAttribute("href")||e.getAttributeNS("http://www.w3.org/1999/xlink","href");if(!i)return null;let n=co(i,t);return n==="#"?null:n}function tf(e,t,i){let n=fh(e,t);if(!n)return null;let r=i(n);return r&&Et(r)?r:null}function ib(e,t,i,n,r){if(r.value)return;let s=e.getElementsByTagName("a");for(let o=0;o<s.length;o++){let a=s.item(o),h=fh(a,t);!h||n.has(h)||n.set(h,i(a))}r.value=!0}function Vu(e,t,i,n,r){if(e.localName!=="a"||!Yt(e))return!0;let s=fh(e,t);if(!s)return!0;ib(e.ownerDocument,t,i,n,r);let o=n.get(s);return o==null||i(e)===o}function gh(e,t){let i=t.getProp(e,"footnote-display");if(i)return i;let n=t.getProp(e,"display");return n?.value===v.inline?t.createCascadeValue(v.inline,n.priority):null}function nb(e,t,i,n,r,s,o){if(e.namespaceURI!=="http://www.pyroxy.com/ns/shadow"||e.localName!=="include"||!e.classList.contains("-vivliostyle-footnote-content"))return t;let a=i?.owner;if(!(a instanceof Element)||!Yt(a))return t;let h=tf(a,n,r);if(!h)return t;let l=a.getAttribute(s);l?(e.setAttribute(s,l),h.setAttribute(s,l)):(e.removeAttribute(s),h.removeAttribute(s));let c=o.getStyle(h);if(!c)return t;let d={...t},p=gh(c,o),f=o.getProp(c,"footnote-policy"),g=o.getStyleMap(c,"_pseudos"),m=g?.after;if(p&&(d["footnote-display"]=p),f&&(d["footnote-policy"]=f),m){let w=o.getMutableStyleMap(d,"_pseudos");w.after={...m}}return d}function rb(e,t,i,n,r){if(!(i?.type===at.ROOTED&&Et(e)))return t;let s=r.getStyle(e);if(!s)return t;let o={...t},a=gh(s,r),h=r.getProp(s,"footnote-policy"),l=r.getStyleMap(s,"_pseudos"),c=l?.["footnote-marker"],d=r.getProp(c,"content"),p=r.getProp(c,"list-style-position");if(a&&(o["footnote-display"]=a),h&&(o["footnote-policy"]=h),d&&p?.evaluate(n,"list-style-position")===v.outside){let f=r.filterFootnoteMarkerContent(d,e);o["--viv-marker-content"]=r.createCascadeValue(f,0),o.display=r.createCascadeValue(D("list-item"),0),o["list-style-position"]=r.createCascadeValue(v.outside,0),o["list-style-type"]=r.createCascadeValue(v.none,0),o["list-style-image"]=r.createCascadeValue(v.none,0)}return o}function sb(e,t,i){var n,r;let s=t?.type===at.ROOTED&&Et(e)?i.getStyle(e):null;return{sourceStyle:s,footnoteDisplay:((n=gh(s,i))==null?void 0:n.value)||null,footnotePolicy:((r=i.getProp(s,"footnote-policy"))==null?void 0:r.value)||null}}function nf(e,t){if(e instanceof q){let i=e.expr.evaluate(t);return typeof i=="string"?new Q(i):typeof i=="number"?new Q(String(i)):e}return e instanceof ee?new ee(e.values.map(i=>nf(i,t))):e}function ob(e,t,i){let n=e?.["_footnote-marker-content"];n&&(t["--viv-marker-content"]=nf(n.value,i))}function ab(e){let t=e.getElementsByTagName("a"),i=new Set;for(let n=0;n<t.length;n++){let r=t.item(n);if(!Yt(r)||!(r instanceof HTMLAnchorElement)||!r.hash||r.href!==r.baseURI.replace(/#.*$/,"")+r.hash)continue;let s=r.hash.substring(1),o=e.getElementById(s);if(o&&Et(o)){let a=r.baseURI.replace(/#.*$/,"")+r.hash;i.has(a)||(i.add(a),r.setAttribute(Qp,"true")),o.setAttribute(ef,"true")}}}Ft("PREPROCESS_SINGLE_DOCUMENT",ab);var lb=qp,hb=.1,Wr=class rf extends Xp{constructor(t,i,n,r,s,o){super(t,i,"block-end",null,n,s),u(this,"footnotePolicy",r),u(this,"policyAnchorNode",o)}isAllowedToPrecede(t){return!(t instanceof rf)}};function ub(e){let t=e.nodeType===Node.ELEMENT_NODE?e:e.parentElement;for(;t;){if(/^(p|li|dd|dt|td|th|blockquote)$/i.test(t.localName)&&!t.querySelector("br"))return t;t=t.parentElement}return e}function sf(e){return e?-1:1}function ul(e,t){return t?e.right:e.top}function mh(e,t){return t?e.left:e.bottom}function of(e){return{left:e.left,top:e.top,right:e.right,bottom:e.bottom,width:e.width,height:e.height}}function af(e,t){let i=of(e.getBoundingClientRect());return ch(i,t),i.right<i.left||i.bottom<i.top?null:i}function cl(e,t){let i=Array.from(e,of);return So(i,t),i.filter(n=>n.right>n.left&&n.bottom>n.top)}function lf(e,t){return e.length?t?Math.min(...e.map(i=>i.left)):Math.max(...e.map(i=>i.bottom)):NaN}function cb(e,t){if(!e.length)return NaN;let i=sf(t),n=e.reduce((r,s)=>ul(s,t)*i<ul(r,t)*i?s:r);return mh(n,t)}function db(e,t){if(!e)return NaN;if(e.nodeType===Node.ELEMENT_NODE){let s=af(e,t);return s?mh(s,t):NaN}let i=e.textContent||"";if(!i.length)return NaN;let n=e.ownerDocument.createRange();n.setStart(e,0),n.setEnd(e,i.length);let r=cl(n.getClientRects(),t);return lf(r,t)}function pb(e,t){let i=e.viewNode;if(!i)return NaN;if(i.nodeType===Node.ELEMENT_NODE){let a=i;if(e.after||!e.inline){let l=af(a,t);if(l)return e.after?mh(l,t):ul(l,t)}let h=cl(a.getClientRects(),t);return cb(h,t)}let n=i.textContent||"";if(!n.length)return NaN;let r=e.offsetInNode;e.after&&(r+=n.length),r=Math.max(0,Math.min(r,n.length-1));let s=i.ownerDocument.createRange();s.setStart(i,r),s.setEnd(i,r+1);let o=cl(s.getClientRects(),t);return lf(o,t)}var Uu=class extends lb{constructor(e,t,i,n){super(e,"block-end",null,t,i,n)}getOrder(){return 1/0}shouldBeStashedBefore(e){return e instanceof Wr?!0:this.getOrder()<e.getOrder()}},fb=class{constructor(e,t,i){u(this,"footnote",e),u(this,"vertical",i),u(this,"anchorEdge"),this.anchorEdge=db(t,i)}allowLayout(e){if(!isNaN(this.anchorEdge)){let i=pb(e,this.vertical);if(!isNaN(i)){let n=sf(this.vertical);return i*n<this.anchorEdge*n-hb}}let t=e.toNodePosition();return!Di(t,this.footnote.nodePosition)}},gb=class{appliesToNodeContext(e){return e.floatSide==="footnote"}appliesToFloat(e){return e instanceof Wr}createPageFloat(e,t,i){var n;let r=Ie.REGION,s=t.getPageFloatLayoutContext(r);t.getPageFloatLayoutContext(Ie.PAGE).hasSameContainerAs(s)&&(r=Ie.PAGE);let o=!!t.generatingNodePosition;o&&r!==Ie.PAGE&&(r=Ie.PAGE);let a=e.toNodePosition();t.flowName;let h=e.sourceNode,l=(n=e.shadowContext)==null?void 0:n.owner;l instanceof Element&&Yt(l)&&(h=l),h=ub(h);let c=new Wr(a,r,t.flowName,e.footnotePolicy,e.floatMinWrapBlock,h);if(c.insidePageFloatArea=o,o){let d=t.generatingNodePosition;d&&(c.parentPageFloat=t.findPageFloatByNodePosition(d))}return t.addPageFloat(c),I(c)}createPageFloatFragment(e,t,i,n,r){let s=e[0].float;return new Uu(s.floatReference,e,n,r)}findPageFloatFragment(e,t){let i=t.getPageFloatLayoutContext(e.floatReference),n=i.container.element,r=i.floatFragments.filter(s=>s instanceof Uu&&(e.floatReference!==Ie.REGION||!s.area.parentElement||s.area.parentElement===n));return r.find(s=>s.hasFloat(e))||r[0]||null}adjustPageFloatArea(e,t,i){e.isFootnote=!0,e.adjustContentRelativeSize=!1;let n=e.element;return i.layoutContext.applyFootnoteStyle(t.vertical,i.layoutContext.nodeContext&&i.layoutContext.nodeContext.direction==="rtl",n).thenAsync(r=>{var s,o;if(e.vertical=r,e.convertPercentageSizesToPx(n),i.setComputedInsets(n,e),i.setComputedWidthAndHeight(n,e),((s=i.clientLayout.getElementComputedStyle(n))==null?void 0:s.boxSizing)==="border-box"){let h=e.vertical?e.paddingLeft+e.paddingRight+e.borderLeft+e.borderRight:e.paddingTop+e.paddingBottom+e.borderTop+e.borderBottom,l=e.vertical?["max-width","min-width","width"]:["max-height","min-height","height"],c=getComputedStyle(n);for(let d of l){let p=c.getPropertyValue(d);if(p&&p!=="none"){let f=parseFloat(p);isNaN(f)||F(n,d,`${Math.max(0,f-h)}px`)}}F(n,"box-sizing","content-box")}let a=i.pageFloatLayoutContext;for(;a;){if(a.ignoreFootnoteAreaMaxHeight){F(n,"max-block-size",""),F(n,e.vertical?"max-width":"max-height","");break}a=(o=a.parent)!=null?o:null}return I(void 0)})}forbid(e,t){let i=e;if(i.footnotePolicy===v.line){let n=t.collectPageFloatAnchors()[i.getId()]||null,r=new fb(i,n,t.getPageFloatLayoutContext(i.floatReference).container.vertical);t.addLayoutConstraint(r,i.floatReference)}}};Hn.register(new gb);var yh=class{calculateOffset(e){return Dn(this.getNodeContext(),e.collectElementsOffset())}breakPositionChosen(e){}getNodeContext(){return null}};function Dn(e,t){return{current:t.reduce((i,n)=>i+n.calculateOffset(e),0),minimum:t.reduce((i,n)=>i+n.calculateMinimumOffset(e),0)}}var hs=class extends yh{constructor(e,t,i,n){super(),u(this,"position",e),u(this,"breakOnEdge",t),u(this,"overflows",i),u(this,"computedBlockSize",n),u(this,"overflowIfRepetitiveElementsDropped"),u(this,"isEdgeUpdated",!1),u(this,"edge",0),this.overflowIfRepetitiveElementsDropped=i}findAcceptableBreak(e,t){return this.updateOverflows(e),t<this.getMinBreakPenalty()?null:e.findEdgeBreakPosition(this)}getMinBreakPenalty(){if(!this.isEdgeUpdated)throw new Error("EdgeBreakPosition.prototype.updateEdge not called");let e=this.isFirstContentOfRepetitiveElementsOwner()&&!this.overflowIfRepetitiveElementsDropped;return(yo(this.breakOnEdge)?1:0)+(this.overflows&&!e?3:0)+(this.position.parent?this.position.parent.breakPenalty:0)}updateEdge(e){var t;let i=e.calculateClonedPaddingBorder(this.position);if(this.edge=Nn(this.position,e.clientLayout,0,e.vertical)+i,!this.position.after&&!this.position.inline){let n=e.parseComputedLength(e.clientLayout.getElementComputedStyle(this.position.viewNode).marginBlockStart);this.edge-=(e.vertical?-1:1)*n}else if(this.position.after&&((t=this.position.shadowContext)==null?void 0:t.root.id)==="table-cell"){let n=e.element.parentElement,r=n?.closest("table, [style*='display: table;']");if(r){let s=r.style.borderCollapse==="collapse",o=0,a=0;for(let h=n;h;h=h.parentElement){let l=e.clientLayout.getElementComputedStyle(h);if((h===n||h===r&&!s)&&(o+=e.parseComputedLength(l.paddingBlockEnd)),h===r&&!s&&(o+=e.parseComputedLength(l.borderSpacing.replace(/^\S+ (\S+)$/,"$1"))),s?a=Math.max(a,e.parseComputedLength(l.borderBlockEndWidth)):(h===n||h===r)&&(a+=e.parseComputedLength(l.borderBlockEndWidth)),h===r)break}this.edge+=(e.vertical?-1:1)*(o+a)}}this.isEdgeUpdated=!0}updateOverflows(e){this.isEdgeUpdated||this.updateEdge(e);let t=this.edge,i=this.calculateOffset(e);this.overflowIfRepetitiveElementsDropped=e.isOverflown(t+(e.vertical?-1:1)*i.minimum),this.overflows=this.position.overflow=e.isOverflown(t+(e.vertical?-1:1)*i.current)}getNodeContext(){return this.position}isFirstContentOfRepetitiveElementsOwner(){let e=this.getNodeContext();if(!e||!e.parent)return!1;let{formattingContext:t}=e.parent;if(!rn.isInstanceOfRepetitiveElementsOwnerFormattingContext(t))return!1;let i=t.getRepetitiveElements();return i?i.isFirstContentNode(e):!1}},rr=class{find(e){let t=Dt("RESOLVE_LAYOUT_PROCESSOR");for(let i=0;i<t.length;i++){let n=t[i](e);if(n)return n}throw new Error(`No processor found for a formatting context: ${e.getName()}`)}},Ln=class{layout(e,t,i){let n=t.asFloatNodeContext(e);return n?t.layoutFloatOrFootnote(n):t.isBreakable(e)?t.layoutBreakableBlock(e):t.layoutUnbreakable(e)}createEdgeBreakPosition(e,t,i,n){return new hs(e.copy(),t,i,n)}startNonInlineElementNode(e){return!1}afterNonInlineElementNode(e,t){return!1}clearOverflownViewNodes(e,t,i,n){var r;if(!i.viewNode||!i.viewNode.parentNode||i.shadowType===xi.ShadowType.ROOTLESS&&Rn(i))return;let s=i.viewNode;s=(r=Up(s))!=null?r:s;let o=s.parentNode;zp(o,s),n&&s.remove()}finishBreak(e,t,i,n){let r=i||t.viewNode!=null&&t.viewNode.nodeType==1&&!t.after;return e.clearOverflownViewNodes(t,r),n&&e.layoutContext.processFragmentedBlockEdge(t),I(!0)}},ia=class{constructor(e){u(this,"parent",e),u(this,"formattingContextType","Block")}getName(){return"Block formatting context (BlockFormattingContext)"}isFirstTime(e,t){return t}getParent(){return this.parent}saveState(){}restoreState(e){}},vh=new Ln,mb=rl.isInstanceOfBlockFormattingContext;Ft("RESOLVE_FORMATTING_CONTEXT",e=>{let t=e.parent;return!t||e.formattingContext!==t.formattingContext?null:e.establishesBFC?new ia(t.formattingContext):null});Ft("RESOLVE_LAYOUT_PROCESSOR",e=>e instanceof ia?vh:null);var wh=class{constructor(){u(this,"initialBreakPositions",null),u(this,"initialStateOfFormattingContext",null),u(this,"initialPosition",null),u(this,"initialFragmentLayoutConstraints",null)}layout(e,t){return this.prepareLayout(e,t),this.tryLayout(e,t)}tryLayout(e,t){let i=z("AbstractLayoutRetryer.tryLayout");this.saveState(e,t);let n=this.resolveLayoutMode(e);return n.doLayout(e,t).then(r=>{let s=n.accept(r,t);s=n.postLayout(r,this.initialPosition,t,s),s?i.finish(r):(this.initialPosition,this.clearNodes(this.initialPosition),this.restoreState(e,t),this.tryLayout(this.initialPosition,t).thenFinish(i))}),i.result()}prepareLayout(e,t){}clearNodes(e){var t,i;let n=(i=e.viewNode)!=null?i:(t=e.parent)==null?void 0:t.viewNode;if(!n)return;let r;for(;r=n.lastChild;)n.removeChild(r);let s;for(;s=n.nextSibling;)s.remove()}saveState(e,t){this.initialPosition=e.copy(),this.initialBreakPositions=[].concat(t.breakPositions),this.initialFragmentLayoutConstraints=[].concat(t.fragmentLayoutConstraints),this.initialStateOfFormattingContext=e.formattingContext.saveState()}restoreState(e,t){t.breakPositions=this.initialBreakPositions,t.fragmentLayoutConstraints=this.initialFragmentLayoutConstraints,e.formattingContext.restoreState(this.initialStateOfFormattingContext)}};function yb(e){return e.nodeContext!==null?e:null}function vb(e){return Yi(e.nodeContext)!==null?e:null}var wb=class{initialState(e){return{nodeContext:e,atUnforcedBreak:!1,break:!1}}startNonDisplayableNode(e){}afterNonDisplayableNode(e){}startIgnoredTextNode(e){}afterIgnoredTextNode(e){}startNonElementNode(e){}afterNonElementNode(e){}startInlineElementNode(e){}afterInlineElementNode(e){}startNonInlineElementNode(e){}afterNonInlineElementNode(e){}finish(e){}},dl=class{constructor(e,t){u(this,"strategy",e),u(this,"layoutContext",t)}iterate(e){let t=this.strategy,i=t.initialState(e),n=z("LayoutIterator");return n.loopWithFrame(r=>{for(;;){let s=yb(i);if(!s)break;let o=this.step(s);if(o.isPending()){o.then(a=>{i.break?r.breakLoop():(i.nodeContext=a,r.continueLoop())});return}else if(i.break){r.breakLoop();return}else i.nodeContext=o.get()}t.finish(i),r.breakLoop()}).then(()=>{n.finish(i.nodeContext)}),n.result()}step(e){let t=this.strategy,i,n=vb(e);return n?n.nodeContext.viewNode.nodeType!==1?Ee(n.nodeContext.viewNode,n.nodeContext.whitespace)?n.nodeContext.after?i=t.afterIgnoredTextNode(n):i=t.startIgnoredTextNode(n):n.nodeContext.after?i=t.afterNonElementNode(n):i=t.startNonElementNode(n):n.nodeContext.inline?n.nodeContext.after?i=t.afterInlineElementNode(n):i=t.startInlineElementNode(n):n.nodeContext.after?i=t.afterNonInlineElementNode(n):i=t.startNonInlineElementNode(n):e.nodeContext.after?i=t.afterNonDisplayableNode(e):i=t.startNonDisplayableNode(e),(i&&i.isPending()?i:I(!0)).thenAsync(()=>e.break?I(null):this.layoutContext.nextInTree(e.nodeContext,e.atUnforcedBreak))}},Er=class extends wb{constructor(e){super(),u(this,"leadingEdge",e)}startNonInlineBox(e){}endEmptyNonInlineBox(e){}endNonInlineBox(e){}initialState(e){return{nodeContext:e,atUnforcedBreak:!!this.leadingEdge&&e.after,break:!1,leadingEdge:this.leadingEdge,breakAtTheEdge:null,onStartEdges:!1,leadingEdgeContexts:[],lastAfterNodeContext:null}}startNonElementNode(e){e.onStartEdges=!1}startNonInlineElementNode(e){return e.leadingEdgeContexts.push(e.nodeContext.copy()),e.breakAtTheEdge=nt(e.breakAtTheEdge,e.nodeContext.breakBefore),e.onStartEdges=!0,this.startNonInlineBox(e)}afterNonInlineElementNode(e){let t,i;return e.onStartEdges?(t=this.endEmptyNonInlineBox(e),i=t&&t.isPending()?t:I(!0),i=i.thenAsync(()=>(e.break||(e.leadingEdgeContexts=[],e.leadingEdge=!1,e.atUnforcedBreak=!1,e.breakAtTheEdge=null),I(!0)))):(t=this.endNonInlineBox(e),i=t&&t.isPending()?t:I(!0)),i.thenAsync(()=>(e.break||(e.onStartEdges=!1,e.lastAfterNodeContext=e.nodeContext.copy(),e.breakAtTheEdge=nt(e.breakAtTheEdge,e.nodeContext.breakAfter)),I(!0)))}},pl=[];function bb(){pl=[]}var Es;function Ns(e){if(e==="")return 0;if(Es===void 0){let i=Intl.Segmenter;Es=typeof i=="function"?new i(void 0,{granularity:"grapheme"}):null}if(Es===null)return[...e].length;let t=0;for(let i of Es.segment(e))t++;return t}var xb=["decimal","disc","square","circle","disclosure-open","disclosure-closed"],Sb=new Set(xb);function Cb(e){return!(e.toLowerCase()==="none"||Sb.has(e))}var Pb=["cyclic","numeric","alphabetic","symbolic","additive","fixed"],kb=new Set(Pb),Eb=["fixed","extends"],Nb=new Set(Eb);function us(e){return e instanceof he&&e.name.toLowerCase()!=="none"}function hf(e){return e.name}function Tb(e){if(e instanceof he)return kb.has(e.name);if(e instanceof ee&&e.values.length===2){let t=e.values[0],i=e.values[1];if(t instanceof he){let n=t.name;return Nb.has(n)&&(n==="fixed"&&i instanceof ut||n==="extends"&&us(i))}}return!1}function Ib(e){let t=ft(e,"system");return t instanceof he&&t.name==="cyclic"}function Ab(e){let t=ft(e,"system");if(t instanceof he&&t.name==="fixed")return!0;if(t instanceof ee&&t.values.length===2){let[i,n]=t.values;return i instanceof he&&i.name==="fixed"&&n instanceof ut}return!1}function Fb(e){let t=ft(e,"system");return t instanceof he?1:t.values[1].num}function Rb(e){let t=ft(e,"system");return t instanceof he&&t.name==="alphabetic"}function Lb(e){let t=ft(e,"system");return t instanceof he&&t.name==="numeric"}function Ob(e){let t=ft(e,"system");return t instanceof he&&t.name==="additive"}function Bb(e){let t=ft(e,"system");if(t instanceof ee&&t.values.length===2){let[i,n]=t.values;return i instanceof he&&i.name==="extends"&&us(n)}return!1}function Mb(e){let t=ft(e,"system");return hf(t.values[1])}function Kt(e){return e instanceof Q||e instanceof he}function mi(e){return e instanceof Q?e.str:e.name}function uf(e){if(Kt(e))return!0;if(e instanceof ee&&e.values.length===2){let t=e.values[0],i=e.values[1];return Kt(t)&&Kt(i)}return!1}function _b(e){if(Kt(e))return{prefix:mi(e),suffix:null};{let t=e.values[0],i=e.values[1];return{prefix:mi(t),suffix:mi(i)}}}function $u(e){return e instanceof ut||e instanceof he&&e.name==="infinite"}function Po(e,t){return e instanceof ut?e.num:t?-1/0:1/0}function fl(e){if(!(e instanceof ee&&e.values.length===2))return!1;let t=e.values[0],i=e.values[1];if(!($u(t)&&$u(i)))return!1;let n=Po(t,!0),r=Po(i,!1);return!(n>r)}function Db(e){return{lower:Po(e.values[0],!0),upper:Po(e.values[1],!1)}}function cf(e){return e instanceof he&&e.name==="auto"||fl(e)||e instanceof _e&&e.values.length>=1&&e.values.every(t=>fl(t))}function zb(e){return e instanceof he?null:(fl(e)?[e]:e.values).map(t=>Db(t))}function ko(e){if(!(e instanceof ee&&e.values.length===2))return!1;let t=e.values[0],i=e.values[1];return t instanceof ut&&t.num>=0&&Kt(i)||Kt(t)&&i instanceof ut&&i.num>=0}function Eo(e){let[t,i]=e.values;return t instanceof ut?[t.num,mi(i)]:[i.num,mi(t)]}function df(e){return ko(e)}function Vb(e){let[t,i]=Eo(e);return{minLength:t,symbol:i}}function pf(e){return Kt(e)||e instanceof ee&&e.values.length>=1&&e.values.every(t=>Kt(t))}function Ub(e){return Kt(e)?[mi(e)]:e.values.map(t=>mi(t))}function ff(e){if(ko(e))return!0;if(e instanceof _e&&e.values.length>=1){let t=1/0;for(let i of e.values){if(!ko(i))return!1;let[n]=Eo(i);if(n>=t)return!1;t=n}return!0}return!1}function $b(e){if(ko(e)){let[t,i]=Eo(e);return[{weight:t,symbol:i}]}else return e.values.map(t=>{let[i,n]=Eo(t);return{weight:i,symbol:n}})}var Hb=["auto","bullets","numbers","words","spell-out"],Wb=new Set(Hb);function Gb(e){return e instanceof he&&Wb.has(e.name)||us(e)}function jb(e,t){switch(e){case"system":return Tb(t);case"negative":return uf(t);case"prefix":case"suffix":return Kt(t);case"range":return cf(t);case"pad":return df(t);case"fallback":return us(t);case"symbols":return pf(t);case"additive-symbols":return ff(t);case"speak-as":return Gb(t);default:return!0}}function ft(e,t){var i;let n=(i=e[t])==null?void 0:i.value;return n??null}function Xb(e,t){return t.some(({lower:i,upper:n})=>e>=i&&e<=n)}function Wn(e){let t=e.get("decimal");return t||(t=ce.createDecimal(e),e.set("decimal",t)),t}var Zs,Js,Qs,eo,to,gr,io,no,Ts,pi,gf,Is,mf,As,yf,Fs,vf,Rs,wf,Ls,bf,Os,xf,wt,Na,Sf,Cf,Hu,Wu,Ta,Gu,mr,Ve=class Ki{constructor(t,i){se(this,wt),u(this,"_store"),se(this,Zs),se(this,Js),se(this,Qs),se(this,eo),se(this,to),se(this,gr),se(this,io),se(this,no),this._store=t;let n=ft(i,"negative");de(this,Zs,n&&uf(n)?_b(n):null);let r=ft(i,"prefix");de(this,Js,r&&Kt(r)?mi(r):null);let s=ft(i,"suffix");de(this,Qs,s&&Kt(s)?mi(s):null);let o=ft(i,"range");de(this,eo,o&&cf(o)?zb(o):null);let a=ft(i,"pad");de(this,to,a&&df(a)?Vb(a):null);let h=ft(i,"fallback");de(this,gr,h&&us(h)?hf(h):null);let l=ft(i,"symbols");de(this,io,l&&pf(l)?Ub(l):null);let c=ft(i,"additive-symbols");de(this,no,c&&ff(c)?$b(c):null)}static create(t,i){return Ib(i)?new Hi(t,i):Ab(i)?new qb(t,i):Rb(i)?new Kb(t,i):Lb(i)?new ju(t,i):Ob(i)?new Zb(t,i):Bb(i)?new Jb(t,i):new Yb(t,i)}static createDecimal(t){var i;return new ju(t,le(i=Ki,pi,gf).call(i))}static createDisc(t){var i;return new Hi(t,le(i=Ki,pi,mf).call(i))}static createSquare(t){var i;return new Hi(t,le(i=Ki,pi,yf).call(i))}static createCircle(t){var i;return new Hi(t,le(i=Ki,pi,vf).call(i))}static createDisclosureOpen(t){var i;return new Hi(t,le(i=Ki,pi,wf).call(i))}static createDisclosureClosed(t){return new Hi(t,le(this,pi,bf).call(this))}static createNone(t){var i;return new Hi(t,le(i=Ki,pi,xf).call(i))}static get CHINESE_LONGHAND_NAMES(){return Xu.NAMES}static createChineseLonghand(t,i){return new Xu(t,i)}static createEthiopicNumeric(t){return new e0(t)}_getNegative(){return H(this,Zs)}static _getNegativeFrom(t){return t._getNegative()}_getPrefix(){return H(this,Js)}static _getPrefixFrom(t){return t._getPrefix()}_getSuffix(){return H(this,Qs)}static _getSuffixFrom(t){return t._getSuffix()}static _getAutoRangeFrom(t){return t._getAutoRange()}_getRange(){return H(this,eo)}static _getRangeFrom(t){return t._getRange()}_getPad(){return H(this,to)}static _getPadFrom(t){return t._getPad()}_getFallback(){var t;return H(this,gr)!=null&&(t=this._store.get(H(this,gr)))!=null?t:null}static _getFallbackFrom(t){return t._getFallback()}_getSymbols(){return H(this,io)}static _getSymbolsFrom(t){return t._getSymbols()}_getAdditiveSymbols(){return H(this,no)}static _getAdditiveSymbolsFrom(t){return t._getAdditiveSymbols()}static _useNegativeSignFrom(t,i){return t._usesNegativeSign(i)}static _generateInitialRepresentationFrom(t,i){return t._generateInitialRepresentation(i)}format(t){return le(this,wt,mr).call(this,t,new Set)}formatMarker(t){return le(this,wt,Sf).call(this)+this.format(t)+le(this,wt,Cf).call(this)}};Zs=new WeakMap,Js=new WeakMap,Qs=new WeakMap,eo=new WeakMap,to=new WeakMap,gr=new WeakMap,io=new WeakMap,no=new WeakMap,Ts=new WeakMap,pi=new WeakSet,gf=function(){var e;return(e=H(Ve,Ts))!=null?e:de(Ve,Ts,{system:new Y(D("numeric"),0),symbols:new Y(new ee([new Q("0"),new Q("1"),new Q("2"),new Q("3"),new Q("4"),new Q("5"),new Q("6"),new Q("7"),new Q("8"),new Q("9")]),0)})},Is=new WeakMap,mf=function(){var e;return(e=H(Ve,Is))!=null?e:de(Ve,Is,{system:new Y(D("cyclic"),0),symbols:new Y(new Q("\u2022"),0),suffix:new Y(new Q(" "),0)})},As=new WeakMap,yf=function(){var e;return(e=H(Ve,As))!=null?e:de(Ve,As,{system:new Y(D("cyclic"),0),symbols:new Y(new Q("\u25AA"),0),suffix:new Y(new Q(" "),0)})},Fs=new WeakMap,vf=function(){var e;return(e=H(Ve,Fs))!=null?e:de(Ve,Fs,{system:new Y(D("cyclic"),0),symbols:new Y(new Q("\u25E6"),0),suffix:new Y(new Q(" "),0)})},Rs=new WeakMap,wf=function(){var e;return(e=H(Ve,Rs))!=null?e:de(Ve,Rs,{system:new Y(D("cyclic"),0),symbols:new Y(new Q("\u25BE"),0),suffix:new Y(new Q(" "),0)})},Ls=new WeakMap,bf=function(){var e;return(e=H(Ve,Ls))!=null?e:de(Ve,Ls,{system:new Y(D("cyclic"),0),symbols:new Y(new Q("\u25B8"),0),suffix:new Y(new Q(" "),0)})},Os=new WeakMap,xf=function(){var e;return(e=H(Ve,Os))!=null?e:de(Ve,Os,{system:new Y(D("cyclic"),0),symbols:new Y(new Q(""),0),suffix:new Y(new Q(""),0)})},wt=new WeakSet,Na=function(){var e;return(e=this._getNegative())!=null?e:{prefix:"-",suffix:null}},Sf=function(){var e;return(e=this._getPrefix())!=null?e:""},Cf=function(){var e;return(e=this._getSuffix())!=null?e:". "},Hu=function(){var e;return(e=this._getRange())!=null?e:this._getAutoRange()},Wu=function(){var e;return(e=this._getPad())!=null?e:{minLength:0,symbol:""}},Ta=function(){var e;return(e=this._getFallback())!=null?e:Wn(this._store)},Gu=function(e,t){let{minLength:i,symbol:n}=le(this,wt,Wu).call(this);if(i===0||n==="")return e;let{prefix:r,suffix:s}=le(this,wt,Na).call(this),o=t?Ns(r)+(s?Ns(s):0):0,a=i-Ns(e)-o;if(a<=0)return e;let h=Ns(n),l=Math.ceil(a/h);return n.repeat(l)+e},mr=function(e,t){var i,n,r;if(t.has(this))return le(i=Wn(this._store),wt,mr).call(i,e,new Set);if(t.add(this),!Xb(e,le(this,wt,Hu).call(this))){let l=le(this,wt,Ta).call(this);return le(n=l,wt,mr).call(n,e,t)}let s=this._usesNegativeSign(e),o=s?Math.abs(e):e,a=this._generateInitialRepresentation(o);if(a===null){let l=le(this,wt,Ta).call(this);return le(r=l,wt,mr).call(r,e,t)}let h=le(this,wt,Gu).call(this,a,s);if(s){let{prefix:l,suffix:c}=le(this,wt,Na).call(this);h=l+h+(c??"")}return h},se(Ve,pi),se(Ve,Ts,null),se(Ve,Is,null),se(Ve,As,null),se(Ve,Fs,null),se(Ve,Rs,null),se(Ve,Ls,null),se(Ve,Os,null);var ce=Ve,Hi=class extends ce{constructor(e,t){super(e,t)}_getAutoRange(){return[{lower:-1/0,upper:1/0}]}_usesNegativeSign(e){return!1}_generateInitialRepresentation(e){let t=this._getSymbols();if(!t||t.length===0)return null;let i=t.length,n=((e-1)%i+i)%i;return t[n]}},ro,qb=class extends ce{constructor(e,t){super(e,t),se(this,ro),de(this,ro,Fb(t))}_getAutoRange(){return[{lower:-1/0,upper:1/0}]}_usesNegativeSign(e){return!1}_generateInitialRepresentation(e){var t;let i=this._getSymbols();if(!i||i.length===0)return null;let n=e-H(this,ro);return(t=i[n])!=null?t:null}};ro=new WeakMap;var Yb=class extends ce{constructor(e,t){super(e,t)}_getAutoRange(){return[{lower:1,upper:1/0}]}_usesNegativeSign(e){return e<0}_generateInitialRepresentation(e){let t=this._getSymbols();if(!t||t.length===0||e<1)return null;let i=t.length,n=t[(e-1)%i],r=Math.ceil(e/i);return n.repeat(r)}},Kb=class extends ce{constructor(e,t){super(e,t)}_getAutoRange(){return[{lower:1,upper:1/0}]}_usesNegativeSign(e){return e<0}_generateInitialRepresentation(e){let t=this._getSymbols();if(!t||t.length<2||e<1)return null;let i=t.length,n="",r=e;for(;r!==0;)r=r-1,n=t[r%i]+n,r=Math.floor(r/i);return n}},ju=class extends ce{constructor(e,t){super(e,t)}_getAutoRange(){return[{lower:-1/0,upper:1/0}]}_usesNegativeSign(e){return e<0}_generateInitialRepresentation(e){let t=this._getSymbols();if(!t||t.length<2)return null;let i=t.length;if(e===0)return t[0];let n="",r=e;for(;r!==0;)n=t[r%i]+n,r=Math.floor(r/i);return n}},Zb=class extends ce{constructor(e,t){super(e,t)}_getAutoRange(){return[{lower:0,upper:1/0}]}_usesNegativeSign(e){return e<0}_generateInitialRepresentation(e){let t=this._getAdditiveSymbols();if(!t||t.length===0)return null;let i="";if(e===0){let r=t.find(s=>s.weight===0);return r?r.symbol:null}let n=e;for(let r of t){let{weight:s,symbol:o}=r;if(s===0||s>n)continue;let a=Math.floor(n/s);if(i+=o.repeat(a),n-=s*a,n===0)return i}return null}},Nr,Pt,Bt,Pf=class extends ce{constructor(t,i){super(t,i),se(this,Pt),se(this,Nr);let n=Mb(i),r=n.toLowerCase();r==="disc"||r==="circle"||r==="square"||r==="disclosure-open"||r==="disclosure-closed"?de(this,Nr,r):de(this,Nr,n)}_getNegative(){var t;return(t=super._getNegative())!=null?t:ce._getNegativeFrom(le(this,Pt,Bt).call(this))}_getPrefix(){var t;return(t=super._getPrefix())!=null?t:ce._getPrefixFrom(le(this,Pt,Bt).call(this))}_getSuffix(){var t;return(t=super._getSuffix())!=null?t:ce._getSuffixFrom(le(this,Pt,Bt).call(this))}_getAutoRange(){return ce._getAutoRangeFrom(le(this,Pt,Bt).call(this))}_getRange(){var t;return(t=super._getRange())!=null?t:ce._getRangeFrom(le(this,Pt,Bt).call(this))}_getPad(){var t;return(t=super._getPad())!=null?t:ce._getPadFrom(le(this,Pt,Bt).call(this))}_getFallback(){var t;return(t=super._getFallback())!=null?t:ce._getFallbackFrom(le(this,Pt,Bt).call(this))}_getSymbols(){var t;return(t=super._getSymbols())!=null?t:ce._getSymbolsFrom(le(this,Pt,Bt).call(this))}_getAdditiveSymbols(){var t;return(t=super._getAdditiveSymbols())!=null?t:ce._getAdditiveSymbolsFrom(le(this,Pt,Bt).call(this))}_usesNegativeSign(t){return ce._useNegativeSignFrom(le(this,Pt,Bt).call(this),t)}_generateInitialRepresentation(t){return super._getSymbols()||super._getAdditiveSymbols()?null:ce._generateInitialRepresentationFrom(le(this,Pt,Bt).call(this),t)}};Nr=new WeakMap,Pt=new WeakSet,Bt=function(e=new Set){var t;if(e.has(this))return Wn(this._store);e.add(this);let i=this._store.get(H(this,Nr));return i?i instanceof Pf?le(t=i,Pt,Bt).call(t,e):i:Wn(this._store)};var Jb=Pf,Qb=["simp-chinese-informal","simp-chinese-formal","trad-chinese-informal","trad-chinese-formal","cjk-ideographic"];function sr(e){return{suffix:new Y(new Q("\u3001"),0),fallback:new Y(D("cjk-decimal"),0),range:new Y(new ee([new ut(-9999),new ut(9999)]),0),negative:new Y(new Q(e),0)}}var Ia,Aa,Bs,Fa,Ms,gl,kf,so,vt=class Ef extends ce{constructor(t,i){var n;let{chars:r,descriptors:s}=le(n=Ef,gl,kf).call(n).get(i);super(t,s),se(this,so),de(this,so,r)}_getAutoRange(){return[{lower:-9999,upper:9999}]}_usesNegativeSign(t){return t<0}_generateInitialRepresentation(t){let i=H(this,so);if(t===0)return i.digits[0];let n=[],r=0,s=t;for(;s>0;)n.unshift({digit:s%10,position:r}),s=Math.floor(s/10),r++;let o=i.informal&&t>=10&&t<=19,a="",h=!1;for(let l=0;l<n.length;l++){let{digit:c,position:d}=n[l],p=l===n.length-1;c===0?!p&&!h&&(h=!0):(h&&(a+=i.digits[0],h=!1),o&&d===1?a+=i.markers[d]:(a+=i.digits[c],d>0&&(a+=i.markers[d])))}return a}};Ia=new WeakMap,Aa=new WeakMap,Bs=new WeakMap,Fa=new WeakMap,Ms=new WeakMap,gl=new WeakSet,kf=function(){var e;return(e=H(vt,Ms))!=null?e:de(vt,Ms,new Map([["simp-chinese-informal",{chars:H(vt,Ia),descriptors:sr("\u8D1F")}],["simp-chinese-formal",{chars:H(vt,Aa),descriptors:sr("\u8D1F")}],["trad-chinese-informal",{chars:H(vt,Bs),descriptors:sr("\u8CA0")}],["trad-chinese-formal",{chars:H(vt,Fa),descriptors:sr("\u8CA0")}],["cjk-ideographic",{chars:H(vt,Bs),descriptors:sr("\u8CA0")}]]))},so=new WeakMap,se(vt,gl),se(vt,Ia,{digits:["\u96F6","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D"],markers:["","\u5341","\u767E","\u5343"],informal:!0}),se(vt,Aa,{digits:["\u96F6","\u58F9","\u8D30","\u53C1","\u8086","\u4F0D","\u9646","\u67D2","\u634C","\u7396"],markers:["","\u62FE","\u4F70","\u4EDF"],informal:!1}),se(vt,Bs,{digits:["\u96F6","\u4E00","\u4E8C","\u4E09","\u56DB","\u4E94","\u516D","\u4E03","\u516B","\u4E5D"],markers:["","\u5341","\u767E","\u5343"],informal:!0}),se(vt,Fa,{digits:["\u96F6","\u58F9","\u8CB3","\u53C3","\u8086","\u4F0D","\u9678","\u67D2","\u634C","\u7396"],markers:["","\u62FE","\u4F70","\u4EDF"],informal:!1}),u(vt,"NAMES",new Set(Qb)),se(vt,Ms,null);var Xu=vt,_s,ml,Nf,yl,No,vl,wl,ci=class Zi extends ce{constructor(t){var i;super(t,le(i=Zi,ml,Nf).call(i))}_getAutoRange(){return[{lower:1,upper:1/0}]}_usesNegativeSign(t){return!1}_generateInitialRepresentation(t){if(t<1)return null;if(t===1)return H(Zi,No)[1];let i=[],n=t;for(;n>0;)i.push(n%100),n=Math.floor(n/100);let r=i.length,s="";for(let o=r-1;o>=0;o--){let a=i[o],h=o%2===1,l=o===r-1;if(!(a===0||l&&a===1||h&&a===1)){let c=Math.floor(a/10),d=a%10;s+=H(Zi,yl)[c]+H(Zi,No)[d]}h?a!==0&&(s+=H(Zi,vl)):o!==0&&(s+=H(Zi,wl))}return s}};_s=new WeakMap,ml=new WeakSet,Nf=function(){var e;return(e=H(ci,_s))!=null?e:de(ci,_s,{range:new Y(new ee([new ut(1),D("infinite")]),0),suffix:new Y(new Q("/ "),0)})},yl=new WeakMap,No=new WeakMap,vl=new WeakMap,wl=new WeakMap,se(ci,ml),se(ci,_s,null),se(ci,yl,["","\u1372","\u1373","\u1374","\u1375","\u1376","\u1377","\u1378","\u1379","\u137A"]),se(ci,No,["","\u1369","\u136A","\u136B","\u136C","\u136D","\u136E","\u136F","\u1370","\u1371"]),se(ci,vl,"\u137B"),se(ci,wl,"\u137C");var e0=ci,Be,yr,t0=class{constructor(){se(this,Be),se(this,yr,new Map),de(this,Be,new Map),H(this,Be).set("none",ce.createNone(H(this,Be))),H(this,Be).set("decimal",ce.createDecimal(H(this,Be))),H(this,Be).set("disc",ce.createDisc(H(this,Be))),H(this,Be).set("square",ce.createSquare(H(this,Be))),H(this,Be).set("circle",ce.createCircle(H(this,Be))),H(this,Be).set("disclosure-open",ce.createDisclosureOpen(H(this,Be))),H(this,Be).set("disclosure-closed",ce.createDisclosureClosed(H(this,Be)));for(let e of ce.CHINESE_LONGHAND_NAMES)H(this,Be).set(e,ce.createChineseLonghand(H(this,Be),e));H(this,Be).set("ethiopic-numeric",ce.createEthiopicNumeric(H(this,Be)))}define(e,t,i){if(!Cb(e))return null;let n=ce.create(H(this,Be),t),r=i&&H(this,yr).get(e);return r&&Vi(i,r)<0||(i?H(this,yr).set(e,i):H(this,yr).delete(e),H(this,Be).set(e,n)),n}getStyle(e){var t;return(t=H(this,Be).get(e))!=null?t:null}format(e,t){var i;return((i=this.getStyle(e))!=null?i:Wn(H(this,Be))).format(t)}formatMarker(e,t){var i;return((i=this.getStyle(e))!=null?i:Wn(H(this,Be))).formatMarker(t)}};Be=new WeakMap,yr=new WeakMap;var On=class{constructor(e){u(this,"validator",e),u(this,"success",null),u(this,"failure",null),u(this,"code",0)}isSpecial(){return this.code!=0}markAsStartGroup(){this.code=-1}isStartGroup(){return this.code==-1}markAsEndGroup(){this.code=-2}isEndGroup(){return this.code==-2}markAsStartAlternate(e){this.code=2*e+1}markAsEndAlternate(e){this.code=2*e+2}isEndAlternate(){return this.code>0&&this.code%2==0}getAlternate(){return Math.floor((this.code-1)/2)}},Wi=class{constructor(e,t){u(this,"where",e),u(this,"success",t),u(this,"what",-1)}},or=class Tf{constructor(){u(this,"nodes",[]),u(this,"connections",[]),u(this,"match",[]),u(this,"nomatch",[]),u(this,"error",[]),u(this,"emptyHead",!0)}connect(t,i){for(let n=0;n<t.length;n++)this.connections[t[n]].what=i;t.splice(0,t.length)}clone(){let t=new Tf;for(let i=0;i<this.nodes.length;i++){let n=this.nodes[i],r=new On(n.validator);r.code=n.code,t.nodes.push(r)}for(let i=0;i<this.connections.length;i++){let n=this.connections[i],r=new Wi(n.where,n.success);r.what=n.what,t.connections.push(r)}return t.match.push(...this.match),t.nomatch.push(...this.nomatch),t.error.push(...this.error),t}addSpecialToArr(t,i,n){let r=this.nodes.length,s=new On(qu);n>=0?i?s.markAsStartAlternate(n):s.markAsEndAlternate(n):i?s.markAsStartGroup():s.markAsEndGroup(),this.nodes.push(s),this.connect(t,r);let o=new Wi(r,!0),a=new Wi(r,!1);t.push(this.connections.length),this.connections.push(a),t.push(this.connections.length),this.connections.push(o)}endSpecialGroup(){let t=[this.match,this.nomatch,this.error];for(let i=0;i<t.length;i++)this.addSpecialToArr(t[i],!1,-1)}startSpecialGroup(){if(this.nodes.length)throw new Error("invalid call");this.addSpecialToArr(this.match,!0,-1)}endClause(t){this.addSpecialToArr(this.match,!1,t)}startClause(t){if(this.nodes.length)throw new Error("invalid call");let i=new On(qu);i.markAsStartAlternate(t),this.nodes.push(i);let n=new Wi(0,!0),r=new Wi(0,!1);this.nomatch.push(this.connections.length),this.connections.push(r),this.match.push(this.connections.length),this.connections.push(n)}addPrimitive(t){let i=this.nodes.length;this.nodes.push(new On(t));let n=new Wi(i,!0),r=new Wi(i,!1);this.connect(this.match,i),this.emptyHead?(this.nomatch.push(this.connections.length),this.emptyHead=!1):this.error.push(this.connections.length),this.connections.push(r),this.match.push(this.connections.length),this.connections.push(n)}isSimple(){return this.nodes.length==1&&!this.nodes[0].isSpecial()}isPrimitive(){return this.isSimple()&&this.nodes[0].validator instanceof ue}addGroup(t,i){if(t.nodes.length==0)return;let n=this.nodes.length;if(i==4&&n==1&&t.isPrimitive()&&this.isPrimitive()){this.nodes[0].validator=this.nodes[0].validator.combine(t.nodes[0].validator);return}for(let s=0;s<t.nodes.length;s++)this.nodes.push(t.nodes[s]);i==4?(this.emptyHead=!0,this.connect(this.nomatch,n)):this.connect(this.match,n);let r=this.connections.length;for(let s=0;s<t.connections.length;s++){let o=t.connections[s];o.where+=n,o.what>=0&&(o.what+=n),this.connections.push(o)}for(let s=0;s<t.match.length;s++)this.match.push(t.match[s]+r);if(i==3&&this.connect(this.match,n),i==2||i==3)for(let s=0;s<t.nomatch.length;s++)this.match.push(t.nomatch[s]+r);else if(this.emptyHead){for(let s=0;s<t.nomatch.length;s++)this.nomatch.push(t.nomatch[s]+r);this.emptyHead=t.emptyHead}else for(let s=0;s<t.nomatch.length;s++)this.error.push(t.nomatch[s]+r);for(let s=0;s<t.error.length;s++)this.error.push(t.error[s]+r);t.nodes=null,t.connections=null}finish(t,i){let n=this.nodes.length;this.nodes.push(t),this.nodes.push(i),this.connect(this.match,n),this.connect(this.nomatch,n+1),this.connect(this.error,n+1);for(let r of this.connections)r.success?this.nodes[r.where].success=this.nodes[r.what]:this.nodes[r.where].failure=this.nodes[r.what];for(let r=0;r<n;r++)if(this.nodes[r].failure==null||this.nodes[r].success==null)throw new Error("Invalid validator state");return this.nodes[0]}},i0=1,To=2,If=4,Ei=8,sn=16,Gn=32,zn=64,Io=128,si=256,oi=512,Ao=1024,Af=2048,Ff=4096,Fo=8192,bh=class extends Zt{constructor(){super()}validateForShorthand(e,t){let i=e[t].visit(this);return i?[i]:null}},ue=class Rf extends bh{constructor(t,i,n){super(),u(this,"allowed",t),u(this,"idents",i),u(this,"units",n)}visitEmpty(t){return this.allowed&i0?t:null}visitSlash(t){return this.allowed&Af?t:null}visitStr(t){return this.allowed&To?t:null}visitIdent(t){return this.idents[t.name.toLowerCase()]||(this.allowed&If||this.allowed&zn&&CSS.supports("color",t.name)?t:null)}visitNumeric(t){return t.num==0&&!(this.allowed&oi)?t.unit=="%"&&this.allowed&Ao?t:null:t.num<0&&!(this.allowed&si)?null:this.units[t.unit]?t:null}visitNum(t){return t.num==0?this.allowed&oi?t:null:t.num<=0&&!(this.allowed&si)?null:this.allowed&sn?t:null}visitInt(t){return t.num==0?this.allowed&oi?t:null:t.num<=0&&!(this.allowed&si)?null:this.allowed&(Gn|sn)?t:this.idents[`${t.num}`]||null}visitHexColor(t){return this.allowed&zn&&/^([0-9A-F]{3,4}|([0-9A-F]{2}){3,4})$/i.test(t.hex)?t:null}visitURL(t){return this.allowed&Io?t:null}visitURange(t){return this.allowed&Ff?t:null}visitSpaceList(t){return null}visitCommaList(t){return null}visitFunc(t){if(t.name.toLowerCase()==="attr"){let i=Ph(t);if(i&&a0(i.type,this.allowed,this.units))return t}if(this.allowed&zn){if(t.name==="device-cmyk"||t.name==="cmyk")return CSS.supports("color","color(srgb 0 0 0)")&&Od(t)!==null?t:null;if(CSS.supports("color",t.toString()))return t}if(this.allowed&Fo){let i=t.visit(new _d);if(CSS.supports("background-image",i.toString()))return t}return t.name==="calc"&&this.allowed&(Ei|sn|Gn|si|oi|Ao)?t:null}visitExpr(t){return this.allowed&2046?t:null}combine(t){let i={},n={};for(let r in this.idents)i[r]=this.idents[r];for(let r in t.idents)i[r]=t.idents[r];for(let r in this.units)n[r]=this.units[r];for(let r in t.units)n[r]=t.units[r];return new Rf(this.allowed|t.allowed,i,n)}},re=Object.create(null),n0=sn|si|oi,r0=Gn|si|oi,Gi=Ei|si|oi|Ao;function cs(e){let t=Object.create(null);for(let i of e)t[i]=Re;return t}var na=cs(["%"]),ra=cs(["em","ex","ch","rem","lh","rlh","vw","vh","vi","vb","vmin","vmax","pvw","pvh","pvi","pvb","pvmin","pvmax","cm","mm","in","px","pt","pc","q"]),Lf={...ra,...na},xh=cs(["deg","grad","rad","turn"]),Sh=cs(["s","ms"]),Ch=cs(["hz","khz"]);function s0(e){return e.replace(/\s+/g,"").toLowerCase()}function sa(e){return e.toLowerCase()}function o0(e){if(e instanceof he)switch(e.name.toLowerCase()){case"string":case"raw-string":return{kind:"string"};case"url":return{kind:"url"};case"color":case"integer":case"number":case"length":case"angle":case"time":case"frequency":return{kind:"syntax",syntax:`<${e.name.toLowerCase()}>`};default:return{kind:"unit",unit:sa(e.name)}}if(e instanceof zt&&e.name.toLowerCase()==="type"){if(e.values.length!==1)return null;let t=s0(e.values[0].stringValue());return t?{kind:"syntax",syntax:t}:null}return null}function Ph(e){var t;if(e.name.toLowerCase()!=="attr"||e.values.length<1||e.values.length>2)return null;let i,n={kind:"string"},r=e.values[0];if(r instanceof he)i=r.name;else if(r instanceof ee){let s=r.values;if(s.length<1||s.length>2||!(s[0]instanceof he)||(i=s[0].name,s.length===2&&(n=o0(s[1]),!n)))return null}else return null;return{attributeName:i,type:n,fallback:(t=e.values[1])!=null?t:null}}function Of(e,t){return!!e[sa(t)]}function vn(e,t){return Object.keys(t).some(i=>Of(e,i))}function a0(e,t,i){switch(e.kind){case"string":return!!(t&To);case"url":return!!(t&(Io|Fo));case"unit":return Of(i,e.unit);case"syntax":switch(e.syntax){case"<string>":return!!(t&To);case"<url>":return!!(t&(Io|Fo));case"<color>":return!!(t&zn);case"<integer>":return!!(t&(Gn|sn|si|oi));case"<number>":return!!(t&(sn|Gn|si|oi));case"<length>":return vn(i,ra);case"<length-percentage>":return vn(i,Lf);case"<percentage>":return vn(i,na);case"<angle>":return vn(i,xh);case"<time>":return vn(i,Sh);case"<frequency>":return vn(i,Ch);default:return!1}}return!1}function bl(e){switch(e.kind){case"string":return null;case"url":return null;case"unit":return new ue(Gi,re,{[sa(e.unit)]:Re});case"syntax":switch(e.syntax){case"<color>":return new ue(zn,re,re);case"<integer>":return new ue(r0,re,re);case"<number>":return new ue(n0,re,re);case"<length>":return new ue(Gi,re,ra);case"<length-percentage>":return new ue(Gi,re,Lf);case"<percentage>":return new ue(Gi,re,na);case"<angle>":return new ue(Gi,re,xh);case"<time>":return new ue(Gi,re,Sh);case"<frequency>":return new ue(Gi,re,Ch);default:return null}}return null}function l0(e){switch(e.kind){case"string":case"url":case"unit":return!0;case"syntax":return e.syntax==="<string>"||e.syntax==="<url>"||!!bl(e)}return!1}function h0(e){switch(e.kind){case"url":return new Qe("about:invalid");case"string":return new Q("");default:return v.unset}}function u0(e,t,i){if(t==null)return null;switch(i.kind){case"string":return new Q(t);case"url":return t?new Qe(t):new Qe("about:invalid");case"unit":{let n=_i(e,new xt(`${t.trim()}${sa(i.unit)}`,null),""),r=bl(i);return n&&r?n.visit(r):null}case"syntax":{if(i.syntax==="<string>")return new Q(t);if(i.syntax==="<url>")return t?new Qe(t):new Qe("about:invalid");let n=_i(e,new xt(t,null),""),r=bl(i);return n&&r?n.visit(r):null}}return null}var qu=new ue(0,re,re),kh=class extends bh{constructor(e){super(),u(this,"successTerminal"),u(this,"failureTerminal"),u(this,"first"),this.successTerminal=new On(null),this.failureTerminal=new On(null),this.first=e.finish(this.successTerminal,this.failureTerminal)}validateList(e,t,i){let n=t?[]:e,r=this.first,s=i,o=null,a=null;for(;r!==this.successTerminal&&r!==this.failureTerminal;){if(s>=e.length){r=r.failure;continue}let h=e[s],l=h;if(r.isSpecial()){let c=!0;r.isStartGroup()?(o?o.push(a):o=[a],a=[]):r.isEndGroup()?o.length>0?a=o.pop():a=null:r.isEndAlternate()?a[r.getAlternate()]="taken":c=a[r.getAlternate()]==null,r=c?r.success:r.failure}else{if(s==0&&!t&&r.validator instanceof Tr&&this instanceof Tr){if(l=new ee(e).visit(r.validator),l){s=e.length,r=r.success;continue}}else if(s==0&&!t&&r.validator instanceof Eh&&this instanceof Tr){if(l=new _e(e).visit(r.validator),l){s=e.length,r=r.success;continue}}else l=h.visit(r.validator);if(!l){r=r.failure;continue}if(l!==h&&e===n){n=[];for(let c=0;c<s;c++)n[c]=e[c]}e!==n&&(n[s-i]=l),s++,r=r.success}}return r===this.successTerminal&&(t?n.length>0:s==e.length)?n:null}validateSingle(e){let t=this.validateList([e],!1,0);return t?t[0]:null}visitEmpty(e){return this.validateSingle(e)}visitSlash(e){return this.validateSingle(e)}visitStr(e){return this.validateSingle(e)}visitIdent(e){return this.validateSingle(e)}visitNumeric(e){return this.validateSingle(e)}visitNum(e){return this.validateSingle(e)}visitInt(e){return this.validateSingle(e)}visitHexColor(e){return this.validateSingle(e)}visitURL(e){return this.validateSingle(e)}visitURange(e){return this.validateSingle(e)}visitSpaceList(e){return null}visitCommaList(e){return null}visitFunc(e){return this.validateSingle(e)}visitExpr(e){return null}},Tr=class extends kh{constructor(e){super(e)}visitSpaceList(e){let t=this.validateList(e.values,!1,0);return t===e.values?e:t?new ee(t):null}visitCommaList(e){let t=this.first,i=!1;for(;t;){if(t.validator instanceof Eh){i=!0;break}t=t.failure}if(i){let n=this.validateList(e.values,!1,0);return n===e.values?e:n?new _e(n):null}return null}validateForShorthand(e,t){return this.validateList(e,!0,t)}},Eh=class extends kh{constructor(e){super(e)}visitSpaceList(e){return this.validateSingle(e)}visitCommaList(e){let t=this.validateList(e.values,!1,0);return t===e.values?e:t?new _e(t):null}validateForShorthand(e,t){let i=this.first,n;for(;i!==this.failureTerminal;){if(n=i.validator.validateForShorthand(e,t),n)return n;i=i.failure}return null}},c0=class extends kh{constructor(e,t){super(t),u(this,"name",e)}validateSingle(e){return null}visitFunc(e){if(e.name.toLowerCase()!=this.name)return null;let t=this.validateList(e.values,!1,0);return t===e.values?e:t?new zt(e.name,t):null}},Yu=class extends bh{validateSingle(e){return null}visitFunc(e){let t=Ph(e);return t&&l0(t.type)?e:null}},Bf=class{tryParse(e,t,i){return t}success(e,t){}},Mf=class extends Bf{constructor(e,t){super(),u(this,"name",t),u(this,"validator"),this.validator=e.validators[this.name]}tryParse(e,t,i){if(i.values[this.name])return t;let n=this.validator.validateForShorthand(e,t);if(n){let r=n.length,s=r>1?new ee(n):n[0];return this.success(s,i),t+r}return t}success(e,t){t.values[this.name]=e}},d0=class extends Mf{constructor(e,t){super(e,t[0]),u(this,"names",t)}success(e,t){for(let i=0;i<this.names.length;i++)t.values[this.names[i]]=e}},p0=class extends Bf{constructor(e,t){super(),u(this,"nodes",e),u(this,"slash",t)}tryParse(e,t,i){let n=t;if(this.slash)if(e[t]==Kn){if(++t==e.length)return n}else return n;let r=this.nodes[0].tryParse(e,t,i);if(r==t)return n;t=r;for(let s=1;s<this.nodes.length&&t<e.length&&(r=this.nodes[s].tryParse(e,t,i),r!=t);s++)t=r;return t}},oa=class extends Zt{constructor(e,t,i){super(),u(this,"validatorSet",e),u(this,"syntax",t),u(this,"propList",i),u(this,"error",!1),u(this,"values",{})}static create(e,t,i){return new this(e,t,i)}clone(e){return new this.constructor(this.validatorSet,this.syntax,this.propList)}finish(e,t){var i,n;if(!this.error){for(let r of this.propList)t.simpleProperty(r,(n=(i=this.values[r])!=null?i:this.validatorSet.defaultValues[r])!=null?n:v.initial,e);return!0}return!1}propagateDefaultingValue(e,t,i){for(let n of this.propList)i.simpleProperty(n,e,t)}validateList(e){return this.error=!0,0}validateSingle(e){return this.validateList([e]),null}visitEmpty(e){return this.validateSingle(e)}visitStr(e){return this.validateSingle(e)}visitIdent(e){return this.validateSingle(e)}visitNumeric(e){return this.validateSingle(e)}visitNum(e){return this.validateSingle(e)}visitInt(e){return this.validateSingle(e)}visitHexColor(e){return this.validateSingle(e)}visitURL(e){return this.validateSingle(e)}visitSpaceList(e){return this.validateList(e.values),null}visitCommaList(e){return this.error=!0,null}visitFunc(e){return this.validateSingle(e)}visitExpr(e){return this.validateSingle(e)}},Jn=class extends oa{validateList(e){let t=0,i=0;for(;t<e.length;){let n=this.syntax[i].tryParse(e,t,this);if(n>t){t=n,i=0;continue}if(++i==this.syntax.length){this.error=!0;break}}return t}},_f=class extends oa{validateList(e){if(e.length>this.syntax.length||e.length==0)return this.error=!0,0;for(let t=0;t<this.syntax.length;t++){let i=t;for(;i>=e.length;)i=i==1?0:i-2;if(this.syntax[t].tryParse(e,i,this)!=i+1)return this.error=!0,0}return e.length}createSyntaxNode(){return new d0(this.validatorSet,this.propList)}},f0=class extends oa{validateList(e){let t=e.length;for(let i=0;i<e.length;i++)if(e[i]===Kn){t=i;break}if(t>this.syntax.length||e.length==0)return this.error=!0,0;for(let i=0;i<this.syntax.length;i++){let n=i;for(;n>=t;)n=n==1?0:n-2;let r;if(t+1<e.length)for(r=t+i+1;r>=e.length;)r=r-(r==t+2?1:2);else r=n;let s=[e[n],e[r]];if(this.syntax[i].tryParse(s,0,this)!=2)return this.error=!0,0}return e.length}},g0=class extends Jn{mergeIn(e,t){var i,n;for(let r of this.propList){let s=(n=(i=t[r])!=null?i:this.validatorSet.defaultValues[r])!=null?n:v.initial,o=e[r];o||(o=[],e[r]=o),o.push(s)}}visitCommaList(e){let t={};for(let i=0;i<e.values.length;i++)if(this.values={},e.values[i]instanceof _e?this.error=!0:(e.values[i].visit(this),this.mergeIn(t,this.values),this.values["background-color"]&&i!=e.values.length-1&&(this.error=!0)),this.error)return null;this.values={};for(let i in t)i=="background-color"?this.values[i]=t[i].pop():this.values[i]=new _e(t[i]);return null}},m0=class Df extends Jn{static create(t,i,n){return new Df(t,i,[...n,"font-family","line-height","font-size","font-stretch","font-variant-ligatures","font-variant-caps","font-variant-numeric","font-variant-east-asian"])}validateList(t){let i=super.validateList(t),n=this.values["font-variant_css2"];n&&(delete this.values["font-variant_css2"],this.values["font-variant-caps"]=n);let r=this.values["font-stretch_css3"];if(r&&(delete this.values["font-stretch_css3"],this.values["font-stretch"]=r),i+2>t.length)return this.error=!0,i;this.error=!1;let s=this.validatorSet.validators;if(!t[i].visit(s["font-size"])){let a=this.values["font-weight"],h=a instanceof zt&&a.name==="calc"?t.indexOf(a):-1;if(h>=0&&t[h].visit(s["font-size"]))delete this.values["font-weight"],i=h;else return this.error=!0,i}if(this.values["font-size"]=t[i++],t[i]===Kn){if(i++,i+2>t.length)return this.error=!0,i;if(!t[i].visit(s["line-height"]))return this.error=!0,i;this.values["line-height"]=t[i++]}let o=i==t.length-1?t[i]:new ee(t.slice(i,t.length));return o.visit(s["font-family"])?(this.values["font-family"]=o,t.length):(this.error=!0,i)}visitCommaList(t){if(t.values[0].visit(this),this.error)return null;let i=[this.values["font-family"]];for(let r=1;r<t.values.length;r++)i.push(t.values[r]);let n=new _e(i);return n.visit(this.validatorSet.validators["font-family"])?this.values["font-family"]=n:this.error=!0,null}visitIdent(t){let i=this.validatorSet.systemFonts[t.name];if(i)for(let n in i)this.values[n]=i[n];else this.error=!0;return null}},y0=class extends Jn{validateList(e){if(e.length===1&&e[0]instanceof he)switch(e[0].name.toLowerCase()){case"normal":e=[this.validatorSet.defaultValues["text-autospace"],this.validatorSet.defaultValues["text-spacing-trim"]];break;case"auto":e=[v.auto,v.auto];break;case"none":e=[D("no-autospace"),D("space-all")];break}return super.validateList(e)}},zf=class extends oa{constructor(e,t,i=[]){super(e,[],i),u(this,"name",t)}clone(e){return new v0(this.validatorSet,this.name,[...this.propList],e)}},v0=class extends zf{constructor(e,t,i,n){super(e,t,i),u(this,"scope",n)}validateValueText(e){let t=this.validatorSet.expandBrowserShorthand(this.name,e);if(!t)return this.error=!0,!1;this.propList=t.propList,this.values={};for(let i of t.propList){let n=t.values[i];if(!n)continue;let r=_i(this.scope,new xt(n,null),"");if(!r)return this.error=!0,!1;this.values[i]=r}return this.error=!1,!0}validateList(e){let t=e.length===1?e[0].toString():new ee(e).toString();return this.validateValueText(t)?e.length:0}visitCommaList(e){return this.validateValueText(e.toString()),null}},Ku=["unicode-bidi","direction","margin-block-start","margin-block-end","margin-inline-start","margin-inline-end","padding-block-start","padding-block-end","padding-inline-start","padding-inline-end","border-block-start-color","border-block-end-color","border-inline-start-color","border-inline-end-color","border-block-start-style","border-block-end-style","border-inline-start-style","border-inline-end-style","border-block-start-width","border-block-end-width","border-inline-start-width","border-inline-end-width","block-start","block-end","inline-start","inline-end","inset-block-start","inset-block-end","inset-inline-start","inset-inline-end","block-size","inline-size","max-block-size","max-inline-size","min-block-size","min-inline-size","behavior","bleed","conflicting-partitions","crop-offset","crop-marks-line-color","enabled","flow-consume","flow-from","flow-into","flow-linger","flow-options","flow-priority","font-display","font-size-adjust","font-stretch_css3","font-variant_css2","glyph-orientation-vertical","marks","min-page-height","min-page-width","repeat-on-break","required","required-partitions","ruby-align","shape-inside","snap-height","snap-width","src","template","text-decoration-skip","text-justify","text-zoom","unicode-range","utilization","wrap-flow"],Vf=class extends Jn{refreshPropList(){this.propList=this.validatorSet.getPropertiesForAll()}validateList(e){return this.error=!0,0}},Zu={SIMPLE:Jn,INSETS:_f,INSETS_SLASH:f0,COMMA:g0,FONT:m0,TEXT_SPACING:y0,ALL:Vf},w0=["initial-letter"],b0=class{constructor(){u(this,"validators",{}),u(this,"prefixes",{}),u(this,"defaultValues",{}),u(this,"namedValidators",{}),u(this,"systemFonts",{}),u(this,"shorthands",{}),u(this,"layoutProps",{}),u(this,"backgroundProps",{}),u(this,"browserShorthandStyle",null),u(this,"browserShorthandMisses",{}),u(this,"browserPropertyNamesForAll",null),u(this,"allPropertyNames",null)}invalidateAllPropertyNames(){this.allPropertyNames=null}getBrowserPropertyNamesForAll(){if(this.browserPropertyNamesForAll)return this.browserPropertyNamesForAll;if(typeof document>"u"||typeof getComputedStyle!="function")return null;let e=document.documentElement;if(!e)return null;let t=getComputedStyle(e),i=[];for(let n=0;n<t.length;n++){let r=t.item(n);!r||ze(r)||Ku.includes(r)||i.push(r)}return this.browserPropertyNamesForAll=i,this.browserPropertyNamesForAll}getPropertiesForAll(){if(this.allPropertyNames)return this.allPropertyNames;let e=new Set;for(let n in this.validators)Ku.includes(n)||e.add(n);let t=this.getBrowserPropertyNamesForAll();if(t)for(let n of t)this.shorthands[n]||e.add(n);let i=Array.from(e);return t&&(this.allPropertyNames=i),i}getBrowserShorthandStyle(){return this.browserShorthandStyle!==null?this.browserShorthandStyle:typeof document>"u"?null:(this.browserShorthandStyle=document.createElement("div").style,this.browserShorthandStyle)}expandBrowserShorthand(e,t){let i=this.getBrowserShorthandStyle();if(!i)return null;i.cssText="",i.setProperty(e,t);let n=Array.from({length:i.length},(s,o)=>i.item(o)).filter(s=>!!s);if(!n.length||n.length===1&&n[0]===e.toLowerCase())return null;let r={};for(let s of n)r[s]=i.getPropertyValue(s);return{propList:n,values:r}}getShorthand(e,t){if(ze(e))return null;e=e.toLowerCase();let i=this.shorthands[e];if(i)return i instanceof Vf&&!this.allPropertyNames&&i.refreshPropList(),i;if(this.validators[e]||this.browserShorthandMisses[e]||t==null)return null;let n=this.expandBrowserShorthand(e,typeof t=="string"?t:t.toString());if(!n)return(typeof t=="string"?!/\bvar\(/i.test(t):!xl(t))&&(this.browserShorthandMisses[e]=!0),null;let r=new zf(this,e,n.propList);return this.shorthands[e]=r,this.invalidateAllPropertyNames(),r}addReplacement(e,t){let i;if(t.type==3)i=new B(t.num,t.text);else if(t.type==7)i=new Id(t.text);else if(t.type==1)i=D(t.text);else throw new Error("unexpected replacement");if(e.isPrimitive()){let n=e.nodes[0].validator.idents;for(let r in n)n[r]=i;return e}throw new Error("unexpected replacement")}newGroup(e,t){let i=new or;if(e=="||"){for(let r=0;r<t.length;r++){let s=new or;s.startClause(r),s.addGroup(t[r],1),s.endClause(r),i.addGroup(s,r==0?1:4)}let n=new or;return n.startSpecialGroup(),n.addGroup(i,3),n.endSpecialGroup(),n}else{let n;switch(e){case" ":n=1;break;case"|":case"||":n=4;break;default:throw new Error("unexpected op")}for(let r=0;r<t.length;r++)i.addGroup(t[r],r==0?1:n);return i}}addCounts(e,t,i){let n=new or;for(let r=0;r<t;r++)n.addGroup(e.clone(),1);if(i==Number.POSITIVE_INFINITY)n.addGroup(e,3);else for(let r=t;r<i;r++)n.addGroup(e.clone(),2);return n}primitive(e){let t=new or;return t.addPrimitive(e),t}newFunc(e,t){let i;switch(e){case"COMMA":i=new Eh(t);break;case"SPACE":i=new Tr(t);break;case"attr":i=new Yu;break;default:i=new c0(e.toLowerCase(),t);break}return this.primitive(i)}initBuiltInValidators(){this.namedValidators.COLOR=this.primitive(new ue(zn,re,re)),this.namedValidators.ATTR=this.primitive(new Yu),this.namedValidators.IMAGE_FUNCTION=this.primitive(new ue(Fo,re,re)),this.namedValidators.POS_INT=this.primitive(new ue(Gn,re,re)),this.namedValidators.POS_NUM=this.primitive(new ue(sn,re,re)),this.namedValidators.POS_PERCENTAGE=this.primitive(new ue(Ei,re,na)),this.namedValidators.NEGATIVE=this.primitive(new ue(si,re,re)),this.namedValidators.ZERO=this.primitive(new ue(oi,re,re)),this.namedValidators.ZERO_PERCENTAGE=this.primitive(new ue(Ao,re,re)),this.namedValidators.POS_LENGTH=this.primitive(new ue(Ei,re,ra)),this.namedValidators.POS_ANGLE=this.primitive(new ue(Ei,re,xh)),this.namedValidators.POS_TIME=this.primitive(new ue(Ei,re,Sh)),this.namedValidators.FREQUENCY=this.primitive(new ue(Ei,re,Ch)),this.namedValidators.RESOLUTION=this.primitive(new ue(Ei,re,{dpi:Re,dpcm:Re,dppx:Re})),this.namedValidators.URI=this.primitive(new ue(Io,re,re)),this.namedValidators.URANGE=this.primitive(new ue(Ff,re,re)),this.namedValidators.IDENT=this.primitive(new ue(If,re,re)),this.namedValidators.STRING=this.primitive(new ue(To,re,re)),this.namedValidators.SLASH=this.primitive(new ue(Af,re,re));let e={"font-family":D("sans-serif")};this.systemFonts.caption=e,this.systemFonts.icon=e,this.systemFonts.menu=e,this.systemFonts["message-box"]=e,this.systemFonts["small-caption"]=e,this.systemFonts["status-bar"]=e}isBuiltIn(e){return!!e.match(/^[A-Z_0-9]+$/)}readNameAndPrefixes(e,t){let i=e.token();if(i.type==0)return null;let n={"":!0};if(i.type==14){do{if(e.consume(),i=e.token(),i.type!=1)throw new Error("Prefix name expected");n[i.text]=!0,e.consume(),i=e.token()}while(i.type==16);if(i.type!=15)throw new Error("']' expected");e.consume(),i=e.token()}if(i.type!=1)throw new Error("Property name expected");if(t==2?i.text=="SHORTHANDS":i.text=="DEFAULTS")return e.consume(),null;let r=i.text;if(e.consume(),t!=2){if(e.token().type!=39)throw new Error("'=' expected");this.isBuiltIn(r)||(this.prefixes[r]=n)}else if(e.token().type!=18)throw new Error("':' expected");return r}parseValidators(e){for(;;){let t=this.readNameAndPrefixes(e,1);if(!t)return;let i=[],n=[],r="",s,o=!0,a=()=>{if(i.length==0)throw new Error("No values");return i.length==1?i[0]:this.newGroup(r,i)},h=c=>{if(o)throw new Error(`'${c}': unexpected`);if(r&&r!=c)throw new Error(`mixed operators: '${c}' and '${r}'`);r=c,o=!0},l=null;for(;!l;){e.consume();let c=e.token();switch(c.type){case 1:if(o||h(" "),this.isBuiltIn(c.text)){let d=this.namedValidators[c.text];if(!d)throw new Error(`'${c.text}' unexpected`);i.push(d.clone())}else{let d={};d[c.text.toLowerCase()]=D(c.text),i.push(this.primitive(new ue(0,d,re)))}o=!1;break;case 5:{let d={};d[`${c.num}`]=new ut(c.num),i.push(this.primitive(new ue(0,d,re))),o=!1;break}case 34:h("|");break;case 25:h("||");break;case 14:o||h(" "),n.push({vals:i,op:r,b:"["}),r="",i=[],o=!0;break;case 6:o||h(" "),n.push({vals:i,op:r,b:"(",fn:c.text}),r="",i=[],o=!0;break;case 15:{s=a();let d=n.pop();if(d.b!="[")throw new Error("']' unexpected");i=d.vals,i.push(s),r=d.op,o=!1;break}case 11:{s=a();let d=n.pop();if(d.b!="(")throw new Error("')' unexpected");i=d.vals,i.push(this.newFunc(d.fn,s)),r=d.op,o=!1;break}case 18:if(o)throw new Error("':' unexpected");e.consume(),i.push(this.addReplacement(i.pop(),e.token()));break;case 22:if(o)throw new Error("'?' unexpected");i.push(this.addCounts(i.pop(),0,1));break;case 36:if(o)throw new Error("'*' unexpected");i.push(this.addCounts(i.pop(),0,Number.POSITIVE_INFINITY));break;case 23:if(o)throw new Error("'+' unexpected");i.push(this.addCounts(i.pop(),1,Number.POSITIVE_INFINITY));break;case 12:{if(e.consume(),c=e.token(),c.type!=5)throw new Error("<int> expected");let d=c.num,p=d;if(e.consume(),c=e.token(),c.type==16){if(e.consume(),c=e.token(),c.type!=5)throw new Error("<int> expected");p=c.num,e.consume(),c=e.token()}if(c.type!=13)throw new Error("'}' expected");i.push(this.addCounts(i.pop(),d,p));break}case 17:if(l=a(),n.length>0)throw new Error(`unclosed '${n.pop().b}'`);break;default:throw new Error("unexpected token")}}e.consume(),this.isBuiltIn(t)?this.namedValidators[t]=l:l.isSimple()?this.validators[t]=l.nodes[0].validator:this.validators[t]=new Tr(l)}}parseDefaults(e){for(;;){let t=this.readNameAndPrefixes(e,2);if(!t)return;let i=[];for(;;){e.consume();let n=e.token();if(n.type==17){e.consume();break}switch(n.type){case 1:i.push(D(n.text));break;case 4:i.push(new It(n.num));break;case 5:i.push(new ut(n.num));break;case 3:i.push(new B(n.num,n.text));break;default:throw new Error("unexpected token")}}this.defaultValues[t]=i.length>1?new ee(i):i[0]}}parseShorthands(e){for(;;){let t=this.readNameAndPrefixes(e,3);if(!t)return;let i=e.nthToken(1),n;i.type==1&&Zu[i.text]?(n=Zu[i.text],e.consume()):n=Jn;let r=!1,s=[],o=!1,a=[],h=[];for(;!r;)switch(e.consume(),i=e.token(),i.type){case 1:if(this.validators[i.text])s.push(new Mf(this,i.text)),i.text.includes("_")||h.push(i.text);else if(this.shorthands[i.text]instanceof _f){let c=this.shorthands[i.text];s.push(c.createSyntaxNode()),h.push(...c.propList)}else throw new Error(`'${i.text}' is neither a simple property nor an inset shorthand`);break;case 19:if(s.length>0||o)throw new Error("unexpected slash");o=!0;break;case 14:a.push({slash:o,syntax:s}),s=[],o=!1;break;case 15:{let c=new p0(s,o),d=a.pop();s=d.syntax,o=d.slash,s.push(c);break}case 17:r=!0,e.consume();break;default:throw new Error("unexpected token")}let l=n.create(this,s,h);this.shorthands[t]=l,this.invalidateAllPropertyNames()}}parse(e){let t=new xt(e,null);this.parseValidators(t),this.parseDefaults(t),this.parseShorthands(t),this.backgroundProps=this.makePropSet(["background"]),this.layoutProps=this.makePropSet(["margin","border","padding","columns","column-gap","column-rule","column-fill"])}makePropSet(e){var t;let i={};for(let n of e){let r=this.shorthands[n],s=r?r.propList:[n];for(let o of s)i[o]=(t=this.defaultValues[o])!=null?t:v.initial}return i}validatePropertyAndHandleShorthand(e,t,i,n,r){var s,o;let a=r.ruleType;if(ze(e)||a==="font-face"){r.simpleProperty(e,t,i);return}if(a==="counter-style"){jb(e,t)?r.simpleProperty(e,t,i):r.invalidPropertyValue(e,t);return}let h="",l=e;e=e.toLowerCase();let c=e.match(/^-([a-z]+)-([-a-z0-9]+)$/);c&&(h=c[1],e=c[2]);let d=h?l:e;if(xl(t)){this.getShorthand(d,t),r.simpleProperty(d,t,i);return}let p=this.prefixes[e],f=Rt(t)?"unset":t.toString();if(!p||!p[h]){if(CSS.supports(l,f)){let m=(s=this.getShorthand(d,f))==null?void 0:s.clone(n);m?J(t)?m.propagateDefaultingValue(t,i,r):(t.visit(m),m.finish(i,r)||r.invalidPropertyValue(l,t)):r.simpleProperty(l,t,i)}else h&&!rd.includes(`-${h}-`)||r.unknownProperty(l,t);return}else if(w0.includes(e)&&!Object.keys(p).some(m=>Gs(m?`-${m}-`:"",e))){r.unknownProperty(l,t);return}let g=this.validators[e];if(g){let m=J(t)||t.isExpr()?t:t.visit(g);m?r.simpleProperty(e,m,i):!h&&CSS.supports(e,t.toString())?r.simpleProperty(e,t,i):r.invalidPropertyValue(l,t)}else{let m=(o=this.getShorthand(e,t))==null?void 0:o.clone(n);if(!m){r.unknownProperty(l,t);return}J(t)?m.propagateDefaultingValue(t,i,r):(t.visit(m),m.finish(i,r)||r.invalidPropertyValue(l,t))}}};function x0(){let e=new b0;return e.initBuiltInValidators(),e.parse(op),e}var S0=class extends Zt{constructor(){super(...arguments),u(this,"varFound",!1)}visitFunc(e){return e.name==="var"?this.varFound=!0:this.varFound||this.visitValues(e.values),null}};function xl(e){let t=new S0;return e.visit(t),t.varFound}function Uf(e,t,i){return e-=i,t===0?e===0:e%t===0&&e/t>=0}var C0=class{constructor(e){u(this,"matchers",e)}matches(){return this.matchers.some(e=>e.matches())}},P0=class{constructor(e){u(this,"matchers",e)}matches(){return this.matchers.every(e=>e.matches())}},$f=class oo{constructor(t,i,n){u(this,"elementOffset",t),u(this,"a",i),u(this,"b",n)}static registerFragmentIndex(t,i,n){let r=oo.fragmentIndices;(!r[t]||r[t].priority<=n)&&(r[t]={fragmentIndex:i,priority:n})}static clearFragmentIndices(){oo.fragmentIndices={}}matches(){let t=oo.fragmentIndices[this.elementOffset];return t!=null&&t.fragmentIndex!=null&&Uf(t.fragmentIndex,this.a,this.b)}};u($f,"fragmentIndices",{});var aa=$f,Ds=class{static buildViewConditionMatcher(e,t){let i=t.split("_");return i[0]=="NFS"?new aa(e,parseInt(i[1],10),parseInt(i[2],10)):(`${t}`,null)}static buildAllMatcher(e){return new P0(e)}static buildAnyMatcher(e){return new C0(e)}},Hf={"border-collapse":!0,"border-spacing":!0,"caption-side":!0,"clip-rule":!0,color:!0,"color-interpolation":!0,"color-rendering":!0,cursor:!0,direction:!0,"empty-cells":!0,fill:!0,"fill-opacity":!0,"fill-rule":!0,"font-kerning":!0,"font-size":!0,"font-size-adjust":!0,"font-family":!0,"font-feature-settings":!0,"font-style":!0,"font-stretch":!0,"font-variant-ligatures":!0,"font-variant-caps":!0,"font-variant-numeric":!0,"font-variant-east-asian":!0,"font-weight":!0,"glyph-orientation-vertical":!0,"hanging-punctuation":!0,hyphens:!0,"hyphenate-character":!0,"hyphenate-limit-chars":!0,"hyphenate-limit-last":!0,"image-rendering":!0,"image-resolution":!0,"letter-spacing":!0,"line-break":!0,"line-height":!0,"list-style-image":!0,"list-style-position":!0,"list-style-type":!0,marker:!0,"marker-end":!0,"marker-mid":!0,"marker-start":!0,orphans:!0,"overflow-wrap":!0,"paint-order":!0,"pointer-events":!0,quotes:!0,"ruby-align":!0,"ruby-position":!0,"shape-rendering":!0,stroke:!0,"stroke-dasharray":!0,"stroke-dashoffset":!0,"stroke-linecap":!0,"stroke-linejoin":!0,"stroke-miterlimit":!0,"stroke-opacity":!0,"stroke-width":!0,"tab-size":!0,"text-align":!0,"text-align-last":!0,"text-anchor":!0,"text-autospace":!0,"text-decoration-skip":!0,"text-decoration-skip-ink":!0,"text-emphasis-color":!0,"text-emphasis-position":!0,"text-emphasis-style":!0,"text-fill-color":!0,"text-combine-upright":!0,"text-indent":!0,"text-justify":!0,"text-orientation":!0,"text-rendering":!0,"text-shadow":!0,"text-size-adjust":!0,"text-spacing-trim":!0,"text-stroke-color":!0,"text-stroke-width":!0,"text-transform":!0,"text-underline-offset":!0,"text-underline-position":!0,"text-wrap":!0,"text-wrap-mode":!0,"text-wrap-style":!0,visibility:!0,"white-space":!0,widows:!0,"word-break":!0,"word-spacing":!0,"writing-mode":!0},k0=["image-resolution","orphans","widows"];function E0(){return Dt("POLYFILLED_INHERITED_PROPS").reduce((e,t)=>e.concat(t()),[].concat(k0))}var N0={"http://www.idpf.org/2007/ops":!0,"http://www.w3.org/1999/xhtml":!0,"http://www.w3.org/2000/svg":!0,"http://www.w3.org/1998/Math/MathML":!0},Sl=["margin-%","padding-%","border-%-width","border-%-style","border-%-color","%"],T0=["max-%","min-%","%"],Ju=(()=>{let e=["left","right","top","bottom"],t={width:!0,height:!0,"max-width":!0,"max-height":!0,"min-width":!0,"min-height":!0};for(let i=0;i<Sl.length;i++)for(let n=0;n<e.length;n++){let r=Sl[i].replace("%",e[n]);t[r]=!0}return t})();function Qn(e,t){let i={};for(let n of Sl)for(let r in e){let s=n.replace("%",r),o=n.replace("%",e[r]);i[s]=o,i[o]=s}for(let n of T0)for(let r in t){let s=n.replace("%",r),o=n.replace("%",t[r]);i[s]=o,i[o]=s}return i}var Wf=Qn({"block-start":"right","block-end":"left","inline-start":"top","inline-end":"bottom"},{"block-size":"width","inline-size":"height"}),Gf=Qn({"block-start":"top","block-end":"bottom","inline-start":"left","inline-end":"right"},{"block-size":"height","inline-size":"width"}),I0=Qn({"block-start":"right","block-end":"left","inline-start":"bottom","inline-end":"top"},{"block-size":"width","inline-size":"height"}),A0=Qn({"block-start":"top","block-end":"bottom","inline-start":"right","inline-end":"left"},{"block-size":"height","inline-size":"width"}),F0=Qn({inside:"right",outside:"left"},{}),R0=Qn({inside:"left",outside:"right"},{}),Ra=class{constructor(e,t){u(this,"name",e),u(this,"parent",t),u(this,"order",0),u(this,"children",[])}},L0=class{constructor(){u(this,"root",new Ra(null,null))}register(e,t){let i=e??this.root;if(t)for(let n of t){let r=i.children.find(s=>s.name===n);r||(r=new Ra(n,i),i.children.push(r)),i=r}else{let n=new Ra(null,i);i.children.push(n),i=n}return this.renumber(),i}renumber(){let e=0,t=i=>{for(let n of i.children)t(n);i.order=e++};for(let i of this.root.children)t(i)}},Ro=16777216,O0=4,B0=0;function ds(){return++B0}function Qu(e){switch(Math.floor(e.priority/Ro)){case 0:return 0;case 1:case 6:return 1;default:return 2}}function ec(e){switch(Math.floor(e.priority/Ro)){case 0:return 0;case 1:case 6:return 1;case 3:case 4:return 3;default:return 2}}function Lo(e){return e.layer?e.layer.order:1/0}function Vi(e,t){let i=Math.floor(e.priority/Ro),n=Math.floor(t.priority/Ro);if(i!==n)return i-n;if(e.layer!==t.layer){let r=Lo(e),s=Lo(t);if(r!==s){let o=r>s?1:-1;return i>=O0?-o:o}}return e.priority-t.priority}var Y=class Cl{constructor(t,i,n=null,r=0){u(this,"value",t),u(this,"priority",i),u(this,"layer",n),u(this,"ruleId",r)}getBaseValue(){return this}withValue(t){return t===this.value?this:new Cl(t,this.priority,this.layer,this.ruleId)}filterValue(t){return this.withValue(this.value.visit(t))}increaseSpecificity(t){return t==0?this:new Cl(this.value,this.priority+t,this.layer,this.ruleId)}evaluate(t,i,n,r){return i&&ze(i)?this.value:zo(t,this.value,i,n,r)}isEnabled(t){return!0}},Pl=class kl extends Y{constructor(t,i,n,r=null,s=0){super(t,i,r,s),u(this,"condition",n)}getBaseValue(){return new Y(this.value,this.priority,this.layer,this.ruleId)}withValue(t){return t===this.value?this:new kl(t,this.priority,this.condition,this.layer,this.ruleId)}increaseSpecificity(t){return t==0?this:new kl(this.value,this.priority+t,this.condition,this.layer,this.ruleId)}isEnabled(t){try{return!!this.condition.evaluate(t)}catch(i){Z.warn(i)}return!1}};function El(e,t,i){return(!t||Vi(i,t)>=0)&&i.isEnabled(e)?i.getBaseValue():t}function ei(e,t,i,n){if(!e)return;if(!i){delete e[t];return}if(n&&!i.isEnabled(n))return;M0(e,t,i);let r=e[t];(!r||Vi(i,r)>=0)&&(e[t]=n?i.getBaseValue():i)}var Ir=new Set;function ps(e,t,i){var n;if(Rt(t)){Ir.add(e);return}if(!by(t))return;Ir.add(e);let r=(n=i?.getShorthand(e,t))==null?void 0:n.propList;if(r)for(let s of r)Ir.add(s)}var Oo=new WeakMap;function M0(e,t,i){if(!Ir.has(t)||i.value===Re)return;let n=Oo.get(e);n||(n={},Oo.set(e,n));let r=n[t];if(!r){r=n[t]=[];let s=e[t];s&&s.value!==Re&&r.push(s)}r.push(i)}function _0(e,t){switch(t.value){case v.revert_rule:return e.ruleId===t.ruleId;case v.revert_layer:return ec(e)===ec(t)&&Lo(e)>=Lo(t);default:return Qu(e)>=Qu(t)}}function D0(e,t,i){let n=i;for(;Rt(t.value);){n=n.filter(s=>!_0(s,t));let r=null;for(let s of n)(!r||Vi(s,r)>=0)&&(r=s);if(!r)return ze(e)?v.initial:t.value;t=r}return t.value}function jn(e,t=!1){var i;if(!Ir.size)return!1;let n=Oo.get(e),r=!1;for(let s in e)if(Fr(s)){let o=ht(e,s);for(let a in o)jn(o[a],t)&&(r=!0)}else if(s==="_viewConditionalStyles")for(let o of Nh(e))jn(o.styles,t)&&(r=!0);else if(Fi(s)){let o=me(e,s);if(!o||!Rt(o.value))continue;if(t&&ze(s)){e[s]=o.withValue(v.initial);continue}let a=D0(s,o,(i=n?.[s])!=null?i:[]);e[s]=o.withValue(a),xl(a)&&(r=!0)}return t&&Oo.delete(e),r}var jf={"region-id":!0,"fragment-selector-id":!0},Ar="data-viv-footnote-counter";function Bo(e){let t=e.getAttribute(Ar);if(!t)return Object.create(null);let i;try{i=JSON.parse(t)}catch{return Object.create(null)}if(!i||typeof i!="object"||Array.isArray(i))return Object.create(null);let n=Object.create(null);return Object.entries(i).forEach(([r,s])=>{if(Array.isArray(s)){let o=s.filter(a=>typeof a=="number"&&isFinite(a));n[r]=o}else typeof s=="number"&&isFinite(s)&&(n[r]=[s])}),n}function Xf(e,t,i){let n=Bo(e);n[t]=i,e.setAttribute(Ar,JSON.stringify(n))}function z0(e,t){var i,n;if(!Yt(e)||e.hasAttribute(Qp))return null;let r=Bo(e)[t];if(r)return r;let s=e.getAttribute("href")||e.getAttributeNS("http://www.w3.org/1999/xlink","href");if(!s)return null;let o=e.baseURI||((i=e.ownerDocument)==null?void 0:i.baseURI)||"",a=co(s,o);if(a==="#"||a.replace(/#.*$/,"")!==o.replace(/#.*$/,""))return null;let h=a.indexOf("#");if(h<0||h===a.length-1)return null;let l=(n=e.ownerDocument)==null?void 0:n.getElementById(a.substring(h+1));if(!(l instanceof Element))return null;let c=Bo(l)[t];return c?(Xf(e,t,c),c):null}function V0(e){let t=me(e,"content");return!!t&&At(t.value)}function U0(e){return!!jf[e]}function Fr(e){return e.charAt(0)==="_"&&e!=="_viewConditionalStyles"}function Fi(e){return e.charAt(0)!=="_"&&!jf[e]}function Bn(e){return!!Hf[e]||ze(e)}function me(e,t){return e[t]}function Mi(e,t,i){i?e[t]=i:delete e[t]}function ht(e,t){return e[t]}function hi(e,t){let i=e[t];return i||(i={},e[t]=i),i}var Nh=e=>{let t=e._viewConditionalStyles;return t||(t=[],e._viewConditionalStyles=t),t};function qf(e,t){return e[t]}function Yf(e,t){let i=e[t];return i||(i=[],e[t]=i),i}function Mo(e,t,i,n,r,s,o,a){var h;if([{id:r,styleKey:"_pseudos"},{id:s,styleKey:"_regions"}].forEach(l=>{if(l.id){let c=hi(t,l.styleKey);t=c[l.id],t||(t={},c[l.id]=t)}}),o){let l=Nh(t);t={},l.push({styles:t,matcher:o})}for(let l in i)if(!Fr(l))if(U0(l)){let c=qf(i,l),d=Yf(t,l);Array.prototype.push.apply(d,c)}else{let c=me(i,l);if(!c.isEnabled(e))continue;let d=c.increaseSpecificity(n);ei(t,l,d,e);let p=(h=a?.getShorthand(l,d.value))==null?void 0:h.propList;if(p)for(let f of p){let g=d.withValue(Re);ei(t,f,g,e)}}}function $0(e,t){let i={};for(let n=0;n<t.length;n++)Mo(e,i,t[n],0,null,null,null,null);return i}function Th(e,t){if(e.length>0){e.sort((i,n)=>n.getPriority()-i.getPriority());for(let i=e.length-1;i>=0;i--)t=e[i].wire(t)}return t}var H0=class extends dn{constructor(e,t){super(),u(this,"props",e),u(this,"context",t),u(this,"propName","")}setPropName(e){this.propName=e}getFontSize(){let e=me(this.props,"font-size");if(!e.value.isNumeric())return wi.em;let t=e.value;if(!Qm(t.unit))throw new Error("Unexpected state");return t.num*wi[t.unit]}visitNumeric(e){return this.propName==="font-size"?Nl(e,this.getFontSize(),this.context):e.unit==="em"||e.unit==="rem"||e.unit==="lh"||e.unit==="rlh"?Ih(e,this.getFontSize(),this.context):e}visitExpr(e){return this.propName=="font-size"?zo(this.context,e,this.propName).visit(this):e}};function Ih(e,t,i){let n=e.unit,r=e.num;return n==="em"?new B(r*t,"px"):n==="rem"?new B(r*i.fontSize(),"px"):n==="rlh"?new B(r*i.rootLineHeight,"px"):e}function Nl(e,t,i){e=Ih(e,t??0,i);let n=e.unit,r=e.num;return n==="px"?e:n==="%"?new B(r/100*(t??0),"px"):new B(r*i.queryUnitSize(n,!1),"px")}var Kf=class{constructor(e,t,i,n){u(this,"instance",e),u(this,"currentStyle",t),u(this,"currentClassNames",i),u(this,"currentEpubTypes",n)}},Zf=class extends Kf{constructor(e,t,i,n,r){super(e,t,i,n),u(this,"currentElement",r)}},er=class{apply(e){}mergeWith(e){return new W0([this,e])}},zs=class extends er{constructor(e){super(),u(this,"conditionItem",e)}apply(e){e.instance.pushConditionItem(this.conditionItem.fresh(e.instance))}},W0=class extends er{constructor(e){super(),u(this,"list",e)}apply(e){for(let t=0;t<this.list.length;t++)this.list[t].apply(e)}mergeWith(e){return this.list.push(e),this}},Ah=class extends er{constructor(e,t,i,n,r){super(),u(this,"style",e),u(this,"specificity",t),u(this,"pseudoelement",i),u(this,"regionId",n),u(this,"viewConditionId",r)}apply(e){Mo(e.instance.context,e.currentStyle,this.style,this.specificity,this.pseudoelement,this.regionId,e.instance.buildViewConditionMatcher(this.viewConditionId),e.instance.mergeValidatorSet)}},Ae=class{getPriority(){return 0}primarySlot(e){return null}wire(e){return new G0(this,e)}},Fh=class extends er{constructor(e,t){super(),u(this,"condition",e),u(this,"chained",t)}makePrimary(e){let t=this.condition.primarySlot(e);return t?(e.insertInTable(t.table,t.key,this.chained),!0):!1}},G0=class extends Fh{apply(e){this.condition.matches(e)&&this.chained.apply(e)}},j0=class extends Fh{apply(e){if(this.condition.matches(e)){e.instance.dependentConditions.push(this.condition.condition);try{this.chained.apply(e)}finally{e.instance.dependentConditions.pop()}}}},X0=class extends Ae{constructor(e){super(),u(this,"className",e)}matches(e){return e.currentClassNames.includes(this.className)}getPriority(){return 10}primarySlot(e){return{table:e.classes,key:this.className}}},q0=class extends Ae{constructor(e){super(),u(this,"id",e)}matches(e){return e.instance.currentId==this.id||e.instance.currentXmlId==this.id}getPriority(){return 11}primarySlot(e){return{table:e.ids,key:this.id}}},tc=class extends Ae{constructor(e){super(),u(this,"localName",e)}matches(e){return e.instance.currentLocalName==this.localName}getPriority(){return 8}primarySlot(e){return{table:e.tags,key:this.localName}}},Y0=class extends Ae{constructor(e,t){super(),u(this,"ns",e),u(this,"localName",t)}matches(e){return e.instance.currentLocalName==this.localName&&e.instance.currentNamespace==this.ns}getPriority(){return 8}primarySlot(e){let t=e.nsPrefix[this.ns];return t||(t=`ns${e.nsCount++}:`,e.nsPrefix[this.ns]=t),{table:e.nstags,key:t+this.localName}}},K0=class extends Ae{constructor(e,t,i=!1){super(),u(this,"epubTypePatt",e),u(this,"targetLocalName",t),u(this,"useRoleAttr",i)}matches(e){let t=e.currentElement;if(t instanceof HTMLAnchorElement&&t.hash&&t.href==t.baseURI.replace(/#.*$/,"")+t.hash){let i=t.hash.substring(1),n=t.ownerDocument.getElementById(i);if(n&&(!this.targetLocalName||n.localName==this.targetLocalName)){let r=this.useRoleAttr?n.getAttribute("role"):n.getAttributeNS("http://www.idpf.org/2007/ops","type")||n.getAttribute("epub:type");if(r&&r.match(this.epubTypePatt))return!0}}return!1}},Z0=class extends Ae{constructor(e){super(),u(this,"ns",e)}matches(e){return e.instance.currentNamespace==this.ns}};function la(e,t,i,n){var r;if(!e)return!1;let s=((r=e.ownerDocument)==null?void 0:r.contentType)==="text/html",o=s?Gr(i):i;if(t!==null){let a=e.getAttributeNodeNS(t||null,o);return!!a&&n(a)}for(let a of Array.from(e.attributes))if((s?Gr(a.localName):a.localName)===o&&n(a))return!0;return!1}function Gr(e){return e.replace(/[A-Z]/g,t=>t.toLowerCase())}function Jf(e){return e==="i"}function ar(e,t){return Array.from(e,i=>{let n=po(i);if(!Jf(t))return n;let r=Gr(i),s=r.toUpperCase();return r!==s&&/^[a-z]$/i.test(i)?`[${r}${s}]`:n}).join("")}function lr(e){return new RegExp(e)}function J0(e,t,i){return Jf(i)?Gr(e)===Gr(t):e===t}var ic=class extends Ae{constructor(e,t){super(),u(this,"ns",e),u(this,"name",t)}matches(e){return la(e.currentElement,this.ns,this.name,()=>!0)}},Q0=class extends Ae{constructor(e,t,i,n=null){super(),u(this,"ns",e),u(this,"name",t),u(this,"value",i),u(this,"caseSensitivity",n)}matches(e){return la(e.currentElement,this.ns,this.name,t=>J0(t.value,this.value,this.caseSensitivity))}getPriority(){return this.name=="type"&&this.ns=="http://www.idpf.org/2007/ops"?9:0}primarySlot(e){return this.name=="type"&&this.ns=="http://www.idpf.org/2007/ops"?{table:e.epubtypes,key:this.value}:null}},ex=class extends Ae{constructor(e,t){super(),u(this,"ns",e),u(this,"name",t)}matches(e){return la(e.currentElement,this.ns,this.name,t=>!!N0[t.value])}getPriority(){return 0}primarySlot(e){return null}},hr=class extends Ae{constructor(e,t,i,n=null){super(),u(this,"ns",e),u(this,"name",t),u(this,"regexp",i),u(this,"caseSensitivity",n)}matches(e){return la(e.currentElement,this.ns,this.name,t=>!!t.value.match(this.regexp))}},tx=class extends Ae{constructor(e){super(),u(this,"langRegExp",e)}matches(e){return!!e.instance.lang.match(this.langRegExp)}},nc=class extends Ae{constructor(){super()}matches(e){return e.instance.isFirst}getPriority(){return 6}},ix=class extends Ae{constructor(){super()}matches(e){return e.instance.isRoot}getPriority(){return 12}},fn=class extends Ae{constructor(e,t){super(),u(this,"a",e),u(this,"b",t)}matchANPlusB(e){return Uf(e,this.a,this.b)}},nx=class extends fn{constructor(e,t){super(e,t)}matches(e){return this.matchANPlusB(e.instance.currentSiblingOrder)}getPriority(){return 5}};function Vs(){return{byNamespace:{},noNamespace:null}}function _o(e,t){let i=t!==null?e.byNamespace[t]:e.noNamespace;return i||(i={},t!==null?e.byNamespace[t]=i:e.noNamespace=i),i}var Tl=class extends fn{constructor(e,t){super(e,t)}matches(e){let t=_o(e.instance.currentSiblingTypeCounts,e.instance.currentNamespace)[e.instance.currentLocalName];return this.matchANPlusB(t)}getPriority(){return 5}},Il=class extends fn{constructor(e,t){super(e,t)}matches(e){let t=e.instance.currentFollowingSiblingOrder;return t===null&&(t=e.instance.currentFollowingSiblingOrder=e.currentElement.parentNode.childElementCount-e.instance.currentSiblingOrder+1),this.matchANPlusB(t)}getPriority(){return 4}},Al=class extends fn{constructor(e,t){super(e,t)}matches(e){let t=e.instance.currentFollowingSiblingTypeCounts,i=e.instance.currentNamespace!==null?t.byNamespace[e.instance.currentNamespace]:t.noNamespace;if(!i){let n=e.currentElement;do{let r=n.namespaceURI,s=n.localName,o=_o(t,r);o[s]=(o[s]||0)+1}while(n=$a(n));i=_o(t,e.instance.currentNamespace)}return this.matchANPlusB(i[e.instance.currentLocalName])}getPriority(){return 4}},rx=class extends Ae{constructor(){super()}matches(e){let t=e.currentElement.firstChild;for(;t;){switch(t.nodeType){case Node.ELEMENT_NODE:return!1;case Node.TEXT_NODE:if(t.length>0)return!1}t=t.nextSibling}return!0}getPriority(){return 4}},sx=class extends Ae{constructor(){super()}matches(e){return e.currentElement.disabled===!1}getPriority(){return 5}},ox=class extends Ae{constructor(){super()}matches(e){return e.currentElement.disabled===!0}getPriority(){return 5}},ax=class extends Ae{constructor(){super()}matches(e){let t=e.currentElement;return t.selected===!0||t.checked===!0}getPriority(){return 5}},lx=class extends Ae{constructor(e){super(),u(this,"selector",e)}matches(e){let t=e.currentElement;try{return!!t&&t.matches(this.selector)}catch{return!1}}},tt=class extends Ae{constructor(e){super(),u(this,"condition",e)}matches(e){return!!e.instance.conditions[this.condition]}wire(e){return new j0(this,e)}getPriority(){return 5}},Qf=class extends er{constructor(){super(),u(this,"applied",!1)}apply(e){this.applied=!0}},Rh=class extends Ae{constructor(e){super(),u(this,"checkAppliedAction"),u(this,"firstActions",[]),u(this,"priority"),this.checkAppliedAction=new Qf,this.priority=Math.max(...e.map(t=>t.length>0?Math.max(...t.map(i=>i.getPriority())):0));for(let t of e)this.firstActions.push(Th(t,this.checkAppliedAction))}matches(e){for(let i of this.firstActions)if(i.apply(e),this.checkAppliedAction.applied)break;let t=this.checkAppliedAction.applied;return this.checkAppliedAction.applied=!1,t===this.positive()}getPriority(){return this.priority}positive(){return!0}},hx=class extends Rh{positive(){return!1}},ux=class extends Rh{constructor(e){super([]),u(this,"selectorTexts",e)}matches(e){for(let i of this.selectorTexts){let n,r;/^\s*[+~]/.test(i)?(r=e.currentElement.parentNode,n=`:scope > :nth-child(${Array.from(r.children).indexOf(e.currentElement)+1}) ${i}`):(r=e.currentElement,n=`:scope ${i}`);try{if(r.querySelector(n)){this.checkAppliedAction.apply(e);break}}catch{}}let t=this.checkAppliedAction.applied;return this.checkAppliedAction.applied=!1,t}},eg=class extends fn{constructor(e,t,i){super(e,t),u(this,"checkAppliedAction"),u(this,"firstActions",[]),this.checkAppliedAction=new Qf;for(let n of i)this.firstActions.push(Th(n,this.checkAppliedAction))}matches(e){for(let r of this.firstActions)if(r.apply(e),this.checkAppliedAction.applied)break;if(!this.checkAppliedAction.applied)return!1;this.checkAppliedAction.applied=!1;let t=e.currentElement,i=1,n=iu(t);for(;n;)this.matchesSelector(n,e)&&i++,n=iu(n);return this.matchANPlusB(i)}matchesSelector(e,t){let i=t.instance,n=i.currentNamespace,r=i.currentLocalName,s=i.currentId,o=i.currentSiblingOrder;i.currentNamespace=e.namespaceURI,i.currentLocalName=e.localName,i.currentId=e.getAttribute("id");let a=1,h=e.previousElementSibling;for(;h;)a++,h=h.previousElementSibling;i.currentSiblingOrder=a;let l=new Zf(i,t.currentStyle,e.classList?Array.from(e.classList):[],t.currentEpubTypes,e);for(let d of this.firstActions)if(d.apply(l),this.checkAppliedAction.applied)break;let c=this.checkAppliedAction.applied;return this.checkAppliedAction.applied=!1,i.currentNamespace=n,i.currentLocalName=r,i.currentId=s,i.currentSiblingOrder=o,c}getPriority(){return 5}},cx=class extends eg{constructor(e,t,i){super(e,t,i)}matches(e){for(let r of this.firstActions)if(r.apply(e),this.checkAppliedAction.applied)break;if(!this.checkAppliedAction.applied)return!1;this.checkAppliedAction.applied=!1;let t=e.currentElement,i=1,n=$a(t);for(;n;)this.matchesSelector(n,e)&&i++,n=$a(n);return this.matchANPlusB(i)}getPriority(){return 4}},ha=class{constructor(e,t,i){u(this,"condition",e),u(this,"viewConditionId",t),u(this,"viewCondition",i)}increment(e){e.increment(this.condition,this.viewCondition)}decrement(e){e.decrement(this.condition,this.viewCondition)}buildViewConditionMatcher(e){return e.buildViewConditionMatcher(this.viewConditionId)}},dx=class tg extends ha{constructor(t,i,n){super(t,i,n)}fresh(t){return new tg(this.condition,this.viewConditionId,this.buildViewConditionMatcher(t))}push(t,i){return i==0&&this.increment(t),!1}pop(t,i){return i==0?(this.decrement(t),!0):!1}},px=class ig extends ha{constructor(t,i,n){super(t,i,n)}fresh(t){return new ig(this.condition,this.viewConditionId,this.buildViewConditionMatcher(t))}push(t,i){return i==0?this.increment(t):i==1&&this.decrement(t),!1}pop(t,i){return i==0?(this.decrement(t),!0):(i==1&&this.increment(t),!1)}},fx=class ng extends ha{constructor(t,i,n){super(t,i,n),u(this,"fired",!1)}fresh(t){return new ng(this.condition,this.viewConditionId,this.buildViewConditionMatcher(t))}push(t,i){return this.fired?(this.decrement(t),!0):!1}pop(t,i){return this.fired?(this.decrement(t),!0):(i==0&&(this.fired=!0,this.increment(t)),!1)}},gx=class rg extends ha{constructor(t,i,n){super(t,i,n),u(this,"fired",!1)}fresh(t){return new rg(this.condition,this.viewConditionId,this.buildViewConditionMatcher(t))}push(t,i){return this.fired&&(i==-1?this.increment(t):i==0&&this.decrement(t)),!1}pop(t,i){if(this.fired){if(i==-1)return this.decrement(t),!0;i==0&&this.increment(t)}else i==0&&(this.fired=!0,this.increment(t));return!1}},mx=class{constructor(e,t,i){u(this,"afterprop",e),u(this,"element",t),u(this,"elementStyle",i)}fresh(e){return this}push(e,t){return!1}pop(e,t){return t==0?(e.processPseudoelementProps(this.afterprop,this.element,this.elementStyle),!0):!1}},yx=class{constructor(e){u(this,"lang",e)}fresh(e){return this}push(e,t){return!1}pop(e,t){return t==0?(e.lang=this.lang,!0):!1}},vx=class{constructor(e){u(this,"oldQuotes",e)}fresh(e){return this}push(e,t){return!1}pop(e,t){return t==0?(e.quotes=this.oldQuotes,!0):!1}},wx=class extends dn{constructor(e,t,i,n){super(),u(this,"element",e),u(this,"scope",t),u(this,"propName",i),u(this,"validatorSet",n),u(this,"hadAttrFunction",!1)}validatePropertyValue(e){var t;if(J(e))return e;let i=this.validatorSet.validators[this.propName];return i?(t=e.visit(i))!=null?t:v.unset:!this.propName||CSS.supports(this.propName,e.toString())?e:v.unset}visitFunc(e){var t;if(e.name.toLowerCase()!=="attr")return super.visitFunc(e);this.hadAttrFunction=!0;let i=Ph(e);if(!i)return super.visitFunc(e);let n=((t=i.fallback)!=null?t:h0(i.type)).visit(this);return!this.element||!this.element.hasAttribute(i.attributeName)?n:u0(this.scope,this.element.getAttribute(i.attributeName),i.type)||n}};function jr(e,t){if(At(e)){if(e instanceof Q)return e.stringValue();if(e instanceof q&&t){let i=e.expr.evaluate(t);return typeof i=="string"?i:typeof i=="number"?String(i):""}if(e instanceof ee)return e.values.map(i=>jr(i,t)).join("")}return""}function Lh(e){if(e instanceof q){let t=e.expr;return t instanceof we&&/^page-counters?-/.test(t.str)}return e instanceof ee||e instanceof _e?e.values.some(t=>Lh(t)):!1}function Fl(e,t){return Lh(e)?e instanceof ee?new ee(e.values.map(i=>Fl(i,t))):e instanceof _e?new _e(e.values.map(i=>Fl(i,t))):e:new Q(jr(e,t))}var Xr=class extends dn{constructor(e,t,i,n,r){super(),u(this,"cascade",e),u(this,"element",t),u(this,"counterResolver",i),u(this,"elementStyle",n),u(this,"pseudoName",r)}getCounterStore(){var e,t;return(t=(e=this.cascade.context)==null?void 0:e.counterStore)!=null?t:null}hasLocalCounterResetOrSet(e){return this.hasLocalCounter(e,"counter-reset",{reset:!0})||this.hasLocalCounter(e,"counter-set",{defaultValue:0})}hasLocalCounterIncrement(e){return this.hasLocalCounter(e,"counter-increment",{})}hasLocalCounter(e,t,i){let n=this.elementStyle[t];if(!n)return!1;let r=n.evaluate(this.cascade.context);if(!r||J(r))return!1;let s=nn(r,i);return Object.prototype.hasOwnProperty.call(s,e)}evaluateAndGetString(e){if(!e)return"";let t=this.cascade.quoteDepth,i=e.visit(this),n=jr(i,this.cascade.context);return this.cascade.quoteDepth=t,n}visitIdent(e){let t=this.cascade,i=t.quotes,n=Math.floor(i.length/2)-1;switch(e.name){case"open-quote":{let r=i[2*Math.min(n,t.quoteDepth)];return t.quoteDepth++,r}case"close-quote":return t.quoteDepth>0&&t.quoteDepth--,i[2*Math.min(n,t.quoteDepth)+1];case"no-open-quote":return t.quoteDepth++,new Q("");case"no-close-quote":return t.quoteDepth>0&&t.quoteDepth--,new Q("")}return e}format(e,t){return this.cascade.counterStyleStore.format(t,e)}formatCounterList(e,t,i){if(!e.length)return this.format(0,i);let n=new yi;for(let r=0;r<e.length;r++)r>0&&n.append(t),n.append(this.format(e[r],i));return n.toString()}formatLastValue(e,t){let i=e.length?e[e.length-1]:0;return this.format(i,t)}buildCounterText(e,t,i,n,r,s=!1,o=!1){var a,h,l,c,d,p,f,g,m;let w=typeof r=="string",b=E=>w?this.formatCounterList(E,r,i):this.formatLastValue(E,i),x=E=>{this.pseudoName==="footnote-call"&&this.element&&Xf(this.element,t,E)},P=(E,R)=>E.length===R.length&&E.every((_,X)=>_===R[X]);if(this.pseudoName==="footnote-call"&&this.element){let E=z0(this.element,t);if(E)return b(E)}if(this.pseudoName==="footnote-marker"&&this.element){let E=Bo(this.element)[t];if(E)return b(E)}let y;if(t==="pages")return b([]);if(!this.element){if(s&&n.length)return y=n,x(y),b(y);if((a=e.isPageControlledCounter)!=null&&a.call(e,t)&&o&&n.length){let E=((h=e.currentPageCounters)==null?void 0:h[t])||[];return y=[(E.length?E[E.length-1]:0)+n[n.length-1]],x(y),b(y)}if(!((l=e.isPageControlledCounter)!=null&&l.call(e,t))){let E=((c=e.currentPageCounters)==null?void 0:c[t])||[];if(E.length)return y=E,x(y),b(y)}}let C=((d=e.currentPageDocCounters)==null?void 0:d[t])||[],S=!this.element&&n.length&&!P(n,C),N=this.element||S?n:C.length?C:n;if((p=e.isPageControlledCounter)!=null&&p.call(e,t)){let E=((f=e.currentPageDocCounters)==null?void 0:f[t])||[],R=((g=e.currentPageCounters)==null?void 0:g[t])||[],_=R.length?R[R.length-1]:0,X=E.length?E[0]:0,te=N.length?N[0]:0,k=_+(te-X);return y=N.length?[k,...N.slice(1)]:R.length?R:[0],x(y),b(y)}return N.length?(y=N,x(y),b(y)):(y=((m=e.currentPageCounters)==null?void 0:m[t])||[],x(y),b(y))}visitFuncCounter(e){var t;let i=e[0].toString(),n=e.length>1?e[1].stringValue():"decimal",r=(this.cascade.counters[i]||[]).slice(),s=!this.element&&this.hasLocalCounterResetOrSet(i),o=!this.element&&this.hasLocalCounterIncrement(i),a=this.getCounterStore();if(a){let l=i==="pages"||((t=a?.isPageControlledCounter)==null?void 0:t.call(a,i)),c=this.counterResolver.pageScope,d=new we(c,()=>this.buildCounterText(a,i,n,r,void 0,s,o),l?`page-counter-${i}`:`counter-${i}`);if(l&&a!=null&&a.registerPageCounterExpr){let p=f=>this.formatLastValue(f,n);a.registerPageCounterExpr(i,p,d)}return new q(d)}let h=this.cascade.counters[i];if(h&&h.length){let l=h&&h.length&&h[h.length-1]||0;return new Q(this.format(l,n))}else{let l=new q(this.counterResolver.getPageCounterVal(i,c=>this.format(c||0,n)));return new ee([l])}}visitFuncCounters(e){var t;let i=e[0].toString(),n=e[1].stringValue(),r=e.length>2?e[2].stringValue():"decimal",s=(this.cascade.counters[i]||[]).slice(),o=!this.element&&this.hasLocalCounterResetOrSet(i),a=!this.element&&this.hasLocalCounterIncrement(i),h=this.getCounterStore();if(h){let p=i==="pages"||((t=h?.isPageControlledCounter)==null?void 0:t.call(h,i)),f=this.counterResolver.pageScope,g=new we(f,()=>this.buildCounterText(h,i,r,s,n,o,a),p?`page-counters-${i}`:`counters-${i}`);return p&&h!=null&&h.registerPageCounterExpr&&h.registerPageCounterExpr(i,m=>this.formatCounterList(m,n,r),g),new q(g)}let l=this.cascade.counters[i],c=new yi;if(l&&l.length)for(let p=0;p<l.length;p++)p>0&&c.append(n),c.append(this.format(l[p],r));let d=new q(this.counterResolver.getPageCountersVal(i,p=>{let f=[];if(p.length)for(let m=0;m<p.length;m++)f.push(this.format(p[m],r));let g=c.toString();return g.length&&f.push(g),f.length?f.join(n):this.format(0,r)}));return new ee([d])}visitFuncTargetCounter(e){let t=e[0],i;t instanceof Qe?i=t.url:i=t.stringValue();let n=e[1].toString(),r=e.length>2?e[2].stringValue():"decimal",s=new q(this.counterResolver.getTargetCounterVal(i,n,o=>this.format(o||0,r)));return new ee([s])}visitFuncTargetCounters(e){let t=e[0],i;t instanceof Qe?i=t.url:i=t.stringValue();let n=e[1].toString(),r=e[2].stringValue(),s=e.length>3?e[3].stringValue():"decimal",o=new q(this.counterResolver.getTargetCountersVal(i,n,a=>{let h=a.map(l=>this.format(l,s));return h.length?h.join(r):this.format(0,s)}));return new ee([o])}visitFuncTargetText(e){let t=e[0],i;t instanceof Qe?i=t.url:i=t.stringValue();let n=e.length>1?e[1].stringValue():"content",r=new q(this.counterResolver.getTargetTextVal(i,n));return new ee([r])}visitFuncString(e){let t=e.length>0?e[0].stringValue():"",i=e.length>1?e[1].stringValue():"first";return new q(this.counterResolver.getNamedStringVal(t,i))}visitFuncElement(e){let t=e.length>0?e[0].stringValue():"",i=e.length>1?e[1].stringValue():"first";return new q(this.counterResolver.getRunningElementVal(t,i))}visitFuncContent(e){var t,i,n,r,s,o,a,h;let l=e.length>0?e[0].stringValue():"text",c="";switch(l){case"text":c=this.element.textContent;break;case"before":case"after":case"marker":{let d=(t=this.element)==null?void 0:t.querySelectorAll(`[data-adapt-pseudo="${l}"]`),p=null;if(d&&this.element)for(let f=0;f<d.length;f++){let g=d[f];if(g.parentElement===this.element){p=g;break}}if(p)c=p.textContent||"";else{let f=ht(this.elementStyle,"_pseudos"),g=(n=(i=f?.[l])==null?void 0:i.content)==null?void 0:n.value;if(g)c=this.evaluateAndGetString(g);else if(l==="marker"){let m=(r=this.elementStyle["--viv-marker-content"])==null?void 0:r.value;c=jr(m,this.cascade.context)}}}break;case"first-letter":{let d=ht(this.elementStyle,"_pseudos"),p=(o=(s=d?.before)==null?void 0:s.content)==null?void 0:o.value,f=(h=(a=d?.after)==null?void 0:a.content)==null?void 0:h.value,g=(this.evaluateAndGetString(p)||this.element.textContent||this.evaluateAndGetString(f)).match(Dr);c=g?g[0]:""}break}return new Q(c)}visitFuncLeader(e){let t="";if(e[0]instanceof he)switch(e[0].stringValue()){case"dotted":t=".";break;case"solid":t="_";break;case"space":t=" ";break}else e[0]instanceof Q&&(t=e[0].stringValue());return t.length==0?new Q(""):new q(new we(this.counterResolver.rootScope,()=>t,"viv-leader"))}visitFunc(e){switch(e.name){case"counter":if(e.values.length<=2)return this.visitFuncCounter(e.values);break;case"counters":if(e.values.length<=3)return this.visitFuncCounters(e.values);break;case"target-counter":if(e.values.length<=3)return this.visitFuncTargetCounter(e.values);break;case"target-counters":if(e.values.length<=4)return this.visitFuncTargetCounters(e.values);break;case"target-text":if(e.values.length>=1&&e.values.length<=2)return this.visitFuncTargetText(e.values);break;case"string":if(e.values.length<=2)return this.visitFuncString(e.values);break;case"element":if(e.values.length<=2)return this.visitFuncElement(e.values);break;case"content":if(e.values.length<=1)return this.visitFuncContent(e.values);break;case"leader":if(e.values.length<=1)return this.visitFuncLeader(e.values);break}return e}};function La(e,t,i){let n;if(e.nodeType===1)n=Array.from(e.getClientRects());else{let r=e.ownerDocument.createRange();r.selectNodeContents(e),n=t.getRangeClientRects(r)}return n.reduce((r,s)=>r+(i==="vertical-rl"||i==="vertical-lr"?s.height:s.width),0)}function bx(e){let t=Lt(e);return t!==null&&t.after&&t.viewNode.hasAttribute("data-viv-leader")&&t.blockContainer!==null?t:null}var xx=(e,t,i)=>{let n=t.flatMap(h=>{let l=bx(h),c=l?.viewNode.parentElement,d=c?.parentElement;return l&&c&&d?[{leaderContext:l,pseudoElem:c,pseudoParent:d}]:[]});for(let{leaderContext:h,pseudoElem:l,pseudoParent:c}of n){let d=function(A){y==="rtl"?w.textContent=(A.startsWith("\u200F")?"":"\u200F")+A+(A.endsWith("\u200F")?"":"\u200F"):w.textContent=A},p=function(){let A=i.clientLayout.getElementClientRect(l);return P==="vertical-rl"||P==="vertical-lr"?y==="rtl"?A.top-=M:A.bottom+=M:y==="rtl"?A.left-=M:A.right+=M,E.left>A.left||E.right<A.right||E.top>A.top||E.bottom<A.bottom},f=function(){let A,L,W=x.repeat(1e4);if(d(W),p())A=1,L=1e4;else return;for(let G=0;G<16;G++){let U="",V=Math.floor((A+L)/2);for(let K=0;K<V;K++)U+=x;if(d(U),p())L=V;else{if(A==V)return;A=V}}d(x)},g=function(A){let L=0,W=l.parentElement;for(;W&&W!==m.viewNode;)L+=i.getComputedInsets(W)[A],W=W.parentElement;return L};var r=d,s=p,o=f,a=g;let m=h.blockContainer,w=h.viewNode,b=l.getAttribute("data-adapt-pseudo"),x=w.getAttribute("data-viv-leader-value"),{writingMode:P,direction:y,marginInlineEnd:C}=i.clientLayout.getElementComputedStyle(l);w.style.marginInlineStart="1px",d(x),l.style.display="inline-block",l.style.textIndent="0";let S=ls(m.viewNode),N=S?.style.columnFill||null;S&&(S.style.columnFill="auto");let E=i.clientLayout.getElementClientRect(m.viewNode),R=i.clientLayout.getElementClientRect(l),_=i.parseComputedLength(C),X=[],te=c;for(;te.parentElement&&te.parentElement!==m.viewNode;)te=te.parentElement;let k=te.nextSibling;for(;k;){if(k.nodeType===1){let A=k,{display:L,float:W,position:G}=i.clientLayout.getElementComputedStyle(A);if(W!=="none"||G==="absolute"||G==="fixed"){k=k.nextSibling;continue}if(Wt(L))X.push(A);else if(lw(L))break}else if(k.nodeType===3){let A=k;A.length>0&&X.push(A)}k=k.nextSibling}let M=X.reduce((A,L)=>A+La(L,i.clientLayout,P),0);if(b!=="after"){let A=La(te,i.clientLayout,P),L=La(l,i.clientLayout,P);M+=A-L}P==="vertical-rl"||P==="vertical-lr"?(y==="rtl"?E.top+=_:E.bottom-=_,E.top=Math.min(R.top,E.top),E.bottom=Math.max(R.bottom,E.bottom)):(y==="rtl"?E.left+=_:E.right-=_,E.left=Math.min(R.left,E.left),E.right=Math.max(R.right,E.right)),f();let T=i.clientLayout.getElementClientRect(l);y=="rtl"?l.style.float="left":l.style.float="right";let $=i.clientLayout.getElementClientRect(l),O=0;y=="rtl"?P=="vertical-rl"||P=="vertical-lr"?O=T.top-$.top-g("top"):O=T.left-$.left-g("left"):P=="vertical-rl"||P=="vertical-lr"?O=$.bottom-T.bottom-g("bottom"):O=$.right-T.right-g("right"),O-=M,O=Math.max(0,O-.1),l.style.float="",w.style.marginInlineStart=`${O}px`,S&&(N?S.style.columnFill=N:S.style.removeProperty("column-fill"))}};Ft("POST_LAYOUT_BLOCK",xx);var Oh=1/1048576,Sx=class{constructor(){u(this,"nsCount",0),u(this,"nsPrefix",{}),u(this,"tags",{}),u(this,"nstags",{}),u(this,"epubtypes",{}),u(this,"classes",{}),u(this,"ids",{}),u(this,"pagetypes",{}),u(this,"order",0),u(this,"layerTrees",{})}registerLayer(e,t,i){var n,r;return((r=(n=this.layerTrees)[e])!=null?r:n[e]=new L0).register(t,i)}insertInTable(e,t,i){let n=e[t];n&&(i=n.mergeWith(i)),e[t]=i}createInstance(e,t,i,n,r,s,o,a,h,l){return new Cx(this,e,t,i,n,r,s,o,a,h,l)}nextOrder(){return this.order+=Oh}},sg=class og{constructor(t,i,n,r,s,o,a,h,l,c,d){u(this,"context",i),u(this,"counterListener",n),u(this,"counterResolver",r),u(this,"counterStyleStore",s),u(this,"cmykStore",o),u(this,"root",a),u(this,"scope",h),u(this,"validatorSet",l),u(this,"styles",c),u(this,"mergeValidatorSet",d),u(this,"code"),u(this,"stack",[[],[]]),u(this,"conditions",Object.create(null)),u(this,"currentElement",null),u(this,"currentElementOffset",null),u(this,"currentLocalName",""),u(this,"currentNamespace",null),u(this,"currentId",null),u(this,"currentXmlId",null),u(this,"currentNSTag",""),u(this,"currentPageType",null),u(this,"previousPageType",null),u(this,"firstPageType",null),u(this,"pageTypePageIndices",Object.create(null)),u(this,"isFirst",!0),u(this,"isRoot",!0),u(this,"counters",Object.create(null)),u(this,"lastCounterChanges",[]),u(this,"lastCounterChangeTypes",Object.create(null)),u(this,"counterScoping",[Object.create(null)]),u(this,"quotes"),u(this,"quoteDepth",0),u(this,"lang",""),u(this,"siblingOrderStack",[0]),u(this,"currentSiblingOrder",0),u(this,"siblingTypeCountsStack",[Vs()]),u(this,"currentSiblingTypeCounts"),u(this,"currentFollowingSiblingOrder",null),u(this,"followingSiblingOrderStack"),u(this,"followingSiblingTypeCountsStack",[Vs()]),u(this,"currentFollowingSiblingTypeCounts"),u(this,"viewConditions",Object.create(null)),u(this,"dependentConditions",[]),u(this,"elementStack",[]),this.code=t,this.quotes=[new Q("\u201C"),new Q("\u201D"),new Q("\u2018"),new Q("\u2019")],this.currentSiblingTypeCounts=this.siblingTypeCountsStack[0],this.followingSiblingOrderStack=[this.currentFollowingSiblingOrder],this.currentFollowingSiblingTypeCounts=this.siblingTypeCountsStack[0]}pushConditionItem(t){this.stack[this.stack.length-1].push(t)}increment(t,i){this.conditions[t]=(this.conditions[t]||0)+1,i&&(this.viewConditions[t]?this.viewConditions[t].push(i):this.viewConditions[t]=[i])}decrement(t,i){this.conditions[t]--,this.viewConditions[t]&&(this.viewConditions[t]=this.viewConditions[t].filter(n=>n!==i),this.viewConditions[t].length===0&&delete this.viewConditions[t])}buildViewConditionMatcher(t){let i=null;t&&(this.currentElementOffset,i=Ds.buildViewConditionMatcher(this.currentElementOffset,t));let n=this.dependentConditions.map(r=>{let s=this.viewConditions[r];return s&&s.length>0?s.length===1?s[0]:Ds.buildAnyMatcher([].concat(s)):null}).filter(r=>r!==null);return n.length<=0?i:i===null?n.length===1?n[0]:Ds.buildAllMatcher(n):Ds.buildAllMatcher([i].concat(n))}applyAction(t,i,n){let r=i[n];r&&r.apply(t)}pushRule(t,i,n){this.currentElement=null,this.currentElementOffset=null,this.currentNamespace=null,this.currentLocalName="",this.currentId=null,this.currentXmlId=null,this.currentNSTag="",this.currentPageType=i,this.applyActions(new Kf(this,n,t,Oa))}defineCounter(t,i){let n=this.counterScoping[this.counterScoping.length-1];n||(n=Object.create(null),this.counterScoping[this.counterScoping.length-1]=n),this.counters[t]?(n[t]&&this.counters[t].pop(),this.counters[t].push(i)):this.counters[t]=[i],n[t]=!0}pushCounters(t,i){var n,r,s,o,a,h,l,c,d,p;let f=new Set,g=Object.create(null),m=v.inline,w=t.display;if(w&&(m=w.evaluate(this.context)),m===v.none){(n=this.currentElement)==null||n.setAttribute("data-viv-display-none","true"),this.lastCounterChanges=[],this.lastCounterChangeTypes=Object.create(null),this.counterScoping.push(null);return}else if((r=this.currentElement)!=null&&r.closest("[data-viv-display-none]")){this.lastCounterChanges=[],this.lastCounterChangeTypes=Object.create(null),this.counterScoping.push(null);return}let b=v.inline,x=t.float;x&&(b=x.evaluate(this.context));let P=null,y=null,C=null,S=t["counter-reset"];if(S){let R=S.evaluate(this.context);R&&(P=nn(R,{reset:!0}))}let N=t["counter-set"];if(N){let R=N.evaluate(this.context);R&&(C=nn(R,{defaultValue:0}))}let E=t["counter-increment"];if(E){let R=E.evaluate(this.context);R&&(y=nn(R))}if((this.currentLocalName=="ol"||this.currentLocalName=="ul")&&this.currentNamespace=="http://www.w3.org/1999/xhtml"&&(P||(P=Object.create(null)),P["list-item"]=((o=(s=this.currentElement)==null?void 0:s.start)!=null?o:1)-1),pr(m)&&(y||(y=Object.create(null)),y["list-item"]=(a=y["list-item"])!=null?a:1,/^\s*[-+]?\d/.test((l=(h=this.currentElement)==null?void 0:h.getAttribute("value"))!=null?l:"")&&(C||(C=Object.create(null)),C["list-item"]=this.currentElement.value)),((d=(c=this.currentElement)==null?void 0:c.parentNode)==null?void 0:d.nodeType)===Node.DOCUMENT_NODE&&(P||(P=Object.create(null)),P.footnote===void 0&&(P.footnote=0)),b===v.footnote&&!i["--viv-semantic-footnote-content"]&&(y||(y=Object.create(null)),y.footnote===void 0)){let R=(p=i["counter-increment"])==null?void 0:p.value;(!R||!(R===v.footnote||R instanceof ee&&R.values.includes(v.footnote)))&&(y.footnote=1)}if(P)for(let R in P)f.add(R),g[R]="reset";if(y)for(let R in y)f.add(R),g[R]||(g[R]="increment");if(C)for(let R in C)f.add(R),g[R]="set";if(this.lastCounterChanges=Array.from(f),this.lastCounterChangeTypes=g,P)for(let R in P)this.defineCounter(R,P[R]);if(y)for(let R in y){this.counters[R]||this.defineCounter(R,0);let _=this.counters[R];_[_.length-1]+=y[R]}if(C)for(let R in C)if(!this.counters[R])this.defineCounter(R,C[R]);else{let _=this.counters[R];_[_.length-1]=C[R]}if(pr(m)){let R=this.counters["list-item"],_=R[R.length-1];t["ua-list-item-count"]=new Y(new It(_),0);let X=hi(t,"_pseudos");X.marker||(X.marker={})}this.counterScoping.push(null)}popCounters(){let t=this.counterScoping.pop();if(t)for(let i in t){let n=this.counters[i];n&&(n.length==1?delete this.counters[i]:n.pop())}}setNamedStrings(t,i,n){let r=t["string-set"];if(!r)return;r=r.filterValue(new Xr(this,i,this.counterResolver,t));let s=r.value instanceof _e?r.value.values:[r.value];for(let o of s)if(o instanceof ee){let a=o.values[0].stringValue(),h=o.values.slice(1);if(h.some(l=>Lh(l)))this.counterResolver.setNamedString(a,Fl(new ee(h),this.context),n);else{let l=h.map(c=>jr(c,this.context)).join("");this.counterResolver.setNamedString(a,l,n)}}delete t["string-set"]}setRunningElement(t,i){let n=t.position;if(n?.value instanceof zt&&n.value.name==="running"){let r=n.value.values[0].stringValue();this.counterResolver.setRunningElement(r,i)}}processPseudoelementProps(t,i,n,r){this.pushCounters(t,n);let s=t.content;s&&(t.content=s.filterValue(new Xr(this,i,this.counterResolver,n,r))),this.popCounters()}pushElement(t,i,n){var r,s,o;let a=this.currentPageType;this.currentPageType=null,this.currentElement=t,this.currentElementOffset=n,this.currentNamespace=t.namespaceURI,this.currentLocalName=t.localName;let h=this.currentNamespace!==null?this.code.nsPrefix[this.currentNamespace]:void 0;h?this.currentNSTag=h+this.currentLocalName:this.currentNSTag="",this.currentId=t.getAttribute("id"),this.currentXmlId=t.getAttributeNS("http://www.w3.org/XML/1998/namespace","id");let l=t.getAttribute("class"),c=l?l.split(/\s+/):Oa,d=t.getAttributeNS("http://www.idpf.org/2007/ops","type"),p=d?d.split(/\s+/):Oa,f=Wa(t);f&&(this.stack[this.stack.length-1].push(new yx(this.lang)),this.lang=f.toLowerCase());let g=this.isRoot,m=this.siblingOrderStack;this.currentSiblingOrder=++m[m.length-1],m.push(0);let w=this.siblingTypeCountsStack,b=this.currentSiblingTypeCounts=w[w.length-1],x=_o(b,this.currentNamespace);x[this.currentLocalName]=(x[this.currentLocalName]||0)+1,w.push(Vs());let P=this.followingSiblingOrderStack,y=P[P.length-1];y!==null?this.currentFollowingSiblingOrder=P[P.length-1]=y-1:this.currentFollowingSiblingOrder=null,P.push(null);let C=this.followingSiblingTypeCountsStack,S=this.currentFollowingSiblingTypeCounts=C[C.length-1],N=S&&(this.currentNamespace!==null?S.byNamespace[this.currentNamespace]:S.noNamespace);N&&N[this.currentLocalName]--,C.push(Vs());let E=new Zf(this,i,c,p,t);this.applyActions(E),this.currentPageType=a,this.applyVarFilter([i],t),jn(i,!0)&&this.applyVarFilter([i],t),this.applyCalcFilter(i,this.context),this.applyCmykFilter(i,t),this.applyAttrFilter(t,i);let R=i.quotes,_=null;if(R){let k=R.evaluate(this.context);k&&(_=new vx(this.quotes),k===v.none?this.quotes=[new Q(""),new Q("")]:k===v.auto||k===v.initial?this.quotes=[new Q("\u201C"),new Q("\u201D"),new Q("\u2018"),new Q("\u2019")]:k instanceof ee&&(this.quotes=k.values))}this.pushCounters(i,i);let X=this.currentId||this.currentXmlId||t.getAttribute("name")||"";if(g||X){let k=Object.create(null);Object.keys(this.counters).forEach(M=>{k[M]=Array.from(this.counters[M])}),this.counterListener.countersOfId(X,k)}let te=ht(i,"_pseudos");if(te){let k=!0;for(let M of Px){M||(k=!1);let T=te[M];if(T){let $=(r=me(i,"float"))==null?void 0:r.value,O=t instanceof Element&&Yt(t),A=t instanceof Element&&Et(t),L=!!me(i,"--viv-semantic-footnote-content"),W=$===v.footnote,G=(M==="before"||M==="after")&&(W||A||L)&&!!T.content,U=V0(T),V=M==="footnote-call"&&O&&U,K=M==="footnote-marker"&&(A||L)&&U;if((M==="before"||M==="after")&&!(G||At((s=T.content)==null?void 0:s.value)||this.hasNonTrivialViewConditionalPseudoContent(T))||M==="marker"&&!pr((o=me(i,"display"))==null?void 0:o.value)||(M==="footnote-call"||M==="footnote-marker")&&$!==v.footnote&&!V&&!K||(M==="footnote-call"||M==="footnote-marker")&&L&&!U)delete te[M];else if(k){if(this.processPseudoelementProps(T,t,i,M),M==="marker")this.processMarkerPseudoelementProps(T,t,i),delete te[M];else if(M==="footnote-marker"){if(this.resolvePseudoelementInheritedPropertyValue(T,"list-style-position",t,i)===v.outside){this.processMarkerPseudoelementProps(T,t,i);let ne=T.content;ne&&(i["_footnote-marker-content"]=ne),i.display=new Y(D("list-item"),0),i["list-style-position"]=new Y(v.outside,0),i["list-style-type"]=new Y(v.none,0),i["list-style-image"]=new Y(v.none,0),delete te[M]}}else if(M==="first-letter"&&T["initial-letter"]){let ne=T["initial-letter"].evaluate(this.context);ne!==v.normal&&!J(ne)&&(i["--viv-initialLetter"]=new Y(ne,0)),delete T["initial-letter"]}}else this.stack[this.stack.length-2].push(new mx(T,t,i))}}}return this.setNamedStrings(i,t,n),this.setRunningElement(i,n),_&&this.stack[this.stack.length-2].push(_),E}hasNonTrivialViewConditionalPseudoContent(t){let i=t._viewConditionalStyles;return!i||i.length<=0?!1:i.some(n=>{var r;return At((r=n.styles.content)==null?void 0:r.value)})}processMarkerPseudoelementProps(t,i,n){var r,s,o,a,h;let l=pr((r=n.display)==null?void 0:r.value);if(!At((s=t.content)==null?void 0:s.value)&&l){let d=this.getInheritedPropertyValue("list-style-type",i,n),p=this.getInheritedPropertyValue("list-style-image",i,n);if(p instanceof Qe)t.content=new Y(new ee([p,new Q(" ")]),0);else if(d instanceof Q)t.content=new Y(d,0);else if(d instanceof he&&d!==v.none){let f=(a=(o=n["ua-list-item-count"])==null?void 0:o.value)==null?void 0:a.num;if(f!=null){let g=d.name.toLowerCase();g==="disc"||g==="circle"||g==="square"||g==="disclosure-open"||g==="disclosure-closed"||(t.content=new Y(new Q(this.counterStyleStore.formatMarker(d.name,f)),0))}}}let c=t.content;if(c){let d=c.value;if(At(d)){let p=this.resolveMarkerContentVal(d);n["--viv-marker-content"]=new Y(p,0)}}for(let d of og.markerAllowedProps){let p=t[d];if(p){let f=p.evaluate(this.context,d);f&&!J(f)&&(n[`--viv-marker-${d}`]=new Y(f,0))}}if(!Wt((h=me(n,"display"))==null?void 0:h.value)){let d=this.getInheritedPropertyValue("list-style-position",i,n);d&&d!==v.outside&&!J(d)&&(n["list-style-position"]=new Y(d,0))}}resolveMarkerContentVal(t){if(t instanceof q){let i=t.expr.evaluate(this.context);return typeof i=="string"?new Q(i):typeof i=="number"?new Q(String(i)):t}if(t instanceof ee){let i=t.values.map(n=>this.resolveMarkerContentVal(n));return new ee(i)}return t}getInheritedPropertyValue(t,i,n){var r;for(let s=i;s;s=s.parentElement){let o=(s===i?n:this.styles.styleOf(s))[t];if(o){let a=o.evaluate(this.context,t);if(a===v.inherit||a===v.unset||Rt(a))continue;if(a===v.initial)break;return a}}return(r=this.validatorSet.defaultValues[t])!=null?r:null}resolvePseudoelementInheritedPropertyValue(t,i,n,r){var s;let o=t[i];if(o){let a=o.evaluate(this.context,i);if(a!==v.inherit&&a!==v.unset&&!Rt(a))return a===v.initial?(s=this.validatorSet.defaultValues[i])!=null?s:null:a}return this.getInheritedPropertyValue(i,n,r)}applyAttrFilterInner(t,i){for(let n in i)if(Fi(n)&&!ze(n)){let r=i[n],s=new wx(t,this.scope,n,this.validatorSet),o=r.filterValue(s);if(!s.hadAttrFunction){i[n]=o;continue}let a=s.validatePropertyValue(o.value);i[n]=o.withValue(a)}}applyAttrFilter(t,i){let n=ht(i,"_pseudos");for(let r in n)this.applyAttrFilterInner(t,n[r]);this.applyAttrFilterInner(t,i)}applyVarFilter(t,i){let n=t[0],r=t.map(c=>({...c})),s=32,o={},a=ht(n,"_pseudos"),h=Object.keys(n).filter(Fi),l=c=>{var d,p,f;let g=me(n,c),m=g.value,w=ze(c)?r:t,b=new Lx(w,this.styles,this.root,i,ze(c)?c:null);ze(c)&&b.getFallbackCycleMembers(m,w,i)&&(m=v.initial);for(let x=0;;x++){if(x>=s){m=ze(c)?v.initial:v.unset;break}let P=m.visit(b);if(b.error){m=ze(c)?v.initial:v.unset,b.error=!1;break}if(P===m)break;m=P}if(m!==g.value){let x=(d=this.validatorSet.getShorthand(c,m))==null?void 0:d.clone(this.scope);if(x)if(J(m)){for(let P of x.propList){let y=g.withValue(m),C=me(n,P);Mi(o,P,El(this.context,C,y))}delete n[c]}else{let P=_i(this.scope,new xt(m.toString(),null),"");if(P&&(P.visit(x),!x.error)){for(let y of x.propList){let C=g.withValue((f=(p=x.values[y])!=null?p:this.validatorSet.defaultValues[y])!=null?f:v.initial),S=me(n,y);Mi(o,y,El(this.context,S,C))}delete n[c]}}else n[c]=g.withValue(m)}if(o[c]){let x=me(n,c);x&&x.value!==Re&&ei(o,c,x,this.context)}};for(let c in n)if(Fr(c)){if(c==="_pseudos")continue;let d=ht(n,c);for(let p in d)this.applyVarFilter([d[p],...t],i)}for(let c of h)ze(c)&&l(c);for(let c of h)ze(c)||l(c);if(a)for(let c in a)this.applyVarFilter([a[c],...t],i);for(let c in o)n[c]=o[c]}applyCalcFilter(t,i){let n=new Bh(i);for(let r in t)if(Fr(r)){let s=ht(t,r);for(let o in s)this.applyCalcFilter(s[o],i)}else if(Fi(r)&&!ze(r)){let s=me(t,r);t[r]=s.withValue(s.value.visit(n))}}applyCmykFilter(t,i){let n=new _d(this.cmykStore);if(this.applyCmykFilterInternal(t,n,""),i){let r=n.getConversions();r&&i.setAttribute("data-viv-device-cmyk",JSON.stringify(r))}}applyCmykFilterInternal(t,i,n){for(let r in t)if(Fr(r)){let s=ht(t,r);for(let o in s)this.applyCmykFilterInternal(s[o],i,`::${o}:`)}else if(Fi(r)&&!ze(r)){let s=me(t,r),o=s.value.toString();i.reset();let a=s.value.visit(i);a!==s.value&&(i.hadDeviceCmyk()&&i.recordConversion(n+r,o),t[r]=s.withValue(a))}}applyActions(t){let i,n=t.currentClassNames;for(i=0;i<n.length;i++)this.applyAction(t,this.code.classes,n[i]);let r=t.currentEpubTypes;for(i=0;i<r.length;i++)this.applyAction(t,this.code.epubtypes,r[i]);this.currentId!==null&&this.applyAction(t,this.code.ids,this.currentId),this.applyAction(t,this.code.tags,this.currentLocalName),this.currentLocalName!=""&&this.applyAction(t,this.code.tags,"*"),this.applyAction(t,this.code.nstags,this.currentNSTag),this.currentPageType!==null&&(this.applyAction(t,this.code.pagetypes,this.currentPageType),this.applyAction(t,this.code.pagetypes,"*")),this.stack.push([]);for(let s=1;s>=-1;--s){let o=this.stack[this.stack.length-s-2];for(i=0;i<o.length;)o[i].push(this,s)?o.splice(i,1):i++}this.isFirst=!0,this.isRoot=!1,jn(t.currentStyle)}pop(){for(let t=1;t>=-1;--t){let i=this.stack[this.stack.length-t-2],n=0;for(;n<i.length;)i[n].pop(this,t)?i.splice(n,1):n++}this.stack.pop(),this.isFirst=!1}popRule(){this.pop()}popElement(t){this.siblingOrderStack.pop(),this.siblingTypeCountsStack.pop(),this.followingSiblingOrderStack.pop(),this.followingSiblingTypeCountsStack.pop(),this.pop(),this.popCounters()}};u(sg,"markerAllowedProps",["color","font-family","font-size","font-style","font-weight","font-variant","hyphens","line-height","tab-size","text-combine-upright","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-orientation","text-shadow","text-transform","unicode-bidi","direction","white-space"]);var Cx=sg,Oa=[],Px=["before","footnote-call","footnote-marker","marker","inner","first-letter","first-line","","after"],Rl=class ag{constructor(){u(this,"actions",[])}push(t){this.actions.push(t)}restartWith(t){let i=new ag;return i.push(t),i}emit(t,i){i.insertChained(Th(this.actions,t))}contributeTo(t){t.takeAlternative(this.actions)}recordTextIn(t,i){t.push(i)}finishIn(t){t.applyRuleForSelector()}},rc=class{push(){}restartWith(){return this}emit(){}contributeTo(){}recordTextIn(){}finishIn(){}},Do=class extends Zn{constructor(e,t,i,n,r,s,o){super(e,t,o),u(this,"condition",i),u(this,"regionId",r),u(this,"validatorSet",s),u(this,"chain",new rc),u(this,"selectorListVoided",!1),u(this,"pendingChained",[]),u(this,"specificity",0),u(this,"elementStyle",{}),u(this,"ruleId",0),u(this,"pseudoelement",null),u(this,"footnoteContent",!1),u(this,"cascade"),u(this,"layer"),u(this,"state"),u(this,"viewConditionId",null),u(this,"invalid",!1),this.cascade=n?n.cascade:new Sx,this.layer=n?n.layer:null,this.state=0}layerStatementRule(e){for(let t of e)this.cascade.registerLayer(this.flavor,this.layer,t)}insertNonPrimary(e){this.cascade.insertInTable(this.cascade.tags,"*",e)}processChain(e){this.chain.emit(e,this)}insertChained(e){this.pendingChained.push(e)}takePendingChained(){for(let e of this.pendingChained)e instanceof Fh&&e.makePrimary(this.cascade)||this.insertNonPrimary(e);this.pendingChained.splice(0)}invalidContinuationAfterPseudoelement(e){return this.pseudoelement?(this.invalidSelector(`::${this.pseudoelement} followed by ${e}`),!0):!1}isInsideSelectorRule(e){return this.state!=0?(this.reportAndSkip(e),!0):!1}tagSelector(e,t){!t&&!e||this.invalidContinuationAfterPseudoelement(t||"*")||(t&&(this.specificity+=1),t&&e?this.chain.push(new Y0(e,t.toLowerCase())):t?this.chain.push(new tc(t.toLowerCase())):this.chain.push(new Z0(e)))}invalidSelector(e){Z.warn(e),this.setInvalid(),this.voidSelectorList()}setInvalid(){this.invalid=!0;for(let e=this;e instanceof Xn;e=e.parent)e.parent.invalid=!0}classSelector(e){this.invalidContinuationAfterPseudoelement(`.${e}`)||(this.specificity+=256,this.chain.push(new X0(e)))}pseudoclassSelector(e,t){if(!this.invalidContinuationAfterPseudoelement(`:${e}`)){if(t?!sc.has(e.toLowerCase()):sc.has(e.toLowerCase())){this.unsupportedPseudoclassSelector(e,t);return}switch(e.toLowerCase()){case"enabled":this.chain.push(new sx);break;case"disabled":this.chain.push(new ox);break;case"checked":this.chain.push(new ax);break;case"root":case"scope":this.chain.push(new ix);break;case"link":case"any-link":this.chain.push(new tc("a")),this.chain.push(new ic("","href"));break;case"href-epub-type":case"href-role-type":if(t&&t.length>=1&&typeof t[0]=="string"){let i=t[0],n=new RegExp(`(^|\\s)${po(i)}($|\\s)`),r=t[1];this.chain.push(new K0(n,r,e==="href-role-type"))}else this.chain.push(new tt(""));break;case"footnote-content":this.footnoteContent=!0;break;case"visited":case"active":case"hover":case"focus":this.chain.push(new tt(""));break;case"lang":if(t&&t.length==1&&typeof t[0]=="string"){let i=t[0];this.chain.push(new tx(new RegExp(`^${po(i.toLowerCase())}($|-)`)))}else this.chain.push(new tt(""));break;case"dir":if(t&&t.length==1&&typeof t[0]=="string"){/^(ltr|rtl)$/i.test(t[0])?this.chain.push(new lx(`:dir(${t[0].toLowerCase()})`)):this.chain.push(new tt(""));break}this.invalidSelector(`Invalid pseudo-class :${e}`);return;case"nth-child":case"nth-last-child":case"nth-of-type":case"nth-last-of-type":{let i=kx[e.toLowerCase()];t&&t.length==2?this.chain.push(new i(t[0],t[1])):this.chain.push(new tt(""));break}case"first-child":this.chain.push(new nc);break;case"last-child":this.chain.push(new Il(0,1));break;case"first-of-type":this.chain.push(new Tl(0,1));break;case"last-of-type":this.chain.push(new Al(0,1));break;case"only-child":this.chain.push(new nc),this.chain.push(new Il(0,1));break;case"only-of-type":this.chain.push(new Tl(0,1)),this.chain.push(new Al(0,1));break;case"empty":this.chain.push(new rx);break;case"before":case"after":case"first-line":case"first-letter":this.pseudoelementSelector(e,t);return;default:this.unsupportedPseudoclassSelector(e,t);return}this.specificity+=256}}unsupportedPseudoclassSelector(e,t){CSS.supports(`selector(${oc(":",e,t)})`)?(this.chain.push(new tt("")),this.specificity+=256):this.invalidSelector(`Unsupported pseudo-class :${e}`)}pseudoelementSelector(e,t){if(e=e.toLowerCase(),!this.invalidContinuationAfterPseudoelement(`::${e}`)){switch(e){case"before":case"after":case"first-line":case"first-letter":case"footnote-call":case"footnote-marker":case"marker":case"inner":case"after-if-continues":if(!this.pseudoelement)this.pseudoelement=e;else{this.invalidSelector(`Double pseudo-element ::${this.pseudoelement}::${e}`);return}break;case"first-n-lines":if(t&&t.length==1&&typeof t[0]=="number"){let i=Math.round(t[0]);if(i>0&&i==t[0]){if(!this.pseudoelement)this.pseudoelement=`first-${i}-lines`;else{this.invalidSelector(`Double pseudo-element ::${this.pseudoelement}::${e}`);return}break}}this.chain.push(new tt(""));break;case"nth-fragment":t&&t.length==2?this.viewConditionId=`NFS_${t[0]}_${t[1]}`:this.chain.push(new tt(""));break;default:this.unsupportedPseudoelementSelector(e,t);return}this.specificity+=1}}unsupportedPseudoelementSelector(e,t){CSS.supports(`selector(${oc("::",e,t)})`)?(this.chain.push(new tt("")),this.specificity+=1):this.invalidSelector(`Unknown pseudo-element ::${e}`)}idSelector(e){this.invalidContinuationAfterPseudoelement(`#${e}`)||(this.specificity+=65536,this.chain.push(new q0(e)))}attributeSelector(e,t,i,n,r){if(this.invalidContinuationAfterPseudoelement(`[${t}]`))return;this.specificity+=256,n=n||"";let s;switch(i){case 0:s=new ic(e,t);break;case 39:s=new Q0(e,t,n,r??null);break;case 45:!n||n.match(/\s/)?s=new tt(""):s=new hr(e,t,lr(`(^|\\s)${ar(n,r??null)}($|\\s)`),r??null);break;case 44:s=new hr(e,t,lr(`^${ar(n,r??null)}($|-)`),r??null);break;case 43:n?s=new hr(e,t,lr(`^${ar(n,r??null)}`),r??null):s=new tt("");break;case 42:n?s=new hr(e,t,lr(`${ar(n,r??null)}$`),r??null):s=new tt("");break;case 46:n?s=new hr(e,t,lr(ar(n,r??null)),r??null):s=new tt("");break;case 50:if(n=="supported")s=new ex(e,t);else{this.invalidSelector(`Unsupported :: attr selector op: ${n}`);return}break;default:this.invalidSelector(`Unsupported attr selector: ${i}`);return}this.chain.push(s)}descendantSelector(){if(this.invalidContinuationAfterPseudoelement("descendant selector"))return;let e=`d${Us++}`;this.processChain(new zs(new dx(e,this.viewConditionId,null))),this.chain=this.chain.restartWith(new tt(e)),this.viewConditionId=null}childSelector(){if(this.invalidContinuationAfterPseudoelement("child selector"))return;let e=`c${Us++}`;this.processChain(new zs(new px(e,this.viewConditionId,null))),this.chain=this.chain.restartWith(new tt(e)),this.viewConditionId=null}adjacentSiblingSelector(){if(this.invalidContinuationAfterPseudoelement("adjacent sibling selector"))return;let e=`a${Us++}`;this.processChain(new zs(new fx(e,this.viewConditionId,null))),this.chain=this.chain.restartWith(new tt(e)),this.viewConditionId=null}followingSiblingSelector(){if(this.invalidContinuationAfterPseudoelement("following sibling selector"))return;let e=`f${Us++}`;this.processChain(new zs(new gx(e,this.viewConditionId,null))),this.chain=this.chain.restartWith(new tt(e)),this.viewConditionId=null}nextSelector(){this.finishChain(),this.pseudoelement=null,this.footnoteContent=!1,this.specificity=0,this.selectorListVoided||(this.chain=new Rl)}startSelectorRule(){this.isInsideSelectorRule("E_CSS_UNEXPECTED_SELECTOR")||(this.state=1,this.elementStyle={},this.ruleId=ds(),this.pseudoelement=null,this.viewConditionId=null,this.specificity=0,this.footnoteContent=!1,this.selectorListVoided=!1,this.pendingChained.splice(0),this.chain=new Rl,this.invalid=!1)}error(e,t){super.error(e,t),this.state==1&&(this.state=0),this.setInvalid()}startStylesheet(e){super.startStylesheet(e),this.state=0}startRuleBody(){this.finishChain(),this.selectorListVoided?this.pendingChained.splice(0):this.takePendingChained(),super.startRuleBody(),this.state==1&&(this.state=0)}finishChain(){this.chain.finishIn(this)}voidSelector(){this.chain=new rc,this.pseudoelement=null,this.viewConditionId=null,this.footnoteContent=!1,this.specificity=0}voidSelectorList(){this.voidSelector(),this.selectorListVoided=!0}applyRuleForSelector(){this.processChain(this.makeApplyRuleAction(this.specificity)),this.voidSelector()}makeApplyRuleAction(e){let t=this.regionId;return this.footnoteContent&&(t?t="xxx-bogus-xxx":t="footnote"),new Ah(this.elementStyle,e,this.pseudoelement,t,this.viewConditionId)}special(e,t){let i;this.condition?i=new Pl(t,0,this.condition):i=new Y(t,0),Yf(this.elementStyle,e).push(i)}property(e,t,i){this.validatorSet.validatePropertyAndHandleShorthand(e,t,i,this.scope,this)}invalidPropertyValue(e,t){this.report(`E_INVALID_PROPERTY_VALUE ${e}: ${t.toString()}`)}unknownProperty(e,t){this.report(`E_INVALID_PROPERTY ${e}: ${t.toString()}`)}simpleProperty(e,t,i){e=="display"&&(t===v.oeb_page_head||t===v.oeb_page_foot)&&(this.simpleProperty("flow-options",new ee([v.exclusive,v._static]),i),this.simpleProperty("flow-into",t,i),t=v.block),Dt("SIMPLE_PROPERTY").forEach(s=>{let o=s({name:e,value:t,important:i});e=o.name,t=o.value,i=o.important});let n=(i?this.getImportantSpecificity():this.getBaseSpecificity())+this.cascade.nextOrder();ps(e,t,this.validatorSet);let r=this.condition?new Pl(t,n,this.condition,this.layer,this.ruleId):new Y(t,n,this.layer,this.ruleId);ei(this.elementStyle,e,r)}finish(){return this.cascade}startFuncWithSelector(e,t){let i;switch(e){case"is":i=n=>new Xn(this,n);break;case"not":i=n=>new Ex(this,n);break;case"where":i=n=>new Nx(this,n);break;case"has":i=n=>new Tx(this,n);break;case"nth-child":t&&t.length>=2&&(i=n=>new lg(this,n,t[0],t[1]));break;case"nth-last-child":t&&t.length>=2&&(i=n=>new Ix(this,n,t[0],t[1]));break}i&&this.owner.delegateTo(n=>{let r=i(n);return r.startSelectorRule(),r})}},kx={"nth-child":nx,"nth-of-type":Tl,"nth-last-child":Il,"nth-last-of-type":Al},sc=new Set(["dir","href-epub-type","href-role-type","lang","nth-child","nth-last-child","nth-last-of-type","nth-of-type"]);function oc(e,t,i){let n=Qt(t);return i?`${e}${n}(${i[0]})`:`${e}${n}`}var Us=0,Xn=class Ll extends Do{constructor(t,i){super(t.scope,t.owner,t.condition,t,t.regionId,t.validatorSet,i),u(this,"parent",t),u(this,"parentChain"),u(this,"chains",[]),u(this,"maxSpecificity",0),u(this,"selectorTexts",[]),this.parentChain=t.chain}insertChained(t){this.parent.insertChained(t)}takeAlternative(t){this.chains.push(t),this.maxSpecificity=Math.max(this.maxSpecificity,this.specificity)}nextSelector(){this.chain.contributeTo(this),this.chain=new Rl,this.pseudoelement=null,this.viewConditionId=null,this.footnoteContent=!1,this.specificity=0}endFuncWithSelector(){this.chain.contributeTo(this),this.chains.length>0?(this.parentChain.push(this.relational()?new ux(this.selectorTexts):this.positive()?new Rh(this.chains):new hx(this.chains)),this.increasingSpecificity()&&(this.parent.specificity+=this.maxSpecificity)):this.parentChain.push(new tt("")),this.endDelegation()}startRuleBody(){this.reportAndSkip("E_CSS_UNEXPECTED_RULE_BODY")}error(t,i){super.error(t,i),this.voidAlternative()}pseudoelementSelector(t,i){this.invalidSelector(`Pseudo-element ::${t} in a selector list`)}invalidSelector(t){Z.warn(t),this.setInvalid(),this.voidAlternative()}voidAlternative(){this.voidSelector();let t=this;for(;t instanceof Ll&&!t.forgiving();)t=t.parent,t.voidSelector();t instanceof Ll||(t.voidSelectorList(),this.endDelegation())}pushSelectorText(t){this.relational()&&this.chain.recordTextIn(this.selectorTexts,t)}positive(){return!0}increasingSpecificity(){return!0}forgiving(){return!0}relational(){return!1}},Ex=class extends Xn{positive(){return!1}forgiving(){return!1}},Nx=class extends Xn{increasingSpecificity(){return!1}},Tx=class extends Xn{relational(){return!0}forgiving(){return!1}},lg=class extends Xn{constructor(e,t,i,n){super(e,t),u(this,"a",i),u(this,"b",n)}endFuncWithSelector(){this.chain.contributeTo(this),this.chains.length>0?(this.parentChain.push(new eg(this.a,this.b,this.chains)),this.parent.specificity+=256+this.maxSpecificity):this.parentChain.push(new tt("")),this.endDelegation()}forgiving(){return!1}},Ix=class extends lg{endFuncWithSelector(){this.chain.contributeTo(this),this.chains.length>0?(this.parentChain.push(new cx(this.a,this.b,this.chains)),this.parent.specificity+=256+this.maxSpecificity):this.parentChain.push(new tt("")),this.endDelegation()}},Ax=class extends Zn{constructor(e,t,i){super(e,t,i)}property(e,t,i){if(this.scope.values[e])this.error(`E_CSS_NAME_REDEFINED ${e}`,this.getCurrentToken());else{let n=e.match(/height|^(top|bottom)$/)?"vh":"vw",r=new is(this.scope,100,n);this.scope.defineName(e,t.toExpr(this.scope,r))}}},ao=class extends Zn{constructor(e,t,i,n,r,s,o,a=null){super(e,t,s),u(this,"condition",i),u(this,"elementStyle",n),u(this,"validatorSet",r),u(this,"ruleType",o),u(this,"layer",a),u(this,"order"),u(this,"ruleId",ds()),this.order=0}property(e,t,i){i?Z.warn("E_IMPORTANT_NOT_ALLOWED"):this.validatorSet.validatePropertyAndHandleShorthand(e,t,i,this.scope,this)}invalidPropertyValue(e,t){Z.warn("E_INVALID_PROPERTY_VALUE",`${e}:`,t.toString())}unknownProperty(e,t){Z.warn("E_INVALID_PROPERTY",`${e}:`,t.toString())}simpleProperty(e,t,i){let n=i?this.getImportantSpecificity():this.getBaseSpecificity();n+=this.order,this.order+=Oh,ps(e,t,this.validatorSet);let r=this.condition?new Pl(t,n,this.condition,this.layer,this.ruleId):new Y(t,n,this.layer,this.ruleId);ei(this.elementStyle,e,r)}},Fx=class extends yp{constructor(e,t){super(e),u(this,"validatorSet",t),u(this,"elementStyle",{}),u(this,"order",0),u(this,"ruleId",ds())}property(e,t,i){this.validatorSet.validatePropertyAndHandleShorthand(e,t,i,this.scope,this)}invalidPropertyValue(e,t){Z.warn("E_INVALID_PROPERTY_VALUE",`${e}:`,t.toString())}unknownProperty(e,t){Z.warn("E_INVALID_PROPERTY",`${e}:`,t.toString())}simpleProperty(e,t,i){let n=i?mp:gp;n+=this.order,this.order+=Oh,ps(e,t,this.validatorSet);let r=new Y(t,n,null,this.ruleId);ei(this.elementStyle,e,r)}};function hg(e,t){let i=Nh(e);i&&i.forEach(n=>{n.matcher.matches()&&t(n.styles)})}function Ol(e,t,i){hg(i,n=>{Rr(e,n,t)})}function Rx(e,t,i,n){let r=new Fx(e,t),s=new xt(n,r);try{tw(s,r,i)}catch(o){Z.warn(o,"Style attribute parse error:")}return r.elementStyle}function Bl(e,t,i){let n=e["writing-mode"];if(n){let r=n.evaluate(t,"writing-mode");if(r&&r!==v.inherit&&r!==v.unset&&!Rt(r))return r===v.vertical_rl}return i}function ug(e,t,i){let n=e.direction;if(n){let r=n.evaluate(t,"direction");if(r&&r!==v.inherit&&r!==v.unset&&!Rt(r))return r===v.rtl}return i}function Ml(e,t,i,n){let r={};for(let s in e)Fi(s)&&(r[s]=me(e,s));return Ol(r,t,e),cg(e,i,n,(s,o)=>{Rr(r,o,t),Ol(r,t,o)}),r}function cg(e,t,i,n){let r=ht(e,"_regions");if((t||i)&&r){if(i){let s=["footnote"];t?t=t.concat(s):t=s}for(let s of t){let o=r[s];o&&n(s,o)}}}function Rr(e,t,i){for(let n in t)if(Fi(n)){let r=me(t,n),s=e[n];e[n]=El(i,s,r)}}var dg=(e,t,i,n,r,s)=>{var o,a;let h=i?n?I0:Wf:n?A0:Gf,l=r?F0:R0;for(let c in e){let d=e[c];if(!d)continue;let p=(o=h[c])!=null?o:h[l[c]],f=(a=l[c])!=null?a:l[h[c]],g=p??f,m;if(g){let w=e[g];if(w&&Vi(w,d)>0||p&&f&&p!==f&&(g=f,w=e[g],w&&Vi(w,d)>0))continue;m=Ju[p]?p:Ju[f]?f:c}else m=c,c.startsWith("text-align")&&(d.value===v.inside||d.value===v.outside)&&(d=d.withValue(r===(d.value===v.inside)?v.right:v.left));t[m]=s(c,d)}},Lx=class pg extends dn{constructor(t,i,n,r,s=null){super(),u(this,"elementStyles",t),u(this,"styles",i),u(this,"root",n),u(this,"element",r),u(this,"currentCustomPropertyName",s),u(this,"resolvingCustomProperties",[]),u(this,"varResolutionState",{cycleMembers:new Set}),s&&this.resolvingCustomProperties.push(s)}getRawCustomPropertyLookup(t,i,n){var r,s;let o=n??this.root;if(i!=null&&i.length){for(let a=0;a<i.length;a++){let h=(r=i[a][t])==null?void 0:r.value;if(h){if(h===v.initial)return{found:!0,value:null,elementStyles:i.slice(a),element:n};if(!(h===v.inherit||h===v.unset||Rt(h)))return{found:!0,value:h,elementStyles:i.slice(a),element:n}}}n&&(o=n.parentElement)}for(;o;o=o.parentElement){let a=this.styles.styleOf(o),h=(s=a?.[t])==null?void 0:s.value;if(h){if(h===v.initial)return{found:!0,value:null,elementStyles:a?[a]:[],element:o};if(!(h===v.inherit||h===v.unset||Rt(h)))return{found:!0,value:h,elementStyles:a?[a]:[],element:o}}}return{found:!1,value:null,elementStyles:[],element:null}}collectReferencedCustomProperties(t){let i=new Set;class n extends Zt{visitFunc(s){let o=s.values[0]instanceof he&&s.values[0].name;return s.name==="var"&&o&&ze(o)&&i.add(o),super.visitFunc(s)}}return t.visit(new n),Array.from(i)}findReferencedCycleStart(t,i,n,r=new Set){for(let s of this.collectReferencedCustomProperties(t)){if(this.resolvingCustomProperties.includes(s))return s;if(r.has(s))continue;r.add(s);let o=this.getRawCustomPropertyLookup(s,i,n),a=o.value&&this.findReferencedCycleStart(o.value,o.elementStyles,o.element,r);if(a)return a}return null}getFallbackCycleMembers(t,i,n){let r=null,s=this;class o extends Zt{visitFunc(l){if(l.name==="var")for(let c of l.values.slice(1)){let d=s.findReferencedCycleStart(c,i,n);if(d)return r=d,l}return super.visitFunc(l)}}if(t.visit(new o),!r)return null;let a=this.resolvingCustomProperties.indexOf(r);return new Set(this.resolvingCustomProperties.slice(a))}resolveCustomProperty(t,i,n,r){if(!i)return{found:!1,value:null,continueLookup:!1};if(i===v.initial)return{found:!0,value:null,continueLookup:!1};if(i===v.inherit||i===v.unset||Rt(i))return{found:!0,value:null,continueLookup:!0};let s=this.getFallbackCycleMembers(i,n,r);return s?(s.forEach(o=>this.varResolutionState.cycleMembers.add(o)),{found:!0,value:null,continueLookup:!1}):{found:!0,value:this.resolveReferencedCustomProperty(t,i,n,r),continueLookup:!1}}resolveReferencedCustomProperty(t,i,n,r){let s=this.resolvingCustomProperties.indexOf(t);if(s>=0)return this.resolvingCustomProperties.slice(s).forEach(d=>this.varResolutionState.cycleMembers.add(d)),null;let o=new Set(this.varResolutionState.cycleMembers);this.varResolutionState.cycleMembers=new Set;let a=new pg(n,this.styles,this.root,r,t);a.resolvingCustomProperties=this.resolvingCustomProperties,a.resolvingCustomProperties.push(t),a.varResolutionState=this.varResolutionState;let h=i,l=32;for(let d=0;;d++){if(d>=l){h=null;break}let p=h.visit(a);if(a.error){h=null;break}if(p===h)break;h=p}let c=this.varResolutionState.cycleMembers;return this.varResolutionState.cycleMembers=new Set([...o,...c]),this.resolvingCustomProperties.pop(),c.has(t)?null:h}getVarValue(t){var i,n,r,s;let o=(i=this.element)!=null?i:this.root;if((n=this.elementStyles)!=null&&n.length){for(let a=0;a<this.elementStyles.length;a++){let h=this.elementStyles[a],l=this.resolveCustomProperty(t,(r=h[t])==null?void 0:r.value,this.elementStyles.slice(a),this.element);if(l.found){if(l.value)return l.value;if(!l.continueLookup)return null}}this.element&&(o=this.element.parentElement)}for(;o;o=o.parentElement){let a=this.styles.styleOf(o),h=this.resolveCustomProperty(t,(s=a?.[t])==null?void 0:s.value,a?[a]:[],o);if(h.found){if(h.value)return h.value;if(!h.continueLookup)return null}}return null}visitFunc(t){if(t.name!=="var")return super.visitFunc(t);let i=t.values[0]instanceof he&&t.values[0].name;return!i||!ze(i)?(this.error=!0,Re):this.getVarValue(i)||(this.currentCustomPropertyName&&this.varResolutionState.cycleMembers.has(this.currentCustomPropertyName)?(this.error=!0,Re):t.values.length<2?(this.error=!0,Re):t.values.length===2?t.values[1]:new _e(t.values.slice(1)))}visitSpaceList(t){let i=this.visitValues(t.values);if(this.error)return Re;if(i===t.values)return t;let n=[];for(let r of i)r instanceof ee?n.push(...r.values):n.push(r);return new ee(n)}visitCommaList(t){let i=this.visitValues(t.values);if(this.error)return Re;if(i===t.values)return t;let n=[];for(let r of i)r instanceof _e?n.push(...r.values):n.push(r);return new _e(n)}},Bh=class extends dn{constructor(e,t,i,n){super(),u(this,"context",e),u(this,"resolveViewportUnit",t),u(this,"percentRef",i),u(this,"vertical",n)}visitFunc(e){let t=super.visitFunc(e);if(e.name!=="calc")return t;let i=t.toString().replace(/^calc\b/,"-epubx-expr");if(this.hasUnresolvableUnit(i))return t;let n=_i(this.context.rootScope,new xt(i,null),"");if(n instanceof q)try{let r=n.expr.evaluate(this.context);typeof r=="number"&&!isNaN(r)&&(this.isLengthExpr(i)?t=new B(r,"px"):/\d[a-z]/i.test(i)||(t=new It(r)))}catch(r){Z.warn(r)}return t}hasUnresolvableUnit(e){return/\d(%|em|ex|cap|ch|ic|lh|p?v[whbi]|p?vmin|p?vmax)\W|\Wvar\(\s*--/i.test(e)}isLengthExpr(e){return/\d(px|in|pt|pc|cm|mm|q|rem|rlh)\W/i.test(e)}visitNumeric(e){return this.resolveViewportUnit&&cd(e.unit)||this.context.rootFontSize!=null&&ty(e.unit)?new B(e.num*this.context.queryUnitSize(e.unit,!1,this.vertical),"px"):typeof this.percentRef=="number"&&e.unit==="%"?new B(e.num*this.percentRef/100,"px"):e}},Ox=class extends Bh{hasUnresolvableUnit(e){return/\d(%|em|ex|cap|ch|ic|p?v[whbi]|p?vmin|p?vmax)\W|\Wvar\(\s*--/i.test(e)}isLengthExpr(e){return/\d(px|in|pt|pc|cm|mm|q|rem|r?lh)\W/i.test(e)}};function zo(e,t,i,n,r){try{if(t instanceof q)return t.expr instanceof we&&(t.expr.str.startsWith("named-string-")||t.expr.str.startsWith("running-element-"))?t:rw(e,t.expr,i);if(t instanceof B||t instanceof zt||t instanceof ee||t instanceof _e)return t.visit(new Bh(e,!0,n,r))}catch(s){return Z.warn(s),Re}return t}var ac={first:!1,forceEnd:!1,allowEnd:!1,last:!1};function lc(e){let t=e instanceof st?e:typeof e=="string"?D(e):v.none;if(t===v.none)return ac;let i=t instanceof ee?t.values:[t],n=Object.create(ac);for(let r of i)if(r instanceof he)switch(r.name){case"first":n.first=!0;break;case"force-end":n.forceEnd=!0,n.allowEnd=!1;break;case"allow-end":n.forceEnd=!1,n.allowEnd=!0;break;case"last":n.last=!0;break}return n}function hc(e){return!e.first&&!e.last&&!e.forceEnd&&!e.allowEnd}var Bx={trimStart:!1,spaceFirst:!1,trimEnd:!1,allowEnd:!1,trimAdjacent:!1},uc={trimStart:!1,spaceFirst:!1,trimEnd:!1,allowEnd:!0,trimAdjacent:!0},cc={trimStart:!0,spaceFirst:!1,trimEnd:!0,allowEnd:!1,trimAdjacent:!0};function dc(e){let t=e instanceof st?e:typeof e=="string"?D(e):v.normal;if(t===v.normal)return uc;if(t===v.auto)return cc;let i=t instanceof ee?t.values:[t],n=Object.create(uc);for(let r of i)if(r instanceof he)switch(r.name){case"trim-both":case"trim-auto":return cc;case"space-all":return Bx;case"trim-start":n.trimStart=!0,n.spaceFirst=!1;break;case"space-start":n.trimStart=!1,n.spaceFirst=!1;break;case"space-first":n.trimStart=!1,n.spaceFirst=!0;break;case"trim-end":n.trimEnd=!0,n.allowEnd=!1;break;case"space-end":n.trimEnd=!1,n.allowEnd=!1;break;case"allow-end":n.trimEnd=!1,n.allowEnd=!0;break;case"trim-adjacent":n.trimAdjacent=!0;break;case"space-adjacent":n.trimAdjacent=!1;break}return n}var Ba={ideographAlpha:!1,ideographNumeric:!1},Mx={ideographAlpha:!0,ideographNumeric:!0};function pc(e){let t=e instanceof st?e:typeof e=="string"?D(e):v.normal;if(t===v.normal||t===v.auto)return Mx;if(t===v.none)return Ba;let i=t instanceof ee?t.values:[t],n=Object.create(Ba);for(let r of i)if(r instanceof he)switch(r.name){case"no-autospace":return Ba;case"ideograph-alpha":n.ideographAlpha=!0;break;case"ideograph-numeric":n.ideographNumeric=!0;break}return n}function fc(e,t){return!e.ideographAlpha&&!e.ideographNumeric&&!t.trimStart&&!t.spaceFirst&&!t.trimEnd&&!t.allowEnd&&!t.trimAdjacent}function gc(e){return e?(e=e.toLowerCase(),/^zh\b.*-(hant|tw|hk)\b/.test(e)?"zh-hant":/^zh\b/.test(e)?"zh-hans":/^ja\b/.test(e)?"ja":/^ko\b/.test(e)?"ko":e):null}function _x(e){var t;let i=(t=e.ownerDocument)==null?void 0:t.defaultView;if(!i)return null;for(let n=e.parentElement;n;n=n.parentElement){if(n.hasAttribute("data-vivliostyle-column"))return n;let{display:r}=i.getComputedStyle(n);if(r!=="inline"&&r!=="contents"&&!/^ruby/.test(r))return n}return null}function Dx(e){let t=e.style.fontKerning,{fontKerning:i}=e.ownerDocument.defaultView.getComputedStyle(e);e.style.fontKerning=i==="none"?"normal":"none",e.offsetHeight,e.style.fontKerning=t}var zx=/^[‘’“”〰﹙﹚﹛﹜﹝﹞〚〛]\p{M}*$/u,Vx=/^[‘“﹙﹛﹝〚]\p{M}*$/u;function Ux(e,t){return ts==="chromium"&&t&&zx.test(e)}function $x(e){return Vx.test(e)?"viv-ts-open":"viv-ts-close"}var Hx=class{getPolyfilledInheritedProps(){return["hanging-punctuation","text-autospace","text-spacing-trim"]}preprocessSingleDocument(e){e.body&&this.preprocessForTextSpacing(e.body)}preprocessForTextSpacing(e){var t;let i=e.ownerDocument.createNodeIterator(e,NodeFilter.SHOW_TEXT);for(let n=i.nextNode();n;n=i.nextNode()){let r=n.parentElement;if(!r||r.namespaceURI!=="http://www.w3.org/1999/xhtml"||((t=r.dataset)==null?void 0:t.mathTypeset)==="true")continue;let s=n.textContent.replace(/(?![()\[\]{}])[\p{Ps}\p{Pe}\p{Pf}\p{Pi}、。,.:;、。\u3000\u3030]\p{M}*(?=\P{M})|.(?=(?![()\[\]{}])[\p{Ps}\p{Pe}\p{Pf}\p{Pi}、。,.:;、。\u3000\u3030])|(?!\p{P})[\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF]\p{M}*(?=(?![\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF\uFF01-\uFF60])[\p{L}\p{Nd}])|(?![\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF\uFF01-\uFF60])[\p{L}\p{Nd}]\p{M}*(?=(?!\p{P})[\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF])/gsu,"$&\0").split("\0");if(s.length>1){let o=s.length-1;for(let a=0;a<o;a++)n.before(document.createTextNode(s[a]));n.textContent=s[o]}}}processGeneratedContent(e,t,i,n,r,s){r=gc(r);let o=pc(t),a=dc(i),h=lc(n);if(hc(h)&&fc(o,a))return;this.preprocessForTextSpacing(e);let l=e.style.whiteSpace;(s?e.offsetHeight:e.offsetWidth)===0&&(e.style.whiteSpace="pre");let c=e.ownerDocument.createNodeIterator(e,NodeFilter.SHOW_TEXT),d=null,p=null;for(let f=c.nextNode();f;f=p){p=c.nextNode();let g=!d,m=!d||/\n$/.test(d.textContent),w=!p||/^\n/.test(p.textContent),b=!p;this.processTextSpacing(f,g||m,g,m,w,b,d,p,o,a,h,r,s),d=f}e.style.whiteSpace=l}postLayoutBlock(e,t){var i,n,r,s,o,a,h,l;let c=!e||e.fragmentIndex===1&&f(),d=c||m();function p(y){var C;if(y?.nodeType!==1)return!1;let S=y;if(S.hasAttribute($n))return!0;let{position:N,float:E}=(C=S.style)!=null?C:{};return N==="absolute"||N==="fixed"||!!(E&&E!=="none")}function f(){let y=t[0];for(let C=y;;C=C.parent)if(!C||!C.inline){if(C?.fragmentIndex!==1)return!1;break}if(!y.inline)return!0;for(let C=y.viewNode.previousSibling;C;C=C.previousSibling)if(!Ee(C,y.whitespace)&&!p(C))return!1;return!0}function g(){var y;for(let C=t[0];C&&C.inline;C=C.parent){let S=(y=C.viewNode)==null?void 0:y.previousSibling,N=S&&S.nodeType===Node.TEXT_NODE&&/^[ \t\r\n\f]*$/.test(S.textContent)&&C.whitespace!==bt.PRESERVE?S.previousSibling:S;if(N)return{nodeContext:C,prevNode:N}}return null}function m(){var y;let C=g();if(!C)return!1;let S=C.nodeContext;for(let N=C.prevNode;N;N=N.lastChild)if(N.nodeType===Node.ELEMENT_NODE){if(N.localName==="br")return!0;let E=(y=N.style)==null?void 0:y.display;if(E&&E!=="inline")return!/^(inline|ruby)\b/.test(E)}else if(N.nodeType===Node.TEXT_NODE){if(S.whitespace===bt.PRESERVE){if(/\n$/.test(N.textContent))return!0}else if(S.whitespace===bt.NEWLINE&&/\n[ \t\r\n\f]*$/.test(N.textContent))return!0}return!1}let w=-1,b=new Set;for(let y=0;y<t.length;y++){let C=t[y],S=!C.after&&C.inline&&!C.display?hh(C):null;if(S&&S.viewNode.parentNode&&!Ee(S.viewNode,S.whitespace)){let N=function(U){var V,K,ne;if(((V=U.viewNode)==null?void 0:V.nodeType)===Node.ELEMENT_NODE)return U.viewNode.localName==="br";if(((K=U.viewNode)==null?void 0:K.nodeType)===Node.TEXT_NODE){let ie=U.viewNode;if(U.whitespace===bt.PRESERVE){if(/\n$/.test(ie.textContent))return!0}else if(U.whitespace===bt.NEWLINE&&/\n[ \t\r\n\f]*$/.test(ie.textContent))return!0;if(((ne=ie.previousElementSibling)==null?void 0:ne.localName)==="br")return Ee(ie,U.whitespace)}return!1},E=function(U){var V,K,ne;if(((V=U.viewNode)==null?void 0:V.nodeType)===Node.ELEMENT_NODE)return U.viewNode.localName==="br";if(((K=U.viewNode)==null?void 0:K.nodeType)===Node.TEXT_NODE){let ie=U.viewNode;if(U.whitespace===bt.PRESERVE){if(/^\n/.test(ie.textContent))return!0}else if(U.whitespace===bt.NEWLINE&&/^[ \t\r\n\f]*\n/.test(ie.textContent))return!0;if(((ne=ie.nextElementSibling)==null?void 0:ne.localName)==="br")return Ee(ie,U.whitespace)}return!1};var x=N,P=E;w<0&&(w=y);let R=gc((s=(n=(i=S.lang)!=null?i:S.parent.lang)!=null?n:e?.lang)!=null?s:(r=e?.parent)==null?void 0:r.lang),_=pc(S.inheritedProps["text-autospace"]),X=dc(S.inheritedProps["text-spacing-trim"]),te=lc(S.inheritedProps["hanging-punctuation"]);if(hc(te)&&fc(_,X)||/\b(flex|grid)\b/.test((o=S.parent.display)!=null?o:""))continue;let k=null,M=null,T=y===w,$=y===w&&c,O=y===w&&d,A=!1,L=!1;for(let U=y-1;U>=0;U--){let V=t[U];if(N(V)){O=!0;break}if(!V.display&&V.viewNode.nodeType===Node.TEXT_NODE&&V.viewNode.textContent.length>0){k=V.viewNode;break}if(((a=V.viewNode)==null?void 0:a.nodeType)===Node.ELEMENT_NODE&&ai(V.viewNode)==="footnote-call"){if(V.viewNode.contains(S.viewNode))continue;let K=Gw(V.viewNode);if(K){k=K;break}}if(V.display&&!/^(inline|ruby)\b/.test(V.display)||((h=V.viewNode)==null?void 0:h.nodeType)===Node.ELEMENT_NODE&&(V.viewNode.localName==="br"||tn[V.viewNode.localName]))break;U===0&&(T=!0,c&&($=!0,O=!0))}for(let U=y+1;U<t.length;U++){let V=t[U];if(E(V)){A=!0;break}if(V.viewNode!==S.viewNode&&!V.display&&V.viewNode.nodeType===Node.TEXT_NODE&&V.viewNode.textContent.length>0){M=V.viewNode;break}if(V.display&&!/^(inline|ruby)\b/.test(V.display)||((l=V.viewNode)==null?void 0:l.nodeType)===Node.ELEMENT_NODE&&(V.viewNode.localName==="br"||tn[V.viewNode.localName])){U===t.length-1&&p(V.viewNode)&&(L=!0);break}if(U===t.length-1){A=!0,L=!0;for(let K=V.viewNode.nextSibling;K;K=K.nextSibling)if(!p(K)){L=!1;break}}}if(S.parent.display==="inline-block"){let U=Lt(S.parent);if(!$){let V=U.viewNode.firstChild;for(;Ee(V,S.whitespace);)V=V.nextSibling;S.viewNode===V&&($=!0)}if(!L){let V=U.viewNode.lastChild;for(;Ee(V,S.whitespace);)V=V.previousSibling;S.viewNode===V&&(L=!0)}}let W=this.processTextSpacing(S.viewNode,T,$,O,A,L,k,M,_,X,te,R,S.vertical),G=_x(S.viewNode);if(G&&b.add(G),W>0)break}}for(let y of b)y.querySelector("viv-ts-open, viv-ts-close, viv-ts-thin-sp")&&Dx(y)}processTextSpacing(e,t,i,n,r,s,o,a,h,l,c,d,p){var f,g;let m=e.textContent,w=e.ownerDocument,b=0,x,P,y;function C(){if(t)return!0;if(!o)return!1;x||(x=w.createRange(),x.selectNode(e));let O=x.getClientRects()[0];if(!O)return!1;P||(P=w.createRange(),P.selectNode(o));let A=P.getClientRects(),L=A[A.length-1];return L?(b||(b=Hr(L,p)),p?O.top<L.top+L.height-O.width||O.left+O.width<L.left+O.width/10||O.left>L.left+L.width-O.width/10:O.left<L.left+L.width-O.height||O.top>L.top+L.height-O.height/10||O.top+O.height<L.top+O.height/10):!1}function S(){if(!a)return!1;x||(x=w.createRange(),x.selectNode(e));let O=x.getClientRects()[0];if(!O)return!1;b||(b=Hr(O,p)),y||(y=w.createRange(),y.selectNode(a));let A=y.getClientRects()[0];return A?p?O.top+O.height>A.top+O.width||O.left>A.left+A.width-O.width/10||O.left+O.width<A.left+O.width/10:O.left+O.width>A.left+O.height||O.top+O.height<A.top+O.height/10||O.top>A.top+A.height-O.height/10:!1}let N=!1,E=!1,R=!1,_=!1,X,te=Ux(m,p);if(i&&c.first&&/^[\p{Ps}\p{Pf}\p{Pi}'"\u3000]\p{M}*$/u.test(m)?(X="viv-ts-open",E=!0):s&&c.last&&/^[\p{Pe}\p{Pf}\p{Pi}'"]\p{M}*$/u.test(m)?(X="viv-ts-close",R=!0):(c.forceEnd||c.allowEnd)&&/^[、。,.、。]\p{M}*$/u.test(m)?(X="viv-ts-close",_=!0):(l.trimStart||l.spaceFirst||l.trimAdjacent)&&/^[‘“〝([{⦅〈〈《「『【〔〖〘〚]\p{M}*$/u.test(m)?X="viv-ts-open":(l.trimEnd||l.allowEnd||l.trimAdjacent)&&(/^[’”〞〟)]}⦆〉〉》」』】〕〗〙〛]\p{M}*$/u.test(m)||d==="zh-hans"&&/^[:;]\p{M}*$/u.test(m)||d!=="zh-hant"&&/^[、。,.]\p{M}*$/u.test(m))?X="viv-ts-close":te&&(X=$x(m),N=!0),X!==void 0){let O=function(U){let V=parseFloat(w.defaultView.getComputedStyle(U).fontSize)*.7;return(p?U.offsetHeight:U.offsetWidth)>V},A=function(){return p?L.offsetLeft:L.offsetTop};var k=O,M=A;if(((f=e.parentElement)==null?void 0:f.localName)==="viv-ts-inner")return 0;let L=w.createElement(X),W=w.createElement("viv-ts-inner");if(L.appendChild(W),e.before(L),W.appendChild(e),te&&w.defaultView.getComputedStyle(L).textOrientation==="mixed"&&(W.style.textOrientation="sideways"),N)return 0;let G=O(W);if(G||E||R||_){if(X==="viv-ts-open"){if(E)L.className="viv-hang-first";else if(i||n)l.trimStart?L.className="viv-ts-trim":L.className="viv-ts-space";else if(!(l.trimStart||l.spaceFirst)&&C())L.className="viv-ts-space";else if(l.trimAdjacent&&o&&/[\p{Ps}\p{Pi}\p{Pe}\p{Pf}\u00B7\u2027\u30FB\u3000:;、。,.]\p{M}*$/u.test(o.textContent)&&(!/[\p{Pe}\p{Pf}]\p{M}*$/u.test(o.textContent)||((g=o.parentElement)==null?void 0:g.localName)==="viv-ts-inner"&&O(o.parentElement)))L.className="viv-ts-trim";else if((l.trimStart||l.spaceFirst)&&C()){let U=A();L.className="viv-ts-auto",U===A()&&!C()&&(L.className="viv-ts-trim")}}else if(X==="viv-ts-close"){if(R)L.className=G?"viv-hang-last":"viv-hang-last viv-hang-hw";else if(s||r){let U=A();_?(L.className=G?c.allowEnd&&l.allowEnd?"viv-ts-auto":"viv-hang-end":"viv-hang-end viv-hang-hw",c.allowEnd&&U===A()&&(l.trimEnd?L.className="viv-ts-trim":l.allowEnd?(L.className="viv-hang-end",U===A()&&(L.className="")):L.className="viv-ts-space")):l.trimEnd?L.className="viv-ts-trim":l.allowEnd?(L.className="viv-ts-auto",U===A()&&(L.className="")):L.className="viv-ts-space"}else if(a&&/^[\p{Pe}\p{Pf}\u00B7\u2027\u30FB\u3000:;、。,.]/u.test(a.textContent))G&&l.trimAdjacent&&(L.className="viv-ts-trim");else if(_){let U=S(),V=U&&c.allowEnd;V||(L.className=G?"viv-hang-end":"viv-hang-end viv-hang-hw"),G?V&&l.trimEnd?L.className="viv-ts-auto":!V&&!S()?L.className="":!U&&c.allowEnd&&(l.trimEnd?(L.className="viv-ts-auto",S()||(L.className="viv-hang-end")):(L.className="viv-ts-space",S()||(l.allowEnd?(L.className="viv-ts-auto",S()||(L.className="viv-hang-end")):L.className="viv-hang-end"))):!U&&!S()&&(L.className="")}else if(l.trimEnd||l.allowEnd)if(S())l.allowEnd?L.className="viv-ts-space":L.className="viv-ts-auto";else{let U=A();L.className="viv-ts-auto",U===A()&&(L.className="")}}}}function T(O){var A;let L=(A=O?.ownerDocument.defaultView)==null?void 0:A.getComputedStyle(O);return!!L&&(L.textOrientation==="upright"||L.textCombineUpright==="all"||L["-webkit-text-combine"]==="horizontal")}function $(O,A){if(O.nodeType===Node.ELEMENT_NODE){let G=w.defaultView.getComputedStyle(O);if(parseFloat(G.marginInlineEnd)||parseFloat(G.borderInlineEndWidth)||parseFloat(G.paddingInlineEnd))return!0}let L=O.parentElement;if(L&&!L.contains(A))return $(L,A);if(A.nodeType===Node.ELEMENT_NODE){let G=w.defaultView.getComputedStyle(A);if(parseFloat(G.marginInlineStart)||parseFloat(G.borderInlineStartWidth)||parseFloat(G.paddingInlineStart))return!0}let W=A.parentElement;return W&&!W.contains(O)?$(O,W):!1}return(h.ideographAlpha||h.ideographNumeric)&&(o&&/^(?!\p{P})[\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF]/u.test(m)&&(h.ideographAlpha&&/(?![\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF\uFF01-\uFF60])\p{L}\p{M}*$/u.test(o.textContent)||h.ideographNumeric&&/(?![\uFF01-\uFF60])\p{Nd}\p{M}*$/u.test(o.textContent))&&!(p&&o.parentElement!==null&&T(o.parentElement))&&!$(o,e)&&e.before(w.createElement("viv-ts-thin-sp")),a&&/(?!\p{P})[\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF]\p{M}*$/u.test(m)&&(h.ideographAlpha&&/^(?![\p{sc=Han}\u3041-\u30FF\u31C0-\u31FF\uFF01-\uFF60])\p{L}/u.test(a.textContent)||h.ideographNumeric&&/^(?![\uFF01-\uFF60])\p{Nd}/u.test(a.textContent))&&!(p&&a.parentElement!==null&&T(a.parentElement))&&!$(e,a)&&e.after(w.createElement("viv-ts-thin-sp"))),b}registerHooks(){Ft("POLYFILLED_INHERITED_PROPS",this.getPolyfilledInheritedProps.bind(this)),Ft("PREPROCESS_SINGLE_DOCUMENT",this.preprocessSingleDocument.bind(this)),Ft("POST_LAYOUT_BLOCK",this.postLayoutBlock.bind(this),!0)}},Mh=new Hx;Mh.registerHooks();function Wx(e){Mh.preprocessForTextSpacing(e)}function Gx(e,t,i,n,r,s){Mh.processGeneratedContent(e,t,i,n,r,s)}var vr=new DOMParser().parseFromString('<root xmlns="http://www.pyroxy.com/ns/shadow"/>',"text/xml"),jx=["footnote-marker","marker","first-5-lines","first-4-lines","first-3-lines","first-2-lines","first-line","first-letter","before","footnote-call","","after"],_h="data-adapt-pseudo";function ai(e){return e.getAttribute(_h)||""}function Lr(e,t){e.setAttribute(_h,t)}var Ma=class{constructor(e,t,i,n,r){u(this,"element",e),u(this,"style",t),u(this,"styler",i),u(this,"context",n),u(this,"exprContentListener",r),u(this,"contentProcessed",{}),u(this,"afterStyleTaken",!1)}getStyle(e,t){let i=ai(e);!this.afterStyleTaken&&i&&i.match(/after$/)&&(this.style=this.styler.getStyle(this.element,!0),this.afterStyleTaken=!0);let n=ht(this.style,"_pseudos"),r=n?.[i]||{};if(i.match(/^first-/)&&!r["x-first-pseudo"]){let s=1,o;i=="first-letter"?s=0:(o=i.match(/^first-([0-9]+)-lines$/))!=null&&(s=o[1]-0),r["x-first-pseudo"]=new Y(new ut(s),0)}return r}processContent(e,t,i){let n=ai(e);if(!this.contentProcessed[n]){this.contentProcessed[n]=!0;let r=t.content;At(r)&&(r.visit(new $r(e,this.context,r,this.exprContentListener)),Wx(e))}}},Xx=aa.registerFragmentIndex,RP=aa.clearFragmentIndices,qx=class{constructor(e,t){u(this,"sourceNode",e),u(this,"styler",t)}createElement(e,t){let i=t.viewNode.ownerDocument.createElement("div"),n=new Dh(e,i,t),r=n.getColumn().pageBreakType;return n.getColumn().pageBreakType=null,n.layout(this.createNodePositionForPseudoElement(),!0).thenAsync(()=>{this.styler.contentProcessed["after-if-continues"]=!1,n.getColumn().pageBreakType=r;let s=i.firstChild;return F(s,"display","block"),I(s)})}createNodePositionForPseudoElement(){let e=vr.createElementNS("http://www.w3.org/1999/xhtml","div");Lr(e,"after-if-continues");let t=this.createShadowContext(e),i={steps:[{node:e,shadowType:t.type,shadowContext:t,nodeShadow:null,shadowSibling:null}],offsetInNode:0,after:!1,preprocessedTextContent:null};return new zi(i)}createShadowContext(e){return new qs(this.sourceNode,e,null,null,null,xi.ShadowType.ROOTED,this.styler)}},Yx=class fg{constructor(t,i,n){u(this,"nodeContext",t),u(this,"afterIfContinues",i),u(this,"pseudoElementHeight",n),u(this,"flagmentLayoutConstraintType","AfterIfContinue")}allowLayout(t,i,n){return!(i&&!t||t&&t.overflow)}nextCandidate(t){return!1}postLayout(t,i,n,r){}finishBreak(t,i){return this.getRepetitiveElements().affectTo(t)?this.afterIfContinues.createElement(i,this.nodeContext).thenAsync(n=>(this.nodeContext.viewNode.appendChild(n),I(!0))):I(!0)}getRepetitiveElements(){return new Kx(this.nodeContext,this.pseudoElementHeight)}equalsTo(t){return t instanceof fg?this.afterIfContinues==t.afterIfContinues:!1}getPriorityOfFinishBreak(){return 9}},Kx=class{constructor(e,t){u(this,"nodeContext",e),u(this,"pseudoElementHeight",t)}calculateOffset(e){return this.affectTo(e)?this.pseudoElementHeight:0}calculateMinimumOffset(e){return this.calculateOffset(e)}affectTo(e){if(!e)return!1;let t=e.shadowContext?e.shadowContext.owner:e.sourceNode;if(t===this.nodeContext.sourceNode)return!!e.after;for(let i=t.parentNode;i;i=i.parentNode)if(i===this.nodeContext.sourceNode)return!0;return!1}};function gg(e,t){let i=e&&Bw(e);if(!i||i.after||t.asFloatNodeContext(i))return I(e);let n=i.afterIfContinues,r=i;return n.createElement(t,r).thenAsync(s=>{let o=Jx(r,t,s);return t.fragmentLayoutConstraints.push(new Yx(r,n,o)),I(e)})}function mg(e,t){return e.thenAsync(i=>gg(i,t))}function Zx(e,t){let i=z("processAfterIfContinuesOfAncestors"),n=e;return i.loop(()=>{if(n!==null){let r=gg(n,t);return n=n.parent,r.thenReturn(!0)}else return I(!1)}).then(()=>{i.finish(!0)}),i.result()}function Jx(e,t,i){let n=e.viewNode;n.appendChild(i);let r=hl(i,t,e.vertical);return n.removeChild(i),r}var Qx=class{constructor(e){u(this,"constraints",e)}allowLayout(e){return this.constraints.every(t=>t.allowLayout(e))}allowLayoutAfterPageBreak(e){for(let t of this.constraints)if(!t.allowLayoutAfterPageBreak&&!t.allowLayout(e))return!1;for(let t of this.constraints)if(t.allowLayoutAfterPageBreak&&!t.allowLayoutAfterPageBreak(e))return!1;return!0}},wr=class extends yh{constructor(e,t){super(),u(this,"checkPoints",e),u(this,"penalty",t),u(this,"alreadyEvaluated",!1),u(this,"breakNodeContext",null)}findAcceptableBreak(e,t){return t<this.getMinBreakPenalty()?null:(this.alreadyEvaluated||(this.breakNodeContext=e.findBoxBreakPosition(this,t>0),this.alreadyEvaluated=!!this.breakNodeContext||t>0||!!e.pseudoParent),this.breakNodeContext)}getMinBreakPenalty(){return this.penalty}getNodeContext(){return this.alreadyEvaluated?this.breakNodeContext:this.checkPoints[this.checkPoints.length-1]}},Vo=class extends _p{constructor(e,t,i,n,r,s,o,a,h){super(e),u(this,"layoutContext",t),u(this,"clientLayout",i),u(this,"layoutConstraint",n),u(this,"flowRootFormattingContext",h),u(this,"last"),u(this,"viewDocument"),u(this,"isNonFirstColumn",!1),u(this,"isFloat",!1),u(this,"isFootnote",!1),u(this,"startEdge",0),u(this,"endEdge",0),u(this,"beforeEdge",0),u(this,"afterEdge",0),u(this,"footnoteEdge",0),u(this,"chunkPositions",[]),u(this,"bands"),u(this,"overflown",!1),u(this,"breakPositions",[]),u(this,"pageBreakType",null),u(this,"forceNonfitting",!0),u(this,"leftFloatEdge",0),u(this,"rightFloatEdge",0),u(this,"bottommostFloatTop",0),u(this,"stopAtOverflow",!0),u(this,"lastAfterPosition",null),u(this,"fragmentLayoutConstraints",[]),u(this,"pseudoParent",null),u(this,"nodeContextOverflowingDueToRepetitiveElements",null),u(this,"blockDistanceToBlockEndFloats",NaN),u(this,"lastLineStride",0),u(this,"breakAtTheEdgeBeforeFloat",null),u(this,"lineFootnoteOverflowEdge",null),u(this,"pageFloatLayoutContext"),zw(this),this.last=e.lastChild,this.viewDocument=e.ownerDocument,this.pageFloatLayoutContext=r.withContainer(this),Mp(s,this),this.innerShape=o,this.exclusions=a,this.bands=this.measure(),this.createFloats()}getTopEdge(){return this.vertical?this.rtl?this.endEdge:this.startEdge:this.beforeEdge}getBottomEdge(){return this.vertical?this.rtl?this.startEdge:this.endEdge:this.afterEdge}getLeftEdge(){return this.vertical?this.afterEdge:this.rtl?this.endEdge:this.startEdge}getRightEdge(){return this.vertical?this.beforeEdge:this.rtl?this.startEdge:this.endEdge}asFloatNodeContext(e){let t=Lt(e);return t&&t.floatSide&&(!this.isFloat||t.parent)?t:null}stopByOverflow(e){return this.stopAtOverflow&&!!e&&e.overflow}almostEquals(e,t,i=this.clientLayout.pixelRatio===0?.5:1.5/(this.clientLayout.pixelRatio||1)){return Math.abs(e-t)<i}getFloatLayoutUnit(){return this.clientLayout.pixelRatio===0?0:1/(this.clientLayout.pixelRatio||1)}getFloatLayoutTolerance(e){return e||1}isOverflown(e){let t=1.5/(this.clientLayout.pixelRatio||1);return this.almostEquals(e,this.footnoteEdge,t)?!1:this.vertical?e<this.footnoteEdge:e>this.footnoteEdge}getExclusions(){let e=this.pageFloatLayoutContext.getFloatFragmentExclusions();return this.exclusions.concat(e)}openAllViews(e){let t=z("openAllViews"),i=e.steps;this.layoutContext.setViewRoot(this.element,this.isFootnote);let n=i.length-1,r=null;return t.loop(()=>{for(;n>=0;){let s=r;if(r=s?wo(i[n],s):Tw(Iw(e),this.flowRootFormattingContext),n==0&&(r.offsetInNode=this.calculateOffsetInNodeForNodeContext(e),r.after=e.after,r.preprocessedTextContent=e.preprocessedTextContent,r.after))break;let o=this.layoutContext.setCurrent(r,n==0&&r.offsetInNode==0);if(n--,o.isPending())return o}return I(!1)}).then(()=>{t.finish(r)}),t.result()}calculateOffsetInNodeForNodeContext(e){return e.preprocessedTextContent?yw(e.preprocessedTextContent,e.offsetInNode):e.offsetInNode}maybePeelOff(e,t){var i,n,r;if(e.firstPseudo&&e.inline&&!e.after&&e.firstPseudo.count==0){let s=hh(e);if(s){let o=s.viewNode,a=o.textContent,h=a.match(Dr),l=h?h[0].length:0;if(!h&&((i=e.sourceNode)==null?void 0:i.nodeType)===3&&((n=e.sourceNode.nextSibling)==null?void 0:n.nodeType)===3&&a===e.sourceNode.textContent){let c=a+e.sourceNode.nextSibling.textContent,d=c.match(Dr);if(d){let p=d[0];l=p.length,e.sourceNode.textContent=p,o.textContent=p,e.sourceNode.nextSibling.textContent=c.substr(l)}}if(l>0){let c=(r=o.textContent)!=null?r:"";o.textContent=c.substr(0,l)}return this.layoutContext.peelOff(s,l)}}return I(e)}buildViewToNextBlockEdge(e,t){let i=!1,n=z("buildViewToNextBlockEdge");return n.loopWithFrame(r=>{var s;let o=Yi(e);if(o&&!Rn(o)&&((s=o.viewNode.parentElement)==null?void 0:s.namespaceURI)==="http://www.w3.org/1999/xhtml"&&(t.push(o.copy()),t.length>1e3)){let a=o.viewNode.nodeType===1?o.viewNode:o.viewNode.parentElement,h=this.clientLayout.getElementClientRect(a);if(Hr(h,this.vertical)>=2){r.breakLoop();return}}this.maybePeelOff(e,0).then(a=>{let h=a;if(h!==e){e=h;let l=Yi(h);l&&!Rn(l)&&t.push(l.copy())}this.nextInTree(e).then(l=>{if(e=l,!e){r.breakLoop();return}(i||!this.layoutConstraint.allowLayout(e))&&(i=!0,e=e.modify(),e.overflow=!0);let c=this.asFloatNodeContext(e);c&&(Oi(c.floatReference)||c.floatSide==="footnote")?this.layoutFloatOrFootnote(c).then(d=>{if(e=d,this.pageFloatLayoutContext.isInvalidated()&&(e=null),!e){r.breakLoop();return}if(e.pluginProps.lineFootnoteOverflow){r.breakLoop();return}r.continueLoop()}):e.inline?r.continueLoop():r.breakLoop()})})}).then(()=>{n.finish(e)}),n.result()}nextInTree(e,t){let i=this.layoutContext.nextInTree(e,t);return mg(i,this)}buildDeepElementView(e){if(!e.viewNode)return I(e);let t=[],i=e.sourceNode,n=z("buildDeepElementView");return n.loopWithFrame(r=>{let s=Yi(e);s&&s.inline&&!Rn(s)?t.push(s.copy()):(t.length>0&&this.postLayoutBlock(e,t),t=[]),this.maybePeelOff(e,0).then(o=>{let a=o;if(a!==e){let h=a;for(;h&&h.sourceNode!=i;)h=h.parent;if(h==null){e=a,r.breakLoop();return}let l=Yi(a);l&&!Rn(l)&&t.push(l.copy())}this.nextInTree(a).then(h=>{if(e=h,!e||e.sourceNode==i){r.breakLoop();return}if(!this.layoutConstraint.allowLayout(e)&&(e=e.modify(),e.overflow=!0,this.stopAtOverflow)){r.breakLoop();return}let l=this.asFloatNodeContext(e);if(l&&(Oi(l.floatReference)||l.floatSide==="footnote")){this.layoutFloatOrFootnote(l).then(c=>{if(e=c,this.pageFloatLayoutContext.isInvalidated()&&(e=null),!e){r.breakLoop();return}r.continueLoop()});return}r.continueLoop()})})}).then(()=>{t.length>0&&this.postLayoutBlock(e,t),n.finish(e)}),n.result()}createFloat(e,t,i,n){let r=this.viewDocument.createElement("div");return this.vertical?(n>=this.height&&(n-=.1),n<1&&(n=0),F(r,"height",`${i}px`),F(r,"width",`${n}px`)):(i>=this.width&&(i-=.1),i<1&&(i=0),F(r,"width",`${i}px`),F(r,"height",`${n}px`)),F(r,"float",t),F(r,"clear",t),this.element.insertBefore(r,e),r}killFloats(){let e=this.element.firstChild;for(;e;){let t=e.nextSibling;if(e.nodeType==1){let i=e,n=i.style.cssFloat;if(n=="left"||n=="right"||n==="none")this.element.removeChild(i);else break}e=t}}createFloats(){let e=this.element.firstChild,t=this.bands,i=this.vertical?this.getTopEdge():this.getLeftEdge(),n=this.vertical?this.getBottomEdge():this.getRightEdge(),r=this.vertical?-this.getRightEdge():this.getTopEdge(),s=this.vertical?-this.getLeftEdge():this.getBottomEdge(),o=null,a=1.5/(this.clientLayout.pixelRatio||1);for(let p of t){let f=Math.abs(p.x1-i)<a&&Math.abs(p.x2-n)<a?a:void 0;this.almostEquals(p.x1,i,f)?p.x1=i:this.almostEquals(p.x1,n,f)&&(p.x1=n),this.almostEquals(p.x2,n,f)?p.x2=n:this.almostEquals(p.x2,i,f)&&(p.x2=i),this.almostEquals(p.y1,r,f)?p.y1=r:this.almostEquals(p.y1,s,f)&&(p.y1=s),this.almostEquals(p.y2,s,f)?p.y2=s:this.almostEquals(p.y2,r,f)&&(p.y2=r)}let h=this.getFloatLayoutUnit(),l=ts==="webkit"?Math.floor:Math.round,c=t.map(p=>h>0?(l(p.y2/h)-l(p.y1/h))*h:p.y2-p.y1),d=.01;for(let p=0;p<t.length;p++){let f=p<t.length-1?t[p+1].x1:i,g=p<t.length-1?t[p+1].x2:n,m=f-t[p].x1,w=t[p].x2-g,b=0,x=0;m>d?b=1:m<-d&&(b=-1),w>d?x=1:w<-d&&(x=-1);let P=b!==0&&x!==0?b===x?b:0:b||x;if(h>0&&P!==0){let y=P*h;c[p]+y>=0&&(p>=t.length-1||c[p+1]-y>=0)&&(c[p]+=y,p<t.length-1&&(c[p+1]-=y))}}for(let p=0;p<t.length;p++){let f=t[p];f.left=this.createFloat(e,"left",f.x1-i,c[p]),f.right=this.createFloat(e,"right",n-f.x2,c[p]),f.x1<n&&f.x2>i?o=f:o||F(f.right,"float","none")}if(o){let p=t[t.length-1],f=1.5/(this.clientLayout.pixelRatio||1);if(o!==p&&(p.y2>=s||this.almostEquals(p.y2,s,f))&&(this.footnoteEdge=this.vertical?-o.y2:o.y2,o.x1===i&&o.x2===n))for(let g=t.indexOf(o);g<t.length;g++){let m=t[g];this.element.removeChild(m.left),this.element.removeChild(m.right),m.left=null,m.right=null}}this.adjustColumnBlockSizeForBlockEndFloats()}adjustColumnBlockSizeForBlockEndFloats(){var e;if(this.element.hasAttribute("data-vivliostyle-in-column-balancing")||(e=this.element.parentElement)!=null&&e.hasAttribute("data-vivliostyle-in-column-balancing"))return;let t=this.vertical?this.width:this.height,i=this.getBoxDir()*(this.footnoteEdge-this.beforeEdge),n=1.5/(this.clientLayout.pixelRatio||1);if(i>0&&i<t&&!this.almostEquals(i,t,n)){let r=this.vertical?"width":"height";if(F(this.element,r,`${i}px`),this.vertical){let s=this.left+(t-i);F(this.element,"left",`${s}px`)}this.element.setAttribute("data-vivliostyle-column-block-size-adjusted","true")}}calculateEdge(e,t,i,n){let r;if(e&&Fn(e.viewNode))return NaN;if(e&&e.after&&!e.inline&&(r=Nn(e,this.clientLayout,0,this.vertical),!isNaN(r)))return r;e=t[i];let s=n-e.boxOffset;for(;;){if(r=Nn(e,this.clientLayout,s,this.vertical),!isNaN(r))return r;if(s>0){s--;continue}if(i--,i<0)return this.beforeEdge;let o=t[i];e=o,o.viewNode.nodeType!=1&&(s=o.viewNode.textContent.length)}}parseComputedLength(e){let t=e.match(/^(-?[0-9]*(\.[0-9]*)?)px$/);return t?this.clientLayout.adjustLengthValue(parseFloat(t[0])):0}getComputedMargin(e){let t=this.clientLayout.getElementComputedStyle(e),i=new ba(0,0,0,0);return t&&(i.left=this.parseComputedLength(t.marginLeft),i.top=this.parseComputedLength(t.marginTop),i.right=this.parseComputedLength(t.marginRight),i.bottom=this.parseComputedLength(t.marginBottom)),i}getComputedPaddingBorder(e){let t=this.clientLayout.getElementComputedStyle(e),i=new ba(0,0,0,0);return t&&(i.left=this.parseComputedLength(t.borderLeftWidth)+this.parseComputedLength(t.paddingLeft),i.top=this.parseComputedLength(t.borderTopWidth)+this.parseComputedLength(t.paddingTop),i.right=this.parseComputedLength(t.borderRightWidth)+this.parseComputedLength(t.paddingRight),i.bottom=this.parseComputedLength(t.borderBottomWidth)+this.parseComputedLength(t.paddingBottom)),i}getComputedInsets(e){let t=this.clientLayout.getElementComputedStyle(e),i=new ba(0,0,0,0);if(t){if(t.boxSizing=="border-box")return this.getComputedMargin(e);i.left=this.parseComputedLength(t.marginLeft)+this.parseComputedLength(t.borderLeftWidth)+this.parseComputedLength(t.paddingLeft),i.top=this.parseComputedLength(t.marginTop)+this.parseComputedLength(t.borderTopWidth)+this.parseComputedLength(t.paddingTop),i.right=this.parseComputedLength(t.marginRight)+this.parseComputedLength(t.borderRightWidth)+this.parseComputedLength(t.paddingRight),i.bottom=this.parseComputedLength(t.marginBottom)+this.parseComputedLength(t.borderBottomWidth)+this.parseComputedLength(t.paddingBottom)}return i}setComputedInsets(e,t){let i=this.clientLayout.getElementComputedStyle(e);i&&(t.marginLeft=this.parseComputedLength(i.marginLeft),t.borderLeft=this.parseComputedLength(i.borderLeftWidth),t.paddingLeft=this.parseComputedLength(i.paddingLeft),t.marginTop=this.parseComputedLength(i.marginTop),t.borderTop=this.parseComputedLength(i.borderTopWidth),t.paddingTop=this.parseComputedLength(i.paddingTop),t.marginRight=this.parseComputedLength(i.marginRight),t.borderRight=this.parseComputedLength(i.borderRightWidth),t.paddingRight=this.parseComputedLength(i.paddingRight),t.marginBottom=this.parseComputedLength(i.marginBottom),t.borderBottom=this.parseComputedLength(i.borderBottomWidth),t.paddingBottom=this.parseComputedLength(i.paddingBottom))}setComputedWidthAndHeight(e,t){let i=this.clientLayout.getElementComputedStyle(e);i&&(t.width=this.parseComputedLength(i.width),t.height=this.parseComputedLength(i.height))}layoutUnbreakable(e){return this.buildDeepElementView(e)}layoutFloat(e){let t=z("layoutFloat"),i=e.viewNode,n=Ea(e.floatSide,e.vertical,e.direction,this.layoutContext.page.side);return F(i,"float","none"),F(i,"display","inline-block"),F(i,"vertical-align","top"),this.buildDeepElementView(e).then(r=>{let s=Xt(this.clientLayout,i,this.vertical),o=this.getComputedMargin(i),a=new _t(s.left-o.left,s.top-o.top,s.right+o.right,s.bottom+o.bottom),h=this.rtl?this.endEdge:this.startEdge,l=this.rtl?this.startEdge:this.endEdge,c=e.parent;for(;c&&c.inline;)c=c.parent;let d=c&&Yi(c);if(d){let C=d.viewNode,S=C.ownerDocument.createElement("div");S.style.left="0px",S.style.top="0px",this.vertical?(S.style.bottom="0px",S.style.width="1px"):(S.style.right="0px",S.style.height="1px"),C.appendChild(S);let N=Xt(this.clientLayout,S,this.vertical);h=Math.max(this.rtl?this.getEndEdge(N):this.getStartEdge(N),h),l=Math.min(this.rtl?this.getStartEdge(N):this.getEndEdge(N),l),C.removeChild(S);let E=this.vertical?a.y2-a.y1:a.x2-a.x1;n=="left"?l=Math.max(l,h+E):h=Math.min(h,l-E),c!==e.parent&&!e.firstPseudo&&(C.appendChild(i),i.setAttribute("data-vivliostyle-float-box-moved","true"))}let p=new _t(h,this.getBoxDir()*this.beforeEdge,l,this.getBoxDir()*this.afterEdge),f=a;this.vertical&&(f=go(a));let g=this.getBoxDir();if(f.y1<this.bottommostFloatTop*g){let C=f.y2-f.y1;f.y1=this.bottommostFloatTop*g,f.y2=f.y1+C}if(e.clearSide){let C=/^(top|bottom|inside|outside|(block|inline)-(start|end))$/.test(e.clearSide)?Ea(e.clearSide,e.vertical,e.direction,this.layoutContext.page.side):e.clearSide==="same"?n:e.clearSide,S=this.beforeEdge;C!=="right"&&(S=g*Math.max(S*g,this.leftFloatEdge*g)),C!=="left"&&(S=g*Math.max(S*g,this.rightFloatEdge*g));let N=S*g;if(f.y1<N){let E=f.y2-f.y1;f.y1=N,f.y2=f.y1+E}}p.y2+=this.getFloatLayoutUnit(),Oy(p,this.bands,f,n),this.vertical&&(a=Ud(f));let m=this.getComputedInsets(i);F(i,"width",`${a.x2-a.x1-m.left-m.right}px`),F(i,"height",`${a.y2-a.y1-m.top-m.bottom}px`),F(i,"position","absolute"),e.display,F(i,"display",e.display);let w,b=c?c.containingBlockForAbsolute?Lt(c):c.getContainingBlockForAbsolute():null;if(b){let C=b.viewNode,S=C.ownerDocument.createElement("div");S.style.position="absolute",b.vertical?S.style.right="0":S.style.left="0",S.style.top="0",C.appendChild(S),w=Xt(this.clientLayout,S,this.vertical),C.removeChild(S)}else w={left:this.getLeftEdge()-this.paddingLeft,right:this.getRightEdge()+this.paddingRight,top:this.getTopEdge()-this.paddingTop};if(b?b.vertical:this.vertical){let C=Math.max(0,w.right-a.x2);F(i,"right",`${C}px`)}else{let C=Math.max(0,a.x1-w.left);F(i,"left",`${C}px`)}let x=Math.max(0,a.y1-w.top);F(i,"top",`${x}px`),e.clearSpacer&&(e.clearSpacer.remove(),e.clearSpacer=null);let P=this.vertical?a.x1:a.y2,y=this.vertical?a.x2:a.y1;!this.isOverflown(P)||this.breakPositions.length==0?(this.killFloats(),p=new _t(this.getLeftEdge(),this.getTopEdge(),this.getRightEdge(),this.getBottomEdge()),this.vertical&&(p=go(p)),By(p,this.bands,f,null,n),this.createFloats(),n=="left"?this.leftFloatEdge=P:this.rightFloatEdge=P,this.bottommostFloatTop=y,this.updateMaxReachedAfterEdge(P),t.finish(r)):(e=e.modify(),e.overflow=!0,t.finish(e))}),t.result()}setupFloatArea(e,t,i,n,r,s){let o=this.pageFloatLayoutContext,a=o.getPageFloatLayoutContext(t).container,h=e.element;return r.adjustPageFloatArea(e,a,this).thenAsync(()=>{e.killFloats(),e.remeasure();let l=!!o.setFloatAreaDimensions(e,t,i,n,!0,e.isFootnote||!o.hasFloatFragments(),s);if(l){if(e.isFootnote){let c=getComputedStyle(e.element);if(e.vertical){let d=parseFloat(c.maxWidth);!isNaN(d)&&e.width>d&&(e.width=d,F(e.element,"width",`${d}px`))}else{let d=parseFloat(c.maxHeight);!isNaN(d)&&e.height>d&&(e.height=d,F(e.element,"height",`${d}px`))}}e.killFloats(),e.remeasure()}else h.remove();return I(l)})}createPageFloatArea(e,t,i,n,r){let s=this.element.ownerDocument.createElement("div");F(s,"position","absolute");let o=this.pageFloatLayoutContext.getPageFloatLayoutContext(e.floatReference),a=Bi.createDetached(this.pageFloatLayoutContext,Ie.COLUMN,this.pageFloatLayoutContext.flowName,e.nodePosition),h=o.container,l=this.pageFloatLayoutContext.getPageFloatLayoutContext(e.floatReference).container;l.element.parentNode.appendChild(s);let c=l.getPaddingRect(),d=c.x1-l.originX,p=c.y1-l.originY;F(s,"left",`${d}px`),F(s,"top",`${p}px`);let f=new iS(t,s,this.layoutContext.clone(),this.clientLayout,this.layoutConstraint,a,h,{vertical:l.vertical,rtl:l.rtl,snapWidth:0,snapHeight:0,originX:l.originX,originY:l.originY,left:d,top:p,width:c.x2-c.x1,height:c.y2-c.y1,marginLeft:0,marginRight:0,marginTop:0,marginBottom:0,borderLeft:0,borderRight:0,borderTop:0,borderBottom:0,paddingLeft:0,paddingRight:0,paddingTop:0,paddingBottom:0,borderBoxSizing:!1},null,(l.exclusions||[]).concat(),this.flowRootFormattingContext);return f.isFloat=!0,f.forceNonfitting=!this.pageFloatLayoutContext.hasFloatFragments(),this.setupFloatArea(f,e.floatReference,t,i,n,r).thenAsync(g=>I(g?f:null))}layoutSinglePageFloatFragment(e,t,i,n,r,s,o){let a=this.pageFloatLayoutContext;e=(o?o.continuations:[]).concat(e);let h=e[0].float,l=a.getPageFloatPlacementCondition(h,t,i),c={floatArea:null,pageFloatFragment:null,newPosition:null},d=z("layoutSinglePageFloatFragment");return this.createPageFloatArea(h,t,s,r,l).then(p=>{if(c.floatArea=p,!p){d.finish(c);return}let f=!1,g=0;d.loopWithFrame(m=>{if(g>=e.length){m.breakLoop();return}let w=e[g],b=new zi(w.nodePosition),x=p.getRootViewNodeCount();p.layout(b,!0).then(P=>{if(c.newPosition=P,!P||n){if(P&&p.isFootnote&&p.breakPositions&&!(p.breakPositions.some(y=>y instanceof wr)&&p.hasNonPseudoTextContentAfter(x))){f=!0,m.breakLoop();return}g++,m.continueLoop()}else f=!0,m.breakLoop()})}).then(()=>{if(!f&&p.isFootnote&&p.computedBlockSize<=0&&c.newPosition){let m=a.getPageFloatLayoutContext(h.floatReference);if(m.footnoteMaxBlockSize==null){if(m.initFootnoteRetryFromEmptyFragment(h,p)){p.element.parentNode&&p.element.parentNode.removeChild(p.element),this.layoutSinglePageFloatFragment(e,t,i,n,r,s,o).then(w=>{d.finish(w)});return}f=!0}}if(!f){p.isFootnote&&p.applyCompactFootnoteDisplay();let m=a.setFloatAreaDimensions(p,h.floatReference,t,s,!1,n,l);if(!m)f=!0;else{let w=r.createPageFloatFragment(e,m,i,p,!!c.newPosition);a.addPageFloatFragment(w,!0),c.pageFloatFragment=w}}d.finish(c)})}),d.result()}layoutPageFloatInner(e,t,i,n){let r=this.pageFloatLayoutContext,s=e.float,o=s instanceof Wr,a=o&&s.footnotePolicy===v.line&&!!n&&!n.hasFloat(s),h=new Set;for(let d=r;d;d=d.effectiveParent)for(let p of d.floatFragments)p.continuations.some(f=>f.float.insidePageFloatArea)&&h.add(p);a||r.stashEndFloatFragments(s);function l(d,p){p?r.removePageFloatFragment(p,!0):d&&d.element.parentNode.removeChild(d.element);let f=[];for(let g=r;g;g=g.effectiveParent)for(let m of g.floatFragments)!h.has(m)&&m.continuations.some(w=>w.float.insidePageFloatArea)&&f.push(m);for(let g of f)r.removePageFloatFragment(g,!0);r.restoreStashedFragments(s.floatReference),r.deferPageFloat(e)}let c=z("layoutPageFloatInner");return this.layoutSinglePageFloatFragment([e],s.floatSide,s.clearSide,o||!r.hasFloatFragments(),t,i,a?null:n).then(d=>{let p=d.floatArea,f=d.pageFloatFragment,g=d.newPosition;f?this.layoutStashedPageFloats(s.floatReference,[n]).then(m=>{if(m){let w=f;if(a&&n){let y=n.area,C=y.getRootViewNodeCount();if(y.appendContentFrom(f.area),r.removePageFloatFragment(f,!0),!r.setFloatAreaDimensions(y,s.floatReference,n.floatSide,i,!1,!0,r.getPageFloatPlacementCondition(s,s.floatSide,s.clearSide))){y.removeContentAfter(C),l(p,f),c.finish(!1);return}n.addContinuations(f.continuations),w=n}let b=!!r.generatingNodePosition,x=!b&&s instanceof Wr&&s.footnotePolicy===v.line,P=x&&r.hasInvalidatedForLineFootnote(s);if(r.addPageFloatFragment(w,b||P),x&&!P&&r.markInvalidatedForLineFootnote(s),r.discardStashedFragments(s.floatReference),g){let y=new _u(s,g.primary);r.deferPageFloat(y)}c.finish(!0)}else l(p,f),c.finish(!1)}):(l(p,f),c.finish(!1))}),c.result()}layoutStashedPageFloats(e,t){let i=this.pageFloatLayoutContext,n=i.getStashedFloatFragments(e),r=[],s=[],o=!1,a=z("layoutStashedPageFloats"),h=0;return a.loopWithFrame(l=>{if(h>=n.length){l.breakLoop();return}let c=n[h];if(t.includes(c)){h++,l.continueLoop();return}let d=new Hn().findByFloat(c.continuations[0].float);this.layoutSinglePageFloatFragment(c.continuations,c.floatSide,c.clearSide,!1,d,null).then(p=>{let f=p.floatArea;f&&r.push(f);let g=p.pageFloatFragment;g?(s.push(g),h++,l.continueLoop()):(o=!0,l.breakLoop())})}).then(()=>{o?(s.forEach(l=>{i.removePageFloatFragment(l,!0)}),r.forEach(l=>{let c=l.element;c&&c.parentNode&&c.parentNode.removeChild(c)})):n.forEach(l=>{let c=l.area.element;c&&c.parentNode&&c.parentNode.removeChild(c)}),a.finish(!o)}),a.result()}findFootnoteCallElement(e){let t=e.previousSibling;for(;t;){if(t.nodeType===Node.ELEMENT_NODE&&ai(t)==="footnote-call")return t;t=t.previousSibling}return null}setFloatAnchorViewNode(e){let t=e.viewNode.ownerDocument.createElement("span");if(t.setAttribute($n,"1"),e.floatSide==="footnote"){let n=this.findFootnoteCallElement(e.viewNode);n?t=n:e.viewNode.before(t)}else e.viewNode.parentNode.appendChild(t);e.viewNode.remove();let i=e.modify();return i.after=!0,i.viewNode=t,e.floatSide==="footnote"&&(i.display="inline"),i}resolveFloatReferenceFromColumnSpan(e,t,i){let n=z("resolveFloatReferenceFromColumnSpan"),r=this.pageFloatLayoutContext,s=r.getPageFloatLayoutContext(Ie.REGION);return r.container.width<s.container.width&&e===Ie.COLUMN?t===v.auto?this.buildDeepElementView(i.copy()).then(o=>{let a=o.viewNode,h=ph(this.clientLayout,a,["min-content inline size"])["min-content inline size"],l=this.getComputedMargin(a);this.vertical?h+=l.top+l.bottom:h+=l.left+l.right,h>this.width?n.finish(Ie.REGION):n.finish(e)}):t===v.all?n.finish(Ie.REGION):n.finish(e):n.finish(e),n.result()}layoutPageFloat(e){let t=this.pageFloatLayoutContext,i=new Hn().findByNodeContext(e),n,r=t.findPageFloatByNodePosition(e.toNodePosition());return r?n=I(r):n=i.createPageFloat(e,t,this),n.thenAsync(s=>{let o=vo(e,0),a=this.setFloatAnchorViewNode(e);t.markPageFloatAnchorSeen(s);let h=i.findPageFloatFragment(s,t),l=new _u(s,o);if(h&&h.hasFloat(s))return t.registerPageFloatAnchor(s,a.viewNode),I(a);if(t.isForbidden(s)||t.hasPrecedingFloatsDeferredToNext(s))return t.deferPageFloat(l),t.registerPageFloatAnchor(s,a.viewNode),I(a);if(this.nodeContextOverflowingDueToRepetitiveElements)return I(null);{let c=p=>{if(!p||p.nodeType!==1)return NaN;let f=Xt(this.clientLayout,p,this.vertical);return f.right>=f.left&&f.bottom>=f.top?this.vertical?f.left:f.bottom:NaN},d=Nn(a,this.clientLayout,0,this.vertical);if(e.floatSide==="footnote"){let p=s;if(p.footnotePolicy===v.line||isNaN(d)){let f=a;for(;f;){if((f.shadowContext?f.shadowContext.owner:f.sourceNode)===p.policyAnchorNode){let g=c(f.viewNode);isNaN(g)||(d=g);break}f=f.parent}}}return isNaN(d)&&e.floatSide==="footnote"&&(d=c(a.viewNode)),!(e.floatSide==="footnote"&&s.footnotePolicy===v.line)&&this.isOverflown(d)?I(a):(e.floatSide==="footnote"&&t.registerPageFloatAnchor(s,a.viewNode),this.layoutPageFloatInner(l,i,d,h).thenAsync(p=>{if(!p)return t.registerPageFloatAnchor(s,a.viewNode),I(a);if(e.floatSide==="footnote"){if(s.footnotePolicy===v.line&&t.hasInvalidatedForLineFootnote(s)){if(t.isInvalidated())return I(null);let f=i.findPageFloatFragment(s,t);if(f!=null&&f.hasFloat(s)&&f.continues)return this.registerLineFootnoteOverflowEdge(d),I(a)}return I(a)}return t.generatingNodePosition?I(a):I(null)}))}})}processLineStyling(e,t,i){let n=z("processLineStyling"),r=i.concat([]);i.splice(0,i.length);let s=0,o=e.firstPseudo;return o?.count===0&&(o=o.outer),n.loopWithFrame(a=>{if(!o){a.breakLoop();return}let h=this.findLinePositions(r),l=o.count-s;if(h.length<=l){a.breakLoop();return}let c=this.findAcceptableBreakInside(r,h[l-1],!0),d=c&&Fp(c);if(!d){a.breakLoop();return}this.finishBreak(d,!1,!1).then(()=>{s+=l,this.layoutContext.peelOff(d,0).then(p=>{e=p,o=e.firstPseudo,r=[],this.buildViewToNextBlockEdge(e,r).then(f=>{t=f,a.continueLoop()})})})}).then(()=>{Array.prototype.push.apply(i,r),n.finish(t)}),n.result()}registerLineFootnoteOverflowEdge(e){if(!isFinite(e))return;let t=this.getBoxDir();(this.lineFootnoteOverflowEdge==null||t*e<t*this.lineFootnoteOverflowEdge)&&(this.lineFootnoteOverflowEdge=e)}findLineFootnoteOverflowBreak(e){if(this.lineFootnoteOverflowEdge==null||e.length===0)return null;let t=this.findLinePositions(e),i=this.getBoxDir(),n=1.5/(this.clientLayout.pixelRatio||1),r=t.find(s=>i*(s-this.lineFootnoteOverflowEdge)>=-n);return r==null?null:this.findAcceptableBreakInside(e,r,!0)}isLoneImage(e){return e.length!=2&&this.breakPositions.length>0?!1:e[0].sourceNode==e[1].sourceNode&&tn[e[0].sourceNode.localName]}getTrailingMarginEdgeAdjustment(e){let t=0,i=0;for(let n=e.length-1;n>=0;n--){let r=e[n];if(!r||!r.after||!r.viewNode||r.viewNode.nodeType!=1)break;let s=this.getComputedMargin(r.viewNode),o=this.vertical?-s.left:s.bottom;o>0?t=Math.max(t,o):i=Math.min(i,o)}return t+i}layoutBreakableBlock(e){let t=z("layoutBreakableBlock"),i=[];return this.lineFootnoteOverflowEdge=null,this.buildViewToNextBlockEdge(e,i).then(n=>{let r=i.length-1;if(r<0){t.finish(n);return}this.postLayoutBlock(n,i);let s=this.suppressOpenAncestorBlockEndInset(n??e),o=this.calculateEdge(n,i,r,i[r].boxOffset);s();let a=!1;if(!n||!Fn(n.viewNode)){let l=Dn(n,this.collectElementsOffset());a=this.isOverflown(o+(this.vertical?-1:1)*l.minimum),this.isOverflown(o+(this.vertical?-1:1)*l.current)&&!this.nodeContextOverflowingDueToRepetitiveElements&&(this.nodeContextOverflowingDueToRepetitiveElements=n)}n==null&&(o+=this.getTrailingMarginEdgeAdjustment(i)),this.updateMaxReachedAfterEdge(o);let h;e.firstPseudo?h=this.processLineStyling(e,n,i):h=I(n),h.then(l=>{let c=this.findLineFootnoteOverflowBreak(i);if(c){let d=c.modify();d.overflow=!0,d.pluginProps.lineFootnoteOverflow=1,this.breakPositions=[],this.saveEdgeBreakPosition(d,null,!0),this.lineFootnoteOverflowEdge=null,t.finish(d);return}this.lineFootnoteOverflowEdge=null,i.length>0&&(this.saveBoxBreakPosition(i),a&&!this.isLoneImage(i)&&l&&(l=l.modify(),l.overflow=!0)),t.finish(l)})}),t.result()}postLayoutBlock(e,t){Dt("POST_LAYOUT_BLOCK").forEach(i=>{i(e,t,this)})}findEndOfLine(e,t,i){let n=this.vertical?e-1:e+1,r=0,s=t[0].boxOffset,o=r,a=t.length-1,h=t[a].boxOffset,l;for(;s<h;){l=s+Math.ceil((h-s)/2),o=r;let c=a;for(;o<c;){let p=o+Math.ceil((c-o)/2);t[p].boxOffset>l?c=p-1:o=p}let d=this.calculateEdge(null,t,o,l);if(this.vertical?d<=n:d>=n){for(h=l-1;t[o].boxOffset==l;)o--;a=o}else i&&this.updateMaxReachedAfterEdge(d),s=l,r=o}return{nodeContext:t[o],index:s,checkPointIndex:o}}findAcceptableBreakInside(e,t,i){var n,r,s;let o=this.findEndOfLine(t,e,!0),a=o.nodeContext,h=a;if(o.checkPointIndex===0&&o.index===h.boxOffset)return null;let l=a.viewNode;if(l.nodeType!=1&&((n=l.parentElement)==null?void 0:n.localName)!=="viv-ts-inner"){let c=l;h=this.resolveTextNodeBreaker(h).breakTextNode(c,a,o.index,e,o.checkPointIndex,i)}else{let c=Mu(h);if(c){if(((r=this.breakPositions)==null?void 0:r[0])instanceof wr&&c.viewNode.contains(this.breakPositions[0].checkPoints[0].viewNode))return null;for(h=c;!h.after&&h.inline&&h.parent;){let d=(s=h.viewNode)==null?void 0:s.previousSibling;for(;d&&(Ee(d,h.parent.whitespace)||Mt(d));)d=d.previousSibling;if(d)break;h=h.parent}}}return this.clearOverflownViewNodes(h,!1),h}resolveTextNodeBreaker(e){return Dt("RESOLVE_TEXT_NODE_BREAKER").reduce((t,i)=>i(e)||t,Uo.instance)}getRangeBoxes(e,t){let i=[],n=e.ownerDocument.createRange(),r=!1,s=e,o=null,a=!1,h=!0;for(;h;){let l=!0;do{let c=null;s==t&&(t.nodeType===1?h=!(!t.firstChild||r):h=!1);let d=s.nodeType===1?s:null;d?r?r=!1:dh(d)?l=!a:!d.firstChild||tn[d.localName]||/^r(uby|[bt]c?)$/.test(d.localName)||Ww(this.clientLayout.getElementComputedStyle(d).display)?(l=!a,l?(d.localName==="ruby"&&s.firstChild&&(s=s.firstChild),n.setStartBefore(s),a=!0,o=s):/^r(uby|tc?)$/.test(d.localName)||(o=s),s.contains(t)&&(h=!1)):c=s.firstChild:(a||(s.parentNode==null?h=!1:(n.setStartBefore(s),a=!0)),o=s),c||(c=s.nextSibling,c||(r=!0,c=s.parentNode)),s=c}while(l&&h);if(a){n.setEndAfter(o);let c=this.clientLayout.getRangeClientRects(n);So(c,this.vertical);for(let d=0;d<c.length;d++)i.push(c[d]);a=!1}}return i}findLinePositions(e){let t=[],i=this.getRangeBoxes(e[0].viewNode,e[e.length-1].viewNode);i.sort(this.vertical?Ew:kw);let n=0,r=0,s=0,o=0,a=0,h=this.getBoxDir();for(;;){if(a<i.length){let l=i[a],c=1;if(o>0){let d=Math.max(this.getBoxSize(l),1);h*this.getBeforeEdge(l)<h*n?c=h*(this.getAfterEdge(l)-n)/d:h*this.getAfterEdge(l)>h*r?c=h*(r-this.getBeforeEdge(l))/d:c=1}if(o==0||c>=.6||c>=.2&&this.getStartEdge(l)>=s-1){s=this.getEndEdge(l),this.vertical?(n=o==0?l.right:Math.max(n,l.right),r=o==0?l.left:Math.min(r,l.left)):(n=o==0?l.top:Math.min(n,l.top),r=o==0?l.bottom:Math.max(r,l.bottom)),o++,a++;continue}}if(o>0&&(t.push(r),o=0),a>=i.length)break}return t.sort(od),this.vertical&&t.reverse(),t}calculateClonedPaddingBorder(e){let t=0;for(let i=e;i;i=i.parent)if(!i.inline&&An(i.viewNode)){let n=this.getComputedPaddingBorder(i.viewNode);t+=i.vertical?-n.left:n.bottom,i.display==="table"&&(t+=(i.vertical?-1:1)*i.blockBorderSpacing)}return t}getOffsetByRepetitiveElements(e){let t;return e?t=e.calculateOffset(this):t=Dn(null,this.collectElementsOffset()),t.current}findBoxBreakPosition(e,t){var i,n;let r=this.element.parentNode,s=this.element.nextSibling;r.removeChild(this.element),r.insertBefore(this.element,s);let o=e.checkPoints,a=o[0];for(;a.parent&&a.inline;)a=a.parent;let h,l;t&&!this.isFootnote?(h=1,l=1):(h=Math.max((a.inheritedProps.widows||2)-0,1),l=Math.max((a.inheritedProps.orphans||2)-0,1));let c=this.calculateClonedPaddingBorder(a),d=this.findLinePositions(o),p=this.footnoteEdge-c,f=this.getBoxDir(),g=this.getOffsetByRepetitiveElements(e);p-=f*g;let m=this.findFirstOverflowingEdgeAndCheckPoint(o);isNaN(m.edge)&&(m.edge=f*(1/0));let w=vi(d.length,y=>{let C=d[y];return this.vertical?C<p||C<=m.edge:C>p||C>=m.edge}),b=w<=0;b&&(w=vi(d.length,y=>this.vertical?d[y]<p:d[y]>p));let x=o[o.length-1].viewNode;if(x=(i=Up(x))!=null?i:x,(w===d.length&&x.nextSibling||w>=d.length-1&&(n=x.parentElement)!=null&&n.querySelector(".MJXc-display"))&&(h=0,l=1),w=Math.min(d.length-h,w),w<l)return null;p=d[w-1];let P;if(b?P=m.checkPoint:P=this.findAcceptableBreakInside(e.checkPoints,p,t),P){let y=this.getAfterEdgeOfBlockContainer(P);if(!isNaN(y)&&f*(p-y)>0&&(p=y),this.computedBlockSize=f*(p-this.beforeEdge)+g,d.length>=2){let C=Math.max(1,Math.min(w-1,d.length-1));this.lastLineStride=Math.abs(d[C]-d[C-1])}}return P}getAfterEdgeOfBlockContainer(e){let t=e;do t=t.parent;while(t&&t.inline);return t?(t=t.copy().modify(),t.after=!0,Nn(t,this.clientLayout,0,this.vertical)):NaN}findFirstOverflowingEdgeAndCheckPoint(e){let t=e.findIndex(n=>n.overflow);if(t<0)return{edge:NaN,checkPoint:null};let i=e[t];return{edge:this.calculateEdge(null,e,t,i.boxOffset),checkPoint:i}}findEdgeBreakPosition(e){return this.computedBlockSize=e.computedBlockSize+this.getOffsetByRepetitiveElements(e),e.position}finishBreak(e,t,i){let n=new rr().find(e.formattingContext).finishBreak(this,e,t,i);return n||(n=vh.finishBreak(this,e,t,i)),n}findAcceptableBreakPosition(){let e=null,t=0,i=0;do{t=i,i=Number.MAX_VALUE;for(let n=this.breakPositions.length-1;n>=0&&!e;--n){let r=this.breakPositions[n],s=r.findAcceptableBreak(this,t);s&&(e={breakPosition:r,nodeContext:s});let o=r.getMinBreakPenalty();o>t&&(i=Math.min(i,o))}}while(i>t&&!e&&this.forceNonfitting);return e}doFinishBreak(e,t,i,n){if(this.pageFloatLayoutContext.isInvalidated()||this.pageBreakType||!t)return I(e);let r=z("doFinishBreak"),s=!1;if(!e){if(this.forceNonfitting&&!this.isFootnote)return Z.warn("Could not find any page breaks?!!"),this.skipTailEdges(t).then(o=>{o?(o=o.modify(),o.overflow=!1,this.finishBreak(o,s,!0).then(()=>{r.finish(o)})):r.finish(o)}),r.result();e=i,s=!0,this.computedBlockSize=n}return this.finishBreak(e,s,!0).then(()=>{r.finish(e)}),r.result()}isBreakable(e){for(let t=e;t;t=t.parent)if(Mt(t.viewNode))return!1;return e.after?!0:e.sourceNode.namespaceURI==="http://www.w3.org/2000/svg"?!1:!e.flexContainer}isZeroLength(e){let t=e.trim();return t===""||/^0+(?:\.0+)?(?:[a-z%]*)$/i.test(t)}hasNonZeroBlockStartInset(e){return this.vertical?!(this.isZeroLength(e.paddingRight)&&this.isZeroLength(e.borderRightWidth)):!(this.isZeroLength(e.paddingTop)&&this.isZeroLength(e.borderTopWidth))}hasNonZeroBlockEndInset(e){return this.vertical?!(this.isZeroLength(e.paddingLeft)&&this.isZeroLength(e.borderLeftWidth)):!(this.isZeroLength(e.paddingBottom)&&this.isZeroLength(e.borderBottomWidth))}suppressOpenAncestorBlockEndInset(e){if(!xo(this))return()=>{};let t=[];for(let i=e?.parent;i;i=i.parent){if(i.after||i.inline)continue;let n=i.viewNode;if(!n||n.nodeType!==1||An(n))continue;let r=this.clientLayout.getElementComputedStyle(n);if(r&&!this.hasNonZeroBlockEndInset(r))continue;let s=n.getAttribute("data-viv-box-break");Ct(n,"block-end"),t.push({element:n,original:s})}return()=>{for(let{element:i,original:n}of t)n===null?i.removeAttribute("data-viv-box-break"):i.setAttribute("data-viv-box-break",n)}}checkOverflowAndSaveEdge(e,t){if(!e)return!1;for(let o=e;o;o=o.parent)if(Mt(o.viewNode))return!1;if(Fn(e.viewNode))return!1;let i=this.suppressOpenAncestorBlockEndInset(e),n=Nn(e,this.clientLayout,0,this.vertical);i();let r=Dn(e,this.collectElementsOffset()),s=this.isOverflown(n+(this.vertical?-1:1)*r.minimum);if(this.isOverflown(n+(this.vertical?-1:1)*r.current)&&!this.nodeContextOverflowingDueToRepetitiveElements)this.nodeContextOverflowingDueToRepetitiveElements=e;else if(t){let o=n+this.getTrailingMarginEdgeAdjustment(t),a=this.footnoteEdge-this.getBoxDir()*r.current;n=this.vertical?Math.min(n,Math.max(o,a)):Math.max(n,Math.min(o,a))}return this.updateMaxReachedAfterEdge(n),s}checkOverflowAndSaveEdgeAndBreakPosition(e,t,i,n){if(!e||Fn(e.viewNode))return!1;let r=this.checkOverflowAndSaveEdge(e,t);return(i||!r)&&this.saveEdgeBreakPosition(e,n,r),r}applyClearance(e){var t;if(!e.viewNode.parentNode||e.floatReference!==Ie.INLINE||e.floatSide)return!1;let i=(t=e.clearSide==="same"?e.floatSide:e.clearSide)!=null?t:"",n=/^(page|column|region)$/.test(i),r=this.getComputedMargin(e.viewNode),s=e.viewNode.ownerDocument.createElement("div");this.vertical?(s.style.bottom="0px",s.style.width="1px",s.style.marginRight=`${r.right}px`):(s.style.right="0px",s.style.height="1px",s.style.marginTop=`${r.top}px`);let o=()=>n?this.clientLayout.getElementClientRect(s):Xt(this.clientLayout,s,this.vertical);e.viewNode.parentNode.insertBefore(s,e.viewNode);let a=o(),h=this.getBeforeEdge(a),l=this.getBoxDir(),c=/^(top|bottom|inside|outside|(block|inline)-(start|end))$/.test(i)?Ea(i,e.vertical,e.direction,this.layoutContext.page.side):i,d=c==="left"||c==="right"?e.direction==="rtl"==(c==="left")?"inline-end":"inline-start":c,p=this.pageFloatLayoutContext.getPageFloatClearEdge(d,this),f=p;switch(c){case"left":p=l*Math.max(p*l,this.leftFloatEdge*l);break;case"right":p=l*Math.max(p*l,this.rightFloatEdge*l);break;default:p=l*Math.max(p*l,Math.max(this.rightFloatEdge*l,this.leftFloatEdge*l))}let g=this.getFloatLayoutUnit(),m=this.leftFloatEdge*l>this.beforeEdge*l||this.rightFloatEdge*l>this.beforeEdge*l;if(g>0&&m){let b=p*l>f*l;p=l*(Math.ceil(p*l/g)+(b?1:0))*g}let w=this.getFloatLayoutTolerance(g);if(h*l+w>p*l)return e.viewNode.parentNode.removeChild(s),!1;{let b=Math.max(1,(p-h)*l);this.vertical?s.style.width=`${b}px`:s.style.height=`${b}px`,a=o();let x=this.getAfterEdge(a);if(!e.floatSide)if(this.vertical){let P=x-r.right-p;P>0==r.right>=0&&(P+=r.right),s.style.marginLeft=`${P}px`}else{let P=p-(x+r.top);P>0==r.top>=0&&(P+=r.top),s.style.marginBottom=`${P}px`}return e.clearSpacer=s,!0}}isBFC(e){return!!(mb(e)||rn.isInstanceOfRepetitiveElementsOwnerFormattingContext(e))}hasFixedPositionAncestor(e){for(let t=e;t;t=t.parent)if(Bu(t.viewNode))return!0;return!1}skipEdges(e,t,i){var n;let r=e,s=r.after?(n=r.parent)==null?void 0:n.formattingContext:r.formattingContext;if(s&&!this.isBFC(s))return I(r);let o=z("skipEdges"),a=this,h=!i&&t&&r&&r.after,l=i,c=null,d=[],p=[],f=!1;function g(N){var E,R;if(!(!t||a.isNonFirstColumn||i||!ka(l))){for(let _=N;_;_=_.parent)if(_.breakBefore==="column"&&(_.breakBefore=null),((E=_.viewNode)==null?void 0:E.nodeType)===1){let X=_.viewNode;((R=X.style)==null?void 0:R.breakBefore)==="column"&&(X.style.breakBefore="")}}}function m(N){var E,R;if(!(!t||!a.isNonFirstColumn||i||l!=="column")){for(let _=N;_;_=_.parent)if(_.breakBefore==="column"&&(_.breakBefore=null),((E=_.viewNode)==null?void 0:E.nodeType)===1){let X=_.viewNode;((R=X.style)==null?void 0:R.breakBefore)==="column"&&(X.style.breakBefore="")}l=null}}function w(N){var E,R;if(!(i||!ka(l))){for(let _=N;_;_=_.parent)if(_.breakAfter==="column"&&(_.breakAfter=null),((E=_.viewNode)==null?void 0:E.nodeType)===1){let X=_.viewNode;((R=X.style)==null?void 0:R.breakAfter)==="column"&&(X.style.breakAfter="")}}}function b(N){l=nt(l,N)}function x(N){var E,R,_;if(a.layoutConstraint.allowLayout(N))return!0;if(!t||a.isNonFirstColumn||i||!ka(l))return!1;let X=(_=(R=(E=a.layoutConstraint).allowLayoutAfterPageBreak)==null?void 0:R.call(E,N))!=null?_:!1;return X&&(l=null),X}function P(){return i?!0:Ze(l)?t?a.isNonFirstColumn&&l!=="column"&&l!=="region":!y()&&!C():!1}function y(){var N;if(!c||!r||r.floatSide)return!1;for(let E=c;E!=null&&E.parent;E=E.parent){if(E.parent.viewNode&&Mt(E.parent.viewNode))continue;let R=E.after?E.viewNode:(N=E.viewNode)==null?void 0:N.previousSibling;for(;R&&(Ee(R,E.parent.whitespace)||Mt(R));)R=R.previousSibling;if(R)return!1}return!0}function C(){var N,E;if(c||!(r!=null&&r.viewNode)||r.shadowContext||r.after||r.floatSide||!((N=r.parent)!=null&&N.viewNode)||Mt(r.parent.viewNode))return!1;let R=!1;for(let _=r;_!=null&&_.parent&&!_.after;_=_.parent){if(_!==r&&Mt(_.viewNode))return!1;let X=(E=_.viewNode)==null?void 0:E.previousSibling;for(;X&&(Ee(X,_.parent.whitespace)||Mt(X));)Mt(X)&&(R=!0),X=X.previousSibling;if(X)return!1}return R}let S=N=>{let E=d[0]||N;r=E,E.viewNode.remove(),this.pageBreakType=l};return o.loopWithFrame(N=>{for(var E;r;){let R=new rr().find(r.formattingContext);do{let X=Yi(r);if(!X)break;if(r.inline&&X.viewNode.nodeType!=1){if(Ee(X.viewNode,r.whitespace)||this.hasFixedPositionAncestor(r))break;if(!r.after){b(r.breakBefore),g(r),m(r),P()?S(X):this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!0,l)?(r=(this.stopAtOverflow&&c||r).modify(),r.overflow=!0):(!c&&!t&&d.length===0&&this.saveEdgeBreakPosition(r,l,!1),r=r.modify(),r.breakBefore=l),N.breakLoop();return}}if(!r.after){if(r.floatSide&&(this.breakAtTheEdgeBeforeFloat=yo(l)?l:null),R&&R.startNonInlineElementNode(r))break;let T=Ow(r);if(T&&this.applyClearance(T)&&t&&this.breakPositions.length===0&&this.saveEdgeBreakPosition(r.copy(),l,!1),!r.inline&&!r.repeatOnBreak&&(c?Mu(c):this.breakPositions[this.breakPositions.length-1]instanceof wr||!t&&d.length===0)&&this.saveEdgeBreakPosition(r.copy(),l,!1),!this.isBFC(r.formattingContext)||rn.isInstanceOfRepetitiveElementsOwnerFormattingContext(r.formattingContext)||this.asFloatNodeContext(r)!==null||r.flexContainer||!r.nodeShadow&&!r.sourceNode.firstElementChild&&Ee(r.sourceNode.firstChild,r.whitespace)){d.push(X.copy()),b(r.breakBefore),g(r),m(r),P()?S(X):(this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!0,l)||!x(r))&&(r=(this.stopAtOverflow&&c||r).modify(),r.overflow=!0),N.breakLoop();return}}let te=Lt(X);if(!te)break;let k=te.viewNode,M=k.style;if(r.after){Dp(k,this),r.floatSide&&(l=l??this.breakAtTheEdgeBeforeFloat,this.breakAtTheEdgeBeforeFloat=null);let T=r.sourceNode;if(T.localName==="svg"||T.localName==="math"||T.getAttribute("data-math-typeset")==="true"){f=!1,c=te.copy(),p.push(c),l=null,b(r.breakAfter),w(r),this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!this.stopAtOverflow,l);break}if(r.inline||R&&R.afterNonInlineElementNode(r,this.stopAtOverflow))break;if(f){if(Bu(r.viewNode))break;if(P()){S(te),N.breakLoop();return}d=[],t=!1,h=!1,l=null}f=!1,Vp(te.viewNode)||(c=te.copy(),p.push(c)),b(r.breakAfter),w(r),M&&!Mt(r.viewNode)&&this.hasNonZeroBlockEndInset(M)&&(p=c?[c]:[])}else{if(d.push(te.copy()),b(r.breakBefore),g(r),m(r),c&&Ze(l)&&Vw(c.viewNode,te.viewNode),(r.pageType!=((E=r.parent)==null?void 0:E.pageType)||!Ze(l))&&!x(r)&&(this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!this.stopAtOverflow,l),r=r.modify(),r.overflow=!0,this.stopAtOverflow)){N.breakLoop();return}let T=k.localName;if(tn[T]){P()?S(te):this.checkOverflowAndSaveEdgeAndBreakPosition(c,null,!0,l)&&(r=(this.stopAtOverflow&&c||r).modify(),r.overflow=!0),N.breakLoop();return}M&&this.hasNonZeroBlockStartInset(M)&&(h=!1,p=[]),f=!0}}while(!1);let _=this.nextInTree(r,h);if(_.isPending()){_.then(X=>{r=X,N.continueLoop()});return}else r=_.get()}this.checkOverflowAndSaveEdgeAndBreakPosition(c,p,!this.stopAtOverflow,l)?c&&this.stopAtOverflow&&(r=c.modify(),r.overflow=!0):Ze(l)&&(this.pageBreakType=l),N.breakLoop()}).then(()=>{c&&(this.lastAfterPosition=c.toNodePosition()),o.finish(r)}),o.result()}skipTailEdges(e){let t=e,i=t.copy(),n=z("skipEdges"),r=null,s=!1;return n.loopWithFrame(o=>{for(;t;){do{if(!t.viewNode)break;if(t.inline&&t.viewNode.nodeType!=1){if(Ee(t.viewNode,t.whitespace))break;if(!t.after){Ze(r)&&(this.pageBreakType=r),o.breakLoop();return}}if(!t.after&&(this.asFloatNodeContext(t)!==null||t.flexContainer)){r=nt(r,t.breakBefore),Ze(r)&&(this.pageBreakType=r),o.breakLoop();return}if(t.viewNode.nodeType!=1)break;let h=t.viewNode,l=h.style;if(t.after){if(s){if(Ze(r)){this.pageBreakType=r,o.breakLoop();return}r=null}s=!1,r=nt(r,t.breakAfter)}else{r=nt(r,t.breakBefore);let c=h.localName;if(tn[c]){Ze(r)&&(this.pageBreakType=r),o.breakLoop();return}if(l&&this.hasNonZeroBlockStartInset(l)){o.breakLoop();return}}s=!0}while(!1);let a=this.layoutContext.nextInTree(t);if(a.isPending()){a.then(h=>{t=h,o.continueLoop()});return}else t=a.get()}i=null,o.breakLoop()}).then(()=>{n.finish(i)}),n.result()}layoutFloatOrFootnote(e){if(Oi(e.floatReference)||e.floatSide==="footnote"){let t=this.pageFloatLayoutContext.generatingNodePosition;if(t&&e.sourceNode===t.steps[0].node){let i=e.modify();return i.floatSide=null,i.floatReference=Ie.INLINE,i.clearSide=null,this.isBreakable(i)?this.layoutBreakableBlock(i):this.layoutUnbreakable(i)}return this.layoutPageFloat(e)}else return this.layoutFloat(e)}layoutNext(e,t,i){let n=z("layoutNext");return this.skipEdges(e,t,i||null).then(r=>{if(e=r,!e||this.pageBreakType||this.stopByOverflow(e))n.finish(e);else{let s=e.formattingContext;new rr().find(s).layout(e,this,t).thenFinish(n)}}),n.result()}clearOverflownViewNodes(e,t){if(e)for(let i=e.parent;e;e=i,i=i?i.parent:null){let n=(i||e).formattingContext;new rr().find(n).clearOverflownViewNodes(this,i,e,t),t=!1}}measure(){F(this.element,"width",`${this.width}px`),F(this.element,"height",`${this.height}px`);let e=this.element.ownerDocument.createElement("div");e.style.position="absolute",e.style.top=`${this.paddingTop}px`,e.style.right=`${this.paddingRight}px`,e.style.bottom=`${this.paddingBottom}px`,e.style.left=`${this.paddingLeft}px`,this.element.appendChild(e);let t=this.clientLayout.getElementClientRect(e);this.element.removeChild(e);let i=this.originX+this.left+this.getInsetLeft(),n=this.originY+this.top+this.getInsetTop(),r=new _t(i,n,i+this.width,n+this.height);return this.startEdge=t?this.vertical?this.rtl?t.bottom:t.top:this.rtl?t.right:t.left:0,this.endEdge=t?this.vertical?this.rtl?t.top:t.bottom:this.rtl?t.left:t.right:0,this.beforeEdge=t?this.vertical?t.right:t.top:0,this.afterEdge=t?this.vertical?t.left:t.bottom:0,this.leftFloatEdge=this.beforeEdge,this.rightFloatEdge=this.beforeEdge,this.bottommostFloatTop=this.beforeEdge,this.footnoteEdge=this.afterEdge,Fy(r,[this.getInnerShape()],this.getExclusions(),8,this.snapHeight,this.vertical)}remeasure(){this.chunkPositions=[],this.bands=this.measure(),this.createFloats(),this.computedBlockSize=0,this.overflown=!1,this.pageBreakType=null,this.lastAfterPosition=null,this.lastLineStride=0}saveEdgeBreakPosition(e,t,i){let n=e.copy(),r=new rr().find(e.formattingContext),s=this.calculateClonedPaddingBorder(n),o=r.createEdgeBreakPosition(n,t,i,this.computedBlockSize+s);this.breakPositions.push(o)}saveBoxBreakPosition(e){let t=e[0].breakPenalty;if(t){let n=e[0];for(;n.parent&&n.inline;)n=n.parent;t=n.breakPenalty}let i=new wr(e,t);this.breakPositions.push(i)}updateMaxReachedAfterEdge(e){if(!isNaN(e)){let t=this.getBoxDir()*(e-this.beforeEdge);this.computedBlockSize=Math.max(t,this.computedBlockSize)}}layout(e,t,i){if(this.chunkPositions.push(e),e.primary.after&&(this.lastAfterPosition=e.primary),this.stopAtOverflow&&this.overflown)return I(e);if(this.isFullWithPageFloats())return e.primary.after&&e.primary.steps.length===1?I(null):I(e);uh(this);let n=z("layout");return this.openAllViews(e.primary).then(r=>{let s=null;if(r.viewNode)s=r.copy();else{let a=h=>{h.nodeContext.viewNode&&(s=h.nodeContext,this.layoutContext.removeEventListener("nextInTree",a))};this.layoutContext.addEventListener("nextInTree",a)}let o=new eS(t,i);o.layout(r,this).then(a=>{this.doFinishBreak(a,o.context.overflownNodeContext,s,o.initialComputedBlockSize).then(h=>{let l;this.pseudoParent?l=I(!0):l=this.doFinishBreakOfFragmentLayoutConstraints(h),l.then(()=>{if(xo(this)&&(Hw(this),ta(this)),this.element.hasAttribute("data-vivliostyle-column-block-size-adjusted")&&(this.vertical?(F(this.element,"width",`${this.width}px`),F(this.element,"left",`${this.left}px`)):F(this.element,"height",`${this.height}px`),this.element.removeAttribute("data-vivliostyle-column-block-size-adjusted")),this.pageFloatLayoutContext.isInvalidated()){n.finish(null);return}if(!h)n.finish(null);else{this.overflown=!0;let c=new zi(h.toNodePosition());n.finish(c)}})})})}),n.result()}isFullWithPageFloats(){return this.pageFloatLayoutContext.isColumnFullWithPageFloats(this)}getMaxBlockSizeOfPageFloats(){return this.pageFloatLayoutContext.getMaxBlockSizeOfPageFloats()}doFinishBreakOfFragmentLayoutConstraints(e){let t=z("doFinishBreakOfFragmentLayoutConstraints"),i=this.fragmentLayoutConstraints.slice();i.sort((r,s)=>r.getPriorityOfFinishBreak()-s.getPriorityOfFinishBreak());let n=0;return t.loop(()=>n<i.length?i[n++].finishBreak(e,this).thenReturn(!0):I(!1)).then(()=>{t.finish(!0)}),t.result()}doLayout(e,t,i){let n=z("doLayout"),r=null;return this.breakPositions=[],this.nodeContextOverflowingDueToRepetitiveElements=null,n.loopWithFrame(s=>{for(;e;){let o=!0;if(this.layoutNext(e,t,i||null).then(a=>{if(t=!1,i=null,this.nodeContextOverflowingDueToRepetitiveElements&&this.stopAtOverflow?(this.pageBreakType=null,e=this.nodeContextOverflowingDueToRepetitiveElements,e.overflow=!0):e=a,this.pageFloatLayoutContext.isInvalidated())s.breakLoop();else if(this.pageBreakType)s.breakLoop();else if(e&&this.stopByOverflow(e)){r=e;let h=this.findAcceptableBreakPosition();e=h&&h.nodeContext,h&&h.breakPosition.breakPositionChosen(this),s.breakLoop()}else o?o=!1:s.continueLoop()}),o){o=!1;return}}this.computedBlockSize+=this.getOffsetByRepetitiveElements(),s.breakLoop()}).then(()=>{n.finish({nodeContext:e,overflownNodeContext:r})}),n.result()}saveDistanceToBlockEndFloats(){let e=this.pageFloatLayoutContext.getBlockStartEdgeOfBlockEndFloats();e>0&&isFinite(e)&&(this.blockDistanceToBlockEndFloats=this.getBoxDir()*(e-this.beforeEdge-this.computedBlockSize))}collectElementsOffset(){let e=[];for(let t=this;t;t=t.pseudoParent)t.fragmentLayoutConstraints.forEach(i=>{if(rn.isInstanceOfRepetitiveElementsOwnerLayoutConstraint(i)){let n=i.getRepetitiveElements();e.push(n)}if(sl.isInstanceOfAfterIfContinuesLayoutConstraint(i)){let n=i.getRepetitiveElements();e.push(n)}bi.isInstanceOfTableRowLayoutConstraint(i)&&i.getElementsOffsetsForTableCell(this).forEach(n=>{e.push(n)})});return e}},Dh=class{constructor(e,t,i){u(this,"startNodeContexts",[]),u(this,"column"),u(this,"flowRootSourceNode"),this.flowRootSourceNode=i.sourceNode,this.column=Object.create(e),this.column.element=t,this.column.layoutContext=e.layoutContext.clone(),this.column.stopAtOverflow=!1,this.column.flowRootFormattingContext=i.formattingContext,this.column.pseudoParent=e;let n=this.column.calculateClonedPaddingBorder(i);this.column.footnoteEdge=this.column.footnoteEdge-n;let r=this;this.column.openAllViews=function(s){return Vo.prototype.openAllViews.call(this,s).thenAsync(o=>(r.startNodeContexts.push(o.copy()),I(o)))}}layout(e,t){return this.column.layout(e,t)}findAcceptableBreakPosition(){let e=this.column.findAcceptableBreakPosition(),t=this.startNodeContexts[0].copy(),i=new hs(t,null,t.overflow,0);return i.findAcceptableBreak(this.column,0),e??{breakPosition:i,nodeContext:t}}finishBreak(e,t,i){return this.column.finishBreak(e,t,i)}isStartNodeContext(e){let t=this.startNodeContexts[0];return t.viewNode===e.viewNode&&t.after===e.after&&t.offsetInNode===e.offsetInNode}isLastAfterNodeContext(e){return Di(e.toNodePosition(),this.column.lastAfterPosition)||this.isEffectivelyLastAfterNodeContext(e)}isEffectivelyLastAfterNodeContext(e){var t;let i=this.flowRootSourceNode,n=e.sourceNode;if(!i||!n||!e.after||i!==n&&!((t=i.contains)!=null&&t.call(i,n)))return!1;if(n.nodeType===Node.TEXT_NODE){let r=n;if(e.offsetInNode<r.length){let s=r.data.slice(e.offsetInNode);if(!Tp(s,e.whitespace))return!1}}for(let r=n;r&&r!==i;r=r.parentNode)for(let s=r.nextSibling;s;s=s.nextSibling)if(!Ee(s,e.whitespace))return!1;return!0}getColumnElement(){return this.column.element}getColumn(){return this.column}},Uo=class{breakTextNode(e,t,i,n,r,s){if(t.after)t.offsetInNode=e.length;else{let o=i-t.boxOffset,a=e.data;a.charCodeAt(o)==173?o=this.breakAfterSoftHyphen(e,a,o,t):o=this.breakAfterOtherCharacter(e,a,o,t),o>0&&(t=this.updateNodeContext(t,o,e))}return t}breakAfterSoftHyphen(e,t,i,n){let r=/[\u0620\u0626\u0628\u062A-\u062E\u0633-\u0647\u0649\u064A\u066E\u066F\u0678-\u0687\u069A-\u06BF\u06C1\u06C2\u06CC\u06CE\u06D0\u06D1\u06FA-\u06FC\u06FF\u0712-\u0714\u071A-\u071D\u071F-\u0727\u0729\u072B\u072D\u072E\u074E-\u0758\u075C-\u076A\u076D-\u0770\u0772\u0775-\u0777\u077A-\u077F\u07CA-\u07EA\u07FA\u0841-\u0845\u0848\u084A-\u0853\u0855\u0860\u0862-\u0865\u0868\u0883-\u0886\u0889-\u088D\u08A0-\u08A9\u08AF\u08B0\u08B3-\u08B8\u08BA-\u08C8\u1807\u180A\u1820-\u1878\u1887-\u18A8\u18AA\u200D\uA840-\uA871\u{10AC0}-\u{10AC4}\u{10AD3}-\u{10AD6}\u{10AD8}-\u{10ADC}\u{10ADE}-\u{10AE0}\u{10AEB}-\u{10AEE}\u{10B80}\u{10B82}\u{10B86}-\u{10B88}\u{10B8A}\u{10B8B}\u{10B8D}\u{10B90}\u{10BAD}\u{10BAE}\u{10D01}-\u{10D21}\u{10D23}\u{10EC3}\u{10EC4}\u{10F30}-\u{10F32}\u{10F34}-\u{10F44}\u{10F51}-\u{10F53}\u{10F70}-\u{10F73}\u{10F76}-\u{10F81}\u{10FB0}\u{10FB2}\u{10FB3}\u{10FB8}\u{10FBB}\u{10FBC}\u{10FBE}\u{10FBF}\u{10FC1}\u{10FC4}\u{10FCA}\u{1E900}-\u{1E943}]\p{Mn}*$/u.test(t.slice(0,i))?"\u200D":"";if(e.replaceData(i,t.length-i,n.breakWord?"":r+mc(n)),r){let s=n.preprocessedTextContent[0][1];n.preprocessedTextContent[0][1]=s.slice(0,i+1)+r+s.slice(i+1)}return i+1}breakAfterOtherCharacter(e,t,i,n){let r=t.charAt(i);i++;let s=t.charAt(i);return e.replaceData(i,t.length-i,!n.breakWord&&ru(r)&&ru(s)?mc(n):""),i}updateNodeContext(e,t,i){return e=e.modify(),e.offsetInNode+=t,e.breakBefore=null,e}};u(Uo,"instance");Uo.instance=new Uo;function mc(e){return e.hyphenateCharacter||e.parent&&e.parent.hyphenateCharacter||"-"}var eS=class extends wh{constructor(e,t){super(),u(this,"leadingEdge",e),u(this,"breakAfter"),u(this,"initialPageBreakType",null),u(this,"initialComputedBlockSize",0),u(this,"initialOverflown",!1),u(this,"initialLastLineStride",0),u(this,"context",{overflownNodeContext:null}),this.breakAfter=t||null}resolveLayoutMode(e){return new tS(this.leadingEdge,this.breakAfter,this.context)}prepareLayout(e,t){t.fragmentLayoutConstraints=[],t.pseudoParent||bb()}clearNodes(e){super.clearNodes(e);let t=e;for(;t;){let i=t.viewNode;i&&zp(i.parentNode,i),t=t.parent}}saveState(e,t){super.saveState(e,t),this.initialPageBreakType=t.pageBreakType,this.initialComputedBlockSize=t.computedBlockSize,this.initialOverflown=t.overflown,this.initialLastLineStride=t.lastLineStride}restoreState(e,t){super.restoreState(e,t),t.pageBreakType=this.initialPageBreakType,t.computedBlockSize=this.initialComputedBlockSize,t.overflown=this.initialOverflown,t.lastLineStride=this.initialLastLineStride}},tS=class{constructor(e,t,i){u(this,"leadingEdge",e),u(this,"breakAfter",t),u(this,"context",i)}doLayout(e,t){let i=z("DefaultLayoutMode.doLayout");return Zx(e,t).then(()=>{t.doLayout(e,this.leadingEdge,this.breakAfter).then(n=>{this.context.overflownNodeContext=n.overflownNodeContext,i.finish(n.nodeContext)})}),i.result()}accept(e,t){return t.pageFloatLayoutContext.isInvalidated()||t.pageBreakType||t.fragmentLayoutConstraints.length<=0?!0:t.fragmentLayoutConstraints.every(i=>i.allowLayout(e,this.context.overflownNodeContext,t))}postLayout(e,t,i,n){return n||(n=!i.fragmentLayoutConstraints.some(r=>r.nextCandidate(e))),i.fragmentLayoutConstraints.forEach(r=>{r.postLayout(n,e,t,i)}),n}},iS=class extends Vo{constructor(e,t,i,n,r,s,o,a,h,l,c){super(t,i,n,r,s,a,h,l,c),u(this,"floatSide",e),u(this,"parentContainer",o),u(this,"rootViewNodes",[]),u(this,"floatMargins",[]),u(this,"adjustContentRelativeSize",!0),u(this,"parentElement"),this.parentElement=o.element}openAllViews(e){return super.openAllViews(e).thenAsync(t=>(t&&this.fixFloatSizeAndPosition(t),I(t)))}convertPercentageSizesToPx(e){let t=this.parentContainer.getPaddingRect(),i=t.x2-t.x1,n=t.y2-t.y1;function r(s,o){s.forEach(a=>{let h=Ii(e,a);if(h&&h.charAt(h.length-1)==="%"){let l=parseFloat(h),c=o*l/100;F(e,a,`${c}px`)}})}r(["width","max-width","min-width"],i),r(["height","max-height","min-height"],n),r(["margin-top","margin-right","margin-bottom","margin-left","padding-top","padding-right","padding-bottom","padding-left"],this.vertical?n:i),["margin-top","margin-right","margin-bottom","margin-left"].forEach(s=>{Ii(e,s)==="auto"&&F(e,s,"0")})}fixFloatSizeAndPosition(e){for(;e.parent;)e=e.parent;e.viewNode.nodeType;let t=e.viewNode;if(this.rootViewNodes.push(t),this.adjustContentRelativeSize&&this.convertPercentageSizesToPx(t),this.floatMargins.push(this.getComputedMargin(t)),this.adjustContentRelativeSize){let i=this.floatSide;if(this.parentContainer.vertical){if(i==="block-end"||i==="left"){let n=Ii(t,"height");n!==""&&n!=="auto"&&F(t,"margin-top","auto")}}else if(i==="block-end"||i==="bottom"){let n=Ii(t,"width");n!==""&&n!=="auto"&&F(t,"margin-left","auto")}}}getRootViewNodeCount(){return this.rootViewNodes.length}hasNonPseudoTextContentAfter(e){let t=i=>{var n;return i.nodeType===Node.TEXT_NODE?!!((n=i.textContent)!=null&&n.trim()):i.nodeType!==Node.ELEMENT_NODE||ai(i)?!1:Array.from(i.childNodes).some(t)};return this.rootViewNodes.slice(e).some(t)}appendContentFrom(e){e.rootViewNodes.forEach(t=>{this.element.appendChild(t)}),this.rootViewNodes.push(...e.rootViewNodes),this.floatMargins.push(...e.floatMargins),e.rootViewNodes.splice(0),e.floatMargins.splice(0),e.element.parentNode&&e.element.parentNode.removeChild(e.element),this.applyCompactFootnoteDisplay(),this.updateComputedBlockSizeForFootnoteArea(!0)}removeContentAfter(e){let t=this.rootViewNodes.splice(e);this.floatMargins.splice(e),t.forEach(i=>{i.parentNode&&i.parentNode.removeChild(i)}),this.applyCompactFootnoteDisplay(),this.updateComputedBlockSizeForFootnoteArea(!0)}getContentInlineSize(){return Math.max.apply(null,this.rootViewNodes.map((e,t)=>{let i=Xt(this.clientLayout,e,this.vertical),n=this.floatMargins[t];return this.vertical?n.top+i.height+n.bottom:n.left+i.width+n.right}))}getContentBlockMarginAfter(){return this.rootViewNodes.length===0?0:Math.max.apply(null,this.rootViewNodes.map((e,t)=>{let i=this.floatMargins[t];return this.vertical?i.left:i.bottom}))}applyCompactFootnoteDisplay(){let e=this.layoutContext,t=e?.styler,i=e?.xmldoc,n=this.rootViewNodes.filter(h=>{var l,c,d,p;let f=(l=h.ownerDocument.defaultView)==null?void 0:l.getComputedStyle(h);if((f?.getPropertyValue("--viv-footnote-display").trim()||"")==="compact")return!(f?.display==="list-item"&&f.getPropertyValue("list-style-position").trim()==="outside");let g=h.getAttribute(jt);if(!g||!t||!i)return!1;let m=i.getNodeByOffset(parseInt(g,10));if(!m||m.nodeType!==Node.ELEMENT_NODE)return!1;let w=t.getStyle(m,!1),b=(d=(c=me(w,"footnote-display"))==null?void 0:c.value)==null?void 0:d.toString(),x=!!((p=me(w,"--viv-marker-content"))!=null&&p.value);return b==="compact"&&!x});if(n.length===0){this.updateInlineFootnoteSeparators(),this.updateComputedBlockSizeForFootnoteArea(!0);return}let r=this.element.getBoundingClientRect(),s=this.vertical?r.height:r.width;n.forEach(h=>{F(h,"display","inline"),h.style.setProperty("--viv-footnote-white-space","nowrap")});let o=1.5/(this.clientLayout.pixelRatio||1),a=h=>{let l=h.cloneNode(!0);F(l,"display","inline-block"),F(l,"position","absolute"),F(l,"visibility","hidden"),F(l,"white-space","nowrap"),F(l,"max-width","none"),F(l,"left","0"),F(l,"top","0"),this.element.appendChild(l);let c=l.getBoundingClientRect();return this.element.removeChild(l),this.vertical?c.height:c.width};n.forEach(h=>{a(h)>s+o&&(F(h,"display","block"),h.style.removeProperty("--viv-footnote-white-space"))}),this.updateInlineFootnoteSeparators(),this.updateComputedBlockSizeForFootnoteArea(!0)}updateComputedBlockSizeForFootnoteArea(e=!1){if(this.rootViewNodes.length===0){this.computedBlockSize=0;return}let t=this.getBoxDir(),i=this.beforeEdge;if(e){let n=Xt(this.clientLayout,this.element,this.vertical),r=this.vertical?this.borderRight+this.paddingRight:this.borderTop+this.paddingTop;i=this.getBeforeEdge(n)+t*r}this.computedBlockSize=Math.max(0,...this.rootViewNodes.map(n=>{let r=Xt(this.clientLayout,n,this.vertical),s=this.getComputedMargin(n),o=this.vertical?s.left:s.bottom;return t*(this.getAfterEdge(r)-i)+Math.max(0,o)}))}getFootnoteAfterPseudo(e){return Array.from(e.children).find(t=>ai(t)==="after")}hasAuthorFootnoteAfterPseudo(e){let t=this.getFootnoteAfterPseudo(e);if(t&&!t.hasAttribute("data-vivliostyle-default-footnote-separator"))return!0;let i=Array.from(e.children).find(r=>r instanceof Element&&Et(r)),n=i?this.getFootnoteAfterPseudo(i):null;return!!n&&!n.hasAttribute("data-vivliostyle-default-footnote-separator")}createDefaultFootnoteAfterPseudo(e){let t=e.ownerDocument.createElement("span");Lr(t,"after"),t.setAttribute("data-vivliostyle-default-footnote-separator","1"),t.style.whiteSpace="normal",t.textContent=" ",e.appendChild(t)}getFootnoteBreakOpportunity(e){let t=e.nextElementSibling;return t!=null&&t.hasAttribute("data-vivliostyle-footnote-break")?t:null}createFootnoteBreakOpportunity(e){let t=e.ownerDocument.createElement("wbr");t.setAttribute("data-vivliostyle-footnote-break","1"),e.insertAdjacentElement("afterend",t)}updateInlineFootnoteSeparators(){this.rootViewNodes.forEach((e,t)=>{var i,n;let r=e,s=(i=r.ownerDocument.defaultView)==null?void 0:i.getComputedStyle(r).display,o=this.rootViewNodes[t+1],a=(n=o?.ownerDocument.defaultView)==null?void 0:n.getComputedStyle(o).display,h=this.getFootnoteAfterPseudo(r),l=this.hasAuthorFootnoteAfterPseudo(r),c=!!(h!=null&&h.hasAttribute("data-vivliostyle-default-footnote-separator")),d=this.getFootnoteBreakOpportunity(r);if(s==="inline"&&a==="inline"){let p=!h&&!l;p&&this.createDefaultFootnoteAfterPseudo(r),!p&&!d?this.createFootnoteBreakOpportunity(r):p&&d?.remove()}else c&&h.remove(),d?.remove()})}},cn=class{constructor(e,t){u(this,"parent",e),u(this,"rootSourceNode",t),u(this,"formattingContextType","RepetitiveElementsOwner"),u(this,"repetitiveElements",null)}getName(){return"Repetitive elements owner formatting context (RepetitiveElementsOwnerFormattingContext)"}isFirstTime(e,t){return t}getParent(){return this.parent}getRepetitiveElements(){return this.repetitiveElements}getRootViewNode(e){let t=this.getRootNodeContext(e);return t?t.viewNode:null}getRootNodeContext(e){let t=e;do if(!t.belongsTo(this)&&t.sourceNode===this.rootSourceNode)return t;while(t=t.parent);return null}initializeRepetitiveElements(e){this.repetitiveElements||pl.some(t=>t.root===this.rootSourceNode?(this.repetitiveElements=t.elements,!0):!1)||(this.repetitiveElements=new nS(e,this.rootSourceNode),pl.push({root:this.rootSourceNode,elements:this.repetitiveElements}))}saveState(){}restoreState(e){}},nS=class{constructor(e,t){u(this,"vertical",e),u(this,"ownerSourceNode",t),u(this,"headerSourceNode",null),u(this,"footerSourceNode",null),u(this,"headerViewNode",null),u(this,"footerViewNode",null),u(this,"headerNodePosition",null),u(this,"footerNodePosition",null),u(this,"headerHeight",0),u(this,"footerHeight",0),u(this,"isSkipHeader",!1),u(this,"isSkipFooter",!1),u(this,"enableSkippingFooter",!0),u(this,"enableSkippingHeader",!0),u(this,"doneInitialLayout",!1),u(this,"firstContentSourceNode",null),u(this,"lastContentSourceNode",null),u(this,"affectedNodeCache",[]),u(this,"afterLastContentNodeCache",[]),u(this,"allowInsertRepeatitiveElements",!1)}setHeaderNodeContext(e){this.headerNodePosition||(this.headerNodePosition=vo(e,0),this.headerSourceNode=e.sourceNode,this.headerViewNode=e.viewNode)}setFooterNodeContext(e){this.footerNodePosition||(this.footerNodePosition=vo(e,0),this.footerSourceNode=e.sourceNode,this.footerViewNode=e.viewNode)}updateHeight(e){this.headerViewNode&&(this.headerHeight=hl(this.headerViewNode,e,this.vertical),this.headerViewNode=null),this.footerViewNode&&(this.footerHeight=hl(this.footerViewNode,e,this.vertical),this.footerViewNode=null)}prepareLayoutFragment(){this.isSkipHeader=this.isSkipFooter=!1,this.enableSkippingFooter=!0,this.enableSkippingHeader=!0}appendHeaderToFragment(e,t,i){return!this.headerNodePosition||this.isSkipHeader?I(!0):this.appendElementToFragment(this.headerNodePosition,e,t,i)}appendFooterToFragment(e,t,i){return!this.footerNodePosition||this.isSkipFooter?I(!0):this.appendElementToFragment(this.footerNodePosition,e,t,i)}appendElementToFragment(e,t,i,n){let r=t.viewNode,s=r.ownerDocument.createElement("div");r.appendChild(s);let o=new Dh(n,s,t),a=o.getColumn().pageBreakType;return o.getColumn().pageBreakType=null,this.allowInsertRepeatitiveElements=!0,o.layout(new zi(e),!0).thenAsync(()=>(this.allowInsertRepeatitiveElements=!1,r.removeChild(s),this.moveChildren(s,r,i),o.getColumn().pageBreakType=a,I(!0)))}moveChildren(e,t,i){if(t)for(;e.firstChild;){let n=e.firstChild;e.removeChild(n),n.setAttribute($n,"1"),i?t.insertBefore(n,i):t.appendChild(n)}}calculateOffset(e){let t=0;return e&&!this.affectTo(e)||((!this.isSkipFooter||e&&this.isAfterLastContent(e))&&(t+=this.footerHeight),this.isSkipHeader||(t+=this.headerHeight)),t}calculateMinimumOffset(e){let t=0;return e&&!this.affectTo(e)||(!this.enableSkippingFooter&&e&&this.isAfterLastContent(e)&&(t+=this.footerHeight),this.enableSkippingHeader||(t+=this.headerHeight)),t}isAfterLastContent(e){return this.findResultFromCache(e,this.afterLastContentNodeCache,t=>this.isAfterNodeContextOf(this.lastContentSourceNode,e,!1))}affectTo(e){return this.findResultFromCache(e,this.affectedNodeCache,t=>this.isAfterNodeContextOf(this.ownerSourceNode,e,!0))}findResultFromCache(e,t,i){let n=t.filter(r=>r.nodeContext.sourceNode===e.sourceNode&&r.nodeContext.after===e.after);if(n.length>0)return n[0].result;{let r=i(e);return t.push({nodeContext:e,result:r}),r}}isAfterNodeContextOf(e,t,i){let n=[];for(let r=e;r;r=r.parentNode){if(t.sourceNode===r)return t.after;n.push(r)}for(let r=t.sourceNode;r;r=r.parentNode){let s=n.indexOf(r);if(s>=0)return i?s===0:!1;for(let o=r;o;o=o.previousElementSibling)if(n.includes(o))return!0}return t.after}isFirstContentNode(e){return e&&this.firstContentSourceNode===e.sourceNode}isEnableToUpdateState(){return!!(!this.isSkipFooter&&this.enableSkippingFooter&&this.footerNodePosition||!this.isSkipHeader&&this.enableSkippingHeader&&this.headerNodePosition)}updateState(){!this.isSkipFooter&&this.enableSkippingFooter&&this.footerNodePosition?this.isSkipFooter=!0:!this.isSkipHeader&&this.enableSkippingHeader&&this.headerNodePosition&&(this.isSkipHeader=!0)}preventSkippingHeader(){this.isSkipHeader=!1,this.enableSkippingHeader=!1}preventSkippingFooter(){this.isSkipFooter=!1,this.enableSkippingFooter=!1}isHeaderRegistered(){return!!this.headerNodePosition}isFooterRegistered(){return!!this.footerNodePosition}isHeaderSourceNode(e){return this.headerSourceNode===e}isFooterSourceNode(e){return this.footerSourceNode===e}},yg=class{constructor(e){u(this,"formattingContext",e)}accept(e,t){return!!e}postLayout(e,t,i,n){let r=this.formattingContext.getRepetitiveElements();return r&&(r.doneInitialLayout||(r.updateHeight(i),r.doneInitialLayout=!0)),n}},vg=class{constructor(e){u(this,"formattingContext",e)}accept(e,t){return!0}postLayout(e,t,i,n){return n}},rS=class extends yg{constructor(e,t){super(e),u(this,"processor",t)}doLayout(e,t){return this.processor.doInitialLayout(e,t)}accept(e,t){return!1}},sS=class extends vg{constructor(e,t){super(e),u(this,"processor",t)}doLayout(e,t){return!e.belongsTo(this.formattingContext)&&!e.after&&t.fragmentLayoutConstraints.unshift(new zh(e)),this.processor.doLayout(e,t)}},zh=class wg{constructor(t){u(this,"flagmentLayoutConstraintType","RepetitiveElementsOwner"),u(this,"nodeContext");let i=fi(t.formattingContext);this.nodeContext=i.getRootNodeContext(t)}allowLayout(t,i,n){let r=this.getRepetitiveElements();return!r||Fn(this.nodeContext.viewNode)||!r.isEnableToUpdateState()?!0:i&&!t||t&&t.overflow?!xg(t,i,r):!0}nextCandidate(t){let i=this.getRepetitiveElements();return i&&i.isEnableToUpdateState()?(i.updateState(),!0):!1}postLayout(t,i,n,r){let s=this.getRepetitiveElements();s&&t&&r.stopAtOverflow&&(i==null||s.isAfterLastContent(i))&&s.preventSkippingFooter()}finishBreak(t,i){let n=fi(this.nodeContext.formattingContext),r=this.getRepetitiveElements();if(!r)return I(!0);let s=this.nodeContext;return dS(n,s,i).thenAsync(()=>pS(n,s,i).thenAsync(()=>(r.prepareLayoutFragment(),I(!0))))}getRepetitiveElements(){return fi(this.nodeContext.formattingContext).getRepetitiveElements()}equalsTo(t){return t instanceof wg?fi(this.nodeContext.formattingContext)===fi(t.nodeContext.formattingContext):!1}getPriorityOfFinishBreak(){return 10}},oS=class extends wh{constructor(e,t){super(),u(this,"formattingContext",e),u(this,"processor",t)}resolveLayoutMode(e){let t=this.formattingContext.getRepetitiveElements();return!e.belongsTo(this.formattingContext)&&!t.doneInitialLayout?new rS(this.formattingContext,this.processor):(!e.belongsTo(this.formattingContext)&&!e.after&&t&&t.preventSkippingHeader(),new sS(this.formattingContext,this.processor))}},aS=class extends Er{constructor(e,t){super(),u(this,"formattingContext",e),u(this,"column",t)}startNonInlineElementNode(e){let t=this.formattingContext,i=e.nodeContext,n=t.getRepetitiveElements();if(i.parent&&t.rootSourceNode===i.parent.sourceNode){switch(i.repeatOnBreak){case"header":if(n.isHeaderRegistered())i.repeatOnBreak="none";else return n.setHeaderNodeContext(i),I(!0);break;case"footer":if(n.isFooterRegistered())i.repeatOnBreak="none";else return n.setFooterNodeContext(i),I(!0);break}n.firstContentSourceNode||(n.firstContentSourceNode=i.sourceNode)}return Er.prototype.startNonInlineElementNode.call(this,e)}afterNonInlineElementNode(e){let t=this.formattingContext,i=e.nodeContext;return i.sourceNode===t.rootSourceNode&&(t.getRepetitiveElements().lastContentSourceNode=e.lastAfterNodeContext&&e.lastAfterNodeContext.sourceNode,e.break=!0),i.repeatOnBreak==="header"||i.repeatOnBreak==="footer"?I(!0):Er.prototype.afterNonInlineElementNode.call(this,e)}},lS=class extends Ln{layout(e,t,i){let n=t.asFloatNodeContext(e);if(n)return t.layoutFloatOrFootnote(n);let r=fi(e.formattingContext);return r.getRootViewNode(e)?(i&&bg(e.parent,t),e.belongsTo(r)?Ln.prototype.layout.call(this,e,t,i):new oS(r,this).layout(e,t)):t.buildDeepElementView(e)}startNonInlineElementNode(e){let t=fS(e).getRepetitiveElements();return t&&!t.allowInsertRepeatitiveElements&&(t.isHeaderSourceNode(e.sourceNode)||t.isFooterSourceNode(e.sourceNode))&&Lt(e).viewNode.remove(),!1}doInitialLayout(e,t){fi(e.formattingContext);let i=z("BlockLayoutProcessor.doInitialLayout");return this.layoutEntireBlock(e,t).thenFinish(i),i.result()}layoutEntireBlock(e,t){let i=fi(e.formattingContext),n=new aS(i,t);return new dl(n,t.layoutContext).iterate(e)}doLayout(e,t){let i=fi(e.formattingContext),n=z("doLayout"),r=t.layoutContext.nextInTree(e,!1);return mg(r,t).then(s=>{let o=s;n.loopWithFrame(a=>{for(;o;){let h=!0;if(t.layoutNext(o,!1).then(l=>{o=l,t.pageFloatLayoutContext.isInvalidated()||t.pageBreakType||o&&t.stopByOverflow(o)||o&&o.after&&o.sourceNode==i.rootSourceNode?a.breakLoop():h?h=!1:a.continueLoop()}),h){h=!1;return}}a.breakLoop()}).then(()=>{n.finish(o)})}),n.result()}finishBreak(e,t,i,n){return Ln.prototype.finishBreak.call(this,e,t,i,n)}clearOverflownViewNodes(e,t,i,n){Ln.prototype.clearOverflownViewNodes(e,t,i,n)}};function hS(e,t){for(let i=e;i;i=i.parent){let n=i.formattingContext;n instanceof cn&&!i.belongsTo(n)&&t(n,i)}}function bg(e,t){e&&hS(e.after?e.parent:e,(i,n)=>{bi.isInstanceOfTableFormattingContext(i)||t.fragmentLayoutConstraints.push(new zh(n))})}function uS(e){var t;if(e.nodeType!==1)return!1;let i=e;switch(i.localName){case"caption":case"colgroup":case"col":return!0;case"thead":case"tbody":case"tfoot":case"tr":return!1}let n=(t=i.ownerDocument.defaultView)==null?void 0:t.getComputedStyle(i).display;return n==="table-caption"||n==="table-column-group"||n==="table-column"}function cS(e,t){let i=t.firstChild;if(!bi.isInstanceOfTableFormattingContext(e))return i;let n=i;for(;n;){if(uS(n))i=n.nextSibling;else if(!Ee(n))break;n=n.nextSibling}return i}function dS(e,t,i){let n=e.getRepetitiveElements();if(n){let r=e.getRootNodeContext(t),s=r&&Lt(r);if(s){let o=cS(e,s.viewNode);return n.appendHeaderToFragment(s,o,i)}}return I(!0)}function pS(e,t,i){let n=e.getRepetitiveElements();if(n&&!n.isSkipFooter){let r=e.getRootNodeContext(t),s=r&&Lt(r);if(s)return n.appendFooterToFragment(s,null,i)}return I(!0)}function xg(e,t,i){let n=i.ownerSourceNode,r=e||t;return!r||n.contains(r.sourceNode)}function fS(e){let t=e.formattingContext;return t instanceof cn?t:null}function fi(e){return e instanceof cn,e}var gS=new lS;Ft("RESOLVE_LAYOUT_PROCESSOR",e=>e instanceof cn&&!bi.isInstanceOfTableFormattingContext(e)?gS:null);var Sg=class{constructor(e,t){u(this,"rowIndex",e),u(this,"sourceNode",t),u(this,"cells",[]),u(this,"breakBefore",null),u(this,"breakAfter",null)}addCell(e){this.cells.push(e)}},mS=class{constructor(e,t,i,n){u(this,"rowIndex",e),u(this,"columnIndex",t),u(this,"anchorColumnIndex",i),u(this,"colSpan"),u(this,"rowSpan"),this.colSpan=n.colSpan||1,this.rowSpan=n.rowSpan||1}},yS=class{constructor(e,t,i){u(this,"rowIndex",e),u(this,"columnIndex",t),u(this,"cell",i)}},vS=class{constructor(e,t,i){u(this,"column",e),u(this,"cellNodeContext",i),u(this,"pseudoColumn"),u(this,"empty",!1),this.pseudoColumn=new Dh(e,t,i)}findAcceptableBreakPosition(){let e=this.cellNodeContext.viewNode,{verticalAlign:t,alignContent:i}=e.style;t!=="top"&&t!=="baseline"&&F(e,"vertical-align","top"),i&&i!=="normal"&&F(e,"align-content","normal");let n=this.pseudoColumn.findAcceptableBreakPosition();return F(e,"vertical-align",t),i&&i!=="normal"&&F(e,"align-content",i),n}},wS=class{constructor(e,t){u(this,"viewNode",e),u(this,"side",t)}},bS=class extends hs{constructor(e,t,i,n){super(e,t,i,n),u(this,"formattingContext"),u(this,"acceptableCellBreakPositions",null),u(this,"rowIndex",null),this.formattingContext=e.formattingContext}findAcceptableBreak(e,t){let i=super.findAcceptableBreak(e,t);return t<this.getMinBreakPenalty()||this.hasUnfinishedCells()?null:i}hasUnfinishedCells(){let e=this.getRowIndex(),t=this.formattingContext.getCellsFallingOnRow(e);for(let i of t){if(i.rowIndex+i.rowSpan-1>e)continue;let n=this.formattingContext.getCellFragmentOfCell(i);if(n){let r=n.findAcceptableBreakPosition();if(!n.pseudoColumn.isLastAfterNodeContext(r.nodeContext))return!0}}return!1}getMinBreakPenalty(){let e=super.getMinBreakPenalty();this.getAcceptableCellBreakPositions().forEach(i=>{e+=i.breakPosition.getMinBreakPenalty()});let t=this.getCellFragments();return e+=Math.max(0,...t.map(i=>i.cellNodeContext.breakPenalty)),e}getAcceptableCellBreakPositions(){if(!this.acceptableCellBreakPositions){let e=this.formattingContext,t=this.getCellFragments();this.acceptableCellBreakPositions=t.map(i=>i.findAcceptableBreakPosition())}return this.acceptableCellBreakPositions}getRowIndex(){return this.rowIndex!=null?this.rowIndex:this.rowIndex=this.formattingContext.findRowIndexBySourceNode(this.position.sourceNode)}getCellFragments(){return this.formattingContext.getRowSpanningCellsOverflowingTheRow(this.getRowIndex()).map(this.formattingContext.getCellFragmentOfCell,this.formattingContext)}},xS=class extends yh{constructor(e,t,i){super(),u(this,"rowIndex",e),u(this,"beforeNodeContext",t),u(this,"formattingContext",i),u(this,"acceptableCellBreakPositions",null)}findAcceptableBreak(e,t){if(this!==e.breakPositions[0]&&t<this.getMinBreakPenalty())return null;let i=this.getCellFragments(),n=this.getAcceptableCellBreakPositions(),r=n.some((s,o)=>{let a=i[o].pseudoColumn,h=s.nodeContext;return!a.isStartNodeContext(h)&&!a.isLastAfterNodeContext(h)});return this.beforeNodeContext.overflow=n.some(s=>s.nodeContext.overflow),r?this.beforeNodeContext:null}getMinBreakPenalty(){this.formattingContext.getRowByIndex(this.rowIndex);let e=this.beforeNodeContext.breakPenalty,t=this.getAcceptableCellBreakPositions(),i=this.getCellFragments();e+=Math.max(0,...i.map(r=>r.cellNodeContext.breakPenalty));let n=t.some((r,s)=>r.breakPosition instanceof wr&&i[s].cellNodeContext.sourceNode.rowSpan>1);return t.forEach((r,s)=>{let o=r.breakPosition.getMinBreakPenalty();n&&r.breakPosition instanceof hs&&r.breakPosition.overflows&&o>=3&&(i[s].column.checkOverflowAndSaveEdge(r.nodeContext,null)||(o-=3)),e+=o}),e}getAcceptableCellBreakPositions(){if(!this.acceptableCellBreakPositions){let e=this.getCellFragments();this.acceptableCellBreakPositions=e.map(t=>t.findAcceptableBreakPosition())}return this.acceptableCellBreakPositions}getCellFragments(){return this.formattingContext.getCellsFallingOnRow(this.rowIndex).map(this.formattingContext.getCellFragmentOfCell,this.formattingContext)}},Vn=class extends cn{constructor(e,t){super(e,t),u(this,"tableSourceNode",t),u(this,"formattingContextType","Table"),u(this,"vertical",!1),u(this,"columnCount",-1),u(this,"tableWidth",0),u(this,"captions",[]),u(this,"colGroups",null),u(this,"colWidths",null),u(this,"inlineBorderSpacing",0),u(this,"rows",[]),u(this,"slots",[]),u(this,"cellFragments",[]),u(this,"lastRowViewNode",null),u(this,"cellBreakPositions",[]),u(this,"repetitiveElements",null)}getName(){return"Table formatting context (Table.TableFormattingContext)"}isFirstTime(e,t){var i;if(!t)return t;switch(e.display){case"table-row":{let n=this.findRowIndexBySourceNode(e.sourceNode);return this.cellBreakPositions.every(r=>this.isPreviousFragmentRowSpanningCellBreakPosition(r,n))&&e.fragmentIndex<=1}case"table-cell":return e.fragmentIndex>1||((i=e.parent)==null?void 0:i.display)==="table-row"&&e.parent.fragmentIndex>1?!1:!this.cellBreakPositions.some(n=>n.cellNodePosition.steps[0].node===e.sourceNode);default:return t}}getParent(){return this.parent}finishFragment(){this.cellFragments=[]}addRow(e,t){this.rows[e]=t}getRowSlots(e){let t=this.slots[e];return t||(t=this.slots[e]=[]),t}addCell(e,t,i){let n=this.rows[e];n||(this.addRow(e,new Sg(e,null)),n=this.rows[e]);let r=this.getRowSlots(e),s=0;for(;r[s];)s++;let o=new mS(e,t,s,i);n.addCell(o);let a=e+o.rowSpan,h=s+o.colSpan;for(let l=e;l<a;l++){let c=this.getRowSlots(l);for(let d=s;d<h;d++)c[d]=new yS(l,d,o)}}getRowByIndex(e){return this.rows[e]}findRowIndexBySourceNode(e){return this.rows.findIndex(t=>e===t.sourceNode)}isPreviousFragmentRowSpanningCellBreakPosition(e,t){let i=e.cell;return t>=0&&i.rowIndex<t&&i.rowIndex+i.rowSpan>t}addCellFragment(e,t,i){let n=this.cellFragments[e];n||(n=this.cellFragments[e]=[]),n[t]=i}getCellsFallingOnRow(e){return this.getRowSlots(e).reduce((t,i)=>i.cell!==t[t.length-1]?t.concat(i.cell):t,[])}getRowSpanningCellsOverflowingTheRow(e){return this.getCellsFallingOnRow(e).filter(t=>t.rowIndex+t.rowSpan-1>e)}getCellFragmentOfCell(e){return this.cellFragments[e.rowIndex]&&this.cellFragments[e.rowIndex][e.columnIndex]}getColumnCount(){return this.columnCount<0&&(this.columnCount=Math.max.apply(null,this.rows.map(e=>e.cells.reduce((t,i)=>t+i.colSpan,0)))),this.columnCount}findCellFromColumn(e){if(!e)return null;let t=null,i=0,n=0;e:for(i=0;i<this.cellFragments.length;i++)if(this.cellFragments[i]){for(n=0;n<this.cellFragments[i].length;n++)if(this.cellFragments[i][n]&&e===this.cellFragments[i][n].pseudoColumn.getColumn()){t=this.rows[i].cells[n];break e}}if(!t)return null;for(;i<this.slots.length;i++)for(;n<this.slots[i].length;n++){let r=this.slots[i][n];if(r.cell===t)return{rowIndex:r.rowIndex,columnIndex:r.columnIndex}}return null}collectElementsOffsetOfUpperCells(e){let t=[];return this.slots.reduce((i,n,r)=>{if(r>=e.rowIndex)return i;let s=n[e.columnIndex]&&this.getCellFragmentOfCell(n[e.columnIndex].cell);return!s||t.includes(s)||(this.collectElementsOffsetFromColumn(s.pseudoColumn.getColumn(),i),t.push(s)),i},[])}collectElementsOffsetOfHighestColumn(){let e=[];return this.rows.forEach(t=>{t.cells.forEach((i,n)=>{e[n]||(e[n]={collected:[],elements:[]});let r=e[n],s=this.getCellFragmentOfCell(i);!s||r.collected.includes(s)||(this.collectElementsOffsetFromColumn(s.pseudoColumn.getColumn(),r.elements),r.collected.push(s))})}),[new SS(e.map(t=>t.elements))]}collectElementsOffsetFromColumn(e,t){e.fragmentLayoutConstraints.forEach(i=>{if(rn.isInstanceOfRepetitiveElementsOwnerLayoutConstraint(i)){let n=i.getRepetitiveElements();t.push(n)}bi.isInstanceOfTableRowLayoutConstraint(i)&&i.getElementsOffsetsForTableCell(null).forEach(n=>{t.push(n)})})}saveState(){return[].concat(this.cellBreakPositions)}restoreState(e){this.cellBreakPositions=[].concat(e)}},SS=class{constructor(e){u(this,"repeatitiveElementsInColumns",e)}calculateOffset(e){return this.calculateMaxOffsetOfColumn(e,t=>t.current)}calculateMinimumOffset(e){return this.calculateMaxOffsetOfColumn(e,t=>t.minimum)}calculateMaxOffsetOfColumn(e,t){let i=0;return this.repeatitiveElementsInColumns.forEach(n=>{let r=Dn(e,n);i=Math.max(i,t(r))}),i}};function Gt(e){return e instanceof Vn,e}function CS(e){return e==="table-row-group"||e==="table-header-group"||e==="table-footer-group"}function PS(e){return e==="table"||e==="inline-table"}function yc(e){return CS(e)||PS(e)}function Cg(e,t,i){let n=e.nodeContext,r=n.display,s=n.parent?n.parent.display:null,o=!1;if(s==="inline-table"&&!(n.formattingContext instanceof Vn)){for(let a=n.parent;a;a=a.parent)if(a.formattingContext instanceof Vn){o=a.formattingContext===t;break}}return o||r==="table-row"&&!yc(s)||r==="table-cell"&&s!=="table-row"&&!yc(s)||n.formattingContext instanceof Vn&&n.formattingContext!==t?i.buildDeepElementView(n).thenAsync(a=>(e.nodeContext=a,I(!0))):null}function Pg(e,t){let i=Lw(t.nodeContext);return!i||!(Oi(i.floatReference)||i.floatSide==="footnote")?null:e.layoutFloatOrFootnote(i).thenAsync(n=>(n&&(t.nodeContext=n),I(!0)))}var kS=class extends Er{constructor(e,t){super(),u(this,"formattingContext",e),u(this,"column",t),u(this,"rowIndex",-1),u(this,"columnIndex",0),u(this,"inRow",!1),u(this,"checkPoints",[]),u(this,"inHeaderOrFooter",!1)}startNonInlineElementNode(e){let t=this.formattingContext,i=Cg(e,t,this.column);if(i)return i;this.postLayoutBlockContents(e);let n=Pg(this.column,e);if(n)return n;let r=e.nodeContext,s=r.display,o=t.getRepetitiveElements();switch(s){case"table":t.inlineBorderSpacing=r.inlineBorderSpacing;break;case"table-caption":{let a=new wS(r.viewNode,r.captionSide);t.captions.push(a);break}case"table-header-group":return o.isHeaderRegistered()||(this.inHeaderOrFooter=!0,o.setHeaderNodeContext(r)),I(!0);case"table-footer-group":return o.isFooterRegistered()||(this.inHeaderOrFooter=!0,o.setFooterNodeContext(r)),I(!0);case"table-row":this.inHeaderOrFooter||(this.inRow=!0,this.rowIndex++,this.columnIndex=0,t.addRow(this.rowIndex,new Sg(this.rowIndex,r.sourceNode)),r.breakBefore&&(t.rows[this.rowIndex].breakBefore=r.breakBefore),o.firstContentSourceNode||(o.firstContentSourceNode=r.sourceNode));break}return super.startNonInlineElementNode(e)}afterNonInlineElementNode(e){let t=this.formattingContext,i=e.nodeContext,n=i.display,r=this.column.clientLayout;if(this.postLayoutBlockContents(e),i.sourceNode===t.tableSourceNode){let s=r.getElementComputedStyle(t.getRootViewNode(i));t.tableWidth=parseFloat(s[t.vertical?"height":"width"]),t.getRepetitiveElements().lastContentSourceNode=e.lastAfterNodeContext&&e.lastAfterNodeContext.sourceNode,e.break=!0}else switch(n){case"table-header-group":case"table-footer-group":if(this.inHeaderOrFooter)return this.inHeaderOrFooter=!1,I(!0);break;case"table-row":if(!this.inHeaderOrFooter){t.lastRowViewNode=i.viewNode,this.inRow=!1;let s=t.rows[this.rowIndex];s&&i.breakAfter&&(s.breakAfter=nt(s.breakAfter,i.breakAfter))}break;case"table-cell":if(!this.inHeaderOrFooter){this.inRow||(this.rowIndex++,this.columnIndex=0,this.inRow=!0);let s=i.viewNode;t.addCell(this.rowIndex,this.columnIndex,s),this.columnIndex++,Tg(s);let o=t.rows[this.rowIndex];o&&(i.breakBefore&&(o.breakBefore=nt(o.breakBefore,i.breakBefore)),i.breakAfter&&(o.breakAfter=nt(o.breakAfter,i.breakAfter)))}break}return super.afterNonInlineElementNode(e)}startNonElementNode(e){this.registerCheckPoint(e)}afterNonElementNode(e){this.registerCheckPoint(e)}startInlineElementNode(e){this.registerCheckPoint(e)}afterInlineElementNode(e){this.registerCheckPoint(e)}registerCheckPoint(e){let t=e.nodeContext;Rn(t)||this.checkPoints.push(t.clone())}postLayoutBlockContents(e){this.checkPoints.length>0&&this.column.postLayoutBlock(e.nodeContext,this.checkPoints),this.checkPoints=[]}},kg=class Eg extends Er{constructor(t,i){super(!0),u(this,"formattingContext",t),u(this,"column",i),u(this,"inRow",!1),u(this,"currentRowIndex",-1),u(this,"currentColumnIndex",0),u(this,"originalStopAtOverflow"),u(this,"inHeader",!1),u(this,"inFooter",!1),u(this,"didExtractRowSpanningCellBreakPositions",!1),this.originalStopAtOverflow=i.stopAtOverflow,i.stopAtOverflow=!1}startNonInlineElementNode(t){return Pg(this.column,t)||super.startNonInlineElementNode(t)}resetColumn(){this.column.stopAtOverflow=this.originalStopAtOverflow}getColSpanningCellWidth(t){let i=this.formattingContext.colWidths,n=0;for(let r=0;r<t.colSpan;r++)n+=i[t.anchorColumnIndex+r];return n+=this.formattingContext.inlineBorderSpacing*(t.colSpan-1),n}layoutCell(t,i,n){let r=t.rowIndex,s=t.columnIndex,o=t.colSpan,a=i.viewNode;o>1&&(F(a,"box-sizing","border-box"),F(a,this.formattingContext.vertical?"height":"width",`${this.getColSpanningCellWidth(t)}px`));let h=a.ownerDocument.createElement("div");a.appendChild(h);let l=new vS(this.column,h,i);return this.formattingContext.addCellFragment(r,s,l),n.primary.steps.length===1&&n.primary.after&&(l.empty=!0),l.pseudoColumn.layout(n,!0).thenAsync(()=>(Tg(a),I(!0)))}findBrokenCellAtSlot(t,i){let n=this.formattingContext.cellBreakPositions;for(let r=0;r<n.length;r++){let s=n[r];if(s.cell.anchorColumnIndex===t&&s.cellNodePosition.steps[0].node===i)return{position:s,index:r}}return null}extractRowSpanningCellBreakPositions(){if(this.didExtractRowSpanningCellBreakPositions)return[];let t=this.formattingContext.cellBreakPositions;if(t.length===0)return[];let i=[];return t.forEach(n=>{let r=n.cell,s=r.rowIndex;if(s<this.currentRowIndex&&s+r.rowSpan>this.currentRowIndex){let o=i[s];o||(o=i[s]=[]),o.push(n)}}),this.didExtractRowSpanningCellBreakPositions=i.length>0,i}layoutRowSpanningCellsFromPreviousFragment(t){let i=this.formattingContext,n=this.extractRowSpanningCellBreakPositions(),r=n.reduce(d=>d+1,0);if(r===0)return I(!0);let s=this.column.layoutContext,o=t.nodeContext;o.viewNode.remove();let a=z("layoutRowSpanningCellsFromPreviousFragment"),h=I(!0),l=0,c=[];return n.forEach(d=>{h=h.thenAsync(()=>{let p=wo(d[0].cellNodePosition.steps[1],o.parent);return s.setCurrent(p,!1).thenAsync(()=>{let g=Lt(p).viewNode,m=I(!0),w=0;function b(x){for(;w<x;){if(!c.includes(w)){let P=g.ownerDocument.createElement("td");F(P,"padding","0"),g.appendChild(P)}w++}}return d.forEach(x=>{m=m.thenAsync(()=>{let P=x.cell;b(P.anchorColumnIndex);let y=x.cellNodePosition,C=wo(y.steps[0],p);return C.offsetInNode=y.offsetInNode,C.after=y.after,C.fragmentIndex=y.steps[0].fragmentIndex+1,s.setCurrent(C,!1).thenAsync(()=>{let S=x.breakChunkPosition;for(let N=0;N<P.colSpan;N++)c.push(w+N);return w+=P.colSpan,this.layoutCell(P,C,S).thenAsync(()=>(C.viewNode.rowSpan=P.rowIndex+P.rowSpan-this.currentRowIndex+r-l,I(!0)))})})}),m.thenAsync(()=>(b(i.getColumnCount()),l++,I(!0)))})})}),h.then(()=>{s.setCurrent(o,!0,t.atUnforcedBreak).then(()=>{a.finish(!0)})}),a.result()}startTableRow(t){if(this.inHeader||this.inFooter)return I(!0);let i=t.nodeContext,n=this.formattingContext;return this.currentRowIndex<0?this.currentRowIndex=n.findRowIndexBySourceNode(i.sourceNode):this.currentRowIndex++,this.currentColumnIndex=0,this.inRow=!0,this.layoutRowSpanningCellsFromPreviousFragment(t).thenAsync(()=>{var r;this.registerCellFragmentIndex();let s=t.breakAtTheEdge;if(this.currentRowIndex>0){let a=n.rows[this.currentRowIndex-1];a!=null&&a.breakAfter&&(s=nt(s,a.breakAfter))}let o=n.rows[this.currentRowIndex];return o!=null&&o.breakBefore&&(s=nt(s,o.breakBefore)),!t.leadingEdge&&Ze(s)?(this.column.checkOverflowAndSaveEdgeAndBreakPosition(t.lastAfterNodeContext,null,!0,s),(r=i.viewNode)==null||r.remove(),t.lastAfterNodeContext&&this.column.layoutContext.processFragmentedBlockEdge(t.lastAfterNodeContext),this.column.pageBreakType=s,this.resetColumn(),t.break=!0,I(!0)):(this.column.checkOverflowAndSaveEdgeAndBreakPosition(t.lastAfterNodeContext,null,!0,s)&&n.getRowSpanningCellsOverflowingTheRow(this.currentRowIndex-1).length===0&&(this.resetColumn(),i.overflow=!0,t.break=!0),I(!0))})}registerCellFragmentIndex(){this.formattingContext.getRowByIndex(this.currentRowIndex).cells.forEach(t=>{let i=this.formattingContext.cellBreakPositions.find(n=>n.cell===t);if(i){let n=i.cellNodePosition.steps[0],r=this.column.layoutContext.xmldoc.getElementOffset(n.node);Xx(r,n.fragmentIndex+1,1)}})}startTableCell(t){if(this.inHeader||this.inFooter)return I(!0);let i=t.nodeContext;this.inRow||(this.currentRowIndex<0?this.currentRowIndex=0:this.currentRowIndex++,this.currentColumnIndex=0,this.inRow=!0);let n=this.formattingContext.getRowByIndex(this.currentRowIndex).cells[this.currentColumnIndex];if(!n)return t.break=!0,I(!0);let r=i.copy().modify();r.after=!0,t.nodeContext=r;let s=z("startTableCell"),o,a=this.findBrokenCellAtSlot(n.anchorColumnIndex,i.sourceNode);if(a){let h=a.position;this.formattingContext.cellBreakPositions.splice(a.index,1),i.fragmentIndex=h.cellNodePosition.steps[0].fragmentIndex+1,o=I(h.breakChunkPosition)}else o=this.column.nextInTree(i,t.atUnforcedBreak).thenAsync(h=>{let l=h.viewNode;l&&i.viewNode.removeChild(l);let c=vo(h,0);return I(new zi(c))});return o.then(h=>{this.layoutCell(n,i,h).then(()=>{this.afterNonInlineElementNode(t),this.currentColumnIndex++,s.finish(!0)})}),s.result()}startNonInlineBox(t){let i=Cg(t,Gt(this.formattingContext),this.column);if(i)return i;let n=t.nodeContext,r=this.formattingContext.getRepetitiveElements(),s=n.display;return s==="table-header-group"&&r&&r.isHeaderSourceNode(n.sourceNode)?(this.inHeader=!0,I(!0)):s==="table-footer-group"&&r&&r.isFooterSourceNode(n.sourceNode)?(this.inFooter=!0,I(!0)):s==="table-row"?this.startTableRow(t):s==="table-cell"?this.startTableCell(t):I(!0)}endNonInlineBox(t){let i=t.nodeContext;if(i.display==="table-row"&&(this.inRow=!1,!this.inHeader&&!this.inFooter)){let n=i.copy().modify();n.after=!1;let r=new xS(this.currentRowIndex,n,this.formattingContext);this.column.breakPositions.push(r)}return I(!0)}afterNonInlineElementNode(t){let i=t.nodeContext,n=this.formattingContext.getRepetitiveElements(),r=i.display;if(r==="table-header-group"?n&&!n.allowInsertRepeatitiveElements&&n.isHeaderSourceNode(i.sourceNode)?(this.inHeader=!1,i.viewNode.remove()):F(i.viewNode,"display","table-row-group"):r==="table-footer-group"&&(n&&!n.allowInsertRepeatitiveElements&&n.isFooterSourceNode(i.sourceNode)?(this.inFooter=!1,i.viewNode.remove()):F(i.viewNode,"display","table-row-group")),r&&Eg.ignoreList[r])i.viewNode.remove();else if(i.sourceNode===this.formattingContext.tableSourceNode)i.overflow=this.column.checkOverflowAndSaveEdge(i,null),this.resetColumn(),t.break=!0;else if(r==="table-row"&&!this.inHeader&&!this.inFooter){let s=super.afterNonInlineElementNode(t);return(s&&s.isPending()?s:I(!0)).thenAsync(()=>{if(!t.break){let o=this.column.checkOverflowAndSaveEdge(i,null),a=this.formattingContext.getRepetitiveElements(),h=this.column.nodeContextOverflowingDueToRepetitiveElements===i,l=!o&&h&&!!(a!=null&&a.isFooterRegistered());(o||h)&&!l&&this.formattingContext.getRowSpanningCellsOverflowingTheRow(this.currentRowIndex).length===0&&(this.resetColumn(),i.overflow=!0,t.break=!0)}return I(!0)})}else return super.afterNonInlineElementNode(t);return I(!0)}};u(kg,"ignoreList",{"table-caption":!0,"table-column-group":!0,"table-column":!0});var ES=kg,qr=[];function NS(e){let t=qr.findIndex(n=>n.root===e),i=qr[t];return i?i.tableLayoutOption:null}function TS(e){let t=qr.findIndex(i=>i.root===e);t>=0&&qr.splice(t,1)}var Ng=class{layoutEntireTable(e,t){let i=Gt(e.formattingContext),n=new kS(i,t);return new dl(n,t.layoutContext).iterate(e)}getColumnWidths(e,t,i,n){let r=e.ownerDocument,s=r.createElement("tr"),o=[];for(let h=0;h<t;h++){let l=r.createElement("td");s.appendChild(l),o.push(l)}e.after(s);let a=o.map(h=>{let l=Xt(n,h,i),c=i?l.height:l.width;return Math.ceil(c)});return s.remove(),a}getColGroupElements(e){let t=[],i=e.firstElementChild;for(;i;)i.localName==="colgroup"&&t.push(i),i=i.nextElementSibling;return t}normalizeAndGetColElements(e){let t=[];return e.forEach(i=>{let n=i.span;i.removeAttribute("span");let r=i.firstElementChild;for(;r;){if(r.localName==="col"){let s=r.span;for(r.removeAttribute("span"),n-=s;s-- >1;){let o=r.cloneNode(!0);i.insertBefore(o,r),t.push(o)}t.push(r)}r=r.nextElementSibling}for(;n-- >0;)r=i.ownerDocument.createElement("col"),i.appendChild(r),t.push(r)}),t}addMissingColElements(e,t,i,n){if(e.length<i){let r=n.ownerDocument.createElement("colgroup");t.push(r);for(let s=e.length;s<i;s++){let o=n.ownerDocument.createElement("col");r.appendChild(o),e.push(o)}}}normalizeColGroups(e,t,i){let n=e.vertical,r=e.lastRowViewNode;if(!r)return;e.lastRowViewNode=null;let s=r.ownerDocument.createDocumentFragment(),o=e.getColumnCount();if(!(o>0)){e.colGroups=s;return}let a=e.colWidths=this.getColumnWidths(r,o,n,i.clientLayout),h=this.getColGroupElements(t),l=this.normalizeAndGetColElements(h);this.addMissingColElements(l,h,o,t),l.forEach((c,d)=>{F(c,n?"height":"width",`${a[d]}px`)}),h.forEach(c=>{s.appendChild(c.cloneNode(!0))}),e.colGroups=s}doInitialLayout(e,t){let i=Gt(e.formattingContext);i.vertical=e.vertical,i.initializeRepetitiveElements(e.vertical);let n=NS(e.sourceNode);TS(e.sourceNode);let r=z("TableLayoutProcessor.doInitialLayout"),s=e.copy();return this.layoutEntireTable(e,t).then(o=>{var a;let h=o.viewNode,l=i.rows[0];if(l&&Ze(l.breakBefore)&&this.hasInFlowContentBefore(h,t)){(a=h.parentNode)==null||a.removeChild(h),t.pageBreakType=l.breakBefore,r.finish(s);return}let c=Xt(t.clientLayout,h,t.vertical),d=t.vertical?c.left:c.bottom;if(d+=(t.vertical?-1:1)*Dn(e,t.collectElementsOffset()).current,!t.isOverflown(d)&&(!n||!n.calculateBreakPositionsInside)&&!this.hasForcedBreakInRows(i)){t.breakPositions.push(new RS(s)),r.finish(o);return}this.normalizeColGroups(i,h,t),r.finish(null)}),r.result()}hasForcedBreakInRows(e){for(let t=0;t<e.rows.length;t++){let i=e.rows[t];if(i&&(t>0&&Ze(i.breakBefore)||t<e.rows.length-1&&Ze(i.breakAfter)))return!0}return!1}hasInFlowContentBefore(e,t){let i=e;for(;i&&i!==t.element;){let n=i.previousSibling;for(;n;){if(n.nodeType===1&&!Mt(n)||n.nodeType===3&&!Ee(n))return!0;n=n.previousSibling}i=i.parentNode}return!1}addCaptions(e,t,i){let n=e.captions;n.forEach((r,s)=>{r&&(t.insertBefore(r.viewNode,i),r.side==="top"&&(n[s]=null))})}addColGroups(e,t,i){e.colGroups&&this.getColGroupElements(t).length===0&&(t.insertBefore(e.colGroups.cloneNode(!0),i),F(t,"table-layout","fixed"),F(t,e.vertical?"height":"width",`${e.tableWidth}px`))}removeColGroups(e,t){if(e.colGroups&&t){let i=this.getColGroupElements(t);i&&i.forEach(n=>{t.removeChild(n)})}}doLayout(e,t){let i=Gt(e.formattingContext),n=i.getRootViewNode(e),r=n.firstChild;this.addCaptions(i,n,r),this.addColGroups(i,n,r);let s=new ES(i,t),o=new dl(s,t.layoutContext),a=z("TableFormattingContext.doLayout");return o.iterate(e).thenFinish(a),a.result()}layout(e,t,i){let n=Gt(e.formattingContext);if(n.getRootViewNode(e)){if(i){let r=n.getRepetitiveElements();r&&e.sourceNode!==n.tableSourceNode&&!e.after&&!r.isFooterRegistered()&&r.preventSkippingHeader(),bg(e.parent,t)}return new AS(n,this).layout(e,t)}else return t.buildDeepElementView(e)}createEdgeBreakPosition(e,t,i,n){return new bS(e,t,i,n)}startNonInlineElementNode(e){return!1}afterNonInlineElementNode(e,t){return _a(e),!1}finishBreak(e,t,i,n){let r=Gt(t.formattingContext);if(t.display==="table-row"){let s=r.findRowIndexBySourceNode(t.sourceNode),o;if(t.after?o=r.getRowSpanningCellsOverflowingTheRow(s):o=r.getCellsFallingOnRow(s),r.cellBreakPositions=r.cellBreakPositions.filter(a=>!o.includes(a.cell)),o.length){let a=z("TableLayoutProcessor.finishBreak"),h=0;return a.loopWithFrame(l=>{if(h===o.length){l.breakLoop();return}let c=o[h++],d=r.getCellFragmentOfCell(c),p=d.findAcceptableBreakPosition().nodeContext,f=d.cellNodeContext,g=f.toNodePosition(),m=new zi(p.toNodePosition());r.cellBreakPositions.push({cellNodePosition:g,breakChunkPosition:m,cell:c});let w=f.viewNode;d.column.layoutContext.processFragmentedBlockEdge(d.cellNodeContext),s<c.rowIndex+c.rowSpan-1&&(w.rowSpan=s-c.rowIndex+1),d.empty?l.continueLoop():d.pseudoColumn.finishBreak(p,!1,!0).then(()=>{IS(d,r,p),l.continueLoop()})}).then(()=>{e.clearOverflownViewNodes(t,!1),e.layoutContext.processFragmentedBlockEdge(t),_a(t),r.finishFragment(),a.finish(!0)}),a.result()}}return _a(t),r.finishFragment(),vh.finishBreak(e,t,i,n)}clearOverflownViewNodes(e,t,i,n){Ln.prototype.clearOverflownViewNodes(e,t,i,n)}};function IS(e,t,i){let n=t.getRepetitiveElements();if(!n||!(n.isHeaderRegistered()||n.isFooterRegistered()))return;let r=t.vertical,s=e.column,o=e.pseudoColumn.getColumnElement(),a=e.cellNodeContext.viewNode,h=Xt(s.clientLayout,a,r),l=s.getComputedPaddingBorder(a);if(r){let c=h.right-s.footnoteEdge-n.calculateOffset(i)-l.right;F(o,"max-width",`${c}px`)}else{let c=s.footnoteEdge-n.calculateOffset(i)-h.top-l.top;F(o,"max-height",`${c}px`)}}function Tg(e){let t=e.matches("td, th")?e:e.closest("td, th");if(!t||t.style.verticalAlign!=="baseline")return;let i=t.querySelector(".-vivliostyle-table-cell-container");if(!i)return;let n=i.children;if(n.length!==0){for(let r=0;r<n.length;r++){let s=n[r].style.position;if(s!=="absolute"&&s!=="fixed")return}F(i,"display","contents")}}function _a(e){let t=e.display;if(t!=="table-row"&&t!=="table")return;let i=Lt(e),n=t==="table-row"?i.viewNode.parentElement:i.viewNode.querySelector("tbody");if(!n)return;let r;try{r=n.querySelectorAll(":scope>tr:has(>:empty):not(:has(>:not([rowspan]:not([rowspan='1']),:empty)))")}catch{return}if(r.length===0)return;let s=Array.from(r).reduce((f,g)=>{let m=g.getBoundingClientRect(),w=e.vertical?m.width:m.height;return f+w},0),o=r[r.length-1],a=Array.from(n.children).indexOf(o),h=Array.from(o.children).reduce((f,g)=>{let m=g.rowSpan;return m>1&&a+m<n.childElementCount?Math.max(f,m):f},0),l=h?n.children[a+h-1]:n.lastElementChild;if(l!=n.lastElementChild&&l.querySelector(":scope>*>div>div")){for(let f=l;f&&f!==n.lastElementChild;f=f.nextElementSibling)if(f.querySelector(":scope>[rowspan]:not([rowspan='1'])")){l=f;break}}let c=l.getBoundingClientRect(),d=e.vertical?c.width:c.height,p=s+d;F(l,e.vertical?"width":"height",`${p}px`)}var AS=class extends wh{constructor(e,t){super(),u(this,"tableFormattingContext",e),u(this,"processor",t)}resolveLayoutMode(e){let t=this.tableFormattingContext.getRepetitiveElements();return!t||!t.doneInitialLayout?new FS(this.tableFormattingContext,this.processor):(e.sourceNode===this.tableFormattingContext.tableSourceNode&&!e.after&&t&&t.preventSkippingHeader(),new OS(this.tableFormattingContext,this.processor))}clearNodes(e){super.clearNodes(e);let t=this.tableFormattingContext.getRootViewNode(e);this.processor.removeColGroups(this.tableFormattingContext,t)}restoreState(e,t){super.restoreState(e,t),this.tableFormattingContext.finishFragment()}},FS=class extends yg{constructor(e,t){super(e),u(this,"processor",t)}doLayout(e,t){return this.processor.doInitialLayout(e,t)}},RS=class extends hs{constructor(e){super(e,null,e.overflow,0)}getMinBreakPenalty(){if(!this.isEdgeUpdated)throw new Error("EdgeBreakPosition.prototype.updateEdge not called");return(this.overflows?3:0)+(this.position.parent?this.position.parent.breakPenalty:0)}breakPositionChosen(e){e.fragmentLayoutConstraints.push(new LS(this.position.sourceNode))}},LS=class Ig{constructor(t){u(this,"tableRootNode",t),u(this,"flagmentLayoutConstraintType","EntireTable")}allowLayout(t,i,n){return t.overflow,!1}nextCandidate(t){return!0}postLayout(t,i,n,r){qr.push({root:i.sourceNode,tableLayoutOption:{calculateBreakPositionsInside:!0}})}finishBreak(t,i){return I(!0)}equalsTo(t){return t instanceof Ig&&t.tableRootNode===this.tableRootNode}getPriorityOfFinishBreak(){return 0}},OS=class extends vg{constructor(e,t){super(e),u(this,"processor",t)}doLayout(e,t){let i=this.formattingContext.getRepetitiveElements();if(i&&!i.isAfterLastContent(e)){let n=new BS(e);t.fragmentLayoutConstraints.some(r=>n.equalsTo(r))||t.fragmentLayoutConstraints.unshift(n)}return this.processor.doLayout(e,t)}},BS=class Ag extends zh{constructor(t){super(t),u(this,"flagmentLayoutConstraintType","TableRow"),u(this,"cellFragmentLayoutConstraints",[])}allowLayout(t,i,n){let r=this.getRepetitiveElements();return!r||n.pseudoParent||Fn(this.nodeContext.viewNode)||!r.isEnableToUpdateState()?!0:i&&!t||t&&t.overflow?!xg(t,i,r):!0}nextCandidate(t){let i=Gt(this.nodeContext.formattingContext);return this.collectCellFragmentLayoutConstraints(t,i).some(n=>n.constraints.some(r=>r.nextCandidate(t)))?!0:super.nextCandidate(t)}postLayout(t,i,n,r){let s=Gt(this.nodeContext.formattingContext);if(this.cellFragmentLayoutConstraints=this.collectCellFragmentLayoutConstraints(i,s),this.cellFragmentLayoutConstraints.forEach(o=>{o.constraints.forEach(a=>{a.postLayout(t,o.breakPosition,n,r)})}),!t){let o=s.getRootViewNode(this.nodeContext);new Ng().removeColGroups(s,o),this.removeDummyRowNodes(n)}super.postLayout(t,i,n,r)}finishBreak(t,i){Gt(this.nodeContext.formattingContext);let n=z("finishBreak"),r=this.cellFragmentLayoutConstraints.reduce((o,a)=>o.concat(a.constraints.map(h=>({constraint:h,breakPosition:a.breakPosition}))),[]),s=0;return n.loop(()=>{if(s<r.length){let o=r[s++];return o.constraint.finishBreak(o.breakPosition,i).thenReturn(!0)}else return I(!1)}).then(()=>{n.finish(!0)}),n.result().thenAsync(()=>super.finishBreak(t,i))}removeDummyRowNodes(t){if(!(!t||t.display!=="table-row"||!t.viewNode))for(;t.viewNode.previousElementSibling;){let i=t.viewNode.previousElementSibling;i.parentNode&&i.parentNode.removeChild(i)}}collectCellFragmentLayoutConstraints(t,i){return this.getCellFragemnts(t,i).map(n=>({constraints:n.fragment.pseudoColumn.getColumn().fragmentLayoutConstraints,breakPosition:n.breakPosition}))}getCellFragemnts(t,i){let n=Number.MAX_VALUE;t&&t.display==="table-row"&&(n=i.findRowIndexBySourceNode(t.sourceNode)+1),n=Math.min(i.cellFragments.length,n);let r=[];for(let s=0;s<n;s++)i.cellFragments[s]&&i.cellFragments[s].forEach(o=>{o&&r.push({fragment:o,breakPosition:o.findAcceptableBreakPosition().nodeContext})});return r}getElementsOffsetsForTableCell(t){let i=Gt(this.nodeContext.formattingContext),n=i.findCellFromColumn(t);return n?i.collectElementsOffsetOfUpperCells(n):i.collectElementsOffsetOfHighestColumn()}equalsTo(t){return t instanceof Ag?Gt(this.nodeContext.formattingContext)===Gt(t.nodeContext.formattingContext):!1}},MS=new Ng;function _S(e,t,i,n,r,s){if(!t)return null;if(i===v.table){let o=e.parent;return new Vn(o?o.formattingContext:null,e.sourceNode)}return null}function DS(e){return e instanceof Vn?MS:null}Ft("RESOLVE_FORMATTING_CONTEXT",_S);Ft("RESOLVE_LAYOUT_PROCESSOR",DS);function vc(e){return e.reduce((t,i)=>t+i,0)/e.length}function zS(e){let t=vc(e);return vc(e.map(i=>{let n=i-t;return n*n}))}var VS=class{constructor(e,t){u(this,"layoutResult",e),u(this,"penalty",t)}};function Yr(e){return e.vertical?e.width:e.height}function Kr(e,t){e.vertical?e.width=t:e.height=t}var Fg=class{constructor(e,t,i){u(this,"layoutContainer",e),u(this,"columnGenerator",t),u(this,"regionPageFloatLayoutContext",i),u(this,"originalContainerBlockSize"),this.originalContainerBlockSize=Yr(e)}balanceColumns(e){let t=z("ColumnBalancer#balanceColumns");this.layoutContainer.element.setAttribute("data-vivliostyle-in-column-balancing","true"),this.preBalance(e),this.savePageFloatLayoutContexts(e),this.layoutContainer.clear();let i=[this.createTrialResult(e)];return t.loopWithFrame(n=>{if(!this.hasNextCandidate(i)){n.breakLoop();return}this.updateCondition(i),this.columnGenerator().then(r=>{if(this.savePageFloatLayoutContexts(r),this.layoutContainer.clear(),!r){n.breakLoop();return}i.push(this.createTrialResult(r)),n.continueLoop()})}).then(()=>{let n=i.reduce((r,s)=>s.penalty<r.penalty?s:r,i[0]);this.layoutContainer.element.removeAttribute("data-vivliostyle-in-column-balancing"),this.restoreContents(n.layoutResult),this.tightenColumnBlockSizes(n.layoutResult.columns),this.postBalance(),t.finish(n.layoutResult)}),t.result()}createTrialResult(e){let t=this.calculatePenalty(e);return new VS(e,t)}preBalance(e){}postBalance(){Kr(this.layoutContainer,this.originalContainerBlockSize)}tightenColumnBlockSizes(e){if(e.length<=1)return;let t=Math.max.apply(null,e.map(i=>i.computedBlockSize));if(!(t<=0))for(let i of e)if(i.vertical){let n=parseFloat(i.element.style.width),r=parseFloat(i.element.style.left);if(isFinite(n)&&isFinite(r)&&n>t){let s=r+n-t;F(i.element,"width",`${t}px`),F(i.element,"left",`${s}px`),i.width=t,i.left=s}}else{let n=parseFloat(i.element.style.height);isFinite(n)&&n>t&&(F(i.element,"height",`${t}px`),i.height=t)}}savePageFloatLayoutContexts(e){let t=this.regionPageFloatLayoutContext.detachChildren();e&&(e.columnPageFloatLayoutContexts=t)}restoreContents(e){let t=this.layoutContainer.element;e.columns.forEach(i=>{t.appendChild(i.element)}),e.columnPageFloatLayoutContexts,this.regionPageFloatLayoutContext.attachChildren(e.columnPageFloatLayoutContexts)}},_l=1;function Rg(e){let t=e[e.length-1];if(t.penalty===0)return!1;let i=e[e.length-2];if(i&&t.penalty>=i.penalty)return!1;let n=t.layoutResult.columns,r=Math.max.apply(null,n.map(o=>o.computedBlockSize)),s=Math.max.apply(null,n.map(o=>o.getMaxBlockSizeOfPageFloats()));return r>s+_l}function Lg(e,t){let i=e[e.length-1].layoutResult.columns,n=Math.max.apply(null,i.map(r=>isNaN(r.blockDistanceToBlockEndFloats)?r.computedBlockSize:r.computedBlockSize-r.blockDistanceToBlockEndFloats+_l))-_l;n<Yr(t)?Kr(t,n):Kr(t,Yr(t)-1)}var US=class extends Fg{constructor(e,t,i,n){super(i,e,t),u(this,"columnCount",n),u(this,"originalPosition",null),u(this,"foundUpperBound",!1)}preBalance(e){let t=e.columns.reduce((i,n)=>i+n.computedBlockSize,0);Kr(this.layoutContainer,t/this.columnCount),this.originalPosition=e.position}checkPosition(e){return this.originalPosition?this.originalPosition.isSamePosition(e):e===null}calculatePenalty(e){if(!this.checkPosition(e.position))return 1/0;let t=e.columns;return wc(t)?1/0:Math.max.apply(null,t.map(i=>i.computedBlockSize))}hasNextCandidate(e){if(e.length===1)return!0;if(this.foundUpperBound)return Rg(e);{let t=e[e.length-1];return this.checkPosition(t.layoutResult.position)&&!wc(t.layoutResult.columns)?(this.foundUpperBound=!0,!0):Yr(this.layoutContainer)<this.originalContainerBlockSize}}updateCondition(e){if(this.foundUpperBound)Lg(e,this.layoutContainer);else{let t=Math.min(this.originalContainerBlockSize,Yr(this.layoutContainer)+this.originalContainerBlockSize*.1);Kr(this.layoutContainer,t)}}};function wc(e){if(e.length<=1)return!1;let t=e[e.length-1].computedBlockSize,i=e.slice(0,e.length-1),n=Math.max(...e.map(s=>s.lastLineStride||0)),r=n>0?n/2:6;return i.every(s=>t>s.computedBlockSize+r)}var $S=class extends Fg{constructor(e,t,i){super(i,e,t)}calculatePenalty(e){if(e.columns.every(i=>i.computedBlockSize===0))return 1/0;let t=e.columns.filter(i=>!i.pageBreakType).map(i=>i.computedBlockSize);return zS(t)}hasNextCandidate(e){return Rg(e)}updateCondition(e){Lg(e,this.layoutContainer)}};function HS(e,t,i,n,r,s,o){if(t===v.auto)return null;{let a=o.positions.length===0,h=s[s.length-1],l=!!(h&&h.pageBreakType);return a||l?new US(i,n,r,e):t===v.balance_all?new $S(i,n,r):(v.balance,null)}}var Da=class{constructor(e,t,i){u(this,"endStuckFixed"),u(this,"endFixed"),u(this,"endSlipped"),this.endStuckFixed=e,this.endFixed=t,this.endSlipped=i}},WS=class{constructor(){u(this,"map",[])}getMaxSlipped(){return this.map.length==0?0:this.map[this.map.length-1].endSlipped}addStuckRange(e){if(this.map.length==0)this.map.push(new Da(e,e,e));else{let t=this.map[this.map.length-1],i=t.endSlipped+e-t.endFixed;t.endFixed==t.endStuckFixed?(t.endFixed=e,t.endStuckFixed=e,t.endSlipped=i):this.map.push(new Da(e,e,i))}}addSlippedRange(e){this.map.length==0?this.map.push(new Da(e,0,0)):this.map[this.map.length-1].endFixed=e}slippedByFixed(e){let t=vi(this.map.length,n=>e<=this.map[n].endFixed),i=this.map[t];return i.endSlipped-Math.max(0,i.endStuckFixed-e)}fixedBySlipped(e){let t=vi(this.map.length,n=>e<=this.map[n].endSlipped),i=this.map[t];return i.endStuckFixed-(i.endSlipped-e)}};function GS(e){let t={};return Object.keys(e).forEach(i=>{t[i]=Array.from(e[i])}),t}var jS=class Dl{constructor(t,i,n,r,s,o,a,h){if(u(this,"context",t),u(this,"style",i),u(this,"offset",n),u(this,"isRoot",r),u(this,"flowChunk",s),u(this,"atBlockStart",o),u(this,"atFlowStart",a),u(this,"isParentBoxDisplayed",h),u(this,"flowName"),u(this,"isBlockValue",null),u(this,"hasBoxValue",null),u(this,"styleValues",{}),u(this,"beforeBox",null),u(this,"afterBox",null),u(this,"breakBefore",null),this.flowName=s.flowName,this.hasBox()){let l=i._pseudos;if(l&&l.before){let c=new Dl(t,l.before,n,!1,s,this.isBlock(),a,!0),d=c.styleValue("content");At(d)&&(this.beforeBox=c,this.breakBefore=c.breakBefore)}}this.breakBefore=nt(this.getBreakValue("before"),this.breakBefore),this.atFlowStart&&Ze(this.breakBefore)&&(s.breakBefore=nt(s.breakBefore,this.breakBefore))}buildAfterPseudoElementBox(t,i,n){if(this.hasBox()){let r=this.style._pseudos;if(r&&r.after){let s=new Dl(this.context,r.after,t,!1,this.flowChunk,i,n,!0),o=s.styleValue("content");At(o)&&(this.afterBox=s)}}}styleValue(t,i){if(!(t in this.styleValues)){let n=this.style[t];this.styleValues[t]=n?n.evaluate(this.context,t):i||null}return this.styleValues[t]}displayValue(){return this.styleValue("display",v.inline)}isBlock(){if(this.isBlockValue===null){let t=this.displayValue(),i=this.styleValue("position"),n=this.styleValue("float");this.isBlockValue=aw(t,i,n,this.isRoot)}return this.isBlockValue}hasBox(){return this.hasBoxValue===null&&(this.hasBoxValue=this.isParentBoxDisplayed&&this.displayValue()!==v.none&&!Pr(this.styleValue("position"))),this.hasBoxValue}getBreakValue(t){let i=null;if(this.isBlock()){let n=this.styleValue(`break-${t}`);n&&(i=n.toString())}return i}},XS=class{constructor(e){u(this,"context",e),u(this,"stack",[]),u(this,"atBlockStart",!0),u(this,"atFlowStart",!0),u(this,"atStartStack",[])}empty(){return this.stack.length===0}lastBox(){return this.stack[this.stack.length-1]}lastFlowName(){let e=this.lastBox();return e?e.flowChunk.flowName:null}isCurrentBoxDisplayed(){return this.stack.every(e=>e.displayValue()!==v.none)}push(e,t,i,n){let r=this.lastBox();n&&r&&n.flowName!==r.flowName&&this.atStartStack.push({atBlockStart:this.atBlockStart,atFlowStart:this.atFlowStart});let s=n||r.flowChunk,o=this.atFlowStart||!!n,a=this.isCurrentBoxDisplayed(),h=new jS(this.context,e,t,i,s,o||this.atBlockStart,o,a);return this.stack.push(h),this.atBlockStart=h.hasBox()?!h.beforeBox&&h.isBlock():this.atBlockStart,this.atFlowStart=h.hasBox()?!h.beforeBox&&o:this.atFlowStart,h}encounteredTextNode(e){let t=this.lastBox();if((e.nodeType===Node.TEXT_NODE||e.nodeType===Node.CDATA_SECTION_NODE)&&(this.atBlockStart||this.atFlowStart)&&t.hasBox()){let i=t.styleValue("white-space",v.normal).toString(),n=Np(i);n&&!Ee(e,n)&&(this.atBlockStart=!1,this.atFlowStart=!1)}}pop(e){let t=this.stack.pop();if(t.buildAfterPseudoElementBox(e,this.atBlockStart,this.atFlowStart),this.atFlowStart&&t.afterBox){let n=t.afterBox.getBreakValue("before");t.flowChunk.breakBefore=nt(t.flowChunk.breakBefore,n)}let i=this.lastBox();if(i)if(i.flowName===t.flowName)t.hasBox()&&(this.atBlockStart=this.atFlowStart=!1);else{let n=this.atStartStack.pop();this.atBlockStart=n.atBlockStart,this.atFlowStart=n.atFlowStart}return t}nearestBlockStartOffset(e){if(!e.atBlockStart)return e.offset;let t=this.stack.length-1,i=this.stack[t];for(i===e&&(t--,i=this.stack[t]);t>=0;){if(i.flowName!==e.flowName)return e.offset;if(!i.atBlockStart||i.isRoot)return i.offset;e=i,i=this.stack[--t]}throw new Error("No block start offset found!")}},qS=class{constructor(e){u(this,"xmldoc",e),u(this,"map",{})}setAt(e,t){this.map[`e${e}`]=t}styleOf(e){return this.map[`e${this.xmldoc.getElementOffset(e)}`]}},bc=class{constructor(e,t,i,n,r,s,o,a,h,l,c){u(this,"xmldoc",e),u(this,"scope",i),u(this,"context",n),u(this,"primaryFlows",r),u(this,"validatorSet",s),u(this,"counterListener",o),u(this,"root"),u(this,"last"),u(this,"rootStyle",{}),u(this,"bodyPropagatedStyle",{}),u(this,"styles"),u(this,"counterSnapshots",[]),u(this,"flows",{}),u(this,"flowChunks",[]),u(this,"flowListener",null),u(this,"flowToReach",null),u(this,"idToReach",null),u(this,"cascade"),u(this,"elementWindow"),u(this,"offsetMap"),u(this,"primary",!0),u(this,"primaryStack",[]),u(this,"rootBackgroundAssigned",!1),u(this,"rootLayoutAssigned",!1),u(this,"lastOffset"),u(this,"breakBeforeValues",{}),u(this,"boxStack"),u(this,"bodyReached",!0),this.root=e.root,this.styles=new qS(e),this.last=Gm.atRoot(this.root),this.cascade=t.createInstance(n,o,a,h,l,this.root,i,s,this.styles,c),this.offsetMap=new WS;let d=e.getElementOffset(this.root);this.lastOffset=d,this.boxStack=new XS(n),this.offsetMap.addStuckRange(d);let p=this.getAttrStyle(this.root);this.elementWindow=this.cascade.pushElement(this.root,p,d),this.recordCounterSnapshot(d,this.cascade.counters,this.cascade.lastCounterChanges,this.cascade.lastCounterChangeTypes),this.postprocessTopStyle(p,!1),this.determineRootSizes(p),this.root.namespaceURI==="http://www.w3.org/1999/xhtml"&&(this.bodyReached=!1),this.primaryStack.push(!0),this.styles.setAt(d,p),this.lastOffset++,this.replayFlowElementsFromOffset(-1)}hasProp(e,t,i){let n=e[i];return n&&n.evaluate(this.context)!==t[i]}transferPropsToRoot(e,t){for(let i in t){let n=e[i];if(n)this.rootStyle[i]=n,delete e[i];else{let r=t[i];r&&(this.rootStyle[i]=new Y(r,fp))}}}postprocessTopStyle(e,t){if(t)for(let i of["writing-mode","direction"])e[i]&&!this.rootStyle[i]&&(this.rootStyle[i]=e[i],this.bodyPropagatedStyle[i]=e[i]);else for(let i in e)Bn(i)&&(this.rootStyle[i]=e[i]);if(!this.rootBackgroundAssigned){let i=this.hasProp(e,this.validatorSet.backgroundProps,"background-color")?e["background-color"].evaluate(this.context):null,n=this.hasProp(e,this.validatorSet.backgroundProps,"background-image")?e["background-image"].evaluate(this.context):null;if(i&&!J(i)||n&&!J(n)){this.transferPropsToRoot(e,this.validatorSet.backgroundProps);for(let r of["background-position-x","background-position-y"]){let s=e[r];s&&(this.rootStyle[r]=s,delete e[r])}this.rootBackgroundAssigned=!0}}if(!this.rootLayoutAssigned){for(let i=0;i<xc.length;i++)if(this.hasProp(e,this.validatorSet.layoutProps,xc[i])){this.transferPropsToRoot(e,this.validatorSet.layoutProps),this.rootLayoutAssigned=!0;break}}}determineRootSizes(e){var t;let i=e["font-size"],n=!0;if(i&&!J(i.value)){let h=i.evaluate(this.context),l=this.resolveRootSizingCalc(h),c=h instanceof zt&&l instanceof B;if(l instanceof B){let d=l.num;switch(l.unit){case"em":case"rem":d*=this.context.initialFontSize;break;case"%":d*=this.context.initialFontSize/100;break;case"lh":case"rlh":d*=this.context.rootLineHeight;break;default:{let p=wi[l.unit];p&&(d*=p),n=c}}this.context.rootFontSize=d,this.context.isRelativeRootFontSize=n}}let r=(t=this.context.rootFontSize)!=null?t:this.context.initialFontSize,s=e["line-height"],o=null,a=!1;if(s&&!J(s.value)){let h=s.evaluate(this.context),l=this.resolveRootSizingCalc(h);if(a=h instanceof zt&&l instanceof B,l instanceof It)o=l.num*r;else if(l instanceof B){let c=l.num;switch(l.unit){case"em":case"rem":c*=r;break;case"%":c*=r/100;break;case"lh":case"rlh":c*=this.context.rootLineHeight;break;default:{let d=wi[l.unit];d&&(c*=d)}}o=c}}this.context.rootLineHeight=o??this.context.fontSize()*this.context.pref.lineHeight,this.context.isRootLineHeightFromRelativeCalc=a}resolveRootSizingCalc(e){return e instanceof zt?e.visit(new Ox(this.context)):e}getTopContainerStyle(){let e=0;for(;!this.bodyReached&&(e+=5e3,this.styleUntil(e,0)!=Number.POSITIVE_INFINITY););return this.rootStyle}getAttrStyle(e){if(e.style instanceof CSSStyleDeclaration){let t=e.getAttribute("style");if(t)return Rx(this.scope,this.validatorSet,this.xmldoc.url,t)}return{}}recordCounterSnapshot(e,t,i=[],n){let r={offset:e,counters:GS(t),changes:Array.from(i||[]),changeTypes:n?{...n}:void 0},s=this.counterSnapshots[this.counterSnapshots.length-1];if(s&&s.offset===e){this.counterSnapshots[this.counterSnapshots.length-1]=r;return}this.counterSnapshots.push(r)}getCounterSnapshotAtOffset(e){if(!this.counterSnapshots.length)return null;let t=vi(this.counterSnapshots.length,n=>e<this.counterSnapshots[n].offset),i=t===0?0:t-1;return this.counterSnapshots[i]||null}getLastCounterSnapshot(){return this.counterSnapshots.length?this.counterSnapshots[this.counterSnapshots.length-1]:null}getReachedOffset(){return this.lastOffset}replayFlowElementsFromOffset(e){if(e>=this.lastOffset)return;let t=this.context,i=this.xmldoc.getElementOffset(this.root);if(e<i){let s=this.getStyle(this.root,!1);if(!this.cascade.firstPageType){let l=s.page,c=l&&!J(l.value)&&l.value.toString();c&&c.toLowerCase()!=="auto"&&(this.cascade.firstPageType=c)}let o=me(s,"flow-into"),a=o?o.evaluate(t,"flow-into").toString():"body",h=this.encounteredFlowElement(a,s,this.root,i);this.boxStack.empty()&&this.boxStack.push(s,i,!0,h)}let n=this.xmldoc.getNodeByOffset(e),r=this.xmldoc.getNodeOffset(n,0,!1);if(!(r>=this.lastOffset))for(;;){if(n.nodeType!=1)r+=n.textContent.length;else{let o=n,a=this.getStyle(o,!1),h=a["flow-into"];if(h){let l=h.evaluate(t,"flow-into").toString();this.encounteredFlowElement(l,a,o,r)}r++}if(r>=this.lastOffset)break;let s=n.firstChild;if(s==null){for(;s=n.nextSibling,!s;)if(n=n.parentNode,n===this.root)return}n=s}}resetFlowChunkStream(e){this.flowListener=e;for(let t=0;t<this.flowChunks.length;t++)this.flowListener.encounteredFlowChunk(this.flowChunks[t],this.flows[this.flowChunks[t].flowName])}styleUntilFlowIsReached(e){this.flowToReach=e;let t=0;for(;!(this.flowToReach==null||(t+=5e3,this.styleUntil(t,0)==Number.POSITIVE_INFINITY)););}styleUntilIdIsReached(e){if(!e)return;this.idToReach=e;let t=0;for(;!(!this.idToReach||(t+=5e3,this.styleUntil(t,0)===Number.POSITIVE_INFINITY)););this.idToReach=null}encounteredFlowElement(e,t,i,n){let r=0,s=Number.POSITIVE_INFINITY,o=!1,a=!1,h=!1,l=t["flow-options"];if(l){let m=_y(l.evaluate(this.context,"flow-options"));o=!!m.exclusive,a=!!m.static,h=!!m.last}let c=t["flow-linger"];c&&(s=Cu(c.evaluate(this.context,"flow-linger"),Number.POSITIVE_INFINITY));let d=t["flow-priority"];d&&(r=Cu(d.evaluate(this.context,"flow-priority"),0));let p=this.breakBeforeValues[n]||null,f=this.flows[e];if(!f){let m=this.boxStack.lastFlowName();f=this.flows[e]=new Cw(e,m,new ia(null))}let g=new Pw(e,i,n,r,s,o,a,h,p);return this.flowChunks.push(g),this.flowToReach==e&&(this.flowToReach=null),this.flowListener&&this.flowListener.encounteredFlowChunk(g,f),g}registerForcedBreakOffset(e,t,i){if(Ze(e)){let r=this.flows[i].forcedBreakOffsets;(r.length===0||r[r.length-1]<t)&&r.push(t)}let n=this.breakBeforeValues[t];this.breakBeforeValues[t]=nt(n,e)}styleUntil(e,t){let i=-1,n;if(e<=this.lastOffset&&(n=this.offsetMap.slippedByFixed(e),i=n+t,i<this.offsetMap.getMaxSlipped()))return this.offsetMap.fixedBySlipped(i);if(this.last==null)return Number.POSITIVE_INFINITY;let r=this.context;for(;this.last;){let s=this.last.firstChild;if(s==null)for(;this.last;){if(this.last.node.nodeType==1){this.cascade.popElement(this.last.node),this.primary=this.primaryStack.pop();let a=this.boxStack.pop(this.lastOffset),h=null;if(a.afterBox){let l=a.afterBox.getBreakValue("before");this.registerForcedBreakOffset(l,a.afterBox.atBlockStart?this.boxStack.nearestBlockStartOffset(a):a.afterBox.offset,a.flowName),h=a.afterBox.getBreakValue("after")}h=nt(h,a.getBreakValue("after")),this.registerForcedBreakOffset(h,this.lastOffset,a.flowName)}if(s=this.last.nextSibling,s)break;if(this.last=this.last.parent,!this.last)return e<this.lastOffset&&(i<0&&(n=this.offsetMap.slippedByFixed(e),i=n+t),i<=this.offsetMap.getMaxSlipped())?this.offsetMap.fixedBySlipped(i):Number.POSITIVE_INFINITY}let o=s;if(this.last=o,o.node.nodeType!=1)this.lastOffset+=o.node.textContent.length,this.boxStack.encounteredTextNode(o.node),this.primary?this.offsetMap.addStuckRange(this.lastOffset):this.offsetMap.addSlippedRange(this.lastOffset);else{let a=o.node,h=this.getAttrStyle(a);this.primaryStack.push(this.primary),this.elementWindow=this.cascade.pushElement(a,h,this.lastOffset),this.cascade.lastCounterChanges.length>0&&this.recordCounterSnapshot(this.lastOffset,this.cascade.counters,this.cascade.lastCounterChanges,this.cascade.lastCounterChangeTypes);let l=a.getAttribute("id")||a.getAttributeNS("http://www.w3.org/XML/1998/namespace","id");l&&l===this.idToReach&&(this.idToReach=null),!this.bodyReached&&a.localName=="body"&&a.parentNode==this.root&&(this.postprocessTopStyle(h,!0),this.bodyReached=!0);let c,d=h["flow-into"];if(d){let f=d.evaluate(r,"flow-into").toString(),g=this.encounteredFlowElement(f,h,a,this.lastOffset);this.primary=!!this.primaryFlows[f],c=this.boxStack.push(h,this.lastOffset,a===this.root,g)}else c=this.boxStack.push(h,this.lastOffset,a===this.root),a===this.xmldoc.body&&(c.breakBefore=nt(c.flowChunk.breakBefore,c.breakBefore));let p=this.boxStack.nearestBlockStartOffset(c);if(p===0||a===this.xmldoc.body){let f=h.page,g=f&&!J(f.value)&&f.value.toString();!this.cascade.firstPageType&&g&&g.toLowerCase()!=="auto"&&(this.cascade.firstPageType=g)}if(this.registerForcedBreakOffset(c.breakBefore,p,c.flowName),c.beforeBox){let f=c.beforeBox.getBreakValue("after");this.registerForcedBreakOffset(f,c.beforeBox.atBlockStart?p:c.offset,c.flowName)}if(this.primary&&c.displayValue()===v.none&&(this.primary=!1),this.styles.setAt(this.lastOffset,h),this.lastOffset++,this.primary?this.offsetMap.addStuckRange(this.lastOffset):this.offsetMap.addSlippedRange(this.lastOffset),this.bodyReached&&p===0)continue;if(e<this.lastOffset&&(i<0&&(n=this.offsetMap.slippedByFixed(e),i=n+t),i<=this.offsetMap.getMaxSlipped()))return this.offsetMap.fixedBySlipped(i)}}return Number.POSITIVE_INFINITY}getStyle(e,t){let i=this.xmldoc.getElementOffset(e);return t&&(i=this.xmldoc.getNodeOffset(e,0,!0)),this.lastOffset<=i&&this.styleUntil(i,0),this.styles.styleOf(e)}processContent(e,t,i){}},xc=["column-count","column-width","column-fill"];function Vh(e){return Object.keys(e).filter(t=>!["src","font-family","font-display"].includes(t)).sort()}function YS(e){let t=new yi;for(let i of Vh(e))t.append(`${i}:${e[i].toString()};`);return t.toString()}function KS(e,t){let i={};for(let n in e)i[n]=me(e,n).evaluate(t,n);return i}var Og=class{constructor(e){u(this,"properties",e),u(this,"fontTraitKey"),u(this,"src"),u(this,"blobURLs",[]),u(this,"blobs",[]),u(this,"family"),u(this,"styleElement",null),this.fontTraitKey=YS(this.properties),this.src=this.properties.src?this.properties.src.toString():null;let t=this.properties["font-family"];this.family=t?t.stringValue():null}makeAtRule(e,t){let i=new yi;i.append(`@font-face {
1878
1878
  font-family: `),i.append(this.family),i.append(`;
1879
- `);for(let n of $h(this.properties))i.append(n),i.append(": "),this.properties[n].appendTo(i,!0),i.append(`;
1880
- `);if(e){i.append('src: url("');let n=Yv(e);i.append(n),this.blobURLs.push(n),this.blobs.push(e),i.append('")')}else i.append("src: "),i.append(t);return i.append(`;
1879
+ `);for(let n of Vh(this.properties))i.append(n),i.append(": "),this.properties[n].appendTo(i,!0),i.append(`;
1880
+ `);if(t){i.append('src: url("');let n=jv(t);i.append(n),this.blobURLs.push(n),this.blobs.push(t),i.append('")')}else i.append("src: "),i.append(e);return i.append(`;
1881
1881
  }
1882
- `),i.toString()}},ZS=class{constructor(t){u(this,"deobfuscator",t),u(this,"familyMap",{})}registerFamily(t,e){let i=t.family,n=this.familyMap[i],r=e.family;if(n){if(n!=r)throw new Error(`E_FONT_FAMILY_INCONSISTENT ${t.family}`)}else this.familyMap[i]=r}filterFontFamily(t){if(t instanceof Be){let e=t.values,i=[];for(let n of e){let r=this.familyMap[n.stringValue()];r&&i.push(_(r)),i.push(n)}return new Be(i)}else{let e=this.familyMap[t.stringValue()];return e?new Be([_(e),t]):t}}},KS=class{constructor(t,e,i){u(this,"head",t),u(this,"body",e),u(this,"srcURLMap",{}),u(this,"familyPrefix"),u(this,"familyCounter",0),this.familyPrefix=i||"Fnt_"}getViewFontFamily(t,e){let i=t.family,n=e.familyMap[i];return n||(n=this.familyPrefix+ ++this.familyCounter,e.familyMap[i]=n,n)}initFont(t,e,i){let n=V("initFont"),r=t.src,o={};for(let l of $h(t.properties))o[l]=t.properties[l];let s=this.getViewFontFamily(t,i);o["font-family"]=_(s);let a=new Vg(o),h=this.head.ownerDocument.createElement("style");return h.textContent=a.makeAtRule(r,e),this.head.appendChild(h),a.styleElement=h,Y.debug("Load font:",r),n.finish(a),n.result()}loadFont(t,e){let i=t.src,n=t.family+";"+i+";"+t.fontTraitKey,r=this.srcURLMap[n];return r?r.piggyback(o=>{e.registerFamily(t,o),Y.debug("Found already-loaded font:",i)}):(r=new Qs(()=>{let o=V("loadFont"),s=i.replace(/^url\("([^"]+)"\).*$/,"$1"),a=e.deobfuscator?e.deobfuscator(s):null;return a?ea(s,"blob").then(h=>{if(!h.responseBlob){o.finish(null);return}a(h.responseBlob).then(l=>{this.initFont(t,l,e).thenFinish(o)})}):this.initFont(t,null,e).thenFinish(o),o.result()},`loadFont ${i}`),this.srcURLMap[n]=r,r.start()),r}findOrLoadFonts(t,e){let i=[];for(let n of t){if(!n.src||!n.family){Y.warn("E_FONT_FACE_INVALID");continue}i.push(this.loadFont(n,e))}return Hn(i).thenAsync(()=>(this.reorderFontFaceRules(i),this.waitFontLoading()))}reorderFontFaceRules(t){var e;for(let i of t){let n=(e=i.resource)==null?void 0:e.styleElement;n?.parentNode===this.head&&this.head.appendChild(n)}}waitFontLoading(){let t=this.head.ownerDocument.fonts,e=0;if(t.forEach(n=>{n.status==="unloaded"&&(e++,n.load().catch(r=>{}))}),e===0)return F(!0);let i=V("waitFontLoading");return i.loop(()=>i.sleep(20).thenAsync(()=>t.status==="loading"?F(!0):F(!1))).thenFinish(i),i.result()}},bi=!0;function JS(t){bi=t}var sn=[];function kc(t,e){return t===e||(t.src||e.src?t.src===e.src:t.textContent===e.textContent)}function $g(t){let e=Array.from(t.querySelectorAll("body > :not(script):not(link):not(style) ~ script"));return Array.from(t.querySelectorAll("head > script, body > script")).filter(i=>!e.includes(i))}function Hh(t,e,i){if(!bi||!(i!=null&&i.inHead)&&!(i!=null&&i.atEnd)&&$g(t.ownerDocument).includes(t))return F(!1);let n=t.textContent,r=t.src,o=t.type==="module",s=r&&r.includes("/MathJax.js");if(s){if(e.document.head.querySelector("script[src*='/MathJax.js']"))return F(!0);e.MathJax||(e.MathJax={MathML:{extensions:["content-mathml.js"]},showProcessingMessages:!1,messageStyle:"none",skipStartupTypeset:!0,CommonHTML:{linebreaks:{automatic:!0}},"fast-preview":{disabled:!0},AuthorInit:function(){e.MathJax.Hub.processSectionDelay=0}})}let a=(o||r)&&t.async&&!s,h=(o&&!a||r&&t.defer)&&!s,l=!(i!=null&&i.atEnd)&&(i?.forceDefer||h||a);if(Hg(e)||(e.onload=null),l)return sn.some(d=>kc(d,t))||sn.push(t),F(!0);for(let d of e.document.head.getElementsByTagName("script"))d.hasAttribute("data-vivliostyle-scripting")&&kc(d,t)&&e.document.head.removeChild(d);let c=e.document.createElement("script");c.textContent=n,r&&(c.src=r),c.async=!!a,c.defer=!!h,c.setAttribute("data-vivliostyle-scripting","true");for(let d of t.attributes)["src","async","defer"].includes(d.name)||c.setAttribute(d.name,d.value);if(Y.debug("script:",r),r){let d=Pt(c);return e.document.head.appendChild(c),Hn([d])}else return e.document.head.appendChild(c),F(!0)}function QS(t,e){var i;let n={},r=s=>{var a;let h=(a=s["font-family"])==null?void 0:a.value;if(h)if(h.values)for(let c of h.values)n[c.stringValue()]=!0;else n[h.stringValue()]=!0;let l=s._marginBoxes;if(l)for(let c of Object.values(l))r(c)},o=s=>{if(s instanceof Fh)r(s.style);else if(s instanceof tr||Array.isArray(s))for(let a of Object.values(s))o(a)};for(let s of Object.values(e.cascade.code))for(let a of Object.values(s??{}))o(a);for(let s of t.querySelectorAll("[style]"))(i=s.style)!=null&&i.fontFamily&&(n[s.style.fontFamily]=!0);return Object.keys(n).join(",")}function eC(t,e,i){var n;let r=(n=e.document.querySelector("[data-vivliostyle-textcontent]"))!=null?n:e.document.createElement("div");return r.style.position="fixed",r.style.fontSize="0",r.setAttribute("data-vivliostyle-textcontent","true"),r.setAttribute("aria-hidden","true"),r.style.fontFamily=QS(t,i),r.textContent=t.documentElement.textContent,e.document.body.appendChild(r),r}function tC(t,e,i){if(!bi)return F(!1);let n=$g(t);if(n.length===0)return F(!1);let r=n.some(c=>!(c.async||c.defer||c.type==="module")),o=r?eC(t,e,i):null,s=e.document.fonts,a=e.$,h=!1,l=V("loadScripts");return l.loop(()=>{if(n.length===0)return r?l.sleep(20).thenAsync(()=>{var d,p;return s.status==="loading"||e.document.documentElement.classList.contains("wf-loading")||(d=e.FontJSON)!=null&&d.Font&&(p=e.ret)!=null&&p.readyState&&e.ret.readyState<4?F(!0):F(!1)}):F(!1);let c=n.shift();return Hh(c,e,{inHead:!0,forceDefer:h}).thenAsync(()=>(!h&&e.$!==a&&(sn.push(c),h=!0),n.length===0&&r&&(Y.debug("dispatchEvent: DOMContentLoaded (document)"),e.document.dispatchEvent(new Event("DOMContentLoaded"))),F(!0)))}).then(()=>{o&&o.remove(),l.finish(!0)}),l.result()}function iC(t){if(!bi)return F(!1);let e=V("loadScripts");return e.loop(()=>sn.length===0?F(!1):Hh(sn.shift(),t,{atEnd:!0}).thenReturn(sn.length>0)).then(()=>{Y.debug("dispatchEvent: DOMContentLoaded (window)"),t.dispatchEvent(new Event("DOMContentLoaded")),Y.debug("dispatchEvent: load (window)"),t.dispatchEvent(new Event("load")),e.finish(!0)}),e.result()}function Hg(t){return bi?sn.length>0||!!t.document.head.querySelector("script[data-vivliostyle-scripting]"):!1}var nC=t=>String(t).replace(/[\u0000-\u001F"\\\u2028\u2029]/g,Kl),rC=t=>`"${nC(t)}"`,$a=(t,e,i)=>rC(i.transformURL(Ci(String(t)),e)),oC=(t,e,i)=>t.replace(/[uU][rR][lL]\(\s*"((\\([^0-9a-fA-F]+|[0-9a-fA-F]+\s*)|[^"\r\n])+)"/gm,(n,r)=>`url(${$a(r,e,i)}`).replace(/[uU][rR][lL]\(\s*'((\\([^0-9a-fA-F]+|[0-9a-fA-F]+\s*)|[^'\r\n])+)'/gm,(n,r)=>`url(${$a(r,e,i)}`).replace(/[uU][rR][lL]\(\s*((\\([^0-9a-fA-F]+|[0-9a-fA-F]+\s*)|[^"'\r\n\)\s])+)/gm,(n,r)=>`url(${$a(r,e,i)}`),sC={},aC=new Set(["base","body","head","html","link","meta","script","style","title"]);function lC(t){if(t instanceof K)return t;if(t instanceof ee){let e=[];for(let i of t.values)if(i instanceof K)e.push(i.str);else return null;if(e.length>0)return new K(e.join(""))}return null}function hC(t){return t instanceof et?t:t instanceof ee&&t.values[0]instanceof et&&t.values.slice(1).every(e=>e instanceof K&&e.str.trim()==="")?t.values[0]:null}function uC(t){if(no!=="webkit")return!1;let e=t["--viv-marker-content"];if(!e)return!1;let i=hC(e);if(i)return t["list-style-type"]=w.none,t["list-style-image"]=i,delete t["--viv-marker-content"],!0;let n=lC(e);return n?(t["list-style-type"]=n,t["list-style-image"]=w.none,!0):!1}function cC(t){t.addEventListener("load",()=>{t.contentWindow.navigator.epubReadingSystem={name:"adapt",version:"0.1",layoutStyle:"paginated",hasFeature:function(e,i){return e==="mouse-events"}}},!1)}var Vl=class Cr extends Jl{constructor(e,i,n,r,o,s,a,h,l,c,d,p,f,g,m,v=new Map,b={value:!1}){super(),u(this,"flowName",e),u(this,"context",i),u(this,"viewport",n),u(this,"styler",r),u(this,"regionIds",o),u(this,"xmldoc",s),u(this,"docFaces",a),u(this,"footnoteStyle",h),u(this,"stylerProducer",l),u(this,"page",c),u(this,"customRenderer",d),u(this,"fallbackMap",p),u(this,"documentURLTransformer",f),u(this,"pageProps",g),u(this,"cascadedPageStyle",m),u(this,"semanticFootnoteFirstRefOffsets",v),u(this,"semanticFootnoteFirstRefOffsetsInitialized",b),u(this,"document"),u(this,"exprContentListener"),u(this,"computedStyleParentFontSizeOverride",null),u(this,"computedStyleParentLineHeightOverride",null),u(this,"nodeContext",null),u(this,"viewRoot",null),u(this,"isFootnote",!1),u(this,"sourceNode",null),u(this,"offsetInNode",0),u(this,"viewNode",null),this.document=n.document,this.exprContentListener=r.counterListener.getExprContentListener()}clone(){return new Cr(this.flowName,this.context,this.viewport,this.styler,this.regionIds,this.xmldoc,this.docFaces,this.footnoteStyle,this.stylerProducer,this.page,this.customRenderer,this.fallbackMap,this.documentURLTransformer,this.pageProps,this.cascadedPageStyle,this.semanticFootnoteFirstRefOffsets,this.semanticFootnoteFirstRefOffsetsInitialized)}getExplicitPageType(e){let i=e?.page;if(!i||Z(i.value))return null;let n=i.evaluate(this.context,"page").toString();return!n||n.toLowerCase()==="auto"?null:n}isNormalFlowElement(e){var i,n,r;let o=this.styler.getStyle(e,!1),s=(i=o?.display)==null?void 0:i.evaluate(this.styler.context,"display");if((s&&!Z(s)?s:w.inline)===w.none)return!1;let a=(n=o?.position)==null?void 0:n.evaluate(this.styler.context,"position"),h=a&&!Z(a)?a:w.static;if(Nr(h)||Ur(h))return!1;let l=(r=o?.float)==null?void 0:r.evaluate(this.styler.context,"float");return(l&&!Z(l)?l:w.none)===w.none}getFirstInFlowChildElement(e){var i;let n=e.firstChild;for(;n;){if(n.nodeType===Node.TEXT_NODE){if(!Ee(n))return null;n=n.nextSibling;continue}if(n.nodeType!==Node.ELEMENT_NODE){n=n.nextSibling;continue}let r=n;if(this.isNormalFlowElement(r)){let o=this.styler.getStyle(r,!1),s=(i=o?.display)==null?void 0:i.evaluate(this.styler.context,"display"),a=s&&!Z(s)?s:w.inline;return Wt(a)?null:r}n=n.nextSibling}return null}getEffectiveStartPageType(e,i){let n=i,r=e;for(;r;){let o=this.getFirstInFlowChildElement(r);if(!o)return n;let s=this.getExplicitPageType(this.styler.getStyle(o,!1));s&&(n=s),r=o}return n}syncTextNodePageTypeBoundary(e){if(e.sourceNode.nodeType!==Node.TEXT_NODE||Ee(e.sourceNode)||e.fragmentIndex!==1)return;let i=e.pageType;this.styler.cascade.currentPageType!==i&&(un(e.breakBefore)||(e.breakBefore=nt(e.breakBefore,"page")),i!==this.styler.cascade.previousPageType&&(this.styler.cascade.previousPageType=this.styler.cascade.currentPageType),this.styler.cascade.currentPageType=i)}syncSemanticFootnoteCounterToTarget(e){if(e.localName!=="a"||!qt(e)||!Uu(e,this.xmldoc.url,r=>this.xmldoc.getElementOffset(r),this.semanticFootnoteFirstRefOffsets,this.semanticFootnoteFirstRefOffsetsInitialized))return;let i=e.getAttribute(Lr);if(!i)return;let n=of(e,this.xmldoc.url,r=>this.xmldoc.getElement(r));n&&n.setAttribute(Lr,i)}createPseudoelementShadow(e,i,n,r,o,s,a,h,l){var c,d;let p=this.getPseudoMap(r,this.regionIds,this.isFootnote,e,a);if(!p)return l;let f=[],g=xr.createElementNS("http://www.pyroxy.com/ns/shadow","root"),m=g,v=qt(i)&&!!p["footnote-call"]&&At((c=p["footnote-call"].content)==null?void 0:c.value);for(let C of Xx){let y;if(C){if(!p[C])continue;let k=Et(i),S=i.namespaceURI==="http://www.pyroxy.com/ns/shadow"&&i.localName==="include"&&i.classList.contains("-vivliostyle-footnote-content");if(C=="footnote-call"&&!qt(i)||C=="footnote-marker"&&!(k||S||n&&this.isFootnote)&&!((d=this.nodeContext)!=null&&d.pluginProps.nestedFootnoteDetached))continue;if(C.match(/^first-/)){let N=o.display;if(!N||N===w.inline)continue;let L=i.firstElementChild;if(L&&Ee(L.previousSibling)){let I=s.getStyle(L,!1);if(I){let D=ge(I,"display");if(D!=null&&D.value&&D.value!==w.inline)continue}}}if(C==="before"||C==="after"||C==="footnote-call"||C==="footnote-marker"){let N=p[C].content,L=(C==="before"||C==="after")&&(o.float===w.footnote||k||S)&&!!N;if(!N||!At(N.value)&&!L)continue}f.push(C),y=xr.createElementNS("http://www.w3.org/1999/xhtml","span"),Mr(y,C)}else{if(v)continue;y=xr.createElementNS("http://www.pyroxy.com/ns/shadow","content")}m.appendChild(y),C.match(/^first-/)&&(m=y)}if(!f.length)return l;let b=new Da(i,r,s,a,this.exprContentListener),x=new Zo(i,g,null,h,l,st.ROOTLESS,b);return l||x}getPseudoMap(e,i,n,r,o){let s=lt(e,"_pseudos");if(!s)return null;let a={};for(let h in s){let l=a[h]={};Br(l,s[h],o),Bl(l,o,s[h]),yg(s[h],i,n,(c,d)=>{Br(l,d,o),gg(d,p=>{Br(l,p,o)})})}return a}createRefShadow(e,i,n,r,o){let s=V("createRefShadow");return this.xmldoc.store.load(e).then(a=>{let h=a;if(h){let l=h.getElement(e);if(l){let c=this.stylerProducer.getStylerForDoc(h);o=new Zo(n,l,h,r,o,i,c)}}s.finish(o)}),s.result()}createShadows(e,i,n,r,o,s,a,h){let l=V("createShadows"),c=null,d=o.template,p;if(d instanceof et||d===w.footnote)if(d!==w.footnote||Uu(i,this.xmldoc.url,f=>this.xmldoc.getElementOffset(f),this.semanticFootnoteFirstRefOffsets,this.semanticFootnoteFirstRefOffsetsInitialized)){let f=d instanceof et?d.url:Ie("user-agent.xml#footnote",Ei);p=this.createRefShadow(f,st.ROOTLESS,i,h,c)}else p=F(c);else p=F(c);return p.then(f=>{var g,m,v;let b=null;if(i.namespaceURI=="http://www.pyroxy.com/ns/shadow"&&i.localName=="include"){let C=i.getAttribute("href"),y=this.xmldoc;C?y=(g=h?.xmldoc)!=null?g:this.xmldoc:h&&(h.owner.namespaceURI=="http://www.w3.org/1999/xhtml"?C=h.owner.getAttribute("href"):C=h.owner.getAttributeNS("http://www.w3.org/1999/xlink","href"),y=(v=(m=h.parentShadow)==null?void 0:m.xmldoc)!=null?v:this.xmldoc),C&&(C=fs(C,y.url),b=this.createRefShadow(C,st.ROOTED,i,h,f))}b==null&&(b=F(f));let x=null;b.then(C=>{if(o.display===w.table_cell){let y=Ie("user-agent.xml#table-cell",Ei);x=this.createRefShadow(y,st.ROOTLESS,i,h,C)}else x=F(C);x.then(y=>{y=this.createPseudoelementShadow(e,i,n,r,o,s,a,h,y),l.finish(y)})})}),l.result()}setViewRoot(e,i){this.viewRoot=e,this.isFootnote=i}computeStyle(e,i,n,r){var o;let s=this.context,a=_l(n,s,this.regionIds,this.isFootnote),h=!((o=this.nodeContext)!=null&&o.parent);if(h){let x=this.styler.rootStyle["writing-mode"];!a["writing-mode"]&&x&&this.styler.bodyPropagatedStyle["writing-mode"]!==x&&(a["writing-mode"]=x);let C=this.styler.rootStyle.direction;!a.direction&&C&&this.styler.bodyPropagatedStyle.direction!==C&&(a.direction=C)}let l=e;e=Ml(a,s,e);let c=e;if(h&&!e){let x=this.styler.rootStyle["writing-mode"];x&&this.styler.bodyPropagatedStyle["writing-mode"]===x&&(c=Ml({"writing-mode":x},s,e))}let d=!h&&e!==l;i=mg(a,s,i);let p=(x,C)=>{var y,k;let S;d&&(e?/^(min-|max-)?(height|inline-size)$/.test(x)&&(S=(y=s.pageAreaHeight)!=null?y:void 0):/^(min-|max-)?(width|inline-size)$/.test(x)&&(S=(k=s.pageAreaWidth)!=null?k:void 0));let N=C.evaluate(s,x,S,e);return(x=="font-family"||x=="--viv-marker-font-family")&&(N=this.docFaces.filterFontFamily(N)),N},f=!!new Qe(s.style.pageScope,"left-page").evaluate(s);if(vg(a,r,e,i,f,p),d){let x=r[e?"height":"width"];(!x||x===w.auto)&&(r[e?"height":"width"]=w.max_content)}if(Nr(r.position))return r.position=w.fixed,r.visibility=w.hidden,c;let g=r.position,m=r.float,v=r.display||(this.sourceNode&&this.sourceNode.namespaceURI==="http://www.w3.org/1999/xhtml"?w.inline:void 0),b=kp(v,g,m,this.sourceNode===this.xmldoc.root);return["display","position","float"].forEach(x=>{b[x]&&(r[x]=b[x])}),c}inheritFromSourceParent(e,i){var n;let r=e.sourceNode,o=[],s=null,a=r instanceof Element&&r.namespaceURI==="http://www.pyroxy.com/ns/shadow"&&r.localName==="include"&&r.classList.contains("-vivliostyle-footnote-content"),h=this.isFootnote&&(!e.parent||a),l=e.shadowContext;if(r instanceof Element&&r.namespaceURI==="http://www.pyroxy.com/ns/shadow"&&r.localName==="include"&&r.classList.contains("-vivliostyle-footnote-content")){let v=l?.owner;if(v instanceof Element&&qt(v)){let b=v.getAttribute("href")||v.getAttributeNS("http://www.w3.org/1999/xlink","href");if(b){let x=fs(b,this.xmldoc.url),C=this.xmldoc.getElement(x);C&&Et(C)&&((n=C.parentNode)==null?void 0:n.nodeType)===1&&(r=C.parentNode,l=null)}}}let c=-1;for(;r&&r.nodeType==1;){let v=l,b=v!==null&&v.root==r,x=b&&v.type==st.ROOTED&&Et(r);if(!b||v.type==st.ROOTLESS||x){let C=(v?v.styler:this.styler).getStyle(r,!1);o.push(C),s=s||ja(r)}b&&!x?(r=v.owner,l=v.parentShadow):(r=r.parentNode,c++)}let d=new Set;if(o.length>0){let v=o[0],b=_l(v,this.context,this.regionIds,this.isFootnote);for(let x in b){if(!Mn(x))continue;let C=b[x].evaluate(this.context,x);C&&C!==w.inherit&&C!==w.unset&&C!==Ae&&!Rt(C)&&d.add(x)}}let p=c===0,f=this.context.queryUnitSize("em",p),g={"font-size":new X(new B(f,"px"),0)};p&&(g["line-height"]=new X(new It(this.context.pref.lineHeight),0));let m=new j0(g,this.context);for(let v=o.length-1;v>=0;--v){let b=o[v],x=[];for(let k in b)Mn(k)&&x.push(k);x.sort(du);let C,y;for(let k of x){if(v>0&&h&&k.startsWith("--viv-marker-")||v>0&&d.has(k))continue;m.setPropName(k);let S=ge(b,k),N=S;if(S.value===w.initial)delete g[k];else if(!Z(S.value)){if(k==="font-size"&&v===o.length-1&&this.context.isRelativeRootFontSize&&this.context.rootFontSize)N=new X(new B(this.context.rootFontSize,"px"),S.priority);else if(k==="line-height"&&v===o.length-1&&(S.value instanceof B&&(S.value.unit==="lh"||S.value.unit==="rlh")||this.context.isRootLineHeightFromRelativeCalc))N=new X(new B(this.context.rootLineHeight,"px"),S.priority);else if(v===0&&S.value instanceof B&&S.value.unit==="lh"){let L=this.getLineHeightUnitSize(k,C,y);L!=null&&(N=new X(new B(S.value.num*L,"px"),S.priority))}else ze(k)||(N=S.filterValue(m));k==="font-size"?C=N.value:k==="line-height"&&(y=N.value),g[k]=N}}}for(let v in i)Mn(v)||(g[v]=i[v]);return{lang:s,elementStyle:g}}resolveURL(e){return e=Ie(e,this.xmldoc.url),this.fallbackMap[e]||e}inheritLangAttribute(e){e.lang=ja(e.sourceNode)||e.parent&&e.parent.lang||e.lang}transferPolyfilledInheritedProps(e,i){let n=I0().filter(r=>i[r]);if(n.length){let r=e.inheritedProps;if(e.parent){r=e.inheritedProps={};for(let o in e.parent.inheritedProps)r[o]=e.parent.inheritedProps[o]}n.forEach(o=>{let s=i[o];if(s){if(Z(s))s===w.initial&&(r[o]=void 0);else if(s instanceof ht)r[o]=s.num;else if(s instanceof he)r[o]=s.name;else if(s instanceof B){let a=s;switch(a.unit){case"dpi":case"dpcm":case"dppx":r[o]=a.num*vi[a.unit];break;default:r[o]=s}}else r[o]=s;["widows","orphans"].includes(o)||delete i[o]}})}}resolveFormattingContext(e,i,n,r,o,s){let a=zt("RESOLVE_FORMATTING_CONTEXT");for(let h=0;h<a.length;h++){let l=a[h](e,i,n,r,o,s);if(l){e.formattingContext=l;return}}}createElementView(e,i,n){var r;let o=!0,s=V("createElementView"),a=this.sourceNode,h=e.shadowContext?e.shadowContext.styler:this.styler,l=h.getStyle(a,!1);if(this.syncSemanticFootnoteCounterToTarget(a),!e.shadowContext){let S=this.xmldoc.getElementOffset(a);ha.registerFragmentIndex(S,e.fragmentIndex,0)}let c={},d={getStyle:S=>this.styler.getStyle(S,!1),getProp:(S,N)=>S?ge(S,N):null,getStyleMap:(S,N)=>lt(S,N),getMutableStyleMap:(S,N)=>li(S,N),createCascadeValue:(S,N)=>new X(S,N),filterFootnoteMarkerContent:(S,N)=>S.filterValue(new Yr(this.styler.cascade,N,this.styler.cascade.counterResolver,this.styler.elementWindow.currentStyle,"footnote-marker")).value};if(!e.parent){let S=this.inheritFromSourceParent(e,l);l=S.elementStyle,e.lang=S.lang}let p=l.position,f=l.float,g=l["float-reference"],m=f&&!Z(f.value)&&f.value!==w.none&&g&&!Z(g.value)?eb(g.value.toString()):null,v=!!e.shadowContext&&e.shadowContext.type===st.ROOTED&&Et(a);if(e.parent&&(Nr(p?.value)||m&&Li(m)||v)){let S=this.inheritFromSourceParent(e,l);l=S.elementStyle,e.lang=S.lang}l=sb(a,l,e.shadowContext,this.xmldoc.url,S=>this.xmldoc.getElement(S),Lr,d),l=ab(a,l,e.shadowContext,this.context,d),e.vertical=this.computeStyle(e.vertical,e.direction==="rtl",l,c),m&&Li(m)&&c.display===w.block&&(c.display=w.flow_root),h.processContent(a,c,e),this.transferPolyfilledInheritedProps(e,c),this.inheritLangAttribute(e),c.direction&&(e.direction=c.direction.toString());let b=c["flow-into"];if(b&&b.toString()!=this.flowName)return s.finish(!1),s.result();if(bi&&a.localName==="script"&&a.namespaceURI==="http://www.w3.org/1999/xhtml")return Hh(a,this.viewport.window).thenFinish(s),s.result();let x=c.display;if(Et(a)&&!v&&a.hasAttribute(rf)&&(x=c.display=w.none),Z(x)&&(x===w.initial||x===w.unset?x=w.inline:x===w.inherit?x=(r=e.parent)!=null&&r.display?_(e.parent.display):null:x=null),x===w.none)return s.finish(!1),s.result();let C=e.parent==null,y=c[e.vertical?"width":"height"],k=(x===w.grid||x===w.inline_grid)&&!!y&&!(y===w.auto||Z(y));return e.flexContainer=x===w.flex||k,this.createShadows(e,a,C,l,c,h,this.context,e.shadowContext).then(S=>{var N;e.nodeShadow=S;let L=c.position,I=c.float,D=c.clear,J=e.vertical?w.vertical_rl:w.horizontal_tb,te=e.parent?e.parent.vertical?w.vertical_rl:w.horizontal_tb:J,P=hw(a),M=c["column-count"],A=c["column-width"],H=M&&M!==w.auto&&!Z(M)||A&&A!==w.auto&&!Z(A);e.establishesBFC=dw(x,L,I,c.overflow,J,te,H||P),e.containingBlockForAbsolute=pw(L),e.isInsideBFC()&&I!==w.footnote&&!(m&&Li(m))&&(I=null,D=null);let z=null,E=!1,O=this.isFootnote&&(!e.parent||e.pluginProps.nestedFootnoteDetached||v),T=lb(a,e.shadowContext,d);hb(T.sourceStyle,c,this.context),z=T.footnoteDisplay;let $=I instanceof ee||I===w.left||I===w.right||I===w.top||I===w.bottom||I===w.inline_start||I===w.inline_end||I===w.block_start||I===w.block_end||I===w.snap_block||I===w.snap_inline||I===w.inside||I===w.outside||I===w.footnote?I.toString():null,G=$!==null;if(I&&(delete c.float,I===w.footnote))if(z=c["footnote-display"]||z,E=!!c["--viv-marker-content"],O){G=!1;let W=z?.toString();W&&(c["--viv-footnote-display"]=_(W)),x=E?_("list-item"):W==="inline"||W==="compact"?w.inline:w.block,c.display=x}else c.display=w.inline;if(O&&Et(a)){E=E||!!c["--viv-marker-content"];let W=z?.toString();W&&(c["--viv-footnote-display"]=_(W)),E&&(x=c.display=_("list-item")),!E&&(W==="inline"||W==="compact")&&(x=c.display=w.inline)}D&&(D===w.inherit&&e.parent&&e.parent.clearSide&&(D=_(e.parent.clearSide)),(D===w.left||D===w.right||D===w.top||D===w.bottom||D===w.inline_start||D===w.inline_end||D===w.block_start||D===w.block_end||D===w.inside||D===w.outside||D===w.both||D===w.all||D===w.same||D===w.column||D===w.region||D===w.page)&&(delete c.clear,(G||c.display&&c.display!=w.inline)&&(e.clearSide=D.toString())));let q=mr(x)&&!!(c["ua-list-item-count"]||c["--viv-marker-content"]),Q=c["break-inside"];(G||Q&&!Z(Q)&&Q!==w.auto)&&e.breakPenalty++,x&&x!==w.inline&&Wt(x)&&e.breakPenalty++,e.inline=!G&&!x||Wt(x)||Pp(x),e.display=x?x.toString():"inline",e.floatSide=G?$:null,e.floatReference=m||Ne.INLINE;let oe=c["float-min-wrap-block"];e.floatMinWrapBlock=oe&&!Z(oe)?oe:null;let se=this.isInsideNonRootMultiColumn(e),me=c["column-span"];if(e.columnSpan=!se&&me&&!Z(me)?me:null,!e.inline){let W=c["break-after"];W&&!Z(W)&&!(se&&W===w.column)&&(e.breakAfter=W.toString(),ol[e.breakAfter]&&(c["break-after"]=w.column));let $t=c["break-before"];$t&&!Z($t)&&!(se&&$t===w.column)&&(e.breakBefore=$t.toString(),ol[e.breakBefore]&&(this.isAtStartOfPage()?delete c["break-before"]:c["break-before"]=w.column),e.fragmentIndex!==1&&(e.breakBefore=null));let Jt=c.page,gn=Jt&&!Z(Jt)?Jt.toString():null,Ht=gn;!Ht&&!e.parent&&(e.shadowContext||x===w.table_header_group||x===w.table_footer_group)&&(Ht=this.styler.cascade.currentPageType),!Ht||Ht.toLowerCase()==="auto"?Ht=e.pageType:e.pageType=Ht;let xi=gn!=null&&gn.toLowerCase()!=="auto",$i=xi?e.fragmentIndex===1?this.getEffectiveStartPageType(a,Ht):(N=this.styler.cascade.currentPageType)!=null?N:Ht:Ht;this.styler.cascade.currentPageType!==$i&&!(!xi&&c.position===w.fixed)&&(e.fragmentIndex===1&&!un(e.breakBefore)&&(e.breakBefore="page"),$i!==this.styler.cascade.previousPageType&&(this.styler.cascade.previousPageType=this.styler.cascade.currentPageType),this.styler.cascade.currentPageType=$i)}e.captionSide=c["caption-side"]&&c["caption-side"].toString()||"top";let Me=c["border-collapse"];if(!Me||Me===_("separate")){let W=c["border-spacing"],$t,Jt;W&&(W instanceof ee?($t=W.values[0],Jt=W.values[1]):$t=Jt=W,$t.isNumeric()&&(e.inlineBorderSpacing=ct($t,this.context)),Jt.isNumeric()&&(e.blockBorderSpacing=ct(Jt,this.context)))}let ue=c["footnote-policy"]||T.footnotePolicy;ue&&!Z(ue)&&(c["--viv-footnote-policy"]=ue),e.footnotePolicy=ue&&!Z(ue)?ue:null;let fe=c["x-first-pseudo"];if(fe){let W=e.parent?e.parent.firstPseudo:null;e.firstPseudo=new Lw(W,fe.num)}e.inline||this.processAfterIfcontinues(e,a,l,h,this.context);let ke=c["white-space"];if(ke){let W=Ap(ke.toString());W!==null&&(e.whitespace=W)}let ye=c["hyphenate-character"];ye&&ye instanceof K&&(e.hyphenateCharacter=ye.str);let Fe=c["word-break"],_e=c["line-break"],Re=c["overflow-wrap"];(Fe===w.break_all||_e===w.anywhere||Re===w.break_word||Re===w.anywhere)&&(e.breakWord=!0),this.resolveFormattingContext(e,i,x,L,I,C),e.parent&&(i=e.parent.formattingContext.isFirstTime(e,i)),e.inline||(e.repeatOnBreak=this.processRepeatOnBreak(c),this.findAndProcessRepeatingElements(e,a,h));let We=!1,gt=null,ir=[],Ot=a.namespaceURI,ve=a.localName,wo=ve;Ot=="http://www.w3.org/1999/xhtml"?(aC.has(ve)?ve="div":ve=="vide_"?ve="video":ve=="audi_"?ve="audio":ve=="object"&&(We=!0),a.hasAttribute(Dh)&&a.hasAttribute("src")&&c.content instanceof et&&(ve="img")):Ot=="http://www.idpf.org/2007/ops"?(ve="span",Ot="http://www.w3.org/1999/xhtml"):Ot=="http://www.pyroxy.com/ns/shadow"?(Ot="http://www.w3.org/1999/xhtml",ve=e.inline?"span":"div"):We=!0,q?i?(ve="li",c["--viv-marker-content"]&&(uC(c)||(c["list-style-type"]=w.none,c["list-style-image"]=w.none))):(x=Wt(x)?w.inline:w.block,c.display=x,ve="div"):ve=="body"||ve=="li"?ve="div":ve=="q"&&(ve="span"),c.behavior&&c.behavior.toString()!="none"&&(We=!0),a.dataset&&a.getAttribute("data-math-typeset")==="true"&&(We=!0);let fa;if(We){let W=e.parent?e.parent.viewNode:null;fa=this.customRenderer(a,W,c)}else fa=F(null);fa.then(W=>{var $t,Jt,gn,Ht;if(W)We&&(o=W.getAttribute("data-adapt-process-children")=="true");else if(c.display===w.none){s.finish(!1);return}else W=this.createElement(Ot,ve);if(!C&&H&&c["column-fill"]===w.auto){let Ge=e.vertical?c.width:c.height;(!Ge||Ge===w.auto||Z(Ge))&&(W.setAttribute("data-viv-saved-column-fill","auto"),c["column-fill"]=w.balance)}ve!=wo&&(W.setAttribute("data-vivliostyle-original-tag",wo),(wo==="html"||wo==="body")&&(W.role="presentation")),ve=="a"&&W.addEventListener("click",this.page.hrefHandler,!1),gt&&(this.applyPseudoelementStyle(e,"inner",gt),W.appendChild(gt)),W.localName=="iframe"&&W.namespaceURI=="http://www.w3.org/1999/xhtml"&&cC(W);let xi=e.inheritedProps["image-resolution"],$i=[],ga=c.width,ma=c.height,ym=a.getAttribute("width"),vm=a.getAttribute("height"),ya=ga===w.auto||!ga&&!ym,va=ma===w.auto||!ma&&!vm,Yh=a.attributes,wm=Yh.length,nr=null,Zh=null,wa=(Jt=($t=e.parent)==null?void 0:$t.viewNode)==null?void 0:Jt.lastElementChild;x===w.table_cell&&wa?.localName==="a"&&W.appendChild(wa);for(let Ge=0;Ge<wm;Ge++){let St=Yh[Ge],ut=St.namespaceURI,ae=St.localName,Pe=St.value;if(ut){if(ut=="http://www.w3.org/2000/xmlns/")continue;ut=="http://www.w3.org/1999/xlink"&&ae=="href"&&(Pe=this.documentURLTransformer.transformURL(this.resolveURL(Pe),this.xmldoc.url))}else{if(!bi&&ae.match(/^on/)||ae=="style")continue;if(ae==="media"&&ve==="source"&&Ot==="http://www.w3.org/1999/xhtml"&&((gn=a.parentElement)==null?void 0:gn.localName)==="picture")try{let Ze=this.context.rootScope,mt=new ta(Ze),xo=new xt(Pe,mt),Kh=Cp(xo,mt,"");if(Kh){if(Kh.toExpr().evaluate(this.context))continue;Pe="not all"}}catch{}if((ae=="id"||ae=="name")&&i){let Ze=this.documentURLTransformer.transformFragment(Pe,this.xmldoc.url);W.setAttribute(ae,Pe),W.setAttribute("data-vivliostyle-id",Ze);let mt=W.ownerDocument.createElement("a");mt.setAttribute(ae,Ze),mt.setAttribute(Un,"1"),mt.style.position="absolute",W.appendChild(mt),this.page.registerElementWithId(W,Ze);continue}if(ae=="src"||ae=="href"||ae=="poster")Pe=this.resolveURL(Pe),ae==="href"?Pe=this.documentURLTransformer.transformURL(Pe,this.xmldoc.url):Pe=$r(Pe),ae==="src"&&(Pe=od(Pe));else if(ae=="srcset")Pe=Pe.split(",").map(Ze=>{let mt=Ze.trim().split(/\s+/),xo=$r(this.resolveURL(mt[0]));return mt.length>1?`${xo} ${mt.slice(1).join(" ")}`:xo}).join(",");else if(ae==="data"&&We&&ve==="object"&&W.hasAttribute("data"))continue;if(ae==="poster"&&ve==="video"&&Ot==="http://www.w3.org/1999/xhtml"){let Ze=new Image,mt=Pt(Ze,Pe);ya&&va?(ir.push(mt),$i.push({image:Ze,element:W,fetcher:mt})):this.page.fetchers.push(mt)}}if(Ot=="http://www.w3.org/2000/svg"&&/^[A-Z\-]+$/.test(ae)&&(ae=ae.toLowerCase()),this.isSVGUrlAttribute(ae)&&(Pe=oC(Pe,this.xmldoc.url,this.documentURLTransformer)),ut){let Ze=sC[ut];Ze&&(ae=`${Ze}:${ae}`)}if(ae=="src"&&!ut&&(ve=="img"||ve=="input")&&Ot=="http://www.w3.org/1999/xhtml")nr=Pe;else if(ae=="alt"&&!ut&&ve=="img"&&Ot=="http://www.w3.org/1999/xhtml")Zh=Pe;else if(ae=="href"&&ve=="image"&&Ot=="http://www.w3.org/2000/svg"&&(ut=="http://www.w3.org/1999/xlink"||!ut))ut||W.setAttribute(ae,Pe),this.page.fetchers.push(Pt(W,Pe));else if(ut)W.setAttributeNS(ut,ae,Pe);else try{W.setAttribute(ae,Pe)}catch(Ze){Y.warn(Ze)}}if(nr){let Ge=ve==="input"?new Image:W,St=Pt(Ge,nr,Zh);Ge!==W&&(W.src=nr);let ut=()=>{var ae,Pe;if(c.position===w.fixed)return!0;for(let Ze=(ae=e.parent)==null?void 0:ae.viewNode;Ze&&Ze!==this.viewRoot;Ze=Ze.parentElement)if(((Pe=Ze.style)==null?void 0:Pe.position)==="fixed")return!0;return!1};!ya&&!va&&!(()=>{let ae=e.vertical?ga:ma;return ae instanceof B&&ae.unit==="%"})()&&!ut()?this.page.fetchers.push(St):(ya&&va&&xi&&xi!==1&&$i.push({image:Ge,element:W,fetcher:St}),ir.push(St))}else!nr&&ve==="img"&&Ot==="http://www.w3.org/1999/xhtml"&&(W.srcset||((Ht=a.parentElement)==null?void 0:Ht.localName)==="picture")&&this.page.fetchers.push(Pt(W));delete c.content;let bo=c["--viv-marker-content"];if(bo){let Ge=bo instanceof ee?bo.values:[bo];for(let St of Ge)St instanceof et&&St.url&&ir.push(Pt(new Image,St.url))}if(W.localName==="object"&&W.namespaceURI==="http://www.w3.org/1999/xhtml"&&W.hasAttribute("data")&&this.page.fetchers.push(Pt(W)),W.localName==="embed"&&W.namespaceURI==="http://www.w3.org/1999/xhtml"&&W.hasAttribute("src")&&this.page.fetchers.push(Pt(W)),W.localName==="iframe"&&W.namespaceURI==="http://www.w3.org/1999/xhtml"&&W.hasAttribute("src")){let Ge=W;Ge.loading==="lazy"&&(Ge.loading="eager"),this.page.fetchers.push(Pt(W))}if(this.preprocessElementStyle(e,c),this.applyComputedStyles(W,c),e.inline)i||(Ct(W,"inline-start"),Fn(W)&&Ct(W,"clone"));else if(i){if(!Ur(c.position)){let Ge=c["margin-break"],St=this.getBreakTypeAt(e),ut=St!==null,ae=St==="auto";(Ge===w.discard&&ut||Ge!==w.keep&&ae&&!e.floatSide)&&Na(W,"block-start")}}else{let Ge=e.vertical?"width":"height";Ni(W,Ge)&&R(W,Ge,e.display==="table-row"?"0.01px":""),Ct(W,"block-start"),Fn(W)&&Ct(W,"clone"),Na(W,"block-start")}q&&c["ua-list-item-count"]&&W.setAttribute("value",c["ua-list-item-count"].stringValue()),this.viewNode=W,ir.length?Hn(ir).then(()=>{xi!==void 0&&xi>0&&this.modifyElemDimensionWithImageResolution($i,xi,c,e.vertical),s.finish(o)}):s.timeSlice().then(()=>{s.finish(o)})})}),s.result()}isAtStartOfPage(){var e,i;for(let n=this.nodeContext;n!=null&&n.parent&&!n.after;n=n.parent){let r=n===this.nodeContext&&!n.viewNode?(e=n.parent.viewNode)==null?void 0:e.lastChild:(i=n.viewNode)==null?void 0:i.previousSibling;for(;r&&(Ee(r,n.parent.whitespace)||Mt(r));)r=r.previousSibling;if(r)return!1}return!0}isInsideNonRootMultiColumn(e){var i;let n=(i=e.parent)==null?void 0:i.viewNode;return!!(n&&co(n))}getBreakTypeAt(e){var i,n,r,o,s;if(this.isInsideTable(e))return null;for(let h=e;h&&!h.after;h=h.parent){if(Ye(h.breakBefore))return h.breakBefore;let l=h.parent;if(h.fragmentIndex===1&&!l)return h.sourceNode===((i=h.sourceNode.ownerDocument)==null?void 0:i.documentElement)?"page":null;if(!l)continue;if(l.floatSide)return null;let c=l.viewNode;if(c){let d=this.viewport.window.getComputedStyle(c),p=parseFloat(d.paddingBlockStart),f=parseFloat(d.borderBlockStartWidth);if(p||f)return null;let g=c?.firstChild;for(;g&&(Ee(g,l.whitespace)||!h.floatSide&&Mt(g));)g=g.nextSibling;if(g&&g!==h.viewNode)return null}}let a=(s=(o=(r=(n=this.context)==null?void 0:n.currentLayoutPosition)==null?void 0:r.flowPositions[this.flowName])==null?void 0:o.startBreakType)!=null?s:null;return Ye(a)?a:"auto"}isInsideTable(e){for(let i=e;i&&!i.after;i=i.parent)if(i.display&&i.display.startsWith("table"))return!0;return!1}processAfterIfcontinues(e,i,n,r,o){let s=this.getPseudoMap(n,this.regionIds,this.isFootnote,e,o);if(s&&s["after-if-continues"]&&s["after-if-continues"].content){let a=new Da(i,n,r,o,this.exprContentListener);e.afterIfContinues=new Yx(i,a)}}isSVGUrlAttribute(e){return Cr.SVG_URL_ATTRIBUTES.includes(e.toLowerCase())}modifyElemDimensionWithImageResolution(e,i,n,r){e.forEach(o=>{if(o.fetcher.get().get()==="load"){let s=o.image,a=s.width/i,h=s.height/i,l=o.element;if(a>0&&h>0){if(n["box-sizing"]===w.border_box&&(n["border-left-style"]!==w.none&&(a+=ct(n["border-left-width"],this.context)),n["border-right-style"]!==w.none&&(a+=ct(n["border-right-width"],this.context)),n["border-top-style"]!==w.none&&(h+=ct(n["border-top-width"],this.context)),n["border-bottom-style"]!==w.none&&(h+=ct(n["border-bottom-width"],this.context))),i>1){let c=n["max-width"]||w.none,d=n["max-height"]||w.none;if(c===w.none&&d===w.none)R(l,"max-width",`${a}px`);else if(c!==w.none&&d===w.none)R(l,"width",`${a}px`);else if(c===w.none&&d!==w.none)R(l,"height",`${h}px`);else{c.isNumeric(),d.isNumeric();let p=c,f=d;p.unit!=="%"?R(l,"max-width",`${Math.min(a,ct(p,this.context))}px`):f.unit!=="%"?R(l,"max-height",`${Math.min(h,ct(f,this.context))}px`):r?R(l,"height",`${h}px`):R(l,"width",`${a}px`)}}else if(i<1){let c=n["min-width"]||Oe,d=n["min-height"]||Oe;c.isNumeric();let p=c,f=d;p.num===0&&f.num===0?R(l,"min-width",`${a}px`):p.num!==0&&f.num===0?R(l,"width",`${a}px`):p.num===0&&f.num!==0?R(l,"height",`${h}px`):p.unit!=="%"?R(l,"min-width",`${Math.max(a,ct(p,this.context))}px`):f.unit!=="%"?R(l,"min-height",`${Math.max(h,ct(f,this.context))}px`):r?R(l,"height",`${h}px`):R(l,"width",`${a}px`)}}}})}preprocessElementStyle(e,i){zt("PREPROCESS_ELEMENT_STYLE").forEach(n=>{n(e,i)})}findAndProcessRepeatingElements(e,i,n){for(let r=i.firstChild;r;r=r.nextSibling){if(r.nodeType!==1)continue;let o={},s=n.getStyle(r,!1);if(this.computeStyle(e.vertical,e.direction==="rtl",s,o),!this.processRepeatOnBreak(o))continue;if(e.formattingContext instanceof cn&&!e.belongsTo(e.formattingContext))return;let a=e.parent,h=a?a.formattingContext:null;e.formattingContext=new cn(h,e.sourceNode),e.formattingContext.initializeRepetitiveElements(e.vertical);return}}processRepeatOnBreak(e){let i=e["repeat-on-break"];return i!==w.none&&((i===w.auto||Z(i))&&(e.display===w.table_header_group?i=w.header:e.display===w.table_footer_group?i=w.footer:i=w.none),i&&i!==w.none)?i.toString():null}createTextNodeView(e){let i=V("createTextNodeView");return this.preprocessTextContent(e).then(n=>{let r=this.offsetInNode||0,o=Mu(n).substr(r);this.viewNode=document.createTextNode(o),i.finish(!0)}),i.result()}preprocessTextContent(e){var i;if(e.preprocessedTextContent!=null)return F(e.preprocessedTextContent);let n,r=n=(i=e.sourceNode.textContent)!=null?i:"",o=V("preprocessTextContent"),s=zt("PREPROCESS_TEXT_CONTENT"),a=0;return o.loop(()=>a>=s.length?F(!1):s[a++](e,r).thenAsync(h=>(r=h,F(!0)))).then(()=>{let h=ww(n,r);e.preprocessedTextContent=h,o.finish(h)}),o.result()}createNodeView(e,i,n){let r=V("createNodeView"),o,s=!0;return e.sourceNode.nodeType==1?o=this.createElementView(e,i,n):e.sourceNode.nodeType==8?(this.viewNode=null,o=F(!0)):o=this.createTextNodeView(e),o.then(a=>{var h;if(s=a,e.viewNode=this.viewNode,this.viewNode){let l=(f,g)=>f?.nodeType===1&&Qt(f)===g,c=e.parent,d=c&&l(this.viewNode,"after")&&l(c.viewNode,"first-letter")?c:null,p=c?(h=d?.viewNode)!=null&&h.hasChildNodes()?d.parent.viewNode:c.viewNode:this.viewRoot;e.pluginProps.nestedFootnoteDetached&&(p=this.viewRoot),p&&(e.inline&&!(this.viewNode.nodeType===3&&Ee(this.viewNode))&&!p.hasChildNodes()&&Ep(p).includes("block-start")&&Ct(p,"text-start"),p.appendChild(this.viewNode),Gw(this.viewNode))}r.finish(s)}),r.result()}setCurrent(e,i,n){return this.nodeContext=e,this.sourceNode=e.sourceNode,this.offsetInNode=e.offsetInNode,this.viewNode=null,this.createNodeView(e,i,!!n)}processShadowContent(e){if(e.shadowContext==null||e.sourceNode.localName!="content"||e.sourceNode.namespaceURI!="http://www.pyroxy.com/ns/shadow")return e;let i=e.boxOffset,n=e.shadowContext,r,o,s=n.subShadow||n.parentShadow;n.subShadow?(r=n.subShadow.root,o=n.subShadow.type,o==st.ROOTLESS&&(r=r.firstChild)):(r=n.owner.firstChild,o=st.ROOTLESS);let a=e.sourceNode.nextSibling,h;if(a?(e.sourceNode=a,e.resetView(),h=e):e.shadowSibling?h=e.shadowSibling:h=null,r){let l=en.childOf(r,e.parent,i);return l.shadowContext=s,l.shadowType=o,l.shadowSibling=h,this.processShadowContent(l)}return h===null&&(h=e.parent.modify(),h.after=!0),h.boxOffset=i,h}nextPositionInTree(e,i){let n=e.boxOffset+1;if(e.after){let r=Op(e);if(!r)return null;if(r.shadowType!=st.ROOTED){let s=r.sourceNode.nextSibling;if(s)return r=r.modify(),r.boxOffset=n,r.sourceNode=s,r.resetView(),this.processShadowContent(r)}if(r.shadowSibling){let s=r.shadowSibling.modify();return s.boxOffset=n,s}let o=r.parent.modify();return o.boxOffset=n,o.after=!0,o}else{if(e.nodeShadow){let o=e.nodeShadow.root;if(e.nodeShadow.type==st.ROOTLESS&&(o=o.firstChild),o){let s=en.childOf(o,e,n);return s.shadowContext=e.nodeShadow,s.shadowType=e.nodeShadow.type,this.processShadowContent(s)}}let r=e.sourceNode.firstChild;if(r)return this.processShadowContent(en.childOf(r,e,n));if(i){let o=Mu(i);n+=o.length-1-e.offsetInNode}return e=e.modify(),e.boxOffset=n,e.after=!0,e}}findImmediateFootnoteCallSibling(e){var i;let n=this.xmldoc.getElementOffset(e.sourceNode),r=e.viewNode;if(!r)return null;let o=r.previousSibling;for(;o;){if(o.nodeType===Node.TEXT_NODE){if(((i=o.textContent)!=null?i:"").trim().length===0){o=o.previousSibling;continue}return null}if(o.nodeType===Node.ELEMENT_NODE){let s=o;return Qt(s)==="footnote-call"&&s.getAttribute(Cr.FOOTNOTE_CALL_OWNER_ATTR)===n.toString()?s:null}return null}return null}isSemanticFootnoteElement(e){let i=e.sourceNode;return i instanceof Element&&Et(i)}insertFootnoteCall(e){var i,n;let r=V("insertFootnoteCall"),o=xr.createElementNS("http://www.w3.org/1999/xhtml","span");Mr(o,"footnote-call");let s=this.xmldoc.getElementOffset(e.sourceNode);o.setAttribute(Cr.FOOTNOTE_CALL_OWNER_ATTR,s.toString());let a=en.siblingOf(o,e,e.boxOffset);a.inline=!0;let h=new Da(e.sourceNode,this.styler.getStyle(e.sourceNode,!1),this.styler,this.context,this.exprContentListener);return a.shadowContext=new Zo(e.sourceNode,o,null,((i=e.parent)==null?void 0:i.shadowContext)||null,null,st.ROOTLESS,h),a.shadowSibling=e,e.boxOffset++,(n=e.viewNode)!=null&&n.parentNode&&e.viewNode.parentNode.removeChild(e.viewNode),this.setCurrent(a,!0,!1).then(l=>{if(l&&o.hasChildNodes())r.finish(a);else{let c=a.modify();c.after=!0,a.viewNode||(c.inline=!0),r.finish(c)}}),r.result()}nextInTree(e,i){return(!e.after&&e.sourceNode.nodeType!=1?this.preprocessTextContent(e):F(null)).thenAsync(n=>this.nextInTreeWithPreprocessedText(e,n,i))}nextInTreeWithPreprocessedText(e,i,n){let r=this.nextPositionInTree(e,i);if(!r||r.after)return F(r);this.syncTextNodePageTypeBoundary(r);let o=r,s=V("nextInTree");return this.setCurrent(o,!0,n).then(a=>{if((!o.viewNode||!a)&&(o=o.modify(),o.after=!0,o.viewNode||(o.inline=!0)),o.floatSide==="footnote"&&!(this.isFootnote&&!o.parent)&&!o.after&&!o.pluginProps.footnoteCallProcessed&&!o.shadowContext&&!this.isSemanticFootnoteElement(o)){let h=this.findImmediateFootnoteCallSibling(o);h!=null&&h.parentNode&&h.parentNode.removeChild(h),this.isFootnote&&o.parent&&(o.pluginProps.nestedFootnoteDetached=1),o.pluginProps.footnoteCallProcessed=1,this.insertFootnoteCall(o).then(l=>{this.dispatchEvent({type:"nextInTree",nodeContext:l}),s.finish(l)});return}this.dispatchEvent({type:"nextInTree",nodeContext:o}),s.finish(o)}),s.result()}addImageFetchers(e){_r(e,this.page)}applyComputedStyles(e,i){var n,r,o;let s=i["background-image"];s&&this.addImageFetchers(s);let a=i["border-image-source"];a&&this.addImageFetchers(a);let h=i["list-style-image"];h&&this.addImageFetchers(h);let l=i["mask-image"];l&&this.addImageFetchers(l);let c=i["clip-path"];c&&this.addImageFetchers(c);let d=i.filter;d&&this.addImageFetchers(d);let p=i["shape-outside"];p&&this.addImageFetchers(p);let f=i["--viv-marker-content"];f&&this.addImageFetchers(f);let g=i.position===w.relative,m=((n=this.nodeContext)==null?void 0:n.parent)===null&&((r=this.sourceNode)==null?void 0:r.parentElement)===null&&!!((o=this.viewRoot)!=null&&o.parentElement),v=Object.keys(i);v.sort(du);let b,x;for(let C of v){if(pC[C])continue;let y=i[C];if(!(!y||y===Ae&&!ze(C))){if(y=y.visit(new Wy(this.xmldoc.url,this.documentURLTransformer)),y instanceof B)if(y.unit==="em"){let k=this.getEmUnitSize(C,b);k!=null&&(y=new B(y.num*k,"px"))}else if(y.unit==="lh"){let k=this.getLineHeightUnitSize(C,b,x);k!=null&&(y=new B(y.num*k,"px"))}else fd(y.unit)&&(y=Ld(y,this.context));if((C==="font-size"||C==="line-height")&&(C==="font-size"?b=y:x=y,this.viewport.layoutUnitAdj&&y instanceof B&&y.unit!=="%"&&y.unit!=="em"&&y.unit!=="lh"&&(y=new Sn(`calc(${y.toString()} - var(--viv-layoutUnitAdj))`))),Sw[C]||g&&Cw[C]){this.page.delayedItems.push(new hh(e,C,y));continue}m&&this.page.pageAreaElement&&Mn(C)?(R(this.page.pageAreaElement.parentElement.parentElement,C,y.toString()),C!=="writing-mode"&&C!=="direction"&&R(this.viewport.layoutBox,C,y.toString())):R(e,C,y.toString())}}}parsePlusLayoutUnitAdj(e){if(e.endsWith("px")){let i=parseFloat(e);if(!isNaN(i))return Math.round((i+this.viewport.layoutUnitAdj)*this.viewport.layoutUnitPerPixel)/this.viewport.layoutUnitPerPixel}return null}getFootnoteAreaInheritedMetrics(){var e,i;let n=(i=(e=this.page.pageAreaElement)==null?void 0:e.parentElement)==null?void 0:i.parentElement,r=n?this.viewport.window.getComputedStyle(n):null,o=r&&this.parsePlusLayoutUnitAdj(r.fontSize)||this.context.rootFontSize||this.context.initialFontSize,s=r&&this.parsePlusLayoutUnitAdj(r.lineHeight)||this.context.rootLineHeight||o*this.context.pref.lineHeight;return{fontSize:o,lineHeight:s}}getComputedFontMetrics(e,i){var n,r,o;let s=this.viewport.window.getComputedStyle(e),a=(n=this.parsePlusLayoutUnitAdj(s.fontSize))!=null?n:i.fontSize,h=(o=(r=this.parsePlusLayoutUnitAdj(s.lineHeight))!=null?r:i.lineHeight)!=null?o:a!=null?a*this.context.pref.lineHeight:null;return{fontSize:a,lineHeight:h}}getParentViewStyle(){var e,i,n;return((n=(i=(e=this.nodeContext)==null?void 0:e.parent)==null?void 0:i.viewNode)==null?void 0:n.nodeType)===1?this.viewport.window.getComputedStyle(this.nodeContext.parent.viewNode):null}getParentComputedMetrics(e){var i,n;return{fontSize:(i=this.computedStyleParentFontSizeOverride)!=null?i:e?this.parsePlusLayoutUnitAdj(e.fontSize):this.context.rootFontSize,lineHeight:(n=this.computedStyleParentLineHeightOverride)!=null?n:e?this.parsePlusLayoutUnitAdj(e.lineHeight):this.context.rootLineHeight}}getLineHeightUnitSize(e,i,n){var r,o,s;let a=this.getParentViewStyle(),h=this.getParentComputedMetrics(a),l=h.lineHeight;if(e==="line-height"||e==="font-size")return l;let c=null;if(n)if(n instanceof It||n instanceof B&&(n.unit==="em"||n.unit==="%"))c=n instanceof B&&n.unit==="%"?n.num/100:n.num;else{if(n instanceof B&&n.unit!=="lh"){let d=this.context.queryUnitSize(n.unit,!1);if(d!=null)return n.num*d}return null}if(c==null)for(let d=(o=(r=this.nodeContext)==null?void 0:r.parent)==null?void 0:o.viewNode;d&&d.nodeType===1;d=d.parentNode){let p=(s=d?.style)==null?void 0:s.lineHeight;if(p){/^[0-9.]+$/.test(p)&&(c=parseFloat(p));break}}if(c!=null){if(i&&!(i instanceof B))return null;let d=h.fontSize;if(i instanceof B){let p=Tl(i,d,this.context).num;return typeof p!="number"||isNaN(p)?null:c*p}else return d==null?null:c*d}return l}getEmUnitSize(e,i){let n=this.getParentViewStyle(),r=this.getParentComputedMetrics(n).fontSize;if(e==="font-size"||i==null)return r;if(i instanceof B){let o=Tl(i,r,this.context).num;if(typeof o=="number"&&!isNaN(o))return o}return null}applyPseudoelementStyle(e,i,n){if(e.after)return;let r=this.sourceNode,o=(e.shadowContext?e.shadowContext.styler:this.styler).getStyle(r,!1),s=lt(o,"_pseudos");if(!s||(o=s[i],!o))return;let a={};e.vertical=this.computeStyle(e.vertical,e.direction==="rtl",o,a);let h=a.content;At(h)&&(h.visit(new Wr(n,this.context,h,this.exprContentListener)),delete a.content),this.applyComputedStyles(n,a)}peelOff(e,i){let n=V("peelOff"),r=e.firstPseudo,o=e.offsetInNode,s=e.after;if(i>0)o+=i;else if(!s&&e.viewNode&&o==0){let f=e.viewNode.parentNode;f&&f.removeChild(e.viewNode)}let a=e.boxOffset+i,h=[],l=e;for(let f=e.parent;f&&f.firstPseudo===r;f=l.parent)h.push(l),l=f;let c=l.shadowSibling,d=h.length-1,p=null;return n.loop(()=>{for(;d>=0;){let f=h[d],g=p??l.parent,m=new en(f.sourceNode,g,a,(g??l).formattingContext);m.blockContainer=g&&Cs(g),d==0&&(m.offsetInNode=o,m.after=s),m.shadowType=f.shadowType,m.shadowContext=f.shadowContext,m.nodeShadow=f.nodeShadow,m.shadowSibling=f.shadowSibling?f.shadowSibling:c,c=null,p=m,d--;let v=this.setCurrent(m,!1);if(v.isPending())return v}return F(!1)}).then(()=>{n.finish(p??e.parent)}),n.result()}createElement(e,i){return e=="http://www.w3.org/1999/xhtml"?this.document.createElement(i):this.document.createElementNS(e,i)}applyFootnoteStyle(e,i,n){var r;let o={},s=[],a=this.footnoteStyle;if(this.cascadedPageStyle){let p=lt(this.cascadedPageStyle,Xs);p&&p.area&&(a=p.area)}let h=lt(a,"_pseudos");e=this.computeStyle(e,i,a,o);let l=this.getFootnoteAreaInheritedMetrics();!o["font-size"]&&l.fontSize!=null&&(o["font-size"]=new B(l.fontSize,"px")),delete o.content;let c=this.computedStyleParentFontSizeOverride,d=this.computedStyleParentLineHeightOverride;this.computedStyleParentFontSizeOverride=l.fontSize,this.computedStyleParentLineHeightOverride=l.lineHeight;try{this.applyComputedStyles(n,o);let p=this.getComputedFontMetrics(n,l);if(this.computedStyleParentFontSizeOverride=p.fontSize,this.computedStyleParentLineHeightOverride=p.lineHeight,h&&h.before){let f=h.before,g=!!ge(f,"display"),m={},v=this.createElement("http://www.w3.org/1999/xhtml","span");Mr(v,"before"),n.appendChild(v),this.computeStyle(e,i,f,m),g||(m.display=w.block);let b=ge(f,"content");if(b){let C=((r=this.sourceNode)==null?void 0:r.nodeType)===1?this.sourceNode:this.xmldoc.root;m.content=b.filterValue(new Yr(this.styler.cascade,C,this.styler.cascade.counterResolver,this.styler.elementWindow.currentStyle,"before")).evaluate(this.context,"content")}let x=m.content;if(At(x)){x.visit(new Wr(v,this.context,x,this.exprContentListener));let C=v.querySelectorAll("img[src]");for(let k=0;k<C.length;k++){let S=C[k],N=S.getAttribute("src");if(!N)continue;let L=Pt(S,N);s.push(L),this.page.fetchers.push(L)}let y=v.getAttribute("src");if(y){let k=v.querySelector("img");k||(k=this.document.createElement("img"),k.setAttribute("src",y),v.appendChild(k));let S=Pt(k,y);s.push(S),this.page.fetchers.push(S)}}delete m.content,this.applyComputedStyles(v,m)}}finally{this.computedStyleParentFontSizeOverride=c,this.computedStyleParentLineHeightOverride=d}return s.length?Hn(s).thenReturn(e):F(e)}processFragmentedBlockEdge(e){var i,n,r;let o=!e.inline&&e.after?e.parent:e,s=!1;if(e.inline&&e.after&&!e.shadowContext&&((i=e.sourceNode.nextSibling)==null?void 0:i.nodeType)===1){let h=e.sourceNode.nextSibling,l=(n=ge(this.styler.getStyle(h,!1),"display"))==null?void 0:n.value.toString();s=l&&!Wt(l)||h.getAttribute("data-math-typeset")==="true"&&/^\s*(\$\$|\\\[)/.test(h.textContent)}let a=0;for(let h=o;h;h=h.parent){if(((r=h.viewNode)==null?void 0:r.nodeType)!==1)continue;let l=h.viewNode;if(l.style)if(h.inline){if(Ct(l,"inline-end"),Fn(l)){let c=h.vertical?l.offsetWidth:l.offsetHeight;Ct(l,"clone"),(h.vertical?l.offsetWidth:l.offsetHeight)>c&&this.fixClonedBoxDecorationOverflow(l)}}else{let c=e.vertical?"width":"height";if(Ni(l,c)&&R(l,c,""),Ct(l,"block-end"),!a++&&h!==o){let{textAlign:d}=this.viewport.window.getComputedStyle(l);if(d==="justify"&&!s){let p=this.createChildAnonymousBlockIfNeeded(l);p?p!==l?Np(p,["block-start","text-start","block-end","text-end","justify"]):(Ct(l,"text-end"),Ct(l,"justify")):Ct(l,"text-end")}else Ct(l,"text-end")}Fn(l)&&Ct(l,"clone"),Na(l,"block-end")}}}fixClonedBoxDecorationOverflow(e){let i=this.viewport.window.getComputedStyle(e),n=parseFloat(i.paddingInlineEnd),r=parseFloat(i.borderInlineEndWidth),o=-(n+r);isNaN(o)||(e.style.marginInlineEnd=`${o}px`)}createChildAnonymousBlockIfNeeded(e){let i=o=>{let{display:s,position:a,float:h}=this.viewport.window.getComputedStyle(o);if(o.localName==="ruby"||tn[o.localName])return!1;if(o.localName==="br")return!0;if((s==="inline"||s==="contents")&&o.hasChildNodes()){let l=o.lastElementChild;if(l&&(!l.nextSibling||l.nextSibling===o.lastChild&&Ee(l.nextSibling))){let c=i(l);if(c||c===null)return c}for(let c=l?.previousElementSibling;c;c=c.previousElementSibling){let d=i(c);if(d||d===null)return null}return!1}if(s==="none"||a==="absolute"||a==="fixed"||h&&h!=="none"||o.hasAttribute(Un)){let l=o.previousElementSibling;return l&&(l.nextSibling===o||l.nextSibling===o.previousSibling&&Ee(l.nextSibling))?i(l):!1}return!(!s||Wt(s))},n=null;for(let o=e.lastElementChild;o;o=o.previousElementSibling){let s=i(o);if(s){n=o;break}if(s===null)return null}if(!n)return e;if(n===e.lastElementChild&&(!n.nextSibling||n.nextSibling===e.lastChild&&Ee(n.nextSibling)))return null;let r=e.ownerDocument.createElement("span");r.className="viv-anonymous-block";for(let o=n.nextSibling,s=null;o;o=s)s=o.nextSibling,r.appendChild(o);return e.appendChild(r),r}convertLengthToPx(e,i,n){let r=e.num,o=e.unit;if(sy(o)){let s=i;for(;s&&s.nodeType!==1;)s=s.parentNode;let a=parseFloat(n.getElementComputedStyle(s)["font-size"]);return Ah(e,a,this.context).num}else{let s=this.context.queryUnitSize(o,!1);return s?r*s:e}}isSameNodePositionStep(e,i){if(e.shadowContext){if(!i.shadowContext)return!1;let n=e.node.nodeType===1?e.node:e.node.parentElement,r=i.node.nodeType===1?i.node:i.node.parentElement;return e.shadowContext.owner===i.shadowContext.owner&&Qt(n)===Qt(r)}else return e.node===i.node}isSameNodePosition(e,i){return e.offsetInNode===i.offsetInNode&&e.after==i.after&&e.steps.length===i.steps.length&&e.steps.every((n,r)=>{let o=i.steps[r];return this.isSameNodePositionStep(n,o)})}isPseudoelement(e){return!!Qt(e)}};u(Vl,"SVG_URL_ATTRIBUTES",["color-profile","clip-path","cursor","filter","marker","marker-start","marker-end","marker-mid","fill","stroke","mask"]),u(Vl,"FOOTNOTE_CALL_OWNER_ATTR","data-viv-footnote-call-owner");var dC=Vl,pC={"float-min-wrap-block":!0,"float-reference":!0,"flow-into":!0,"flow-linger":!0,"flow-options":!0,"flow-priority":!0,"footnote-display":!0,"footnote-policy":!0,"margin-break":!0,page:!0},fC=class{constructor(t){u(this,"layoutBox"),u(this,"window"),u(this,"pixelRatio"),u(this,"scaleRatio"),u(this,"layoutUnitPerPixel"),this.layoutBox=t.layoutBox,this.window=t.window,this.pixelRatio=t.pixelRatio,this.scaleRatio=t.scaleRatio,this.layoutUnitPerPixel=t.layoutUnitPerPixel}subtractOffsets(t,e){let i=e.left,n=e.top;return{left:t.left-i,top:t.top-n,right:t.right-i,bottom:t.bottom-n,width:t.width,height:t.height}}getRangeClientRects(t){let e=t.getClientRects(),i=this.layoutBox.getBoundingClientRect();return Array.from(e).map(n=>this.subtractOffsets(n,i))}getElementClientRect(t){let e=t.getBoundingClientRect();if(e.left===0&&e.top===0&&e.right===0&&e.bottom===0)return e;let i=this.layoutBox.getBoundingClientRect();return this.subtractOffsets(e,i)}getElementComputedStyle(t){return this.window.getComputedStyle(t,null)}adjustLengthValue(t){return this.layoutUnitPerPixel?Math.floor(t*this.layoutUnitPerPixel)/this.layoutUnitPerPixel:t}},Gs=class{constructor(t,e,i,n,r,o){if(u(this,"window",t),u(this,"fontSize",e),u(this,"pixelRatio",i),u(this,"document"),u(this,"root"),u(this,"outerZoomBox"),u(this,"contentContainer"),u(this,"layoutBox"),u(this,"width"),u(this,"height"),u(this,"scaleRatio",1),u(this,"layoutUnitPerPixel",64),u(this,"layoutUnitAdj",0),this.document=t.document,this.root=n||this.document.body,this.root.hasAttribute("data-vivliostyle-toc-box")){this.outerZoomBox=this.contentContainer=this.layoutBox=this.root,this.width=r||this.root.clientWidth,this.height=o||this.root.clientHeight;return}let s=this.root.firstElementChild;s||(s=this.document.createElement("div"),s.setAttribute("data-vivliostyle-outer-zoom-box","true"),s.role="presentation",this.root.appendChild(s));let a=s.firstElementChild;switch(a||(a=this.document.createElement("div"),a.setAttribute("data-vivliostyle-spread-container","true"),a.role="presentation",s.appendChild(a)),i>0&&CSS.supports("zoom","8")&&(R(this.root,"--viv-outputPixelRatio",`${i}`),R(this.root,"--viv-devicePixelRatio",`${t.devicePixelRatio}`),this.scaleRatio=i/t.devicePixelRatio),no){case"chromium":this.layoutUnitPerPixel=64*(this.pixelRatio||t.devicePixelRatio),this.layoutUnitAdj=1/this.layoutUnitPerPixel;break;case"firefox":this.layoutUnitPerPixel=60,this.layoutUnitAdj=1/this.layoutUnitPerPixel;break;default:this.layoutUnitPerPixel=64,this.layoutUnitAdj=0}this.layoutUnitAdj&&R(this.root,"--viv-layoutUnitAdj",`${this.layoutUnitAdj}px`);let h=s.nextElementSibling;h||(h=this.document.createElement("div"),h.setAttribute("data-vivliostyle-layout-box","true"),h.role="presentation",this.root.appendChild(h)),this.outerZoomBox=s,this.contentContainer=a,this.layoutBox=h,this.width=r||parseFloat(t.getComputedStyle(this.root).width)||this.root.offsetWidth||t.innerWidth,this.height=o||parseFloat(t.getComputedStyle(this.root).height)||this.root.offsetHeight||t.innerHeight;let l={width:794,height:1056},c=!t.outerWidth&&!t.outerHeight||/Headless/.test(navigator.userAgent)||navigator.webdriver&&t.innerWidth===800&&t.innerHeight===600;(!this.width||!r&&c)&&(this.width=l.width),(!this.height||!o&&c)&&(this.height=l.height)}resetZoom(){R(this.outerZoomBox,"width",""),R(this.outerZoomBox,"height",""),R(this.contentContainer,"width",""),R(this.contentContainer,"height",""),R(this.contentContainer,"transform","")}zoom(t,e,i){R(this.root,"--viv-outputScale",`${i}`),R(this.outerZoomBox,"width",`${t*i}px`),R(this.outerZoomBox,"height",`${e*i}px`),R(this.contentContainer,"width",`${t}px`),R(this.contentContainer,"height",`${e}px`)}clear(){let t=this.root;for(;t.lastChild;)t.removeChild(t.lastChild)}};function _r(t,e){if(t instanceof Be)for(let i of t.values)_r(i,e);else if(t instanceof et){let i=$r(t.url);e.fetchers.push(Pt(new Image,i))}else if(t instanceof Vt)for(let i of t.values)_r(i,e);else if(t instanceof ee)for(let i of t.values)_r(i,e)}var gC=1,da=class{constructor(t,e,i,n,r){u(this,"name",e),u(this,"pseudoName",i),u(this,"classes",n),u(this,"parent",r),u(this,"specified",{}),u(this,"children",[]),u(this,"pageMaster",null),u(this,"index",0),u(this,"key"),u(this,"_scope"),this._scope=t,this.key=`p${gC++}`,r&&(this.index=r.children.length,r.children.push(this))}get scope(){return this._scope}createInstance(t,e,i){throw new Error("E_UNEXPECTED_CALL")}clone(t){throw new Error("E_UNEXPECTED_CALL")}copySpecified(t){let e=this.specified,i=t.specified;for(let n in e)Object.prototype.hasOwnProperty.call(e,n)&&(i[n]=e[n])}cloneChildren(t){for(let e=0;e<this.children.length;e++)this.children[e].clone({parent:t})}},mC=class extends da{constructor(t){super(t,null,null,[],null),this.specified.width=new X(so,0),this.specified.height=new X(ao,0)}},Pc=class extends qa{constructor(t,e){super(t,n),u(this,"pageMaster",e);let i=this;function n(r,o){let s=r.match(/^([^.]+)\.([^.]+)$/);if(s){let a=i.pageMaster.keyMap[s[1]];if(a){let h=this.lookupInstance(a);if(h)return o?h.resolveFunc(s[2]):h.resolveName(s[2])}}return null}}},Ug=class Wg extends da{constructor(e,i,n,r,o,s,a,h=null){super(e,i,n,r,o),u(this,"condition",s),u(this,"specificity",a),u(this,"layer",h),u(this,"keyMap",{}),e instanceof Pc||(this._scope=new Pc(e,this)),this.pageMaster=this,this.specified.width=new X(so,0),this.specified.height=new X(ao,0),this.specified["wrap-flow"]=new X(w.auto,0),this.specified.position=new X(w.relative,0),this.specified.overflow=new X(w.visible,0)}createInstance(e,i,n){return new Yg(e,this)}clone(e){let i=new Wg(this.scope,this.name,e.pseudoName||this.pseudoName,this.classes,this.parent,this.condition,this.specificity,this.layer);return this.copySpecified(i),this.cloneChildren(i),i}resetScope(){this.scope.pageMaster=this}},Gg=class jg extends da{constructor(e,i,n,r,o){super(e,i,n,r,o),this.pageMaster=o.pageMaster,i&&(this.pageMaster.keyMap[i]=this.key),this.specified["wrap-flow"]=new X(w.auto,0)}createInstance(e,i,n){return new xC(e,this)}clone(e){let i=new jg(e.parent.scope,this.name,this.pseudoName,this.classes,e.parent);return this.copySpecified(i),this.cloneChildren(i),i}},vo=class Xg extends da{constructor(e,i,n,r,o){super(e,i,n,r,o),this.pageMaster=o.pageMaster,i&&(this.pageMaster.keyMap[i]=this.key)}createInstance(e,i,n){return new Yn(e,this)}clone(e){let i=new Xg(e.parent.scope,this.name,this.pseudoName,this.classes,e.parent);return this.copySpecified(i),this.cloneChildren(i),i}};function yC(t,e,i){return!e||Z(e)?new it(t,i):e.toExpr(t,t.zero)}function xe(t,e,i){return!e||e===w.auto||Z(e)?null:e.toExpr(t,i)}function vC(t,e,i){return!e||e===w.normal||Z(e)?null:e.toExpr(t,i)}function Tt(t,e,i){return!e||e===w.auto||Z(e)?t.zero:e.toExpr(t,i)}function Ec(t,e,i){return!e||Z(e)?t.zero:e===w.auto?null:e.toExpr(t,i)}function ai(t,e,i,n){return!e||i===w.none||Z(e)?t.zero:e.toExpr(t,n)}function qg(t,e,i){return!e||Z(e)?i:e===w._true?t._true:e===w._false?t._false:e.toExpr(t,t.zero)}var pa=class{constructor(t,e){u(this,"parentInstance",t),u(this,"pageBox",e),u(this,"cascaded",{}),u(this,"style",{}),u(this,"autoWidth"),u(this,"autoHeight"),u(this,"children",[]),u(this,"isAutoWidth",!1),u(this,"isAutoHeight",!1),u(this,"isTopDependentOnAutoHeight",!1),u(this,"isRightDependentOnAutoWidth",!1),u(this,"calculatedWidth",0),u(this,"calculatedHeight",0),u(this,"pageMasterInstance",null),u(this,"namedValues",{}),u(this,"namedFuncs",{}),u(this,"vertical",!1),u(this,"rtl",!1),u(this,"suppressEmptyBoxGeneration",!1),u(this,"borderBoxSizing",!1),t&&t.children.push(this);let i=this.pageBox.scope;this.autoWidth=new be(i,()=>this.calculatedWidth,"autoWidth"),this.autoHeight=new be(i,()=>this.calculatedHeight,"autoHeight")}reset(){this.calculatedWidth=0,this.calculatedHeight=0}addNamedValues(t,e){let i=this.resolveName(t),n=this.resolveName(e);if(!i||!n)throw new Error("E_INTERNAL");return re(this.pageBox.scope,i,n)}resolveName(t){let e=this.namedValues[t];if(e)return e;let i=this.style[t];switch(i&&(e=i.toExpr(this.pageBox.scope,this.pageBox.scope.zero)),t){case"margin-left-edge":e=this.resolveName("left");break;case"margin-top-edge":e=this.resolveName("top");break;case"margin-right-edge":e=this.addNamedValues("border-right-edge","margin-right");break;case"margin-bottom-edge":e=this.addNamedValues("border-bottom-edge","margin-bottom");break;case"border-left-edge":e=this.addNamedValues("margin-left-edge","margin-left");break;case"border-top-edge":e=this.addNamedValues("margin-top-edge","margin-top");break;case"border-right-edge":e=this.addNamedValues("padding-right-edge","border-right-width");break;case"border-bottom-edge":e=this.addNamedValues("padding-bottom-edge","border-bottom-width");break;case"padding-left-edge":e=this.addNamedValues("border-left-edge","border-left-width");break;case"padding-top-edge":e=this.addNamedValues("border-top-edge","border-top-width");break;case"padding-right-edge":e=this.addNamedValues("right-edge","padding-right");break;case"padding-bottom-edge":e=this.addNamedValues("bottom-edge","padding-bottom");break;case"left-edge":e=this.addNamedValues("padding-left-edge","padding-left");break;case"top-edge":e=this.addNamedValues("padding-top-edge","padding-top");break;case"right-edge":e=this.addNamedValues("left-edge","width");break;case"bottom-edge":e=this.addNamedValues("top-edge","height");break}if(!e){let n;if(t=="extent")n=this.vertical?"width":"height";else if(t=="measure")n=this.vertical?"height":"width";else{let r=this.vertical?Xf:qf;n=t;for(let o in r)n=n.replace(o,r[o])}n!=t&&(e=this.resolveName(n))}return e&&(this.namedValues[t]=e),e}resolveFunc(t){let e=this.namedFuncs[t];if(e)return e;if(t==="columns"){let i=this.pageBox.scope,n=new Ed(i,0),r=this.resolveName("column-count"),o=this.resolveName("column-width"),s=this.resolveName("column-gap");e=we(i,qo(i,new Er(i,"min",[n,r]),re(i,o,s)),s)}return e&&(this.namedFuncs[t]=e),e}initEnabled(){let t=this.pageBox.scope,e=this.style,i=qg(t,e.enabled,t._true),n=xe(t,e.page,t.zero);if(n){let s=new Qe(t,"page-number");i=Xt(t,i,new rh(t,n,s))}let r=xe(t,e["min-page-width"],t.zero);r&&(i=Xt(t,i,new Za(t,new Qe(t,"page-width"),r)));let o=xe(t,e["min-page-height"],t.zero);o&&(i=Xt(t,i,new Za(t,new Qe(t,"page-height"),o))),i=this.boxSpecificEnabled(i),e.enabled=new j(i)}boxSpecificEnabled(t){return t}initHorizontal(){let t=this.pageBox.scope,e=this.style,i=this.parentInstance?this.parentInstance.style.width.toExpr(t,null):null,n=xe(t,e.left,i),r=xe(t,e["margin-left"],i),o=ai(t,e["border-left-width"],e["border-left-style"],i),s=Tt(t,e["padding-left"],i),a=xe(t,e.width,i),h=xe(t,e["max-width"],i),l=Tt(t,e["padding-right"],i),c=ai(t,e["border-right-width"],e["border-right-style"],i),d=xe(t,e["margin-right"],i),p=xe(t,e.right,i),f=re(t,o,s),g=re(t,o,l);if(n&&p&&a){let b=we(t,i,re(t,a,re(t,re(t,n,f),g)));r?d?p=we(t,b,d):d=we(t,b,re(t,p,r)):(b=we(t,b,p),d?r=we(t,b,d):(r=qo(t,b,new it(t,.5)),d=r))}else{r||(r=t.zero),d||(d=t.zero),!n&&!p&&!a&&(n=t.zero),!n&&!a?(a=this.autoWidth,this.isAutoWidth=!0):!n&&!p?n=t.zero:!a&&!p&&(a=this.autoWidth,this.isAutoWidth=!0);let b=we(t,i,re(t,re(t,r,f),re(t,d,g)));this.isAutoWidth&&(h||(h=we(t,b,n||p)),!this.vertical&&(xe(t,e["column-width"],null)||xe(t,e["column-count"],null))&&(a=h,this.isAutoWidth=!1)),n?a?p||(p=we(t,b,re(t,n,a))):a=we(t,b,re(t,n,p)):n=we(t,b,re(t,p,a))}let m=e["snap-width"]||(this.parentInstance?this.parentInstance.style["snap-width"]:null),v=Tt(t,m,i);e.left=new j(n),e["margin-left"]=new j(r),e["border-left-width"]=new j(o),e["padding-left"]=new j(s),e.width=new j(a),e["max-width"]=new j(h||a),e["padding-right"]=new j(l),e["border-right-width"]=new j(c),e["margin-right"]=new j(d),e.right=new j(p),e["snap-width"]=new j(v)}initVertical(){let t=this.pageBox.scope,e=this.style,i=this.parentInstance?this.parentInstance.style.width.toExpr(t,null):null,n=this.parentInstance?this.parentInstance.style.height.toExpr(t,null):null,r=xe(t,e.top,n),o=xe(t,e["margin-top"],i),s=ai(t,e["border-top-width"],e["border-top-style"],i),a=Tt(t,e["padding-top"],i),h=xe(t,e.height,n),l=xe(t,e["max-height"],n),c=Tt(t,e["padding-bottom"],i),d=ai(t,e["border-bottom-width"],e["border-bottom-style"],i),p=xe(t,e["margin-bottom"],i),f=xe(t,e.bottom,n),g=re(t,s,a),m=re(t,d,c);if(r&&f&&h){let x=we(t,n,re(t,h,re(t,re(t,r,g),m)));o?p?f=we(t,x,o):p=we(t,x,re(t,f,o)):(x=we(t,x,f),p?o=we(t,x,p):(o=qo(t,x,new it(t,.5)),p=o))}else{o||(o=t.zero),p||(p=t.zero),!r&&!f&&!h&&(r=t.zero),!r&&!h?(h=this.autoHeight,this.isAutoHeight=!0):!r&&!f?r=t.zero:!h&&!f&&(h=this.autoHeight,this.isAutoHeight=!0);let x=we(t,n,re(t,re(t,o,g),re(t,p,m)));this.isAutoHeight&&(l||(l=we(t,x,r||f)),this.vertical&&(xe(t,e["column-width"],null)||xe(t,e["column-count"],null))&&(h=l,this.isAutoHeight=!1)),r?h?f||(f=we(t,x,re(t,r,h))):h=we(t,x,re(t,f,r)):r=we(t,x,re(t,f,h))}let v=e["snap-height"]||(this.parentInstance?this.parentInstance.style["snap-height"]:null),b=Tt(t,v,i);e.top=new j(r),e["margin-top"]=new j(o),e["border-top-width"]=new j(s),e["padding-top"]=new j(a),e.height=new j(h),e["max-height"]=new j(l||h),e["padding-bottom"]=new j(c),e["border-bottom-width"]=new j(d),e["margin-bottom"]=new j(p),e.bottom=new j(f),e["snap-height"]=new j(b)}initColumns(){let t=this.pageBox.scope,e=this.style,i=xe(t,e[this.vertical?"height":"width"],null),n=xe(t,e["column-width"],i),r=xe(t,e["column-count"],null),o=vC(t,e["column-gap"],null);o||(o=new oo(t,1,"em")),n&&!r&&(r=new Er(t,"floor",[Ka(t,re(t,i,o),re(t,n,o))]),r=new Er(t,"max",[t.one,r])),r||(r=t.one),n=we(t,Ka(t,re(t,i,o),r),o),e["column-width"]=new j(n),e["column-count"]=new j(r),e["column-gap"]=new j(o)}depends(t,e,i){return this.style[t].toExpr(this.pageBox.scope,null).depend(e,i)}resolveStyle(t){var e;let i=this.pageBox.scope,n=this.style,r=this.parentInstance?this.parentInstance.getActiveRegions(t):null,o=_l(this.cascaded,t,r,!1);this.vertical=Ml(o,t,this.parentInstance?this.parentInstance.vertical:!1),this.rtl=mg(o,t,this.parentInstance?this.parentInstance.rtl:!1),this.borderBoxSizing=((e=o["box-sizing"])==null?void 0:e.value)===w.border_box;let s=!!(t instanceof Xh&&t.currentLayoutPosition&&new Qe(i,"left-page").evaluate(t));vg(o,n,this.vertical,this.rtl,s,(a,h)=>h.value)}init(t){this.resolveStyle(t),this.initHorizontal(),this.initVertical(),this.initColumns(),this.initEnabled()}register(t){t.registerInstance(this.pageBox.key,this)}getProp(t,e){var i,n;let r=this.style[e];return!r&&Mn(e)&&this.pageMasterInstance instanceof to&&(e==="font-size"&&t.isRelativeRootFontSize&&t.rootFontSize?r=new B(t.rootFontSize,"px"):r=(n=((i=t.styler)==null?void 0:i.rootStyle)[e])==null?void 0:n.value),r&&(r=Hs(t,r,e)),r}getPropAsNumber(t,e){var i,n;let r=this.style[e];if(r){let o=/\b(height|top|bottom)\b/.test(e)?(i=t.pageAreaHeight)!=null?i:t.pageHeight():(n=t.pageAreaWidth)!=null?n:t.pageWidth();r=Hs(t,r,e,o)}return ct(r,t)}getSpecial(t,e){let i=Kf(this.cascaded,e);if(i){let n=[];for(let r=0;r<i.length;r++){let o=i[r].evaluate(t,"");o&&o!==Ae&&n.push(o)}if(n.length)return n}return null}getActiveRegions(t){let e=this.getSpecial(t,"region-id");if(e){let i=[];for(let n=0;n<e.length;n++)i[n]=e[n].toString();return i}return null}propagateProperty(t,e,i,n){this.propagatePropertyToElement(t,e.element,i,n)}propagatePropertyToElement(t,e,i,n){let r=this.getProp(t,i);if(r){r.isNumeric()&&fd(r.unit)&&(r=Ld(r,t)),i==="font-family"&&(r=n.filterFontFamily(r));let o=e.parentElement;(i.startsWith("background")||i==="z-index")&&o!=null&&o.hasAttribute("data-vivliostyle-bleed-box")&&(e=o),R(e,i,r.toString())}}propagateDelayedProperty(t,e,i,n){let r=this.getProp(t,i);r&&n.push(new hh(e.element,i,r))}assignLeftPosition(t,e){let i=this.getPropAsNumber(t,"left"),n=this.getPropAsNumber(t,"margin-left"),r=this.getPropAsNumber(t,"padding-left"),o=this.getPropAsNumber(t,"border-left-width"),s=this.getPropAsNumber(t,"width");e.setHorizontalPosition(i,s),R(e.element,"margin-left",`${n}px`),R(e.element,"padding-left",`${r}px`),R(e.element,"border-left-width",`${o}px`),e.marginLeft=n,e.borderLeft=o,e.paddingLeft=r}assignRightPosition(t,e){let i=this.getPropAsNumber(t,"right"),n=this.getPropAsNumber(t,"snap-height"),r=this.getPropAsNumber(t,"margin-right"),o=this.getPropAsNumber(t,"padding-right"),s=this.getPropAsNumber(t,"border-right-width");if(R(e.element,"margin-right",`${r}px`),R(e.element,"padding-right",`${o}px`),R(e.element,"border-right-width",`${s}px`),e.marginRight=r,e.borderRight=s,this.vertical&&n>0){let a=i+e.getInsetRight(),h=a-Math.floor(a/n)*n;h>0&&(e.snapOffsetX=n-h,o+=e.snapOffsetX)}e.paddingRight=o,e.snapWidth=n}assignTopPosition(t,e){let i=this.getPropAsNumber(t,"snap-height"),n=this.getPropAsNumber(t,"top"),r=this.getPropAsNumber(t,"margin-top"),o=this.getPropAsNumber(t,"padding-top"),s=this.getPropAsNumber(t,"border-top-width");if(e.top=n,e.marginTop=r,e.borderTop=s,e.snapHeight=i,!this.vertical&&i>0){let a=n+e.getInsetTop(),h=a-Math.floor(a/i)*i;h>0&&(e.snapOffsetY=i-h,o+=e.snapOffsetY)}e.paddingTop=o,R(e.element,"top",`${n}px`),R(e.element,"margin-top",`${r}px`),R(e.element,"padding-top",`${o}px`),R(e.element,"border-top-width",`${s}px`)}assignBottomPosition(t,e){let i=this.getPropAsNumber(t,"margin-bottom"),n=this.getPropAsNumber(t,"padding-bottom"),r=this.getPropAsNumber(t,"border-bottom-width"),o=this.getPropAsNumber(t,"height")-e.snapOffsetY;R(e.element,"height",`${o}px`),R(e.element,"margin-bottom",`${i}px`),R(e.element,"padding-bottom",`${n}px`),R(e.element,"border-bottom-width",`${r}px`),e.height=o-e.snapOffsetY,e.marginBottom=i,e.borderBottom=r,e.paddingBottom=n}assignBeforePosition(t,e){this.vertical?this.assignRightPosition(t,e):this.assignTopPosition(t,e)}assignAfterPosition(t,e){this.vertical?this.assignLeftPosition(t,e):this.assignBottomPosition(t,e)}assignStartEndPosition(t,e){this.vertical?(this.assignTopPosition(t,e),this.assignBottomPosition(t,e)):(this.assignRightPosition(t,e),this.assignLeftPosition(t,e))}sizeWithMaxHeight(t,e){R(e.element,"border-top-width","0px");let i=this.getPropAsNumber(t,"max-height");this.isTopDependentOnAutoHeight?e.setVerticalPosition(0,i):(this.assignTopPosition(t,e),i-=e.snapOffsetY,e.height=i,R(e.element,"height",`${i}px`))}sizeWithMaxWidth(t,e){R(e.element,"border-left-width","0px");let i=this.getPropAsNumber(t,"max-width");if(this.isRightDependentOnAutoWidth)e.setHorizontalPosition(0,i);else{this.assignRightPosition(t,e),i-=e.snapOffsetX,e.width=i;let n=this.getPropAsNumber(t,"right");R(e.element,"right",`${n}px`),R(e.element,"width",`${i}px`)}}prepareContainer(t,e,i,n,r){(!this.parentInstance||this.vertical!=this.parentInstance.vertical)&&R(e.element,"writing-mode",this.vertical?"vertical-rl":"horizontal-tb"),(!this.parentInstance||this.rtl!=this.parentInstance.rtl)&&R(e.element,"direction",this.rtl?"rtl":"ltr"),(this.vertical?this.isAutoWidth:this.isAutoHeight)?this.vertical?this.sizeWithMaxWidth(t,e):this.sizeWithMaxHeight(t,e):(this.assignBeforePosition(t,e),this.assignAfterPosition(t,e)),(this.vertical?this.isAutoHeight:this.isAutoWidth)?this.vertical?this.sizeWithMaxHeight(t,e):this.sizeWithMaxWidth(t,e):this.assignStartEndPosition(t,e);for(let o=0;o<Nc.length;o++)this.propagateProperty(t,e,Nc[o],n)}transferContentProps(t,e,i,n){for(let r=0;r<Ic.length;r++)this.propagateProperty(t,e,Ic[r],n);if(this.style["text-overflow"]){let r=e.element.firstElementChild;R(r,"text-overflow","inherit"),R(r,"overflow","inherit")}}transferSingleUriContentProps(t,e,i){let n=()=>{var o,s;let a=(s=(o=this.cascaded.width)!=null?o:this.cascaded[this.vertical?"block-size":"inline-size"])==null?void 0:s.value;return!!a&&a!==w.auto&&!Z(a)},r=()=>{var o,s;let a=(s=(o=this.cascaded.height)!=null?o:this.cascaded[this.vertical?"inline-size":"block-size"])==null?void 0:s.value;return!!a&&a!==w.auto&&!Z(a)};for(let o=0;o<Ac.length;o++){let s=Ac[o];if(s==="width"||s==="height"){if(s==="width"&&!n()||s==="height"&&!r())continue;R(e,s,"100%");continue}this.propagatePropertyToElement(t,e,s,i)}}finishContainer(t,e,i,n,r,o,s){var a,h,l,c,d,p,f,g,m,v,b,x;this.vertical?this.calculatedWidth=e.computedBlockSize+e.snapOffsetX:this.calculatedHeight=e.computedBlockSize+e.snapOffsetY;let C=(this.vertical||!n)&&this.isAutoHeight,y=(!this.vertical||!n)&&this.isAutoWidth,k=null;if(y||C){y&&R(e.element,"width","auto"),C&&R(e.element,"height","auto");let S=n&&ks(n);S&&na(n),k=o.getElementClientRect(n?n.element:e.element),S&&ch(n),y&&(this.calculatedWidth=Math.ceil(k.right-k.left-e.paddingLeft-e.borderLeft-e.paddingRight-e.borderRight),this.vertical&&(this.calculatedWidth+=e.snapOffsetX)),C&&(this.calculatedHeight=k.bottom-k.top-e.paddingTop-e.borderTop-e.paddingBottom-e.borderBottom,this.vertical||(this.calculatedHeight+=e.snapOffsetY))}if((this.vertical?this.isAutoHeight:this.isAutoWidth)&&this.assignStartEndPosition(t,e),(this.vertical?this.isAutoWidth:this.isAutoHeight)&&((this.vertical?this.isRightDependentOnAutoWidth:this.isTopDependentOnAutoHeight)&&this.assignBeforePosition(t,e),this.assignAfterPosition(t,e)),r>1){let S=this.getPropAsNumber(t,"column-rule-width"),N=this.getProp(t,"column-rule-style"),L=this.getProp(t,"column-rule-color");if(S>0&&N&&N!=w.none&&L!=w.transparent){let I=this.getPropAsNumber(t,"column-gap"),D=this.vertical?e.height:e.width,J=parseFloat(this.vertical?(a=n?.element.style.left)!=null?a:"":(h=n?.element.style.top)!=null?h:""),te=e.getPaddingRect(),P=n,M=this.vertical?"border-top":"border-left";for(let A=1;A<r;A++){let H=this.vertical?(D+I)*A/r-I/2+e.paddingTop-S/2:(D+I)*A/r-I/2+e.paddingLeft-S/2,z=this.vertical?te.y1+H+S/2:te.x1+H+S/2,E=(p=(d=(c=(l=P.pageFloatLayoutContext)==null?void 0:l.parent)==null?void 0:c.getBlockEndEdgeOfBlockStartFloats)==null?void 0:d.call(c,z))!=null?p:NaN,O=(v=(m=(g=(f=P.pageFloatLayoutContext)==null?void 0:f.parent)==null?void 0:g.getBlockStartEdgeOfBlockEndFloats)==null?void 0:m.call(g,z))!=null?v:NaN,T=isFinite(E)?this.vertical?E-te.x1:E-te.y1:NaN,$=isFinite(O)?this.vertical?O-te.x1:O-te.y1:NaN,G=parseFloat(this.vertical?(b=n?.element.style.width)!=null?b:"":(x=n?.element.style.height)!=null?x:""),q=G>0?G:this.vertical?n.width:n.height,Q=Math.max(J>0?J:0,0),oe=Q+q,se=Math.max(Q,isFinite(this.vertical?$:T)?Math.max(0,this.vertical?$:T):0),me=Math.min(oe,isFinite(this.vertical?T:$)?Math.max(0,this.vertical?T:$):oe),Me=Math.max(0,me-se),ue=e.element.ownerDocument.createElement("div");R(ue,"position","absolute"),R(ue,this.vertical?"left":"top",`${se}px`),R(ue,this.vertical?"top":"left",`${H}px`),R(ue,this.vertical?"height":"width","0px"),R(ue,this.vertical?"width":"height",`${Me}px`),R(ue,M,`${S}px ${N.toString()}${L?` ${L.toString()}`:""}`),e.element.insertBefore(ue,e.element.firstChild)}}}for(let S=0;S<Tc.length;S++)this.propagateProperty(t,e,Tc[S],s);for(let S of wC){let N=this.getProp(t,S);N&&_r(N,i)}for(let S=0;S<Fc.length;S++)this.propagateDelayedProperty(t,e,Fc[S],i.delayedItems)}buildCascadedStyle(t){let e=this.cascaded,i=this.pageBox.specified;for(let n in i)this instanceof to&&this.pageBox.pseudoName=="vivliostyle-page-rule-master"&&(n==="writing-mode"||n==="direction")||Ii(n)&&Bi(e,n,ge(i,n));if(this.pageBox.pseudoName==Uh)for(let n in t)(n.match(/^background-/)||n=="writing-mode")&&(e[n]=t[n]);if(this.pageBox.pseudoName=="layout-host")for(let n in t)!n.match(/^background-/)&&n!="writing-mode"&&(e[n]=t[n])}resolveContent(t){let e=this.cascaded,i=e.content;if(i){let n=Array.from(t.lastCounterChanges),r={...t.lastCounterChangeTypes};t.counterScoping.push(null),t.pushCounters(e,e),e.content=i.filterValue(new Yr(t,null,t.counterResolver,e)),t.popCounters(),t.popCounters(),t.lastCounterChanges=n,t.lastCounterChangeTypes=r}}applyCascadeAndInit(t,e){this.buildCascadedStyle(e),t.pushRule(this.pageBox.classes,null,this.cascaded),this.resolveContent(t),this.init(t.context),this.register(t.context);for(let i of this.pageBox.children)i.createInstance(this,t.context,e).applyCascadeAndInit(t,e);t.popRule()}resolveAutoSizing(t){this.isAutoWidth&&(this.isRightDependentOnAutoWidth=this.depends("right",this.autoWidth,t)||this.depends("margin-right",this.autoWidth,t)||this.depends("border-right-width",this.autoWidth,t)||this.depends("padding-right",this.autoWidth,t)),this.isAutoHeight&&(this.isTopDependentOnAutoHeight=this.depends("top",this.autoHeight,t)||this.depends("margin-top",this.autoHeight,t)||this.depends("border-top-width",this.autoHeight,t)||this.depends("padding-top",this.autoHeight,t));for(let e of this.children)e.resolveAutoSizing(t)}},Nc=["border-left-style","border-right-style","border-top-style","border-bottom-style","border-left-color","border-right-color","border-top-color","border-bottom-color","box-sizing","outline-style","outline-color","outline-width","outline-offset","overflow","visibility"],Tc=["border-top-left-radius","border-top-right-radius","border-bottom-right-radius","border-bottom-left-radius","border-start-start-radius","border-start-end-radius","border-end-start-radius","border-end-end-radius","border-image-source","border-image-slice","border-image-width","border-image-outset","border-image-repeat","background-attachment","background-color","background-image","background-repeat","background-position","background-position-x","background-position-y","background-clip","background-origin","background-size","box-shadow","opacity","z-index","background-blend-mode","isolation","mix-blend-mode","filter"],wC=["background-image","border-image-source","filter"],Ic=["color","font-family","font-size","font-style","font-weight","line-height","letter-spacing","text-align","text-align-last","text-decoration","text-indent","text-transform","white-space","text-wrap-mode","text-wrap-style","word-spacing","font-feature-settings","font-kerning","font-size-adjust","font-variant-ligatures","font-variant-caps","font-variant-numeric","font-variant-east-asian","font-stretch","text-combine-upright","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-fill-color","text-orientation","text-shadow","text-stroke-color","text-stroke-width","text-underline-offset","text-underline-position","text-overflow","text-box-trim","text-box-edge","text-justify"],Ac=["width","height","image-resolution","object-fit","object-position"],Fc=["transform","transform-origin"],Uh="background-host";function Rc(t){var e;let i=t;return{priority:i.specificity,layer:(e=i.layer)!=null?e:null}}var bC=class extends pa{constructor(t){super(null,t)}applyCascadeAndInit(t,e){super.applyCascadeAndInit(t,e),this.children.sort((i,n)=>Vi(Rc(n.pageBox),Rc(i.pageBox))||i.pageBox.index-n.pageBox.index)}},Yg=class extends pa{constructor(t,e){super(t,e),this.pageMasterInstance=this}get pageAreaEstablishingChild(){return null}boxSpecificEnabled(t){let e=this.pageBox.pageMaster;return e.condition&&(t=Xt(e.scope,t,e.condition)),t}adjustPageLayout(t,e,i){}},xC=class extends pa{constructor(t,e){super(t,e),this.pageMasterInstance=t.pageMasterInstance}},Yn=class extends pa{constructor(t,e){super(t,e),this.pageMasterInstance=t.pageMasterInstance}processPartitionList(t,e,i){let n=null;if(e instanceof he&&(n=[e]),e instanceof Be&&(n=e.values),n){let r=this.pageBox.scope;for(let o=0;o<n.length;o++)if(n[o]instanceof he){let s=Xa(n[o].name,"enabled"),a=new Qe(r,s);i&&(a=new Ri(r,a)),t=Xt(r,t,a)}}return t}boxSpecificEnabled(t){let e=this.pageBox.scope,i=this.style,n=qg(e,i.required,e._false)!==e._false;if(n||this.isAutoHeight){let r=yC(e,i["flow-from"],"body"),o=new Er(e,"has-content",[r]);t=Xt(e,t,o)}if(t=this.processPartitionList(t,i["required-partitions"],!1),t=this.processPartitionList(t,i["conflicting-partitions"],!0),n){let r=this.pageMasterInstance.style.enabled,o=r?r.toExpr(e,null):e._true;o=Xt(e,o,t),this.pageMasterInstance.style.enabled=new j(o)}return t}prepareContainer(t,e,i,n,r){var o;this.pageBox.pageMaster instanceof em||(R(e.element,"overflow","hidden"),e.element.setAttribute("data-vivliostyle-page-partition",(o=this.pageBox.name)!=null?o:"")),super.prepareContainer(t,e,i,n,r)}},Wh=class extends Jn{constructor(t,e,i,n,r){super(t,e,r),u(this,"target",i),u(this,"validatorSet",n)}property(t,e,i){this.validatorSet.validatePropertyAndHandleShorthand(t,e,i,this.scope,this)}unknownProperty(t,e){this.report(`E_INVALID_PROPERTY ${t}: ${e.toString()}`)}invalidPropertyValue(t,e){this.report(`E_INVALID_PROPERTY_VALUE ${t}: ${e.toString()}`)}simpleProperty(t,e,i){this.target.specified[t]=new X(e,i?vp:wp)}},Zg=class extends Wh{constructor(t,e,i,n,r){super(t,e,i,n,r)}},SC=class Kg extends Wh{constructor(e,i,n,r,o){super(e,i,n,r,o),n.specified.width=new X(uu,0),n.specified.height=new X(uu,0)}startPartitionRule(e,i,n){let r=new vo(this.scope,e,i,n,this.target);this.owner.delegateTo(o=>new Zg(this.scope,this.owner,r,this.validatorSet,o))}startPartitionGroupRule(e,i,n){let r=new Gg(this.scope,e,i,n,this.target);this.owner.delegateTo(o=>new Kg(this.scope,this.owner,r,this.validatorSet,o))}},CC=class extends Wh{constructor(t,e,i,n,r){super(t,e,i,n,r)}startPartitionRule(t,e,i){let n=new vo(this.scope,t,e,i,this.target);this.owner.delegateTo(r=>new Zg(this.scope,this.owner,n,this.validatorSet,r))}startPartitionGroupRule(t,e,i){let n=new Gg(this.scope,t,e,i,this.target);this.owner.delegateTo(r=>new SC(this.scope,this.owner,n,this.validatorSet,r))}};function Jg(t){var e,i;let n=(e=t["writing-mode"])==null?void 0:e.value,r=(i=t.direction)==null?void 0:i.value;return n===w.vertical_lr||n!==w.vertical_rl&&r!==w.rtl?"ltr":"rtl"}var kC={a10:{width:new B(26,"mm"),height:new B(37,"mm")},a9:{width:new B(37,"mm"),height:new B(52,"mm")},a8:{width:new B(52,"mm"),height:new B(74,"mm")},a7:{width:new B(74,"mm"),height:new B(105,"mm")},a6:{width:new B(105,"mm"),height:new B(148,"mm")},a5:{width:new B(148,"mm"),height:new B(210,"mm")},a4:{width:new B(210,"mm"),height:new B(297,"mm")},a3:{width:new B(297,"mm"),height:new B(420,"mm")},a2:{width:new B(420,"mm"),height:new B(594,"mm")},a1:{width:new B(594,"mm"),height:new B(841,"mm")},a0:{width:new B(841,"mm"),height:new B(1189,"mm")},b10:{width:new B(31,"mm"),height:new B(44,"mm")},b9:{width:new B(44,"mm"),height:new B(62,"mm")},b8:{width:new B(62,"mm"),height:new B(88,"mm")},b7:{width:new B(88,"mm"),height:new B(125,"mm")},b6:{width:new B(125,"mm"),height:new B(176,"mm")},b5:{width:new B(176,"mm"),height:new B(250,"mm")},b4:{width:new B(250,"mm"),height:new B(353,"mm")},b3:{width:new B(353,"mm"),height:new B(500,"mm")},b2:{width:new B(500,"mm"),height:new B(707,"mm")},b1:{width:new B(707,"mm"),height:new B(1e3,"mm")},b0:{width:new B(1e3,"mm"),height:new B(1414,"mm")},c10:{width:new B(28,"mm"),height:new B(40,"mm")},c9:{width:new B(40,"mm"),height:new B(57,"mm")},c8:{width:new B(57,"mm"),height:new B(81,"mm")},c7:{width:new B(81,"mm"),height:new B(114,"mm")},c6:{width:new B(114,"mm"),height:new B(162,"mm")},c5:{width:new B(162,"mm"),height:new B(229,"mm")},c4:{width:new B(229,"mm"),height:new B(324,"mm")},c3:{width:new B(324,"mm"),height:new B(458,"mm")},c2:{width:new B(458,"mm"),height:new B(648,"mm")},c1:{width:new B(648,"mm"),height:new B(917,"mm")},c0:{width:new B(917,"mm"),height:new B(1297,"mm")},"jis-b10":{width:new B(32,"mm"),height:new B(45,"mm")},"jis-b9":{width:new B(45,"mm"),height:new B(64,"mm")},"jis-b8":{width:new B(64,"mm"),height:new B(91,"mm")},"jis-b7":{width:new B(91,"mm"),height:new B(128,"mm")},"jis-b6":{width:new B(128,"mm"),height:new B(182,"mm")},"jis-b5":{width:new B(182,"mm"),height:new B(257,"mm")},"jis-b4":{width:new B(257,"mm"),height:new B(364,"mm")},"jis-b3":{width:new B(364,"mm"),height:new B(515,"mm")},"jis-b2":{width:new B(515,"mm"),height:new B(728,"mm")},"jis-b1":{width:new B(728,"mm"),height:new B(1030,"mm")},"jis-b0":{width:new B(1030,"mm"),height:new B(1456,"mm")},letter:{width:new B(8.5,"in"),height:new B(11,"in")},legal:{width:new B(8.5,"in"),height:new B(14,"in")},ledger:{width:new B(11,"in"),height:new B(17,"in")}},PC=new B(.24,"pt"),Bk=new B(3,"mm"),EC=new B(10,"mm"),NC=new B(13,"mm");function js(t){let e={width:so,height:ao,bleed:Oe,bleedOffset:Oe,cropOffset:Oe},i=t.size;if(!(!i||i.value===w.auto)){let l=i.value,c,d;if(l.isSpaceList()?(c=l.values[0],d=l.values[1]):(c=l,d=null),c.isNumeric())e.width=c,e.height=d||c;else{let p=c.name&&kC[c.name.toLowerCase()];p&&(d&&d===w.landscape?(e.width=p.height,e.height=p.width):(e.width=p.width,e.height=p.height))}}let n=t.marks,r=t.bleed,o=n&&!Z(n.value)?n.value:w.none,s=r&&!Z(r.value)?r.value:w.auto;if(s===w.auto){if(o!==w.none){let l=!1;o.isSpaceList()?l=o.values.some(c=>c===w.crop):l=o===w.crop,l&&(e.bleed=new B(6,"pt"))}}else s.isNumeric()&&(e.bleed=s);let a=t["crop-offset"],h=a&&!Z(a.value)?a.value:w.auto;return h===w.auto?o!==w.none&&(e.bleedOffset=NC):h.isNumeric()&&(e.cropOffset=h),e}function Lc(t,e){let i={},n=Math.max(0,t.bleed.num)*e.queryUnitSize(t.bleed.unit,!1),r=!t.cropOffset.num&&t.bleedOffset.num?t.bleedOffset.num*e.queryUnitSize(t.bleedOffset.unit,!1):Math.max(0,t.cropOffset.num*e.queryUnitSize(t.cropOffset.unit,!1)-n),o=n+r,s=t.width;s===so?e.pref.defaultPaperSize?i.pageWidth=e.pref.defaultPaperSize.width*e.queryUnitSize("px",!1):i.pageWidth=(e.pref.spreadView?Math.floor(e.viewportWidth/2)-e.pref.pageBorder:e.viewportWidth)-o*2:i.pageWidth=s.num*e.queryUnitSize(s.unit,!1);let a=t.height;return a===ao?e.pref.defaultPaperSize?i.pageHeight=e.pref.defaultPaperSize.height*e.queryUnitSize("px",!1):i.pageHeight=e.viewportHeight-o*2:i.pageHeight=a.num*e.queryUnitSize(a.unit,!1),i.bleed=n,i.bleedOffset=r,i.cropOffset=o,i}function Qg(t,e,i){let n=t.createElementNS("http://www.w3.org/2000/svg","svg");return n.setAttribute("width",e),n.setAttribute("height",i),n.style.position="absolute",n}function Dr(t,e,i,n){n=n||"polyline";let r=t.createElementNS("http://www.w3.org/2000/svg",n);return r.setAttribute("stroke",i===w.auto?"#010101":i.toString()),r.setAttribute("stroke-width",e),r.setAttribute("fill","none"),r}var $l=(t=>(t.TOP_LEFT="top left",t.TOP_RIGHT="top right",t.BOTTOM_LEFT="bottom left",t.BOTTOM_RIGHT="bottom right",t))($l||{});function TC(t,e,i,n,r,o,s){let a=r;a<=o+2*vi.mm&&(a=o+r/2);let h=Math.max(r,a),l=o+h+i/2,c=Qg(t,l,l),d=[[0,o+r],[r,o+r],[r,o+r-a]],p=d.map(m=>[m[1],m[0]]);(e==="top right"||e==="bottom right")&&(d=d.map(m=>[o+h-m[0],m[1]]),p=p.map(m=>[o+h-m[0],m[1]])),(e==="bottom left"||e==="bottom right")&&(d=d.map(m=>[m[0],o+h-m[1]]),p=p.map(m=>[m[0],o+h-m[1]]));let f=Dr(t,i,n);f.setAttribute("points",d.map(m=>m.join(",")).join(" ")),c.appendChild(f);let g=Dr(t,i,n);return g.setAttribute("points",p.map(m=>m.join(",")).join(" ")),c.appendChild(g),e.split(" ").forEach(m=>{c.style[m]=`${s}px`}),c}var Qr=(t=>(t.TOP="top",t.BOTTOM="bottom",t.LEFT="left",t.RIGHT="right",t))(Qr||{});function IC(t,e,i,n,r,o){let s=r*2,a,h;e==="top"||e==="bottom"?(a=s,h=r):(a=r,h=s);let l=Qg(t,a,h),c=Dr(t,i,n);c.setAttribute("points",`0,${h/2} ${a},${h/2}`),l.appendChild(c);let d=Dr(t,i,n);d.setAttribute("points",`${a/2},0 ${a/2},${h}`),l.appendChild(d);let p=Dr(t,i,n,"circle");p.setAttribute("cx",a/2),p.setAttribute("cy",h/2),p.setAttribute("r",r/4),l.appendChild(p);let f;switch(e){case"top":f="bottom";break;case"bottom":f="top";break;case"left":f="right";break;case"right":f="left";break}return Object.keys(Qr).forEach(g=>{let m=Qr[g];m===e?l.style[m]=`${o}px`:m!==f&&(l.style[m]="0",l.style[`margin-${m}`]="auto")}),l}function AC(t,e,i,n){let r=!1,o=!1,s=t.marks;if(s){let m=s.value;m instanceof ee?m.values.forEach(v=>{v===w.crop?r=!0:v===w.cross&&(o=!0)}):m===w.crop?r=!0:m===w.cross&&(o=!0)}let a=e.bleed;if(!r&&!o)return;let h=i.container,l=h.ownerDocument,c=ct(PC,n),d=Math.max(0,e.bleedOffset-ct(EC,n)),p=e.bleedOffset-d,f=t["crop-marks-line-color"],g=f&&!Z(f.value)?f.value:w.auto;r&&Object.keys($l).forEach(m=>{let v=$l[m],b=TC(l,v,c,g,p,a,d);h.appendChild(b)}),o&&Object.keys(Qr).forEach(m=>{let v=Qr[m],b=IC(l,v,c,g,p,d);h.appendChild(b)})}var Hl=(()=>{let t=["left","right","top","bottom","before","after","start","end","block-start","block-end","inline-start","inline-end","inside","outside"],e={width:!0,height:!0,"block-size":!0,"inline-size":!0,"writing-mode":!0,direction:!0,margin:!0,padding:!0,border:!0,outline:!0,"outline-width":!0,"outline-style":!0,"outline-color":!0,"outline-offset":!0,"border-radius":!0,"border-top-left-radius":!0,"border-top-right-radius":!0,"border-bottom-right-radius":!0,"border-bottom-left-radius":!0,"border-start-start-radius":!0,"border-start-end-radius":!0,"border-end-start-radius":!0,"border-end-end-radius":!0,"box-shadow":!0,"box-sizing":!0};return t.forEach(i=>{e[`margin-${i}`]=!0,e[`padding-${i}`]=!0,e[`border-${i}-width`]=!0,e[`border-${i}-style`]=!0,e[`border-${i}-color`]=!0}),e})(),Gh={"top-left-corner":{order:1,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:null},"top-left":{order:2,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"start"},"top-center":{order:3,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"center"},"top-right":{order:4,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"end"},"top-right-corner":{order:5,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:null},"right-top":{order:6,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:"start"},"right-middle":{order:7,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:"center"},"right-bottom":{order:8,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:"end"},"bottom-right-corner":{order:9,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:null},"bottom-right":{order:10,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"end"},"bottom-center":{order:11,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"center"},"bottom-left":{order:12,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"start"},"bottom-left-corner":{order:13,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:null},"left-bottom":{order:14,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:"end"},"left-middle":{order:15,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:"center"},"left-top":{order:16,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:"start"}},FC=(()=>{let t=Gh;return Object.keys(t).sort((e,i)=>t[e].order-t[i].order)})(),jh="vivliostyle-page-rule-master",eo="_marginBoxes",Xs="_footnoteArea",em=class extends Ug{constructor(t,e,i){super(t,null,jh,[],e,null,0),u(this,"pageMarginBoxes",{}),u(this,"pageRulePartition");let n=js(i);this.pageRulePartition=new RC(this.scope,this,i,n),this.createPageMarginBoxes(i),this.applySpecified(i,n)}createPageMarginBoxes(t){let e=t[eo];e&&FC.forEach(i=>{e[i]&&(this.pageMarginBoxes[i]=new OC(this.scope,this,i,t))})}applySpecified(t,e){this.specified.position=new X(w.relative,0),this.specified.width=new X(e.width,0),this.specified.height=new X(e.height,0);for(let i in t)!Hl[i]&&i!=="background-clip"&&(this.specified[i]=t[i])}createInstance(t,e,i){return new to(t,this,e,i)}},RC=class extends vo{constructor(t,e,i,n){super(t,null,null,[],e),u(this,"pageSize",n),u(this,"pageAreaPartition"),this.pageAreaPartition=new LC(this.scope,this),this.applySpecified(i)}applySpecified(t){this.specified["wrap-flow"]=new X(w.auto,0),this.specified["z-index"]=new X(new ht(0),0),this.specified.position=new X(w.absolute,0),this.specified.overflow=new X(w.visible,0);for(let e in Hl)Hl.hasOwnProperty(e)&&(this.specified[e]=t[e])}createInstance(t,e,i){return new MC(t,this,e,i)}},LC=class extends vo{constructor(t,e){super(t,null,null,[],e),this.specified["flow-from"]=new X(_("body"),0)}},OC=class extends vo{constructor(t,e,i,n){super(t,null,null,[],e),u(this,"marginBoxName",i),this.applySpecified(n)}applySpecified(t){let e=t[eo][this.marginBoxName];for(let i in t){let n=t[i],r=e[i];(jf[i]||r&&r.value===w.inherit)&&(this.specified[i]=n)}for(let i in e)if(Object.prototype.hasOwnProperty.call(e,i)){let n=e[i];n&&n.value!==Ae&&n.value!==w.inherit&&n.value!==w.unset&&n.value!==w.revert&&(this.specified[i]=n)}}createInstance(t,e,i){return new tm(t,this)}},to=class extends Yg{constructor(t,e,i,n){var r;super(t,e),u(this,"pageAreaDimension"),u(this,"pageAreaPartitionInstance"),u(this,"pageMarginBoxInstances",{});let o=(r=i.styler)==null?void 0:r.bodyPropagatedStyle;for(let h in n)if(Object.prototype.hasOwnProperty.call(n,h))switch(h){case"writing-mode":case"direction":if(o?.[h]===n[h])break;this.cascaded[h]=n[h]}this.buildCascadedStyle(n),this.init(i),this.pageAreaPartitionInstance=this.pageBox.pageRulePartition.createInstance(this,i,n);let s=this.pageAreaPartitionInstance.pageAreaDimension;this.pageAreaDimension=s;let a=this.style;a.width=new j(s.borderBoxWidth),a.height=new j(s.borderBoxHeight),a["padding-left"]=new j(s.marginLeft),a["padding-right"]=new j(s.marginRight),a["padding-top"]=new j(s.marginTop),a["padding-bottom"]=new j(s.marginBottom),this.register(i)}get pageAreaEstablishingChild(){return this.pageAreaPartitionInstance}applyCascadeAndInit(t,e){t.pushRule(this.pageBox.classes,null,this.cascaded),this.resolveContent(t);let i=this.cascaded.content;i&&(this.style.content=i.value);for(let n of this.pageBox.children)(n===this.pageBox.pageRulePartition?this.pageAreaPartitionInstance:n.createInstance(this,t.context,e)).applyCascadeAndInit(t,e);t.popRule()}initHorizontal(){let t=this.style;t.left=Oe,t["margin-left"]=Oe,t["border-left-width"]=Oe,t["padding-left"]=Oe,t["padding-right"]=Oe,t["border-right-width"]=Oe,t["margin-right"]=Oe,t.right=Oe}initVertical(){let t=this.style;t.top=Oe,t["margin-top"]=Oe,t["border-top-width"]=Oe,t["padding-top"]=Oe,t["padding-bottom"]=Oe,t["border-bottom-width"]=Oe,t["margin-bottom"]=Oe,t.bottom=Oe}adjustPageLayout(t,e,i){let n=e.marginBoxes,r={start:this.pageAreaDimension.marginLeft,end:this.pageAreaDimension.marginRight,extent:this.pageAreaDimension.borderBoxWidth},o={start:this.pageAreaDimension.marginTop,end:this.pageAreaDimension.marginBottom,extent:this.pageAreaDimension.borderBoxHeight};this.sizeMarginBoxesAlongVariableDimension(n.top,!0,r,t,i),this.sizeMarginBoxesAlongVariableDimension(n.bottom,!0,r,t,i),this.sizeMarginBoxesAlongVariableDimension(n.left,!1,o,t,i),this.sizeMarginBoxesAlongVariableDimension(n.right,!1,o,t,i)}sizeMarginBoxesAlongVariableDimension(t,e,i,n,r){let o="start",s="center",a="end",h=this.pageBox.scope,l={},c={},d={};for(let C in t){let y=Gh[C];if(y){let k=t[C],S=this.pageMarginBoxInstances[C],N=new us(k,S.style,e,h,r);l[y.positionAlongVariableDimension]=k,c[y.positionAlongVariableDimension]=S,d[y.positionAlongVariableDimension]=N}}let p={start:i.start.evaluate(n),end:i.end.evaluate(n),extent:i.extent.evaluate(n)},f=this.getSizesOfMarginBoxesAlongVariableDimension(d,p.extent),g=!1,m={};Object.keys(l).forEach(C=>{let y=C,k=xe(h,c[y].style[e?"max-width":"max-height"],i.extent);if(k){let S=k.evaluate(n),N=f[y];if(N!=null&&N>S){let L=d[y]=new Oc(l[y],c[y].style,e,h,r,S);m[y]=L.getOuterSize(),g=!0}}}),g&&(f=this.getSizesOfMarginBoxesAlongVariableDimension(d,p.extent),g=!1,[o,s,a].forEach(C=>{var y;f[C]=(y=m[C])!=null?y:f[C]}));let v={};Object.keys(l).forEach(C=>{let y=C,k=xe(h,c[y].style[e?"min-width":"min-height"],i.extent);if(k){let S=k.evaluate(n),N=f[y];if(N!=null&&N<S){let L=d[y]=new Oc(l[y],c[y].style,e,h,r,S);v[y]=L.getOuterSize(),g=!0}}}),g&&(f=this.getSizesOfMarginBoxesAlongVariableDimension(d,p.extent),[o,s,a].forEach(C=>{f[C]=v[C]||f[C]}));let b=p.start+p.extent,x=p.start+(p.start+p.extent);[o,s,a].forEach(C=>{let y=f[C];if(y!=null){let k=l[C],S=0;switch(C){case o:S=e?k.left:k.top;break;case s:S=(x-y)/2;break;case a:S=b-y;break}e?k.setHorizontalPosition(S,y-k.getInsetLeft()-k.getInsetRight()):k.setVerticalPosition(S,y-k.getInsetTop()-k.getInsetBottom())}})}getSizesOfMarginBoxesAlongVariableDimension(t,e){var i;let n=t.start,r=t.center,o=t.end,s={};if(r){let a=[n,o],h=new BC(a),l=this.distributeAutoMarginBoxSizes(r,h,e);l.xSize!=null&&(s.center=l.xSize);let c=(i=l.xSize)!=null?i:r.getOuterSize(),d=Math.max((e-c)/2,0);n&&(s.start=n.hasAutoSize()?d:n.getOuterSize()),o&&(s.end=o.hasAutoSize()?d:o.getOuterSize())}else{let a=this.distributeAutoMarginBoxSizes(n??null,o??null,e);a.xSize!=null&&(s.start=a.xSize),a.ySize!=null&&(s.end=a.ySize)}return s}distributeAutoMarginBoxSizes(t,e,i){let n={xSize:null,ySize:null};if(t instanceof us&&t.minMaxFitContent&&(n.xSize=t.getOuterSize()),e instanceof us&&e.minMaxFitContent&&(n.ySize=e.getOuterSize()),t&&e)if(t.hasAutoSize()&&e.hasAutoSize()){let r=t.getOuterMaxContentSize(),o=e.getOuterMaxContentSize();if(r>0&&o>0){let s=r+o;if(s<i)n.xSize=i*r/s;else{let a=t.getOuterMinContentSize(),h=e.getOuterMinContentSize(),l=a+h;l<i?n.xSize=a+(i-l)*(r-a)/(s-l):l>0&&(n.xSize=i*a/l)}n.xSize!=null&&n.xSize>0&&(n.ySize=i-n.xSize)}else r>0?n.xSize=i:o>0&&(n.ySize=i)}else t.hasAutoSize()?n.xSize=Math.max(i-e.getOuterSize(),0):e.hasAutoSize()&&(n.ySize=Math.max(i-t.getOuterSize(),0));else t?t.hasAutoSize()&&(n.xSize=i):e&&e.hasAutoSize()&&(n.ySize=i);return n}prepareContainer(t,e,i,n,r){e.element.setAttribute("data-vivliostyle-page-box",!0),super.prepareContainer(t,e,i,n,r)}},us=class{constructor(t,e,i,n,r){u(this,"container",t),u(this,"isHorizontal",i),u(this,"clientLayout",r),u(this,"hasAutoSize_"),u(this,"size",null),u(this,"minMaxFitContent",null);let o=e[i?"width":"height"];if(this.hasAutoSize_=!o||o===w.auto||Z(o),this.minMaxFitContent=o instanceof he&&(o.name==="min-content"||o.name==="max-content"||o.name==="fit-content")?o.name:null,this.minMaxFitContent){let s=this.getSize();if(this.isHorizontal){let a=s[this.minMaxFitContent==="min-content"?"min-content width":this.minMaxFitContent==="max-content"?"max-content width":"fit-content width"];this.container.setHorizontalPosition(this.container.left,a)}else{let a=s[this.minMaxFitContent==="min-content"?"min-content height":this.minMaxFitContent==="max-content"?"max-content height":"fit-content height"];this.container.setVerticalPosition(this.container.top,a)}}}hasAutoSize(){return this.hasAutoSize_}getSize(){if(!this.size){let t=this.isHorizontal?["max-content width","min-content width","fit-content width"]:["max-content height","min-content height","fit-content height"];this.size=fh(this.clientLayout,this.container.element,t)}return this.size}getOuterMaxContentSize(){let t=this.getSize();return this.isHorizontal?this.container.getInsetLeft()+t["max-content width"]+this.container.getInsetRight():this.container.getInsetTop()+t["max-content height"]+this.container.getInsetBottom()}getOuterMinContentSize(){let t=this.getSize();return this.isHorizontal?this.container.getInsetLeft()+t["min-content width"]+this.container.getInsetRight():this.container.getInsetTop()+t["min-content height"]+this.container.getInsetBottom()}getOuterSize(){return this.isHorizontal?this.container.getInsetLeft()+this.container.width+this.container.getInsetRight():this.container.getInsetTop()+this.container.height+this.container.getInsetBottom()}},BC=class{constructor(t){u(this,"params",t)}hasAutoSize(){return this.params.some(t=>{var e;return(e=t?.hasAutoSize())!=null?e:!1})}getOuterMaxContentSize(){let t=this.params.map(e=>{var i;return(i=e?.getOuterMaxContentSize())!=null?i:0});return Math.max.apply(null,t)*t.length}getOuterMinContentSize(){let t=this.params.map(e=>{var i;return(i=e?.getOuterMinContentSize())!=null?i:0});return Math.max.apply(null,t)*t.length}getOuterSize(){let t=this.params.map(e=>{var i;return(i=e?.getOuterSize())!=null?i:0});return Math.max.apply(null,t)*t.length}},Oc=class extends us{constructor(t,e,i,n,r,o){super(t,e,i,n,r),u(this,"fixedSize"),this.fixedSize=o}hasAutoSize(){return!1}getOuterMaxContentSize(){return this.getOuterSize()}getOuterMinContentSize(){return this.getOuterSize()}getOuterSize(){return this.isHorizontal?this.container.getInsetLeft()+this.fixedSize+this.container.getInsetRight():this.container.getInsetTop()+this.fixedSize+this.container.getInsetBottom()}},MC=class extends Yn{constructor(t,e,i,n){super(t,e),u(this,"contentBoxWidth"),u(this,"contentBoxHeight"),u(this,"pageAreaDimension"),u(this,"pageAreaEstablishingChild");for(let s in n)s.match(/^background-/)&&(this.cascaded[s]=n[s]);this.buildCascadedStyle(n),this.resolveStyle(i);let r=this.resolvePageBoxDimensions({start:"left",end:"right",extent:"width"}),o=this.resolvePageBoxDimensions({start:"top",end:"bottom",extent:"height"});this.contentBoxWidth=new j(r.contentBoxExtent),this.contentBoxHeight=new j(o.contentBoxExtent),this.pageAreaDimension={borderBoxWidth:r.borderBoxExtent,borderBoxHeight:o.borderBoxExtent,marginLeft:r.marginStart,marginRight:r.marginEnd,marginTop:o.marginStart,marginBottom:o.marginEnd},this.initColumns(),this.initEnabled(),this.register(i),this.pageAreaEstablishingChild=new _C(this,e.pageAreaPartition)}applyCascadeAndInit(t,e){t.pushRule(this.pageBox.classes,null,this.cascaded),this.pageAreaEstablishingChild.applyCascadeAndInit(t,e),t.popRule()}resolvePageBoxDimensions(t){let e=this.style,i=this.pageBox.pageSize,n=this.pageBox.scope,r=t.start,o=t.end,s=t.extent,a=i[s].toExpr(n,null),h=xe(n,e[s],a),l=xe(n,e[`margin-${r}`],a),c=xe(n,e[`margin-${o}`],a),d=Tt(n,e[`padding-${r}`],a),p=Tt(n,e[`padding-${o}`],a),f=ai(n,e[`border-${r}-width`],e[`border-${r}-style`],a),g=ai(n,e[`border-${o}-width`],e[`border-${o}-style`],a),m=re(n,re(n,f,d),re(n,g,p)),v,b,x;return h?(this.borderBoxSizing?(b=h,x=we(n,b,m)):(x=h,b=re(n,x,m)),v=we(n,a,b),!l&&!c?(l=qo(n,v,new it(n,.5)),c=l):l?c=we(n,v,l):l=we(n,v,c)):(l||(l=n.zero),c||(c=n.zero),v=re(n,l,c),b=we(n,a,v),x=we(n,b,m),h=this.borderBoxSizing?b:x),e[r]=new j(l),e[o]=new j(c),e[`margin-${r}`]=Oe,e[`margin-${o}`]=Oe,e[`border-${r}-width`]=new j(f),e[`border-${o}-width`]=new j(g),e[`padding-${r}`]=new j(d),e[`padding-${o}`]=new j(p),e[s]=new j(h),e[`max-${s}`]=new j(h),{borderBoxExtent:b,contentBoxExtent:x,marginStart:l,marginEnd:c}}prepareContainer(t,e,i,n,r){e.element.setAttribute("data-vivliostyle-page-area-container",!0),super.prepareContainer(t,e,i,n,r)}},_C=class extends Yn{constructor(t,e){super(t,e),u(this,"pageAreaEstablishingChild",null),u(this,"pageRulePartitionInstance"),this.pageRulePartitionInstance=t}applyCascadeAndInit(t,e){var i,n;for(let r in e)r.match(/^column.*$/)&&(this.cascaded[r]=e[r]);this.cascaded["writing-mode"]=(i=e["writing-mode"])!=null?i:new X(w.horizontal_tb,0),this.cascaded.direction=(n=e.direction)!=null?n:new X(w.ltr,0),super.applyCascadeAndInit(t,{})}initHorizontal(){let t=this.style,e=this.pageRulePartitionInstance,i=e.style,n=this.pageBox.scope;t.left=i["padding-left"],t.width=e.contentBoxWidth,t["margin-left"]=new j(new In(n,i.left.toExpr(n,null))),t["margin-right"]=new j(new In(n,i.right.toExpr(n,null))),t["border-left-width"]=i.left,t["border-right-width"]=i.right,t["border-left-style"]=w.solid,t["border-right-style"]=w.solid,t["border-left-color"]=w.transparent,t["border-right-color"]=w.transparent}initVertical(){let t=this.style,e=this.pageRulePartitionInstance,i=e.style,n=this.pageBox.scope;t.top=i["padding-top"],t.height=e.contentBoxHeight,t["margin-top"]=new j(new In(n,i.top.toExpr(n,null))),t["margin-bottom"]=new j(new In(n,i.bottom.toExpr(n,null))),t["border-top-width"]=i.top,t["border-bottom-width"]=i.bottom,t["border-top-style"]=w.solid,t["border-bottom-style"]=w.solid,t["border-top-color"]=w.transparent,t["border-bottom-color"]=w.transparent}prepareContainer(t,e,i,n,r){e.element.setAttribute("data-vivliostyle-page-area",!0),i.pageAreaElement=e.element,super.prepareContainer(t,e,i,n,r),t.pageAreaWidth=e.width,t.pageAreaHeight=e.height}},tm=class extends Yn{constructor(t,e){super(t,e),u(this,"boxInfo"),u(this,"suppressEmptyBoxGeneration",!0);let i=e.marginBoxName;this.boxInfo=Gh[i];let n=t;n.pageMarginBoxInstances[i]=this}prepareContainer(t,e,i,n,r){e.element.setAttribute("data-vivliostyle-page-margin-box",this.pageBox.marginBoxName),this.applyVerticalAlign(t,e.element),super.prepareContainer(t,e,i,n,r)}applyVerticalAlign(t,e){R(e,"display","flex"),R(e,"flex-flow",this.vertical?this.rtl?"row-reverse":"row":"column");let i=this.getProp(t,"vertical-align"),n=null;i===_("middle")?n="center":i===_("top")?n="flex-start":i===_("bottom")&&(n="flex-end"),n&&R(e,"justify-content",n);let r=this.getProp(t,"content");if(this.vertical||r instanceof et||r instanceof j&&r.expr instanceof be&&r.expr.str.startsWith("running-element-")){let o="center";(this.boxInfo.isInTopRow||this.boxInfo.isInBottomRow)&&(this.boxInfo.isInLeftColumn||this.boxInfo.positionAlongVariableDimension==="end"?o=this.vertical||this.rtl?"start":"end":(this.boxInfo.isInRightColumn||this.boxInfo.positionAlongVariableDimension==="start")&&(o=this.vertical||this.rtl?"end":"start")),R(e,"align-items",o)}}positionAlongVariableDimension(t,e){let i=this.style,n=this.pageBox.scope,r=t.start,o=t.end,s=t.extent,a=r==="left",h=a?e.borderBoxWidth:e.borderBoxHeight,l=xe(n,i[s],h),c=a?e.marginLeft:e.marginTop;if(this.boxInfo.positionAlongVariableDimension==="start")i[r]=new j(c);else if(l){let d=Tt(n,i[`margin-${r}`],h),p=Tt(n,i[`margin-${o}`],h),f=Tt(n,i[`padding-${r}`],h),g=Tt(n,i[`padding-${o}`],h),m=ai(n,i[`border-${r}-width`],i[`border-${r}-style`],h),v=ai(n,i[`border-${o}-width`],i[`border-${o}-style`],h),b=re(n,l,re(n,this.borderBoxSizing?n.zero:re(n,re(n,f,g),re(n,m,v)),re(n,d,p)));switch(this.boxInfo.positionAlongVariableDimension){case"center":i[r]=new j(re(n,c,Ka(n,we(n,h,b),new it(n,2))));break;case"end":i[r]=new j(we(n,re(n,c,h),b));break}}}positionAndSizeAlongFixedDimension(t,e){let i=this.style,n=this.pageBox.scope,r=this.borderBoxSizing,o=t.inside,s=t.outside,a=t.extent,h=e[`margin${s.charAt(0).toUpperCase()}${s.substring(1)}`],l=Ec(n,i[`margin-${o}`],h),c=Ec(n,i[`margin-${s}`],h),d=Tt(n,i[`padding-${o}`],h),p=Tt(n,i[`padding-${s}`],h),f=ai(n,i[`border-${o}-width`],i[`border-${o}-style`],h),g=ai(n,i[`border-${s}-width`],i[`border-${s}-style`],h),m=xe(n,i[a],h),v=null;function b(x){if(v)return v;v={extent:m?m.evaluate(x):null,marginInside:l?l.evaluate(x):null,marginOutside:c?c.evaluate(x):null};let C=h.evaluate(x),y=0;return r||[f,d,p,g].forEach(k=>{k&&(y+=k.evaluate(x))}),(v.marginInside===null||v.marginOutside===null)&&y+v.extent+v.marginInside+v.marginOutside>C&&(v.marginInside===null&&(v.marginInside=0),v.marginOutside===null&&(v.marginOutside=0)),v.extent!==null&&v.marginInside!==null&&v.marginOutside!==null&&(v.marginOutside=null),v.extent===null?(v.extent=C-y-v.marginInside-v.marginOutside,v.marginInside===null&&(v.marginInside=0),v.marginOutside===null&&(v.marginOutside=0)):typeof v.extent=="number"&&(v.marginInside===null&&typeof v.marginOutside=="number"?v.marginInside=C-y-v.extent-v.marginOutside:typeof v.marginInside=="number"&&v.marginOutside===null?v.marginOutside=C-y-v.extent-v.marginInside:v.marginInside=v.marginOutside=(C-y-v.extent)/2),v}i[a]=new j(new be(n,function(){let x=b(this).extent;return x===null?"auto":x},a)),i[`margin-${o}`]=new j(new be(n,function(){let x=b(this).marginInside;return x===null?"auto":x},`margin-${o}`)),i[`margin-${s}`]=new j(new be(n,function(){let x=b(this).marginOutside;return x===null?"auto":x},`margin-${s}`)),o==="left"?i.left=new j(re(n,e.marginLeft,e.borderBoxWidth)):o==="top"&&(i.top=new j(re(n,e.marginTop,e.borderBoxHeight)))}initHorizontal(){let t=this.parentInstance.pageAreaDimension;this.boxInfo.isInLeftColumn?this.positionAndSizeAlongFixedDimension({inside:"right",outside:"left",extent:"width"},t):this.boxInfo.isInRightColumn?this.positionAndSizeAlongFixedDimension({inside:"left",outside:"right",extent:"width"},t):this.positionAlongVariableDimension({start:"left",end:"right",extent:"width"},t)}initVertical(){let t=this.parentInstance.pageAreaDimension;this.boxInfo.isInTopRow?this.positionAndSizeAlongFixedDimension({inside:"bottom",outside:"top",extent:"height"},t):this.boxInfo.isInBottomRow?this.positionAndSizeAlongFixedDimension({inside:"top",outside:"bottom",extent:"height"},t):this.positionAlongVariableDimension({start:"top",end:"bottom",extent:"height"},t)}finishContainer(t,e,i,n,r,o,s){super.finishContainer(t,e,i,n,r,o,s);let a=i.marginBoxes,h=this.pageBox.marginBoxName,l=this.boxInfo;!l.isInLeftColumn&&!l.isInRightColumn?l.isInTopRow?a.top[h]=e:l.isInBottomRow&&(a.bottom[h]=e):!l.isInTopRow&&!l.isInBottomRow&&(l.isInLeftColumn?a.left[h]=e:l.isInRightColumn&&(a.right[h]=e));let c=this.parentInstance.pageAreaDimension,d=this.getProp(t,"width"),p=d instanceof he&&(d.name==="min-content"||d.name==="max-content"||d.name==="fit-content")?d.name:null,f=this.getPropAsNumber(t,"min-width"),g=this.getPropAsNumber(t,"max-width");if(p||f||g){p&&R(e.element,"width",p),f&&R(e.element,"min-width",`${f}px`),g&&R(e.element,"max-width",`${g}px`);let C=this.getProp(t,"margin-left"),y=this.getProp(t,"margin-right");if(l.isInLeftColumn){let k=c.borderBoxWidth.evaluate(t)+c.marginRight.evaluate(t);R(e.element,"right",`${k}px`),(C===w.auto||y!==w.auto)&&R(e.element,"margin-left","auto"),y===w.auto&&R(e.element,"margin-right","auto")}else l.isInRightColumn&&(R(e.element,"right","0"),(y===w.auto||C!==w.auto)&&R(e.element,"margin-right","auto"),C===w.auto&&R(e.element,"margin-left","auto"))}let m=this.getProp(t,"height"),v=m instanceof he&&(m.name==="min-content"||m.name==="max-content"||m.name==="fit-content")?m.name:null,b=this.getPropAsNumber(t,"min-height"),x=this.getPropAsNumber(t,"max-height");if(v||b||x){v&&R(e.element,"height",v),b&&R(e.element,"min-height",`${b}px`),x&&R(e.element,"max-height",`${x}px`);let C=this.getProp(t,"margin-top"),y=this.getProp(t,"margin-bottom");if(l.isInTopRow){let k=c.borderBoxHeight.evaluate(t)+c.marginBottom.evaluate(t);R(e.element,"bottom",`${k}px`),(C===w.auto||y!==w.auto)&&R(e.element,"margin-top","auto"),y===w.auto&&R(e.element,"margin-bottom","auto")}else l.isInBottomRow&&(R(e.element,"bottom","0"),(y===w.auto||C!==w.auto)&&R(e.element,"margin-bottom","auto"),C===w.auto&&R(e.element,"margin-top","auto"))}}},DC=class{constructor(t,e,i,n,r){u(this,"pageScope",e),u(this,"rootPageBoxInstance",i),u(this,"context",n),u(this,"docElementStyle",r),u(this,"pageMasterCache",{}),u(this,"pageCascadeInstance"),this.pageCascadeInstance=t,this.definePageProgression()}definePageProgression(){let t=this.pageScope,e=this.context,i=e.isVersoFirstPage,n=new Qe(t,"page-number"),r=new rh(t,new Sd(t,n,new it(t,2)),i?t.one:t.zero);t.defineName("recto-page",new Ri(t,r)),t.defineName("verso-page",r),(e.pageProgression||Jg(this.docElementStyle))==="ltr"?(t.defineName("left-page",r),t.defineName("right-page",new Ri(t,r))):(t.defineName("left-page",new Ri(t,r)),t.defineName("right-page",r))}getCascadedPageStyle(t){let e={};return this.pageCascadeInstance.pushRule([],t,e),this.pageCascadeInstance.popRule(),e}getPageRulePageMaster(t,e){let i=t.pageBox;if(Object.keys(e).length===0)return i.resetScope(),t;let n=this.makeCacheKey(e,i),r=this.pageMasterCache[n];return r||(i.pseudoName===Uh?r=this.generatePageRuleMaster(e):r=this.generateCascadedPageMaster(e,i),this.pageMasterCache[n]=r),r.pageBox.resetScope(),r}makeCacheKey(t,e){var i;let n=this.makeCascadeValueObjectKey(t),r=((i=this.context.currentLayoutPosition)==null?void 0:i.page)%2;return`${e.key}^${n}^${r}`}makeCascadeValueObjectKey(t){let e=[];for(let i in t)if(Object.prototype.hasOwnProperty.call(t,i)){let n=t[i],r;n instanceof X?r=`${n.value}`:r=this.makeCascadeValueObjectKey(n),e.push(i+r+(n.priority||""))}return e.sort().join("^")}generatePageRuleMaster(t){let e=new em(this.pageScope,this.rootPageBoxInstance.pageBox,t).createInstance(this.rootPageBoxInstance,this.context,this.docElementStyle);return e.applyCascadeAndInit(this.pageCascadeInstance,this.docElementStyle),e.resolveAutoSizing(this.context),e}generateCascadedPageMaster(t,e){let i=e.clone({pseudoName:jh}),n=i.specified,r=t.size;if(r&&!Z(r.value)){let s=js(t),a=r.priority;ei(n,"width",new X(s.width,a),this.context),ei(n,"height",new X(s.height,a),this.context)}["counter-reset","counter-increment"].forEach(s=>{n[s]&&(t[s]=n[s])});let o=i.createInstance(this.rootPageBoxInstance,this.context,this.docElementStyle);return o.applyCascadeAndInit(this.pageCascadeInstance,this.docElementStyle),o.resolveAutoSizing(this.context),o}},zC=class extends Te{constructor(t){super(),u(this,"pageType",t)}matches(t){return t.instance.currentPageType===this.pageType}getPriority(){return 3}primarySlot(t){return{table:t.pagetypes,key:this.pageType}}},VC=class extends Te{constructor(t){super(),u(this,"scope",t)}matches(t){return new Qe(this.scope,"page-number").evaluate(t.instance.context)===1}getPriority(){return 2}},$C=class extends Te{constructor(t){super(),u(this,"scope",t)}matches(t){return!!new Qe(this.scope,"blank-page").evaluate(t.instance.context)}getPriority(){return 2}},HC=class extends Te{constructor(t){super(),u(this,"scope",t)}matches(t){return!!new Qe(this.scope,"left-page").evaluate(t.instance.context)}getPriority(){return 1}},UC=class extends Te{constructor(t){super(),u(this,"scope",t)}matches(t){return!!new Qe(this.scope,"right-page").evaluate(t.instance.context)}getPriority(){return 1}},WC=class extends Te{constructor(t){super(),u(this,"scope",t)}matches(t){return!!new Qe(this.scope,"recto-page").evaluate(t.instance.context)}getPriority(){return 1}},GC=class extends Te{constructor(t){super(),u(this,"scope",t)}matches(t){return!!new Qe(this.scope,"verso-page").evaluate(t.instance.context)}getPriority(){return 1}},jC=class extends fn{constructor(t,e,i){super(e,i),u(this,"scope",t),u(this,"a",e),u(this,"b",i)}matches(t){let e=t.instance.context,i=e.layoutPositionAtPageStart.page;return e.blankPageAtStart&&i--,!!i&&this.matchANPlusB(i)}getPriority(){return 2}},XC=class extends fn{constructor(t,e,i,n){super(e,i),u(this,"scope",t),u(this,"a",e),u(this,"b",i),u(this,"pageType",n)}matches(t){let e=t.instance.pageTypePageIndices[this.pageType];if(!e)return!1;for(let i of e)if(this.matchANPlusB(i))return!0;return!1}getPriority(){return 3}},qC=class extends Fh{constructor(t,e){super(t,e,null,null,null)}apply(t){YC(t.instance.context,t.currentStyle,this.style,this.specificity,t)}};function YC(t,e,i,n,r){zs(t,e,i,n,null,null,null,r.instance.mergeValidatorSet);let o=i[eo];if(o){let a=li(e,eo);for(let h in o)if(o.hasOwnProperty(h)){let l=a[h];l||(l={},a[h]=l),zs(t,l,o[h],n,null,null,null,r.instance.mergeValidatorSet)}}let s=i[Xs];if(s){let a=li(e,Xs);for(let h in s)if(s.hasOwnProperty(h)){let l=a[h];l||(l={},a[h]=l);let c=s[h];for(let p in c)if(c.hasOwnProperty(p)&&p!=="_pseudos"){let f=c[p];f instanceof X&&ei(l,p,f)}let d=lt(c,"_pseudos");if(d){let p=li(l,"_pseudos");for(let f in d)if(d.hasOwnProperty(f)){let g=p[f];g||(g={},p[f]=g);let m=d[f];for(let v in m)if(m.hasOwnProperty(v)){let b=m[v];b instanceof X&&ei(g,v,b)}}}}}}var ZC=class extends $s{constructor(t,e,i,n,r,o){super(t,e,i?.condition,i,null,n,o),u(this,"pageProps",r),u(this,"currentPageSelectors",[]),u(this,"currentNamedPageSelector",""),u(this,"currentPseudoPageClassSelectors",[])}startPageRule(){this.startSelectorRule()}tagSelector(t,e){this.currentNamedPageSelector=e,e&&(this.chain.push(new zC(e)),this.specificity+=65536)}pseudoclassSelector(t,e){if(t=t.toLowerCase(),e)switch(t){case"nth":{let i=e[0],n=e[1];if(e.length===3&&typeof e[2]=="string"){let r=e[2];this.currentPseudoPageClassSelectors.push(`:${t}(${i}n${n<0?n:"+"+n} of ${r})`),this.chain.push(new XC(this.scope,i,n,r)),this.specificity+=65792}else this.currentPseudoPageClassSelectors.push(`:${t}(${i}n${n<0?n:"+"+n})`),this.chain.push(new jC(this.scope,i,n)),this.specificity+=256}break;default:this.reportAndSkip(`E_INVALID_PAGE_SELECTOR :${t}(${e.join("")})`);break}else switch(this.currentPseudoPageClassSelectors.push(`:${t}`),t){case"first":this.chain.push(new VC(this.scope)),this.specificity+=256;break;case"blank":this.chain.push(new $C(this.scope)),this.specificity+=256;break;case"left":this.chain.push(new HC(this.scope)),this.specificity+=1;break;case"right":this.chain.push(new UC(this.scope)),this.specificity+=1;break;case"recto":this.chain.push(new WC(this.scope)),this.specificity+=1;break;case"verso":this.chain.push(new GC(this.scope)),this.specificity+=1;break;default:this.reportAndSkip(`E_INVALID_PAGE_SELECTOR :${t}`);break}}finishSelector(){let t;!this.currentNamedPageSelector&&!this.currentPseudoPageClassSelectors.length?t=null:t=[this.currentNamedPageSelector].concat(this.currentPseudoPageClassSelectors.sort()),this.currentPageSelectors.push({selectors:t,specificity:this.specificity}),this.currentNamedPageSelector="",this.currentPseudoPageClassSelectors=[]}nextSelector(){this.finishSelector(),super.nextSelector()}startRuleBody(){this.finishSelector(),super.startRuleBody()}simpleProperty(t,e,i){if((t==="bleed"||t==="marks")&&!this.currentPageSelectors.some(o=>o.selectors===null))return;super.simpleProperty(t,e,i);let n=ge(this.elementStyle,t),r=this.pageProps;if(t==="bleed"||t==="marks")r[""]||(r[""]={}),Object.keys(r).forEach(o=>{Bi(r[o],t,n)});else if(t==="size"){let o=r[""];this.currentPageSelectors.forEach(s=>{let a=n.increaseSpecificity(s.specificity),h=s.selectors?s.selectors.join(""):"",l=r[h];l?ei(l,t,a):(l=r[h]={},Bi(l,t,a),o&&["bleed","marks"].forEach(c=>{o[c]&&Bi(l,c,o[c])}))})}}insertNonPrimary(t){this.cascade.insertInTable(this.cascade.pagetypes,"*",t)}makeApplyRuleAction(t){return new qC(this.elementStyle,t)}startFootnoteRule(t){let e=li(this.elementStyle,Xs),i=e.area;if(i||(i={},e.area=i),t){let n=li(i,"_pseudos"),r=n[t];r||(r={},n[t]=r),i=r}this.owner.delegateTo(n=>new im(this.scope,this.owner,this.validatorSet,i,n,this.layer))}startPageMarginBoxRule(t){let e=li(this.elementStyle,eo),i=e[t];i||(i={},e[t]=i),this.owner.delegateTo(n=>new KC(this.scope,this.owner,this.validatorSet,i,n,this.layer))}},KC=class extends Jn{constructor(t,e,i,n,r,o=null){super(t,e,r),u(this,"validatorSet",i),u(this,"boxStyle",n),u(this,"layer",o),u(this,"ruleId",mo())}property(t,e,i){this.validatorSet.validatePropertyAndHandleShorthand(t,e,i,this.scope,this)}invalidPropertyValue(t,e){this.report(`E_INVALID_PROPERTY_VALUE ${t}: ${e.toString()}`)}unknownProperty(t,e){this.report(`E_INVALID_PROPERTY ${t}: ${e.toString()}`)}simpleProperty(t,e,i){let n=i?this.getImportantSpecificity():this.getBaseSpecificity();yo(t,e,this.validatorSet);let r=new X(e,n,this.layer,this.ruleId);Bi(this.boxStyle,t,r)}},im=class extends Jn{constructor(t,e,i,n,r,o=null){super(t,e,r),u(this,"validatorSet",i),u(this,"areaStyle",n),u(this,"layer",o),u(this,"ruleId",mo())}property(t,e,i){this.validatorSet.validatePropertyAndHandleShorthand(t,e,i,this.scope,this)}invalidPropertyValue(t,e){this.report(`E_INVALID_PROPERTY_VALUE ${t}: ${e.toString()}`)}unknownProperty(t,e){this.report(`E_INVALID_PROPERTY ${t}: ${e.toString()}`)}simpleProperty(t,e,i){let n=i?this.getImportantSpecificity():this.getBaseSpecificity();yo(t,e,this.validatorSet);let r=new X(e,n,this.layer,this.ruleId);Bi(this.areaStyle,t,r)}},nm=class{constructor(t,e,i){u(this,"store",t),u(this,"url",e),u(this,"document",i),u(this,"lang",null),u(this,"totalOffset",-1),u(this,"root"),u(this,"body"),u(this,"head"),u(this,"last"),u(this,"lastOffset",1),u(this,"idMap",null),this.root=Zm(i);let n=null,r=null;if(this.root.namespaceURI=="http://www.w3.org/1999/xhtml"){for(let o=this.root.firstChild;o;o=o.nextSibling){if(o.nodeType!=1)continue;let s=o;if(s.namespaceURI=="http://www.w3.org/1999/xhtml")switch(s.localName){case"head":r=s;break;case"body":n=s;break}}this.lang=this.root.getAttribute("lang")}this.body=n,this.head=r,this.last=this.root,this.last.setAttribute(jt,"0")}doc(){return new om([this.document])}getElementOffset(t){let e=t.getAttribute(jt);if(e)return parseInt(e,10);let i=this.lastOffset,n=this.last;for(;n!=t;){let r=n.firstChild;if(!r){for(;r=n.nextSibling,!r;)if(n=n.parentNode,n==null)throw new Error("Internal error")}n=r,r.nodeType==1?(r.setAttribute(jt,i.toString()),++i):i+=r.textContent.length}return this.lastOffset=i,this.last=t,i-1}getNodeOffset(t,e,i){let n=0,r=t,o=null;if(r.nodeType==1){if(!i)return this.getElementOffset(r)}else{if(n=e,o=r.previousSibling,!o)return r=r.parentNode,n+=1,this.getElementOffset(r)+n;r=o}for(;;){for(;r.lastChild;)r=r.lastChild;if(r.nodeType==1)break;if(n+=r.textContent.length,o=r.previousSibling,!o){r=r.parentNode;break}r=o}return n+=1,this.getElementOffset(r)+n}getTotalOffset(){return this.totalOffset<0&&(this.totalOffset=this.getNodeOffset(this.root,0,!0)),this.totalOffset}getNodeByOffset(t){let e,i=this.root;for(;;){if(e=this.getElementOffset(i),e>=t)return i;let a=i.children;if(!a)break;let h=yi(a.length,l=>{let c=a[l];return this.getElementOffset(c)>t});if(h==0)break;i=a[h-1]}let n=e+1,r=i,o=r.firstChild||r.nextSibling,s=null;for(;;){if(o){if(o.nodeType==1||(r=o,s=r,n+=o.textContent.length,n>t&&!/^\s*$/.test(o.textContent)))break}else if(r=r.parentNode,!r)break;o=r.nextSibling}return o&&s&&/^\s*$/.test(s.textContent)&&(s=o),s||i}buildIdMap(t){let e=t.getAttribute("id");e&&!this.idMap[e]&&(this.idMap[e]=t);let i=t.getAttributeNS("http://www.w3.org/XML/1998/namespace","id");i&&!this.idMap[i]&&(this.idMap[i]=t);for(let n=t.firstElementChild;n;n=n.nextElementSibling)this.buildIdMap(n)}getElement(t){var e;let i=t.match(/([^#]*)#(.+)$/);if(!i||i[1]&&i[1]!=this.url&&((e=this.store)==null?void 0:e.get(i[1]))!==this)return null;let n=i[2],r=this.document.getElementById(n);return!r&&this.document.getElementsByName&&(r=this.document.getElementsByName(n)[0]),r||(this.idMap||(this.idMap={},this.buildIdMap(this.document.documentElement)),r=this.idMap[n]),r}},Ul=(t=>(t.TEXT_HTML="text/html",t.TEXT_XML="text/xml",t.APPLICATION_XML="application/xml",t.APPLICATION_XHTML_XML="application/xhtml+xml",t.IMAGE_SVG_XML="image/svg+xml",t))(Ul||{});function Wo(t,e,i){let n=i||new DOMParser,r;try{r=n.parseFromString(t,e)}catch{}return!r||e!=="text/html"&&r.querySelector("parsererror")?null:r}function JC(t){let e=t.contentType;if(e){let n=Object.keys(Ul);for(let r=0;r<n.length;r++)if(Ul[n[r]]===e)return e;if(e.match(/\+xml$/))return"application/xml"}let i=t.url.match(/\.([^./#?]+)([#?]|$)/);if(i)switch(i[1]){case"html":case"htm":return"text/html";case"xhtml":case"xht":return"application/xhtml+xml";case"svg":case"svgz":return"image/svg+xml";case"opf":case"xml":return"application/xml"}return null}function rm(t,e){let i=t.responseXML;if(!i){let r=new DOMParser,o=t.responseText;if(o!=null){let s=JC(t);if(i=Wo(o,s||"application/xml",r),i&&!s){let a=i.documentElement;a.localName.toLowerCase()==="html"&&!a.namespaceURI?i=Wo(o,"text/html",r):a.localName.toLowerCase()==="svg"&&i.contentType!=="image/svg+xml"&&(i=Wo(o,"image/svg+xml",r))}i||(i=Wo(o,"text/html",r))}}let n=i?new nm(e,t.url,i):null;return F(n)}function QC(){return new lh(rm,"document")}var ek=class Wl{constructor(e){u(this,"fn",e)}check(e){return this.fn(e)}withAttribute(e,i){return new Wl(n=>this.check(n)&&n.nodeType==1&&n.getAttribute(e)==i)}withChild(e,i){return new Wl(n=>{if(!this.check(n))return!1;let r=new om([n]);return r=r.child(e),i&&(r=r.predicate(i)),r.size()>0})}},Bc=new ek(t=>!0),om=class Gl{constructor(e){u(this,"nodes",e)}asArray(){return this.nodes}size(){return this.nodes.length}predicate(e){let i=[];for(let n of this.nodes)e.check(n)&&i.push(n);return new Gl(i)}forEachNode(e){let i=[],n=r=>{i.push(r)};for(let r=0;r<this.nodes.length;r++)e(this.nodes[r],n);return new Gl(i)}forEach(e){let i=[];for(let n=0;n<this.nodes.length;n++)i.push(e(this.nodes[n]));return i}forEachNonNull(e){let i=[];for(let n=0;n<this.nodes.length;n++){let r=e(this.nodes[n]);r!=null&&i.push(r)}return i}child(e){return this.forEachNode((i,n)=>{for(let r=i.firstChild;r;r=r.nextSibling)r.nodeType==1&&r.localName==e&&n(r)})}childElements(){return this.forEachNode((e,i)=>{for(let n=e.firstChild;n;n=n.nextSibling)n.nodeType==1&&i(n)})}attribute(e){return this.forEachNonNull(i=>i.nodeType==1?i.getAttribute(e):null)}textContent(){return this.forEach(e=>e.textContent)}};function tk(t){return[...t].sort(Vi)}var ik=class extends hs{constructor(t,e,i,n,r,o,s,a){super(t,e,null,i,n,s,"counter-style",a),u(this,"counterStyleName",r),u(this,"counterStyles",o)}endRule(){super.endRule(),this.counterStyles.define(this.counterStyleName,this.elementStyle,{priority:this.getBaseSpecificity(),layer:this.layer})||Y.warn(`E_CSS_COUNTER_STYLE_INVALID: @counter-style ${this.counterStyleName}`)}},nk=class{constructor(t,e,i,n,r,o,s,a,h,l,c){u(this,"store",t),u(this,"rootScope",e),u(this,"pageScope",i),u(this,"cascade",n),u(this,"rootBox",r),u(this,"fontFaces",o),u(this,"footnoteProps",s),u(this,"flowProps",a),u(this,"viewportProps",h),u(this,"pageProps",l),u(this,"counterStyleStore",c),u(this,"fontDeobfuscator"),u(this,"validatorSet"),this.fontDeobfuscator=t.fontDeobfuscator,this.validatorSet=t.validatorSet,this.pageScope.defineBuiltIn("has-content",function(d){d=d;let p=this,f=p.currentLayoutPosition,g=f.firstFlowChunkOfFlow(d);return p.matchPageSide(f.startSideOfFlow(d))&&f.hasContent(d,p.lookupOffset)&&!!g&&!p.flowChunkIsAfterParentFlowForcedBreak(g)}),this.pageScope.defineName("page-number",new be(this.pageScope,function(){let d=this;return d.pageNumberOffset+d.getCurrentPageNumberForPageScope()},"page-number")),this.pageScope.defineName("blank-page",new be(this.pageScope,function(){let d=this.currentLayoutPosition;return d?.isBlankPage},"blank-page"))}sizeViewport(t,e,i,n){if(this.viewportProps.length){let r=new Ya(this.rootScope,t,e,i,i*Ql.lineHeight),o=G0(r,this.viewportProps),s=o.width,a=o.height,h=o["text-zoom"],l=1;if(s&&a||h){let c=vi.em;if((h?h.evaluate(r,"text-zoom"):null)===w.scale&&(l=c/i,i=c,t*=l,e*=l),s&&a){let d=ct(s.evaluate(r,"width"),r),p=ct(a.evaluate(r,"height"),r);if(d>0&&p>0)return{width:n&&n.spreadView?(d+n.pageBorder)*2:d,height:p,fontSize:i}}}}return{width:t,height:e,fontSize:i}}};function Mc(t){let e=new Map,i=n=>{n.formattingContext&&!e.has(n.formattingContext)&&e.set(n.formattingContext,n.formattingContext.saveState()),n.shadowSibling&&i(n.shadowSibling)};for(let n in t.flowPositions){let r=t.flowPositions[n];for(let o of r.positions){let s=o.chunkPosition.primary;for(let a of s.steps)i(a);if(o.chunkPosition.floats)for(let a of o.chunkPosition.floats)for(let h of a.steps)i(h)}}return e}function _c(t){for(let[e,i]of t)i!==void 0&&e.restoreState(i)}var Xh=class sm extends Ya{constructor(e,i,n,r,o,s,a,h,l,c,d,p,f,g,m,v,b){super(e.rootScope,r.width,r.height,r.fontSize,r.fontSize*f.lineHeight),u(this,"style",e),u(this,"xmldoc",i),u(this,"viewport",r),u(this,"clientLayout",o),u(this,"fontMapper",s),u(this,"customRenderer",a),u(this,"fallbackMap",h),u(this,"pageNumberOffset",l),u(this,"documentURLTransformer",c),u(this,"counterStore",d),u(this,"cmykStore",p),u(this,"lang"),u(this,"primaryFlows",{body:!0}),u(this,"rootPageBoxInstance"),u(this,"styler"),u(this,"stylerMap"),u(this,"currentLayoutPosition",null),u(this,"layoutPositionAtPageStart",null),u(this,"currentCascadedPageStyle",null),u(this,"lookupOffset",0),u(this,"faces"),u(this,"pageBoxInstances",{}),u(this,"pageManager"),u(this,"pageNumberContextStack",[]),u(this,"rootPageFloatLayoutContext"),u(this,"pageBreaks",{}),u(this,"pageProgression",null),u(this,"isVersoFirstPage",!1),u(this,"blankPageAtStart",!1),u(this,"pageSheetSize",{}),u(this,"pageSheetHeight",0),u(this,"pageSheetWidth",0),u(this,"invalidPageAreaOnCurrentPage",!1),u(this,"repeatedInvalidPageAreaLayoutPosition",null),u(this,"semanticFootnoteFirstRefOffsets",new Map),u(this,"semanticFootnoteFirstRefOffsetsInitialized",{value:!1}),u(this,"pageGroupPageCounts",Object.create(null)),u(this,"currentPageGroupDocument",null),this.lang=i.lang||n,this.faces=new ZS(this.style.fontDeobfuscator),this.rootPageFloatLayoutContext=Hu.createRoot(),this.pageProgression=v||null,this.isVersoFirstPage=!!b;for(let L in e.flowProps){let I=e.flowProps[L],D=ge(I,"flow-consume");D&&(D.evaluate(this,"flow-consume")==w.all?this.primaryFlows[L]=!0:delete this.primaryFlows[L])}this.pref=f,this.pubTitle=g,this.docTitle=m;let x=this.counterStore.createCounterListener(this.xmldoc.url),C=this.counterStore.createCounterResolver(this.xmldoc.url,this.style.rootScope,this.style.pageScope);this.styler=new Sc(this.xmldoc,this.style.cascade,this.style.rootScope,this,this.primaryFlows,this.style.validatorSet,x,C,this.style.counterStyleStore,this.cmykStore,this.style.validatorSet),C.setStyler(this.styler),this.styler.resetFlowChunkStream(this),this.stylerMap={},this.stylerMap[this.xmldoc.url]=this.styler;let y=this.styler.getTopContainerStyle();this.pageProgression||(this.pageProgression=Jg(y)),this.matchStartPageSide(this.styler.breakBeforeValues[0])||(this.pageNumberOffset===0?this.isVersoFirstPage=!0:this.blankPageAtStart=!0);let k=this.style.rootBox;this.rootPageBoxInstance=new bC(k);let S=this.style.cascade.createInstance(this,x,C,this.lang,this.style.counterStyleStore,this.cmykStore,this.xmldoc.root,this.style.rootScope,this.style.validatorSet,this.styler.styles,this.style.validatorSet);this.styler.cascade.currentPageType=this.styler.cascade.firstPageType,this.rootPageBoxInstance.applyCascadeAndInit(S,y),this.rootPageBoxInstance.resolveAutoSizing(this),this.pageManager=new DC(S,this.style.pageScope,this.rootPageBoxInstance,this,y);let N=this.style.pageProps;N[""]||(N[""]={}),Object.keys(N).forEach(L=>{let I=N[L];this.styler.cascade.applyVarFilter([I],null),Xn(I,!0)&&this.styler.cascade.applyVarFilter([I],null),this.styler.cascade.applyCalcFilter(I,this.styler.context),this.styler.cascade.applyCmykFilter(I);let D=Lc(js(I),this);this.pageSheetSize[L]={width:D.pageWidth+D.cropOffset*2,height:D.pageHeight+D.cropOffset*2}})}static create(e,i,n,r,o,s,a,h,l,c,d,p,f,g,m,v,b){let x=new sm(e,i,n,r,o,s,a,h,l,c,d,p,f,g,m,v,b),C=V("StyleInstance.create");return x.loadFontsAndScripts().then(()=>{C.finish(x)}),C.result()}loadFontsAndScripts(){let e=V("StyleInstance.loadFontsAndScripts"),i=[];for(let n of this.style.fontFaces){if(n.condition&&!n.condition.evaluate(this))continue;let r=YS(n.properties,this),o=new Vg(r);i.push(o)}return this.fontMapper.findOrLoadFonts(i,this.faces).then(()=>{tC(this.xmldoc.document,this.viewport.window,this.styler).thenFinish(e)}),e.result()}matchStartPageSide(e){let i=this.pageNumberOffset%2==(this.isVersoFirstPage?1:0),n=this.pageProgression=="ltr";switch(e){case"left":return i!==n;case"right":return i===n;case"recto":return i;case"verso":return!i;default:return!0}}getStylerForDoc(e){let i=this.stylerMap[e.url];if(!i){let n=this.style.store.getStyleForDoc(e),r=new Ya(n.rootScope,this.pageWidth(),this.pageHeight(),this.initialFontSize,this.initialFontSize*Ql.lineHeight),o=this.counterStore.createCounterListener(e.url),s=this.counterStore.createCounterResolver(e.url,n.rootScope,n.pageScope);i=new Sc(e,n.cascade,n.rootScope,r,this.primaryFlows,n.validatorSet,o,s,n.counterStyleStore,this.cmykStore,null),this.stylerMap[e.url]=i}return i}registerInstance(e,i){this.pageBoxInstances[e]=i}lookupInstance(e){return this.pageBoxInstances[e]}encounteredFlowChunk(e,i){let n=this.currentLayoutPosition;if(n){n.flows[e.flowName]?i=n.flows[e.flowName]:n.flows[e.flowName]=i;let r=n.flowPositions[e.flowName];r||(r=new Vw,n.flowPositions[e.flowName]=r);let o=Aw(e.element),s=new zi(o),a=new zw(s,e);r.positions.push(a)}}evalSupportsTest(e,i,n){if(n)return e==="selector"?this.evalSupportsSelector(i):!1;if(!e)return!1;if(ze(e))return typeof CSS<"u"&&CSS.supports(`(${e}:${i})`);let r=!0;class o{unknownProperty(l,c){r=!1}invalidPropertyValue(l,c){r=!1}simpleProperty(l,c,d){}}let s=new o,a=Mi(this.style.rootScope,new xt(i,null),"");return a?(this.xmldoc.store.validatorSet.validatePropertyAndHandleShorthand(e,a,!1,this.style.rootScope,s),r):!1}getCurrentPageNumberForPageScope(){var e;return this.currentLayoutPosition?this.currentLayoutPosition.page:(e=this.pageNumberContextStack[this.pageNumberContextStack.length-1])!=null?e:0}getPageNumberContextDepth(){return this.pageNumberContextStack.length}pushPageNumberContext(e){this.pageNumberContextStack.push(e)}restorePageNumberContextDepth(e){this.pageNumberContextStack.length=e}evalSupportsSelector(e){class i extends am{errorMsg(...a){}}let n=new i(null),r=Kd(e),o=new xt(r+"{}",n);return new uo(Ue,o,n,"").runParser(Number.POSITIVE_INFINITY,!1,!1,!1,!1)?!n.cascadeParserHandler.invalid:!1}getConsumedOffset(e){let i=Number.POSITIVE_INFINITY;for(let n=0;n<e.positions.length;n++){let r=e.positions[n].chunkPosition.primary,o=r.steps[0].node,s=r.offsetInNode,a=r.after,h=0;for(;o.ownerDocument!=this.xmldoc.document;)h++,o=r.steps[h].node,a=!1,s=0;let l=this.xmldoc.getNodeOffset(o,s,a);l<i&&(i=l)}return i}getNodePositionOffset(e){let i=e.steps[0].node,n=e.offsetInNode,r=e.after,o=0;for(;i.ownerDocument!=this.xmldoc.document;)o++,i=e.steps[o].node,r=!1,n=0;return this.xmldoc.getNodeOffset(i,n,r)}getPageStartOffset(e,i){if(!e)return 0;let n=Number.POSITIVE_INFINITY;for(let r in this.primaryFlows){let o=e.flowPositions[r];if(!i&&(!o||o.positions.length==0)&&this.currentLayoutPosition&&(this.styler.styleUntilFlowIsReached(r),o=this.currentLayoutPosition.flowPositions[r],e!=this.currentLayoutPosition&&o&&(o=o.clone(),e.flowPositions[r]=o)),o)for(let s=0;s<o.positions.length;s++){let a=o.positions[s].chunkPosition.primary,h=this.getNodePositionOffset(a);h<n&&(n=h)}}return n}getPageStartCounterOffsets(e){var i;let n=this.getPageStartOffset(e);if(!isFinite(n))return{counterOffset:n,changeOffset:n};let r=this.xmldoc.body||this.xmldoc.root,o=r?this.getFirstInFlowElementAtOrAfter(r,n):null,s=r?this.xmldoc.getElementOffset(r):n,a=n<=s,h=o===r&&a&&(i=this.getFirstInFlowChildElement(r))!=null?i:o;if(!h)return a?{counterOffset:s,changeOffset:s}:{counterOffset:n,changeOffset:n};let l=this.xmldoc.getElementOffset(h),c=n;return a&&l!==n&&(c=l),l===n&&(this.isInlineLevelElement(h)?c=Math.max(0,n-1):c=this.getDeepestFirstInFlowChildOffset(h)),{counterOffset:c,changeOffset:l}}getPageStartElement(e,i=this.getPageStartOffset(e)){var n;if(!isFinite(i))return null;let r=this.xmldoc.body||this.xmldoc.root;if(!r)return null;let o=this.getFirstInFlowElementAtOrAfter(r,i),s=this.xmldoc.getElementOffset(r),a=i<=s;if(o===r&&a)return(n=this.getFirstInFlowChildElement(r))!=null?n:o;if((o?this.xmldoc.getElementOffset(o):Number.POSITIVE_INFINITY)>i){let h=this.xmldoc.getNodeByOffset(i);if(!Ee(h)){let l=h.nodeType===Node.ELEMENT_NODE?h:h.parentElement;for(;l;){if(this.xmldoc.getElementOffset(l)<=i&&this.isPageBoundaryCandidateElement(l))return l;l=l.parentElement}}}return o}isForcedPageBreakValue(e){return Ye(e)&&e!=="column"&&e!=="region"}hasForcedPageBreakBefore(e){let i=ge(e,"break-before");if(!i)return!1;let n=i.evaluate(this,"break-before").toString();return this.isForcedPageBreakValue(n)}getExplicitPageType(e){let i=ge(e,"page");if(!i||Z(i.value))return null;let n=i.evaluate(this,"page").toString();return!n||n.toLowerCase()==="auto"?null:n}getPageGroupPageType(e){if(this.isInlineLevelElement(e))return null;let i=this.styler.getStyle(e,!1);return i?this.getExplicitPageType(i):null}getPageStartPageType(e){let i=this.getPageStartOffset(e,!0),n=this.getPageStartElement(e,i);for(;n;){let r=this.getPageGroupPageType(n);if(r)return r;if(n===this.xmldoc.root)break;n=n.parentElement}return""}getPageStartPageTypeOverride(e){if(this.getPageStartPageType(e)!=="")return;let i=this.getPageStartOffset(e,!0),n=this.getPageStartElement(e,i);if(n&&this.xmldoc.getElementOffset(n)<i)return"";for(;n&&(n=this.getFirstInFlowChildElement(n),!!n);){let r=this.getPageGroupPageType(n);if(r)return r}return""}getPreviousInFlowSibling(e){let i=e.previousElementSibling;for(;i;){if(this.isPageBoundaryCandidateElement(i))return i;i=i.previousElementSibling}return null}getFirstDocumentFlowElement(){var e;let i=this.xmldoc.body||this.xmldoc.root;if(!i)return null;let n=this.xmldoc.getElementOffset(i),r=this.getFirstInFlowElementAtOrAfter(i,n);return r===i&&(e=this.getFirstInFlowChildElement(i))!=null?e:r}getEffectiveFirstPageType(e){let i=e,n=i?this.getPageGroupPageType(i):null;for(;i;){let r=this.getFirstInFlowChildElement(i);if(!r)return n;let o=this.getPageGroupPageType(r);o&&(n=o),i=r}return n}getEffectivePageGroupStartElement(e){let i=e,n=e;for(;n;){let r=this.getFirstInFlowChildElement(n);if(!r)return i;this.getPageGroupPageType(r)&&(i=r),n=r}return i}resolveFirstPageType(){let e=this.getFirstDocumentFlowElement();return this.getEffectiveFirstPageType(e)}shouldStartPageGroup(e,i,n){let r=this.styler.getStyle(e,!1);if(!r)return!1;if(this.getFirstDocumentFlowElement()===e)return!0;let o=this.xmldoc.getElementOffset(e),s=this.xmldoc.body||this.xmldoc.root,a=this.xmldoc.getElementOffset(s);if(n<=a&&e===s||!this.getPreviousInFlowSibling(e)&&n===o)return!0;if(o!==n)return!1;if(this.hasForcedPageBreakBefore(r))return!0;let h=this.getPreviousInFlowSibling(e);if(!h)return!1;let l=this.styler.getStyle(h,!1);return l?this.getExplicitPageType(l)!==i:!1}updatePageGroupPageIndices(e){let i=this.pageManager.pageCascadeInstance;i.pageTypePageIndices=Object.create(null);let n=e?.startSideOfFlow("body")||null,r=e?.flowPositions.body,o=!!(r&&r.positions.length),s=!!n&&un(n)&&!this.matchPageSide(n)&&!o,a=!(this.blankPageAtStart&&(!e||e.page===1))&&!(e!=null&&e.isBlankPage)&&!s,h=this.getPageStartOffset(e),l=this.getPageStartElement(e,h);if(!l)return;let c=this.getEffectivePageGroupStartElement(l),d=c===l?h:this.xmldoc.getElementOffset(c),p=c.ownerDocument,f=this.currentPageGroupDocument!==p&&a;f&&(this.pageGroupPageCounts=Object.create(null),this.currentPageGroupDocument=p);let g=c;for(;g;){let m=this.getPageGroupPageType(g);if(m){let v=this.pageGroupPageCounts[m]||(this.pageGroupPageCounts[m]=new Map),b=v.get(g)||0;(b>0||a&&(f||this.shouldStartPageGroup(g,m,d)))&&(b+=1,v.set(g,b),(i.pageTypePageIndices[m]||(i.pageTypePageIndices[m]=[])).push(b))}if(g===this.xmldoc.root)break;g=g.parentElement}}preparePageGroupPageIndicesForRerender(e,i){this.pageGroupPageCounts=Object.create(null),this.currentPageGroupDocument=null;for(let n=0;n<i;n++){let r=e[n]||null;this.updatePageGroupPageIndices(r)}}getFirstInFlowElementAtOrAfter(e,i){if(this.isPageBoundaryCandidateElement(e)&&this.xmldoc.getElementOffset(e)>=i)return e;let n=e.ownerDocument.createTreeWalker(e,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{let o=r;return this.isNormalFlowElement(o)?this.isInlineLevelElement(o)||this.xmldoc.getElementOffset(o)<i?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT}}).firstChild();return n??null}getDeepestFirstInFlowChildOffset(e){let i=e;for(;;){let n=this.getFirstInFlowChildElement(i);if(!n)return this.xmldoc.getElementOffset(i);i=n}}getFirstInFlowChildElement(e){let i=e.firstChild;for(;i;){if(i.nodeType===Node.TEXT_NODE){if(!Ee(i))return null;i=i.nextSibling;continue}if(i.nodeType!==Node.ELEMENT_NODE){i=i.nextSibling;continue}let n=i;if(this.isNormalFlowElement(n))return this.isInlineLevelElement(n)?null:n;i=i.nextSibling}return null}isPageBoundaryCandidateElement(e){return this.isNormalFlowElement(e)&&!this.isInlineLevelElement(e)}isNormalFlowElement(e){var i,n;let r=this.styler.getStyle(e,!1);if(this.getDisplayValue(e)===w.none)return!1;let o=(i=r?.position)==null?void 0:i.evaluate(this.styler.context,"position"),s=o&&!Z(o)?o:w.static;if(Nr(s)||Ur(s))return!1;let a=(n=r?.float)==null?void 0:n.evaluate(this.styler.context,"float");return(a&&!Z(a)?a:w.none)===w.none}isInlineLevelElement(e){return Wt(this.getDisplayValue(e))}getDisplayValue(e){var i;let n=this.styler.getStyle(e,!1),r=(i=n?.display)==null?void 0:i.evaluate(this.styler.context,"display");return r&&!Z(r)?r:w.inline}getPosition(e,i){if(!e)return 0;let n=Number.POSITIVE_INFINITY;for(let r in this.primaryFlows){let o=e.flowPositions[r];if(!i&&(!o||o.positions.length==0)&&this.currentLayoutPosition&&(this.styler.styleUntilFlowIsReached(r),o=this.currentLayoutPosition.flowPositions[r],e!=this.currentLayoutPosition&&o&&(o=o.clone(),e.flowPositions[r]=o)),o){let s=this.getConsumedOffset(o);s<n&&(n=s)}}return n}dumpLocation(e){Y.debug("Location - page",this.currentLayoutPosition.page),Y.debug(" current:",e),Y.debug(" lookup:",this.lookupOffset);for(let i in this.currentLayoutPosition.flowPositions){let n=this.currentLayoutPosition.flowPositions[i];for(let r of n.positions)Y.debug(" Chunk",`${i}:`,r.flowChunk.startOffset)}}matchPageSide(e){switch(e){case"left":case"right":case"recto":case"verso":return new Qe(this.style.pageScope,`${e}-page`).evaluate(this);default:return!0}}updateStartSide(e){for(let i in e.flowPositions){let n=e.flowPositions[i];if(n&&n.positions.length>0){let r=n.positions[0].flowChunk;if(this.getConsumedOffset(n)===r.startOffset){let o=n.positions[0].flowChunk.breakBefore,s=n.startBreakType;n.startBreakType=Bu(nt(s,o))}}}}selectPageMaster(e){var i;let n=this.currentLayoutPosition,r=this.getPosition(n);if(r==Number.POSITIVE_INFINITY&&this.hasActiveRootPageFloatLayoutContext()&&(r=(i=n.highestSeenOffset)!=null?i:this.styler.getReachedOffset()),r==Number.POSITIVE_INFINITY)return null;let o=this.rootPageBoxInstance.children,s;for(let a=0;a<o.length;a++){if(s=o[a],s.pageBox.pseudoName===jh)continue;let h=1;s.pageBox.pseudoName===Uh&&!(this.actualPageWidth&&this.actualPageHeight)&&(h=1/0);let l=s.getProp(this,"utilization");l&&l.isNum()&&(h=l.num);let c=this.queryUnitSize("em",!1),d=this.pageWidth()*this.pageHeight(),p=Math.ceil(h*d/(c*c)),f=this.styler.cascade.currentPageType;this.lookupOffset=this.styler.styleUntil(r,p),this.styler.cascade.currentPageType=f,this.updateStartSide(n),this.layoutPositionAtPageStart=n.clone(),this.initLingering(),this.clearScope(this.style.pageScope);let g=s.getProp(this,"enabled");if(!g||g===w._true){if(n.page===1&&this.blankPageAtStart){s.style={};let m=e.size;e={},m&&(e.size=m)}return this.pageManager.getPageRulePageMaster(s,e)}}throw new Error("No enabled page masters")}flowChunkIsAfterParentFlowForcedBreak(e){let i=this.layoutPositionAtPageStart.flows,n=i[e.flowName].parentFlowName;if(n){let r=e.startOffset,o=i[n].forcedBreakOffsets;if(!o.length||r<o[0])return!1;let s=yi(o.length,c=>o[c]>r)-1,a=o[s],h=this.layoutPositionAtPageStart.flowPositions[n],l=this.getConsumedOffset(h);return a<l?!1:l<a?!0:!this.matchPageSide(h.startBreakType)}return!1}beginIsolatedRootPageFloatLayoutContext(e){let i=this.rootPageFloatLayoutContext;return this.rootPageFloatLayoutContext=Hu.createRoot(),e&&this.rootPageFloatLayoutContext.addPageFloatLayoutContextAsPreviousSibling(e),i}endIsolatedRootPageFloatLayoutContext(e){this.rootPageFloatLayoutContext=e}hasActiveRootPageFloatLayoutContext(){return this.rootPageFloatLayoutContext.getDeferredPageFloatContinuations().length>0||this.rootPageFloatLayoutContext.getPageFloatContinuationsDeferredToNext().length>0||this.rootPageFloatLayoutContext.getFloatsDeferredToNextInChildContexts().length>0}hasOnlyDeferredPageFloats(e){return this.noMorePrimaryFlows(e)&&this.hasActiveRootPageFloatLayoutContext()}layoutDeferredPageFloats(e){let i=e.pageFloatLayoutContext,n=i.getDeferredPageFloatContinuations(),r=this.counterStore.currentPageCountersStack.length>0,o=l=>{var c,d;if(!r||l.floatReference!==Ne.PAGE)return!1;let p=((d=(c=this.layoutPositionAtPageStart)==null?void 0:c.flowPositions)==null?void 0:d.body)||null,f=p?this.getConsumedOffset(p):Number.NaN,g=isFinite(f)?f:this.getPageStartOffset(this.layoutPositionAtPageStart,!0),m=this.xmldoc.getNodeOffset(l.nodePosition.steps[0].node,0,!1);return m!=null&&isFinite(g)&&m>g},s=V("layoutDeferredPageFloats"),a=!1,h=0;return s.loopWithFrame(l=>{if(h===n.length){l.breakLoop();return}let c=n[h++],d=c.float;if(o(d)){l.breakLoop();return}let p=new Wn().findByFloat(d),f=p.findPageFloatFragment(d,i);if(f&&f.hasFloat(d)){l.continueLoop();return}else if(i.isForbidden(d)||i.hasPrecedingFloatsDeferredToNext(d)){i.deferPageFloat(c),l.breakLoop();return}e.layoutPageFloatInner(c,p,null,f).then(g=>{if(!g){l.breakLoop();return}let m=i.parent.isInvalidated();if(m){l.breakLoop();return}else i.isInvalidated()&&!m&&(a=!0,i.validate());l.continueLoop()})}).then(()=>{a&&i.invalidate(),s.finish(!0)}),s.result()}getLastAfterPositionIfDeferredFloatsExists(e,i){if(e.pageFloatLayoutContext.getPageFloatContinuationsDeferredToNext().length>0)if(e.lastAfterPosition){let n;return i?(n=i.clone(),n.primary=e.lastAfterPosition):n=new zi(e.lastAfterPosition),n}else return null;else return null}flowRootFormattingContextFor(e){var i,n;return(n=(i=this.currentLayoutPosition.flows[e])==null?void 0:i.formattingContext)!=null?n:new ra(null)}layoutColumn(e,i){let n=this.currentLayoutPosition.flowPositions[i];if(!n||!this.matchPageSide(n.startBreakType))return n?this.layoutDeferredPageFloats(e):F(!0);this.primaryFlows[i]&&e.bands.length>0&&(e.forceNonfitting=!1);let r=V("layoutColumn");return this.layoutDeferredPageFloats(e).then(()=>{if(e.pageFloatLayoutContext.isInvalidated()){r.finish(!0);return}let o=[],s=[],a=!0;r.loopWithFrame(h=>{if(e.pageFloatLayoutContext.hasContinuingFloatFragmentsInFlow(i)){h.breakLoop();return}for(;n.positions.length-s.length>0;){let l=0;for(;s.includes(l);)l++;let c=n.positions[l];if(c.flowChunk.startOffset>this.lookupOffset||this.flowChunkIsAfterParentFlowForcedBreak(c.flowChunk))break;for(let f=l+1;f<n.positions.length;f++){if(s.includes(f))continue;let g=n.positions[f];if(g.flowChunk.startOffset>this.lookupOffset||this.flowChunkIsAfterParentFlowForcedBreak(g.flowChunk))break;g.flowChunk.isBetter(c.flowChunk)&&(c=g,l=f)}let d=c.flowChunk,p=!0;if(e.layout(c.chunkPosition,a,n.breakAfter).then(f=>{if(e.pageFloatLayoutContext.isInvalidated()){h.breakLoop();return}if(a=!1,c.flowChunk.repeated&&(f===null||d.exclusive)&&o.push(l),d.exclusive){s.push(l),h.breakLoop();return}else{let g=!!f||!!e.pageBreakType,m=this.getLastAfterPositionIfDeferredFloatsExists(e,f);if(!f&&e.pageBreakType&&n.positions.length-s.length-1<=0&&(e.pageBreakType=null),e.pageBreakType&&m?(c.chunkPosition=m,n.breakAfter=e.pageBreakType,e.pageBreakType=null):(s.push(l),(f||m)&&(c.chunkPosition=f||m,o.push(l)),n.startBreakType=Bu(e.pageBreakType)),g){h.breakLoop();return}}e.forceNonfitting=!1,p?p=!1:h.continueLoop()}),p){p=!1;return}}h.breakLoop()}).then(()=>{var h;if(!e.pageFloatLayoutContext.isInvalidated()){n.positions=n.positions.filter((c,d)=>o.includes(d)||!s.includes(d)),n.breakAfter==="column"&&(n.breakAfter=null),e.saveDistanceToBlockEndFloats();let l=e.pageFloatLayoutContext.getMaxReachedAfterEdge();if(e.updateMaxReachedAfterEdge(l),e.computedBlockSize===0){let c=e.pageFloatLayoutContext,d=c;for(;d;){let p=d.floatFragments.filter(f=>"isFootnote"in f.area&&f.area.isFootnote);if(p.length>0&&!d.ignoreFootnoteAreaMaxHeight&&p.some(f=>{let g=getComputedStyle(f.area.element),m=v=>v!==""&&v!=="none";return m(g.getPropertyValue("max-block-size"))||m(f.area.vertical?g.maxWidth:g.maxHeight)})){d.ignoreFootnoteAreaMaxHeight=!0;for(let f of p){c.removePageFloatFragment(f,!0);let g=(h=f.continuations[0])==null?void 0:h.float;g&&d.removeFloatDeferredToNext(g)}c.invalidate();break}d=d.parent}}}r.finish(!0)})}),r.result()}createLayoutConstraint(e){let i=this.currentLayoutPosition.page-1,n=this.counterStore.createLayoutConstraint(i);return new eS([n].concat(e.getLayoutConstraints()))}createAndLayoutColumn(e,i,n,r,o,s,a,h,l,c,d,p,f,g){let m=e.vertical?e.isAutoWidth&&e.isRightDependentOnAutoWidth||e.isAutoHeight:e.isAutoHeight&&e.isTopDependentOnAutoHeight||e.isAutoWidth,v=o.element,b=Oi.create(h,Ne.COLUMN,a,null,null,null),x=this.currentLayoutPosition.clone(),C=V("createAndLayoutColumn"),y;return C.loopWithFrame(k=>{let S=this.createLayoutConstraint(b);if(l>1){let N=this.viewport.document.createElement("div");R(N,"position","absolute"),v.appendChild(N);let L,I,D,J;if(o.vertical){let te=(o.rtl?l-s-1:s)*(d+c)+o.paddingTop,P=parseFloat(v.style.width);L=o.paddingLeft+P-o.width,D=o.width,I=te,J=d}else L=(o.rtl?l-s-1:s)*(d+c)+o.paddingLeft,D=d,I=o.paddingTop,J=o.height;R(N,"left",`${L}px`),R(N,"top",`${I}px`),y=new Us(N,f,this.clientLayout,S,b,{vertical:o.vertical,rtl:o.rtl,snapWidth:o.snapWidth,snapHeight:o.snapHeight,originX:i,originY:n,left:L,top:I,width:D,height:J,marginLeft:0,marginRight:0,marginTop:0,marginBottom:0,borderLeft:0,borderRight:0,borderTop:0,borderBottom:0,paddingLeft:0,paddingRight:0,paddingTop:0,paddingBottom:0,borderBoxSizing:!1},p,m?[]:r.concat(),this.flowRootFormattingContextFor(a)),y.isNonFirstColumn=s>0,y.forceNonfitting=g}else y=new Us(v,f,this.clientLayout,S,b,o,p,m?[]:r.concat(),this.flowRootFormattingContextFor(a)),y.isNonFirstColumn=!1;if((y.vertical?y.height:y.width)>=0){let N=y.pageFloatLayoutContext;this.layoutColumn(y,a).then(()=>{N.isInvalidated()||N.finish(),y.pageFloatLayoutContext.isInvalidated()&&!h.isInvalidated()?(y.pageFloatLayoutContext.validate(),this.currentLayoutPosition=x.clone(),y.element!==v&&v.removeChild(y.element),k.continueLoop()):k.breakLoop()})}else y.pageFloatLayoutContext.finish(),k.breakLoop()}).then(()=>{C.finish(y)}),C.result()}getRegionPageFloatLayoutContext(e,i,n,r){i instanceof Yn;let o=i.getProp(this,"writing-mode")||null,s=i.getProp(this,"direction")||null;return Oi.createWithContainer(n,e,Ne.REGION,r,null,o,s)}layoutFlowColumnsWithBalancing(e,i,n,r,o,s,a,h,l){let c=this.currentLayoutPosition.clone(),d=this.getRegionPageFloatLayoutContext(s,i,a,h),p=!0,f=()=>(this.currentLayoutPosition=c.clone(),this.layoutFlowColumns(e,i,n,r,o,s,d,a,h,l,p).thenAsync(g=>F(g?{columns:g,position:this.currentLayoutPosition}:null)));return f().thenAsync(g=>{if(!g)return F(null);if(l<=1)return F(g.columns);let m=i.getProp(this,"column-fill")||w.balance,v=this.currentLayoutPosition.flowPositions[h],b=HS(l,m,f,d,a,g.columns,v);return b?(p=!1,s.lock(),d.lock(),b.balanceColumns(g).thenAsync(x=>(s.unlock(),s.validate(),d.unlock(),this.currentLayoutPosition=x.position,F(x.columns)))):F(g.columns)})}layoutFlowColumns(e,i,n,r,o,s,a,h,l,c,d){let p=V("layoutFlowColumns"),f=this.currentLayoutPosition.clone(),g=Mc(this.currentLayoutPosition),m=i.getPropAsNumber(this,"column-gap"),v=c>1?i.getPropAsNumber(this,"column-width"):h.vertical?h.height:h.width,b=i.getActiveRegions(this),x=i.getProp(this,"shape-inside"),C=Xd(x,0,0,h.width,h.height,this),y=new dC(l,this,this.viewport,this.styler,b,this.xmldoc,this.faces,this.style.footnoteProps,this,e,this.customRenderer,this.fallbackMap,this.documentURLTransformer,this.style.pageProps,this.currentCascadedPageStyle,this.semanticFootnoteFirstRefOffsets,this.semanticFootnoteFirstRefOffsetsInitialized),k=0,S=null,N=[];return p.loopWithFrame(L=>{this.createAndLayoutColumn(i,n,r,o,h,k++,l,a,c,m,v,C,y,d).then(I=>{if(s.isInvalidated()){N=null,L.breakLoop();return}if((I.pageBreakType&&I.pageBreakType!=="column"||k===c)&&!a.isInvalidated()&&a.finish(),a.isInvalidated()){k=0,this.currentLayoutPosition=f.clone(),_c(g),a.validate(),a.isLocked()?(N=null,L.breakLoop()):L.continueLoop();return}S=I,N[k-1]=S,S.pageBreakType&&S.pageBreakType!="column"&&(k=c,S.pageBreakType!="region"&&(this.pageBreaks[l]=!0)),k<c?L.continueLoop():L.breakLoop()})}).then(()=>{p.finish(N)}),p.result()}openPageBox(e,i,n,r,o,s){let a=i.getProp(this,"wrap-flow")===w.auto,h=i.getProp(this,"flow-from"),l=this.viewport.document.createElement("div");l.role=i instanceof tm?"complementary":"presentation";let c=i.getProp(this,"position");R(l,"position",c?c.name:"absolute");let d=i instanceof to;i instanceof Yn?n.appendChild(l):n.insertBefore(l,n.firstChild);let p=new Vp(l);return p.vertical=i.vertical,p.rtl=i.rtl,p.borderBoxSizing=i.borderBoxSizing,p.exclusions=s,i.prepareContainer(this,p,e,this.faces,this.clientLayout),(p.width<=0||p.height<=0)&&(i instanceof to||h&&h.isIdent())&&(this.invalidPageAreaOnCurrentPage=!0,Y.warn("Negative or zero page area size")),p.originX=r,p.originY=o,{boxContainer:l,container:p,offsetX:r+p.left+p.marginLeft+p.borderLeft,offsetY:o+p.top+p.marginTop+p.borderTop,flowName:h,dontExclude:a,forwardOrderInLayout:d,removed:!1}}layoutGeneratedContent(e,i,n,r){let o=n.boxContainer,s=[],a=i.getProp(this,"content");if(a instanceof j&&a.expr instanceof be&&a.expr.str.startsWith("running-element-"))a.visit(new Wr(o,this,a,this.counterStore.getExprContentListener()));else if(At(a)){let h="span";a instanceof et&&(h="img");let l=this.viewport.document.createElement(h);a.visit(new Wr(l,this,a,this.counterStore.getExprContentListener())),o.appendChild(l),h=="img"&&i.transferSingleUriContentProps(this,l,this.faces),i.transferContentProps(this,n.container,e,this.faces);let c=l.querySelectorAll("img[src]");for(let p=0;p<c.length;p++){let f=c[p],g=f.getAttribute("src");if(!g)continue;let m=Pt(f,g);s.push(m),e.fetchers.push(m)}let d=l.getAttribute("src");if(d){let p=l.querySelector("img");p||(p=l);let f=Pt(p,d);s.push(f),e.fetchers.push(f)}h=="span"&&jx(l,i.getProp(this,"text-autospace"),i.getProp(this,"text-spacing-trim"),i.getProp(this,"hanging-punctuation"),this.lang,i.vertical)}else i.suppressEmptyBoxGeneration&&(r.removeChild(o),n.removed=!0);return n.removed||i.finishContainer(this,n.container,e,null,1,this.clientLayout,this.faces),s.length?Hn(s).thenReturn(!0):F(!0)}layoutPageBoxContent(e,i,n,r,o,s){let a=n.boxContainer,h=n.flowName;if(!h||!h.isIdent())return this.layoutGeneratedContent(e,i,n,r);if(!this.pageBreaks[h.toString()]){let l=V("layoutPageBoxContent.inner"),c=h.toString(),d=i.getPropAsNumber(this,"column-count");return this.layoutFlowColumnsWithBalancing(e,i,n.offsetX,n.offsetY,o,s,n.container,c,d).then(p=>{if(!s.isInvalidated()){let f=p[0];f.element===a&&(n.container=f),n.container.computedBlockSize=Math.max.apply(null,p.map(m=>m.computedBlockSize)),i.finishContainer(this,n.container,e,f,d,this.clientLayout,this.faces);let g=this.currentLayoutPosition.flowPositions[c];g&&g.breakAfter==="region"&&(g.breakAfter=null)}l.finish(!0)}),l.result()}return s.isInvalidated()||i.finishContainer(this,n.container,e,null,1,this.clientLayout,this.faces),F(!0)}excludeOrRemovePageBox(e,i,n,r){if(!e.isAutoHeight||Math.floor(i.container.computedBlockSize)>0){if(!i.removed&&!i.dontExclude){let o=e.getProp(this,"shape-outside"),s=i.container.getOuterShape(o,this);r.push(s)}}else if(e.children.length==0)return n.removeChild(i.boxContainer),!1;return!0}layoutPageBoxChildren(e,i,n,r,o,s=null){let a=V("layoutPageBoxChildren"),h=n.forwardOrderInLayout,l=h?0:i.children.length-1;return a.loop(()=>{for(;l>=0&&l<i.children.length;){let c=i.children[h?l++:l--];if(c===s)continue;let d=this.layoutContainer(e,c,n.boxContainer,n.offsetX,n.offsetY,r,o);if(d.isPending())return d.thenAsync(()=>F(!o.isInvalidated()));if(o.isInvalidated())break}return F(!1)}).then(()=>{a.finish(!0)}),a.result()}layoutPageAreaEstablishingContainer(e,i,n,r,o,s,a){i.reset();let h=V("layoutPageAreaEstablishingContainer"),l=this.openPageBox(e,i,n,r,o,s),c=i.pageAreaEstablishingChild;if(c===null){let d=a.withContainer(l.container);return this.layoutPageBoxContent(e,i,l,n,s,d).then(()=>{if(d.isInvalidated()||!this.excludeOrRemovePageBox(i,l,n,s)){h.finish(d);return}this.layoutPageBoxChildren(e,i,l,s,d).then(()=>{h.finish(d)})}),h.result()}return this.layoutGeneratedContent(e,i,l,n).then(()=>{this.excludeOrRemovePageBox(i,l,n,s),this.layoutPageAreaEstablishingContainer(e,c,l.boxContainer,l.offsetX,l.offsetY,s,a).then(d=>{if(d.isInvalidated()){h.finish(d);return}this.layoutPageBoxChildren(e,i,l,s,d,c).then(()=>{h.finish(d)})})}),h.result()}layoutContainer(e,i,n,r,o,s,a){i.reset();let h=i.getProp(this,"enabled");if(h&&h!==w._true)return F(!0);let l=V("layoutContainer"),c=this.openPageBox(e,i,n,r,o,s);return this.layoutPageBoxContent(e,i,c,n,s,a).then(()=>{if(a.isInvalidated()){l.finish(!0);return}if(!this.excludeOrRemovePageBox(i,c,n,s)){l.finish(!0);return}this.layoutPageBoxChildren(e,i,c,s,a).then(()=>{l.finish(!0)})}),l.result()}processLinger(){let e=this.currentLayoutPosition.page;for(let i in this.currentLayoutPosition.flowPositions){let n=this.currentLayoutPosition.flowPositions[i];for(let r=n.positions.length-1;r>=0;r--){let o=n.positions[r];o.flowChunk.startPage>=0&&o.flowChunk.startPage+o.flowChunk.linger-1<=e&&n.positions.splice(r,1)}}}initLingering(){let e=this.currentLayoutPosition.page;for(let i in this.currentLayoutPosition.flowPositions){let n=this.currentLayoutPosition.flowPositions[i];for(let r=n.positions.length-1;r>=0;r--){let o=n.positions[r];o.flowChunk.startPage<0&&o.flowChunk.startOffset<this.lookupOffset&&(o.flowChunk.startPage=e)}}}noMorePrimaryFlows(e){for(let i in this.primaryFlows){let n=e.flowPositions[i];if(n&&n.positions.length>0)return!1}return!0}hasSameFlowPositions(e,i){if(e===i)return!0;if(!e||!i)return!1;let n=Object.keys(e.flowPositions),r=Object.keys(i.flowPositions);if(n.length!==r.length)return!1;for(let o of n)if(!e.flowPositions[o].isSamePosition(i.flowPositions[o]))return!1;return!0}checkRepeatedInvalidPageArea(e){let i=this.invalidPageAreaOnCurrentPage;if(this.invalidPageAreaOnCurrentPage=!1,!i){this.repeatedInvalidPageAreaLayoutPosition=null;return}if(e.isBlankPage||this.noMorePrimaryFlows(e))return;if(!this.hasSameFlowPositions(this.layoutPositionAtPageStart,e)){this.repeatedInvalidPageAreaLayoutPosition=null;return}let n=!!this.repeatedInvalidPageAreaLayoutPosition&&this.hasSameFlowPositions(this.repeatedInvalidPageAreaLayoutPosition,this.layoutPositionAtPageStart);if(this.repeatedInvalidPageAreaLayoutPosition=this.layoutPositionAtPageStart.clone(),n)throw new Error("Negative or zero page area size")}layoutNextPage(e,i){var n,r,o,s;let a=e.container===e.bleedBox;this.pageBreaks={},i?(this.currentLayoutPosition=i.clone(),this.styler.replayFlowElementsFromOffset(i.highestSeenOffset)):(this.currentLayoutPosition=new $w,this.styler.replayFlowElementsFromOffset(-1)),this.lang&&e.bleedBox.setAttribute("lang",this.lang),this.invalidPageAreaOnCurrentPage=!1,i=this.currentLayoutPosition;let h=i.startSideOfFlow("body");i.isBlankPage=un(h)&&this.matchPageSide(h),e.isBlankPage=i.isBlankPage,i.page++;let l=this.hasOnlyDeferredPageFloats(i),c=l?void 0:this.getPageStartPageTypeOverride(i);if(c===""?e.pageType="":c&&(e.pageType=c),e.pageType==null){let y=i.page===1?this.resolveFirstPageType():null,k=(n=this.styler.cascade.currentPageType)!=null?n:this.styler.cascade.previousPageType,S=e.isBlankPage?this.styler.cascade.previousPageType:l?k:y??this.styler.cascade.currentPageType;if(e.pageType=S,!e.pageType){let N=this.getPageStartPageType(i);N&&(e.pageType=N)}e.pageType=(r=e.pageType)!=null?r:"",this.styler.cascade.previousPageType=this.styler.cascade.currentPageType}this.updatePageGroupPageIndices(i),this.clearScope(this.style.pageScope),this.layoutPositionAtPageStart=i.clone();let d=Mc(i),p=a?{}:this.pageManager.getCascadedPageStyle(e.pageType);if(this.currentCascadedPageStyle=p,this.styler.cascade.applyVarFilter([p],null),Xn(p,!0)&&this.styler.cascade.applyVarFilter([p],null),this.styler.cascade.applyCalcFilter(p,this.styler.context),this.styler.cascade.applyCmykFilter(p),!a){let y=new Qe(this.style.pageScope,"left-page");e.side=y.evaluate(this)?"left":"right",e.container.setAttribute("data-vivliostyle-page-side",e.side)}let f=this.selectPageMaster(p);if(!f)return F(null);let g=0;if(!a){e.setAutoPageWidth(f.pageBox.specified.width.value===so),e.setAutoPageHeight(f.pageBox.specified.height.value===ao);let{counterOffset:y,changeOffset:k}=this.getPageStartCounterOffsets(this.layoutPositionAtPageStart);isFinite(y)||(y=this.lookupOffset,k=this.lookupOffset),isFinite(y)&&this.styler.styleUntil(y,0);let S=this.styler.getCounterSnapshotAtOffset(y),N=k===y?S:this.styler.getCounterSnapshotAtOffset(k);S||(S=this.styler.getLastCounterSnapshot()),N||(N=S);let L=N&&N.offset===k?N:null;this.counterStore.setCurrentPageDocCounters((o=S?.counters)!=null?o:null,(s=L?.changes)!=null?s:null,L?.changeTypes),this.counterStore.setCurrentPage(e),this.counterStore.updatePageCounters(p,this);let I=Lc(js(p),this);this.setPageSizeAndBleed(I,e),AC(p,I,e,this),g=I.bleedOffset+I.bleed}let m=!a&&f.getProp(this,"writing-mode")||w.horizontal_tb;this.pageVertical=m!=w.horizontal_tb;let v=f.getProp(this,"direction")||w.ltr,b=Oi.create(this.rootPageFloatLayoutContext,Ne.PAGE,null,null,m,v,null,e.side),x=V("layoutNextPage"),C=null;return x.loopWithFrame(y=>{this.layoutPageAreaEstablishingContainer(e,f,e.bleedBox,g,g,[],b).then(k=>{if(C=k,b.isInvalidated()||k.finish(),b.isInvalidated()){for(this.currentLayoutPosition=this.layoutPositionAtPageStart.clone(),_c(d),b.validate();e.bleedBox.lastChild;)e.bleedBox.removeChild(e.bleedBox.lastChild);y.continueLoop()}else y.breakLoop()})}).then(()=>{e.pageFloatLayoutContext=C,f.adjustPageLayout(this,e,this.clientLayout),a||(this.processLinger(),i=this.currentLayoutPosition,this.checkRepeatedInvalidPageArea(i),Object.keys(i.flowPositions).forEach(k=>{let S=i.flowPositions[k],N=S.breakAfter;N&&(N==="page"||!this.matchPageSide(N))&&(S.breakAfter=null)})),this.currentLayoutPosition=this.layoutPositionAtPageStart=null,i.highestSeenOffset=this.styler.getReachedOffset();let y=this.style.store.getTriggersForDoc(this.xmldoc);e.finish(y,this.clientLayout),this.noMorePrimaryFlows(i)&&!this.hasActiveRootPageFloatLayoutContext()&&(i=null),x.finish(i)}),x.result()}setPageSizeAndBleed(e,i){this.actualPageWidth=e.pageWidth,this.actualPageHeight=e.pageHeight,this.pageSheetWidth=e.pageWidth+e.cropOffset*2,this.pageSheetHeight=e.pageHeight+e.cropOffset*2,i.container.style.width=`${this.pageSheetWidth}px`,i.container.style.height=`${this.pageSheetHeight}px`,i.bleedBox.style.left=`${e.bleedOffset}px`,i.bleedBox.style.right=`${e.bleedOffset}px`,i.bleedBox.style.top=`${e.bleedOffset}px`,i.bleedBox.style.bottom=`${e.bleedOffset}px`,i.bleedBox.style.padding=`${e.bleed}px`}},rk=class cs extends $s{constructor(e,i,n,r,o,s,a,h){super(n,i,o,s,a,r,h),u(this,"masterHandler",e),u(this,"insideRegion",!1)}startPageTemplateRule(){}startPageMasterRule(e,i,n){let r=new Ug(this.masterHandler.pageScope,e,i,n,this.masterHandler.rootBox,this.condition,this.owner.getBaseSpecificity(),this.layer);this.owner.delegateTo(o=>new CC(r.scope,this.owner,r,this.validatorSet,o))}startWhenRule(e){let i=e.expr;this.condition!=null&&(i=Xt(this.scope,this.condition,i)),this.owner.delegateTo(n=>new cs(this.masterHandler,this.owner,this.scope,this.validatorSet,i,this,this.regionId,n))}startLayerRule(e){let i=this.cascade.registerLayer(this.flavor,this.layer,e);this.owner.delegateTo(n=>{let r=new cs(this.masterHandler,this.owner,this.scope,this.validatorSet,this.condition,this,this.regionId,n);return r.layer=i,r})}startDefineRule(){this.owner.delegateTo(e=>new Lx(this.scope,this.owner,e))}startFontFaceRule(){let e={};this.masterHandler.fontFaces.push({properties:e,condition:this.condition,priority:this.getBaseSpecificity(),layer:this.layer}),this.owner.delegateTo(i=>new hs(this.scope,this.owner,null,e,this.masterHandler.validatorSet,i,"font-face",this.layer))}startCounterStyleRule(e){this.owner.delegateTo(i=>new ik(this.scope,this.owner,{},this.masterHandler.validatorSet,e,this.masterHandler.counterStyles,i,this.layer))}startFlowRule(e){let i=this.masterHandler.flowProps[e];i||(i={},this.masterHandler.flowProps[e]=i),this.owner.delegateTo(n=>new hs(this.scope,this.owner,null,i,this.masterHandler.validatorSet,n,void 0,this.layer))}startViewportRule(){let e={};this.masterHandler.viewportProps.push(e),this.owner.delegateTo(i=>new hs(this.scope,this.owner,this.condition,e,this.masterHandler.validatorSet,i,void 0,this.layer))}startFootnoteRule(e){let i=this.masterHandler.footnoteProps;if(e){let n=li(i,"_pseudos");i=n[e],i||(i={},n[e]=i)}this.owner.delegateTo(n=>new im(this.scope,this.owner,this.masterHandler.validatorSet,i,n,this.layer))}startRegionRule(){this.insideRegion=!0,this.startSelectorRule()}startPageRule(){this.owner.delegateTo(e=>new ZC(this.masterHandler.pageScope,this.owner,this,this.validatorSet,this.masterHandler.pageProps,e)).startPageRule()}startRuleBody(){if($s.prototype.startRuleBody.call(this),this.insideRegion){this.insideRegion=!1;let e=`R${this.masterHandler.regionCount++}`;this.special("region-id",_(e)),this.endRule(),this.owner.delegateTo(i=>new cs(this.masterHandler,this.owner,this.scope,this.validatorSet,this.condition,this,e,i)).startRuleBody()}}},am=class extends iw{constructor(t){let e=new qa(null);super(e,i=>new rk(i,i,e,t,null,null,null,null)),u(this,"validatorSet",t),u(this,"rootScope"),u(this,"pageScope"),u(this,"rootBox"),u(this,"cascadeParserHandler"),u(this,"regionCount",0),u(this,"fontFaces",[]),u(this,"counterStyles",new r0),u(this,"footnoteProps",{}),u(this,"flowProps",{}),u(this,"viewportProps",[]),u(this,"pageProps",{}),this.rootScope=e,this.pageScope=new qa(this.rootScope),this.rootBox=new mC(this.rootScope),this.cascadeParserHandler=this.initialSlave}};function Dc(t,e){return t.text!=null?{url:t.url?Ie(_n(t.url),an):t.url,text:t.text,flavor:e,classes:null,media:null}:{url:t.url?Ie(_n(t.url),an):t.url,flavor:e,classes:null,media:null}}function ok(t,e){return e.parseOPSResource(t)}var sk=class extends lh{constructor(t,e=null,i=null){super(ok,"document"),u(this,"fontDeobfuscator",t),u(this,"styleByKey",{}),u(this,"styleFetcherByKey",{}),u(this,"styleByDocURL",{}),u(this,"triggersByDocURL",{}),u(this,"validatorSet",k0()),u(this,"styleSheets",[]),u(this,"triggerSingleDocumentPreprocessing",!1),this.setStyleSheets(e,i)}getStyleForDoc(t){return this.styleByDocURL[t.url]}getTriggersForDoc(t){return this.triggersByDocURL[t.url]}setStyleSheets(t,e){this.clearStyleSheets(),t&&t.forEach(this.addAuthorStyleSheet,this),e&&e.forEach(this.addUserStyleSheet,this)}clearStyleSheets(){this.styleSheets.splice(0)}addAuthorStyleSheet(t){this.styleSheets.push(Dc(t,"Author"))}addUserStyleSheet(t){this.styleSheets.push(Dc(t,"User"))}parseOPSResource(t){let e=V("OPSDocStore.load"),i=t.url,n=Ys(i);return rm(t,this).then(r=>{var o;if(!r){e.finish(null);return}if(this.triggerSingleDocumentPreprocessing){let p=zt("PREPROCESS_SINGLE_DOCUMENT");for(let f=0;f<p.length;f++)try{p[f](r.document)}catch(g){Y.warn("Error during single document preprocessing:",g)}}let s=[],a=r.document.getElementsByTagNameNS("http://www.idpf.org/2007/ops","trigger");for(let p=0;p<a.length;p++){let f=a[p],g=f.getAttributeNS("http://www.w3.org/2001/xml-events","observer"),m=f.getAttributeNS("http://www.w3.org/2001/xml-events","event"),v=f.getAttribute("action"),b=f.getAttribute("ref");g&&m&&v&&b&&s.push({observer:g,event:m,action:v,ref:b})}this.triggersByDocURL[i]=s;let h=[];if(h.push({url:Ie("user-agent-base.css",Ei),text:dp,flavor:"UA",classes:null,media:null}),h.push({url:Ie("user-agent-page.css",Ei),text:cp,flavor:"UA",classes:null,media:null}),h.push({url:Ie("user-agent-counter-styles.css",Ei),text:gp,flavor:"UA",classes:null,media:null}),n)h.push({url:Ie("user-agent-toc.css",Ei),text:pp,flavor:"UA",classes:null,media:null});else{let p=r.document.querySelectorAll("style, link, meta");for(let f of p){let g=f.namespaceURI,m=f.localName;if(g=="http://www.w3.org/1999/xhtml")if(m=="style"){let v=f.getAttribute("class"),b=f.getAttribute("media"),x=f.getAttribute("title");h.push({url:i,text:f.textContent,flavor:"Author",classes:x?v:null,media:b})}else if(m=="link"){let v=f.getAttribute("href"),b=(o=f.getAttribute("rel"))==null?void 0:o.split(/\s+/),x=f.getAttribute("class"),C=f.getAttribute("media");if(v&&b!=null&&b.includes("stylesheet")&&(!b.includes("alternate")||x)){let y=Ie(v,i),k=f.getAttribute("title");h.push({url:y,text:null,classes:k?x:null,media:C,flavor:"Author"})}}else m=="meta"&&f.getAttribute("name")=="viewport"&&h.push({url:i,text:this.processViewportMeta(f),flavor:"Author",classes:null,media:null})}for(let f=0;f<this.styleSheets.length;f++)h.push(this.styleSheets[f])}let l="";for(let p=0;p<h.length;p++)l+=h[p].url,l+="^",h[p].text&&(l+=h[p].text),l+="^";let c=this.styleByKey[l];if(c){this.styleByDocURL[i]=c,e.finish(r);return}let d=this.styleFetcherByKey[l];d||(d=new Qs(()=>{let p=V("fetchStylesheet"),f=0,g=new am(this.validatorSet);return p.loop(()=>{if(f<h.length){let m=h[f++];return g.startStylesheet(m.flavor),m.text!=null?xp(m.text,g,m.url,m.classes,m.media).thenReturn(!0):Sp(m.url,g,m.classes,m.media)}return F(!1)}).then(()=>{let m=g.cascadeParserHandler.finish();c=new nk(this,g.rootScope,g.pageScope,m,g.rootBox,tk(g.fontFaces),g.footnoteProps,g.flowProps,g.viewportProps,g.pageProps,g.counterStyles),this.styleByKey[l]=c,delete this.styleFetcherByKey[l],p.finish(c)}),p.result()},`FetchStylesheet ${i}`),this.styleFetcherByKey[l]=d,d.start()),d.get().then(p=>{this.styleByDocURL[i]=p,e.finish(r)})}),e.result()}processViewportMeta(t){return""}},zr="\u25B8",zc="\u25BE",ak="\u25B9";function qh(t){let e=Array.from(t.querySelectorAll("nav[*|type],nav[epub\\:type]"));if(e.length>0||(e=Array.from(t.querySelectorAll("[role=doc-toc]")),e.length>0))return e;let i="nav,.toc,#toc,#table-of-contents,#contents,[role=directory]";for(let n of t.querySelectorAll(i)){if(e.find(o=>o.contains(n)))continue;let r=n;/^h[1-6]$/.test(r.localName)&&(r.previousElementSibling?r=r.nextElementSibling:r=r.parentElement),r&&r.querySelector("li a[href]")&&e.push(r)}return e}function lk(t){let e=qh(t),i=[];for(let n of e)for(let r of n.querySelectorAll("li a[href]"))i.push(r);return i}var hk=class{constructor(t,e,i,n,r,o,s,a,h,l,c){u(this,"store",t),u(this,"url",e),u(this,"lang",i),u(this,"clientLayout",n),u(this,"fontMapper",r),u(this,"rendererFactory",s),u(this,"fallbackMap",a),u(this,"documentURLTransformer",h),u(this,"counterStore",l),u(this,"cmykStore",c),u(this,"pref"),u(this,"page",null),u(this,"instance",null),this.pref=ud(o),this.pref.spreadView=!1}setAutoHeight(t,e){if(e--!=0){for(let i=t.firstChild;i;i=i.nextSibling)if(i.nodeType==1){let n=i;Ni(n,"height","auto")!="auto"&&(R(n,"height","auto"),this.setAutoHeight(n,e)),Ni(n,"position","static")=="absolute"&&(R(n,"position","relative"),this.setAutoHeight(n,e))}}}makeCustomRenderer(t){let e=this.rendererFactory.makeCustomRenderer(t);return(i,n,r)=>{let o=r.behavior;if(o)switch(o.toString()){case"toc-node-anchor":r.color=w.inherit,r["text-decoration"]=w.none;break;case"toc-node":r.display=w.block,r.margin=Oe,r.padding=Oe,r["padding-inline-start"]=new B(1.25,"em");break;case"toc-node-first-child":r.display=w.inline_block,r.margin=new B(.2,"em"),r["vertical-align"]=w.top,r.color=w.inherit,r["text-decoration"]=w.none;break;case"toc-container":r.padding=Oe;break}if(!o||o.toString()!="toc-node"&&o.toString()!="toc-container")return e(i,n,r);let s=i.firstChild;s&&s.nodeType!==1&&Ee(s)&&i.replaceChild(i.ownerDocument.createComment(s.textContent),s);let a=n.getAttribute("data-adapt-class");if(a=="toc-node"){let l=n.firstChild;l.textContent!=zr&&(l.textContent=zr,R(l,"cursor","pointer"),l.addEventListener("click",uk,!1),l.setAttribute("role","button"),l.setAttribute("aria-expanded","false"),n.setAttribute("aria-expanded","false"),n.style.height!=="0px"&&(l.tabIndex=0))}let h=n.ownerDocument.createElement("div");if(h.setAttribute("data-adapt-process-children","true"),o.toString()=="toc-node"){let l=n.ownerDocument.createElement("div");if(l.textContent=ak,R(l,"margin","0.2em 0 0 -1em"),R(l,"margin-inline-start","-1em"),R(l,"margin-inline-end","0"),R(l,"display","inline-block"),R(l,"width","1em"),R(l,"text-align","center"),R(l,"vertical-align","top"),R(l,"cursor","default"),R(l,"font-family","Menlo,sans-serif"),h.appendChild(l),R(h,"overflow","hidden"),h.setAttribute("data-adapt-class","toc-node"),h.setAttribute("role","treeitem"),a=="toc-node"||a=="toc-container"){R(h,"height","0px");let c=i.firstElementChild;c&&c.localName==="a"&&(c.tabIndex=-1)}else n.setAttribute("role","tree")}else a=="toc-node"&&(h.setAttribute("data-adapt-class","toc-container"),h.setAttribute("role","group"),h.setAttribute("aria-hidden","true"));return F(h)}}showTOC(t,e,i,n,r){if(this.page)return F(this.page);let o=V("showTOC"),s=new Ip(t,t);this.page=s;let a=Ua(this.url);return this.store.load(a).then(h=>{for(let p of qh(h.document))p.setAttribute("data-vivliostyle-role","doc-toc");let l=this.store.getStyleForDoc(h),c=l.sizeViewport(i,1e5,r);e=new Gs(e.window,c.fontSize,0,t,c.width,c.height);let d=this.makeCustomRenderer(h);Xh.create(l,h,this.lang,e,this.clientLayout,this.fontMapper,d,this.fallbackMap,0,this.documentURLTransformer,this.counterStore,this.cmykStore,this.pref,null,null).then(p=>{this.instance=p,p.layoutNextPage(s,null).then(()=>{this.setAutoHeight(t,2),o.finish(s)})})}),o.result()}hideTOC(){this.page&&(this.page.container.style.visibility="hidden",this.page.container.setAttribute("aria-hidden","true"))}isTOCVisible(){return!!this.page&&this.page.container.style.visibility==="visible"}getTOC(){if(!this.page)return[];function t(n){if(!n)return[];let r=n.querySelectorAll(":scope > [role=treeitem] > a[href]");return Array.from(r).map(e)}function e(n){let r=new URL(n.href),[,o]=r.hash.match(/^#?(.*)$/),s=n.innerText,a=n.parentElement.querySelector("[role=group]"),h=t(a);return{id:o,title:s,children:h}}let i=this.page.container.querySelector("[role=tree]");return t(i)}};function uk(t){let e=t.target,i=e.textContent==zr;e.textContent=i?zc:zr;let n=e.parentNode;e.setAttribute("aria-expanded",i?"true":"false"),n.setAttribute("aria-expanded",i?"true":"false");let r=n.firstChild;for(;r;){if(r.nodeType===1){let o=r,s=o.getAttribute("data-adapt-class");if(s==="toc-container"){if(o.setAttribute("aria-hidden",i?"false":"true"),o.firstChild){r=o.firstChild;continue}}else if(s==="toc-node"&&(o.style.height=i?"auto":"0px",o.children.length>=2&&(o.children[1].tabIndex=i?0:-1),o.children.length>=3&&(o.children[0].tabIndex=i?0:-1,!i))){let a=o.children[0];if(a.textContent==zc){a.textContent=zr,a.setAttribute("aria-expanded","false"),o.setAttribute("aria-expanded","false"),r=o.children[2];continue}}}for(;!r.nextSibling&&r.parentNode!==n;)r=r.parentNode;r=r.nextSibling}t.stopPropagation()}function Go(t){let e={};return Object.keys(t).forEach(i=>{e[i]=Array.from(t[i])}),e}function ck(t){let e=Object.create(null);return Object.keys(t).forEach(i=>{e[i]=new Map(t[i])}),e}function dk(t){return/\.(x?html?|xht|svg)(?:[#?]|$)/i.test(t)||/^(?:about:|data:|blob:)/i.test(ft(t))}function Vc(t){return t.split("/").map(encodeURIComponent).join("/")}var $c=class lm extends sk{constructor(e=null,i=null){super(null,e,i),u(this,"plainXMLStore"),u(this,"jsonStore"),u(this,"opfByURL",{}),u(this,"primaryOPFByEPubURL",{}),u(this,"deobfuscators",{}),u(this,"documents",{}),this.fontDeobfuscator=this.makeDeobfuscatorFactory(),this.plainXMLStore=QC(),this.jsonStore=Kv()}static create(e,i){let n=new lm(e,i);return n.triggerSingleDocumentPreprocessing=!0,F(n)}makeDeobfuscatorFactory(){return e=>this.deobfuscators[e]}loadAsPlainXML(e,i,n){return this.plainXMLStore.load(e,i,n)}startLoadingAsPlainXML(e){this.plainXMLStore.fetch(e)}loadAsJSON(e,i,n){return this.jsonStore.load(e,i,n)}loadWebPubManifest(e,i){this.loadAsJSON(e,!0).then(n=>{if(!n){this.reportLoadError(e),i.finish(null);return}Ji.fromWebPubManifest(this,e,n,void 0,e).then(r=>{i.finish(r)})})}loadPubDoc(e){let i=V("loadPubDoc");if(/\.opf(?:[#?]|$)/i.test(e)){let[,n,r]=e.match(/^((?:.*\/)?)([^/]*)$/);this.loadOPF(n,r).thenFinish(i)}else/\.json(?:ld)?(?:[#?]|$)/i.test(e)?this.loadWebPubManifest(e,i):dk(e)?this.loadWebPub(e).then(n=>{if(n){i.finish(n);return}this.reportLoadError(e),i.finish(null)}):ea(e,void 0,"HEAD").then(n=>{if(n.status>=400)this.loadEPUBDoc(e).then(r=>{if(r){i.finish(r);return}Y.error(`Failed to fetch a source document from ${e} (${n.status}${n.statusText?" "+n.statusText:""})`),i.finish(null)});else if(!n.status&&!n.responseXML&&!n.responseText&&!n.responseBlob&&!n.contentType&&/\/[^/.]+(?:[#?]|$)/.test(e)&&(e=e.replace(/([#?]|$)/,"/$1")),n.contentType=="application/oebps-package+xml"){let[,r,o]=e.match(/^((?:.*\/)?)([^/]*)$/);this.loadOPF(r,o).thenFinish(i)}else n.contentType=="application/ld+json"||n.contentType=="application/webpub+json"||n.contentType=="application/audiobook+json"||n.contentType=="application/json"?this.loadWebPubManifest(e,i):this.loadWebPub(e).then(r=>{if(r){i.finish(r);return}this.loadEPUBDoc(e).then(o=>{if(o){i.finish(o);return}this.reportLoadError(e),i.finish(null)})})});return i.result()}loadEPUBDoc(e){let i=V("loadEPUBDoc");e.endsWith("/")||(e=e+"/"),this.startLoadingAsPlainXML(e+"META-INF/encryption.xml");let n=e+"META-INF/container.xml";return this.loadAsPlainXML(n).then(r=>{if(r){let o=r.doc().child("container").child("rootfiles").child("rootfile").attribute("full-path");for(let s of o)if(s){this.loadOPF(e,s).thenFinish(i);return}}i.finish(null)}),i.result()}loadOPF(e,i){let n=e+i,r=this.opfByURL[n];if(r)return F(r);let o=V("loadOPF");return this.loadAsPlainXML(n,!0,`Failed to fetch EPUB OPF ${n}`).then(s=>{if(!s)this.reportLoadError(n);else{let a=h=>{this.opfByURL[n]=h,this.primaryOPFByEPubURL[e]=h,o.finish(h)};this.plainXMLStore.resources[e+"META-INF/container.xml"]?this.loadAsPlainXML(e+"META-INF/encryption.xml").then(h=>{a(Ji.fromXMLDoc(this,e,s,h))}):a(Ji.fromXMLDoc(this,e,s,null))}}),o.result()}loadWebPub(e){let i=V("loadWebPub");return this.load(e).then(n=>{if(!n)this.reportLoadError(e),i.finish(null);else if(n.document.querySelector("a[href='META-INF/'],a[href$='/META-INF/']"))i.finish(null);else{let r=n.document,o=r.querySelector("link[rel='publication'],link[rel='manifest'][type='application/webpub+json']");if(o){let s=o.getAttribute("href");if(/^#/.test(s)){let a=Yl(r.getElementById(s.substr(1)).textContent);Ji.fromWebPubManifest(this,e,a,r).then(h=>{i.finish(h)})}else{let a=Ie(o.getAttribute("href"),e);this.loadAsJSON(a,!0,`Failed to fetch Publication Manifest ${a}`).then(h=>{Ji.fromWebPubManifest(this,e,h,r,a).then(l=>{i.finish(l)})})}}else Ji.fromWebPubManifest(this,e,{},r).then(s=>{s.toc&&s.toc.src===n.url&&qh(r).length===0&&(s.toc=null),i.finish(s)})}}),i.result()}addDocument(e,i){let n=V("EPUBDocStore.load"),r=ft(e);return(this.documents[r]=this.parseOPSResource({status:200,statusText:"",url:r,contentType:i.contentType,responseText:null,responseXML:i,responseBlob:null})).thenFinish(n),n.result()}reportLoadError(e){let i=r=>r.replace(/([^:/?#]|^)[/?#].*/,"$1"),n=()=>{let r=i(e);return!(r===i(an)||Object.keys(this.resources).find(o=>this.resources[o]&&i(o)===r)||!/^https?:?\/\/[^/]/.test(e)||/\.(xhtml|xht|xml|opf)$/i.test(e))};e.startsWith("data:")?Y.error(`Failed to load ${e}. Invalid data.`):e.startsWith("http:")&&an.startsWith("https:")&&!/^http:\/\/(localhost|127\.0\.0\.1|\[::1\])(:\d+)?(?:[/?#]|$)/.test(e)?Y.error(`Failed to load ${e}. Mixed Content ("http:" content on "https:" context) is not allowed.`):n()?Y.error(`Failed to load ${e}. This may be caused by network error, incorrect URL, or the server not allowing cross-origin resource sharing (CORS).`):Y.error(`Failed to load ${e}. The target resource is invalid.`)}load(e){let i=ft(e),n=this.documents[i];if(n)return n.isPending()?n:F(n.get());{let r=V("EPUBDocStore.load");return n=super.load(i,!0,`Failed to fetch a source document from ${i}`),n.then(o=>{o?r.finish(o):this.reportLoadError(i)}),r.result()}}processViewportMeta(e){let i=e.getAttribute("content");if(!i)return"";let n={},r;for(;(r=i.match(/^,?\s*([-A-Za-z_.][-A-Za-z_0-9.]*)\s*=\s*([-+A-Za-z_0-9.]*)\s*/))!=null;)i=i.substr(r[0].length),n[r[1]]=r[2];let o=n.width-0,s=n.height-0;if(o&&s){let a=!!Object.values(this.primaryOPFByEPubURL).find(h=>h.prePaginated);return`@-epubx-viewport{width:${o}px;height:${s}px;}`+(a?`@page{size:${o}px ${s}px;margin:0;}`:"@page{margin:0;}")}return""}},Hc=class{constructor(){u(this,"id",null),u(this,"src",""),u(this,"mediaType",null),u(this,"title",null),u(this,"itemRefElement",null),u(this,"spineIndex",-1),u(this,"compressedSize",0),u(this,"compressed",null),u(this,"epage",0),u(this,"epageCount",0),u(this,"startPage",null),u(this,"skipPagesBefore",null),u(this,"itemProperties"),this.itemProperties=jm}initWithElement(t,e){this.id=t.getAttribute("id"),this.src=Ie(t.getAttribute("href"),e),this.mediaType=t.getAttribute("media-type");let i=t.getAttribute("properties");i&&(this.itemProperties=ty(i.split(/\s+/)))}initWithParam(t){this.spineIndex=t.index,this.id=`item${t.index+1}`,this.src=t.url,this.startPage=t.startPage,this.skipPagesBefore=t.skipPagesBefore}};function pk(t){return t.id}function fk(t){return e=>{let i=V("deobfuscator");return gk("SHA-1",t).then(n=>{let r=e.slice(0,1040),o=e.slice(1040,e.size);qv(r).then(s=>{let a=new DataView(s);for(let h=0;h<a.byteLength;h++){let l=a.getUint8(h);l^=n[h%20],a.setUint8(h,l)}i.finish(mp([a,o]))})}),i.result()}}function gk(t,e){let i=V("makeDigest"),n=i.suspend();return window.crypto.subtle.digest(t,new TextEncoder().encode(e)).then(r=>{n.schedule(new Uint8Array(r))}),i.result()}var Ai={dcterms:"http://purl.org/dc/terms/",marc:"http://id.loc.gov/vocabulary/",media:"http://www.idpf.org/epub/vocab/overlays/#",rendition:"http://www.idpf.org/vocab/rendition/#",onix:"http://www.editeur.org/ONIX/book/codelists/current.html#",xsd:"http://www.w3.org/2001/XMLSchema#",opf:"http://www.idpf.org/2007/opf"},kr="http://idpf.org/epub/vocab/package/meta/#",Xe={language:`${Ai.dcterms}language`,title:`${Ai.dcterms}title`,creator:`${Ai.dcterms}creator`,layout:`${Ai.rendition}layout`,titleType:`${kr}title-type`,displaySeq:`${kr}display-seq`,alternateScript:`${kr}alternate-script`,role:`${kr}role`};function mk(t,e){let i={};return(n,r)=>{var o,s,a,h,l,c;let d,p,f=n.r||i,g=r.r||i;if(t==Xe.title&&(d=((o=f[Xe.titleType])==null?void 0:o[0].v)=="main",p=((s=g[Xe.titleType])==null?void 0:s[0].v)=="main",d!=p))return d?-1:1;let m=parseInt((a=f[Xe.displaySeq])==null?void 0:a[0].v,10);isNaN(m)&&(m=Number.MAX_VALUE);let v=parseInt((h=g[Xe.displaySeq])==null?void 0:h[0].v,10);return isNaN(v)&&(v=Number.MAX_VALUE),m!=v?m-v:t!=Xe.language&&e&&(d=((l=f[Xe.language]||f[Xe.alternateScript])==null?void 0:l[0].v)==e,p=((c=g[Xe.language]||g[Xe.alternateScript])==null?void 0:c[0].v)==e,d!=p)?d?-1:1:n.o-r.o}}function yk(t,e){let i;if(!e)i=Ai;else{i={};for(let p in Ai)i[p]=Ai[p];let d;for(;(d=e.match(/^\s*([A-Z_a-z\u007F-\uFFFF][-.A-Z_a-z0-9\u007F-\uFFFF]*):\s*(\S+)/))!=null;)e=e.substr(d[0].length),i[d[1]]=d[2]}let n=d=>{if(d){let p=d.match(/^\s*(([^:]*):)?(\S+)\s*$/);if(p){let f=p[2]?i[p[2]]:kr;if(f)return f+p[3]}}return null},r=1,o=t.childElements().forEachNonNull(d=>{if(d.localName=="meta"){let p=n(d.getAttribute("property"));if(p)return{name:p,value:d.textContent,id:d.getAttribute("id"),order:r++,refines:d.getAttribute("refines"),lang:null,scheme:n(d.getAttribute("scheme")),role:null}}else if(d.namespaceURI=="http://purl.org/dc/elements/1.1/")return{name:Ai.dcterms+d.localName,order:r++,lang:d.getAttribute("xml:lang"),value:d.textContent,id:d.getAttribute("id"),refines:null,scheme:null,role:d.getAttribute("role")||d.getAttribute("opf:role")};return null}),s=xa(o,d=>d.refines),a=d=>iy(d,(p,f)=>p.map(g=>{let m={v:g.value,o:g.order};g.scheme&&(m.s=g.scheme);let v=s[`#${g.id}`]||[];if(v.length||g.lang||g.role){g.lang&&v.push({name:Xe.language,value:g.lang,lang:null,id:null,refines:g.id,scheme:null,order:g.order,role:null}),g.role&&v.push({name:Xe.role,value:g.role,lang:null,id:null,refines:g.id,scheme:null,order:g.order,role:null});let b=xa(v,x=>x.name);m.r=a(b)}return m})),h=a(xa(o,d=>d.refines?null:d.name)),l=null;h[Xe.language]&&(l=h[Xe.language][0].v);let c=d=>{for(let p in d){let f=d[p];f.sort(mk(p,l));for(let g=0;g<f.length;g++){let m=f[g].r;m&&c(m)}}};return c(h),h}function vk(){let t=window.MathJax;return t?t.Hub:null}var Uc={"application/xhtml+xml":!0,"image/jpeg":!0,"image/png":!0,"image/svg+xml":!0,"image/gif":!0,"audio/mp3":!0},Ha="viv-id-";function pr(t,e){if(t.startsWith("data:"))return t===e?"":t;if(e){let i=Ie("",e);return t===i||t+"/"===i?"":(i.charAt(i.length-1)!="/"&&(i+="/"),t.substr(0,i.length)==i?decodeURIComponent(t.substr(i.length)):null)}else return t}var Ji=class Pr{constructor(e,i,n){u(this,"store",e),u(this,"pubURL",i),u(this,"opfXML"),u(this,"encXML",null),u(this,"items"),u(this,"spine"),u(this,"itemMap"),u(this,"itemMapByPath"),u(this,"uid",null),u(this,"bindings",{}),u(this,"lang",null),u(this,"epageCount",0),u(this,"prePaginated",!1),u(this,"epageIsRenderedPage",!0),u(this,"epageCountCallback",null),u(this,"metadata",{}),u(this,"toc",null),u(this,"cover",null),u(this,"fallbackMap",{}),u(this,"pageProgression",null),u(this,"documentURLTransformer"),this.opfXML=n.opfXML,this.items=n.items,this.spine=n.spine,this.itemMap=n.itemMap,this.itemMapByPath=n.itemMapByPath,this.documentURLTransformer=this.createDocumentURLTransformer()}createDocumentURLTransformer(){let e=this;class i{constructor(){u(this,"canonicalDocumentURLCache",new Map)}getCanonicalDocumentURL(r){var o,s;let a=ft(bn(r)),h=this.canonicalDocumentURLCache.get(a);if(h)return h;for(let l of e.spine){let c=ft(bn(l.src));if(c===a)return this.canonicalDocumentURLCache.set(a,c),c;let d=(s=(o=e.store)==null?void 0:o.get(c))==null?void 0:s.url;if(d&&ft(bn(d))===a)return this.canonicalDocumentURLCache.set(a,c),c}return this.canonicalDocumentURLCache.set(a,a),a}transformFragment(r,o){let s=this.getCanonicalDocumentURL(o)+(r?`#${r}`:"");return Ha+ad(s,":")}transformURL(r,o){let s=r.match(/^([^#]*)#?(.*)$/);if(s){let a=this.getCanonicalDocumentURL(s[1]||bn(o)),h=decodeURIComponent(s[2]);if(a&&e.spine.some(l=>ft(bn(l.src))===a))return`#${this.transformFragment(h,a)}`}return r}restoreURL(r){r.charAt(0)==="#"&&(r=r.substring(1)),r.indexOf(Ha)===0&&(r=r.substring(Ha.length));let o=ey(r,":").match(/^([^#]*)#?(.*)$/);return o?[o[1],o[2]]:[]}}return new i}getMetadata(){return this.metadata}getPathFromURL(e){return pr(e,this.pubURL)}static fromXMLDoc(e,i,n,r){let o=n.doc().child("package"),s=null,a=o.attribute("unique-identifier")[0];if(a){let y=n.getElement(`${n.url}#${a}`);y&&(s=y.textContent.replace(/[ \n\r\t]/g,""))}let h={},l=null,c=null,d=o.child("manifest").child("item").asArray().map(y=>{let k=new Hc,S=y;k.initWithElement(S,n.url);let N=S.getAttribute("fallback");return N&&!Uc[k.mediaType]&&(h[k.src]=N),!l&&k.itemProperties.nav&&(l=k),!c&&k.itemProperties["cover-image"]&&(c=k),k}),p=su(d,pk),f=su(d,y=>pr(y.src,i)),g={};for(let y in h){let k=y;for(;;){let S=p[h[k]];if(!S)break;if(Uc[S.mediaType]){g[y]=S.src;break}k=S.src}}let m=o.child("spine").child("itemref").asArray().map((y,k)=>{let S=y,N=S.getAttribute("idref"),L=p[N];return L&&(L.itemRefElement=S,L.spineIndex=k),L}),v=new Pr(e,i,{opfXML:n,items:d,spine:m,itemMap:p,itemMapByPath:f});v.encXML=r,v.uid=s,v.toc=l,v.cover=c,v.fallbackMap=g;let b=o.child("spine").attribute("page-progression-direction")[0];b&&(v.pageProgression=Qc(b));let x=r?r.doc().child("encryption").child("EncryptedData").predicate(Bc.withChild("EncryptionMethod",Bc.withAttribute("Algorithm","http://www.idpf.org/2008/embedding"))).child("CipherData").child("CipherReference").attribute("URI"):[],C=o.child("bindings").child("mediaType").asArray();for(let y=0;y<C.length;y++){let k=C[y].getAttribute("handler"),S=C[y].getAttribute("media-type");S&&k&&p[k]&&(v.bindings[S]=p[k].src)}if(v.metadata=yk(o.child("metadata"),o.attribute("prefix")[0]),v.metadata[Xe.language]&&(v.lang=v.metadata[Xe.language][0].v),v.metadata[Xe.layout]&&(v.prePaginated=v.metadata[Xe.layout][0].v==="pre-paginated"),x.length>0&&s){let y=fk(s);for(let k=0;k<x.length;k++)e.deobfuscators[i+x[k]]=y}return v.prePaginated&&v.assignAutoPages(),v}assignAutoPages(){let e=0;for(let i of this.spine){let n=this.prePaginated?1:Math.ceil(i.compressedSize/1024);i.epage=e,i.epageCount=n,e+=n}this.epageCount=e,this.epageCountCallback&&this.epageCountCallback(this.epageCount)}setEPageCountMode(e){this.epageIsRenderedPage=e||this.prePaginated}countEPages(e){if(this.epageCountCallback=e,this.epageIsRenderedPage)return this.prePaginated&&this.epageCount==0&&this.assignAutoPages(),F(!0);let i=0,n=0,r=V("countEPages");return r.loopWithFrame(o=>{if(n===this.spine.length){o.breakLoop();return}let s=this.spine[n++];s.epage=i,this.store.load(s.src).then(a=>{if(!a){o.continueLoop();return}let h=1800,l=a.lang||this.lang;l&&l.match(/^(ja|ko|zh)/)&&(h/=3),s.epageCount=Math.ceil(a.getTotalOffset()/h),i+=s.epageCount,this.epageCount=i,this.epageCountCallback&&this.epageCountCallback(this.epageCount),o.continueLoop()})}).thenFinish(r),r.result()}static buildChapters(e,i){let n={},r={},o=[],s=o,a=new nm(null,"",new DOMParser().parseFromString("<spine></spine>","text/xml"));return i.forEach(h=>{let l=new Hc;l.initWithParam(h),l.id;let c=a.document.createElement("itemref");c.setAttribute("idref",l.id),a.root.appendChild(c),l.itemRefElement=c,n[l.id]=l;let d=pr(h.url,e);d==null&&(d=h.url),r[d]=l,o.push(l)}),{opfXML:a,items:o,spine:s,itemMap:n,itemMapByPath:r}}static fromChapters(e,i,n,r){let o=new Pr(e,i,Pr.buildChapters(i,n));return r?e.addDocument(n[0].url,r).thenReturn(o):F(o)}static fromWebPubManifest(e,i,n,r,o){var s,a,h,l;let c=null;n.readingProgression&&(c=n.readingProgression);let d={},p=n.name||((s=n.metadata)==null?void 0:s.title)||r?.title;p&&(d[Xe.title]=(Array.isArray(p)?p:[p]).map(S=>{var N;return{v:(N=S.value)!=null?N:S}}));let f=n.author||n.creator||((a=n.metadata)==null?void 0:a.author)||Array.from((h=r?.querySelectorAll("meta[name='author'], meta[name='DC.Creator']"))!=null?h:[]).map(S=>S.content);f&&f.length!==0&&(d[Xe.creator]=(Array.isArray(f)?f:[f]).map(S=>{var N;return{v:(N=S.name)!=null?N:S}}));let g=n.inLanguage||((l=n.metadata)==null?void 0:l.language)||r?.documentElement.lang||r?.documentElement.getAttribute("xml:lang");g&&(d[Xe.language]=(Array.isArray(g)?g:[g]).map(S=>({v:S})));let m=ft(i),v=pr(m,i),b=v!==null?Vc(v):/^(?:about:|blob:)/i.test(m)?m:null;if(!n.readingOrder&&r&&b!==null){n.readingOrder=[b];for(let S of lk(r)){let N=S.getAttribute("href");if(/^(https?:)?\/\//.test(N)||/\.(jpe?g|png|gif|pdf|svg|mml)([#?]|$)/.test(N))continue;let L=ft(Ie(N,i)),I=pr(L,i),D=I!==null?Vc(I):L;n.readingOrder.indexOf(D)==-1&&n.readingOrder.push(D)}}let x=[],C=0,y=-1;[n.readingOrder,n.resources].forEach(S=>{S instanceof Array&&S.forEach(N=>{let L=S===n.readingOrder,I=typeof N=="string"?N:N.url||N.href,D=typeof N=="string"?"":N.encodingFormat||N.href&&N.type||"";if(L||D==="text/html"||D==="application/xhtml+xml"||!D&&N.rel!=="stylesheet"&&/(^|\/)([^/]+\.(x?html|htm|xht)|[^/.]*)([#?]|$)/.test(I)){let J=o?o.replace(/\/[^/]+$/,"/"):i,te={url:Ie(_n(I),J),index:C++,startPage:null,skipPagesBefore:null};N.rel==="contents"&&y===-1&&(y=te.index),x.push(te)}})});let k=V("fromWebPubManifest");return Pr.fromChapters(e,i,x).then(S=>{var N,L;S.pageProgression=c,S.metadata=d,y!==-1&&(S.toc=S.items[y]),S.toc||(S.toc=o?(N=S.items[0])!=null?N:null:S.itemMapByPath[v]);let I=(L=n.readingOrder)==null?void 0:L.length;I&&I<S.items.length&&S.items.splice(I),k.finish(S)}),k.result()}getCFI(e,i){let n=this.spine[e],r=V("getCFI");return this.store.load(n.src).then(o=>{let s=o.getNodeByOffset(i),a=null;if(s){let h=o.getNodeOffset(s,0,!1),l=i-h,c=new wu;c.prependPathFromNode(s,l,!1,null),n.itemRefElement&&c.prependPathFromNode(n.itemRefElement,0,!1,null),a=c.toString()}r.finish(a)}),r.result()}resolveFragment(e){return hn("resolveFragment",i=>{if(!e){i.finish(null);return}let n=new wu;n.fromString(e);let r;if(this.opfXML){let o=n.navigate(this.opfXML.document);if(o.node.nodeType!=1||o.after||!o.ref){i.finish(null);return}let s=o.node,a=s.getAttribute("idref");if(s.localName!="itemref"||!a||!this.itemMap[a]){i.finish(null);return}r=this.itemMap[a],n=o.ref}else r=this.spine[0];this.store.load(r.src).then(o=>{let s=n.navigate(o.document),a=o.getNodeOffset(s.node,s.offset,s.after);i.finish({spineIndex:r.spineIndex,offsetInItem:a,pageIndex:-1})})},(i,n)=>{Y.warn(n,"Cannot resolve fragment:",e),i.finish(null)})}resolveEPage(e){return hn("resolveEPage",i=>{if(e<=0){i.finish({spineIndex:0,offsetInItem:0,pageIndex:-1});return}if(this.epageIsRenderedPage){let o=this.spine.findIndex(h=>h.epage==0&&h.epageCount==0||h.epage<=e&&h.epage+h.epageCount>e);o==-1&&(o=this.spine.length-1);let s=this.spine[o];(!s||s.epageCount==0)&&(s=this.spine[--o]);let a=Math.floor(e-s.epage);i.finish({spineIndex:o,offsetInItem:-1,pageIndex:a});return}let n=yi(this.spine.length,o=>{let s=this.spine[o];return s.epage+s.epageCount>e});n==this.spine.length&&n--;let r=this.spine[n];this.store.load(r.src).then(o=>{e-=r.epage,e>r.epageCount&&(e=r.epageCount);let s=0;if(e>0){let a=o.getTotalOffset();s=Math.round(a*e/r.epageCount),s==a&&s--}i.finish({spineIndex:n,offsetInItem:s,pageIndex:-1})})},(i,n)=>{Y.warn(n,"Cannot resolve epage:",e),i.finish(null)})}getEPageFromPosition(e){let i=this.spine[e.spineIndex];if(this.epageIsRenderedPage){let r=i.epage+e.pageIndex;return F(r)}if(e.offsetInItem<=0)return F(i.epage);let n=V("getEPage");return this.store.load(i.src).then(r=>{let o=r.getTotalOffset(),s=Math.min(o,e.offsetInItem);n.finish(i.epage+s*i.epageCount/o)}),n.result()}},jo=(t,e)=>({page:t,position:{spineIndex:t.spineIndex,pageIndex:e,offsetInItem:t.offset}}),wk=class{constructor(t,e,i,n,r,o){u(this,"opf",t),u(this,"viewport",e),u(this,"fontMapper",i),u(this,"pageSheetSizeReporter",r),u(this,"spineItems",[]),u(this,"spineItemLoadingContinuations",[]),u(this,"pref"),u(this,"clientLayout"),u(this,"counterStore"),u(this,"cmykStore"),u(this,"tocAutohide",!1),u(this,"tocVisible",!1),u(this,"tocView"),u(this,"paginationProgress",{totalOffsetsBySpine:[],renderedOffsetsBySpine:[],totalOffsetsReady:!1,lastReportedPages:0,lastReportedFraction:0,lastReportedSpineIndex:-1,lastReportedHref:""}),u(this,"renderingPageTasks",new Map),this.pref=ud(n),this.clientLayout=new fC(e),this.counterStore=new Yy(t.documentURLTransformer),this.cmykStore=new zd,o!=null&&o.length&&this.cmykStore.registerCmykReserveMap(o)}getPage(t){let e=this.spineItems[t.spineIndex];return e?e.pages[t.pageIndex]:null}waitForPreviousSpines(t,e){if(e||t===0)return F(!0);let i=V("waitForPreviousSpines");return i.loopWithFrame(n=>{let r=!0;for(let o=0;o<t;o++){let s=this.spineItems[o];if(!s||!s.complete){r=!1;break}}r?n.breakLoop():i.sleep(100).then(()=>{n.continueLoop()})}).then(()=>{i.finish(!0)}),i.result()}getCurrentPageProgression(t){if(this.opf.pageProgression)return this.opf.pageProgression;{let e=this.spineItems[t?t.spineIndex:0];return e?e.instance.pageProgression:null}}finishPageContainer(t,e,i){e.container.style.display="none",e.container.style.visibility="visible",e.container.style.position="",e.container.style.top="",e.container.style.left="",e.container.setAttribute("data-vivliostyle-page-side",e.side);let n=t.pages[i];if(e.isFirstPage=t.item.spineIndex==0&&i==0,t.pages[i]=e,this.opf.epageIsRenderedPage){if(i==0&&t.item.spineIndex>0){let r=this.opf.spine[t.item.spineIndex-1];t.item.epage=r.epage+r.epageCount}t.item.epageCount=t.pages.length,this.opf.epageCount=this.opf.spine.reduce((r,o)=>r+o.epageCount,0),this.opf.epageCountCallback&&this.opf.epageCountCallback(this.opf.epageCount)}if(n)t.instance.viewport.contentContainer.replaceChild(e.container,n.container),n.dispatchEvent({type:"replaced",target:null,currentTarget:null,preventDefault:null,newPage:e});else{let r=null;if(i>0)r=t.pages[i-1].container.nextElementSibling;else for(let o=t.item.spineIndex+1;o<this.spineItems.length;o++){let s=this.spineItems[o];if(s&&s.pages[0]){r=s.pages[0].container;break}}t.instance.viewport.contentContainer.insertBefore(e.container,r)}this.pageSheetSizeReporter({width:t.instance.pageSheetWidth,height:t.instance.pageSheetHeight},t.instance.pageSheetSize,t.item.spineIndex,t.instance.pageNumberOffset+i)}getRenderedPageCount(){let t=0;for(let e of this.spineItems)e&&(t+=e.pages.length);return t}markSpineItemCompleteIfReady(t){t.complete=t.layoutPositions.length===t.pages.length,t.complete&&t.instance.viewport.layoutBox.removeAttribute("style")}getTotalOffsetForViewItem(t){let e=t.item.spineIndex,i=this.paginationProgress.totalOffsetsBySpine[e];return i==null&&(i=t.xmldoc.getTotalOffset(),this.paginationProgress.totalOffsetsBySpine[e]=i),i}collectTotalOffsets(){if(this.paginationProgress.totalOffsetsReady)return F(!0);let t=this.paginationProgress.totalOffsetsBySpine,e=0,i=V("collectTotalOffsets");return i.loopWithFrame(n=>{if(e===this.opf.spine.length){n.breakLoop();return}let r=e++;if(t[r]!=null){n.continueLoop();return}let o=this.opf.spine[r];this.opf.store.load(o.src).then(s=>{s&&(t[r]=s.getTotalOffset()),n.continueLoop()})}).then(()=>{this.paginationProgress.totalOffsetsReady=!0,i.finish(!0)}),i.result()}getTotalOffsetAll(){let t=0;for(let e of this.paginationProgress.totalOffsetsBySpine)e&&(t+=e);return t}getRenderedOffsetAll(){var t;let e=0,i=this.paginationProgress.totalOffsetsBySpine,n=this.paginationProgress.renderedOffsetsBySpine;for(let r=0;r<i.length;r++){let o=i[r];if(!o)continue;let s=(t=n[r])!=null?t:0;e+=Math.min(o,s)}return e}reportPaginationProgress(t,e){var i,n;let r=zt("PAGINATION_PROGRESS");if(!r.length)return;let o=t.item.spineIndex,s=this.getTotalOffsetForViewItem(t),a=s;e&&(a=t.instance.getPosition(e,!0)),a<0&&(a=0),a>s&&(a=s);let h=this.paginationProgress.renderedOffsetsBySpine[o];h!=null&&a<h&&(a=h),this.paginationProgress.renderedOffsetsBySpine[o]=a;let l=this.getRenderedPageCount(),c=this.getTotalOffsetAll(),d=this.getRenderedOffsetAll(),p=c>0?d/c:0;p<this.paginationProgress.lastReportedFraction?p=this.paginationProgress.lastReportedFraction:this.paginationProgress.lastReportedFraction=p,l>this.paginationProgress.lastReportedPages&&(this.paginationProgress.lastReportedPages=l);let f=t.item.src;o>=((i=this.paginationProgress.lastReportedSpineIndex)!=null?i:-1)?(this.paginationProgress.lastReportedSpineIndex=o,this.paginationProgress.lastReportedHref=f):f=(n=this.paginationProgress.lastReportedHref)!=null?n:f;let g={fraction:p,pages:this.paginationProgress.lastReportedPages,href:f};for(let m of r)try{m(g)}catch(v){Y.warn(v)}}isInCounterResolveScope(){return this.counterStore.currentPageCountersStack.length>0}hasNonEmptyPageType(t){return!!(t!=null&&t.pageType)&&t.pageType!==""}hasPageTypeBoundaryBetween(t,e){return t?.pageType!=null&&e?.pageType!=null&&t.pageType!==e.pageType}resolvePageTypeForRenderSlot(t,e,i,n,r,o,s){let a=!1;if(n){let h=this.hasPageTypeBoundaryBetween(r,n),l=o?.pageType===n.pageType,c=n.offset!==e.offset,d=s&&!c&&i>0;if(a=n.pageType!=null&&(d||i===0||n.pageType===r?.pageType),e.pageType=a?n.pageType:null,s){let p=t.instance.getPageStartPageTypeOverride(e.position);p===""?e.pageType="":p&&(e.pageType=p)}if(!s&&!a){let p=i>1&&h&&l?r.pageType:null;t.instance.styler.cascade.currentPageType=p,t.instance.pageManager.pageCascadeInstance.currentPageType=p}}!s&&this.hasNonEmptyPageType(r)&&this.hasNonEmptyPageType(o)&&r.pageType!==o.pageType&&(!n||n.pageType==null)&&(e.pageType=r.pageType)}evaluateNextPageRelayout(t,e,i,n,r){if(!t||e&&!i)return{needsRelayout:!1,shouldCascade:!1};let o=!!e&&(t.pageType===e.pageType||!e.pageType);return e&&n&&(!r||o)&&(e.pageType==null||t.pageType==null||t.pageType!==e.pageType)&&(e.pageType=null),{needsRelayout:!0,shouldCascade:!!e||!r}}preparePageCountersForRender(t,e){let i=t.pages[e],n=t.pageCounterStarts[e];i&&n&&(this.counterStore.currentPageCounters=Go(n));let r=Go(this.counterStore.currentPageCounters);return(!n||!i)&&(t.pageCounterStarts[e]=r),i}maybeRelayoutFollowingPage(t,e,i,n){if(!e)return F(!0);let r=t.layoutPositions[e.page];t.layoutPositions[e.page]=e;let o=t.pages[e.page],s=!!i&&n.offset!==i.offset,a=t.instance.hasActiveRootPageFloatLayoutContext(),h=!r||!e.isSamePosition(r)||e.highestSeenOffset!==r.highestSeenOffset||s||a,l=this.isInCounterResolveScope(),c=this.evaluateNextPageRelayout(i,o,h,s,l);return c.needsRelayout?(t.complete=!1,c.shouldCascade?this.renderSinglePage(t,e):F(!0)):F(!0)}resolveUnresolvedReferencesForPage(t,e,i,n){let r=V("resolveUnresolvedReferencesForPage"),o=this.isInCounterResolveScope()?[]:this.counterStore.getUnresolvedRefsToPage(e),s=0,a=e;return r.loopWithFrame(h=>{if(s++,s>o.length){h.breakLoop();return}let l=o[s-1];if(l.refs=l.refs.filter(c=>!c.isResolved()),l.refs.length===0){h.continueLoop();return}this.getPageViewItem(l.spineIndex).then(c=>{var d;if(!c){h.continueLoop();return}let p=c.instance.styler.cascade,f=c.instance.pageManager.pageCascadeInstance,g={currentPageType:p.currentPageType,previousPageType:p.previousPageType},m={currentPageType:f.currentPageType,previousPageType:f.previousPageType},v=ck(c.instance.pageGroupPageCounts),b=c.instance.currentPageGroupDocument,x=c.instance.scopes;c.instance.scopes={};let C=l.pageIndex<c.pages.length-1,y=!!c.pages[l.pageIndex],k=y&&C,S=k&&l.pageIndex>0?(d=c.pages[l.pageIndex-1])==null?void 0:d.pageFloatLayoutContext:null,N=k?c.instance.beginIsolatedRootPageFloatLayoutContext(S):null;this.counterStore.pushPageCounters(l.pageCounters),this.counterStore.pushReferencesToSolve(l.refs);let L=c.layoutPositions[l.pageIndex];y&&c.instance.preparePageGroupPageIndicesForRerender(c.layoutPositions,l.pageIndex),this.renderSinglePage(c,L).then(I=>{k&&c.instance.endIsolatedRootPageFloatLayoutContext(N);let D=p.currentPageType;p.currentPageType=g.currentPageType,p.previousPageType=g.previousPageType,f.currentPageType=m.currentPageType,f.previousPageType=m.previousPageType,c.instance.pageGroupPageCounts=v,c.instance.currentPageGroupDocument=b,c.instance.scopes=x;let J=Go(this.counterStore.currentPageCounters);this.counterStore.popPageCounters(),this.counterStore.popReferencesToSolve(),I.pageAndPosition.position.spineIndex===a.spineIndex&&I.pageAndPosition.position.pageIndex===i&&(a=I.pageAndPosition.page),a.pageType&&a.pageType!==g.currentPageType&&D!==I.pageAndPosition.page.pageType&&(p.currentPageType=a.pageType);let te=c!==t,P=c.pages.length,M=c.layoutPositions[P],A=c.instance.hasActiveRootPageFloatLayoutContext();if(M&&!A){let H=te?Go(this.counterStore.currentPageCounters):null;te&&(this.counterStore.currentPageCounters=J);let z=P;this.renderSinglePage(c,M).then(()=>{te&&this.markSpineItemCompleteIfReady(c);let E=c.pages.length-z;if(te&&E>0){this.counterStore.adjustPageCountersOfLaterSpines(c.item.spineIndex,E),this.counterStore.updateTargetCounterNodesInPages(c.pages);let O=c.item.spineIndex;for(let T=O+1;T<this.spineItems.length;T++){let $=this.spineItems[T];if($){$.item.epage+=E;for(let G of $.pageCounterStarts)G!=null&&G.page&&(G.page=G.page.map(q=>q+E));this.counterStore.updatePageCounterNodesInPages($.pages,$.pageCounterStarts)}}if(H){let T=H.page;T&&(H.page=T.map($=>$+E))}}H&&(this.counterStore.currentPageCounters=H),h.continueLoop()});return}te&&this.markSpineItemCompleteIfReady(c),h.continueLoop()})})}).then(()=>{a.container.parentElement||(a=t.pages[i]),a.isLastPage=!n&&t.item.spineIndex===this.opf.spine.length-1,a.isLastPage&&this.counterStore.finishLastPage(this.viewport),a.container.setAttribute("data-vivliostyle-page-index",i),a.container.setAttribute("data-vivliostyle-spine-index",a.spineIndex),r.finish(a)}),r.result()}renderSinglePage(t,e){let i=V("renderSinglePage"),n=e?Math.max(e.page,0):0,r=t.instance.getPageNumberContextDepth();t.instance.pushPageNumberContext(n+1);let o=()=>{t.instance.restorePageNumberContextDepth(r)};i.handler=(d,p)=>{o(),d.task.raise(p,d.parent)};let s=this.isInCounterResolveScope(),a=this.preparePageCountersForRender(t,n),h=n>0?t.pages[n-1]:null,l=t.pages[n+1],c=this.makePage(t,e);return this.resolvePageTypeForRenderSlot(t,c,n,a,h,l,s),t.instance.layoutNextPage(c,e).then(d=>{e=d;let p=e?e.page-1:t.layoutPositions.length-1;this.finishPageContainer(t,c,p),this.counterStore.finishPage(c.spineIndex,p),(zt("PAGINATION_PROGRESS").length?this.collectTotalOffsets():F(!0)).then(()=>{this.reportPaginationProgress(t,e),this.maybeRelayoutFollowingPage(t,e,a,c).thenAsync(()=>this.resolveUnresolvedReferencesForPage(t,c,p,e)).then(f=>{o(),i.finish({pageAndPosition:jo(f,p),nextLayoutPosition:e})})})}),i.result()}normalizeSeekPosition(t,e){let i=t.pageIndex,n=-1;if(i<0){n=t.offsetInItem;let r=yi(e.layoutPositions.length,o=>e.instance.getPosition(e.layoutPositions[o],!0)>n);r===e.layoutPositions.length?e.complete?i=e.pages.length-1:i=Number.POSITIVE_INFINITY:i=r-1}else i===Number.POSITIVE_INFINITY&&t.offsetInItem!==-1&&(n=t.offsetInItem);return{spineIndex:t.spineIndex,pageIndex:i,offsetInItem:n}}findPage(t,e){let i=V("findPage");return this.waitForPreviousSpines(t.spineIndex,e).then(()=>{this.getPageViewItem(t.spineIndex).then(n=>{if(!n){i.finish(null);return}let r=null,o;i.loopWithFrame(s=>{let a=this.normalizeSeekPosition(t,n);o=a.pageIndex,r=n.pages[o],r?s.breakLoop():n.complete?(o=n.pages.length-1,r=n.pages[o],s.breakLoop()):e?this.renderPage(a).then(h=>{h&&(r=h.page,o=h.position.pageIndex),s.breakLoop()}):this.isRenderingPageInAnotherTask()?i.sleep(100).then(()=>{s.continueLoop()}):o<n.layoutPositions.length&&!n.pages[o]?this.renderPage(a).then(h=>{h&&(r=h.page,o=h.position.pageIndex),s.breakLoop()}):i.sleep(100).then(()=>{s.continueLoop()})}).then(()=>{i.finish(jo(r,o))})})}),i.result()}renderPage(t){let e=Hr();this.beginRenderingPage(e);let i=!1,n=()=>{i||(i=!0,this.endRenderingPage(e))};return hn("renderPage",r=>{this.renderPageTracked(t).then(o=>{n(),r.finish(o)})},(r,o)=>{n(),r.task.raise(o,r.parent)})}beginRenderingPage(t){this.renderingPageTasks.set(t,(this.renderingPageTasks.get(t)||0)+1)}endRenderingPage(t){let e=this.renderingPageTasks.get(t);e===1?this.renderingPageTasks.delete(t):e&&this.renderingPageTasks.set(t,e-1)}isRenderingPageInAnotherTask(){let t=Hr();return Array.from(this.renderingPageTasks.keys()).some(e=>e!==t)}renderPageTracked(t){let e=V("renderPageTracked");return this.getPageViewItem(t.spineIndex).then(i=>{if(!i){e.finish(null);return}let n=this.normalizeSeekPosition(t,i),r=n.pageIndex,o=n.offsetInItem,s=i.pages[r];if(s){e.finish(jo(s,r));return}e.loopWithFrame(a=>{if(r<i.layoutPositions.length){a.breakLoop();return}if(i.complete){r=i.pages.length-1,a.breakLoop();return}let h=i.layoutPositions[i.layoutPositions.length-1];this.renderSinglePage(i,h).then(l=>{let c=l.pageAndPosition.page;if(h=l.nextLayoutPosition,h){if(o>=0&&i.instance.getPosition(h)>o){s=c,r=i.layoutPositions.length-2,a.breakLoop();return}a.continueLoop()}else s=c,r=l.pageAndPosition.position.pageIndex,this.markSpineItemCompleteIfReady(i),a.breakLoop()})}).then(()=>{s=s||i.pages[r];let a=i.layoutPositions[r];if(s){e.finish(jo(s,r));return}this.renderSinglePage(i,a).then(h=>{h.nextLayoutPosition||this.markSpineItemCompleteIfReady(i),e.finish(h.pageAndPosition)})})}),e.result()}renderAllPages(){let t=V("renderAllPages");return this.renderPagesUpto({spineIndex:this.opf.spine.length-1,pageIndex:Number.POSITIVE_INFINITY,offsetInItem:-1},!1).then(e=>{t.loopWithFrame(i=>{this.spineItems.some(n=>n?.pages.some(r=>r?.fetchers.some(o=>!o.arrived)))?t.sleep(100).then(()=>{i.continueLoop()}):i.breakLoop()}).then(()=>{t.finish(e)})}),t.result()}renderPagesUpto(t,e){let i=V("renderPagesUpto");t||(t={spineIndex:0,pageIndex:0,offsetInItem:0});let n=t.spineIndex,r=t.pageIndex,o=0;e&&(o=n);let s=null;return i.loopWithFrame(a=>{let h={spineIndex:o,pageIndex:o===n?r:Number.POSITIVE_INFINITY,offsetInItem:o===n?t.offsetInItem:-1};this.renderPage(h).then(l=>{s=l,++o>n?a.breakLoop():a.continueLoop()})}).then(()=>{i.finish(s)}),i.result()}firstPage(t,e){return this.findPage({spineIndex:0,pageIndex:0,offsetInItem:-1},e)}lastPage(t,e){return this.findPage({spineIndex:this.opf.spine.length-1,pageIndex:Number.POSITIVE_INFINITY,offsetInItem:-1},e)}nextPage(t,e){let i=t.spineIndex,n=t.pageIndex,r=V("nextPage");return this.getPageViewItem(i).then(o=>{if(!o){r.finish(null);return}if(o.complete&&n==o.pages.length-1){if(i>=this.opf.spine.length-1){r.finish(null);return}i++,n=0;let s=this.spineItems[i],a=s&&s.pages[0],h=o.pages[o.pages.length-1];a&&h&&a.side==h.side&&(s.pages.forEach(l=>{l.container&&l.container.remove()}),this.spineItems[i]=null,this.spineItemLoadingContinuations[i]=null)}else n++;this.findPage({spineIndex:i,pageIndex:n,offsetInItem:-1},e).thenFinish(r)}),r.result()}previousPage(t,e){let i=t.spineIndex,n=t.pageIndex;if(n==0){if(i==0)return F(null);i--,n=Number.POSITIVE_INFINITY}else n--;return this.findPage({spineIndex:i,pageIndex:n,offsetInItem:-1},e)}isRectoPage(t,e){let i=t.side==="left",n=this.getCurrentPageProgression(e)==="ltr";return!i&&n||i&&!n}getSpread(t,e){let i=this.getPage(t);if(!i)return F({left:null,right:null});let n=V("getSpread"),r=i.side==="left",o;return this.isRectoPage(i,t)?o=this.previousPage(t,e):o=this.nextPage(t,e),o.then(s=>{let a=this.getPage(t),h=s&&s.page;h&&h.side===a.side&&(h=null),r?n.finish({left:a,right:h}):n.finish({left:h,right:a})}),n.result()}nextSpread(t,e){let i=this.getPage(t);if(!i)return F(null);let n=this.isRectoPage(i,t),r=this.nextPage(t,e);return n?r:r.thenAsync(o=>{if(o){if(o.page.side===i.side)return r;let s=this.nextPage(o.position,e);return s.thenAsync(a=>a?s:r)}else return F(null)})}previousSpread(t,e){let i=this.getPage(t);if(!i)return F(null);let n=this.isRectoPage(i,t),r=this.previousPage(t,e),o=i.container.previousElementSibling;return n?r.thenAsync(s=>s?s.page.side===i.side||s.page.container!==o?r:this.previousPage(s.position,e):F(null)):r}navigateToEPage(t,e,i){let n=V("navigateToEPage");return this.opf.resolveEPage(t).then(r=>{r?this.findPage(r,i).thenFinish(n):n.finish(null)}),n.result()}navigateToFragment(t,e,i){let n=V("navigateToCFI");return this.opf.resolveFragment(t).then(r=>{r?this.findPage(r,i).thenFinish(n):n.finish(null)}),n.result()}resolveSemanticFootnoteNavigationOffset(t,e){if(!Et(e))return null;let i=e.getAttribute("id");if(!i)return null;let n=Ie(`#${i}`,t.xmldoc.url),r=t.xmldoc.document.getElementsByTagName("a");for(let o=0;o<r.length;o++){let s=r.item(o);if(!qt(s))continue;let a=s.getAttribute("href")||s.getAttributeNS("http://www.w3.org/1999/xlink","href");if(a&&Ie(a,t.xmldoc.url)===n)return t.xmldoc.getElementOffset(s)}return null}navigateTo(t,e,i){Y.debug("Navigate to",t);let n=this.opf.getPathFromURL(ft(t));if(!n){if(this.opf.opfXML&&t.match(/^#epubcfi\(/))n=this.opf.getPathFromURL(this.opf.opfXML.url);else if(t.charAt(0)==="#"){let s=this.opf.documentURLTransformer.restoreURL(t);this.opf.opfXML?(n=this.opf.getPathFromURL(s[0]),n==null&&(n=s[0])):n=s[0],t=s[0]+(s[1]?`#${s[1]}`:"")}if(n==null)return F(null)}let r=this.opf.itemMapByPath[n];if(!r){if(this.opf.opfXML&&n==this.opf.getPathFromURL(this.opf.opfXML.url)){let s=t.indexOf("#");if(s>=0)return this.navigateToFragment(t.substr(s+1),e,i)}return F(null)}let o=V("navigateTo");return this.waitForPreviousSpines(r.spineIndex,i).then(()=>{this.getPageViewItem(r.spineIndex).then(s=>{if(!s){o.finish(null);return}let a=s.xmldoc.getElement(t),h=a&&this.resolveSemanticFootnoteNavigationOffset(s,a),l=h??(a?s.xmldoc.getElementOffset(a):0);this.findPage({spineIndex:r.spineIndex,pageIndex:-1,offsetInItem:l},i).thenFinish(o)})}),o.result()}makePage(t,e){let i=t.instance.viewport,n=i.document.createElement("div");n.setAttribute("data-vivliostyle-page-container","true"),n.role="presentation",Vr||(n.style.visibility="hidden"),i.layoutBox.appendChild(n);let r=i.document.createElement("div");r.setAttribute("data-vivliostyle-bleed-box","true"),r.role="presentation",n.appendChild(r);let o=new Ip(n,r);if(o.spineIndex=t.item.spineIndex,o.position=e,o.offset=t.instance.getPosition(e),o.offset===0&&!(t.instance.blankPageAtStart&&t.pages.length===0)){let s=this.opf.documentURLTransformer.transformFragment("",t.item.src);r.setAttribute("id",s),o.registerElementWithId(r,s)}if(i!==this.viewport){let s=cd(this.viewport.width,this.viewport.height,i.width,i.height),a=Mi(t.instance.style.rootScope,new xt(s,null),"");o.delayedItems.push(new hh(n,"transform",a))}return o}makeObjectView(t,e,i,n){let r=e.getAttribute("data"),o=null;if(r){r=Ie(r,t.url);let s=e.getAttribute("media-type");if(!s){let a=this.opf.getPathFromURL(r);if(a){let h=this.opf.itemMapByPath[a];h&&(s=h.mediaType)}}if(s){let a=this.opf.bindings[s];if(a){o=this.viewport.document.createElement("iframe"),o.style.border="none";let h=ru(r),l=ru(s),c=new mi;c.append(a),c.append("?src="),c.append(h),c.append("&type="),c.append(l);for(let f=e.firstChild;f;f=f.nextSibling)if(f.nodeType==1){let g=f;if(g.localName=="param"&&g.namespaceURI=="http://www.w3.org/1999/xhtml"){let m=g.getAttribute("name"),v=g.getAttribute("value");m&&v&&(c.append("&"),c.append(encodeURIComponent(m)),c.append("="),c.append(encodeURIComponent(v)))}}o.setAttribute("src",c.toString());let d=e.getAttribute("width");d&&o.setAttribute("width",d);let p=e.getAttribute("height");p&&o.setAttribute("height",p)}}}return o||(o=this.viewport.document.createElement("object"),r&&o.setAttribute("data",$r(r)),o.setAttribute("data-adapt-process-children","true")),F(o)}makeMathJaxView(t,e,i,n){let r=vk();if(r){let o=i.ownerDocument,s=o.createElement("span");i.appendChild(s);let a=o.importNode(e,!0);this.resolveURLsInMathML(a,t),s.appendChild(a);let h=r.queue;h.Push(["Typeset",r,s]);let l=V("makeMathJaxView"),c=l.suspend();return h.Push(()=>{c.schedule(s)}),l.result()}return F(null)}resolveURLsInMathML(t,e){if(t!=null){if(t.nodeType===1&&t.tagName==="mglyph"){let i=Array.from(t.attributes);for(let n of i){if(n.name!=="src")continue;let r=Ie(n.nodeValue,e.url);n.namespaceURI?t.setAttributeNS(n.namespaceURI,n.name,r):t.setAttribute(n.name,r)}}t.firstChild&&this.resolveURLsInMathML(t.firstChild,e),t.nextSibling&&this.resolveURLsInMathML(t.nextSibling,e)}}makeCustomRenderer(t){return(e,i,n)=>e.localName=="object"&&e.namespaceURI=="http://www.w3.org/1999/xhtml"?this.makeObjectView(t,e,i,n):e.namespaceURI=="http://www.w3.org/1998/Math/MathML"?this.makeMathJaxView(t,e,i,n):e.dataset&&e.dataset.mathTypeset=="true"?this.makeMathJaxView(t,e,i,n):F(null)}getPageViewItem(t){if(t===-1||t>=this.opf.spine.length)return F(null);let e=this.spineItems[t];if(e)return F(e);let i=V("getPageViewItem"),n=this.spineItemLoadingContinuations[t];if(n){let s=i.suspend();return n.push(s),i.result()}else n=this.spineItemLoadingContinuations[t]=[];let r=this.opf.spine[t],o=this.opf.store;return o.load(r.src).then(s=>{var a;let h=r.itemRefElement.getAttribute("properties");h&&s.root.setAttribute("data-vivliostyle-epub-spine-properties",h),r.title=s.document.title;let l=o.getStyleForDoc(s),c=this.makeCustomRenderer(s),d=this.viewport,p=l.sizeViewport(d.width,d.height,d.fontSize,this.pref);(p.width!=d.width||p.height!=d.height||p.fontSize!=d.fontSize)&&(d=new Gs(d.window,p.fontSize,d.pixelRatio,d.root,p.width,p.height));let f=(a=this.spineItems[0])==null?void 0:a.instance.isVersoFirstPage,g=this.spineItems[t-1],m,v;if(r.startPage!==null)m=r.startPage-1,v=m;else{if(t>0&&(!g||!g.complete))m=r.epage||t,!this.opf.prePaginated&&m%2==(f?1:0)&&m++,v=m;else{m=g?g.instance.pageNumberOffset+g.pages.length:0;let y=g&&g.pageCounterStarts[g.pages.length-1],k=y&&y.page;if(k&&k.length)v=k[k.length-1]+1;else{let S=this.counterStore.currentPageCounters.page;v=!S||!S.length?m:S[S.length-1]}}r.skipPagesBefore!==null&&(m+=r.skipPagesBefore,v+=r.skipPagesBefore)}this.counterStore.forceSetPageCounter(v);let b=this.opf.metadata&&this.opf.metadata[Xe.title],x=b&&b[0]&&b[0].v||"",C=r.title||"";Xh.create(l,s,this.opf.lang,d,this.clientLayout,this.fontMapper,c,this.opf.fallbackMap,m,this.opf.documentURLTransformer,this.counterStore,this.cmykStore,this.pref,x,C,this.opf.pageProgression,f).then(y=>{!this.opf.pageProgression&&y.pageProgression&&(this.opf.pageProgression=y.pageProgression),e={item:r,xmldoc:s,instance:y,layoutPositions:[null],pages:[],complete:!1,pageCounterStarts:[]},this.spineItems[t]=e,i.finish(e),n.forEach(k=>{k.schedule(e)})})}),i.result()}removeRenderedPages(){let t=this.spineItems;for(let e of t)e&&e.pages.splice(0);this.viewport.clear()}hasAutoSizedPages(){let t=this.spineItems;for(let e of t)if(e){let i=e.pages;for(let n of i)if(n.isAutoPageWidth&&n.isAutoPageHeight)return!0}return!1}hasPages(){return this.spineItems.some(t=>t&&t.pages.length>0)}showTOC(t){let e=this.opf,i=e.toc;if(this.tocAutohide=t,!i)return F(null);if(this.tocVisible=!0,this.tocView&&this.tocView.page)return this.tocView.page.container.style.visibility="visible",this.tocView.page.container.setAttribute("aria-hidden","false"),F(this.tocView.page);let n=V("showTOC");this.tocView||(this.tocView=new hk(e.store,i.src,e.lang,this.clientLayout,this.fontMapper,this.pref,this,e.fallbackMap,e.documentURLTransformer,this.counterStore,this.cmykStore));let r=this.viewport,o=Math.min(344,Math.round(.67*r.width)-16),s=r.height-6,a=r.document.createElement("div");return r.root.appendChild(a),Vr||(a.style.visibility="hidden"),a.style.width=`${o+16}px`,a.style.maxHeight=`${s}px`,a.setAttribute("data-vivliostyle-toc-box","true"),a.setAttribute("role","navigation"),this.tocView.showTOC(a,r,o,s,this.viewport.fontSize).then(h=>{a.style.visibility="visible",a.setAttribute("aria-hidden","false"),n.finish(h)}),n.result()}hideTOC(){this.tocVisible=!1,this.tocView&&this.tocView.hideTOC()}isTOCVisible(){return this.tocVisible&&!!this.tocView&&this.tocView.isTOCVisible()}},Wc="data-vivliostyle-viewer-status",bk="data-vivliostyle-spread-view",hm=(t=>(t.SINGLE_PAGE="singlePage",t.SPREAD="spread",t.AUTO_SPREAD="autoSpread",t))(hm||{}),xk=class{constructor(t,e,i,n){u(this,"window",t),u(this,"viewportElement",e),u(this,"instanceId",i),u(this,"callbackFn",n),u(this,"fontMapper"),u(this,"kick"),u(this,"sendCommand"),u(this,"resizeListener"),u(this,"hyperlinkListener"),u(this,"pageRuleStyleElement"),u(this,"pageSheetSizeAlreadySet",!1),u(this,"renderTask",null),u(this,"actions"),u(this,"readyState","loading"),u(this,"packageURL",[]),u(this,"opf",null),u(this,"touchActive",!1),u(this,"touchX",0),u(this,"touchY",0),u(this,"needResize",!1),u(this,"resized",!1),u(this,"needRefresh",!1),u(this,"viewportSize",null),u(this,"currentPage",null),u(this,"currentSpread",null),u(this,"pagePosition",null),u(this,"fontSize",16),u(this,"zoom",1),u(this,"fitToScreen",!1),u(this,"pageViewMode","singlePage"),u(this,"waitForLoading",!1),u(this,"renderAllPages",!0),u(this,"pref",hd()),u(this,"pageSizes",[]),u(this,"pixelRatioLimit",no==="chromium"&&"currentCSSZoom"in Element.prototype?16:0),u(this,"pixelRatio",Math.min(8,this.pixelRatioLimit)),u(this,"viewport",null),u(this,"opfView",null),u(this,"cmykReserveMap"),u(this,"cmykReserveMapUrl"),u(this,"paginationProgressHook",null);let r=e.ownerDocument,o=(s,a)=>{let h=r.getElementById(s);return h||(h=r.createElement("style"),h.id=s,a&&(h.textContent=a),r.head.appendChild(h)),h};o("vivliostyle-viewport-screen-css",ap),o("vivliostyle-viewport-css",lp),o("vivliostyle-polyfill-css",fp),e.setAttribute("data-vivliostyle-viewer-viewport",!0),Vr&&e.setAttribute("data-vivliostyle-debug",!0),e.setAttribute(Wc,"loading"),this.fontMapper=new KS(r.head,e),this.kick=()=>{},this.sendCommand=()=>{},this.resizeListener=()=>{this.needResize=!0,this.resized=!0,this.kick()},this.pageReplacedListener=this.pageReplacedListener.bind(this),this.hyperlinkListener=s=>{},this.pageRuleStyleElement=o("vivliostyle-page-rules"),this.actions={loadPublication:this.loadPublication,loadXML:this.loadXML,configure:this.configure,moveTo:this.moveTo,toc:this.showTOC},this.addLogListeners()}addLogListeners(){let t=id;Y.addListener(t.DEBUG,e=>{this.callback({t:"debug",content:e})}),Y.addListener(t.INFO,e=>{this.callback({t:"info",content:e})}),Y.addListener(t.WARN,e=>{this.callback({t:"warn",content:e})}),Y.addListener(t.ERROR,e=>{this.callback({t:"error",content:e})})}ensurePaginationProgressListener(){if(this.paginationProgressHook)return;let t=e=>{this.callback({t:"paginationprogress",...e})};this.paginationProgressHook=t,Ft("PAGINATION_PROGRESS",t)}removePaginationProgressListener(){this.paginationProgressHook&&(ql("PAGINATION_PROGRESS",this.paginationProgressHook),this.paginationProgressHook=null)}callback(t){t.i=this.instanceId,this.callbackFn(t)}setReadyState(t){if(this.readyState!==t){this.readyState=t,this.viewportElement.setAttribute(Wc,t);let e=this.getCurrentPageProgression();e&&this.viewportElement.setAttribute("data-vivliostyle-page-progression",e),this.callback({t:"readystatechange"})}}loadPublication(t){Nt.registerStartTiming("beforeRender"),this.setReadyState("loading");let e=t.url,i=t.fragment,n=t.authorStyleSheet,r=t.userStyleSheet;this.cmykReserveMapUrl=t.cmykReserveMapUrl,this.viewport=null;let o=V("loadPublication");return this.configure(t).then(()=>{$c.create(n,r).then(s=>{let a=Ie(_n(e),this.window.location.href);this.packageURL=[a],s.loadPubDoc(a).then(h=>{h?(this.opf=h,this.loadCmykReserveMap(s).then(()=>{this.render(i).then(()=>{o.finish(!0)})})):o.finish(!1)})})}),o.result()}loadXML(t){Nt.registerStartTiming("beforeRender"),this.setReadyState("loading");let e=t.url,i=t.document,n=t.fragment,r=t.authorStyleSheet,o=t.userStyleSheet;this.cmykReserveMapUrl=t.cmykReserveMapUrl,this.viewport=null;let s=V("loadXML");return this.configure(t).then(()=>{$c.create(r,o).then(a=>{let h=e.map((l,c)=>({url:Ie(_n(l.url),this.window.location.href),index:c,startPage:l.startPage,skipPagesBefore:l.skipPagesBefore}));this.packageURL=h.map(l=>l.url),Ji.fromChapters(a,"",h,i).then(l=>{this.opf=l,this.loadCmykReserveMap(a).then(()=>{this.render(n).then(()=>{s.finish(!0)})})})})}),s.result()}render(t){this.cancelRenderingTask();let e;return t?e=this.opf.resolveFragment(t).thenAsync(i=>(this.pagePosition=i,F(!0))):e=F(!0),e.thenAsync(()=>(Nt.registerEndTiming("beforeRender"),this.resize()))}resolveLength(t){let e=parseFloat(t),i=/[a-z]+$/,n;if(typeof t=="string"&&(n=t.match(i))){let r=n[0];if(r==="em"||r==="rem")return e*this.fontSize;let o=vi[r];if(o)return e*o}return e}configure(t){if(typeof t.autoresize=="boolean"&&(t.autoresize?(this.viewportSize=null,this.window.addEventListener("resize",this.resizeListener,!1),this.needResize=!0):this.window.removeEventListener("resize",this.resizeListener,!1)),typeof t.fontSize=="number"){let e=t.fontSize;e>=5&&e<=72&&this.fontSize!=e&&(this.fontSize=e,this.needResize=!0)}if(typeof t.viewport=="object"&&t.viewport){let e=t.viewport,i={marginLeft:this.resolveLength(e["margin-left"])||0,marginRight:this.resolveLength(e["margin-right"])||0,marginTop:this.resolveLength(e["margin-top"])||0,marginBottom:this.resolveLength(e["margin-bottom"])||0,width:this.resolveLength(e.width)||0,height:this.resolveLength(e.height)||0};(i.width>=200||i.height>=200)&&(this.window.removeEventListener("resize",this.resizeListener,!1),this.viewportSize=i,this.needResize=!0)}if(typeof t.hyphenate=="boolean"&&(this.pref.hyphenate=t.hyphenate,this.needResize=!0),typeof t.horizontal=="boolean"&&(this.pref.horizontal=t.horizontal,this.needResize=!0),typeof t.nightMode=="boolean"&&(this.pref.nightMode=t.nightMode,this.needResize=!0),typeof t.lineHeight=="number"&&(this.pref.lineHeight=t.lineHeight,this.needResize=!0),typeof t.columnWidth=="number"&&(this.pref.columnWidth=t.columnWidth,this.needResize=!0),typeof t.fontFamily=="string"&&(this.pref.fontFamily=t.fontFamily,this.needResize=!0),typeof t.load=="boolean"&&(this.waitForLoading=t.load),typeof t.renderAllPages=="boolean"&&(this.renderAllPages=t.renderAllPages),typeof t.userAgentRootURL=="string"&&(eu(t.userAgentRootURL.replace(/resources\/?$/,"")),tu(t.userAgentRootURL)),typeof t.rootURL=="string"&&(eu(t.rootURL),tu(`${an}resources/`)),typeof t.pageViewMode=="string"&&t.pageViewMode!==this.pageViewMode&&(this.pageViewMode=t.pageViewMode,this.needResize=!0),typeof t.pageBorder=="number"&&t.pageBorder!==this.pref.pageBorder&&(this.viewport=null,this.pref.pageBorder=t.pageBorder,this.needResize=!0),typeof t.zoom=="number"&&t.zoom!==this.zoom&&(this.zoom=t.zoom,this.needRefresh=!0),typeof t.fitToScreen=="boolean"&&t.fitToScreen!==this.fitToScreen&&(this.fitToScreen=t.fitToScreen,this.needRefresh=!0),typeof t.defaultPaperSize=="object"&&typeof t.defaultPaperSize.width=="number"&&typeof t.defaultPaperSize.height=="number"&&(this.viewport=null,this.pref.defaultPaperSize=t.defaultPaperSize,this.needResize=!0),typeof t.allowScripts=="boolean"&&t.allowScripts!==bi&&(JS(t.allowScripts),this.needResize=!0),typeof t.pixelRatio=="number"){let e=Math.min(t.pixelRatio,this.pixelRatioLimit);e!==this.pixelRatio&&(this.pixelRatio=e,this.needResize=!0)}return this.configurePlugins(t),F(!0)}configurePlugins(t){zt("CONFIGURATION").forEach(e=>{let i=e(t);this.needResize=i.needResize||this.needResize,this.needRefresh=i.needRefresh||this.needRefresh})}pageReplacedListener(t){let e=this.currentPage,i=this.currentSpread,n=t.target;i?(i.left===n||i.right===n)&&this.showCurrent(t.newPage):e===t.target&&this.showCurrent(t.newPage)}forCurrentPages(t){let e=[];this.currentPage&&e.push(this.currentPage),this.currentSpread&&(this.currentSpread.left&&e.push(this.currentSpread.left),this.currentSpread.right&&e.push(this.currentSpread.right)),e.forEach(i=>{i&&t(i)})}removePageListeners(){this.forCurrentPages(t=>{t.removeEventListener("hyperlink",this.hyperlinkListener,!1),t.removeEventListener("replaced",this.pageReplacedListener,!1)})}hidePages(){this.removePageListeners(),this.forCurrentPages(t=>{R(t.container,"display","none")}),this.currentPage=null,this.currentSpread=null}showSinglePage(t){t.addEventListener("hyperlink",this.hyperlinkListener,!1),t.addEventListener("replaced",this.pageReplacedListener,!1),R(t.container,"visibility","visible"),R(t.container,"display","block")}showPage(t){this.hidePages(),this.currentPage=t,t.container.style.marginLeft="",t.container.style.marginRight="",this.showSinglePage(t)}showSpread(t){if(this.hidePages(),this.currentSpread=t,t.left&&t.right){let e=parseFloat(t.left.container.style.width),i=parseFloat(t.right.container.style.width);e&&i&&e!==i&&(e<i?t.left.container.style.marginLeft=`${i-e}px`:t.right.container.style.marginRight=`${e-i}px`)}t.left&&(this.showSinglePage(t.left),t.right?t.left.container.removeAttribute("data-vivliostyle-unpaired-page"):t.left.container.setAttribute("data-vivliostyle-unpaired-page",!0)),t.right&&(this.showSinglePage(t.right),t.left?t.right.container.removeAttribute("data-vivliostyle-unpaired-page"):t.right.container.setAttribute("data-vivliostyle-unpaired-page",!0))}reportPosition(){let t=V("reportPosition");return this.pagePosition,this.opf.getCFI(this.pagePosition.spineIndex,this.pagePosition.offsetInItem).then(e=>{let i=this.currentPage;(this.waitForLoading&&i.fetchers.length>0?Hn(i.fetchers):F(!0)).then(()=>{this.sendLocationNotification(i,e).thenFinish(t)})}),t.result()}createViewport(){let t=this.viewportElement;if(this.viewportSize){let e=this.viewportSize;return t.style.marginLeft=`${e.marginLeft}px`,t.style.marginRight=`${e.marginRight}px`,t.style.marginTop=`${e.marginTop}px`,t.style.marginBottom=`${e.marginBottom}px`,new Gs(this.window,this.fontSize,this.pixelRatio,t,e.width,e.height)}else return new Gs(this.window,this.fontSize,this.pixelRatio,t)}resolveSpreadView(t,e){switch(this.pageViewMode){case"singlePage":return!1;case"spread":return!0;default:return t!=null&&(t.width-this.pref.pageBorder)/t.height>=(e?e.width*2/e.height:1.45)&&(!!e||t.width>800)}}updateSpreadView(t){this.pref.spreadView=t,this.viewportElement.setAttribute(bk,t.toString())}sizeIsGood(){var t;let e=this.createViewport(),i=((t=this.opfView)==null?void 0:t.hasPages())&&!this.opfView.hasAutoSizedPages(),n=this.resolveSpreadView(e,this.resized&&i?this.pageSizes[0]:null);this.resized=!1;let r=this.pref.spreadView!==n;return this.updateSpreadView(n),this.pixelRatio&&this.opfView&&this.pixelRatio/this.window.devicePixelRatio!==this.opfView.clientLayout.scaleRatio||this.viewportSize||!this.viewport||this.viewport.fontSize!=this.fontSize?!1:!r&&e.width==this.viewport.width&&e.height==this.viewport.height||!r&&e.width==this.viewport.width&&e.height!=this.viewport.height&&/Android|iPhone|iPad|iPod/.test(navigator.userAgent)?!0:i?(this.viewport.width=e.width,this.viewport.height=e.height,this.needRefresh=!0,!0):!1}setPageSize(t,e,i,n){this.pageSizes[n]=t,this.setPageSizePageRules(e,i,n),n===0&&this.pageViewMode==="autoSpread"&&!this.opfView.hasAutoSizedPages()&&this.updateSpreadView(this.resolveSpreadView(this.viewport,t))}setPageSizePageRules(t,e,i){var n,r;if(this.pageRuleStyleElement&&(!this.pageSheetSizeAlreadySet||this.pageSizes[i].width!==((n=this.pageSizes[i-1])==null?void 0:n.width)||this.pageSizes[i].height!==((r=this.pageSizes[i-1])==null?void 0:r.height))){let s=function(g){let m=g*.75;return Math.ceil(m)};var o=s;let a=Math.max(...this.pageSizes.map(g=>g.width)),h=Math.max(...this.pageSizes.map(g=>g.height)),l=s(a),c=s(h),d=l*((this.pixelRatio||1)-1)+2,p=c*((this.pixelRatio||1)-1)+2,f=`@page {size: ${l}pt ${c}pt; margin: 0 ${-d}pt ${-p}pt 0;}`;this.pageRuleStyleElement.textContent=f,this.pageSheetSizeAlreadySet=!0}}removePageSizePageRules(){this.pageRuleStyleElement&&(this.pageRuleStyleElement.textContent="",this.pageSheetSizeAlreadySet=!1)}loadCmykReserveMap(t){if(!this.cmykReserveMapUrl)return this.cmykReserveMap=void 0,F(!0);let e=Ie(_n(this.cmykReserveMapUrl),an),i=V("loadCmykReserveMap");return t.loadAsJSON(e).then(n=>{ky(n)?this.cmykReserveMap=n:(Y.warn("Invalid cmykReserveMap data, ignoring"),this.cmykReserveMap=void 0),i.finish(!0)}),i.result()}reset(){let t=!1,e=!1;this.opfView&&(t=this.opfView.tocVisible,e=this.opfView.tocAutohide,this.opfView.removeRenderedPages()),this.pageSizes=[],this.removePageSizePageRules(),this.viewport=this.createViewport(),this.viewport.resetZoom(),this.opfView=new wk(this.opf,this.viewport,this.fontMapper,this.pref,this.setPageSize.bind(this),this.cmykReserveMap),t&&this.sendCommand({a:"toc",v:"show",autohide:e})}showCurrent(t,e){this.needRefresh=!1,this.removePageListeners();let i=this.resolveSpreadView(this.viewport,t.dimensions);return i!==this.pref.spreadView&&this.updateSpreadView(i),i?this.opfView.getSpread(this.pagePosition,!!e).thenAsync(n=>!n.left&&!n.right?F(null):n.left&&n.right&&(!this.resolveSpreadView(this.viewport,n.left.dimensions)||!this.resolveSpreadView(this.viewport,n.right.dimensions))?(this.updateSpreadView(!1),this.showPage(t),this.setPageZoom(t),this.currentPage=t,F(null)):(this.showSpread(n),this.setSpreadZoom(n),this.currentPage=t.side==="left"?n.left:n.right,F(null))):(this.showPage(t),this.setPageZoom(t),this.currentPage=t,F(null))}setPageZoom(t){var e;let i=this.getAdjustedZoomFactor(t.dimensions);(e=this.viewport)==null||e.zoom(t.dimensions.width,t.dimensions.height,i)}setSpreadZoom(t){var e;let i=this.getSpreadDimensions(t);(e=this.viewport)==null||e.zoom(i.width,i.height,this.getAdjustedZoomFactor(i))}getAdjustedZoomFactor(t){return this.fitToScreen?this.calculateZoomFactorToFitInsideViewPort(t):this.zoom}getSpreadDimensions(t){let e=0,i=0;return t.left&&(e+=t.left.dimensions.width,i=t.left.dimensions.height),t.right&&(e+=t.right.dimensions.width,i=Math.max(i,t.right.dimensions.height)),t.left&&t.right&&(e+=this.pref.pageBorder*2,e+=Math.abs(t.left.dimensions.width-t.right.dimensions.width)),{width:e,height:i}}queryZoomFactor(t){if(!this.currentPage)throw new Error("no page exists.");if(t==="fit inside viewport"){let e;return this.pref.spreadView?(this.currentSpread,e=this.getSpreadDimensions(this.currentSpread)):e=this.currentPage.dimensions,this.calculateZoomFactorToFitInsideViewPort(e)}else throw new Error(`unknown zoom type: ${t}`)}calculateZoomFactorToFitInsideViewPort(t){if(!this.viewport)return this.zoom;let e=this.viewport.width/t.width,i=this.viewport.height/t.height;return Math.min(e,i)}cancelRenderingTask(){this.renderTask&&this.renderTask.interrupt(new Gc),this.renderTask=null}resize(){if(this.needResize=!1,this.needRefresh=!1,this.sizeIsGood())return F(!0);this.setReadyState("loading"),this.cancelRenderingTask();let t=Hr().getScheduler().run(()=>hn("resize",e=>{if(!this.opf){e.finish(!1);return}this.renderTask=t,Nt.registerStartTiming("render (resize)"),this.reset(),this.pagePosition&&(this.pagePosition.pageIndex==0&&this.pagePosition.offsetInItem==0||(this.pagePosition.pageIndex=-1)),this.opf.setEPageCountMode(this.renderAllPages),this.opfView.renderPagesUpto(this.pagePosition,!this.renderAllPages).then(i=>{if(!i){e.finish(!1);return}this.pagePosition=i.position,this.showCurrent(i.page,!0).then(()=>{this.setReadyState("interactive"),this.opf.countEPages(n=>{let r={t:"nav",epageCount:n,first:this.currentPage.isFirstPage,last:this.isLastPageForNotification(this.currentPage),metadata:this.opf.metadata,docTitle:this.opf.spine[this.pagePosition.spineIndex].title};(this.currentPage.isFirstPage||this.pagePosition.pageIndex==0&&this.opf.spine[this.pagePosition.spineIndex].epage)&&(r.epage=this.opf.spine[this.pagePosition.spineIndex].epage),this.callback(r)}).then(()=>{this.reportPosition().then(n=>{(this.renderAllPages?this.opfView.renderAllPages():F(null)).then(()=>{this.renderTask===t&&(this.renderTask=null),Nt.registerEndTiming("render (resize)"),bi&&Hg(this.window)?iC(this.window).then(()=>{this.renderAllPages&&this.setReadyState("complete"),this.callback({t:"loaded"}),e.finish(n)}):(this.renderAllPages&&this.setReadyState("complete"),this.callback({t:"loaded"}),e.finish(n))})})})})})},(e,i)=>{if(i instanceof Gc)Nt.registerEndTiming("render (resize)"),Y.debug(i.message);else throw i}));return F(!0)}sendLocationNotification(t,e){let i=V("sendLocationNotification"),n={t:"nav",first:t.isFirstPage,last:this.isLastPageForNotification(t),metadata:this.opf.metadata,docTitle:this.opf.spine[t.spineIndex].title};return this.opf.getEPageFromPosition(this.pagePosition).then(r=>{n.epage=r,n.epageCount=this.opf.epageCount,e&&(n.cfi=e),this.callback(n),i.finish(!0)}),i.result()}isLastPageForNotification(t){if(!this.opfView||!this.pagePosition)return t.isLastPage;let e=this.opfView.spineItems[this.pagePosition.spineIndex];if(!e||!e.complete)return!1;let i=e.item.spineIndex===this.opf.spine.length-1,n=this.pagePosition.pageIndex===e.pages.length-1;return i&&n}getCurrentPageProgression(){return this.opfView?this.opfView.getCurrentPageProgression(this.pagePosition):null}moveTo(t){var e;let i;if(this.readyState!=="complete"&&t.where!=="next"&&this.setReadyState("loading"),typeof t.where=="string"){let r;switch(t.where){case"next":r=this.pref.spreadView?this.opfView.nextSpread:this.opfView.nextPage;break;case"previous":r=this.pref.spreadView?this.opfView.previousSpread:this.opfView.previousPage;break;case"last":r=this.opfView.lastPage;break;case"first":r=this.opfView.firstPage;break;default:return F(!0)}i=()=>r.call(this.opfView,this.pagePosition,!this.renderAllPages)}else if(typeof t.epage=="number"){let r=t.epage;i=()=>this.opfView.navigateToEPage(r,this.pagePosition,!this.renderAllPages)}else if(typeof t.url=="string"){let r=t.url;i=()=>this.opfView.navigateTo(r,this.pagePosition,!this.renderAllPages)}else if(typeof((e=t.position)==null?void 0:e.spineIndex)=="number"){let r=t.position;i=()=>this.opfView.findPage(r,!this.renderAllPages)}else return F(!0);if(!this.opfView)return F(!0);let n=V("moveTo");return i.call(this.opfView).then(r=>{let o;if(r){this.pagePosition=r.position;let s=V("moveTo.showCurrent");o=s.result(),this.showCurrent(r.page,!this.renderAllPages).then(()=>{this.reportPosition().thenFinish(s)})}else o=F(!0);o.then(s=>{this.readyState==="loading"&&this.setReadyState("interactive"),n.finish(s)})}),n.result()}showTOC(t){let e=!!t.autohide,i=t.v,n=this.opfView.isTOCVisible(),r=e!=this.opfView.tocAutohide&&i!="hide";if(n){if(i=="show"&&!r)return F(!0)}else if(i=="hide")return F(!0);if(n&&i!="show")return this.opfView.hideTOC(),F(!0);{let o=V("showTOC");return this.opfView.showTOC(e).then(s=>{if(s){if(r&&(s.listeners={}),e){let a=()=>{this.opfView.hideTOC()};s.addEventListener("hyperlink",a,!1)}s.addEventListener("hyperlink",this.hyperlinkListener,!1)}o.finish(!0)}),o.result()}}runCommand(t){let e=t.a||"";return hn("runCommand",i=>{let n=this.actions[e];n?n.call(this,t).then(()=>{this.callback({t:"done",a:e}),i.finish(!0)}):(Y.error("No such action:",e),i.finish(!0))},(i,n)=>{Y.error(n,"Error during action:",e),i.finish(!0)})}initEmbed(t){let e=jc(t),i=null,n=this;Hv(()=>{let r=V("commandLoop"),o=Hr().getScheduler();return n.hyperlinkListener=s=>{let a=s,h=a.href.charAt(0)==="#"||n.packageURL.some(l=>a.href.substr(0,l.length)==l);if(h){s.preventDefault();let l={t:"hyperlink",href:a.href,internal:h};o.run(()=>(n.callback(l),F(!0)))}},r.loopWithFrame(s=>{if(n.needResize)n.resize().then(()=>{s.continueLoop()});else if(n.needRefresh)n.currentPage&&n.showCurrent(n.currentPage,!this.renderAllPages).then(()=>{s.continueLoop()});else if(e){let a=e;e=null,n.runCommand(a).then(()=>{s.continueLoop()})}else{let a=V("waitForCommand");i=a.suspend(this),a.result().then(()=>{s.continueLoop()})}}).thenFinish(r),r.result()}),n.kick=()=>{let r=i;r&&(i=null,r.schedule(!0))},n.sendCommand=r=>e?!1:(e=jc(r),n.kick(),!0),this.window.adapt_command=n.sendCommand}},um=(t=>(t.FIT_INSIDE_VIEWPORT="fit inside viewport",t))(um||{}),Gc=class cm extends Error{constructor(){var e;super(),u(this,"name","RenderingCanceledError"),u(this,"message","Page rendering has been canceled"),u(this,"stack"),Object.setPrototypeOf(this,cm.prototype),this.stack=(e=new Error().stack)!=null?e:""}};function jc(t){return typeof t=="string"?Yl(t):t}var Xc=Xl;function Sk(){return{autoResize:!0,fontSize:16,pageBorderWidth:1,renderAllPages:!0,pageViewMode:"autoSpread",zoom:1,fitToScreen:!1,defaultPaperSize:void 0,allowScripts:!0,pixelRatio:8}}function qc(t){let e={};return Object.keys(t).forEach(i=>{let n=t[i];switch(i){case"autoResize":e.autoresize=n;break;case"pageBorderWidth":e.pageBorder=n;break;default:e[i]=n}}),e}var dm=class{constructor(t,e){u(this,"settings",t),u(this,"initialized",!1),u(this,"adaptViewer_"),u(this,"options"),u(this,"eventTarget"),Jc(!!t.debug),this.adaptViewer_=new xk(t.window||window,t.viewportElement,"main",this.dispatcher.bind(this)),this.options=Sk(),e&&this.setOptions(e),this.eventTarget=new Jl,Object.defineProperty(this,"readyState",{get(){return this.adaptViewer_.readyState}})}setOptions(t){let e=Object.assign({a:"configure"},qc(t));this.adaptViewer_.sendCommand(e),Object.assign(this.options,t)}dispatcher(t){let e={type:t.t},i=t;Object.keys(i).forEach(n=>{n!=="t"&&(e[n]=i[n])}),this.eventTarget.dispatchEvent(e)}addListener(t,e){t==="paginationprogress"&&this.adaptViewer_.ensurePaginationProgressListener(),this.eventTarget.addEventListener(t,e,!1)}removeListener(t,e){var i;this.eventTarget.removeEventListener(t,e,!1),t==="paginationprogress"&&!((i=this.eventTarget.listeners[t])!=null&&i.length)&&this.adaptViewer_.removePaginationProgressListener()}loadDocument(t,e,i){if(!t||(Array.isArray(t)?!t[0]||typeof t[0]!="string"&&!t[0].url:typeof t!="string"&&!t.url)){this.eventTarget.dispatchEvent({type:"error",content:{error:new Error("No URL specified")}});return}this.loadDocumentOrPublication(t,null,e,i)}loadPublication(t,e,i){if(!t){this.eventTarget.dispatchEvent({type:"error",content:{error:new Error("No URL specified")}});return}this.loadDocumentOrPublication(null,t,e,i)}loadDocumentOrPublication(t,e,i,n){let r=i||{};function o(l){if(l)return l.flatMap(c=>{let d=c.url||null,p=c.text||null;return p!==null?[{url:d,text:p}]:d!==null?[{url:d}]:[]})}let s=o(r.authorStyleSheet),a=o(r.userStyleSheet);n&&Object.assign(this.options,n);let h=Object.assign({a:t?"loadXML":"loadPublication",userAgentRootURL:this.settings.userAgentRootURL,url:Ck(t)||e,document:r.documentObject,fragment:r.fragment,authorStyleSheet:s,userStyleSheet:a,cmykReserveMapUrl:r.cmykReserveMapUrl},qc(this.options));this.initialized?this.adaptViewer_.sendCommand(h):(this.initialized=!0,this.adaptViewer_.initEmbed(h))}getCurrentPageProgression(){return this.adaptViewer_.getCurrentPageProgression()}resolveNavigation(t){switch(t){case"left":return this.getCurrentPageProgression()===Xc.LTR?"previous":"next";case"right":return this.getCurrentPageProgression()===Xc.LTR?"next":"previous";default:return t}}navigateToPage(t,e){t==="epage"?this.adaptViewer_.sendCommand({a:"moveTo",epage:e}):this.adaptViewer_.sendCommand({a:"moveTo",where:this.resolveNavigation(t)})}navigateToInternalUrl(t){this.adaptViewer_.sendCommand({a:"moveTo",url:t})}navigateToPosition(t){var e,i;this.adaptViewer_.sendCommand({a:"moveTo",position:{spineIndex:t.spineIndex,pageIndex:(e=t.pageIndex)!=null?e:-1,offsetInItem:(i=t.offsetInItem)!=null?i:-1}})}isTOCVisible(){return this.adaptViewer_.opfView&&this.adaptViewer_.opfView.opf&&this.adaptViewer_.opfView.opf.toc?!!this.adaptViewer_.opfView.isTOCVisible():null}showTOC(t,e){let i=t==null?"toggle":t?"show":"hide";this.adaptViewer_.sendCommand({a:"toc",v:i,autohide:e})}queryZoomFactor(t){return this.adaptViewer_.queryZoomFactor(t)}getPageSizes(){return this.adaptViewer_.pageSizes}getTOC(){var t,e,i;return(i=(e=(t=this.adaptViewer_.opfView)==null?void 0:t.tocView)==null?void 0:e.getTOC())!=null?i:[]}getMetadata(){return this.adaptViewer_.opf.getMetadata()}getCover(){return this.adaptViewer_.opf.cover}getCmykMap(){var t;let e=(t=this.adaptViewer_)==null?void 0:t.opfView;return e!=null&&e.cmykStore?e.cmykStore.toJSON():{}}};function Ck(t){function e(n){return typeof n=="number"?n:null}function i(n){return typeof n=="string"?{url:n,startPage:null,skipPagesBefore:null}:{url:n.url,startPage:e(n.startPage),skipPagesBefore:e(n.skipPagesBefore)}}return Array.isArray(t)?t.map(i):t?[i(t)]:null}var pm=(t=>(t.PREVIOUS="previous",t.NEXT="next",t.LEFT="left",t.RIGHT="right",t.FIRST="first",t.LAST="last",t.EPAGE="epage",t))(pm||{}),kk=um,Pk=hm;Nt.forceRegisterEndTiming("load_vivliostyle");var Ek=class{constructor(t,{title:e="",printCallback:i=s=>s.print(),errorCallback:n=null,hideIframe:r=!0,removeIframe:o=!0}){u(this,"htmlDoc"),u(this,"title"),u(this,"printCallback"),u(this,"errorCallback"),u(this,"hideIframe"),u(this,"removeIframe"),u(this,"iframe"),u(this,"iframeWin",null),u(this,"window"),this.htmlDoc=t,this.title=e,this.printCallback=i,this.errorCallback=n,this.hideIframe=r,this.removeIframe=o,this.iframe=document.createElement("iframe"),this.hideIframe&&(this.iframe.style.width="0",this.iframe.style.height="0",this.iframe.style.borderWidth="0"),this.window=window,this.window.printInstance=this,this.iframe.srcdoc=`
1882
+ `),i.toString()}},ZS=class{constructor(e){u(this,"deobfuscator",e),u(this,"familyMap",{})}registerFamily(e,t){let i=e.family,n=this.familyMap[i],r=t.family;if(n){if(n!=r)throw new Error(`E_FONT_FAMILY_INCONSISTENT ${e.family}`)}else this.familyMap[i]=r}filterFontFamily(e){if(e instanceof _e){let t=e.values,i=[];for(let n of t){let r=this.familyMap[n.stringValue()];r&&i.push(D(r)),i.push(n)}return new _e(i)}else{let t=this.familyMap[e.stringValue()];return t?new _e([D(t),e]):e}}},JS=class{constructor(e,t,i){u(this,"head",e),u(this,"body",t),u(this,"srcURLMap",{}),u(this,"familyPrefix"),u(this,"familyCounter",0),this.familyPrefix=i||"Fnt_"}getViewFontFamily(e,t){let i=e.family,n=t.familyMap[i];return n||(n=this.familyPrefix+ ++this.familyCounter,t.familyMap[i]=n,n)}initFont(e,t,i){let n=z("initFont"),r=e.src,s={};for(let l of Vh(e.properties))s[l]=e.properties[l];let o=this.getViewFontFamily(e,i);s["font-family"]=D(o);let a=new Og(s),h=this.head.ownerDocument.createElement("style");return h.textContent=a.makeAtRule(r,t),this.head.appendChild(h),a.styleElement=h,Z.debug("Load font:",r),n.finish(a),n.result()}loadFont(e,t){let i=e.src,n=e.family+";"+i+";"+e.fontTraitKey,r=this.srcURLMap[n];return r?r.piggyback(s=>{t.registerFamily(e,s),Z.debug("Found already-loaded font:",i)}):(r=new Zo(()=>{let s=z("loadFont"),o=i.replace(/^url\("([^"]+)"\).*$/,"$1"),a=t.deobfuscator?t.deobfuscator(o):null;return a?Jo(o,"blob").then(h=>{if(!h.responseBlob){s.finish(null);return}a(h.responseBlob).then(l=>{this.initFont(e,l,t).thenFinish(s)})}):this.initFont(e,null,t).thenFinish(s),s.result()},`loadFont ${i}`),this.srcURLMap[n]=r,r.start()),r}findOrLoadFonts(e,t){let i=[];for(let n of e){if(!n.src||!n.family){Z.warn("E_FONT_FACE_INVALID");continue}i.push(this.loadFont(n,t))}return Un(i).thenAsync(()=>(this.reorderFontFaceRules(i),this.waitFontLoading()))}reorderFontFaceRules(e){var t;for(let i of e){let n=(t=i.resource)==null?void 0:t.styleElement;n?.parentNode===this.head&&this.head.appendChild(n)}}waitFontLoading(){let e=this.head.ownerDocument.fonts,t=0;if(e.forEach(n=>{n.status==="unloaded"&&(t++,n.load().catch(r=>{}))}),t===0)return I(!0);let i=z("waitFontLoading");return i.loop(()=>i.sleep(20).thenAsync(()=>e.status==="loading"?I(!0):I(!1))).thenFinish(i),i.result()}},Si=!0;function QS(e){Si=e}var on=[];function Sc(e,t){return e===t||(e.src||t.src?e.src===t.src:e.textContent===t.textContent)}function Bg(e){let t=Array.from(e.querySelectorAll("body > :not(script):not(link):not(style) ~ script"));return Array.from(e.querySelectorAll("head > script, body > script")).filter(i=>!t.includes(i))}function Uh(e,t,i){if(!Si||!(i!=null&&i.inHead)&&!(i!=null&&i.atEnd)&&Bg(e.ownerDocument).includes(e))return I(!1);let n=e.textContent,r=e.src,s=e.type==="module",o=r&&r.includes("/MathJax.js");if(o){if(t.document.head.querySelector("script[src*='/MathJax.js']"))return I(!0);t.MathJax||(t.MathJax={MathML:{extensions:["content-mathml.js"]},showProcessingMessages:!1,messageStyle:"none",skipStartupTypeset:!0,CommonHTML:{linebreaks:{automatic:!0}},"fast-preview":{disabled:!0},AuthorInit:function(){t.MathJax.Hub.processSectionDelay=0}})}let a=(s||r)&&e.async&&!o,h=(s&&!a||r&&e.defer)&&!o,l=!(i!=null&&i.atEnd)&&(i?.forceDefer||h||a);if(Mg(t)||(t.onload=null),l)return on.some(d=>Sc(d,e))||on.push(e),I(!0);for(let d of t.document.head.getElementsByTagName("script"))d.hasAttribute("data-vivliostyle-scripting")&&Sc(d,e)&&t.document.head.removeChild(d);let c=t.document.createElement("script");c.textContent=n,r&&(c.src=r),c.async=!!a,c.defer=!!h,c.setAttribute("data-vivliostyle-scripting","true");for(let d of e.attributes)["src","async","defer"].includes(d.name)||c.setAttribute(d.name,d.value);if(Z.debug("script:",r),r){let d=kt(c);return t.document.head.appendChild(c),Un([d])}else return t.document.head.appendChild(c),I(!0)}function eC(e,t){var i;let n={},r=o=>{var a;let h=(a=o["font-family"])==null?void 0:a.value;if(h)if(h.values)for(let c of h.values)n[c.stringValue()]=!0;else n[h.stringValue()]=!0;let l=o._marginBoxes;if(l)for(let c of Object.values(l))r(c)},s=o=>{if(o instanceof Ah)r(o.style);else if(o instanceof er||Array.isArray(o))for(let a of Object.values(o))s(a)};for(let o of Object.values(t.cascade.code))for(let a of Object.values(o??{}))s(a);for(let o of e.querySelectorAll("[style]"))(i=o.style)!=null&&i.fontFamily&&(n[o.style.fontFamily]=!0);return Object.keys(n).join(",")}function tC(e,t,i){var n;let r=(n=t.document.querySelector("[data-vivliostyle-textcontent]"))!=null?n:t.document.createElement("div");return r.style.position="fixed",r.style.fontSize="0",r.setAttribute("data-vivliostyle-textcontent","true"),r.setAttribute("aria-hidden","true"),r.style.fontFamily=eC(e,i),r.textContent=e.documentElement.textContent,t.document.body.appendChild(r),r}function iC(e,t,i){if(!Si)return I(!1);let n=Bg(e);if(n.length===0)return I(!1);let r=n.some(c=>!(c.async||c.defer||c.type==="module")),s=r?tC(e,t,i):null,o=t.document.fonts,a=t.$,h=!1,l=z("loadScripts");return l.loop(()=>{if(n.length===0)return r?l.sleep(20).thenAsync(()=>{var d,p;return o.status==="loading"||t.document.documentElement.classList.contains("wf-loading")||(d=t.FontJSON)!=null&&d.Font&&(p=t.ret)!=null&&p.readyState&&t.ret.readyState<4?I(!0):I(!1)}):I(!1);let c=n.shift();return Uh(c,t,{inHead:!0,forceDefer:h}).thenAsync(()=>(!h&&t.$!==a&&(on.push(c),h=!0),n.length===0&&r&&(Z.debug("dispatchEvent: DOMContentLoaded (document)"),t.document.dispatchEvent(new Event("DOMContentLoaded"))),I(!0)))}).then(()=>{s&&s.remove(),l.finish(!0)}),l.result()}function nC(e){if(!Si)return I(!1);let t=z("loadScripts");return t.loop(()=>on.length===0?I(!1):Uh(on.shift(),e,{atEnd:!0}).thenReturn(on.length>0)).then(()=>{Z.debug("dispatchEvent: DOMContentLoaded (window)"),e.dispatchEvent(new Event("DOMContentLoaded")),Z.debug("dispatchEvent: load (window)"),e.dispatchEvent(new Event("load")),t.finish(!0)}),t.result()}function Mg(e){return Si?on.length>0||!!e.document.head.querySelector("script[data-vivliostyle-scripting]"):!1}var rC=e=>String(e).replace(/[\u0000-\u001F"\\\u2028\u2029]/g,Kl),sC=e=>`"${rC(e)}"`,za=(e,t,i)=>sC(i.transformURL(ki(String(e)),t)),oC=(e,t,i)=>e.replace(/[uU][rR][lL]\(\s*"((\\([^0-9a-fA-F]+|[0-9a-fA-F]+\s*)|[^"\r\n])+)"/gm,(n,r)=>`url(${za(r,t,i)}`).replace(/[uU][rR][lL]\(\s*'((\\([^0-9a-fA-F]+|[0-9a-fA-F]+\s*)|[^'\r\n])+)'/gm,(n,r)=>`url(${za(r,t,i)}`).replace(/[uU][rR][lL]\(\s*((\\([^0-9a-fA-F]+|[0-9a-fA-F]+\s*)|[^"'\r\n\)\s])+)/gm,(n,r)=>`url(${za(r,t,i)}`),aC={},lC=new Set(["base","body","head","html","link","meta","script","style","title"]);function hC(e){if(e instanceof Q)return e;if(e instanceof ee){let t=[];for(let i of e.values)if(i instanceof Q)t.push(i.str);else return null;if(t.length>0)return new Q(t.join(""))}return null}function uC(e){return e instanceof Qe?e:e instanceof ee&&e.values[0]instanceof Qe&&e.values.slice(1).every(t=>t instanceof Q&&t.str.trim()==="")?e.values[0]:null}function cC(e){if(ts!=="webkit")return!1;let t=e["--viv-marker-content"];if(!t)return!1;let i=uC(t);if(i)return e["list-style-type"]=v.none,e["list-style-image"]=i,delete e["--viv-marker-content"],!0;let n=hC(t);return n?(e["list-style-type"]=n,e["list-style-image"]=v.none,!0):!1}function dC(e){e.addEventListener("load",()=>{e.contentWindow.navigator.epubReadingSystem={name:"adapt",version:"0.1",layoutStyle:"paginated",hasFeature:function(t,i){return t==="mouse-events"}}},!1)}var zl=class br extends Zl{constructor(t,i,n,r,s,o,a,h,l,c,d,p,f,g,m,w=new Map,b={value:!1}){super(),u(this,"flowName",t),u(this,"context",i),u(this,"viewport",n),u(this,"styler",r),u(this,"regionIds",s),u(this,"xmldoc",o),u(this,"docFaces",a),u(this,"footnoteStyle",h),u(this,"stylerProducer",l),u(this,"page",c),u(this,"customRenderer",d),u(this,"fallbackMap",p),u(this,"documentURLTransformer",f),u(this,"pageProps",g),u(this,"cascadedPageStyle",m),u(this,"semanticFootnoteFirstRefOffsets",w),u(this,"semanticFootnoteFirstRefOffsetsInitialized",b),u(this,"document"),u(this,"exprContentListener"),u(this,"computedStyleParentFontSizeOverride",null),u(this,"computedStyleParentLineHeightOverride",null),u(this,"nodeContext",null),u(this,"viewRoot",null),u(this,"isFootnote",!1),u(this,"sourceNode",null),u(this,"offsetInNode",0),u(this,"viewNode",null),this.document=n.document,this.exprContentListener=r.counterListener.getExprContentListener()}clone(){return new br(this.flowName,this.context,this.viewport,this.styler,this.regionIds,this.xmldoc,this.docFaces,this.footnoteStyle,this.stylerProducer,this.page,this.customRenderer,this.fallbackMap,this.documentURLTransformer,this.pageProps,this.cascadedPageStyle,this.semanticFootnoteFirstRefOffsets,this.semanticFootnoteFirstRefOffsetsInitialized)}getExplicitPageType(t){let i=t?.page;if(!i||J(i.value))return null;let n=i.evaluate(this.context,"page").toString();return!n||n.toLowerCase()==="auto"?null:n}isNormalFlowElement(t){var i,n,r;let s=this.styler.getStyle(t,!1),o=(i=s?.display)==null?void 0:i.evaluate(this.styler.context,"display");if((o&&!J(o)?o:v.inline)===v.none)return!1;let a=(n=s?.position)==null?void 0:n.evaluate(this.styler.context,"position"),h=a&&!J(a)?a:v.static;if(Pr(h)||Ur(h))return!1;let l=(r=s?.float)==null?void 0:r.evaluate(this.styler.context,"float");return(l&&!J(l)?l:v.none)===v.none}getFirstInFlowChildElement(t){var i;let n=t.firstChild;for(;n;){if(n.nodeType===Node.TEXT_NODE){if(!Ee(n))return null;n=n.nextSibling;continue}if(n.nodeType!==Node.ELEMENT_NODE){n=n.nextSibling;continue}let r=n;if(this.isNormalFlowElement(r)){let s=this.styler.getStyle(r,!1),o=(i=s?.display)==null?void 0:i.evaluate(this.styler.context,"display"),a=o&&!J(o)?o:v.inline;return Wt(a)?null:r}n=n.nextSibling}return null}getEffectiveStartPageType(t,i){let n=i,r=t;for(;r;){let s=this.getFirstInFlowChildElement(r);if(!s)return n;let o=this.getExplicitPageType(this.styler.getStyle(s,!1));o&&(n=o),r=s}return n}syncTextNodePageTypeBoundary(t){if(t.sourceNode.nodeType!==Node.TEXT_NODE||Ee(t.sourceNode)||t.fragmentIndex!==1)return;let i=t.pageType;this.styler.cascade.currentPageType!==i&&(un(t.breakBefore)||(t.breakBefore=nt(t.breakBefore,"page")),i!==this.styler.cascade.previousPageType&&(this.styler.cascade.previousPageType=this.styler.cascade.currentPageType),this.styler.cascade.currentPageType=i)}syncSemanticFootnoteCounterToTarget(t){if(t.localName!=="a"||!Yt(t)||!Vu(t,this.xmldoc.url,r=>this.xmldoc.getElementOffset(r),this.semanticFootnoteFirstRefOffsets,this.semanticFootnoteFirstRefOffsetsInitialized))return;let i=t.getAttribute(Ar);if(!i)return;let n=tf(t,this.xmldoc.url,r=>this.xmldoc.getElement(r));n&&n.setAttribute(Ar,i)}createPseudoelementShadow(t,i,n,r,s,o,a,h,l){var c,d;let p=this.getPseudoMap(r,this.regionIds,this.isFootnote,t,a);if(!p)return l;let f=[],g=vr.createElementNS("http://www.pyroxy.com/ns/shadow","root"),m=g,w=Yt(i)&&!!p["footnote-call"]&&At((c=p["footnote-call"].content)==null?void 0:c.value);for(let P of jx){let y;if(P){if(!p[P])continue;let C=Et(i),S=i.namespaceURI==="http://www.pyroxy.com/ns/shadow"&&i.localName==="include"&&i.classList.contains("-vivliostyle-footnote-content");if(P=="footnote-call"&&!Yt(i)||P=="footnote-marker"&&!(C||S||n&&this.isFootnote)&&!((d=this.nodeContext)!=null&&d.pluginProps.nestedFootnoteDetached))continue;if(P.match(/^first-/)){let N=s.display;if(!N||N===v.inline)continue;let E=i.firstElementChild;if(E&&Ee(E.previousSibling)){let R=o.getStyle(E,!1);if(R){let _=me(R,"display");if(_!=null&&_.value&&_.value!==v.inline)continue}}}if(P==="before"||P==="after"||P==="footnote-call"||P==="footnote-marker"){let N=p[P].content,E=(P==="before"||P==="after")&&(s.float===v.footnote||C||S)&&!!N;if(!N||!At(N.value)&&!E)continue}f.push(P),y=vr.createElementNS("http://www.w3.org/1999/xhtml","span"),Lr(y,P)}else{if(w)continue;y=vr.createElementNS("http://www.pyroxy.com/ns/shadow","content")}m.appendChild(y),P.match(/^first-/)&&(m=y)}if(!f.length)return l;let b=new Ma(i,r,o,a,this.exprContentListener),x=new qs(i,g,null,h,l,at.ROOTLESS,b);return l||x}getPseudoMap(t,i,n,r,s){let o=ht(t,"_pseudos");if(!o)return null;let a={};for(let h in o){let l=a[h]={};Rr(l,o[h],s),Ol(l,s,o[h]),cg(o[h],i,n,(c,d)=>{Rr(l,d,s),hg(d,p=>{Rr(l,p,s)})})}return a}createRefShadow(t,i,n,r,s){let o=z("createRefShadow");return this.xmldoc.store.load(t).then(a=>{let h=a;if(h){let l=h.getElement(t);if(l){let c=this.stylerProducer.getStylerForDoc(h);s=new qs(n,l,h,r,s,i,c)}}o.finish(s)}),o.result()}createShadows(t,i,n,r,s,o,a,h){let l=z("createShadows"),c=null,d=s.template,p;if(d instanceof Qe||d===v.footnote)if(d!==v.footnote||Vu(i,this.xmldoc.url,f=>this.xmldoc.getElementOffset(f),this.semanticFootnoteFirstRefOffsets,this.semanticFootnoteFirstRefOffsetsInitialized)){let f=d instanceof Qe?d.url:Fe("user-agent.xml#footnote",Ti);p=this.createRefShadow(f,at.ROOTLESS,i,h,c)}else p=I(c);else p=I(c);return p.then(f=>{var g,m,w;let b=null;if(i.namespaceURI=="http://www.pyroxy.com/ns/shadow"&&i.localName=="include"){let P=i.getAttribute("href"),y=this.xmldoc;P?y=(g=h?.xmldoc)!=null?g:this.xmldoc:h&&(h.owner.namespaceURI=="http://www.w3.org/1999/xhtml"?P=h.owner.getAttribute("href"):P=h.owner.getAttributeNS("http://www.w3.org/1999/xlink","href"),y=(w=(m=h.parentShadow)==null?void 0:m.xmldoc)!=null?w:this.xmldoc),P&&(P=co(P,y.url),b=this.createRefShadow(P,at.ROOTED,i,h,f))}b==null&&(b=I(f));let x=null;b.then(P=>{if(s.display===v.table_cell){let y=Fe("user-agent.xml#table-cell",Ti);x=this.createRefShadow(y,at.ROOTLESS,i,h,P)}else x=I(P);x.then(y=>{y=this.createPseudoelementShadow(t,i,n,r,s,o,a,h,y),l.finish(y)})})}),l.result()}setViewRoot(t,i){this.viewRoot=t,this.isFootnote=i}computeStyle(t,i,n,r){var s;let o=this.context,a=Ml(n,o,this.regionIds,this.isFootnote),h=!((s=this.nodeContext)!=null&&s.parent);if(h){let x=this.styler.rootStyle["writing-mode"];!a["writing-mode"]&&x&&this.styler.bodyPropagatedStyle["writing-mode"]!==x&&(a["writing-mode"]=x);let P=this.styler.rootStyle.direction;!a.direction&&P&&this.styler.bodyPropagatedStyle.direction!==P&&(a.direction=P)}let l=t;t=Bl(a,o,t);let c=t;if(h&&!t){let x=this.styler.rootStyle["writing-mode"];x&&this.styler.bodyPropagatedStyle["writing-mode"]===x&&(c=Bl({"writing-mode":x},o,t))}let d=!h&&t!==l;i=ug(a,o,i);let p=(x,P)=>{var y,C;let S;d&&(t?/^(min-|max-)?(height|inline-size)$/.test(x)&&(S=(y=o.pageAreaHeight)!=null?y:void 0):/^(min-|max-)?(width|inline-size)$/.test(x)&&(S=(C=o.pageAreaWidth)!=null?C:void 0));let N=P.evaluate(o,x,S,t);return(x=="font-family"||x=="--viv-marker-font-family")&&(N=this.docFaces.filterFontFamily(N)),N},f=!!new Je(o.style.pageScope,"left-page").evaluate(o);if(dg(a,r,t,i,f,p),d){let x=r[t?"height":"width"];(!x||x===v.auto)&&(r[t?"height":"width"]=v.max_content)}if(Pr(r.position))return r.position=v.fixed,r.visibility=v.hidden,c;let g=r.position,m=r.float,w=r.display||(this.sourceNode&&this.sourceNode.namespaceURI==="http://www.w3.org/1999/xhtml"?v.inline:void 0),b=xp(w,g,m,this.sourceNode===this.xmldoc.root);return["display","position","float"].forEach(x=>{b[x]&&(r[x]=b[x])}),c}inheritFromSourceParent(t,i){var n;let r=t.sourceNode,s=[],o=null,a=r instanceof Element&&r.namespaceURI==="http://www.pyroxy.com/ns/shadow"&&r.localName==="include"&&r.classList.contains("-vivliostyle-footnote-content"),h=this.isFootnote&&(!t.parent||a),l=t.shadowContext;if(r instanceof Element&&r.namespaceURI==="http://www.pyroxy.com/ns/shadow"&&r.localName==="include"&&r.classList.contains("-vivliostyle-footnote-content")){let w=l?.owner;if(w instanceof Element&&Yt(w)){let b=w.getAttribute("href")||w.getAttributeNS("http://www.w3.org/1999/xlink","href");if(b){let x=co(b,this.xmldoc.url),P=this.xmldoc.getElement(x);P&&Et(P)&&((n=P.parentNode)==null?void 0:n.nodeType)===1&&(r=P.parentNode,l=null)}}}let c=-1;for(;r&&r.nodeType==1;){let w=l,b=w!==null&&w.root==r,x=b&&w.type==at.ROOTED&&Et(r);if(!b||w.type==at.ROOTLESS||x){let P=(w?w.styler:this.styler).getStyle(r,!1);s.push(P),o=o||Wa(r)}b&&!x?(r=w.owner,l=w.parentShadow):(r=r.parentNode,c++)}let d=new Set;if(s.length>0){let w=s[0],b=Ml(w,this.context,this.regionIds,this.isFootnote);for(let x in b){if(!Bn(x))continue;let P=b[x].evaluate(this.context,x);P&&P!==v.inherit&&P!==v.unset&&P!==Re&&!Rt(P)&&d.add(x)}}let p=c===0,f=this.context.queryUnitSize("em",p),g={"font-size":new Y(new B(f,"px"),0)};p&&(g["line-height"]=new Y(new It(this.context.pref.lineHeight),0));let m=new H0(g,this.context);for(let w=s.length-1;w>=0;--w){let b=s[w],x=[];for(let C in b)Bn(C)&&x.push(C);x.sort(uu);let P,y;for(let C of x){if(w>0&&h&&C.startsWith("--viv-marker-")||w>0&&d.has(C))continue;m.setPropName(C);let S=me(b,C),N=S;if(S.value===v.initial)delete g[C];else if(!J(S.value)){if(C==="font-size"&&w===s.length-1&&this.context.isRelativeRootFontSize&&this.context.rootFontSize)N=new Y(new B(this.context.rootFontSize,"px"),S.priority);else if(C==="line-height"&&w===s.length-1&&(S.value instanceof B&&(S.value.unit==="lh"||S.value.unit==="rlh")||this.context.isRootLineHeightFromRelativeCalc))N=new Y(new B(this.context.rootLineHeight,"px"),S.priority);else if(w===0&&S.value instanceof B&&S.value.unit==="lh"){let E=this.getLineHeightUnitSize(C,P,y);E!=null&&(N=new Y(new B(S.value.num*E,"px"),S.priority))}else ze(C)||(N=S.filterValue(m));C==="font-size"?P=N.value:C==="line-height"&&(y=N.value),g[C]=N}}}for(let w in i)Bn(w)||(g[w]=i[w]);return{lang:o,elementStyle:g}}resolveURL(t){return t=Fe(t,this.xmldoc.url),this.fallbackMap[t]||t}inheritLangAttribute(t){t.lang=Wa(t.sourceNode)||t.parent&&t.parent.lang||t.lang}transferPolyfilledInheritedProps(t,i){let n=E0().filter(r=>i[r]);if(n.length){let r=t.inheritedProps;if(t.parent){r=t.inheritedProps={};for(let s in t.parent.inheritedProps)r[s]=t.parent.inheritedProps[s]}n.forEach(s=>{let o=i[s];if(o){if(J(o))o===v.initial&&(r[s]=void 0);else if(o instanceof ut)r[s]=o.num;else if(o instanceof he)r[s]=o.name;else if(o instanceof B){let a=o;switch(a.unit){case"dpi":case"dpcm":case"dppx":r[s]=a.num*wi[a.unit];break;default:r[s]=o}}else r[s]=o;["widows","orphans"].includes(s)||delete i[s]}})}}resolveFormattingContext(t,i,n,r,s,o){let a=Dt("RESOLVE_FORMATTING_CONTEXT");for(let h=0;h<a.length;h++){let l=a[h](t,i,n,r,s,o);if(l){t.formattingContext=l;return}}}createElementView(t,i){var n;let r=!0,s=z("createElementView"),o=this.sourceNode,a=t.shadowContext?t.shadowContext.styler:this.styler,h=a.getStyle(o,!1);if(this.syncSemanticFootnoteCounterToTarget(o),!t.shadowContext){let C=this.xmldoc.getElementOffset(o);aa.registerFragmentIndex(C,t.fragmentIndex,0)}let l={},c={getStyle:C=>this.styler.getStyle(C,!1),getProp:(C,S)=>C?me(C,S):null,getStyleMap:(C,S)=>ht(C,S),getMutableStyleMap:(C,S)=>hi(C,S),createCascadeValue:(C,S)=>new Y(C,S),filterFootnoteMarkerContent:(C,S)=>C.filterValue(new Xr(this.styler.cascade,S,this.styler.cascade.counterResolver,this.styler.elementWindow.currentStyle,"footnote-marker")).value};if(!t.parent){let C=this.inheritFromSourceParent(t,h);h=C.elementStyle,t.lang=C.lang}let d=h.position,p=h.float,f=h["float-reference"],g=p&&!J(p.value)&&p.value!==v.none&&f&&!J(f.value)?Zw(f.value.toString()):null,m=!!t.shadowContext&&t.shadowContext.type===at.ROOTED&&Et(o);if(t.parent&&(Pr(d?.value)||g&&Oi(g)||m)){let C=this.inheritFromSourceParent(t,h);h=C.elementStyle,t.lang=C.lang}h=nb(o,h,t.shadowContext,this.xmldoc.url,C=>this.xmldoc.getElement(C),Ar,c),h=rb(o,h,t.shadowContext,this.context,c),t.vertical=this.computeStyle(t.vertical,t.direction==="rtl",h,l),g&&Oi(g)&&l.display===v.block&&(l.display=v.flow_root),a.processContent(o,l,t),this.transferPolyfilledInheritedProps(t,l),this.inheritLangAttribute(t),l.direction&&(t.direction=l.direction.toString());let w=l["flow-into"];if(w&&w.toString()!=this.flowName)return s.finish(!1),s.result();if(Si&&o.localName==="script"&&o.namespaceURI==="http://www.w3.org/1999/xhtml")return Uh(o,this.viewport.window).thenFinish(s),s.result();let b=l.display;if(Et(o)&&!m&&o.hasAttribute(ef)&&(b=l.display=v.none),J(b)&&(b===v.initial||b===v.unset?b=v.inline:b===v.inherit?b=(n=t.parent)!=null&&n.display?D(t.parent.display):null:b=null),b===v.none)return s.finish(!1),s.result();let x=t.parent==null,P=l[t.vertical?"width":"height"],y=(b===v.grid||b===v.inline_grid)&&!!P&&!(P===v.auto||J(P));return t.flexContainer=b===v.flex||y,this.createShadows(t,o,x,h,l,a,this.context,t.shadowContext).then(C=>{var S;t.nodeShadow=C;let N=l.position,E=l.float,R=l.clear,_=t.vertical?v.vertical_rl:v.horizontal_tb,X=t.parent?t.parent.vertical?v.vertical_rl:v.horizontal_tb:_,te=ow(o),k=l["column-count"],M=l["column-width"],T=k&&k!==v.auto&&!J(k)||M&&M!==v.auto&&!J(M);t.establishesBFC=hw(b,N,E,l.overflow,_,X,T||te),t.containingBlockForAbsolute=uw(N),t.isInsideBFC()&&E!==v.footnote&&!(g&&Oi(g))&&(E=null,R=null);let $=null,O=!1,A=this.isFootnote&&(!t.parent||t.pluginProps.nestedFootnoteDetached||m),L=sb(o,t.shadowContext,c);ob(L.sourceStyle,l,this.context),$=L.footnoteDisplay;let W=E instanceof ee||E===v.left||E===v.right||E===v.top||E===v.bottom||E===v.inline_start||E===v.inline_end||E===v.block_start||E===v.block_end||E===v.snap_block||E===v.snap_inline||E===v.inside||E===v.outside||E===v.footnote?E.toString():null,G=W!==null;if(E&&(delete l.float,E===v.footnote))if($=l["footnote-display"]||$,O=!!l["--viv-marker-content"],A){G=!1;let j=$?.toString();j&&(l["--viv-footnote-display"]=D(j)),b=O?D("list-item"):j==="inline"||j==="compact"?v.inline:v.block,l.display=b}else l.display=v.inline;if(A&&Et(o)){O=O||!!l["--viv-marker-content"];let j=$?.toString();j&&(l["--viv-footnote-display"]=D(j)),O&&(b=l.display=D("list-item")),!O&&(j==="inline"||j==="compact")&&(b=l.display=v.inline)}R&&(R===v.inherit&&t.parent&&t.parent.clearSide&&(R=D(t.parent.clearSide)),(R===v.left||R===v.right||R===v.top||R===v.bottom||R===v.inline_start||R===v.inline_end||R===v.block_start||R===v.block_end||R===v.inside||R===v.outside||R===v.both||R===v.all||R===v.same||R===v.column||R===v.region||R===v.page)&&(delete l.clear,(G||l.display&&l.display!=v.inline)&&(t.clearSide=R.toString())));let U=pr(b)&&!!(l["ua-list-item-count"]||l["--viv-marker-content"]),V=l["break-inside"];(G||V&&!J(V)&&V!==v.auto)&&t.breakPenalty++,b&&b!==v.inline&&Wt(b)&&t.breakPenalty++,t.inline=!G&&!b||Wt(b)||Sp(b),t.display=b?b.toString():"inline",t.floatSide=G?W:null,t.floatReference=g||Ie.INLINE;let K=l["float-min-wrap-block"];t.floatMinWrapBlock=K&&!J(K)?K:null;let ne=this.isInsideNonRootMultiColumn(t),ie=l["column-span"];if(t.columnSpan=!ne&&ie&&!J(ie)?ie:null,!t.inline){let j=l["break-after"];j&&!J(j)&&!(ne&&j===v.column)&&(t.breakAfter=j.toString(),nl[t.breakAfter]&&(l["break-after"]=v.column));let Ut=l["break-before"];Ut&&!J(Ut)&&!(ne&&Ut===v.column)&&(t.breakBefore=Ut.toString(),nl[t.breakBefore]&&(this.isAtStartOfPage()?delete l["break-before"]:l["break-before"]=v.column),t.fragmentIndex!==1&&(t.breakBefore=null));let Jt=l.page,gn=Jt&&!J(Jt)?Jt.toString():null,$t=gn;!$t&&!t.parent&&(t.shadowContext||b===v.table_header_group||b===v.table_footer_group)&&($t=this.styler.cascade.currentPageType),!$t||$t.toLowerCase()==="auto"?$t=t.pageType:t.pageType=$t;let Ci=gn!=null&&gn.toLowerCase()!=="auto",Ui=Ci?t.fragmentIndex===1?this.getEffectiveStartPageType(o,$t):(S=this.styler.cascade.currentPageType)!=null?S:$t:$t;this.styler.cascade.currentPageType!==Ui&&!(!Ci&&l.position===v.fixed)&&(t.fragmentIndex===1&&!un(t.breakBefore)&&(t.breakBefore="page"),Ui!==this.styler.cascade.previousPageType&&(this.styler.cascade.previousPageType=this.styler.cascade.currentPageType),this.styler.cascade.currentPageType=Ui)}t.captionSide=l["caption-side"]&&l["caption-side"].toString()||"top";let be=l["border-collapse"];if(!be||be===D("separate")){let j=l["border-spacing"],Ut,Jt;j&&(j instanceof ee?(Ut=j.values[0],Jt=j.values[1]):Ut=Jt=j,Ut.isNumeric()&&(t.inlineBorderSpacing=dt(Ut,this.context)),Jt.isNumeric()&&(t.blockBorderSpacing=dt(Jt,this.context)))}let xe=l["footnote-policy"]||L.footnotePolicy;xe&&!J(xe)&&(l["--viv-footnote-policy"]=xe),t.footnotePolicy=xe&&!J(xe)?xe:null;let pe=l["x-first-pseudo"];if(pe){let j=t.parent?t.parent.firstPseudo:null;t.firstPseudo=new Aw(j,pe.num)}t.inline||this.processAfterIfcontinues(t,o,h,a,this.context);let fe=l["white-space"];if(fe){let j=Np(fe.toString());j!==null&&(t.whitespace=j)}let Se=l["hyphenate-character"];Se&&Se instanceof Q&&(t.hyphenateCharacter=Se.str);let Ne=l["word-break"],Le=l["line-break"],Oe=l["overflow-wrap"];(Ne===v.break_all||Le===v.anywhere||Oe===v.break_word||Oe===v.anywhere)&&(t.breakWord=!0),this.resolveFormattingContext(t,i,b,N,E,x),t.parent&&(i=t.parent.formattingContext.isFirstTime(t,i)),t.inline||(t.repeatOnBreak=this.processRepeatOnBreak(l),this.findAndProcessRepeatingElements(t,o,a));let ge=!1,rt=null,ot=[],Ot=o.namespaceURI,ye=o.localName,gs=ye;Ot=="http://www.w3.org/1999/xhtml"?(lC.has(ye)?ye="div":ye=="vide_"?ye="video":ye=="audi_"?ye="audio":ye=="object"&&(ge=!0),o.hasAttribute(_h)&&o.hasAttribute("src")&&l.content instanceof Qe&&(ye="img")):Ot=="http://www.idpf.org/2007/ops"?(ye="span",Ot="http://www.w3.org/1999/xhtml"):Ot=="http://www.pyroxy.com/ns/shadow"?(Ot="http://www.w3.org/1999/xhtml",ye=t.inline?"span":"div"):ge=!0,U?i?(ye="li",l["--viv-marker-content"]&&(cC(l)||(l["list-style-type"]=v.none,l["list-style-image"]=v.none))):(b=Wt(b)?v.inline:v.block,l.display=b,ye="div"):ye=="body"||ye=="li"?ye="div":ye=="q"&&(ye="span"),l.behavior&&l.behavior.toString()!="none"&&(ge=!0),o.dataset&&o.getAttribute("data-math-typeset")==="true"&&(ge=!0);let da;if(ge){let j=t.parent?t.parent.viewNode:null;da=this.customRenderer(o,j,l)}else da=I(null);da.then(j=>{var Ut,Jt,gn,$t;if(j)ge&&(r=j.getAttribute("data-adapt-process-children")=="true");else if(l.display===v.none){s.finish(!1);return}else j=this.createElement(Ot,ye);if(!x&&T&&l["column-fill"]===v.auto){let We=t.vertical?l.width:l.height;(!We||We===v.auto||J(We))&&(j.setAttribute("data-viv-saved-column-fill","auto"),l["column-fill"]=v.balance)}ye!=gs&&(j.setAttribute("data-vivliostyle-original-tag",gs),(gs==="html"||gs==="body")&&(j.role="presentation")),ye=="a"&&j.addEventListener("click",this.page.hrefHandler,!1),rt&&(this.applyPseudoelementStyle(t,"inner",rt),j.appendChild(rt)),j.localName=="iframe"&&j.namespaceURI=="http://www.w3.org/1999/xhtml"&&dC(j);let Ci=t.inheritedProps["image-resolution"],Ui=[],pa=l.width,fa=l.height,cm=o.getAttribute("width"),dm=o.getAttribute("height"),ga=pa===v.auto||!pa&&!cm,ma=fa===v.auto||!fa&&!dm,qh=o.attributes,pm=qh.length,tr=null,Yh=null,ya=(Jt=(Ut=t.parent)==null?void 0:Ut.viewNode)==null?void 0:Jt.lastElementChild;b===v.table_cell&&ya?.localName==="a"&&j.appendChild(ya);for(let We=0;We<pm;We++){let St=qh[We],ct=St.namespaceURI,ae=St.localName,Te=St.value;if(ct){if(ct=="http://www.w3.org/2000/xmlns/")continue;ct=="http://www.w3.org/1999/xlink"&&ae=="href"&&(Te=this.documentURLTransformer.transformURL(this.resolveURL(Te),this.xmldoc.url))}else{if(!Si&&ae.match(/^on/)||ae=="style")continue;if(ae==="media"&&ye==="source"&&Ot==="http://www.w3.org/1999/xhtml"&&((gn=o.parentElement)==null?void 0:gn.localName)==="picture")try{let qe=this.context.rootScope,mt=new Qo(qe),ys=new xt(Te,mt),Kh=bp(ys,mt,"");if(Kh){if(Kh.toExpr().evaluate(this.context))continue;Te="not all"}}catch{}if((ae=="id"||ae=="name")&&i){let qe=this.documentURLTransformer.transformFragment(Te,this.xmldoc.url);j.setAttribute(ae,Te),j.setAttribute("data-vivliostyle-id",qe);let mt=j.ownerDocument.createElement("a");mt.setAttribute(ae,qe),mt.setAttribute($n,"1"),mt.style.position="absolute",j.appendChild(mt),this.page.registerElementWithId(j,qe);continue}if(ae=="src"||ae=="href"||ae=="poster")Te=this.resolveURL(Te),ae==="href"?Te=this.documentURLTransformer.transformURL(Te,this.xmldoc.url):Te=zr(Te),ae==="src"&&(Te=nd(Te));else if(ae=="srcset")Te=Te.split(",").map(qe=>{let mt=qe.trim().split(/\s+/),ys=zr(this.resolveURL(mt[0]));return mt.length>1?`${ys} ${mt.slice(1).join(" ")}`:ys}).join(",");else if(ae==="data"&&ge&&ye==="object"&&j.hasAttribute("data"))continue;if(ae==="poster"&&ye==="video"&&Ot==="http://www.w3.org/1999/xhtml"){let qe=new Image,mt=kt(qe,Te);ga&&ma?(ot.push(mt),Ui.push({image:qe,element:j,fetcher:mt})):this.page.fetchers.push(mt)}}if(Ot=="http://www.w3.org/2000/svg"&&/^[A-Z\-]+$/.test(ae)&&(ae=ae.toLowerCase()),this.isSVGUrlAttribute(ae)&&(Te=oC(Te,this.xmldoc.url,this.documentURLTransformer)),ct){let qe=aC[ct];qe&&(ae=`${qe}:${ae}`)}if(ae=="src"&&!ct&&(ye=="img"||ye=="input")&&Ot=="http://www.w3.org/1999/xhtml")tr=Te;else if(ae=="alt"&&!ct&&ye=="img"&&Ot=="http://www.w3.org/1999/xhtml")Yh=Te;else if(ae=="href"&&ye=="image"&&Ot=="http://www.w3.org/2000/svg"&&(ct=="http://www.w3.org/1999/xlink"||!ct))ct||j.setAttribute(ae,Te),this.page.fetchers.push(kt(j,Te));else if(ct)j.setAttributeNS(ct,ae,Te);else try{j.setAttribute(ae,Te)}catch(qe){Z.warn(qe)}}if(tr){let We=ye==="input"?new Image:j,St=kt(We,tr,Yh);We!==j&&(j.src=tr);let ct=()=>{var ae,Te;if(l.position===v.fixed)return!0;for(let qe=(ae=t.parent)==null?void 0:ae.viewNode;qe&&qe!==this.viewRoot;qe=qe.parentElement)if(((Te=qe.style)==null?void 0:Te.position)==="fixed")return!0;return!1};!ga&&!ma&&!(()=>{let ae=t.vertical?pa:fa;return ae instanceof B&&ae.unit==="%"})()&&!ct()?this.page.fetchers.push(St):(ga&&ma&&Ci&&Ci!==1&&Ui.push({image:We,element:j,fetcher:St}),ot.push(St))}else!tr&&ye==="img"&&Ot==="http://www.w3.org/1999/xhtml"&&(j.srcset||(($t=o.parentElement)==null?void 0:$t.localName)==="picture")&&this.page.fetchers.push(kt(j));delete l.content;let ms=l["--viv-marker-content"];if(ms){let We=ms instanceof ee?ms.values:[ms];for(let St of We)St instanceof Qe&&St.url&&ot.push(kt(new Image,St.url))}if(j.localName==="object"&&j.namespaceURI==="http://www.w3.org/1999/xhtml"&&j.hasAttribute("data")&&this.page.fetchers.push(kt(j)),j.localName==="embed"&&j.namespaceURI==="http://www.w3.org/1999/xhtml"&&j.hasAttribute("src")&&this.page.fetchers.push(kt(j)),j.localName==="iframe"&&j.namespaceURI==="http://www.w3.org/1999/xhtml"&&j.hasAttribute("src")){let We=j;We.loading==="lazy"&&(We.loading="eager"),this.page.fetchers.push(kt(j))}if(this.preprocessElementStyle(t,l),this.applyComputedStyles(j,l),t.inline)i||(Ct(j,"inline-start"),An(j)&&Ct(j,"clone"));else if(i){if(!Ur(l.position)){let We=l["margin-break"],St=this.getBreakTypeAt(t),ct=St!==null,ae=St==="auto";(We===v.discard&&ct||We!==v.keep&&ae&&!t.floatSide)&&Pa(j,"block-start")}}else{let We=t.vertical?"width":"height";Ii(j,We)&&F(j,We,t.display==="table-row"?"0.01px":""),Ct(j,"block-start"),An(j)&&Ct(j,"clone"),Pa(j,"block-start")}U&&l["ua-list-item-count"]&&j.setAttribute("value",l["ua-list-item-count"].stringValue()),this.viewNode=j,ot.length?Un(ot).then(()=>{Ci!==void 0&&Ci>0&&this.modifyElemDimensionWithImageResolution(Ui,Ci,l,t.vertical),s.finish(r)}):s.timeSlice().then(()=>{s.finish(r)})})}),s.result()}isAtStartOfPage(){var t,i;for(let n=this.nodeContext;n!=null&&n.parent&&!n.after;n=n.parent){let r=n===this.nodeContext&&!n.viewNode?(t=n.parent.viewNode)==null?void 0:t.lastChild:(i=n.viewNode)==null?void 0:i.previousSibling;for(;r&&(Ee(r,n.parent.whitespace)||Mt(r));)r=r.previousSibling;if(r)return!1}return!0}isInsideNonRootMultiColumn(t){var i;let n=(i=t.parent)==null?void 0:i.viewNode;return!!(n&&ls(n))}getBreakTypeAt(t){var i,n,r,s,o;if(this.isInsideTable(t))return null;for(let h=t;h&&!h.after;h=h.parent){if(Ze(h.breakBefore))return h.breakBefore;let l=h.parent;if(h.fragmentIndex===1&&!l)return h.sourceNode===((i=h.sourceNode.ownerDocument)==null?void 0:i.documentElement)?"page":null;if(!l)continue;if(l.floatSide)return null;let c=l.viewNode;if(c){let d=this.viewport.window.getComputedStyle(c),p=parseFloat(d.paddingBlockStart),f=parseFloat(d.borderBlockStartWidth);if(p||f)return null;let g=c?.firstChild;for(;g&&(Ee(g,l.whitespace)||!h.floatSide&&Mt(g));)g=g.nextSibling;if(g&&g!==h.viewNode)return null}}let a=(o=(s=(r=(n=this.context)==null?void 0:n.currentLayoutPosition)==null?void 0:r.flowPositions[this.flowName])==null?void 0:s.startBreakType)!=null?o:null;return Ze(a)?a:"auto"}isInsideTable(t){for(let i=t;i&&!i.after;i=i.parent)if(i.display&&i.display.startsWith("table"))return!0;return!1}processAfterIfcontinues(t,i,n,r,s){let o=this.getPseudoMap(n,this.regionIds,this.isFootnote,t,s);if(o&&o["after-if-continues"]&&o["after-if-continues"].content){let a=new Ma(i,n,r,s,this.exprContentListener);t.afterIfContinues=new qx(i,a)}}isSVGUrlAttribute(t){return br.SVG_URL_ATTRIBUTES.includes(t.toLowerCase())}modifyElemDimensionWithImageResolution(t,i,n,r){t.forEach(s=>{if(s.fetcher.get().get()==="load"){let o=s.image,a=o.width/i,h=o.height/i,l=s.element;if(a>0&&h>0){if(n["box-sizing"]===v.border_box&&(n["border-left-style"]!==v.none&&(a+=dt(n["border-left-width"],this.context)),n["border-right-style"]!==v.none&&(a+=dt(n["border-right-width"],this.context)),n["border-top-style"]!==v.none&&(h+=dt(n["border-top-width"],this.context)),n["border-bottom-style"]!==v.none&&(h+=dt(n["border-bottom-width"],this.context))),i>1){let c=n["max-width"]||v.none,d=n["max-height"]||v.none;if(c===v.none&&d===v.none)F(l,"max-width",`${a}px`);else if(c!==v.none&&d===v.none)F(l,"width",`${a}px`);else if(c===v.none&&d!==v.none)F(l,"height",`${h}px`);else{c.isNumeric(),d.isNumeric();let p=c,f=d;p.unit!=="%"?F(l,"max-width",`${Math.min(a,dt(p,this.context))}px`):f.unit!=="%"?F(l,"max-height",`${Math.min(h,dt(f,this.context))}px`):r?F(l,"height",`${h}px`):F(l,"width",`${a}px`)}}else if(i<1){let c=n["min-width"]||Me,d=n["min-height"]||Me;c.isNumeric();let p=c,f=d;p.num===0&&f.num===0?F(l,"min-width",`${a}px`):p.num!==0&&f.num===0?F(l,"width",`${a}px`):p.num===0&&f.num!==0?F(l,"height",`${h}px`):p.unit!=="%"?F(l,"min-width",`${Math.max(a,dt(p,this.context))}px`):f.unit!=="%"?F(l,"min-height",`${Math.max(h,dt(f,this.context))}px`):r?F(l,"height",`${h}px`):F(l,"width",`${a}px`)}}}})}preprocessElementStyle(t,i){Dt("PREPROCESS_ELEMENT_STYLE").forEach(n=>{n(t,i)})}findAndProcessRepeatingElements(t,i,n){for(let r=i.firstChild;r;r=r.nextSibling){if(r.nodeType!==1)continue;let s={},o=n.getStyle(r,!1);if(this.computeStyle(t.vertical,t.direction==="rtl",o,s),!this.processRepeatOnBreak(s))continue;if(t.formattingContext instanceof cn&&!t.belongsTo(t.formattingContext))return;let a=t.parent,h=a?a.formattingContext:null;t.formattingContext=new cn(h,t.sourceNode),t.formattingContext.initializeRepetitiveElements(t.vertical);return}}processRepeatOnBreak(t){let i=t["repeat-on-break"];return i!==v.none&&((i===v.auto||J(i))&&(t.display===v.table_header_group?i=v.header:t.display===v.table_footer_group?i=v.footer:i=v.none),i&&i!==v.none)?i.toString():null}createTextNodeView(t){let i=z("createTextNodeView");return this.preprocessTextContent(t).then(n=>{let r=this.offsetInNode||0,s=Lu(n).substr(r);this.viewNode=document.createTextNode(s),i.finish(!0)}),i.result()}preprocessTextContent(t){var i;if(t.preprocessedTextContent!=null)return I(t.preprocessedTextContent);let n,r=n=(i=t.sourceNode.textContent)!=null?i:"",s=z("preprocessTextContent"),o=Dt("PREPROCESS_TEXT_CONTENT"),a=0;return s.loop(()=>a>=o.length?I(!1):o[a++](t,r).thenAsync(h=>(r=h,I(!0)))).then(()=>{let h=mw(n,r);t.preprocessedTextContent=h,s.finish(h)}),s.result()}createNodeView(t,i){let n=z("createNodeView"),r,s=!0;return t.sourceNode.nodeType==1?r=this.createElementView(t,i):t.sourceNode.nodeType==8?(this.viewNode=null,r=I(!0)):r=this.createTextNodeView(t),r.then(o=>{var a;if(s=o,t.viewNode=this.viewNode,this.viewNode){let h=(p,f)=>p?.nodeType===1&&ai(p)===f,l=t.parent,c=l&&h(this.viewNode,"after")&&h(l.viewNode,"first-letter")?l:null,d=l?(a=c?.viewNode)!=null&&a.hasChildNodes()?c.parent.viewNode:l.viewNode:this.viewRoot;t.pluginProps.nestedFootnoteDetached&&(d=this.viewRoot),d&&(t.inline&&!(this.viewNode.nodeType===3&&Ee(this.viewNode))&&!d.hasChildNodes()&&Cp(d).includes("block-start")&&Ct(d,"text-start"),d.appendChild(this.viewNode),$w(this.viewNode))}n.finish(s)}),n.result()}setCurrent(t,i,n){return this.nodeContext=t,this.sourceNode=t.sourceNode,this.offsetInNode=t.offsetInNode,this.viewNode=null,this.createNodeView(t,i)}processShadowContent(t){if(t.shadowContext==null||t.sourceNode.localName!="content"||t.sourceNode.namespaceURI!="http://www.pyroxy.com/ns/shadow")return t;let i=t.boxOffset,n=t.shadowContext,r,s,o=n.subShadow||n.parentShadow;n.subShadow?(r=n.subShadow.root,s=n.subShadow.type,s==at.ROOTLESS&&(r=r.firstChild)):(r=n.owner.firstChild,s=at.ROOTLESS);let a=t.sourceNode.nextSibling,h;if(a?(t.sourceNode=a,t.resetView(),h=t):t.shadowSibling?h=t.shadowSibling:h=null,r){let l=en.childOf(r,t.parent,i);return l.shadowContext=o,l.shadowType=s,l.shadowSibling=h,this.processShadowContent(l)}return h===null&&(h=t.parent.modify(),h.after=!0),h.boxOffset=i,h}nextPositionInTree(t,i){let n=t.boxOffset+1;if(t.after){let r=Fp(t);if(!r)return null;if(r.shadowType!=at.ROOTED){let o=r.sourceNode.nextSibling;if(o)return r=r.modify(),r.boxOffset=n,r.sourceNode=o,r.resetView(),this.processShadowContent(r)}if(r.shadowSibling){let o=r.shadowSibling.modify();return o.boxOffset=n,o}let s=r.parent.modify();return s.boxOffset=n,s.after=!0,s}else{if(t.nodeShadow){let s=t.nodeShadow.root;if(t.nodeShadow.type==at.ROOTLESS&&(s=s.firstChild),s){let o=en.childOf(s,t,n);return o.shadowContext=t.nodeShadow,o.shadowType=t.nodeShadow.type,this.processShadowContent(o)}}let r=t.sourceNode.firstChild;if(r)return this.processShadowContent(en.childOf(r,t,n));if(i){let s=Lu(i);n+=s.length-1-t.offsetInNode}return t=t.modify(),t.boxOffset=n,t.after=!0,t}}findImmediateFootnoteCallSibling(t){var i;let n=this.xmldoc.getElementOffset(t.sourceNode),r=t.viewNode;if(!r)return null;let s=r.previousSibling;for(;s;){if(s.nodeType===Node.TEXT_NODE){if(((i=s.textContent)!=null?i:"").trim().length===0){s=s.previousSibling;continue}return null}if(s.nodeType===Node.ELEMENT_NODE){let o=s;return ai(o)==="footnote-call"&&o.getAttribute(br.FOOTNOTE_CALL_OWNER_ATTR)===n.toString()?o:null}return null}return null}isSemanticFootnoteElement(t){let i=t.sourceNode;return i instanceof Element&&Et(i)}insertFootnoteCall(t){var i,n;let r=z("insertFootnoteCall"),s=vr.createElementNS("http://www.w3.org/1999/xhtml","span");Lr(s,"footnote-call");let o=this.xmldoc.getElementOffset(t.sourceNode);s.setAttribute(br.FOOTNOTE_CALL_OWNER_ATTR,o.toString());let a=en.siblingOf(s,t,t.boxOffset);a.inline=!0;let h=new Ma(t.sourceNode,this.styler.getStyle(t.sourceNode,!1),this.styler,this.context,this.exprContentListener);return a.shadowContext=new qs(t.sourceNode,s,null,((i=t.parent)==null?void 0:i.shadowContext)||null,null,at.ROOTLESS,h),a.shadowSibling=t,t.boxOffset++,(n=t.viewNode)!=null&&n.parentNode&&t.viewNode.parentNode.removeChild(t.viewNode),this.setCurrent(a,!0,!1).then(l=>{if(l&&s.hasChildNodes())r.finish(a);else{let c=a.modify();c.after=!0,a.viewNode||(c.inline=!0),r.finish(c)}}),r.result()}nextInTree(t,i){return(!t.after&&t.sourceNode.nodeType!=1?this.preprocessTextContent(t):I(null)).thenAsync(n=>this.nextInTreeWithPreprocessedText(t,n,i))}nextInTreeWithPreprocessedText(t,i,n){let r=this.nextPositionInTree(t,i);if(!r||r.after)return I(r);this.syncTextNodePageTypeBoundary(r);let s=r,o=z("nextInTree");return this.setCurrent(s,!0,n).then(a=>{if((!s.viewNode||!a)&&(s=s.modify(),s.after=!0,s.viewNode||(s.inline=!0)),s.floatSide==="footnote"&&!(this.isFootnote&&!s.parent)&&!s.after&&!s.pluginProps.footnoteCallProcessed&&!s.shadowContext&&!this.isSemanticFootnoteElement(s)){let h=this.findImmediateFootnoteCallSibling(s);h!=null&&h.parentNode&&h.parentNode.removeChild(h),this.isFootnote&&s.parent&&(s.pluginProps.nestedFootnoteDetached=1),s.pluginProps.footnoteCallProcessed=1,this.insertFootnoteCall(s).then(l=>{this.dispatchEvent({type:"nextInTree",nodeContext:l}),o.finish(l)});return}this.dispatchEvent({type:"nextInTree",nodeContext:s}),o.finish(s)}),o.result()}addImageFetchers(t){Or(t,this.page)}applyComputedStyles(t,i){var n,r,s;let o=i["background-image"];o&&this.addImageFetchers(o);let a=i["border-image-source"];a&&this.addImageFetchers(a);let h=i["list-style-image"];h&&this.addImageFetchers(h);let l=i["mask-image"];l&&this.addImageFetchers(l);let c=i["clip-path"];c&&this.addImageFetchers(c);let d=i.filter;d&&this.addImageFetchers(d);let p=i["shape-outside"];p&&this.addImageFetchers(p);let f=i["--viv-marker-content"];f&&this.addImageFetchers(f);let g=i.position===v.relative,m=((n=this.nodeContext)==null?void 0:n.parent)===null&&((r=this.sourceNode)==null?void 0:r.parentElement)===null&&!!((s=this.viewRoot)!=null&&s.parentElement),w=Object.keys(i);w.sort(uu);let b,x;for(let P of w){if(fC[P])continue;let y=i[P];if(!(!y||y===Re&&!ze(P))){if(y=y.visit(new Uy(this.xmldoc.url,this.documentURLTransformer)),y instanceof B)if(y.unit==="em"){let C=this.getEmUnitSize(P,b);C!=null&&(y=new B(y.num*C,"px"))}else if(y.unit==="lh"){let C=this.getLineHeightUnitSize(P,b,x);C!=null&&(y=new B(y.num*C,"px"))}else dd(y.unit)&&(y=Ad(y,this.context));if((P==="font-size"||P==="line-height")&&(P==="font-size"?b=y:x=y,this.viewport.layoutUnitAdj&&y instanceof B&&y.unit!=="%"&&y.unit!=="em"&&y.unit!=="lh"&&(y=new xn(`calc(${y.toString()} - var(--viv-layoutUnitAdj))`))),ww[P]||g&&bw[P]){this.page.delayedItems.push(new lh(t,P,y));continue}m&&this.page.pageAreaElement&&Bn(P)?(F(this.page.pageAreaElement.parentElement.parentElement,P,y.toString()),P!=="writing-mode"&&P!=="direction"&&F(this.viewport.layoutBox,P,y.toString())):F(t,P,y.toString())}}}parsePlusLayoutUnitAdj(t){if(t.endsWith("px")){let i=parseFloat(t);if(!isNaN(i))return Math.round((i+this.viewport.layoutUnitAdj)*this.viewport.layoutUnitPerPixel)/this.viewport.layoutUnitPerPixel}return null}getFootnoteAreaInheritedMetrics(){var t,i;let n=(i=(t=this.page.pageAreaElement)==null?void 0:t.parentElement)==null?void 0:i.parentElement,r=n?this.viewport.window.getComputedStyle(n):null,s=r&&this.parsePlusLayoutUnitAdj(r.fontSize)||this.context.rootFontSize||this.context.initialFontSize,o=r&&this.parsePlusLayoutUnitAdj(r.lineHeight)||this.context.rootLineHeight||s*this.context.pref.lineHeight;return{fontSize:s,lineHeight:o}}getComputedFontMetrics(t,i){var n,r,s;let o=this.viewport.window.getComputedStyle(t),a=(n=this.parsePlusLayoutUnitAdj(o.fontSize))!=null?n:i.fontSize,h=(s=(r=this.parsePlusLayoutUnitAdj(o.lineHeight))!=null?r:i.lineHeight)!=null?s:a!=null?a*this.context.pref.lineHeight:null;return{fontSize:a,lineHeight:h}}getParentViewStyle(){var t,i,n;return((n=(i=(t=this.nodeContext)==null?void 0:t.parent)==null?void 0:i.viewNode)==null?void 0:n.nodeType)===1?this.viewport.window.getComputedStyle(this.nodeContext.parent.viewNode):null}getParentComputedMetrics(t){var i,n;return{fontSize:(i=this.computedStyleParentFontSizeOverride)!=null?i:t?this.parsePlusLayoutUnitAdj(t.fontSize):this.context.rootFontSize,lineHeight:(n=this.computedStyleParentLineHeightOverride)!=null?n:t?this.parsePlusLayoutUnitAdj(t.lineHeight):this.context.rootLineHeight}}getLineHeightUnitSize(t,i,n){var r,s,o;let a=this.getParentViewStyle(),h=this.getParentComputedMetrics(a),l=h.lineHeight;if(t==="line-height"||t==="font-size")return l;let c=null;if(n)if(n instanceof It||n instanceof B&&(n.unit==="em"||n.unit==="%"))c=n instanceof B&&n.unit==="%"?n.num/100:n.num;else{if(n instanceof B&&n.unit!=="lh"){let d=this.context.queryUnitSize(n.unit,!1);if(d!=null)return n.num*d}return null}if(c==null)for(let d=(s=(r=this.nodeContext)==null?void 0:r.parent)==null?void 0:s.viewNode;d&&d.nodeType===1;d=d.parentNode){let p=(o=d?.style)==null?void 0:o.lineHeight;if(p){/^[0-9.]+$/.test(p)&&(c=parseFloat(p));break}}if(c!=null){if(i&&!(i instanceof B))return null;let d=h.fontSize;if(i instanceof B){let p=Nl(i,d,this.context).num;return typeof p!="number"||isNaN(p)?null:c*p}else return d==null?null:c*d}return l}getEmUnitSize(t,i){let n=this.getParentViewStyle(),r=this.getParentComputedMetrics(n).fontSize;if(t==="font-size"||i==null)return r;if(i instanceof B){let s=Nl(i,r,this.context).num;if(typeof s=="number"&&!isNaN(s))return s}return null}applyPseudoelementStyle(t,i,n){if(t.after)return;let r=this.sourceNode,s=(t.shadowContext?t.shadowContext.styler:this.styler).getStyle(r,!1),o=ht(s,"_pseudos");if(!o||(s=o[i],!s))return;let a={};t.vertical=this.computeStyle(t.vertical,t.direction==="rtl",s,a);let h=a.content;At(h)&&(h.visit(new $r(n,this.context,h,this.exprContentListener)),delete a.content),this.applyComputedStyles(n,a)}peelOff(t,i){let n=z("peelOff"),r=t.firstPseudo,s=t.offsetInNode,o=t.after;if(i>0)s+=i;else if(!o&&t.viewNode&&s==0){let f=t.viewNode.parentNode;f&&f.removeChild(t.viewNode)}let a=t.boxOffset+i,h=[],l=t;for(let f=t.parent;f&&f.firstPseudo===r;f=l.parent)h.push(l),l=f;let c=l.shadowSibling,d=h.length-1,p=null;return n.loop(()=>{for(;d>=0;){let f=h[d],g=p??l.parent,m=new en(f.sourceNode,g,a,(g??l).formattingContext);m.blockContainer=g&&bo(g),d==0&&(m.offsetInNode=s,m.after=o),m.shadowType=f.shadowType,m.shadowContext=f.shadowContext,m.nodeShadow=f.nodeShadow,m.shadowSibling=f.shadowSibling?f.shadowSibling:c,c=null,p=m,d--;let w=this.setCurrent(m,!1);if(w.isPending())return w}return I(!1)}).then(()=>{n.finish(p??t.parent)}),n.result()}createElement(t,i){return t=="http://www.w3.org/1999/xhtml"?this.document.createElement(i):this.document.createElementNS(t,i)}applyFootnoteStyle(t,i,n){var r;let s={},o=[],a=this.footnoteStyle;if(this.cascadedPageStyle){let p=ht(this.cascadedPageStyle,Wo);p&&p.area&&(a=p.area)}let h=ht(a,"_pseudos");t=this.computeStyle(t,i,a,s);let l=this.getFootnoteAreaInheritedMetrics();!s["font-size"]&&l.fontSize!=null&&(s["font-size"]=new B(l.fontSize,"px")),delete s.content;let c=this.computedStyleParentFontSizeOverride,d=this.computedStyleParentLineHeightOverride;this.computedStyleParentFontSizeOverride=l.fontSize,this.computedStyleParentLineHeightOverride=l.lineHeight;try{this.applyComputedStyles(n,s);let p=this.getComputedFontMetrics(n,l);if(this.computedStyleParentFontSizeOverride=p.fontSize,this.computedStyleParentLineHeightOverride=p.lineHeight,h&&h.before){let f=h.before,g=!!me(f,"display"),m={},w=this.createElement("http://www.w3.org/1999/xhtml","span");Lr(w,"before"),n.appendChild(w),this.computeStyle(t,i,f,m),g||(m.display=v.block);let b=me(f,"content");if(b){let P=((r=this.sourceNode)==null?void 0:r.nodeType)===1?this.sourceNode:this.xmldoc.root;m.content=b.filterValue(new Xr(this.styler.cascade,P,this.styler.cascade.counterResolver,this.styler.elementWindow.currentStyle,"before")).evaluate(this.context,"content")}let x=m.content;if(At(x)){x.visit(new $r(w,this.context,x,this.exprContentListener));let P=w.querySelectorAll("img[src]");for(let C=0;C<P.length;C++){let S=P[C],N=S.getAttribute("src");if(!N)continue;let E=kt(S,N);o.push(E),this.page.fetchers.push(E)}let y=w.getAttribute("src");if(y){let C=w.querySelector("img");C||(C=this.document.createElement("img"),C.setAttribute("src",y),w.appendChild(C));let S=kt(C,y);o.push(S),this.page.fetchers.push(S)}}delete m.content,this.applyComputedStyles(w,m)}}finally{this.computedStyleParentFontSizeOverride=c,this.computedStyleParentLineHeightOverride=d}return o.length?Un(o).thenReturn(t):I(t)}processFragmentedBlockEdge(t){var i,n,r;let s=!t.inline&&t.after?t.parent:t,o=!1;if(t.inline&&t.after&&!t.shadowContext&&((i=t.sourceNode.nextSibling)==null?void 0:i.nodeType)===1){let h=t.sourceNode.nextSibling,l=(n=me(this.styler.getStyle(h,!1),"display"))==null?void 0:n.value.toString();o=l&&!Wt(l)||h.getAttribute("data-math-typeset")==="true"&&/^\s*(\$\$|\\\[)/.test(h.textContent)}let a=0;for(let h=s;h;h=h.parent){if(((r=h.viewNode)==null?void 0:r.nodeType)!==1)continue;let l=h.viewNode;if(l.style)if(h.inline){if(Ct(l,"inline-end"),An(l)){let c=h.vertical?l.offsetWidth:l.offsetHeight;Ct(l,"clone"),(h.vertical?l.offsetWidth:l.offsetHeight)>c&&this.fixClonedBoxDecorationOverflow(l)}}else{let c=t.vertical?"width":"height";if(Ii(l,c)&&F(l,c,""),Ct(l,"block-end"),!a++&&h!==s){let{textAlign:d}=this.viewport.window.getComputedStyle(l);if(d==="justify"&&!o){let p=this.createChildAnonymousBlockIfNeeded(l);p?p!==l?Pp(p,["block-start","text-start","block-end","text-end","justify"]):(Ct(l,"text-end"),Ct(l,"justify")):Ct(l,"text-end")}else Ct(l,"text-end")}An(l)&&Ct(l,"clone"),Pa(l,"block-end")}}}fixClonedBoxDecorationOverflow(t){let i=this.viewport.window.getComputedStyle(t),n=parseFloat(i.paddingInlineEnd),r=parseFloat(i.borderInlineEndWidth),s=-(n+r);isNaN(s)||(t.style.marginInlineEnd=`${s}px`)}createChildAnonymousBlockIfNeeded(t){let i=s=>{let{display:o,position:a,float:h}=this.viewport.window.getComputedStyle(s);if(s.localName==="ruby"||tn[s.localName])return!1;if(s.localName==="br")return!0;if((o==="inline"||o==="contents")&&s.hasChildNodes()){let l=s.lastElementChild;if(l&&(!l.nextSibling||l.nextSibling===s.lastChild&&Ee(l.nextSibling))){let c=i(l);if(c||c===null)return c}for(let c=l?.previousElementSibling;c;c=c.previousElementSibling){let d=i(c);if(d||d===null)return null}return!1}if(o==="none"||a==="absolute"||a==="fixed"||h&&h!=="none"||s.hasAttribute($n)){let l=s.previousElementSibling;return l&&(l.nextSibling===s||l.nextSibling===s.previousSibling&&Ee(l.nextSibling))?i(l):!1}return!(!o||Wt(o))},n=null;for(let s=t.lastElementChild;s;s=s.previousElementSibling){let o=i(s);if(o){n=s;break}if(o===null)return null}if(!n)return t;if(n===t.lastElementChild&&(!n.nextSibling||n.nextSibling===t.lastChild&&Ee(n.nextSibling)))return null;let r=t.ownerDocument.createElement("span");r.className="viv-anonymous-block";for(let s=n.nextSibling,o=null;s;s=o)o=s.nextSibling,r.appendChild(s);return t.appendChild(r),r}convertLengthToPx(t,i,n){let r=t.num,s=t.unit;if(ey(s)){let o=i;for(;o&&o.nodeType!==1;)o=o.parentNode;let a=parseFloat(n.getElementComputedStyle(o)["font-size"]);return Ih(t,a,this.context).num}else{let o=this.context.queryUnitSize(s,!1);return o?r*o:t}}isSameNodePositionStep(t,i){if(t.shadowContext){if(!i.shadowContext)return!1;let n=t.node.nodeType===1?t.node:t.node.parentElement,r=i.node.nodeType===1?i.node:i.node.parentElement;return t.shadowContext.owner===i.shadowContext.owner&&ai(n)===ai(r)}else return t.node===i.node}isSameNodePosition(t,i){return t.offsetInNode===i.offsetInNode&&t.after==i.after&&t.steps.length===i.steps.length&&t.steps.every((n,r)=>{let s=i.steps[r];return this.isSameNodePositionStep(n,s)})}};u(zl,"SVG_URL_ATTRIBUTES",["color-profile","clip-path","cursor","filter","marker","marker-start","marker-end","marker-mid","fill","stroke","mask"]),u(zl,"FOOTNOTE_CALL_OWNER_ATTR","data-viv-footnote-call-owner");var pC=zl,fC={"float-min-wrap-block":!0,"float-reference":!0,"flow-into":!0,"flow-linger":!0,"flow-options":!0,"flow-priority":!0,"footnote-display":!0,"footnote-policy":!0,"margin-break":!0,page:!0},gC=class{constructor(e){u(this,"layoutBox"),u(this,"window"),u(this,"pixelRatio"),u(this,"scaleRatio"),u(this,"layoutUnitPerPixel"),this.layoutBox=e.layoutBox,this.window=e.window,this.pixelRatio=e.pixelRatio,this.scaleRatio=e.scaleRatio,this.layoutUnitPerPixel=e.layoutUnitPerPixel}subtractOffsets(e,t){let i=t.left,n=t.top;return{left:e.left-i,top:e.top-n,right:e.right-i,bottom:e.bottom-n,width:e.width,height:e.height}}getRangeClientRects(e){let t=e.getClientRects(),i=this.layoutBox.getBoundingClientRect();return Array.from(t).map(n=>this.subtractOffsets(n,i))}getElementClientRect(e){let t=e.getBoundingClientRect();if(t.left===0&&t.top===0&&t.right===0&&t.bottom===0)return t;let i=this.layoutBox.getBoundingClientRect();return this.subtractOffsets(t,i)}getElementComputedStyle(e){return this.window.getComputedStyle(e,null)}adjustLengthValue(e){return this.layoutUnitPerPixel?Math.floor(e*this.layoutUnitPerPixel)/this.layoutUnitPerPixel:e}},$o=class{constructor(e,t,i,n,r,s){if(u(this,"window",e),u(this,"fontSize",t),u(this,"pixelRatio",i),u(this,"document"),u(this,"root"),u(this,"outerZoomBox"),u(this,"contentContainer"),u(this,"layoutBox"),u(this,"width"),u(this,"height"),u(this,"scaleRatio",1),u(this,"layoutUnitPerPixel",64),u(this,"layoutUnitAdj",0),this.document=e.document,this.root=n||this.document.body,this.root.hasAttribute("data-vivliostyle-toc-box")){this.outerZoomBox=this.contentContainer=this.layoutBox=this.root,this.width=r||this.root.clientWidth,this.height=s||this.root.clientHeight;return}let o=this.root.firstElementChild;o||(o=this.document.createElement("div"),o.setAttribute("data-vivliostyle-outer-zoom-box","true"),o.role="presentation",this.root.appendChild(o));let a=o.firstElementChild;switch(a||(a=this.document.createElement("div"),a.setAttribute("data-vivliostyle-spread-container","true"),a.role="presentation",o.appendChild(a)),i>0&&CSS.supports("zoom","8")&&(F(this.root,"--viv-outputPixelRatio",`${i}`),F(this.root,"--viv-devicePixelRatio",`${e.devicePixelRatio}`),this.scaleRatio=i/e.devicePixelRatio),ts){case"chromium":this.layoutUnitPerPixel=64*(this.pixelRatio||e.devicePixelRatio),this.layoutUnitAdj=1/this.layoutUnitPerPixel;break;case"firefox":this.layoutUnitPerPixel=60,this.layoutUnitAdj=1/this.layoutUnitPerPixel;break;default:this.layoutUnitPerPixel=64,this.layoutUnitAdj=0}this.layoutUnitAdj&&F(this.root,"--viv-layoutUnitAdj",`${this.layoutUnitAdj}px`);let h=o.nextElementSibling;h||(h=this.document.createElement("div"),h.setAttribute("data-vivliostyle-layout-box","true"),h.role="presentation",this.root.appendChild(h)),this.outerZoomBox=o,this.contentContainer=a,this.layoutBox=h,this.width=r||parseFloat(e.getComputedStyle(this.root).width)||this.root.offsetWidth||e.innerWidth,this.height=s||parseFloat(e.getComputedStyle(this.root).height)||this.root.offsetHeight||e.innerHeight;let l={width:794,height:1056},c=!e.outerWidth&&!e.outerHeight||/Headless/.test(navigator.userAgent)||navigator.webdriver&&e.innerWidth===800&&e.innerHeight===600;(!this.width||!r&&c)&&(this.width=l.width),(!this.height||!s&&c)&&(this.height=l.height)}resetZoom(){F(this.outerZoomBox,"width",""),F(this.outerZoomBox,"height",""),F(this.contentContainer,"width",""),F(this.contentContainer,"height",""),F(this.contentContainer,"transform","")}zoom(e,t,i){F(this.root,"--viv-outputScale",`${i}`),F(this.outerZoomBox,"width",`${e*i}px`),F(this.outerZoomBox,"height",`${t*i}px`),F(this.contentContainer,"width",`${e}px`),F(this.contentContainer,"height",`${t}px`)}clear(){let e=this.root;for(;e.lastChild;)e.removeChild(e.lastChild)}};function Or(e,t){if(e instanceof _e)for(let i of e.values)Or(i,t);else if(e instanceof Qe){let i=zr(e.url);t.fetchers.push(kt(new Image,i))}else if(e instanceof zt)for(let i of e.values)Or(i,t);else if(e instanceof ee)for(let i of e.values)Or(i,t)}var mC=1,ua=class{constructor(e,t,i,n,r){u(this,"name",t),u(this,"pseudoName",i),u(this,"classes",n),u(this,"parent",r),u(this,"specified",{}),u(this,"children",[]),u(this,"pageMaster",null),u(this,"index",0),u(this,"key"),u(this,"_scope"),this._scope=e,this.key=`p${mC++}`,r&&(this.index=r.children.length,r.children.push(this))}get scope(){return this._scope}createInstance(e,t,i){throw new Error("E_UNEXPECTED_CALL")}clone(e){throw new Error("E_UNEXPECTED_CALL")}copySpecified(e){let t=this.specified,i=e.specified;for(let n in t)Object.prototype.hasOwnProperty.call(t,n)&&(i[n]=t[n])}cloneChildren(e){for(let t=0;t<this.children.length;t++)this.children[t].clone({parent:e})}},yC=class extends ua{constructor(e){super(e,null,null,[],null),this.specified.width=new Y(ns,0),this.specified.height=new Y(rs,0)}},Cc=class extends ja{constructor(e,t){super(e,n),u(this,"pageMaster",t);let i=this;function n(r,s){let o=r.match(/^([^.]+)\.([^.]+)$/);if(o){let a=i.pageMaster.keyMap[o[1]];if(a){let h=this.lookupInstance(a);if(h)return s?h.resolveFunc(o[2]):h.resolveName(o[2])}}return null}}},_g=class Dg extends ua{constructor(t,i,n,r,s,o,a,h=null){super(t,i,n,r,s),u(this,"condition",o),u(this,"specificity",a),u(this,"layer",h),u(this,"keyMap",{}),t instanceof Cc||(this._scope=new Cc(t,this)),this.pageMaster=this,this.specified.width=new Y(ns,0),this.specified.height=new Y(rs,0),this.specified["wrap-flow"]=new Y(v.auto,0),this.specified.position=new Y(v.relative,0),this.specified.overflow=new Y(v.visible,0)}createInstance(t,i,n){return new Hg(t,this)}clone(t){let i=new Dg(this.scope,this.name,t.pseudoName||this.pseudoName,this.classes,this.parent,this.condition,this.specificity,this.layer);return this.copySpecified(i),this.cloneChildren(i),i}resetScope(){this.scope.pageMaster=this}},zg=class Vg extends ua{constructor(t,i,n,r,s){super(t,i,n,r,s),this.pageMaster=s.pageMaster,i&&(this.pageMaster.keyMap[i]=this.key),this.specified["wrap-flow"]=new Y(v.auto,0)}createInstance(t,i,n){return new SC(t,this)}clone(t){let i=new Vg(t.parent.scope,this.name,this.pseudoName,this.classes,t.parent);return this.copySpecified(i),this.cloneChildren(i),i}},fs=class Ug extends ua{constructor(t,i,n,r,s){super(t,i,n,r,s),this.pageMaster=s.pageMaster,i&&(this.pageMaster.keyMap[i]=this.key)}createInstance(t,i,n){return new qn(t,this)}clone(t){let i=new Ug(t.parent.scope,this.name,this.pseudoName,this.classes,t.parent);return this.copySpecified(i),this.cloneChildren(i),i}};function vC(e,t,i){return!t||J(t)?new it(e,i):t.toExpr(e,e.zero)}function Ce(e,t,i){return!t||t===v.auto||J(t)?null:t.toExpr(e,i)}function wC(e,t,i){return!t||t===v.normal||J(t)?null:t.toExpr(e,i)}function Tt(e,t,i){return!t||t===v.auto||J(t)?e.zero:t.toExpr(e,i)}function Pc(e,t,i){return!t||J(t)?e.zero:t===v.auto?null:t.toExpr(e,i)}function li(e,t,i,n){return!t||i===v.none||J(t)?e.zero:t.toExpr(e,n)}function $g(e,t,i){return!t||J(t)?i:t===v._true?e._true:t===v._false?e._false:t.toExpr(e,e.zero)}var ca=class{constructor(e,t){u(this,"parentInstance",e),u(this,"pageBox",t),u(this,"cascaded",{}),u(this,"style",{}),u(this,"autoWidth"),u(this,"autoHeight"),u(this,"children",[]),u(this,"isAutoWidth",!1),u(this,"isAutoHeight",!1),u(this,"isTopDependentOnAutoHeight",!1),u(this,"isRightDependentOnAutoWidth",!1),u(this,"calculatedWidth",0),u(this,"calculatedHeight",0),u(this,"pageMasterInstance",null),u(this,"namedValues",{}),u(this,"namedFuncs",{}),u(this,"vertical",!1),u(this,"rtl",!1),u(this,"suppressEmptyBoxGeneration",!1),u(this,"borderBoxSizing",!1),e&&e.children.push(this);let i=this.pageBox.scope;this.autoWidth=new we(i,()=>this.calculatedWidth,"autoWidth"),this.autoHeight=new we(i,()=>this.calculatedHeight,"autoHeight")}reset(){this.calculatedWidth=0,this.calculatedHeight=0}addNamedValues(e,t){let i=this.resolveName(e),n=this.resolveName(t);if(!i||!n)throw new Error("E_INTERNAL");return oe(this.pageBox.scope,i,n)}resolveName(e){let t=this.namedValues[e];if(t)return t;let i=this.style[e];switch(i&&(t=i.toExpr(this.pageBox.scope,this.pageBox.scope.zero)),e){case"margin-left-edge":t=this.resolveName("left");break;case"margin-top-edge":t=this.resolveName("top");break;case"margin-right-edge":t=this.addNamedValues("border-right-edge","margin-right");break;case"margin-bottom-edge":t=this.addNamedValues("border-bottom-edge","margin-bottom");break;case"border-left-edge":t=this.addNamedValues("margin-left-edge","margin-left");break;case"border-top-edge":t=this.addNamedValues("margin-top-edge","margin-top");break;case"border-right-edge":t=this.addNamedValues("padding-right-edge","border-right-width");break;case"border-bottom-edge":t=this.addNamedValues("padding-bottom-edge","border-bottom-width");break;case"padding-left-edge":t=this.addNamedValues("border-left-edge","border-left-width");break;case"padding-top-edge":t=this.addNamedValues("border-top-edge","border-top-width");break;case"padding-right-edge":t=this.addNamedValues("right-edge","padding-right");break;case"padding-bottom-edge":t=this.addNamedValues("bottom-edge","padding-bottom");break;case"left-edge":t=this.addNamedValues("padding-left-edge","padding-left");break;case"top-edge":t=this.addNamedValues("padding-top-edge","padding-top");break;case"right-edge":t=this.addNamedValues("left-edge","width");break;case"bottom-edge":t=this.addNamedValues("top-edge","height");break}if(!t){let n;if(e=="extent")n=this.vertical?"width":"height";else if(e=="measure")n=this.vertical?"height":"width";else{let r=this.vertical?Wf:Gf;n=e;for(let s in r)n=n.replace(s,r[s])}n!=e&&(t=this.resolveName(n))}return t&&(this.namedValues[e]=t),t}resolveFunc(e){let t=this.namedFuncs[e];if(t)return t;if(e==="columns"){let i=this.pageBox.scope,n=new Pd(i,0),r=this.resolveName("column-count"),s=this.resolveName("column-width"),o=this.resolveName("column-gap");t=ve(i,js(i,new Cr(i,"min",[n,r]),oe(i,s,o)),o)}return t&&(this.namedFuncs[e]=t),t}initEnabled(){let e=this.pageBox.scope,t=this.style,i=$g(e,t.enabled,e._true),n=Ce(e,t.page,e.zero);if(n){let o=new Je(e,"page-number");i=qt(e,i,new nh(e,n,o))}let r=Ce(e,t["min-page-width"],e.zero);r&&(i=qt(e,i,new qa(e,new Je(e,"page-width"),r)));let s=Ce(e,t["min-page-height"],e.zero);s&&(i=qt(e,i,new qa(e,new Je(e,"page-height"),s))),i=this.boxSpecificEnabled(i),t.enabled=new q(i)}boxSpecificEnabled(e){return e}initHorizontal(){let e=this.pageBox.scope,t=this.style,i=this.parentInstance?this.parentInstance.style.width.toExpr(e,null):null,n=Ce(e,t.left,i),r=Ce(e,t["margin-left"],i),s=li(e,t["border-left-width"],t["border-left-style"],i),o=Tt(e,t["padding-left"],i),a=Ce(e,t.width,i),h=Ce(e,t["max-width"],i),l=Tt(e,t["padding-right"],i),c=li(e,t["border-right-width"],t["border-right-style"],i),d=Ce(e,t["margin-right"],i),p=Ce(e,t.right,i),f=oe(e,s,o),g=oe(e,s,l);if(n&&p&&a){let b=ve(e,i,oe(e,a,oe(e,oe(e,n,f),g)));r?d?p=ve(e,b,d):d=ve(e,b,oe(e,p,r)):(b=ve(e,b,p),d?r=ve(e,b,d):(r=js(e,b,new it(e,.5)),d=r))}else{r||(r=e.zero),d||(d=e.zero),!n&&!p&&!a&&(n=e.zero),!n&&!a?(a=this.autoWidth,this.isAutoWidth=!0):!n&&!p?n=e.zero:!a&&!p&&(a=this.autoWidth,this.isAutoWidth=!0);let b=ve(e,i,oe(e,oe(e,r,f),oe(e,d,g)));this.isAutoWidth&&(h||(h=ve(e,b,n||p)),!this.vertical&&(Ce(e,t["column-width"],null)||Ce(e,t["column-count"],null))&&(a=h,this.isAutoWidth=!1)),n?a?p||(p=ve(e,b,oe(e,n,a))):a=ve(e,b,oe(e,n,p)):n=ve(e,b,oe(e,p,a))}let m=t["snap-width"]||(this.parentInstance?this.parentInstance.style["snap-width"]:null),w=Tt(e,m,i);t.left=new q(n),t["margin-left"]=new q(r),t["border-left-width"]=new q(s),t["padding-left"]=new q(o),t.width=new q(a),t["max-width"]=new q(h||a),t["padding-right"]=new q(l),t["border-right-width"]=new q(c),t["margin-right"]=new q(d),t.right=new q(p),t["snap-width"]=new q(w)}initVertical(){let e=this.pageBox.scope,t=this.style,i=this.parentInstance?this.parentInstance.style.width.toExpr(e,null):null,n=this.parentInstance?this.parentInstance.style.height.toExpr(e,null):null,r=Ce(e,t.top,n),s=Ce(e,t["margin-top"],i),o=li(e,t["border-top-width"],t["border-top-style"],i),a=Tt(e,t["padding-top"],i),h=Ce(e,t.height,n),l=Ce(e,t["max-height"],n),c=Tt(e,t["padding-bottom"],i),d=li(e,t["border-bottom-width"],t["border-bottom-style"],i),p=Ce(e,t["margin-bottom"],i),f=Ce(e,t.bottom,n),g=oe(e,o,a),m=oe(e,d,c);if(r&&f&&h){let x=ve(e,n,oe(e,h,oe(e,oe(e,r,g),m)));s?p?f=ve(e,x,s):p=ve(e,x,oe(e,f,s)):(x=ve(e,x,f),p?s=ve(e,x,p):(s=js(e,x,new it(e,.5)),p=s))}else{s||(s=e.zero),p||(p=e.zero),!r&&!f&&!h&&(r=e.zero),!r&&!h?(h=this.autoHeight,this.isAutoHeight=!0):!r&&!f?r=e.zero:!h&&!f&&(h=this.autoHeight,this.isAutoHeight=!0);let x=ve(e,n,oe(e,oe(e,s,g),oe(e,p,m)));this.isAutoHeight&&(l||(l=ve(e,x,r||f)),this.vertical&&(Ce(e,t["column-width"],null)||Ce(e,t["column-count"],null))&&(h=l,this.isAutoHeight=!1)),r?h?f||(f=ve(e,x,oe(e,r,h))):h=ve(e,x,oe(e,f,r)):r=ve(e,x,oe(e,f,h))}let w=t["snap-height"]||(this.parentInstance?this.parentInstance.style["snap-height"]:null),b=Tt(e,w,i);t.top=new q(r),t["margin-top"]=new q(s),t["border-top-width"]=new q(o),t["padding-top"]=new q(a),t.height=new q(h),t["max-height"]=new q(l||h),t["padding-bottom"]=new q(c),t["border-bottom-width"]=new q(d),t["margin-bottom"]=new q(p),t.bottom=new q(f),t["snap-height"]=new q(b)}initColumns(){let e=this.pageBox.scope,t=this.style,i=Ce(e,t[this.vertical?"height":"width"],null),n=Ce(e,t["column-width"],i),r=Ce(e,t["column-count"],null),s=wC(e,t["column-gap"],null);s||(s=new is(e,1,"em")),n&&!r&&(r=new Cr(e,"floor",[Ya(e,oe(e,i,s),oe(e,n,s))]),r=new Cr(e,"max",[e.one,r])),r||(r=e.one),n=ve(e,Ya(e,oe(e,i,s),r),s),t["column-width"]=new q(n),t["column-count"]=new q(r),t["column-gap"]=new q(s)}depends(e,t,i){return this.style[e].toExpr(this.pageBox.scope,null).depend(t,i)}resolveStyle(e){var t;let i=this.pageBox.scope,n=this.style,r=this.parentInstance?this.parentInstance.getActiveRegions(e):null,s=Ml(this.cascaded,e,r,!1);this.vertical=Bl(s,e,this.parentInstance?this.parentInstance.vertical:!1),this.rtl=ug(s,e,this.parentInstance?this.parentInstance.rtl:!1),this.borderBoxSizing=((t=s["box-sizing"])==null?void 0:t.value)===v.border_box;let o=!!(e instanceof jh&&e.currentLayoutPosition&&new Je(i,"left-page").evaluate(e));dg(s,n,this.vertical,this.rtl,o,(a,h)=>h.value)}init(e){this.resolveStyle(e),this.initHorizontal(),this.initVertical(),this.initColumns(),this.initEnabled()}register(e){e.registerInstance(this.pageBox.key,this)}getProp(e,t){var i,n;let r=this.style[t];return!r&&Bn(t)&&this.pageMasterInstance instanceof Qr&&(t==="font-size"&&e.isRelativeRootFontSize&&e.rootFontSize?r=new B(e.rootFontSize,"px"):r=(n=((i=e.styler)==null?void 0:i.rootStyle)[t])==null?void 0:n.value),r&&(r=zo(e,r,t)),r}getPropAsNumber(e,t){var i,n;let r=this.style[t];if(r){let s=/\b(height|top|bottom)\b/.test(t)?(i=e.pageAreaHeight)!=null?i:e.pageHeight():(n=e.pageAreaWidth)!=null?n:e.pageWidth();r=zo(e,r,t,s)}return dt(r,e)}getSpecial(e,t){let i=qf(this.cascaded,t);if(i){let n=[];for(let r=0;r<i.length;r++){let s=i[r].evaluate(e,"");s&&s!==Re&&n.push(s)}if(n.length)return n}return null}getActiveRegions(e){let t=this.getSpecial(e,"region-id");if(t){let i=[];for(let n=0;n<t.length;n++)i[n]=t[n].toString();return i}return null}propagateProperty(e,t,i,n){this.propagatePropertyToElement(e,t.element,i,n)}propagatePropertyToElement(e,t,i,n){let r=this.getProp(e,i);if(r){r.isNumeric()&&dd(r.unit)&&(r=Ad(r,e)),i==="font-family"&&(r=n.filterFontFamily(r));let s=t.parentElement;(i.startsWith("background")||i==="z-index")&&s!=null&&s.hasAttribute("data-vivliostyle-bleed-box")&&(t=s),F(t,i,r.toString())}}propagateDelayedProperty(e,t,i,n){let r=this.getProp(e,i);r&&n.push(new lh(t.element,i,r))}assignLeftPosition(e,t){let i=this.getPropAsNumber(e,"left"),n=this.getPropAsNumber(e,"margin-left"),r=this.getPropAsNumber(e,"padding-left"),s=this.getPropAsNumber(e,"border-left-width"),o=this.getPropAsNumber(e,"width");t.setHorizontalPosition(i,o),F(t.element,"margin-left",`${n}px`),F(t.element,"padding-left",`${r}px`),F(t.element,"border-left-width",`${s}px`),t.marginLeft=n,t.borderLeft=s,t.paddingLeft=r}assignRightPosition(e,t){let i=this.getPropAsNumber(e,"right"),n=this.getPropAsNumber(e,"snap-height"),r=this.getPropAsNumber(e,"margin-right"),s=this.getPropAsNumber(e,"padding-right"),o=this.getPropAsNumber(e,"border-right-width");if(F(t.element,"margin-right",`${r}px`),F(t.element,"padding-right",`${s}px`),F(t.element,"border-right-width",`${o}px`),t.marginRight=r,t.borderRight=o,this.vertical&&n>0){let a=i+t.getInsetRight(),h=a-Math.floor(a/n)*n;h>0&&(t.snapOffsetX=n-h,s+=t.snapOffsetX)}t.paddingRight=s,t.snapWidth=n}assignTopPosition(e,t){let i=this.getPropAsNumber(e,"snap-height"),n=this.getPropAsNumber(e,"top"),r=this.getPropAsNumber(e,"margin-top"),s=this.getPropAsNumber(e,"padding-top"),o=this.getPropAsNumber(e,"border-top-width");if(t.top=n,t.marginTop=r,t.borderTop=o,t.snapHeight=i,!this.vertical&&i>0){let a=n+t.getInsetTop(),h=a-Math.floor(a/i)*i;h>0&&(t.snapOffsetY=i-h,s+=t.snapOffsetY)}t.paddingTop=s,F(t.element,"top",`${n}px`),F(t.element,"margin-top",`${r}px`),F(t.element,"padding-top",`${s}px`),F(t.element,"border-top-width",`${o}px`)}assignBottomPosition(e,t){let i=this.getPropAsNumber(e,"margin-bottom"),n=this.getPropAsNumber(e,"padding-bottom"),r=this.getPropAsNumber(e,"border-bottom-width"),s=this.getPropAsNumber(e,"height")-t.snapOffsetY;F(t.element,"height",`${s}px`),F(t.element,"margin-bottom",`${i}px`),F(t.element,"padding-bottom",`${n}px`),F(t.element,"border-bottom-width",`${r}px`),t.height=s-t.snapOffsetY,t.marginBottom=i,t.borderBottom=r,t.paddingBottom=n}assignBeforePosition(e,t){this.vertical?this.assignRightPosition(e,t):this.assignTopPosition(e,t)}assignAfterPosition(e,t){this.vertical?this.assignLeftPosition(e,t):this.assignBottomPosition(e,t)}assignStartEndPosition(e,t){this.vertical?(this.assignTopPosition(e,t),this.assignBottomPosition(e,t)):(this.assignRightPosition(e,t),this.assignLeftPosition(e,t))}sizeWithMaxHeight(e,t){F(t.element,"border-top-width","0px");let i=this.getPropAsNumber(e,"max-height");this.isTopDependentOnAutoHeight?t.setVerticalPosition(0,i):(this.assignTopPosition(e,t),i-=t.snapOffsetY,t.height=i,F(t.element,"height",`${i}px`))}sizeWithMaxWidth(e,t){F(t.element,"border-left-width","0px");let i=this.getPropAsNumber(e,"max-width");if(this.isRightDependentOnAutoWidth)t.setHorizontalPosition(0,i);else{this.assignRightPosition(e,t),i-=t.snapOffsetX,t.width=i;let n=this.getPropAsNumber(e,"right");F(t.element,"right",`${n}px`),F(t.element,"width",`${i}px`)}}prepareContainer(e,t,i,n,r){(!this.parentInstance||this.vertical!=this.parentInstance.vertical)&&F(t.element,"writing-mode",this.vertical?"vertical-rl":"horizontal-tb"),(!this.parentInstance||this.rtl!=this.parentInstance.rtl)&&F(t.element,"direction",this.rtl?"rtl":"ltr"),(this.vertical?this.isAutoWidth:this.isAutoHeight)?this.vertical?this.sizeWithMaxWidth(e,t):this.sizeWithMaxHeight(e,t):(this.assignBeforePosition(e,t),this.assignAfterPosition(e,t)),(this.vertical?this.isAutoHeight:this.isAutoWidth)?this.vertical?this.sizeWithMaxHeight(e,t):this.sizeWithMaxWidth(e,t):this.assignStartEndPosition(e,t);for(let s=0;s<kc.length;s++)this.propagateProperty(e,t,kc[s],n)}transferContentProps(e,t,i,n){for(let r=0;r<Nc.length;r++)this.propagateProperty(e,t,Nc[r],n);if(this.style["text-overflow"]){let r=t.element.firstElementChild;F(r,"text-overflow","inherit"),F(r,"overflow","inherit")}}transferSingleUriContentProps(e,t,i){let n=()=>{var s,o;let a=(o=(s=this.cascaded.width)!=null?s:this.cascaded[this.vertical?"block-size":"inline-size"])==null?void 0:o.value;return!!a&&a!==v.auto&&!J(a)},r=()=>{var s,o;let a=(o=(s=this.cascaded.height)!=null?s:this.cascaded[this.vertical?"inline-size":"block-size"])==null?void 0:o.value;return!!a&&a!==v.auto&&!J(a)};for(let s=0;s<Tc.length;s++){let o=Tc[s];if(o==="width"||o==="height"){if(o==="width"&&!n()||o==="height"&&!r())continue;F(t,o,"100%");continue}this.propagatePropertyToElement(e,t,o,i)}}finishContainer(e,t,i,n,r,s,o){var a,h,l,c,d,p,f,g,m,w,b,x;this.vertical?this.calculatedWidth=t.computedBlockSize+t.snapOffsetX:this.calculatedHeight=t.computedBlockSize+t.snapOffsetY;let P=(this.vertical||!n)&&this.isAutoHeight,y=(!this.vertical||!n)&&this.isAutoWidth,C=null;if(y||P){y&&F(t.element,"width","auto"),P&&F(t.element,"height","auto");let S=n&&xo(n);S&&ta(n),C=s.getElementClientRect(n?n.element:t.element),S&&uh(n),y&&(this.calculatedWidth=Math.ceil(C.right-C.left-t.paddingLeft-t.borderLeft-t.paddingRight-t.borderRight),this.vertical&&(this.calculatedWidth+=t.snapOffsetX)),P&&(this.calculatedHeight=C.bottom-C.top-t.paddingTop-t.borderTop-t.paddingBottom-t.borderBottom,this.vertical||(this.calculatedHeight+=t.snapOffsetY))}if((this.vertical?this.isAutoHeight:this.isAutoWidth)&&this.assignStartEndPosition(e,t),(this.vertical?this.isAutoWidth:this.isAutoHeight)&&((this.vertical?this.isRightDependentOnAutoWidth:this.isTopDependentOnAutoHeight)&&this.assignBeforePosition(e,t),this.assignAfterPosition(e,t)),r>1){let S=this.getPropAsNumber(e,"column-rule-width"),N=this.getProp(e,"column-rule-style"),E=this.getProp(e,"column-rule-color");if(S>0&&N&&N!=v.none&&E!=v.transparent){let R=this.getPropAsNumber(e,"column-gap"),_=this.vertical?t.height:t.width,X=parseFloat(this.vertical?(a=n?.element.style.left)!=null?a:"":(h=n?.element.style.top)!=null?h:""),te=t.getPaddingRect(),k=n,M=this.vertical?"border-top":"border-left";for(let T=1;T<r;T++){let $=this.vertical?(_+R)*T/r-R/2+t.paddingTop-S/2:(_+R)*T/r-R/2+t.paddingLeft-S/2,O=this.vertical?te.y1+$+S/2:te.x1+$+S/2,A=(p=(d=(c=(l=k.pageFloatLayoutContext)==null?void 0:l.parent)==null?void 0:c.getBlockEndEdgeOfBlockStartFloats)==null?void 0:d.call(c,O))!=null?p:NaN,L=(w=(m=(g=(f=k.pageFloatLayoutContext)==null?void 0:f.parent)==null?void 0:g.getBlockStartEdgeOfBlockEndFloats)==null?void 0:m.call(g,O))!=null?w:NaN,W=isFinite(A)?this.vertical?A-te.x1:A-te.y1:NaN,G=isFinite(L)?this.vertical?L-te.x1:L-te.y1:NaN,U=parseFloat(this.vertical?(b=n?.element.style.width)!=null?b:"":(x=n?.element.style.height)!=null?x:""),V=U>0?U:this.vertical?n.width:n.height,K=Math.max(X>0?X:0,0),ne=K+V,ie=Math.max(K,isFinite(this.vertical?G:W)?Math.max(0,this.vertical?G:W):0),be=Math.min(ne,isFinite(this.vertical?W:G)?Math.max(0,this.vertical?W:G):ne),xe=Math.max(0,be-ie),pe=t.element.ownerDocument.createElement("div");F(pe,"position","absolute"),F(pe,this.vertical?"left":"top",`${ie}px`),F(pe,this.vertical?"top":"left",`${$}px`),F(pe,this.vertical?"height":"width","0px"),F(pe,this.vertical?"width":"height",`${xe}px`),F(pe,M,`${S}px ${N.toString()}${E?` ${E.toString()}`:""}`),t.element.insertBefore(pe,t.element.firstChild)}}}for(let S=0;S<Ec.length;S++)this.propagateProperty(e,t,Ec[S],o);for(let S of bC){let N=this.getProp(e,S);N&&Or(N,i)}for(let S=0;S<Ic.length;S++)this.propagateDelayedProperty(e,t,Ic[S],i.delayedItems)}buildCascadedStyle(e){let t=this.cascaded,i=this.pageBox.specified;for(let n in i)this instanceof Qr&&this.pageBox.pseudoName=="vivliostyle-page-rule-master"&&(n==="writing-mode"||n==="direction")||Fi(n)&&Mi(t,n,me(i,n));if(this.pageBox.pseudoName==$h)for(let n in e)(n.match(/^background-/)||n=="writing-mode")&&(t[n]=e[n]);if(this.pageBox.pseudoName=="layout-host")for(let n in e)!n.match(/^background-/)&&n!="writing-mode"&&(t[n]=e[n])}resolveContent(e){let t=this.cascaded,i=t.content;if(i){let n=Array.from(e.lastCounterChanges),r={...e.lastCounterChangeTypes};e.counterScoping.push(null),e.pushCounters(t,t),t.content=i.filterValue(new Xr(e,null,e.counterResolver,t)),e.popCounters(),e.popCounters(),e.lastCounterChanges=n,e.lastCounterChangeTypes=r}}applyCascadeAndInit(e,t){this.buildCascadedStyle(t),e.pushRule(this.pageBox.classes,null,this.cascaded),this.resolveContent(e),this.init(e.context),this.register(e.context);for(let i of this.pageBox.children)i.createInstance(this,e.context,t).applyCascadeAndInit(e,t);e.popRule()}resolveAutoSizing(e){this.isAutoWidth&&(this.isRightDependentOnAutoWidth=this.depends("right",this.autoWidth,e)||this.depends("margin-right",this.autoWidth,e)||this.depends("border-right-width",this.autoWidth,e)||this.depends("padding-right",this.autoWidth,e)),this.isAutoHeight&&(this.isTopDependentOnAutoHeight=this.depends("top",this.autoHeight,e)||this.depends("margin-top",this.autoHeight,e)||this.depends("border-top-width",this.autoHeight,e)||this.depends("padding-top",this.autoHeight,e));for(let t of this.children)t.resolveAutoSizing(e)}},kc=["border-left-style","border-right-style","border-top-style","border-bottom-style","border-left-color","border-right-color","border-top-color","border-bottom-color","box-sizing","outline-style","outline-color","outline-width","outline-offset","overflow","visibility"],Ec=["border-top-left-radius","border-top-right-radius","border-bottom-right-radius","border-bottom-left-radius","border-start-start-radius","border-start-end-radius","border-end-start-radius","border-end-end-radius","border-image-source","border-image-slice","border-image-width","border-image-outset","border-image-repeat","background-attachment","background-color","background-image","background-repeat","background-position","background-position-x","background-position-y","background-clip","background-origin","background-size","box-shadow","opacity","z-index","background-blend-mode","isolation","mix-blend-mode","filter"],bC=["background-image","border-image-source","filter"],Nc=["color","font-family","font-size","font-style","font-weight","line-height","letter-spacing","text-align","text-align-last","text-decoration","text-indent","text-transform","white-space","text-wrap-mode","text-wrap-style","word-spacing","font-feature-settings","font-kerning","font-size-adjust","font-variant-ligatures","font-variant-caps","font-variant-numeric","font-variant-east-asian","font-stretch","text-combine-upright","text-decoration-color","text-decoration-line","text-decoration-skip","text-decoration-skip-ink","text-decoration-style","text-decoration-thickness","text-emphasis-color","text-emphasis-position","text-emphasis-style","text-fill-color","text-orientation","text-shadow","text-stroke-color","text-stroke-width","text-underline-offset","text-underline-position","text-overflow","text-box-trim","text-box-edge","text-justify"],Tc=["width","height","image-resolution","object-fit","object-position"],Ic=["transform","transform-origin"],$h="background-host";function Ac(e){var t;let i=e;return{priority:i.specificity,layer:(t=i.layer)!=null?t:null}}var xC=class extends ca{constructor(e){super(null,e)}applyCascadeAndInit(e,t){super.applyCascadeAndInit(e,t),this.children.sort((i,n)=>Vi(Ac(n.pageBox),Ac(i.pageBox))||i.pageBox.index-n.pageBox.index)}},Hg=class extends ca{constructor(e,t){super(e,t),this.pageMasterInstance=this}get pageAreaEstablishingChild(){return null}boxSpecificEnabled(e){let t=this.pageBox.pageMaster;return t.condition&&(e=qt(t.scope,e,t.condition)),e}adjustPageLayout(e,t,i){}},SC=class extends ca{constructor(e,t){super(e,t),this.pageMasterInstance=e.pageMasterInstance}},qn=class extends ca{constructor(e,t){super(e,t),this.pageMasterInstance=e.pageMasterInstance}processPartitionList(e,t,i){let n=null;if(t instanceof he&&(n=[t]),t instanceof _e&&(n=t.values),n){let r=this.pageBox.scope;for(let s=0;s<n.length;s++)if(n[s]instanceof he){let o=Ga(n[s].name,"enabled"),a=new Je(r,o);i&&(a=new Li(r,a)),e=qt(r,e,a)}}return e}boxSpecificEnabled(e){let t=this.pageBox.scope,i=this.style,n=$g(t,i.required,t._false)!==t._false;if(n||this.isAutoHeight){let r=vC(t,i["flow-from"],"body"),s=new Cr(t,"has-content",[r]);e=qt(t,e,s)}if(e=this.processPartitionList(e,i["required-partitions"],!1),e=this.processPartitionList(e,i["conflicting-partitions"],!0),n){let r=this.pageMasterInstance.style.enabled,s=r?r.toExpr(t,null):t._true;s=qt(t,s,e),this.pageMasterInstance.style.enabled=new q(s)}return e}prepareContainer(e,t,i,n,r){var s;this.pageBox.pageMaster instanceof qg||(F(t.element,"overflow","hidden"),t.element.setAttribute("data-vivliostyle-page-partition",(s=this.pageBox.name)!=null?s:"")),super.prepareContainer(e,t,i,n,r)}},Hh=class extends Zn{constructor(e,t,i,n,r){super(e,t,r),u(this,"target",i),u(this,"validatorSet",n)}property(e,t,i){this.validatorSet.validatePropertyAndHandleShorthand(e,t,i,this.scope,this)}unknownProperty(e,t){this.report(`E_INVALID_PROPERTY ${e}: ${t.toString()}`)}invalidPropertyValue(e,t){this.report(`E_INVALID_PROPERTY_VALUE ${e}: ${t.toString()}`)}simpleProperty(e,t,i){this.target.specified[e]=new Y(t,i?gp:mp)}},Wg=class extends Hh{constructor(e,t,i,n,r){super(e,t,i,n,r)}},CC=class Gg extends Hh{constructor(t,i,n,r,s){super(t,i,n,r,s),n.specified.width=new Y(lu,0),n.specified.height=new Y(lu,0)}startPartitionRule(t,i,n){let r=new fs(this.scope,t,i,n,this.target);this.owner.delegateTo(s=>new Wg(this.scope,this.owner,r,this.validatorSet,s))}startPartitionGroupRule(t,i,n){let r=new zg(this.scope,t,i,n,this.target);this.owner.delegateTo(s=>new Gg(this.scope,this.owner,r,this.validatorSet,s))}},PC=class extends Hh{constructor(e,t,i,n,r){super(e,t,i,n,r)}startPartitionRule(e,t,i){let n=new fs(this.scope,e,t,i,this.target);this.owner.delegateTo(r=>new Wg(this.scope,this.owner,n,this.validatorSet,r))}startPartitionGroupRule(e,t,i){let n=new zg(this.scope,e,t,i,this.target);this.owner.delegateTo(r=>new CC(this.scope,this.owner,n,this.validatorSet,r))}};function jg(e){var t,i;let n=(t=e["writing-mode"])==null?void 0:t.value,r=(i=e.direction)==null?void 0:i.value;return n===v.vertical_lr||n!==v.vertical_rl&&r!==v.rtl?"ltr":"rtl"}var kC={a10:{width:new B(26,"mm"),height:new B(37,"mm")},a9:{width:new B(37,"mm"),height:new B(52,"mm")},a8:{width:new B(52,"mm"),height:new B(74,"mm")},a7:{width:new B(74,"mm"),height:new B(105,"mm")},a6:{width:new B(105,"mm"),height:new B(148,"mm")},a5:{width:new B(148,"mm"),height:new B(210,"mm")},a4:{width:new B(210,"mm"),height:new B(297,"mm")},a3:{width:new B(297,"mm"),height:new B(420,"mm")},a2:{width:new B(420,"mm"),height:new B(594,"mm")},a1:{width:new B(594,"mm"),height:new B(841,"mm")},a0:{width:new B(841,"mm"),height:new B(1189,"mm")},b10:{width:new B(31,"mm"),height:new B(44,"mm")},b9:{width:new B(44,"mm"),height:new B(62,"mm")},b8:{width:new B(62,"mm"),height:new B(88,"mm")},b7:{width:new B(88,"mm"),height:new B(125,"mm")},b6:{width:new B(125,"mm"),height:new B(176,"mm")},b5:{width:new B(176,"mm"),height:new B(250,"mm")},b4:{width:new B(250,"mm"),height:new B(353,"mm")},b3:{width:new B(353,"mm"),height:new B(500,"mm")},b2:{width:new B(500,"mm"),height:new B(707,"mm")},b1:{width:new B(707,"mm"),height:new B(1e3,"mm")},b0:{width:new B(1e3,"mm"),height:new B(1414,"mm")},c10:{width:new B(28,"mm"),height:new B(40,"mm")},c9:{width:new B(40,"mm"),height:new B(57,"mm")},c8:{width:new B(57,"mm"),height:new B(81,"mm")},c7:{width:new B(81,"mm"),height:new B(114,"mm")},c6:{width:new B(114,"mm"),height:new B(162,"mm")},c5:{width:new B(162,"mm"),height:new B(229,"mm")},c4:{width:new B(229,"mm"),height:new B(324,"mm")},c3:{width:new B(324,"mm"),height:new B(458,"mm")},c2:{width:new B(458,"mm"),height:new B(648,"mm")},c1:{width:new B(648,"mm"),height:new B(917,"mm")},c0:{width:new B(917,"mm"),height:new B(1297,"mm")},"jis-b10":{width:new B(32,"mm"),height:new B(45,"mm")},"jis-b9":{width:new B(45,"mm"),height:new B(64,"mm")},"jis-b8":{width:new B(64,"mm"),height:new B(91,"mm")},"jis-b7":{width:new B(91,"mm"),height:new B(128,"mm")},"jis-b6":{width:new B(128,"mm"),height:new B(182,"mm")},"jis-b5":{width:new B(182,"mm"),height:new B(257,"mm")},"jis-b4":{width:new B(257,"mm"),height:new B(364,"mm")},"jis-b3":{width:new B(364,"mm"),height:new B(515,"mm")},"jis-b2":{width:new B(515,"mm"),height:new B(728,"mm")},"jis-b1":{width:new B(728,"mm"),height:new B(1030,"mm")},"jis-b0":{width:new B(1030,"mm"),height:new B(1456,"mm")},letter:{width:new B(8.5,"in"),height:new B(11,"in")},legal:{width:new B(8.5,"in"),height:new B(14,"in")},ledger:{width:new B(11,"in"),height:new B(17,"in")}},EC=new B(.24,"pt"),LP=new B(3,"mm"),NC=new B(10,"mm"),TC=new B(13,"mm");function Ho(e){let t={width:ns,height:rs,bleed:Me,bleedOffset:Me,cropOffset:Me},i=e.size;if(!(!i||i.value===v.auto)){let l=i.value,c,d;if(l.isSpaceList()?(c=l.values[0],d=l.values[1]):(c=l,d=null),c.isNumeric())t.width=c,t.height=d||c;else{let p=c.name&&kC[c.name.toLowerCase()];p&&(d&&d===v.landscape?(t.width=p.height,t.height=p.width):(t.width=p.width,t.height=p.height))}}let n=e.marks,r=e.bleed,s=n&&!J(n.value)?n.value:v.none,o=r&&!J(r.value)?r.value:v.auto;if(o===v.auto){if(s!==v.none){let l=!1;s.isSpaceList()?l=s.values.some(c=>c===v.crop):l=s===v.crop,l&&(t.bleed=new B(6,"pt"))}}else o.isNumeric()&&(t.bleed=o);let a=e["crop-offset"],h=a&&!J(a.value)?a.value:v.auto;return h===v.auto?s!==v.none&&(t.bleedOffset=TC):h.isNumeric()&&(t.cropOffset=h),t}function Fc(e,t){let i={},n=Math.max(0,e.bleed.num)*t.queryUnitSize(e.bleed.unit,!1),r=!e.cropOffset.num&&e.bleedOffset.num?e.bleedOffset.num*t.queryUnitSize(e.bleedOffset.unit,!1):Math.max(0,e.cropOffset.num*t.queryUnitSize(e.cropOffset.unit,!1)-n),s=n+r,o=e.width;o===ns?t.pref.defaultPaperSize?i.pageWidth=t.pref.defaultPaperSize.width*t.queryUnitSize("px",!1):i.pageWidth=(t.pref.spreadView?Math.floor(t.viewportWidth/2)-t.pref.pageBorder:t.viewportWidth)-s*2:i.pageWidth=o.num*t.queryUnitSize(o.unit,!1);let a=e.height;return a===rs?t.pref.defaultPaperSize?i.pageHeight=t.pref.defaultPaperSize.height*t.queryUnitSize("px",!1):i.pageHeight=t.viewportHeight-s*2:i.pageHeight=a.num*t.queryUnitSize(a.unit,!1),i.bleed=n,i.bleedOffset=r,i.cropOffset=s,i}function Xg(e,t,i){let n=e.createElementNS("http://www.w3.org/2000/svg","svg");return n.setAttribute("width",t),n.setAttribute("height",i),n.style.position="absolute",n}function Br(e,t,i,n){n=n||"polyline";let r=e.createElementNS("http://www.w3.org/2000/svg",n);return r.setAttribute("stroke",i===v.auto?"#010101":i.toString()),r.setAttribute("stroke-width",t),r.setAttribute("fill","none"),r}var Vl=(e=>(e.TOP_LEFT="top left",e.TOP_RIGHT="top right",e.BOTTOM_LEFT="bottom left",e.BOTTOM_RIGHT="bottom right",e))(Vl||{});function IC(e,t,i,n,r,s,o){let a=r;a<=s+2*wi.mm&&(a=s+r/2);let h=Math.max(r,a),l=s+h+i/2,c=Xg(e,l,l),d=[[0,s+r],[r,s+r],[r,s+r-a]],p=d.map(m=>[m[1],m[0]]);(t==="top right"||t==="bottom right")&&(d=d.map(m=>[s+h-m[0],m[1]]),p=p.map(m=>[s+h-m[0],m[1]])),(t==="bottom left"||t==="bottom right")&&(d=d.map(m=>[m[0],s+h-m[1]]),p=p.map(m=>[m[0],s+h-m[1]]));let f=Br(e,i,n);f.setAttribute("points",d.map(m=>m.join(",")).join(" ")),c.appendChild(f);let g=Br(e,i,n);return g.setAttribute("points",p.map(m=>m.join(",")).join(" ")),c.appendChild(g),t.split(" ").forEach(m=>{c.style[m]=`${o}px`}),c}var Zr=(e=>(e.TOP="top",e.BOTTOM="bottom",e.LEFT="left",e.RIGHT="right",e))(Zr||{});function AC(e,t,i,n,r,s){let o=r*2,a,h;t==="top"||t==="bottom"?(a=o,h=r):(a=r,h=o);let l=Xg(e,a,h),c=Br(e,i,n);c.setAttribute("points",`0,${h/2} ${a},${h/2}`),l.appendChild(c);let d=Br(e,i,n);d.setAttribute("points",`${a/2},0 ${a/2},${h}`),l.appendChild(d);let p=Br(e,i,n,"circle");p.setAttribute("cx",a/2),p.setAttribute("cy",h/2),p.setAttribute("r",r/4),l.appendChild(p);let f;switch(t){case"top":f="bottom";break;case"bottom":f="top";break;case"left":f="right";break;case"right":f="left";break}return Object.keys(Zr).forEach(g=>{let m=Zr[g];m===t?l.style[m]=`${s}px`:m!==f&&(l.style[m]="0",l.style[`margin-${m}`]="auto")}),l}function FC(e,t,i,n){let r=!1,s=!1,o=e.marks;if(o){let m=o.value;m instanceof ee?m.values.forEach(w=>{w===v.crop?r=!0:w===v.cross&&(s=!0)}):m===v.crop?r=!0:m===v.cross&&(s=!0)}let a=t.bleed;if(!r&&!s)return;let h=i.container,l=h.ownerDocument,c=dt(EC,n),d=Math.max(0,t.bleedOffset-dt(NC,n)),p=t.bleedOffset-d,f=e["crop-marks-line-color"],g=f&&!J(f.value)?f.value:v.auto;r&&Object.keys(Vl).forEach(m=>{let w=Vl[m],b=IC(l,w,c,g,p,a,d);h.appendChild(b)}),s&&Object.keys(Zr).forEach(m=>{let w=Zr[m],b=AC(l,w,c,g,p,d);h.appendChild(b)})}var Ul=(()=>{let e=["left","right","top","bottom","before","after","start","end","block-start","block-end","inline-start","inline-end","inside","outside"],t={width:!0,height:!0,"block-size":!0,"inline-size":!0,"writing-mode":!0,direction:!0,margin:!0,padding:!0,border:!0,outline:!0,"outline-width":!0,"outline-style":!0,"outline-color":!0,"outline-offset":!0,"border-radius":!0,"border-top-left-radius":!0,"border-top-right-radius":!0,"border-bottom-right-radius":!0,"border-bottom-left-radius":!0,"border-start-start-radius":!0,"border-start-end-radius":!0,"border-end-start-radius":!0,"border-end-end-radius":!0,"box-shadow":!0,"box-sizing":!0};return e.forEach(i=>{t[`margin-${i}`]=!0,t[`padding-${i}`]=!0,t[`border-${i}-width`]=!0,t[`border-${i}-style`]=!0,t[`border-${i}-color`]=!0}),t})(),Wh={"top-left-corner":{order:1,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:null},"top-left":{order:2,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"start"},"top-center":{order:3,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"center"},"top-right":{order:4,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"end"},"top-right-corner":{order:5,isInTopRow:!0,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:null},"right-top":{order:6,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:"start"},"right-middle":{order:7,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:"center"},"right-bottom":{order:8,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:"end"},"bottom-right-corner":{order:9,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!1,isInRightColumn:!0,positionAlongVariableDimension:null},"bottom-right":{order:10,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"end"},"bottom-center":{order:11,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"center"},"bottom-left":{order:12,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!1,isInRightColumn:!1,positionAlongVariableDimension:"start"},"bottom-left-corner":{order:13,isInTopRow:!1,isInBottomRow:!0,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:null},"left-bottom":{order:14,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:"end"},"left-middle":{order:15,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:"center"},"left-top":{order:16,isInTopRow:!1,isInBottomRow:!1,isInLeftColumn:!0,isInRightColumn:!1,positionAlongVariableDimension:"start"}},RC=(()=>{let e=Wh;return Object.keys(e).sort((t,i)=>e[t].order-e[i].order)})(),Gh="vivliostyle-page-rule-master",Jr="_marginBoxes",Wo="_footnoteArea",qg=class extends _g{constructor(e,t,i){super(e,null,Gh,[],t,null,0),u(this,"pageRulePartition");let n=Ho(i);this.pageRulePartition=new LC(this.scope,this,i,n),this.createPageMarginBoxes(i),this.applySpecified(i,n)}createPageMarginBoxes(e){let t=e[Jr];t&&RC.forEach(i=>{if(t[i])return new BC(this.scope,this,i,e)})}applySpecified(e,t){this.specified.position=new Y(v.relative,0),this.specified.width=new Y(t.width,0),this.specified.height=new Y(t.height,0);for(let i in e)!Ul[i]&&i!=="background-clip"&&(this.specified[i]=e[i])}createInstance(e,t,i){return new Qr(e,this,t,i)}},LC=class extends fs{constructor(e,t,i,n){super(e,null,null,[],t),u(this,"pageSize",n),u(this,"pageAreaPartition"),this.pageAreaPartition=new OC(this.scope,this),this.applySpecified(i)}applySpecified(e){this.specified["wrap-flow"]=new Y(v.auto,0),this.specified["z-index"]=new Y(new ut(0),0),this.specified.position=new Y(v.absolute,0),this.specified.overflow=new Y(v.visible,0);for(let t in Ul)Ul.hasOwnProperty(t)&&(this.specified[t]=e[t])}createInstance(e,t,i){return new _C(e,this,t,i)}},OC=class extends fs{constructor(e,t){super(e,null,null,[],t),this.specified["flow-from"]=new Y(D("body"),0)}},BC=class extends fs{constructor(e,t,i,n){super(e,null,null,[],t),u(this,"marginBoxName",i),this.applySpecified(n)}applySpecified(e){let t=e[Jr][this.marginBoxName];for(let i in e){let n=e[i],r=t[i];(Hf[i]||r&&r.value===v.inherit)&&(this.specified[i]=n)}for(let i in t)if(Object.prototype.hasOwnProperty.call(t,i)){let n=t[i];n&&n.value!==Re&&n.value!==v.inherit&&n.value!==v.unset&&n.value!==v.revert&&(this.specified[i]=n)}}createInstance(e,t,i){return new Yg(e,this)}},Qr=class extends Hg{constructor(e,t,i,n){var r;super(e,t),u(this,"pageAreaDimension"),u(this,"pageAreaPartitionInstance"),u(this,"pageMarginBoxInstances",{});let s=(r=i.styler)==null?void 0:r.bodyPropagatedStyle;for(let h in n)if(Object.prototype.hasOwnProperty.call(n,h))switch(h){case"writing-mode":case"direction":if(s?.[h]===n[h])break;this.cascaded[h]=n[h]}this.buildCascadedStyle(n),this.init(i),this.pageAreaPartitionInstance=this.pageBox.pageRulePartition.createInstance(this,i,n);let o=this.pageAreaPartitionInstance.pageAreaDimension;this.pageAreaDimension=o;let a=this.style;a.width=new q(o.borderBoxWidth),a.height=new q(o.borderBoxHeight),a["padding-left"]=new q(o.marginLeft),a["padding-right"]=new q(o.marginRight),a["padding-top"]=new q(o.marginTop),a["padding-bottom"]=new q(o.marginBottom),this.register(i)}get pageAreaEstablishingChild(){return this.pageAreaPartitionInstance}applyCascadeAndInit(e,t){e.pushRule(this.pageBox.classes,null,this.cascaded),this.resolveContent(e);let i=this.cascaded.content;i&&(this.style.content=i.value);for(let n of this.pageBox.children)(n===this.pageBox.pageRulePartition?this.pageAreaPartitionInstance:n.createInstance(this,e.context,t)).applyCascadeAndInit(e,t);e.popRule()}initHorizontal(){let e=this.style;e.left=Me,e["margin-left"]=Me,e["border-left-width"]=Me,e["padding-left"]=Me,e["padding-right"]=Me,e["border-right-width"]=Me,e["margin-right"]=Me,e.right=Me}initVertical(){let e=this.style;e.top=Me,e["margin-top"]=Me,e["border-top-width"]=Me,e["padding-top"]=Me,e["padding-bottom"]=Me,e["border-bottom-width"]=Me,e["margin-bottom"]=Me,e.bottom=Me}adjustPageLayout(e,t,i){let n=t.marginBoxes,r={start:this.pageAreaDimension.marginLeft,end:this.pageAreaDimension.marginRight,extent:this.pageAreaDimension.borderBoxWidth},s={start:this.pageAreaDimension.marginTop,end:this.pageAreaDimension.marginBottom,extent:this.pageAreaDimension.borderBoxHeight};this.sizeMarginBoxesAlongVariableDimension(n.top,!0,r,e,i),this.sizeMarginBoxesAlongVariableDimension(n.bottom,!0,r,e,i),this.sizeMarginBoxesAlongVariableDimension(n.left,!1,s,e,i),this.sizeMarginBoxesAlongVariableDimension(n.right,!1,s,e,i)}sizeMarginBoxesAlongVariableDimension(e,t,i,n,r){let s="start",o="center",a="end",h=this.pageBox.scope,l={},c={},d={};for(let P in e){let y=Wh[P];if(y){let C=e[P],S=this.pageMarginBoxInstances[P],N=new lo(C,S.style,t,r);l[y.positionAlongVariableDimension]=C,c[y.positionAlongVariableDimension]=S,d[y.positionAlongVariableDimension]=N}}let p={start:i.start.evaluate(n),end:i.end.evaluate(n),extent:i.extent.evaluate(n)},f=this.getSizesOfMarginBoxesAlongVariableDimension(d,p.extent),g=!1,m={};Object.keys(l).forEach(P=>{let y=P,C=Ce(h,c[y].style[t?"max-width":"max-height"],i.extent);if(C){let S=C.evaluate(n),N=f[y];if(N!=null&&N>S){let E=d[y]=new Rc(l[y],c[y].style,t,r,S);m[y]=E.getOuterSize(),g=!0}}}),g&&(f=this.getSizesOfMarginBoxesAlongVariableDimension(d,p.extent),g=!1,[s,o,a].forEach(P=>{var y;f[P]=(y=m[P])!=null?y:f[P]}));let w={};Object.keys(l).forEach(P=>{let y=P,C=Ce(h,c[y].style[t?"min-width":"min-height"],i.extent);if(C){let S=C.evaluate(n),N=f[y];if(N!=null&&N<S){let E=d[y]=new Rc(l[y],c[y].style,t,r,S);w[y]=E.getOuterSize(),g=!0}}}),g&&(f=this.getSizesOfMarginBoxesAlongVariableDimension(d,p.extent),[s,o,a].forEach(P=>{f[P]=w[P]||f[P]}));let b=p.start+p.extent,x=p.start+(p.start+p.extent);[s,o,a].forEach(P=>{let y=f[P];if(y!=null){let C=l[P],S=0;switch(P){case s:S=t?C.left:C.top;break;case o:S=(x-y)/2;break;case a:S=b-y;break}t?C.setHorizontalPosition(S,y-C.getInsetLeft()-C.getInsetRight()):C.setVerticalPosition(S,y-C.getInsetTop()-C.getInsetBottom())}})}getSizesOfMarginBoxesAlongVariableDimension(e,t){var i;let n=e.start,r=e.center,s=e.end,o={};if(r){let a=[n,s],h=new MC(a),l=this.distributeAutoMarginBoxSizes(r,h,t);l.xSize!=null&&(o.center=l.xSize);let c=(i=l.xSize)!=null?i:r.getOuterSize(),d=Math.max((t-c)/2,0);n&&(o.start=n.hasAutoSize()?d:n.getOuterSize()),s&&(o.end=s.hasAutoSize()?d:s.getOuterSize())}else{let a=this.distributeAutoMarginBoxSizes(n??null,s??null,t);a.xSize!=null&&(o.start=a.xSize),a.ySize!=null&&(o.end=a.ySize)}return o}distributeAutoMarginBoxSizes(e,t,i){let n={xSize:null,ySize:null};if(e instanceof lo&&e.minMaxFitContent&&(n.xSize=e.getOuterSize()),t instanceof lo&&t.minMaxFitContent&&(n.ySize=t.getOuterSize()),e&&t)if(e.hasAutoSize()&&t.hasAutoSize()){let r=e.getOuterMaxContentSize(),s=t.getOuterMaxContentSize();if(r>0&&s>0){let o=r+s;if(o<i)n.xSize=i*r/o;else{let a=e.getOuterMinContentSize(),h=t.getOuterMinContentSize(),l=a+h;l<i?n.xSize=a+(i-l)*(r-a)/(o-l):l>0&&(n.xSize=i*a/l)}n.xSize!=null&&n.xSize>0&&(n.ySize=i-n.xSize)}else r>0?n.xSize=i:s>0&&(n.ySize=i)}else e.hasAutoSize()?n.xSize=Math.max(i-t.getOuterSize(),0):t.hasAutoSize()&&(n.ySize=Math.max(i-e.getOuterSize(),0));else e?e.hasAutoSize()&&(n.xSize=i):t&&t.hasAutoSize()&&(n.ySize=i);return n}prepareContainer(e,t,i,n,r){t.element.setAttribute("data-vivliostyle-page-box",!0),super.prepareContainer(e,t,i,n,r)}},lo=class{constructor(e,t,i,n){u(this,"container",e),u(this,"isHorizontal",i),u(this,"clientLayout",n),u(this,"hasAutoSize_"),u(this,"size",null),u(this,"minMaxFitContent",null);let r=t[i?"width":"height"];if(this.hasAutoSize_=!r||r===v.auto||J(r),this.minMaxFitContent=r instanceof he&&(r.name==="min-content"||r.name==="max-content"||r.name==="fit-content")?r.name:null,this.minMaxFitContent){let s=this.getSize();if(this.isHorizontal){let o=s[this.minMaxFitContent==="min-content"?"min-content width":this.minMaxFitContent==="max-content"?"max-content width":"fit-content width"];this.container.setHorizontalPosition(this.container.left,o)}else{let o=s[this.minMaxFitContent==="min-content"?"min-content height":this.minMaxFitContent==="max-content"?"max-content height":"fit-content height"];this.container.setVerticalPosition(this.container.top,o)}}}hasAutoSize(){return this.hasAutoSize_}getSize(){if(!this.size){let e=this.isHorizontal?["max-content width","min-content width","fit-content width"]:["max-content height","min-content height","fit-content height"];this.size=ph(this.clientLayout,this.container.element,e)}return this.size}getOuterMaxContentSize(){let e=this.getSize();return this.isHorizontal?this.container.getInsetLeft()+e["max-content width"]+this.container.getInsetRight():this.container.getInsetTop()+e["max-content height"]+this.container.getInsetBottom()}getOuterMinContentSize(){let e=this.getSize();return this.isHorizontal?this.container.getInsetLeft()+e["min-content width"]+this.container.getInsetRight():this.container.getInsetTop()+e["min-content height"]+this.container.getInsetBottom()}getOuterSize(){return this.isHorizontal?this.container.getInsetLeft()+this.container.width+this.container.getInsetRight():this.container.getInsetTop()+this.container.height+this.container.getInsetBottom()}},MC=class{constructor(e){u(this,"params",e)}hasAutoSize(){return this.params.some(e=>{var t;return(t=e?.hasAutoSize())!=null?t:!1})}getOuterMaxContentSize(){let e=this.params.map(t=>{var i;return(i=t?.getOuterMaxContentSize())!=null?i:0});return Math.max.apply(null,e)*e.length}getOuterMinContentSize(){let e=this.params.map(t=>{var i;return(i=t?.getOuterMinContentSize())!=null?i:0});return Math.max.apply(null,e)*e.length}getOuterSize(){let e=this.params.map(t=>{var i;return(i=t?.getOuterSize())!=null?i:0});return Math.max.apply(null,e)*e.length}},Rc=class extends lo{constructor(e,t,i,n,r){super(e,t,i,n),u(this,"fixedSize"),this.fixedSize=r}hasAutoSize(){return!1}getOuterMaxContentSize(){return this.getOuterSize()}getOuterMinContentSize(){return this.getOuterSize()}getOuterSize(){return this.isHorizontal?this.container.getInsetLeft()+this.fixedSize+this.container.getInsetRight():this.container.getInsetTop()+this.fixedSize+this.container.getInsetBottom()}},_C=class extends qn{constructor(e,t,i,n){super(e,t),u(this,"contentBoxWidth"),u(this,"contentBoxHeight"),u(this,"pageAreaDimension"),u(this,"pageAreaEstablishingChild");for(let o in n)o.match(/^background-/)&&(this.cascaded[o]=n[o]);this.buildCascadedStyle(n),this.resolveStyle(i);let r=this.resolvePageBoxDimensions({start:"left",end:"right",extent:"width"}),s=this.resolvePageBoxDimensions({start:"top",end:"bottom",extent:"height"});this.contentBoxWidth=new q(r.contentBoxExtent),this.contentBoxHeight=new q(s.contentBoxExtent),this.pageAreaDimension={borderBoxWidth:r.borderBoxExtent,borderBoxHeight:s.borderBoxExtent,marginLeft:r.marginStart,marginRight:r.marginEnd,marginTop:s.marginStart,marginBottom:s.marginEnd},this.initColumns(),this.initEnabled(),this.register(i),this.pageAreaEstablishingChild=new DC(this,t.pageAreaPartition)}applyCascadeAndInit(e,t){e.pushRule(this.pageBox.classes,null,this.cascaded),this.pageAreaEstablishingChild.applyCascadeAndInit(e,t),e.popRule()}resolvePageBoxDimensions(e){let t=this.style,i=this.pageBox.pageSize,n=this.pageBox.scope,r=e.start,s=e.end,o=e.extent,a=i[o].toExpr(n,null),h=Ce(n,t[o],a),l=Ce(n,t[`margin-${r}`],a),c=Ce(n,t[`margin-${s}`],a),d=Tt(n,t[`padding-${r}`],a),p=Tt(n,t[`padding-${s}`],a),f=li(n,t[`border-${r}-width`],t[`border-${r}-style`],a),g=li(n,t[`border-${s}-width`],t[`border-${s}-style`],a),m=oe(n,oe(n,f,d),oe(n,g,p)),w,b,x;return h?(this.borderBoxSizing?(b=h,x=ve(n,b,m)):(x=h,b=oe(n,x,m)),w=ve(n,a,b),!l&&!c?(l=js(n,w,new it(n,.5)),c=l):l?c=ve(n,w,l):l=ve(n,w,c)):(l||(l=n.zero),c||(c=n.zero),w=oe(n,l,c),b=ve(n,a,w),x=ve(n,b,m),h=this.borderBoxSizing?b:x),t[r]=new q(l),t[s]=new q(c),t[`margin-${r}`]=Me,t[`margin-${s}`]=Me,t[`border-${r}-width`]=new q(f),t[`border-${s}-width`]=new q(g),t[`padding-${r}`]=new q(d),t[`padding-${s}`]=new q(p),t[o]=new q(h),t[`max-${o}`]=new q(h),{borderBoxExtent:b,contentBoxExtent:x,marginStart:l,marginEnd:c}}prepareContainer(e,t,i,n,r){t.element.setAttribute("data-vivliostyle-page-area-container",!0),super.prepareContainer(e,t,i,n,r)}},DC=class extends qn{constructor(e,t){super(e,t),u(this,"pageAreaEstablishingChild",null),u(this,"pageRulePartitionInstance"),this.pageRulePartitionInstance=e}applyCascadeAndInit(e,t){var i,n;for(let r in t)r.match(/^column.*$/)&&(this.cascaded[r]=t[r]);this.cascaded["writing-mode"]=(i=t["writing-mode"])!=null?i:new Y(v.horizontal_tb,0),this.cascaded.direction=(n=t.direction)!=null?n:new Y(v.ltr,0),super.applyCascadeAndInit(e,{})}initHorizontal(){let e=this.style,t=this.pageRulePartitionInstance,i=t.style,n=this.pageBox.scope;e.left=i["padding-left"],e.width=t.contentBoxWidth,e["margin-left"]=new q(new Tn(n,i.left.toExpr(n,null))),e["margin-right"]=new q(new Tn(n,i.right.toExpr(n,null))),e["border-left-width"]=i.left,e["border-right-width"]=i.right,e["border-left-style"]=v.solid,e["border-right-style"]=v.solid,e["border-left-color"]=v.transparent,e["border-right-color"]=v.transparent}initVertical(){let e=this.style,t=this.pageRulePartitionInstance,i=t.style,n=this.pageBox.scope;e.top=i["padding-top"],e.height=t.contentBoxHeight,e["margin-top"]=new q(new Tn(n,i.top.toExpr(n,null))),e["margin-bottom"]=new q(new Tn(n,i.bottom.toExpr(n,null))),e["border-top-width"]=i.top,e["border-bottom-width"]=i.bottom,e["border-top-style"]=v.solid,e["border-bottom-style"]=v.solid,e["border-top-color"]=v.transparent,e["border-bottom-color"]=v.transparent}prepareContainer(e,t,i,n,r){t.element.setAttribute("data-vivliostyle-page-area",!0),i.pageAreaElement=t.element,super.prepareContainer(e,t,i,n,r),e.pageAreaWidth=t.width,e.pageAreaHeight=t.height}},Yg=class extends qn{constructor(e,t){super(e,t),u(this,"boxInfo"),u(this,"suppressEmptyBoxGeneration",!0);let i=t.marginBoxName;this.boxInfo=Wh[i];let n=e;n.pageMarginBoxInstances[i]=this}prepareContainer(e,t,i,n,r){t.element.setAttribute("data-vivliostyle-page-margin-box",this.pageBox.marginBoxName),this.applyVerticalAlign(e,t.element),super.prepareContainer(e,t,i,n,r)}applyVerticalAlign(e,t){F(t,"display","flex"),F(t,"flex-flow",this.vertical?this.rtl?"row-reverse":"row":"column");let i=this.getProp(e,"vertical-align"),n=null;i===D("middle")?n="center":i===D("top")?n="flex-start":i===D("bottom")&&(n="flex-end"),n&&F(t,"justify-content",n);let r=this.getProp(e,"content");if(this.vertical||r instanceof Qe||r instanceof q&&r.expr instanceof we&&r.expr.str.startsWith("running-element-")){let s="center";(this.boxInfo.isInTopRow||this.boxInfo.isInBottomRow)&&(this.boxInfo.isInLeftColumn||this.boxInfo.positionAlongVariableDimension==="end"?s=this.vertical||this.rtl?"start":"end":(this.boxInfo.isInRightColumn||this.boxInfo.positionAlongVariableDimension==="start")&&(s=this.vertical||this.rtl?"end":"start")),F(t,"align-items",s)}}positionAlongVariableDimension(e,t){let i=this.style,n=this.pageBox.scope,r=e.start,s=e.end,o=e.extent,a=r==="left",h=a?t.borderBoxWidth:t.borderBoxHeight,l=Ce(n,i[o],h),c=a?t.marginLeft:t.marginTop;if(this.boxInfo.positionAlongVariableDimension==="start")i[r]=new q(c);else if(l){let d=Tt(n,i[`margin-${r}`],h),p=Tt(n,i[`margin-${s}`],h),f=Tt(n,i[`padding-${r}`],h),g=Tt(n,i[`padding-${s}`],h),m=li(n,i[`border-${r}-width`],i[`border-${r}-style`],h),w=li(n,i[`border-${s}-width`],i[`border-${s}-style`],h),b=oe(n,l,oe(n,this.borderBoxSizing?n.zero:oe(n,oe(n,f,g),oe(n,m,w)),oe(n,d,p)));switch(this.boxInfo.positionAlongVariableDimension){case"center":i[r]=new q(oe(n,c,Ya(n,ve(n,h,b),new it(n,2))));break;case"end":i[r]=new q(ve(n,oe(n,c,h),b));break}}}positionAndSizeAlongFixedDimension(e,t){let i=this.style,n=this.pageBox.scope,r=this.borderBoxSizing,s=e.inside,o=e.outside,a=e.extent,h=t[`margin${o.charAt(0).toUpperCase()}${o.substring(1)}`],l=Pc(n,i[`margin-${s}`],h),c=Pc(n,i[`margin-${o}`],h),d=Tt(n,i[`padding-${s}`],h),p=Tt(n,i[`padding-${o}`],h),f=li(n,i[`border-${s}-width`],i[`border-${s}-style`],h),g=li(n,i[`border-${o}-width`],i[`border-${o}-style`],h),m=Ce(n,i[a],h),w=null;function b(x){if(w)return w;w={extent:m?m.evaluate(x):null,marginInside:l?l.evaluate(x):null,marginOutside:c?c.evaluate(x):null};let P=h.evaluate(x),y=0;return r||[f,d,p,g].forEach(C=>{C&&(y+=C.evaluate(x))}),(w.marginInside===null||w.marginOutside===null)&&y+w.extent+w.marginInside+w.marginOutside>P&&(w.marginInside===null&&(w.marginInside=0),w.marginOutside===null&&(w.marginOutside=0)),w.extent!==null&&w.marginInside!==null&&w.marginOutside!==null&&(w.marginOutside=null),w.extent===null?(w.extent=P-y-w.marginInside-w.marginOutside,w.marginInside===null&&(w.marginInside=0),w.marginOutside===null&&(w.marginOutside=0)):typeof w.extent=="number"&&(w.marginInside===null&&typeof w.marginOutside=="number"?w.marginInside=P-y-w.extent-w.marginOutside:typeof w.marginInside=="number"&&w.marginOutside===null?w.marginOutside=P-y-w.extent-w.marginInside:w.marginInside=w.marginOutside=(P-y-w.extent)/2),w}i[a]=new q(new we(n,function(){let x=b(this).extent;return x===null?"auto":x},a)),i[`margin-${s}`]=new q(new we(n,function(){let x=b(this).marginInside;return x===null?"auto":x},`margin-${s}`)),i[`margin-${o}`]=new q(new we(n,function(){let x=b(this).marginOutside;return x===null?"auto":x},`margin-${o}`)),s==="left"?i.left=new q(oe(n,t.marginLeft,t.borderBoxWidth)):s==="top"&&(i.top=new q(oe(n,t.marginTop,t.borderBoxHeight)))}initHorizontal(){let e=this.parentInstance.pageAreaDimension;this.boxInfo.isInLeftColumn?this.positionAndSizeAlongFixedDimension({inside:"right",outside:"left",extent:"width"},e):this.boxInfo.isInRightColumn?this.positionAndSizeAlongFixedDimension({inside:"left",outside:"right",extent:"width"},e):this.positionAlongVariableDimension({start:"left",end:"right",extent:"width"},e)}initVertical(){let e=this.parentInstance.pageAreaDimension;this.boxInfo.isInTopRow?this.positionAndSizeAlongFixedDimension({inside:"bottom",outside:"top",extent:"height"},e):this.boxInfo.isInBottomRow?this.positionAndSizeAlongFixedDimension({inside:"top",outside:"bottom",extent:"height"},e):this.positionAlongVariableDimension({start:"top",end:"bottom",extent:"height"},e)}finishContainer(e,t,i,n,r,s,o){super.finishContainer(e,t,i,n,r,s,o);let a=i.marginBoxes,h=this.pageBox.marginBoxName,l=this.boxInfo;!l.isInLeftColumn&&!l.isInRightColumn?l.isInTopRow?a.top[h]=t:l.isInBottomRow&&(a.bottom[h]=t):!l.isInTopRow&&!l.isInBottomRow&&(l.isInLeftColumn?a.left[h]=t:l.isInRightColumn&&(a.right[h]=t));let c=this.parentInstance.pageAreaDimension,d=this.getProp(e,"width"),p=d instanceof he&&(d.name==="min-content"||d.name==="max-content"||d.name==="fit-content")?d.name:null,f=this.getPropAsNumber(e,"min-width"),g=this.getPropAsNumber(e,"max-width");if(p||f||g){p&&F(t.element,"width",p),f&&F(t.element,"min-width",`${f}px`),g&&F(t.element,"max-width",`${g}px`);let P=this.getProp(e,"margin-left"),y=this.getProp(e,"margin-right");if(l.isInLeftColumn){let C=c.borderBoxWidth.evaluate(e)+c.marginRight.evaluate(e);F(t.element,"right",`${C}px`),(P===v.auto||y!==v.auto)&&F(t.element,"margin-left","auto"),y===v.auto&&F(t.element,"margin-right","auto")}else l.isInRightColumn&&(F(t.element,"right","0"),(y===v.auto||P!==v.auto)&&F(t.element,"margin-right","auto"),P===v.auto&&F(t.element,"margin-left","auto"))}let m=this.getProp(e,"height"),w=m instanceof he&&(m.name==="min-content"||m.name==="max-content"||m.name==="fit-content")?m.name:null,b=this.getPropAsNumber(e,"min-height"),x=this.getPropAsNumber(e,"max-height");if(w||b||x){w&&F(t.element,"height",w),b&&F(t.element,"min-height",`${b}px`),x&&F(t.element,"max-height",`${x}px`);let P=this.getProp(e,"margin-top"),y=this.getProp(e,"margin-bottom");if(l.isInTopRow){let C=c.borderBoxHeight.evaluate(e)+c.marginBottom.evaluate(e);F(t.element,"bottom",`${C}px`),(P===v.auto||y!==v.auto)&&F(t.element,"margin-top","auto"),y===v.auto&&F(t.element,"margin-bottom","auto")}else l.isInBottomRow&&(F(t.element,"bottom","0"),(y===v.auto||P!==v.auto)&&F(t.element,"margin-bottom","auto"),P===v.auto&&F(t.element,"margin-top","auto"))}}},zC=class{constructor(e,t,i,n,r){u(this,"pageScope",t),u(this,"rootPageBoxInstance",i),u(this,"context",n),u(this,"docElementStyle",r),u(this,"pageMasterCache",{}),u(this,"pageCascadeInstance"),this.pageCascadeInstance=e,this.definePageProgression()}definePageProgression(){let e=this.pageScope,t=this.context,i=t.isVersoFirstPage,n=new Je(e,"page-number"),r=new nh(e,new bd(e,n,new it(e,2)),i?e.one:e.zero);e.defineName("recto-page",new Li(e,r)),e.defineName("verso-page",r),(t.pageProgression||jg(this.docElementStyle))==="ltr"?(e.defineName("left-page",r),e.defineName("right-page",new Li(e,r))):(e.defineName("left-page",new Li(e,r)),e.defineName("right-page",r))}getCascadedPageStyle(e){let t={};return this.pageCascadeInstance.pushRule([],e,t),this.pageCascadeInstance.popRule(),t}getPageRulePageMaster(e,t){let i=e.pageBox;if(Object.keys(t).length===0)return i.resetScope(),e;let n=this.makeCacheKey(t,i),r=this.pageMasterCache[n];return r||(i.pseudoName===$h?r=this.generatePageRuleMaster(t):r=this.generateCascadedPageMaster(t,i),this.pageMasterCache[n]=r),r.pageBox.resetScope(),r}makeCacheKey(e,t){var i;let n=this.makeCascadeValueObjectKey(e),r=((i=this.context.currentLayoutPosition)==null?void 0:i.page)%2;return`${t.key}^${n}^${r}`}makeCascadeValueObjectKey(e){let t=[];for(let i in e)if(Object.prototype.hasOwnProperty.call(e,i)){let n=e[i],r;n instanceof Y?r=`${n.value}`:r=this.makeCascadeValueObjectKey(n),t.push(i+r+(n.priority||""))}return t.sort().join("^")}generatePageRuleMaster(e){let t=new qg(this.pageScope,this.rootPageBoxInstance.pageBox,e).createInstance(this.rootPageBoxInstance,this.context,this.docElementStyle);return t.applyCascadeAndInit(this.pageCascadeInstance,this.docElementStyle),t.resolveAutoSizing(this.context),t}generateCascadedPageMaster(e,t){let i=t.clone({pseudoName:Gh}),n=i.specified,r=e.size;if(r&&!J(r.value)){let o=Ho(e),a=r.priority;ei(n,"width",new Y(o.width,a),this.context),ei(n,"height",new Y(o.height,a),this.context)}["counter-reset","counter-increment"].forEach(o=>{n[o]&&(e[o]=n[o])});let s=i.createInstance(this.rootPageBoxInstance,this.context,this.docElementStyle);return s.applyCascadeAndInit(this.pageCascadeInstance,this.docElementStyle),s.resolveAutoSizing(this.context),s}},VC=class extends Ae{constructor(e){super(),u(this,"pageType",e)}matches(e){return e.instance.currentPageType===this.pageType}getPriority(){return 3}primarySlot(e){return{table:e.pagetypes,key:this.pageType}}},UC=class extends Ae{constructor(e){super(),u(this,"scope",e)}matches(e){return new Je(this.scope,"page-number").evaluate(e.instance.context)===1}getPriority(){return 2}},$C=class extends Ae{constructor(e){super(),u(this,"scope",e)}matches(e){return!!new Je(this.scope,"blank-page").evaluate(e.instance.context)}getPriority(){return 2}},HC=class extends Ae{constructor(e){super(),u(this,"scope",e)}matches(e){return!!new Je(this.scope,"left-page").evaluate(e.instance.context)}getPriority(){return 1}},WC=class extends Ae{constructor(e){super(),u(this,"scope",e)}matches(e){return!!new Je(this.scope,"right-page").evaluate(e.instance.context)}getPriority(){return 1}},GC=class extends Ae{constructor(e){super(),u(this,"scope",e)}matches(e){return!!new Je(this.scope,"recto-page").evaluate(e.instance.context)}getPriority(){return 1}},jC=class extends Ae{constructor(e){super(),u(this,"scope",e)}matches(e){return!!new Je(this.scope,"verso-page").evaluate(e.instance.context)}getPriority(){return 1}},XC=class extends fn{constructor(e,t,i){super(t,i),u(this,"scope",e),u(this,"a",t),u(this,"b",i)}matches(e){let t=e.instance.context,i=t.layoutPositionAtPageStart.page;return t.blankPageAtStart&&i--,!!i&&this.matchANPlusB(i)}getPriority(){return 2}},qC=class extends fn{constructor(e,t,i,n){super(t,i),u(this,"scope",e),u(this,"a",t),u(this,"b",i),u(this,"pageType",n)}matches(e){let t=e.instance.pageTypePageIndices[this.pageType];if(!t)return!1;for(let i of t)if(this.matchANPlusB(i))return!0;return!1}getPriority(){return 3}},YC=class extends Ah{constructor(e,t){super(e,t,null,null,null)}apply(e){KC(e.instance.context,e.currentStyle,this.style,this.specificity,e)}};function KC(e,t,i,n,r){Mo(e,t,i,n,null,null,null,r.instance.mergeValidatorSet);let s=i[Jr];if(s){let a=hi(t,Jr);for(let h in s)if(s.hasOwnProperty(h)){let l=a[h];l||(l={},a[h]=l),Mo(e,l,s[h],n,null,null,null,r.instance.mergeValidatorSet)}}let o=i[Wo];if(o){let a=hi(t,Wo);for(let h in o)if(o.hasOwnProperty(h)){let l=a[h];l||(l={},a[h]=l);let c=o[h];for(let p in c)if(c.hasOwnProperty(p)&&p!=="_pseudos"){let f=c[p];f instanceof Y&&ei(l,p,f)}let d=ht(c,"_pseudos");if(d){let p=hi(l,"_pseudos");for(let f in d)if(d.hasOwnProperty(f)){let g=p[f];g||(g={},p[f]=g);let m=d[f];for(let w in m)if(m.hasOwnProperty(w)){let b=m[w];b instanceof Y&&ei(g,w,b)}}}}}}var ZC=class extends Do{constructor(e,t,i,n,r,s){super(e,t,i?.condition,i,null,n,s),u(this,"pageProps",r),u(this,"currentPageSelectors",[]),u(this,"currentNamedPageSelector",""),u(this,"currentPseudoPageClassSelectors",[])}startPageRule(){this.startSelectorRule()}tagSelector(e,t){this.currentNamedPageSelector=t??"",t&&(this.chain.push(new VC(t)),this.specificity+=65536)}pseudoclassSelector(e,t){if(e=e.toLowerCase(),t)switch(e){case"nth":{let i=t[0],n=t[1];if(t.length===3&&typeof t[2]=="string"){let r=t[2];this.currentPseudoPageClassSelectors.push(`:${e}(${i}n${n<0?n:"+"+n} of ${r})`),this.chain.push(new qC(this.scope,i,n,r)),this.specificity+=65792}else this.currentPseudoPageClassSelectors.push(`:${e}(${i}n${n<0?n:"+"+n})`),this.chain.push(new XC(this.scope,i,n)),this.specificity+=256}break;default:this.reportAndSkip(`E_INVALID_PAGE_SELECTOR :${e}(${t.join("")})`);break}else switch(this.currentPseudoPageClassSelectors.push(`:${e}`),e){case"first":this.chain.push(new UC(this.scope)),this.specificity+=256;break;case"blank":this.chain.push(new $C(this.scope)),this.specificity+=256;break;case"left":this.chain.push(new HC(this.scope)),this.specificity+=1;break;case"right":this.chain.push(new WC(this.scope)),this.specificity+=1;break;case"recto":this.chain.push(new GC(this.scope)),this.specificity+=1;break;case"verso":this.chain.push(new jC(this.scope)),this.specificity+=1;break;default:this.reportAndSkip(`E_INVALID_PAGE_SELECTOR :${e}`);break}}finishSelector(){let e;!this.currentNamedPageSelector&&!this.currentPseudoPageClassSelectors.length?e=null:e=[this.currentNamedPageSelector].concat(this.currentPseudoPageClassSelectors.sort()),this.currentPageSelectors.push({selectors:e,specificity:this.specificity}),this.currentNamedPageSelector="",this.currentPseudoPageClassSelectors=[]}nextSelector(){this.finishSelector(),super.nextSelector()}startRuleBody(){this.finishSelector(),super.startRuleBody()}simpleProperty(e,t,i){if((e==="bleed"||e==="marks")&&!this.currentPageSelectors.some(s=>s.selectors===null))return;super.simpleProperty(e,t,i);let n=me(this.elementStyle,e),r=this.pageProps;if(e==="bleed"||e==="marks")r[""]||(r[""]={}),Object.keys(r).forEach(s=>{Mi(r[s],e,n)});else if(e==="size"){let s=r[""];this.currentPageSelectors.forEach(o=>{let a=n.increaseSpecificity(o.specificity),h=o.selectors?o.selectors.join(""):"",l=r[h];l?ei(l,e,a):(l=r[h]={},Mi(l,e,a),s&&["bleed","marks"].forEach(c=>{s[c]&&Mi(l,c,s[c])}))})}}insertNonPrimary(e){this.cascade.insertInTable(this.cascade.pagetypes,"*",e)}makeApplyRuleAction(e){return new YC(this.elementStyle,e)}startFootnoteRule(e){let t=hi(this.elementStyle,Wo),i=t.area;if(i||(i={},t.area=i),e){let n=hi(i,"_pseudos"),r=n[e];r||(r={},n[e]=r),i=r}this.owner.delegateTo(n=>new Kg(this.scope,this.owner,this.validatorSet,i,n,this.layer))}startPageMarginBoxRule(e){let t=hi(this.elementStyle,Jr),i=t[e];i||(i={},t[e]=i),this.owner.delegateTo(n=>new JC(this.scope,this.owner,this.validatorSet,i,n,this.layer))}},JC=class extends Zn{constructor(e,t,i,n,r,s=null){super(e,t,r),u(this,"validatorSet",i),u(this,"boxStyle",n),u(this,"layer",s),u(this,"ruleId",ds())}property(e,t,i){this.validatorSet.validatePropertyAndHandleShorthand(e,t,i,this.scope,this)}invalidPropertyValue(e,t){this.report(`E_INVALID_PROPERTY_VALUE ${e}: ${t.toString()}`)}unknownProperty(e,t){this.report(`E_INVALID_PROPERTY ${e}: ${t.toString()}`)}simpleProperty(e,t,i){let n=i?this.getImportantSpecificity():this.getBaseSpecificity();ps(e,t,this.validatorSet);let r=new Y(t,n,this.layer,this.ruleId);Mi(this.boxStyle,e,r)}},Kg=class extends Zn{constructor(e,t,i,n,r,s=null){super(e,t,r),u(this,"validatorSet",i),u(this,"areaStyle",n),u(this,"layer",s),u(this,"ruleId",ds())}property(e,t,i){this.validatorSet.validatePropertyAndHandleShorthand(e,t,i,this.scope,this)}invalidPropertyValue(e,t){this.report(`E_INVALID_PROPERTY_VALUE ${e}: ${t.toString()}`)}unknownProperty(e,t){this.report(`E_INVALID_PROPERTY ${e}: ${t.toString()}`)}simpleProperty(e,t,i){let n=i?this.getImportantSpecificity():this.getBaseSpecificity();ps(e,t,this.validatorSet);let r=new Y(t,n,this.layer,this.ruleId);Mi(this.areaStyle,e,r)}},Zg=class{constructor(e,t,i){u(this,"store",e),u(this,"url",t),u(this,"document",i),u(this,"lang",null),u(this,"totalOffset",-1),u(this,"root"),u(this,"body"),u(this,"head"),u(this,"last"),u(this,"lastOffset",1),u(this,"idMap",null),this.root=Wm(i);let n=null,r=null;if(this.root.namespaceURI=="http://www.w3.org/1999/xhtml"){for(let s=this.root.firstChild;s;s=s.nextSibling){if(s.nodeType!=1)continue;let o=s;if(o.namespaceURI=="http://www.w3.org/1999/xhtml")switch(o.localName){case"head":r=o;break;case"body":n=o;break}}this.lang=this.root.getAttribute("lang")}this.body=n,this.head=r,this.last=this.root,this.last.setAttribute(jt,"0")}doc(){return new Qg([this.document])}getElementOffset(e){let t=e.getAttribute(jt);if(t)return parseInt(t,10);let i=this.lastOffset,n=this.last;for(;n!=e;){let r=n.firstChild;if(!r){for(;r=n.nextSibling,!r;)if(n=n.parentNode,n==null)throw new Error("Internal error")}n=r,r.nodeType==1?(r.setAttribute(jt,i.toString()),++i):i+=r.textContent.length}return this.lastOffset=i,this.last=e,i-1}getNodeOffset(e,t,i){let n=0,r=e,s=null;if(r.nodeType==1){if(!i)return this.getElementOffset(r)}else{if(n=t,s=r.previousSibling,!s)return r=r.parentNode,n+=1,this.getElementOffset(r)+n;r=s}for(;;){for(;r.lastChild;)r=r.lastChild;if(r.nodeType==1)break;if(n+=r.textContent.length,s=r.previousSibling,!s){r=r.parentNode;break}r=s}return n+=1,this.getElementOffset(r)+n}getTotalOffset(){return this.totalOffset<0&&(this.totalOffset=this.getNodeOffset(this.root,0,!0)),this.totalOffset}getNodeByOffset(e){let t,i=this.root;for(;;){if(t=this.getElementOffset(i),t>=e)return i;let a=i.children;if(!a)break;let h=vi(a.length,l=>{let c=a[l];return this.getElementOffset(c)>e});if(h==0)break;i=a[h-1]}let n=t+1,r=i,s=r.firstChild||r.nextSibling,o=null;for(;;){if(s){if(s.nodeType==1||(r=s,o=r,n+=s.textContent.length,n>e&&!/^\s*$/.test(s.textContent)))break}else if(r=r.parentNode,!r)break;s=r.nextSibling}return s&&o&&/^\s*$/.test(o.textContent)&&(o=s),o||i}buildIdMap(e){let t=e.getAttribute("id");t&&!this.idMap[t]&&(this.idMap[t]=e);let i=e.getAttributeNS("http://www.w3.org/XML/1998/namespace","id");i&&!this.idMap[i]&&(this.idMap[i]=e);for(let n=e.firstElementChild;n;n=n.nextElementSibling)this.buildIdMap(n)}getElement(e){var t;let i=e.match(/([^#]*)#(.+)$/);if(!i||i[1]&&i[1]!=this.url&&((t=this.store)==null?void 0:t.get(i[1]))!==this)return null;let n=i[2],r=this.document.getElementById(n);return!r&&this.document.getElementsByName&&(r=this.document.getElementsByName(n)[0]),r||(this.idMap||(this.idMap={},this.buildIdMap(this.document.documentElement)),r=this.idMap[n]),r}},$l=(e=>(e.TEXT_HTML="text/html",e.TEXT_XML="text/xml",e.APPLICATION_XML="application/xml",e.APPLICATION_XHTML_XML="application/xhtml+xml",e.IMAGE_SVG_XML="image/svg+xml",e))($l||{});function $s(e,t,i){let n=i||new DOMParser,r;try{r=n.parseFromString(e,t)}catch{}return!r||t!=="text/html"&&r.querySelector("parsererror")?null:r}function QC(e){let t=e.contentType;if(t){let n=Object.keys($l);for(let r=0;r<n.length;r++)if($l[n[r]]===t)return t;if(t.match(/\+xml$/))return"application/xml"}let i=e.url.match(/\.([^./#?]+)([#?]|$)/);if(i)switch(i[1]){case"html":case"htm":return"text/html";case"xhtml":case"xht":return"application/xhtml+xml";case"svg":case"svgz":return"image/svg+xml";case"opf":case"xml":return"application/xml"}return null}function Jg(e,t){let i=e.responseXML;if(!i){let r=new DOMParser,s=e.responseText;if(s!=null){let o=QC(e);if(i=$s(s,o||"application/xml",r),i&&!o){let a=i.documentElement;a.localName.toLowerCase()==="html"&&!a.namespaceURI?i=$s(s,"text/html",r):a.localName.toLowerCase()==="svg"&&i.contentType!=="image/svg+xml"&&(i=$s(s,"image/svg+xml",r))}i||(i=$s(s,"text/html",r))}}let n=i?new Zg(t,e.url,i):null;return I(n)}function eP(){return new ah(Jg,"document")}var tP=class Hl{constructor(t){u(this,"fn",t)}check(t){return this.fn(t)}withAttribute(t,i){return new Hl(n=>this.check(n)&&n.nodeType==1&&n.getAttribute(t)==i)}withChild(t,i){return new Hl(n=>{if(!this.check(n))return!1;let r=new Qg([n]);return r=r.child(t),i&&(r=r.predicate(i)),r.size()>0})}},Lc=new tP(e=>!0),Qg=class Wl{constructor(t){u(this,"nodes",t)}asArray(){return this.nodes}size(){return this.nodes.length}predicate(t){let i=[];for(let n of this.nodes)t.check(n)&&i.push(n);return new Wl(i)}forEachNode(t){let i=[],n=r=>{i.push(r)};for(let r=0;r<this.nodes.length;r++)t(this.nodes[r],n);return new Wl(i)}forEach(t){let i=[];for(let n=0;n<this.nodes.length;n++)i.push(t(this.nodes[n]));return i}forEachNonNull(t){let i=[];for(let n=0;n<this.nodes.length;n++){let r=t(this.nodes[n]);r!=null&&i.push(r)}return i}child(t){return this.forEachNode((i,n)=>{for(let r=i.firstChild;r;r=r.nextSibling)r.nodeType==1&&r.localName==t&&n(r)})}childElements(){return this.forEachNode((t,i)=>{for(let n=t.firstChild;n;n=n.nextSibling)n.nodeType==1&&i(n)})}attribute(t){return this.forEachNonNull(i=>i.nodeType==1?i.getAttribute(t):null)}textContent(){return this.forEach(t=>t.textContent)}};function iP(e){return[...e].sort(Vi)}var nP=class extends ao{constructor(e,t,i,n,r,s,o,a){super(e,t,null,i,n,o,"counter-style",a),u(this,"counterStyleName",r),u(this,"counterStyles",s)}endRule(){super.endRule(),this.counterStyles.define(this.counterStyleName,this.elementStyle,{priority:this.getBaseSpecificity(),layer:this.layer})||Z.warn(`E_CSS_COUNTER_STYLE_INVALID: @counter-style ${this.counterStyleName}`)}},rP=class{constructor(e,t,i,n,r,s,o,a,h,l,c){u(this,"store",e),u(this,"rootScope",t),u(this,"pageScope",i),u(this,"cascade",n),u(this,"rootBox",r),u(this,"fontFaces",s),u(this,"footnoteProps",o),u(this,"flowProps",a),u(this,"viewportProps",h),u(this,"pageProps",l),u(this,"counterStyleStore",c),u(this,"fontDeobfuscator"),u(this,"validatorSet"),this.fontDeobfuscator=e.fontDeobfuscator,this.validatorSet=e.validatorSet,this.pageScope.defineBuiltIn("has-content",function(d){d=d;let p=this,f=p.currentLayoutPosition,g=f.firstFlowChunkOfFlow(d);return p.matchPageSide(f.startSideOfFlow(d))&&f.hasContent(d,p.lookupOffset)&&!!g&&!p.flowChunkIsAfterParentFlowForcedBreak(g)}),this.pageScope.defineName("page-number",new we(this.pageScope,function(){let d=this;return d.pageNumberOffset+d.getCurrentPageNumberForPageScope()},"page-number")),this.pageScope.defineName("blank-page",new we(this.pageScope,function(){let d=this.currentLayoutPosition;return d?.isBlankPage},"blank-page"))}sizeViewport(e,t,i,n){if(this.viewportProps.length){let r=new Xa(this.rootScope,e,t,i,i*Jl.lineHeight),s=$0(r,this.viewportProps),o=s.width,a=s.height,h=s["text-zoom"],l=1;if(o&&a||h){let c=wi.em;if((h?h.evaluate(r,"text-zoom"):null)===v.scale&&(l=c/i,i=c,e*=l,t*=l),o&&a){let d=dt(o.evaluate(r,"width"),r),p=dt(a.evaluate(r,"height"),r);if(d>0&&p>0)return{width:n&&n.spreadView?(d+n.pageBorder)*2:d,height:p,fontSize:i}}}}return{width:e,height:t,fontSize:i}}};function Oc(e){let t=new Map,i=n=>{n.formattingContext&&!t.has(n.formattingContext)&&t.set(n.formattingContext,n.formattingContext.saveState()),n.shadowSibling&&i(n.shadowSibling)};for(let n in e.flowPositions){let r=e.flowPositions[n];for(let s of r.positions){let o=s.chunkPosition.primary;for(let a of o.steps)i(a);if(s.chunkPosition.floats)for(let a of s.chunkPosition.floats)for(let h of a.steps)i(h)}}return t}function Bc(e){for(let[t,i]of e)i!==void 0&&t.restoreState(i)}var jh=class em extends Xa{constructor(t,i,n,r,s,o,a,h,l,c,d,p,f,g,m,w,b){super(t.rootScope,r.width,r.height,r.fontSize,r.fontSize*f.lineHeight),u(this,"style",t),u(this,"xmldoc",i),u(this,"viewport",r),u(this,"clientLayout",s),u(this,"fontMapper",o),u(this,"customRenderer",a),u(this,"fallbackMap",h),u(this,"pageNumberOffset",l),u(this,"documentURLTransformer",c),u(this,"counterStore",d),u(this,"cmykStore",p),u(this,"lang"),u(this,"primaryFlows",{body:!0}),u(this,"rootPageBoxInstance"),u(this,"styler"),u(this,"stylerMap"),u(this,"currentLayoutPosition",null),u(this,"layoutPositionAtPageStart",null),u(this,"currentCascadedPageStyle",null),u(this,"lookupOffset",0),u(this,"faces"),u(this,"pageBoxInstances",{}),u(this,"pageManager"),u(this,"pageNumberContextStack",[]),u(this,"rootPageFloatLayoutContext"),u(this,"pageBreaks",{}),u(this,"pageProgression",null),u(this,"isVersoFirstPage",!1),u(this,"blankPageAtStart",!1),u(this,"pageSheetSize",{}),u(this,"pageSheetHeight",0),u(this,"pageSheetWidth",0),u(this,"invalidPageAreaOnCurrentPage",!1),u(this,"repeatedInvalidPageAreaLayoutPosition",null),u(this,"semanticFootnoteFirstRefOffsets",new Map),u(this,"semanticFootnoteFirstRefOffsetsInitialized",{value:!1}),u(this,"pageGroupPageCounts",Object.create(null)),u(this,"currentPageGroupDocument",null),this.lang=i.lang||n,this.faces=new ZS(this.style.fontDeobfuscator),this.rootPageFloatLayoutContext=zu.createRoot(),this.pageProgression=w||null,this.isVersoFirstPage=!!b;for(let E in t.flowProps){let R=t.flowProps[E],_=me(R,"flow-consume");_&&(_.evaluate(this,"flow-consume")==v.all?this.primaryFlows[E]=!0:delete this.primaryFlows[E])}this.pref=f,this.pubTitle=g,this.docTitle=m;let x=this.counterStore.createCounterListener(this.xmldoc.url),P=this.counterStore.createCounterResolver(this.xmldoc.url,this.style.rootScope,this.style.pageScope);this.styler=new bc(this.xmldoc,this.style.cascade,this.style.rootScope,this,this.primaryFlows,this.style.validatorSet,x,P,this.style.counterStyleStore,this.cmykStore,this.style.validatorSet),P.setStyler(this.styler),this.styler.resetFlowChunkStream(this),this.stylerMap={},this.stylerMap[this.xmldoc.url]=this.styler;let y=this.styler.getTopContainerStyle();this.pageProgression||(this.pageProgression=jg(y)),this.matchStartPageSide(this.styler.breakBeforeValues[0])||(this.pageNumberOffset===0?this.isVersoFirstPage=!0:this.blankPageAtStart=!0);let C=this.style.rootBox;this.rootPageBoxInstance=new xC(C);let S=this.style.cascade.createInstance(this,x,P,this.style.counterStyleStore,this.cmykStore,this.xmldoc.root,this.style.rootScope,this.style.validatorSet,this.styler.styles,this.style.validatorSet);this.styler.cascade.currentPageType=this.styler.cascade.firstPageType,this.rootPageBoxInstance.applyCascadeAndInit(S,y),this.rootPageBoxInstance.resolveAutoSizing(this),this.pageManager=new zC(S,this.style.pageScope,this.rootPageBoxInstance,this,y);let N=this.style.pageProps;N[""]||(N[""]={}),Object.keys(N).forEach(E=>{let R=N[E];this.styler.cascade.applyVarFilter([R],null),jn(R,!0)&&this.styler.cascade.applyVarFilter([R],null),this.styler.cascade.applyCalcFilter(R,this.styler.context),this.styler.cascade.applyCmykFilter(R);let _=Fc(Ho(R),this);this.pageSheetSize[E]={width:_.pageWidth+_.cropOffset*2,height:_.pageHeight+_.cropOffset*2}})}static create(t,i,n,r,s,o,a,h,l,c,d,p,f,g,m,w,b){let x=new em(t,i,n,r,s,o,a,h,l,c,d,p,f,g,m,w,b),P=z("StyleInstance.create");return x.loadFontsAndScripts().then(()=>{P.finish(x)}),P.result()}loadFontsAndScripts(){let t=z("StyleInstance.loadFontsAndScripts"),i=[];for(let n of this.style.fontFaces){if(n.condition&&!n.condition.evaluate(this))continue;let r=KS(n.properties,this),s=new Og(r);i.push(s)}return this.fontMapper.findOrLoadFonts(i,this.faces).then(()=>{iC(this.xmldoc.document,this.viewport.window,this.styler).thenFinish(t)}),t.result()}matchStartPageSide(t){let i=this.pageNumberOffset%2==(this.isVersoFirstPage?1:0),n=this.pageProgression=="ltr";switch(t){case"left":return i!==n;case"right":return i===n;case"recto":return i;case"verso":return!i;default:return!0}}getStylerForDoc(t){let i=this.stylerMap[t.url];if(!i){let n=this.style.store.getStyleForDoc(t),r=new Xa(n.rootScope,this.pageWidth(),this.pageHeight(),this.initialFontSize,this.initialFontSize*Jl.lineHeight),s=this.counterStore.createCounterListener(t.url),o=this.counterStore.createCounterResolver(t.url,n.rootScope,n.pageScope);i=new bc(t,n.cascade,n.rootScope,r,this.primaryFlows,n.validatorSet,s,o,n.counterStyleStore,this.cmykStore,null),this.stylerMap[t.url]=i}return i}registerInstance(t,i){this.pageBoxInstances[t]=i}lookupInstance(t){return this.pageBoxInstances[t]}encounteredFlowChunk(t,i){let n=this.currentLayoutPosition;if(n){n.flows[t.flowName]?i=n.flows[t.flowName]:n.flows[t.flowName]=i;let r=n.flowPositions[t.flowName];r||(r=new _w,n.flowPositions[t.flowName]=r);let s=Nw(t.element),o=new zi(s),a=new Mw(o,t);r.positions.push(a)}}evalSupportsTest(t,i,n){if(n)return t==="selector"?this.evalSupportsSelector(i):!1;if(!t)return!1;if(ze(t))return typeof CSS<"u"&&CSS.supports(`(${t}:${i})`);let r=!0;class s{unknownProperty(l,c){r=!1}invalidPropertyValue(l,c){r=!1}simpleProperty(l,c,d){}}let o=new s,a=_i(this.style.rootScope,new xt(i,null),"");return a?(this.xmldoc.store.validatorSet.validatePropertyAndHandleShorthand(t,a,!1,this.style.rootScope,o),r):!1}getCurrentPageNumberForPageScope(){var t;return this.currentLayoutPosition?this.currentLayoutPosition.page:(t=this.pageNumberContextStack[this.pageNumberContextStack.length-1])!=null?t:0}getPageNumberContextDepth(){return this.pageNumberContextStack.length}pushPageNumberContext(t){this.pageNumberContextStack.push(t)}restorePageNumberContextDepth(t){this.pageNumberContextStack.length=t}evalSupportsSelector(t){class i extends tm{errorMsg(...a){}}let n=new i(null),r=qd(t),s=new xt(r+"{}",n);return new as(He,s,n,"").runParser(Number.POSITIVE_INFINITY,!1,!1,!1,!1)?!n.cascadeParserHandler.invalid:!1}getConsumedOffset(t){let i=Number.POSITIVE_INFINITY;for(let n=0;n<t.positions.length;n++){let r=t.positions[n].chunkPosition.primary,s=r.steps[0].node,o=r.offsetInNode,a=r.after,h=0;for(;s.ownerDocument!=this.xmldoc.document;)h++,s=r.steps[h].node,a=!1,o=0;let l=this.xmldoc.getNodeOffset(s,o,a);l<i&&(i=l)}return i}getNodePositionOffset(t){let i=t.steps[0].node,n=t.offsetInNode,r=t.after,s=0;for(;i.ownerDocument!=this.xmldoc.document;)s++,i=t.steps[s].node,r=!1,n=0;return this.xmldoc.getNodeOffset(i,n,r)}getPageStartOffset(t,i){if(!t)return 0;let n=Number.POSITIVE_INFINITY;for(let r in this.primaryFlows){let s=t.flowPositions[r];if(!i&&(!s||s.positions.length==0)&&this.currentLayoutPosition&&(this.styler.styleUntilFlowIsReached(r),s=this.currentLayoutPosition.flowPositions[r],t!=this.currentLayoutPosition&&s&&(s=s.clone(),t.flowPositions[r]=s)),s)for(let o=0;o<s.positions.length;o++){let a=s.positions[o].chunkPosition.primary,h=this.getNodePositionOffset(a);h<n&&(n=h)}}return n}getPageStartCounterOffsets(t){var i;let n=this.getPageStartOffset(t);if(!isFinite(n))return{counterOffset:n,changeOffset:n};let r=this.xmldoc.body||this.xmldoc.root,s=r?this.getFirstInFlowElementAtOrAfter(r,n):null,o=r?this.xmldoc.getElementOffset(r):n,a=n<=o,h=s===r&&a&&(i=this.getFirstInFlowChildElement(r))!=null?i:s;if(!h)return a?{counterOffset:o,changeOffset:o}:{counterOffset:n,changeOffset:n};let l=this.xmldoc.getElementOffset(h),c=n;return a&&l!==n&&(c=l),l===n&&(this.isInlineLevelElement(h)?c=Math.max(0,n-1):c=this.getDeepestFirstInFlowChildOffset(h)),{counterOffset:c,changeOffset:l}}getPageStartElement(t,i=this.getPageStartOffset(t)){var n;if(!isFinite(i))return null;let r=this.xmldoc.body||this.xmldoc.root;if(!r)return null;let s=this.getFirstInFlowElementAtOrAfter(r,i),o=this.xmldoc.getElementOffset(r),a=i<=o;if(s===r&&a)return(n=this.getFirstInFlowChildElement(r))!=null?n:s;if((s?this.xmldoc.getElementOffset(s):Number.POSITIVE_INFINITY)>i){let h=this.xmldoc.getNodeByOffset(i);if(!Ee(h)){let l=h.nodeType===Node.ELEMENT_NODE?h:h.parentElement;for(;l;){if(this.xmldoc.getElementOffset(l)<=i&&this.isPageBoundaryCandidateElement(l))return l;l=l.parentElement}}}return s}isForcedPageBreakValue(t){return Ze(t)&&t!=="column"&&t!=="region"}hasForcedPageBreakBefore(t){let i=me(t,"break-before");if(!i)return!1;let n=i.evaluate(this,"break-before").toString();return this.isForcedPageBreakValue(n)}getExplicitPageType(t){let i=me(t,"page");if(!i||J(i.value))return null;let n=i.evaluate(this,"page").toString();return!n||n.toLowerCase()==="auto"?null:n}getPageGroupPageType(t){if(this.isInlineLevelElement(t))return null;let i=this.styler.getStyle(t,!1);return i?this.getExplicitPageType(i):null}getPageStartPageType(t){let i=this.getPageStartOffset(t,!0),n=this.getPageStartElement(t,i);for(;n;){let r=this.getPageGroupPageType(n);if(r)return r;if(n===this.xmldoc.root)break;n=n.parentElement}return""}getPageStartPageTypeOverride(t){if(this.getPageStartPageType(t)!=="")return;let i=this.getPageStartOffset(t,!0),n=this.getPageStartElement(t,i);if(n&&this.xmldoc.getElementOffset(n)<i)return"";for(;n&&(n=this.getFirstInFlowChildElement(n),!!n);){let r=this.getPageGroupPageType(n);if(r)return r}return""}getPreviousInFlowSibling(t){let i=t.previousElementSibling;for(;i;){if(this.isPageBoundaryCandidateElement(i))return i;i=i.previousElementSibling}return null}getFirstDocumentFlowElement(){var t;let i=this.xmldoc.body||this.xmldoc.root;if(!i)return null;let n=this.xmldoc.getElementOffset(i),r=this.getFirstInFlowElementAtOrAfter(i,n);return r===i&&(t=this.getFirstInFlowChildElement(i))!=null?t:r}getEffectiveFirstPageType(t){let i=t,n=i?this.getPageGroupPageType(i):null;for(;i;){let r=this.getFirstInFlowChildElement(i);if(!r)return n;let s=this.getPageGroupPageType(r);s&&(n=s),i=r}return n}getEffectivePageGroupStartElement(t){let i=t,n=t;for(;n;){let r=this.getFirstInFlowChildElement(n);if(!r)return i;this.getPageGroupPageType(r)&&(i=r),n=r}return i}resolveFirstPageType(){let t=this.getFirstDocumentFlowElement();return this.getEffectiveFirstPageType(t)}shouldStartPageGroup(t,i,n){let r=this.styler.getStyle(t,!1);if(!r)return!1;if(this.getFirstDocumentFlowElement()===t)return!0;let s=this.xmldoc.getElementOffset(t),o=this.xmldoc.body||this.xmldoc.root,a=this.xmldoc.getElementOffset(o);if(n<=a&&t===o||!this.getPreviousInFlowSibling(t)&&n===s)return!0;if(s!==n)return!1;if(this.hasForcedPageBreakBefore(r))return!0;let h=this.getPreviousInFlowSibling(t);if(!h)return!1;let l=this.styler.getStyle(h,!1);return l?this.getExplicitPageType(l)!==i:!1}updatePageGroupPageIndices(t){let i=this.pageManager.pageCascadeInstance;i.pageTypePageIndices=Object.create(null);let n=t?.startSideOfFlow("body")||null,r=t?.flowPositions.body,s=!!(r&&r.positions.length),o=!!n&&un(n)&&!this.matchPageSide(n)&&!s,a=!(this.blankPageAtStart&&(!t||t.page===1))&&!(t!=null&&t.isBlankPage)&&!o,h=this.getPageStartOffset(t),l=this.getPageStartElement(t,h);if(!l)return;let c=this.getEffectivePageGroupStartElement(l),d=c===l?h:this.xmldoc.getElementOffset(c),p=c.ownerDocument,f=this.currentPageGroupDocument!==p&&a;f&&(this.pageGroupPageCounts=Object.create(null),this.currentPageGroupDocument=p);let g=c;for(;g;){let m=this.getPageGroupPageType(g);if(m){let w=this.pageGroupPageCounts[m]||(this.pageGroupPageCounts[m]=new Map),b=w.get(g)||0;(b>0||a&&(f||this.shouldStartPageGroup(g,m,d)))&&(b+=1,w.set(g,b),(i.pageTypePageIndices[m]||(i.pageTypePageIndices[m]=[])).push(b))}if(g===this.xmldoc.root)break;g=g.parentElement}}preparePageGroupPageIndicesForRerender(t,i){this.pageGroupPageCounts=Object.create(null),this.currentPageGroupDocument=null;for(let n=0;n<i;n++){let r=t[n]||null;this.updatePageGroupPageIndices(r)}}getFirstInFlowElementAtOrAfter(t,i){if(this.isPageBoundaryCandidateElement(t)&&this.xmldoc.getElementOffset(t)>=i)return t;let n=t.ownerDocument.createTreeWalker(t,NodeFilter.SHOW_ELEMENT,{acceptNode:r=>{let s=r;return this.isNormalFlowElement(s)?this.isInlineLevelElement(s)||this.xmldoc.getElementOffset(s)<i?NodeFilter.FILTER_SKIP:NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_REJECT}}).firstChild();return n??null}getDeepestFirstInFlowChildOffset(t){let i=t;for(;;){let n=this.getFirstInFlowChildElement(i);if(!n)return this.xmldoc.getElementOffset(i);i=n}}getFirstInFlowChildElement(t){let i=t.firstChild;for(;i;){if(i.nodeType===Node.TEXT_NODE){if(!Ee(i))return null;i=i.nextSibling;continue}if(i.nodeType!==Node.ELEMENT_NODE){i=i.nextSibling;continue}let n=i;if(this.isNormalFlowElement(n))return this.isInlineLevelElement(n)?null:n;i=i.nextSibling}return null}isPageBoundaryCandidateElement(t){return this.isNormalFlowElement(t)&&!this.isInlineLevelElement(t)}isNormalFlowElement(t){var i,n;let r=this.styler.getStyle(t,!1);if(this.getDisplayValue(t)===v.none)return!1;let s=(i=r?.position)==null?void 0:i.evaluate(this.styler.context,"position"),o=s&&!J(s)?s:v.static;if(Pr(o)||Ur(o))return!1;let a=(n=r?.float)==null?void 0:n.evaluate(this.styler.context,"float");return(a&&!J(a)?a:v.none)===v.none}isInlineLevelElement(t){return Wt(this.getDisplayValue(t))}getDisplayValue(t){var i;let n=this.styler.getStyle(t,!1),r=(i=n?.display)==null?void 0:i.evaluate(this.styler.context,"display");return r&&!J(r)?r:v.inline}getPosition(t,i){if(!t)return 0;let n=Number.POSITIVE_INFINITY;for(let r in this.primaryFlows){let s=t.flowPositions[r];if(!i&&(!s||s.positions.length==0)&&this.currentLayoutPosition&&(this.styler.styleUntilFlowIsReached(r),s=this.currentLayoutPosition.flowPositions[r],t!=this.currentLayoutPosition&&s&&(s=s.clone(),t.flowPositions[r]=s)),s){let o=this.getConsumedOffset(s);o<n&&(n=o)}}return n}dumpLocation(t){Z.debug("Location - page",this.currentLayoutPosition.page),Z.debug(" current:",t),Z.debug(" lookup:",this.lookupOffset);for(let i in this.currentLayoutPosition.flowPositions){let n=this.currentLayoutPosition.flowPositions[i];for(let r of n.positions)Z.debug(" Chunk",`${i}:`,r.flowChunk.startOffset)}}matchPageSide(t){switch(t){case"left":case"right":case"recto":case"verso":return new Je(this.style.pageScope,`${t}-page`).evaluate(this);default:return!0}}updateStartSide(t){for(let i in t.flowPositions){let n=t.flowPositions[i];if(n&&n.positions.length>0){let r=n.positions[0].flowChunk;if(this.getConsumedOffset(n)===r.startOffset){let s=n.positions[0].flowChunk.breakBefore,o=n.startBreakType;n.startBreakType=Ru(nt(o,s))}}}}selectPageMaster(t){var i;let n=this.currentLayoutPosition,r=this.getPosition(n);if(r==Number.POSITIVE_INFINITY&&this.hasActiveRootPageFloatLayoutContext()&&(r=(i=n.highestSeenOffset)!=null?i:this.styler.getReachedOffset()),r==Number.POSITIVE_INFINITY)return null;let s=this.rootPageBoxInstance.children,o;for(let a=0;a<s.length;a++){if(o=s[a],o.pageBox.pseudoName===Gh)continue;let h=1;o.pageBox.pseudoName===$h&&!(this.actualPageWidth&&this.actualPageHeight)&&(h=1/0);let l=o.getProp(this,"utilization");l&&l.isNum()&&(h=l.num);let c=this.queryUnitSize("em",!1),d=this.pageWidth()*this.pageHeight(),p=Math.ceil(h*d/(c*c)),f=this.styler.cascade.currentPageType;this.lookupOffset=this.styler.styleUntil(r,p),this.styler.cascade.currentPageType=f,this.updateStartSide(n),this.layoutPositionAtPageStart=n.clone(),this.initLingering(),this.clearScope(this.style.pageScope);let g=o.getProp(this,"enabled");if(!g||g===v._true){if(n.page===1&&this.blankPageAtStart){o.style={};let m=t.size;t={},m&&(t.size=m)}return this.pageManager.getPageRulePageMaster(o,t)}}throw new Error("No enabled page masters")}flowChunkIsAfterParentFlowForcedBreak(t){let i=this.layoutPositionAtPageStart.flows,n=i[t.flowName].parentFlowName;if(n){let r=t.startOffset,s=i[n].forcedBreakOffsets;if(!s.length||r<s[0])return!1;let o=vi(s.length,c=>s[c]>r)-1,a=s[o],h=this.layoutPositionAtPageStart.flowPositions[n],l=this.getConsumedOffset(h);return a<l?!1:l<a?!0:!this.matchPageSide(h.startBreakType)}return!1}beginIsolatedRootPageFloatLayoutContext(t){let i=this.rootPageFloatLayoutContext;return this.rootPageFloatLayoutContext=zu.createRoot(),t&&this.rootPageFloatLayoutContext.addPageFloatLayoutContextAsPreviousSibling(t),i}endIsolatedRootPageFloatLayoutContext(t){this.rootPageFloatLayoutContext=t}hasActiveRootPageFloatLayoutContext(){return this.rootPageFloatLayoutContext.getDeferredPageFloatContinuations().length>0||this.rootPageFloatLayoutContext.getPageFloatContinuationsDeferredToNext().length>0||this.rootPageFloatLayoutContext.getFloatsDeferredToNextInChildContexts().length>0}hasOnlyDeferredPageFloats(t){return this.noMorePrimaryFlows(t)&&this.hasActiveRootPageFloatLayoutContext()}layoutDeferredPageFloats(t){let i=t.pageFloatLayoutContext,n=i.getDeferredPageFloatContinuations(),r=this.counterStore.currentPageCountersStack.length>0,s=l=>{var c,d;if(!r||l.floatReference!==Ie.PAGE)return!1;let p=((d=(c=this.layoutPositionAtPageStart)==null?void 0:c.flowPositions)==null?void 0:d.body)||null,f=p?this.getConsumedOffset(p):Number.NaN,g=isFinite(f)?f:this.getPageStartOffset(this.layoutPositionAtPageStart,!0),m=this.xmldoc.getNodeOffset(l.nodePosition.steps[0].node,0,!1);return m!=null&&isFinite(g)&&m>g},o=z("layoutDeferredPageFloats"),a=!1,h=0;return o.loopWithFrame(l=>{if(h===n.length){l.breakLoop();return}let c=n[h++],d=c.float;if(s(d)){l.breakLoop();return}let p=new Hn().findByFloat(d),f=p.findPageFloatFragment(d,i);if(f&&f.hasFloat(d)){l.continueLoop();return}else if(i.isForbidden(d)||i.hasPrecedingFloatsDeferredToNext(d)){i.deferPageFloat(c),l.breakLoop();return}t.layoutPageFloatInner(c,p,null,f).then(g=>{if(!g){l.breakLoop();return}let m=i.parent.isInvalidated();if(m){l.breakLoop();return}else i.isInvalidated()&&!m&&(a=!0,i.validate());l.continueLoop()})}).then(()=>{a&&i.invalidate(),o.finish(!0)}),o.result()}getLastAfterPositionIfDeferredFloatsExists(t,i){if(t.pageFloatLayoutContext.getPageFloatContinuationsDeferredToNext().length>0)if(t.lastAfterPosition){let n;return i?(n=i.clone(),n.primary=t.lastAfterPosition):n=new zi(t.lastAfterPosition),n}else return null;else return null}flowRootFormattingContextFor(t){var i,n;return(n=(i=this.currentLayoutPosition.flows[t])==null?void 0:i.formattingContext)!=null?n:new ia(null)}layoutColumn(t,i){let n=this.currentLayoutPosition.flowPositions[i];if(!n||!this.matchPageSide(n.startBreakType))return n?this.layoutDeferredPageFloats(t):I(!0);this.primaryFlows[i]&&t.bands.length>0&&(t.forceNonfitting=!1);let r=z("layoutColumn");return this.layoutDeferredPageFloats(t).then(()=>{if(t.pageFloatLayoutContext.isInvalidated()){r.finish(!0);return}let s=[],o=[],a=!0;r.loopWithFrame(h=>{if(t.pageFloatLayoutContext.hasContinuingFloatFragmentsInFlow(i)){h.breakLoop();return}for(;n.positions.length-o.length>0;){let l=0;for(;o.includes(l);)l++;let c=n.positions[l];if(c.flowChunk.startOffset>this.lookupOffset||this.flowChunkIsAfterParentFlowForcedBreak(c.flowChunk))break;for(let f=l+1;f<n.positions.length;f++){if(o.includes(f))continue;let g=n.positions[f];if(g.flowChunk.startOffset>this.lookupOffset||this.flowChunkIsAfterParentFlowForcedBreak(g.flowChunk))break;g.flowChunk.isBetter(c.flowChunk)&&(c=g,l=f)}let d=c.flowChunk,p=!0;if(t.layout(c.chunkPosition,a,n.breakAfter).then(f=>{if(t.pageFloatLayoutContext.isInvalidated()){h.breakLoop();return}if(a=!1,c.flowChunk.repeated&&(f===null||d.exclusive)&&s.push(l),d.exclusive){o.push(l),h.breakLoop();return}else{let g=!!f||!!t.pageBreakType,m=this.getLastAfterPositionIfDeferredFloatsExists(t,f);if(!f&&t.pageBreakType&&n.positions.length-o.length-1<=0&&(t.pageBreakType=null),t.pageBreakType&&m?(c.chunkPosition=m,n.breakAfter=t.pageBreakType,t.pageBreakType=null):(o.push(l),(f||m)&&(c.chunkPosition=f||m,s.push(l)),n.startBreakType=Ru(t.pageBreakType)),g){h.breakLoop();return}}t.forceNonfitting=!1,p?p=!1:h.continueLoop()}),p){p=!1;return}}h.breakLoop()}).then(()=>{var h;if(!t.pageFloatLayoutContext.isInvalidated()){n.positions=n.positions.filter((c,d)=>s.includes(d)||!o.includes(d)),n.breakAfter==="column"&&(n.breakAfter=null),t.saveDistanceToBlockEndFloats();let l=t.pageFloatLayoutContext.getMaxReachedAfterEdge();if(t.updateMaxReachedAfterEdge(l),t.computedBlockSize===0){let c=t.pageFloatLayoutContext,d=c;for(;d;){let p=d.floatFragments.filter(f=>"isFootnote"in f.area&&f.area.isFootnote);if(p.length>0&&!d.ignoreFootnoteAreaMaxHeight&&p.some(f=>{let g=getComputedStyle(f.area.element),m=w=>w!==""&&w!=="none";return m(g.getPropertyValue("max-block-size"))||m(f.area.vertical?g.maxWidth:g.maxHeight)})){d.ignoreFootnoteAreaMaxHeight=!0;for(let f of p){c.removePageFloatFragment(f,!0);let g=(h=f.continuations[0])==null?void 0:h.float;g&&d.removeFloatDeferredToNext(g)}c.invalidate();break}d=d.parent}}}r.finish(!0)})}),r.result()}createLayoutConstraint(t){let i=this.currentLayoutPosition.page-1,n=this.counterStore.createLayoutConstraint(i);return new Qx([n].concat(t.getLayoutConstraints()))}createAndLayoutColumn(t,i,n,r,s,o,a,h,l,c,d,p,f,g){let m=t.vertical?t.isAutoWidth&&t.isRightDependentOnAutoWidth||t.isAutoHeight:t.isAutoHeight&&t.isTopDependentOnAutoHeight||t.isAutoWidth,w=s.element,b=Bi.create(h,Ie.COLUMN,a,null,null,null),x=this.currentLayoutPosition.clone(),P=z("createAndLayoutColumn"),y;return P.loopWithFrame(C=>{let S=this.createLayoutConstraint(b);if(l>1){let N=this.viewport.document.createElement("div");F(N,"position","absolute"),w.appendChild(N);let E,R,_,X;if(s.vertical){let te=(s.rtl?l-o-1:o)*(d+c)+s.paddingTop,k=parseFloat(w.style.width);E=s.paddingLeft+k-s.width,_=s.width,R=te,X=d}else E=(s.rtl?l-o-1:o)*(d+c)+s.paddingLeft,_=d,R=s.paddingTop,X=s.height;F(N,"left",`${E}px`),F(N,"top",`${R}px`),y=new Vo(N,f,this.clientLayout,S,b,{vertical:s.vertical,rtl:s.rtl,snapWidth:s.snapWidth,snapHeight:s.snapHeight,originX:i,originY:n,left:E,top:R,width:_,height:X,marginLeft:0,marginRight:0,marginTop:0,marginBottom:0,borderLeft:0,borderRight:0,borderTop:0,borderBottom:0,paddingLeft:0,paddingRight:0,paddingTop:0,paddingBottom:0,borderBoxSizing:!1},p,m?[]:r.concat(),this.flowRootFormattingContextFor(a)),y.isNonFirstColumn=o>0,y.forceNonfitting=g}else y=new Vo(w,f,this.clientLayout,S,b,s,p,m?[]:r.concat(),this.flowRootFormattingContextFor(a)),y.isNonFirstColumn=!1;if((y.vertical?y.height:y.width)>=0){let N=y.pageFloatLayoutContext;this.layoutColumn(y,a).then(()=>{N.isInvalidated()||N.finish(),y.pageFloatLayoutContext.isInvalidated()&&!h.isInvalidated()?(y.pageFloatLayoutContext.validate(),this.currentLayoutPosition=x.clone(),y.element!==w&&w.removeChild(y.element),C.continueLoop()):C.breakLoop()})}else y.pageFloatLayoutContext.finish(),C.breakLoop()}).then(()=>{P.finish(y)}),P.result()}getRegionPageFloatLayoutContext(t,i,n,r){i instanceof qn;let s=i.getProp(this,"writing-mode")||null,o=i.getProp(this,"direction")||null;return Bi.createWithContainer(n,t,Ie.REGION,r,null,s,o)}layoutFlowColumnsWithBalancing(t,i,n,r,s,o,a,h,l){let c=this.currentLayoutPosition.clone(),d=this.getRegionPageFloatLayoutContext(o,i,a,h),p=!0,f=()=>(this.currentLayoutPosition=c.clone(),this.layoutFlowColumns(t,i,n,r,s,o,d,a,h,l,p).thenAsync(g=>I(g?{columns:g,position:this.currentLayoutPosition}:null)));return f().thenAsync(g=>{if(!g)return I(null);if(l<=1)return I(g.columns);let m=i.getProp(this,"column-fill")||v.balance,w=this.currentLayoutPosition.flowPositions[h],b=HS(l,m,f,d,a,g.columns,w);return b?(p=!1,o.lock(),d.lock(),b.balanceColumns(g).thenAsync(x=>(o.unlock(),o.validate(),d.unlock(),this.currentLayoutPosition=x.position,I(x.columns)))):I(g.columns)})}layoutFlowColumns(t,i,n,r,s,o,a,h,l,c,d){let p=z("layoutFlowColumns"),f=this.currentLayoutPosition.clone(),g=Oc(this.currentLayoutPosition),m=i.getPropAsNumber(this,"column-gap"),w=c>1?i.getPropAsNumber(this,"column-width"):h.vertical?h.height:h.width,b=i.getActiveRegions(this),x=i.getProp(this,"shape-inside"),P=Wd(x,0,0,h.width,h.height,this),y=new pC(l,this,this.viewport,this.styler,b,this.xmldoc,this.faces,this.style.footnoteProps,this,t,this.customRenderer,this.fallbackMap,this.documentURLTransformer,this.style.pageProps,this.currentCascadedPageStyle,this.semanticFootnoteFirstRefOffsets,this.semanticFootnoteFirstRefOffsetsInitialized),C=0,S=null,N=[];return p.loopWithFrame(E=>{this.createAndLayoutColumn(i,n,r,s,h,C++,l,a,c,m,w,P,y,d).then(R=>{if(o.isInvalidated()){N=null,E.breakLoop();return}if((R.pageBreakType&&R.pageBreakType!=="column"||C===c)&&!a.isInvalidated()&&a.finish(),a.isInvalidated()){C=0,this.currentLayoutPosition=f.clone(),Bc(g),a.validate(),a.isLocked()?(N=null,E.breakLoop()):E.continueLoop();return}S=R,N[C-1]=S,S.pageBreakType&&S.pageBreakType!="column"&&(C=c,S.pageBreakType!="region"&&(this.pageBreaks[l]=!0)),C<c?E.continueLoop():E.breakLoop()})}).then(()=>{p.finish(N)}),p.result()}openPageBox(t,i,n,r,s,o){let a=i.getProp(this,"wrap-flow")===v.auto,h=i.getProp(this,"flow-from"),l=this.viewport.document.createElement("div");l.role=i instanceof Yg?"complementary":"presentation";let c=i.getProp(this,"position");F(l,"position",c?c.name:"absolute");let d=i instanceof Qr;i instanceof qn?n.appendChild(l):n.insertBefore(l,n.firstChild);let p=new _p(l);return p.vertical=i.vertical,p.rtl=i.rtl,p.borderBoxSizing=i.borderBoxSizing,p.exclusions=o,i.prepareContainer(this,p,t,this.faces,this.clientLayout),(p.width<=0||p.height<=0)&&(i instanceof Qr||h&&h.isIdent())&&(this.invalidPageAreaOnCurrentPage=!0,Z.warn("Negative or zero page area size")),p.originX=r,p.originY=s,{boxContainer:l,container:p,offsetX:r+p.left+p.marginLeft+p.borderLeft,offsetY:s+p.top+p.marginTop+p.borderTop,flowName:h,dontExclude:a,forwardOrderInLayout:d,removed:!1}}layoutGeneratedContent(t,i,n,r){let s=n.boxContainer,o=[],a=i.getProp(this,"content");if(a instanceof q&&a.expr instanceof we&&a.expr.str.startsWith("running-element-"))a.visit(new $r(s,this,a,this.counterStore.getExprContentListener()));else if(At(a)){let h="span";a instanceof Qe&&(h="img");let l=this.viewport.document.createElement(h);a.visit(new $r(l,this,a,this.counterStore.getExprContentListener())),s.appendChild(l),h=="img"&&i.transferSingleUriContentProps(this,l,this.faces),i.transferContentProps(this,n.container,t,this.faces);let c=l.querySelectorAll("img[src]");for(let p=0;p<c.length;p++){let f=c[p],g=f.getAttribute("src");if(!g)continue;let m=kt(f,g);o.push(m),t.fetchers.push(m)}let d=l.getAttribute("src");if(d){let p=l.querySelector("img");p||(p=l);let f=kt(p,d);o.push(f),t.fetchers.push(f)}h=="span"&&Gx(l,i.getProp(this,"text-autospace"),i.getProp(this,"text-spacing-trim"),i.getProp(this,"hanging-punctuation"),this.lang,i.vertical)}else i.suppressEmptyBoxGeneration&&(r.removeChild(s),n.removed=!0);return n.removed||i.finishContainer(this,n.container,t,null,1,this.clientLayout,this.faces),o.length?Un(o).thenReturn(!0):I(!0)}layoutPageBoxContent(t,i,n,r,s,o){let a=n.boxContainer,h=n.flowName;if(!h||!h.isIdent())return this.layoutGeneratedContent(t,i,n,r);if(!this.pageBreaks[h.toString()]){let l=z("layoutPageBoxContent.inner"),c=h.toString(),d=i.getPropAsNumber(this,"column-count");return this.layoutFlowColumnsWithBalancing(t,i,n.offsetX,n.offsetY,s,o,n.container,c,d).then(p=>{if(!o.isInvalidated()){let f=p[0];f.element===a&&(n.container=f),n.container.computedBlockSize=Math.max.apply(null,p.map(m=>m.computedBlockSize)),i.finishContainer(this,n.container,t,f,d,this.clientLayout,this.faces);let g=this.currentLayoutPosition.flowPositions[c];g&&g.breakAfter==="region"&&(g.breakAfter=null)}l.finish(!0)}),l.result()}return o.isInvalidated()||i.finishContainer(this,n.container,t,null,1,this.clientLayout,this.faces),I(!0)}excludeOrRemovePageBox(t,i,n,r){if(!t.isAutoHeight||Math.floor(i.container.computedBlockSize)>0){if(!i.removed&&!i.dontExclude){let s=t.getProp(this,"shape-outside"),o=i.container.getOuterShape(s,this);r.push(o)}}else if(t.children.length==0)return n.removeChild(i.boxContainer),!1;return!0}layoutPageBoxChildren(t,i,n,r,s,o=null){let a=z("layoutPageBoxChildren"),h=n.forwardOrderInLayout,l=h?0:i.children.length-1;return a.loop(()=>{for(;l>=0&&l<i.children.length;){let c=i.children[h?l++:l--];if(c===o)continue;let d=this.layoutContainer(t,c,n.boxContainer,n.offsetX,n.offsetY,r,s);if(d.isPending())return d.thenAsync(()=>I(!s.isInvalidated()));if(s.isInvalidated())break}return I(!1)}).then(()=>{a.finish(!0)}),a.result()}layoutPageAreaEstablishingContainer(t,i,n,r,s,o,a){i.reset();let h=z("layoutPageAreaEstablishingContainer"),l=this.openPageBox(t,i,n,r,s,o),c=i.pageAreaEstablishingChild;if(c===null){let d=a.withContainer(l.container);return this.layoutPageBoxContent(t,i,l,n,o,d).then(()=>{if(d.isInvalidated()||!this.excludeOrRemovePageBox(i,l,n,o)){h.finish(d);return}this.layoutPageBoxChildren(t,i,l,o,d).then(()=>{h.finish(d)})}),h.result()}return this.layoutGeneratedContent(t,i,l,n).then(()=>{this.excludeOrRemovePageBox(i,l,n,o),this.layoutPageAreaEstablishingContainer(t,c,l.boxContainer,l.offsetX,l.offsetY,o,a).then(d=>{if(d.isInvalidated()){h.finish(d);return}this.layoutPageBoxChildren(t,i,l,o,d,c).then(()=>{h.finish(d)})})}),h.result()}layoutContainer(t,i,n,r,s,o,a){i.reset();let h=i.getProp(this,"enabled");if(h&&h!==v._true)return I(!0);let l=z("layoutContainer"),c=this.openPageBox(t,i,n,r,s,o);return this.layoutPageBoxContent(t,i,c,n,o,a).then(()=>{if(a.isInvalidated()){l.finish(!0);return}if(!this.excludeOrRemovePageBox(i,c,n,o)){l.finish(!0);return}this.layoutPageBoxChildren(t,i,c,o,a).then(()=>{l.finish(!0)})}),l.result()}processLinger(){let t=this.currentLayoutPosition.page;for(let i in this.currentLayoutPosition.flowPositions){let n=this.currentLayoutPosition.flowPositions[i];for(let r=n.positions.length-1;r>=0;r--){let s=n.positions[r];s.flowChunk.startPage>=0&&s.flowChunk.startPage+s.flowChunk.linger-1<=t&&n.positions.splice(r,1)}}}initLingering(){let t=this.currentLayoutPosition.page;for(let i in this.currentLayoutPosition.flowPositions){let n=this.currentLayoutPosition.flowPositions[i];for(let r=n.positions.length-1;r>=0;r--){let s=n.positions[r];s.flowChunk.startPage<0&&s.flowChunk.startOffset<this.lookupOffset&&(s.flowChunk.startPage=t)}}}noMorePrimaryFlows(t){for(let i in this.primaryFlows){let n=t.flowPositions[i];if(n&&n.positions.length>0)return!1}return!0}hasSameFlowPositions(t,i){if(t===i)return!0;if(!t||!i)return!1;let n=Object.keys(t.flowPositions),r=Object.keys(i.flowPositions);if(n.length!==r.length)return!1;for(let s of n)if(!t.flowPositions[s].isSamePosition(i.flowPositions[s]))return!1;return!0}checkRepeatedInvalidPageArea(t){let i=this.invalidPageAreaOnCurrentPage;if(this.invalidPageAreaOnCurrentPage=!1,!i){this.repeatedInvalidPageAreaLayoutPosition=null;return}if(t.isBlankPage||this.noMorePrimaryFlows(t))return;if(!this.hasSameFlowPositions(this.layoutPositionAtPageStart,t)){this.repeatedInvalidPageAreaLayoutPosition=null;return}let n=!!this.repeatedInvalidPageAreaLayoutPosition&&this.hasSameFlowPositions(this.repeatedInvalidPageAreaLayoutPosition,this.layoutPositionAtPageStart);if(this.repeatedInvalidPageAreaLayoutPosition=this.layoutPositionAtPageStart.clone(),n)throw new Error("Negative or zero page area size")}layoutNextPage(t,i){var n,r,s,o;let a=t.container===t.bleedBox;this.pageBreaks={},i?(this.currentLayoutPosition=i.clone(),this.styler.replayFlowElementsFromOffset(i.highestSeenOffset)):(this.currentLayoutPosition=new Dw,this.styler.replayFlowElementsFromOffset(-1)),this.lang&&t.bleedBox.setAttribute("lang",this.lang),this.invalidPageAreaOnCurrentPage=!1,i=this.currentLayoutPosition;let h=i.startSideOfFlow("body");i.isBlankPage=un(h)&&this.matchPageSide(h),t.isBlankPage=i.isBlankPage,i.page++;let l=this.hasOnlyDeferredPageFloats(i),c=l?void 0:this.getPageStartPageTypeOverride(i);if(c===""?t.pageType="":c&&(t.pageType=c),t.pageType==null){let y=i.page===1?this.resolveFirstPageType():null,C=(n=this.styler.cascade.currentPageType)!=null?n:this.styler.cascade.previousPageType,S=t.isBlankPage?this.styler.cascade.previousPageType:l?C:y??this.styler.cascade.currentPageType;if(t.pageType=S,!t.pageType){let N=this.getPageStartPageType(i);N&&(t.pageType=N)}t.pageType=(r=t.pageType)!=null?r:"",this.styler.cascade.previousPageType=this.styler.cascade.currentPageType}this.updatePageGroupPageIndices(i),this.clearScope(this.style.pageScope),this.layoutPositionAtPageStart=i.clone();let d=Oc(i),p=a?{}:this.pageManager.getCascadedPageStyle(t.pageType);if(this.currentCascadedPageStyle=p,this.styler.cascade.applyVarFilter([p],null),jn(p,!0)&&this.styler.cascade.applyVarFilter([p],null),this.styler.cascade.applyCalcFilter(p,this.styler.context),this.styler.cascade.applyCmykFilter(p),!a){let y=new Je(this.style.pageScope,"left-page");t.side=y.evaluate(this)?"left":"right",t.container.setAttribute("data-vivliostyle-page-side",t.side)}let f=this.selectPageMaster(p);if(!f)return I(null);let g=0;if(!a){t.setAutoPageWidth(f.pageBox.specified.width.value===ns),t.setAutoPageHeight(f.pageBox.specified.height.value===rs);let{counterOffset:y,changeOffset:C}=this.getPageStartCounterOffsets(this.layoutPositionAtPageStart);isFinite(y)||(y=this.lookupOffset,C=this.lookupOffset),isFinite(y)&&this.styler.styleUntil(y,0);let S=this.styler.getCounterSnapshotAtOffset(y),N=C===y?S:this.styler.getCounterSnapshotAtOffset(C);S||(S=this.styler.getLastCounterSnapshot()),N||(N=S);let E=N&&N.offset===C?N:null;this.counterStore.setCurrentPageDocCounters((s=S?.counters)!=null?s:null,(o=E?.changes)!=null?o:null,E?.changeTypes),this.counterStore.setCurrentPage(t),this.counterStore.updatePageCounters(p,this);let R=Fc(Ho(p),this);this.setPageSizeAndBleed(R,t),FC(p,R,t,this),g=R.bleedOffset+R.bleed}let m=!a&&f.getProp(this,"writing-mode")||v.horizontal_tb;this.pageVertical=m!=v.horizontal_tb;let w=f.getProp(this,"direction")||v.ltr,b=Bi.create(this.rootPageFloatLayoutContext,Ie.PAGE,null,null,m,w,null,t.side),x=z("layoutNextPage"),P=null;return x.loopWithFrame(y=>{this.layoutPageAreaEstablishingContainer(t,f,t.bleedBox,g,g,[],b).then(C=>{if(P=C,b.isInvalidated()||C.finish(),b.isInvalidated()){for(this.currentLayoutPosition=this.layoutPositionAtPageStart.clone(),Bc(d),b.validate();t.bleedBox.lastChild;)t.bleedBox.removeChild(t.bleedBox.lastChild);y.continueLoop()}else y.breakLoop()})}).then(()=>{t.pageFloatLayoutContext=P,f.adjustPageLayout(this,t,this.clientLayout),a||(this.processLinger(),i=this.currentLayoutPosition,this.checkRepeatedInvalidPageArea(i),Object.keys(i.flowPositions).forEach(C=>{let S=i.flowPositions[C],N=S.breakAfter;N&&(N==="page"||!this.matchPageSide(N))&&(S.breakAfter=null)})),this.currentLayoutPosition=this.layoutPositionAtPageStart=null,i.highestSeenOffset=this.styler.getReachedOffset();let y=this.style.store.getTriggersForDoc(this.xmldoc);t.finish(y,this.clientLayout),this.noMorePrimaryFlows(i)&&!this.hasActiveRootPageFloatLayoutContext()&&(i=null),x.finish(i)}),x.result()}setPageSizeAndBleed(t,i){this.actualPageWidth=t.pageWidth,this.actualPageHeight=t.pageHeight,this.pageSheetWidth=t.pageWidth+t.cropOffset*2,this.pageSheetHeight=t.pageHeight+t.cropOffset*2,i.container.style.width=`${this.pageSheetWidth}px`,i.container.style.height=`${this.pageSheetHeight}px`,i.bleedBox.style.left=`${t.bleedOffset}px`,i.bleedBox.style.right=`${t.bleedOffset}px`,i.bleedBox.style.top=`${t.bleedOffset}px`,i.bleedBox.style.bottom=`${t.bleedOffset}px`,i.bleedBox.style.padding=`${t.bleed}px`}},sP=class ho extends Do{constructor(t,i,n,r,s,o,a,h){super(n,i,s,o,a,r,h),u(this,"masterHandler",t),u(this,"insideRegion",!1)}startPageTemplateRule(){}startPageMasterRule(t,i,n){let r=new _g(this.masterHandler.pageScope,t,i,n,this.masterHandler.rootBox,this.condition,this.owner.getBaseSpecificity(),this.layer);this.owner.delegateTo(s=>new PC(r.scope,this.owner,r,this.validatorSet,s))}startWhenRule(t){let i=t.expr;this.condition!=null&&(i=qt(this.scope,this.condition,i)),this.owner.delegateTo(n=>new ho(this.masterHandler,this.owner,this.scope,this.validatorSet,i,this,this.regionId,n))}startLayerRule(t){let i=this.cascade.registerLayer(this.flavor,this.layer,t);this.owner.delegateTo(n=>{let r=new ho(this.masterHandler,this.owner,this.scope,this.validatorSet,this.condition,this,this.regionId,n);return r.layer=i,r})}startDefineRule(){this.owner.delegateTo(t=>new Ax(this.scope,this.owner,t))}startFontFaceRule(){let t={};this.masterHandler.fontFaces.push({properties:t,condition:this.condition,priority:this.getBaseSpecificity(),layer:this.layer}),this.owner.delegateTo(i=>new ao(this.scope,this.owner,null,t,this.masterHandler.validatorSet,i,"font-face",this.layer))}startCounterStyleRule(t){this.owner.delegateTo(i=>new nP(this.scope,this.owner,{},this.masterHandler.validatorSet,t,this.masterHandler.counterStyles,i,this.layer))}startFlowRule(t){let i=this.masterHandler.flowProps[t];i||(i={},this.masterHandler.flowProps[t]=i),this.owner.delegateTo(n=>new ao(this.scope,this.owner,null,i,this.masterHandler.validatorSet,n,void 0,this.layer))}startViewportRule(){let t={};this.masterHandler.viewportProps.push(t),this.owner.delegateTo(i=>new ao(this.scope,this.owner,this.condition,t,this.masterHandler.validatorSet,i,void 0,this.layer))}startFootnoteRule(t){let i=this.masterHandler.footnoteProps;if(t){let n=hi(i,"_pseudos");i=n[t],i||(i={},n[t]=i)}this.owner.delegateTo(n=>new Kg(this.scope,this.owner,this.masterHandler.validatorSet,i,n,this.layer))}startRegionRule(){this.insideRegion=!0,this.startSelectorRule()}startPageRule(){this.owner.delegateTo(t=>new ZC(this.masterHandler.pageScope,this.owner,this,this.validatorSet,this.masterHandler.pageProps,t)).startPageRule()}startRuleBody(){if(Do.prototype.startRuleBody.call(this),this.insideRegion){this.insideRegion=!1;let t=`R${this.masterHandler.regionCount++}`;this.special("region-id",D(t)),this.endRule(),this.owner.delegateTo(i=>new ho(this.masterHandler,this.owner,this.scope,this.validatorSet,this.condition,this,t,i)).startRuleBody()}}},tm=class extends Qv{constructor(e){let t=new ja(null);super(t,i=>new sP(i,i,t,e,null,null,null,null)),u(this,"validatorSet",e),u(this,"rootScope"),u(this,"pageScope"),u(this,"rootBox"),u(this,"cascadeParserHandler"),u(this,"regionCount",0),u(this,"fontFaces",[]),u(this,"counterStyles",new t0),u(this,"footnoteProps",{}),u(this,"flowProps",{}),u(this,"viewportProps",[]),u(this,"pageProps",{}),this.rootScope=t,this.pageScope=new ja(this.rootScope),this.rootBox=new yC(this.rootScope),this.cascadeParserHandler=this.initialSlave}};function Mc(e,t){return e.text!=null?{url:e.url?Fe(Mn(e.url),an):e.url,text:e.text,flavor:t,classes:null,media:null}:{url:e.url?Fe(Mn(e.url),an):e.url,flavor:t,classes:null,media:null}}function oP(e,t){return t.parseOPSResource(e)}var aP=class extends ah{constructor(e,t=null,i=null){super(oP,"document"),u(this,"fontDeobfuscator",e),u(this,"styleByKey",{}),u(this,"styleFetcherByKey",{}),u(this,"styleByDocURL",{}),u(this,"triggersByDocURL",{}),u(this,"validatorSet",x0()),u(this,"styleSheets",[]),u(this,"triggerSingleDocumentPreprocessing",!1),this.setStyleSheets(t,i)}getStyleForDoc(e){return this.styleByDocURL[e.url]}getTriggersForDoc(e){return this.triggersByDocURL[e.url]}setStyleSheets(e,t){this.clearStyleSheets(),e&&e.forEach(this.addAuthorStyleSheet,this),t&&t.forEach(this.addUserStyleSheet,this)}clearStyleSheets(){this.styleSheets.splice(0)}addAuthorStyleSheet(e){this.styleSheets.push(Mc(e,"Author"))}addUserStyleSheet(e){this.styleSheets.push(Mc(e,"User"))}parseOPSResource(e){let t=z("OPSDocStore.load"),i=e.url,n=jo(i);return Jg(e,this).then(r=>{var s;if(!r){t.finish(null);return}if(this.triggerSingleDocumentPreprocessing){let p=Dt("PREPROCESS_SINGLE_DOCUMENT");for(let f=0;f<p.length;f++)try{p[f](r.document)}catch(g){Z.warn("Error during single document preprocessing:",g)}}let o=[],a=r.document.getElementsByTagNameNS("http://www.idpf.org/2007/ops","trigger");for(let p=0;p<a.length;p++){let f=a[p],g=f.getAttributeNS("http://www.w3.org/2001/xml-events","observer"),m=f.getAttributeNS("http://www.w3.org/2001/xml-events","event"),w=f.getAttribute("action"),b=f.getAttribute("ref");g&&m&&w&&b&&o.push({observer:g,event:m,action:w,ref:b})}this.triggersByDocURL[i]=o;let h=[];if(h.push({url:Fe("user-agent-base.css",Ti),text:hp,flavor:"UA",classes:null,media:null}),h.push({url:Fe("user-agent-page.css",Ti),text:lp,flavor:"UA",classes:null,media:null}),h.push({url:Fe("user-agent-counter-styles.css",Ti),text:dp,flavor:"UA",classes:null,media:null}),n)h.push({url:Fe("user-agent-toc.css",Ti),text:up,flavor:"UA",classes:null,media:null});else{let p=r.document.querySelectorAll("style, link, meta");for(let f of p){let g=f.namespaceURI,m=f.localName;if(g=="http://www.w3.org/1999/xhtml")if(m=="style"){let w=f.getAttribute("class"),b=f.getAttribute("media"),x=f.getAttribute("title");h.push({url:i,text:f.textContent,flavor:"Author",classes:x?w:null,media:b})}else if(m=="link"){let w=f.getAttribute("href"),b=(s=f.getAttribute("rel"))==null?void 0:s.split(/\s+/),x=f.getAttribute("class"),P=f.getAttribute("media");if(w&&b!=null&&b.includes("stylesheet")&&(!b.includes("alternate")||x)){let y=Fe(w,i),C=f.getAttribute("title");h.push({url:y,text:null,classes:C?x:null,media:P,flavor:"Author"})}}else m=="meta"&&f.getAttribute("name")=="viewport"&&h.push({url:i,text:this.processViewportMeta(f),flavor:"Author",classes:null,media:null})}for(let f=0;f<this.styleSheets.length;f++)h.push(this.styleSheets[f])}let l="";for(let p=0;p<h.length;p++)l+=h[p].url,l+="^",h[p].text&&(l+=h[p].text),l+="^";let c=this.styleByKey[l];if(c){this.styleByDocURL[i]=c,t.finish(r);return}let d=this.styleFetcherByKey[l];d||(d=new Zo(()=>{let p=z("fetchStylesheet"),f=0,g=new tm(this.validatorSet);return p.loop(()=>{if(f<h.length){let m=h[f++];return g.startStylesheet(m.flavor),m.text!=null?vp(m.text,g,m.url,m.classes,m.media).thenReturn(!0):wp(m.url,g,m.classes,m.media)}return I(!1)}).then(()=>{let m=g.cascadeParserHandler.finish();c=new rP(this,g.rootScope,g.pageScope,m,g.rootBox,iP(g.fontFaces),g.footnoteProps,g.flowProps,g.viewportProps,g.pageProps,g.counterStyles),this.styleByKey[l]=c,delete this.styleFetcherByKey[l],p.finish(c)}),p.result()},`FetchStylesheet ${i}`),this.styleFetcherByKey[l]=d,d.start()),d.get().then(p=>{this.styleByDocURL[i]=p,t.finish(r)})}),t.result()}processViewportMeta(e){return""}},Mr="\u25B8",_c="\u25BE",lP="\u25B9";function Xh(e){let t=Array.from(e.querySelectorAll("nav[*|type],nav[epub\\:type]"));if(t.length>0||(t=Array.from(e.querySelectorAll("[role=doc-toc]")),t.length>0))return t;let i="nav,.toc,#toc,#table-of-contents,#contents,[role=directory]";for(let n of e.querySelectorAll(i)){if(t.find(s=>s.contains(n)))continue;let r=n;/^h[1-6]$/.test(r.localName)&&(r.previousElementSibling?r=r.nextElementSibling:r=r.parentElement),r&&r.querySelector("li a[href]")&&t.push(r)}return t}function hP(e){let t=Xh(e),i=[];for(let n of t)for(let r of n.querySelectorAll("li a[href]"))i.push(r);return i}var uP=class{constructor(e,t,i,n,r,s,o,a,h,l,c){u(this,"store",e),u(this,"url",t),u(this,"lang",i),u(this,"clientLayout",n),u(this,"fontMapper",r),u(this,"rendererFactory",o),u(this,"fallbackMap",a),u(this,"documentURLTransformer",h),u(this,"counterStore",l),u(this,"cmykStore",c),u(this,"pref"),u(this,"page",null),this.pref=ld(s),this.pref.spreadView=!1}setAutoHeight(e,t){if(t--!=0){for(let i=e.firstChild;i;i=i.nextSibling)if(i.nodeType==1){let n=i;Ii(n,"height","auto")!="auto"&&(F(n,"height","auto"),this.setAutoHeight(n,t)),Ii(n,"position","static")=="absolute"&&(F(n,"position","relative"),this.setAutoHeight(n,t))}}}makeCustomRenderer(e){let t=this.rendererFactory.makeCustomRenderer(e);return(i,n,r)=>{let s=r.behavior;if(s)switch(s.toString()){case"toc-node-anchor":r.color=v.inherit,r["text-decoration"]=v.none;break;case"toc-node":r.display=v.block,r.margin=Me,r.padding=Me,r["padding-inline-start"]=new B(1.25,"em");break;case"toc-node-first-child":r.display=v.inline_block,r.margin=new B(.2,"em"),r["vertical-align"]=v.top,r.color=v.inherit,r["text-decoration"]=v.none;break;case"toc-container":r.padding=Me;break}if(!s||s.toString()!="toc-node"&&s.toString()!="toc-container")return t(i,n,r);let o=i.firstChild;o&&o.nodeType!==1&&Ee(o)&&i.replaceChild(i.ownerDocument.createComment(o.textContent),o);let a=n.getAttribute("data-adapt-class");if(a=="toc-node"){let l=n.firstChild;l.textContent!=Mr&&(l.textContent=Mr,F(l,"cursor","pointer"),l.addEventListener("click",cP,!1),l.setAttribute("role","button"),l.setAttribute("aria-expanded","false"),n.setAttribute("aria-expanded","false"),n.style.height!=="0px"&&(l.tabIndex=0))}let h=n.ownerDocument.createElement("div");if(h.setAttribute("data-adapt-process-children","true"),s.toString()=="toc-node"){let l=n.ownerDocument.createElement("div");if(l.textContent=lP,F(l,"margin","0.2em 0 0 -1em"),F(l,"margin-inline-start","-1em"),F(l,"margin-inline-end","0"),F(l,"display","inline-block"),F(l,"width","1em"),F(l,"text-align","center"),F(l,"vertical-align","top"),F(l,"cursor","default"),F(l,"font-family","Menlo,sans-serif"),h.appendChild(l),F(h,"overflow","hidden"),h.setAttribute("data-adapt-class","toc-node"),h.setAttribute("role","treeitem"),a=="toc-node"||a=="toc-container"){F(h,"height","0px");let c=i.firstElementChild;c&&c.localName==="a"&&(c.tabIndex=-1)}else n.setAttribute("role","tree")}else a=="toc-node"&&(h.setAttribute("data-adapt-class","toc-container"),h.setAttribute("role","group"),h.setAttribute("aria-hidden","true"));return I(h)}}showTOC(e,t,i,n,r){if(this.page)return I(this.page);let s=z("showTOC"),o=new Ep(e,e);this.page=o;let a=Ua(this.url);return this.store.load(a).then(h=>{for(let p of Xh(h.document))p.setAttribute("data-vivliostyle-role","doc-toc");let l=this.store.getStyleForDoc(h),c=l.sizeViewport(i,1e5,r);t=new $o(t.window,c.fontSize,0,e,c.width,c.height);let d=this.makeCustomRenderer(h);jh.create(l,h,this.lang,t,this.clientLayout,this.fontMapper,d,this.fallbackMap,0,this.documentURLTransformer,this.counterStore,this.cmykStore,this.pref,null,null).then(p=>{p.layoutNextPage(o,null).then(()=>{this.setAutoHeight(e,2),s.finish(o)})})}),s.result()}hideTOC(){this.page&&(this.page.container.style.visibility="hidden",this.page.container.setAttribute("aria-hidden","true"))}isTOCVisible(){return!!this.page&&this.page.container.style.visibility==="visible"}getTOC(){if(!this.page)return[];function e(n){if(!n)return[];let r=n.querySelectorAll(":scope > [role=treeitem] > a[href]");return Array.from(r).map(t)}function t(n){let r=new URL(n.href),[,s]=r.hash.match(/^#?(.*)$/),o=n.innerText,a=n.parentElement.querySelector("[role=group]"),h=e(a);return{id:s,title:o,children:h}}let i=this.page.container.querySelector("[role=tree]");return e(i)}};function cP(e){let t=e.target,i=t.textContent==Mr;t.textContent=i?_c:Mr;let n=t.parentNode;t.setAttribute("aria-expanded",i?"true":"false"),n.setAttribute("aria-expanded",i?"true":"false");let r=n.firstChild;for(;r;){if(r.nodeType===1){let s=r,o=s.getAttribute("data-adapt-class");if(o==="toc-container"){if(s.setAttribute("aria-hidden",i?"false":"true"),s.firstChild){r=s.firstChild;continue}}else if(o==="toc-node"&&(s.style.height=i?"auto":"0px",s.children.length>=2&&(s.children[1].tabIndex=i?0:-1),s.children.length>=3&&(s.children[0].tabIndex=i?0:-1,!i))){let a=s.children[0];if(a.textContent==_c){a.textContent=Mr,a.setAttribute("aria-expanded","false"),s.setAttribute("aria-expanded","false"),r=s.children[2];continue}}}for(;!r.nextSibling&&r.parentNode!==n;)r=r.parentNode;r=r.nextSibling}e.stopPropagation()}function Hs(e){let t={};return Object.keys(e).forEach(i=>{t[i]=Array.from(e[i])}),t}function dP(e){let t=Object.create(null);return Object.keys(e).forEach(i=>{t[i]=new Map(e[i])}),t}function pP(e){return/\.(x?html?|xht|svg)(?:[#?]|$)/i.test(e)||/^(?:about:|data:|blob:)/i.test(gt(e))}function Dc(e){return e.split("/").map(encodeURIComponent).join("/")}var zc=class im extends aP{constructor(t=null,i=null){super(null,t,i),u(this,"plainXMLStore"),u(this,"jsonStore"),u(this,"opfByURL",{}),u(this,"primaryOPFByEPubURL",{}),u(this,"deobfuscators",{}),u(this,"documents",{}),this.fontDeobfuscator=this.makeDeobfuscatorFactory(),this.plainXMLStore=eP(),this.jsonStore=qv()}static create(t,i){let n=new im(t,i);return n.triggerSingleDocumentPreprocessing=!0,I(n)}makeDeobfuscatorFactory(){return t=>this.deobfuscators[t]}loadAsPlainXML(t,i,n){return this.plainXMLStore.load(t,i,n)}startLoadingAsPlainXML(t){this.plainXMLStore.fetch(t)}loadAsJSON(t,i,n){return this.jsonStore.load(t,i,n)}loadWebPubManifest(t,i){this.loadAsJSON(t,!0).then(n=>{if(!n){this.reportLoadError(t),i.finish(null);return}Ji.fromWebPubManifest(this,t,n,void 0,t).then(r=>{i.finish(r)})})}loadPubDoc(t){let i=z("loadPubDoc");if(/\.opf(?:[#?]|$)/i.test(t)){let[,n,r]=t.match(/^((?:.*\/)?)([^/]*)$/);this.loadOPF(n,r).thenFinish(i)}else/\.json(?:ld)?(?:[#?]|$)/i.test(t)?this.loadWebPubManifest(t,i):pP(t)?this.loadWebPub(t).then(n=>{if(n){i.finish(n);return}this.reportLoadError(t),i.finish(null)}):Jo(t,void 0,"HEAD").then(n=>{if(n.status>=400)this.loadEPUBDoc(t).then(r=>{if(r){i.finish(r);return}Z.error(`Failed to fetch a source document from ${t} (${n.status}${n.statusText?" "+n.statusText:""})`),i.finish(null)});else if(!n.status&&!n.responseXML&&!n.responseText&&!n.responseBlob&&!n.contentType&&/\/[^/.]+(?:[#?]|$)/.test(t)&&(t=t.replace(/([#?]|$)/,"/$1")),n.contentType=="application/oebps-package+xml"){let[,r,s]=t.match(/^((?:.*\/)?)([^/]*)$/);this.loadOPF(r,s).thenFinish(i)}else n.contentType=="application/ld+json"||n.contentType=="application/webpub+json"||n.contentType=="application/audiobook+json"||n.contentType=="application/json"?this.loadWebPubManifest(t,i):this.loadWebPub(t).then(r=>{if(r){i.finish(r);return}this.loadEPUBDoc(t).then(s=>{if(s){i.finish(s);return}this.reportLoadError(t),i.finish(null)})})});return i.result()}loadEPUBDoc(t){let i=z("loadEPUBDoc");t.endsWith("/")||(t=t+"/"),this.startLoadingAsPlainXML(t+"META-INF/encryption.xml");let n=t+"META-INF/container.xml";return this.loadAsPlainXML(n).then(r=>{if(r){let s=r.doc().child("container").child("rootfiles").child("rootfile").attribute("full-path");for(let o of s)if(o){this.loadOPF(t,o).thenFinish(i);return}}i.finish(null)}),i.result()}loadOPF(t,i){let n=t+i,r=this.opfByURL[n];if(r)return I(r);let s=z("loadOPF");return this.loadAsPlainXML(n,!0,`Failed to fetch EPUB OPF ${n}`).then(o=>{if(!o)this.reportLoadError(n);else{let a=h=>{this.opfByURL[n]=h,this.primaryOPFByEPubURL[t]=h,s.finish(h)};this.plainXMLStore.resources[t+"META-INF/container.xml"]?this.loadAsPlainXML(t+"META-INF/encryption.xml").then(h=>{a(Ji.fromXMLDoc(this,t,o,h))}):a(Ji.fromXMLDoc(this,t,o,null))}}),s.result()}loadWebPub(t){let i=z("loadWebPub");return this.load(t).then(n=>{if(!n)this.reportLoadError(t),i.finish(null);else if(n.document.querySelector("a[href='META-INF/'],a[href$='/META-INF/']"))i.finish(null);else{let r=n.document,s=r.querySelector("link[rel='publication'],link[rel='manifest'][type='application/webpub+json']");if(s){let o=s.getAttribute("href");if(/^#/.test(o)){let a=ql(r.getElementById(o.substr(1)).textContent);Ji.fromWebPubManifest(this,t,a,r).then(h=>{i.finish(h)})}else{let a=Fe(s.getAttribute("href"),t);this.loadAsJSON(a,!0,`Failed to fetch Publication Manifest ${a}`).then(h=>{Ji.fromWebPubManifest(this,t,h,r,a).then(l=>{i.finish(l)})})}}else Ji.fromWebPubManifest(this,t,{},r).then(o=>{o.toc&&o.toc.src===n.url&&Xh(r).length===0&&(o.toc=null),i.finish(o)})}}),i.result()}addDocument(t,i){let n=z("EPUBDocStore.load"),r=gt(t);return(this.documents[r]=this.parseOPSResource({status:200,statusText:"",url:r,contentType:i.contentType,responseText:null,responseXML:i,responseBlob:null})).thenFinish(n),n.result()}reportLoadError(t){let i=r=>r.replace(/([^:/?#]|^)[/?#].*/,"$1"),n=()=>{let r=i(t);return!(r===i(an)||Object.keys(this.resources).find(s=>this.resources[s]&&i(s)===r)||!/^https?:?\/\/[^/]/.test(t)||/\.(xhtml|xht|xml|opf)$/i.test(t))};t.startsWith("data:")?Z.error(`Failed to load ${t}. Invalid data.`):t.startsWith("http:")&&an.startsWith("https:")&&!/^http:\/\/(localhost|127\.0\.0\.1|\[::1\])(:\d+)?(?:[/?#]|$)/.test(t)?Z.error(`Failed to load ${t}. Mixed Content ("http:" content on "https:" context) is not allowed.`):n()?Z.error(`Failed to load ${t}. This may be caused by network error, incorrect URL, or the server not allowing cross-origin resource sharing (CORS).`):Z.error(`Failed to load ${t}. The target resource is invalid.`)}load(t){let i=gt(t),n=this.documents[i];if(n)return n.isPending()?n:I(n.get());{let r=z("EPUBDocStore.load");return n=super.load(i,!0,`Failed to fetch a source document from ${i}`),n.then(s=>{s?r.finish(s):this.reportLoadError(i)}),r.result()}}processViewportMeta(t){let i=t.getAttribute("content");if(!i)return"";let n={},r;for(;(r=i.match(/^,?\s*([-A-Za-z_.][-A-Za-z_0-9.]*)\s*=\s*([-+A-Za-z_0-9.]*)\s*/))!=null;)i=i.substr(r[0].length),n[r[1]]=r[2];let s=n.width-0,o=n.height-0;if(s&&o){let a=!!Object.values(this.primaryOPFByEPubURL).find(h=>h.prePaginated);return`@-epubx-viewport{width:${s}px;height:${o}px;}`+(a?`@page{size:${s}px ${o}px;margin:0;}`:"@page{margin:0;}")}return""}},Vc=class{constructor(){u(this,"id",null),u(this,"src",""),u(this,"mediaType",null),u(this,"title",null),u(this,"itemRefElement",null),u(this,"spineIndex",-1),u(this,"compressedSize",0),u(this,"compressed",null),u(this,"epage",0),u(this,"epageCount",0),u(this,"startPage",null),u(this,"skipPagesBefore",null),u(this,"itemProperties"),this.itemProperties=Vm}initWithElement(e,t){this.id=e.getAttribute("id"),this.src=Fe(e.getAttribute("href"),t),this.mediaType=e.getAttribute("media-type");let i=e.getAttribute("properties");i&&(this.itemProperties=Ym(i.split(/\s+/)))}initWithParam(e){this.spineIndex=e.index,this.id=`item${e.index+1}`,this.src=e.url,this.startPage=e.startPage,this.skipPagesBefore=e.skipPagesBefore}};function fP(e){return e.id}function gP(e){return t=>{let i=z("deobfuscator");return mP("SHA-1",e).then(n=>{let r=t.slice(0,1040),s=t.slice(1040,t.size);Gv(r).then(o=>{let a=new DataView(o);for(let h=0;h<a.byteLength;h++){let l=a.getUint8(h);l^=n[h%20],a.setUint8(h,l)}i.finish(pp([a,s]))})}),i.result()}}function mP(e,t){let i=z("makeDigest"),n=i.suspend();return window.crypto.subtle.digest(e,new TextEncoder().encode(t)).then(r=>{n.schedule(new Uint8Array(r))}),i.result()}var Ri={dcterms:"http://purl.org/dc/terms/",marc:"http://id.loc.gov/vocabulary/",media:"http://www.idpf.org/epub/vocab/overlays/#",rendition:"http://www.idpf.org/vocab/rendition/#",onix:"http://www.editeur.org/ONIX/book/codelists/current.html#",xsd:"http://www.w3.org/2001/XMLSchema#",opf:"http://www.idpf.org/2007/opf"},xr="http://idpf.org/epub/vocab/package/meta/#",je={language:`${Ri.dcterms}language`,title:`${Ri.dcterms}title`,creator:`${Ri.dcterms}creator`,layout:`${Ri.rendition}layout`,titleType:`${xr}title-type`,displaySeq:`${xr}display-seq`,alternateScript:`${xr}alternate-script`,role:`${xr}role`};function yP(e,t){let i={};return(n,r)=>{var s,o,a,h,l,c;let d,p,f=n.r||i,g=r.r||i;if(e==je.title&&(d=((s=f[je.titleType])==null?void 0:s[0].v)=="main",p=((o=g[je.titleType])==null?void 0:o[0].v)=="main",d!=p))return d?-1:1;let m=parseInt((a=f[je.displaySeq])==null?void 0:a[0].v,10);isNaN(m)&&(m=Number.MAX_VALUE);let w=parseInt((h=g[je.displaySeq])==null?void 0:h[0].v,10);return isNaN(w)&&(w=Number.MAX_VALUE),m!=w?m-w:e!=je.language&&t&&(d=((l=f[je.language]||f[je.alternateScript])==null?void 0:l[0].v)==t,p=((c=g[je.language]||g[je.alternateScript])==null?void 0:c[0].v)==t,d!=p)?d?-1:1:n.o-r.o}}function vP(e,t){let i;if(!t)i=Ri;else{i={};for(let p in Ri)i[p]=Ri[p];let d;for(;(d=t.match(/^\s*([A-Z_a-z\u007F-\uFFFF][-.A-Z_a-z0-9\u007F-\uFFFF]*):\s*(\S+)/))!=null;)t=t.substr(d[0].length),i[d[1]]=d[2]}let n=d=>{if(d){let p=d.match(/^\s*(([^:]*):)?(\S+)\s*$/);if(p){let f=p[2]?i[p[2]]:xr;if(f)return f+p[3]}}return null},r=1,s=e.childElements().forEachNonNull(d=>{if(d.localName=="meta"){let p=n(d.getAttribute("property"));if(p)return{name:p,value:d.textContent,id:d.getAttribute("id"),order:r++,refines:d.getAttribute("refines"),lang:null,scheme:n(d.getAttribute("scheme")),role:null}}else if(d.namespaceURI=="http://purl.org/dc/elements/1.1/")return{name:Ri.dcterms+d.localName,order:r++,lang:d.getAttribute("xml:lang"),value:d.textContent,id:d.getAttribute("id"),refines:null,scheme:null,role:d.getAttribute("role")||d.getAttribute("opf:role")};return null}),o=wa(s,d=>d.refines),a=d=>Km(d,(p,f)=>p.map(g=>{let m={v:g.value,o:g.order};g.scheme&&(m.s=g.scheme);let w=o[`#${g.id}`]||[];if(w.length||g.lang||g.role){g.lang&&w.push({name:je.language,value:g.lang,lang:null,id:null,refines:g.id,scheme:null,order:g.order,role:null}),g.role&&w.push({name:je.role,value:g.role,lang:null,id:null,refines:g.id,scheme:null,order:g.order,role:null});let b=wa(w,x=>x.name);m.r=a(b)}return m})),h=a(wa(s,d=>d.refines?null:d.name)),l=null;h[je.language]&&(l=h[je.language][0].v);let c=d=>{for(let p in d){let f=d[p];f.sort(yP(p,l));for(let g=0;g<f.length;g++){let m=f[g].r;m&&c(m)}}};return c(h),h}function wP(){let e=window.MathJax;return e?e.Hub:null}var Uc={"application/xhtml+xml":!0,"image/jpeg":!0,"image/png":!0,"image/svg+xml":!0,"image/gif":!0,"audio/mp3":!0},Va="viv-id-";function ur(e,t){if(e.startsWith("data:"))return e===t?"":e;if(t){let i=Fe("",t);return e===i||e+"/"===i?"":(i.charAt(i.length-1)!="/"&&(i+="/"),e.substr(0,i.length)==i?decodeURIComponent(e.substr(i.length)):null)}else return e}var Ji=class Sr{constructor(t,i,n){u(this,"store",t),u(this,"pubURL",i),u(this,"opfXML"),u(this,"items"),u(this,"spine"),u(this,"itemMap"),u(this,"itemMapByPath"),u(this,"bindings",{}),u(this,"lang",null),u(this,"epageCount",0),u(this,"prePaginated",!1),u(this,"epageIsRenderedPage",!0),u(this,"epageCountCallback",null),u(this,"metadata",{}),u(this,"toc",null),u(this,"cover",null),u(this,"fallbackMap",{}),u(this,"pageProgression",null),u(this,"documentURLTransformer"),this.opfXML=n.opfXML,this.items=n.items,this.spine=n.spine,this.itemMap=n.itemMap,this.itemMapByPath=n.itemMapByPath,this.documentURLTransformer=this.createDocumentURLTransformer()}createDocumentURLTransformer(){let t=this;class i{constructor(){u(this,"canonicalDocumentURLCache",new Map)}getCanonicalDocumentURL(r){var s,o;let a=gt(wn(r)),h=this.canonicalDocumentURLCache.get(a);if(h)return h;for(let l of t.spine){let c=gt(wn(l.src));if(c===a)return this.canonicalDocumentURLCache.set(a,c),c;let d=(o=(s=t.store)==null?void 0:s.get(c))==null?void 0:o.url;if(d&&gt(wn(d))===a)return this.canonicalDocumentURLCache.set(a,c),c}return this.canonicalDocumentURLCache.set(a,a),a}transformFragment(r,s){let o=this.getCanonicalDocumentURL(s)+(r?`#${r}`:"");return Va+sd(o,":")}transformURL(r,s){let o=r.match(/^([^#]*)#?(.*)$/);if(o){let a=this.getCanonicalDocumentURL(o[1]||wn(s)),h=decodeURIComponent(o[2]);if(a&&t.spine.some(l=>gt(wn(l.src))===a))return`#${this.transformFragment(h,a)}`}return r}restoreURL(r){r.charAt(0)==="#"&&(r=r.substring(1)),r.indexOf(Va)===0&&(r=r.substring(Va.length));let s=qm(r,":").match(/^([^#]*)#?(.*)$/);return s?[s[1],s[2]]:[]}}return new i}getMetadata(){return this.metadata}getPathFromURL(t){return ur(t,this.pubURL)}static fromXMLDoc(t,i,n,r){let s=n.doc().child("package"),o=null,a=s.attribute("unique-identifier")[0];if(a){let y=n.getElement(`${n.url}#${a}`);y&&(o=y.textContent.replace(/[ \n\r\t]/g,""))}let h={},l=null,c=null,d=s.child("manifest").child("item").asArray().map(y=>{let C=new Vc,S=y;C.initWithElement(S,n.url);let N=S.getAttribute("fallback");return N&&!Uc[C.mediaType]&&(h[C.src]=N),!l&&C.itemProperties.nav&&(l=C),!c&&C.itemProperties["cover-image"]&&(c=C),C}),p=su(d,fP),f=su(d,y=>ur(y.src,i)),g={};for(let y in h){let C=y;for(;;){let S=p[h[C]];if(!S)break;if(Uc[S.mediaType]){g[y]=S.src;break}C=S.src}}let m=s.child("spine").child("itemref").asArray().map((y,C)=>{let S=y,N=S.getAttribute("idref"),E=p[N];return E&&(E.itemRefElement=S,E.spineIndex=C),E}),w=new Sr(t,i,{opfXML:n,items:d,spine:m,itemMap:p,itemMapByPath:f});w.toc=l,w.cover=c,w.fallbackMap=g;let b=s.child("spine").attribute("page-progression-direction")[0];b&&(w.pageProgression=Zc(b));let x=r?r.doc().child("encryption").child("EncryptedData").predicate(Lc.withChild("EncryptionMethod",Lc.withAttribute("Algorithm","http://www.idpf.org/2008/embedding"))).child("CipherData").child("CipherReference").attribute("URI"):[],P=s.child("bindings").child("mediaType").asArray();for(let y=0;y<P.length;y++){let C=P[y].getAttribute("handler"),S=P[y].getAttribute("media-type");S&&C&&p[C]&&(w.bindings[S]=p[C].src)}if(w.metadata=vP(s.child("metadata"),s.attribute("prefix")[0]),w.metadata[je.language]&&(w.lang=w.metadata[je.language][0].v),w.metadata[je.layout]&&(w.prePaginated=w.metadata[je.layout][0].v==="pre-paginated"),x.length>0&&o){let y=gP(o);for(let C=0;C<x.length;C++)t.deobfuscators[i+x[C]]=y}return w.prePaginated&&w.assignAutoPages(),w}assignAutoPages(){let t=0;for(let i of this.spine){let n=this.prePaginated?1:Math.ceil(i.compressedSize/1024);i.epage=t,i.epageCount=n,t+=n}this.epageCount=t,this.epageCountCallback&&this.epageCountCallback(this.epageCount)}setEPageCountMode(t){this.epageIsRenderedPage=t||this.prePaginated}countEPages(t){if(this.epageCountCallback=t,this.epageIsRenderedPage)return this.prePaginated&&this.epageCount==0&&this.assignAutoPages(),I(!0);let i=0,n=0,r=z("countEPages");return r.loopWithFrame(s=>{if(n===this.spine.length){s.breakLoop();return}let o=this.spine[n++];o.epage=i,this.store.load(o.src).then(a=>{if(!a){s.continueLoop();return}let h=1800,l=a.lang||this.lang;l&&l.match(/^(ja|ko|zh)/)&&(h/=3),o.epageCount=Math.ceil(a.getTotalOffset()/h),i+=o.epageCount,this.epageCount=i,this.epageCountCallback&&this.epageCountCallback(this.epageCount),s.continueLoop()})}).thenFinish(r),r.result()}static buildChapters(t,i){let n={},r={},s=[],o=s,a=new Zg(null,"",new DOMParser().parseFromString("<spine></spine>","text/xml"));return i.forEach(h=>{let l=new Vc;l.initWithParam(h),l.id;let c=a.document.createElement("itemref");c.setAttribute("idref",l.id),a.root.appendChild(c),l.itemRefElement=c,n[l.id]=l;let d=ur(h.url,t);d==null&&(d=h.url),r[d]=l,s.push(l)}),{opfXML:a,items:s,spine:o,itemMap:n,itemMapByPath:r}}static fromChapters(t,i,n,r){let s=new Sr(t,i,Sr.buildChapters(i,n));return r?t.addDocument(n[0].url,r).thenReturn(s):I(s)}static fromWebPubManifest(t,i,n,r,s){var o,a,h,l;let c=null;n.readingProgression&&(c=n.readingProgression);let d={},p=n.name||((o=n.metadata)==null?void 0:o.title)||r?.title;p&&(d[je.title]=(Array.isArray(p)?p:[p]).map(S=>{var N;return{v:(N=S.value)!=null?N:S}}));let f=n.author||n.creator||((a=n.metadata)==null?void 0:a.author)||Array.from((h=r?.querySelectorAll("meta[name='author'], meta[name='DC.Creator']"))!=null?h:[]).map(S=>S.content);f&&f.length!==0&&(d[je.creator]=(Array.isArray(f)?f:[f]).map(S=>{var N;return{v:(N=S.name)!=null?N:S}}));let g=n.inLanguage||((l=n.metadata)==null?void 0:l.language)||r?.documentElement.lang||r?.documentElement.getAttribute("xml:lang");g&&(d[je.language]=(Array.isArray(g)?g:[g]).map(S=>({v:S})));let m=gt(i),w=ur(m,i),b=w!==null?Dc(w):/^(?:about:|blob:)/i.test(m)?m:null;if(!n.readingOrder&&r&&b!==null){n.readingOrder=[b];for(let S of hP(r)){let N=S.getAttribute("href");if(/^(https?:)?\/\//.test(N)||/\.(jpe?g|png|gif|pdf|svg|mml)([#?]|$)/.test(N))continue;let E=gt(Fe(N,i)),R=ur(E,i),_=R!==null?Dc(R):E;n.readingOrder.indexOf(_)==-1&&n.readingOrder.push(_)}}let x=[],P=0,y=-1;[n.readingOrder,n.resources].forEach(S=>{S instanceof Array&&S.forEach(N=>{let E=S===n.readingOrder,R=typeof N=="string"?N:N.url||N.href,_=typeof N=="string"?"":N.encodingFormat||N.href&&N.type||"";if(E||_==="text/html"||_==="application/xhtml+xml"||!_&&N.rel!=="stylesheet"&&/(^|\/)([^/]+\.(x?html|htm|xht)|[^/.]*)([#?]|$)/.test(R)){let X=s?s.replace(/\/[^/]+$/,"/"):i,te={url:Fe(Mn(R),X),index:P++,startPage:null,skipPagesBefore:null};N.rel==="contents"&&y===-1&&(y=te.index),x.push(te)}})});let C=z("fromWebPubManifest");return Sr.fromChapters(t,i,x).then(S=>{var N,E;S.pageProgression=c,S.metadata=d,y!==-1&&(S.toc=S.items[y]),S.toc||(S.toc=s?(N=S.items[0])!=null?N:null:S.itemMapByPath[w]);let R=(E=n.readingOrder)==null?void 0:E.length;R&&R<S.items.length&&S.items.splice(R),C.finish(S)}),C.result()}getCFI(t,i){let n=this.spine[t],r=z("getCFI");return this.store.load(n.src).then(s=>{let o=s.getNodeByOffset(i),a=null;if(o){let h=s.getNodeOffset(o,0,!1),l=i-h,c=new yu;c.prependPathFromNode(o,l,!1,null),n.itemRefElement&&c.prependPathFromNode(n.itemRefElement,0,!1,null),a=c.toString()}r.finish(a)}),r.result()}resolveFragment(t){return hn("resolveFragment",i=>{if(!t){i.finish(null);return}let n=new yu;n.fromString(t);let r;if(this.opfXML){let s=n.navigate(this.opfXML.document);if(s.node.nodeType!=1||s.after||!s.ref){i.finish(null);return}let o=s.node,a=o.getAttribute("idref");if(o.localName!="itemref"||!a||!this.itemMap[a]){i.finish(null);return}r=this.itemMap[a],n=s.ref}else r=this.spine[0];this.store.load(r.src).then(s=>{let o=n.navigate(s.document),a=s.getNodeOffset(o.node,o.offset,o.after);i.finish({spineIndex:r.spineIndex,offsetInItem:a,pageIndex:-1})})},(i,n)=>{Z.warn(n,"Cannot resolve fragment:",t),i.finish(null)})}resolveEPage(t){return hn("resolveEPage",i=>{if(t<=0){i.finish({spineIndex:0,offsetInItem:0,pageIndex:-1});return}if(this.epageIsRenderedPage){let s=this.spine.findIndex(h=>h.epage==0&&h.epageCount==0||h.epage<=t&&h.epage+h.epageCount>t);s==-1&&(s=this.spine.length-1);let o=this.spine[s];(!o||o.epageCount==0)&&(o=this.spine[--s]);let a=Math.floor(t-o.epage);i.finish({spineIndex:s,offsetInItem:-1,pageIndex:a});return}let n=vi(this.spine.length,s=>{let o=this.spine[s];return o.epage+o.epageCount>t});n==this.spine.length&&n--;let r=this.spine[n];this.store.load(r.src).then(s=>{t-=r.epage,t>r.epageCount&&(t=r.epageCount);let o=0;if(t>0){let a=s.getTotalOffset();o=Math.round(a*t/r.epageCount),o==a&&o--}i.finish({spineIndex:n,offsetInItem:o,pageIndex:-1})})},(i,n)=>{Z.warn(n,"Cannot resolve epage:",t),i.finish(null)})}getEPageFromPosition(t){let i=this.spine[t.spineIndex];if(this.epageIsRenderedPage){let r=i.epage+t.pageIndex;return I(r)}if(t.offsetInItem<=0)return I(i.epage);let n=z("getEPage");return this.store.load(i.src).then(r=>{let s=r.getTotalOffset(),o=Math.min(s,t.offsetInItem);n.finish(i.epage+o*i.epageCount/s)}),n.result()}},Ws=(e,t)=>({page:e,position:{spineIndex:e.spineIndex,pageIndex:t,offsetInItem:e.offset}}),bP=class{constructor(e,t,i,n,r,s,o=()=>{}){u(this,"opf",e),u(this,"viewport",t),u(this,"fontMapper",i),u(this,"pageSheetSizeReporter",r),u(this,"pageSheetSizeTruncator",o),u(this,"spineItems",[]),u(this,"spineItemLoadingContinuations",[]),u(this,"pref"),u(this,"clientLayout"),u(this,"counterStore"),u(this,"cmykStore"),u(this,"tocAutohide",!1),u(this,"tocVisible",!1),u(this,"tocView"),u(this,"deferredReferencePages",[]),u(this,"resolvingDeferredReferences",!1),u(this,"processedDeferredReferencePages",null),u(this,"deferredFollowingSpineRelayoutStart",null),u(this,"deferredPageReplacements",new Map),u(this,"relayoutingFollowingSpines",!1),u(this,"relayoutingFollowingSpineStart",null),u(this,"renderingAllPages",!1),u(this,"paginationProgress",{totalOffsetsBySpine:[],renderedOffsetsBySpine:[],totalOffsetsReady:!1,lastReportedPages:0,lastReportedFraction:0,lastReportedSpineIndex:-1,lastReportedHref:""}),u(this,"renderingPageTasks",new Map),this.pref=ld(n),this.clientLayout=new gC(t),this.counterStore=new jy(e.documentURLTransformer),this.cmykStore=new Md,s!=null&&s.length&&this.cmykStore.registerCmykReserveMap(s)}getPage(e){let t=this.spineItems[e.spineIndex];return t?t.pages[e.pageIndex]:null}waitForPreviousSpines(e,t){if(t||e===0)return I(!0);let i=z("waitForPreviousSpines");return i.loopWithFrame(n=>{let r=!0;for(let s=0;s<e;s++){let o=this.spineItems[s];if(!o||!o.complete){r=!1;break}}r?n.breakLoop():i.sleep(100).then(()=>{n.continueLoop()})}).then(()=>{i.finish(!0)}),i.result()}getCurrentPageProgression(e){if(this.opf.pageProgression)return this.opf.pageProgression;{let t=this.spineItems[e?e.spineIndex:0];return t?t.instance.pageProgression:null}}finishPageContainer(e,t,i){t.container.style.display="none",t.container.style.visibility="visible",t.container.style.position="",t.container.style.top="",t.container.style.left="",t.container.setAttribute("data-vivliostyle-page-side",t.side);let n=e.pages[i],r=this.takeDeferredPageReplacement(e.item.spineIndex,t);if(t.isFirstPage=e.item.spineIndex==0&&i==0,e.pages[i]=t,this.opf.epageIsRenderedPage){if(i==0&&e.item.spineIndex>0){let s=this.opf.spine[e.item.spineIndex-1];e.item.epage=s.epage+s.epageCount}e.item.epageCount=e.pages.length,this.opf.epageCount=this.opf.spine.reduce((s,o)=>s+o.epageCount,0),this.opf.epageCountCallback&&this.opf.epageCountCallback(this.opf.epageCount)}if(n)e.instance.viewport.contentContainer.replaceChild(t.container,n.container);else{let s=null;if(i>0)s=e.pages[i-1].container.nextElementSibling;else for(let o=e.item.spineIndex+1;o<this.spineItems.length;o++){let a=this.spineItems[o];if(a&&a.pages[0]){s=a.pages[0].container;break}}e.instance.viewport.contentContainer.insertBefore(t.container,s)}n&&this.dispatchPageReplacement(n,t),r&&r!==n&&this.dispatchPageReplacement(r,t),this.pageSheetSizeReporter({width:e.instance.pageSheetWidth,height:e.instance.pageSheetHeight},e.instance.pageSheetSize,e.item.spineIndex,e.instance.pageNumberOffset+i)}getRenderedPageCount(){let e=0;for(let t of this.spineItems)t&&(e+=t.pages.length);return e}getRenderedPageSizeCount(){let e=0;for(let t of this.spineItems)t&&(e=Math.max(e,t.instance.pageNumberOffset+t.pages.length));return e}markSpineItemCompleteIfReady(e){e.complete=e.layoutPositions.length===e.pages.length,e.complete&&(e.instance.viewport.layoutBox.removeAttribute("style"),this.flushDeferredPageReplacements(e))}getTotalOffsetForViewItem(e){let t=e.item.spineIndex,i=this.paginationProgress.totalOffsetsBySpine[t];return i==null&&(i=e.xmldoc.getTotalOffset(),this.paginationProgress.totalOffsetsBySpine[t]=i),i}collectTotalOffsets(){if(this.paginationProgress.totalOffsetsReady)return I(!0);let e=this.paginationProgress.totalOffsetsBySpine,t=0,i=z("collectTotalOffsets");return i.loopWithFrame(n=>{if(t===this.opf.spine.length){n.breakLoop();return}let r=t++;if(e[r]!=null){n.continueLoop();return}let s=this.opf.spine[r];this.opf.store.load(s.src).then(o=>{o&&(e[r]=o.getTotalOffset()),n.continueLoop()})}).then(()=>{this.paginationProgress.totalOffsetsReady=!0,i.finish(!0)}),i.result()}getTotalOffsetAll(){let e=0;for(let t of this.paginationProgress.totalOffsetsBySpine)t&&(e+=t);return e}getRenderedOffsetAll(){var e;let t=0,i=this.paginationProgress.totalOffsetsBySpine,n=this.paginationProgress.renderedOffsetsBySpine;for(let r=0;r<i.length;r++){let s=i[r];if(!s)continue;let o=(e=n[r])!=null?e:0;t+=Math.min(s,o)}return t}reportPaginationProgress(e,t){var i,n;let r=Dt("PAGINATION_PROGRESS");if(!r.length)return;let s=e.item.spineIndex,o=this.getTotalOffsetForViewItem(e),a=o;t&&(a=e.instance.getPosition(t,!0)),a<0&&(a=0),a>o&&(a=o);let h=this.paginationProgress.renderedOffsetsBySpine[s];h!=null&&a<h&&(a=h),this.paginationProgress.renderedOffsetsBySpine[s]=a;let l=this.getRenderedPageCount(),c=this.getTotalOffsetAll(),d=this.getRenderedOffsetAll(),p=c>0?d/c:0;p<this.paginationProgress.lastReportedFraction?p=this.paginationProgress.lastReportedFraction:this.paginationProgress.lastReportedFraction=p,l>this.paginationProgress.lastReportedPages&&(this.paginationProgress.lastReportedPages=l);let f=e.item.src;s>=((i=this.paginationProgress.lastReportedSpineIndex)!=null?i:-1)?(this.paginationProgress.lastReportedSpineIndex=s,this.paginationProgress.lastReportedHref=f):f=(n=this.paginationProgress.lastReportedHref)!=null?n:f;let g={fraction:p,pages:this.paginationProgress.lastReportedPages,href:f};for(let m of r)try{m(g)}catch(w){Z.warn(w)}}isInCounterResolveScope(){return this.counterStore.currentPageCountersStack.length>0}hasNonEmptyPageType(e){return!!(e!=null&&e.pageType)&&e.pageType!==""}hasPageTypeBoundaryBetween(e,t){return e?.pageType!=null&&t?.pageType!=null&&e.pageType!==t.pageType}resolvePageTypeForRenderSlot(e,t,i,n,r,s,o){let a=!1;if(n){let h=this.hasPageTypeBoundaryBetween(r,n),l=s?.pageType===n.pageType,c=n.offset!==t.offset,d=o&&!c&&i>0;if(a=n.pageType!=null&&(d||i===0||n.pageType===r?.pageType),t.pageType=a?n.pageType:null,o){let p=e.instance.getPageStartPageTypeOverride(t.position);p===""?t.pageType="":p&&(t.pageType=p)}if(!o&&!a){let p=i>1&&h&&l?r.pageType:null;e.instance.styler.cascade.currentPageType=p,e.instance.pageManager.pageCascadeInstance.currentPageType=p}}!o&&this.hasNonEmptyPageType(r)&&this.hasNonEmptyPageType(s)&&r.pageType!==s.pageType&&(!n||n.pageType==null)&&(t.pageType=r.pageType)}evaluateNextPageRelayout(e,t,i,n,r){if(!e||t&&!i)return{needsRelayout:!1,shouldCascade:!1};let s=!!t&&(e.pageType===t.pageType||!t.pageType);return t&&n&&(!r||s)&&(t.pageType==null||e.pageType==null||e.pageType!==t.pageType)&&(t.pageType=null),{needsRelayout:!0,shouldCascade:!!t||!r}}preparePageCountersForRender(e,t){let i=e.pages[t],n=e.pageCounterStarts[t];i&&n&&(this.counterStore.currentPageCounters=Hs(n));let r=Hs(this.counterStore.currentPageCounters);return(!n||!i)&&(e.pageCounterStarts[t]=r),i}maybeRelayoutFollowingPage(e,t,i,n){if(!t)return I(!0);let r=e.layoutPositions[t.page];e.layoutPositions[t.page]=t;let s=e.pages[t.page],o=!!i&&n.offset!==i.offset,a=e.instance.hasActiveRootPageFloatLayoutContext(),h=!r||!t.isSamePosition(r)||t.highestSeenOffset!==r.highestSeenOffset||o||a,l=this.isInCounterResolveScope(),c=this.evaluateNextPageRelayout(i,s,h,o,l);return c.needsRelayout?(e.complete=!1,c.shouldCascade?this.renderSinglePage(e,t):I(!0)):I(!0)}resolveUnresolvedReferencesForPage(e,t,i,n){let r=z("resolveUnresolvedReferencesForPage"),s=this.isInCounterResolveScope();s&&this.deferReferencesForPage(e,t,i,n);let o=s?[]:this.counterStore.getUnresolvedRefsToPage(t),a=0,h=t;return r.loopWithFrame(l=>{if(a++,a>o.length){l.breakLoop();return}let c=o[a-1];if(c.refs=c.refs.filter(d=>!d.isResolved()&&this.counterStore.isReferenceTracked(d)),c.refs.length===0){l.continueLoop();return}this.getPageViewItem(c.spineIndex).then(d=>{var p;if(!d){l.continueLoop();return}let f=d.instance.styler.cascade,g=d.instance.pageManager.pageCascadeInstance,m={currentPageType:f.currentPageType,previousPageType:f.previousPageType},w={currentPageType:g.currentPageType,previousPageType:g.previousPageType},b=dP(d.instance.pageGroupPageCounts),x=d.instance.currentPageGroupDocument,P=d.instance.scopes;d.instance.scopes={};let y=c.pageIndex<d.pages.length-1,C=!!d.pages[c.pageIndex],S=C&&y,N=S&&c.pageIndex>0?(p=d.pages[c.pageIndex-1])==null?void 0:p.pageFloatLayoutContext:null,E=S?d.instance.beginIsolatedRootPageFloatLayoutContext(N):null;this.counterStore.pushPageCounters(c.pageCounters),this.counterStore.pushReferencesToSolve(c.refs);let R=d.layoutPositions[c.pageIndex];C&&d.instance.preparePageGroupPageIndicesForRerender(d.layoutPositions,c.pageIndex),this.renderSinglePage(d,R).then(_=>{S&&d.instance.endIsolatedRootPageFloatLayoutContext(E);let X=f.currentPageType;f.currentPageType=m.currentPageType,f.previousPageType=m.previousPageType,g.currentPageType=w.currentPageType,g.previousPageType=w.previousPageType,d.instance.pageGroupPageCounts=b,d.instance.currentPageGroupDocument=x,d.instance.scopes=P;let te=Hs(this.counterStore.currentPageCounters);this.counterStore.popPageCounters(),this.counterStore.popReferencesToSolve();let k=()=>{let A=_.pageAndPosition.page;this.resolveDeferredReferencesAfterCounterScope(d,A,_.pageAndPosition.position.pageIndex,_.nextLayoutPosition).then(()=>l.continueLoop())};_.pageAndPosition.position.spineIndex===h.spineIndex&&_.pageAndPosition.position.pageIndex===i&&(h=_.pageAndPosition.page),h.pageType&&h.pageType!==m.currentPageType&&X!==_.pageAndPosition.page.pageType&&(f.currentPageType=h.pageType);let M=d!==e,T=d.pages.length,$=d.layoutPositions[T],O=d.instance.hasActiveRootPageFloatLayoutContext();if($&&!O){let A=M?Hs(this.counterStore.currentPageCounters):null;M&&(this.counterStore.currentPageCounters=te);let L=T;this.renderSinglePage(d,$).then(()=>{M&&this.markSpineItemCompleteIfReady(d);let W=d.pages.length-L;if(M&&W>0){this.counterStore.adjustPageCountersOfLaterSpines(d.item.spineIndex,W),this.counterStore.updateTargetCounterNodesInPages(d.pages),this.updateEPageRangesAfterPageCountChange(d,d.pages.length);let G=d.item.spineIndex;for(let U=G+1;U<this.spineItems.length;U++){let V=this.spineItems[U];if(V){for(let K of V.pageCounterStarts)K!=null&&K.page&&(K.page=K.page.map(ne=>ne+W));this.counterStore.updatePageCounterNodesInPages(V.pages,V.pageCounterStarts)}}if(A){let U=A.page;U&&(A.page=U.map(V=>V+W))}}A&&(this.counterStore.currentPageCounters=A),k()});return}M&&this.markSpineItemCompleteIfReady(d),k()})})}).then(()=>{h.container.parentElement||(h=e.pages[i]),h.isLastPage=!n&&e.item.spineIndex===this.opf.spine.length-1,h.isLastPage&&this.counterStore.finishLastPage(this.viewport),h.container.setAttribute("data-vivliostyle-page-index",i),h.container.setAttribute("data-vivliostyle-spine-index",h.spineIndex),r.finish(h)}),r.result()}resolveDeferredReferencesAfterCounterScope(e,t,i,n){this.deferReferencesForPage(e,t,i,n);let r=this.deferredReferencePages;if(this.isInCounterResolveScope()||this.resolvingDeferredReferences||r.length===0)return I(t);let s=z("resolveDeferredReferencesAfterCounterScope");return this.resolvingDeferredReferences=!0,this.processedDeferredReferencePages=new Map,s.handler=(o,a)=>{this.resolvingDeferredReferences=!1,this.processedDeferredReferencePages=null,o.task.raise(a,o.parent)},s.loopWithFrame(o=>{var a;let h=r.shift();if(!h){o.breakLoop();return}let l=((a=h.viewItem.pages)==null?void 0:a[h.pageIndex])||h.page;if(!this.hasUnresolvedReferencesToPage(l)){o.continueLoop();return}let c=this.processedDeferredReferencePages.get(h.viewItem);c||(c=new Set,this.processedDeferredReferencePages.set(h.viewItem,c)),c.add(h.pageIndex),this.resolveUnresolvedReferencesForPage(h.viewItem,l,h.pageIndex,h.nextLayoutPosition).then(()=>o.continueLoop())}).then(()=>{this.resolvingDeferredReferences=!1,this.processedDeferredReferencePages=null,s.finish(t)}),s.result()}hasUnresolvedReferencesToPage(e){return this.counterStore.getUnresolvedRefsToPage(e).some(t=>t.refs.some(i=>!i.isResolved()))}deferReferencesForPage(e,t,i,n){var r,s,o;if((s=(r=this.processedDeferredReferencePages)==null?void 0:r.get(e))!=null&&s.has(i))return;let a=((o=e.pages)==null?void 0:o[i])||t;if(!this.hasUnresolvedReferencesToPage(a))return;let h=this.deferredReferencePages,l=h.find(c=>c.viewItem===e&&c.pageIndex===i);l?(l.page=a,l.nextLayoutPosition=n):h.push({viewItem:e,page:a,pageIndex:i,nextLayoutPosition:n})}deferFollowingSpinesForRelayout(e){this.deferSpinesForRelayoutFrom(e+1)}deferSpinesForRelayoutFrom(e){this.deferredFollowingSpineRelayoutStart=this.deferredFollowingSpineRelayoutStart==null?e:Math.min(this.deferredFollowingSpineRelayoutStart,e)}removeDeferredReferencePages(e){for(let t=this.deferredReferencePages.length-1;t>=0;t--)e(this.deferredReferencePages[t])&&this.deferredReferencePages.splice(t,1)}updateEPageRangesAfterPageCountChange(e,t){var i,n;if(!this.opf.epageIsRenderedPage)return;let r=e.item.spineIndex;e.item.epageCount=t;let s=e.item.epage+t;for(let o=r+1;o<this.opf.spine.length;o++){let a=this.opf.spine[o];a.epage=s,s+=a.epageCount}this.opf.epageCount=this.opf.spine.reduce((o,a)=>o+a.epageCount,0),(n=(i=this.opf).epageCountCallback)==null||n.call(i,this.opf.epageCount)}rememberDeferredPageReplacement(e,t){let i=this.deferredPageReplacements,n=i.get(e);n||(n=[],i.set(e,n)),n.includes(t)||n.push(t)}takeDeferredPageReplacement(e,t){let i=this.deferredPageReplacements.get(e);if(!i)return null;let n=i.findIndex(s=>s.offset===t.offset&&!!s.isBlankPage==!!t.isBlankPage);if(n<0)return null;let[r]=i.splice(n,1);return i.length===0&&this.deferredPageReplacements.delete(e),r}dispatchPageReplacement(e,t){e.dispatchEvent({type:"replaced",target:null,currentTarget:null,preventDefault:null,newPage:t})}retireStalePages(e,t){for(let i of t)this.rememberDeferredPageReplacement(e,i),i.container.remove()}clearFollowingSpineRelayoutState(){this.relayoutingFollowingSpines=!1,this.relayoutingFollowingSpineStart=null}flushDeferredPageReplacements(e){let t=e.item.spineIndex,i=this.deferredPageReplacements.get(t);if(!i)return;let n=e.pages;for(let r of i){let s=n.reduce((o,a)=>{if(!o)return a;let h=Math.abs(a.offset-r.offset),l=Math.abs(o.offset-r.offset);if(h!==l)return h<l?a:o;let c=!!a.isBlankPage==!!r.isBlankPage,d=!!o.isBlankPage==!!r.isBlankPage;return c&&!d?a:o},null);s&&this.dispatchPageReplacement(r,s)}this.deferredPageReplacements.delete(t)}updateRetainedTargetCounters(){let e=[];for(let i of this.spineItems)i&&e.push(...i.pages);let t=new Set;return this.counterStore.updateTargetCounterNodesInPages(e,t),this.counterStore.updateTargetTextNodesInPages(e,t),this.counterStore.unresolveReferencesForTargets(t),t}resolveChangedRetainedTargetReferences(e){let t=new Map;for(let r of e){let s=this.counterStore.pageIndicesById[r];if(!s)continue;let o=this.spineItems[s.spineIndex],a=o?.pages[s.pageIndex];if(!o||!a)continue;let h=`${s.spineIndex}:${s.pageIndex}`;t.set(h,{viewItem:o,page:a,pageIndex:s.pageIndex,nextLayoutPosition:o.layoutPositions[s.pageIndex+1]||null})}let i=Array.from(t.values());for(let r of i)this.deferReferencesForPage(r.viewItem,r.page,r.pageIndex,r.nextLayoutPosition);let n=i[0];return n?this.resolveDeferredReferencesAfterCounterScope(n.viewItem,n.page,n.pageIndex,n.nextLayoutPosition):I(!0)}relayoutDeferredFollowingSpines(){let e=this.deferredFollowingSpineRelayoutStart;if(e==null)return null;this.deferredFollowingSpineRelayoutStart=null,this.removeDeferredReferencePages(i=>i.viewItem.item.spineIndex>=e),this.counterStore.discardReferencesFromSpine(e);let t=null;for(let i=e;i<this.spineItems.length;i++){let n=this.spineItems[i];n&&(t=i,this.retireStalePages(i,n.pages),this.spineItems[i]=null,this.spineItemLoadingContinuations[i]=null)}return t}rerenderDeferredFollowingSpines(e){var t,i;let n=z("rerenderDeferredFollowingSpines"),r=((i=(t=this.opf)==null?void 0:t.spine)==null?void 0:i.length)||this.spineItems.length,s=Math.max(3,r*2+2),o=0,a=null;n.handler=(l,c)=>{this.clearFollowingSpineRelayoutState(),l.task.raise(c,l.parent)};let h=()=>{let l=this.deferredFollowingSpineRelayoutStart;if(l==null){this.clearFollowingSpineRelayoutState(),n.finish(a);return}if(o++,o>s){this.clearFollowingSpineRelayoutState(),n.task.raise(new Error("Cross-reference pagination did not stabilize"),n.parent);return}this.relayoutingFollowingSpines=!0,this.relayoutingFollowingSpineStart=l;let c=this.relayoutDeferredFollowingSpines(),d=c!=null?{spineIndex:c,pageIndex:Number.POSITIVE_INFINITY,offsetInItem:-1}:e;this.renderPagesUpto(d,!1).then(p=>{a=p;let f=this.updateRetainedTargetCounters();this.resolveChangedRetainedTargetReferences(f).then(()=>h())})};return h(),n.result()}renderSinglePage(e,t){let i=z("renderSinglePage"),n=t?Math.max(t.page,0):0,r=e.instance.getPageNumberContextDepth();e.instance.pushPageNumberContext(n+1);let s=()=>{e.instance.restorePageNumberContextDepth(r)};i.handler=(d,p)=>{s(),d.task.raise(p,d.parent)};let o=this.isInCounterResolveScope(),a=this.preparePageCountersForRender(e,n),h=n>0?e.pages[n-1]:null,l=e.pages[n+1],c=this.makePage(e,t);return this.resolvePageTypeForRenderSlot(e,c,n,a,h,l,o),e.instance.layoutNextPage(c,t).then(d=>{if(t=d,!t){let f=n+1,g=e.pages.length>f;g&&this.updateEPageRangesAfterPageCountChange(e,f),this.removeDeferredReferencePages(m=>m.viewItem===e&&m.pageIndex>=f);for(let m=f;m<e.pages.length;m++)this.counterStore.discardReferencesFromPage(e.item.spineIndex,m);this.retireStalePages(e.item.spineIndex,e.pages.slice(f)),e.pages.splice(f),e.layoutPositions.splice(f),e.pageCounterStarts.splice(f),g&&this.deferFollowingSpinesForRelayout(e.item.spineIndex)}let p=t?t.page-1:n;this.finishPageContainer(e,c,p),this.counterStore.finishPage(c.spineIndex,p),(Dt("PAGINATION_PROGRESS").length?this.collectTotalOffsets():I(!0)).then(()=>{this.reportPaginationProgress(e,t),this.maybeRelayoutFollowingPage(e,t,a,c).thenAsync(()=>this.resolveUnresolvedReferencesForPage(e,c,p,t)).then(f=>{!t&&!o&&this.markSpineItemCompleteIfReady(e),s(),i.finish({pageAndPosition:Ws(f,p),nextLayoutPosition:t})})})}),i.result()}normalizeSeekPosition(e,t){let i=e.pageIndex,n=-1;if(i<0){n=e.offsetInItem;let r=vi(t.layoutPositions.length,s=>t.instance.getPosition(t.layoutPositions[s],!0)>n);r===t.layoutPositions.length?t.complete?i=t.pages.length-1:i=Number.POSITIVE_INFINITY:i=r-1}else i===Number.POSITIVE_INFINITY&&e.offsetInItem!==-1&&(n=e.offsetInItem);return{spineIndex:e.spineIndex,pageIndex:i,offsetInItem:n}}findPage(e,t){let i=z("findPage"),n=()=>{if(t){i.finish(null);return}i.sleep(100).then(()=>{this.findPage(e,t).then(r=>i.finish(r))})};return this.waitForPreviousSpines(e.spineIndex,t).then(()=>{let r=this.relayoutingFollowingSpineStart;if(r!=null&&r<=e.spineIndex){n();return}let s=this.deferredFollowingSpineRelayoutStart;if(s!=null&&s<=e.spineIndex){if(this.renderingAllPages){n();return}if(this.isRenderingPageInAnotherTask()){n();return}this.renderPage(e).then(o=>i.finish(o));return}this.getPageViewItem(e.spineIndex).then(o=>{if(!o){i.finish(null);return}let a=null,h;i.loopWithFrame(l=>{let c=this.normalizeSeekPosition(e,o);h=c.pageIndex,a=o.pages[h],a?l.breakLoop():o.complete?(h=o.pages.length-1,a=o.pages[h],l.breakLoop()):t?this.renderPage(c).then(d=>{d&&(a=d.page,h=d.position.pageIndex),l.breakLoop()}):this.isRenderingPageInAnotherTask()?i.sleep(100).then(()=>{l.continueLoop()}):h<o.layoutPositions.length&&!o.pages[h]?this.renderPage(c).then(d=>{d&&(a=d.page,h=d.position.pageIndex),l.breakLoop()}):i.sleep(100).then(()=>{l.continueLoop()})}).then(()=>{i.finish(Ws(a,h))})})}),i.result()}renderPage(e){let t=Vr();this.beginRenderingPage(t);let i=!1,n=()=>{i||(i=!0,this.endRenderingPage(t))};return hn("renderPage",r=>{this.renderPageTracked(e).then(s=>{let o=this.deferredFollowingSpineRelayoutStart;if(!this.renderingAllPages&&!this.relayoutingFollowingSpines&&o!=null&&o<=e.spineIndex){this.rerenderDeferredFollowingSpines(e).then(()=>{this.renderPageTracked(e).then(a=>{this.pageSheetSizeTruncator(this.getRenderedPageSizeCount()),n(),r.finish(a)})});return}this.pageSheetSizeTruncator(this.getRenderedPageSizeCount()),n(),r.finish(s)})},(r,s)=>{this.clearFollowingSpineRelayoutState(),n(),r.task.raise(s,r.parent)})}beginRenderingPage(e){this.renderingPageTasks.set(e,(this.renderingPageTasks.get(e)||0)+1)}endRenderingPage(e){let t=this.renderingPageTasks.get(e);t===1?this.renderingPageTasks.delete(e):t&&this.renderingPageTasks.set(e,t-1)}isRenderingPageInAnotherTask(){let e=Vr();return Array.from(this.renderingPageTasks.keys()).some(t=>t!==e)}renderPageTracked(e){let t=z("renderPageTracked");return this.getPageViewItem(e.spineIndex).then(i=>{if(!i){t.finish(null);return}let n=this.normalizeSeekPosition(e,i),r=n.pageIndex,s=n.offsetInItem,o=i.pages[r];if(o){t.finish(Ws(o,r));return}t.loopWithFrame(a=>{if(r<i.layoutPositions.length){a.breakLoop();return}if(i.complete){r=i.pages.length-1,a.breakLoop();return}let h=i.layoutPositions[i.layoutPositions.length-1];this.renderSinglePage(i,h).then(l=>{let c=l.pageAndPosition.page;if(h=l.nextLayoutPosition,h){if(s>=0&&i.instance.getPosition(h)>s){o=c,r=i.layoutPositions.length-2,a.breakLoop();return}a.continueLoop()}else o=c,r=l.pageAndPosition.position.pageIndex,this.markSpineItemCompleteIfReady(i),a.breakLoop()})}).then(()=>{o=o||i.pages[r];let a=i.layoutPositions[r];if(o){t.finish(Ws(o,r));return}this.renderSinglePage(i,a).then(h=>{h.nextLayoutPosition||this.markSpineItemCompleteIfReady(i),t.finish(h.pageAndPosition)})})}),t.result()}renderAllPages(){let e=z("renderAllPages"),t={spineIndex:this.opf.spine.length-1,pageIndex:Number.POSITIVE_INFINITY,offsetInItem:-1},i=null;return this.renderingAllPages=!0,e.handler=(n,r)=>{this.clearFollowingSpineRelayoutState(),this.renderingAllPages=!1,n.task.raise(r,n.parent)},this.renderPagesUpto(t,!1).then(n=>{i=n;let r=()=>{e.loopWithFrame(s=>{this.spineItems.some(o=>o?.pages.some(a=>a?.fetchers.some(h=>!h.arrived)))?e.sleep(100).then(()=>{s.continueLoop()}):s.breakLoop()}).then(()=>{this.pageSheetSizeTruncator(this.getRenderedPageSizeCount()),this.renderingAllPages=!1,e.finish(i)})};if(this.deferredFollowingSpineRelayoutStart==null){r();return}this.rerenderDeferredFollowingSpines(t).then(s=>{i=s,r()})}),e.result()}renderPagesUpto(e,t){let i=z("renderPagesUpto");e||(e={spineIndex:0,pageIndex:0,offsetInItem:0});let n=e.spineIndex,r=e.pageIndex,s=0;t&&(s=n);let o=null;return i.loopWithFrame(a=>{let h={spineIndex:s,pageIndex:s===n?r:Number.POSITIVE_INFINITY,offsetInItem:s===n?e.offsetInItem:-1};this.renderPage(h).then(l=>{o=l,++s>n?a.breakLoop():a.continueLoop()})}).then(()=>{i.finish(o)}),i.result()}firstPage(e,t){return this.findPage({spineIndex:0,pageIndex:0,offsetInItem:-1},t)}lastPage(e,t){return this.findPage({spineIndex:this.opf.spine.length-1,pageIndex:Number.POSITIVE_INFINITY,offsetInItem:-1},t)}nextPage(e,t){let i=e.spineIndex,n=e.pageIndex,r=z("nextPage");return this.getPageViewItem(i).then(s=>{if(!s){r.finish(null);return}if(s.complete&&n==s.pages.length-1){if(i>=this.opf.spine.length-1){r.finish(null);return}i++,n=0;let o=this.spineItems[i],a=o&&o.pages[0],h=s.pages[s.pages.length-1];a&&h&&a.side==h.side&&(o.pages.forEach(l=>{l.container&&l.container.remove()}),this.spineItems[i]=null,this.spineItemLoadingContinuations[i]=null)}else n++;this.findPage({spineIndex:i,pageIndex:n,offsetInItem:-1},t).thenFinish(r)}),r.result()}previousPage(e,t){let i=e.spineIndex,n=e.pageIndex;if(n==0){if(i==0)return I(null);i--,n=Number.POSITIVE_INFINITY}else n--;return this.findPage({spineIndex:i,pageIndex:n,offsetInItem:-1},t)}isRectoPage(e,t){let i=e.side==="left",n=this.getCurrentPageProgression(t)==="ltr";return!i&&n||i&&!n}getSpread(e,t){let i=this.getPage(e);if(!i)return I({left:null,right:null});let n=z("getSpread"),r=i.side==="left",s;return this.isRectoPage(i,e)?s=this.previousPage(e,t):s=this.nextPage(e,t),s.then(o=>{let a=this.getPage(e),h=o&&o.page;h&&h.side===a.side&&(h=null),r?n.finish({left:a,right:h}):n.finish({left:h,right:a})}),n.result()}nextSpread(e,t){let i=this.getPage(e);if(!i)return I(null);let n=this.isRectoPage(i,e),r=this.nextPage(e,t);return n?r:r.thenAsync(s=>{if(s){if(s.page.side===i.side)return r;let o=this.nextPage(s.position,t);return o.thenAsync(a=>a?o:r)}else return I(null)})}previousSpread(e,t){let i=this.getPage(e);if(!i)return I(null);let n=this.isRectoPage(i,e),r=this.previousPage(e,t),s=i.container.previousElementSibling;return n?r.thenAsync(o=>o?o.page.side===i.side||o.page.container!==s?r:this.previousPage(o.position,t):I(null)):r}navigateToEPage(e,t,i){let n=z("navigateToEPage");return this.opf.resolveEPage(e).then(r=>{r?this.findPage(r,i).thenFinish(n):n.finish(null)}),n.result()}navigateToFragment(e,t,i){let n=z("navigateToCFI");return this.opf.resolveFragment(e).then(r=>{r?this.findPage(r,i).thenFinish(n):n.finish(null)}),n.result()}resolveSemanticFootnoteNavigationOffset(e,t){if(!Et(t))return null;let i=t.getAttribute("id");if(!i)return null;let n=Fe(`#${i}`,e.xmldoc.url),r=e.xmldoc.document.getElementsByTagName("a");for(let s=0;s<r.length;s++){let o=r.item(s);if(!Yt(o))continue;let a=o.getAttribute("href")||o.getAttributeNS("http://www.w3.org/1999/xlink","href");if(a&&Fe(a,e.xmldoc.url)===n)return e.xmldoc.getElementOffset(o)}return null}navigateTo(e,t,i){Z.debug("Navigate to",e);let n=this.opf.getPathFromURL(gt(e));if(!n){if(this.opf.opfXML&&e.match(/^#epubcfi\(/))n=this.opf.getPathFromURL(this.opf.opfXML.url);else if(e.charAt(0)==="#"){let o=this.opf.documentURLTransformer.restoreURL(e);this.opf.opfXML?(n=this.opf.getPathFromURL(o[0]),n==null&&(n=o[0])):n=o[0],e=o[0]+(o[1]?`#${o[1]}`:"")}if(n==null)return I(null)}let r=this.opf.itemMapByPath[n];if(!r){if(this.opf.opfXML&&n==this.opf.getPathFromURL(this.opf.opfXML.url)){let o=e.indexOf("#");if(o>=0)return this.navigateToFragment(e.substr(o+1),t,i)}return I(null)}let s=z("navigateTo");return this.waitForPreviousSpines(r.spineIndex,i).then(()=>{this.getPageViewItem(r.spineIndex).then(o=>{if(!o){s.finish(null);return}let a=o.xmldoc.getElement(e),h=a&&this.resolveSemanticFootnoteNavigationOffset(o,a),l=h??(a?o.xmldoc.getElementOffset(a):0);this.findPage({spineIndex:r.spineIndex,pageIndex:-1,offsetInItem:l},i).thenFinish(s)})}),s.result()}makePage(e,t){let i=e.instance.viewport,n=i.document.createElement("div");n.setAttribute("data-vivliostyle-page-container","true"),n.role="presentation",_r||(n.style.visibility="hidden"),i.layoutBox.appendChild(n);let r=i.document.createElement("div");r.setAttribute("data-vivliostyle-bleed-box","true"),r.role="presentation",n.appendChild(r);let s=new Ep(n,r);if(s.spineIndex=e.item.spineIndex,s.position=t,s.offset=e.instance.getPosition(t),s.offset===0&&!(e.instance.blankPageAtStart&&e.pages.length===0)){let o=this.opf.documentURLTransformer.transformFragment("",e.item.src);r.setAttribute("id",o),s.registerElementWithId(r,o)}if(i!==this.viewport){let o=hd(this.viewport.width,this.viewport.height,i.width,i.height),a=_i(e.instance.style.rootScope,new xt(o,null),"");s.delayedItems.push(new lh(n,"transform",a))}return s}makeObjectView(e,t,i,n){let r=t.getAttribute("data"),s=null;if(r){r=Fe(r,e.url);let o=t.getAttribute("media-type");if(!o){let a=this.opf.getPathFromURL(r);if(a){let h=this.opf.itemMapByPath[a];h&&(o=h.mediaType)}}if(o){let a=this.opf.bindings[o];if(a){s=this.viewport.document.createElement("iframe"),s.style.border="none";let h=nu(r),l=nu(o),c=new yi;c.append(a),c.append("?src="),c.append(h),c.append("&type="),c.append(l);for(let f=t.firstChild;f;f=f.nextSibling)if(f.nodeType==1){let g=f;if(g.localName=="param"&&g.namespaceURI=="http://www.w3.org/1999/xhtml"){let m=g.getAttribute("name"),w=g.getAttribute("value");m&&w&&(c.append("&"),c.append(encodeURIComponent(m)),c.append("="),c.append(encodeURIComponent(w)))}}s.setAttribute("src",c.toString());let d=t.getAttribute("width");d&&s.setAttribute("width",d);let p=t.getAttribute("height");p&&s.setAttribute("height",p)}}}return s||(s=this.viewport.document.createElement("object"),r&&s.setAttribute("data",zr(r)),s.setAttribute("data-adapt-process-children","true")),I(s)}makeMathJaxView(e,t,i,n){let r=wP();if(r){let s=i.ownerDocument,o=s.createElement("span");i.appendChild(o);let a=s.importNode(t,!0);this.resolveURLsInMathML(a,e),o.appendChild(a);let h=r.queue;h.Push(["Typeset",r,o]);let l=z("makeMathJaxView"),c=l.suspend();return h.Push(()=>{c.schedule(o)}),l.result()}return I(null)}resolveURLsInMathML(e,t){if(e!=null){if(e.nodeType===1&&e.tagName==="mglyph"){let i=Array.from(e.attributes);for(let n of i){if(n.name!=="src")continue;let r=Fe(n.nodeValue,t.url);n.namespaceURI?e.setAttributeNS(n.namespaceURI,n.name,r):e.setAttribute(n.name,r)}}e.firstChild&&this.resolveURLsInMathML(e.firstChild,t),e.nextSibling&&this.resolveURLsInMathML(e.nextSibling,t)}}makeCustomRenderer(e){return(t,i,n)=>t.localName=="object"&&t.namespaceURI=="http://www.w3.org/1999/xhtml"?this.makeObjectView(e,t,i,n):t.namespaceURI=="http://www.w3.org/1998/Math/MathML"?this.makeMathJaxView(e,t,i,n):t.dataset&&t.dataset.mathTypeset=="true"?this.makeMathJaxView(e,t,i,n):I(null)}getPageViewItem(e){if(e===-1||e>=this.opf.spine.length)return I(null);let t=this.spineItems[e];if(t)return I(t);let i=z("getPageViewItem"),n=this.spineItemLoadingContinuations[e];if(n){let o=i.suspend();return n.push(o),i.result()}else n=this.spineItemLoadingContinuations[e]=[];let r=this.opf.spine[e],s=this.opf.store;return s.load(r.src).then(o=>{var a;let h=r.itemRefElement.getAttribute("properties");h&&o.root.setAttribute("data-vivliostyle-epub-spine-properties",h),r.title=o.document.title;let l=s.getStyleForDoc(o),c=this.makeCustomRenderer(o),d=this.viewport,p=l.sizeViewport(d.width,d.height,d.fontSize,this.pref);(p.width!=d.width||p.height!=d.height||p.fontSize!=d.fontSize)&&(d=new $o(d.window,p.fontSize,d.pixelRatio,d.root,p.width,p.height));let f=(a=this.spineItems[0])==null?void 0:a.instance.isVersoFirstPage,g=this.spineItems[e-1],m,w;if(r.startPage!==null)m=r.startPage-1,w=m;else{if(e>0&&(!g||!g.complete))m=r.epage||e,!this.opf.prePaginated&&m%2==(f?1:0)&&m++,w=m;else{m=g?g.instance.pageNumberOffset+g.pages.length:0;let y=g&&g.pageCounterStarts[g.pages.length-1],C=y&&y.page;if(C&&C.length)w=C[C.length-1]+1;else{let S=this.counterStore.currentPageCounters.page;w=!S||!S.length?m:S[S.length-1]}}r.skipPagesBefore!==null&&(m+=r.skipPagesBefore,w+=r.skipPagesBefore)}this.counterStore.forceSetPageCounter(w);let b=this.opf.metadata&&this.opf.metadata[je.title],x=b&&b[0]&&b[0].v||"",P=r.title||"";jh.create(l,o,this.opf.lang,d,this.clientLayout,this.fontMapper,c,this.opf.fallbackMap,m,this.opf.documentURLTransformer,this.counterStore,this.cmykStore,this.pref,x,P,this.opf.pageProgression,f).then(y=>{!this.opf.pageProgression&&y.pageProgression&&(this.opf.pageProgression=y.pageProgression),t={item:r,xmldoc:o,instance:y,layoutPositions:[null],pages:[],complete:!1,pageCounterStarts:[]},this.spineItems[e]=t,i.finish(t),n.forEach(C=>{C.schedule(t)})})}),i.result()}removeRenderedPages(){let e=this.spineItems;for(let t of e)t&&t.pages.splice(0);this.viewport.clear()}hasAutoSizedPages(){let e=this.spineItems;for(let t of e)if(t){let i=t.pages;for(let n of i)if(n.isAutoPageWidth&&n.isAutoPageHeight)return!0}return!1}hasPages(){return this.spineItems.some(e=>e&&e.pages.length>0)}showTOC(e){let t=this.opf,i=t.toc;if(this.tocAutohide=e,!i)return I(null);if(this.tocVisible=!0,this.tocView&&this.tocView.page)return this.tocView.page.container.style.visibility="visible",this.tocView.page.container.setAttribute("aria-hidden","false"),I(this.tocView.page);let n=z("showTOC");this.tocView||(this.tocView=new uP(t.store,i.src,t.lang,this.clientLayout,this.fontMapper,this.pref,this,t.fallbackMap,t.documentURLTransformer,this.counterStore,this.cmykStore));let r=this.viewport,s=Math.min(344,Math.round(.67*r.width)-16),o=r.height-6,a=r.document.createElement("div");return r.root.appendChild(a),_r||(a.style.visibility="hidden"),a.style.width=`${s+16}px`,a.style.maxHeight=`${o}px`,a.setAttribute("data-vivliostyle-toc-box","true"),a.setAttribute("role","navigation"),this.tocView.showTOC(a,r,s,o,this.viewport.fontSize).then(h=>{a.style.visibility="visible",a.setAttribute("aria-hidden","false"),n.finish(h)}),n.result()}hideTOC(){this.tocVisible=!1,this.tocView&&this.tocView.hideTOC()}isTOCVisible(){return this.tocVisible&&!!this.tocView&&this.tocView.isTOCVisible()}},$c="data-vivliostyle-viewer-status",xP="data-vivliostyle-spread-view",nm=(e=>(e.SINGLE_PAGE="singlePage",e.SPREAD="spread",e.AUTO_SPREAD="autoSpread",e))(nm||{}),SP=class{constructor(e,t,i,n){u(this,"window",e),u(this,"viewportElement",t),u(this,"instanceId",i),u(this,"callbackFn",n),u(this,"fontMapper"),u(this,"kick"),u(this,"sendCommand"),u(this,"resizeListener"),u(this,"hyperlinkListener"),u(this,"pageRuleStyleElement"),u(this,"pageSheetSizeAlreadySet",!1),u(this,"renderTask",null),u(this,"actions"),u(this,"readyState","loading"),u(this,"packageURL",[]),u(this,"opf",null),u(this,"needResize",!1),u(this,"resized",!1),u(this,"needRefresh",!1),u(this,"viewportSize",null),u(this,"currentPage",null),u(this,"currentSpread",null),u(this,"pagePosition",null),u(this,"fontSize",16),u(this,"zoom",1),u(this,"fitToScreen",!1),u(this,"pageViewMode","singlePage"),u(this,"waitForLoading",!1),u(this,"renderAllPages",!0),u(this,"pref",ad()),u(this,"pageSizes",[]),u(this,"pixelRatioLimit",ts==="chromium"&&"currentCSSZoom"in Element.prototype?16:0),u(this,"pixelRatio",Math.min(8,this.pixelRatioLimit)),u(this,"viewport",null),u(this,"opfView",null),u(this,"cmykReserveMap"),u(this,"cmykReserveMapUrl"),u(this,"paginationProgressHook",null);let r=t.ownerDocument,s=(o,a)=>{let h=r.getElementById(o);return h||(h=r.createElement("style"),h.id=o,a&&(h.textContent=a),r.head.appendChild(h)),h};s("vivliostyle-viewport-screen-css",rp),s("vivliostyle-viewport-css",sp),s("vivliostyle-polyfill-css",cp),t.setAttribute("data-vivliostyle-viewer-viewport",!0),_r&&t.setAttribute("data-vivliostyle-debug",!0),t.setAttribute($c,"loading"),this.fontMapper=new JS(r.head,t),this.kick=()=>{},this.sendCommand=()=>{},this.resizeListener=()=>{this.needResize=!0,this.resized=!0,this.kick()},this.pageReplacedListener=this.pageReplacedListener.bind(this),this.hyperlinkListener=o=>{},this.pageRuleStyleElement=s("vivliostyle-page-rules"),this.actions={loadPublication:this.loadPublication,loadXML:this.loadXML,configure:this.configure,moveTo:this.moveTo,toc:this.showTOC},this.addLogListeners()}addLogListeners(){let e=ed;Z.addListener(e.DEBUG,t=>{this.callback({t:"debug",content:t})}),Z.addListener(e.INFO,t=>{this.callback({t:"info",content:t})}),Z.addListener(e.WARN,t=>{this.callback({t:"warn",content:t})}),Z.addListener(e.ERROR,t=>{this.callback({t:"error",content:t})})}ensurePaginationProgressListener(){if(this.paginationProgressHook)return;let e=t=>{this.callback({t:"paginationprogress",...t})};this.paginationProgressHook=e,Ft("PAGINATION_PROGRESS",e)}removePaginationProgressListener(){this.paginationProgressHook&&(Xl("PAGINATION_PROGRESS",this.paginationProgressHook),this.paginationProgressHook=null)}callback(e){e.i=this.instanceId,this.callbackFn(e)}setReadyState(e){if(this.readyState!==e){this.readyState=e,this.viewportElement.setAttribute($c,e);let t=this.getCurrentPageProgression();t&&this.viewportElement.setAttribute("data-vivliostyle-page-progression",t),this.callback({t:"readystatechange"})}}loadPublication(e){Nt.registerStartTiming("beforeRender"),this.setReadyState("loading");let t=e.url,i=e.fragment,n=e.authorStyleSheet,r=e.userStyleSheet;this.cmykReserveMapUrl=e.cmykReserveMapUrl,this.viewport=null;let s=z("loadPublication");return this.configure(e).then(()=>{zc.create(n,r).then(o=>{let a=Fe(Mn(t),this.window.location.href);this.packageURL=[a],o.loadPubDoc(a).then(h=>{h?(this.opf=h,this.loadCmykReserveMap(o).then(()=>{this.render(i).then(()=>{s.finish(!0)})})):s.finish(!1)})})}),s.result()}loadXML(e){Nt.registerStartTiming("beforeRender"),this.setReadyState("loading");let t=e.url,i=e.document,n=e.fragment,r=e.authorStyleSheet,s=e.userStyleSheet;this.cmykReserveMapUrl=e.cmykReserveMapUrl,this.viewport=null;let o=z("loadXML");return this.configure(e).then(()=>{zc.create(r,s).then(a=>{let h=t.map((l,c)=>({url:Fe(Mn(l.url),this.window.location.href),index:c,startPage:l.startPage,skipPagesBefore:l.skipPagesBefore}));this.packageURL=h.map(l=>l.url),Ji.fromChapters(a,"",h,i).then(l=>{this.opf=l,this.loadCmykReserveMap(a).then(()=>{this.render(n).then(()=>{o.finish(!0)})})})})}),o.result()}render(e){this.cancelRenderingTask();let t;return e?t=this.opf.resolveFragment(e).thenAsync(i=>(this.pagePosition=i,I(!0))):t=I(!0),t.thenAsync(()=>(Nt.registerEndTiming("beforeRender"),this.resize()))}resolveLength(e){let t=parseFloat(e),i=/[a-z]+$/,n;if(typeof e=="string"&&(n=e.match(i))){let r=n[0];if(r==="em"||r==="rem")return t*this.fontSize;let s=wi[r];if(s)return t*s}return t}configure(e){if(typeof e.autoresize=="boolean"&&(e.autoresize?(this.viewportSize=null,this.window.addEventListener("resize",this.resizeListener,!1),this.needResize=!0):this.window.removeEventListener("resize",this.resizeListener,!1)),typeof e.fontSize=="number"){let t=e.fontSize;t>=5&&t<=72&&this.fontSize!=t&&(this.fontSize=t,this.needResize=!0)}if(typeof e.viewport=="object"&&e.viewport){let t=e.viewport,i={marginLeft:this.resolveLength(t["margin-left"])||0,marginRight:this.resolveLength(t["margin-right"])||0,marginTop:this.resolveLength(t["margin-top"])||0,marginBottom:this.resolveLength(t["margin-bottom"])||0,width:this.resolveLength(t.width)||0,height:this.resolveLength(t.height)||0};(i.width>=200||i.height>=200)&&(this.window.removeEventListener("resize",this.resizeListener,!1),this.viewportSize=i,this.needResize=!0)}if(typeof e.hyphenate=="boolean"&&(this.pref.hyphenate=e.hyphenate,this.needResize=!0),typeof e.horizontal=="boolean"&&(this.pref.horizontal=e.horizontal,this.needResize=!0),typeof e.nightMode=="boolean"&&(this.pref.nightMode=e.nightMode,this.needResize=!0),typeof e.lineHeight=="number"&&(this.pref.lineHeight=e.lineHeight,this.needResize=!0),typeof e.columnWidth=="number"&&(this.pref.columnWidth=e.columnWidth,this.needResize=!0),typeof e.fontFamily=="string"&&(this.pref.fontFamily=e.fontFamily,this.needResize=!0),typeof e.load=="boolean"&&(this.waitForLoading=e.load),typeof e.renderAllPages=="boolean"&&(this.renderAllPages=e.renderAllPages),typeof e.userAgentRootURL=="string"&&(Qh(e.userAgentRootURL.replace(/resources\/?$/,"")),eu(e.userAgentRootURL)),typeof e.rootURL=="string"&&(Qh(e.rootURL),eu(`${an}resources/`)),typeof e.pageViewMode=="string"&&e.pageViewMode!==this.pageViewMode&&(this.pageViewMode=e.pageViewMode,this.needResize=!0),typeof e.pageBorder=="number"&&e.pageBorder!==this.pref.pageBorder&&(this.viewport=null,this.pref.pageBorder=e.pageBorder,this.needResize=!0),typeof e.zoom=="number"&&e.zoom!==this.zoom&&(this.zoom=e.zoom,this.needRefresh=!0),typeof e.fitToScreen=="boolean"&&e.fitToScreen!==this.fitToScreen&&(this.fitToScreen=e.fitToScreen,this.needRefresh=!0),typeof e.defaultPaperSize=="object"&&typeof e.defaultPaperSize.width=="number"&&typeof e.defaultPaperSize.height=="number"&&(this.viewport=null,this.pref.defaultPaperSize=e.defaultPaperSize,this.needResize=!0),typeof e.allowScripts=="boolean"&&e.allowScripts!==Si&&(QS(e.allowScripts),this.needResize=!0),typeof e.pixelRatio=="number"){let t=Math.min(e.pixelRatio,this.pixelRatioLimit);t!==this.pixelRatio&&(this.pixelRatio=t,this.needResize=!0)}return this.configurePlugins(e),I(!0)}configurePlugins(e){Dt("CONFIGURATION").forEach(t=>{let i=t(e);this.needResize=i.needResize||this.needResize,this.needRefresh=i.needRefresh||this.needRefresh})}pageReplacedListener(e){let t=this.currentPage,i=this.currentSpread,n=e.target;i?(i.left===n||i.right===n)&&this.showCurrent(e.newPage):t===e.target&&this.showCurrent(e.newPage)}forCurrentPages(e){let t=[];this.currentPage&&t.push(this.currentPage),this.currentSpread&&(this.currentSpread.left&&t.push(this.currentSpread.left),this.currentSpread.right&&t.push(this.currentSpread.right)),t.forEach(i=>{i&&e(i)})}removePageListeners(){this.forCurrentPages(e=>{e.removeEventListener("hyperlink",this.hyperlinkListener,!1),e.removeEventListener("replaced",this.pageReplacedListener,!1)})}hidePages(){this.removePageListeners(),this.forCurrentPages(e=>{F(e.container,"display","none")}),this.currentPage=null,this.currentSpread=null}showSinglePage(e){e.addEventListener("hyperlink",this.hyperlinkListener,!1),e.addEventListener("replaced",this.pageReplacedListener,!1),F(e.container,"visibility","visible"),F(e.container,"display","block")}showPage(e){this.hidePages(),this.currentPage=e,e.container.style.marginLeft="",e.container.style.marginRight="",this.showSinglePage(e)}showSpread(e){if(this.hidePages(),this.currentSpread=e,e.left&&e.right){let t=parseFloat(e.left.container.style.width),i=parseFloat(e.right.container.style.width);t&&i&&t!==i&&(t<i?e.left.container.style.marginLeft=`${i-t}px`:e.right.container.style.marginRight=`${t-i}px`)}e.left&&(this.showSinglePage(e.left),e.right?e.left.container.removeAttribute("data-vivliostyle-unpaired-page"):e.left.container.setAttribute("data-vivliostyle-unpaired-page",!0)),e.right&&(this.showSinglePage(e.right),e.left?e.right.container.removeAttribute("data-vivliostyle-unpaired-page"):e.right.container.setAttribute("data-vivliostyle-unpaired-page",!0))}reportPosition(){let e=z("reportPosition");return this.pagePosition,this.opf.getCFI(this.pagePosition.spineIndex,this.pagePosition.offsetInItem).then(t=>{let i=this.currentPage;(this.waitForLoading&&i.fetchers.length>0?Un(i.fetchers):I(!0)).then(()=>{this.sendLocationNotification(i,t).thenFinish(e)})}),e.result()}createViewport(){let e=this.viewportElement;if(this.viewportSize){let t=this.viewportSize;return e.style.marginLeft=`${t.marginLeft}px`,e.style.marginRight=`${t.marginRight}px`,e.style.marginTop=`${t.marginTop}px`,e.style.marginBottom=`${t.marginBottom}px`,new $o(this.window,this.fontSize,this.pixelRatio,e,t.width,t.height)}else return new $o(this.window,this.fontSize,this.pixelRatio,e)}resolveSpreadView(e,t){switch(this.pageViewMode){case"singlePage":return!1;case"spread":return!0;default:return e!=null&&(e.width-this.pref.pageBorder)/e.height>=(t?t.width*2/t.height:1.45)&&(!!t||e.width>800)}}updateSpreadView(e){this.pref.spreadView=e,this.viewportElement.setAttribute(xP,e.toString())}sizeIsGood(){var e;let t=this.createViewport(),i=((e=this.opfView)==null?void 0:e.hasPages())&&!this.opfView.hasAutoSizedPages(),n=this.resolveSpreadView(t,this.resized&&i?this.pageSizes[0]:null);this.resized=!1;let r=this.pref.spreadView!==n;return this.updateSpreadView(n),this.pixelRatio&&this.opfView&&this.pixelRatio/this.window.devicePixelRatio!==this.opfView.clientLayout.scaleRatio||this.viewportSize||!this.viewport||this.viewport.fontSize!=this.fontSize?!1:!r&&t.width==this.viewport.width&&t.height==this.viewport.height||!r&&t.width==this.viewport.width&&t.height!=this.viewport.height&&/Android|iPhone|iPad|iPod/.test(navigator.userAgent)?!0:i?(this.viewport.width=t.width,this.viewport.height=t.height,this.needRefresh=!0,!0):!1}setPageSize(e,t,i,n){this.pageSizes[n]=e,this.setPageSizePageRules(n),n===0&&this.pageViewMode==="autoSpread"&&!this.opfView.hasAutoSizedPages()&&this.updateSpreadView(this.resolveSpreadView(this.viewport,e))}truncatePageSizes(e){this.pageSizes.length>e&&this.pageSizes.splice(e),this.removePageSizePageRules();let t=this.pageSizes.length-1;for(;t>=0&&this.pageSizes[t]==null;)t--;t>=0&&this.setPageSizePageRules(t)}setPageSizePageRules(e){var t,i;let n=this.pageSizes[e];if(this.pageRuleStyleElement&&n&&(!this.pageSheetSizeAlreadySet||n.width!==((t=this.pageSizes[e-1])==null?void 0:t.width)||n.height!==((i=this.pageSizes[e-1])==null?void 0:i.height))){let s=function(g){let m=g*.75;return Math.ceil(m)};var r=s;let o=this.pageSizes.filter(g=>g!=null),a=Math.max(...o.map(g=>g.width)),h=Math.max(...o.map(g=>g.height)),l=s(a),c=s(h),d=l*((this.pixelRatio||1)-1)+2,p=c*((this.pixelRatio||1)-1)+2,f=`@page {size: ${l}pt ${c}pt; margin: 0 ${-d}pt ${-p}pt 0;}`;this.pageRuleStyleElement.textContent=f,this.pageSheetSizeAlreadySet=!0}}removePageSizePageRules(){this.pageRuleStyleElement&&(this.pageRuleStyleElement.textContent="",this.pageSheetSizeAlreadySet=!1)}loadCmykReserveMap(e){if(!this.cmykReserveMapUrl)return this.cmykReserveMap=void 0,I(!0);let t=Fe(Mn(this.cmykReserveMapUrl),an),i=z("loadCmykReserveMap");return e.loadAsJSON(t).then(n=>{xy(n)?this.cmykReserveMap=n:(Z.warn("Invalid cmykReserveMap data, ignoring"),this.cmykReserveMap=void 0),i.finish(!0)}),i.result()}reset(){let e=!1,t=!1;this.opfView&&(e=this.opfView.tocVisible,t=this.opfView.tocAutohide,this.opfView.removeRenderedPages()),this.pageSizes=[],this.removePageSizePageRules(),this.viewport=this.createViewport(),this.viewport.resetZoom(),this.opfView=new bP(this.opf,this.viewport,this.fontMapper,this.pref,this.setPageSize.bind(this),this.cmykReserveMap,this.truncatePageSizes.bind(this)),e&&this.sendCommand({a:"toc",v:"show",autohide:t})}showCurrent(e,t){this.needRefresh=!1,this.removePageListeners();let i=this.resolveSpreadView(this.viewport,e.dimensions);return i!==this.pref.spreadView&&this.updateSpreadView(i),i?this.opfView.getSpread(this.pagePosition,!!t).thenAsync(n=>!n.left&&!n.right?I(null):n.left&&n.right&&(!this.resolveSpreadView(this.viewport,n.left.dimensions)||!this.resolveSpreadView(this.viewport,n.right.dimensions))?(this.updateSpreadView(!1),this.showPage(e),this.setPageZoom(e),this.currentPage=e,I(null)):(this.showSpread(n),this.setSpreadZoom(n),this.currentPage=e.side==="left"?n.left:n.right,I(null))):(this.showPage(e),this.setPageZoom(e),this.currentPage=e,I(null))}setPageZoom(e){var t;let i=this.getAdjustedZoomFactor(e.dimensions);(t=this.viewport)==null||t.zoom(e.dimensions.width,e.dimensions.height,i)}setSpreadZoom(e){var t;let i=this.getSpreadDimensions(e);(t=this.viewport)==null||t.zoom(i.width,i.height,this.getAdjustedZoomFactor(i))}getAdjustedZoomFactor(e){return this.fitToScreen?this.calculateZoomFactorToFitInsideViewPort(e):this.zoom}getSpreadDimensions(e){let t=0,i=0;return e.left&&(t+=e.left.dimensions.width,i=e.left.dimensions.height),e.right&&(t+=e.right.dimensions.width,i=Math.max(i,e.right.dimensions.height)),e.left&&e.right&&(t+=this.pref.pageBorder*2,t+=Math.abs(e.left.dimensions.width-e.right.dimensions.width)),{width:t,height:i}}queryZoomFactor(e){if(!this.currentPage)throw new Error("no page exists.");if(e==="fit inside viewport"){let t;return this.pref.spreadView?(this.currentSpread,t=this.getSpreadDimensions(this.currentSpread)):t=this.currentPage.dimensions,this.calculateZoomFactorToFitInsideViewPort(t)}else throw new Error(`unknown zoom type: ${e}`)}calculateZoomFactorToFitInsideViewPort(e){if(!this.viewport)return this.zoom;let t=this.viewport.width/e.width,i=this.viewport.height/e.height;return Math.min(t,i)}cancelRenderingTask(){this.renderTask&&this.renderTask.interrupt(new Hc),this.renderTask=null}resize(){if(this.needResize=!1,this.needRefresh=!1,this.sizeIsGood())return I(!0);this.setReadyState("loading"),this.cancelRenderingTask();let e=Vr().getScheduler().run(()=>hn("resize",t=>{if(!this.opf){t.finish(!1);return}this.renderTask=e,Nt.registerStartTiming("render (resize)"),this.reset(),this.pagePosition&&(this.pagePosition.pageIndex==0&&this.pagePosition.offsetInItem==0||(this.pagePosition.pageIndex=-1)),this.opf.setEPageCountMode(this.renderAllPages),this.opfView.renderPagesUpto(this.pagePosition,!this.renderAllPages).then(i=>{if(!i){t.finish(!1);return}this.pagePosition=i.position,this.showCurrent(i.page,!0).then(()=>{this.setReadyState("interactive"),this.opf.countEPages(n=>{let r={t:"nav",epageCount:n,first:this.currentPage.isFirstPage,last:this.isLastPageForNotification(this.currentPage),metadata:this.opf.metadata,docTitle:this.opf.spine[this.pagePosition.spineIndex].title};(this.currentPage.isFirstPage||this.pagePosition.pageIndex==0&&this.opf.spine[this.pagePosition.spineIndex].epage)&&(r.epage=this.opf.spine[this.pagePosition.spineIndex].epage),this.callback(r)}).then(()=>{this.reportPosition().then(n=>{(this.renderAllPages?this.opfView.renderAllPages():I(null)).then(()=>{this.renderTask===e&&(this.renderTask=null),Nt.registerEndTiming("render (resize)"),Si&&Mg(this.window)?nC(this.window).then(()=>{this.renderAllPages&&this.setReadyState("complete"),this.callback({t:"loaded"}),t.finish(n)}):(this.renderAllPages&&this.setReadyState("complete"),this.callback({t:"loaded"}),t.finish(n))})})})})})},(t,i)=>{if(i instanceof Hc)Nt.registerEndTiming("render (resize)"),Z.debug(i.message);else throw i}));return I(!0)}sendLocationNotification(e,t){let i=z("sendLocationNotification"),n={t:"nav",first:e.isFirstPage,last:this.isLastPageForNotification(e),metadata:this.opf.metadata,docTitle:this.opf.spine[e.spineIndex].title};return this.opf.getEPageFromPosition(this.pagePosition).then(r=>{n.epage=r,n.epageCount=this.opf.epageCount,t&&(n.cfi=t),this.callback(n),i.finish(!0)}),i.result()}isLastPageForNotification(e){if(!this.opfView||!this.pagePosition)return e.isLastPage;let t=this.opfView.spineItems[this.pagePosition.spineIndex];if(!t||!t.complete)return!1;let i=t.item.spineIndex===this.opf.spine.length-1,n=this.pagePosition.pageIndex===t.pages.length-1;return i&&n}getCurrentPageProgression(){return this.opfView?this.opfView.getCurrentPageProgression(this.pagePosition):null}moveTo(e){var t;let i;if(this.readyState!=="complete"&&e.where!=="next"&&this.setReadyState("loading"),typeof e.where=="string"){let r;switch(e.where){case"next":r=this.pref.spreadView?this.opfView.nextSpread:this.opfView.nextPage;break;case"previous":r=this.pref.spreadView?this.opfView.previousSpread:this.opfView.previousPage;break;case"last":r=this.opfView.lastPage;break;case"first":r=this.opfView.firstPage;break;default:return I(!0)}i=()=>r.call(this.opfView,this.pagePosition,!this.renderAllPages)}else if(typeof e.epage=="number"){let r=e.epage;i=()=>this.opfView.navigateToEPage(r,this.pagePosition,!this.renderAllPages)}else if(typeof e.url=="string"){let r=e.url;i=()=>this.opfView.navigateTo(r,this.pagePosition,!this.renderAllPages)}else if(typeof((t=e.position)==null?void 0:t.spineIndex)=="number"){let r=e.position;i=()=>this.opfView.findPage(r,!this.renderAllPages)}else return I(!0);if(!this.opfView)return I(!0);let n=z("moveTo");return i.call(this.opfView).then(r=>{let s;if(r){this.pagePosition=r.position;let o=z("moveTo.showCurrent");s=o.result(),this.showCurrent(r.page,!this.renderAllPages).then(()=>{this.reportPosition().thenFinish(o)})}else s=I(!0);s.then(o=>{this.readyState==="loading"&&this.setReadyState("interactive"),n.finish(o)})}),n.result()}showTOC(e){let t=!!e.autohide,i=e.v,n=this.opfView.isTOCVisible(),r=t!=this.opfView.tocAutohide&&i!="hide";if(n){if(i=="show"&&!r)return I(!0)}else if(i=="hide")return I(!0);if(n&&i!="show")return this.opfView.hideTOC(),I(!0);{let s=z("showTOC");return this.opfView.showTOC(t).then(o=>{if(o){if(r&&(o.listeners={}),t){let a=()=>{this.opfView.hideTOC()};o.addEventListener("hyperlink",a,!1)}o.addEventListener("hyperlink",this.hyperlinkListener,!1)}s.finish(!0)}),s.result()}}runCommand(e){let t=e.a||"";return hn("runCommand",i=>{let n=this.actions[t];n?n.call(this,e).then(()=>{this.callback({t:"done",a:t}),i.finish(!0)}):(Z.error("No such action:",t),i.finish(!0))},(i,n)=>{Z.error(n,"Error during action:",t),i.finish(!0)})}initEmbed(e){let t=Wc(e),i=null,n=this;zv(()=>{let r=z("commandLoop"),s=Vr().getScheduler();return n.hyperlinkListener=o=>{let a=o,h=a.href.charAt(0)==="#"||n.packageURL.some(l=>a.href.substr(0,l.length)==l);if(h){o.preventDefault();let l={t:"hyperlink",href:a.href,internal:h};s.run(()=>(n.callback(l),I(!0)))}},r.loopWithFrame(o=>{if(n.needResize)n.resize().then(()=>{o.continueLoop()});else if(n.needRefresh)n.currentPage&&n.showCurrent(n.currentPage,!this.renderAllPages).then(()=>{o.continueLoop()});else if(t){let a=t;t=null,n.runCommand(a).then(()=>{o.continueLoop()})}else{let a=z("waitForCommand");i=a.suspend(this),a.result().then(()=>{o.continueLoop()})}}).thenFinish(r),r.result()}),n.kick=()=>{let r=i;r&&(i=null,r.schedule(!0))},n.sendCommand=r=>t?!1:(t=Wc(r),n.kick(),!0),this.window.adapt_command=n.sendCommand}},rm=(e=>(e.FIT_INSIDE_VIEWPORT="fit inside viewport",e))(rm||{}),Hc=class sm extends Error{constructor(){var t;super(),u(this,"name","RenderingCanceledError"),u(this,"message","Page rendering has been canceled"),u(this,"stack"),Object.setPrototypeOf(this,sm.prototype),this.stack=(t=new Error().stack)!=null?t:""}};function Wc(e){return typeof e=="string"?ql(e):e}var Gc=jl;function CP(){return{autoResize:!0,fontSize:16,pageBorderWidth:1,renderAllPages:!0,pageViewMode:"autoSpread",zoom:1,fitToScreen:!1,defaultPaperSize:void 0,allowScripts:!0,pixelRatio:8}}function jc(e){let t={};return Object.keys(e).forEach(i=>{let n=e[i];switch(i){case"autoResize":t.autoresize=n;break;case"pageBorderWidth":t.pageBorder=n;break;default:t[i]=n}}),t}var om=class{constructor(e,t){u(this,"settings",e),u(this,"initialized",!1),u(this,"adaptViewer_"),u(this,"options"),u(this,"eventTarget"),Kc(!!e.debug),this.adaptViewer_=new SP(e.window||window,e.viewportElement,"main",this.dispatcher.bind(this)),this.options=CP(),t&&this.setOptions(t),this.eventTarget=new Zl,Object.defineProperty(this,"readyState",{get(){return this.adaptViewer_.readyState}})}setOptions(e){let t=Object.assign({a:"configure"},jc(e));this.adaptViewer_.sendCommand(t),Object.assign(this.options,e)}dispatcher(e){let t={type:e.t},i=e;Object.keys(i).forEach(n=>{n!=="t"&&(t[n]=i[n])}),this.eventTarget.dispatchEvent(t)}addListener(e,t){e==="paginationprogress"&&this.adaptViewer_.ensurePaginationProgressListener(),this.eventTarget.addEventListener(e,t,!1)}removeListener(e,t){var i;this.eventTarget.removeEventListener(e,t,!1),e==="paginationprogress"&&!((i=this.eventTarget.listeners[e])!=null&&i.length)&&this.adaptViewer_.removePaginationProgressListener()}loadDocument(e,t,i){if(!e||(Array.isArray(e)?!e[0]||typeof e[0]!="string"&&!e[0].url:typeof e!="string"&&!e.url)){this.eventTarget.dispatchEvent({type:"error",content:{error:new Error("No URL specified")}});return}this.loadDocumentOrPublication(e,null,t,i)}loadPublication(e,t,i){if(!e){this.eventTarget.dispatchEvent({type:"error",content:{error:new Error("No URL specified")}});return}this.loadDocumentOrPublication(null,e,t,i)}loadDocumentOrPublication(e,t,i,n){let r=i||{};function s(l){if(l)return l.flatMap(c=>{let d=c.url||null,p=c.text||null;return p!==null?[{url:d,text:p}]:d!==null?[{url:d}]:[]})}let o=s(r.authorStyleSheet),a=s(r.userStyleSheet);n&&Object.assign(this.options,n);let h=Object.assign({a:e?"loadXML":"loadPublication",userAgentRootURL:this.settings.userAgentRootURL,url:PP(e)||t,document:r.documentObject,fragment:r.fragment,authorStyleSheet:o,userStyleSheet:a,cmykReserveMapUrl:r.cmykReserveMapUrl},jc(this.options));this.initialized?this.adaptViewer_.sendCommand(h):(this.initialized=!0,this.adaptViewer_.initEmbed(h))}getCurrentPageProgression(){return this.adaptViewer_.getCurrentPageProgression()}resolveNavigation(e){switch(e){case"left":return this.getCurrentPageProgression()===Gc.LTR?"previous":"next";case"right":return this.getCurrentPageProgression()===Gc.LTR?"next":"previous";default:return e}}navigateToPage(e,t){e==="epage"?this.adaptViewer_.sendCommand({a:"moveTo",epage:t}):this.adaptViewer_.sendCommand({a:"moveTo",where:this.resolveNavigation(e)})}navigateToInternalUrl(e){this.adaptViewer_.sendCommand({a:"moveTo",url:e})}navigateToPosition(e){var t,i;this.adaptViewer_.sendCommand({a:"moveTo",position:{spineIndex:e.spineIndex,pageIndex:(t=e.pageIndex)!=null?t:-1,offsetInItem:(i=e.offsetInItem)!=null?i:-1}})}isTOCVisible(){return this.adaptViewer_.opfView&&this.adaptViewer_.opfView.opf&&this.adaptViewer_.opfView.opf.toc?!!this.adaptViewer_.opfView.isTOCVisible():null}showTOC(e,t){let i=e==null?"toggle":e?"show":"hide";this.adaptViewer_.sendCommand({a:"toc",v:i,autohide:t})}queryZoomFactor(e){return this.adaptViewer_.queryZoomFactor(e)}getPageSizes(){return this.adaptViewer_.pageSizes}getTOC(){var e,t,i;return(i=(t=(e=this.adaptViewer_.opfView)==null?void 0:e.tocView)==null?void 0:t.getTOC())!=null?i:[]}getMetadata(){return this.adaptViewer_.opf.getMetadata()}getCover(){return this.adaptViewer_.opf.cover}getCmykMap(){var e;let t=(e=this.adaptViewer_)==null?void 0:e.opfView;return t!=null&&t.cmykStore?t.cmykStore.toJSON():{}}};function PP(e){function t(n){return typeof n=="number"?n:null}function i(n){return typeof n=="string"?{url:n,startPage:null,skipPagesBefore:null}:{url:n.url,startPage:t(n.startPage),skipPagesBefore:t(n.skipPagesBefore)}}return Array.isArray(e)?e.map(i):e?[i(e)]:null}var am=(e=>(e.PREVIOUS="previous",e.NEXT="next",e.LEFT="left",e.RIGHT="right",e.FIRST="first",e.LAST="last",e.EPAGE="epage",e))(am||{}),kP=rm,EP=nm;Nt.forceRegisterEndTiming("load_vivliostyle");var NP=class{constructor(e,{title:t="",printCallback:i=o=>o.print(),errorCallback:n=null,hideIframe:r=!0,removeIframe:s=!0}){u(this,"htmlDoc"),u(this,"title"),u(this,"printCallback"),u(this,"errorCallback"),u(this,"hideIframe"),u(this,"removeIframe"),u(this,"iframe"),u(this,"iframeWin",null),u(this,"window"),this.htmlDoc=e,this.title=t,this.printCallback=i,this.errorCallback=n,this.hideIframe=r,this.removeIframe=s,this.iframe=document.createElement("iframe"),this.hideIframe&&(this.iframe.style.width="0",this.iframe.style.height="0",this.iframe.style.borderWidth="0"),this.window=window,this.window.printInstance=this,this.iframe.srcdoc=`
1883
1883
  <!DOCTYPE html>
1884
1884
  <html data-vivliostyle-paginated="true">
1885
1885
  <head>
@@ -1907,6 +1907,6 @@ span[data-viv-leader] {
1907
1907
  <body onload='parent.printInstance.runInIframe(window)'>
1908
1908
  <div id="vivliostyle-viewer-viewport"></div>
1909
1909
  </body>
1910
- </html>`,document.body.appendChild(this.iframe)}runInIframe(t){return this.iframeWin=t,this.preparePrint().then(()=>this.browserPrint()).then(()=>this.cleanUp())}preparePrint(){this.iframeWin.document.title=this.title;let t=new Blob([this.htmlDoc],{type:"text/html"}),e=URL.createObjectURL(t),i=new dm({viewportElement:this.iframeWin.document.body.firstElementChild,window:this.iframeWin,debug:!0});return new Promise(n=>{i.addListener("readystatechange",()=>{i.readyState==="complete"&&n()}),this.errorCallback&&i.addListener("error",r=>{var o,s;let a=(s=(o=r.content.error)==null?void 0:o.toString())!=null?s:r.content.messages.join(`
1911
- `);this.errorCallback(a)}),i.loadDocument({url:e})})}browserPrint(){this.printCallback(this.iframeWin)}cleanUp(){delete this.window.printInstance,this.removeIframe&&this.iframe.remove()}};function Nk(t,e){new Ek(t,e)}});var Tk={};Em(Tk,{printHTML:()=>mm.printHTML});module.exports=Tm(Tk);var mm=Nm(gm());
1910
+ </html>`,document.body.appendChild(this.iframe)}runInIframe(e){return this.iframeWin=e,this.preparePrint().then(()=>this.browserPrint()).then(()=>this.cleanUp())}preparePrint(){this.iframeWin.document.title=this.title;let e=new Blob([this.htmlDoc],{type:"text/html"}),t=URL.createObjectURL(e),i=new om({viewportElement:this.iframeWin.document.body.firstElementChild,window:this.iframeWin,debug:!0});return new Promise(n=>{i.addListener("readystatechange",()=>{i.readyState==="complete"&&n()}),this.errorCallback&&i.addListener("error",r=>{var s,o,a;let h=(o=(s=r.content.error)==null?void 0:s.toString())!=null?o:r.content.messages.join(`
1911
+ `);(a=this.errorCallback)==null||a.call(this,h)}),i.loadDocument({url:t})})}browserPrint(){this.printCallback(this.iframeWin)}cleanUp(){delete this.window.printInstance,this.removeIframe&&this.iframe.remove()}};function TP(e,t){new NP(e,t)}});var IP={};bm(IP,{printHTML:()=>um.printHTML});module.exports=Sm(IP);var um=xm(hm());
1912
1912
  //# sourceMappingURL=index.cjs.js.map