@libresign/pdf-elements 0.1.0

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.
@@ -0,0 +1,22 @@
1
+ /**
2
+ * @licstart The following is the entire license notice for the
3
+ * JavaScript code in this page
4
+ *
5
+ * Copyright 2024 Mozilla Foundation
6
+ *
7
+ * Licensed under the Apache License, Version 2.0 (the "License");
8
+ * you may not use this file except in compliance with the License.
9
+ * You may obtain a copy of the License at
10
+ *
11
+ * http://www.apache.org/licenses/LICENSE-2.0
12
+ *
13
+ * Unless required by applicable law or agreed to in writing, software
14
+ * distributed under the License is distributed on an "AS IS" BASIS,
15
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16
+ * See the License for the specific language governing permissions and
17
+ * limitations under the License.
18
+ *
19
+ * @licend The above is the entire license notice for the
20
+ * JavaScript code in this page
21
+ */
22
+ const e=!("object"!=typeof process||process+""!="[object process]"||process.versions.nw||process.versions.electron&&process.type&&"browser"!==process.type),t=[.001,0,0,.001,0,0],s=1.35,a=.35,i=.25925925925925924,n=1,r=2,o=4,c=8,l=16,h=64,u=128,d=256,f="pdfjs_internal_editor_",g=3,p=9,m=13,b=15,w=101,y={PRINT:4,MODIFY_CONTENTS:8,COPY:16,MODIFY_ANNOTATIONS:32,FILL_INTERACTIVE_FORMS:256,COPY_FOR_ACCESSIBILITY:512,ASSEMBLE:1024,PRINT_HIGH_QUALITY:2048},x=1,k=2,v=3,A=0,C=4,S=1,I=2,B=3,F={TEXT:1,LINK:2,FREETEXT:3,LINE:4,SQUARE:5,CIRCLE:6,POLYGON:7,POLYLINE:8,HIGHLIGHT:9,UNDERLINE:10,SQUIGGLY:11,STRIKEOUT:12,STAMP:13,CARET:14,INK:15,POPUP:16,FILEATTACHMENT:17,SOUND:18,MOVIE:19,WIDGET:20,SCREEN:21,PRINTERMARK:22,TRAPNET:23,WATERMARK:24,THREED:25,REDACT:26},M="Group",T="R",R=1,N=2,D=4,O=16,P=32,E=128,L=512,_=1,U=2,q=4096,j=8192,H=32768,$=65536,z=131072,G=1048576,W=2097152,V=8388608,X=16777216,K=1,Y=2,J=3,Z=4,Q=5,ee={E:"Mouse Enter",X:"Mouse Exit",D:"Mouse Down",U:"Mouse Up",Fo:"Focus",Bl:"Blur",PO:"PageOpen",PC:"PageClose",PV:"PageVisible",PI:"PageInvisible",K:"Keystroke",F:"Format",V:"Validate",C:"Calculate"},te={WC:"WillClose",WS:"WillSave",DS:"DidSave",WP:"WillPrint",DP:"DidPrint"},se={O:"PageOpen",C:"PageClose"},ae=1,ie=5,ne=1,re=2,oe=3,ce=4,le=5,he=6,ue=7,de=8,fe=9,ge=10,pe=11,me=12,be=13,we=14,ye=15,xe=16,ke=17,ve=18,Ae=19,Ce=20,Se=21,Ie=22,Be=23,Fe=24,Me=25,Te=26,Re=27,Ne=28,De=29,Oe=30,Pe=31,Ee=32,Le=33,_e=34,Ue=35,qe=36,je=37,He=38,$e=39,ze=40,Ge=41,We=42,Ve=43,Xe=44,Ke=45,Ye=46,Je=47,Ze=48,Qe=49,et=50,tt=51,st=52,at=53,it=54,nt=55,rt=56,ot=57,ct=58,lt=59,ht=60,ut=61,dt=62,ft=63,gt=64,pt=65,mt=66,bt=67,wt=68,yt=69,xt=70,kt=71,vt=72,At=73,Ct=74,St=75,It=76,Bt=77,Ft=80,Mt=81,Tt=83,Rt=84,Nt=85,Dt=86,Ot=87,Pt=88,Et=89,Lt=90,_t=91,Ut=92,qt=93,jt=94,Ht=0,$t=1,zt=2,Gt=3,Wt=4,Vt=1,Xt=2;let Kt=ae;function Yt(){return Kt}function Jt(e){Kt>=ie&&console.info(`Info: ${e}`)}function Zt(e){Kt>=ae&&console.warn(`Warning: ${e}`)}function Qt(e){throw new Error(e)}function es(e,t){e||Qt(t)}function ts(e,t=null,s=null){if(!e)return null;if(s&&"string"==typeof e){if(s.addDefaultProtocol&&e.startsWith("www.")){const t=e.match(/\./g);t?.length>=2&&(e=`http://${e}`)}if(s.tryConvertEncoding)try{e=ys(e)}catch{}}const a=t?URL.parse(e,t):URL.parse(e);return function(e){switch(e?.protocol){case"http:":case"https:":case"ftp:":case"mailto:":case"tel:":return!0;default:return!1}}(a)?a:null}function ss(e,t,s,a=!1){return Object.defineProperty(e,t,{value:s,enumerable:!a,configurable:!0,writable:!1}),s}const as=function(){function e(e,t){this.message=e,this.name=t}return e.prototype=new Error,e.constructor=e,e}();class is extends as{constructor(e,t){super(e,"PasswordException"),this.code=t}}class ns extends as{constructor(e,t){super(e,"UnknownErrorException"),this.details=t}}class rs extends as{constructor(e){super(e,"InvalidPDFException")}}class os extends as{constructor(e,t,s){super(e,"ResponseException"),this.status=t,this.missing=s}}class cs extends as{constructor(e){super(e,"FormatError")}}class ls extends as{constructor(e){super(e,"AbortException")}}function hs(e){"object"==typeof e&&void 0!==e?.length||Qt("Invalid argument for bytesToString");const t=e.length,s=8192;if(t<s)return String.fromCharCode.apply(null,e);const a=[];for(let i=0;i<t;i+=s){const n=Math.min(i+s,t),r=e.subarray(i,n);a.push(String.fromCharCode.apply(null,r))}return a.join("")}function us(e){"string"!=typeof e&&Qt("Invalid argument for stringToBytes");const t=e.length,s=new Uint8Array(t);for(let a=0;a<t;++a)s[a]=255&e.charCodeAt(a);return s}function ds(e){return String.fromCharCode(e>>24&255,e>>16&255,e>>8&255,255&e)}function fs(e){return Object.keys(e).length}class gs{static get isLittleEndian(){return ss(this,"isLittleEndian",function(){const e=new Uint8Array(4);return e[0]=1,1===new Uint32Array(e.buffer,0,1)[0]}())}static get isEvalSupported(){return ss(this,"isEvalSupported",function(){try{return new Function(""),!0}catch{return!1}}())}static get isOffscreenCanvasSupported(){return ss(this,"isOffscreenCanvasSupported","undefined"!=typeof OffscreenCanvas)}static get isImageDecoderSupported(){return ss(this,"isImageDecoderSupported","undefined"!=typeof ImageDecoder)}static get isFloat16ArraySupported(){return ss(this,"isFloat16ArraySupported","undefined"!=typeof Float16Array)}static get isSanitizerSupported(){return ss(this,"isSanitizerSupported","undefined"!=typeof Sanitizer)}static get platform(){const{platform:e,userAgent:t}=navigator;return ss(this,"platform",{isAndroid:t.includes("Android"),isLinux:e.includes("Linux"),isMac:e.includes("Mac"),isWindows:e.includes("Win"),isFirefox:t.includes("Firefox")})}static get isCSSRoundSupported(){return ss(this,"isCSSRoundSupported",globalThis.CSS?.supports?.("width: round(1.5px, 1px)"))}}const ps=Array.from(Array(256).keys(),e=>e.toString(16).padStart(2,"0"));class ms{static makeHexColor(e,t,s){return`#${ps[e]}${ps[t]}${ps[s]}`}static domMatrixToTransform(e){return[e.a,e.b,e.c,e.d,e.e,e.f]}static scaleMinMax(e,t){let s;e[0]?(e[0]<0&&(s=t[0],t[0]=t[2],t[2]=s),t[0]*=e[0],t[2]*=e[0],e[3]<0&&(s=t[1],t[1]=t[3],t[3]=s),t[1]*=e[3],t[3]*=e[3]):(s=t[0],t[0]=t[1],t[1]=s,s=t[2],t[2]=t[3],t[3]=s,e[1]<0&&(s=t[1],t[1]=t[3],t[3]=s),t[1]*=e[1],t[3]*=e[1],e[2]<0&&(s=t[0],t[0]=t[2],t[2]=s),t[0]*=e[2],t[2]*=e[2]),t[0]+=e[4],t[1]+=e[5],t[2]+=e[4],t[3]+=e[5]}static transform(e,t){return[e[0]*t[0]+e[2]*t[1],e[1]*t[0]+e[3]*t[1],e[0]*t[2]+e[2]*t[3],e[1]*t[2]+e[3]*t[3],e[0]*t[4]+e[2]*t[5]+e[4],e[1]*t[4]+e[3]*t[5]+e[5]]}static multiplyByDOMMatrix(e,t){return[e[0]*t.a+e[2]*t.b,e[1]*t.a+e[3]*t.b,e[0]*t.c+e[2]*t.d,e[1]*t.c+e[3]*t.d,e[0]*t.e+e[2]*t.f+e[4],e[1]*t.e+e[3]*t.f+e[5]]}static applyTransform(e,t,s=0){const a=e[s],i=e[s+1];e[s]=a*t[0]+i*t[2]+t[4],e[s+1]=a*t[1]+i*t[3]+t[5]}static applyTransformToBezier(e,t,s=0){const a=t[0],i=t[1],n=t[2],r=t[3],o=t[4],c=t[5];for(let l=0;l<6;l+=2){const t=e[s+l],h=e[s+l+1];e[s+l]=t*a+h*n+o,e[s+l+1]=t*i+h*r+c}}static applyInverseTransform(e,t){const s=e[0],a=e[1],i=t[0]*t[3]-t[1]*t[2];e[0]=(s*t[3]-a*t[2]+t[2]*t[5]-t[4]*t[3])/i,e[1]=(-s*t[1]+a*t[0]+t[4]*t[1]-t[5]*t[0])/i}static axialAlignedBoundingBox(e,t,s){const a=t[0],i=t[1],n=t[2],r=t[3],o=t[4],c=t[5],l=e[0],h=e[1],u=e[2],d=e[3];let f=a*l+o,g=f,p=a*u+o,m=p,b=r*h+c,w=b,y=r*d+c,x=y;if(0!==i||0!==n){const e=i*l,t=i*u,s=n*h,a=n*d;f+=s,m+=s,p+=a,g+=a,b+=e,x+=e,y+=t,w+=t}s[0]=Math.min(s[0],f,p,g,m),s[1]=Math.min(s[1],b,y,w,x),s[2]=Math.max(s[2],f,p,g,m),s[3]=Math.max(s[3],b,y,w,x)}static inverseTransform(e){const t=e[0]*e[3]-e[1]*e[2];return[e[3]/t,-e[1]/t,-e[2]/t,e[0]/t,(e[2]*e[5]-e[4]*e[3])/t,(e[4]*e[1]-e[5]*e[0])/t]}static singularValueDecompose2dScale(e,t){const s=e[0],a=e[1],i=e[2],n=e[3],r=s**2+a**2,o=s*i+a*n,c=i**2+n**2,l=(r+c)/2,h=Math.sqrt(l**2-(r*c-o**2));t[0]=Math.sqrt(l+h||1),t[1]=Math.sqrt(l-h||1)}static normalizeRect(e){const t=e.slice(0);return e[0]>e[2]&&(t[0]=e[2],t[2]=e[0]),e[1]>e[3]&&(t[1]=e[3],t[3]=e[1]),t}static intersect(e,t){const s=Math.max(Math.min(e[0],e[2]),Math.min(t[0],t[2])),a=Math.min(Math.max(e[0],e[2]),Math.max(t[0],t[2]));if(s>a)return null;const i=Math.max(Math.min(e[1],e[3]),Math.min(t[1],t[3])),n=Math.min(Math.max(e[1],e[3]),Math.max(t[1],t[3]));return i>n?null:[s,i,a,n]}static pointBoundingBox(e,t,s){s[0]=Math.min(s[0],e),s[1]=Math.min(s[1],t),s[2]=Math.max(s[2],e),s[3]=Math.max(s[3],t)}static rectBoundingBox(e,t,s,a,i){i[0]=Math.min(i[0],e,s),i[1]=Math.min(i[1],t,a),i[2]=Math.max(i[2],e,s),i[3]=Math.max(i[3],t,a)}static#e(e,t,s,a,i,n,r,o,c,l){if(c<=0||c>=1)return;const h=1-c,u=c*c,d=u*c,f=h*(h*(h*e+3*c*t)+3*u*s)+d*a,g=h*(h*(h*i+3*c*n)+3*u*r)+d*o;l[0]=Math.min(l[0],f),l[1]=Math.min(l[1],g),l[2]=Math.max(l[2],f),l[3]=Math.max(l[3],g)}static#t(e,t,s,a,i,n,r,o,c,l,h,u){if(Math.abs(c)<1e-12)return void(Math.abs(l)>=1e-12&&this.#e(e,t,s,a,i,n,r,o,-h/l,u));const d=l**2-4*h*c;if(d<0)return;const f=Math.sqrt(d),g=2*c;this.#e(e,t,s,a,i,n,r,o,(-l+f)/g,u),this.#e(e,t,s,a,i,n,r,o,(-l-f)/g,u)}static bezierBoundingBox(e,t,s,a,i,n,r,o,c){c[0]=Math.min(c[0],e,r),c[1]=Math.min(c[1],t,o),c[2]=Math.max(c[2],e,r),c[3]=Math.max(c[3],t,o),this.#t(e,s,i,r,t,a,n,o,3*(3*(s-i)-e+r),6*(e-2*s+i),3*(s-e),c),this.#t(e,s,i,r,t,a,n,o,3*(3*(a-n)-t+o),6*(t-2*a+n),3*(a-t),c)}}const bs=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,728,711,710,729,733,731,730,732,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8226,8224,8225,8230,8212,8211,402,8260,8249,8250,8722,8240,8222,8220,8221,8216,8217,8218,8482,64257,64258,321,338,352,376,381,305,322,339,353,382,0,8364];function ws(e,t=!1){if(e[0]>="ï"){let s;if("þ"===e[0]&&"ÿ"===e[1]?(s="utf-16be",e.length%2==1&&(e=e.slice(0,-1))):"ÿ"===e[0]&&"þ"===e[1]?(s="utf-16le",e.length%2==1&&(e=e.slice(0,-1))):"ï"===e[0]&&"»"===e[1]&&"¿"===e[2]&&(s="utf-8"),s)try{const a=new TextDecoder(s,{fatal:!0}),i=us(e),n=a.decode(i);return t||!n.includes("")?n:n.replaceAll(/\x1b[^\x1b]*(?:\x1b|$)/g,"")}catch(e){Zt(`stringToPDFString: "${e}".`)}}const s=[];for(let a=0,i=e.length;a<i;a++){const n=e.charCodeAt(a);if(!t&&27===n){for(;++a<i&&27!==e.charCodeAt(a););continue}const r=bs[n];s.push(r?String.fromCharCode(r):e.charAt(a))}return s.join("")}function ys(e){return decodeURIComponent(escape(e))}function xs(e){return unescape(encodeURIComponent(e))}function ks(e,t){if(e.length!==t.length)return!1;for(let s=0,a=e.length;s<a;s++)if(e[s]!==t[s])return!1;return!0}function vs(e=new Date){return e instanceof Date||(e=new Date(e)),[e.getUTCFullYear().toString(),(e.getUTCMonth()+1).toString().padStart(2,"0"),e.getUTCDate().toString().padStart(2,"0"),e.getUTCHours().toString().padStart(2,"0"),e.getUTCMinutes().toString().padStart(2,"0"),e.getUTCSeconds().toString().padStart(2,"0")].join("")}let As=null,Cs=null;function Ss(e,t,s){return Math.min(Math.max(e,t),s)}function Is(e){return Uint8Array.prototype.toHex?e.toHex():Array.from(e,e=>ps[e]).join("")}"function"!=typeof Promise.try&&(Promise.try=function(e,...t){return new Promise(s=>{s(e(...t))})}),"function"!=typeof Math.sumPrecise&&(Math.sumPrecise=function(e){return e.reduce((e,t)=>e+t,0)});const Bs=Symbol("CIRCULAR_REF"),Fs=Symbol("EOF");let Ms=Object.create(null),Ts=Object.create(null),Rs=Object.create(null);class Ns{constructor(e){this.name=e}static get(e){return Ts[e]||=new Ns(e)}}class Ds{constructor(e){this.cmd=e}static get(e){return Ms[e]||=new Ds(e)}}const Os=function(){return Os};class Ps{constructor(e=null){this._map=new Map,this.xref=e,this.objId=null,this.suppressEncryption=!1,this.__nonSerializable__=Os}assignXref(e){this.xref=e}get size(){return this._map.size}get(e,t,s){let a=this._map.get(e);return void 0===a&&void 0!==t&&(a=this._map.get(t),void 0===a&&void 0!==s&&(a=this._map.get(s))),a instanceof Es&&this.xref?this.xref.fetch(a,this.suppressEncryption):a}async getAsync(e,t,s){let a=this._map.get(e);return void 0===a&&void 0!==t&&(a=this._map.get(t),void 0===a&&void 0!==s&&(a=this._map.get(s))),a instanceof Es&&this.xref?this.xref.fetchAsync(a,this.suppressEncryption):a}getArray(e,t,s){let a=this._map.get(e);if(void 0===a&&void 0!==t&&(a=this._map.get(t),void 0===a&&void 0!==s&&(a=this._map.get(s))),a instanceof Es&&this.xref&&(a=this.xref.fetch(a,this.suppressEncryption)),Array.isArray(a)){a=a.slice();for(let e=0,t=a.length;e<t;e++)a[e]instanceof Es&&this.xref&&(a[e]=this.xref.fetch(a[e],this.suppressEncryption))}return a}getRaw(e){return this._map.get(e)}getKeys(){return[...this._map.keys()]}getRawValues(){return[...this._map.values()]}getRawEntries(){return this._map.entries()}set(e,t){this._map.set(e,t)}setIfNotExists(e,t){this.has(e)||this.set(e,t)}setIfNumber(e,t){"number"==typeof t&&this.set(e,t)}setIfArray(e,t){(Array.isArray(t)||ArrayBuffer.isView(t))&&this.set(e,t)}setIfDefined(e,t){null!=t&&this.set(e,t)}setIfName(e,t){"string"==typeof t?this.set(e,Ns.get(t)):t instanceof Ns&&this.set(e,t)}setIfDict(e,t){t instanceof Ps&&this.set(e,t)}has(e){return this._map.has(e)}*[Symbol.iterator](){for(const[e,t]of this._map)yield[e,t instanceof Es&&this.xref?this.xref.fetch(t,this.suppressEncryption):t]}static get empty(){const e=new Ps(null);return e.set=(e,t)=>{Qt("Should not call `set` on the empty dictionary.")},ss(this,"empty",e)}static merge({xref:e,dictArray:t,mergeSubDicts:s=!1}){const a=new Ps(e),i=new Map;for(const n of t)if(n instanceof Ps)for(const[e,t]of n._map){let a=i.get(e);if(void 0===a)a=[],i.set(e,a);else if(!(s&&t instanceof Ps))continue;a.push(t)}for(const[n,r]of i){if(1===r.length||!(r[0]instanceof Ps)){a._map.set(n,r[0]);continue}const t=new Ps(e);for(const e of r)for(const[s,a]of e._map)t._map.has(s)||t._map.set(s,a);t.size>0&&a._map.set(n,t)}return i.clear(),a.size>0?a:Ps.empty}clone(){const e=new Ps(this.xref);for(const t of this.getKeys())e.set(t,this.getRaw(t));return e}delete(e){this._map.delete(e)}}class Es{constructor(e,t){this.num=e,this.gen=t}toString(){return 0===this.gen?`${this.num}R`:`${this.num}R${this.gen}`}static fromString(e){const t=Rs[e];if(t)return t;const s=/^(\d+)R(\d*)$/.exec(e);return s&&"0"!==s[1]?Rs[e]=new Es(parseInt(s[1]),s[2]?parseInt(s[2]):0):null}static get(e,t){const s=0===t?`${e}R`:`${e}R${t}`;return Rs[s]||=new Es(e,t)}}class Ls{constructor(e=null){this._set=new Set(e?._set)}has(e){return this._set.has(e.toString())}put(e){this._set.add(e.toString())}remove(e){this._set.delete(e.toString())}[Symbol.iterator](){return this._set.values()}clear(){this._set.clear()}}class _s{constructor(){this._map=new Map}get size(){return this._map.size}get(e){return this._map.get(e.toString())}has(e){return this._map.has(e.toString())}put(e,t){this._map.set(e.toString(),t)}putAlias(e,t){this._map.set(e.toString(),this.get(t))}[Symbol.iterator](){return this._map.values()}clear(){this._map.clear()}*values(){yield*this._map.values()}*items(){for(const[e,t]of this._map)yield[Es.fromString(e),t]}*keys(){for(const e of this._map.keys())yield Es.fromString(e)}}function Us(e,t){return e instanceof Ns&&(void 0===t||e.name===t)}function qs(e,t){return e instanceof Ds&&(void 0===t||e.cmd===t)}function js(e,t){return e instanceof Ps&&(void 0===t||Us(e.get("Type"),t))}function Hs(e,t){return e.num===t.num&&e.gen===t.gen}class $s{get length(){Qt("Abstract getter `length` accessed")}get isEmpty(){Qt("Abstract getter `isEmpty` accessed")}get isDataLoaded(){return ss(this,"isDataLoaded",!0)}getByte(){Qt("Abstract method `getByte` called")}getBytes(e){Qt("Abstract method `getBytes` called")}async getImageData(e,t){return this.getBytes(e,t)}async asyncGetBytes(){Qt("Abstract method `asyncGetBytes` called")}get isAsync(){return!1}get isAsyncDecoder(){return!1}get canAsyncDecodeImageFromBuffer(){return!1}async getTransferableImage(){return null}peekByte(){const e=this.getByte();return-1!==e&&this.pos--,e}peekBytes(e){const t=this.getBytes(e);return this.pos-=t.length,t}getUint16(){const e=this.getByte(),t=this.getByte();return-1===e||-1===t?-1:(e<<8)+t}getInt32(){return(this.getByte()<<24)+(this.getByte()<<16)+(this.getByte()<<8)+this.getByte()}getByteRange(e,t){Qt("Abstract method `getByteRange` called")}getString(e){return hs(this.getBytes(e))}skip(e){this.pos+=e||1}reset(){Qt("Abstract method `reset` called")}moveStart(){Qt("Abstract method `moveStart` called")}makeSubStream(e,t,s=null){Qt("Abstract method `makeSubStream` called")}getBaseStreams(){return null}getOriginalStream(){return this.stream?.getOriginalStream()||this}}const zs=/^[1-9]\.\d$/,Gs=2**31-1,Ws=[1,0,0,1,0,0],Vs=["ColorSpace","ExtGState","Font","Pattern","Properties","Shading","XObject"],Xs=["ExtGState","Font","Properties","XObject"];function Ks(e){let t;return function(){return e&&(t=Object.create(null),e(t),e=null),t}}class Ys extends as{constructor(e,t){super(`Missing data [${e}, ${t})`,"MissingDataException"),this.begin=e,this.end=t}}class Js extends as{constructor(e){super(e,"ParserEOFException")}}class Zs extends as{constructor(e){super(e,"XRefEntryException")}}class Qs extends as{constructor(e){super(e,"XRefParseException")}}function ea(e){const t=e.length;if(0===t)return new Uint8Array(0);if(1===t)return new Uint8Array(e[0]);let s=0;for(let n=0;n<t;n++)s+=e[n].byteLength;const a=new Uint8Array(s);let i=0;for(let n=0;n<t;n++){const t=new Uint8Array(e[n]);a.set(t,i),i+=t.byteLength}return a}async function ta(e){const t=await fetch(e);if(!t.ok)throw new Error(`Failed to fetch file "${e}" with "${t.statusText}".`);return new Uint8Array(await t.arrayBuffer())}function sa({dict:e,key:t,getArray:s=!1,stopWhenFound:a=!0}){let i;const n=new Ls;for(;e instanceof Ps&&(!e.objId||!n.has(e.objId));){e.objId&&n.put(e.objId);const r=s?e.getArray(t):e.get(t);if(void 0!==r){if(a)return r;(i||=[]).push(r)}e=e.get("Parent")}return i}const aa=["","C","CC","CCC","CD","D","DC","DCC","DCCC","CM","","X","XX","XXX","XL","L","LX","LXX","LXXX","XC","","I","II","III","IV","V","VI","VII","VIII","IX"];function ia(e,t=!1){es(Number.isInteger(e)&&e>0,"The number should be a positive integer.");const s="M".repeat(e/1e3|0)+aa[e%1e3/100|0]+aa[10+(e%100/10|0)]+aa[20+e%10];return t?s.toLowerCase():s}function na(e){return e>0?Math.ceil(Math.log2(e)):0}function ra(e,t){return e[t]<<24>>24}function oa(e,t){return(e[t]<<24|e[t+1]<<16)>>16}function ca(e,t){return e[t]<<8|e[t+1]}function la(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0}function ha(e){return 32===e||9===e||13===e||10===e}function ua(e,t){return Array.isArray(e)?(null===t||e.length===t)&&e.every(e=>"number"==typeof e):ArrayBuffer.isView(e)&&!(e instanceof BigInt64Array||e instanceof BigUint64Array)&&(null===t||e.length===t)}function da(e,t){return ua(e,6)?e:t}function fa(e,t){return ua(e,4)?e:t}function ga(e,t){return ua(e,4)?ms.normalizeRect(e):t}function pa(e){const t=/(.+)\[(\d+)\]$/;return e.split(".").map(e=>{const s=e.match(t);return s?{name:s[1],pos:parseInt(s[2],10)}:{name:e,pos:0}})}function ma(e){const t=[];let s=0;for(let a=0,i=e.length;a<i;a++){const i=e.charCodeAt(a);(i<33||i>126||35===i||40===i||41===i||60===i||62===i||91===i||93===i||123===i||125===i||47===i||37===i)&&(s<a&&t.push(e.substring(s,a)),t.push(`#${i.toString(16)}`),s=a+1)}return 0===t.length?e:(s<e.length&&t.push(e.substring(s,e.length)),t.join(""))}function ba(e){return e.replaceAll(/([()\\\n\r])/g,e=>"\n"===e?"\\n":"\r"===e?"\\r":`\\${e}`)}function wa(e,t,s,a){if(!e)return;let i=null;if(e instanceof Es){if(a.has(e))return;i=e,a.put(i),e=t.fetch(e)}if(Array.isArray(e))for(const n of e)wa(n,t,s,a);else if(e instanceof Ps){if(Us(e.get("S"),"JavaScript")){const t=e.get("JS");let a;t instanceof $s?a=t.getString():"string"==typeof t&&(a=t),a&&=ws(a,!0).replaceAll("\0",""),a&&s.push(a.trim())}wa(e.getRaw("Next"),t,s,a)}i&&a.remove(i)}function ya(e,t,s){const a=Object.create(null),i=sa({dict:t,key:"AA",stopWhenFound:!1});if(i)for(let n=i.length-1;n>=0;n--){const t=i[n];if(t instanceof Ps)for(const i of t.getKeys()){const n=s[i];if(!n)continue;const r=[];wa(t.getRaw(i),e,r,new Ls),r.length>0&&(a[n]=r)}}if(t.has("A")){const s=[];wa(t.get("A"),e,s,new Ls),s.length>0&&(a.Action=s)}return fs(a)>0?a:null}const xa={60:"&lt;",62:"&gt;",38:"&amp;",34:"&quot;",39:"&apos;"};function*ka(e){for(let t=0,s=e.length;t<s;t++){const s=e.codePointAt(t);s>55295&&(s<57344||s>65533)&&t++,yield s}}function va(e){const t=[];let s=0;for(let a=0,i=e.length;a<i;a++){const i=e.codePointAt(a);if(32<=i&&i<=126){const n=xa[i];n&&(s<a&&t.push(e.substring(s,a)),t.push(n),s=a+1)}else s<a&&t.push(e.substring(s,a)),t.push(`&#x${i.toString(16).toUpperCase()};`),i>55295&&(i<57344||i>65533)&&a++,s=a+1}return 0===t.length?e:(s<e.length&&t.push(e.substring(s,e.length)),t.join(""))}function Aa(e,t=!1){const s=/^("|').*("|')$/.exec(e);if(s&&s[1]===s[2]){if(new RegExp(`[^\\\\]${s[1]}`).test(e.slice(1,-1)))return t&&Zt(`FontFamily contains unescaped ${s[1]}: ${e}.`),!1}else for(const a of e.split(/[ \t]+/))if(/^(\d|(-(\d|-)))/.test(a)||!/^[\w-\\]+$/.test(a))return t&&Zt(`FontFamily contains invalid <custom-ident>: ${e}.`),!1;return!0}function Ca(e){const t=new Set(["100","200","300","400","500","600","700","800","900","1000","normal","bold","bolder","lighter"]),{fontFamily:s,fontWeight:a,italicAngle:i}=e;if(!Aa(s,!0))return!1;const n=a?a.toString():"";e.fontWeight=t.has(n)?n:"400";const r=parseFloat(i);return e.italicAngle=isNaN(r)||r<-90||r>90?"14":i.toString(),!0}function Sa(e){const t=new RegExp("^\\s*("+["app.launchURL","window.open","xfa.host.gotoURL"].join("|").replaceAll(".","\\.")+")\\((?:'|\")([^'\"]*)(?:'|\")(?:,\\s*(\\w+)\\)|\\))","i").exec(e);return t?.[2]?{url:t[2],newWindow:"app.launchURL"===t[1]&&"true"===t[3]}:null}function Ia(e){if(Number.isInteger(e))return e.toString();const t=Math.round(100*e);return t%100==0?(t/100).toString():t%10==0?e.toFixed(1):e.toFixed(2)}function Ba(e){if(!e)return null;const t=new Map;for(const[s,a]of e){if(!s.startsWith(f))continue;let e=t.get(a.pageIndex);e||(e=[],t.set(a.pageIndex,e)),e.push(a)}return t.size>0?t:null}function Fa(e){return null==e||function(e){return"string"==typeof e&&(!e||/^[\x00-\x7F]*$/.test(e))}(e)?e:Ta(e,!0)}function Ma(e){const t=[];for(let s=0,a=e.length;s<a;s++){const a=e.charCodeAt(s);t.push(ps[a>>8&255],ps[255&a])}return t.join("")}function Ta(e,t=!1){const s=[];t&&s.push("þÿ");for(let a=0,i=e.length;a<i;a++){const t=e.charCodeAt(a);s.push(String.fromCharCode(t>>8&255),String.fromCharCode(255&t))}return s.join("")}function Ra(e,t,s){switch(e){case 90:return[0,1,-1,0,t,0];case 180:return[-1,0,0,-1,t,s];case 270:return[0,-1,1,0,0,s];default:throw new Error("Invalid rotation")}}function Na(e){return Math.ceil(Math.ceil(Math.log2(1+e))/8)}class Da{static#s=null;static _memory=null;static _mustAddAlpha=!1;static _destBuffer=null;static _destOffset=0;static _destLength=0;static _cssColor="";static _makeHexColor=null;static get _memoryArray(){const e=this.#s;return e?.byteLength?e:this.#s=new Uint8Array(this._memory.buffer)}}let Oa;const Pa="undefined"!=typeof TextDecoder?new TextDecoder("utf-8",{ignoreBOM:!0,fatal:!0}):{decode:()=>{throw Error("TextDecoder not available")}};"undefined"!=typeof TextDecoder&&Pa.decode();let Ea=null;function La(){return null!==Ea&&0!==Ea.byteLength||(Ea=new Uint8Array(Oa.memory.buffer)),Ea}let _a=0;function Ua(e,t){const s=t(1*e.length,1)>>>0;return La().set(e,s/1),_a=e.length,s}const qa=Object.freeze({RGB8:0,0:"RGB8",RGBA8:1,1:"RGBA8",BGRA8:2,2:"BGRA8",Gray8:3,3:"Gray8",GrayA8:4,4:"GrayA8",CMYK:5,5:"CMYK"}),ja=Object.freeze({Perceptual:0,0:"Perceptual",RelativeColorimetric:1,1:"RelativeColorimetric",Saturation:2,2:"Saturation",AbsoluteColorimetric:3,3:"AbsoluteColorimetric"});function Ha(){const e={wbg:{}};return e.wbg.__wbg_copyresult_b08ee7d273f295dd=function(e,t){!function(e,t){const{_mustAddAlpha:s,_destBuffer:a,_destOffset:i,_destLength:n,_memoryArray:r}=Da;if(t!==n)if(s)for(let o=e,c=e+t,l=i;o<c;o+=3,l+=4)a[l]=r[o],a[l+1]=r[o+1],a[l+2]=r[o+2],a[l+3]=255;else for(let o=e,c=e+t,l=i;o<c;o+=3,l+=4)a[l]=r[o],a[l+1]=r[o+1],a[l+2]=r[o+2];else a.set(r.subarray(e,e+t),i)}(e>>>0,t>>>0)},e.wbg.__wbg_copyrgb_d60ce17bb05d9b67=function(e){!function(e){const{_destBuffer:t,_destOffset:s,_memoryArray:a}=Da;t[s]=a[e],t[s+1]=a[e+1],t[s+2]=a[e+2]}(e>>>0)},e.wbg.__wbg_makecssRGB_893bf0cd9fdb302d=function(e){!function(e){const{_memoryArray:t}=Da;Da._cssColor=Da._makeHexColor(t[e],t[e+1],t[e+2])}(e>>>0)},e.wbg.__wbindgen_init_externref_table=function(){const e=Oa.__wbindgen_export_0,t=e.grow(4);e.set(0,void 0),e.set(t+0,void 0),e.set(t+1,null),e.set(t+2,!0),e.set(t+3,!1)},e.wbg.__wbindgen_throw=function(e,t){throw new Error(function(e,t){return e>>>=0,Pa.decode(La().subarray(e,e+t))}(e,t))},e}function $a(e,t){return Oa=e.exports,za.__wbindgen_wasm_module=t,Ea=null,Oa.__wbindgen_start(),Oa}async function za(e){if(void 0!==Oa)return Oa;void 0!==e&&(Object.getPrototypeOf(e)===Object.prototype?({module_or_path:e}=e):console.warn("using deprecated parameters for the initialization function; pass a single object instead"));const t=Ha();("string"==typeof e||"function"==typeof Request&&e instanceof Request||"function"==typeof URL&&e instanceof URL)&&(e=fetch(e));const{instance:s,module:a}=await async function(e,t){if("function"==typeof Response&&e instanceof Response){if("function"==typeof WebAssembly.instantiateStreaming)try{return await WebAssembly.instantiateStreaming(e,t)}catch(t){if("application/wasm"==e.headers.get("Content-Type"))throw t;console.warn("`WebAssembly.instantiateStreaming` failed because your server does not serve Wasm with `application/wasm` MIME type. Falling back to `WebAssembly.instantiate` which is slower. Original error:\n",t)}const s=await e.arrayBuffer();return await WebAssembly.instantiate(s,t)}{const s=await WebAssembly.instantiate(e,t);return s instanceof WebAssembly.Instance?{instance:s,module:e}:s}}(await e,t);return $a(s,a)}class Ga{static#a=new Uint8ClampedArray(3);constructor(e,t){this.name=e,this.numComps=t}getRgb(e,t,s=new Uint8ClampedArray(3)){return this.getRgbItem(e,t,s,0),s}getRgbHex(e,t){const s=this.getRgb(e,t,Ga.#a);return ms.makeHexColor(s[0],s[1],s[2])}getRgbItem(e,t,s,a){Qt("Should not call ColorSpace.getRgbItem")}getRgbBuffer(e,t,s,a,i,n,r){Qt("Should not call ColorSpace.getRgbBuffer")}getOutputLength(e,t){Qt("Should not call ColorSpace.getOutputLength")}isPassthrough(e){return!1}isDefaultDecode(e,t){return Ga.isDefaultDecode(e,this.numComps)}fillRgb(e,t,s,a,i,n,r,o,c){const l=t*s;let h=null;const u=1<<r,d=s!==i||t!==a;if(this.isPassthrough(r))h=o;else if(1===this.numComps&&l>u&&"DeviceGray"!==this.name&&"DeviceRGB"!==this.name){const t=r<=8?new Uint8Array(u):new Uint16Array(u);for(let e=0;e<u;e++)t[e]=e;const s=new Uint8ClampedArray(3*u);if(this.getRgbBuffer(t,0,u,s,0,r,0),d){h=new Uint8Array(3*l);let e=0;for(let t=0;t<l;++t){const a=3*o[t];h[e++]=s[a],h[e++]=s[a+1],h[e++]=s[a+2]}}else{let t=0;for(let a=0;a<l;++a){const i=3*o[a];e[t++]=s[i],e[t++]=s[i+1],e[t++]=s[i+2],t+=c}}}else d?(h=new Uint8ClampedArray(3*l),this.getRgbBuffer(o,0,l,h,0,r,0)):this.getRgbBuffer(o,0,a*n,e,0,r,c);if(h)if(d)!function(e,t,s,a,i,n,r){r=1!==r?0:r;const o=s/i,c=a/n;let l,h=0;const u=new Uint16Array(i),d=3*s;for(let f=0;f<i;f++)u[f]=3*Math.floor(f*o);for(let f=0;f<n;f++){const s=Math.floor(f*c)*d;for(let a=0;a<i;a++)l=s+u[a],t[h++]=e[l++],t[h++]=e[l++],t[h++]=e[l++],h+=r}}(h,e,t,s,a,i,c);else{let t=0,s=0;for(let i=0,r=a*n;i<r;i++)e[t++]=h[s++],e[t++]=h[s++],e[t++]=h[s++],t+=c}}get usesZeroToOneRange(){return ss(this,"usesZeroToOneRange",!0)}static isDefaultDecode(e,t){if(!Array.isArray(e))return!0;if(2*t!==e.length)return Zt("The decode map is not the correct length"),!0;for(let s=0,a=e.length;s<a;s+=2)if(0!==e[s]||1!==e[s+1])return!1;return!0}}class Wa extends Ga{constructor(e,t,s){super("Alternate",e),this.base=t,this.tintFn=s,this.tmpBuf=new Float32Array(t.numComps)}getRgbItem(e,t,s,a){const i=this.tmpBuf;this.tintFn(e,t,i,0),this.base.getRgbItem(i,0,s,a)}getRgbBuffer(e,t,s,a,i,n,r){const o=this.tintFn,c=this.base,l=1/((1<<n)-1),h=c.numComps,u=c.usesZeroToOneRange,d=(c.isPassthrough(8)||!u)&&0===r;let f=d?i:0;const g=d?a:new Uint8ClampedArray(h*s),p=this.numComps,m=new Float32Array(p),b=new Float32Array(h);let w,y;for(w=0;w<s;w++){for(y=0;y<p;y++)m[y]=e[t++]*l;if(o(m,0,b,0),u)for(y=0;y<h;y++)g[f++]=255*b[y];else c.getRgbItem(b,0,g,f),f+=h}d||c.getRgbBuffer(g,0,s,a,i,8,r)}getOutputLength(e,t){return this.base.getOutputLength(e*this.base.numComps/this.numComps,t)}}class Va extends Ga{constructor(e){super("Pattern",null),this.base=e}isDefaultDecode(e,t){Qt("Should not call PatternCS.isDefaultDecode")}}class Xa extends Ga{constructor(e,t,s){super("Indexed",1),this.base=e,this.highVal=t;const a=e.numComps*(t+1);if(this.lookup=new Uint8Array(a),s instanceof $s){const e=s.getBytes(a);this.lookup.set(e)}else{if("string"!=typeof s)throw new cs(`IndexedCS - unrecognized lookup table: ${s}`);for(let e=0;e<a;++e)this.lookup[e]=255&s.charCodeAt(e)}}getRgbItem(e,t,s,a){const{base:i,highVal:n,lookup:r}=this,o=Ss(Math.round(e[t]),0,n)*i.numComps;i.getRgbBuffer(r,o,1,s,a,8,0)}getRgbBuffer(e,t,s,a,i,n,r){const{base:o,highVal:c,lookup:l}=this,{numComps:h}=o,u=o.getOutputLength(h,r);for(let d=0;d<s;++d){const s=Ss(Math.round(e[t++]),0,c)*h;o.getRgbBuffer(l,s,1,a,i,8,r),i+=u}}getOutputLength(e,t){return this.base.getOutputLength(e*this.base.numComps,t)}isDefaultDecode(e,t){return!Array.isArray(e)||(2!==e.length?(Zt("Decode map length is not correct"),!0):!Number.isInteger(t)||t<1?(Zt("Bits per component is not correct"),!0):0===e[0]&&e[1]===(1<<t)-1)}}class Ka extends Ga{constructor(){super("DeviceGray",1)}getRgbItem(e,t,s,a){const i=255*e[t];s[a]=s[a+1]=s[a+2]=i}getRgbBuffer(e,t,s,a,i,n,r){const o=255/((1<<n)-1);let c=t,l=i;for(let h=0;h<s;++h){const t=o*e[c++];a[l++]=t,a[l++]=t,a[l++]=t,l+=r}}getOutputLength(e,t){return e*(3+t)}}class Ya extends Ga{constructor(){super("DeviceRGB",3)}getRgbItem(e,t,s,a){s[a]=255*e[t],s[a+1]=255*e[t+1],s[a+2]=255*e[t+2]}getRgbBuffer(e,t,s,a,i,n,r){if(8===n&&0===r)return void a.set(e.subarray(t,t+3*s),i);const o=255/((1<<n)-1);let c=t,l=i;for(let h=0;h<s;++h)a[l++]=o*e[c++],a[l++]=o*e[c++],a[l++]=o*e[c++],l+=r}getOutputLength(e,t){return e*(3+t)/3|0}isPassthrough(e){return 8===e}}class Ja extends Ga{constructor(){super("DeviceRGBA",4)}getOutputLength(e,t){return 4*e}isPassthrough(e){return 8===e}fillRgb(e,t,s,a,i,n,r,o,c){s!==i||t!==a?function(e,t,s,a,i,n,r){const o=s/i,c=a/n;let l=0;const h=new Uint16Array(i);if(1===r){for(let e=0;e<i;e++)h[e]=Math.floor(e*o);const a=new Uint32Array(e.buffer),r=new Uint32Array(t.buffer),u=gs.isLittleEndian?16777215:4294967040;for(let e=0;e<n;e++){const t=a.subarray(Math.floor(e*c)*s);for(let e=0;e<i;e++)r[l++]|=t[h[e]]&u}}else{const a=4,r=s*a;for(let e=0;e<i;e++)h[e]=Math.floor(e*o)*a;for(let s=0;s<n;s++){const a=e.subarray(Math.floor(s*c)*r);for(let e=0;e<i;e++){const s=h[e];t[l++]=a[s],t[l++]=a[s+1],t[l++]=a[s+2]}}}}(o,e,t,s,a,i,c):function(e,t,s){if(1===s){const s=new Uint32Array(e.buffer),a=new Uint32Array(t.buffer),i=gs.isLittleEndian?16777215:4294967040;for(let e=0,t=s.length;e<t;e++)a[e]|=s[e]&i}else{let s=0;for(let a=0,i=e.length;a<i;a+=4)t[s++]=e[a],t[s++]=e[a+1],t[s++]=e[a+2]}}(o,e,c)}}class Za extends Ga{constructor(){super("DeviceCMYK",4)}#i(e,t,s,a,i){const n=e[t]*s,r=e[t+1]*s,o=e[t+2]*s,c=e[t+3]*s;a[i]=255+n*(-4.387332384609988*n+54.48615194189176*r+18.82290502165302*o+212.25662451639585*c-285.2331026137004)+r*(1.7149763477362134*r-5.6096736904047315*o+-17.873870861415444*c-5.497006427196366)+o*(-2.5217340131683033*o-21.248923337353073*c+17.5119270841813)+c*(-21.86122147463605*c-189.48180835922747),a[i+1]=255+n*(8.841041422036149*n+60.118027045597366*r+6.871425592049007*o+31.159100130055922*c-79.2970844816548)+r*(-15.310361306967817*r+17.575251261109482*o+131.35250912493976*c-190.9453302588951)+o*(4.444339102852739*o+9.8632861493405*c-24.86741582555878)+c*(-20.737325471181034*c-187.80453709719578),a[i+2]=255+n*(.8842522430003296*n+8.078677503112928*r+30.89978309703729*o-.23883238689178934*c-14.183576799673286)+r*(10.49593273432072*r+63.02378494754052*o+50.606957656360734*c-112.23884253719248)+o*(.03296041114873217*o+115.60384449646641*c-193.58209356861505)+c*(-22.33816807309886*c-180.12613974708367)}getRgbItem(e,t,s,a){this.#i(e,t,1,s,a)}getRgbBuffer(e,t,s,a,i,n,r){const o=1/((1<<n)-1);for(let c=0;c<s;c++)this.#i(e,t,o,a,i),t+=4,i+=3+r}getOutputLength(e,t){return e/4*(3+t)|0}}class Qa extends Ga{constructor(e,t,s){if(super("CalGray",1),!e)throw new cs("WhitePoint missing - required for color space CalGray");if([this.XW,this.YW,this.ZW]=e,[this.XB,this.YB,this.ZB]=t||[0,0,0],this.G=s||1,this.XW<0||this.ZW<0||1!==this.YW)throw new cs(`Invalid WhitePoint components for ${this.name}, no fallback available`);(this.XB<0||this.YB<0||this.ZB<0)&&(Jt(`Invalid BlackPoint for ${this.name}, falling back to default.`),this.XB=this.YB=this.ZB=0),0===this.XB&&0===this.YB&&0===this.ZB||Zt(`${this.name}, BlackPoint: XB: ${this.XB}, YB: ${this.YB}, ZB: ${this.ZB}, only default values are supported.`),this.G<1&&(Jt(`Invalid Gamma: ${this.G} for ${this.name}, falling back to default.`),this.G=1)}#i(e,t,s,a,i){const n=(e[t]*i)**this.G,r=this.YW*n,o=Math.max(295.8*r**.3333333333333333-40.8,0);s[a]=o,s[a+1]=o,s[a+2]=o}getRgbItem(e,t,s,a){this.#i(e,t,s,a,1)}getRgbBuffer(e,t,s,a,i,n,r){const o=1/((1<<n)-1);for(let c=0;c<s;++c)this.#i(e,t,a,i,o),t+=1,i+=3+r}getOutputLength(e,t){return e*(3+t)}}class ei extends Ga{static#n=new Float32Array([.8951,.2664,-.1614,-.7502,1.7135,.0367,.0389,-.0685,1.0296]);static#r=new Float32Array([.9869929,-.1470543,.1599627,.4323053,.5183603,.0492912,-.0085287,.0400428,.9684867]);static#o=new Float32Array([3.2404542,-1.5371385,-.4985314,-.969266,1.8760108,.041556,.0556434,-.2040259,1.0572252]);static#c=new Float32Array([1,1,1]);static#l=new Float32Array(3);static#h=new Float32Array(3);static#u=new Float32Array(3);static#d=(24/116)**3/8;constructor(e,t,s,a){if(super("CalRGB",3),!e)throw new cs("WhitePoint missing - required for color space CalRGB");const[i,n,r]=this.whitePoint=e,[o,c,l]=this.blackPoint=t||new Float32Array(3);if([this.GR,this.GG,this.GB]=s||new Float32Array([1,1,1]),[this.MXA,this.MYA,this.MZA,this.MXB,this.MYB,this.MZB,this.MXC,this.MYC,this.MZC]=a||new Float32Array([1,0,0,0,1,0,0,0,1]),i<0||r<0||1!==n)throw new cs(`Invalid WhitePoint components for ${this.name}, no fallback available`);(o<0||c<0||l<0)&&(Jt(`Invalid BlackPoint for ${this.name} [${o}, ${c}, ${l}], falling back to default.`),this.blackPoint=new Float32Array(3)),(this.GR<0||this.GG<0||this.GB<0)&&(Jt(`Invalid Gamma [${this.GR}, ${this.GG}, ${this.GB}] for ${this.name}, falling back to default.`),this.GR=this.GG=this.GB=1)}#f(e,t,s){s[0]=e[0]*t[0]+e[1]*t[1]+e[2]*t[2],s[1]=e[3]*t[0]+e[4]*t[1]+e[5]*t[2],s[2]=e[6]*t[0]+e[7]*t[1]+e[8]*t[2]}#g(e,t,s){s[0]=1*t[0]/e[0],s[1]=1*t[1]/e[1],s[2]=1*t[2]/e[2]}#p(e,t,s){s[0]=.95047*t[0]/e[0],s[1]=1*t[1]/e[1],s[2]=1.08883*t[2]/e[2]}#m(e){return e<=.0031308?Ss(12.92*e,0,1):e>=.99554525?1:Ss(1.055*e**(1/2.4)-.055,0,1)}#b(e){return e<0?-this.#b(-e):e>8?((e+16)/116)**3:e*ei.#d}#w(e,t,s){if(0===e[0]&&0===e[1]&&0===e[2])return s[0]=t[0],s[1]=t[1],void(s[2]=t[2]);const a=this.#b(0),i=(1-a)/(1-this.#b(e[0])),n=1-i,r=(1-a)/(1-this.#b(e[1])),o=1-r,c=(1-a)/(1-this.#b(e[2])),l=1-c;s[0]=t[0]*i+n,s[1]=t[1]*r+o,s[2]=t[2]*c+l}#y(e,t,s){if(1===e[0]&&1===e[2])return s[0]=t[0],s[1]=t[1],void(s[2]=t[2]);const a=s;this.#f(ei.#n,t,a);const i=ei.#l;this.#g(e,a,i),this.#f(ei.#r,i,s)}#x(e,t,s){const a=s;this.#f(ei.#n,t,a);const i=ei.#l;this.#p(e,a,i),this.#f(ei.#r,i,s)}#i(e,t,s,a,i){const n=Ss(e[t]*i,0,1),r=Ss(e[t+1]*i,0,1),o=Ss(e[t+2]*i,0,1),c=1===n?1:n**this.GR,l=1===r?1:r**this.GG,h=1===o?1:o**this.GB,u=this.MXA*c+this.MXB*l+this.MXC*h,d=this.MYA*c+this.MYB*l+this.MYC*h,f=this.MZA*c+this.MZB*l+this.MZC*h,g=ei.#h;g[0]=u,g[1]=d,g[2]=f;const p=ei.#u;this.#y(this.whitePoint,g,p);const m=ei.#h;this.#w(this.blackPoint,p,m);const b=ei.#u;this.#x(ei.#c,m,b);const w=ei.#h;this.#f(ei.#o,b,w),s[a]=255*this.#m(w[0]),s[a+1]=255*this.#m(w[1]),s[a+2]=255*this.#m(w[2])}getRgbItem(e,t,s,a){this.#i(e,t,s,a,1)}getRgbBuffer(e,t,s,a,i,n,r){const o=1/((1<<n)-1);for(let c=0;c<s;++c)this.#i(e,t,a,i,o),t+=3,i+=3+r}getOutputLength(e,t){return e*(3+t)/3|0}}class ti extends Ga{constructor(e,t,s){if(super("Lab",3),!e)throw new cs("WhitePoint missing - required for color space Lab");if([this.XW,this.YW,this.ZW]=e,[this.amin,this.amax,this.bmin,this.bmax]=s||[-100,100,-100,100],[this.XB,this.YB,this.ZB]=t||[0,0,0],this.XW<0||this.ZW<0||1!==this.YW)throw new cs("Invalid WhitePoint components, no fallback available");(this.XB<0||this.YB<0||this.ZB<0)&&(Jt("Invalid BlackPoint, falling back to default"),this.XB=this.YB=this.ZB=0),(this.amin>this.amax||this.bmin>this.bmax)&&(Jt("Invalid Range, falling back to defaults"),this.amin=-100,this.amax=100,this.bmin=-100,this.bmax=100)}#k(e){return e>=6/29?e**3:108/841*(e-4/29)}#v(e,t,s,a){return s+e*(a-s)/t}#i(e,t,s,a,i){let n=e[t],r=e[t+1],o=e[t+2];!1!==s&&(n=this.#v(n,s,0,100),r=this.#v(r,s,this.amin,this.amax),o=this.#v(o,s,this.bmin,this.bmax)),r>this.amax?r=this.amax:r<this.amin&&(r=this.amin),o>this.bmax?o=this.bmax:o<this.bmin&&(o=this.bmin);const c=(n+16)/116,l=c+r/500,h=c-o/200,u=this.XW*this.#k(l),d=this.YW*this.#k(c),f=this.ZW*this.#k(h);let g,p,m;this.ZW<1?(g=3.1339*u+-1.617*d+-.4906*f,p=-.9785*u+1.916*d+.0333*f,m=.072*u+-.229*d+1.4057*f):(g=3.2406*u+-1.5372*d+-.4986*f,p=-.9689*u+1.8758*d+.0415*f,m=.0557*u+-.204*d+1.057*f),a[i]=255*Math.sqrt(g),a[i+1]=255*Math.sqrt(p),a[i+2]=255*Math.sqrt(m)}getRgbItem(e,t,s,a){this.#i(e,t,!1,s,a)}getRgbBuffer(e,t,s,a,i,n,r){const o=(1<<n)-1;for(let c=0;c<s;c++)this.#i(e,t,o,a,i),t+=3,i+=3+r}getOutputLength(e,t){return e*(3+t)/3|0}isDefaultDecode(e,t){return!0}get usesZeroToOneRange(){return ss(this,"usesZeroToOneRange",!1)}}function si(e){const t=new XMLHttpRequest;return t.open("GET",e,!1),t.responseType="arraybuffer",t.send(null),t.response}class ai extends Ga{#A;#C;static#S=!0;static#I=null;static#B=null;constructor(e,t,s){if(!ai.isUsable)throw new Error("No ICC color space support");let a;switch(super(t,s),s){case 1:a=qa.Gray8,this.#C=(e,t,s)=>function(e,t,s){Oa.qcms_convert_one(e,t,s)}(this.#A,255*e[t],s);break;case 3:a=qa.RGB8,this.#C=(e,t,s)=>function(e,t,s,a,i){Oa.qcms_convert_three(e,t,s,a,i)}(this.#A,255*e[t],255*e[t+1],255*e[t+2],s);break;case 4:a=qa.CMYK,this.#C=(e,t,s)=>function(e,t,s,a,i,n){Oa.qcms_convert_four(e,t,s,a,i,n)}(this.#A,255*e[t],255*e[t+1],255*e[t+2],255*e[t+3],s);break;default:throw new Error(`Unsupported number of components: ${s}`)}if(this.#A=function(e,t,s){const a=Ua(e,Oa.__wbindgen_malloc),i=_a;return Oa.qcms_transformer_from_memory(a,i,t,s)>>>0}(e,a,ja.Perceptual),!this.#A)throw new Error("Failed to create ICC color space");ai.#B||=new FinalizationRegistry(e=>{!function(e){Oa.qcms_drop_transformer(e)}(e)}),ai.#B.register(this,this.#A)}getRgbHex(e,t){return this.#C(e,t,!0),Da._cssColor}getRgbItem(e,t,s,a){Da._destBuffer=s,Da._destOffset=a,Da._destLength=3,this.#C(e,t,!1),Da._destBuffer=null}getRgbBuffer(e,t,s,a,i,n,r){if(e=e.subarray(t,t+s*this.numComps),8!==n){const t=255/((1<<n)-1);for(let s=0,a=e.length;s<a;s++)e[s]*=t}Da._mustAddAlpha=r&&a.buffer===e.buffer,Da._destBuffer=a,Da._destOffset=i,Da._destLength=s*(3+r),function(e,t){const s=Ua(t,Oa.__wbindgen_malloc),a=_a;Oa.qcms_convert_array(e,s,a)}(this.#A,e),Da._mustAddAlpha=!1,Da._destBuffer=null}getOutputLength(e,t){return e/this.numComps*(3+t)|0}static setOptions({useWasm:e,useWorkerFetch:t,wasmUrl:s}){t?(this.#S=e,this.#I=s):this.#S=!1}static get isUsable(){let e=!1;if(this.#S)if(this.#I)try{this._module=function(e){if(void 0!==Oa)return Oa;void 0!==e&&(Object.getPrototypeOf(e)===Object.prototype?({module:e}=e):console.warn("using deprecated parameters for `initSync()`; pass a single object instead"));const t=Ha();return e instanceof WebAssembly.Module||(e=new WebAssembly.Module(e)),$a(new WebAssembly.Instance(e,t),e)}({module:si(`${this.#I}qcms_bg.wasm`)}),e=!!this._module,Da._memory=this._module.memory,Da._makeHexColor=ms.makeHexColor}catch(e){Zt(`ICCBased color space: "${e}".`)}else Zt("No ICC color space support due to missing `wasmUrl` API option");return ss(this,"isUsable",e)}}class ii extends ai{static#F;constructor(){super(new Uint8Array(si(`${ii.#F}CGATS001Compat-v2-micro.icc`)),"DeviceCMYK",4)}static setOptions({iccUrl:e}){this.#F=e}static get isUsable(){let e=!1;return ai.isUsable&&(this.#F?e=!0:Zt("No CMYK ICC profile support due to missing `iccUrl` API option")),ss(this,"isUsable",e)}}class ni extends $s{constructor(e,t,s,a){super(),this.bytes=e instanceof Uint8Array?e:new Uint8Array(e),this.start=t||0,this.pos=this.start,this.end=t+s||this.bytes.length,this.dict=a}get length(){return this.end-this.start}get isEmpty(){return 0===this.length}getByte(){return this.pos>=this.end?-1:this.bytes[this.pos++]}getBytes(e){const t=this.bytes,s=this.pos,a=this.end;if(!e)return t.subarray(s,a);let i=s+e;return i>a&&(i=a),this.pos=i,t.subarray(s,i)}getByteRange(e,t){return e<0&&(e=0),t>this.end&&(t=this.end),this.bytes.subarray(e,t)}reset(){this.pos=this.start}moveStart(){this.start=this.pos}makeSubStream(e,t,s=null){return new ni(this.bytes.buffer,e,t,s)}clone(){return new ni(this.bytes.buffer,this.start,this.end-this.start,this.dict.clone())}}class ri extends ni{constructor(e){super(us(e))}}class oi extends ni{constructor(){super(new Uint8Array(0))}}class ci extends ni{constructor(e,t,s){super(new Uint8Array(e),0,e,null),this.chunkSize=t,this._loadedChunks=new Set,this.numChunks=Math.ceil(e/t),this.manager=s,this.progressiveDataLength=0,this.lastSuccessfulEnsureByteChunk=-1}getMissingChunks(){const e=[];for(let t=0,s=this.numChunks;t<s;++t)this._loadedChunks.has(t)||e.push(t);return e}get numChunksLoaded(){return this._loadedChunks.size}get isDataLoaded(){return this.numChunksLoaded===this.numChunks}onReceiveData(e,t){const s=this.chunkSize;if(e%s!==0)throw new Error(`Bad begin offset: ${e}`);const a=e+t.byteLength;if(a%s!==0&&a!==this.bytes.length)throw new Error(`Bad end offset: ${a}`);this.bytes.set(new Uint8Array(t),e);const i=Math.floor(e/s),n=Math.floor((a-1)/s)+1;for(let r=i;r<n;++r)this._loadedChunks.add(r)}onReceiveProgressiveData(e){let t=this.progressiveDataLength;const s=Math.floor(t/this.chunkSize);this.bytes.set(new Uint8Array(e),t),t+=e.byteLength,this.progressiveDataLength=t;const a=t>=this.end?this.numChunks:Math.floor(t/this.chunkSize);for(let i=s;i<a;++i)this._loadedChunks.add(i)}ensureByte(e){if(e<this.progressiveDataLength)return;const t=Math.floor(e/this.chunkSize);if(!(t>this.numChunks)&&t!==this.lastSuccessfulEnsureByteChunk){if(!this._loadedChunks.has(t))throw new Ys(e,e+1);this.lastSuccessfulEnsureByteChunk=t}}ensureRange(e,t){if(e>=t)return;if(t<=this.progressiveDataLength)return;const s=Math.floor(e/this.chunkSize);if(s>this.numChunks)return;const a=Math.min(Math.floor((t-1)/this.chunkSize)+1,this.numChunks);for(let i=s;i<a;++i)if(!this._loadedChunks.has(i))throw new Ys(e,t)}nextEmptyChunk(e){const t=this.numChunks;for(let s=0;s<t;++s){const a=(e+s)%t;if(!this._loadedChunks.has(a))return a}return null}hasChunk(e){return this._loadedChunks.has(e)}getByte(){const e=this.pos;return e>=this.end?-1:(e>=this.progressiveDataLength&&this.ensureByte(e),this.bytes[this.pos++])}getBytes(e){const t=this.bytes,s=this.pos,a=this.end;if(!e)return a>this.progressiveDataLength&&this.ensureRange(s,a),t.subarray(s,a);let i=s+e;return i>a&&(i=a),i>this.progressiveDataLength&&this.ensureRange(s,i),this.pos=i,t.subarray(s,i)}getByteRange(e,t){return e<0&&(e=0),t>this.end&&(t=this.end),t>this.progressiveDataLength&&this.ensureRange(e,t),this.bytes.subarray(e,t)}makeSubStream(e,t,s=null){function a(){}t?e+t>this.progressiveDataLength&&this.ensureRange(e,e+t):e>=this.progressiveDataLength&&this.ensureByte(e),a.prototype=Object.create(this),a.prototype.getMissingChunks=function(){const e=this.chunkSize,t=Math.floor(this.start/e),s=Math.floor((this.end-1)/e)+1,a=[];for(let i=t;i<s;++i)this._loadedChunks.has(i)||a.push(i);return a},Object.defineProperty(a.prototype,"isDataLoaded",{get(){return this.numChunksLoaded===this.numChunks||0===this.getMissingChunks().length},configurable:!0});const i=new a;return i.pos=i.start=e,i.end=e+t||this.end,i.dict=s,i}getBaseStreams(){return[this]}}class li{constructor(e,t){this.length=t.length,this.chunkSize=t.rangeChunkSize,this.stream=new ci(this.length,this.chunkSize,this),this.pdfNetworkStream=e,this.disableAutoFetch=t.disableAutoFetch,this.msgHandler=t.msgHandler,this.currRequestId=0,this._chunksNeededByRequest=new Map,this._requestsByChunk=new Map,this._promisesByRequest=new Map,this.progressiveDataLength=0,this.aborted=!1,this._loadedStreamCapability=Promise.withResolvers()}sendRequest(e,t){const s=this.pdfNetworkStream.getRangeReader(e,t);s.isStreamingSupported||(s.onProgress=this.onProgress.bind(this));let a=[],i=0;return new Promise((e,t)=>{const n=({value:r,done:o})=>{try{if(o){const t=ea(a);return a=null,void e(t)}i+=r.byteLength,s.isStreamingSupported&&this.onProgress({loaded:i}),a.push(r),s.read().then(n,t)}catch(e){t(e)}};s.read().then(n,t)}).then(t=>{this.aborted||this.onReceiveData({chunk:t,begin:e})})}requestAllChunks(e=!1){if(!e){const e=this.stream.getMissingChunks();this._requestChunks(e)}return this._loadedStreamCapability.promise}_requestChunks(e){const t=this.currRequestId++,s=new Set;this._chunksNeededByRequest.set(t,s);for(const n of e)this.stream.hasChunk(n)||s.add(n);if(0===s.size)return Promise.resolve();const a=Promise.withResolvers();this._promisesByRequest.set(t,a);const i=[];for(const n of s){let e=this._requestsByChunk.get(n);e||(e=[],this._requestsByChunk.set(n,e),i.push(n)),e.push(t)}if(i.length>0){const e=this.groupChunks(i);for(const t of e){const e=t.beginChunk*this.chunkSize,s=Math.min(t.endChunk*this.chunkSize,this.length);this.sendRequest(e,s).catch(a.reject)}}return a.promise.catch(e=>{if(!this.aborted)throw e})}getStream(){return this.stream}requestRange(e,t){t=Math.min(t,this.length);const s=this.getBeginChunk(e),a=this.getEndChunk(t),i=[];for(let n=s;n<a;++n)i.push(n);return this._requestChunks(i)}requestRanges(e=[]){const t=[];for(const s of e){const e=this.getBeginChunk(s.begin),a=this.getEndChunk(s.end);for(let s=e;s<a;++s)t.includes(s)||t.push(s)}return t.sort((e,t)=>e-t),this._requestChunks(t)}groupChunks(e){const t=[];let s=-1,a=-1;for(let i=0,n=e.length;i<n;++i){const n=e[i];s<0&&(s=n),a>=0&&a+1!==n&&(t.push({beginChunk:s,endChunk:a+1}),s=n),i+1===e.length&&t.push({beginChunk:s,endChunk:n+1}),a=n}return t}onProgress(e){this.msgHandler.send("DocProgress",{loaded:this.stream.numChunksLoaded*this.chunkSize+e.loaded,total:this.length})}onReceiveData(e){const t=e.chunk,s=void 0===e.begin,a=s?this.progressiveDataLength:e.begin,i=a+t.byteLength,n=Math.floor(a/this.chunkSize),r=i<this.length?Math.floor(i/this.chunkSize):Math.ceil(i/this.chunkSize);s?(this.stream.onReceiveProgressiveData(t),this.progressiveDataLength=i):this.stream.onReceiveData(a,t),this.stream.isDataLoaded&&this._loadedStreamCapability.resolve(this.stream);const o=[];for(let c=n;c<r;++c){const e=this._requestsByChunk.get(c);if(e){this._requestsByChunk.delete(c);for(const t of e){const e=this._chunksNeededByRequest.get(t);e.has(c)&&e.delete(c),e.size>0||o.push(t)}}}if(!this.disableAutoFetch&&0===this._requestsByChunk.size){let e;if(1===this.stream.numChunksLoaded){const t=this.stream.numChunks-1;this.stream.hasChunk(t)||(e=t)}else e=this.stream.nextEmptyChunk(r);Number.isInteger(e)&&this._requestChunks([e])}for(const c of o){const e=this._promisesByRequest.get(c);this._promisesByRequest.delete(c),e.resolve()}this.msgHandler.send("DocProgress",{loaded:this.stream.numChunksLoaded*this.chunkSize,total:this.length})}onError(e){this._loadedStreamCapability.reject(e)}getBeginChunk(e){return Math.floor(e/this.chunkSize)}getEndChunk(e){return Math.floor((e-1)/this.chunkSize)+1}abort(e){this.aborted=!0,this.pdfNetworkStream?.cancelAllRequests(e);for(const t of this._promisesByRequest.values())t.reject(e)}}function hi(e){switch(e.kind){case S:return ui(e);case I:return function({src:e,srcPos:t=0,dest:s,destPos:a=0,width:i,height:n}){let r=0;const o=i*n*3,c=o>>2,l=new Uint32Array(e.buffer,t,c);if(gs.isLittleEndian){for(;r<c-2;r+=3,a+=4){const e=l[r],t=l[r+1],i=l[r+2];s[a]=4278190080|e,s[a+1]=e>>>24|t<<8|4278190080,s[a+2]=t>>>16|i<<16|4278190080,s[a+3]=i>>>8|4278190080}for(let i=4*r,n=t+o;i<n;i+=3)s[a++]=e[i]|e[i+1]<<8|e[i+2]<<16|4278190080}else{for(;r<c-2;r+=3,a+=4){const e=l[r],t=l[r+1],i=l[r+2];s[a]=255|e,s[a+1]=e<<24|t>>>8|255,s[a+2]=t<<16|i>>>16|255,s[a+3]=i<<8|255}for(let i=4*r,n=t+o;i<n;i+=3)s[a++]=e[i]<<24|e[i+1]<<16|e[i+2]<<8|255}return{srcPos:t+o,destPos:a}}(e)}return null}function ui({src:e,srcPos:t=0,dest:s,width:a,height:i,nonBlackColor:n=4294967295,inverseDecode:r=!1}){const o=gs.isLittleEndian?4278190080:255,[c,l]=r?[n,o]:[o,n],h=a>>3,u=7&a,d=e.length;s=new Uint32Array(s.buffer);let f=0;for(let g=0;g<i;g++){for(const i=t+h;t<i;t++){const a=t<d?e[t]:255;s[f++]=128&a?l:c,s[f++]=64&a?l:c,s[f++]=32&a?l:c,s[f++]=16&a?l:c,s[f++]=8&a?l:c,s[f++]=4&a?l:c,s[f++]=2&a?l:c,s[f++]=1&a?l:c}if(0===u)continue;const a=t<d?e[t++]:255;for(let e=0;e<u;e++)s[f++]=a&1<<7-e?l:c}return{srcPos:t,destPos:f}}class di{static#M=2048;static#T=gs.isImageDecoderSupported;constructor(e,t){this._imgData=e,this._isMask=t}static get canUseImageDecoder(){return ss(this,"canUseImageDecoder",this.#T?ImageDecoder.isTypeSupported("image/bmp"):Promise.resolve(!1))}static needsToBeResized(e,t){if(e<=this.#M&&t<=this.#M)return!1;const{MAX_DIM:s}=this;if(e>s||t>s)return!0;const a=e*t;return this._hasMaxArea?a>this.MAX_AREA:!(a<this.#M**2)&&(this._areGoodDims(e,t)?(this.#M=Math.max(this.#M,Math.floor(Math.sqrt(e*t))),!1):(this.#M=this._guessMax(this.#M,s,128,0),a>(this.MAX_AREA=this.#M**2)))}static getReducePowerForJPX(e,t,s){const a=e*t,i=2**30/(4*s);if(!this.needsToBeResized(e,t))return a>i?Math.ceil(Math.log2(a/i)):0;const{MAX_DIM:n,MAX_AREA:r}=this,o=Math.max(e/n,t/n,Math.sqrt(a/Math.min(i,r)));return Math.ceil(Math.log2(o))}static get MAX_DIM(){return ss(this,"MAX_DIM",this._guessMax(2048,65537,0,1))}static get MAX_AREA(){return this._hasMaxArea=!0,ss(this,"MAX_AREA",this._guessMax(this.#M,this.MAX_DIM,128,0)**2)}static set MAX_AREA(e){e>=0&&(this._hasMaxArea=!0,ss(this,"MAX_AREA",e))}static setOptions({canvasMaxAreaInBytes:e=-1,isImageDecoderSupported:t=!1}){this._hasMaxArea||(this.MAX_AREA=e>>2),this.#T=t}static _areGoodDims(e,t){try{const s=new OffscreenCanvas(e,t),a=s.getContext("2d");a.fillRect(0,0,1,1);const i=a.getImageData(0,0,1,1).data[3];return s.width=s.height=1,0!==i}catch{return!1}}static _guessMax(e,t,s,a){for(;e+s+1<t;){const s=Math.floor((e+t)/2),i=a||s;this._areGoodDims(s,i)?e=s:t=s}return e}static async createImage(e,t=!1){return new di(e,t)._createImage()}async _createImage(){const{_imgData:e}=this,{width:t,height:s}=e;if(t*s*4>Gs){const e=this.#R();if(e)return e}const a=this._encodeBMP();let i,n;await di.canUseImageDecoder?(i=new ImageDecoder({data:a,type:"image/bmp",preferAnimation:!1,transfer:[a.buffer]}),n=i.decode().catch(e=>(Zt(`BMP image decoding failed: ${e}`),createImageBitmap(new Blob([this._encodeBMP().buffer],{type:"image/bmp"})))).finally(()=>{i.close()})):n=createImageBitmap(new Blob([a.buffer],{type:"image/bmp"}));const{MAX_AREA:r,MAX_DIM:o}=di,c=Math.max(t/o,s/o,Math.sqrt(t*s/r)),l=Math.max(c,2),h=Math.round(10*(c+1.25))/10/l,u=Math.floor(Math.log2(h)),d=new Array(u+2).fill(2);d[0]=l,d.splice(-1,1,h/(1<<u));let f=t,g=s;const p=await n;let m=p.image||p;for(const b of d){const e=f,t=g;f=Math.floor(f/b)-1,g=Math.floor(g/b)-1;const s=new OffscreenCanvas(f,g);s.getContext("2d").drawImage(m,0,0,e,t,0,0,f,g),m.close(),m=s.transferToImageBitmap()}return e.data=null,e.bitmap=m,e.width=f,e.height=g,e}#R(){const{_imgData:e}=this,{data:t,width:s,height:a,kind:i}=e,n=s*a*4,r=Math.ceil(Math.log2(n/Gs)),o=s>>r,c=a>>r;let l,h=a;try{l=new Uint8Array(n)}catch{let e=Math.floor(Math.log2(n+1));for(;;)try{l=new Uint8Array(2**e-1);break}catch{e-=1}h=Math.floor((2**e-1)/(4*s));const t=s*h*4;t<l.length&&(l=new Uint8Array(t))}const u=new Uint32Array(l.buffer),d=new Uint32Array(o*c);let f=0,g=0;const p=Math.ceil(a/h),m=a%h===0?a:a%h;for(let w=0;w<p;w++){const e=w<p-1?h:m;({srcPos:f}=hi({kind:i,src:t,dest:u,width:s,height:e,inverseDecode:this._isMask,srcPos:f}));for(let t=0,a=e>>r;t<a;t++){const e=u.subarray((t<<r)*s);for(let t=0;t<o;t++)d[g++]=e[t<<r]}}if(di.needsToBeResized(o,c))return e.data=d,e.width=o,e.height=c,e.kind=B,null;const b=new OffscreenCanvas(o,c);return b.getContext("2d",{willReadFrequently:!0}).putImageData(new ImageData(new Uint8ClampedArray(d.buffer),o,c),0,0),e.data=null,e.bitmap=b.transferToImageBitmap(),e.width=o,e.height=c,e}_encodeBMP(){const{width:e,height:t,kind:s}=this._imgData;let a,i=this._imgData.data,n=new Uint8Array(0),r=n,o=0;switch(s){case S:{a=1,n=new Uint8Array(this._isMask?[255,255,255,255,0,0,0,0]:[0,0,0,0,255,255,255,255]);const s=e+7>>3,r=s+3&-4;if(s!==r){const e=new Uint8Array(r*t);let a=0;for(let n=0,o=t*s;n<o;n+=s,a+=r)e.set(i.subarray(n,n+s),a);i=e}break}case I:if(a=24,3&e){const s=3*e,a=s+3&-4,n=a-s,r=new Uint8Array(a*t);let o=0;for(let e=0,c=t*s;e<c;e+=s){const t=i.subarray(e,e+s);for(let e=0;e<s;e+=3)r[o++]=t[e+2],r[o++]=t[e+1],r[o++]=t[e];o+=n}i=r}else for(let e=0,t=i.length;e<t;e+=3){const t=i[e];i[e]=i[e+2],i[e+2]=t}break;case B:a=32,o=3,r=new Uint8Array(68);const s=new DataView(r.buffer);gs.isLittleEndian?(s.setUint32(0,255,!0),s.setUint32(4,65280,!0),s.setUint32(8,16711680,!0),s.setUint32(12,4278190080,!0)):(s.setUint32(0,4278190080,!0),s.setUint32(4,16711680,!0),s.setUint32(8,65280,!0),s.setUint32(12,255,!0));break;default:throw new Error("invalid format")}let c=0;const l=40+r.length,h=14+l+n.length+i.length,u=new Uint8Array(h),d=new DataView(u.buffer);return d.setUint16(c,19778,!0),c+=2,d.setUint32(c,h,!0),c+=4,d.setUint32(c,0,!0),c+=4,d.setUint32(c,14+l+n.length,!0),c+=4,d.setUint32(c,l,!0),c+=4,d.setInt32(c,e,!0),c+=4,d.setInt32(c,-t,!0),c+=4,d.setUint16(c,1,!0),c+=2,d.setUint16(c,a,!0),c+=2,d.setUint32(c,o,!0),c+=4,d.setUint32(c,0,!0),c+=4,d.setInt32(c,0,!0),c+=4,d.setInt32(c,0,!0),c+=4,d.setUint32(c,n.length/4,!0),c+=4,d.setUint32(c,0,!0),c+=4,u.set(r,c),c+=r.length,u.set(n,c),c+=n.length,u.set(i,c),u}}const fi=new Uint8Array(0);class gi extends $s{constructor(e){if(super(),this._rawMinBufferLength=e||0,this.pos=0,this.bufferLength=0,this.eof=!1,this.buffer=fi,this.minBufferLength=512,e)for(;this.minBufferLength<e;)this.minBufferLength*=2}get isEmpty(){for(;!this.eof&&0===this.bufferLength;)this.readBlock();return 0===this.bufferLength}ensureBuffer(e){const t=this.buffer;if(e<=t.byteLength)return t;let s=this.minBufferLength;for(;s<e;)s*=2;const a=new Uint8Array(s);return a.set(t),this.buffer=a}getByte(){const e=this.pos;for(;this.bufferLength<=e;){if(this.eof)return-1;this.readBlock()}return this.buffer[this.pos++]}getBytes(e,t=null){const s=this.pos;let a;if(e){for(this.ensureBuffer(s+e),a=s+e;!this.eof&&this.bufferLength<a;)this.readBlock(t);const i=this.bufferLength;a>i&&(a=i)}else{for(;!this.eof;)this.readBlock(t);a=this.bufferLength}return this.pos=a,this.buffer.subarray(s,a)}async getImageData(e,t){if(!this.canAsyncDecodeImageFromBuffer)return this.isAsyncDecoder?this.decodeImage(null,t):this.getBytes(e,t);const s=await this.stream.asyncGetBytes();return this.decodeImage(s,t)}reset(){this.pos=0}makeSubStream(e,t,s=null){if(void 0===t)for(;!this.eof;)this.readBlock();else{const s=e+t;for(;this.bufferLength<=s&&!this.eof;)this.readBlock()}return new ni(this.buffer,e,t,s)}getBaseStreams(){return this.stream?this.stream.getBaseStreams():null}clone(){for(;!this.eof;)this.readBlock();return new ni(this.buffer,this.start,this.end-this.start,this.dict.clone())}}class pi extends gi{constructor(e,t=null){e=e.filter(e=>e instanceof $s);let s=0;for(const a of e)s+=a instanceof gi?a._rawMinBufferLength:a.length;super(s),this.streams=e,this._onError=t}readBlock(){const e=this.streams;if(0===e.length)return void(this.eof=!0);const t=e.shift();let s;try{s=t.getBytes()}catch(e){if(this._onError)return void this._onError(e,t.dict?.objId);throw e}const a=this.bufferLength,i=a+s.length;this.ensureBuffer(i).set(s,a),this.bufferLength=i}getBaseStreams(){const e=[];for(const t of this.streams){const s=t.getBaseStreams();s&&e.push(...s)}return e.length>0?e:null}}class mi{static parse({cs:e,xref:t,resources:s=null,pdfFunctionFactory:a,globalColorSpaceCache:i,localColorSpaceCache:n,asyncIfNotCached:r=!1}){const o={xref:t,resources:s,pdfFunctionFactory:a,globalColorSpaceCache:i,localColorSpaceCache:n};let c,l,h;if(e instanceof Es){l=e;const s=i.getByRef(l)||n.getByRef(l);if(s)return s;e=t.fetch(e)}if(e instanceof Ns){c=e.name;const t=n.getByName(c);if(t)return t}try{h=this.#N(e,o)}catch(e){if(r&&!(e instanceof Ys))return Promise.reject(e);throw e}return(c||l)&&(n.set(c,l,h),l&&i.set(null,l,h)),r?Promise.resolve(h):h}static#D(e,t){const{globalColorSpaceCache:s}=t;let a;if(e instanceof Es){a=e;const t=s.getByRef(a);if(t)return t}const i=this.#N(e,t);return a&&s.set(null,a,i),i}static#N(e,t){const{xref:s,resources:a,pdfFunctionFactory:i,globalColorSpaceCache:n}=t;if((e=s.fetchIfRef(e))instanceof Ns)switch(e.name){case"G":case"DeviceGray":return this.gray;case"RGB":case"DeviceRGB":return this.rgb;case"DeviceRGBA":return this.rgba;case"CMYK":case"DeviceCMYK":return this.cmyk;case"Pattern":return new Va(null);default:if(a instanceof Ps){const s=a.get("ColorSpace");if(s instanceof Ps){const a=s.get(e.name);if(a){if(a instanceof Ns)return this.#N(a,t);e=a;break}}}return Zt(`Unrecognized ColorSpace: ${e.name}`),this.gray}if(Array.isArray(e)){const a=s.fetchIfRef(e[0]).name;let r,o,c,l,h,u;switch(a){case"G":case"DeviceGray":return this.gray;case"RGB":case"DeviceRGB":return this.rgb;case"CMYK":case"DeviceCMYK":return this.cmyk;case"CalGray":return r=s.fetchIfRef(e[1]),l=r.getArray("WhitePoint"),h=r.getArray("BlackPoint"),u=r.get("Gamma"),new Qa(l,h,u);case"CalRGB":r=s.fetchIfRef(e[1]),l=r.getArray("WhitePoint"),h=r.getArray("BlackPoint"),u=r.getArray("Gamma");const d=r.getArray("Matrix");return new ei(l,h,u,d);case"ICCBased":const f=e[1]instanceof Es;if(f){const t=n.getByRef(e[1]);if(t)return t}const g=s.fetchIfRef(e[1]),p=g.dict;if(o=p.get("N"),ai.isUsable)try{const t=new ai(g.getBytes(),"ICCBased",o);return f&&n.set(null,e[1],t),t}catch(t){if(t instanceof Ys)throw t;Zt(`ICCBased color space (${e[1]}): "${t}".`)}const m=p.getRaw("Alternate");if(m){const e=this.#D(m,t);if(e.numComps===o)return e;Zt("ICCBased color space: Ignoring incorrect /Alternate entry.")}if(1===o)return this.gray;if(3===o)return this.rgb;if(4===o)return this.cmyk;break;case"Pattern":return c=e[1]||null,c&&(c=this.#D(c,t)),new Va(c);case"I":case"Indexed":c=this.#D(e[1],t);const b=Ss(s.fetchIfRef(e[2]),0,255),w=s.fetchIfRef(e[3]);return new Xa(c,b,w);case"Separation":case"DeviceN":const y=s.fetchIfRef(e[1]);o=Array.isArray(y)?y.length:1,c=this.#D(e[2],t);const x=i.create(e[3]);return new Wa(o,c,x);case"Lab":r=s.fetchIfRef(e[1]),l=r.getArray("WhitePoint"),h=r.getArray("BlackPoint");const k=r.getArray("Range");return new ti(l,h,k);default:return Zt(`Unimplemented ColorSpace object: ${a}`),this.gray}}return Zt(`Unrecognized ColorSpace object: ${e}`),this.gray}static get gray(){return ss(this,"gray",new Ka)}static get rgb(){return ss(this,"rgb",new Ya)}static get rgba(){return ss(this,"rgba",new Ja)}static get cmyk(){if(ii.isUsable)try{return ss(this,"cmyk",new ii)}catch{Zt("CMYK fallback: DeviceCMYK")}return ss(this,"cmyk",new Za)}}class bi extends as{constructor(e){super(e,"JpegError")}}class wi extends as{constructor(e,t){super(e,"DNLMarkerError"),this.scanLines=t}}class yi extends as{constructor(e){super(e,"EOIMarkerError")}}const xi=new Uint8Array([0,1,8,16,9,2,3,10,17,24,32,25,18,11,4,5,12,19,26,33,40,48,41,34,27,20,13,6,7,14,21,28,35,42,49,56,57,50,43,36,29,22,15,23,30,37,44,51,58,59,52,45,38,31,39,46,53,60,61,54,47,55,62,63]),ki=4017,vi=799,Ai=3406,Ci=2276,Si=1567,Ii=3784,Bi=5793,Fi=2896;function Mi(e,t){let s,a,i=0,n=16;for(;n>0&&!e[n-1];)n--;const r=[{children:[],index:0}];let o,c=r[0];for(s=0;s<n;s++){for(a=0;a<e[s];a++){for(c=r.pop(),c.children[c.index]=t[i];c.index>0;)c=r.pop();for(c.index++,r.push(c);r.length<=s;)r.push(o={children:[],index:0}),c.children[c.index]=o.children,c=o;i++}s+1<n&&(r.push(o={children:[],index:0}),c.children[c.index]=o.children,c=o)}return r[0].children}function Ti(e,t,s){return 64*((e.blocksPerLine+1)*t+s)}function Ri(e,t,s,a,i,n,r,o,c,l=!1){const h=s.mcusPerLine,u=s.progressive,d=t;let f=0,g=0;function p(){if(g>0)return g--,f>>g&1;if(f=e[t++],255===f){const a=e[t++];if(a){if(220===a&&l){const a=ca(e,t+=2);if(t+=2,a>0&&a!==s.scanLines)throw new wi("Found DNL marker (0xFFDC) while parsing scan data",a)}else if(217===a){if(l){const e=v*(8===s.precision?8:0);if(e>0&&Math.round(s.scanLines/e)>=5)throw new wi("Found EOI marker (0xFFD9) while parsing scan data, possibly caused by incorrect `scanLines` parameter",e)}throw new yi("Found EOI marker (0xFFD9) while parsing scan data")}throw new bi(`unexpected marker ${(f<<8|a).toString(16)}`)}}return g=7,f>>>7}function m(e){let t=e;for(;;){switch(t=t[p()],typeof t){case"number":return t;case"object":continue}throw new bi("invalid huffman sequence")}}function b(e){let t=0;for(;e>0;)t=t<<1|p(),e--;return t}function w(e){if(1===e)return 1===p()?1:-1;const t=b(e);return t>=1<<e-1?t:t+(-1<<e)+1}let y,x=0,k=0,v=0;function A(e,t,s,a,i){const n=s%h;v=(s/h|0)*e.v+a;const r=n*e.h+i;t(e,Ti(e,v,r))}function C(e,t,s){v=s/e.blocksPerLine|0;const a=s%e.blocksPerLine;t(e,Ti(e,v,a))}const S=a.length;let I,B,F,M,T,R;R=u?0===n?0===o?function(e,t){const s=m(e.huffmanTableDC),a=0===s?0:w(s)<<c;e.blockData[t]=e.pred+=a}:function(e,t){e.blockData[t]|=p()<<c}:0===o?function(e,t){if(x>0)return void x--;let s=n;const a=r;for(;s<=a;){const a=m(e.huffmanTableAC),i=15&a,n=a>>4;if(0===i){if(n<15){x=b(n)+(1<<n)-1;break}s+=16;continue}s+=n;const r=xi[s];e.blockData[t+r]=w(i)*(1<<c),s++}}:function(e,t){let s=n;const a=r;let i,o,l=0;for(;s<=a;){const a=t+xi[s],n=e.blockData[a]<0?-1:1;switch(k){case 0:if(o=m(e.huffmanTableAC),i=15&o,l=o>>4,0===i)l<15?(x=b(l)+(1<<l),k=4):(l=16,k=1);else{if(1!==i)throw new bi("invalid ACn encoding");y=w(i),k=l?2:3}continue;case 1:case 2:e.blockData[a]?e.blockData[a]+=n*(p()<<c):(l--,0===l&&(k=2===k?3:0));break;case 3:e.blockData[a]?e.blockData[a]+=n*(p()<<c):(e.blockData[a]=y<<c,k=0);break;case 4:e.blockData[a]&&(e.blockData[a]+=n*(p()<<c))}s++}4===k&&(x--,0===x&&(k=0))}:function(e,t){const s=m(e.huffmanTableDC),a=0===s?0:w(s);e.blockData[t]=e.pred+=a;let i=1;for(;i<64;){const s=m(e.huffmanTableAC),a=15&s,n=s>>4;if(0===a){if(n<15)break;i+=16;continue}i+=n;const r=xi[i];e.blockData[t+r]=w(a),i++}};let N,D=0;const O=1===S?a[0].blocksPerLine*a[0].blocksPerColumn:h*s.mcusPerColumn;let P,E;for(;D<=O;){const s=i?Math.min(O-D,i):O;if(s>0){for(B=0;B<S;B++)a[B].pred=0;if(x=0,1===S)for(I=a[0],T=0;T<s;T++)C(I,R,D),D++;else for(T=0;T<s;T++){for(B=0;B<S;B++)for(I=a[B],P=I.h,E=I.v,F=0;F<E;F++)for(M=0;M<P;M++)A(I,R,D,F,M);D++}}if(g=0,N=Oi(e,t),!N)break;if(N.invalid&&(Zt(`decodeScan - ${s>0?"unexpected":"excessive"} MCU data, current marker is: ${N.invalid}`),t=N.offset),!(N.marker>=65488&&N.marker<=65495))break;t+=2}return t-d}function Ni(e,t,s){const a=e.quantizationTable,i=e.blockData;let n,r,o,c,l,h,u,d,f,g,p,m,b,w,y,x,k;if(!a)throw new bi("missing required Quantization Table.");for(let v=0;v<64;v+=8)f=i[t+v],g=i[t+v+1],p=i[t+v+2],m=i[t+v+3],b=i[t+v+4],w=i[t+v+5],y=i[t+v+6],x=i[t+v+7],f*=a[v],0!==(g|p|m|b|w|y|x)?(g*=a[v+1],p*=a[v+2],m*=a[v+3],b*=a[v+4],w*=a[v+5],y*=a[v+6],x*=a[v+7],n=Bi*f+128>>8,r=Bi*b+128>>8,o=p,c=y,l=Fi*(g-x)+128>>8,d=Fi*(g+x)+128>>8,h=m<<4,u=w<<4,n=n+r+1>>1,r=n-r,k=o*Ii+c*Si+128>>8,o=o*Si-c*Ii+128>>8,c=k,l=l+u+1>>1,u=l-u,d=d+h+1>>1,h=d-h,n=n+c+1>>1,c=n-c,r=r+o+1>>1,o=r-o,k=l*Ci+d*Ai+2048>>12,l=l*Ai-d*Ci+2048>>12,d=k,k=h*vi+u*ki+2048>>12,h=h*ki-u*vi+2048>>12,u=k,s[v]=n+d,s[v+7]=n-d,s[v+1]=r+u,s[v+6]=r-u,s[v+2]=o+h,s[v+5]=o-h,s[v+3]=c+l,s[v+4]=c-l):(k=Bi*f+512>>10,s[v]=k,s[v+1]=k,s[v+2]=k,s[v+3]=k,s[v+4]=k,s[v+5]=k,s[v+6]=k,s[v+7]=k);for(let v=0;v<8;++v)f=s[v],g=s[v+8],p=s[v+16],m=s[v+24],b=s[v+32],w=s[v+40],y=s[v+48],x=s[v+56],0!==(g|p|m|b|w|y|x)?(n=Bi*f+2048>>12,r=Bi*b+2048>>12,o=p,c=y,l=Fi*(g-x)+2048>>12,d=Fi*(g+x)+2048>>12,h=m,u=w,n=4112+(n+r+1>>1),r=n-r,k=o*Ii+c*Si+2048>>12,o=o*Si-c*Ii+2048>>12,c=k,l=l+u+1>>1,u=l-u,d=d+h+1>>1,h=d-h,n=n+c+1>>1,c=n-c,r=r+o+1>>1,o=r-o,k=l*Ci+d*Ai+2048>>12,l=l*Ai-d*Ci+2048>>12,d=k,k=h*vi+u*ki+2048>>12,h=h*ki-u*vi+2048>>12,u=k,f=n+d,x=n-d,g=r+u,y=r-u,p=o+h,w=o-h,m=c+l,b=c-l,f<16?f=0:f>=4080?f=255:f>>=4,g<16?g=0:g>=4080?g=255:g>>=4,p<16?p=0:p>=4080?p=255:p>>=4,m<16?m=0:m>=4080?m=255:m>>=4,b<16?b=0:b>=4080?b=255:b>>=4,w<16?w=0:w>=4080?w=255:w>>=4,y<16?y=0:y>=4080?y=255:y>>=4,x<16?x=0:x>=4080?x=255:x>>=4,i[t+v]=f,i[t+v+8]=g,i[t+v+16]=p,i[t+v+24]=m,i[t+v+32]=b,i[t+v+40]=w,i[t+v+48]=y,i[t+v+56]=x):(k=Bi*f+8192>>14,k=k<-2040?0:k>=2024?255:k+2056>>4,i[t+v]=k,i[t+v+8]=k,i[t+v+16]=k,i[t+v+24]=k,i[t+v+32]=k,i[t+v+40]=k,i[t+v+48]=k,i[t+v+56]=k)}function Di(e,t){const s=t.blocksPerLine,a=t.blocksPerColumn,i=new Int16Array(64);for(let n=0;n<a;n++)for(let e=0;e<s;e++)Ni(t,Ti(t,n,e),i);return t.blockData}function Oi(e,t,s=t){const a=e.length-1;let i=s<t?s:t;if(t>=a)return null;const n=ca(e,t);if(n>=65472&&n<=65534)return{invalid:null,marker:n,offset:t};let r=ca(e,i);for(;!(r>=65472&&r<=65534);){if(++i>=a)return null;r=ca(e,i)}return{invalid:n.toString(16),marker:r,offset:i}}function Pi(e){const t=Math.ceil(e.samplesPerLine/8/e.maxH),s=Math.ceil(e.scanLines/8/e.maxV);for(const a of e.components){const i=Math.ceil(Math.ceil(e.samplesPerLine/8)*a.h/e.maxH),n=Math.ceil(Math.ceil(e.scanLines/8)*a.v/e.maxV),r=t*a.h,o=s*a.v*64*(r+1);a.blockData=new Int16Array(o),a.blocksPerLine=i,a.blocksPerColumn=n}e.mcusPerLine=t,e.mcusPerColumn=s}function Ei(e,t){const s=ca(e,t);let a=(t+=2)+s-2;const i=Oi(e,a,t);i?.invalid&&(Zt("readDataBlock - incorrect length, current marker is: "+i.invalid),a=i.offset);const n=e.subarray(t,a);return{appData:n,oldOffset:t,newOffset:t+n.length}}function Li(e,t){const s=ca(e,t),a=(t+=2)+s-2,i=Oi(e,a,t);return i?.invalid?i.offset:a}class _i{constructor({decodeTransform:e=null,colorTransform:t=-1}={}){this._decodeTransform=e,this._colorTransform=t}static canUseImageDecoder(e,t=-1){let s=null,a=0,i=null,n=ca(e,a);if(a+=2,65496!==n)throw new bi("SOI not found");n=ca(e,a),a+=2;e:for(;65497!==n;){switch(n){case 65505:const{appData:t,oldOffset:r,newOffset:o}=Ei(e,a);if(a=o,69===t[0]&&120===t[1]&&105===t[2]&&102===t[3]&&0===t[4]&&0===t[5]){if(s)throw new bi("Duplicate EXIF-blocks found.");s={exifStart:r+6,exifEnd:o}}n=ca(e,a),a+=2;continue;case 65472:case 65473:case 65474:i=e[a+7];break e;case 65535:255!==e[a]&&a--}a=Li(e,a),n=ca(e,a),a+=2}return 4===i||3===i&&0===t?null:s||{}}parse(e,{dnlScanLines:t=null}={}){let s,a,i=0,n=null,r=null,o=0;const c=[],l=[],h=[];let u=ca(e,i);if(i+=2,65496!==u)throw new bi("SOI not found");u=ca(e,i),i+=2;e:for(;65497!==u;){let d,f,g;switch(u){case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:const{appData:p,newOffset:m}=Ei(e,i);i=m,65504===u&&74===p[0]&&70===p[1]&&73===p[2]&&70===p[3]&&0===p[4]&&(n={version:{major:p[5],minor:p[6]},densityUnits:p[7],xDensity:p[8]<<8|p[9],yDensity:p[10]<<8|p[11],thumbWidth:p[12],thumbHeight:p[13],thumbData:p.subarray(14,14+3*p[12]*p[13])}),65518===u&&65===p[0]&&100===p[1]&&111===p[2]&&98===p[3]&&101===p[4]&&(r={version:p[5]<<8|p[6],flags0:p[7]<<8|p[8],flags1:p[9]<<8|p[10],transformCode:p[11]});break;case 65499:const b=ca(e,i);i+=2;const w=b+i-2;let y;for(;i<w;){const t=e[i++],s=new Uint16Array(64);if(t>>4){if(t>>4!=1)throw new bi("DQT - invalid table spec");for(f=0;f<64;f++)y=xi[f],s[y]=ca(e,i),i+=2}else for(f=0;f<64;f++)y=xi[f],s[y]=e[i++];c[15&t]=s}break;case 65472:case 65473:case 65474:if(s)throw new bi("Only single frame JPEGs supported");i+=2,s={},s.extended=65473===u,s.progressive=65474===u,s.precision=e[i++];const x=ca(e,i);i+=2,s.scanLines=t||x,s.samplesPerLine=ca(e,i),i+=2,s.components=[],s.componentIds={};const k=e[i++];let v=0,A=0;for(d=0;d<k;d++){const t=e[i],a=e[i+1]>>4,n=15&e[i+1];v<a&&(v=a),A<n&&(A=n);const r=e[i+2];g=s.components.push({h:a,v:n,quantizationId:r,quantizationTable:null}),s.componentIds[t]=g-1,i+=3}s.maxH=v,s.maxV=A,Pi(s);break;case 65476:const C=ca(e,i);for(i+=2,d=2;d<C;){const t=e[i++],s=new Uint8Array(16);let a=0;for(f=0;f<16;f++,i++)a+=s[f]=e[i];const n=new Uint8Array(a);for(f=0;f<a;f++,i++)n[f]=e[i];d+=17+a,(t>>4?l:h)[15&t]=Mi(s,n)}break;case 65501:i+=2,a=ca(e,i),i+=2;break;case 65498:const S=1===++o&&!t;i+=2;const I=e[i++],B=[];for(d=0;d<I;d++){const t=e[i++],a=s.componentIds[t],n=s.components[a];n.index=t;const r=e[i++];n.huffmanTableDC=h[r>>4],n.huffmanTableAC=l[15&r],B.push(n)}const F=e[i++],M=e[i++],T=e[i++];try{i+=Ri(e,i,s,B,a,F,M,T>>4,15&T,S)}catch(t){if(t instanceof wi)return Zt(`${t.message} -- attempting to re-parse the JPEG image.`),this.parse(e,{dnlScanLines:t.scanLines});if(t instanceof yi){Zt(`${t.message} -- ignoring the rest of the image data.`);break e}throw t}break;case 65500:i+=4;break;case 65535:255!==e[i]&&i--;break;default:const R=Oi(e,i-2,i-3);if(R?.invalid){Zt("JpegImage.parse - unexpected data, current marker is: "+R.invalid),i=R.offset;break}if(!R||i>=e.length-1){Zt("JpegImage.parse - reached the end of the image data without finding an EOI marker (0xFFD9).");break e}throw new bi("JpegImage.parse - unknown marker: "+u.toString(16))}u=ca(e,i),i+=2}if(!s)throw new bi("JpegImage.parse - no frame data found.");this.width=s.samplesPerLine,this.height=s.scanLines,this.jfif=n,this.adobe=r,this.components=[];for(const d of s.components){const e=c[d.quantizationId];e&&(d.quantizationTable=e),this.components.push({index:d.index,output:Di(0,d),scaleX:d.h/s.maxH,scaleY:d.v/s.maxV,blocksPerLine:d.blocksPerLine,blocksPerColumn:d.blocksPerColumn})}this.numComponents=this.components.length}_getLinearizedBlockData(e,t,s=!1){const a=this.width/e,i=this.height/t;let n,r,o,c,l,h,u,d,f,g,p,m=0;const b=this.components.length,w=e*t*b,y=new Uint8ClampedArray(w),x=new Uint32Array(e),k=4294967288;let v;for(u=0;u<b;u++){if(n=this.components[u],r=n.scaleX*a,o=n.scaleY*i,m=u,p=n.output,c=n.blocksPerLine+1<<3,r!==v){for(l=0;l<e;l++)d=0|l*r,x[l]=(d&k)<<3|7&d;v=r}for(h=0;h<t;h++)for(d=0|h*o,g=c*(d&k)|(7&d)<<3,l=0;l<e;l++)y[m]=p[g+x[l]],m+=b}let A=this._decodeTransform;if(s||4!==b||A||(A=new Int32Array([-256,255,-256,255,-256,255,-256,255])),A)for(u=0;u<w;)for(d=0,f=0;d<b;d++,u++,f+=2)y[u]=(y[u]*A[f]>>8)+A[f+1];return y}get _isColorConversionNeeded(){return this.adobe?!!this.adobe.transformCode:3===this.numComponents?0!==this._colorTransform&&(82!==this.components[0].index||71!==this.components[1].index||66!==this.components[2].index):1===this._colorTransform}_convertYccToRgb(e){let t,s,a;for(let i=0,n=e.length;i<n;i+=3)t=e[i],s=e[i+1],a=e[i+2],e[i]=t-179.456+1.402*a,e[i+1]=t+135.459-.344*s-.714*a,e[i+2]=t-226.816+1.772*s;return e}_convertYccToRgba(e,t){for(let s=0,a=0,i=e.length;s<i;s+=3,a+=4){const i=e[s],n=e[s+1],r=e[s+2];t[a]=i-179.456+1.402*r,t[a+1]=i+135.459-.344*n-.714*r,t[a+2]=i-226.816+1.772*n,t[a+3]=255}return t}_convertYcckToRgb(e){return this._convertYcckToCmyk(e),this._convertCmykToRgb(e)}_convertYcckToRgba(e){return this._convertYcckToCmyk(e),this._convertCmykToRgba(e)}_convertYcckToCmyk(e){let t,s,a;for(let i=0,n=e.length;i<n;i+=4)t=e[i],s=e[i+1],a=e[i+2],e[i]=434.456-t-1.402*a,e[i+1]=119.541-t+.344*s+.714*a,e[i+2]=481.816-t-1.772*s;return e}_convertCmykToRgb(e){const t=e.length/4;return mi.cmyk.getRgbBuffer(e,0,t,e,0,8,0),e.subarray(0,3*t)}_convertCmykToRgba(e){if(mi.cmyk.getRgbBuffer(e,0,e.length/4,e,0,8,1),mi.cmyk instanceof Za)for(let t=3,s=e.length;t<s;t+=4)e[t]=255;return e}getData({width:e,height:t,forceRGBA:s=!1,forceRGB:a=!1,isSourcePDF:i=!1}){if(this.numComponents>4)throw new bi("Unsupported color mode");const n=this._getLinearizedBlockData(e,t,i);if(1===this.numComponents&&(s||a)){const e=n.length*(s?4:3),t=new Uint8ClampedArray(e);let a=0;if(s)!function(e,t){if(gs.isLittleEndian)for(let s=0,a=e.length;s<a;s++)t[s]=65793*e[s]|4278190080;else for(let s=0,a=e.length;s<a;s++)t[s]=16843008*e[s]|255}(n,new Uint32Array(t.buffer));else for(const s of n)t[a++]=s,t[a++]=s,t[a++]=s;return t}if(3===this.numComponents&&this._isColorConversionNeeded){if(s){const e=new Uint8ClampedArray(n.length/3*4);return this._convertYccToRgba(n,e)}return this._convertYccToRgb(n)}if(4===this.numComponents){if(this._isColorConversionNeeded)return s?this._convertYcckToRgba(n):a?this._convertYcckToRgb(n):this._convertYcckToCmyk(n);if(s)return this._convertCmykToRgba(n);if(a)return this._convertCmykToRgb(n)}return n}}class Ui extends gi{static#T=gs.isImageDecoderSupported;constructor(e,t,s){super(t),this.stream=e,this.dict=e.dict,this.maybeLength=t,this.params=s}static get canUseImageDecoder(){return ss(this,"canUseImageDecoder",this.#T?ImageDecoder.isTypeSupported("image/jpeg"):Promise.resolve(!1))}static setOptions({isImageDecoderSupported:e=!1}){this.#T=e}get bytes(){return ss(this,"bytes",this.stream.getBytes(this.maybeLength))}ensureBuffer(e){}readBlock(){this.decodeImage()}get jpegOptions(){const e={decodeTransform:void 0,colorTransform:void 0},t=this.dict.getArray("D","Decode");if((this.forceRGBA||this.forceRGB)&&Array.isArray(t)){const s=this.dict.get("BPC","BitsPerComponent")||8,a=t.length,i=new Int32Array(a);let n=!1;const r=(1<<s)-1;for(let e=0;e<a;e+=2)i[e]=256*(t[e+1]-t[e])|0,i[e+1]=t[e]*r|0,256===i[e]&&0===i[e+1]||(n=!0);n&&(e.decodeTransform=i)}if(this.params instanceof Ps){const t=this.params.get("ColorTransform");Number.isInteger(t)&&(e.colorTransform=t)}return ss(this,"jpegOptions",e)}#O(e){for(let t=0,s=e.length-1;t<s;t++)if(255===e[t]&&216===e[t+1]){t>0&&(e=e.subarray(t));break}return e}decodeImage(e){if(this.eof)return this.buffer;e=this.#O(e||this.bytes);const t=new _i(this.jpegOptions);t.parse(e);const s=t.getData({width:this.drawWidth,height:this.drawHeight,forceRGBA:this.forceRGBA,forceRGB:this.forceRGB,isSourcePDF:!0});return this.buffer=s,this.bufferLength=s.length,this.eof=!0,this.buffer}get canAsyncDecodeImageFromBuffer(){return this.stream.isAsync}async getTransferableImage(){if(!await Ui.canUseImageDecoder)return null;const e=this.jpegOptions;if(e.decodeTransform)return null;let t;try{const s=this.canAsyncDecodeImageFromBuffer&&await this.stream.asyncGetBytes()||this.bytes;if(!s)return null;let a=this.#O(s);const i=_i.canUseImageDecoder(a,e.colorTransform);return i?(i.exifStart&&(a=a.slice(),a.fill(0,i.exifStart,i.exifEnd)),t=new ImageDecoder({data:a,type:"image/jpeg",preferAnimation:!1}),(await t.decode()).image):null}catch(e){return Zt(`getTransferableImage - failed: "${e}".`),null}finally{t?.close()}}}const qi=async function(e={}){var t=e,s="./this.program",a=(e,t)=>{throw t},i=import.meta.url;try{new URL(".",i).href}catch{}var n,r,o,c,l,h,u,d,f=console.log.bind(console),g=console.error.bind(console),p=!1,m=!1;function b(){var e=c.buffer;l=new Int8Array(e),new Int16Array(e),h=new Uint8Array(e),new Uint16Array(e),u=new Int32Array(e),d=new Uint32Array(e),new Float32Array(e),new Float64Array(e),new BigInt64Array(e),new BigUint64Array(e)}class w{name="ExitStatus";constructor(e){this.message=`Program terminated with exit(${e})`,this.status=e}}var y,x=e=>{for(;e.length>0;)e.shift()(t)},k=[],v=e=>k.push(e),A=[],C=e=>A.push(e),S=!0,I=0,B={},F=e=>{if(e instanceof w||"unwind"==e)return n;a(0,e)},M=()=>S||I>0,T=e=>{n=e,M()||(t.onExit?.(e),p=!0),a(0,new w(e))},R=(e,t)=>{n=e,T(e)},N=e=>{if(!p)try{e(),(()=>{if(!M())try{R(n)}catch(e){F(e)}})()}catch(e){F(e)}},D=(e,t)=>Math.ceil(e/t)*t,O=e=>{var t=(e-c.buffer.byteLength+65535)/65536|0;try{return c.grow(t),b(),1}catch(e){}},P={},E=()=>{if(!E.strings){var e={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.language||"C").replace("-","_")+".UTF-8",_:s||"./this.program"};for(var t in P)void 0===P[t]?delete e[t]:e[t]=P[t];var a=[];for(var t in e)a.push(`${t}=${e[t]}`);E.strings=a}return E.strings},L=(e,t,s)=>((e,t,s,a)=>{if(!(a>0))return 0;for(var i=s,n=s+a-1,r=0;r<e.length;++r){var o=e.codePointAt(r);if(o<=127){if(s>=n)break;t[s++]=o}else if(o<=2047){if(s+1>=n)break;t[s++]=192|o>>6,t[s++]=128|63&o}else if(o<=65535){if(s+2>=n)break;t[s++]=224|o>>12,t[s++]=128|o>>6&63,t[s++]=128|63&o}else{if(s+3>=n)break;t[s++]=240|o>>18,t[s++]=128|o>>12&63,t[s++]=128|o>>6&63,t[s++]=128|63&o,r++}}return t[s]=0,s-i})(e,h,t,s),_=e=>{for(var t=0,s=0;s<e.length;++s){var a=e.charCodeAt(s);a<=127?t++:a<=2047?t+=2:a>=55296&&a<=57343?(t+=4,++s):t+=3}return t},U=[null,[],[]],q="undefined"!=typeof TextDecoder?new TextDecoder:void 0,j=(e,t=0,s,a)=>{var i=((e,t,s,a)=>{var i=t+s;if(a)return i;for(;e[t]&&!(t>=i);)++t;return t})(e,t,s,a);if(i-t>16&&e.buffer&&q)return q.decode(e.subarray(t,i));for(var n="";t<i;){var r=e[t++];if(128&r){var o=63&e[t++];if(192!=(224&r)){var c=63&e[t++];if((r=224==(240&r)?(15&r)<<12|o<<6|c:(7&r)<<18|o<<12|c<<6|63&e[t++])<65536)n+=String.fromCharCode(r);else{var l=r-65536;n+=String.fromCharCode(55296|l>>10,56320|1023&l)}}else n+=String.fromCharCode((31&r)<<6|o)}else n+=String.fromCharCode(r)}return n},H=(e,t)=>{var s=U[e];0===t||10===t?((1===e?f:g)(j(s)),s.length=0):s.push(t)},$=(e,t,s)=>e?j(h,e,t,s):"";if(t.noExitRuntime&&(S=t.noExitRuntime),t.print&&(f=t.print),t.printErr&&(g=t.printErr),t.wasmBinary&&t.wasmBinary,t.arguments&&t.arguments,t.thisProgram&&(s=t.thisProgram),t.preInit)for("function"==typeof t.preInit&&(t.preInit=[t.preInit]);t.preInit.length>0;)t.preInit.shift()();t.writeArrayToMemory=(e,t)=>{l.set(e,t)};var z,G={k:()=>function(e){t.onAbort?.(e),g(e="Aborted("+e+")"),p=!0,e+=". Build with -sASSERTIONS for more info.";var s=new WebAssembly.RuntimeError(e);throw o?.(s),s}(""),j:()=>{S=!1,I=0},l:(e,t)=>{if(B[e]&&(clearTimeout(B[e].id),delete B[e]),!t)return 0;var s=setTimeout(()=>{delete B[e],N(()=>y(e,performance.now()))},t);return B[e]={id:s,timeout_ms:t},0},f:function(e,s){e>>=2;const a=t.imageData=new Uint8ClampedArray(s),i=u.subarray(e,e+s);a.set(i)},e:function(e,s,a,i){e>>=2,s>>=2,a>>=2;const n=t.imageData=new Uint8ClampedArray(3*i),r=u.subarray(e,e+i),o=u.subarray(s,s+i),c=u.subarray(a,a+i);for(let t=0;t<i;t++)n[3*t]=r[t],n[3*t+1]=o[t],n[3*t+2]=c[t]},d:function(e,s,a,i,n){e>>=2,s>>=2,a>>=2,i>>=2;const r=t.imageData=new Uint8ClampedArray(4*n),o=u.subarray(e,e+n),c=u.subarray(s,s+n),l=u.subarray(a,a+n),h=u.subarray(i,i+n);for(let t=0;t<n;t++)r[4*t]=o[t],r[4*t+1]=c[t],r[4*t+2]=l[t],r[4*t+3]=h[t]},m:e=>{var t=h.length,s=2147483648;if((e>>>=0)>s)return!1;for(var a=1;a<=4;a*=2){var i=t*(1+.2/a);i=Math.min(i,e+100663296);var n=Math.min(s,D(Math.max(e,i),65536));if(O(n))return!0}return!1},o:(e,t)=>{var s=0,a=0;for(var i of E()){var n=t+s;d[e+a>>2]=n,s+=L(i,n,1/0)+1,a+=4}return 0},p:(e,t)=>{var s=E();d[e>>2]=s.length;var a=0;for(var i of s)a+=_(i)+1;return d[t>>2]=a,0},n:function(e,t,s,a){var i;return t=(i=t)<-9007199254740992||i>9007199254740992?NaN:Number(i),70},b:(e,t,s,a)=>{for(var i=0,n=0;n<s;n++){var r=d[t>>2],o=d[t+4>>2];t+=8;for(var c=0;c<o;c++)H(e,h[r+c]);i+=o}return d[a>>2]=i,0},q:function(e,s){e>>=2;const a=t.imageData=new Uint8ClampedArray(4*s),i=u.subarray(e,e+s);for(let t=0;t<s;t++)a[4*t]=a[4*t+1]=a[4*t+2]=i[t],a[4*t+3]=255},h:function(e,s,a){e>>=2,s>>=2;const i=t.imageData=new Uint8ClampedArray(4*a),n=u.subarray(e,e+a),r=u.subarray(s,s+a);for(let t=0;t<a;t++)i[4*t]=i[4*t+1]=i[4*t+2]=n[t],i[4*t+3]=r[t]},c:function(e){const s=$(e);(t.warn||console.warn)(`OpenJPEG: ${s}`)},i:T,g:function(e,s,a,i){e>>=2,s>>=2,a>>=2;const n=t.imageData=new Uint8ClampedArray(4*i),r=u.subarray(e,e+i),o=u.subarray(s,s+i),c=u.subarray(a,a+i);for(let t=0;t<i;t++)n[4*t]=r[t],n[4*t+1]=o[t],n[4*t+2]=c[t],n[4*t+3]=255},a:function(e){const s=$(e);t.errorMessages?t.errorMessages+="\n"+s:t.errorMessages=s}};return z=await async function(){function e(e,s){return z=e.exports,c=z.r,b(),function(e){t._malloc=e.t,t._free=e.u,t._jp2_decode=e.v,y=e.w}(z),z}var s=function(){return{a:G}}();return new Promise((a,i)=>{t.instantiateWasm(s,(t,s)=>{a(e(t))})})}(),function(){function e(){t.calledRun=!0,p||(function(){m=!0,z.s()}(),r?.(t),t.onRuntimeInitialized?.(),function(){if(t.postRun)for("function"==typeof t.postRun&&(t.postRun=[t.postRun]);t.postRun.length;)v(t.postRun.shift());x(k)}())}!function(){if(t.preRun)for("function"==typeof t.preRun&&(t.preRun=[t.preRun]);t.preRun.length;)C(t.preRun.shift());x(A)}(),t.setStatus?(t.setStatus("Running..."),setTimeout(()=>{setTimeout(()=>t.setStatus(""),1),e()},1)):e()}(),m?t:new Promise((e,t)=>{r=e,o=t})};class ji extends as{constructor(e){super(e,"JpxError")}}class Hi{static#P=null;static#E=null;static#L=null;static#S=!0;static#_=!0;static#I=null;static setOptions({handler:e,useWasm:t,useWorkerFetch:s,wasmUrl:a}){this.#S=t,this.#_=s,this.#I=a,s||(this.#E=e)}static async#U(e){const t=`${this.#I}openjpeg_nowasm_fallback.js`;let s=null;try{s=(await import(t)).default()}catch(e){Zt(`JpxImage#getJsModule: ${e}`)}e(s)}static async#q(e,t,s){const a="openjpeg.wasm";try{return this.#P||(this.#_?this.#P=await ta(`${this.#I}${a}`):this.#P=await this.#E.sendWithPromise("FetchBinaryData",{type:"wasmFactory",filename:a})),s((await WebAssembly.instantiate(this.#P,t)).instance)}catch(t){return Zt(`JpxImage#instantiateWasm: ${t}`),this.#U(e),null}finally{this.#E=null}}static async decode(e,{numComponents:t=4,isIndexedColormap:s=!1,smaskInData:a=!1,reducePower:i=0}={}){if(!this.#L){const{promise:e,resolve:t}=Promise.withResolvers(),s=[e];this.#S?s.push(qi({warn:Zt,instantiateWasm:this.#q.bind(this,t)})):this.#U(t),this.#L=Promise.race(s)}const n=await this.#L;if(!n)throw new ji("OpenJPEG failed to initialize");let r;try{const o=e.length;if(r=n._malloc(o),n.writeArrayToMemory(e,r),n._jp2_decode(r,o,t>0?t:0,!!s,!!a,i)){const{errorMessages:e}=n;if(e)throw delete n.errorMessages,new ji(e);throw new ji("Unknown error")}const{imageData:c}=n;return n.imageData=null,c}finally{r&&n._free(r)}}static cleanup(){this.#L=null}static parseImageProperties(e){let t=e.getByte();for(;t>=0;){const s=t;if(t=e.getByte(),65361===(s<<8|t)){e.skip(4);const t=e.getInt32()>>>0,s=e.getInt32()>>>0,a=e.getInt32()>>>0,i=e.getInt32()>>>0;return e.skip(16),{width:t-a,height:s-i,bitsPerComponent:8,componentsCount:e.getUint16()}}}throw new ji("No size marker found in JPX stream")}}function $i(e,t,s,a,i){let n=e;for(let r=0,o=t.length-1;r<o;r++){const e=t[r];n=n[e]||=[]}n[t.at(-1)]={checkFn:s,iterateFn:a,processFn:i}}const zi=[];$i(zi,[ge,me,Dt,pe],null,function(e,t){const s=e.fnArray,a=(t-(e.iCurr-3))%4;switch(a){case 0:return s[t]===ge;case 1:return s[t]===me;case 2:return s[t]===Dt;case 3:return s[t]===pe}throw new Error(`iterateInlineImageGroup - invalid pos: ${a}`)},function(e,t){const s=e.fnArray,a=e.argsArray,i=e.iCurr,n=i-3,r=i-2,o=i-1,c=Math.min(Math.floor((t-n)/4),200);if(c<10)return t-(t-n)%4;let l=0;const h=[];let u=0,d=1,f=1;for(let y=0;y<c;y++){const e=a[r+(y<<2)],t=a[o+(y<<2)][0];d+t.width>1e3&&(l=Math.max(l,d),f+=u+2,d=0,u=0),h.push({transform:e,x:d,y:f,w:t.width,h:t.height}),d+=t.width+2,u=Math.max(u,t.height)}const g=Math.max(l,d)+1,p=f+u+1,m=new Uint8Array(g*p*4),b=g<<2;for(let y=0;y<c;y++){const e=a[o+(y<<2)][0].data,t=h[y].w<<2;let s=0,i=h[y].x+h[y].y*g<<2;m.set(e.subarray(0,t),i-b);for(let a=0,n=h[y].h;a<n;a++)m.set(e.subarray(s,s+t),i),s+=t,i+=b;for(m.set(e.subarray(s-t,s),i);i>=0;)e[i-4]=e[i],e[i-3]=e[i+1],e[i-2]=e[i+2],e[i-1]=e[i+3],e[i+t]=e[i+t-4],e[i+t+1]=e[i+t-3],e[i+t+2]=e[i+t-2],e[i+t+3]=e[i+t-1],i-=b}const w={width:g,height:p};if(e.isOffscreenCanvasSupported){const e=new OffscreenCanvas(g,p);e.getContext("2d").putImageData(new ImageData(new Uint8ClampedArray(m.buffer),g,p),0,0),w.bitmap=e.transferToImageBitmap(),w.data=null}else w.kind=B,w.data=m;return s.splice(n,4*c,Ot),a.splice(n,4*c,[w,h]),n+1}),$i(zi,[ge,me,Tt,pe],null,function(e,t){const s=e.fnArray,a=(t-(e.iCurr-3))%4;switch(a){case 0:return s[t]===ge;case 1:return s[t]===me;case 2:return s[t]===Tt;case 3:return s[t]===pe}throw new Error(`iterateImageMaskGroup - invalid pos: ${a}`)},function(e,t){const s=e.fnArray,a=e.argsArray,i=e.iCurr,n=i-3,r=i-2,o=i-1;let c=Math.floor((t-n)/4);if(c<10)return t-(t-n)%4;let l,h,u=!1;const d=a[o][0],f=a[r][0],g=a[r][1],p=a[r][2],m=a[r][3];if(g===p){u=!0,l=r+4;let e=o+4;for(let t=1;t<c;t++,l+=4,e+=4)if(h=a[l],a[e][0]!==d||h[0]!==f||h[1]!==g||h[2]!==p||h[3]!==m){t<10?u=!1:c=t;break}}if(u){c=Math.min(c,1e3);const e=new Float32Array(2*c);l=r;for(let t=0;t<c;t++,l+=4)h=a[l],e[t<<1]=h[4],e[1+(t<<1)]=h[5];s.splice(n,4*c,Et),a.splice(n,4*c,[d,f,g,p,m,e])}else{c=Math.min(c,100);const e=[];for(let t=0;t<c;t++){h=a[r+(t<<2)];const s=a[o+(t<<2)][0];e.push({data:s.data,width:s.width,height:s.height,interpolate:s.interpolate,count:s.count,transform:h})}s.splice(n,4*c,Rt),a.splice(n,4*c,[e])}return n+1}),$i(zi,[ge,me,Nt,pe],function(e){const t=e.argsArray,s=e.iCurr-2;return 0===t[s][1]&&0===t[s][2]},function(e,t){const s=e.fnArray,a=e.argsArray,i=(t-(e.iCurr-3))%4;switch(i){case 0:return s[t]===ge;case 1:if(s[t]!==me)return!1;const i=e.iCurr-2,n=a[i][0],r=a[i][3];return a[t][0]===n&&0===a[t][1]&&0===a[t][2]&&a[t][3]===r;case 2:if(s[t]!==Nt)return!1;const o=a[e.iCurr-1][0];return a[t][0]===o;case 3:return s[t]===pe}throw new Error(`iterateImageGroup - invalid pos: ${i}`)},function(e,t){const s=e.fnArray,a=e.argsArray,i=e.iCurr,n=i-3,r=i-2,o=a[i-1][0],c=a[r][0],l=a[r][3],h=Math.min(Math.floor((t-n)/4),1e3);if(h<3)return t-(t-n)%4;const u=new Float32Array(2*h);let d=r;for(let g=0;g<h;g++,d+=4){const e=a[d];u[g<<1]=e[4],u[1+(g<<1)]=e[5]}const f=[o,c,l,u];return s.splice(n,4*h,Pt),a.splice(n,4*h,f),n+1}),$i(zi,[Pe,je,We,Xe,Ee],null,function(e,t){const s=e.fnArray,a=e.argsArray,i=(t-(e.iCurr-4))%5;switch(i){case 0:return s[t]===Pe;case 1:return s[t]===je;case 2:return s[t]===We;case 3:if(s[t]!==Xe)return!1;const i=e.iCurr-3,n=a[i][0],r=a[i][1];return a[t][0]===n&&a[t][1]===r;case 4:return s[t]===Ee}throw new Error(`iterateShowTextGroup - invalid pos: ${i}`)},function(e,t){const s=e.fnArray,a=e.argsArray,i=e.iCurr,n=i-4,r=i-3,o=i-2,c=i-1,l=i,h=a[r][0],u=a[r][1];let d=Math.min(Math.floor((t-n)/5),1e3);if(d<3)return t-(t-n)%5;let f=n;n>=4&&s[n-4]===s[r]&&s[n-3]===s[o]&&s[n-2]===s[c]&&s[n-1]===s[l]&&a[n-4][0]===h&&a[n-4][1]===u&&(d++,f-=5);let g=f+4;for(let p=1;p<d;p++)s.splice(g,3),a.splice(g,3),g+=2;return g+1}),$i(zi,[ge,me,_t,pe],e=>{const t=e.argsArray,s=t[e.iCurr-1][0];if(s!==Ce&&s!==Se&&s!==Fe&&s!==Me&&s!==Te&&s!==Re)return!0;const a=t[e.iCurr-2];return 1===a[0]&&0===a[1]&&0===a[2]&&1===a[3]},()=>!1,(e,t)=>{const{fnArray:s,argsArray:a}=e,i=e.iCurr,n=i-3,r=i-2,o=a[i-1],c=a[r],[,[l],h]=o;if(h){ms.scaleMinMax(c,h);for(let e=0,t=l.length;e<t;)switch(l[e++]){case Ht:case $t:ms.applyTransform(l,c,e),e+=2;break;case zt:ms.applyTransformToBezier(l,c,e),e+=6}}return s.splice(n,4,_t),a.splice(n,4,o),n+1});class Gi{constructor(e){this.queue=e}_optimize(){}push(e,t){this.queue.fnArray.push(e),this.queue.argsArray.push(t),this._optimize()}flush(){}reset(){}}class Wi extends Gi{constructor(e){super(e),this.state=null,this.context={iCurr:0,fnArray:e.fnArray,argsArray:e.argsArray,isOffscreenCanvasSupported:Vi.isOffscreenCanvasSupported},this.match=null,this.lastProcessed=0}_optimize(){const e=this.queue.fnArray;let t=this.lastProcessed,s=e.length,a=this.state,i=this.match;if(!a&&!i&&t+1===s&&!zi[e[t]])return void(this.lastProcessed=s);const n=this.context;for(;t<s;){if(i){if((0,i.iterateFn)(n,t)){t++;continue}if(t=(0,i.processFn)(n,t+1),s=e.length,i=null,a=null,t>=s)break}a=(a||zi)[e[t]],a&&!Array.isArray(a)?(n.iCurr=t,t++,!a.checkFn||(0,a.checkFn)(n)?(i=a,a=null):a=null):t++}this.state=a,this.match=i,this.lastProcessed=t}flush(){for(;this.match;){const e=this.queue.fnArray.length;this.lastProcessed=(0,this.match.processFn)(this.context,e),this.match=null,this.state=null,this._optimize()}}reset(){this.state=null,this.match=null,this.lastProcessed=0}}class Vi{static CHUNK_SIZE=1e3;static CHUNK_SIZE_ABOUT=this.CHUNK_SIZE-5;static isOffscreenCanvasSupported=!1;constructor(e=0,t){this._streamSink=t,this.fnArray=[],this.argsArray=[],this.optimizer=!t||e&d?new Gi(this):new Wi(this),this.dependencies=new Set,this._totalLength=0,this.weight=0,this._resolved=t?null:Promise.resolve()}static setOptions({isOffscreenCanvasSupported:e}){this.isOffscreenCanvasSupported=e}get length(){return this.argsArray.length}get ready(){return this._resolved||this._streamSink.ready}get totalLength(){return this._totalLength+this.length}addOp(e,t){this.optimizer.push(e,t),this.weight++,this._streamSink&&(this.weight>=Vi.CHUNK_SIZE||this.weight>=Vi.CHUNK_SIZE_ABOUT&&(e===pe||e===Ee))&&this.flush()}addImageOps(e,t,s,a=!1){a&&(this.addOp(ge),this.addOp(fe,[[["SMask",!1]]])),void 0!==s&&this.addOp(xt,["OC",s]),this.addOp(e,t),void 0!==s&&this.addOp(kt,[]),a&&this.addOp(pe)}addDependency(e){this.dependencies.has(e)||(this.dependencies.add(e),this.addOp(ne,[e]))}addDependencies(e){for(const t of e)this.addDependency(t)}addOpList(e){if(e instanceof Vi){for(const t of e.dependencies)this.dependencies.add(t);for(let t=0,s=e.length;t<s;t++)this.addOp(e.fnArray[t],e.argsArray[t])}else Zt('addOpList - ignoring invalid "opList" parameter.')}getIR(){return{fnArray:this.fnArray,argsArray:this.argsArray,length:this.length}}get _transfers(){const e=[],{fnArray:t,argsArray:s,length:a}=this;for(let i=0;i<a;i++)switch(t[i]){case Dt:case Ot:case Tt:{const{bitmap:t,data:a}=s[i][0];(t||a?.buffer)&&e.push(t||a.buffer);break}case _t:{const[,[t],a]=s[i];t&&e.push(t.buffer,a.buffer);break}case Ct:const[t,a]=s[i];t&&e.push(t.buffer),a&&e.push(a.buffer);break;case We:e.push(s[i][0].buffer)}return e}flush(e=!1,t=null){this.optimizer.flush();const s=this.length;this._totalLength+=s,this._streamSink.enqueue({fnArray:this.fnArray,argsArray:this.argsArray,lastChunk:e,separateAnnots:t,length:s},1,this._transfers),this.dependencies.clear(),this.fnArray.length=0,this.argsArray.length=0,this.weight=0,this.optimizer.reset()}}function Xi(e,t){let s=0;for(let a=0;a<=t;a++)s=s<<8|e[a];return s>>>0}function Ki(e,t){return 1===t?String.fromCharCode(e[0],e[1]):3===t?String.fromCharCode(e[0],e[1],e[2],e[3]):String.fromCharCode(...e.subarray(0,t+1))}function Yi(e,t,s){let a=0;for(let i=s;i>=0;i--)a+=e[i]+t[i],e[i]=255&a,a>>=8}function Ji(e,t){let s=1;for(let a=t;a>=0&&s>0;a--)s+=e[a],e[a]=255&s,s>>=8}const Zi=16;class Qi{constructor(e){this.buffer=e,this.pos=0,this.end=e.length,this.tmpBuf=new Uint8Array(19)}readByte(){return this.pos>=this.end?-1:this.buffer[this.pos++]}readNumber(){let e,t=0;do{const s=this.readByte();if(s<0)throw new cs("unexpected EOF in bcmap");e=!(128&s),t=t<<7|127&s}while(!e);return t}readSigned(){const e=this.readNumber();return 1&e?~(e>>>1):e>>>1}readHex(e,t){e.set(this.buffer.subarray(this.pos,this.pos+t+1)),this.pos+=t+1}readHexNumber(e,t){let s;const a=this.tmpBuf;let i=0;do{const e=this.readByte();if(e<0)throw new cs("unexpected EOF in bcmap");s=!(128&e),a[i++]=127&e}while(!s);let n=t,r=0,o=0;for(;n>=0;){for(;o<8&&a.length>0;)r|=a[--i]<<o,o+=7;e[n]=255&r,n--,r>>=8,o-=8}}readHexSigned(e,t){this.readHexNumber(e,t);const s=1&e[t]?255:0;let a=0;for(let i=0;i<=t;i++)a=(1&a)<<8|e[i],e[i]=a>>1^s}readString(){const e=this.readNumber(),t=new Array(e);for(let s=0;s<e;s++)t[s]=this.readNumber();return String.fromCharCode(...t)}}class en{async process(e,t,s){const a=new Qi(e),i=a.readByte();t.vertical=!!(1&i);let n=null;const r=new Uint8Array(Zi),o=new Uint8Array(Zi),c=new Uint8Array(Zi),l=new Uint8Array(Zi),h=new Uint8Array(Zi);let u,d;for(;(d=a.readByte())>=0;){const e=d>>5;if(7===e){switch(31&d){case 0:a.readString();break;case 1:n=a.readString()}continue}const s=!!(16&d),i=15&d;if(i+1>Zi)throw new Error("BinaryCMapReader.process: Invalid dataSize.");const f=1,g=a.readNumber();switch(e){case 0:a.readHex(r,i),a.readHexNumber(o,i),Yi(o,r,i),t.addCodespaceRange(i+1,Xi(r,i),Xi(o,i));for(let e=1;e<g;e++)Ji(o,i),a.readHexNumber(r,i),Yi(r,o,i),a.readHexNumber(o,i),Yi(o,r,i),t.addCodespaceRange(i+1,Xi(r,i),Xi(o,i));break;case 1:a.readHex(r,i),a.readHexNumber(o,i),Yi(o,r,i),a.readNumber();for(let e=1;e<g;e++)Ji(o,i),a.readHexNumber(r,i),Yi(r,o,i),a.readHexNumber(o,i),Yi(o,r,i),a.readNumber();break;case 2:a.readHex(c,i),u=a.readNumber(),t.mapOne(Xi(c,i),u);for(let e=1;e<g;e++)Ji(c,i),s||(a.readHexNumber(h,i),Yi(c,h,i)),u=a.readSigned()+(u+1),t.mapOne(Xi(c,i),u);break;case 3:a.readHex(r,i),a.readHexNumber(o,i),Yi(o,r,i),u=a.readNumber(),t.mapCidRange(Xi(r,i),Xi(o,i),u);for(let e=1;e<g;e++)Ji(o,i),s?r.set(o):(a.readHexNumber(r,i),Yi(r,o,i)),a.readHexNumber(o,i),Yi(o,r,i),u=a.readNumber(),t.mapCidRange(Xi(r,i),Xi(o,i),u);break;case 4:a.readHex(c,f),a.readHex(l,i),t.mapOne(Xi(c,f),Ki(l,i));for(let e=1;e<g;e++)Ji(c,f),s||(a.readHexNumber(h,f),Yi(c,h,f)),Ji(l,i),a.readHexSigned(h,i),Yi(l,h,i),t.mapOne(Xi(c,f),Ki(l,i));break;case 5:a.readHex(r,f),a.readHexNumber(o,f),Yi(o,r,f),a.readHex(l,i),t.mapBfRange(Xi(r,f),Xi(o,f),Ki(l,i));for(let e=1;e<g;e++)Ji(o,f),s?r.set(o):(a.readHexNumber(r,f),Yi(r,o,f)),a.readHexNumber(o,f),Yi(o,r,f),a.readHex(l,i),t.mapBfRange(Xi(r,f),Xi(o,f),Ki(l,i));break;default:throw new Error(`BinaryCMapReader.process - unknown type: ${e}`)}}return n?s(n):t}}class tn extends gi{constructor(e,t){t&&(t*=.8),super(t),this.stream=e,this.dict=e.dict,this.input=new Uint8Array(5)}readBlock(){const e=this.stream;let t=e.getByte();for(;ha(t);)t=e.getByte();if(-1===t||126===t)return void(this.eof=!0);const s=this.bufferLength;let a,i;if(122===t){for(a=this.ensureBuffer(s+4),i=0;i<4;++i)a[s+i]=0;this.bufferLength+=4}else{const n=this.input;for(n[0]=t,i=1;i<5;++i){for(t=e.getByte();ha(t);)t=e.getByte();if(n[i]=t,-1===t||126===t)break}if(a=this.ensureBuffer(s+i-1),this.bufferLength+=i-1,i<5){for(;i<5;++i)n[i]=117;this.eof=!0}let r=0;for(i=0;i<5;++i)r=85*r+(n[i]-33);for(i=3;i>=0;--i)a[s+i]=255&r,r>>=8}}}class sn extends gi{constructor(e,t){t&&(t*=.5),super(t),this.stream=e,this.dict=e.dict,this.firstDigit=-1}readBlock(){const e=this.stream.getBytes(8e3);if(!e.length)return void(this.eof=!0);const t=e.length+1>>1,s=this.ensureBuffer(this.bufferLength+t);let a=this.bufferLength,i=this.firstDigit;for(const n of e){let e;if(n>=48&&n<=57)e=15&n;else{if(!(n>=65&&n<=70||n>=97&&n<=102)){if(62===n){this.eof=!0;break}continue}e=9+(15&n)}i<0?i=e:(s[a++]=i<<4|e,i=-1)}i>=0&&this.eof&&(s[a++]=i<<4,i=-1),this.firstDigit=i,this.bufferLength=a}}const an=-1,nn=[[-1,-1],[-1,-1],[7,8],[7,7],[6,6],[6,6],[6,5],[6,5],[4,0],[4,0],[4,0],[4,0],[4,0],[4,0],[4,0],[4,0],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[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],[3,3],[3,3],[3,3],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2],[1,2]],rn=[[-1,-1],[12,-2],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[11,1792],[11,1792],[12,1984],[12,2048],[12,2112],[12,2176],[12,2240],[12,2304],[11,1856],[11,1856],[11,1920],[11,1920],[12,2368],[12,2432],[12,2496],[12,2560]],on=[[-1,-1],[-1,-1],[-1,-1],[-1,-1],[8,29],[8,29],[8,30],[8,30],[8,45],[8,45],[8,46],[8,46],[7,22],[7,22],[7,22],[7,22],[7,23],[7,23],[7,23],[7,23],[8,47],[8,47],[8,48],[8,48],[6,13],[6,13],[6,13],[6,13],[6,13],[6,13],[6,13],[6,13],[7,20],[7,20],[7,20],[7,20],[8,33],[8,33],[8,34],[8,34],[8,35],[8,35],[8,36],[8,36],[8,37],[8,37],[8,38],[8,38],[7,19],[7,19],[7,19],[7,19],[8,31],[8,31],[8,32],[8,32],[6,1],[6,1],[6,1],[6,1],[6,1],[6,1],[6,1],[6,1],[6,12],[6,12],[6,12],[6,12],[6,12],[6,12],[6,12],[6,12],[8,53],[8,53],[8,54],[8,54],[7,26],[7,26],[7,26],[7,26],[8,39],[8,39],[8,40],[8,40],[8,41],[8,41],[8,42],[8,42],[8,43],[8,43],[8,44],[8,44],[7,21],[7,21],[7,21],[7,21],[7,28],[7,28],[7,28],[7,28],[8,61],[8,61],[8,62],[8,62],[8,63],[8,63],[8,0],[8,0],[8,320],[8,320],[8,384],[8,384],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,10],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[5,11],[7,27],[7,27],[7,27],[7,27],[8,59],[8,59],[8,60],[8,60],[9,1472],[9,1536],[9,1600],[9,1728],[7,18],[7,18],[7,18],[7,18],[7,24],[7,24],[7,24],[7,24],[8,49],[8,49],[8,50],[8,50],[8,51],[8,51],[8,52],[8,52],[7,25],[7,25],[7,25],[7,25],[8,55],[8,55],[8,56],[8,56],[8,57],[8,57],[8,58],[8,58],[6,192],[6,192],[6,192],[6,192],[6,192],[6,192],[6,192],[6,192],[6,1664],[6,1664],[6,1664],[6,1664],[6,1664],[6,1664],[6,1664],[6,1664],[8,448],[8,448],[8,512],[8,512],[9,704],[9,768],[8,640],[8,640],[8,576],[8,576],[9,832],[9,896],[9,960],[9,1024],[9,1088],[9,1152],[9,1216],[9,1280],[9,1344],[9,1408],[7,256],[7,256],[7,256],[7,256],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,2],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[4,3],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,128],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,8],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[5,9],[6,16],[6,16],[6,16],[6,16],[6,16],[6,16],[6,16],[6,16],[6,17],[6,17],[6,17],[6,17],[6,17],[6,17],[6,17],[6,17],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,4],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[4,5],[6,14],[6,14],[6,14],[6,14],[6,14],[6,14],[6,14],[6,14],[6,15],[6,15],[6,15],[6,15],[6,15],[6,15],[6,15],[6,15],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[5,64],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,6],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7],[4,7]],cn=[[-1,-1],[-1,-1],[12,-2],[12,-2],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[-1,-1],[11,1792],[11,1792],[11,1792],[11,1792],[12,1984],[12,1984],[12,2048],[12,2048],[12,2112],[12,2112],[12,2176],[12,2176],[12,2240],[12,2240],[12,2304],[12,2304],[11,1856],[11,1856],[11,1856],[11,1856],[11,1920],[11,1920],[11,1920],[11,1920],[12,2368],[12,2368],[12,2432],[12,2432],[12,2496],[12,2496],[12,2560],[12,2560],[10,18],[10,18],[10,18],[10,18],[10,18],[10,18],[10,18],[10,18],[12,52],[12,52],[13,640],[13,704],[13,768],[13,832],[12,55],[12,55],[12,56],[12,56],[13,1280],[13,1344],[13,1408],[13,1472],[12,59],[12,59],[12,60],[12,60],[13,1536],[13,1600],[11,24],[11,24],[11,24],[11,24],[11,25],[11,25],[11,25],[11,25],[13,1664],[13,1728],[12,320],[12,320],[12,384],[12,384],[12,448],[12,448],[13,512],[13,576],[12,53],[12,53],[12,54],[12,54],[13,896],[13,960],[13,1024],[13,1088],[13,1152],[13,1216],[10,64],[10,64],[10,64],[10,64],[10,64],[10,64],[10,64],[10,64]],ln=[[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[8,13],[11,23],[11,23],[12,50],[12,51],[12,44],[12,45],[12,46],[12,47],[12,57],[12,58],[12,61],[12,256],[10,16],[10,16],[10,16],[10,16],[10,17],[10,17],[10,17],[10,17],[12,48],[12,49],[12,62],[12,63],[12,30],[12,31],[12,32],[12,33],[12,40],[12,41],[11,22],[11,22],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[8,14],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,10],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[7,11],[9,15],[9,15],[9,15],[9,15],[9,15],[9,15],[9,15],[9,15],[12,128],[12,192],[12,26],[12,27],[12,28],[12,29],[11,19],[11,19],[11,20],[11,20],[12,34],[12,35],[12,36],[12,37],[12,38],[12,39],[11,21],[11,21],[12,42],[12,43],[10,0],[10,0],[10,0],[10,0],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12],[7,12]],hn=[[-1,-1],[-1,-1],[-1,-1],[-1,-1],[6,9],[6,8],[5,7],[5,7],[4,6],[4,6],[4,6],[4,6],[4,5],[4,5],[4,5],[4,5],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,1],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[3,4],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,3],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2],[2,2]];class un{constructor(e,t={}){if("function"!=typeof e?.next)throw new Error('CCITTFaxDecoder - invalid "source" parameter.');let s;for(this.source=e,this.eof=!1,this.encoding=t.K||0,this.eoline=t.EndOfLine||!1,this.byteAlign=t.EncodedByteAlign||!1,this.columns=t.Columns||1728,this.rows=t.Rows||0,this.eoblock=t.EndOfBlock??!0,this.black=t.BlackIs1||!1,this.codingLine=new Uint32Array(this.columns+1),this.refLine=new Uint32Array(this.columns+2),this.codingLine[0]=this.columns,this.codingPos=0,this.row=0,this.nextLine2D=this.encoding<0,this.inputBits=0,this.inputBuf=0,this.outputBits=0,this.rowsDone=!1;0===(s=this._lookBits(12));)this._eatBits(1);1===s&&this._eatBits(12),this.encoding>0&&(this.nextLine2D=!this._lookBits(1),this._eatBits(1))}readNextChar(){if(this.eof)return-1;const e=this.refLine,t=this.codingLine,s=this.columns;let a,i,n,r,o;if(0===this.outputBits){if(this.rowsDone&&(this.eof=!0),this.eof)return-1;let n,o,c;if(this.err=!1,this.nextLine2D){for(r=0;t[r]<s;++r)e[r]=t[r];for(e[r++]=s,e[r]=s,t[0]=0,this.codingPos=0,a=0,i=0;t[this.codingPos]<s;)switch(n=this._getTwoDimCode(),n){case 0:this._addPixels(e[a+1],i),e[a+1]<s&&(a+=2);break;case 1:if(n=o=0,i){do{n+=c=this._getBlackCode()}while(c>=64);do{o+=c=this._getWhiteCode()}while(c>=64)}else{do{n+=c=this._getWhiteCode()}while(c>=64);do{o+=c=this._getBlackCode()}while(c>=64)}for(this._addPixels(t[this.codingPos]+n,i),t[this.codingPos]<s&&this._addPixels(t[this.codingPos]+o,1^i);e[a]<=t[this.codingPos]&&e[a]<s;)a+=2;break;case 7:if(this._addPixels(e[a]+3,i),i^=1,t[this.codingPos]<s)for(++a;e[a]<=t[this.codingPos]&&e[a]<s;)a+=2;break;case 5:if(this._addPixels(e[a]+2,i),i^=1,t[this.codingPos]<s)for(++a;e[a]<=t[this.codingPos]&&e[a]<s;)a+=2;break;case 3:if(this._addPixels(e[a]+1,i),i^=1,t[this.codingPos]<s)for(++a;e[a]<=t[this.codingPos]&&e[a]<s;)a+=2;break;case 2:if(this._addPixels(e[a],i),i^=1,t[this.codingPos]<s)for(++a;e[a]<=t[this.codingPos]&&e[a]<s;)a+=2;break;case 8:if(this._addPixelsNeg(e[a]-3,i),i^=1,t[this.codingPos]<s)for(a>0?--a:++a;e[a]<=t[this.codingPos]&&e[a]<s;)a+=2;break;case 6:if(this._addPixelsNeg(e[a]-2,i),i^=1,t[this.codingPos]<s)for(a>0?--a:++a;e[a]<=t[this.codingPos]&&e[a]<s;)a+=2;break;case 4:if(this._addPixelsNeg(e[a]-1,i),i^=1,t[this.codingPos]<s)for(a>0?--a:++a;e[a]<=t[this.codingPos]&&e[a]<s;)a+=2;break;case an:this._addPixels(s,0),this.eof=!0;break;default:Jt("bad 2d code"),this._addPixels(s,0),this.err=!0}}else for(t[0]=0,this.codingPos=0,i=0;t[this.codingPos]<s;){if(n=0,i)do{n+=c=this._getBlackCode()}while(c>=64);else do{n+=c=this._getWhiteCode()}while(c>=64);this._addPixels(t[this.codingPos]+n,i),i^=1}let l=!1;if(this.byteAlign&&(this.inputBits&=-8),this.eoblock||this.row!==this.rows-1){if(n=this._lookBits(12),this.eoline)for(;n!==an&&1!==n;)this._eatBits(1),n=this._lookBits(12);else for(;0===n;)this._eatBits(1),n=this._lookBits(12);1===n?(this._eatBits(12),l=!0):n===an&&(this.eof=!0)}else this.rowsDone=!0;if(!this.eof&&this.encoding>0&&!this.rowsDone&&(this.nextLine2D=!this._lookBits(1),this._eatBits(1)),this.eoblock&&l&&this.byteAlign){if(n=this._lookBits(12),1===n){if(this._eatBits(12),this.encoding>0&&(this._lookBits(1),this._eatBits(1)),this.encoding>=0)for(r=0;r<4;++r)n=this._lookBits(12),1!==n&&Jt("bad rtc code: "+n),this._eatBits(12),this.encoding>0&&(this._lookBits(1),this._eatBits(1));this.eof=!0}}else if(this.err&&this.eoline){for(;;){if(n=this._lookBits(13),n===an)return this.eof=!0,-1;if(n>>1==1)break;this._eatBits(1)}this._eatBits(12),this.encoding>0&&(this._eatBits(1),this.nextLine2D=!(1&n))}this.outputBits=t[0]>0?t[this.codingPos=0]:t[this.codingPos=1],this.row++}if(this.outputBits>=8)o=1&this.codingPos?0:255,this.outputBits-=8,0===this.outputBits&&t[this.codingPos]<s&&(this.codingPos++,this.outputBits=t[this.codingPos]-t[this.codingPos-1]);else{n=8,o=0;do{if("number"!=typeof this.outputBits)throw new cs('Invalid /CCITTFaxDecode data, "outputBits" must be a number.');this.outputBits>n?(o<<=n,1&this.codingPos||(o|=255>>8-n),this.outputBits-=n,n=0):(o<<=this.outputBits,1&this.codingPos||(o|=255>>8-this.outputBits),n-=this.outputBits,this.outputBits=0,t[this.codingPos]<s?(this.codingPos++,this.outputBits=t[this.codingPos]-t[this.codingPos-1]):n>0&&(o<<=n,n=0))}while(n)}return this.black&&(o^=255),o}_addPixels(e,t){const s=this.codingLine;let a=this.codingPos;e>s[a]&&(e>this.columns&&(Jt("row is wrong length"),this.err=!0,e=this.columns),1&a^t&&++a,s[a]=e),this.codingPos=a}_addPixelsNeg(e,t){const s=this.codingLine;let a=this.codingPos;if(e>s[a])e>this.columns&&(Jt("row is wrong length"),this.err=!0,e=this.columns),1&a^t&&++a,s[a]=e;else if(e<s[a]){for(e<0&&(Jt("invalid code"),this.err=!0,e=0);a>0&&e<s[a-1];)--a;s[a]=e}this.codingPos=a}_findTableCode(e,t,s,a){const i=a||0;for(let n=e;n<=t;++n){let e=this._lookBits(n);if(e===an)return[!0,1,!1];if(n<t&&(e<<=t-n),!i||e>=i){const t=s[e-i];if(t[0]===n)return this._eatBits(n),[!0,t[1],!0]}}return[!1,0,!1]}_getTwoDimCode(){let e,t=0;if(this.eoblock){if(t=this._lookBits(7),e=nn[t],e?.[0]>0)return this._eatBits(e[0]),e[1]}else{const e=this._findTableCode(1,7,nn);if(e[0]&&e[2])return e[1]}return Jt("Bad two dim code"),an}_getWhiteCode(){let e,t=0;if(this.eoblock){if(t=this._lookBits(12),t===an)return 1;if(e=t>>5?on[t>>3]:rn[t],e[0]>0)return this._eatBits(e[0]),e[1]}else{let e=this._findTableCode(1,9,on);if(e[0])return e[1];if(e=this._findTableCode(11,12,rn),e[0])return e[1]}return Jt("bad white code"),this._eatBits(1),1}_getBlackCode(){let e,t;if(this.eoblock){if(e=this._lookBits(13),e===an)return 1;if(t=e>>7?!(e>>9)&&e>>7?ln[(e>>1)-64]:hn[e>>7]:cn[e],t[0]>0)return this._eatBits(t[0]),t[1]}else{let e=this._findTableCode(2,6,hn);if(e[0])return e[1];if(e=this._findTableCode(7,12,ln,64),e[0])return e[1];if(e=this._findTableCode(10,13,cn),e[0])return e[1]}return Jt("bad black code"),this._eatBits(1),1}_lookBits(e){let t;for(;this.inputBits<e;){if(-1===(t=this.source.next()))return 0===this.inputBits?an:this.inputBuf<<e-this.inputBits&65535>>16-e;this.inputBuf=this.inputBuf<<8|t,this.inputBits+=8}return this.inputBuf>>this.inputBits-e&65535>>16-e}_eatBits(e){(this.inputBits-=e)<0&&(this.inputBits=0)}}class dn extends gi{constructor(e,t,s){super(t),this.stream=e,this.dict=e.dict,s instanceof Ps||(s=Ps.empty);const a={next:()=>e.getByte()};this.ccittFaxDecoder=new un(a,{K:s.get("K"),EndOfLine:s.get("EndOfLine"),EncodedByteAlign:s.get("EncodedByteAlign"),Columns:s.get("Columns"),Rows:s.get("Rows"),EndOfBlock:s.get("EndOfBlock"),BlackIs1:s.get("BlackIs1")})}readBlock(){for(;!this.eof;){const e=this.ccittFaxDecoder.readNextChar();if(-1===e)return void(this.eof=!0);this.ensureBuffer(this.bufferLength+1),this.buffer[this.bufferLength++]=e}}}const fn=new Int32Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),gn=new Int32Array([3,4,5,6,7,8,9,10,65547,65549,65551,65553,131091,131095,131099,131103,196643,196651,196659,196667,262211,262227,262243,262259,327811,327843,327875,327907,258,258,258]),pn=new Int32Array([1,2,3,4,65541,65543,131081,131085,196625,196633,262177,262193,327745,327777,393345,393409,459009,459137,524801,525057,590849,591361,657409,658433,724993,727041,794625,798721,868353,876545]),mn=[new Int32Array([459008,524368,524304,524568,459024,524400,524336,590016,459016,524384,524320,589984,524288,524416,524352,590048,459012,524376,524312,589968,459028,524408,524344,590032,459020,524392,524328,59e4,524296,524424,524360,590064,459010,524372,524308,524572,459026,524404,524340,590024,459018,524388,524324,589992,524292,524420,524356,590056,459014,524380,524316,589976,459030,524412,524348,590040,459022,524396,524332,590008,524300,524428,524364,590072,459009,524370,524306,524570,459025,524402,524338,590020,459017,524386,524322,589988,524290,524418,524354,590052,459013,524378,524314,589972,459029,524410,524346,590036,459021,524394,524330,590004,524298,524426,524362,590068,459011,524374,524310,524574,459027,524406,524342,590028,459019,524390,524326,589996,524294,524422,524358,590060,459015,524382,524318,589980,459031,524414,524350,590044,459023,524398,524334,590012,524302,524430,524366,590076,459008,524369,524305,524569,459024,524401,524337,590018,459016,524385,524321,589986,524289,524417,524353,590050,459012,524377,524313,589970,459028,524409,524345,590034,459020,524393,524329,590002,524297,524425,524361,590066,459010,524373,524309,524573,459026,524405,524341,590026,459018,524389,524325,589994,524293,524421,524357,590058,459014,524381,524317,589978,459030,524413,524349,590042,459022,524397,524333,590010,524301,524429,524365,590074,459009,524371,524307,524571,459025,524403,524339,590022,459017,524387,524323,589990,524291,524419,524355,590054,459013,524379,524315,589974,459029,524411,524347,590038,459021,524395,524331,590006,524299,524427,524363,590070,459011,524375,524311,524575,459027,524407,524343,590030,459019,524391,524327,589998,524295,524423,524359,590062,459015,524383,524319,589982,459031,524415,524351,590046,459023,524399,524335,590014,524303,524431,524367,590078,459008,524368,524304,524568,459024,524400,524336,590017,459016,524384,524320,589985,524288,524416,524352,590049,459012,524376,524312,589969,459028,524408,524344,590033,459020,524392,524328,590001,524296,524424,524360,590065,459010,524372,524308,524572,459026,524404,524340,590025,459018,524388,524324,589993,524292,524420,524356,590057,459014,524380,524316,589977,459030,524412,524348,590041,459022,524396,524332,590009,524300,524428,524364,590073,459009,524370,524306,524570,459025,524402,524338,590021,459017,524386,524322,589989,524290,524418,524354,590053,459013,524378,524314,589973,459029,524410,524346,590037,459021,524394,524330,590005,524298,524426,524362,590069,459011,524374,524310,524574,459027,524406,524342,590029,459019,524390,524326,589997,524294,524422,524358,590061,459015,524382,524318,589981,459031,524414,524350,590045,459023,524398,524334,590013,524302,524430,524366,590077,459008,524369,524305,524569,459024,524401,524337,590019,459016,524385,524321,589987,524289,524417,524353,590051,459012,524377,524313,589971,459028,524409,524345,590035,459020,524393,524329,590003,524297,524425,524361,590067,459010,524373,524309,524573,459026,524405,524341,590027,459018,524389,524325,589995,524293,524421,524357,590059,459014,524381,524317,589979,459030,524413,524349,590043,459022,524397,524333,590011,524301,524429,524365,590075,459009,524371,524307,524571,459025,524403,524339,590023,459017,524387,524323,589991,524291,524419,524355,590055,459013,524379,524315,589975,459029,524411,524347,590039,459021,524395,524331,590007,524299,524427,524363,590071,459011,524375,524311,524575,459027,524407,524343,590031,459019,524391,524327,589999,524295,524423,524359,590063,459015,524383,524319,589983,459031,524415,524351,590047,459023,524399,524335,590015,524303,524431,524367,590079]),9],bn=[new Int32Array([327680,327696,327688,327704,327684,327700,327692,327708,327682,327698,327690,327706,327686,327702,327694,0,327681,327697,327689,327705,327685,327701,327693,327709,327683,327699,327691,327707,327687,327703,327695,0]),5];class wn extends gi{constructor(e,t){super(t),this.stream=e,this.dict=e.dict;const s=e.getByte(),a=e.getByte();if(-1===s||-1===a)throw new cs(`Invalid header in flate stream: ${s}, ${a}`);if(8!=(15&s))throw new cs(`Unknown compression method in flate stream: ${s}, ${a}`);if(((s<<8)+a)%31!=0)throw new cs(`Bad FCHECK in flate stream: ${s}, ${a}`);if(32&a)throw new cs(`FDICT bit set in flate stream: ${s}, ${a}`);this.codeSize=0,this.codeBuf=0}async getImageData(e,t){const s=await this.asyncGetBytes();return s?s.length<=e?s:s.subarray(0,e):this.getBytes(e)}async asyncGetBytes(){this.stream.reset();const e=this.stream.getBytes();try{const{readable:t,writable:s}=new DecompressionStream("deflate"),a=s.getWriter();await a.ready,a.write(e).then(async()=>{await a.ready,await a.close()}).catch(()=>{});const i=[];let n=0;for await(const e of t)i.push(e),n+=e.byteLength;const r=new Uint8Array(n);let o=0;for(const e of i)r.set(e,o),o+=e.byteLength;return r}catch{return this.stream=new ni(e,2,e.length,this.stream.dict),this.reset(),null}}get isAsync(){return!0}getBits(e){const t=this.stream;let s,a=this.codeSize,i=this.codeBuf;for(;a<e;){if(-1===(s=t.getByte()))throw new cs("Bad encoding in flate stream");i|=s<<a,a+=8}return s=i&(1<<e)-1,this.codeBuf=i>>e,this.codeSize=a-=e,s}getCode(e){const t=this.stream,s=e[0],a=e[1];let i,n=this.codeSize,r=this.codeBuf;for(;n<a&&-1!==(i=t.getByte());)r|=i<<n,n+=8;const o=s[r&(1<<a)-1],c=o>>16,l=65535&o;if(c<1||n<c)throw new cs("Bad encoding in flate stream");return this.codeBuf=r>>c,this.codeSize=n-c,l}generateHuffmanTable(e){const t=e.length;let s,a=0;for(s=0;s<t;++s)e[s]>a&&(a=e[s]);const i=1<<a,n=new Int32Array(i);for(let r=1,o=0,c=2;r<=a;++r,o<<=1,c<<=1)for(let a=0;a<t;++a)if(e[a]===r){let e=0,t=o;for(s=0;s<r;++s)e=e<<1|1&t,t>>=1;for(s=e;s<i;s+=c)n[s]=r<<16|a;++o}return[n,a]}#j(e){Jt(e),this.eof=!0}readBlock(){let e,t,s;const a=this.stream;try{t=this.getBits(3)}catch(e){return void this.#j(e.message)}if(1&t&&(this.eof=!0),t>>=1,0===t){let t;if(-1===(t=a.getByte()))return void this.#j("Bad block header in flate stream");let s=t;if(-1===(t=a.getByte()))return void this.#j("Bad block header in flate stream");if(s|=t<<8,-1===(t=a.getByte()))return void this.#j("Bad block header in flate stream");let i=t;if(-1===(t=a.getByte()))return void this.#j("Bad block header in flate stream");if(i|=t<<8,i!==(65535&~s)&&(0!==s||0!==i))throw new cs("Bad uncompressed block length in flate stream");this.codeBuf=0,this.codeSize=0;const n=this.bufferLength,r=n+s;if(e=this.ensureBuffer(r),this.bufferLength=r,0===s)-1===a.peekByte()&&(this.eof=!0);else{const t=a.getBytes(s);e.set(t,n),t.length<s&&(this.eof=!0)}return}let i,n;if(1===t)i=mn,n=bn;else{if(2!==t)throw new cs("Unknown block type in flate stream");{const e=this.getBits(5)+257,t=this.getBits(5)+1,a=this.getBits(4)+4,r=new Uint8Array(fn.length);let o;for(o=0;o<a;++o)r[fn[o]]=this.getBits(3);const c=this.generateHuffmanTable(r);s=0,o=0;const l=e+t,h=new Uint8Array(l);let u,d,f;for(;o<l;){const e=this.getCode(c);if(16===e)u=2,d=3,f=s;else if(17===e)u=3,d=3,f=s=0;else{if(18!==e){h[o++]=s=e;continue}u=7,d=11,f=s=0}let t=this.getBits(u)+d;for(;t-- >0;)h[o++]=f}i=this.generateHuffmanTable(h.subarray(0,e)),n=this.generateHuffmanTable(h.subarray(e,l))}}e=this.buffer;let r=e?e.length:0,o=this.bufferLength;for(;;){let t=this.getCode(i);if(t<256){o+1>=r&&(e=this.ensureBuffer(o+1),r=e.length),e[o++]=t;continue}if(256===t)return void(this.bufferLength=o);t-=257,t=gn[t];let a=t>>16;a>0&&(a=this.getBits(a)),s=(65535&t)+a,t=this.getCode(n),t=pn[t],a=t>>16,a>0&&(a=this.getBits(a));const c=(65535&t)+a;o+s>=r&&(e=this.ensureBuffer(o+s),r=e.length);for(let i=0;i<s;++i,++o)e[o]=e[o-c]}}}const yn=[{qe:22017,nmps:1,nlps:1,switchFlag:1},{qe:13313,nmps:2,nlps:6,switchFlag:0},{qe:6145,nmps:3,nlps:9,switchFlag:0},{qe:2753,nmps:4,nlps:12,switchFlag:0},{qe:1313,nmps:5,nlps:29,switchFlag:0},{qe:545,nmps:38,nlps:33,switchFlag:0},{qe:22017,nmps:7,nlps:6,switchFlag:1},{qe:21505,nmps:8,nlps:14,switchFlag:0},{qe:18433,nmps:9,nlps:14,switchFlag:0},{qe:14337,nmps:10,nlps:14,switchFlag:0},{qe:12289,nmps:11,nlps:17,switchFlag:0},{qe:9217,nmps:12,nlps:18,switchFlag:0},{qe:7169,nmps:13,nlps:20,switchFlag:0},{qe:5633,nmps:29,nlps:21,switchFlag:0},{qe:22017,nmps:15,nlps:14,switchFlag:1},{qe:21505,nmps:16,nlps:14,switchFlag:0},{qe:20737,nmps:17,nlps:15,switchFlag:0},{qe:18433,nmps:18,nlps:16,switchFlag:0},{qe:14337,nmps:19,nlps:17,switchFlag:0},{qe:13313,nmps:20,nlps:18,switchFlag:0},{qe:12289,nmps:21,nlps:19,switchFlag:0},{qe:10241,nmps:22,nlps:19,switchFlag:0},{qe:9217,nmps:23,nlps:20,switchFlag:0},{qe:8705,nmps:24,nlps:21,switchFlag:0},{qe:7169,nmps:25,nlps:22,switchFlag:0},{qe:6145,nmps:26,nlps:23,switchFlag:0},{qe:5633,nmps:27,nlps:24,switchFlag:0},{qe:5121,nmps:28,nlps:25,switchFlag:0},{qe:4609,nmps:29,nlps:26,switchFlag:0},{qe:4353,nmps:30,nlps:27,switchFlag:0},{qe:2753,nmps:31,nlps:28,switchFlag:0},{qe:2497,nmps:32,nlps:29,switchFlag:0},{qe:2209,nmps:33,nlps:30,switchFlag:0},{qe:1313,nmps:34,nlps:31,switchFlag:0},{qe:1089,nmps:35,nlps:32,switchFlag:0},{qe:673,nmps:36,nlps:33,switchFlag:0},{qe:545,nmps:37,nlps:34,switchFlag:0},{qe:321,nmps:38,nlps:35,switchFlag:0},{qe:273,nmps:39,nlps:36,switchFlag:0},{qe:133,nmps:40,nlps:37,switchFlag:0},{qe:73,nmps:41,nlps:38,switchFlag:0},{qe:37,nmps:42,nlps:39,switchFlag:0},{qe:21,nmps:43,nlps:40,switchFlag:0},{qe:9,nmps:44,nlps:41,switchFlag:0},{qe:5,nmps:45,nlps:42,switchFlag:0},{qe:1,nmps:45,nlps:43,switchFlag:0},{qe:22017,nmps:46,nlps:46,switchFlag:0}];class xn{constructor(e,t,s){this.data=e,this.bp=t,this.dataEnd=s,this.chigh=e[t],this.clow=0,this.byteIn(),this.chigh=this.chigh<<7&65535|this.clow>>9&127,this.clow=this.clow<<7&65535,this.ct-=7,this.a=32768}byteIn(){const e=this.data;let t=this.bp;255===e[t]?e[t+1]>143?(this.clow+=65280,this.ct=8):(t++,this.clow+=e[t]<<9,this.ct=7,this.bp=t):(t++,this.clow+=t<this.dataEnd?e[t]<<8:65280,this.ct=8,this.bp=t),this.clow>65535&&(this.chigh+=this.clow>>16,this.clow&=65535)}readBit(e,t){let s=e[t]>>1,a=1&e[t];const i=yn[s],n=i.qe;let r,o=this.a-n;if(this.chigh<n)o<n?(o=n,r=a,s=i.nmps):(o=n,r=1^a,1===i.switchFlag&&(a=r),s=i.nlps);else{if(this.chigh-=n,32768&o)return this.a=o,a;o<n?(r=1^a,1===i.switchFlag&&(a=r),s=i.nlps):(r=a,s=i.nmps)}do{0===this.ct&&this.byteIn(),o<<=1,this.chigh=this.chigh<<1&65535|this.clow>>15&1,this.clow=this.clow<<1&65535,this.ct--}while(!(32768&o));return this.a=o,e[t]=s<<1|a,r}}class kn extends as{constructor(e){super(e,"Jbig2Error")}}class vn{getContexts(e){return e in this?this[e]:this[e]=new Int8Array(65536)}}class An{constructor(e,t,s){this.data=e,this.start=t,this.end=s}get decoder(){return ss(this,"decoder",new xn(this.data,this.start,this.end))}get contextCache(){return ss(this,"contextCache",new vn)}}function Cn(e,t,s){const a=e.getContexts(t);let i=1;function n(e){let t=0;for(let n=0;n<e;n++){const e=s.readBit(a,i);i=i<256?i<<1|e:511&(i<<1|e)|256,t=t<<1|e}return t>>>0}const r=n(1),o=n(1)?n(1)?n(1)?n(1)?n(1)?n(32)+4436:n(12)+340:n(8)+84:n(6)+20:n(4)+4:n(2);let c;return 0===r?c=o:o>0&&(c=-o),c>=-2147483648&&c<=Gs?c:null}function Sn(e,t,s){const a=e.getContexts("IAID");let i=1;for(let n=0;n<s;n++)i=i<<1|t.readBit(a,i);return s<31?i&(1<<s)-1:2147483647&i}const In=["SymbolDictionary",null,null,null,"IntermediateTextRegion",null,"ImmediateTextRegion","ImmediateLosslessTextRegion",null,null,null,null,null,null,null,null,"PatternDictionary",null,null,null,"IntermediateHalftoneRegion",null,"ImmediateHalftoneRegion","ImmediateLosslessHalftoneRegion",null,null,null,null,null,null,null,null,null,null,null,null,"IntermediateGenericRegion",null,"ImmediateGenericRegion","ImmediateLosslessGenericRegion","IntermediateGenericRefinementRegion",null,"ImmediateGenericRefinementRegion","ImmediateLosslessGenericRefinementRegion",null,null,null,null,"PageInformation","EndOfPage","EndOfStripe","EndOfFile","Profiles","Tables",null,null,null,null,null,null,null,null,"Extension"],Bn=[[{x:-1,y:-2},{x:0,y:-2},{x:1,y:-2},{x:-2,y:-1},{x:-1,y:-1},{x:0,y:-1},{x:1,y:-1},{x:2,y:-1},{x:-4,y:0},{x:-3,y:0},{x:-2,y:0},{x:-1,y:0}],[{x:-1,y:-2},{x:0,y:-2},{x:1,y:-2},{x:2,y:-2},{x:-2,y:-1},{x:-1,y:-1},{x:0,y:-1},{x:1,y:-1},{x:2,y:-1},{x:-3,y:0},{x:-2,y:0},{x:-1,y:0}],[{x:-1,y:-2},{x:0,y:-2},{x:1,y:-2},{x:-2,y:-1},{x:-1,y:-1},{x:0,y:-1},{x:1,y:-1},{x:-2,y:0},{x:-1,y:0}],[{x:-3,y:-1},{x:-2,y:-1},{x:-1,y:-1},{x:0,y:-1},{x:1,y:-1},{x:-4,y:0},{x:-3,y:0},{x:-2,y:0},{x:-1,y:0}]],Fn=[{coding:[{x:0,y:-1},{x:1,y:-1},{x:-1,y:0}],reference:[{x:0,y:-1},{x:1,y:-1},{x:-1,y:0},{x:0,y:0},{x:1,y:0},{x:-1,y:1},{x:0,y:1},{x:1,y:1}]},{coding:[{x:-1,y:-1},{x:0,y:-1},{x:1,y:-1},{x:-1,y:0}],reference:[{x:0,y:-1},{x:-1,y:0},{x:0,y:0},{x:1,y:0},{x:0,y:1},{x:1,y:1}]}],Mn=[39717,1941,229,405],Tn=[32,8];function Rn(e,t,s,a,i,n,r,o){if(e)return Kn(new Wn(o.data,o.start,o.end),t,s,!1);if(0===a&&!n&&!i&&4===r.length&&3===r[0].x&&-1===r[0].y&&-3===r[1].x&&-1===r[1].y&&2===r[2].x&&-2===r[2].y&&-2===r[3].x&&-2===r[3].y)return function(e,t,s){const a=s.decoder,i=s.contextCache.getContexts("GB"),n=[];let r,o,c,l,h,u,d;for(o=0;o<t;o++)for(h=n[o]=new Uint8Array(e),u=o<1?h:n[o-1],d=o<2?h:n[o-2],r=d[0]<<13|d[1]<<12|d[2]<<11|u[0]<<7|u[1]<<6|u[2]<<5|u[3]<<4,c=0;c<e;c++)h[c]=l=a.readBit(i,r),r=(31735&r)<<1|(c+3<e?d[c+3]<<11:0)|(c+4<e?u[c+4]<<4:0)|l;return n}(t,s,o);const c=!!n,l=Bn[a].concat(r);l.sort((e,t)=>e.y-t.y||e.x-t.x);const h=l.length,u=new Int8Array(h),d=new Int8Array(h),f=[];let g,p,m=0,b=0,w=0,y=0;for(p=0;p<h;p++)u[p]=l[p].x,d[p]=l[p].y,b=Math.min(b,l[p].x),w=Math.max(w,l[p].x),y=Math.min(y,l[p].y),p<h-1&&l[p].y===l[p+1].y&&l[p].x===l[p+1].x-1?m|=1<<h-1-p:f.push(p);const x=f.length,k=new Int8Array(x),v=new Int8Array(x),A=new Uint16Array(x);for(g=0;g<x;g++)p=f[g],k[g]=l[p].x,v[g]=l[p].y,A[g]=1<<h-1-p;const C=-b,S=-y,I=t-w,B=Mn[a];let F=new Uint8Array(t);const M=[],T=o.decoder,R=o.contextCache.getContexts("GB");let N,D,O,P,E,L=0,_=0;for(let U=0;U<s;U++)if(i&&(L^=T.readBit(R,B),L))M.push(F);else for(F=new Uint8Array(F),M.push(F),N=0;N<t;N++){if(c&&n[U][N]){F[N]=0;continue}if(N>=C&&N<I&&U>=S)for(_=_<<1&m,p=0;p<x;p++)D=U+v[p],O=N+k[p],P=M[D][O],P&&(P=A[p],_|=P);else for(_=0,E=h-1,p=0;p<h;p++,E--)O=N+u[p],O>=0&&O<t&&(D=U+d[p],D>=0&&(P=M[D][O],P&&(_|=P<<E)));const e=T.readBit(R,_);F[N]=e}return M}function Nn(e,t,s,a,i,n,r,o,c){let l=Fn[s].coding;0===s&&(l=l.concat([o[0]]));const h=l.length,u=new Int32Array(h),d=new Int32Array(h);let f;for(f=0;f<h;f++)u[f]=l[f].x,d[f]=l[f].y;let g=Fn[s].reference;0===s&&(g=g.concat([o[1]]));const p=g.length,m=new Int32Array(p),b=new Int32Array(p);for(f=0;f<p;f++)m[f]=g[f].x,b[f]=g[f].y;const w=a[0].length,y=a.length,x=Tn[s],k=[],v=c.decoder,A=c.contextCache.getContexts("GR");let C=0;for(let S=0;S<t;S++){if(r&&(C^=v.readBit(A,x),C))throw new kn("prediction is not supported");const t=new Uint8Array(e);k.push(t);for(let s=0;s<e;s++){let r,o,c=0;for(f=0;f<h;f++)r=S+d[f],o=s+u[f],r<0||o<0||o>=e?c<<=1:c=c<<1|k[r][o];for(f=0;f<p;f++)r=S+b[f]-n,o=s+m[f]-i,r<0||r>=y||o<0||o>=w?c<<=1:c=c<<1|a[r][o];const l=v.readBit(A,c);t[s]=l}}return k}function Dn(e,t,s,a,i,n,r,o,c,l,h,u,d,f,g,p,m,b,w){if(e&&t)throw new kn("refinement with Huffman is not supported");const y=[];let x,k;for(x=0;x<a;x++)k=new Uint8Array(s),i&&k.fill(i),y.push(k);const v=m.decoder,A=m.contextCache;let C=e?-f.tableDeltaT.decode(w):-Cn(A,"IADT",v),S=0;for(x=0;x<n;){C+=e?f.tableDeltaT.decode(w):Cn(A,"IADT",v),S+=e?f.tableFirstS.decode(w):Cn(A,"IAFS",v);let a=S;for(;;){let i=0;r>1&&(i=e?w.readBits(b):Cn(A,"IAIT",v));const n=r*C+i,S=e?f.symbolIDTable.decode(w):Sn(A,v,c),I=t&&(e?w.readBit():Cn(A,"IARI",v));let B=o[S],F=B[0].length,M=B.length;if(I){const e=Cn(A,"IARDW",v),t=Cn(A,"IARDH",v);F+=e,M+=t,B=Nn(F,M,g,B,(e>>1)+Cn(A,"IARDX",v),(t>>1)+Cn(A,"IARDY",v),!1,p,m)}let T=0;l?1&u?T=M-1:a+=M-1:u>1?a+=F-1:T=F-1;const R=n-(1&u?0:M-1),N=a-(2&u?F-1:0);let D,O,P;if(l)for(D=0;D<M;D++){if(k=y[N+D],!k)continue;P=B[D];const e=Math.min(s-R,F);switch(d){case 0:for(O=0;O<e;O++)k[R+O]|=P[O];break;case 2:for(O=0;O<e;O++)k[R+O]^=P[O];break;default:throw new kn(`operator ${d} is not supported`)}}else for(O=0;O<M;O++)if(k=y[R+O],k)switch(P=B[O],d){case 0:for(D=0;D<F;D++)k[N+D]|=P[D];break;case 2:for(D=0;D<F;D++)k[N+D]^=P[D];break;default:throw new kn(`operator ${d} is not supported`)}x++;const E=e?f.tableDeltaS.decode(w):Cn(A,"IADS",v);if(null===E)break;a+=T+E+h}}return y}function On(e,t){const s={};s.number=la(e,t);const a=e[t+4],i=63&a;if(!In[i])throw new kn("invalid segment type: "+i);s.type=i,s.typeName=In[i],s.deferredNonRetain=!!(128&a);const n=!!(64&a),r=e[t+5];let o=r>>5&7;const c=[31&r];let l=t+6;if(7===o){o=536870911&la(e,l-1),l+=3;let t=o+8>>3;for(c[0]=e[l++];--t>0;)c.push(e[l++])}else if(5===o||6===o)throw new kn("invalid referred-to flags");s.retainBits=c;let h=4;s.number<=256?h=1:s.number<=65536&&(h=2);const u=[];let d,f;for(d=0;d<o;d++){let t;t=1===h?e[l]:2===h?ca(e,l):la(e,l),u.push(t),l+=h}if(s.referredTo=u,n?(s.pageAssociation=la(e,l),l+=4):s.pageAssociation=e[l++],s.length=la(e,l),l+=4,4294967295===s.length){if(38!==i)throw new kn("invalid unknown segment length");{const t=En(e,l),a=!!(1&e[l+Ln]),i=6,n=new Uint8Array(i);for(a||(n[0]=255,n[1]=172),n[2]=t.height>>>24&255,n[3]=t.height>>16&255,n[4]=t.height>>8&255,n[5]=255&t.height,d=l,f=e.length;d<f;d++){let t=0;for(;t<i&&n[t]===e[d+t];)t++;if(t===i){s.length=d+i;break}}if(4294967295===s.length)throw new kn("segment end was not found")}}return s.headerEnd=l,s}function Pn(e,t,s,a){const i=[];let n=s;for(;n<a;){const s=On(t,n);n=s.headerEnd;const a={header:s,data:t};if(e.randomAccess||(a.start=n,n+=s.length,a.end=n),i.push(a),51===s.type)break}if(e.randomAccess)for(let r=0,o=i.length;r<o;r++)i[r].start=n,n+=i[r].header.length,i[r].end=n;return i}function En(e,t){return{width:la(e,t),height:la(e,t+4),x:la(e,t+8),y:la(e,t+12),combinationOperator:7&e[t+16]}}const Ln=17;function _n(e,t){const s=e.header,a=e.data,i=e.end;let n,r,o,c,l=e.start;switch(s.type){case 0:const e={},t=ca(a,l);if(e.huffman=!!(1&t),e.refinement=!!(2&t),e.huffmanDHSelector=t>>2&3,e.huffmanDWSelector=t>>4&3,e.bitmapSizeSelector=t>>6&1,e.aggregationInstancesSelector=t>>7&1,e.bitmapCodingContextUsed=!!(256&t),e.bitmapCodingContextRetained=!!(512&t),e.template=t>>10&3,e.refinementTemplate=t>>12&1,l+=2,!e.huffman){for(c=0===e.template?4:1,r=[],o=0;o<c;o++)r.push({x:ra(a,l),y:ra(a,l+1)}),l+=2;e.at=r}if(e.refinement&&!e.refinementTemplate){for(r=[],o=0;o<2;o++)r.push({x:ra(a,l),y:ra(a,l+1)}),l+=2;e.refinementAt=r}e.numberOfExportedSymbols=la(a,l),l+=4,e.numberOfNewSymbols=la(a,l),l+=4,n=[e,s.number,s.referredTo,a,l,i];break;case 6:case 7:const h={};h.info=En(a,l),l+=Ln;const u=ca(a,l);if(l+=2,h.huffman=!!(1&u),h.refinement=!!(2&u),h.logStripSize=u>>2&3,h.stripSize=1<<h.logStripSize,h.referenceCorner=u>>4&3,h.transposed=!!(64&u),h.combinationOperator=u>>7&3,h.defaultPixelValue=u>>9&1,h.dsOffset=u<<17>>27,h.refinementTemplate=u>>15&1,h.huffman){const e=ca(a,l);l+=2,h.huffmanFS=3&e,h.huffmanDS=e>>2&3,h.huffmanDT=e>>4&3,h.huffmanRefinementDW=e>>6&3,h.huffmanRefinementDH=e>>8&3,h.huffmanRefinementDX=e>>10&3,h.huffmanRefinementDY=e>>12&3,h.huffmanRefinementSizeSelector=!!(16384&e)}if(h.refinement&&!h.refinementTemplate){for(r=[],o=0;o<2;o++)r.push({x:ra(a,l),y:ra(a,l+1)}),l+=2;h.refinementAt=r}h.numberOfSymbolInstances=la(a,l),l+=4,n=[h,s.referredTo,a,l,i];break;case 16:const d={},f=a[l++];d.mmr=!!(1&f),d.template=f>>1&3,d.patternWidth=a[l++],d.patternHeight=a[l++],d.maxPatternIndex=la(a,l),l+=4,n=[d,s.number,a,l,i];break;case 22:case 23:const g={};g.info=En(a,l),l+=Ln;const p=a[l++];g.mmr=!!(1&p),g.template=p>>1&3,g.enableSkip=!!(8&p),g.combinationOperator=p>>4&7,g.defaultPixelValue=p>>7&1,g.gridWidth=la(a,l),l+=4,g.gridHeight=la(a,l),l+=4,g.gridOffsetX=4294967295&la(a,l),l+=4,g.gridOffsetY=4294967295&la(a,l),l+=4,g.gridVectorX=ca(a,l),l+=2,g.gridVectorY=ca(a,l),l+=2,n=[g,s.referredTo,a,l,i];break;case 38:case 39:const m={};m.info=En(a,l),l+=Ln;const b=a[l++];if(m.mmr=!!(1&b),m.template=b>>1&3,m.prediction=!!(8&b),!m.mmr){for(c=0===m.template?4:1,r=[],o=0;o<c;o++)r.push({x:ra(a,l),y:ra(a,l+1)}),l+=2;m.at=r}n=[m,a,l,i];break;case 48:const w={width:la(a,l),height:la(a,l+4),resolutionX:la(a,l+8),resolutionY:la(a,l+12)};4294967295===w.height&&delete w.height;const y=a[l+16];ca(a,l+17),w.lossless=!!(1&y),w.refinement=!!(2&y),w.defaultPixelValue=y>>2&1,w.combinationOperator=y>>3&3,w.requiresBuffer=!!(32&y),w.combinationOperatorOverride=!!(64&y),n=[w];break;case 49:case 50:case 51:case 62:break;case 53:n=[s.number,a,l,i];break;default:throw new kn(`segment type ${s.typeName}(${s.type}) is not implemented`)}const h="on"+s.typeName;h in t&&t[h].apply(t,n)}function Un(e,t){for(let s=0,a=e.length;s<a;s++)_n(e[s],t)}class qn{onPageInformation(e){this.currentPageInfo=e;const t=e.width+7>>3,s=new Uint8ClampedArray(t*e.height);e.defaultPixelValue&&s.fill(255),this.buffer=s}drawBitmap(e,t){const s=this.currentPageInfo,a=e.width,i=e.height,n=s.width+7>>3,r=s.combinationOperatorOverride?e.combinationOperator:s.combinationOperator,o=this.buffer,c=128>>(7&e.x);let l,h,u,d,f=e.y*n+(e.x>>3);switch(r){case 0:for(l=0;l<i;l++){for(u=c,d=f,h=0;h<a;h++)t[l][h]&&(o[d]|=u),u>>=1,u||(u=128,d++);f+=n}break;case 2:for(l=0;l<i;l++){for(u=c,d=f,h=0;h<a;h++)t[l][h]&&(o[d]^=u),u>>=1,u||(u=128,d++);f+=n}break;default:throw new kn(`operator ${r} is not supported`)}}onImmediateGenericRegion(e,t,s,a){const i=e.info,n=new An(t,s,a),r=Rn(e.mmr,i.width,i.height,e.template,e.prediction,null,e.at,n);this.drawBitmap(i,r)}onImmediateLosslessGenericRegion(){this.onImmediateGenericRegion(...arguments)}onSymbolDictionary(e,t,s,a,i,n){let r,o;e.huffman&&(r=function(e,t,s){let a,i,n,r,o=0;switch(e.huffmanDHSelector){case 0:case 1:a=Gn(e.huffmanDHSelector+4);break;case 3:a=Vn(o,t,s),o++;break;default:throw new kn("invalid Huffman DH selector")}switch(e.huffmanDWSelector){case 0:case 1:i=Gn(e.huffmanDWSelector+2);break;case 3:i=Vn(o,t,s),o++;break;default:throw new kn("invalid Huffman DW selector")}return e.bitmapSizeSelector?(n=Vn(o,t,s),o++):n=Gn(1),r=e.aggregationInstancesSelector?Vn(o,t,s):Gn(1),{tableDeltaHeight:a,tableDeltaWidth:i,tableBitmapSize:n,tableAggregateInstances:r}}(e,s,this.customTables),o=new Wn(a,i,n));let c=this.symbols;c||(this.symbols=c={});const l=[];for(const u of s){const e=c[u];e&&l.push(...e)}const h=new An(a,i,n);c[t]=function(e,t,s,a,i,n,r,o,c,l,h,u){if(e&&t)throw new kn("symbol refinement with Huffman is not supported");const d=[];let f=0,g=na(s.length+a);const p=h.decoder,m=h.contextCache;let b,w;for(e&&(b=Gn(1),w=[],g=Math.max(g,1));d.length<a;){f+=e?n.tableDeltaHeight.decode(u):Cn(m,"IADH",p);let a=0,i=0;const b=e?w.length:0;for(;;){const b=e?n.tableDeltaWidth.decode(u):Cn(m,"IADW",p);if(null===b)break;let y;if(a+=b,i+=a,t){const i=Cn(m,"IAAI",p);if(i>1)y=Dn(e,t,a,f,0,i,1,s.concat(d),g,0,0,1,0,n,c,l,h,0,u);else{const e=Sn(m,p,g),t=Cn(m,"IARDX",p),i=Cn(m,"IARDY",p);y=Nn(a,f,c,e<s.length?s[e]:d[e-s.length],t,i,!1,l,h)}d.push(y)}else e?w.push(a):(y=Rn(!1,a,f,r,!1,null,o,h),d.push(y))}if(e&&!t){const e=n.tableBitmapSize.decode(u);let t;if(u.byteAlign(),0===e)t=Xn(u,i,f);else{const s=u.end,a=u.position+e;u.end=a,t=Kn(u,i,f,!1),u.end=s,u.position=a}const s=w.length;if(b===s-1)d.push(t);else{let e,a,i,n,r,o=0;for(e=b;e<s;e++){for(n=w[e],i=o+n,r=[],a=0;a<f;a++)r.push(t[a].subarray(o,i));d.push(r),o=i}}}}const y=[],x=[];let k,v,A=!1;const C=s.length+a;for(;x.length<C;){let t=e?b.decode(u):Cn(m,"IAEX",p);for(;t--;)x.push(A);A=!A}for(k=0,v=s.length;k<v;k++)x[k]&&y.push(s[k]);for(let S=0;S<a;k++,S++)x[k]&&y.push(d[S]);return y}(e.huffman,e.refinement,l,e.numberOfNewSymbols,e.numberOfExportedSymbols,r,e.template,e.at,e.refinementTemplate,e.refinementAt,h,o)}onImmediateTextRegion(e,t,s,a,i){const n=e.info;let r,o;const c=this.symbols,l=[];for(const f of t){const e=c[f];e&&l.push(...e)}const h=na(l.length);e.huffman&&(o=new Wn(s,a,i),r=function(e,t,s,a,i){const n=[];for(let d=0;d<=34;d++){const e=i.readBits(4);n.push(new jn([d,e,0,0]))}const r=new $n(n,!1);n.length=0;for(let d=0;d<a;){const e=r.decode(i);if(e>=32){let t,s,a;switch(e){case 32:if(0===d)throw new kn("no previous value in symbol ID table");s=i.readBits(2)+3,t=n[d-1].prefixLength;break;case 33:s=i.readBits(3)+3,t=0;break;case 34:s=i.readBits(7)+11,t=0;break;default:throw new kn("invalid code length in symbol ID table")}for(a=0;a<s;a++)n.push(new jn([d,t,0,0])),d++}else n.push(new jn([d,e,0,0])),d++}i.byteAlign();const o=new $n(n,!1);let c,l,h,u=0;switch(e.huffmanFS){case 0:case 1:c=Gn(e.huffmanFS+6);break;case 3:c=Vn(u,t,s),u++;break;default:throw new kn("invalid Huffman FS selector")}switch(e.huffmanDS){case 0:case 1:case 2:l=Gn(e.huffmanDS+8);break;case 3:l=Vn(u,t,s),u++;break;default:throw new kn("invalid Huffman DS selector")}switch(e.huffmanDT){case 0:case 1:case 2:h=Gn(e.huffmanDT+11);break;case 3:h=Vn(u,t,s),u++;break;default:throw new kn("invalid Huffman DT selector")}if(e.refinement)throw new kn("refinement with Huffman is not supported");return{symbolIDTable:o,tableFirstS:c,tableDeltaS:l,tableDeltaT:h}}(e,t,this.customTables,l.length,o));const u=new An(s,a,i),d=Dn(e.huffman,e.refinement,n.width,n.height,e.defaultPixelValue,e.numberOfSymbolInstances,e.stripSize,l,h,e.transposed,e.dsOffset,e.referenceCorner,e.combinationOperator,r,e.refinementTemplate,e.refinementAt,u,e.logStripSize,o);this.drawBitmap(n,d)}onImmediateLosslessTextRegion(){this.onImmediateTextRegion(...arguments)}onPatternDictionary(e,t,s,a,i){let n=this.patterns;n||(this.patterns=n={});const r=new An(s,a,i);n[t]=function(e,t,s,a,i,n){const r=[];e||(r.push({x:-t,y:0}),0===i&&r.push({x:-3,y:-1},{x:2,y:-2},{x:-2,y:-2}));const o=Rn(e,(a+1)*t,s,i,!1,null,r,n),c=[];for(let l=0;l<=a;l++){const e=[],a=t*l,i=a+t;for(let t=0;t<s;t++)e.push(o[t].subarray(a,i));c.push(e)}return c}(e.mmr,e.patternWidth,e.patternHeight,e.maxPatternIndex,e.template,r)}onImmediateHalftoneRegion(e,t,s,a,i){const n=this.patterns[t[0]],r=e.info,o=new An(s,a,i),c=function(e,t,s,a,i,n,r,o,c,l,h,u,d,f,g){if(r)throw new kn("skip is not supported");if(0!==o)throw new kn(`operator "${o}" is not supported in halftone region`);const p=[];let m,b,w;for(m=0;m<i;m++)w=new Uint8Array(a),n&&w.fill(n),p.push(w);const y=t.length,x=t[0],k=x[0].length,v=x.length,A=na(y),C=[];e||(C.push({x:s<=1?3:2,y:-1}),0===s&&C.push({x:-3,y:-1},{x:2,y:-2},{x:-2,y:-2}));const S=[];let I,B,F,M,T,R,N,D,O,P,E;for(e&&(I=new Wn(g.data,g.start,g.end)),m=A-1;m>=0;m--)B=e?Kn(I,c,l,!0):Rn(!1,c,l,s,!1,null,C,g),S[m]=B;for(F=0;F<l;F++)for(M=0;M<c;M++){for(T=0,R=0,b=A-1;b>=0;b--)T^=S[b][F][M],R|=T<<b;if(N=t[R],D=h+F*f+M*d>>8,O=u+F*d-M*f>>8,D>=0&&D+k<=a&&O>=0&&O+v<=i)for(m=0;m<v;m++)for(E=p[O+m],P=N[m],b=0;b<k;b++)E[D+b]|=P[b];else{let e,t;for(m=0;m<v;m++)if(t=O+m,!(t<0||t>=i))for(E=p[t],P=N[m],b=0;b<k;b++)e=D+b,e>=0&&e<a&&(E[e]|=P[b])}}return p}(e.mmr,n,e.template,r.width,r.height,e.defaultPixelValue,e.enableSkip,e.combinationOperator,e.gridWidth,e.gridHeight,e.gridOffsetX,e.gridOffsetY,e.gridVectorX,e.gridVectorY,o);this.drawBitmap(r,c)}onImmediateLosslessHalftoneRegion(){this.onImmediateHalftoneRegion(...arguments)}onTables(e,t,s,a){let i=this.customTables;i||(this.customTables=i={}),i[e]=function(e,t,s){const a=e[t],i=4294967295&la(e,t+1),n=4294967295&la(e,t+5),r=new Wn(e,t+9,s),o=1+(a>>1&7),c=1+(a>>4&7),l=[];let h,u,d=i;do{h=r.readBits(o),u=r.readBits(c),l.push(new jn([d,h,u,0])),d+=1<<u}while(d<n);return h=r.readBits(o),l.push(new jn([i-1,h,32,0,"lower"])),h=r.readBits(o),l.push(new jn([n,h,32,0])),1&a&&(h=r.readBits(o),l.push(new jn([h,0]))),new $n(l,!1)}(t,s,a)}}class jn{constructor(e){2===e.length?(this.isOOB=!0,this.rangeLow=0,this.prefixLength=e[0],this.rangeLength=0,this.prefixCode=e[1],this.isLowerRange=!1):(this.isOOB=!1,this.rangeLow=e[0],this.prefixLength=e[1],this.rangeLength=e[2],this.prefixCode=e[3],this.isLowerRange="lower"===e[4])}}class Hn{constructor(e){this.children=[],e?(this.isLeaf=!0,this.rangeLength=e.rangeLength,this.rangeLow=e.rangeLow,this.isLowerRange=e.isLowerRange,this.isOOB=e.isOOB):this.isLeaf=!1}buildTree(e,t){const s=e.prefixCode>>t&1;if(t<=0)this.children[s]=new Hn(e);else{let a=this.children[s];a||(this.children[s]=a=new Hn(null)),a.buildTree(e,t-1)}}decodeNode(e){if(this.isLeaf){if(this.isOOB)return null;const t=e.readBits(this.rangeLength);return this.rangeLow+(this.isLowerRange?-t:t)}const t=this.children[e.readBit()];if(!t)throw new kn("invalid Huffman data");return t.decodeNode(e)}}class $n{constructor(e,t){t||this.assignPrefixCodes(e),this.rootNode=new Hn(null);for(let s=0,a=e.length;s<a;s++){const t=e[s];t.prefixLength>0&&this.rootNode.buildTree(t,t.prefixLength-1)}}decode(e){return this.rootNode.decodeNode(e)}assignPrefixCodes(e){const t=e.length;let s=0;for(let l=0;l<t;l++)s=Math.max(s,e[l].prefixLength);const a=new Uint32Array(s+1);for(let l=0;l<t;l++)a[e[l].prefixLength]++;let i,n,r,o=1,c=0;for(a[0]=0;o<=s;){for(c=c+a[o-1]<<1,i=c,n=0;n<t;)r=e[n],r.prefixLength===o&&(r.prefixCode=i,i++),n++;o++}}}const zn={};function Gn(e){let t,s=zn[e];if(s)return s;switch(e){case 1:t=[[0,1,4,0],[16,2,8,2],[272,3,16,6],[65808,3,32,7]];break;case 2:t=[[0,1,0,0],[1,2,0,2],[2,3,0,6],[3,4,3,14],[11,5,6,30],[75,6,32,62],[6,63]];break;case 3:t=[[-256,8,8,254],[0,1,0,0],[1,2,0,2],[2,3,0,6],[3,4,3,14],[11,5,6,30],[-257,8,32,255,"lower"],[75,7,32,126],[6,62]];break;case 4:t=[[1,1,0,0],[2,2,0,2],[3,3,0,6],[4,4,3,14],[12,5,6,30],[76,5,32,31]];break;case 5:t=[[-255,7,8,126],[1,1,0,0],[2,2,0,2],[3,3,0,6],[4,4,3,14],[12,5,6,30],[-256,7,32,127,"lower"],[76,6,32,62]];break;case 6:t=[[-2048,5,10,28],[-1024,4,9,8],[-512,4,8,9],[-256,4,7,10],[-128,5,6,29],[-64,5,5,30],[-32,4,5,11],[0,2,7,0],[128,3,7,2],[256,3,8,3],[512,4,9,12],[1024,4,10,13],[-2049,6,32,62,"lower"],[2048,6,32,63]];break;case 7:t=[[-1024,4,9,8],[-512,3,8,0],[-256,4,7,9],[-128,5,6,26],[-64,5,5,27],[-32,4,5,10],[0,4,5,11],[32,5,5,28],[64,5,6,29],[128,4,7,12],[256,3,8,1],[512,3,9,2],[1024,3,10,3],[-1025,5,32,30,"lower"],[2048,5,32,31]];break;case 8:t=[[-15,8,3,252],[-7,9,1,508],[-5,8,1,253],[-3,9,0,509],[-2,7,0,124],[-1,4,0,10],[0,2,1,0],[2,5,0,26],[3,6,0,58],[4,3,4,4],[20,6,1,59],[22,4,4,11],[38,4,5,12],[70,5,6,27],[134,5,7,28],[262,6,7,60],[390,7,8,125],[646,6,10,61],[-16,9,32,510,"lower"],[1670,9,32,511],[2,1]];break;case 9:t=[[-31,8,4,252],[-15,9,2,508],[-11,8,2,253],[-7,9,1,509],[-5,7,1,124],[-3,4,1,10],[-1,3,1,2],[1,3,1,3],[3,5,1,26],[5,6,1,58],[7,3,5,4],[39,6,2,59],[43,4,5,11],[75,4,6,12],[139,5,7,27],[267,5,8,28],[523,6,8,60],[779,7,9,125],[1291,6,11,61],[-32,9,32,510,"lower"],[3339,9,32,511],[2,0]];break;case 10:t=[[-21,7,4,122],[-5,8,0,252],[-4,7,0,123],[-3,5,0,24],[-2,2,2,0],[2,5,0,25],[3,6,0,54],[4,7,0,124],[5,8,0,253],[6,2,6,1],[70,5,5,26],[102,6,5,55],[134,6,6,56],[198,6,7,57],[326,6,8,58],[582,6,9,59],[1094,6,10,60],[2118,7,11,125],[-22,8,32,254,"lower"],[4166,8,32,255],[2,2]];break;case 11:t=[[1,1,0,0],[2,2,1,2],[4,4,0,12],[5,4,1,13],[7,5,1,28],[9,5,2,29],[13,6,2,60],[17,7,2,122],[21,7,3,123],[29,7,4,124],[45,7,5,125],[77,7,6,126],[141,7,32,127]];break;case 12:t=[[1,1,0,0],[2,2,0,2],[3,3,1,6],[5,5,0,28],[6,5,1,29],[8,6,1,60],[10,7,0,122],[11,7,1,123],[13,7,2,124],[17,7,3,125],[25,7,4,126],[41,8,5,254],[73,8,32,255]];break;case 13:t=[[1,1,0,0],[2,3,0,4],[3,4,0,12],[4,5,0,28],[5,4,1,13],[7,3,3,5],[15,6,1,58],[17,6,2,59],[21,6,3,60],[29,6,4,61],[45,6,5,62],[77,7,6,126],[141,7,32,127]];break;case 14:t=[[-2,3,0,4],[-1,3,0,5],[0,1,0,0],[1,3,0,6],[2,3,0,7]];break;case 15:t=[[-24,7,4,124],[-8,6,2,60],[-4,5,1,28],[-2,4,0,12],[-1,3,0,4],[0,1,0,0],[1,3,0,5],[2,4,0,13],[3,5,1,29],[5,6,2,61],[9,7,4,125],[-25,7,32,126,"lower"],[25,7,32,127]];break;default:throw new kn(`standard table B.${e} does not exist`)}for(let a=0,i=t.length;a<i;a++)t[a]=new jn(t[a]);return s=new $n(t,!0),zn[e]=s,s}class Wn{constructor(e,t,s){this.data=e,this.start=t,this.end=s,this.position=t,this.shift=-1,this.currentByte=0}readBit(){if(this.shift<0){if(this.position>=this.end)throw new kn("end of data while reading bit");this.currentByte=this.data[this.position++],this.shift=7}const e=this.currentByte>>this.shift&1;return this.shift--,e}readBits(e){let t,s=0;for(t=e-1;t>=0;t--)s|=this.readBit()<<t;return s}byteAlign(){this.shift=-1}next(){return this.position>=this.end?-1:this.data[this.position++]}}function Vn(e,t,s){let a=0;for(let i=0,n=t.length;i<n;i++){const n=s[t[i]];if(n){if(e===a)return n;a++}}throw new kn("can't find custom Huffman table")}function Xn(e,t,s){const a=[];for(let i=0;i<s;i++){const s=new Uint8Array(t);a.push(s);for(let a=0;a<t;a++)s[a]=e.readBit();e.byteAlign()}return a}function Kn(e,t,s,a){const i=new un(e,{K:-1,Columns:t,Rows:s,BlackIs1:!0,EndOfBlock:a}),n=[];let r,o=!1;for(let c=0;c<s;c++){const e=new Uint8Array(t);n.push(e);let s=-1;for(let a=0;a<t;a++)s<0&&(r=i.readNextChar(),-1===r&&(r=0,o=!0),s=7),e[a]=r>>s&1,s--}if(a&&!o){const e=5;for(let t=0;t<e&&-1!==i.readNextChar();t++);}return n}class Yn{parseChunks(e){return function(e){const t=new qn;for(let s=0,a=e.length;s<a;s++){const a=e[s];Un(Pn({},a.data,a.start,a.end),t)}return t.buffer}(e)}parse(e){throw new Error("Not implemented: Jbig2Image.parse")}}class Jn extends gi{constructor(e,t,s){super(t),this.stream=e,this.dict=e.dict,this.maybeLength=t,this.params=s}get bytes(){return ss(this,"bytes",this.stream.getBytes(this.maybeLength))}ensureBuffer(e){}readBlock(){this.decodeImage()}decodeImage(e){if(this.eof)return this.buffer;e||=this.bytes;const t=new Yn,s=[];if(this.params instanceof Ps){const e=this.params.get("JBIG2Globals");if(e instanceof $s){const t=e.getBytes();s.push({data:t,start:0,end:t.length})}}s.push({data:e,start:0,end:e.length});const a=t.parseChunks(s),i=a.length;for(let n=0;n<i;n++)a[n]^=255;return this.buffer=a,this.bufferLength=i,this.eof=!0,this.buffer}get canAsyncDecodeImageFromBuffer(){return this.stream.isAsync}}class Zn extends gi{constructor(e,t,s){super(t),this.stream=e,this.dict=e.dict,this.maybeLength=t,this.params=s}get bytes(){return ss(this,"bytes",this.stream.getBytes(this.maybeLength))}ensureBuffer(e){}readBlock(e){Qt("JpxStream.readBlock")}get isAsyncDecoder(){return!0}async decodeImage(e,t){return this.eof||(e||=this.bytes,this.buffer=await Hi.decode(e,t),this.bufferLength=this.buffer.length,this.eof=!0),this.buffer}get canAsyncDecodeImageFromBuffer(){return this.stream.isAsync}}class Qn extends gi{constructor(e,t,s){super(t),this.stream=e,this.dict=e.dict,this.cachedData=0,this.bitsCached=0;const a=4096,i={earlyChange:s,codeLength:9,nextCode:258,dictionaryValues:new Uint8Array(a),dictionaryLengths:new Uint16Array(a),dictionaryPrevCodes:new Uint16Array(a),currentSequence:new Uint8Array(a),currentSequenceLength:0};for(let n=0;n<256;++n)i.dictionaryValues[n]=n,i.dictionaryLengths[n]=1;this.lzwState=i}readBits(e){let t=this.bitsCached,s=this.cachedData;for(;t<e;){const e=this.stream.getByte();if(-1===e)return this.eof=!0,null;s=s<<8|e,t+=8}return this.bitsCached=t-=e,this.cachedData=s,this.lastCode=null,s>>>t&(1<<e)-1}readBlock(){let e,t,s,a=1024;const i=this.lzwState;if(!i)return;const n=i.earlyChange;let r=i.nextCode;const o=i.dictionaryValues,c=i.dictionaryLengths,l=i.dictionaryPrevCodes;let h=i.codeLength,u=i.prevCode;const d=i.currentSequence;let f=i.currentSequenceLength,g=0,p=this.bufferLength,m=this.ensureBuffer(this.bufferLength+a);for(e=0;e<512;e++){const e=this.readBits(h),i=f>0;if(e<256)d[0]=e,f=1;else{if(!(e>=258)){if(256===e){h=9,r=258,f=0;continue}this.eof=!0,delete this.lzwState;break}if(e<r)for(f=c[e],t=f-1,s=e;t>=0;t--)d[t]=o[s],s=l[s];else d[f++]=d[0]}if(i&&(l[r]=u,c[r]=c[u]+1,o[r]=d[0],r++,h=r+n&r+n-1?h:0|Math.min(Math.log(r+n)/.6931471805599453+1,12)),u=e,g+=f,a<g){do{a+=512}while(a<g);m=this.ensureBuffer(this.bufferLength+a)}for(t=0;t<f;t++)m[p++]=d[t]}i.nextCode=r,i.codeLength=h,i.prevCode=u,i.currentSequenceLength=f,this.bufferLength=p}}class er extends gi{constructor(e,t,s){if(super(t),!(s instanceof Ps))return e;const a=this.predictor=s.get("Predictor")||1;if(a<=1)return e;if(2!==a&&(a<10||a>15))throw new cs(`Unsupported predictor: ${a}`);this.readBlock=2===a?this.readBlockTiff:this.readBlockPng,this.stream=e,this.dict=e.dict;const i=this.colors=s.get("Colors")||1,n=this.bits=s.get("BPC","BitsPerComponent")||8,r=this.columns=s.get("Columns")||1;return this.pixBytes=i*n+7>>3,this.rowBytes=r*i*n+7>>3,this}readBlockTiff(){const e=this.rowBytes,t=this.bufferLength,s=this.ensureBuffer(t+e),a=this.bits,i=this.colors,n=this.stream.getBytes(e);if(this.eof=!n.length,this.eof)return;let r,o=0,c=0,l=0,h=0,u=t;if(1===a&&1===i)for(r=0;r<e;++r){let e=n[r]^o;e^=e>>1,e^=e>>2,e^=e>>4,o=(1&e)<<7,s[u++]=e}else if(8===a){for(r=0;r<i;++r)s[u++]=n[r];for(;r<e;++r)s[u]=s[u-i]+n[r],u++}else if(16===a){const t=2*i;for(r=0;r<t;++r)s[u++]=n[r];for(;r<e;r+=2){const e=((255&n[r])<<8)+(255&n[r+1])+((255&s[u-t])<<8)+(255&s[u-t+1]);s[u++]=e>>8&255,s[u++]=255&e}}else{const e=new Uint8Array(i+1),u=(1<<a)-1;let d=0,f=t;const g=this.columns;for(r=0;r<g;++r)for(let t=0;t<i;++t)l<a&&(o=o<<8|255&n[d++],l+=8),e[t]=e[t]+(o>>l-a)&u,l-=a,c=c<<a|e[t],h+=a,h>=8&&(s[f++]=c>>h-8&255,h-=8);h>0&&(s[f++]=(c<<8-h)+(o&(1<<8-h)-1))}this.bufferLength+=e}readBlockPng(){const e=this.rowBytes,t=this.pixBytes,s=this.stream.getByte(),a=this.stream.getBytes(e);if(this.eof=!a.length,this.eof)return;const i=this.bufferLength,n=this.ensureBuffer(i+e);let r=n.subarray(i-e,i);0===r.length&&(r=new Uint8Array(e));let o,c,l,h=i;switch(s){case 0:for(o=0;o<e;++o)n[h++]=a[o];break;case 1:for(o=0;o<t;++o)n[h++]=a[o];for(;o<e;++o)n[h]=n[h-t]+a[o]&255,h++;break;case 2:for(o=0;o<e;++o)n[h++]=r[o]+a[o]&255;break;case 3:for(o=0;o<t;++o)n[h++]=(r[o]>>1)+a[o];for(;o<e;++o)n[h]=(r[o]+n[h-t]>>1)+a[o]&255,h++;break;case 4:for(o=0;o<t;++o)c=r[o],l=a[o],n[h++]=c+l;for(;o<e;++o){c=r[o];const e=r[o-t],s=n[h-t],i=s+c-e;let u=i-s;u<0&&(u=-u);let d=i-c;d<0&&(d=-d);let f=i-e;f<0&&(f=-f),l=a[o],n[h++]=u<=d&&u<=f?s+l:d<=f?c+l:e+l}break;default:throw new cs(`Unsupported predictor: ${s}`)}this.bufferLength+=e}}class tr extends gi{constructor(e,t){super(t),this.stream=e,this.dict=e.dict}readBlock(){const e=this.stream.getBytes(2);if(!e||e.length<2||128===e[0])return void(this.eof=!0);let t,s=this.bufferLength,a=e[0];if(a<128){if(t=this.ensureBuffer(s+a+1),t[s++]=e[1],a>0){const e=this.stream.getBytes(a);t.set(e,s),s+=a}}else a=257-a,t=this.ensureBuffer(s+a+1),t.fill(e[1],s,s+a),s+=a;this.bufferLength=s}}class sr{constructor({lexer:e,xref:t,allowStreams:s=!1,recoveryMode:a=!1}){this.lexer=e,this.xref=t,this.allowStreams=s,this.recoveryMode=a,this.imageCache=Object.create(null),this._imageId=0,this.refill()}refill(){this.buf1=this.lexer.getObj(),this.buf2=this.lexer.getObj()}shift(){this.buf2 instanceof Ds&&"ID"===this.buf2.cmd?(this.buf1=this.buf2,this.buf2=null):(this.buf1=this.buf2,this.buf2=this.lexer.getObj())}tryShift(){try{return this.shift(),!0}catch(e){if(e instanceof Ys)throw e;return!1}}getObj(e=null){const t=this.buf1;if(this.shift(),t instanceof Ds)switch(t.cmd){case"BI":return this.makeInlineImage(e);case"[":const s=[];for(;!qs(this.buf1,"]")&&this.buf1!==Fs;)s.push(this.getObj(e));if(this.buf1===Fs){if(this.recoveryMode)return s;throw new Js("End of file inside array.")}return this.shift(),s;case"<<":const a=new Ps(this.xref);for(;!qs(this.buf1,">>")&&this.buf1!==Fs;){if(!(this.buf1 instanceof Ns)){Jt("Malformed dictionary: key must be a name object"),this.shift();continue}const t=this.buf1.name;if(this.shift(),this.buf1===Fs)break;a.set(t,this.getObj(e))}if(this.buf1===Fs){if(this.recoveryMode)return a;throw new Js("End of file inside dictionary.")}return qs(this.buf2,"stream")?this.allowStreams?this.makeStream(a,e):a:(this.shift(),a);default:return t}if(Number.isInteger(t)){if(Number.isInteger(this.buf1)&&qs(this.buf2,"R")){const e=Es.get(t,this.buf1);return this.shift(),this.shift(),e}return t}return"string"==typeof t&&e?e.decryptString(t):t}findDefaultInlineStreamEnd(e){const{knownCommands:t}=this.lexer,s=e.pos;let a,i,n=0;for(;-1!==(a=e.getByte());)if(0===n)n=69===a?1:0;else if(1===n)n=73===a?2:0;else if(32===a||10===a||13===a){i=e.pos;const s=e.peekBytes(15),r=s.length;if(0===r)break;for(let e=0;e<r;e++)if(a=s[e],(0!==a||0===s[e+1])&&10!==a&&13!==a&&(a<32||a>127)){n=0;break}if(2!==n)continue;if(!t){Zt("findDefaultInlineStreamEnd - `lexer.knownCommands` is undefined.");continue}const o=new nr(new ni(e.peekBytes(75)),t);o._hexStringWarn=()=>{};let c=0;for(;;){const e=o.getObj();if(e===Fs){n=0;break}if(e instanceof Ds){const s=t[e.cmd];if(!s){n=0;break}if(s.variableArgs?c<=s.numArgs:c===s.numArgs)break;c=0;continue}c++}if(2===n)break}else n=0;-1===a&&(Zt("findDefaultInlineStreamEnd: Reached the end of the stream without finding a valid EI marker"),i&&(Zt('... trying to recover by using the last "EI" occurrence.'),e.skip(-(e.pos-i))));let r=4;return e.skip(-r),a=e.peekByte(),e.skip(r),ha(a)||r--,e.pos-r-s}findDCTDecodeInlineStreamEnd(e){const t=e.pos;let s,a,i=!1;for(;-1!==(s=e.getByte());)if(255===s){switch(e.getByte()){case 0:break;case 255:e.skip(-1);break;case 217:i=!0;break;case 192:case 193:case 194:case 195:case 197:case 198:case 199:case 201:case 202:case 203:case 205:case 206:case 207:case 196:case 204:case 218:case 219:case 220:case 221:case 222:case 223:case 224:case 225:case 226:case 227:case 228:case 229:case 230:case 231:case 232:case 233:case 234:case 235:case 236:case 237:case 238:case 239:case 254:a=e.getUint16(),a>2?e.skip(a-2):e.skip(-2)}if(i)break}const n=e.pos-t;return-1===s?(Zt("Inline DCTDecode image stream: EOI marker not found, searching for /EI/ instead."),e.skip(-n),this.findDefaultInlineStreamEnd(e)):(this.inlineStreamSkipEI(e),n)}findASCII85DecodeInlineStreamEnd(e){const t=e.pos;let s;for(;-1!==(s=e.getByte());)if(126===s){const t=e.pos;for(s=e.peekByte();ha(s);)e.skip(),s=e.peekByte();if(62===s){e.skip();break}if(e.pos>t){const t=e.peekBytes(2);if(69===t[0]&&73===t[1])break}}const a=e.pos-t;return-1===s?(Zt("Inline ASCII85Decode image stream: EOD marker not found, searching for /EI/ instead."),e.skip(-a),this.findDefaultInlineStreamEnd(e)):(this.inlineStreamSkipEI(e),a)}findASCIIHexDecodeInlineStreamEnd(e){const t=e.pos;let s;for(;-1!==(s=e.getByte())&&62!==s;);const a=e.pos-t;return-1===s?(Zt("Inline ASCIIHexDecode image stream: EOD marker not found, searching for /EI/ instead."),e.skip(-a),this.findDefaultInlineStreamEnd(e)):(this.inlineStreamSkipEI(e),a)}inlineStreamSkipEI(e){let t,s=0;for(;-1!==(t=e.getByte());)if(0===s)s=69===t?1:0;else if(1===s)s=73===t?2:0;else if(2===s)break}makeInlineImage(e){const t=this.lexer,s=t.stream,a=Object.create(null);let i;for(;!qs(this.buf1,"ID")&&this.buf1!==Fs;){if(!(this.buf1 instanceof Ns))throw new cs("Dictionary key must be a name object");const t=this.buf1.name;if(this.shift(),this.buf1===Fs)break;a[t]=this.getObj(e)}-1!==t.beginInlineImagePos&&(i=s.pos-t.beginInlineImagePos);const n=this.xref.fetchIfRef(a.F||a.Filter);let r;if(n instanceof Ns)r=n.name;else if(Array.isArray(n)){const e=this.xref.fetchIfRef(n[0]);e instanceof Ns&&(r=e.name)}const o=s.pos;let c,l;switch(r){case"DCT":case"DCTDecode":c=this.findDCTDecodeInlineStreamEnd(s);break;case"A85":case"ASCII85Decode":c=this.findASCII85DecodeInlineStreamEnd(s);break;case"AHx":case"ASCIIHexDecode":c=this.findASCIIHexDecodeInlineStreamEnd(s);break;default:c=this.findDefaultInlineStreamEnd(s)}if(c<1e3&&i>0){const e=s.pos;s.pos=t.beginInlineImagePos,l=function(e){const t=[],s=e.length;let a=0;for(;a<s-1;)t.push(e[a++]<<8|e[a++]);return a<s&&t.push(e[a]),s+"_"+String.fromCharCode.apply(null,t)}(s.getBytes(i+c)),s.pos=e;const a=this.imageCache[l];if(void 0!==a)return this.buf2=Ds.get("EI"),this.shift(),a.reset(),a}const h=new Ps(this.xref);for(const d in a)h.set(d,a[d]);let u=s.makeSubStream(o,c,h);return e&&(u=e.createStream(u,c)),u=this.filter(u,h,c),u.dict=h,void 0!==l&&(u.cacheKey="inline_img_"+ ++this._imageId,this.imageCache[l]=u),this.buf2=Ds.get("EI"),this.shift(),u}#H(e){const{stream:t}=this.lexer;t.pos=e;const s=new Uint8Array([101,110,100]),a=s.length,i=[new Uint8Array([115,116,114,101,97,109]),new Uint8Array([115,116,101,97,109]),new Uint8Array([115,116,114,101,97])],n=9-a;for(;t.pos<t.end;){const r=t.peekBytes(2048),o=r.length-9;if(o<=0)break;let c=0;for(;c<o;){let o=0;for(;o<a&&r[c+o]===s[o];)o++;if(o>=a){let a=!1;for(const e of i){const t=e.length;let i=0;for(;i<t&&r[c+o+i]===e[i];)i++;if(i>=n){a=!0;break}if(i>=t){ha(r[c+o+i])&&(Jt(`Found "${hs([...s,...e])}" when searching for endstream command.`),a=!0);break}}if(a)return t.pos+=c,t.pos-e}c++}t.pos+=o}return-1}makeStream(e,t){const s=this.lexer;let a=s.stream;s.skipToNextLine();const i=a.pos-1;let n=e.get("Length");if(Number.isInteger(n)||(Jt(`Bad length "${n&&n.toString()}" in stream.`),n=0),a.pos=i+n,s.nextChar(),this.tryShift()&&qs(this.buf2,"endstream"))this.shift();else{if(n=this.#H(i),n<0)throw new cs("Missing endstream command.");s.nextChar(),this.shift(),this.shift()}return this.shift(),a=a.makeSubStream(i,n,e),t&&(a=t.createStream(a,n)),a=this.filter(a,e,n),a.dict=e,a}filter(e,t,s){let a=t.get("F","Filter"),i=t.get("DP","DecodeParms");if(a instanceof Ns)return Array.isArray(i)&&Zt("/DecodeParms should not be an Array, when /Filter is a Name."),this.makeFilter(e,a.name,s,i);let n=s;if(Array.isArray(a)){const t=a,s=i;for(let r=0,o=t.length;r<o;++r){if(a=this.xref.fetchIfRef(t[r]),!(a instanceof Ns))throw new cs(`Bad filter name "${a}"`);i=null,Array.isArray(s)&&r in s&&(i=this.xref.fetchIfRef(s[r])),e=this.makeFilter(e,a.name,n,i),n=null}}return e}makeFilter(e,t,s,a){if(0===s)return Zt(`Empty "${t}" stream.`),new oi;try{switch(t){case"Fl":case"FlateDecode":return a?new er(new wn(e,s),s,a):new wn(e,s);case"LZW":case"LZWDecode":let t=1;return a?(a.has("EarlyChange")&&(t=a.get("EarlyChange")),new er(new Qn(e,s,t),s,a)):new Qn(e,s,t);case"DCT":case"DCTDecode":return new Ui(e,s,a);case"JPX":case"JPXDecode":return new Zn(e,s,a);case"A85":case"ASCII85Decode":return new tn(e,s);case"AHx":case"ASCIIHexDecode":return new sn(e,s);case"CCF":case"CCITTFaxDecode":return new dn(e,s,a);case"RL":case"RunLengthDecode":return new tr(e,s);case"JBIG2Decode":return new Jn(e,s,a)}return Zt(`Filter "${t}" is not supported.`),e}catch(e){if(e instanceof Ys)throw e;return Zt(`Invalid stream: "${e}"`),new oi}}}const ar=[1,0,0,0,0,0,0,0,0,1,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,0,0,0,2,0,0,2,2,0,0,0,0,0,2,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,0,2,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];function ir(e){return e>=48&&e<=57?15&e:e>=65&&e<=70||e>=97&&e<=102?9+(15&e):-1}class nr{constructor(e,t=null){this.stream=e,this.nextChar(),this.strBuf=[],this.knownCommands=t,this._hexStringNumWarn=0,this.beginInlineImagePos=-1}nextChar(){return this.currentChar=this.stream.getByte()}peekChar(){return this.stream.peekByte()}getNumber(){let e=this.currentChar,t=!1,s=0,a=1;if(45===e?(a=-1,e=this.nextChar(),45===e&&(e=this.nextChar())):43===e&&(e=this.nextChar()),10===e||13===e)do{e=this.nextChar()}while(10===e||13===e);if(46===e&&(s=10,e=this.nextChar()),e<48||e>57){const t=`Invalid number: ${String.fromCharCode(e)} (charCode ${e})`;if(ha(e)||40===e||60===e||-1===e)return Jt(`Lexer.getNumber - "${t}".`),0;throw new cs(t)}let i=e-48,n=0,r=1;for(;(e=this.nextChar())>=0;)if(e>=48&&e<=57){const a=e-48;t?n=10*n+a:(0!==s&&(s*=10),i=10*i+a)}else if(46===e){if(0!==s)break;s=1}else if(45===e)Zt("Badly formatted number: minus sign in the middle");else{if(69!==e&&101!==e)break;if(e=this.peekChar(),43===e||45===e)r=45===e?-1:1,this.nextChar();else if(e<48||e>57)break;t=!0}return 0!==s&&(i/=s),t&&(i*=10**(r*n)),a*i}getString(){let e=1,t=!1;const s=this.strBuf;s.length=0;let a=this.nextChar();for(;;){let i=!1;switch(0|a){case-1:Zt("Unterminated string"),t=!0;break;case 40:++e,s.push("(");break;case 41:0===--e?(this.nextChar(),t=!0):s.push(")");break;case 92:switch(a=this.nextChar(),a){case-1:Zt("Unterminated string"),t=!0;break;case 110:s.push("\n");break;case 114:s.push("\r");break;case 116:s.push("\t");break;case 98:s.push("\b");break;case 102:s.push("\f");break;case 92:case 40:case 41:s.push(String.fromCharCode(a));break;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:let e=15&a;a=this.nextChar(),i=!0,a>=48&&a<=55&&(e=(e<<3)+(15&a),a=this.nextChar(),a>=48&&a<=55&&(i=!1,e=(e<<3)+(15&a))),s.push(String.fromCharCode(e));break;case 13:10===this.peekChar()&&this.nextChar();break;case 10:break;default:s.push(String.fromCharCode(a))}break;default:s.push(String.fromCharCode(a))}if(t)break;i||(a=this.nextChar())}return s.join("")}getName(){let e,t;const s=this.strBuf;for(s.length=0;(e=this.nextChar())>=0&&!ar[e];)if(35===e){if(e=this.nextChar(),ar[e]){Zt("Lexer_getName: NUMBER SIGN (#) should be followed by a hexadecimal number."),s.push("#");break}const a=ir(e);if(-1!==a){t=e,e=this.nextChar();const i=ir(e);if(-1===i){if(Zt(`Lexer_getName: Illegal digit (${String.fromCharCode(e)}) in hexadecimal number.`),s.push("#",String.fromCharCode(t)),ar[e])break;s.push(String.fromCharCode(e));continue}s.push(String.fromCharCode(a<<4|i))}else s.push("#",String.fromCharCode(e))}else s.push(String.fromCharCode(e));return s.length>127&&Zt(`Name token is longer than allowed by the spec: ${s.length}`),Ns.get(s.join(""))}_hexStringWarn(e){5!==this._hexStringNumWarn++?this._hexStringNumWarn>5||Zt(`getHexString - ignoring invalid character: ${e}`):Zt("getHexString - ignoring additional invalid characters.")}getHexString(){const e=this.strBuf;e.length=0;let t=this.currentChar,s=-1,a=-1;for(this._hexStringNumWarn=0;;){if(t<0){Zt("Unterminated hex string");break}if(62===t){this.nextChar();break}1!==ar[t]?(a=ir(t),-1===a?this._hexStringWarn(t):-1===s?s=a:(e.push(String.fromCharCode(s<<4|a)),s=-1),t=this.nextChar()):t=this.nextChar()}return-1!==s&&e.push(String.fromCharCode(s<<4)),e.join("")}getObj(){let e=!1,t=this.currentChar;for(;;){if(t<0)return Fs;if(e)10!==t&&13!==t||(e=!1);else if(37===t)e=!0;else if(1!==ar[t])break;t=this.nextChar()}switch(0|t){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 43:case 45:case 46:return this.getNumber();case 40:return this.getString();case 47:return this.getName();case 91:return this.nextChar(),Ds.get("[");case 93:return this.nextChar(),Ds.get("]");case 60:return t=this.nextChar(),60===t?(this.nextChar(),Ds.get("<<")):this.getHexString();case 62:return t=this.nextChar(),62===t?(this.nextChar(),Ds.get(">>")):Ds.get(">");case 123:return this.nextChar(),Ds.get("{");case 125:return this.nextChar(),Ds.get("}");case 41:throw this.nextChar(),new cs(`Illegal character: ${t}`)}let s=String.fromCharCode(t);if(t<32||t>127){const e=this.peekChar();if(e>=32&&e<=127)return this.nextChar(),Ds.get(s)}const a=this.knownCommands;let i=void 0!==a?.[s];for(;(t=this.nextChar())>=0&&!ar[t];){const e=s+String.fromCharCode(t);if(i&&void 0===a[e])break;if(128===s.length)throw new cs(`Command token too long: ${s.length}`);s=e,i=void 0!==a?.[s]}return"true"===s||"false"!==s&&("null"===s?null:("BI"===s&&(this.beginInlineImagePos=this.stream.pos),Ds.get(s)))}skipToNextLine(){let e=this.currentChar;for(;e>=0;){if(13===e){e=this.nextChar(),10===e&&this.nextChar();break}if(10===e){this.nextChar();break}e=this.nextChar()}}}class rr{static create(e){function t(e,t,s=!1){const a=e.get(t);if(Number.isInteger(a)&&(s?a>=0:a>0))return a;throw new Error(`The "${t}" parameter in the linearization dictionary is invalid.`)}const s=new sr({lexer:new nr(e),xref:null}),a=s.getObj(),i=s.getObj(),n=s.getObj(),r=s.getObj();let o,c;if(!(Number.isInteger(a)&&Number.isInteger(i)&&qs(n,"obj")&&r instanceof Ps&&"number"==typeof(o=r.get("Linearized"))&&o>0))return null;if((c=t(r,"L"))!==e.length)throw new Error('The "L" parameter in the linearization dictionary does not equal the stream length.');return{length:c,hints:function(e){const t=e.get("H");let s;if(Array.isArray(t)&&(2===(s=t.length)||4===s)){for(let e=0;e<s;e++){const s=t[e];if(!(Number.isInteger(s)&&s>0))throw new Error(`Hint (${e}) in the linearization dictionary is invalid.`)}return t}throw new Error("Hint array in the linearization dictionary is invalid.")}(r),objectNumberFirst:t(r,"O"),endFirst:t(r,"E"),numPages:t(r,"N"),mainXRefEntriesOffset:t(r,"T"),pageFirst:r.has("P")?t(r,"P",!0):0}}}const or=["Adobe-GB1-UCS2","Adobe-CNS1-UCS2","Adobe-Japan1-UCS2","Adobe-Korea1-UCS2","78-EUC-H","78-EUC-V","78-H","78-RKSJ-H","78-RKSJ-V","78-V","78ms-RKSJ-H","78ms-RKSJ-V","83pv-RKSJ-H","90ms-RKSJ-H","90ms-RKSJ-V","90msp-RKSJ-H","90msp-RKSJ-V","90pv-RKSJ-H","90pv-RKSJ-V","Add-H","Add-RKSJ-H","Add-RKSJ-V","Add-V","Adobe-CNS1-0","Adobe-CNS1-1","Adobe-CNS1-2","Adobe-CNS1-3","Adobe-CNS1-4","Adobe-CNS1-5","Adobe-CNS1-6","Adobe-GB1-0","Adobe-GB1-1","Adobe-GB1-2","Adobe-GB1-3","Adobe-GB1-4","Adobe-GB1-5","Adobe-Japan1-0","Adobe-Japan1-1","Adobe-Japan1-2","Adobe-Japan1-3","Adobe-Japan1-4","Adobe-Japan1-5","Adobe-Japan1-6","Adobe-Korea1-0","Adobe-Korea1-1","Adobe-Korea1-2","B5-H","B5-V","B5pc-H","B5pc-V","CNS-EUC-H","CNS-EUC-V","CNS1-H","CNS1-V","CNS2-H","CNS2-V","ETHK-B5-H","ETHK-B5-V","ETen-B5-H","ETen-B5-V","ETenms-B5-H","ETenms-B5-V","EUC-H","EUC-V","Ext-H","Ext-RKSJ-H","Ext-RKSJ-V","Ext-V","GB-EUC-H","GB-EUC-V","GB-H","GB-V","GBK-EUC-H","GBK-EUC-V","GBK2K-H","GBK2K-V","GBKp-EUC-H","GBKp-EUC-V","GBT-EUC-H","GBT-EUC-V","GBT-H","GBT-V","GBTpc-EUC-H","GBTpc-EUC-V","GBpc-EUC-H","GBpc-EUC-V","H","HKdla-B5-H","HKdla-B5-V","HKdlb-B5-H","HKdlb-B5-V","HKgccs-B5-H","HKgccs-B5-V","HKm314-B5-H","HKm314-B5-V","HKm471-B5-H","HKm471-B5-V","HKscs-B5-H","HKscs-B5-V","Hankaku","Hiragana","KSC-EUC-H","KSC-EUC-V","KSC-H","KSC-Johab-H","KSC-Johab-V","KSC-V","KSCms-UHC-H","KSCms-UHC-HW-H","KSCms-UHC-HW-V","KSCms-UHC-V","KSCpc-EUC-H","KSCpc-EUC-V","Katakana","NWP-H","NWP-V","RKSJ-H","RKSJ-V","Roman","UniCNS-UCS2-H","UniCNS-UCS2-V","UniCNS-UTF16-H","UniCNS-UTF16-V","UniCNS-UTF32-H","UniCNS-UTF32-V","UniCNS-UTF8-H","UniCNS-UTF8-V","UniGB-UCS2-H","UniGB-UCS2-V","UniGB-UTF16-H","UniGB-UTF16-V","UniGB-UTF32-H","UniGB-UTF32-V","UniGB-UTF8-H","UniGB-UTF8-V","UniJIS-UCS2-H","UniJIS-UCS2-HW-H","UniJIS-UCS2-HW-V","UniJIS-UCS2-V","UniJIS-UTF16-H","UniJIS-UTF16-V","UniJIS-UTF32-H","UniJIS-UTF32-V","UniJIS-UTF8-H","UniJIS-UTF8-V","UniJIS2004-UTF16-H","UniJIS2004-UTF16-V","UniJIS2004-UTF32-H","UniJIS2004-UTF32-V","UniJIS2004-UTF8-H","UniJIS2004-UTF8-V","UniJISPro-UCS2-HW-V","UniJISPro-UCS2-V","UniJISPro-UTF8-V","UniJISX0213-UTF32-H","UniJISX0213-UTF32-V","UniJISX02132004-UTF32-H","UniJISX02132004-UTF32-V","UniKS-UCS2-H","UniKS-UCS2-V","UniKS-UTF16-H","UniKS-UTF16-V","UniKS-UTF32-H","UniKS-UTF32-V","UniKS-UTF8-H","UniKS-UTF8-V","V","WP-Symbol"],cr=2**24-1;class lr{constructor(e=!1){this.codespaceRanges=[[],[],[],[]],this.numCodespaceRanges=0,this._map=[],this.name="",this.vertical=!1,this.useCMap=null,this.builtInCMap=e}addCodespaceRange(e,t,s){this.codespaceRanges[e-1].push(t,s),this.numCodespaceRanges++}mapCidRange(e,t,s){if(t-e>cr)throw new Error("mapCidRange - ignoring data above MAX_MAP_RANGE.");for(;e<=t;)this._map[e++]=s++}mapBfRange(e,t,s){if(t-e>cr)throw new Error("mapBfRange - ignoring data above MAX_MAP_RANGE.");const a=s.length-1;for(;e<=t;){this._map[e++]=s;const t=s.charCodeAt(a)+1;s=t>255?s.substring(0,a-1)+String.fromCharCode(s.charCodeAt(a-1)+1)+"\0":s.substring(0,a)+String.fromCharCode(t)}}mapBfRangeToArray(e,t,s){if(t-e>cr)throw new Error("mapBfRangeToArray - ignoring data above MAX_MAP_RANGE.");const a=s.length;let i=0;for(;e<=t&&i<a;)this._map[e]=s[i++],++e}mapOne(e,t){this._map[e]=t}lookup(e){return this._map[e]}contains(e){return void 0!==this._map[e]}forEach(e){const t=this._map,s=t.length;if(s<=65536)for(let a=0;a<s;a++)void 0!==t[a]&&e(a,t[a]);else for(const a in t)e(a,t[a])}charCodeOf(e){const t=this._map;if(t.length<=65536)return t.indexOf(e);for(const s in t)if(t[s]===e)return 0|s;return-1}getMap(){return this._map}readCharCode(e,t,s){let a=0;const i=this.codespaceRanges;for(let n=0,r=i.length;n<r;n++){a=(a<<8|e.charCodeAt(t+n))>>>0;const r=i[n];for(let e=0,t=r.length;e<t;){const t=r[e++],i=r[e++];if(a>=t&&a<=i)return s.charcode=a,void(s.length=n+1)}}s.charcode=0,s.length=1}getCharCodeLength(e){const t=this.codespaceRanges;for(let s=0,a=t.length;s<a;s++){const a=t[s];for(let t=0,i=a.length;t<i;){const i=a[t++],n=a[t++];if(e>=i&&e<=n)return s+1}}return 1}get length(){return this._map.length}get isIdentityCMap(){if("Identity-H"!==this.name&&"Identity-V"!==this.name)return!1;if(65536!==this._map.length)return!1;for(let e=0;e<65536;e++)if(this._map[e]!==e)return!1;return!0}}class hr extends lr{constructor(e,t){super(),this.vertical=e,this.addCodespaceRange(t,0,65535)}mapCidRange(e,t,s){Qt("should not call mapCidRange")}mapBfRange(e,t,s){Qt("should not call mapBfRange")}mapBfRangeToArray(e,t,s){Qt("should not call mapBfRangeToArray")}mapOne(e,t){Qt("should not call mapCidOne")}lookup(e){return Number.isInteger(e)&&e<=65535?e:void 0}contains(e){return Number.isInteger(e)&&e<=65535}forEach(e){for(let t=0;t<=65535;t++)e(t,t)}charCodeOf(e){return Number.isInteger(e)&&e<=65535?e:-1}getMap(){const e=new Array(65536);for(let t=0;t<=65535;t++)e[t]=t;return e}get length(){return 65536}get isIdentityCMap(){Qt("should not access .isIdentityCMap")}}function ur(e){let t=0;for(let s=0;s<e.length;s++)t=t<<8|e.charCodeAt(s);return t>>>0}function dr(e){if("string"!=typeof e)throw new cs("Malformed CMap: expected string.")}function fr(e){if(!Number.isInteger(e))throw new cs("Malformed CMap: expected int.")}function gr(e,t){for(;;){let s=t.getObj();if(s===Fs)break;if(qs(s,"endbfchar"))return;dr(s);const a=ur(s);s=t.getObj(),dr(s);const i=s;e.mapOne(a,i)}}function pr(e,t){for(;;){let s=t.getObj();if(s===Fs)break;if(qs(s,"endbfrange"))return;dr(s);const a=ur(s);s=t.getObj(),dr(s);const i=ur(s);if(s=t.getObj(),Number.isInteger(s)||"string"==typeof s){const t=Number.isInteger(s)?String.fromCharCode(s):s;e.mapBfRange(a,i,t)}else{if(!qs(s,"["))break;{s=t.getObj();const n=[];for(;!qs(s,"]")&&s!==Fs;)n.push(s),s=t.getObj();e.mapBfRangeToArray(a,i,n)}}}throw new cs("Invalid bf range.")}function mr(e,t){for(;;){let s=t.getObj();if(s===Fs)break;if(qs(s,"endcidchar"))return;dr(s);const a=ur(s);s=t.getObj(),fr(s);const i=s;e.mapOne(a,i)}}function br(e,t){for(;;){let s=t.getObj();if(s===Fs)break;if(qs(s,"endcidrange"))return;dr(s);const a=ur(s);s=t.getObj(),dr(s);const i=ur(s);s=t.getObj(),fr(s);const n=s;e.mapCidRange(a,i,n)}}function wr(e,t){for(;;){let s=t.getObj();if(s===Fs)break;if(qs(s,"endcodespacerange"))return;if("string"!=typeof s)break;const a=ur(s);if(s=t.getObj(),"string"!=typeof s)break;const i=ur(s);e.addCodespaceRange(s.length,a,i)}throw new cs("Invalid codespace range.")}function yr(e,t){const s=t.getObj();Number.isInteger(s)&&(e.vertical=!!s)}function xr(e,t){const s=t.getObj();s instanceof Ns&&(e.name=s.name)}async function kr(e,t,s,a){let i,n;e:for(;;)try{const s=t.getObj();if(s===Fs)break;if(s instanceof Ns)"WMode"===s.name?yr(e,t):"CMapName"===s.name&&xr(e,t),i=s;else if(s instanceof Ds)switch(s.cmd){case"endcmap":break e;case"usecmap":i instanceof Ns&&(n=i.name);break;case"begincodespacerange":wr(e,t);break;case"beginbfchar":gr(e,t);break;case"begincidchar":mr(e,t);break;case"beginbfrange":pr(e,t);break;case"begincidrange":br(e,t)}}catch(e){if(e instanceof Ys)throw e;Zt("Invalid cMap data: "+e);continue}return!a&&n&&(a=n),a?vr(e,s,a):e}async function vr(e,t,s){if(e.useCMap=await Ar(s,t),0===e.numCodespaceRanges){const t=e.useCMap.codespaceRanges;for(let s=0;s<t.length;s++)e.codespaceRanges[s]=t[s].slice();e.numCodespaceRanges=e.useCMap.numCodespaceRanges}return e.useCMap.forEach(function(t,s){e.contains(t)||e.mapOne(t,s)}),e}async function Ar(e,t){if("Identity-H"===e)return new hr(!1,2);if("Identity-V"===e)return new hr(!0,2);if(!or.includes(e))throw new Error("Unknown CMap name: "+e);if(!t)throw new Error("Built-in CMap parameters are not provided.");const{cMapData:s,isCompressed:a}=await t(e),i=new lr(!0);if(a)return(new en).process(s,i,e=>vr(i,t,e));const n=new nr(new ni(s));return kr(i,n,t,null)}class Cr{static async create({encoding:e,fetchBuiltInCMap:t,useCMap:s}){if(e instanceof Ns)return Ar(e.name,t);if(e instanceof $s){const a=await kr(new lr,new nr(e),t,s);return a.isIdentityCMap?Ar(a.name,t):a}throw new Error("Encoding required.")}}const Sr=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","","asuperior","bsuperior","centsuperior","dsuperior","esuperior","","","","isuperior","","","lsuperior","msuperior","nsuperior","osuperior","","","rsuperior","ssuperior","tsuperior","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdownsmall","centoldstyle","Lslashsmall","","","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","","Dotaccentsmall","","","Macronsmall","","","figuredash","hypheninferior","","","Ogoneksmall","Ringsmall","Cedillasmall","","","","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],Ir=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclamsmall","Hungarumlautsmall","centoldstyle","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","","threequartersemdash","","questionsmall","","","","","Ethsmall","","","onequarter","onehalf","threequarters","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","","","","","","","ff","fi","fl","ffi","ffl","parenleftinferior","","parenrightinferior","Circumflexsmall","hypheninferior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","","","asuperior","centsuperior","","","","","Aacutesmall","Agravesmall","Acircumflexsmall","Adieresissmall","Atildesmall","Aringsmall","Ccedillasmall","Eacutesmall","Egravesmall","Ecircumflexsmall","Edieresissmall","Iacutesmall","Igravesmall","Icircumflexsmall","Idieresissmall","Ntildesmall","Oacutesmall","Ogravesmall","Ocircumflexsmall","Odieresissmall","Otildesmall","Uacutesmall","Ugravesmall","Ucircumflexsmall","Udieresissmall","","eightsuperior","fourinferior","threeinferior","sixinferior","eightinferior","seveninferior","Scaronsmall","","centinferior","twoinferior","","Dieresissmall","","Caronsmall","osuperior","fiveinferior","","commainferior","periodinferior","Yacutesmall","","dollarinferior","","","Thornsmall","","nineinferior","zeroinferior","Zcaronsmall","AEsmall","Oslashsmall","questiondownsmall","oneinferior","Lslashsmall","","","","","","","Cedillasmall","","","","","","OEsmall","figuredash","hyphensuperior","","","","","exclamdownsmall","","Ydieresissmall","","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","ninesuperior","zerosuperior","","esuperior","rsuperior","tsuperior","","","isuperior","ssuperior","dsuperior","","","","","","lsuperior","Ogoneksmall","Brevesmall","Macronsmall","bsuperior","nsuperior","msuperior","commasuperior","periodsuperior","Dotaccentsmall","Ringsmall","","","",""],Br=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","space","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron"],Fr=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","","endash","dagger","daggerdbl","periodcentered","","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","","questiondown","","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","","ring","cedilla","","hungarumlaut","ogonek","caron","emdash","","","","","","","","","","","","","","","","","AE","","ordfeminine","","","","","Lslash","Oslash","OE","ordmasculine","","","","","","ae","","","","dotlessi","","","lslash","oslash","oe","germandbls","","","",""],Mr=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","bullet","Euro","bullet","quotesinglbase","florin","quotedblbase","ellipsis","dagger","daggerdbl","circumflex","perthousand","Scaron","guilsinglleft","OE","bullet","Zcaron","bullet","bullet","quoteleft","quoteright","quotedblleft","quotedblright","bullet","endash","emdash","tilde","trademark","scaron","guilsinglright","oe","bullet","zcaron","Ydieresis","space","exclamdown","cent","sterling","currency","yen","brokenbar","section","dieresis","copyright","ordfeminine","guillemotleft","logicalnot","hyphen","registered","macron","degree","plusminus","twosuperior","threesuperior","acute","mu","paragraph","periodcentered","cedilla","onesuperior","ordmasculine","guillemotright","onequarter","onehalf","threequarters","questiondown","Agrave","Aacute","Acircumflex","Atilde","Adieresis","Aring","AE","Ccedilla","Egrave","Eacute","Ecircumflex","Edieresis","Igrave","Iacute","Icircumflex","Idieresis","Eth","Ntilde","Ograve","Oacute","Ocircumflex","Otilde","Odieresis","multiply","Oslash","Ugrave","Uacute","Ucircumflex","Udieresis","Yacute","Thorn","germandbls","agrave","aacute","acircumflex","atilde","adieresis","aring","ae","ccedilla","egrave","eacute","ecircumflex","edieresis","igrave","iacute","icircumflex","idieresis","eth","ntilde","ograve","oacute","ocircumflex","otilde","odieresis","divide","oslash","ugrave","uacute","ucircumflex","udieresis","yacute","thorn","ydieresis"],Tr=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","exclam","universal","numbersign","existential","percent","ampersand","suchthat","parenleft","parenright","asteriskmath","plus","comma","minus","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","congruent","Alpha","Beta","Chi","Delta","Epsilon","Phi","Gamma","Eta","Iota","theta1","Kappa","Lambda","Mu","Nu","Omicron","Pi","Theta","Rho","Sigma","Tau","Upsilon","sigma1","Omega","Xi","Psi","Zeta","bracketleft","therefore","bracketright","perpendicular","underscore","radicalex","alpha","beta","chi","delta","epsilon","phi","gamma","eta","iota","phi1","kappa","lambda","mu","nu","omicron","pi","theta","rho","sigma","tau","upsilon","omega1","omega","xi","psi","zeta","braceleft","bar","braceright","similar","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Euro","Upsilon1","minute","lessequal","fraction","infinity","florin","club","diamond","heart","spade","arrowboth","arrowleft","arrowup","arrowright","arrowdown","degree","plusminus","second","greaterequal","multiply","proportional","partialdiff","bullet","divide","notequal","equivalence","approxequal","ellipsis","arrowvertex","arrowhorizex","carriagereturn","aleph","Ifraktur","Rfraktur","weierstrass","circlemultiply","circleplus","emptyset","intersection","union","propersuperset","reflexsuperset","notsubset","propersubset","reflexsubset","element","notelement","angle","gradient","registerserif","copyrightserif","trademarkserif","product","radical","dotmath","logicalnot","logicaland","logicalor","arrowdblboth","arrowdblleft","arrowdblup","arrowdblright","arrowdbldown","lozenge","angleleft","registersans","copyrightsans","trademarksans","summation","parenlefttp","parenleftex","parenleftbt","bracketlefttp","bracketleftex","bracketleftbt","bracelefttp","braceleftmid","braceleftbt","braceex","","angleright","integral","integraltp","integralex","integralbt","parenrighttp","parenrightex","parenrightbt","bracketrighttp","bracketrightex","bracketrightbt","bracerighttp","bracerightmid","bracerightbt",""],Rr=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","space","a1","a2","a202","a3","a4","a5","a119","a118","a117","a11","a12","a13","a14","a15","a16","a105","a17","a18","a19","a20","a21","a22","a23","a24","a25","a26","a27","a28","a6","a7","a8","a9","a10","a29","a30","a31","a32","a33","a34","a35","a36","a37","a38","a39","a40","a41","a42","a43","a44","a45","a46","a47","a48","a49","a50","a51","a52","a53","a54","a55","a56","a57","a58","a59","a60","a61","a62","a63","a64","a65","a66","a67","a68","a69","a70","a71","a72","a73","a74","a203","a75","a204","a76","a77","a78","a79","a81","a82","a83","a84","a97","a98","a99","a100","","a89","a90","a93","a94","a91","a92","a205","a85","a206","a86","a87","a88","a95","a96","","","","","","","","","","","","","","","","","","","","a101","a102","a103","a104","a106","a107","a108","a112","a111","a110","a109","a120","a121","a122","a123","a124","a125","a126","a127","a128","a129","a130","a131","a132","a133","a134","a135","a136","a137","a138","a139","a140","a141","a142","a143","a144","a145","a146","a147","a148","a149","a150","a151","a152","a153","a154","a155","a156","a157","a158","a159","a160","a161","a163","a164","a196","a165","a192","a166","a167","a168","a169","a170","a171","a172","a173","a162","a174","a175","a176","a177","a178","a179","a193","a180","a199","a181","a200","a182","","a201","a183","a184","a197","a185","a194","a198","a186","a195","a187","a188","a189","a190","a191",""];function Nr(e){switch(e){case"WinAnsiEncoding":return Mr;case"StandardEncoding":return Fr;case"MacRomanEncoding":return Br;case"SymbolSetEncoding":return Tr;case"ZapfDingbatsEncoding":return Rr;case"ExpertEncoding":return Sr;case"MacExpertEncoding":return Ir;default:return null}}const Dr=Ks(function(e){e.A=65,e.AE=198,e.AEacute=508,e.AEmacron=482,e.AEsmall=63462,e.Aacute=193,e.Aacutesmall=63457,e.Abreve=258,e.Abreveacute=7854,e.Abrevecyrillic=1232,e.Abrevedotbelow=7862,e.Abrevegrave=7856,e.Abrevehookabove=7858,e.Abrevetilde=7860,e.Acaron=461,e.Acircle=9398,e.Acircumflex=194,e.Acircumflexacute=7844,e.Acircumflexdotbelow=7852,e.Acircumflexgrave=7846,e.Acircumflexhookabove=7848,e.Acircumflexsmall=63458,e.Acircumflextilde=7850,e.Acute=63177,e.Acutesmall=63412,e.Acyrillic=1040,e.Adblgrave=512,e.Adieresis=196,e.Adieresiscyrillic=1234,e.Adieresismacron=478,e.Adieresissmall=63460,e.Adotbelow=7840,e.Adotmacron=480,e.Agrave=192,e.Agravesmall=63456,e.Ahookabove=7842,e.Aiecyrillic=1236,e.Ainvertedbreve=514,e.Alpha=913,e.Alphatonos=902,e.Amacron=256,e.Amonospace=65313,e.Aogonek=260,e.Aring=197,e.Aringacute=506,e.Aringbelow=7680,e.Aringsmall=63461,e.Asmall=63329,e.Atilde=195,e.Atildesmall=63459,e.Aybarmenian=1329,e.B=66,e.Bcircle=9399,e.Bdotaccent=7682,e.Bdotbelow=7684,e.Becyrillic=1041,e.Benarmenian=1330,e.Beta=914,e.Bhook=385,e.Blinebelow=7686,e.Bmonospace=65314,e.Brevesmall=63220,e.Bsmall=63330,e.Btopbar=386,e.C=67,e.Caarmenian=1342,e.Cacute=262,e.Caron=63178,e.Caronsmall=63221,e.Ccaron=268,e.Ccedilla=199,e.Ccedillaacute=7688,e.Ccedillasmall=63463,e.Ccircle=9400,e.Ccircumflex=264,e.Cdot=266,e.Cdotaccent=266,e.Cedillasmall=63416,e.Chaarmenian=1353,e.Cheabkhasiancyrillic=1212,e.Checyrillic=1063,e.Chedescenderabkhasiancyrillic=1214,e.Chedescendercyrillic=1206,e.Chedieresiscyrillic=1268,e.Cheharmenian=1347,e.Chekhakassiancyrillic=1227,e.Cheverticalstrokecyrillic=1208,e.Chi=935,e.Chook=391,e.Circumflexsmall=63222,e.Cmonospace=65315,e.Coarmenian=1361,e.Csmall=63331,e.D=68,e.DZ=497,e.DZcaron=452,e.Daarmenian=1332,e.Dafrican=393,e.Dcaron=270,e.Dcedilla=7696,e.Dcircle=9401,e.Dcircumflexbelow=7698,e.Dcroat=272,e.Ddotaccent=7690,e.Ddotbelow=7692,e.Decyrillic=1044,e.Deicoptic=1006,e.Delta=8710,e.Deltagreek=916,e.Dhook=394,e.Dieresis=63179,e.DieresisAcute=63180,e.DieresisGrave=63181,e.Dieresissmall=63400,e.Digammagreek=988,e.Djecyrillic=1026,e.Dlinebelow=7694,e.Dmonospace=65316,e.Dotaccentsmall=63223,e.Dslash=272,e.Dsmall=63332,e.Dtopbar=395,e.Dz=498,e.Dzcaron=453,e.Dzeabkhasiancyrillic=1248,e.Dzecyrillic=1029,e.Dzhecyrillic=1039,e.E=69,e.Eacute=201,e.Eacutesmall=63465,e.Ebreve=276,e.Ecaron=282,e.Ecedillabreve=7708,e.Echarmenian=1333,e.Ecircle=9402,e.Ecircumflex=202,e.Ecircumflexacute=7870,e.Ecircumflexbelow=7704,e.Ecircumflexdotbelow=7878,e.Ecircumflexgrave=7872,e.Ecircumflexhookabove=7874,e.Ecircumflexsmall=63466,e.Ecircumflextilde=7876,e.Ecyrillic=1028,e.Edblgrave=516,e.Edieresis=203,e.Edieresissmall=63467,e.Edot=278,e.Edotaccent=278,e.Edotbelow=7864,e.Efcyrillic=1060,e.Egrave=200,e.Egravesmall=63464,e.Eharmenian=1335,e.Ehookabove=7866,e.Eightroman=8551,e.Einvertedbreve=518,e.Eiotifiedcyrillic=1124,e.Elcyrillic=1051,e.Elevenroman=8554,e.Emacron=274,e.Emacronacute=7702,e.Emacrongrave=7700,e.Emcyrillic=1052,e.Emonospace=65317,e.Encyrillic=1053,e.Endescendercyrillic=1186,e.Eng=330,e.Enghecyrillic=1188,e.Enhookcyrillic=1223,e.Eogonek=280,e.Eopen=400,e.Epsilon=917,e.Epsilontonos=904,e.Ercyrillic=1056,e.Ereversed=398,e.Ereversedcyrillic=1069,e.Escyrillic=1057,e.Esdescendercyrillic=1194,e.Esh=425,e.Esmall=63333,e.Eta=919,e.Etarmenian=1336,e.Etatonos=905,e.Eth=208,e.Ethsmall=63472,e.Etilde=7868,e.Etildebelow=7706,e.Euro=8364,e.Ezh=439,e.Ezhcaron=494,e.Ezhreversed=440,e.F=70,e.Fcircle=9403,e.Fdotaccent=7710,e.Feharmenian=1366,e.Feicoptic=996,e.Fhook=401,e.Fitacyrillic=1138,e.Fiveroman=8548,e.Fmonospace=65318,e.Fourroman=8547,e.Fsmall=63334,e.G=71,e.GBsquare=13191,e.Gacute=500,e.Gamma=915,e.Gammaafrican=404,e.Gangiacoptic=1002,e.Gbreve=286,e.Gcaron=486,e.Gcedilla=290,e.Gcircle=9404,e.Gcircumflex=284,e.Gcommaaccent=290,e.Gdot=288,e.Gdotaccent=288,e.Gecyrillic=1043,e.Ghadarmenian=1346,e.Ghemiddlehookcyrillic=1172,e.Ghestrokecyrillic=1170,e.Gheupturncyrillic=1168,e.Ghook=403,e.Gimarmenian=1331,e.Gjecyrillic=1027,e.Gmacron=7712,e.Gmonospace=65319,e.Grave=63182,e.Gravesmall=63328,e.Gsmall=63335,e.Gsmallhook=667,e.Gstroke=484,e.H=72,e.H18533=9679,e.H18543=9642,e.H18551=9643,e.H22073=9633,e.HPsquare=13259,e.Haabkhasiancyrillic=1192,e.Hadescendercyrillic=1202,e.Hardsigncyrillic=1066,e.Hbar=294,e.Hbrevebelow=7722,e.Hcedilla=7720,e.Hcircle=9405,e.Hcircumflex=292,e.Hdieresis=7718,e.Hdotaccent=7714,e.Hdotbelow=7716,e.Hmonospace=65320,e.Hoarmenian=1344,e.Horicoptic=1e3,e.Hsmall=63336,e.Hungarumlaut=63183,e.Hungarumlautsmall=63224,e.Hzsquare=13200,e.I=73,e.IAcyrillic=1071,e.IJ=306,e.IUcyrillic=1070,e.Iacute=205,e.Iacutesmall=63469,e.Ibreve=300,e.Icaron=463,e.Icircle=9406,e.Icircumflex=206,e.Icircumflexsmall=63470,e.Icyrillic=1030,e.Idblgrave=520,e.Idieresis=207,e.Idieresisacute=7726,e.Idieresiscyrillic=1252,e.Idieresissmall=63471,e.Idot=304,e.Idotaccent=304,e.Idotbelow=7882,e.Iebrevecyrillic=1238,e.Iecyrillic=1045,e.Ifraktur=8465,e.Igrave=204,e.Igravesmall=63468,e.Ihookabove=7880,e.Iicyrillic=1048,e.Iinvertedbreve=522,e.Iishortcyrillic=1049,e.Imacron=298,e.Imacroncyrillic=1250,e.Imonospace=65321,e.Iniarmenian=1339,e.Iocyrillic=1025,e.Iogonek=302,e.Iota=921,e.Iotaafrican=406,e.Iotadieresis=938,e.Iotatonos=906,e.Ismall=63337,e.Istroke=407,e.Itilde=296,e.Itildebelow=7724,e.Izhitsacyrillic=1140,e.Izhitsadblgravecyrillic=1142,e.J=74,e.Jaarmenian=1345,e.Jcircle=9407,e.Jcircumflex=308,e.Jecyrillic=1032,e.Jheharmenian=1355,e.Jmonospace=65322,e.Jsmall=63338,e.K=75,e.KBsquare=13189,e.KKsquare=13261,e.Kabashkircyrillic=1184,e.Kacute=7728,e.Kacyrillic=1050,e.Kadescendercyrillic=1178,e.Kahookcyrillic=1219,e.Kappa=922,e.Kastrokecyrillic=1182,e.Kaverticalstrokecyrillic=1180,e.Kcaron=488,e.Kcedilla=310,e.Kcircle=9408,e.Kcommaaccent=310,e.Kdotbelow=7730,e.Keharmenian=1364,e.Kenarmenian=1343,e.Khacyrillic=1061,e.Kheicoptic=998,e.Khook=408,e.Kjecyrillic=1036,e.Klinebelow=7732,e.Kmonospace=65323,e.Koppacyrillic=1152,e.Koppagreek=990,e.Ksicyrillic=1134,e.Ksmall=63339,e.L=76,e.LJ=455,e.LL=63167,e.Lacute=313,e.Lambda=923,e.Lcaron=317,e.Lcedilla=315,e.Lcircle=9409,e.Lcircumflexbelow=7740,e.Lcommaaccent=315,e.Ldot=319,e.Ldotaccent=319,e.Ldotbelow=7734,e.Ldotbelowmacron=7736,e.Liwnarmenian=1340,e.Lj=456,e.Ljecyrillic=1033,e.Llinebelow=7738,e.Lmonospace=65324,e.Lslash=321,e.Lslashsmall=63225,e.Lsmall=63340,e.M=77,e.MBsquare=13190,e.Macron=63184,e.Macronsmall=63407,e.Macute=7742,e.Mcircle=9410,e.Mdotaccent=7744,e.Mdotbelow=7746,e.Menarmenian=1348,e.Mmonospace=65325,e.Msmall=63341,e.Mturned=412,e.Mu=924,e.N=78,e.NJ=458,e.Nacute=323,e.Ncaron=327,e.Ncedilla=325,e.Ncircle=9411,e.Ncircumflexbelow=7754,e.Ncommaaccent=325,e.Ndotaccent=7748,e.Ndotbelow=7750,e.Nhookleft=413,e.Nineroman=8552,e.Nj=459,e.Njecyrillic=1034,e.Nlinebelow=7752,e.Nmonospace=65326,e.Nowarmenian=1350,e.Nsmall=63342,e.Ntilde=209,e.Ntildesmall=63473,e.Nu=925,e.O=79,e.OE=338,e.OEsmall=63226,e.Oacute=211,e.Oacutesmall=63475,e.Obarredcyrillic=1256,e.Obarreddieresiscyrillic=1258,e.Obreve=334,e.Ocaron=465,e.Ocenteredtilde=415,e.Ocircle=9412,e.Ocircumflex=212,e.Ocircumflexacute=7888,e.Ocircumflexdotbelow=7896,e.Ocircumflexgrave=7890,e.Ocircumflexhookabove=7892,e.Ocircumflexsmall=63476,e.Ocircumflextilde=7894,e.Ocyrillic=1054,e.Odblacute=336,e.Odblgrave=524,e.Odieresis=214,e.Odieresiscyrillic=1254,e.Odieresissmall=63478,e.Odotbelow=7884,e.Ogoneksmall=63227,e.Ograve=210,e.Ogravesmall=63474,e.Oharmenian=1365,e.Ohm=8486,e.Ohookabove=7886,e.Ohorn=416,e.Ohornacute=7898,e.Ohorndotbelow=7906,e.Ohorngrave=7900,e.Ohornhookabove=7902,e.Ohorntilde=7904,e.Ohungarumlaut=336,e.Oi=418,e.Oinvertedbreve=526,e.Omacron=332,e.Omacronacute=7762,e.Omacrongrave=7760,e.Omega=8486,e.Omegacyrillic=1120,e.Omegagreek=937,e.Omegaroundcyrillic=1146,e.Omegatitlocyrillic=1148,e.Omegatonos=911,e.Omicron=927,e.Omicrontonos=908,e.Omonospace=65327,e.Oneroman=8544,e.Oogonek=490,e.Oogonekmacron=492,e.Oopen=390,e.Oslash=216,e.Oslashacute=510,e.Oslashsmall=63480,e.Osmall=63343,e.Ostrokeacute=510,e.Otcyrillic=1150,e.Otilde=213,e.Otildeacute=7756,e.Otildedieresis=7758,e.Otildesmall=63477,e.P=80,e.Pacute=7764,e.Pcircle=9413,e.Pdotaccent=7766,e.Pecyrillic=1055,e.Peharmenian=1354,e.Pemiddlehookcyrillic=1190,e.Phi=934,e.Phook=420,e.Pi=928,e.Piwrarmenian=1363,e.Pmonospace=65328,e.Psi=936,e.Psicyrillic=1136,e.Psmall=63344,e.Q=81,e.Qcircle=9414,e.Qmonospace=65329,e.Qsmall=63345,e.R=82,e.Raarmenian=1356,e.Racute=340,e.Rcaron=344,e.Rcedilla=342,e.Rcircle=9415,e.Rcommaaccent=342,e.Rdblgrave=528,e.Rdotaccent=7768,e.Rdotbelow=7770,e.Rdotbelowmacron=7772,e.Reharmenian=1360,e.Rfraktur=8476,e.Rho=929,e.Ringsmall=63228,e.Rinvertedbreve=530,e.Rlinebelow=7774,e.Rmonospace=65330,e.Rsmall=63346,e.Rsmallinverted=641,e.Rsmallinvertedsuperior=694,e.S=83,e.SF010000=9484,e.SF020000=9492,e.SF030000=9488,e.SF040000=9496,e.SF050000=9532,e.SF060000=9516,e.SF070000=9524,e.SF080000=9500,e.SF090000=9508,e.SF100000=9472,e.SF110000=9474,e.SF190000=9569,e.SF200000=9570,e.SF210000=9558,e.SF220000=9557,e.SF230000=9571,e.SF240000=9553,e.SF250000=9559,e.SF260000=9565,e.SF270000=9564,e.SF280000=9563,e.SF360000=9566,e.SF370000=9567,e.SF380000=9562,e.SF390000=9556,e.SF400000=9577,e.SF410000=9574,e.SF420000=9568,e.SF430000=9552,e.SF440000=9580,e.SF450000=9575,e.SF460000=9576,e.SF470000=9572,e.SF480000=9573,e.SF490000=9561,e.SF500000=9560,e.SF510000=9554,e.SF520000=9555,e.SF530000=9579,e.SF540000=9578,e.Sacute=346,e.Sacutedotaccent=7780,e.Sampigreek=992,e.Scaron=352,e.Scarondotaccent=7782,e.Scaronsmall=63229,e.Scedilla=350,e.Schwa=399,e.Schwacyrillic=1240,e.Schwadieresiscyrillic=1242,e.Scircle=9416,e.Scircumflex=348,e.Scommaaccent=536,e.Sdotaccent=7776,e.Sdotbelow=7778,e.Sdotbelowdotaccent=7784,e.Seharmenian=1357,e.Sevenroman=8550,e.Shaarmenian=1351,e.Shacyrillic=1064,e.Shchacyrillic=1065,e.Sheicoptic=994,e.Shhacyrillic=1210,e.Shimacoptic=1004,e.Sigma=931,e.Sixroman=8549,e.Smonospace=65331,e.Softsigncyrillic=1068,e.Ssmall=63347,e.Stigmagreek=986,e.T=84,e.Tau=932,e.Tbar=358,e.Tcaron=356,e.Tcedilla=354,e.Tcircle=9417,e.Tcircumflexbelow=7792,e.Tcommaaccent=354,e.Tdotaccent=7786,e.Tdotbelow=7788,e.Tecyrillic=1058,e.Tedescendercyrillic=1196,e.Tenroman=8553,e.Tetsecyrillic=1204,e.Theta=920,e.Thook=428,e.Thorn=222,e.Thornsmall=63486,e.Threeroman=8546,e.Tildesmall=63230,e.Tiwnarmenian=1359,e.Tlinebelow=7790,e.Tmonospace=65332,e.Toarmenian=1337,e.Tonefive=444,e.Tonesix=388,e.Tonetwo=423,e.Tretroflexhook=430,e.Tsecyrillic=1062,e.Tshecyrillic=1035,e.Tsmall=63348,e.Twelveroman=8555,e.Tworoman=8545,e.U=85,e.Uacute=218,e.Uacutesmall=63482,e.Ubreve=364,e.Ucaron=467,e.Ucircle=9418,e.Ucircumflex=219,e.Ucircumflexbelow=7798,e.Ucircumflexsmall=63483,e.Ucyrillic=1059,e.Udblacute=368,e.Udblgrave=532,e.Udieresis=220,e.Udieresisacute=471,e.Udieresisbelow=7794,e.Udieresiscaron=473,e.Udieresiscyrillic=1264,e.Udieresisgrave=475,e.Udieresismacron=469,e.Udieresissmall=63484,e.Udotbelow=7908,e.Ugrave=217,e.Ugravesmall=63481,e.Uhookabove=7910,e.Uhorn=431,e.Uhornacute=7912,e.Uhorndotbelow=7920,e.Uhorngrave=7914,e.Uhornhookabove=7916,e.Uhorntilde=7918,e.Uhungarumlaut=368,e.Uhungarumlautcyrillic=1266,e.Uinvertedbreve=534,e.Ukcyrillic=1144,e.Umacron=362,e.Umacroncyrillic=1262,e.Umacrondieresis=7802,e.Umonospace=65333,e.Uogonek=370,e.Upsilon=933,e.Upsilon1=978,e.Upsilonacutehooksymbolgreek=979,e.Upsilonafrican=433,e.Upsilondieresis=939,e.Upsilondieresishooksymbolgreek=980,e.Upsilonhooksymbol=978,e.Upsilontonos=910,e.Uring=366,e.Ushortcyrillic=1038,e.Usmall=63349,e.Ustraightcyrillic=1198,e.Ustraightstrokecyrillic=1200,e.Utilde=360,e.Utildeacute=7800,e.Utildebelow=7796,e.V=86,e.Vcircle=9419,e.Vdotbelow=7806,e.Vecyrillic=1042,e.Vewarmenian=1358,e.Vhook=434,e.Vmonospace=65334,e.Voarmenian=1352,e.Vsmall=63350,e.Vtilde=7804,e.W=87,e.Wacute=7810,e.Wcircle=9420,e.Wcircumflex=372,e.Wdieresis=7812,e.Wdotaccent=7814,e.Wdotbelow=7816,e.Wgrave=7808,e.Wmonospace=65335,e.Wsmall=63351,e.X=88,e.Xcircle=9421,e.Xdieresis=7820,e.Xdotaccent=7818,e.Xeharmenian=1341,e.Xi=926,e.Xmonospace=65336,e.Xsmall=63352,e.Y=89,e.Yacute=221,e.Yacutesmall=63485,e.Yatcyrillic=1122,e.Ycircle=9422,e.Ycircumflex=374,e.Ydieresis=376,e.Ydieresissmall=63487,e.Ydotaccent=7822,e.Ydotbelow=7924,e.Yericyrillic=1067,e.Yerudieresiscyrillic=1272,e.Ygrave=7922,e.Yhook=435,e.Yhookabove=7926,e.Yiarmenian=1349,e.Yicyrillic=1031,e.Yiwnarmenian=1362,e.Ymonospace=65337,e.Ysmall=63353,e.Ytilde=7928,e.Yusbigcyrillic=1130,e.Yusbigiotifiedcyrillic=1132,e.Yuslittlecyrillic=1126,e.Yuslittleiotifiedcyrillic=1128,e.Z=90,e.Zaarmenian=1334,e.Zacute=377,e.Zcaron=381,e.Zcaronsmall=63231,e.Zcircle=9423,e.Zcircumflex=7824,e.Zdot=379,e.Zdotaccent=379,e.Zdotbelow=7826,e.Zecyrillic=1047,e.Zedescendercyrillic=1176,e.Zedieresiscyrillic=1246,e.Zeta=918,e.Zhearmenian=1338,e.Zhebrevecyrillic=1217,e.Zhecyrillic=1046,e.Zhedescendercyrillic=1174,e.Zhedieresiscyrillic=1244,e.Zlinebelow=7828,e.Zmonospace=65338,e.Zsmall=63354,e.Zstroke=437,e.a=97,e.aabengali=2438,e.aacute=225,e.aadeva=2310,e.aagujarati=2694,e.aagurmukhi=2566,e.aamatragurmukhi=2622,e.aarusquare=13059,e.aavowelsignbengali=2494,e.aavowelsigndeva=2366,e.aavowelsigngujarati=2750,e.abbreviationmarkarmenian=1375,e.abbreviationsigndeva=2416,e.abengali=2437,e.abopomofo=12570,e.abreve=259,e.abreveacute=7855,e.abrevecyrillic=1233,e.abrevedotbelow=7863,e.abrevegrave=7857,e.abrevehookabove=7859,e.abrevetilde=7861,e.acaron=462,e.acircle=9424,e.acircumflex=226,e.acircumflexacute=7845,e.acircumflexdotbelow=7853,e.acircumflexgrave=7847,e.acircumflexhookabove=7849,e.acircumflextilde=7851,e.acute=180,e.acutebelowcmb=791,e.acutecmb=769,e.acutecomb=769,e.acutedeva=2388,e.acutelowmod=719,e.acutetonecmb=833,e.acyrillic=1072,e.adblgrave=513,e.addakgurmukhi=2673,e.adeva=2309,e.adieresis=228,e.adieresiscyrillic=1235,e.adieresismacron=479,e.adotbelow=7841,e.adotmacron=481,e.ae=230,e.aeacute=509,e.aekorean=12624,e.aemacron=483,e.afii00208=8213,e.afii08941=8356,e.afii10017=1040,e.afii10018=1041,e.afii10019=1042,e.afii10020=1043,e.afii10021=1044,e.afii10022=1045,e.afii10023=1025,e.afii10024=1046,e.afii10025=1047,e.afii10026=1048,e.afii10027=1049,e.afii10028=1050,e.afii10029=1051,e.afii10030=1052;e.afii10031=1053,e.afii10032=1054,e.afii10033=1055,e.afii10034=1056,e.afii10035=1057,e.afii10036=1058,e.afii10037=1059,e.afii10038=1060,e.afii10039=1061,e.afii10040=1062,e.afii10041=1063,e.afii10042=1064,e.afii10043=1065,e.afii10044=1066,e.afii10045=1067,e.afii10046=1068,e.afii10047=1069,e.afii10048=1070,e.afii10049=1071,e.afii10050=1168,e.afii10051=1026,e.afii10052=1027,e.afii10053=1028,e.afii10054=1029,e.afii10055=1030,e.afii10056=1031,e.afii10057=1032,e.afii10058=1033,e.afii10059=1034,e.afii10060=1035,e.afii10061=1036,e.afii10062=1038,e.afii10063=63172,e.afii10064=63173,e.afii10065=1072,e.afii10066=1073,e.afii10067=1074,e.afii10068=1075,e.afii10069=1076,e.afii10070=1077,e.afii10071=1105,e.afii10072=1078,e.afii10073=1079,e.afii10074=1080,e.afii10075=1081,e.afii10076=1082,e.afii10077=1083,e.afii10078=1084,e.afii10079=1085,e.afii10080=1086,e.afii10081=1087,e.afii10082=1088,e.afii10083=1089,e.afii10084=1090,e.afii10085=1091,e.afii10086=1092,e.afii10087=1093,e.afii10088=1094,e.afii10089=1095,e.afii10090=1096,e.afii10091=1097,e.afii10092=1098,e.afii10093=1099,e.afii10094=1100,e.afii10095=1101,e.afii10096=1102,e.afii10097=1103,e.afii10098=1169,e.afii10099=1106,e.afii10100=1107,e.afii10101=1108,e.afii10102=1109,e.afii10103=1110,e.afii10104=1111,e.afii10105=1112,e.afii10106=1113,e.afii10107=1114,e.afii10108=1115,e.afii10109=1116,e.afii10110=1118,e.afii10145=1039,e.afii10146=1122,e.afii10147=1138,e.afii10148=1140,e.afii10192=63174,e.afii10193=1119,e.afii10194=1123,e.afii10195=1139,e.afii10196=1141,e.afii10831=63175,e.afii10832=63176,e.afii10846=1241,e.afii299=8206,e.afii300=8207,e.afii301=8205,e.afii57381=1642,e.afii57388=1548,e.afii57392=1632,e.afii57393=1633,e.afii57394=1634,e.afii57395=1635,e.afii57396=1636,e.afii57397=1637,e.afii57398=1638,e.afii57399=1639,e.afii57400=1640,e.afii57401=1641,e.afii57403=1563,e.afii57407=1567,e.afii57409=1569,e.afii57410=1570,e.afii57411=1571,e.afii57412=1572,e.afii57413=1573,e.afii57414=1574,e.afii57415=1575,e.afii57416=1576,e.afii57417=1577,e.afii57418=1578,e.afii57419=1579,e.afii57420=1580,e.afii57421=1581,e.afii57422=1582,e.afii57423=1583,e.afii57424=1584,e.afii57425=1585,e.afii57426=1586,e.afii57427=1587,e.afii57428=1588,e.afii57429=1589,e.afii57430=1590,e.afii57431=1591,e.afii57432=1592,e.afii57433=1593,e.afii57434=1594,e.afii57440=1600,e.afii57441=1601,e.afii57442=1602,e.afii57443=1603,e.afii57444=1604,e.afii57445=1605,e.afii57446=1606,e.afii57448=1608,e.afii57449=1609,e.afii57450=1610,e.afii57451=1611,e.afii57452=1612,e.afii57453=1613,e.afii57454=1614,e.afii57455=1615,e.afii57456=1616,e.afii57457=1617,e.afii57458=1618,e.afii57470=1607,e.afii57505=1700,e.afii57506=1662,e.afii57507=1670,e.afii57508=1688,e.afii57509=1711,e.afii57511=1657,e.afii57512=1672,e.afii57513=1681,e.afii57514=1722,e.afii57519=1746,e.afii57534=1749,e.afii57636=8362,e.afii57645=1470,e.afii57658=1475,e.afii57664=1488,e.afii57665=1489,e.afii57666=1490,e.afii57667=1491,e.afii57668=1492,e.afii57669=1493,e.afii57670=1494,e.afii57671=1495,e.afii57672=1496,e.afii57673=1497,e.afii57674=1498,e.afii57675=1499,e.afii57676=1500,e.afii57677=1501,e.afii57678=1502,e.afii57679=1503,e.afii57680=1504,e.afii57681=1505,e.afii57682=1506,e.afii57683=1507,e.afii57684=1508,e.afii57685=1509,e.afii57686=1510,e.afii57687=1511,e.afii57688=1512,e.afii57689=1513,e.afii57690=1514,e.afii57694=64298,e.afii57695=64299,e.afii57700=64331,e.afii57705=64287,e.afii57716=1520,e.afii57717=1521,e.afii57718=1522,e.afii57723=64309,e.afii57793=1460,e.afii57794=1461,e.afii57795=1462,e.afii57796=1467,e.afii57797=1464,e.afii57798=1463,e.afii57799=1456,e.afii57800=1458,e.afii57801=1457,e.afii57802=1459,e.afii57803=1474,e.afii57804=1473,e.afii57806=1465,e.afii57807=1468,e.afii57839=1469,e.afii57841=1471,e.afii57842=1472,e.afii57929=700,e.afii61248=8453,e.afii61289=8467,e.afii61352=8470,e.afii61573=8236,e.afii61574=8237,e.afii61575=8238,e.afii61664=8204,e.afii63167=1645,e.afii64937=701,e.agrave=224,e.agujarati=2693,e.agurmukhi=2565,e.ahiragana=12354,e.ahookabove=7843,e.aibengali=2448,e.aibopomofo=12574,e.aideva=2320,e.aiecyrillic=1237,e.aigujarati=2704,e.aigurmukhi=2576,e.aimatragurmukhi=2632,e.ainarabic=1593,e.ainfinalarabic=65226,e.aininitialarabic=65227,e.ainmedialarabic=65228,e.ainvertedbreve=515,e.aivowelsignbengali=2504,e.aivowelsigndeva=2376,e.aivowelsigngujarati=2760,e.akatakana=12450,e.akatakanahalfwidth=65393,e.akorean=12623,e.alef=1488,e.alefarabic=1575,e.alefdageshhebrew=64304,e.aleffinalarabic=65166,e.alefhamzaabovearabic=1571,e.alefhamzaabovefinalarabic=65156,e.alefhamzabelowarabic=1573,e.alefhamzabelowfinalarabic=65160,e.alefhebrew=1488,e.aleflamedhebrew=64335,e.alefmaddaabovearabic=1570,e.alefmaddaabovefinalarabic=65154,e.alefmaksuraarabic=1609,e.alefmaksurafinalarabic=65264,e.alefmaksurainitialarabic=65267,e.alefmaksuramedialarabic=65268,e.alefpatahhebrew=64302,e.alefqamatshebrew=64303,e.aleph=8501,e.allequal=8780,e.alpha=945,e.alphatonos=940,e.amacron=257,e.amonospace=65345,e.ampersand=38,e.ampersandmonospace=65286,e.ampersandsmall=63270,e.amsquare=13250,e.anbopomofo=12578,e.angbopomofo=12580,e.angbracketleft=12296,e.angbracketright=12297,e.angkhankhuthai=3674,e.angle=8736,e.anglebracketleft=12296,e.anglebracketleftvertical=65087,e.anglebracketright=12297,e.anglebracketrightvertical=65088,e.angleleft=9001,e.angleright=9002,e.angstrom=8491,e.anoteleia=903,e.anudattadeva=2386,e.anusvarabengali=2434,e.anusvaradeva=2306,e.anusvaragujarati=2690,e.aogonek=261,e.apaatosquare=13056,e.aparen=9372,e.apostrophearmenian=1370,e.apostrophemod=700,e.apple=63743,e.approaches=8784,e.approxequal=8776,e.approxequalorimage=8786,e.approximatelyequal=8773,e.araeaekorean=12686,e.araeakorean=12685,e.arc=8978,e.arighthalfring=7834,e.aring=229,e.aringacute=507,e.aringbelow=7681,e.arrowboth=8596,e.arrowdashdown=8675,e.arrowdashleft=8672,e.arrowdashright=8674,e.arrowdashup=8673,e.arrowdblboth=8660,e.arrowdbldown=8659,e.arrowdblleft=8656,e.arrowdblright=8658,e.arrowdblup=8657,e.arrowdown=8595,e.arrowdownleft=8601,e.arrowdownright=8600,e.arrowdownwhite=8681,e.arrowheaddownmod=709,e.arrowheadleftmod=706,e.arrowheadrightmod=707,e.arrowheadupmod=708,e.arrowhorizex=63719,e.arrowleft=8592,e.arrowleftdbl=8656,e.arrowleftdblstroke=8653,e.arrowleftoverright=8646,e.arrowleftwhite=8678,e.arrowright=8594,e.arrowrightdblstroke=8655,e.arrowrightheavy=10142,e.arrowrightoverleft=8644,e.arrowrightwhite=8680,e.arrowtableft=8676,e.arrowtabright=8677,e.arrowup=8593,e.arrowupdn=8597,e.arrowupdnbse=8616,e.arrowupdownbase=8616,e.arrowupleft=8598,e.arrowupleftofdown=8645,e.arrowupright=8599,e.arrowupwhite=8679,e.arrowvertex=63718,e.asciicircum=94,e.asciicircummonospace=65342,e.asciitilde=126,e.asciitildemonospace=65374,e.ascript=593,e.ascriptturned=594,e.asmallhiragana=12353,e.asmallkatakana=12449,e.asmallkatakanahalfwidth=65383,e.asterisk=42,e.asteriskaltonearabic=1645,e.asteriskarabic=1645,e.asteriskmath=8727,e.asteriskmonospace=65290,e.asterisksmall=65121,e.asterism=8258,e.asuperior=63209,e.asymptoticallyequal=8771,e.at=64,e.atilde=227,e.atmonospace=65312,e.atsmall=65131,e.aturned=592,e.aubengali=2452,e.aubopomofo=12576,e.audeva=2324,e.augujarati=2708,e.augurmukhi=2580,e.aulengthmarkbengali=2519,e.aumatragurmukhi=2636,e.auvowelsignbengali=2508,e.auvowelsigndeva=2380,e.auvowelsigngujarati=2764,e.avagrahadeva=2365,e.aybarmenian=1377,e.ayin=1506,e.ayinaltonehebrew=64288,e.ayinhebrew=1506,e.b=98,e.babengali=2476,e.backslash=92,e.backslashmonospace=65340,e.badeva=2348,e.bagujarati=2732,e.bagurmukhi=2604,e.bahiragana=12400,e.bahtthai=3647,e.bakatakana=12496,e.bar=124,e.barmonospace=65372,e.bbopomofo=12549,e.bcircle=9425,e.bdotaccent=7683,e.bdotbelow=7685,e.beamedsixteenthnotes=9836,e.because=8757,e.becyrillic=1073,e.beharabic=1576,e.behfinalarabic=65168,e.behinitialarabic=65169,e.behiragana=12409,e.behmedialarabic=65170,e.behmeeminitialarabic=64671,e.behmeemisolatedarabic=64520,e.behnoonfinalarabic=64621,e.bekatakana=12505,e.benarmenian=1378,e.bet=1489,e.beta=946,e.betasymbolgreek=976,e.betdagesh=64305,e.betdageshhebrew=64305,e.bethebrew=1489,e.betrafehebrew=64332,e.bhabengali=2477,e.bhadeva=2349,e.bhagujarati=2733,e.bhagurmukhi=2605,e.bhook=595,e.bihiragana=12403,e.bikatakana=12499,e.bilabialclick=664,e.bindigurmukhi=2562,e.birusquare=13105,e.blackcircle=9679,e.blackdiamond=9670,e.blackdownpointingtriangle=9660,e.blackleftpointingpointer=9668,e.blackleftpointingtriangle=9664,e.blacklenticularbracketleft=12304,e.blacklenticularbracketleftvertical=65083,e.blacklenticularbracketright=12305,e.blacklenticularbracketrightvertical=65084,e.blacklowerlefttriangle=9699,e.blacklowerrighttriangle=9698,e.blackrectangle=9644,e.blackrightpointingpointer=9658,e.blackrightpointingtriangle=9654,e.blacksmallsquare=9642,e.blacksmilingface=9787,e.blacksquare=9632,e.blackstar=9733,e.blackupperlefttriangle=9700,e.blackupperrighttriangle=9701,e.blackuppointingsmalltriangle=9652,e.blackuppointingtriangle=9650,e.blank=9251,e.blinebelow=7687,e.block=9608,e.bmonospace=65346,e.bobaimaithai=3610,e.bohiragana=12412,e.bokatakana=12508,e.bparen=9373,e.bqsquare=13251,e.braceex=63732,e.braceleft=123,e.braceleftbt=63731,e.braceleftmid=63730,e.braceleftmonospace=65371,e.braceleftsmall=65115,e.bracelefttp=63729,e.braceleftvertical=65079,e.braceright=125,e.bracerightbt=63742,e.bracerightmid=63741,e.bracerightmonospace=65373,e.bracerightsmall=65116,e.bracerighttp=63740,e.bracerightvertical=65080,e.bracketleft=91,e.bracketleftbt=63728,e.bracketleftex=63727,e.bracketleftmonospace=65339,e.bracketlefttp=63726,e.bracketright=93,e.bracketrightbt=63739,e.bracketrightex=63738,e.bracketrightmonospace=65341,e.bracketrighttp=63737,e.breve=728,e.brevebelowcmb=814,e.brevecmb=774,e.breveinvertedbelowcmb=815,e.breveinvertedcmb=785,e.breveinverteddoublecmb=865,e.bridgebelowcmb=810,e.bridgeinvertedbelowcmb=826,e.brokenbar=166,e.bstroke=384,e.bsuperior=63210,e.btopbar=387,e.buhiragana=12406,e.bukatakana=12502,e.bullet=8226,e.bulletinverse=9688,e.bulletoperator=8729,e.bullseye=9678,e.c=99,e.caarmenian=1390,e.cabengali=2458,e.cacute=263,e.cadeva=2330,e.cagujarati=2714,e.cagurmukhi=2586,e.calsquare=13192,e.candrabindubengali=2433,e.candrabinducmb=784,e.candrabindudeva=2305,e.candrabindugujarati=2689,e.capslock=8682,e.careof=8453,e.caron=711,e.caronbelowcmb=812,e.caroncmb=780,e.carriagereturn=8629,e.cbopomofo=12568,e.ccaron=269,e.ccedilla=231,e.ccedillaacute=7689,e.ccircle=9426,e.ccircumflex=265,e.ccurl=597,e.cdot=267,e.cdotaccent=267,e.cdsquare=13253,e.cedilla=184,e.cedillacmb=807,e.cent=162,e.centigrade=8451,e.centinferior=63199,e.centmonospace=65504,e.centoldstyle=63394,e.centsuperior=63200,e.chaarmenian=1401,e.chabengali=2459,e.chadeva=2331,e.chagujarati=2715,e.chagurmukhi=2587,e.chbopomofo=12564,e.cheabkhasiancyrillic=1213,e.checkmark=10003,e.checyrillic=1095,e.chedescenderabkhasiancyrillic=1215,e.chedescendercyrillic=1207,e.chedieresiscyrillic=1269,e.cheharmenian=1395,e.chekhakassiancyrillic=1228,e.cheverticalstrokecyrillic=1209,e.chi=967,e.chieuchacirclekorean=12919,e.chieuchaparenkorean=12823,e.chieuchcirclekorean=12905,e.chieuchkorean=12618,e.chieuchparenkorean=12809,e.chochangthai=3594,e.chochanthai=3592,e.chochingthai=3593,e.chochoethai=3596,e.chook=392,e.cieucacirclekorean=12918,e.cieucaparenkorean=12822,e.cieuccirclekorean=12904,e.cieuckorean=12616,e.cieucparenkorean=12808,e.cieucuparenkorean=12828,e.circle=9675,e.circlecopyrt=169,e.circlemultiply=8855,e.circleot=8857,e.circleplus=8853,e.circlepostalmark=12342,e.circlewithlefthalfblack=9680,e.circlewithrighthalfblack=9681,e.circumflex=710,e.circumflexbelowcmb=813,e.circumflexcmb=770,e.clear=8999,e.clickalveolar=450,e.clickdental=448,e.clicklateral=449,e.clickretroflex=451,e.club=9827,e.clubsuitblack=9827,e.clubsuitwhite=9831,e.cmcubedsquare=13220,e.cmonospace=65347,e.cmsquaredsquare=13216,e.coarmenian=1409,e.colon=58,e.colonmonetary=8353,e.colonmonospace=65306,e.colonsign=8353,e.colonsmall=65109,e.colontriangularhalfmod=721,e.colontriangularmod=720,e.comma=44,e.commaabovecmb=787,e.commaaboverightcmb=789,e.commaaccent=63171,e.commaarabic=1548,e.commaarmenian=1373,e.commainferior=63201,e.commamonospace=65292,e.commareversedabovecmb=788,e.commareversedmod=701,e.commasmall=65104,e.commasuperior=63202,e.commaturnedabovecmb=786,e.commaturnedmod=699,e.compass=9788,e.congruent=8773,e.contourintegral=8750,e.control=8963,e.controlACK=6,e.controlBEL=7,e.controlBS=8,e.controlCAN=24,e.controlCR=13,e.controlDC1=17,e.controlDC2=18,e.controlDC3=19,e.controlDC4=20,e.controlDEL=127,e.controlDLE=16,e.controlEM=25,e.controlENQ=5,e.controlEOT=4,e.controlESC=27,e.controlETB=23,e.controlETX=3,e.controlFF=12,e.controlFS=28,e.controlGS=29,e.controlHT=9,e.controlLF=10,e.controlNAK=21,e.controlNULL=0,e.controlRS=30,e.controlSI=15,e.controlSO=14,e.controlSOT=2,e.controlSTX=1,e.controlSUB=26,e.controlSYN=22,e.controlUS=31,e.controlVT=11,e.copyright=169,e.copyrightsans=63721,e.copyrightserif=63193,e.cornerbracketleft=12300,e.cornerbracketlefthalfwidth=65378,e.cornerbracketleftvertical=65089,e.cornerbracketright=12301,e.cornerbracketrighthalfwidth=65379,e.cornerbracketrightvertical=65090,e.corporationsquare=13183,e.cosquare=13255,e.coverkgsquare=13254,e.cparen=9374,e.cruzeiro=8354,e.cstretched=663,e.curlyand=8911,e.curlyor=8910,e.currency=164,e.cyrBreve=63185,e.cyrFlex=63186,e.cyrbreve=63188,e.cyrflex=63189,e.d=100,e.daarmenian=1380,e.dabengali=2470,e.dadarabic=1590,e.dadeva=2342,e.dadfinalarabic=65214,e.dadinitialarabic=65215,e.dadmedialarabic=65216,e.dagesh=1468,e.dageshhebrew=1468,e.dagger=8224,e.daggerdbl=8225,e.dagujarati=2726,e.dagurmukhi=2598,e.dahiragana=12384,e.dakatakana=12480,e.dalarabic=1583,e.dalet=1491,e.daletdagesh=64307,e.daletdageshhebrew=64307,e.dalethebrew=1491,e.dalfinalarabic=65194,e.dammaarabic=1615,e.dammalowarabic=1615,e.dammatanaltonearabic=1612,e.dammatanarabic=1612,e.danda=2404,e.dargahebrew=1447,e.dargalefthebrew=1447,e.dasiapneumatacyrilliccmb=1157,e.dblGrave=63187,e.dblanglebracketleft=12298,e.dblanglebracketleftvertical=65085,e.dblanglebracketright=12299,e.dblanglebracketrightvertical=65086,e.dblarchinvertedbelowcmb=811,e.dblarrowleft=8660,e.dblarrowright=8658,e.dbldanda=2405,e.dblgrave=63190,e.dblgravecmb=783,e.dblintegral=8748,e.dbllowline=8215,e.dbllowlinecmb=819,e.dbloverlinecmb=831,e.dblprimemod=698,e.dblverticalbar=8214,e.dblverticallineabovecmb=782,e.dbopomofo=12553,e.dbsquare=13256,e.dcaron=271,e.dcedilla=7697,e.dcircle=9427,e.dcircumflexbelow=7699,e.dcroat=273,e.ddabengali=2465,e.ddadeva=2337,e.ddagujarati=2721,e.ddagurmukhi=2593,e.ddalarabic=1672,e.ddalfinalarabic=64393,e.dddhadeva=2396,e.ddhabengali=2466,e.ddhadeva=2338,e.ddhagujarati=2722,e.ddhagurmukhi=2594,e.ddotaccent=7691,e.ddotbelow=7693,e.decimalseparatorarabic=1643,e.decimalseparatorpersian=1643,e.decyrillic=1076,e.degree=176,e.dehihebrew=1453,e.dehiragana=12391,e.deicoptic=1007,e.dekatakana=12487,e.deleteleft=9003,e.deleteright=8998,e.delta=948,e.deltaturned=397,e.denominatorminusonenumeratorbengali=2552,e.dezh=676,e.dhabengali=2471,e.dhadeva=2343,e.dhagujarati=2727,e.dhagurmukhi=2599,e.dhook=599,e.dialytikatonos=901,e.dialytikatonoscmb=836,e.diamond=9830,e.diamondsuitwhite=9826,e.dieresis=168,e.dieresisacute=63191,e.dieresisbelowcmb=804,e.dieresiscmb=776,e.dieresisgrave=63192,e.dieresistonos=901,e.dihiragana=12386,e.dikatakana=12482,e.dittomark=12291,e.divide=247,e.divides=8739,e.divisionslash=8725,e.djecyrillic=1106,e.dkshade=9619,e.dlinebelow=7695,e.dlsquare=13207,e.dmacron=273,e.dmonospace=65348,e.dnblock=9604,e.dochadathai=3598,e.dodekthai=3604,e.dohiragana=12393,e.dokatakana=12489,e.dollar=36;e.dollarinferior=63203,e.dollarmonospace=65284,e.dollaroldstyle=63268,e.dollarsmall=65129,e.dollarsuperior=63204,e.dong=8363,e.dorusquare=13094,e.dotaccent=729,e.dotaccentcmb=775,e.dotbelowcmb=803,e.dotbelowcomb=803,e.dotkatakana=12539,e.dotlessi=305,e.dotlessj=63166,e.dotlessjstrokehook=644,e.dotmath=8901,e.dottedcircle=9676,e.doubleyodpatah=64287,e.doubleyodpatahhebrew=64287,e.downtackbelowcmb=798,e.downtackmod=725,e.dparen=9375,e.dsuperior=63211,e.dtail=598,e.dtopbar=396,e.duhiragana=12389,e.dukatakana=12485,e.dz=499,e.dzaltone=675,e.dzcaron=454,e.dzcurl=677,e.dzeabkhasiancyrillic=1249,e.dzecyrillic=1109,e.dzhecyrillic=1119,e.e=101,e.eacute=233,e.earth=9793,e.ebengali=2447,e.ebopomofo=12572,e.ebreve=277,e.ecandradeva=2317,e.ecandragujarati=2701,e.ecandravowelsigndeva=2373,e.ecandravowelsigngujarati=2757,e.ecaron=283,e.ecedillabreve=7709,e.echarmenian=1381,e.echyiwnarmenian=1415,e.ecircle=9428,e.ecircumflex=234,e.ecircumflexacute=7871,e.ecircumflexbelow=7705,e.ecircumflexdotbelow=7879,e.ecircumflexgrave=7873,e.ecircumflexhookabove=7875,e.ecircumflextilde=7877,e.ecyrillic=1108,e.edblgrave=517,e.edeva=2319,e.edieresis=235,e.edot=279,e.edotaccent=279,e.edotbelow=7865,e.eegurmukhi=2575,e.eematragurmukhi=2631,e.efcyrillic=1092,e.egrave=232,e.egujarati=2703,e.eharmenian=1383,e.ehbopomofo=12573,e.ehiragana=12360,e.ehookabove=7867,e.eibopomofo=12575,e.eight=56,e.eightarabic=1640,e.eightbengali=2542,e.eightcircle=9319,e.eightcircleinversesansserif=10129,e.eightdeva=2414,e.eighteencircle=9329,e.eighteenparen=9349,e.eighteenperiod=9369,e.eightgujarati=2798,e.eightgurmukhi=2670,e.eighthackarabic=1640,e.eighthangzhou=12328,e.eighthnotebeamed=9835,e.eightideographicparen=12839,e.eightinferior=8328,e.eightmonospace=65304,e.eightoldstyle=63288,e.eightparen=9339,e.eightperiod=9359,e.eightpersian=1784,e.eightroman=8567,e.eightsuperior=8312,e.eightthai=3672,e.einvertedbreve=519,e.eiotifiedcyrillic=1125,e.ekatakana=12456,e.ekatakanahalfwidth=65396,e.ekonkargurmukhi=2676,e.ekorean=12628,e.elcyrillic=1083,e.element=8712,e.elevencircle=9322,e.elevenparen=9342,e.elevenperiod=9362,e.elevenroman=8570,e.ellipsis=8230,e.ellipsisvertical=8942,e.emacron=275,e.emacronacute=7703,e.emacrongrave=7701,e.emcyrillic=1084,e.emdash=8212,e.emdashvertical=65073,e.emonospace=65349,e.emphasismarkarmenian=1371,e.emptyset=8709,e.enbopomofo=12579,e.encyrillic=1085,e.endash=8211,e.endashvertical=65074,e.endescendercyrillic=1187,e.eng=331,e.engbopomofo=12581,e.enghecyrillic=1189,e.enhookcyrillic=1224,e.enspace=8194,e.eogonek=281,e.eokorean=12627,e.eopen=603,e.eopenclosed=666,e.eopenreversed=604,e.eopenreversedclosed=606,e.eopenreversedhook=605,e.eparen=9376,e.epsilon=949,e.epsilontonos=941,e.equal=61,e.equalmonospace=65309,e.equalsmall=65126,e.equalsuperior=8316,e.equivalence=8801,e.erbopomofo=12582,e.ercyrillic=1088,e.ereversed=600,e.ereversedcyrillic=1101,e.escyrillic=1089,e.esdescendercyrillic=1195,e.esh=643,e.eshcurl=646,e.eshortdeva=2318,e.eshortvowelsigndeva=2374,e.eshreversedloop=426,e.eshsquatreversed=645,e.esmallhiragana=12359,e.esmallkatakana=12455,e.esmallkatakanahalfwidth=65386,e.estimated=8494,e.esuperior=63212,e.eta=951,e.etarmenian=1384,e.etatonos=942,e.eth=240,e.etilde=7869,e.etildebelow=7707,e.etnahtafoukhhebrew=1425,e.etnahtafoukhlefthebrew=1425,e.etnahtahebrew=1425,e.etnahtalefthebrew=1425,e.eturned=477,e.eukorean=12641,e.euro=8364,e.evowelsignbengali=2503,e.evowelsigndeva=2375,e.evowelsigngujarati=2759,e.exclam=33,e.exclamarmenian=1372,e.exclamdbl=8252,e.exclamdown=161,e.exclamdownsmall=63393,e.exclammonospace=65281,e.exclamsmall=63265,e.existential=8707,e.ezh=658,e.ezhcaron=495,e.ezhcurl=659,e.ezhreversed=441,e.ezhtail=442,e.f=102,e.fadeva=2398,e.fagurmukhi=2654,e.fahrenheit=8457,e.fathaarabic=1614,e.fathalowarabic=1614,e.fathatanarabic=1611,e.fbopomofo=12552,e.fcircle=9429,e.fdotaccent=7711,e.feharabic=1601,e.feharmenian=1414,e.fehfinalarabic=65234,e.fehinitialarabic=65235,e.fehmedialarabic=65236,e.feicoptic=997,e.female=9792,e.ff=64256,e.f_f=64256,e.ffi=64259,e.f_f_i=64259,e.ffl=64260,e.f_f_l=64260,e.fi=64257,e.f_i=64257,e.fifteencircle=9326,e.fifteenparen=9346,e.fifteenperiod=9366,e.figuredash=8210,e.filledbox=9632,e.filledrect=9644,e.finalkaf=1498,e.finalkafdagesh=64314,e.finalkafdageshhebrew=64314,e.finalkafhebrew=1498,e.finalmem=1501,e.finalmemhebrew=1501,e.finalnun=1503,e.finalnunhebrew=1503,e.finalpe=1507,e.finalpehebrew=1507,e.finaltsadi=1509,e.finaltsadihebrew=1509,e.firsttonechinese=713,e.fisheye=9673,e.fitacyrillic=1139,e.five=53,e.fivearabic=1637,e.fivebengali=2539,e.fivecircle=9316,e.fivecircleinversesansserif=10126,e.fivedeva=2411,e.fiveeighths=8541,e.fivegujarati=2795,e.fivegurmukhi=2667,e.fivehackarabic=1637,e.fivehangzhou=12325,e.fiveideographicparen=12836,e.fiveinferior=8325,e.fivemonospace=65301,e.fiveoldstyle=63285,e.fiveparen=9336,e.fiveperiod=9356,e.fivepersian=1781,e.fiveroman=8564,e.fivesuperior=8309,e.fivethai=3669,e.fl=64258,e.f_l=64258,e.florin=402,e.fmonospace=65350,e.fmsquare=13209,e.fofanthai=3615,e.fofathai=3613,e.fongmanthai=3663,e.forall=8704,e.four=52,e.fourarabic=1636,e.fourbengali=2538,e.fourcircle=9315,e.fourcircleinversesansserif=10125,e.fourdeva=2410,e.fourgujarati=2794,e.fourgurmukhi=2666,e.fourhackarabic=1636,e.fourhangzhou=12324,e.fourideographicparen=12835,e.fourinferior=8324,e.fourmonospace=65300,e.fournumeratorbengali=2551,e.fouroldstyle=63284,e.fourparen=9335,e.fourperiod=9355,e.fourpersian=1780,e.fourroman=8563,e.foursuperior=8308,e.fourteencircle=9325,e.fourteenparen=9345,e.fourteenperiod=9365,e.fourthai=3668,e.fourthtonechinese=715,e.fparen=9377,e.fraction=8260,e.franc=8355,e.g=103,e.gabengali=2455,e.gacute=501,e.gadeva=2327,e.gafarabic=1711,e.gaffinalarabic=64403,e.gafinitialarabic=64404,e.gafmedialarabic=64405,e.gagujarati=2711,e.gagurmukhi=2583,e.gahiragana=12364,e.gakatakana=12460,e.gamma=947,e.gammalatinsmall=611,e.gammasuperior=736,e.gangiacoptic=1003,e.gbopomofo=12557,e.gbreve=287,e.gcaron=487,e.gcedilla=291,e.gcircle=9430,e.gcircumflex=285,e.gcommaaccent=291,e.gdot=289,e.gdotaccent=289,e.gecyrillic=1075,e.gehiragana=12370,e.gekatakana=12466,e.geometricallyequal=8785,e.gereshaccenthebrew=1436,e.gereshhebrew=1523,e.gereshmuqdamhebrew=1437,e.germandbls=223,e.gershayimaccenthebrew=1438,e.gershayimhebrew=1524,e.getamark=12307,e.ghabengali=2456,e.ghadarmenian=1394,e.ghadeva=2328,e.ghagujarati=2712,e.ghagurmukhi=2584,e.ghainarabic=1594,e.ghainfinalarabic=65230,e.ghaininitialarabic=65231,e.ghainmedialarabic=65232,e.ghemiddlehookcyrillic=1173,e.ghestrokecyrillic=1171,e.gheupturncyrillic=1169,e.ghhadeva=2394,e.ghhagurmukhi=2650,e.ghook=608,e.ghzsquare=13203,e.gihiragana=12366,e.gikatakana=12462,e.gimarmenian=1379,e.gimel=1490,e.gimeldagesh=64306,e.gimeldageshhebrew=64306,e.gimelhebrew=1490,e.gjecyrillic=1107,e.glottalinvertedstroke=446,e.glottalstop=660,e.glottalstopinverted=662,e.glottalstopmod=704,e.glottalstopreversed=661,e.glottalstopreversedmod=705,e.glottalstopreversedsuperior=740,e.glottalstopstroke=673,e.glottalstopstrokereversed=674,e.gmacron=7713,e.gmonospace=65351,e.gohiragana=12372,e.gokatakana=12468,e.gparen=9378,e.gpasquare=13228,e.gradient=8711,e.grave=96,e.gravebelowcmb=790,e.gravecmb=768,e.gravecomb=768,e.gravedeva=2387,e.gravelowmod=718,e.gravemonospace=65344,e.gravetonecmb=832,e.greater=62,e.greaterequal=8805,e.greaterequalorless=8923,e.greatermonospace=65310,e.greaterorequivalent=8819,e.greaterorless=8823,e.greateroverequal=8807,e.greatersmall=65125,e.gscript=609,e.gstroke=485,e.guhiragana=12368,e.guillemotleft=171,e.guillemotright=187,e.guilsinglleft=8249,e.guilsinglright=8250,e.gukatakana=12464,e.guramusquare=13080,e.gysquare=13257,e.h=104,e.haabkhasiancyrillic=1193,e.haaltonearabic=1729,e.habengali=2489,e.hadescendercyrillic=1203,e.hadeva=2361,e.hagujarati=2745,e.hagurmukhi=2617,e.haharabic=1581,e.hahfinalarabic=65186,e.hahinitialarabic=65187,e.hahiragana=12399,e.hahmedialarabic=65188,e.haitusquare=13098,e.hakatakana=12495,e.hakatakanahalfwidth=65418,e.halantgurmukhi=2637,e.hamzaarabic=1569,e.hamzalowarabic=1569,e.hangulfiller=12644,e.hardsigncyrillic=1098,e.harpoonleftbarbup=8636,e.harpoonrightbarbup=8640,e.hasquare=13258,e.hatafpatah=1458,e.hatafpatah16=1458,e.hatafpatah23=1458,e.hatafpatah2f=1458,e.hatafpatahhebrew=1458,e.hatafpatahnarrowhebrew=1458,e.hatafpatahquarterhebrew=1458,e.hatafpatahwidehebrew=1458,e.hatafqamats=1459,e.hatafqamats1b=1459,e.hatafqamats28=1459,e.hatafqamats34=1459,e.hatafqamatshebrew=1459,e.hatafqamatsnarrowhebrew=1459,e.hatafqamatsquarterhebrew=1459,e.hatafqamatswidehebrew=1459,e.hatafsegol=1457,e.hatafsegol17=1457,e.hatafsegol24=1457,e.hatafsegol30=1457,e.hatafsegolhebrew=1457,e.hatafsegolnarrowhebrew=1457,e.hatafsegolquarterhebrew=1457,e.hatafsegolwidehebrew=1457,e.hbar=295,e.hbopomofo=12559,e.hbrevebelow=7723,e.hcedilla=7721,e.hcircle=9431,e.hcircumflex=293,e.hdieresis=7719,e.hdotaccent=7715,e.hdotbelow=7717,e.he=1492,e.heart=9829,e.heartsuitblack=9829,e.heartsuitwhite=9825,e.hedagesh=64308,e.hedageshhebrew=64308,e.hehaltonearabic=1729,e.heharabic=1607,e.hehebrew=1492,e.hehfinalaltonearabic=64423,e.hehfinalalttwoarabic=65258,e.hehfinalarabic=65258,e.hehhamzaabovefinalarabic=64421,e.hehhamzaaboveisolatedarabic=64420,e.hehinitialaltonearabic=64424,e.hehinitialarabic=65259,e.hehiragana=12408,e.hehmedialaltonearabic=64425,e.hehmedialarabic=65260,e.heiseierasquare=13179,e.hekatakana=12504,e.hekatakanahalfwidth=65421,e.hekutaarusquare=13110,e.henghook=615,e.herutusquare=13113,e.het=1495,e.hethebrew=1495,e.hhook=614,e.hhooksuperior=689,e.hieuhacirclekorean=12923,e.hieuhaparenkorean=12827,e.hieuhcirclekorean=12909,e.hieuhkorean=12622,e.hieuhparenkorean=12813,e.hihiragana=12402,e.hikatakana=12498,e.hikatakanahalfwidth=65419,e.hiriq=1460,e.hiriq14=1460,e.hiriq21=1460,e.hiriq2d=1460,e.hiriqhebrew=1460,e.hiriqnarrowhebrew=1460,e.hiriqquarterhebrew=1460,e.hiriqwidehebrew=1460,e.hlinebelow=7830,e.hmonospace=65352,e.hoarmenian=1392,e.hohipthai=3627,e.hohiragana=12411,e.hokatakana=12507,e.hokatakanahalfwidth=65422,e.holam=1465,e.holam19=1465,e.holam26=1465,e.holam32=1465,e.holamhebrew=1465,e.holamnarrowhebrew=1465,e.holamquarterhebrew=1465,e.holamwidehebrew=1465,e.honokhukthai=3630,e.hookabovecomb=777,e.hookcmb=777,e.hookpalatalizedbelowcmb=801,e.hookretroflexbelowcmb=802,e.hoonsquare=13122,e.horicoptic=1001,e.horizontalbar=8213,e.horncmb=795,e.hotsprings=9832,e.house=8962,e.hparen=9379,e.hsuperior=688,e.hturned=613,e.huhiragana=12405,e.huiitosquare=13107,e.hukatakana=12501,e.hukatakanahalfwidth=65420,e.hungarumlaut=733,e.hungarumlautcmb=779,e.hv=405,e.hyphen=45,e.hypheninferior=63205,e.hyphenmonospace=65293,e.hyphensmall=65123,e.hyphensuperior=63206,e.hyphentwo=8208,e.i=105,e.iacute=237,e.iacyrillic=1103,e.ibengali=2439,e.ibopomofo=12583,e.ibreve=301,e.icaron=464,e.icircle=9432,e.icircumflex=238,e.icyrillic=1110,e.idblgrave=521,e.ideographearthcircle=12943,e.ideographfirecircle=12939,e.ideographicallianceparen=12863,e.ideographiccallparen=12858,e.ideographiccentrecircle=12965,e.ideographicclose=12294,e.ideographiccomma=12289,e.ideographiccommaleft=65380,e.ideographiccongratulationparen=12855,e.ideographiccorrectcircle=12963,e.ideographicearthparen=12847,e.ideographicenterpriseparen=12861,e.ideographicexcellentcircle=12957,e.ideographicfestivalparen=12864,e.ideographicfinancialcircle=12950,e.ideographicfinancialparen=12854,e.ideographicfireparen=12843,e.ideographichaveparen=12850,e.ideographichighcircle=12964,e.ideographiciterationmark=12293,e.ideographiclaborcircle=12952,e.ideographiclaborparen=12856,e.ideographicleftcircle=12967,e.ideographiclowcircle=12966,e.ideographicmedicinecircle=12969,e.ideographicmetalparen=12846,e.ideographicmoonparen=12842,e.ideographicnameparen=12852,e.ideographicperiod=12290,e.ideographicprintcircle=12958,e.ideographicreachparen=12867,e.ideographicrepresentparen=12857,e.ideographicresourceparen=12862,e.ideographicrightcircle=12968,e.ideographicsecretcircle=12953,e.ideographicselfparen=12866,e.ideographicsocietyparen=12851,e.ideographicspace=12288,e.ideographicspecialparen=12853,e.ideographicstockparen=12849,e.ideographicstudyparen=12859,e.ideographicsunparen=12848,e.ideographicsuperviseparen=12860,e.ideographicwaterparen=12844,e.ideographicwoodparen=12845,e.ideographiczero=12295,e.ideographmetalcircle=12942,e.ideographmooncircle=12938,e.ideographnamecircle=12948,e.ideographsuncircle=12944,e.ideographwatercircle=12940,e.ideographwoodcircle=12941,e.ideva=2311,e.idieresis=239,e.idieresisacute=7727,e.idieresiscyrillic=1253,e.idotbelow=7883,e.iebrevecyrillic=1239,e.iecyrillic=1077,e.ieungacirclekorean=12917,e.ieungaparenkorean=12821,e.ieungcirclekorean=12903,e.ieungkorean=12615,e.ieungparenkorean=12807,e.igrave=236,e.igujarati=2695,e.igurmukhi=2567,e.ihiragana=12356,e.ihookabove=7881,e.iibengali=2440,e.iicyrillic=1080,e.iideva=2312,e.iigujarati=2696,e.iigurmukhi=2568,e.iimatragurmukhi=2624,e.iinvertedbreve=523,e.iishortcyrillic=1081,e.iivowelsignbengali=2496,e.iivowelsigndeva=2368,e.iivowelsigngujarati=2752,e.ij=307,e.ikatakana=12452,e.ikatakanahalfwidth=65394,e.ikorean=12643,e.ilde=732,e.iluyhebrew=1452,e.imacron=299,e.imacroncyrillic=1251,e.imageorapproximatelyequal=8787,e.imatragurmukhi=2623,e.imonospace=65353,e.increment=8710,e.infinity=8734,e.iniarmenian=1387,e.integral=8747,e.integralbottom=8993,e.integralbt=8993,e.integralex=63733,e.integraltop=8992,e.integraltp=8992,e.intersection=8745,e.intisquare=13061,e.invbullet=9688,e.invcircle=9689,e.invsmileface=9787,e.iocyrillic=1105,e.iogonek=303,e.iota=953,e.iotadieresis=970,e.iotadieresistonos=912,e.iotalatin=617,e.iotatonos=943,e.iparen=9380,e.irigurmukhi=2674,e.ismallhiragana=12355,e.ismallkatakana=12451,e.ismallkatakanahalfwidth=65384,e.issharbengali=2554,e.istroke=616,e.isuperior=63213,e.iterationhiragana=12445,e.iterationkatakana=12541,e.itilde=297,e.itildebelow=7725,e.iubopomofo=12585,e.iucyrillic=1102,e.ivowelsignbengali=2495,e.ivowelsigndeva=2367,e.ivowelsigngujarati=2751,e.izhitsacyrillic=1141,e.izhitsadblgravecyrillic=1143,e.j=106,e.jaarmenian=1393,e.jabengali=2460,e.jadeva=2332,e.jagujarati=2716,e.jagurmukhi=2588,e.jbopomofo=12560,e.jcaron=496,e.jcircle=9433,e.jcircumflex=309,e.jcrossedtail=669,e.jdotlessstroke=607,e.jecyrillic=1112,e.jeemarabic=1580,e.jeemfinalarabic=65182,e.jeeminitialarabic=65183,e.jeemmedialarabic=65184,e.jeharabic=1688,e.jehfinalarabic=64395,e.jhabengali=2461,e.jhadeva=2333,e.jhagujarati=2717,e.jhagurmukhi=2589,e.jheharmenian=1403,e.jis=12292,e.jmonospace=65354,e.jparen=9381,e.jsuperior=690,e.k=107,e.kabashkircyrillic=1185,e.kabengali=2453,e.kacute=7729,e.kacyrillic=1082,e.kadescendercyrillic=1179,e.kadeva=2325,e.kaf=1499,e.kafarabic=1603,e.kafdagesh=64315,e.kafdageshhebrew=64315,e.kaffinalarabic=65242,e.kafhebrew=1499,e.kafinitialarabic=65243,e.kafmedialarabic=65244,e.kafrafehebrew=64333,e.kagujarati=2709,e.kagurmukhi=2581,e.kahiragana=12363,e.kahookcyrillic=1220,e.kakatakana=12459,e.kakatakanahalfwidth=65398,e.kappa=954,e.kappasymbolgreek=1008,e.kapyeounmieumkorean=12657,e.kapyeounphieuphkorean=12676,e.kapyeounpieupkorean=12664,e.kapyeounssangpieupkorean=12665,e.karoriisquare=13069,e.kashidaautoarabic=1600,e.kashidaautonosidebearingarabic=1600,e.kasmallkatakana=12533,e.kasquare=13188,e.kasraarabic=1616,e.kasratanarabic=1613,e.kastrokecyrillic=1183,e.katahiraprolongmarkhalfwidth=65392,e.kaverticalstrokecyrillic=1181,e.kbopomofo=12558,e.kcalsquare=13193,e.kcaron=489,e.kcedilla=311,e.kcircle=9434,e.kcommaaccent=311,e.kdotbelow=7731,e.keharmenian=1412,e.kehiragana=12369,e.kekatakana=12465,e.kekatakanahalfwidth=65401,e.kenarmenian=1391,e.kesmallkatakana=12534,e.kgreenlandic=312,e.khabengali=2454,e.khacyrillic=1093,e.khadeva=2326,e.khagujarati=2710,e.khagurmukhi=2582,e.khaharabic=1582,e.khahfinalarabic=65190,e.khahinitialarabic=65191,e.khahmedialarabic=65192,e.kheicoptic=999,e.khhadeva=2393,e.khhagurmukhi=2649,e.khieukhacirclekorean=12920,e.khieukhaparenkorean=12824,e.khieukhcirclekorean=12906,e.khieukhkorean=12619,e.khieukhparenkorean=12810,e.khokhaithai=3586,e.khokhonthai=3589,e.khokhuatthai=3587,e.khokhwaithai=3588,e.khomutthai=3675,e.khook=409,e.khorakhangthai=3590,e.khzsquare=13201,e.kihiragana=12365,e.kikatakana=12461,e.kikatakanahalfwidth=65399,e.kiroguramusquare=13077,e.kiromeetorusquare=13078,e.kirosquare=13076,e.kiyeokacirclekorean=12910,e.kiyeokaparenkorean=12814,e.kiyeokcirclekorean=12896,e.kiyeokkorean=12593,e.kiyeokparenkorean=12800,e.kiyeoksioskorean=12595;e.kjecyrillic=1116,e.klinebelow=7733,e.klsquare=13208,e.kmcubedsquare=13222,e.kmonospace=65355,e.kmsquaredsquare=13218,e.kohiragana=12371,e.kohmsquare=13248,e.kokaithai=3585,e.kokatakana=12467,e.kokatakanahalfwidth=65402,e.kooposquare=13086,e.koppacyrillic=1153,e.koreanstandardsymbol=12927,e.koroniscmb=835,e.kparen=9382,e.kpasquare=13226,e.ksicyrillic=1135,e.ktsquare=13263,e.kturned=670,e.kuhiragana=12367,e.kukatakana=12463,e.kukatakanahalfwidth=65400,e.kvsquare=13240,e.kwsquare=13246,e.l=108,e.labengali=2482,e.lacute=314,e.ladeva=2354,e.lagujarati=2738,e.lagurmukhi=2610,e.lakkhangyaothai=3653,e.lamaleffinalarabic=65276,e.lamalefhamzaabovefinalarabic=65272,e.lamalefhamzaaboveisolatedarabic=65271,e.lamalefhamzabelowfinalarabic=65274,e.lamalefhamzabelowisolatedarabic=65273,e.lamalefisolatedarabic=65275,e.lamalefmaddaabovefinalarabic=65270,e.lamalefmaddaaboveisolatedarabic=65269,e.lamarabic=1604,e.lambda=955,e.lambdastroke=411,e.lamed=1500,e.lameddagesh=64316,e.lameddageshhebrew=64316,e.lamedhebrew=1500,e.lamfinalarabic=65246,e.lamhahinitialarabic=64714,e.laminitialarabic=65247,e.lamjeeminitialarabic=64713,e.lamkhahinitialarabic=64715,e.lamlamhehisolatedarabic=65010,e.lammedialarabic=65248,e.lammeemhahinitialarabic=64904,e.lammeeminitialarabic=64716,e.largecircle=9711,e.lbar=410,e.lbelt=620,e.lbopomofo=12556,e.lcaron=318,e.lcedilla=316,e.lcircle=9435,e.lcircumflexbelow=7741,e.lcommaaccent=316,e.ldot=320,e.ldotaccent=320,e.ldotbelow=7735,e.ldotbelowmacron=7737,e.leftangleabovecmb=794,e.lefttackbelowcmb=792,e.less=60,e.lessequal=8804,e.lessequalorgreater=8922,e.lessmonospace=65308,e.lessorequivalent=8818,e.lessorgreater=8822,e.lessoverequal=8806,e.lesssmall=65124,e.lezh=622,e.lfblock=9612,e.lhookretroflex=621,e.lira=8356,e.liwnarmenian=1388,e.lj=457,e.ljecyrillic=1113,e.ll=63168,e.lladeva=2355,e.llagujarati=2739,e.llinebelow=7739,e.llladeva=2356,e.llvocalicbengali=2529,e.llvocalicdeva=2401,e.llvocalicvowelsignbengali=2531,e.llvocalicvowelsigndeva=2403,e.lmiddletilde=619,e.lmonospace=65356,e.lmsquare=13264,e.lochulathai=3628,e.logicaland=8743,e.logicalnot=172,e.logicalnotreversed=8976,e.logicalor=8744,e.lolingthai=3621,e.longs=383,e.lowlinecenterline=65102,e.lowlinecmb=818,e.lowlinedashed=65101,e.lozenge=9674,e.lparen=9383,e.lslash=322,e.lsquare=8467,e.lsuperior=63214,e.ltshade=9617,e.luthai=3622,e.lvocalicbengali=2444,e.lvocalicdeva=2316,e.lvocalicvowelsignbengali=2530,e.lvocalicvowelsigndeva=2402,e.lxsquare=13267,e.m=109,e.mabengali=2478,e.macron=175,e.macronbelowcmb=817,e.macroncmb=772,e.macronlowmod=717,e.macronmonospace=65507,e.macute=7743,e.madeva=2350,e.magujarati=2734,e.magurmukhi=2606,e.mahapakhhebrew=1444,e.mahapakhlefthebrew=1444,e.mahiragana=12414,e.maichattawalowleftthai=63637,e.maichattawalowrightthai=63636,e.maichattawathai=3659,e.maichattawaupperleftthai=63635,e.maieklowleftthai=63628,e.maieklowrightthai=63627,e.maiekthai=3656,e.maiekupperleftthai=63626,e.maihanakatleftthai=63620,e.maihanakatthai=3633,e.maitaikhuleftthai=63625,e.maitaikhuthai=3655,e.maitholowleftthai=63631,e.maitholowrightthai=63630,e.maithothai=3657,e.maithoupperleftthai=63629,e.maitrilowleftthai=63634,e.maitrilowrightthai=63633,e.maitrithai=3658,e.maitriupperleftthai=63632,e.maiyamokthai=3654,e.makatakana=12510,e.makatakanahalfwidth=65423,e.male=9794,e.mansyonsquare=13127,e.maqafhebrew=1470,e.mars=9794,e.masoracirclehebrew=1455,e.masquare=13187,e.mbopomofo=12551,e.mbsquare=13268,e.mcircle=9436,e.mcubedsquare=13221,e.mdotaccent=7745,e.mdotbelow=7747,e.meemarabic=1605,e.meemfinalarabic=65250,e.meeminitialarabic=65251,e.meemmedialarabic=65252,e.meemmeeminitialarabic=64721,e.meemmeemisolatedarabic=64584,e.meetorusquare=13133,e.mehiragana=12417,e.meizierasquare=13182,e.mekatakana=12513,e.mekatakanahalfwidth=65426,e.mem=1502,e.memdagesh=64318,e.memdageshhebrew=64318,e.memhebrew=1502,e.menarmenian=1396,e.merkhahebrew=1445,e.merkhakefulahebrew=1446,e.merkhakefulalefthebrew=1446,e.merkhalefthebrew=1445,e.mhook=625,e.mhzsquare=13202,e.middledotkatakanahalfwidth=65381,e.middot=183,e.mieumacirclekorean=12914,e.mieumaparenkorean=12818,e.mieumcirclekorean=12900,e.mieumkorean=12609,e.mieumpansioskorean=12656,e.mieumparenkorean=12804,e.mieumpieupkorean=12654,e.mieumsioskorean=12655,e.mihiragana=12415,e.mikatakana=12511,e.mikatakanahalfwidth=65424,e.minus=8722,e.minusbelowcmb=800,e.minuscircle=8854,e.minusmod=727,e.minusplus=8723,e.minute=8242,e.miribaarusquare=13130,e.mirisquare=13129,e.mlonglegturned=624,e.mlsquare=13206,e.mmcubedsquare=13219,e.mmonospace=65357,e.mmsquaredsquare=13215,e.mohiragana=12418,e.mohmsquare=13249,e.mokatakana=12514,e.mokatakanahalfwidth=65427,e.molsquare=13270,e.momathai=3617,e.moverssquare=13223,e.moverssquaredsquare=13224,e.mparen=9384,e.mpasquare=13227,e.mssquare=13235,e.msuperior=63215,e.mturned=623,e.mu=181,e.mu1=181,e.muasquare=13186,e.muchgreater=8811,e.muchless=8810,e.mufsquare=13196,e.mugreek=956,e.mugsquare=13197,e.muhiragana=12416,e.mukatakana=12512,e.mukatakanahalfwidth=65425,e.mulsquare=13205,e.multiply=215,e.mumsquare=13211,e.munahhebrew=1443,e.munahlefthebrew=1443,e.musicalnote=9834,e.musicalnotedbl=9835,e.musicflatsign=9837,e.musicsharpsign=9839,e.mussquare=13234,e.muvsquare=13238,e.muwsquare=13244,e.mvmegasquare=13241,e.mvsquare=13239,e.mwmegasquare=13247,e.mwsquare=13245,e.n=110,e.nabengali=2472,e.nabla=8711,e.nacute=324,e.nadeva=2344,e.nagujarati=2728,e.nagurmukhi=2600,e.nahiragana=12394,e.nakatakana=12490,e.nakatakanahalfwidth=65413,e.napostrophe=329,e.nasquare=13185,e.nbopomofo=12555,e.nbspace=160,e.ncaron=328,e.ncedilla=326,e.ncircle=9437,e.ncircumflexbelow=7755,e.ncommaaccent=326,e.ndotaccent=7749,e.ndotbelow=7751,e.nehiragana=12397,e.nekatakana=12493,e.nekatakanahalfwidth=65416,e.newsheqelsign=8362,e.nfsquare=13195,e.ngabengali=2457,e.ngadeva=2329,e.ngagujarati=2713,e.ngagurmukhi=2585,e.ngonguthai=3591,e.nhiragana=12435,e.nhookleft=626,e.nhookretroflex=627,e.nieunacirclekorean=12911,e.nieunaparenkorean=12815,e.nieuncieuckorean=12597,e.nieuncirclekorean=12897,e.nieunhieuhkorean=12598,e.nieunkorean=12596,e.nieunpansioskorean=12648,e.nieunparenkorean=12801,e.nieunsioskorean=12647,e.nieuntikeutkorean=12646,e.nihiragana=12395,e.nikatakana=12491,e.nikatakanahalfwidth=65414,e.nikhahitleftthai=63641,e.nikhahitthai=3661,e.nine=57,e.ninearabic=1641,e.ninebengali=2543,e.ninecircle=9320,e.ninecircleinversesansserif=10130,e.ninedeva=2415,e.ninegujarati=2799,e.ninegurmukhi=2671,e.ninehackarabic=1641,e.ninehangzhou=12329,e.nineideographicparen=12840,e.nineinferior=8329,e.ninemonospace=65305,e.nineoldstyle=63289,e.nineparen=9340,e.nineperiod=9360,e.ninepersian=1785,e.nineroman=8568,e.ninesuperior=8313,e.nineteencircle=9330,e.nineteenparen=9350,e.nineteenperiod=9370,e.ninethai=3673,e.nj=460,e.njecyrillic=1114,e.nkatakana=12531,e.nkatakanahalfwidth=65437,e.nlegrightlong=414,e.nlinebelow=7753,e.nmonospace=65358,e.nmsquare=13210,e.nnabengali=2467,e.nnadeva=2339,e.nnagujarati=2723,e.nnagurmukhi=2595,e.nnnadeva=2345,e.nohiragana=12398,e.nokatakana=12494,e.nokatakanahalfwidth=65417,e.nonbreakingspace=160,e.nonenthai=3603,e.nonuthai=3609,e.noonarabic=1606,e.noonfinalarabic=65254,e.noonghunnaarabic=1722,e.noonghunnafinalarabic=64415,e.nooninitialarabic=65255,e.noonjeeminitialarabic=64722,e.noonjeemisolatedarabic=64587,e.noonmedialarabic=65256,e.noonmeeminitialarabic=64725,e.noonmeemisolatedarabic=64590,e.noonnoonfinalarabic=64653,e.notcontains=8716,e.notelement=8713,e.notelementof=8713,e.notequal=8800,e.notgreater=8815,e.notgreaternorequal=8817,e.notgreaternorless=8825,e.notidentical=8802,e.notless=8814,e.notlessnorequal=8816,e.notparallel=8742,e.notprecedes=8832,e.notsubset=8836,e.notsucceeds=8833,e.notsuperset=8837,e.nowarmenian=1398,e.nparen=9385,e.nssquare=13233,e.nsuperior=8319,e.ntilde=241,e.nu=957,e.nuhiragana=12396,e.nukatakana=12492,e.nukatakanahalfwidth=65415,e.nuktabengali=2492,e.nuktadeva=2364,e.nuktagujarati=2748,e.nuktagurmukhi=2620,e.numbersign=35,e.numbersignmonospace=65283,e.numbersignsmall=65119,e.numeralsigngreek=884,e.numeralsignlowergreek=885,e.numero=8470,e.nun=1504,e.nundagesh=64320,e.nundageshhebrew=64320,e.nunhebrew=1504,e.nvsquare=13237,e.nwsquare=13243,e.nyabengali=2462,e.nyadeva=2334,e.nyagujarati=2718,e.nyagurmukhi=2590,e.o=111,e.oacute=243,e.oangthai=3629,e.obarred=629,e.obarredcyrillic=1257,e.obarreddieresiscyrillic=1259,e.obengali=2451,e.obopomofo=12571,e.obreve=335,e.ocandradeva=2321,e.ocandragujarati=2705,e.ocandravowelsigndeva=2377,e.ocandravowelsigngujarati=2761,e.ocaron=466,e.ocircle=9438,e.ocircumflex=244,e.ocircumflexacute=7889,e.ocircumflexdotbelow=7897,e.ocircumflexgrave=7891,e.ocircumflexhookabove=7893,e.ocircumflextilde=7895,e.ocyrillic=1086,e.odblacute=337,e.odblgrave=525,e.odeva=2323,e.odieresis=246,e.odieresiscyrillic=1255,e.odotbelow=7885,e.oe=339,e.oekorean=12634,e.ogonek=731,e.ogonekcmb=808,e.ograve=242,e.ogujarati=2707,e.oharmenian=1413,e.ohiragana=12362,e.ohookabove=7887,e.ohorn=417,e.ohornacute=7899,e.ohorndotbelow=7907,e.ohorngrave=7901,e.ohornhookabove=7903,e.ohorntilde=7905,e.ohungarumlaut=337,e.oi=419,e.oinvertedbreve=527,e.okatakana=12458,e.okatakanahalfwidth=65397,e.okorean=12631,e.olehebrew=1451,e.omacron=333,e.omacronacute=7763,e.omacrongrave=7761,e.omdeva=2384,e.omega=969,e.omega1=982,e.omegacyrillic=1121,e.omegalatinclosed=631,e.omegaroundcyrillic=1147,e.omegatitlocyrillic=1149,e.omegatonos=974,e.omgujarati=2768,e.omicron=959,e.omicrontonos=972,e.omonospace=65359,e.one=49,e.onearabic=1633,e.onebengali=2535,e.onecircle=9312,e.onecircleinversesansserif=10122,e.onedeva=2407,e.onedotenleader=8228,e.oneeighth=8539,e.onefitted=63196,e.onegujarati=2791,e.onegurmukhi=2663,e.onehackarabic=1633,e.onehalf=189,e.onehangzhou=12321,e.oneideographicparen=12832,e.oneinferior=8321,e.onemonospace=65297,e.onenumeratorbengali=2548,e.oneoldstyle=63281,e.oneparen=9332,e.oneperiod=9352,e.onepersian=1777,e.onequarter=188,e.oneroman=8560,e.onesuperior=185,e.onethai=3665,e.onethird=8531,e.oogonek=491,e.oogonekmacron=493,e.oogurmukhi=2579,e.oomatragurmukhi=2635,e.oopen=596,e.oparen=9386,e.openbullet=9702,e.option=8997,e.ordfeminine=170,e.ordmasculine=186,e.orthogonal=8735,e.oshortdeva=2322,e.oshortvowelsigndeva=2378,e.oslash=248,e.oslashacute=511,e.osmallhiragana=12361,e.osmallkatakana=12457,e.osmallkatakanahalfwidth=65387,e.ostrokeacute=511,e.osuperior=63216,e.otcyrillic=1151,e.otilde=245,e.otildeacute=7757,e.otildedieresis=7759,e.oubopomofo=12577,e.overline=8254,e.overlinecenterline=65098,e.overlinecmb=773,e.overlinedashed=65097,e.overlinedblwavy=65100,e.overlinewavy=65099,e.overscore=175,e.ovowelsignbengali=2507,e.ovowelsigndeva=2379,e.ovowelsigngujarati=2763,e.p=112,e.paampssquare=13184,e.paasentosquare=13099,e.pabengali=2474,e.pacute=7765,e.padeva=2346,e.pagedown=8671,e.pageup=8670,e.pagujarati=2730,e.pagurmukhi=2602,e.pahiragana=12401,e.paiyannoithai=3631,e.pakatakana=12497,e.palatalizationcyrilliccmb=1156,e.palochkacyrillic=1216,e.pansioskorean=12671,e.paragraph=182,e.parallel=8741,e.parenleft=40,e.parenleftaltonearabic=64830,e.parenleftbt=63725,e.parenleftex=63724,e.parenleftinferior=8333,e.parenleftmonospace=65288,e.parenleftsmall=65113,e.parenleftsuperior=8317,e.parenlefttp=63723,e.parenleftvertical=65077,e.parenright=41,e.parenrightaltonearabic=64831,e.parenrightbt=63736,e.parenrightex=63735,e.parenrightinferior=8334,e.parenrightmonospace=65289,e.parenrightsmall=65114,e.parenrightsuperior=8318,e.parenrighttp=63734,e.parenrightvertical=65078,e.partialdiff=8706,e.paseqhebrew=1472,e.pashtahebrew=1433,e.pasquare=13225,e.patah=1463,e.patah11=1463,e.patah1d=1463,e.patah2a=1463,e.patahhebrew=1463,e.patahnarrowhebrew=1463,e.patahquarterhebrew=1463,e.patahwidehebrew=1463,e.pazerhebrew=1441,e.pbopomofo=12550,e.pcircle=9439,e.pdotaccent=7767,e.pe=1508,e.pecyrillic=1087,e.pedagesh=64324,e.pedageshhebrew=64324,e.peezisquare=13115,e.pefinaldageshhebrew=64323,e.peharabic=1662,e.peharmenian=1402,e.pehebrew=1508,e.pehfinalarabic=64343,e.pehinitialarabic=64344,e.pehiragana=12410,e.pehmedialarabic=64345,e.pekatakana=12506,e.pemiddlehookcyrillic=1191,e.perafehebrew=64334,e.percent=37,e.percentarabic=1642,e.percentmonospace=65285,e.percentsmall=65130,e.period=46,e.periodarmenian=1417,e.periodcentered=183,e.periodhalfwidth=65377,e.periodinferior=63207,e.periodmonospace=65294,e.periodsmall=65106,e.periodsuperior=63208,e.perispomenigreekcmb=834,e.perpendicular=8869,e.perthousand=8240,e.peseta=8359,e.pfsquare=13194,e.phabengali=2475,e.phadeva=2347,e.phagujarati=2731,e.phagurmukhi=2603,e.phi=966,e.phi1=981,e.phieuphacirclekorean=12922,e.phieuphaparenkorean=12826,e.phieuphcirclekorean=12908,e.phieuphkorean=12621,e.phieuphparenkorean=12812,e.philatin=632,e.phinthuthai=3642,e.phisymbolgreek=981,e.phook=421,e.phophanthai=3614,e.phophungthai=3612,e.phosamphaothai=3616,e.pi=960,e.pieupacirclekorean=12915,e.pieupaparenkorean=12819,e.pieupcieuckorean=12662,e.pieupcirclekorean=12901,e.pieupkiyeokkorean=12658,e.pieupkorean=12610,e.pieupparenkorean=12805,e.pieupsioskiyeokkorean=12660,e.pieupsioskorean=12612,e.pieupsiostikeutkorean=12661,e.pieupthieuthkorean=12663,e.pieuptikeutkorean=12659,e.pihiragana=12404,e.pikatakana=12500,e.pisymbolgreek=982,e.piwrarmenian=1411,e.planckover2pi=8463,e.planckover2pi1=8463,e.plus=43,e.plusbelowcmb=799,e.pluscircle=8853,e.plusminus=177,e.plusmod=726,e.plusmonospace=65291,e.plussmall=65122,e.plussuperior=8314,e.pmonospace=65360,e.pmsquare=13272,e.pohiragana=12413,e.pointingindexdownwhite=9759,e.pointingindexleftwhite=9756,e.pointingindexrightwhite=9758,e.pointingindexupwhite=9757,e.pokatakana=12509,e.poplathai=3611,e.postalmark=12306,e.postalmarkface=12320,e.pparen=9387,e.precedes=8826,e.prescription=8478,e.primemod=697,e.primereversed=8245,e.product=8719,e.projective=8965,e.prolongedkana=12540,e.propellor=8984,e.propersubset=8834,e.propersuperset=8835,e.proportion=8759,e.proportional=8733,e.psi=968,e.psicyrillic=1137,e.psilipneumatacyrilliccmb=1158,e.pssquare=13232,e.puhiragana=12407,e.pukatakana=12503,e.pvsquare=13236,e.pwsquare=13242,e.q=113,e.qadeva=2392,e.qadmahebrew=1448,e.qafarabic=1602,e.qaffinalarabic=65238,e.qafinitialarabic=65239,e.qafmedialarabic=65240,e.qamats=1464,e.qamats10=1464,e.qamats1a=1464,e.qamats1c=1464,e.qamats27=1464,e.qamats29=1464,e.qamats33=1464,e.qamatsde=1464,e.qamatshebrew=1464,e.qamatsnarrowhebrew=1464,e.qamatsqatanhebrew=1464,e.qamatsqatannarrowhebrew=1464,e.qamatsqatanquarterhebrew=1464,e.qamatsqatanwidehebrew=1464,e.qamatsquarterhebrew=1464,e.qamatswidehebrew=1464,e.qarneyparahebrew=1439,e.qbopomofo=12561,e.qcircle=9440,e.qhook=672,e.qmonospace=65361,e.qof=1511,e.qofdagesh=64327,e.qofdageshhebrew=64327,e.qofhebrew=1511,e.qparen=9388,e.quarternote=9833,e.qubuts=1467,e.qubuts18=1467,e.qubuts25=1467,e.qubuts31=1467,e.qubutshebrew=1467,e.qubutsnarrowhebrew=1467,e.qubutsquarterhebrew=1467,e.qubutswidehebrew=1467,e.question=63,e.questionarabic=1567,e.questionarmenian=1374,e.questiondown=191,e.questiondownsmall=63423,e.questiongreek=894,e.questionmonospace=65311,e.questionsmall=63295,e.quotedbl=34,e.quotedblbase=8222,e.quotedblleft=8220,e.quotedblmonospace=65282,e.quotedblprime=12318,e.quotedblprimereversed=12317,e.quotedblright=8221,e.quoteleft=8216,e.quoteleftreversed=8219,e.quotereversed=8219,e.quoteright=8217,e.quoterightn=329,e.quotesinglbase=8218,e.quotesingle=39,e.quotesinglemonospace=65287,e.r=114,e.raarmenian=1404,e.rabengali=2480,e.racute=341,e.radeva=2352,e.radical=8730,e.radicalex=63717,e.radoverssquare=13230,e.radoverssquaredsquare=13231,e.radsquare=13229,e.rafe=1471,e.rafehebrew=1471,e.ragujarati=2736,e.ragurmukhi=2608,e.rahiragana=12425,e.rakatakana=12521,e.rakatakanahalfwidth=65431,e.ralowerdiagonalbengali=2545,e.ramiddlediagonalbengali=2544,e.ramshorn=612,e.ratio=8758,e.rbopomofo=12566,e.rcaron=345,e.rcedilla=343,e.rcircle=9441,e.rcommaaccent=343,e.rdblgrave=529,e.rdotaccent=7769,e.rdotbelow=7771,e.rdotbelowmacron=7773,e.referencemark=8251,e.reflexsubset=8838,e.reflexsuperset=8839,e.registered=174,e.registersans=63720,e.registerserif=63194,e.reharabic=1585,e.reharmenian=1408,e.rehfinalarabic=65198,e.rehiragana=12428,e.rekatakana=12524;e.rekatakanahalfwidth=65434,e.resh=1512,e.reshdageshhebrew=64328,e.reshhebrew=1512,e.reversedtilde=8765,e.reviahebrew=1431,e.reviamugrashhebrew=1431,e.revlogicalnot=8976,e.rfishhook=638,e.rfishhookreversed=639,e.rhabengali=2525,e.rhadeva=2397,e.rho=961,e.rhook=637,e.rhookturned=635,e.rhookturnedsuperior=693,e.rhosymbolgreek=1009,e.rhotichookmod=734,e.rieulacirclekorean=12913,e.rieulaparenkorean=12817,e.rieulcirclekorean=12899,e.rieulhieuhkorean=12608,e.rieulkiyeokkorean=12602,e.rieulkiyeoksioskorean=12649,e.rieulkorean=12601,e.rieulmieumkorean=12603,e.rieulpansioskorean=12652,e.rieulparenkorean=12803,e.rieulphieuphkorean=12607,e.rieulpieupkorean=12604,e.rieulpieupsioskorean=12651,e.rieulsioskorean=12605,e.rieulthieuthkorean=12606,e.rieultikeutkorean=12650,e.rieulyeorinhieuhkorean=12653,e.rightangle=8735,e.righttackbelowcmb=793,e.righttriangle=8895,e.rihiragana=12426,e.rikatakana=12522,e.rikatakanahalfwidth=65432,e.ring=730,e.ringbelowcmb=805,e.ringcmb=778,e.ringhalfleft=703,e.ringhalfleftarmenian=1369,e.ringhalfleftbelowcmb=796,e.ringhalfleftcentered=723,e.ringhalfright=702,e.ringhalfrightbelowcmb=825,e.ringhalfrightcentered=722,e.rinvertedbreve=531,e.rittorusquare=13137,e.rlinebelow=7775,e.rlongleg=636,e.rlonglegturned=634,e.rmonospace=65362,e.rohiragana=12429,e.rokatakana=12525,e.rokatakanahalfwidth=65435,e.roruathai=3619,e.rparen=9389,e.rrabengali=2524,e.rradeva=2353,e.rragurmukhi=2652,e.rreharabic=1681,e.rrehfinalarabic=64397,e.rrvocalicbengali=2528,e.rrvocalicdeva=2400,e.rrvocalicgujarati=2784,e.rrvocalicvowelsignbengali=2500,e.rrvocalicvowelsigndeva=2372,e.rrvocalicvowelsigngujarati=2756,e.rsuperior=63217,e.rtblock=9616,e.rturned=633,e.rturnedsuperior=692,e.ruhiragana=12427,e.rukatakana=12523,e.rukatakanahalfwidth=65433,e.rupeemarkbengali=2546,e.rupeesignbengali=2547,e.rupiah=63197,e.ruthai=3620,e.rvocalicbengali=2443,e.rvocalicdeva=2315,e.rvocalicgujarati=2699,e.rvocalicvowelsignbengali=2499,e.rvocalicvowelsigndeva=2371,e.rvocalicvowelsigngujarati=2755,e.s=115,e.sabengali=2488,e.sacute=347,e.sacutedotaccent=7781,e.sadarabic=1589,e.sadeva=2360,e.sadfinalarabic=65210,e.sadinitialarabic=65211,e.sadmedialarabic=65212,e.sagujarati=2744,e.sagurmukhi=2616,e.sahiragana=12373,e.sakatakana=12469,e.sakatakanahalfwidth=65403,e.sallallahoualayhewasallamarabic=65018,e.samekh=1505,e.samekhdagesh=64321,e.samekhdageshhebrew=64321,e.samekhhebrew=1505,e.saraaathai=3634,e.saraaethai=3649,e.saraaimaimalaithai=3652,e.saraaimaimuanthai=3651,e.saraamthai=3635,e.saraathai=3632,e.saraethai=3648,e.saraiileftthai=63622,e.saraiithai=3637,e.saraileftthai=63621,e.saraithai=3636,e.saraothai=3650,e.saraueeleftthai=63624,e.saraueethai=3639,e.saraueleftthai=63623,e.sarauethai=3638,e.sarauthai=3640,e.sarauuthai=3641,e.sbopomofo=12569,e.scaron=353,e.scarondotaccent=7783,e.scedilla=351,e.schwa=601,e.schwacyrillic=1241,e.schwadieresiscyrillic=1243,e.schwahook=602,e.scircle=9442,e.scircumflex=349,e.scommaaccent=537,e.sdotaccent=7777,e.sdotbelow=7779,e.sdotbelowdotaccent=7785,e.seagullbelowcmb=828,e.second=8243,e.secondtonechinese=714,e.section=167,e.seenarabic=1587,e.seenfinalarabic=65202,e.seeninitialarabic=65203,e.seenmedialarabic=65204,e.segol=1462,e.segol13=1462,e.segol1f=1462,e.segol2c=1462,e.segolhebrew=1462,e.segolnarrowhebrew=1462,e.segolquarterhebrew=1462,e.segoltahebrew=1426,e.segolwidehebrew=1462,e.seharmenian=1405,e.sehiragana=12379,e.sekatakana=12475,e.sekatakanahalfwidth=65406,e.semicolon=59,e.semicolonarabic=1563,e.semicolonmonospace=65307,e.semicolonsmall=65108,e.semivoicedmarkkana=12444,e.semivoicedmarkkanahalfwidth=65439,e.sentisquare=13090,e.sentosquare=13091,e.seven=55,e.sevenarabic=1639,e.sevenbengali=2541,e.sevencircle=9318,e.sevencircleinversesansserif=10128,e.sevendeva=2413,e.seveneighths=8542,e.sevengujarati=2797,e.sevengurmukhi=2669,e.sevenhackarabic=1639,e.sevenhangzhou=12327,e.sevenideographicparen=12838,e.seveninferior=8327,e.sevenmonospace=65303,e.sevenoldstyle=63287,e.sevenparen=9338,e.sevenperiod=9358,e.sevenpersian=1783,e.sevenroman=8566,e.sevensuperior=8311,e.seventeencircle=9328,e.seventeenparen=9348,e.seventeenperiod=9368,e.seventhai=3671,e.sfthyphen=173,e.shaarmenian=1399,e.shabengali=2486,e.shacyrillic=1096,e.shaddaarabic=1617,e.shaddadammaarabic=64609,e.shaddadammatanarabic=64606,e.shaddafathaarabic=64608,e.shaddakasraarabic=64610,e.shaddakasratanarabic=64607,e.shade=9618,e.shadedark=9619,e.shadelight=9617,e.shademedium=9618,e.shadeva=2358,e.shagujarati=2742,e.shagurmukhi=2614,e.shalshelethebrew=1427,e.shbopomofo=12565,e.shchacyrillic=1097,e.sheenarabic=1588,e.sheenfinalarabic=65206,e.sheeninitialarabic=65207,e.sheenmedialarabic=65208,e.sheicoptic=995,e.sheqel=8362,e.sheqelhebrew=8362,e.sheva=1456,e.sheva115=1456,e.sheva15=1456,e.sheva22=1456,e.sheva2e=1456,e.shevahebrew=1456,e.shevanarrowhebrew=1456,e.shevaquarterhebrew=1456,e.shevawidehebrew=1456,e.shhacyrillic=1211,e.shimacoptic=1005,e.shin=1513,e.shindagesh=64329,e.shindageshhebrew=64329,e.shindageshshindot=64300,e.shindageshshindothebrew=64300,e.shindageshsindot=64301,e.shindageshsindothebrew=64301,e.shindothebrew=1473,e.shinhebrew=1513,e.shinshindot=64298,e.shinshindothebrew=64298,e.shinsindot=64299,e.shinsindothebrew=64299,e.shook=642,e.sigma=963,e.sigma1=962,e.sigmafinal=962,e.sigmalunatesymbolgreek=1010,e.sihiragana=12375,e.sikatakana=12471,e.sikatakanahalfwidth=65404,e.siluqhebrew=1469,e.siluqlefthebrew=1469,e.similar=8764,e.sindothebrew=1474,e.siosacirclekorean=12916,e.siosaparenkorean=12820,e.sioscieuckorean=12670,e.sioscirclekorean=12902,e.sioskiyeokkorean=12666,e.sioskorean=12613,e.siosnieunkorean=12667,e.siosparenkorean=12806,e.siospieupkorean=12669,e.siostikeutkorean=12668,e.six=54,e.sixarabic=1638,e.sixbengali=2540,e.sixcircle=9317,e.sixcircleinversesansserif=10127,e.sixdeva=2412,e.sixgujarati=2796,e.sixgurmukhi=2668,e.sixhackarabic=1638,e.sixhangzhou=12326,e.sixideographicparen=12837,e.sixinferior=8326,e.sixmonospace=65302,e.sixoldstyle=63286,e.sixparen=9337,e.sixperiod=9357,e.sixpersian=1782,e.sixroman=8565,e.sixsuperior=8310,e.sixteencircle=9327,e.sixteencurrencydenominatorbengali=2553,e.sixteenparen=9347,e.sixteenperiod=9367,e.sixthai=3670,e.slash=47,e.slashmonospace=65295,e.slong=383,e.slongdotaccent=7835,e.smileface=9786,e.smonospace=65363,e.sofpasuqhebrew=1475,e.softhyphen=173,e.softsigncyrillic=1100,e.sohiragana=12381,e.sokatakana=12477,e.sokatakanahalfwidth=65407,e.soliduslongoverlaycmb=824,e.solidusshortoverlaycmb=823,e.sorusithai=3625,e.sosalathai=3624,e.sosothai=3595,e.sosuathai=3626,e.space=32,e.spacehackarabic=32,e.spade=9824,e.spadesuitblack=9824,e.spadesuitwhite=9828,e.sparen=9390,e.squarebelowcmb=827,e.squarecc=13252,e.squarecm=13213,e.squarediagonalcrosshatchfill=9641,e.squarehorizontalfill=9636,e.squarekg=13199,e.squarekm=13214,e.squarekmcapital=13262,e.squareln=13265,e.squarelog=13266,e.squaremg=13198,e.squaremil=13269,e.squaremm=13212,e.squaremsquared=13217,e.squareorthogonalcrosshatchfill=9638,e.squareupperlefttolowerrightfill=9639,e.squareupperrighttolowerleftfill=9640,e.squareverticalfill=9637,e.squarewhitewithsmallblack=9635,e.srsquare=13275,e.ssabengali=2487,e.ssadeva=2359,e.ssagujarati=2743,e.ssangcieuckorean=12617,e.ssanghieuhkorean=12677,e.ssangieungkorean=12672,e.ssangkiyeokkorean=12594,e.ssangnieunkorean=12645,e.ssangpieupkorean=12611,e.ssangsioskorean=12614,e.ssangtikeutkorean=12600,e.ssuperior=63218,e.sterling=163,e.sterlingmonospace=65505,e.strokelongoverlaycmb=822,e.strokeshortoverlaycmb=821,e.subset=8834,e.subsetnotequal=8842,e.subsetorequal=8838,e.succeeds=8827,e.suchthat=8715,e.suhiragana=12377,e.sukatakana=12473,e.sukatakanahalfwidth=65405,e.sukunarabic=1618,e.summation=8721,e.sun=9788,e.superset=8835,e.supersetnotequal=8843,e.supersetorequal=8839,e.svsquare=13276,e.syouwaerasquare=13180,e.t=116,e.tabengali=2468,e.tackdown=8868,e.tackleft=8867,e.tadeva=2340,e.tagujarati=2724,e.tagurmukhi=2596,e.taharabic=1591,e.tahfinalarabic=65218,e.tahinitialarabic=65219,e.tahiragana=12383,e.tahmedialarabic=65220,e.taisyouerasquare=13181,e.takatakana=12479,e.takatakanahalfwidth=65408,e.tatweelarabic=1600,e.tau=964,e.tav=1514,e.tavdages=64330,e.tavdagesh=64330,e.tavdageshhebrew=64330,e.tavhebrew=1514,e.tbar=359,e.tbopomofo=12554,e.tcaron=357,e.tccurl=680,e.tcedilla=355,e.tcheharabic=1670,e.tchehfinalarabic=64379,e.tchehinitialarabic=64380,e.tchehmedialarabic=64381,e.tcircle=9443,e.tcircumflexbelow=7793,e.tcommaaccent=355,e.tdieresis=7831,e.tdotaccent=7787,e.tdotbelow=7789,e.tecyrillic=1090,e.tedescendercyrillic=1197,e.teharabic=1578,e.tehfinalarabic=65174,e.tehhahinitialarabic=64674,e.tehhahisolatedarabic=64524,e.tehinitialarabic=65175,e.tehiragana=12390,e.tehjeeminitialarabic=64673,e.tehjeemisolatedarabic=64523,e.tehmarbutaarabic=1577,e.tehmarbutafinalarabic=65172,e.tehmedialarabic=65176,e.tehmeeminitialarabic=64676,e.tehmeemisolatedarabic=64526,e.tehnoonfinalarabic=64627,e.tekatakana=12486,e.tekatakanahalfwidth=65411,e.telephone=8481,e.telephoneblack=9742,e.telishagedolahebrew=1440,e.telishaqetanahebrew=1449,e.tencircle=9321,e.tenideographicparen=12841,e.tenparen=9341,e.tenperiod=9361,e.tenroman=8569,e.tesh=679,e.tet=1496,e.tetdagesh=64312,e.tetdageshhebrew=64312,e.tethebrew=1496,e.tetsecyrillic=1205,e.tevirhebrew=1435,e.tevirlefthebrew=1435,e.thabengali=2469,e.thadeva=2341,e.thagujarati=2725,e.thagurmukhi=2597,e.thalarabic=1584,e.thalfinalarabic=65196,e.thanthakhatlowleftthai=63640,e.thanthakhatlowrightthai=63639,e.thanthakhatthai=3660,e.thanthakhatupperleftthai=63638,e.theharabic=1579,e.thehfinalarabic=65178,e.thehinitialarabic=65179,e.thehmedialarabic=65180,e.thereexists=8707,e.therefore=8756,e.theta=952,e.theta1=977,e.thetasymbolgreek=977,e.thieuthacirclekorean=12921,e.thieuthaparenkorean=12825,e.thieuthcirclekorean=12907,e.thieuthkorean=12620,e.thieuthparenkorean=12811,e.thirteencircle=9324,e.thirteenparen=9344,e.thirteenperiod=9364,e.thonangmonthothai=3601,e.thook=429,e.thophuthaothai=3602,e.thorn=254,e.thothahanthai=3607,e.thothanthai=3600,e.thothongthai=3608,e.thothungthai=3606,e.thousandcyrillic=1154,e.thousandsseparatorarabic=1644,e.thousandsseparatorpersian=1644,e.three=51,e.threearabic=1635,e.threebengali=2537,e.threecircle=9314,e.threecircleinversesansserif=10124,e.threedeva=2409,e.threeeighths=8540,e.threegujarati=2793,e.threegurmukhi=2665,e.threehackarabic=1635,e.threehangzhou=12323,e.threeideographicparen=12834,e.threeinferior=8323,e.threemonospace=65299,e.threenumeratorbengali=2550,e.threeoldstyle=63283,e.threeparen=9334,e.threeperiod=9354,e.threepersian=1779,e.threequarters=190,e.threequartersemdash=63198,e.threeroman=8562,e.threesuperior=179,e.threethai=3667,e.thzsquare=13204,e.tihiragana=12385,e.tikatakana=12481,e.tikatakanahalfwidth=65409,e.tikeutacirclekorean=12912,e.tikeutaparenkorean=12816,e.tikeutcirclekorean=12898,e.tikeutkorean=12599,e.tikeutparenkorean=12802,e.tilde=732,e.tildebelowcmb=816,e.tildecmb=771,e.tildecomb=771,e.tildedoublecmb=864,e.tildeoperator=8764,e.tildeoverlaycmb=820,e.tildeverticalcmb=830,e.timescircle=8855,e.tipehahebrew=1430,e.tipehalefthebrew=1430,e.tippigurmukhi=2672,e.titlocyrilliccmb=1155,e.tiwnarmenian=1407,e.tlinebelow=7791,e.tmonospace=65364,e.toarmenian=1385,e.tohiragana=12392,e.tokatakana=12488,e.tokatakanahalfwidth=65412,e.tonebarextrahighmod=741,e.tonebarextralowmod=745,e.tonebarhighmod=742,e.tonebarlowmod=744,e.tonebarmidmod=743,e.tonefive=445,e.tonesix=389,e.tonetwo=424,e.tonos=900,e.tonsquare=13095,e.topatakthai=3599,e.tortoiseshellbracketleft=12308,e.tortoiseshellbracketleftsmall=65117,e.tortoiseshellbracketleftvertical=65081,e.tortoiseshellbracketright=12309,e.tortoiseshellbracketrightsmall=65118,e.tortoiseshellbracketrightvertical=65082,e.totaothai=3605,e.tpalatalhook=427,e.tparen=9391,e.trademark=8482,e.trademarksans=63722,e.trademarkserif=63195,e.tretroflexhook=648,e.triagdn=9660,e.triaglf=9668,e.triagrt=9658,e.triagup=9650,e.ts=678,e.tsadi=1510,e.tsadidagesh=64326,e.tsadidageshhebrew=64326,e.tsadihebrew=1510,e.tsecyrillic=1094,e.tsere=1461,e.tsere12=1461,e.tsere1e=1461,e.tsere2b=1461,e.tserehebrew=1461,e.tserenarrowhebrew=1461,e.tserequarterhebrew=1461,e.tserewidehebrew=1461,e.tshecyrillic=1115,e.tsuperior=63219,e.ttabengali=2463,e.ttadeva=2335,e.ttagujarati=2719,e.ttagurmukhi=2591,e.tteharabic=1657,e.ttehfinalarabic=64359,e.ttehinitialarabic=64360,e.ttehmedialarabic=64361,e.tthabengali=2464,e.tthadeva=2336,e.tthagujarati=2720,e.tthagurmukhi=2592,e.tturned=647,e.tuhiragana=12388,e.tukatakana=12484,e.tukatakanahalfwidth=65410,e.tusmallhiragana=12387,e.tusmallkatakana=12483,e.tusmallkatakanahalfwidth=65391,e.twelvecircle=9323,e.twelveparen=9343,e.twelveperiod=9363,e.twelveroman=8571,e.twentycircle=9331,e.twentyhangzhou=21316,e.twentyparen=9351,e.twentyperiod=9371,e.two=50,e.twoarabic=1634,e.twobengali=2536,e.twocircle=9313,e.twocircleinversesansserif=10123,e.twodeva=2408,e.twodotenleader=8229,e.twodotleader=8229,e.twodotleadervertical=65072,e.twogujarati=2792,e.twogurmukhi=2664,e.twohackarabic=1634,e.twohangzhou=12322,e.twoideographicparen=12833,e.twoinferior=8322,e.twomonospace=65298,e.twonumeratorbengali=2549,e.twooldstyle=63282,e.twoparen=9333,e.twoperiod=9353,e.twopersian=1778,e.tworoman=8561,e.twostroke=443,e.twosuperior=178,e.twothai=3666,e.twothirds=8532,e.u=117,e.uacute=250,e.ubar=649,e.ubengali=2441,e.ubopomofo=12584,e.ubreve=365,e.ucaron=468,e.ucircle=9444,e.ucircumflex=251,e.ucircumflexbelow=7799,e.ucyrillic=1091,e.udattadeva=2385,e.udblacute=369,e.udblgrave=533,e.udeva=2313,e.udieresis=252,e.udieresisacute=472,e.udieresisbelow=7795,e.udieresiscaron=474,e.udieresiscyrillic=1265,e.udieresisgrave=476,e.udieresismacron=470,e.udotbelow=7909,e.ugrave=249,e.ugujarati=2697,e.ugurmukhi=2569,e.uhiragana=12358,e.uhookabove=7911,e.uhorn=432,e.uhornacute=7913,e.uhorndotbelow=7921,e.uhorngrave=7915,e.uhornhookabove=7917,e.uhorntilde=7919,e.uhungarumlaut=369,e.uhungarumlautcyrillic=1267,e.uinvertedbreve=535,e.ukatakana=12454,e.ukatakanahalfwidth=65395,e.ukcyrillic=1145,e.ukorean=12636,e.umacron=363,e.umacroncyrillic=1263,e.umacrondieresis=7803,e.umatragurmukhi=2625,e.umonospace=65365,e.underscore=95,e.underscoredbl=8215,e.underscoremonospace=65343,e.underscorevertical=65075,e.underscorewavy=65103,e.union=8746,e.universal=8704,e.uogonek=371,e.uparen=9392,e.upblock=9600,e.upperdothebrew=1476,e.upsilon=965,e.upsilondieresis=971,e.upsilondieresistonos=944,e.upsilonlatin=650,e.upsilontonos=973,e.uptackbelowcmb=797,e.uptackmod=724,e.uragurmukhi=2675,e.uring=367,e.ushortcyrillic=1118,e.usmallhiragana=12357,e.usmallkatakana=12453,e.usmallkatakanahalfwidth=65385,e.ustraightcyrillic=1199,e.ustraightstrokecyrillic=1201,e.utilde=361,e.utildeacute=7801,e.utildebelow=7797,e.uubengali=2442,e.uudeva=2314,e.uugujarati=2698,e.uugurmukhi=2570,e.uumatragurmukhi=2626,e.uuvowelsignbengali=2498,e.uuvowelsigndeva=2370,e.uuvowelsigngujarati=2754,e.uvowelsignbengali=2497,e.uvowelsigndeva=2369,e.uvowelsigngujarati=2753,e.v=118,e.vadeva=2357,e.vagujarati=2741,e.vagurmukhi=2613,e.vakatakana=12535,e.vav=1493,e.vavdagesh=64309,e.vavdagesh65=64309,e.vavdageshhebrew=64309,e.vavhebrew=1493,e.vavholam=64331,e.vavholamhebrew=64331,e.vavvavhebrew=1520,e.vavyodhebrew=1521,e.vcircle=9445,e.vdotbelow=7807,e.vecyrillic=1074,e.veharabic=1700,e.vehfinalarabic=64363,e.vehinitialarabic=64364,e.vehmedialarabic=64365,e.vekatakana=12537,e.venus=9792,e.verticalbar=124,e.verticallineabovecmb=781,e.verticallinebelowcmb=809,e.verticallinelowmod=716,e.verticallinemod=712,e.vewarmenian=1406,e.vhook=651,e.vikatakana=12536,e.viramabengali=2509,e.viramadeva=2381,e.viramagujarati=2765,e.visargabengali=2435,e.visargadeva=2307,e.visargagujarati=2691,e.vmonospace=65366,e.voarmenian=1400,e.voicediterationhiragana=12446,e.voicediterationkatakana=12542,e.voicedmarkkana=12443,e.voicedmarkkanahalfwidth=65438,e.vokatakana=12538,e.vparen=9393,e.vtilde=7805,e.vturned=652,e.vuhiragana=12436,e.vukatakana=12532,e.w=119,e.wacute=7811,e.waekorean=12633,e.wahiragana=12431,e.wakatakana=12527,e.wakatakanahalfwidth=65436,e.wakorean=12632,e.wasmallhiragana=12430,e.wasmallkatakana=12526,e.wattosquare=13143,e.wavedash=12316,e.wavyunderscorevertical=65076,e.wawarabic=1608,e.wawfinalarabic=65262,e.wawhamzaabovearabic=1572,e.wawhamzaabovefinalarabic=65158,e.wbsquare=13277,e.wcircle=9446,e.wcircumflex=373,e.wdieresis=7813,e.wdotaccent=7815,e.wdotbelow=7817,e.wehiragana=12433,e.weierstrass=8472,e.wekatakana=12529,e.wekorean=12638,e.weokorean=12637,e.wgrave=7809,e.whitebullet=9702,e.whitecircle=9675,e.whitecircleinverse=9689,e.whitecornerbracketleft=12302,e.whitecornerbracketleftvertical=65091,e.whitecornerbracketright=12303,e.whitecornerbracketrightvertical=65092,e.whitediamond=9671,e.whitediamondcontainingblacksmalldiamond=9672,e.whitedownpointingsmalltriangle=9663;e.whitedownpointingtriangle=9661,e.whiteleftpointingsmalltriangle=9667,e.whiteleftpointingtriangle=9665,e.whitelenticularbracketleft=12310,e.whitelenticularbracketright=12311,e.whiterightpointingsmalltriangle=9657,e.whiterightpointingtriangle=9655,e.whitesmallsquare=9643,e.whitesmilingface=9786,e.whitesquare=9633,e.whitestar=9734,e.whitetelephone=9743,e.whitetortoiseshellbracketleft=12312,e.whitetortoiseshellbracketright=12313,e.whiteuppointingsmalltriangle=9653,e.whiteuppointingtriangle=9651,e.wihiragana=12432,e.wikatakana=12528,e.wikorean=12639,e.wmonospace=65367,e.wohiragana=12434,e.wokatakana=12530,e.wokatakanahalfwidth=65382,e.won=8361,e.wonmonospace=65510,e.wowaenthai=3623,e.wparen=9394,e.wring=7832,e.wsuperior=695,e.wturned=653,e.wynn=447,e.x=120,e.xabovecmb=829,e.xbopomofo=12562,e.xcircle=9447,e.xdieresis=7821,e.xdotaccent=7819,e.xeharmenian=1389,e.xi=958,e.xmonospace=65368,e.xparen=9395,e.xsuperior=739,e.y=121,e.yaadosquare=13134,e.yabengali=2479,e.yacute=253,e.yadeva=2351,e.yaekorean=12626,e.yagujarati=2735,e.yagurmukhi=2607,e.yahiragana=12420,e.yakatakana=12516,e.yakatakanahalfwidth=65428,e.yakorean=12625,e.yamakkanthai=3662,e.yasmallhiragana=12419,e.yasmallkatakana=12515,e.yasmallkatakanahalfwidth=65388,e.yatcyrillic=1123,e.ycircle=9448,e.ycircumflex=375,e.ydieresis=255,e.ydotaccent=7823,e.ydotbelow=7925,e.yeharabic=1610,e.yehbarreearabic=1746,e.yehbarreefinalarabic=64431,e.yehfinalarabic=65266,e.yehhamzaabovearabic=1574,e.yehhamzaabovefinalarabic=65162,e.yehhamzaaboveinitialarabic=65163,e.yehhamzaabovemedialarabic=65164,e.yehinitialarabic=65267,e.yehmedialarabic=65268,e.yehmeeminitialarabic=64733,e.yehmeemisolatedarabic=64600,e.yehnoonfinalarabic=64660,e.yehthreedotsbelowarabic=1745,e.yekorean=12630,e.yen=165,e.yenmonospace=65509,e.yeokorean=12629,e.yeorinhieuhkorean=12678,e.yerahbenyomohebrew=1450,e.yerahbenyomolefthebrew=1450,e.yericyrillic=1099,e.yerudieresiscyrillic=1273,e.yesieungkorean=12673,e.yesieungpansioskorean=12675,e.yesieungsioskorean=12674,e.yetivhebrew=1434,e.ygrave=7923,e.yhook=436,e.yhookabove=7927,e.yiarmenian=1397,e.yicyrillic=1111,e.yikorean=12642,e.yinyang=9775,e.yiwnarmenian=1410,e.ymonospace=65369,e.yod=1497,e.yoddagesh=64313,e.yoddageshhebrew=64313,e.yodhebrew=1497,e.yodyodhebrew=1522,e.yodyodpatahhebrew=64287,e.yohiragana=12424,e.yoikorean=12681,e.yokatakana=12520,e.yokatakanahalfwidth=65430,e.yokorean=12635,e.yosmallhiragana=12423,e.yosmallkatakana=12519,e.yosmallkatakanahalfwidth=65390,e.yotgreek=1011,e.yoyaekorean=12680,e.yoyakorean=12679,e.yoyakthai=3618,e.yoyingthai=3597,e.yparen=9396,e.ypogegrammeni=890,e.ypogegrammenigreekcmb=837,e.yr=422,e.yring=7833,e.ysuperior=696,e.ytilde=7929,e.yturned=654,e.yuhiragana=12422,e.yuikorean=12684,e.yukatakana=12518,e.yukatakanahalfwidth=65429,e.yukorean=12640,e.yusbigcyrillic=1131,e.yusbigiotifiedcyrillic=1133,e.yuslittlecyrillic=1127,e.yuslittleiotifiedcyrillic=1129,e.yusmallhiragana=12421,e.yusmallkatakana=12517,e.yusmallkatakanahalfwidth=65389,e.yuyekorean=12683,e.yuyeokorean=12682,e.yyabengali=2527,e.yyadeva=2399,e.z=122,e.zaarmenian=1382,e.zacute=378,e.zadeva=2395,e.zagurmukhi=2651,e.zaharabic=1592,e.zahfinalarabic=65222,e.zahinitialarabic=65223,e.zahiragana=12374,e.zahmedialarabic=65224,e.zainarabic=1586,e.zainfinalarabic=65200,e.zakatakana=12470,e.zaqefgadolhebrew=1429,e.zaqefqatanhebrew=1428,e.zarqahebrew=1432,e.zayin=1494,e.zayindagesh=64310,e.zayindageshhebrew=64310,e.zayinhebrew=1494,e.zbopomofo=12567,e.zcaron=382,e.zcircle=9449,e.zcircumflex=7825,e.zcurl=657,e.zdot=380,e.zdotaccent=380,e.zdotbelow=7827,e.zecyrillic=1079,e.zedescendercyrillic=1177,e.zedieresiscyrillic=1247,e.zehiragana=12380,e.zekatakana=12476,e.zero=48,e.zeroarabic=1632,e.zerobengali=2534,e.zerodeva=2406,e.zerogujarati=2790,e.zerogurmukhi=2662,e.zerohackarabic=1632,e.zeroinferior=8320,e.zeromonospace=65296,e.zerooldstyle=63280,e.zeropersian=1776,e.zerosuperior=8304,e.zerothai=3664,e.zerowidthjoiner=65279,e.zerowidthnonjoiner=8204,e.zerowidthspace=8203,e.zeta=950,e.zhbopomofo=12563,e.zhearmenian=1386,e.zhebrevecyrillic=1218,e.zhecyrillic=1078,e.zhedescendercyrillic=1175,e.zhedieresiscyrillic=1245,e.zihiragana=12376,e.zikatakana=12472,e.zinorhebrew=1454,e.zlinebelow=7829,e.zmonospace=65370,e.zohiragana=12382,e.zokatakana=12478,e.zparen=9397,e.zretroflexhook=656,e.zstroke=438,e.zuhiragana=12378,e.zukatakana=12474,e[".notdef"]=0,e.angbracketleftbig=9001,e.angbracketleftBig=9001,e.angbracketleftbigg=9001,e.angbracketleftBigg=9001,e.angbracketrightBig=9002,e.angbracketrightbig=9002,e.angbracketrightBigg=9002,e.angbracketrightbigg=9002,e.arrowhookleft=8618,e.arrowhookright=8617,e.arrowlefttophalf=8636,e.arrowleftbothalf=8637,e.arrownortheast=8599,e.arrownorthwest=8598,e.arrowrighttophalf=8640,e.arrowrightbothalf=8641,e.arrowsoutheast=8600,e.arrowsouthwest=8601,e.backslashbig=8726,e.backslashBig=8726,e.backslashBigg=8726,e.backslashbigg=8726,e.bardbl=8214,e.bracehtipdownleft=65079,e.bracehtipdownright=65079,e.bracehtipupleft=65080,e.bracehtipupright=65080,e.braceleftBig=123,e.braceleftbig=123,e.braceleftbigg=123,e.braceleftBigg=123,e.bracerightBig=125,e.bracerightbig=125,e.bracerightbigg=125,e.bracerightBigg=125,e.bracketleftbig=91,e.bracketleftBig=91,e.bracketleftbigg=91,e.bracketleftBigg=91,e.bracketrightBig=93,e.bracketrightbig=93,e.bracketrightbigg=93,e.bracketrightBigg=93,e.ceilingleftbig=8968,e.ceilingleftBig=8968,e.ceilingleftBigg=8968,e.ceilingleftbigg=8968,e.ceilingrightbig=8969,e.ceilingrightBig=8969,e.ceilingrightbigg=8969,e.ceilingrightBigg=8969,e.circledotdisplay=8857,e.circledottext=8857,e.circlemultiplydisplay=8855,e.circlemultiplytext=8855,e.circleplusdisplay=8853,e.circleplustext=8853,e.contintegraldisplay=8750,e.contintegraltext=8750,e.coproductdisplay=8720,e.coproducttext=8720,e.floorleftBig=8970,e.floorleftbig=8970,e.floorleftbigg=8970,e.floorleftBigg=8970,e.floorrightbig=8971,e.floorrightBig=8971,e.floorrightBigg=8971,e.floorrightbigg=8971,e.hatwide=770,e.hatwider=770,e.hatwidest=770,e.intercal=7488,e.integraldisplay=8747,e.integraltext=8747,e.intersectiondisplay=8898,e.intersectiontext=8898,e.logicalanddisplay=8743,e.logicalandtext=8743,e.logicalordisplay=8744,e.logicalortext=8744,e.parenleftBig=40,e.parenleftbig=40,e.parenleftBigg=40,e.parenleftbigg=40,e.parenrightBig=41,e.parenrightbig=41,e.parenrightBigg=41,e.parenrightbigg=41,e.prime=8242,e.productdisplay=8719,e.producttext=8719,e.radicalbig=8730,e.radicalBig=8730,e.radicalBigg=8730,e.radicalbigg=8730,e.radicalbt=8730,e.radicaltp=8730,e.radicalvertex=8730,e.slashbig=47,e.slashBig=47,e.slashBigg=47,e.slashbigg=47,e.summationdisplay=8721,e.summationtext=8721,e.tildewide=732,e.tildewider=732,e.tildewidest=732,e.uniondisplay=8899,e.unionmultidisplay=8846,e.unionmultitext=8846,e.unionsqdisplay=8852,e.unionsqtext=8852,e.uniontext=8899,e.vextenddouble=8741,e.vextendsingle=8739}),Or=Ks(function(e){e.space=32,e.a1=9985,e.a2=9986,e.a202=9987,e.a3=9988,e.a4=9742,e.a5=9990,e.a119=9991,e.a118=9992,e.a117=9993,e.a11=9755,e.a12=9758,e.a13=9996,e.a14=9997,e.a15=9998,e.a16=9999,e.a105=1e4,e.a17=10001,e.a18=10002,e.a19=10003,e.a20=10004,e.a21=10005,e.a22=10006,e.a23=10007,e.a24=10008,e.a25=10009,e.a26=10010,e.a27=10011,e.a28=10012,e.a6=10013,e.a7=10014,e.a8=10015,e.a9=10016,e.a10=10017,e.a29=10018,e.a30=10019,e.a31=10020,e.a32=10021,e.a33=10022,e.a34=10023,e.a35=9733,e.a36=10025,e.a37=10026,e.a38=10027,e.a39=10028,e.a40=10029,e.a41=10030,e.a42=10031,e.a43=10032,e.a44=10033,e.a45=10034,e.a46=10035,e.a47=10036,e.a48=10037,e.a49=10038,e.a50=10039,e.a51=10040,e.a52=10041,e.a53=10042,e.a54=10043,e.a55=10044,e.a56=10045,e.a57=10046,e.a58=10047,e.a59=10048,e.a60=10049,e.a61=10050,e.a62=10051,e.a63=10052,e.a64=10053,e.a65=10054,e.a66=10055,e.a67=10056,e.a68=10057,e.a69=10058,e.a70=10059,e.a71=9679,e.a72=10061,e.a73=9632,e.a74=10063,e.a203=10064,e.a75=10065,e.a204=10066,e.a76=9650,e.a77=9660,e.a78=9670,e.a79=10070,e.a81=9687,e.a82=10072,e.a83=10073,e.a84=10074,e.a97=10075,e.a98=10076,e.a99=10077,e.a100=10078,e.a101=10081,e.a102=10082,e.a103=10083,e.a104=10084,e.a106=10085,e.a107=10086,e.a108=10087,e.a112=9827,e.a111=9830,e.a110=9829,e.a109=9824,e.a120=9312,e.a121=9313,e.a122=9314,e.a123=9315,e.a124=9316,e.a125=9317,e.a126=9318,e.a127=9319,e.a128=9320,e.a129=9321,e.a130=10102,e.a131=10103,e.a132=10104,e.a133=10105,e.a134=10106,e.a135=10107,e.a136=10108,e.a137=10109,e.a138=10110,e.a139=10111,e.a140=10112,e.a141=10113,e.a142=10114,e.a143=10115,e.a144=10116,e.a145=10117,e.a146=10118,e.a147=10119,e.a148=10120,e.a149=10121,e.a150=10122,e.a151=10123,e.a152=10124,e.a153=10125,e.a154=10126,e.a155=10127,e.a156=10128,e.a157=10129,e.a158=10130,e.a159=10131,e.a160=10132,e.a161=8594,e.a163=8596,e.a164=8597,e.a196=10136,e.a165=10137,e.a192=10138,e.a166=10139,e.a167=10140,e.a168=10141,e.a169=10142,e.a170=10143,e.a171=10144,e.a172=10145,e.a173=10146,e.a162=10147,e.a174=10148,e.a175=10149,e.a176=10150,e.a177=10151,e.a178=10152,e.a179=10153,e.a193=10154,e.a180=10155,e.a199=10156,e.a181=10157,e.a200=10158,e.a182=10159,e.a201=10161,e.a183=10162,e.a184=10163,e.a197=10164,e.a185=10165,e.a194=10166,e.a198=10167,e.a186=10168,e.a195=10169,e.a187=10170,e.a188=10171,e.a189=10172,e.a190=10173,e.a191=10174,e.a89=10088,e.a90=10089,e.a93=10090,e.a94=10091,e.a91=10092,e.a92=10093,e.a205=10094,e.a85=10095,e.a206=10096,e.a86=10097,e.a87=10098,e.a88=10099,e.a95=10100,e.a96=10101,e[".notdef"]=0}),Pr=Ks(function(e){e[63721]=169,e[63193]=169,e[63720]=174,e[63194]=174,e[63722]=8482,e[63195]=8482,e[63729]=9127,e[63730]=9128,e[63731]=9129,e[63740]=9131,e[63741]=9132,e[63742]=9133,e[63726]=9121,e[63727]=9122,e[63728]=9123,e[63737]=9124,e[63738]=9125,e[63739]=9126,e[63723]=9115,e[63724]=9116,e[63725]=9117,e[63734]=9118,e[63735]=9119,e[63736]=9120});function Er(e,t){let s=t[e];if(void 0!==s)return s;if(!e)return-1;if("u"===e[0]){const t=e.length;let a;if(7===t&&"n"===e[1]&&"i"===e[2])a=e.substring(3);else{if(!(t>=5&&t<=7))return-1;a=e.substring(1)}if(a===a.toUpperCase()&&(s=parseInt(a,16),s>=0))return s}return-1}const Lr=[[0,127],[128,255],[256,383],[384,591],[592,687,7424,7551,7552,7615],[688,767,42752,42783],[768,879,7616,7679],[880,1023],[11392,11519],[1024,1279,1280,1327,11744,11775,42560,42655],[1328,1423],[1424,1535],[42240,42559],[1536,1791,1872,1919],[1984,2047],[2304,2431],[2432,2559],[2560,2687],[2688,2815],[2816,2943],[2944,3071],[3072,3199],[3200,3327],[3328,3455],[3584,3711],[3712,3839],[4256,4351,11520,11567],[6912,7039],[4352,4607],[7680,7935,11360,11391,42784,43007],[7936,8191],[8192,8303,11776,11903],[8304,8351],[8352,8399],[8400,8447],[8448,8527],[8528,8591],[8592,8703,10224,10239,10496,10623,11008,11263],[8704,8959,10752,11007,10176,10223,10624,10751],[8960,9215],[9216,9279],[9280,9311],[9312,9471],[9472,9599],[9600,9631],[9632,9727],[9728,9983],[9984,10175],[12288,12351],[12352,12447],[12448,12543,12784,12799],[12544,12591,12704,12735],[12592,12687],[43072,43135],[12800,13055],[13056,13311],[44032,55215],[55296,57343],[67840,67871],[19968,40959,11904,12031,12032,12255,12272,12287,13312,19903,131072,173791,12688,12703],[57344,63743],[12736,12783,63744,64255,194560,195103],[64256,64335],[64336,65023],[65056,65071],[65040,65055],[65104,65135],[65136,65279],[65280,65519],[65520,65535],[3840,4095],[1792,1871],[1920,1983],[3456,3583],[4096,4255],[4608,4991,4992,5023,11648,11743],[5024,5119],[5120,5759],[5760,5791],[5792,5887],[6016,6143],[6144,6319],[10240,10495],[40960,42127],[5888,5919,5920,5951,5952,5983,5984,6015],[66304,66351],[66352,66383],[66560,66639],[118784,119039,119040,119295,119296,119375],[119808,120831],[1044480,1048573],[65024,65039,917760,917999],[917504,917631],[6400,6479],[6480,6527],[6528,6623],[6656,6687],[11264,11359],[11568,11647],[19904,19967],[43008,43055],[65536,65663,65664,65791,65792,65855],[65856,65935],[66432,66463],[66464,66527],[66640,66687],[66688,66735],[67584,67647],[68096,68191],[119552,119647],[73728,74751,74752,74879],[119648,119679],[7040,7103],[7168,7247],[7248,7295],[43136,43231],[43264,43311],[43312,43359],[43520,43615],[65936,65999],[66e3,66047],[66208,66271,66176,66207,67872,67903],[127024,127135,126976,127023]];function _r(e,t=-1){if(-1!==t){const s=Lr[t];for(let a=0,i=s.length;a<i;a+=2)if(e>=s[a]&&e<=s[a+1])return t}for(let s=0,a=Lr.length;s<a;s++){const t=Lr[s];for(let a=0,i=t.length;a<i;a+=2)if(e>=t[a]&&e<=t[a+1])return s}return-1}const Ur=new RegExp("^(\\s)|(\\p{Mn})|(\\p{Cf})$","u"),qr=new Map,jr=!0,Hr=1,$r=2,zr=4,Gr=32,Wr=[".notdef",".null","nonmarkingreturn","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quotesingle","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","grave","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","Adieresis","Aring","Ccedilla","Eacute","Ntilde","Odieresis","Udieresis","aacute","agrave","acircumflex","adieresis","atilde","aring","ccedilla","eacute","egrave","ecircumflex","edieresis","iacute","igrave","icircumflex","idieresis","ntilde","oacute","ograve","ocircumflex","odieresis","otilde","uacute","ugrave","ucircumflex","udieresis","dagger","degree","cent","sterling","section","bullet","paragraph","germandbls","registered","copyright","trademark","acute","dieresis","notequal","AE","Oslash","infinity","plusminus","lessequal","greaterequal","yen","mu","partialdiff","summation","product","pi","integral","ordfeminine","ordmasculine","Omega","ae","oslash","questiondown","exclamdown","logicalnot","radical","florin","approxequal","Delta","guillemotleft","guillemotright","ellipsis","nonbreakingspace","Agrave","Atilde","Otilde","OE","oe","endash","emdash","quotedblleft","quotedblright","quoteleft","quoteright","divide","lozenge","ydieresis","Ydieresis","fraction","currency","guilsinglleft","guilsinglright","fi","fl","daggerdbl","periodcentered","quotesinglbase","quotedblbase","perthousand","Acircumflex","Ecircumflex","Aacute","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Oacute","Ocircumflex","apple","Ograve","Uacute","Ucircumflex","Ugrave","dotlessi","circumflex","tilde","macron","breve","dotaccent","ring","cedilla","hungarumlaut","ogonek","caron","Lslash","lslash","Scaron","scaron","Zcaron","zcaron","brokenbar","Eth","eth","Yacute","yacute","Thorn","thorn","minus","multiply","onesuperior","twosuperior","threesuperior","onehalf","onequarter","threequarters","franc","Gbreve","gbreve","Idotaccent","Scedilla","scedilla","Cacute","cacute","Ccaron","ccaron","dcroat"];function Vr(e,t){if(void 0!==t[e])return e;const s=Er(e,t);if(-1!==s)for(const a in t)if(t[a]===s)return a;return Jt("Unable to recover a standard glyph name for: "+e),e}function Xr(e,t,s){const a=Object.create(null);let i,n,r;const o=!!(e.flags&zr);if(e.isInternalFont)for(r=t,n=0;n<r.length;n++)i=s.indexOf(r[n]),a[n]=i>=0?i:0;else if(e.baseEncodingName)for(r=Nr(e.baseEncodingName),n=0;n<r.length;n++)i=s.indexOf(r[n]),a[n]=i>=0?i:0;else if(o)for(n in t)a[n]=t[n];else for(r=Fr,n=0;n<r.length;n++)i=s.indexOf(r[n]),a[n]=i>=0?i:0;const c=e.differences;let l;if(c)for(n in c){const e=c[n];if(i=s.indexOf(e),-1===i){l||(l=Dr());const t=Vr(e,l);t!==e&&(i=s.indexOf(t))}a[n]=i>=0?i:0}return a}function Kr(e){return e.replaceAll(/[,_]/g,"-").replaceAll(/\s/g,"")}const Yr=Ks(e=>{e[8211]=65074,e[8212]=65073,e[8229]=65072,e[8230]=65049,e[12289]=65041,e[12290]=65042,e[12296]=65087,e[12297]=65088,e[12298]=65085,e[12299]=65086,e[12300]=65089,e[12301]=65090,e[12302]=65091,e[12303]=65092,e[12304]=65083,e[12305]=65084,e[12308]=65081,e[12309]=65082,e[12310]=65047,e[12311]=65048,e[65103]=65076,e[65281]=65045,e[65288]=65077,e[65289]=65078,e[65292]=65040,e[65306]=65043,e[65307]=65044,e[65311]=65046,e[65339]=65095,e[65341]=65096,e[65343]=65075,e[65371]=65079,e[65373]=65080}),Jr=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron"],Zr=[".notdef","space","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","onequarter","onehalf","threequarters","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall"],Qr=[".notdef","space","dollaroldstyle","dollarsuperior","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","comma","hyphen","period","fraction","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","colon","semicolon","commasuperior","threequartersemdash","periodsuperior","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","fi","fl","ffi","ffl","parenleftinferior","parenrightinferior","hyphensuperior","colonmonetary","onefitted","rupiah","centoldstyle","figuredash","hypheninferior","onequarter","onehalf","threequarters","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","onesuperior","twosuperior","threesuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior"],eo=[".notdef","space","exclam","quotedbl","numbersign","dollar","percent","ampersand","quoteright","parenleft","parenright","asterisk","plus","comma","hyphen","period","slash","zero","one","two","three","four","five","six","seven","eight","nine","colon","semicolon","less","equal","greater","question","at","A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z","bracketleft","backslash","bracketright","asciicircum","underscore","quoteleft","a","b","c","d","e","f","g","h","i","j","k","l","m","n","o","p","q","r","s","t","u","v","w","x","y","z","braceleft","bar","braceright","asciitilde","exclamdown","cent","sterling","fraction","yen","florin","section","currency","quotesingle","quotedblleft","guillemotleft","guilsinglleft","guilsinglright","fi","fl","endash","dagger","daggerdbl","periodcentered","paragraph","bullet","quotesinglbase","quotedblbase","quotedblright","guillemotright","ellipsis","perthousand","questiondown","grave","acute","circumflex","tilde","macron","breve","dotaccent","dieresis","ring","cedilla","hungarumlaut","ogonek","caron","emdash","AE","ordfeminine","Lslash","Oslash","OE","ordmasculine","ae","dotlessi","lslash","oslash","oe","germandbls","onesuperior","logicalnot","mu","trademark","Eth","onehalf","plusminus","Thorn","onequarter","divide","brokenbar","degree","thorn","threequarters","twosuperior","registered","minus","eth","multiply","threesuperior","copyright","Aacute","Acircumflex","Adieresis","Agrave","Aring","Atilde","Ccedilla","Eacute","Ecircumflex","Edieresis","Egrave","Iacute","Icircumflex","Idieresis","Igrave","Ntilde","Oacute","Ocircumflex","Odieresis","Ograve","Otilde","Scaron","Uacute","Ucircumflex","Udieresis","Ugrave","Yacute","Ydieresis","Zcaron","aacute","acircumflex","adieresis","agrave","aring","atilde","ccedilla","eacute","ecircumflex","edieresis","egrave","iacute","icircumflex","idieresis","igrave","ntilde","oacute","ocircumflex","odieresis","ograve","otilde","scaron","uacute","ucircumflex","udieresis","ugrave","yacute","ydieresis","zcaron","exclamsmall","Hungarumlautsmall","dollaroldstyle","dollarsuperior","ampersandsmall","Acutesmall","parenleftsuperior","parenrightsuperior","twodotenleader","onedotenleader","zerooldstyle","oneoldstyle","twooldstyle","threeoldstyle","fouroldstyle","fiveoldstyle","sixoldstyle","sevenoldstyle","eightoldstyle","nineoldstyle","commasuperior","threequartersemdash","periodsuperior","questionsmall","asuperior","bsuperior","centsuperior","dsuperior","esuperior","isuperior","lsuperior","msuperior","nsuperior","osuperior","rsuperior","ssuperior","tsuperior","ff","ffi","ffl","parenleftinferior","parenrightinferior","Circumflexsmall","hyphensuperior","Gravesmall","Asmall","Bsmall","Csmall","Dsmall","Esmall","Fsmall","Gsmall","Hsmall","Ismall","Jsmall","Ksmall","Lsmall","Msmall","Nsmall","Osmall","Psmall","Qsmall","Rsmall","Ssmall","Tsmall","Usmall","Vsmall","Wsmall","Xsmall","Ysmall","Zsmall","colonmonetary","onefitted","rupiah","Tildesmall","exclamdownsmall","centoldstyle","Lslashsmall","Scaronsmall","Zcaronsmall","Dieresissmall","Brevesmall","Caronsmall","Dotaccentsmall","Macronsmall","figuredash","hypheninferior","Ogoneksmall","Ringsmall","Cedillasmall","questiondownsmall","oneeighth","threeeighths","fiveeighths","seveneighths","onethird","twothirds","zerosuperior","foursuperior","fivesuperior","sixsuperior","sevensuperior","eightsuperior","ninesuperior","zeroinferior","oneinferior","twoinferior","threeinferior","fourinferior","fiveinferior","sixinferior","seveninferior","eightinferior","nineinferior","centinferior","dollarinferior","periodinferior","commainferior","Agravesmall","Aacutesmall","Acircumflexsmall","Atildesmall","Adieresissmall","Aringsmall","AEsmall","Ccedillasmall","Egravesmall","Eacutesmall","Ecircumflexsmall","Edieresissmall","Igravesmall","Iacutesmall","Icircumflexsmall","Idieresissmall","Ethsmall","Ntildesmall","Ogravesmall","Oacutesmall","Ocircumflexsmall","Otildesmall","Odieresissmall","OEsmall","Oslashsmall","Ugravesmall","Uacutesmall","Ucircumflexsmall","Udieresissmall","Yacutesmall","Thornsmall","Ydieresissmall","001.000","001.001","001.002","001.003","Black","Bold","Book","Light","Medium","Regular","Roman","Semibold"],to=391,so=[null,{id:"hstem",min:2,stackClearing:!0,stem:!0},null,{id:"vstem",min:2,stackClearing:!0,stem:!0},{id:"vmoveto",min:1,stackClearing:!0},{id:"rlineto",min:2,resetStack:!0},{id:"hlineto",min:1,resetStack:!0},{id:"vlineto",min:1,resetStack:!0},{id:"rrcurveto",min:6,resetStack:!0},null,{id:"callsubr",min:1},{id:"return",min:0},null,null,{id:"endchar",min:0,stackClearing:!0},null,null,null,{id:"hstemhm",min:2,stackClearing:!0,stem:!0},{id:"hintmask",min:0,stackClearing:!0},{id:"cntrmask",min:0,stackClearing:!0},{id:"rmoveto",min:2,stackClearing:!0},{id:"hmoveto",min:1,stackClearing:!0},{id:"vstemhm",min:2,stackClearing:!0,stem:!0},{id:"rcurveline",min:8,resetStack:!0},{id:"rlinecurve",min:8,resetStack:!0},{id:"vvcurveto",min:4,resetStack:!0},{id:"hhcurveto",min:4,resetStack:!0},null,{id:"callgsubr",min:1},{id:"vhcurveto",min:4,resetStack:!0},{id:"hvcurveto",min:4,resetStack:!0}],ao=[null,null,null,{id:"and",min:2,stackDelta:-1},{id:"or",min:2,stackDelta:-1},{id:"not",min:1,stackDelta:0},null,null,null,{id:"abs",min:1,stackDelta:0},{id:"add",min:2,stackDelta:-1,stackFn(e,t){e[t-2]=e[t-2]+e[t-1]}},{id:"sub",min:2,stackDelta:-1,stackFn(e,t){e[t-2]=e[t-2]-e[t-1]}},{id:"div",min:2,stackDelta:-1,stackFn(e,t){e[t-2]=e[t-2]/e[t-1]}},null,{id:"neg",min:1,stackDelta:0,stackFn(e,t){e[t-1]=-e[t-1]}},{id:"eq",min:2,stackDelta:-1},null,null,{id:"drop",min:1,stackDelta:-1},null,{id:"put",min:2,stackDelta:-2},{id:"get",min:1,stackDelta:0},{id:"ifelse",min:4,stackDelta:-3},{id:"random",min:0,stackDelta:1},{id:"mul",min:2,stackDelta:-1,stackFn(e,t){e[t-2]=e[t-2]*e[t-1]}},null,{id:"sqrt",min:1,stackDelta:0},{id:"dup",min:1,stackDelta:1},{id:"exch",min:2,stackDelta:0},{id:"index",min:2,stackDelta:0},{id:"roll",min:3,stackDelta:-2},null,null,null,{id:"hflex",min:7,resetStack:!0},{id:"flex",min:13,resetStack:!0},{id:"hflex1",min:9,resetStack:!0},{id:"flex1",min:11,resetStack:!0}];class io{constructor(e,t,s){this.bytes=e.getBytes(),this.properties=t,this.seacAnalysisEnabled=!!s}parse(){const e=this.properties,t=new no;this.cff=t;const s=this.parseHeader(),a=this.parseIndex(s.endPos),i=this.parseIndex(a.endPos),n=this.parseIndex(i.endPos),r=this.parseIndex(n.endPos),o=this.parseDict(i.obj.get(0)),c=this.createDict(uo,o,t.strings);t.header=s.obj,t.names=this.parseNameIndex(a.obj),t.strings=this.parseStringIndex(n.obj),t.topDict=c,t.globalSubrIndex=r.obj,this.parsePrivateDict(t.topDict),t.isCIDFont=c.hasName("ROS");const l=c.getByName("CharStrings"),h=this.parseIndex(l).obj;t.charStringCount=h.count;const u=c.getByName("FontMatrix");u&&(e.fontMatrix=u);const d=c.getByName("FontBBox");let f,g;if(d&&(e.ascent=Math.max(d[3],d[1]),e.descent=Math.min(d[1],d[3]),e.ascentScaled=!0),t.isCIDFont){const e=this.parseIndex(c.getByName("FDArray")).obj;for(let s=0,a=e.count;s<a;++s){const a=e.get(s),i=this.createDict(uo,this.parseDict(a),t.strings);this.parsePrivateDict(i),t.fdArray.push(i)}g=null,f=this.parseCharsets(c.getByName("charset"),h.count,t.strings,!0),t.fdSelect=this.parseFDSelect(c.getByName("FDSelect"),h.count)}else f=this.parseCharsets(c.getByName("charset"),h.count,t.strings,!1),g=this.parseEncoding(c.getByName("Encoding"),e,t.strings,f.charset);t.charset=f,t.encoding=g;const p=this.parseCharStrings({charStrings:h,localSubrIndex:c.privateDict.subrsIndex,globalSubrIndex:r.obj,fdSelect:t.fdSelect,fdArray:t.fdArray,privateDict:c.privateDict});return t.charStrings=p.charStrings,t.seacs=p.seacs,t.widths=p.widths,t}parseHeader(){let e=this.bytes;const t=e.length;let s=0;for(;s<t&&1!==e[s];)++s;if(s>=t)throw new cs("Invalid CFF header");0!==s&&(Jt("cff data is shifted"),e=e.subarray(s),this.bytes=e);const a=e[0],i=e[1],n=e[2],r=e[3];return{obj:new ro(a,i,n,r),endPos:n}}parseDict(e){let t=0;function s(){let s=e[t++];return 30===s?function(){let s="";const a=15,i=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"],n=e.length;for(;t<n;){const n=e[t++],r=n>>4,o=15&n;if(r===a)break;if(s+=i[r],o===a)break;s+=i[o]}return parseFloat(s)}():28===s?(s=oa(e,t),t+=2,s):29===s?(s=e[t++],s=s<<8|e[t++],s=s<<8|e[t++],s=s<<8|e[t++],s):s>=32&&s<=246?s-139:s>=247&&s<=250?256*(s-247)+e[t++]+108:s>=251&&s<=254?-256*(s-251)-e[t++]-108:(Zt('CFFParser_parseDict: "'+s+'" is a reserved command.'),NaN)}let a=[];const i=[];t=0;const n=e.length;for(;t<n;){let n=e[t];n<=21?(12===n&&(n=n<<8|e[++t]),i.push([n,a]),a=[],++t):a.push(s())}return i}parseIndex(e){const t=new co,s=this.bytes,a=s[e++]<<8|s[e++],i=[];let n,r,o=e;if(0!==a){const t=s[e++],c=e+(a+1)*t-1;for(n=0,r=a+1;n<r;++n){let a=0;for(let i=0;i<t;++i)a<<=8,a+=s[e++];i.push(c+a)}o=i[a]}for(n=0,r=i.length-1;n<r;++n){const e=i[n],a=i[n+1];t.add(s.subarray(e,a))}return{obj:t,endPos:o}}parseNameIndex(e){const t=[];for(let s=0,a=e.count;s<a;++s){const a=e.get(s);t.push(hs(a))}return t}parseStringIndex(e){const t=new oo;for(let s=0,a=e.count;s<a;++s){const a=e.get(s);t.add(hs(a))}return t}createDict(e,t,s){const a=new e(s);for(const[i,n]of t)a.setByKey(i,n);return a}parseCharString(e,t,s,a){if(!t||e.callDepth>10)return!1;let i=e.stackSize;const n=e.stack;let r=t.length;for(let o=0;o<r;){const c=t[o++];let l=null;if(12===c){const e=t[o++];0===e?(t[o-2]=139,t[o-1]=22,i=0):l=ao[e]}else if(28===c)n[i]=oa(t,o),o+=2,i++;else if(14===c){if(i>=4&&(i-=4,this.seacAnalysisEnabled))return e.seac=n.slice(i,i+4),!1;l=so[c]}else if(c>=32&&c<=246)n[i]=c-139,i++;else if(c>=247&&c<=254)n[i]=c<251?(c-247<<8)+t[o]+108:-(c-251<<8)-t[o]-108,o++,i++;else if(255===c)n[i]=(t[o]<<24|t[o+1]<<16|t[o+2]<<8|t[o+3])/65536,o+=4,i++;else if(19===c||20===c){if(e.hints+=i>>1,0===e.hints){t.copyWithin(o-1,o,-1),o-=1,r-=1;continue}o+=e.hints+7>>3,i%=2,l=so[c]}else{if(10===c||29===c){const t=10===c?s:a;if(!t)return l=so[c],Zt("Missing subrsIndex for "+l.id),!1;let r=32768;t.count<1240?r=107:t.count<33900&&(r=1131);const o=n[--i]+r;if(o<0||o>=t.count||isNaN(o))return l=so[c],Zt("Out of bounds subrIndex for "+l.id),!1;if(e.stackSize=i,e.callDepth++,!this.parseCharString(e,t.get(o),s,a))return!1;e.callDepth--,i=e.stackSize;continue}if(11===c)return e.stackSize=i,!0;if(0===c&&o===t.length)t[o-1]=14,l=so[14];else{if(9===c){t.copyWithin(o-1,o,-1),o-=1,r-=1;continue}l=so[c]}}if(l){if(l.stem&&(e.hints+=i>>1,3===c||23===c?e.hasVStems=!0:!e.hasVStems||1!==c&&18!==c||(Zt("CFF stem hints are in wrong order"),t[o-1]=1===c?3:23)),i<l.min)return Zt("Not enough parameters for "+l.id+"; actual: "+i+", expected: "+l.min),0===i&&(t[o-1]=14,!0);e.firstStackClearing&&l.stackClearing&&(e.firstStackClearing=!1,i-=l.min,i>=2&&l.stem?i%=2:i>1&&Zt("Found too many parameters for stack-clearing command"),i>0&&(e.width=n[i-1])),"stackDelta"in l?("stackFn"in l&&l.stackFn(n,i),i+=l.stackDelta):(l.stackClearing||l.resetStack)&&(i=0)}}return r<t.length&&t.fill(14,r),e.stackSize=i,!0}parseCharStrings({charStrings:e,localSubrIndex:t,globalSubrIndex:s,fdSelect:a,fdArray:i,privateDict:n}){const r=[],o=[],c=e.count;for(let l=0;l<c;l++){const c=e.get(l),h={callDepth:0,stackSize:0,stack:[],hints:0,firstStackClearing:!0,seac:null,width:null,hasVStems:!1};let u=!0,d=null,f=n;if(a&&i.length){const e=a.getFDIndex(l);-1===e&&(Zt("Glyph index is not in fd select."),u=!1),e>=i.length&&(Zt("Invalid fd index for glyph index."),u=!1),u&&(f=i[e].privateDict,d=f.subrsIndex)}else t&&(d=t);if(u&&(u=this.parseCharString(h,c,d,s)),null!==h.width){const e=f.getByName("nominalWidthX");o[l]=e+h.width}else{const e=f.getByName("defaultWidthX");o[l]=e}null!==h.seac&&(r[l]=h.seac),u||e.set(l,new Uint8Array([14]))}return{charStrings:e,seacs:r,widths:o}}emptyPrivateDictionary(e){const t=this.createDict(go,[],e.strings);e.setByKey(18,[0,0]),e.privateDict=t}parsePrivateDict(e){if(!e.hasName("Private"))return void this.emptyPrivateDictionary(e);const t=e.getByName("Private");if(!Array.isArray(t)||2!==t.length)return void e.removeByName("Private");const s=t[0],a=t[1];if(0===s||a>=this.bytes.length)return void this.emptyPrivateDictionary(e);const i=a+s,n=this.bytes.subarray(a,i),r=this.parseDict(n),o=this.createDict(go,r,e.strings);if(e.privateDict=o,0===o.getByName("ExpansionFactor")&&o.setByName("ExpansionFactor",.06),!o.getByName("Subrs"))return;const c=o.getByName("Subrs"),l=a+c;if(0===c||l>=this.bytes.length)return void this.emptyPrivateDictionary(e);const h=this.parseIndex(l);o.subrsIndex=h.obj}parseCharsets(e,t,s,a){if(0===e)return new mo(!0,po.ISO_ADOBE,Jr);if(1===e)return new mo(!0,po.EXPERT,Zr);if(2===e)return new mo(!0,po.EXPERT_SUBSET,Qr);const i=this.bytes,n=e,r=i[e++],o=[a?0:".notdef"];let c,l,h;switch(t-=1,r){case 0:for(h=0;h<t;h++)c=i[e++]<<8|i[e++],o.push(a?c:s.get(c));break;case 1:for(;o.length<=t;)for(c=i[e++]<<8|i[e++],l=i[e++],h=0;h<=l;h++)o.push(a?c++:s.get(c++));break;case 2:for(;o.length<=t;)for(c=i[e++]<<8|i[e++],l=i[e++]<<8|i[e++],h=0;h<=l;h++)o.push(a?c++:s.get(c++));break;default:throw new cs("Unknown charset format")}const u=e,d=i.subarray(n,u);return new mo(!1,r,o,d)}parseEncoding(e,t,s,a){const i=Object.create(null),n=this.bytes;let r,o,c,l=!1,h=null;if(0===e||1===e){l=!0,r=e;const t=e?Sr:Fr;for(o=0,c=a.length;o<c;o++){const e=t.indexOf(a[o]);-1!==e&&(i[e]=o)}}else{const t=e;switch(r=n[e++],127&r){case 0:const t=n[e++];for(o=1;o<=t;o++)i[n[e++]]=o;break;case 1:const s=n[e++];let a=1;for(o=0;o<s;o++){const t=n[e++],s=n[e++];for(let e=t;e<=t+s;e++)i[e]=a++}break;default:throw new cs(`Unknown encoding format: ${r} in CFF`)}const c=e;128&r&&(n[t]&=127,function(){const t=n[e++];for(o=0;o<t;o++){const t=n[e++],r=(n[e++]<<8)+(255&n[e++]);i[t]=a.indexOf(s.get(r))}}()),h=n.subarray(t,c)}return r&=127,new bo(l,r,i,h)}parseFDSelect(e,t){const s=this.bytes,a=s[e++],i=[];let n;switch(a){case 0:for(n=0;n<t;++n){const t=s[e++];i.push(t)}break;case 3:const r=s[e++]<<8|s[e++];for(n=0;n<r;++n){let t=s[e++]<<8|s[e++];0===n&&0!==t&&(Zt("parseFDSelect: The first range must have a first GID of 0 -- trying to recover."),t=0);const a=s[e++],r=s[e]<<8|s[e+1];for(let e=t;e<r;++e)i.push(a)}e+=2;break;default:throw new cs(`parseFDSelect: Unknown format "${a}".`)}if(i.length!==t)throw new cs("parseFDSelect: Invalid font data.");return new wo(a,i)}}class no{constructor(){this.header=null,this.names=[],this.topDict=null,this.strings=new oo,this.globalSubrIndex=null,this.encoding=null,this.charset=null,this.charStrings=null,this.fdArray=[],this.fdSelect=null,this.isCIDFont=!1,this.charStringCount=0}duplicateFirstGlyph(){if(this.charStrings.count>=65535)return void Zt("Not enough space in charstrings to duplicate first glyph.");const e=this.charStrings.get(0);this.charStrings.add(e),this.isCIDFont&&this.fdSelect.fdSelect.push(this.fdSelect.fdSelect[0])}hasGlyphId(e){return!(e<0||e>=this.charStrings.count)&&this.charStrings.get(e).length>0}}class ro{constructor(e,t,s,a){this.major=e,this.minor=t,this.hdrSize=s,this.offSize=a}}class oo{constructor(){this.strings=[]}get(e){return e>=0&&e<=390?eo[e]:e-to<=this.strings.length?this.strings[e-to]:eo[0]}getSID(e){let t=eo.indexOf(e);return-1!==t?t:(t=this.strings.indexOf(e),-1!==t?t+to:-1)}add(e){this.strings.push(e)}get count(){return this.strings.length}}class co{constructor(){this.objects=[],this.length=0}add(e){this.length+=e.length,this.objects.push(e)}set(e,t){this.length+=t.length-this.objects[e].length,this.objects[e]=t}get(e){return this.objects[e]}get count(){return this.objects.length}}class lo{constructor(e,t){this.keyToNameMap=e.keyToNameMap,this.nameToKeyMap=e.nameToKeyMap,this.defaults=e.defaults,this.types=e.types,this.opcodes=e.opcodes,this.order=e.order,this.strings=t,this.values=Object.create(null)}setByKey(e,t){if(!(e in this.keyToNameMap))return!1;if(0===t.length)return!0;for(const a of t)if(isNaN(a))return Zt(`Invalid CFFDict value: "${t}" for key "${e}".`),!0;const s=this.types[e];return"num"!==s&&"sid"!==s&&"offset"!==s||(t=t[0]),this.values[e]=t,!0}setByName(e,t){if(!(e in this.nameToKeyMap))throw new cs(`Invalid dictionary name "${e}"`);this.values[this.nameToKeyMap[e]]=t}hasName(e){return this.nameToKeyMap[e]in this.values}getByName(e){if(!(e in this.nameToKeyMap))throw new cs(`Invalid dictionary name ${e}"`);const t=this.nameToKeyMap[e];return t in this.values?this.values[t]:this.defaults[t]}removeByName(e){delete this.values[this.nameToKeyMap[e]]}static createTables(e){const t={keyToNameMap:{},nameToKeyMap:{},defaults:{},types:{},opcodes:{},order:[]};for(const s of e){const e=Array.isArray(s[0])?(s[0][0]<<8)+s[0][1]:s[0];t.keyToNameMap[e]=s[1],t.nameToKeyMap[s[1]]=e,t.types[e]=s[2],t.defaults[e]=s[3],t.opcodes[e]=Array.isArray(s[0])?s[0]:[s[0]],t.order.push(e)}return t}}const ho=[[[12,30],"ROS",["sid","sid","num"],null],[[12,20],"SyntheticBase","num",null],[0,"version","sid",null],[1,"Notice","sid",null],[[12,0],"Copyright","sid",null],[2,"FullName","sid",null],[3,"FamilyName","sid",null],[4,"Weight","sid",null],[[12,1],"isFixedPitch","num",0],[[12,2],"ItalicAngle","num",0],[[12,3],"UnderlinePosition","num",-100],[[12,4],"UnderlineThickness","num",50],[[12,5],"PaintType","num",0],[[12,6],"CharstringType","num",2],[[12,7],"FontMatrix",["num","num","num","num","num","num"],[.001,0,0,.001,0,0]],[13,"UniqueID","num",null],[5,"FontBBox",["num","num","num","num"],[0,0,0,0]],[[12,8],"StrokeWidth","num",0],[14,"XUID","array",null],[15,"charset","offset",0],[16,"Encoding","offset",0],[17,"CharStrings","offset",0],[18,"Private",["offset","offset"],null],[[12,21],"PostScript","sid",null],[[12,22],"BaseFontName","sid",null],[[12,23],"BaseFontBlend","delta",null],[[12,31],"CIDFontVersion","num",0],[[12,32],"CIDFontRevision","num",0],[[12,33],"CIDFontType","num",0],[[12,34],"CIDCount","num",8720],[[12,35],"UIDBase","num",null],[[12,37],"FDSelect","offset",null],[[12,36],"FDArray","offset",null],[[12,38],"FontName","sid",null]];class uo extends lo{static get tables(){return ss(this,"tables",this.createTables(ho))}constructor(e){super(uo.tables,e),this.privateDict=null}}const fo=[[6,"BlueValues","delta",null],[7,"OtherBlues","delta",null],[8,"FamilyBlues","delta",null],[9,"FamilyOtherBlues","delta",null],[[12,9],"BlueScale","num",.039625],[[12,10],"BlueShift","num",7],[[12,11],"BlueFuzz","num",1],[10,"StdHW","num",null],[11,"StdVW","num",null],[[12,12],"StemSnapH","delta",null],[[12,13],"StemSnapV","delta",null],[[12,14],"ForceBold","num",0],[[12,17],"LanguageGroup","num",0],[[12,18],"ExpansionFactor","num",.06],[[12,19],"initialRandomSeed","num",0],[20,"defaultWidthX","num",0],[21,"nominalWidthX","num",0],[19,"Subrs","offset",null]];class go extends lo{static get tables(){return ss(this,"tables",this.createTables(fo))}constructor(e){super(go.tables,e),this.subrsIndex=null}}const po={ISO_ADOBE:0,EXPERT:1,EXPERT_SUBSET:2};class mo{constructor(e,t,s,a){this.predefined=e,this.format=t,this.charset=s,this.raw=a}}class bo{constructor(e,t,s,a){this.predefined=e,this.format=t,this.encoding=s,this.raw=a}}class wo{constructor(e,t){this.format=e,this.fdSelect=t}getFDIndex(e){return e<0||e>=this.fdSelect.length?-1:this.fdSelect[e]}}class yo{constructor(){this.offsets=Object.create(null)}isTracking(e){return e in this.offsets}track(e,t){if(e in this.offsets)throw new cs(`Already tracking location of ${e}`);this.offsets[e]=t}offset(e){for(const t in this.offsets)this.offsets[t]+=e}setEntryLocation(e,t,s){if(!(e in this.offsets))throw new cs(`Not tracking location of ${e}`);const a=s.data,i=this.offsets[e];for(let n=0,r=t.length;n<r;++n){const e=5*n+i,s=e+1,r=e+2,o=e+3,c=e+4;if(29!==a[e]||0!==a[s]||0!==a[r]||0!==a[o]||0!==a[c])throw new cs("writing to an offset that is not empty");const l=t[n];a[e]=29,a[s]=l>>24&255,a[r]=l>>16&255,a[o]=l>>8&255,a[c]=255&l}}}class xo{constructor(e){this.cff=e}compile(){const e=this.cff,t={data:[],length:0,add(e){try{this.data.push(...e)}catch{this.data=this.data.concat(e)}this.length=this.data.length}},s=this.compileHeader(e.header);t.add(s);const a=this.compileNameIndex(e.names);if(t.add(a),e.isCIDFont&&e.topDict.hasName("FontMatrix")){const t=e.topDict.getByName("FontMatrix");e.topDict.removeByName("FontMatrix");for(const s of e.fdArray){let e=t.slice(0);s.hasName("FontMatrix")&&(e=ms.transform(e,s.getByName("FontMatrix"))),s.setByName("FontMatrix",e)}}const i=e.topDict.getByName("XUID");i?.length>16&&e.topDict.removeByName("XUID"),e.topDict.setByName("charset",0);let n=this.compileTopDicts([e.topDict],t.length,e.isCIDFont);t.add(n.output);const r=n.trackers[0],o=this.compileStringIndex(e.strings.strings);t.add(o);const c=this.compileIndex(e.globalSubrIndex);if(t.add(c),e.encoding&&e.topDict.hasName("Encoding"))if(e.encoding.predefined)r.setEntryLocation("Encoding",[e.encoding.format],t);else{const s=this.compileEncoding(e.encoding);r.setEntryLocation("Encoding",[t.length],t),t.add(s)}const l=this.compileCharset(e.charset,e.charStrings.count,e.strings,e.isCIDFont);r.setEntryLocation("charset",[t.length],t),t.add(l);const h=this.compileCharStrings(e.charStrings);if(r.setEntryLocation("CharStrings",[t.length],t),t.add(h),e.isCIDFont){r.setEntryLocation("FDSelect",[t.length],t);const s=this.compileFDSelect(e.fdSelect);t.add(s),n=this.compileTopDicts(e.fdArray,t.length,!0),r.setEntryLocation("FDArray",[t.length],t),t.add(n.output);const a=n.trackers;this.compilePrivateDicts(e.fdArray,a,t)}return this.compilePrivateDicts([e.topDict],[r],t),t.add([0]),t.data}encodeNumber(e){return Number.isInteger(e)?this.encodeInteger(e):this.encodeFloat(e)}static get EncodeFloatRegExp(){return ss(this,"EncodeFloatRegExp",/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/)}encodeFloat(e){let t=e.toString();const s=xo.EncodeFloatRegExp.exec(t);if(s){const a=parseFloat("1e"+((s[2]?+s[2]:0)+s[1].length));t=(Math.round(e*a)/a).toString()}let a,i,n="";for(a=0,i=t.length;a<i;++a){const e=t[a];n+="e"===e?"-"===t[++a]?"c":"b":"."===e?"a":"-"===e?"e":e}n+=1&n.length?"f":"ff";const r=[30];for(a=0,i=n.length;a<i;a+=2)r.push(parseInt(n.substring(a,a+2),16));return r}encodeInteger(e){let t;return t=e>=-107&&e<=107?[e+139]:e>=108&&e<=1131?[247+((e-=108)>>8),255&e]:e>=-1131&&e<=-108?[251+((e=-e-108)>>8),255&e]:e>=-32768&&e<=32767?[28,e>>8&255,255&e]:[29,e>>24&255,e>>16&255,e>>8&255,255&e],t}compileHeader(e){return[e.major,e.minor,4,e.offSize]}compileNameIndex(e){const t=new co;for(const s of e){const e=Math.min(s.length,127);let a=new Array(e);for(let t=0;t<e;t++){let e=s[t];(e<"!"||e>"~"||"["===e||"]"===e||"("===e||")"===e||"{"===e||"}"===e||"<"===e||">"===e||"/"===e||"%"===e)&&(e="_"),a[t]=e}a=a.join(""),""===a&&(a="Bad_Font_Name"),t.add(us(a))}return this.compileIndex(t)}compileTopDicts(e,t,s){const a=[];let i=new co;for(const n of e){s&&(n.removeByName("CIDFontVersion"),n.removeByName("CIDFontRevision"),n.removeByName("CIDFontType"),n.removeByName("CIDCount"),n.removeByName("UIDBase"));const e=new yo,r=this.compileDict(n,e);a.push(e),i.add(r),e.offset(t)}return i=this.compileIndex(i,a),{trackers:a,output:i}}compilePrivateDicts(e,t,s){for(let a=0,i=e.length;a<i;++a){const i=e[a],n=i.privateDict;if(!n||!i.hasName("Private"))throw new cs("There must be a private dictionary.");const r=new yo,o=this.compileDict(n,r);let c=s.length;if(r.offset(c),o.length||(c=0),t[a].setEntryLocation("Private",[o.length,c],s),s.add(o),n.subrsIndex&&n.hasName("Subrs")){const e=this.compileIndex(n.subrsIndex);r.setEntryLocation("Subrs",[o.length],s),s.add(e)}}}compileDict(e,t){const s=[];for(const a of e.order){if(!(a in e.values))continue;let i=e.values[a],n=e.types[a];if(Array.isArray(n)||(n=[n]),Array.isArray(i)||(i=[i]),0!==i.length){for(let r=0,o=n.length;r<o;++r){const o=n[r],c=i[r];switch(o){case"num":case"sid":s.push(...this.encodeNumber(c));break;case"offset":const n=e.keyToNameMap[a];t.isTracking(n)||t.track(n,s.length),s.push(29,0,0,0,0);break;case"array":case"delta":s.push(...this.encodeNumber(c));for(let e=1,t=i.length;e<t;++e)s.push(...this.encodeNumber(i[e]));break;default:throw new cs(`Unknown data type of ${o}`)}}s.push(...e.opcodes[a])}}return s}compileStringIndex(e){const t=new co;for(const s of e)t.add(us(s));return this.compileIndex(t)}compileCharStrings(e){const t=new co;for(let s=0;s<e.count;s++){const a=e.get(s);0!==a.length?t.add(a):t.add(new Uint8Array([139,14]))}return this.compileIndex(t)}compileCharset(e,t,s,a){let i;const n=t-1;if(a){const e=n-1;i=new Uint8Array([2,0,1,e>>8&255,255&e])}else{i=new Uint8Array(1+2*n),i[0]=0;let t=0;const a=e.charset.length;let r=!1;for(let n=1;n<i.length;n+=2){let o=0;if(t<a){const a=e.charset[t++];o=s.getSID(a),-1===o&&(o=0,r||(r=!0,Zt(`Couldn't find ${a} in CFF strings`)))}i[n]=o>>8&255,i[n+1]=255&o}}return this.compileTypedArray(i)}compileEncoding(e){return this.compileTypedArray(e.raw)}compileFDSelect(e){const t=e.format;let s,a;switch(t){case 0:for(s=new Uint8Array(1+e.fdSelect.length),s[0]=t,a=0;a<e.fdSelect.length;a++)s[a+1]=e.fdSelect[a];break;case 3:const i=0;let n=e.fdSelect[0];const r=[t,0,0,i>>8&255,255&i,n];for(a=1;a<e.fdSelect.length;a++){const t=e.fdSelect[a];t!==n&&(r.push(a>>8&255,255&a,t),n=t)}const o=(r.length-3)/3;r[1]=o>>8&255,r[2]=255&o,r.push(a>>8&255,255&a),s=new Uint8Array(r)}return this.compileTypedArray(s)}compileTypedArray(e){return Array.from(e)}compileIndex(e,t=[]){const s=e.objects,a=s.length;if(0===a)return[0,0];const i=[a>>8&255,255&a];let n,r,o=1;for(n=0;n<a;++n)o+=s[n].length;r=o<256?1:o<65536?2:o<16777216?3:4,i.push(r);let c=1;for(n=0;n<a+1;n++)1===r?i.push(255&c):2===r?i.push(c>>8&255,255&c):3===r?i.push(c>>16&255,c>>8&255,255&c):i.push(c>>>24&255,c>>16&255,c>>8&255,255&c),s[n]&&(c+=s[n].length);for(n=0;n<a;n++)t[n]&&t[n].offset(i.length),i.push(...s[n]);return i}}const ko=Ks(function(e){e["Times-Roman"]="Times-Roman",e.Helvetica="Helvetica",e.Courier="Courier",e.Symbol="Symbol",e["Times-Bold"]="Times-Bold",e["Helvetica-Bold"]="Helvetica-Bold",e["Courier-Bold"]="Courier-Bold",e.ZapfDingbats="ZapfDingbats",e["Times-Italic"]="Times-Italic",e["Helvetica-Oblique"]="Helvetica-Oblique",e["Courier-Oblique"]="Courier-Oblique",e["Times-BoldItalic"]="Times-BoldItalic",e["Helvetica-BoldOblique"]="Helvetica-BoldOblique",e["Courier-BoldOblique"]="Courier-BoldOblique",e.ArialNarrow="Helvetica",e["ArialNarrow-Bold"]="Helvetica-Bold",e["ArialNarrow-BoldItalic"]="Helvetica-BoldOblique",e["ArialNarrow-Italic"]="Helvetica-Oblique",e.ArialBlack="Helvetica",e["ArialBlack-Bold"]="Helvetica-Bold",e["ArialBlack-BoldItalic"]="Helvetica-BoldOblique",e["ArialBlack-Italic"]="Helvetica-Oblique",e["Arial-Black"]="Helvetica",e["Arial-Black-Bold"]="Helvetica-Bold",e["Arial-Black-BoldItalic"]="Helvetica-BoldOblique",e["Arial-Black-Italic"]="Helvetica-Oblique",e.Arial="Helvetica",e["Arial-Bold"]="Helvetica-Bold",e["Arial-BoldItalic"]="Helvetica-BoldOblique",e["Arial-Italic"]="Helvetica-Oblique",e.ArialMT="Helvetica",e["Arial-BoldItalicMT"]="Helvetica-BoldOblique",e["Arial-BoldMT"]="Helvetica-Bold",e["Arial-ItalicMT"]="Helvetica-Oblique",e["Arial-BoldItalicMT-BoldItalic"]="Helvetica-BoldOblique",e["Arial-BoldMT-Bold"]="Helvetica-Bold",e["Arial-ItalicMT-Italic"]="Helvetica-Oblique",e.ArialUnicodeMS="Helvetica",e["ArialUnicodeMS-Bold"]="Helvetica-Bold",e["ArialUnicodeMS-BoldItalic"]="Helvetica-BoldOblique",e["ArialUnicodeMS-Italic"]="Helvetica-Oblique",e["Courier-BoldItalic"]="Courier-BoldOblique",e["Courier-Italic"]="Courier-Oblique",e.CourierNew="Courier",e["CourierNew-Bold"]="Courier-Bold",e["CourierNew-BoldItalic"]="Courier-BoldOblique",e["CourierNew-Italic"]="Courier-Oblique",e["CourierNewPS-BoldItalicMT"]="Courier-BoldOblique",e["CourierNewPS-BoldMT"]="Courier-Bold",e["CourierNewPS-ItalicMT"]="Courier-Oblique",e.CourierNewPSMT="Courier",e["Helvetica-BoldItalic"]="Helvetica-BoldOblique",e["Helvetica-Italic"]="Helvetica-Oblique",e["HelveticaLTStd-Bold"]="Helvetica-Bold",e["Symbol-Bold"]="Symbol",e["Symbol-BoldItalic"]="Symbol",e["Symbol-Italic"]="Symbol",e.TimesNewRoman="Times-Roman",e["TimesNewRoman-Bold"]="Times-Bold",e["TimesNewRoman-BoldItalic"]="Times-BoldItalic",e["TimesNewRoman-Italic"]="Times-Italic",e.TimesNewRomanPS="Times-Roman",e["TimesNewRomanPS-Bold"]="Times-Bold",e["TimesNewRomanPS-BoldItalic"]="Times-BoldItalic",e["TimesNewRomanPS-BoldItalicMT"]="Times-BoldItalic",e["TimesNewRomanPS-BoldMT"]="Times-Bold",e["TimesNewRomanPS-Italic"]="Times-Italic",e["TimesNewRomanPS-ItalicMT"]="Times-Italic",e.TimesNewRomanPSMT="Times-Roman",e["TimesNewRomanPSMT-Bold"]="Times-Bold",e["TimesNewRomanPSMT-BoldItalic"]="Times-BoldItalic",e["TimesNewRomanPSMT-Italic"]="Times-Italic"}),vo=Ks(function(e){e.Courier="FoxitFixed.pfb",e["Courier-Bold"]="FoxitFixedBold.pfb",e["Courier-BoldOblique"]="FoxitFixedBoldItalic.pfb",e["Courier-Oblique"]="FoxitFixedItalic.pfb",e.Helvetica="LiberationSans-Regular.ttf",e["Helvetica-Bold"]="LiberationSans-Bold.ttf",e["Helvetica-BoldOblique"]="LiberationSans-BoldItalic.ttf",e["Helvetica-Oblique"]="LiberationSans-Italic.ttf",e["Times-Roman"]="FoxitSerif.pfb",e["Times-Bold"]="FoxitSerifBold.pfb",e["Times-BoldItalic"]="FoxitSerifBoldItalic.pfb",e["Times-Italic"]="FoxitSerifItalic.pfb",e.Symbol="FoxitSymbol.pfb",e.ZapfDingbats="FoxitDingbats.pfb",e["LiberationSans-Regular"]="LiberationSans-Regular.ttf",e["LiberationSans-Bold"]="LiberationSans-Bold.ttf",e["LiberationSans-Italic"]="LiberationSans-Italic.ttf",e["LiberationSans-BoldItalic"]="LiberationSans-BoldItalic.ttf"}),Ao=Ks(function(e){e.Calibri="Helvetica",e["Calibri-Bold"]="Helvetica-Bold",e["Calibri-BoldItalic"]="Helvetica-BoldOblique",e["Calibri-Italic"]="Helvetica-Oblique",e.CenturyGothic="Helvetica",e["CenturyGothic-Bold"]="Helvetica-Bold",e["CenturyGothic-BoldItalic"]="Helvetica-BoldOblique",e["CenturyGothic-Italic"]="Helvetica-Oblique",e.ComicSansMS="Comic Sans MS",e["ComicSansMS-Bold"]="Comic Sans MS-Bold",e["ComicSansMS-BoldItalic"]="Comic Sans MS-BoldItalic",e["ComicSansMS-Italic"]="Comic Sans MS-Italic",e.GillSansMT="Helvetica",e["GillSansMT-Bold"]="Helvetica-Bold",e["GillSansMT-BoldItalic"]="Helvetica-BoldOblique",e["GillSansMT-Italic"]="Helvetica-Oblique",e.Impact="Helvetica",e["ItcSymbol-Bold"]="Helvetica-Bold",e["ItcSymbol-BoldItalic"]="Helvetica-BoldOblique",e["ItcSymbol-Book"]="Helvetica",e["ItcSymbol-BookItalic"]="Helvetica-Oblique",e["ItcSymbol-Medium"]="Helvetica",e["ItcSymbol-MediumItalic"]="Helvetica-Oblique",e.LucidaConsole="Courier",e["LucidaConsole-Bold"]="Courier-Bold",e["LucidaConsole-BoldItalic"]="Courier-BoldOblique",e["LucidaConsole-Italic"]="Courier-Oblique",e["LucidaSans-Demi"]="Helvetica-Bold",e["MS-Gothic"]="MS Gothic",e["MS-Gothic-Bold"]="MS Gothic-Bold",e["MS-Gothic-BoldItalic"]="MS Gothic-BoldItalic",e["MS-Gothic-Italic"]="MS Gothic-Italic",e["MS-Mincho"]="MS Mincho",e["MS-Mincho-Bold"]="MS Mincho-Bold",e["MS-Mincho-BoldItalic"]="MS Mincho-BoldItalic",e["MS-Mincho-Italic"]="MS Mincho-Italic",e["MS-PGothic"]="MS PGothic",e["MS-PGothic-Bold"]="MS PGothic-Bold",e["MS-PGothic-BoldItalic"]="MS PGothic-BoldItalic",e["MS-PGothic-Italic"]="MS PGothic-Italic",e["MS-PMincho"]="MS PMincho",e["MS-PMincho-Bold"]="MS PMincho-Bold",e["MS-PMincho-BoldItalic"]="MS PMincho-BoldItalic",e["MS-PMincho-Italic"]="MS PMincho-Italic",e.NuptialScript="Times-Italic",e.SegoeUISymbol="Helvetica"}),Co=Ks(function(e){e["Adobe Jenson"]=!0,e["Adobe Text"]=!0,e.Albertus=!0,e.Aldus=!0,e.Alexandria=!0,e.Algerian=!0,e["American Typewriter"]=!0,e.Antiqua=!0,e.Apex=!0,e.Arno=!0,e.Aster=!0,e.Aurora=!0,e.Baskerville=!0,e.Bell=!0,e.Bembo=!0,e["Bembo Schoolbook"]=!0,e.Benguiat=!0,e["Berkeley Old Style"]=!0,e["Bernhard Modern"]=!0,e["Berthold City"]=!0,e.Bodoni=!0,e["Bauer Bodoni"]=!0,e["Book Antiqua"]=!0,e.Bookman=!0,e["Bordeaux Roman"]=!0,e["Californian FB"]=!0,e.Calisto=!0,e.Calvert=!0,e.Capitals=!0,e.Cambria=!0,e.Cartier=!0,e.Caslon=!0,e.Catull=!0,e.Centaur=!0,e["Century Old Style"]=!0,e["Century Schoolbook"]=!0,e.Chaparral=!0,e["Charis SIL"]=!0,e.Cheltenham=!0,e["Cholla Slab"]=!0,e.Clarendon=!0,e.Clearface=!0,e.Cochin=!0,e.Colonna=!0,e["Computer Modern"]=!0,e["Concrete Roman"]=!0,e.Constantia=!0,e["Cooper Black"]=!0,e.Corona=!0,e.Ecotype=!0,e.Egyptienne=!0,e.Elephant=!0,e.Excelsior=!0,e.Fairfield=!0,e["FF Scala"]=!0,e.Folkard=!0,e.Footlight=!0,e.FreeSerif=!0,e["Friz Quadrata"]=!0,e.Garamond=!0,e.Gentium=!0,e.Georgia=!0,e.Gloucester=!0,e["Goudy Old Style"]=!0,e["Goudy Schoolbook"]=!0,e["Goudy Pro Font"]=!0,e.Granjon=!0,e["Guardian Egyptian"]=!0,e.Heather=!0,e.Hercules=!0,e["High Tower Text"]=!0,e.Hiroshige=!0,e["Hoefler Text"]=!0,e["Humana Serif"]=!0,e.Imprint=!0,e["Ionic No. 5"]=!0,e.Janson=!0,e.Joanna=!0,e.Korinna=!0,e.Lexicon=!0,e.LiberationSerif=!0,e["Liberation Serif"]=!0,e["Linux Libertine"]=!0,e.Literaturnaya=!0,e.Lucida=!0,e["Lucida Bright"]=!0,e.Melior=!0,e.Memphis=!0,e.Miller=!0,e.Minion=!0,e.Modern=!0,e["Mona Lisa"]=!0,e["Mrs Eaves"]=!0,e["MS Serif"]=!0,e["Museo Slab"]=!0,e["New York"]=!0,e["Nimbus Roman"]=!0,e["NPS Rawlinson Roadway"]=!0,e.NuptialScript=!0,e.Palatino=!0,e.Perpetua=!0,e.Plantin=!0,e["Plantin Schoolbook"]=!0,e.Playbill=!0,e["Poor Richard"]=!0,e["Rawlinson Roadway"]=!0,e.Renault=!0,e.Requiem=!0,e.Rockwell=!0,e.Roman=!0,e["Rotis Serif"]=!0,e.Sabon=!0,e.Scala=!0,e.Seagull=!0,e.Sistina=!0,e.Souvenir=!0,e.STIX=!0,e["Stone Informal"]=!0,e["Stone Serif"]=!0,e.Sylfaen=!0,e.Times=!0,e.Trajan=!0,e["Trinité"]=!0,e["Trump Mediaeval"]=!0,e.Utopia=!0,e["Vale Type"]=!0,e["Bitstream Vera"]=!0,e["Vera Serif"]=!0,e.Versailles=!0,e.Wanted=!0,e.Weiss=!0,e["Wide Latin"]=!0,e.Windsor=!0,e.XITS=!0}),So=Ks(function(e){e.Dingbats=!0,e.Symbol=!0,e.ZapfDingbats=!0,e.Wingdings=!0,e["Wingdings-Bold"]=!0,e["Wingdings-Regular"]=!0}),Io=Ks(function(e){e[2]=10,e[3]=32,e[4]=33,e[5]=34,e[6]=35,e[7]=36,e[8]=37,e[9]=38,e[10]=39,e[11]=40,e[12]=41,e[13]=42,e[14]=43,e[15]=44,e[16]=45,e[17]=46,e[18]=47,e[19]=48,e[20]=49,e[21]=50,e[22]=51,e[23]=52,e[24]=53,e[25]=54,e[26]=55,e[27]=56,e[28]=57,e[29]=58,e[30]=894,e[31]=60,e[32]=61,e[33]=62,e[34]=63,e[35]=64,e[36]=65,e[37]=66,e[38]=67,e[39]=68,e[40]=69,e[41]=70,e[42]=71,e[43]=72,e[44]=73,e[45]=74,e[46]=75,e[47]=76,e[48]=77,e[49]=78,e[50]=79,e[51]=80,e[52]=81,e[53]=82,e[54]=83,e[55]=84,e[56]=85,e[57]=86,e[58]=87,e[59]=88,e[60]=89,e[61]=90,e[62]=91,e[63]=92,e[64]=93,e[65]=94,e[66]=95,e[67]=96,e[68]=97,e[69]=98,e[70]=99,e[71]=100,e[72]=101,e[73]=102,e[74]=103,e[75]=104,e[76]=105,e[77]=106,e[78]=107,e[79]=108,e[80]=109,e[81]=110,e[82]=111,e[83]=112,e[84]=113,e[85]=114,e[86]=115,e[87]=116,e[88]=117,e[89]=118,e[90]=119,e[91]=120,e[92]=121,e[93]=122,e[94]=123,e[95]=124,e[96]=125,e[97]=126,e[98]=196,e[99]=197,e[100]=199,e[101]=201,e[102]=209,e[103]=214,e[104]=220,e[105]=225,e[106]=224,e[107]=226,e[108]=228,e[109]=227,e[110]=229,e[111]=231,e[112]=233,e[113]=232,e[114]=234,e[115]=235,e[116]=237,e[117]=236,e[118]=238,e[119]=239,e[120]=241,e[121]=243,e[122]=242,e[123]=244,e[124]=246,e[125]=245,e[126]=250,e[127]=249,e[128]=251,e[129]=252,e[130]=8224,e[131]=176,e[132]=162,e[133]=163,e[134]=167,e[135]=8226,e[136]=182,e[137]=223,e[138]=174,e[139]=169,e[140]=8482,e[141]=180,e[142]=168,e[143]=8800,e[144]=198,e[145]=216,e[146]=8734,e[147]=177,e[148]=8804,e[149]=8805,e[150]=165,e[151]=181,e[152]=8706,e[153]=8721,e[154]=8719,e[156]=8747,e[157]=170,e[158]=186,e[159]=8486,e[160]=230,e[161]=248,e[162]=191,e[163]=161,e[164]=172,e[165]=8730,e[166]=402,e[167]=8776,e[168]=8710,e[169]=171,e[170]=187,e[171]=8230,e[179]=8220,e[180]=8221,e[181]=8216,e[182]=8217,e[200]=193,e[203]=205,e[207]=211,e[210]=218,e[223]=711,e[224]=321,e[225]=322,e[226]=352,e[227]=353,e[228]=381,e[229]=382,e[233]=221,e[234]=253,e[252]=263,e[253]=268,e[254]=269,e[258]=258,e[260]=260,e[261]=261,e[265]=280,e[266]=281,e[267]=282,e[268]=283,e[269]=313,e[275]=323,e[276]=324,e[278]=328,e[283]=344,e[284]=345,e[285]=346,e[286]=347,e[292]=367,e[295]=377,e[296]=378,e[298]=380,e[305]=963,e[306]=964,e[307]=966,e[308]=8215,e[309]=8252,e[310]=8319,e[311]=8359,e[312]=8592,e[313]=8593,e[337]=9552,e[493]=1039,e[494]=1040,e[570]=1040,e[571]=1041,e[572]=1042,e[573]=1043,e[574]=1044,e[575]=1045,e[576]=1046,e[577]=1047,e[578]=1048,e[579]=1049,e[580]=1050,e[581]=1051,e[582]=1052,e[583]=1053,e[584]=1054,e[585]=1055,e[586]=1056,e[587]=1057,e[588]=1058,e[589]=1059,e[590]=1060,e[591]=1061,e[592]=1062,e[593]=1063,e[594]=1064,e[595]=1065,e[596]=1066,e[597]=1067,e[598]=1068,e[599]=1069,e[600]=1070,e[601]=1071,e[602]=1072,e[603]=1073,e[604]=1074,e[605]=1075,e[606]=1076,e[607]=1077,e[608]=1078,e[609]=1079,e[610]=1080,e[611]=1081,e[612]=1082,e[613]=1083,e[614]=1084,e[615]=1085,e[616]=1086,e[617]=1087,e[618]=1088,e[619]=1089,e[620]=1090,e[621]=1091,e[622]=1092,e[623]=1093,e[624]=1094,e[625]=1095,e[626]=1096,e[627]=1097,e[628]=1098,e[629]=1099,e[630]=1100,e[631]=1101,e[632]=1102,e[633]=1103,e[672]=1488,e[673]=1489,e[674]=1490,e[675]=1491,e[676]=1492,e[677]=1493,e[678]=1494,e[679]=1495,e[680]=1496,e[681]=1497,e[682]=1498,e[683]=1499,e[684]=1500,e[685]=1501,e[686]=1502,e[687]=1503,e[688]=1504,e[689]=1505,e[690]=1506,e[691]=1507,e[692]=1508,e[693]=1509,e[694]=1510,e[695]=1511,e[696]=1512,e[697]=1513,e[698]=1514,e[705]=1524,e[706]=8362,e[710]=64288,e[711]=64298,e[759]=1617,e[761]=1776,e[763]=1778,e[775]=1652,e[777]=1764,e[778]=1780,e[779]=1781,e[780]=1782,e[782]=771,e[783]=64726,e[786]=8363,e[788]=8532,e[790]=768,e[791]=769,e[792]=768,e[795]=803,e[797]=64336,e[798]=64337,e[799]=64342,e[800]=64343,e[801]=64344,e[802]=64345,e[803]=64362,e[804]=64363,e[805]=64364,e[2424]=7821,e[2425]=7822,e[2426]=7823,e[2427]=7824,e[2428]=7825,e[2429]=7826,e[2430]=7827,e[2433]=7682,e[2678]=8045,e[2679]=8046,e[2830]=1552,e[2838]=686,e[2840]=751,e[2842]=753,e[2843]=754,e[2844]=755,e[2846]=757,e[2856]=767,e[2857]=848,e[2858]=849,e[2862]=853,e[2863]=854,e[2864]=855,e[2865]=861,e[2866]=862,e[2906]=7460,e[2908]=7462,e[2909]=7463,e[2910]=7464,e[2912]=7466,e[2913]=7467,e[2914]=7468,e[2916]=7470,e[2917]=7471,e[2918]=7472,e[2920]=7474,e[2921]=7475,e[2922]=7476,e[2924]=7478,e[2925]=7479,e[2926]=7480,e[2928]=7482,e[2929]=7483,e[2930]=7484,e[2932]=7486,e[2933]=7487,e[2934]=7488,e[2936]=7490,e[2937]=7491,e[2938]=7492,e[2940]=7494,e[2941]=7495,e[2942]=7496,e[2944]=7498,e[2946]=7500,e[2948]=7502,e[2950]=7504,e[2951]=7505,e[2952]=7506,e[2954]=7508,e[2955]=7509,e[2956]=7510,e[2958]=7512,e[2959]=7513,e[2960]=7514,e[2962]=7516,e[2963]=7517,e[2964]=7518,e[2966]=7520,e[2967]=7521,e[2968]=7522,e[2970]=7524,e[2971]=7525,e[2972]=7526,e[2974]=7528,e[2975]=7529,e[2976]=7530,e[2978]=1537,e[2979]=1538,e[2980]=1539,e[2982]=1549,e[2983]=1551,e[2984]=1552,e[2986]=1554,e[2987]=1555,e[2988]=1556,e[2990]=1623,e[2991]=1624,e[2995]=1775,e[2999]=1791,e[3002]=64290,e[3003]=64291,e[3004]=64292,e[3006]=64294,e[3007]=64295,e[3008]=64296,e[3011]=1900,e[3014]=8223,e[3015]=8244,e[3017]=7532,e[3018]=7533,e[3019]=7534,e[3075]=7590,e[3076]=7591,e[3079]=7594,e[3080]=7595,e[3083]=7598,e[3084]=7599,e[3087]=7602,e[3088]=7603,e[3091]=7606,e[3092]=7607,e[3095]=7610,e[3096]=7611,e[3099]=7614,e[3100]=7615,e[3103]=7618,e[3104]=7619,e[3107]=8337,e[3108]=8338,e[3116]=1884,e[3119]=1885,e[3120]=1885,e[3123]=1886,e[3124]=1886,e[3127]=1887,e[3128]=1887,e[3131]=1888,e[3132]=1888,e[3135]=1889,e[3136]=1889,e[3139]=1890,e[3140]=1890,e[3143]=1891,e[3144]=1891,e[3147]=1892,e[3148]=1892,e[3153]=580,e[3154]=581,e[3157]=584,e[3158]=585,e[3161]=588,e[3162]=589,e[3165]=891,e[3166]=892,e[3169]=1274,e[3170]=1275,e[3173]=1278,e[3174]=1279,e[3181]=7622,e[3182]=7623,e[3282]=11799,e[3316]=578,e[3379]=42785,e[3393]=1159,e[3416]=8377}),Bo=Ks(function(e){e[227]=322,e[264]=261,e[291]=346}),Fo=Ks(function(e){e[1]=32,e[4]=65,e[5]=192,e[6]=193,e[9]=196,e[17]=66,e[18]=67,e[21]=268,e[24]=68,e[28]=69,e[29]=200,e[30]=201,e[32]=282,e[38]=70,e[39]=71,e[44]=72,e[47]=73,e[48]=204,e[49]=205,e[58]=74,e[60]=75,e[62]=76,e[68]=77,e[69]=78,e[75]=79,e[76]=210,e[80]=214,e[87]=80,e[89]=81,e[90]=82,e[92]=344,e[94]=83,e[97]=352,e[100]=84,e[104]=85,e[109]=220,e[115]=86,e[116]=87,e[121]=88,e[122]=89,e[124]=221,e[127]=90,e[129]=381,e[258]=97,e[259]=224,e[260]=225,e[263]=228,e[268]=261,e[271]=98,e[272]=99,e[273]=263,e[275]=269,e[282]=100,e[286]=101,e[287]=232,e[288]=233,e[290]=283,e[295]=281,e[296]=102,e[336]=103,e[346]=104,e[349]=105,e[350]=236,e[351]=237,e[361]=106,e[364]=107,e[367]=108,e[371]=322,e[373]=109,e[374]=110,e[381]=111,e[382]=242,e[383]=243,e[386]=246,e[393]=112,e[395]=113,e[396]=114,e[398]=345,e[400]=115,e[401]=347,e[403]=353,e[410]=116,e[437]=117,e[442]=252,e[448]=118,e[449]=119,e[454]=120,e[455]=121,e[457]=253,e[460]=122,e[462]=382,e[463]=380,e[853]=44,e[855]=58,e[856]=46,e[876]=47,e[878]=45,e[882]=45,e[894]=40,e[895]=41,e[896]=91,e[897]=93,e[923]=64,e[940]=163,e[1004]=48,e[1005]=49,e[1006]=50,e[1007]=51,e[1008]=52,e[1009]=53,e[1010]=54,e[1011]=55,e[1012]=56,e[1013]=57,e[1081]=37,e[1085]=43,e[1086]=45});function Mo(e){const t=Kr(e);return ko()[t]}function To(e){const t=Kr(e);return!!(ko()[t]||Ao()[t]||Co()[t]||So()[t])}class Ro{constructor(e=[]){this._map=e}get length(){return this._map.length}forEach(e){for(const t in this._map)e(t,this._map[t].codePointAt(0))}has(e){return void 0!==this._map[e]}get(e){return this._map[e]}charCodeOf(e){const t=this._map;if(t.length<=65536)return t.indexOf(e);for(const s in t)if(t[s]===e)return 0|s;return-1}amend(e){for(const t in e)this._map[t]=e[t]}}class No{constructor(e,t){this.firstChar=e,this.lastChar=t}get length(){return this.lastChar+1-this.firstChar}forEach(e){for(let t=this.firstChar,s=this.lastChar;t<=s;t++)e(t,t)}has(e){return this.firstChar<=e&&e<=this.lastChar}get(e){if(this.firstChar<=e&&e<=this.lastChar)return String.fromCharCode(e)}charCodeOf(e){return Number.isInteger(e)&&e>=this.firstChar&&e<=this.lastChar?e:-1}amend(e){Qt("Should not call amend()")}}class Do{constructor(e,t){this.properties=t;const s=new io(e,t,jr);this.cff=s.parse(),this.cff.duplicateFirstGlyph();const a=new xo(this.cff);this.seacs=this.cff.seacs;try{this.data=a.compile()}catch{Zt("Failed to compile font "+t.loadedName),this.data=e}this._createBuiltInEncoding()}get numGlyphs(){return this.cff.charStrings.count}getCharset(){return this.cff.charset.charset}getGlyphMapping(){const e=this.cff,t=this.properties,{cidToGidMap:s,cMap:a}=t,i=e.charset.charset;let n,r;if(t.composite){let t,o;if(s?.length>0){t=Object.create(null);for(let e=0,a=s.length;e<a;e++){const a=s[e];void 0!==a&&(t[a]=e)}}if(n=Object.create(null),e.isCIDFont)for(r=0;r<i.length;r++){const e=i[r];o=a.charCodeOf(e),void 0!==t?.[o]&&(o=t[o]),n[o]=r}else for(r=0;r<e.charStrings.count;r++)o=a.charCodeOf(r),n[o]=r;return n}let o=e.encoding?e.encoding.encoding:null;return t.isInternalFont&&(o=t.defaultEncoding),n=Xr(t,o,i),n}hasGlyphId(e){return this.cff.hasGlyphId(e)}_createBuiltInEncoding(){const{charset:e,encoding:t}=this.cff;if(!e||!t)return;const s=e.charset,a=t.encoding,i=[];for(const n in a){const e=a[n];if(e>=0){const t=s[e];t&&(i[n]=t)}}i.length>0&&(this.properties.builtInEncoding=i)}}function Oo(e,t){return oa(e,t)/16384}function Po(e){const t=e.length;let s=32768;return t<1240?s=107:t<33900&&(s=1131),s}function Eo(e,t,s){const a=1===ca(e,t+2)?la(e,t+8):la(e,t+16),i=ca(e,t+a);let n,r,o;if(4===i){ca(e,t+a+2);const s=ca(e,t+a+6)>>1;for(r=t+a+14,n=[],o=0;o<s;o++,r+=2)n[o]={end:ca(e,r)};for(r+=2,o=0;o<s;o++,r+=2)n[o].start=ca(e,r);for(o=0;o<s;o++,r+=2)n[o].idDelta=ca(e,r);for(o=0;o<s;o++,r+=2){let t=ca(e,r);if(0!==t){n[o].ids=[];for(let s=0,a=n[o].end-n[o].start+1;s<a;s++)n[o].ids[s]=ca(e,r+t),t+=2}}return n}if(12===i){const s=la(e,t+a+12);for(r=t+a+16,n=[],o=0;o<s;o++)t=la(e,r),n.push({start:t,end:la(e,r+4),idDelta:la(e,r+8)-t}),r+=12;return n}throw new cs(`unsupported cmap: ${i}`)}function Lo(e,t,s,a){const i=new io(new ni(e,t,s-t),{},a).parse();return{glyphs:i.charStrings.objects,subrs:i.topDict.privateDict?.subrsIndex?.objects,gsubrs:i.globalSubrIndex?.objects,isCFFCIDFont:i.isCIDFont,fdSelect:i.fdSelect,fdArray:i.fdArray}}function _o(e,t){const s=t.codePointAt(0);let a=0,i=0,n=e.length-1;for(;i<n;){const t=i+n+1>>1;s<e[t].start?n=t-1:i=t}return e[i].start<=s&&s<=e[i].end&&(a=e[i].idDelta+(e[i].ids?e[i].ids[s-e[i].start]:s)&65535),{charCode:s,glyphId:a}}function Uo(e,t,s){function a(e,s){l&&t.add($t,l),l=[e,s],t.add(Ht,[e,s])}function i(e,s){t.add($t,[e,s])}function n(e,s,a,i){t.add(Gt,[e,s,a,i])}let r=0;const o=oa(e,r);let c,l=null,h=0,u=0;if(r+=10,o<0)do{c=ca(e,r);const a=ca(e,r+2);let i,n;r+=4,1&c?(2&c?(i=oa(e,r),n=oa(e,r+2)):(i=ca(e,r),n=ca(e,r+2)),r+=4):2&c?(i=ra(e,r++),n=ra(e,r++)):(i=e[r++],n=e[r++]),2&c?(h=i,u=n):(h=0,u=0);let o=1,l=1,d=0,f=0;8&c?(o=l=Oo(e,r),r+=2):64&c?(o=Oo(e,r),l=Oo(e,r+2),r+=4):128&c&&(o=Oo(e,r),d=Oo(e,r+2),f=Oo(e,r+4),l=Oo(e,r+6),r+=8);const g=s.glyphs[a];g&&(t.save(),t.transform([o,d,f,l,h,u]),Uo(g,t,s),t.restore())}while(32&c);else{const t=[];let s,l;for(s=0;s<o;s++)t.push(ca(e,r)),r+=2;r+=2+ca(e,r);const d=t.at(-1)+1,f=[];for(;f.length<d;){c=e[r++];let t=1;for(8&c&&(t+=e[r++]);t-- >0;)f.push({flags:c})}for(s=0;s<d;s++){switch(18&f[s].flags){case 0:h+=oa(e,r),r+=2;break;case 2:h-=e[r++];break;case 18:h+=e[r++]}f[s].x=h}for(s=0;s<d;s++){switch(36&f[s].flags){case 0:u+=oa(e,r),r+=2;break;case 4:u-=e[r++];break;case 36:u+=e[r++]}f[s].y=u}let g=0;for(r=0;r<o;r++){const e=t[r],o=f.slice(g,e+1);if(1&o[0].flags)o.push(o[0]);else if(1&o.at(-1).flags)o.unshift(o.at(-1));else{const e={flags:1,x:(o[0].x+o.at(-1).x)/2,y:(o[0].y+o.at(-1).y)/2};o.unshift(e),o.push(e)}for(a(o[0].x,o[0].y),s=1,l=o.length;s<l;s++)1&o[s].flags?i(o[s].x,o[s].y):1&o[s+1].flags?(n(o[s].x,o[s].y,o[s+1].x,o[s+1].y),s++):n(o[s].x,o[s].y,(o[s].x+o[s+1].x)/2,(o[s].y+o[s+1].y)/2);g=e+1}}}function qo(e,t,s,a){function i(e,s){u&&t.add($t,u),u=[e,s],t.add(Ht,[e,s])}function n(e,s){t.add($t,[e,s])}function r(e,s,a,i,n,r){t.add(zt,[e,s,a,i,n,r])}const o=[];let c=0,l=0,h=0,u=null;!function e(u){let d=0;for(;d<u.length;){let f,g,p,m,b,w,y,x,k,v=!1,A=u[d++];switch(A){case 1:case 3:case 18:case 23:h+=o.length>>1,v=!0;break;case 4:l+=o.pop(),i(c,l),v=!0;break;case 5:for(;o.length>0;)c+=o.shift(),l+=o.shift(),n(c,l);break;case 6:for(;o.length>0;){if(c+=o.shift(),n(c,l),0===o.length)break;l+=o.shift(),n(c,l)}break;case 7:for(;o.length>0;){if(l+=o.shift(),n(c,l),0===o.length)break;c+=o.shift(),n(c,l)}break;case 8:for(;o.length>0;)f=c+o.shift(),p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g+o.shift(),l=m+o.shift(),r(f,p,g,m,c,l);break;case 10:if(x=o.pop(),k=null,s.isCFFCIDFont){const e=s.fdSelect.getFDIndex(a);if(e>=0&&e<s.fdArray.length){const t=s.fdArray[e];let a;t.privateDict?.subrsIndex&&(a=t.privateDict.subrsIndex.objects),a&&(x+=Po(a),k=a[x])}else Zt("Invalid fd index for glyph index.")}else k=s.subrs[x+s.subrsBias];k&&e(k);break;case 11:return;case 12:switch(A=u[d++],A){case 34:f=c+o.shift(),g=f+o.shift(),b=l+o.shift(),c=g+o.shift(),r(f,l,g,b,c,b),f=c+o.shift(),g=f+o.shift(),c=g+o.shift(),r(f,b,g,l,c,l);break;case 35:f=c+o.shift(),p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g+o.shift(),l=m+o.shift(),r(f,p,g,m,c,l),f=c+o.shift(),p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g+o.shift(),l=m+o.shift(),r(f,p,g,m,c,l),o.pop();break;case 36:f=c+o.shift(),b=l+o.shift(),g=f+o.shift(),w=b+o.shift(),c=g+o.shift(),r(f,b,g,w,c,w),f=c+o.shift(),g=f+o.shift(),y=w+o.shift(),c=g+o.shift(),r(f,w,g,y,c,l);break;case 37:const e=c,t=l;f=c+o.shift(),p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g+o.shift(),l=m+o.shift(),r(f,p,g,m,c,l),f=c+o.shift(),p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g,l=m,Math.abs(c-e)>Math.abs(l-t)?c+=o.shift():l+=o.shift(),r(f,p,g,m,c,l);break;default:throw new cs(`unknown operator: 12 ${A}`)}break;case 14:if(o.length>=4){const e=o.pop(),a=o.pop();l=o.pop(),c=o.pop(),t.save(),t.translate(c,l);let i=_o(s.cmap,String.fromCharCode(s.glyphNameMap[Fr[e]]));qo(s.glyphs[i.glyphId],t,s,i.glyphId),t.restore(),i=_o(s.cmap,String.fromCharCode(s.glyphNameMap[Fr[a]])),qo(s.glyphs[i.glyphId],t,s,i.glyphId)}return;case 19:case 20:h+=o.length>>1,d+=h+7>>3,v=!0;break;case 21:l+=o.pop(),c+=o.pop(),i(c,l),v=!0;break;case 22:c+=o.pop(),i(c,l),v=!0;break;case 24:for(;o.length>2;)f=c+o.shift(),p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g+o.shift(),l=m+o.shift(),r(f,p,g,m,c,l);c+=o.shift(),l+=o.shift(),n(c,l);break;case 25:for(;o.length>6;)c+=o.shift(),l+=o.shift(),n(c,l);f=c+o.shift(),p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g+o.shift(),l=m+o.shift(),r(f,p,g,m,c,l);break;case 26:for(o.length%2&&(c+=o.shift());o.length>0;)f=c,p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g,l=m+o.shift(),r(f,p,g,m,c,l);break;case 27:for(o.length%2&&(l+=o.shift());o.length>0;)f=c+o.shift(),p=l,g=f+o.shift(),m=p+o.shift(),c=g+o.shift(),l=m,r(f,p,g,m,c,l);break;case 28:o.push(oa(u,d)),d+=2;break;case 29:x=o.pop()+s.gsubrsBias,k=s.gsubrs[x],k&&e(k);break;case 30:for(;o.length>0;){if(f=c,p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g+o.shift(),l=m+(1===o.length?o.shift():0),r(f,p,g,m,c,l),0===o.length)break;f=c+o.shift(),p=l,g=f+o.shift(),m=p+o.shift(),l=m+o.shift(),c=g+(1===o.length?o.shift():0),r(f,p,g,m,c,l)}break;case 31:for(;o.length>0;){if(f=c+o.shift(),p=l,g=f+o.shift(),m=p+o.shift(),l=m+o.shift(),c=g+(1===o.length?o.shift():0),r(f,p,g,m,c,l),0===o.length)break;f=c,p=l+o.shift(),g=f+o.shift(),m=p+o.shift(),c=g+o.shift(),l=m+(1===o.length?o.shift():0),r(f,p,g,m,c,l)}break;default:if(A<32)throw new cs(`unknown operator: ${A}`);A<247?o.push(A-139):A<251?o.push(256*(A-247)+u[d++]+108):A<255?o.push(256*-(A-251)-u[d++]-108):(o.push((u[d]<<24|u[d+1]<<16|u[d+2]<<8|u[d+3])/65536),d+=4)}v&&(o.length=0)}}(e)}class jo{cmds=[];transformStack=[];currentTransform=[1,0,0,1,0,0];add(e,t){if(t){const{currentTransform:s}=this;for(let e=0,a=t.length;e<a;e+=2)ms.applyTransform(t,s,e);this.cmds.push(e,...t)}else this.cmds.push(e)}transform(e){this.currentTransform=ms.transform(this.currentTransform,e)}translate(e,t){this.transform([1,0,0,1,e,t])}save(){this.transformStack.push(this.currentTransform.slice())}restore(){this.currentTransform=this.transformStack.pop()||[1,0,0,1,0,0]}getPath(){return new(gs.isFloat16ArraySupported?Float16Array:Float32Array)(this.cmds)}}class Ho{constructor(e){this.fontMatrix=e,this.compiledGlyphs=Object.create(null),this.compiledCharCodeToGlyphId=Object.create(null)}getPathJs(e){const{charCode:t,glyphId:s}=_o(this.cmap,e);let a,i=this.compiledGlyphs[s];if(void 0===i){try{i=this.compileGlyph(this.glyphs[s],s)}catch(e){i="",a=e}this.compiledGlyphs[s]=i}if(this.compiledCharCodeToGlyphId[t]??=s,a)throw a;return i}compileGlyph(e,s){if(!e?.length||14===e[0])return"";let a=this.fontMatrix;if(this.isCFFCIDFont){const e=this.fdSelect.getFDIndex(s);e>=0&&e<this.fdArray.length?a=this.fdArray[e].getByName("FontMatrix")||t:Zt("Invalid fd index for glyph index.")}es(ua(a,6),"Expected a valid fontMatrix.");const i=new jo;return i.transform(a.slice()),this.compileGlyphImpl(e,i,s),i.add(Wt),i.getPath()}compileGlyphImpl(){Qt("Children classes should implement this.")}hasBuiltPath(e){const{charCode:t,glyphId:s}=_o(this.cmap,e);return void 0!==this.compiledGlyphs[s]&&void 0!==this.compiledCharCodeToGlyphId[t]}}class $o extends Ho{constructor(e,t,s){super(s||[488e-6,0,0,488e-6,0,0]),this.glyphs=e,this.cmap=t}compileGlyphImpl(e,t){Uo(e,t,this)}}class zo extends Ho{constructor(e,t,s){super(s||[.001,0,0,.001,0,0]),this.glyphs=e.glyphs,this.gsubrs=e.gsubrs||[],this.subrs=e.subrs||[],this.cmap=t,this.glyphNameMap=Dr(),this.gsubrsBias=Po(this.gsubrs),this.subrsBias=Po(this.subrs),this.isCFFCIDFont=e.isCFFCIDFont,this.fdSelect=e.fdSelect,this.fdArray=e.fdArray}compileGlyphImpl(e,t,s){qo(e,t,this,s)}}class Go{static create(e,t){const s=new Uint8Array(e.data);let a,i,n,r,o,c;const l=ca(s,4);for(let h=0,u=12;h<l;h++,u+=16){const e=hs(s.subarray(u,u+4)),l=la(s,u+8),h=la(s,u+12);switch(e){case"cmap":a=Eo(s,l);break;case"glyf":i=s.subarray(l,l+h);break;case"loca":n=s.subarray(l,l+h);break;case"head":c=ca(s,l+18),o=ca(s,l+50);break;case"CFF ":r=Lo(s,l,l+h,t)}}if(i){const t=c?[1/c,0,0,1/c,0,0]:e.fontMatrix;return new $o(function(e,t,s){let a,i;s?(a=4,i=la):(a=2,i=(e,t)=>2*ca(e,t));const n=[];let r=i(t,0);for(let o=a;o<t.length;o+=a){const s=i(t,o);n.push(e.subarray(r,s)),r=s}return n}(i,n,o),a,t)}return new zo(r,a,e.fontMatrix)}}const Wo=Ks(function(e){e.Courier=600,e["Courier-Bold"]=600,e["Courier-BoldOblique"]=600,e["Courier-Oblique"]=600,e.Helvetica=Ks(function(e){e.space=278,e.exclam=278,e.quotedbl=355,e.numbersign=556,e.dollar=556,e.percent=889,e.ampersand=667,e.quoteright=222,e.parenleft=333,e.parenright=333,e.asterisk=389,e.plus=584,e.comma=278,e.hyphen=333,e.period=278,e.slash=278,e.zero=556,e.one=556,e.two=556,e.three=556,e.four=556,e.five=556,e.six=556,e.seven=556,e.eight=556,e.nine=556,e.colon=278,e.semicolon=278,e.less=584,e.equal=584,e.greater=584,e.question=556,e.at=1015,e.A=667,e.B=667,e.C=722,e.D=722,e.E=667,e.F=611,e.G=778,e.H=722,e.I=278,e.J=500,e.K=667,e.L=556,e.M=833,e.N=722,e.O=778,e.P=667,e.Q=778,e.R=722,e.S=667,e.T=611,e.U=722,e.V=667,e.W=944,e.X=667,e.Y=667,e.Z=611,e.bracketleft=278,e.backslash=278,e.bracketright=278,e.asciicircum=469,e.underscore=556,e.quoteleft=222,e.a=556,e.b=556,e.c=500,e.d=556,e.e=556,e.f=278,e.g=556,e.h=556,e.i=222,e.j=222,e.k=500,e.l=222,e.m=833,e.n=556,e.o=556,e.p=556,e.q=556,e.r=333,e.s=500,e.t=278,e.u=556,e.v=500,e.w=722,e.x=500,e.y=500,e.z=500,e.braceleft=334,e.bar=260,e.braceright=334,e.asciitilde=584,e.exclamdown=333,e.cent=556,e.sterling=556,e.fraction=167,e.yen=556,e.florin=556,e.section=556,e.currency=556,e.quotesingle=191,e.quotedblleft=333,e.guillemotleft=556,e.guilsinglleft=333,e.guilsinglright=333,e.fi=500,e.fl=500,e.endash=556,e.dagger=556,e.daggerdbl=556,e.periodcentered=278,e.paragraph=537,e.bullet=350,e.quotesinglbase=222,e.quotedblbase=333,e.quotedblright=333,e.guillemotright=556,e.ellipsis=1e3,e.perthousand=1e3,e.questiondown=611,e.grave=333,e.acute=333,e.circumflex=333,e.tilde=333,e.macron=333,e.breve=333,e.dotaccent=333,e.dieresis=333,e.ring=333,e.cedilla=333,e.hungarumlaut=333,e.ogonek=333,e.caron=333,e.emdash=1e3,e.AE=1e3,e.ordfeminine=370,e.Lslash=556,e.Oslash=778,e.OE=1e3,e.ordmasculine=365,e.ae=889,e.dotlessi=278,e.lslash=222,e.oslash=611,e.oe=944,e.germandbls=611,e.Idieresis=278,e.eacute=556,e.abreve=556,e.uhungarumlaut=556,e.ecaron=556,e.Ydieresis=667,e.divide=584,e.Yacute=667,e.Acircumflex=667,e.aacute=556,e.Ucircumflex=722,e.yacute=500,e.scommaaccent=500,e.ecircumflex=556,e.Uring=722,e.Udieresis=722,e.aogonek=556,e.Uacute=722,e.uogonek=556,e.Edieresis=667,e.Dcroat=722,e.commaaccent=250,e.copyright=737,e.Emacron=667,e.ccaron=500,e.aring=556,e.Ncommaaccent=722,e.lacute=222,e.agrave=556,e.Tcommaaccent=611,e.Cacute=722,e.atilde=556,e.Edotaccent=667,e.scaron=500,e.scedilla=500,e.iacute=278,e.lozenge=471,e.Rcaron=722,e.Gcommaaccent=778,e.ucircumflex=556,e.acircumflex=556,e.Amacron=667,e.rcaron=333,e.ccedilla=500,e.Zdotaccent=611,e.Thorn=667,e.Omacron=778,e.Racute=722,e.Sacute=667,e.dcaron=643,e.Umacron=722,e.uring=556,e.threesuperior=333,e.Ograve=778,e.Agrave=667,e.Abreve=667,e.multiply=584,e.uacute=556,e.Tcaron=611,e.partialdiff=476,e.ydieresis=500,e.Nacute=722,e.icircumflex=278,e.Ecircumflex=667,e.adieresis=556,e.edieresis=556,e.cacute=500,e.nacute=556,e.umacron=556,e.Ncaron=722,e.Iacute=278,e.plusminus=584,e.brokenbar=260,e.registered=737,e.Gbreve=778,e.Idotaccent=278,e.summation=600,e.Egrave=667,e.racute=333,e.omacron=556,e.Zacute=611,e.Zcaron=611,e.greaterequal=549,e.Eth=722,e.Ccedilla=722,e.lcommaaccent=222,e.tcaron=317,e.eogonek=556,e.Uogonek=722,e.Aacute=667,e.Adieresis=667,e.egrave=556,e.zacute=500,e.iogonek=222,e.Oacute=778,e.oacute=556,e.amacron=556,e.sacute=500,e.idieresis=278,e.Ocircumflex=778,e.Ugrave=722,e.Delta=612,e.thorn=556,e.twosuperior=333,e.Odieresis=778,e.mu=556,e.igrave=278,e.ohungarumlaut=556,e.Eogonek=667,e.dcroat=556,e.threequarters=834,e.Scedilla=667,e.lcaron=299,e.Kcommaaccent=667,e.Lacute=556,e.trademark=1e3,e.edotaccent=556,e.Igrave=278,e.Imacron=278,e.Lcaron=556,e.onehalf=834,e.lessequal=549,e.ocircumflex=556,e.ntilde=556,e.Uhungarumlaut=722,e.Eacute=667,e.emacron=556,e.gbreve=556,e.onequarter=834,e.Scaron=667,e.Scommaaccent=667,e.Ohungarumlaut=778,e.degree=400,e.ograve=556,e.Ccaron=722,e.ugrave=556,e.radical=453,e.Dcaron=722,e.rcommaaccent=333,e.Ntilde=722,e.otilde=556,e.Rcommaaccent=722,e.Lcommaaccent=556,e.Atilde=667,e.Aogonek=667,e.Aring=667,e.Otilde=778,e.zdotaccent=500,e.Ecaron=667,e.Iogonek=278,e.kcommaaccent=500,e.minus=584,e.Icircumflex=278,e.ncaron=556,e.tcommaaccent=278,e.logicalnot=584,e.odieresis=556,e.udieresis=556,e.notequal=549,e.gcommaaccent=556,e.eth=556,e.zcaron=500,e.ncommaaccent=556,e.onesuperior=333,e.imacron=278,e.Euro=556}),e["Helvetica-Bold"]=Ks(function(e){e.space=278,e.exclam=333,e.quotedbl=474,e.numbersign=556,e.dollar=556,e.percent=889,e.ampersand=722,e.quoteright=278,e.parenleft=333,e.parenright=333,e.asterisk=389,e.plus=584,e.comma=278,e.hyphen=333,e.period=278,e.slash=278,e.zero=556,e.one=556,e.two=556,e.three=556,e.four=556,e.five=556,e.six=556,e.seven=556,e.eight=556,e.nine=556,e.colon=333,e.semicolon=333,e.less=584,e.equal=584,e.greater=584,e.question=611,e.at=975,e.A=722,e.B=722,e.C=722,e.D=722,e.E=667,e.F=611,e.G=778,e.H=722,e.I=278,e.J=556,e.K=722,e.L=611,e.M=833,e.N=722,e.O=778,e.P=667,e.Q=778,e.R=722,e.S=667,e.T=611,e.U=722,e.V=667,e.W=944,e.X=667,e.Y=667,e.Z=611,e.bracketleft=333,e.backslash=278,e.bracketright=333,e.asciicircum=584,e.underscore=556,e.quoteleft=278,e.a=556,e.b=611,e.c=556,e.d=611,e.e=556,e.f=333,e.g=611,e.h=611,e.i=278,e.j=278,e.k=556,e.l=278,e.m=889,e.n=611,e.o=611,e.p=611,e.q=611,e.r=389,e.s=556,e.t=333,e.u=611,e.v=556,e.w=778,e.x=556,e.y=556,e.z=500,e.braceleft=389,e.bar=280,e.braceright=389,e.asciitilde=584,e.exclamdown=333,e.cent=556,e.sterling=556,e.fraction=167,e.yen=556,e.florin=556,e.section=556,e.currency=556,e.quotesingle=238,e.quotedblleft=500,e.guillemotleft=556,e.guilsinglleft=333,e.guilsinglright=333,e.fi=611,e.fl=611,e.endash=556,e.dagger=556,e.daggerdbl=556,e.periodcentered=278,e.paragraph=556,e.bullet=350,e.quotesinglbase=278,e.quotedblbase=500,e.quotedblright=500,e.guillemotright=556,e.ellipsis=1e3,e.perthousand=1e3,e.questiondown=611,e.grave=333,e.acute=333,e.circumflex=333,e.tilde=333,e.macron=333,e.breve=333,e.dotaccent=333,e.dieresis=333,e.ring=333,e.cedilla=333,e.hungarumlaut=333,e.ogonek=333,e.caron=333,e.emdash=1e3,e.AE=1e3,e.ordfeminine=370,e.Lslash=611,e.Oslash=778,e.OE=1e3,e.ordmasculine=365,e.ae=889,e.dotlessi=278,e.lslash=278,e.oslash=611,e.oe=944,e.germandbls=611,e.Idieresis=278,e.eacute=556,e.abreve=556,e.uhungarumlaut=611,e.ecaron=556,e.Ydieresis=667,e.divide=584,e.Yacute=667,e.Acircumflex=722,e.aacute=556,e.Ucircumflex=722,e.yacute=556,e.scommaaccent=556,e.ecircumflex=556,e.Uring=722,e.Udieresis=722,e.aogonek=556,e.Uacute=722,e.uogonek=611,e.Edieresis=667,e.Dcroat=722,e.commaaccent=250,e.copyright=737,e.Emacron=667,e.ccaron=556,e.aring=556,e.Ncommaaccent=722,e.lacute=278,e.agrave=556,e.Tcommaaccent=611,e.Cacute=722,e.atilde=556,e.Edotaccent=667,e.scaron=556,e.scedilla=556,e.iacute=278,e.lozenge=494,e.Rcaron=722,e.Gcommaaccent=778,e.ucircumflex=611,e.acircumflex=556,e.Amacron=722,e.rcaron=389,e.ccedilla=556,e.Zdotaccent=611,e.Thorn=667,e.Omacron=778,e.Racute=722,e.Sacute=667,e.dcaron=743,e.Umacron=722,e.uring=611,e.threesuperior=333,e.Ograve=778,e.Agrave=722,e.Abreve=722,e.multiply=584,e.uacute=611,e.Tcaron=611,e.partialdiff=494,e.ydieresis=556,e.Nacute=722,e.icircumflex=278,e.Ecircumflex=667,e.adieresis=556,e.edieresis=556,e.cacute=556,e.nacute=611,e.umacron=611,e.Ncaron=722,e.Iacute=278,e.plusminus=584,e.brokenbar=280,e.registered=737,e.Gbreve=778,e.Idotaccent=278,e.summation=600,e.Egrave=667,e.racute=389,e.omacron=611,e.Zacute=611,e.Zcaron=611,e.greaterequal=549,e.Eth=722,e.Ccedilla=722,e.lcommaaccent=278,e.tcaron=389,e.eogonek=556,e.Uogonek=722,e.Aacute=722,e.Adieresis=722,e.egrave=556,e.zacute=500,e.iogonek=278,e.Oacute=778,e.oacute=611,e.amacron=556,e.sacute=556,e.idieresis=278,e.Ocircumflex=778,e.Ugrave=722,e.Delta=612,e.thorn=611,e.twosuperior=333,e.Odieresis=778,e.mu=611,e.igrave=278,e.ohungarumlaut=611,e.Eogonek=667,e.dcroat=611,e.threequarters=834,e.Scedilla=667,e.lcaron=400,e.Kcommaaccent=722,e.Lacute=611,e.trademark=1e3,e.edotaccent=556,e.Igrave=278,e.Imacron=278,e.Lcaron=611,e.onehalf=834,e.lessequal=549,e.ocircumflex=611,e.ntilde=611,e.Uhungarumlaut=722,e.Eacute=667,e.emacron=556,e.gbreve=611,e.onequarter=834,e.Scaron=667,e.Scommaaccent=667,e.Ohungarumlaut=778,e.degree=400,e.ograve=611,e.Ccaron=722,e.ugrave=611,e.radical=549,e.Dcaron=722,e.rcommaaccent=389,e.Ntilde=722,e.otilde=611,e.Rcommaaccent=722,e.Lcommaaccent=611,e.Atilde=722,e.Aogonek=722,e.Aring=722,e.Otilde=778,e.zdotaccent=500,e.Ecaron=667,e.Iogonek=278,e.kcommaaccent=556,e.minus=584,e.Icircumflex=278,e.ncaron=611,e.tcommaaccent=333,e.logicalnot=584,e.odieresis=611,e.udieresis=611,e.notequal=549,e.gcommaaccent=611,e.eth=611,e.zcaron=500,e.ncommaaccent=611,e.onesuperior=333,e.imacron=278,e.Euro=556}),e["Helvetica-BoldOblique"]=Ks(function(e){e.space=278,e.exclam=333,e.quotedbl=474,e.numbersign=556,e.dollar=556,e.percent=889,e.ampersand=722,e.quoteright=278,e.parenleft=333,e.parenright=333,e.asterisk=389,e.plus=584,e.comma=278,e.hyphen=333,e.period=278,e.slash=278,e.zero=556,e.one=556,e.two=556,e.three=556,e.four=556,e.five=556,e.six=556,e.seven=556,e.eight=556,e.nine=556,e.colon=333,e.semicolon=333,e.less=584,e.equal=584,e.greater=584,e.question=611,e.at=975,e.A=722,e.B=722,e.C=722,e.D=722,e.E=667,e.F=611,e.G=778,e.H=722,e.I=278,e.J=556,e.K=722,e.L=611,e.M=833,e.N=722,e.O=778,e.P=667,e.Q=778,e.R=722,e.S=667,e.T=611,e.U=722,e.V=667,e.W=944,e.X=667,e.Y=667,e.Z=611,e.bracketleft=333,e.backslash=278,e.bracketright=333,e.asciicircum=584,e.underscore=556,e.quoteleft=278,e.a=556,e.b=611,e.c=556,e.d=611,e.e=556,e.f=333,e.g=611,e.h=611,e.i=278,e.j=278,e.k=556,e.l=278,e.m=889,e.n=611,e.o=611,e.p=611,e.q=611,e.r=389,e.s=556,e.t=333,e.u=611,e.v=556,e.w=778,e.x=556,e.y=556,e.z=500,e.braceleft=389,e.bar=280,e.braceright=389,e.asciitilde=584,e.exclamdown=333,e.cent=556,e.sterling=556,e.fraction=167,e.yen=556,e.florin=556,e.section=556,e.currency=556,e.quotesingle=238,e.quotedblleft=500,e.guillemotleft=556,e.guilsinglleft=333,e.guilsinglright=333,e.fi=611,e.fl=611,e.endash=556,e.dagger=556,e.daggerdbl=556,e.periodcentered=278,e.paragraph=556,e.bullet=350,e.quotesinglbase=278,e.quotedblbase=500,e.quotedblright=500,e.guillemotright=556,e.ellipsis=1e3,e.perthousand=1e3,e.questiondown=611,e.grave=333,e.acute=333,e.circumflex=333,e.tilde=333,e.macron=333,e.breve=333,e.dotaccent=333,e.dieresis=333,e.ring=333,e.cedilla=333,e.hungarumlaut=333,e.ogonek=333,e.caron=333,e.emdash=1e3,e.AE=1e3,e.ordfeminine=370,e.Lslash=611,e.Oslash=778,e.OE=1e3,e.ordmasculine=365,e.ae=889,e.dotlessi=278,e.lslash=278,e.oslash=611,e.oe=944,e.germandbls=611,e.Idieresis=278,e.eacute=556,e.abreve=556,e.uhungarumlaut=611,e.ecaron=556,e.Ydieresis=667,e.divide=584,e.Yacute=667,e.Acircumflex=722,e.aacute=556,e.Ucircumflex=722,e.yacute=556,e.scommaaccent=556,e.ecircumflex=556,e.Uring=722,e.Udieresis=722,e.aogonek=556,e.Uacute=722,e.uogonek=611,e.Edieresis=667,e.Dcroat=722,e.commaaccent=250,e.copyright=737,e.Emacron=667,e.ccaron=556,e.aring=556,e.Ncommaaccent=722,e.lacute=278,e.agrave=556,e.Tcommaaccent=611,e.Cacute=722,e.atilde=556,e.Edotaccent=667,e.scaron=556,e.scedilla=556,e.iacute=278,e.lozenge=494,e.Rcaron=722,e.Gcommaaccent=778,e.ucircumflex=611,e.acircumflex=556,e.Amacron=722,e.rcaron=389,e.ccedilla=556,e.Zdotaccent=611,e.Thorn=667,e.Omacron=778,e.Racute=722,e.Sacute=667,e.dcaron=743,e.Umacron=722,e.uring=611,e.threesuperior=333,e.Ograve=778,e.Agrave=722,e.Abreve=722,e.multiply=584,e.uacute=611,e.Tcaron=611,e.partialdiff=494,e.ydieresis=556,e.Nacute=722,e.icircumflex=278,e.Ecircumflex=667,e.adieresis=556,e.edieresis=556,e.cacute=556,e.nacute=611,e.umacron=611,e.Ncaron=722,e.Iacute=278,e.plusminus=584,e.brokenbar=280,e.registered=737,e.Gbreve=778,e.Idotaccent=278,e.summation=600,e.Egrave=667,e.racute=389,e.omacron=611,e.Zacute=611,e.Zcaron=611,e.greaterequal=549,e.Eth=722,e.Ccedilla=722,e.lcommaaccent=278,e.tcaron=389,e.eogonek=556,e.Uogonek=722,e.Aacute=722,e.Adieresis=722,e.egrave=556,e.zacute=500,e.iogonek=278,e.Oacute=778,e.oacute=611,e.amacron=556,e.sacute=556,e.idieresis=278,e.Ocircumflex=778,e.Ugrave=722,e.Delta=612,e.thorn=611,e.twosuperior=333,e.Odieresis=778,e.mu=611,e.igrave=278,e.ohungarumlaut=611,e.Eogonek=667,e.dcroat=611,e.threequarters=834,e.Scedilla=667,e.lcaron=400,e.Kcommaaccent=722,e.Lacute=611,e.trademark=1e3,e.edotaccent=556,e.Igrave=278,e.Imacron=278,e.Lcaron=611,e.onehalf=834,e.lessequal=549,e.ocircumflex=611,e.ntilde=611,e.Uhungarumlaut=722,e.Eacute=667,e.emacron=556,e.gbreve=611,e.onequarter=834,e.Scaron=667,e.Scommaaccent=667,e.Ohungarumlaut=778,e.degree=400,e.ograve=611,e.Ccaron=722,e.ugrave=611,e.radical=549,e.Dcaron=722,e.rcommaaccent=389,e.Ntilde=722,e.otilde=611,e.Rcommaaccent=722,e.Lcommaaccent=611,e.Atilde=722,e.Aogonek=722,e.Aring=722,e.Otilde=778,e.zdotaccent=500,e.Ecaron=667,e.Iogonek=278,e.kcommaaccent=556,e.minus=584,e.Icircumflex=278,e.ncaron=611,e.tcommaaccent=333,e.logicalnot=584,e.odieresis=611,e.udieresis=611,e.notequal=549,e.gcommaaccent=611,e.eth=611,e.zcaron=500,e.ncommaaccent=611,e.onesuperior=333,e.imacron=278,e.Euro=556}),e["Helvetica-Oblique"]=Ks(function(e){e.space=278,e.exclam=278,e.quotedbl=355,e.numbersign=556,e.dollar=556,e.percent=889,e.ampersand=667,e.quoteright=222,e.parenleft=333,e.parenright=333,e.asterisk=389,e.plus=584,e.comma=278,e.hyphen=333,e.period=278,e.slash=278,e.zero=556,e.one=556,e.two=556,e.three=556,e.four=556,e.five=556,e.six=556,e.seven=556,e.eight=556,e.nine=556,e.colon=278,e.semicolon=278,e.less=584,e.equal=584,e.greater=584,e.question=556,e.at=1015,e.A=667,e.B=667,e.C=722,e.D=722,e.E=667,e.F=611,e.G=778,e.H=722,e.I=278,e.J=500,e.K=667,e.L=556,e.M=833,e.N=722,e.O=778,e.P=667,e.Q=778,e.R=722,e.S=667,e.T=611,e.U=722,e.V=667,e.W=944,e.X=667,e.Y=667,e.Z=611,e.bracketleft=278,e.backslash=278,e.bracketright=278,e.asciicircum=469,e.underscore=556,e.quoteleft=222,e.a=556,e.b=556,e.c=500,e.d=556,e.e=556,e.f=278,e.g=556,e.h=556,e.i=222,e.j=222,e.k=500,e.l=222,e.m=833,e.n=556,e.o=556,e.p=556,e.q=556,e.r=333,e.s=500,e.t=278,e.u=556,e.v=500,e.w=722,e.x=500,e.y=500,e.z=500,e.braceleft=334,e.bar=260,e.braceright=334,e.asciitilde=584,e.exclamdown=333,e.cent=556,e.sterling=556,e.fraction=167,e.yen=556,e.florin=556,e.section=556,e.currency=556,e.quotesingle=191,e.quotedblleft=333,e.guillemotleft=556,e.guilsinglleft=333,e.guilsinglright=333,e.fi=500,e.fl=500,e.endash=556,e.dagger=556,e.daggerdbl=556,e.periodcentered=278,e.paragraph=537,e.bullet=350,e.quotesinglbase=222,e.quotedblbase=333,e.quotedblright=333,e.guillemotright=556,e.ellipsis=1e3,e.perthousand=1e3,e.questiondown=611,e.grave=333,e.acute=333,e.circumflex=333,e.tilde=333,e.macron=333,e.breve=333,e.dotaccent=333,e.dieresis=333,e.ring=333,e.cedilla=333,e.hungarumlaut=333,e.ogonek=333,e.caron=333,e.emdash=1e3,e.AE=1e3,e.ordfeminine=370,e.Lslash=556,e.Oslash=778,e.OE=1e3,e.ordmasculine=365,e.ae=889,e.dotlessi=278,e.lslash=222,e.oslash=611,e.oe=944,e.germandbls=611,e.Idieresis=278,e.eacute=556,e.abreve=556,e.uhungarumlaut=556,e.ecaron=556,e.Ydieresis=667,e.divide=584,e.Yacute=667,e.Acircumflex=667,e.aacute=556,e.Ucircumflex=722,e.yacute=500,e.scommaaccent=500,e.ecircumflex=556,e.Uring=722,e.Udieresis=722,e.aogonek=556,e.Uacute=722,e.uogonek=556,e.Edieresis=667,e.Dcroat=722,e.commaaccent=250,e.copyright=737,e.Emacron=667,e.ccaron=500,e.aring=556,e.Ncommaaccent=722,e.lacute=222,e.agrave=556,e.Tcommaaccent=611,e.Cacute=722,e.atilde=556,e.Edotaccent=667,e.scaron=500,e.scedilla=500,e.iacute=278,e.lozenge=471,e.Rcaron=722,e.Gcommaaccent=778,e.ucircumflex=556,e.acircumflex=556,e.Amacron=667,e.rcaron=333,e.ccedilla=500,e.Zdotaccent=611,e.Thorn=667,e.Omacron=778,e.Racute=722,e.Sacute=667,e.dcaron=643,e.Umacron=722,e.uring=556,e.threesuperior=333,e.Ograve=778,e.Agrave=667,e.Abreve=667,e.multiply=584,e.uacute=556,e.Tcaron=611,e.partialdiff=476,e.ydieresis=500,e.Nacute=722,e.icircumflex=278,e.Ecircumflex=667,e.adieresis=556,e.edieresis=556,e.cacute=500,e.nacute=556,e.umacron=556,e.Ncaron=722,e.Iacute=278,e.plusminus=584,e.brokenbar=260,e.registered=737,e.Gbreve=778,e.Idotaccent=278,e.summation=600,e.Egrave=667,e.racute=333,e.omacron=556,e.Zacute=611,e.Zcaron=611,e.greaterequal=549,e.Eth=722,e.Ccedilla=722,e.lcommaaccent=222,e.tcaron=317,e.eogonek=556,e.Uogonek=722,e.Aacute=667,e.Adieresis=667,e.egrave=556,e.zacute=500,e.iogonek=222,e.Oacute=778,e.oacute=556,e.amacron=556,e.sacute=500,e.idieresis=278,e.Ocircumflex=778,e.Ugrave=722,e.Delta=612,e.thorn=556,e.twosuperior=333,e.Odieresis=778,e.mu=556,e.igrave=278,e.ohungarumlaut=556,e.Eogonek=667,e.dcroat=556,e.threequarters=834,e.Scedilla=667,e.lcaron=299,e.Kcommaaccent=667,e.Lacute=556,e.trademark=1e3,e.edotaccent=556,e.Igrave=278,e.Imacron=278,e.Lcaron=556,e.onehalf=834,e.lessequal=549,e.ocircumflex=556,e.ntilde=556,e.Uhungarumlaut=722,e.Eacute=667,e.emacron=556,e.gbreve=556,e.onequarter=834,e.Scaron=667,e.Scommaaccent=667,e.Ohungarumlaut=778,e.degree=400,e.ograve=556,e.Ccaron=722,e.ugrave=556,e.radical=453,e.Dcaron=722,e.rcommaaccent=333,e.Ntilde=722,e.otilde=556,e.Rcommaaccent=722,e.Lcommaaccent=556,e.Atilde=667,e.Aogonek=667,e.Aring=667,e.Otilde=778,e.zdotaccent=500,e.Ecaron=667,e.Iogonek=278,e.kcommaaccent=500,e.minus=584,e.Icircumflex=278,e.ncaron=556,e.tcommaaccent=278,e.logicalnot=584,e.odieresis=556,e.udieresis=556,e.notequal=549,e.gcommaaccent=556,e.eth=556,e.zcaron=500,e.ncommaaccent=556,e.onesuperior=333,e.imacron=278,e.Euro=556}),e.Symbol=Ks(function(e){e.space=250,e.exclam=333,e.universal=713,e.numbersign=500,e.existential=549,e.percent=833,e.ampersand=778,e.suchthat=439,e.parenleft=333,e.parenright=333,e.asteriskmath=500,e.plus=549,e.comma=250,e.minus=549,e.period=250,e.slash=278,e.zero=500,e.one=500,e.two=500,e.three=500,e.four=500,e.five=500,e.six=500,e.seven=500,e.eight=500,e.nine=500,e.colon=278,e.semicolon=278,e.less=549,e.equal=549,e.greater=549,e.question=444,e.congruent=549,e.Alpha=722,e.Beta=667,e.Chi=722,e.Delta=612,e.Epsilon=611,e.Phi=763,e.Gamma=603,e.Eta=722,e.Iota=333,e.theta1=631,e.Kappa=722,e.Lambda=686,e.Mu=889,e.Nu=722,e.Omicron=722,e.Pi=768,e.Theta=741,e.Rho=556,e.Sigma=592,e.Tau=611,e.Upsilon=690,e.sigma1=439,e.Omega=768,e.Xi=645,e.Psi=795,e.Zeta=611,e.bracketleft=333,e.therefore=863,e.bracketright=333,e.perpendicular=658,e.underscore=500,e.radicalex=500,e.alpha=631,e.beta=549,e.chi=549,e.delta=494,e.epsilon=439,e.phi=521,e.gamma=411,e.eta=603,e.iota=329,e.phi1=603,e.kappa=549,e.lambda=549,e.mu=576,e.nu=521,e.omicron=549,e.pi=549,e.theta=521,e.rho=549,e.sigma=603,e.tau=439,e.upsilon=576,e.omega1=713,e.omega=686,e.xi=493,e.psi=686,e.zeta=494,e.braceleft=480,e.bar=200,e.braceright=480,e.similar=549,e.Euro=750,e.Upsilon1=620,e.minute=247,e.lessequal=549,e.fraction=167,e.infinity=713,e.florin=500,e.club=753,e.diamond=753,e.heart=753,e.spade=753,e.arrowboth=1042,e.arrowleft=987,e.arrowup=603,e.arrowright=987,e.arrowdown=603,e.degree=400,e.plusminus=549,e.second=411,e.greaterequal=549,e.multiply=549,e.proportional=713,e.partialdiff=494,e.bullet=460,e.divide=549,e.notequal=549,e.equivalence=549,e.approxequal=549,e.ellipsis=1e3,e.arrowvertex=603,e.arrowhorizex=1e3,e.carriagereturn=658,e.aleph=823,e.Ifraktur=686,e.Rfraktur=795,e.weierstrass=987,e.circlemultiply=768,e.circleplus=768,e.emptyset=823,e.intersection=768,e.union=768,e.propersuperset=713,e.reflexsuperset=713,e.notsubset=713,e.propersubset=713,e.reflexsubset=713,e.element=713,e.notelement=713,e.angle=768,e.gradient=713,e.registerserif=790,e.copyrightserif=790,e.trademarkserif=890,e.product=823,e.radical=549,e.dotmath=250,e.logicalnot=713,e.logicaland=603,e.logicalor=603,e.arrowdblboth=1042,e.arrowdblleft=987,e.arrowdblup=603,e.arrowdblright=987,e.arrowdbldown=603,e.lozenge=494,e.angleleft=329,e.registersans=790,e.copyrightsans=790,e.trademarksans=786,e.summation=713,e.parenlefttp=384,e.parenleftex=384,e.parenleftbt=384,e.bracketlefttp=384,e.bracketleftex=384,e.bracketleftbt=384,e.bracelefttp=494,e.braceleftmid=494,e.braceleftbt=494,e.braceex=494,e.angleright=329,e.integral=274,e.integraltp=686,e.integralex=686,e.integralbt=686,e.parenrighttp=384,e.parenrightex=384,e.parenrightbt=384,e.bracketrighttp=384,e.bracketrightex=384,e.bracketrightbt=384,e.bracerighttp=494,e.bracerightmid=494,e.bracerightbt=494,e.apple=790}),e["Times-Roman"]=Ks(function(e){e.space=250,e.exclam=333,e.quotedbl=408,e.numbersign=500,e.dollar=500,e.percent=833,e.ampersand=778,e.quoteright=333,e.parenleft=333,e.parenright=333,e.asterisk=500,e.plus=564,e.comma=250,e.hyphen=333,e.period=250,e.slash=278,e.zero=500,e.one=500,e.two=500,e.three=500,e.four=500,e.five=500,e.six=500,e.seven=500,e.eight=500,e.nine=500,e.colon=278,e.semicolon=278,e.less=564,e.equal=564,e.greater=564,e.question=444,e.at=921,e.A=722,e.B=667,e.C=667,e.D=722,e.E=611,e.F=556,e.G=722,e.H=722,e.I=333,e.J=389,e.K=722,e.L=611,e.M=889,e.N=722,e.O=722,e.P=556,e.Q=722,e.R=667,e.S=556,e.T=611,e.U=722,e.V=722,e.W=944,e.X=722,e.Y=722,e.Z=611,e.bracketleft=333,e.backslash=278,e.bracketright=333,e.asciicircum=469,e.underscore=500,e.quoteleft=333,e.a=444,e.b=500,e.c=444,e.d=500,e.e=444,e.f=333,e.g=500,e.h=500,e.i=278,e.j=278,e.k=500,e.l=278,e.m=778,e.n=500,e.o=500,e.p=500,e.q=500,e.r=333,e.s=389,e.t=278,e.u=500,e.v=500,e.w=722,e.x=500,e.y=500,e.z=444,e.braceleft=480,e.bar=200,e.braceright=480,e.asciitilde=541,e.exclamdown=333,e.cent=500,e.sterling=500,e.fraction=167,e.yen=500,e.florin=500,e.section=500,e.currency=500,e.quotesingle=180,e.quotedblleft=444,e.guillemotleft=500,e.guilsinglleft=333,e.guilsinglright=333,e.fi=556,e.fl=556,e.endash=500,e.dagger=500,e.daggerdbl=500,e.periodcentered=250,e.paragraph=453,e.bullet=350,e.quotesinglbase=333,e.quotedblbase=444,e.quotedblright=444,e.guillemotright=500,e.ellipsis=1e3,e.perthousand=1e3,e.questiondown=444,e.grave=333,e.acute=333,e.circumflex=333,e.tilde=333,e.macron=333,e.breve=333,e.dotaccent=333,e.dieresis=333,e.ring=333,e.cedilla=333,e.hungarumlaut=333,e.ogonek=333,e.caron=333,e.emdash=1e3,e.AE=889,e.ordfeminine=276,e.Lslash=611,e.Oslash=722,e.OE=889,e.ordmasculine=310,e.ae=667,e.dotlessi=278,e.lslash=278,e.oslash=500,e.oe=722,e.germandbls=500,e.Idieresis=333,e.eacute=444,e.abreve=444,e.uhungarumlaut=500,e.ecaron=444,e.Ydieresis=722,e.divide=564,e.Yacute=722,e.Acircumflex=722,e.aacute=444,e.Ucircumflex=722,e.yacute=500,e.scommaaccent=389,e.ecircumflex=444,e.Uring=722,e.Udieresis=722,e.aogonek=444,e.Uacute=722,e.uogonek=500,e.Edieresis=611,e.Dcroat=722,e.commaaccent=250,e.copyright=760,e.Emacron=611,e.ccaron=444,e.aring=444,e.Ncommaaccent=722,e.lacute=278,e.agrave=444,e.Tcommaaccent=611,e.Cacute=667,e.atilde=444,e.Edotaccent=611,e.scaron=389,e.scedilla=389,e.iacute=278,e.lozenge=471,e.Rcaron=667,e.Gcommaaccent=722,e.ucircumflex=500,e.acircumflex=444,e.Amacron=722,e.rcaron=333,e.ccedilla=444,e.Zdotaccent=611,e.Thorn=556,e.Omacron=722,e.Racute=667,e.Sacute=556,e.dcaron=588,e.Umacron=722,e.uring=500,e.threesuperior=300,e.Ograve=722,e.Agrave=722,e.Abreve=722,e.multiply=564,e.uacute=500,e.Tcaron=611,e.partialdiff=476,e.ydieresis=500,e.Nacute=722,e.icircumflex=278,e.Ecircumflex=611,e.adieresis=444,e.edieresis=444,e.cacute=444,e.nacute=500,e.umacron=500,e.Ncaron=722,e.Iacute=333,e.plusminus=564,e.brokenbar=200,e.registered=760,e.Gbreve=722,e.Idotaccent=333,e.summation=600,e.Egrave=611,e.racute=333,e.omacron=500,e.Zacute=611,e.Zcaron=611,e.greaterequal=549,e.Eth=722,e.Ccedilla=667,e.lcommaaccent=278,e.tcaron=326,e.eogonek=444,e.Uogonek=722,e.Aacute=722,e.Adieresis=722,e.egrave=444,e.zacute=444,e.iogonek=278,e.Oacute=722,e.oacute=500,e.amacron=444,e.sacute=389,e.idieresis=278,e.Ocircumflex=722,e.Ugrave=722,e.Delta=612,e.thorn=500,e.twosuperior=300,e.Odieresis=722,e.mu=500,e.igrave=278,e.ohungarumlaut=500,e.Eogonek=611,e.dcroat=500,e.threequarters=750,e.Scedilla=556,e.lcaron=344,e.Kcommaaccent=722,e.Lacute=611,e.trademark=980,e.edotaccent=444,e.Igrave=333,e.Imacron=333,e.Lcaron=611,e.onehalf=750,e.lessequal=549,e.ocircumflex=500,e.ntilde=500,e.Uhungarumlaut=722,e.Eacute=611,e.emacron=444,e.gbreve=500,e.onequarter=750,e.Scaron=556,e.Scommaaccent=556,e.Ohungarumlaut=722,e.degree=400,e.ograve=500,e.Ccaron=667,e.ugrave=500,e.radical=453,e.Dcaron=722,e.rcommaaccent=333,e.Ntilde=722,e.otilde=500,e.Rcommaaccent=667,e.Lcommaaccent=611,e.Atilde=722,e.Aogonek=722,e.Aring=722,e.Otilde=722,e.zdotaccent=444,e.Ecaron=611,e.Iogonek=333,e.kcommaaccent=500,e.minus=564,e.Icircumflex=333,e.ncaron=500,e.tcommaaccent=278,e.logicalnot=564,e.odieresis=500,e.udieresis=500,e.notequal=549,e.gcommaaccent=500,e.eth=500,e.zcaron=444,e.ncommaaccent=500,e.onesuperior=300,e.imacron=278,e.Euro=500}),e["Times-Bold"]=Ks(function(e){e.space=250,e.exclam=333,e.quotedbl=555,e.numbersign=500,e.dollar=500,e.percent=1e3,e.ampersand=833,e.quoteright=333,e.parenleft=333,e.parenright=333,e.asterisk=500,e.plus=570,e.comma=250,e.hyphen=333,e.period=250,e.slash=278,e.zero=500,e.one=500,e.two=500,e.three=500,e.four=500,e.five=500,e.six=500,e.seven=500,e.eight=500,e.nine=500,e.colon=333,e.semicolon=333,e.less=570,e.equal=570,e.greater=570,e.question=500,e.at=930,e.A=722,e.B=667,e.C=722,e.D=722,e.E=667,e.F=611,e.G=778,e.H=778,e.I=389,e.J=500,e.K=778,e.L=667,e.M=944,e.N=722,e.O=778,e.P=611,e.Q=778,e.R=722,e.S=556,e.T=667,e.U=722,e.V=722,e.W=1e3,e.X=722,e.Y=722,e.Z=667,e.bracketleft=333,e.backslash=278,e.bracketright=333,e.asciicircum=581,e.underscore=500,e.quoteleft=333,e.a=500,e.b=556,e.c=444,e.d=556,e.e=444,e.f=333,e.g=500,e.h=556,e.i=278,e.j=333,e.k=556,e.l=278,e.m=833,e.n=556,e.o=500,e.p=556,e.q=556,e.r=444,e.s=389,e.t=333,e.u=556,e.v=500,e.w=722,e.x=500,e.y=500,e.z=444,e.braceleft=394,e.bar=220,e.braceright=394,e.asciitilde=520,e.exclamdown=333,e.cent=500,e.sterling=500,e.fraction=167,e.yen=500,e.florin=500,e.section=500,e.currency=500,e.quotesingle=278,e.quotedblleft=500,e.guillemotleft=500,e.guilsinglleft=333,e.guilsinglright=333,e.fi=556,e.fl=556,e.endash=500,e.dagger=500,e.daggerdbl=500,e.periodcentered=250,e.paragraph=540,e.bullet=350,e.quotesinglbase=333,e.quotedblbase=500,e.quotedblright=500,e.guillemotright=500,e.ellipsis=1e3,e.perthousand=1e3,e.questiondown=500,e.grave=333,e.acute=333,e.circumflex=333,e.tilde=333,e.macron=333,e.breve=333,e.dotaccent=333,e.dieresis=333,e.ring=333,e.cedilla=333,e.hungarumlaut=333,e.ogonek=333,e.caron=333,e.emdash=1e3,e.AE=1e3,e.ordfeminine=300,e.Lslash=667,e.Oslash=778,e.OE=1e3,e.ordmasculine=330,e.ae=722,e.dotlessi=278,e.lslash=278,e.oslash=500,e.oe=722,e.germandbls=556,e.Idieresis=389,e.eacute=444,e.abreve=500,e.uhungarumlaut=556,e.ecaron=444,e.Ydieresis=722,e.divide=570,e.Yacute=722,e.Acircumflex=722,e.aacute=500,e.Ucircumflex=722,e.yacute=500,e.scommaaccent=389,e.ecircumflex=444,e.Uring=722,e.Udieresis=722,e.aogonek=500,e.Uacute=722,e.uogonek=556,e.Edieresis=667,e.Dcroat=722,e.commaaccent=250,e.copyright=747,e.Emacron=667,e.ccaron=444,e.aring=500,e.Ncommaaccent=722,e.lacute=278,e.agrave=500,e.Tcommaaccent=667,e.Cacute=722,e.atilde=500,e.Edotaccent=667,e.scaron=389,e.scedilla=389,e.iacute=278,e.lozenge=494,e.Rcaron=722,e.Gcommaaccent=778,e.ucircumflex=556,e.acircumflex=500,e.Amacron=722,e.rcaron=444,e.ccedilla=444,e.Zdotaccent=667,e.Thorn=611,e.Omacron=778,e.Racute=722,e.Sacute=556,e.dcaron=672,e.Umacron=722,e.uring=556,e.threesuperior=300,e.Ograve=778,e.Agrave=722,e.Abreve=722,e.multiply=570,e.uacute=556,e.Tcaron=667,e.partialdiff=494,e.ydieresis=500,e.Nacute=722,e.icircumflex=278,e.Ecircumflex=667,e.adieresis=500,e.edieresis=444,e.cacute=444,e.nacute=556,e.umacron=556,e.Ncaron=722,e.Iacute=389,e.plusminus=570,e.brokenbar=220,e.registered=747,e.Gbreve=778,e.Idotaccent=389,e.summation=600,e.Egrave=667,e.racute=444,e.omacron=500,e.Zacute=667,e.Zcaron=667,e.greaterequal=549,e.Eth=722,e.Ccedilla=722,e.lcommaaccent=278,e.tcaron=416,e.eogonek=444,e.Uogonek=722,e.Aacute=722,e.Adieresis=722,e.egrave=444,e.zacute=444,e.iogonek=278,e.Oacute=778,e.oacute=500,e.amacron=500,e.sacute=389,e.idieresis=278,e.Ocircumflex=778,e.Ugrave=722,e.Delta=612,e.thorn=556,e.twosuperior=300,e.Odieresis=778,e.mu=556,e.igrave=278,e.ohungarumlaut=500,e.Eogonek=667,e.dcroat=556,e.threequarters=750,e.Scedilla=556,e.lcaron=394,e.Kcommaaccent=778,e.Lacute=667,e.trademark=1e3,e.edotaccent=444,e.Igrave=389,e.Imacron=389,e.Lcaron=667,e.onehalf=750,e.lessequal=549,e.ocircumflex=500,e.ntilde=556,e.Uhungarumlaut=722,e.Eacute=667,e.emacron=444,e.gbreve=500,e.onequarter=750,e.Scaron=556,e.Scommaaccent=556,e.Ohungarumlaut=778,e.degree=400,e.ograve=500,e.Ccaron=722,e.ugrave=556,e.radical=549,e.Dcaron=722,e.rcommaaccent=444,e.Ntilde=722,e.otilde=500,e.Rcommaaccent=722,e.Lcommaaccent=667,e.Atilde=722,e.Aogonek=722,e.Aring=722,e.Otilde=778,e.zdotaccent=444,e.Ecaron=667,e.Iogonek=389,e.kcommaaccent=556,e.minus=570,e.Icircumflex=389,e.ncaron=556,e.tcommaaccent=333,e.logicalnot=570,e.odieresis=500,e.udieresis=556,e.notequal=549,e.gcommaaccent=500,e.eth=500,e.zcaron=444,e.ncommaaccent=556,e.onesuperior=300,e.imacron=278,e.Euro=500}),e["Times-BoldItalic"]=Ks(function(e){e.space=250,e.exclam=389,e.quotedbl=555,e.numbersign=500,e.dollar=500,e.percent=833,e.ampersand=778,e.quoteright=333,e.parenleft=333,e.parenright=333,e.asterisk=500,e.plus=570,e.comma=250,e.hyphen=333,e.period=250,e.slash=278,e.zero=500,e.one=500,e.two=500,e.three=500,e.four=500,e.five=500,e.six=500,e.seven=500,e.eight=500,e.nine=500,e.colon=333,e.semicolon=333,e.less=570,e.equal=570,e.greater=570,e.question=500,e.at=832,e.A=667,e.B=667,e.C=667,e.D=722,e.E=667,e.F=667,e.G=722,e.H=778,e.I=389,e.J=500,e.K=667,e.L=611,e.M=889,e.N=722,e.O=722,e.P=611,e.Q=722,e.R=667,e.S=556,e.T=611,e.U=722,e.V=667,e.W=889,e.X=667,e.Y=611,e.Z=611,e.bracketleft=333,e.backslash=278,e.bracketright=333,e.asciicircum=570,e.underscore=500,e.quoteleft=333,e.a=500,e.b=500,e.c=444,e.d=500,e.e=444,e.f=333,e.g=500,e.h=556,e.i=278,e.j=278,e.k=500,e.l=278,e.m=778,e.n=556,e.o=500,e.p=500,e.q=500,e.r=389,e.s=389,e.t=278,e.u=556,e.v=444,e.w=667,e.x=500,e.y=444,e.z=389,e.braceleft=348,e.bar=220,e.braceright=348,e.asciitilde=570,e.exclamdown=389,e.cent=500,e.sterling=500,e.fraction=167,e.yen=500,e.florin=500,e.section=500,e.currency=500,e.quotesingle=278,e.quotedblleft=500,e.guillemotleft=500,e.guilsinglleft=333,e.guilsinglright=333,e.fi=556,e.fl=556,e.endash=500,e.dagger=500,e.daggerdbl=500,e.periodcentered=250,e.paragraph=500,e.bullet=350,e.quotesinglbase=333,e.quotedblbase=500,e.quotedblright=500,e.guillemotright=500,e.ellipsis=1e3,e.perthousand=1e3,e.questiondown=500,e.grave=333,e.acute=333,e.circumflex=333,e.tilde=333,e.macron=333,e.breve=333,e.dotaccent=333,e.dieresis=333,e.ring=333,e.cedilla=333,e.hungarumlaut=333,e.ogonek=333,e.caron=333,e.emdash=1e3,e.AE=944,e.ordfeminine=266,e.Lslash=611,e.Oslash=722,e.OE=944,e.ordmasculine=300,e.ae=722,e.dotlessi=278,e.lslash=278,e.oslash=500,e.oe=722,e.germandbls=500,e.Idieresis=389,e.eacute=444,e.abreve=500,e.uhungarumlaut=556,e.ecaron=444,e.Ydieresis=611,e.divide=570,e.Yacute=611,e.Acircumflex=667,e.aacute=500,e.Ucircumflex=722,e.yacute=444,e.scommaaccent=389,e.ecircumflex=444,e.Uring=722,e.Udieresis=722,e.aogonek=500,e.Uacute=722,e.uogonek=556,e.Edieresis=667,e.Dcroat=722,e.commaaccent=250,e.copyright=747,e.Emacron=667,e.ccaron=444,e.aring=500,e.Ncommaaccent=722,e.lacute=278,e.agrave=500,e.Tcommaaccent=611,e.Cacute=667,e.atilde=500,e.Edotaccent=667,e.scaron=389,e.scedilla=389,e.iacute=278,e.lozenge=494,e.Rcaron=667,e.Gcommaaccent=722,e.ucircumflex=556,e.acircumflex=500,e.Amacron=667,e.rcaron=389,e.ccedilla=444,e.Zdotaccent=611,e.Thorn=611,e.Omacron=722,e.Racute=667,e.Sacute=556,e.dcaron=608,e.Umacron=722,e.uring=556,e.threesuperior=300,e.Ograve=722,e.Agrave=667,e.Abreve=667,e.multiply=570,e.uacute=556,e.Tcaron=611,e.partialdiff=494,e.ydieresis=444,e.Nacute=722,e.icircumflex=278,e.Ecircumflex=667,e.adieresis=500,e.edieresis=444,e.cacute=444,e.nacute=556,e.umacron=556,e.Ncaron=722,e.Iacute=389,e.plusminus=570,e.brokenbar=220,e.registered=747,e.Gbreve=722,e.Idotaccent=389,e.summation=600,e.Egrave=667,e.racute=389,e.omacron=500,e.Zacute=611,e.Zcaron=611,e.greaterequal=549,e.Eth=722,e.Ccedilla=667,e.lcommaaccent=278,e.tcaron=366,e.eogonek=444,e.Uogonek=722,e.Aacute=667,e.Adieresis=667,e.egrave=444,e.zacute=389,e.iogonek=278,e.Oacute=722,e.oacute=500,e.amacron=500,e.sacute=389,e.idieresis=278,e.Ocircumflex=722,e.Ugrave=722,e.Delta=612,e.thorn=500,e.twosuperior=300,e.Odieresis=722,e.mu=576,e.igrave=278,e.ohungarumlaut=500,e.Eogonek=667,e.dcroat=500,e.threequarters=750,e.Scedilla=556,e.lcaron=382,e.Kcommaaccent=667,e.Lacute=611,e.trademark=1e3,e.edotaccent=444,e.Igrave=389,e.Imacron=389,e.Lcaron=611,e.onehalf=750,e.lessequal=549,e.ocircumflex=500,e.ntilde=556,e.Uhungarumlaut=722,e.Eacute=667,e.emacron=444,e.gbreve=500,e.onequarter=750,e.Scaron=556,e.Scommaaccent=556,e.Ohungarumlaut=722,e.degree=400,e.ograve=500,e.Ccaron=667,e.ugrave=556,e.radical=549,e.Dcaron=722,e.rcommaaccent=389,e.Ntilde=722,e.otilde=500,e.Rcommaaccent=667,e.Lcommaaccent=611,e.Atilde=667,e.Aogonek=667,e.Aring=667,e.Otilde=722,e.zdotaccent=389,e.Ecaron=667,e.Iogonek=389,e.kcommaaccent=500,e.minus=606,e.Icircumflex=389,e.ncaron=556,e.tcommaaccent=278,e.logicalnot=606,e.odieresis=500,e.udieresis=556,e.notequal=549,e.gcommaaccent=500,e.eth=500,e.zcaron=389,e.ncommaaccent=556,e.onesuperior=300,e.imacron=278,e.Euro=500}),e["Times-Italic"]=Ks(function(e){e.space=250,e.exclam=333,e.quotedbl=420,e.numbersign=500,e.dollar=500,e.percent=833,e.ampersand=778,e.quoteright=333,e.parenleft=333,e.parenright=333,e.asterisk=500,e.plus=675,e.comma=250,e.hyphen=333,e.period=250,e.slash=278,e.zero=500,e.one=500,e.two=500,e.three=500,e.four=500,e.five=500,e.six=500,e.seven=500,e.eight=500,e.nine=500,e.colon=333,e.semicolon=333,e.less=675,e.equal=675,e.greater=675,e.question=500,e.at=920,e.A=611,e.B=611,e.C=667,e.D=722,e.E=611,e.F=611,e.G=722,e.H=722,e.I=333,e.J=444,e.K=667,e.L=556,e.M=833,e.N=667,e.O=722,e.P=611,e.Q=722,e.R=611,e.S=500,e.T=556,e.U=722,e.V=611,e.W=833,e.X=611,e.Y=556,e.Z=556,e.bracketleft=389,e.backslash=278,e.bracketright=389,e.asciicircum=422,e.underscore=500,e.quoteleft=333,e.a=500,e.b=500,e.c=444,e.d=500,e.e=444,e.f=278,e.g=500,e.h=500,e.i=278,e.j=278,e.k=444,e.l=278,e.m=722,e.n=500,e.o=500,e.p=500,e.q=500,e.r=389,e.s=389,e.t=278,e.u=500,e.v=444,e.w=667,e.x=444,e.y=444,e.z=389,e.braceleft=400,e.bar=275,e.braceright=400,e.asciitilde=541,e.exclamdown=389,e.cent=500,e.sterling=500,e.fraction=167,e.yen=500,e.florin=500,e.section=500,e.currency=500,e.quotesingle=214,e.quotedblleft=556,e.guillemotleft=500,e.guilsinglleft=333,e.guilsinglright=333,e.fi=500,e.fl=500,e.endash=500,e.dagger=500,e.daggerdbl=500,e.periodcentered=250,e.paragraph=523,e.bullet=350,e.quotesinglbase=333,e.quotedblbase=556,e.quotedblright=556,e.guillemotright=500,e.ellipsis=889,e.perthousand=1e3,e.questiondown=500,e.grave=333,e.acute=333,e.circumflex=333,e.tilde=333,e.macron=333,e.breve=333,e.dotaccent=333,e.dieresis=333,e.ring=333,e.cedilla=333,e.hungarumlaut=333,e.ogonek=333,e.caron=333,e.emdash=889,e.AE=889,e.ordfeminine=276,e.Lslash=556,e.Oslash=722,e.OE=944,e.ordmasculine=310,e.ae=667,e.dotlessi=278,e.lslash=278,e.oslash=500,e.oe=667,e.germandbls=500,e.Idieresis=333,e.eacute=444,e.abreve=500,e.uhungarumlaut=500,e.ecaron=444,e.Ydieresis=556,e.divide=675,e.Yacute=556,e.Acircumflex=611,e.aacute=500,e.Ucircumflex=722,e.yacute=444,e.scommaaccent=389,e.ecircumflex=444,e.Uring=722,e.Udieresis=722,e.aogonek=500,e.Uacute=722,e.uogonek=500,e.Edieresis=611,e.Dcroat=722,e.commaaccent=250,e.copyright=760,e.Emacron=611,e.ccaron=444,e.aring=500,e.Ncommaaccent=667,e.lacute=278,e.agrave=500,e.Tcommaaccent=556,e.Cacute=667,e.atilde=500,e.Edotaccent=611,e.scaron=389,e.scedilla=389,e.iacute=278,e.lozenge=471,e.Rcaron=611,e.Gcommaaccent=722,e.ucircumflex=500,e.acircumflex=500,e.Amacron=611,e.rcaron=389,e.ccedilla=444,e.Zdotaccent=556,e.Thorn=611,e.Omacron=722,e.Racute=611,e.Sacute=500,e.dcaron=544,e.Umacron=722,e.uring=500,e.threesuperior=300,e.Ograve=722,e.Agrave=611,e.Abreve=611,e.multiply=675,e.uacute=500,e.Tcaron=556,e.partialdiff=476,e.ydieresis=444,e.Nacute=667,e.icircumflex=278,e.Ecircumflex=611,e.adieresis=500,e.edieresis=444,e.cacute=444,e.nacute=500,e.umacron=500,e.Ncaron=667,e.Iacute=333,e.plusminus=675,e.brokenbar=275,e.registered=760,e.Gbreve=722,e.Idotaccent=333,e.summation=600,e.Egrave=611,e.racute=389,e.omacron=500,e.Zacute=556,e.Zcaron=556,e.greaterequal=549,e.Eth=722,e.Ccedilla=667,e.lcommaaccent=278,e.tcaron=300,e.eogonek=444,e.Uogonek=722,e.Aacute=611,e.Adieresis=611,e.egrave=444,e.zacute=389,e.iogonek=278,e.Oacute=722,e.oacute=500,e.amacron=500,e.sacute=389,e.idieresis=278,e.Ocircumflex=722,e.Ugrave=722,e.Delta=612,e.thorn=500,e.twosuperior=300,e.Odieresis=722,e.mu=500,e.igrave=278,e.ohungarumlaut=500,e.Eogonek=611,e.dcroat=500,e.threequarters=750,e.Scedilla=500,e.lcaron=300,e.Kcommaaccent=667,e.Lacute=556,e.trademark=980,e.edotaccent=444,e.Igrave=333,e.Imacron=333,e.Lcaron=611,e.onehalf=750,e.lessequal=549,e.ocircumflex=500,e.ntilde=500,e.Uhungarumlaut=722,e.Eacute=611,e.emacron=444,e.gbreve=500,e.onequarter=750,e.Scaron=500,e.Scommaaccent=500,e.Ohungarumlaut=722,e.degree=400,e.ograve=500,e.Ccaron=667,e.ugrave=500,e.radical=453,e.Dcaron=722,e.rcommaaccent=389,e.Ntilde=667,e.otilde=500,e.Rcommaaccent=611,e.Lcommaaccent=556,e.Atilde=611,e.Aogonek=611,e.Aring=611,e.Otilde=722,e.zdotaccent=389,e.Ecaron=611,e.Iogonek=333,e.kcommaaccent=444,e.minus=675,e.Icircumflex=333,e.ncaron=500,e.tcommaaccent=278,e.logicalnot=675,e.odieresis=500,e.udieresis=500,e.notequal=549,e.gcommaaccent=500,e.eth=500,e.zcaron=389,e.ncommaaccent=500,e.onesuperior=300,e.imacron=278,e.Euro=500}),e.ZapfDingbats=Ks(function(e){e.space=278,e.a1=974,e.a2=961,e.a202=974,e.a3=980,e.a4=719,e.a5=789,e.a119=790,e.a118=791,e.a117=690,e.a11=960,e.a12=939,e.a13=549,e.a14=855,e.a15=911,e.a16=933,e.a105=911,e.a17=945,e.a18=974,e.a19=755,e.a20=846,e.a21=762,e.a22=761,e.a23=571,e.a24=677,e.a25=763,e.a26=760,e.a27=759,e.a28=754,e.a6=494,e.a7=552,e.a8=537,e.a9=577,e.a10=692,e.a29=786,e.a30=788,e.a31=788,e.a32=790,e.a33=793,e.a34=794,e.a35=816,e.a36=823,e.a37=789,e.a38=841,e.a39=823,e.a40=833,e.a41=816,e.a42=831,e.a43=923,e.a44=744,e.a45=723,e.a46=749,e.a47=790,e.a48=792,e.a49=695,e.a50=776,e.a51=768,e.a52=792,e.a53=759,e.a54=707,e.a55=708,e.a56=682,e.a57=701,e.a58=826,e.a59=815,e.a60=789,e.a61=789,e.a62=707,e.a63=687,e.a64=696,e.a65=689,e.a66=786,e.a67=787,e.a68=713,e.a69=791,e.a70=785,e.a71=791,e.a72=873,e.a73=761,e.a74=762,e.a203=762,e.a75=759,e.a204=759,e.a76=892,e.a77=892,e.a78=788,e.a79=784,e.a81=438,e.a82=138,e.a83=277,e.a84=415,e.a97=392,e.a98=392,e.a99=668,e.a100=668,e.a89=390,e.a90=390,e.a93=317,e.a94=317,e.a91=276,e.a92=276,e.a205=509,e.a85=509,e.a206=410,e.a86=410,e.a87=234,e.a88=234,e.a95=334,e.a96=334,e.a101=732,e.a102=544,e.a103=544,e.a104=910,e.a106=667,e.a107=760,e.a108=760,e.a112=776,e.a111=595,e.a110=694,e.a109=626,e.a120=788,e.a121=788,e.a122=788,e.a123=788,e.a124=788,e.a125=788,e.a126=788,e.a127=788,e.a128=788,e.a129=788,e.a130=788,e.a131=788,e.a132=788,e.a133=788,e.a134=788,e.a135=788,e.a136=788,e.a137=788,e.a138=788,e.a139=788,e.a140=788,e.a141=788,e.a142=788,e.a143=788,e.a144=788,e.a145=788,e.a146=788,e.a147=788,e.a148=788,e.a149=788,e.a150=788,e.a151=788,e.a152=788,e.a153=788,e.a154=788,e.a155=788,e.a156=788,e.a157=788,e.a158=788,e.a159=788,e.a160=894,e.a161=838,e.a163=1016,e.a164=458,e.a196=748,e.a165=924,e.a192=748,e.a166=918,e.a167=927,e.a168=928,e.a169=928,e.a170=834,e.a171=873,e.a172=828,e.a173=924,e.a162=924,e.a174=917,e.a175=930,e.a176=931,e.a177=463,e.a178=883,e.a179=836,e.a193=836,e.a180=867,e.a199=867,e.a181=696,e.a200=696,e.a182=874,e.a201=874,e.a183=760,e.a184=946,e.a197=771,e.a185=865,e.a194=771,e.a198=888,e.a186=967,e.a195=888,e.a187=831,e.a188=873,e.a189=927,e.a190=970,e.a191=918})}),Vo=Ks(function(e){e.Courier={ascent:629,descent:-157,capHeight:562,xHeight:-426},e["Courier-Bold"]={ascent:629,descent:-157,capHeight:562,xHeight:439},e["Courier-Oblique"]={ascent:629,descent:-157,capHeight:562,xHeight:426},e["Courier-BoldOblique"]={ascent:629,descent:-157,capHeight:562,xHeight:426},e.Helvetica={ascent:718,descent:-207,capHeight:718,xHeight:523},e["Helvetica-Bold"]={ascent:718,descent:-207,capHeight:718,xHeight:532},e["Helvetica-Oblique"]={ascent:718,descent:-207,capHeight:718,xHeight:523},e["Helvetica-BoldOblique"]={ascent:718,descent:-207,capHeight:718,xHeight:532},e["Times-Roman"]={ascent:683,descent:-217,capHeight:662,xHeight:450},e["Times-Bold"]={ascent:683,descent:-217,capHeight:676,xHeight:461},e["Times-Italic"]={ascent:683,descent:-217,capHeight:653,xHeight:441},e["Times-BoldItalic"]={ascent:683,descent:-217,capHeight:669,xHeight:462},e.Symbol={ascent:Math.NaN,descent:Math.NaN,capHeight:Math.NaN,xHeight:Math.NaN},e.ZapfDingbats={ascent:Math.NaN,descent:Math.NaN,capHeight:Math.NaN,xHeight:Math.NaN}});class Xo{constructor({glyfTable:e,isGlyphLocationsLong:t,locaTable:s,numGlyphs:a}){this.glyphs=[];const i=new DataView(s.buffer,s.byteOffset,s.byteLength),n=new DataView(e.buffer,e.byteOffset,e.byteLength),r=t?4:2;let o=t?i.getUint32(0):2*i.getUint16(0),c=0;for(let l=0;l<a;l++){c+=r;const e=t?i.getUint32(c):2*i.getUint16(c);if(e===o){this.glyphs.push(new Ko({}));continue}const s=Ko.parse(o,n);this.glyphs.push(s),o=e}}getSize(){return Math.sumPrecise(this.glyphs.map(e=>e.getSize()+3&-4))}write(){const e=this.getSize(),t=new DataView(new ArrayBuffer(e)),s=e>131070,a=s?4:2,i=new DataView(new ArrayBuffer((this.glyphs.length+1)*a));s?i.setUint32(0,0):i.setUint16(0,0);let n=0,r=0;for(const o of this.glyphs)n+=o.write(n,t),n=n+3&-4,r+=a,s?i.setUint32(r,n):i.setUint16(r,n>>1);return{isLocationLong:s,loca:new Uint8Array(i.buffer),glyf:new Uint8Array(t.buffer)}}scale(e){for(let t=0,s=this.glyphs.length;t<s;t++)this.glyphs[t].scale(e[t])}}class Ko{constructor({header:e=null,simple:t=null,composites:s=null}){this.header=e,this.simple=t,this.composites=s}static parse(e,t){const[s,a]=Yo.parse(e,t);if(e+=s,a.numberOfContours<0){const s=[];for(;;){const[a,i]=Qo.parse(e,t);if(e+=a,s.push(i),!(32&i.flags))break}return new Ko({header:a,composites:s})}const i=Zo.parse(e,t,a.numberOfContours);return new Ko({header:a,simple:i})}getSize(){if(!this.header)return 0;const e=this.simple?this.simple.getSize():Math.sumPrecise(this.composites.map(e=>e.getSize()));return this.header.getSize()+e}write(e,t){if(!this.header)return 0;const s=e;if(e+=this.header.write(e,t),this.simple)e+=this.simple.write(e,t);else for(const a of this.composites)e+=a.write(e,t);return e-s}scale(e){if(!this.header)return;const t=(this.header.xMin+this.header.xMax)/2;if(this.header.scale(t,e),this.simple)this.simple.scale(t,e);else for(const s of this.composites)s.scale(t,e)}}class Yo{constructor({numberOfContours:e,xMin:t,yMin:s,xMax:a,yMax:i}){this.numberOfContours=e,this.xMin=t,this.yMin=s,this.xMax=a,this.yMax=i}static parse(e,t){return[10,new Yo({numberOfContours:t.getInt16(e),xMin:t.getInt16(e+2),yMin:t.getInt16(e+4),xMax:t.getInt16(e+6),yMax:t.getInt16(e+8)})]}getSize(){return 10}write(e,t){return t.setInt16(e,this.numberOfContours),t.setInt16(e+2,this.xMin),t.setInt16(e+4,this.yMin),t.setInt16(e+6,this.xMax),t.setInt16(e+8,this.yMax),10}scale(e,t){this.xMin=Math.round(e+(this.xMin-e)*t),this.xMax=Math.round(e+(this.xMax-e)*t)}}class Jo{constructor({flags:e,xCoordinates:t,yCoordinates:s}){this.xCoordinates=t,this.yCoordinates=s,this.flags=e}}class Zo{constructor({contours:e,instructions:t}){this.contours=e,this.instructions=t}static parse(e,t,s){const a=[];for(let p=0;p<s;p++){const s=t.getUint16(e);e+=2,a.push(s)}const i=a[s-1]+1,n=t.getUint16(e);e+=2;const r=new Uint8Array(t).slice(e,e+n);e+=n;const o=[];for(let p=0;p<i;e++,p++){let s=t.getUint8(e);if(o.push(s),8&s){const a=t.getUint8(++e);s^=8;for(let e=0;e<a;e++)o.push(s);p+=a}}const c=[];let l=[],h=[],u=[];const d=[];let f=0,g=0;for(let p=0;p<i;p++){const s=o[p];if(2&s){const a=t.getUint8(e++);g+=16&s?a:-a,l.push(g)}else 16&s||(g+=t.getInt16(e),e+=2),l.push(g);a[f]===p&&(f++,c.push(l),l=[])}g=0,f=0;for(let p=0;p<i;p++){const s=o[p];if(4&s){const a=t.getUint8(e++);g+=32&s?a:-a,h.push(g)}else 32&s||(g+=t.getInt16(e),e+=2),h.push(g);u.push(1&s|64&s),a[f]===p&&(l=c[f],f++,d.push(new Jo({flags:u,xCoordinates:l,yCoordinates:h})),h=[],u=[])}return new Zo({contours:d,instructions:r})}getSize(){let e=2*this.contours.length+2+this.instructions.length,t=0,s=0;for(const a of this.contours){e+=a.flags.length;for(let i=0,n=a.xCoordinates.length;i<n;i++){const n=a.xCoordinates[i],r=a.yCoordinates[i];let o=Math.abs(n-t);o>255?e+=2:o>0&&(e+=1),t=n,o=Math.abs(r-s),o>255?e+=2:o>0&&(e+=1),s=r}}return e}write(e,t){const s=e,a=[],i=[],n=[];let r=0,o=0;for(const c of this.contours){for(let e=0,t=c.xCoordinates.length;e<t;e++){let t=c.flags[e];const s=c.xCoordinates[e];let l=s-r;if(0===l)t|=16,a.push(0);else{const e=Math.abs(l);e<=255?(t|=l>=0?18:2,a.push(e)):a.push(l)}r=s;const h=c.yCoordinates[e];if(l=h-o,0===l)t|=32,i.push(0);else{const e=Math.abs(l);e<=255?(t|=l>=0?36:4,i.push(e)):i.push(l)}o=h,n.push(t)}t.setUint16(e,a.length-1),e+=2}t.setUint16(e,this.instructions.length),e+=2,this.instructions.length&&(new Uint8Array(t.buffer,0,t.buffer.byteLength).set(this.instructions,e),e+=this.instructions.length);for(const c of n)t.setUint8(e++,c);for(let c=0,l=a.length;c<l;c++){const s=a[c],i=n[c];2&i?t.setUint8(e++,s):16&i||(t.setInt16(e,s),e+=2)}for(let c=0,l=i.length;c<l;c++){const s=i[c],a=n[c];4&a?t.setUint8(e++,s):32&a||(t.setInt16(e,s),e+=2)}return e-s}scale(e,t){for(const s of this.contours)if(0!==s.xCoordinates.length)for(let a=0,i=s.xCoordinates.length;a<i;a++)s.xCoordinates[a]=Math.round(e+(s.xCoordinates[a]-e)*t)}}class Qo{constructor({flags:e,glyphIndex:t,argument1:s,argument2:a,transf:i,instructions:n}){this.flags=e,this.glyphIndex=t,this.argument1=s,this.argument2=a,this.transf=i,this.instructions=n}static parse(e,t){const s=e,a=[];let i=t.getUint16(e);const n=t.getUint16(e+2);let r,o;e+=4,1&i?(2&i?(r=t.getInt16(e),o=t.getInt16(e+2)):(r=t.getUint16(e),o=t.getUint16(e+2)),e+=4,i^=1):(2&i?(r=t.getInt8(e),o=t.getInt8(e+1)):(r=t.getUint8(e),o=t.getUint8(e+1)),e+=2),8&i?(a.push(t.getUint16(e)),e+=2):64&i?(a.push(t.getUint16(e),t.getUint16(e+2)),e+=4):128&i&&(a.push(t.getUint16(e),t.getUint16(e+2),t.getUint16(e+4),t.getUint16(e+6)),e+=8);let c=null;if(256&i){const s=t.getUint16(e);e+=2,c=new Uint8Array(t).slice(e,e+s),e+=s}return[e-s,new Qo({flags:i,glyphIndex:n,argument1:r,argument2:o,transf:a,instructions:c})]}getSize(){let e=4+2*this.transf.length;return 256&this.flags&&(e+=2+this.instructions.length),e+=2,2&this.flags?this.argument1>=-128&&this.argument1<=127&&this.argument2>=-128&&this.argument2<=127||(e+=2):this.argument1>=0&&this.argument1<=255&&this.argument2>=0&&this.argument2<=255||(e+=2),e}write(e,t){const s=e;return 2&this.flags?this.argument1>=-128&&this.argument1<=127&&this.argument2>=-128&&this.argument2<=127||(this.flags|=1):this.argument1>=0&&this.argument1<=255&&this.argument2>=0&&this.argument2<=255||(this.flags|=1),t.setUint16(e,this.flags),t.setUint16(e+2,this.glyphIndex),e+=4,1&this.flags?(2&this.flags?(t.setInt16(e,this.argument1),t.setInt16(e+2,this.argument2)):(t.setUint16(e,this.argument1),t.setUint16(e+2,this.argument2)),e+=4):(t.setUint8(e,this.argument1),t.setUint8(e+1,this.argument2),e+=2),256&this.flags&&(t.setUint16(e,this.instructions.length),e+=2,this.instructions.length&&(new Uint8Array(t.buffer,0,t.buffer.byteLength).set(this.instructions,e),e+=this.instructions.length)),e-s}scale(e,t){}}function ec(e,t,s){e[t]=s>>8&255,e[t+1]=255&s}function tc(e,t,s){e[t]=s>>24&255,e[t+1]=s>>16&255,e[t+2]=s>>8&255,e[t+3]=255&s}function sc(e,t,s){if(s instanceof Uint8Array)e.set(s,t);else if("string"==typeof s)for(let a=0,i=s.length;a<i;a++)e[t++]=255&s.charCodeAt(a);else for(const a of s)e[t++]=255&a}class ac{constructor(e){this.sfnt=e,this.tables=Object.create(null)}static getSearchParams(e,t){let s=1,a=0;for(;(s^e)>s;)s<<=1,a++;const i=s*t;return{range:i,entry:a,rangeShift:t*e-i}}toArray(){let e=this.sfnt;const t=this.tables,s=Object.keys(t);s.sort();const a=s.length;let i,n,r,o,c,l=12+16*a;const h=[l];for(i=0;i<a;i++)o=t[s[i]],l+=(o.length+3&-4)>>>0,h.push(l);const u=new Uint8Array(l);for(i=0;i<a;i++)o=t[s[i]],sc(u,h[i],o);"true"===e&&(e=ds(65536)),u[0]=255&e.charCodeAt(0),u[1]=255&e.charCodeAt(1),u[2]=255&e.charCodeAt(2),u[3]=255&e.charCodeAt(3),ec(u,4,a);const d=ac.getSearchParams(a,16);for(ec(u,6,d.range),ec(u,8,d.entry),ec(u,10,d.rangeShift),l=12,i=0;i<a;i++){c=s[i],u[l]=255&c.charCodeAt(0),u[l+1]=255&c.charCodeAt(1),u[l+2]=255&c.charCodeAt(2),u[l+3]=255&c.charCodeAt(3);let e=0;for(n=h[i],r=h[i+1];n<r;n+=4)e=e+la(u,n)>>>0;tc(u,l+4,e),tc(u,l+8,h[i]),tc(u,l+12,t[c].length),l+=16}return u}addTable(e,t){if(e in this.tables)throw new Error("Table "+e+" already exists");this.tables[e]=t}}const ic=[4],nc=[5],rc=[6],oc=[7],cc=[8],lc=[12,35],hc=[14],uc=[21],dc=[22],fc=[30],gc=[31];class pc{constructor(){this.width=0,this.lsb=0,this.flexing=!1,this.output=[],this.stack=[]}convert(e,t,s){const a=e.length;let i,n,r,o=!1;for(let c=0;c<a;c++){let a=e[c];if(a<32){switch(12===a&&(a=(a<<8)+e[++c]),a){case 1:case 3:case 9:case 3072:case 3073:case 3074:case 3105:this.stack=[];break;case 4:if(this.flexing){if(this.stack.length<1){o=!0;break}const e=this.stack.pop();this.stack.push(0,e);break}o=this.executeCommand(1,ic);break;case 5:o=this.executeCommand(2,nc);break;case 6:o=this.executeCommand(1,rc);break;case 7:o=this.executeCommand(1,oc);break;case 8:o=this.executeCommand(6,cc);break;case 10:if(this.stack.length<1){o=!0;break}if(r=this.stack.pop(),!t[r]){o=!0;break}o=this.convert(t[r],t,s);break;case 11:return o;case 13:if(this.stack.length<2){o=!0;break}i=this.stack.pop(),n=this.stack.pop(),this.lsb=n,this.width=i,this.stack.push(i,n),o=this.executeCommand(2,dc);break;case 14:this.output.push(hc[0]);break;case 21:if(this.flexing)break;o=this.executeCommand(2,uc);break;case 22:if(this.flexing){this.stack.push(0);break}o=this.executeCommand(1,dc);break;case 30:o=this.executeCommand(4,fc);break;case 31:o=this.executeCommand(4,gc);break;case 3078:if(s){const e=this.stack.at(-5);this.seac=this.stack.splice(-4,4),this.seac[0]+=this.lsb-e,o=this.executeCommand(0,hc)}else o=this.executeCommand(4,hc);break;case 3079:if(this.stack.length<4){o=!0;break}this.stack.pop(),i=this.stack.pop();const e=this.stack.pop();n=this.stack.pop(),this.lsb=n,this.width=i,this.stack.push(i,n,e),o=this.executeCommand(3,uc);break;case 3084:if(this.stack.length<2){o=!0;break}const c=this.stack.pop(),l=this.stack.pop();this.stack.push(l/c);break;case 3088:if(this.stack.length<2){o=!0;break}r=this.stack.pop();const h=this.stack.pop();if(0===r&&3===h){const e=this.stack.splice(-17,17);this.stack.push(e[2]+e[0],e[3]+e[1],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14]),o=this.executeCommand(13,lc,!0),this.flexing=!1,this.stack.push(e[15],e[16])}else 1===r&&0===h&&(this.flexing=!0);break;case 3089:break;default:Zt('Unknown type 1 charstring command of "'+a+'"')}if(o)break}else a<=246?a-=139:a=a<=250?256*(a-247)+e[++c]+108:a<=254?-256*(a-251)-e[++c]-108:(255&e[++c])<<24|(255&e[++c])<<16|(255&e[++c])<<8|255&e[++c],this.stack.push(a)}return o}executeCommand(e,t,s){const a=this.stack.length;if(e>a)return!0;const i=a-e;for(let n=i;n<a;n++){let e=this.stack[n];Number.isInteger(e)?this.output.push(28,e>>8&255,255&e):(e=65536*e|0,this.output.push(255,e>>24&255,e>>16&255,e>>8&255,255&e))}return this.output.push(...t),s?this.stack.splice(i,e):this.stack.length=0,!1}}function mc(e){return e>=48&&e<=57||e>=65&&e<=70||e>=97&&e<=102}function bc(e,t,s){if(s>=e.length)return new Uint8Array(0);let a,i,n=0|t;for(a=0;a<s;a++)n=52845*(e[a]+n)+22719&65535;const r=e.length-s,o=new Uint8Array(r);for(a=s,i=0;i<r;a++,i++){const t=e[a];o[i]=t^n>>8,n=52845*(t+n)+22719&65535}return o}function wc(e){return 47===e||91===e||93===e||123===e||125===e||40===e||41===e}class yc{constructor(e,t,s){if(t){const t=e.getBytes(),s=!((mc(t[0])||ha(t[0]))&&mc(t[1])&&mc(t[2])&&mc(t[3])&&mc(t[4])&&mc(t[5])&&mc(t[6])&&mc(t[7]));e=new ni(s?bc(t,55665,4):function(e,t,s){let a=0|t;const i=e.length,n=new Uint8Array(i>>>1);let r,o;for(r=0,o=0;r<i;r++){const t=e[r];if(!mc(t))continue;let s;for(r++;r<i&&!mc(s=e[r]);)r++;if(r<i){const e=parseInt(String.fromCharCode(t,s),16);n[o++]=e^a>>8,a=52845*(e+a)+22719&65535}}return n.slice(s,o)}(t,55665,4))}this.seacAnalysisEnabled=!!s,this.stream=e,this.nextChar()}readNumberArray(){this.getToken();const e=[];for(;;){const t=this.getToken();if(null===t||"]"===t||"}"===t)break;e.push(parseFloat(t||0))}return e}readNumber(){const e=this.getToken();return parseFloat(e||0)}readInt(){const e=this.getToken();return 0|parseInt(e||0,10)}readBoolean(){return"true"===this.getToken()?1:0}nextChar(){return this.currentChar=this.stream.getByte()}prevChar(){return this.stream.skip(-2),this.currentChar=this.stream.getByte()}getToken(){let e=!1,t=this.currentChar;for(;;){if(-1===t)return null;if(e)10!==t&&13!==t||(e=!1);else if(37===t)e=!0;else if(!ha(t))break;t=this.nextChar()}if(wc(t))return this.nextChar(),String.fromCharCode(t);let s="";do{s+=String.fromCharCode(t),t=this.nextChar()}while(t>=0&&!ha(t)&&!wc(t));return s}readCharStrings(e,t){return-1===t?e:bc(e,4330,t)}extractFontProgram(e){const t=this.stream,s=[],a=[],i=Object.create(null);i.lenIV=4;const n={subrs:[],charstrings:[],properties:{privateData:i}};let r,o,c,l;for(;null!==(r=this.getToken());)if("/"===r)switch(r=this.getToken(),r){case"CharStrings":for(this.getToken(),this.getToken(),this.getToken(),this.getToken();;){if(r=this.getToken(),null===r||"end"===r)break;if("/"!==r)continue;const e=this.getToken();o=this.readInt(),this.getToken(),c=o>0?t.getBytes(o):new Uint8Array(0),l=n.properties.privateData.lenIV;const s=this.readCharStrings(c,l);this.nextChar(),r=this.getToken(),"noaccess"===r?this.getToken():"/"===r&&this.prevChar(),a.push({glyph:e,encoded:s})}break;case"Subrs":for(this.readInt(),this.getToken();"dup"===this.getToken();){const e=this.readInt();o=this.readInt(),this.getToken(),c=o>0?t.getBytes(o):new Uint8Array(0),l=n.properties.privateData.lenIV;const a=this.readCharStrings(c,l);this.nextChar(),r=this.getToken(),"noaccess"===r&&this.getToken(),s[e]=a}break;case"BlueValues":case"OtherBlues":case"FamilyBlues":case"FamilyOtherBlues":const e=this.readNumberArray();e.length>0&&e.length;break;case"StemSnapH":case"StemSnapV":n.properties.privateData[r]=this.readNumberArray();break;case"StdHW":case"StdVW":n.properties.privateData[r]=this.readNumberArray()[0];break;case"BlueShift":case"lenIV":case"BlueFuzz":case"BlueScale":case"LanguageGroup":n.properties.privateData[r]=this.readNumber();break;case"ExpansionFactor":n.properties.privateData[r]=this.readNumber()||.06;break;case"ForceBold":n.properties.privateData[r]=this.readBoolean()}for(const{encoded:h,glyph:u}of a){const t=new pc,a=t.convert(h,s,this.seacAnalysisEnabled);let i=t.output;a&&(i=[14]);const r={glyphName:u,charstring:i,width:t.width,lsb:t.lsb,seac:t.seac};if(".notdef"===u?n.charstrings.unshift(r):n.charstrings.push(r),e.builtInEncoding){const s=e.builtInEncoding.indexOf(u);s>-1&&void 0===e.widths[s]&&s>=e.firstChar&&s<=e.lastChar&&(e.widths[s]=t.width)}}return n}extractFontHeader(e){let t;for(;null!==(t=this.getToken());)if("/"===t)switch(t=this.getToken(),t){case"FontMatrix":const s=this.readNumberArray();e.fontMatrix=s;break;case"Encoding":const a=this.getToken();let i;if(/^\d+$/.test(a)){i=[];const e=0|parseInt(a,10);this.getToken();for(let s=0;s<e;s++){for(t=this.getToken();"dup"!==t&&"def"!==t;)if(t=this.getToken(),null===t)return;if("def"===t)break;const e=this.readInt();this.getToken();const s=this.getToken();i[e]=s,this.getToken()}}else i=Nr(a);e.builtInEncoding=i;break;case"FontBBox":const n=this.readNumberArray();e.ascent=Math.max(n[3],n[1]),e.descent=Math.min(n[1],n[3]),e.ascentScaled=!0}}}function xc(e,t,s){const a=e.length,i=t.length,n=a-i;let r=s,o=!1;for(;r<n;){let s=0;for(;s<i&&e[r+s]===t[s];)s++;if(s>=i){for(r+=s;r<a&&ha(e[r]);)r++;o=!0;break}r++}return{found:o,length:r}}class kc{constructor(e,t,s){let a=s.length1,i=s.length2,n=t.peekBytes(6);const r=128===n[0]&&1===n[1];r&&(t.skip(6),a=n[5]<<24|n[4]<<16|n[3]<<8|n[2]);const o=function(e,t){const s=[101,101,120,101,99],a=e.pos;let i,n,r,o;try{i=e.getBytes(t),n=i.length}catch{}if(n===t&&(r=xc(i,s,t-2*s.length),r.found&&r.length===t))return{stream:new ni(i),length:t};for(Zt('Invalid "Length1" property in Type1 font -- trying to recover.'),e.pos=a;;){if(r=xc(e.peekBytes(2048),s,0),0===r.length)break;if(e.pos+=r.length,r.found){o=e.pos-a;break}}return e.pos=a,o?{stream:new ni(e.getBytes(o)),length:o}:(Zt('Unable to recover "Length1" property in Type1 font -- using as is.'),{stream:new ni(e.getBytes(t)),length:t})}(t,a);new yc(o.stream,!1,jr).extractFontHeader(s),r&&(n=t.getBytes(6),i=n[5]<<24|n[4]<<16|n[3]<<8|n[2]);const c=function(e){const t=e.getBytes();if(0===t.length)throw new cs("getEexecBlock - no font program found.");return{stream:new ni(t),length:t.length}}(t),l=new yc(c.stream,!0,jr).extractFontProgram(s);for(const f in l.properties)s[f]=l.properties[f];const h=l.charstrings,u=this.getType2Charstrings(h),d=this.getType2Subrs(l.subrs);this.charstrings=h,this.data=this.wrap(e,u,this.charstrings,d,s),this.seacs=this.getSeacs(l.charstrings)}get numGlyphs(){return this.charstrings.length+1}getCharset(){const e=[".notdef"];for(const{glyphName:t}of this.charstrings)e.push(t);return e}getGlyphMapping(e){const t=this.charstrings;if(e.composite){const s=Object.create(null);for(let a=0,i=t.length;a<i;a++)s[e.cMap.charCodeOf(a)]=a+1;return s}const s=[".notdef"];let a,i;for(i=0;i<t.length;i++)s.push(t[i].glyphName);const n=e.builtInEncoding;if(n){a=Object.create(null);for(const e in n)i=s.indexOf(n[e]),i>=0&&(a[e]=i)}return Xr(e,a,s)}hasGlyphId(e){return!(e<0||e>=this.numGlyphs)&&(0===e||this.charstrings[e-1].charstring.length>0)}getSeacs(e){const t=[];for(let s=0,a=e.length;s<a;s++){const a=e[s];a.seac&&(t[s+1]=a.seac)}return t}getType2Charstrings(e){const t=[];for(const s of e)t.push(s.charstring);return t}getType2Subrs(e){let t=0;const s=e.length;t=s<1133?107:s<33769?1131:32768;const a=[];let i;for(i=0;i<t;i++)a.push([11]);for(i=0;i<s;i++)a.push(e[i]);return a}wrap(e,t,s,a,i){const n=new no;n.header=new ro(1,0,4,4),n.names=[e];const r=new uo;r.setByName("version",391),r.setByName("Notice",392),r.setByName("FullName",393),r.setByName("FamilyName",394),r.setByName("Weight",395),r.setByName("Encoding",null),r.setByName("FontMatrix",i.fontMatrix),r.setByName("FontBBox",i.bbox),r.setByName("charset",null),r.setByName("CharStrings",null),r.setByName("Private",null),n.topDict=r;const o=new oo;o.add("Version 0.11"),o.add("See original notice"),o.add(e),o.add(e),o.add("Medium"),n.strings=o,n.globalSubrIndex=new co;const c=t.length,l=[".notdef"];let h,u;for(h=0;h<c;h++){const e=s[h].glyphName;-1===eo.indexOf(e)&&o.add(e),l.push(e)}n.charset=new mo(!1,0,l);const d=new co;for(d.add([139,14]),h=0;h<c;h++)d.add(t[h]);n.charStrings=d;const f=new go;f.setByName("Subrs",null);const g=["BlueValues","OtherBlues","FamilyBlues","FamilyOtherBlues","StemSnapH","StemSnapV","BlueShift","BlueFuzz","BlueScale","LanguageGroup","ExpansionFactor","ForceBold","StdHW","StdVW"];for(h=0,u=g.length;h<u;h++){const e=g[h];if(!(e in i.privateData))continue;const t=i.privateData[e];if(Array.isArray(t))for(let s=t.length-1;s>0;s--)t[s]-=t[s-1];f.setByName(e,t)}n.topDict.privateDict=f;const p=new co;for(h=0,u=a.length;h<u;h++)p.add(a[h]);return f.subrsIndex=p,new xo(n).compile()}}const vc=[[57344,63743],[1048576,1114109]],Ac=1e3,Cc=["ascent","bbox","black","bold","charProcOperatorList","cssFontInfo","data","defaultVMetrics","defaultWidth","descent","disableFontFace","fallbackName","fontExtraProperties","fontMatrix","isInvalidPDFjsFont","isType3Font","italic","loadedName","mimetype","missingFile","name","remeasure","systemFontInfo","vertical"],Sc=["cMap","composite","defaultEncoding","differences","isMonospace","isSerifFont","isSymbolicFont","seacMap","subtype","toFontChar","toUnicode","type","vmetrics","widths"];function Ic(e){if(!e.fontMatrix)return;if(e.fontMatrix[0]===t[0])return;const s=.001/e.fontMatrix[0],a=e.widths;for(const t in a)a[t]*=s;e.defaultWidth*=s}function Bc(e){if(!e.fallbackToUnicode)return;if(e.toUnicode instanceof No)return;const t=[];for(const s in e.fallbackToUnicode)e.toUnicode.has(s)||(t[s]=e.fallbackToUnicode[s]);t.length>0&&e.toUnicode.amend(t)}class Fc{constructor(e,t,s,a,i,n,r,o,c){this.originalCharCode=e,this.fontChar=t,this.unicode=s,this.accent=a,this.width=i,this.vmetric=n,this.operatorListId=r,this.isSpace=o,this.isInFont=c}get category(){return ss(this,"category",function(e){const t=qr.get(e);if(t)return t;const s=e.match(Ur),a={isWhitespace:!!s?.[1],isZeroWidthDiacritic:!!s?.[2],isInvisibleFormatMark:!!s?.[3]};return qr.set(e,a),a}(this.unicode),!0)}}function Mc(e,t){return(e<<8)+t}function Tc(e,t,s){e[t+1]=s,e[t]=s>>>8}function Rc(e,t){const s=(e<<8)+t;return 32768&s?s-65536:s}function Nc(e){return String.fromCharCode(e>>8&255,255&e)}function Dc(e){return e>32767?e=32767:e<-32768&&(e=-32768),String.fromCharCode(e>>8&255,255&e)}function Oc(e){return"ttcf"===hs(e.peekBytes(4))}function Pc(e,{type:t,subtype:s,composite:a}){let i,n;return function(e){const t=e.peekBytes(4);return 65536===la(t,0)||"true"===hs(t)}(e)||Oc(e)?i=a?"CIDFontType2":"TrueType":!function(e){return"OTTO"===hs(e.peekBytes(4))}(e)?!function(e){const t=e.peekBytes(2);return 37===t[0]&&33===t[1]||128===t[0]&&1===t[1]}(e)?!function(e){const t=e.peekBytes(4);return t[0]>=1&&t[3]>=1&&t[3]<=4}(e)?(Zt("getFontFileType: Unable to detect correct font file Type/Subtype."),i=t,n=s):a?(i="CIDFontType0",n="CIDFontType0C"):(i="MMType1"===t?"MMType1":"Type1",n="Type1C"):i=a?"CIDFontType0":"MMType1"===t?"MMType1":"Type1":i=a?"CIDFontType2":"OpenType",[i,n]}function Ec(e,t){for(const s in t)e[+s]=t[s]}function Lc(e,t,s){const a=[];let i;for(let n=0,r=e.length;n<r;n++)i=Er(e[n],t),-1!==i&&(a[n]=i);for(const n in s)i=Er(s[n],t),-1!==i&&(a[+n]=i);return a}function _c(e){return 1===e.platform&&0===e.encoding&&0===e.language}function Uc(e){return 3===e.platform&&1===e.encoding&&1033===e.language}function qc(e,t,s=!1){switch(t.length){case 1:return t.charCodeAt(0);case 2:return t.charCodeAt(0)<<8|t.charCodeAt(1)}const a=`Unsupported CID string (charCode ${e}): "${t}".`;if(s)throw new cs(a);return Zt(a),t}function jc(e,t,s,a){const i=Object.create(null),n=new Map,r=[],o=new Set;let c=0,l=vc[c][0],h=vc[c][1];const u=e=>vc[0][0]<=e&&e<=vc[0][1]||vc[1][0]<=e&&e<=vc[1][1];let d=null;for(const f in e){let g=e[f];if(!t(g))continue;if(l>h){if(c++,c>=vc.length){Zt("Ran out of space in font private use area.");break}l=vc[c][0],h=vc[c][1]}const p=l++;0===g&&(g=s);let m=a.get(f);if("string"==typeof m)if(1===m.length)m=m.codePointAt(0);else{if(!d){d=new Map;for(let e=64256;e<=64335;e++){const t=String.fromCharCode(e).normalize("NFKD");t.length>1&&d.set(t,e)}}m=d.get(m)||m.codePointAt(0)}!m||u(m)||o.has(g)||(n.set(m,g),o.add(g)),i[p]=g,r[f]=p}return{toFontChar:r,charCodeToGlyphId:i,toUnicodeExtraMap:n,nextAvailableFontCharCode:l}}function Hc(e,t,s){const a=function(e,t,s){const a=[];for(const r in e)e[r]>=s||a.push({fontCharCode:0|r,glyphId:e[r]});if(t)for(const[r,o]of t)o>=s||a.push({fontCharCode:r,glyphId:o});0===a.length&&a.push({fontCharCode:0,glyphId:0}),a.sort((e,t)=>e.fontCharCode-t.fontCharCode);const i=[],n=a.length;for(let r=0;r<n;){const e=a[r].fontCharCode,t=[a[r].glyphId];++r;let s=e;for(;r<n&&s+1===a[r].fontCharCode;)if(t.push(a[r].glyphId),++s,++r,65535===s)break;i.push([e,s,t])}return i}(e,t,s),i=a.at(-1)[1]>65535?2:1;let n,r,o,c,l="\0\0"+Nc(i)+"\0\0"+ds(4+8*i);for(n=a.length-1;n>=0&&!(a[n][0]<=65535);--n);const h=n+1;a[n][0]<65535&&65535===a[n][1]&&(a[n][1]=65534);const u=a[n][1]<65535?1:0,d=h+u,f=ac.getSearchParams(d,2);let g,p,m,b,w="",y="",x="",k="",v="",A=0;for(n=0,r=h;n<r;n++){g=a[n],p=g[0],m=g[1],w+=Nc(p),y+=Nc(m),b=g[2];let e=!0;for(o=1,c=b.length;o<c;++o)if(b[o]!==b[o-1]+1){e=!1;break}if(e)x+=Nc(b[0]-p&65535),k+=Nc(0);else{const e=2*(d-n)+2*A;for(A+=m-p+1,x+=Nc(0),k+=Nc(e),o=0,c=b.length;o<c;++o)v+=Nc(b[o])}}u>0&&(y+="ÿÿ",w+="ÿÿ",x+="\0",k+="\0\0");const C="\0\0"+Nc(2*d)+Nc(f.range)+Nc(f.entry)+Nc(f.rangeShift)+y+"\0\0"+w+x+k+v;let S="",I="";if(i>1){for(l+="\0\0\n"+ds(4+8*i+4+C.length),S="",n=0,r=a.length;n<r;n++){g=a[n],p=g[0],b=g[2];let e=b[0];for(o=1,c=b.length;o<c;++o)b[o]!==b[o-1]+1&&(m=g[0]+o-1,S+=ds(p)+ds(m)+ds(e),p=m+1,e=b[o]);S+=ds(p)+ds(g[1])+ds(e)}I="\0\f\0\0"+ds(S.length+16)+"\0\0\0\0"+ds(S.length/12)}return l+"\0"+Nc(C.length+4)+C+I+S}function $c(e,t,s){s||={unitsPerEm:0,yMax:0,yMin:0,ascent:0,descent:0};let a=0,i=0,n=0,r=0,o=null,c=0,l=-1;if(t){for(let e in t)if(e|=0,(o>e||!o)&&(o=e),c<e&&(c=e),l=_r(e,l),l<32)a|=1<<l;else if(l<64)i|=1<<l-32;else if(l<96)n|=1<<l-64;else{if(!(l<123))throw new cs("Unicode ranges Bits > 123 are reserved for internal usage");r|=1<<l-96}c>65535&&(c=65535)}else o=0,c=255;const h=e.bbox||[0,0,0,0],u=s.unitsPerEm||(e.fontMatrix?1/Math.max(...e.fontMatrix.slice(0,4).map(Math.abs)):1e3),d=e.ascentScaled?1:u/Ac,f=s.ascent||Math.round(d*(e.ascent||h[3]));let g=s.descent||Math.round(d*(e.descent||h[1]));g>0&&e.descent>0&&h[1]<0&&(g=-g);const p=s.yMax||f,m=-s.yMin||-g;return"\0$ô\0\0\0Š»\0\0\0ŒŠ»\0\0ß\x001\0\0\0\0"+String.fromCharCode(e.fixedPitch?9:0)+"\0\0\0\0\0\0"+ds(a)+ds(i)+ds(n)+ds(r)+"*21*"+Nc(e.italicAngle?1:0)+Nc(o||e.firstChar)+Nc(c||e.lastChar)+Nc(f)+Nc(g)+"\0d"+Nc(p)+Nc(m)+"\0\0\0\0\0\0\0\0"+Nc(e.xHeight)+Nc(e.capHeight)+Nc(0)+Nc(o||e.firstChar)+"\0"}function zc(e){return"\0\0\0"+ds(Math.floor(65536*e.italicAngle))+"\0\0\0\0"+ds(e.fixedPitch?1:0)+"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"}function Gc(e){return e.replaceAll(/[^\x21-\x7E]|[[\](){}<>/%]/g,"").slice(0,63)}function Wc(e,t){t||(t=[[],[]]);const s=[t[0][0]||"Original licence",t[0][1]||e,t[0][2]||"Unknown",t[0][3]||"uniqueID",t[0][4]||e,t[0][5]||"Version 0.11",t[0][6]||Gc(e),t[0][7]||"Unknown",t[0][8]||"Unknown",t[0][9]||"Unknown"],a=[];let i,n,r,o,c;for(i=0,n=s.length;i<n;i++){c=t[1][i]||s[i];const e=[];for(r=0,o=c.length;r<o;r++)e.push(Nc(c.charCodeAt(r)));a.push(e.join(""))}const l=[s,a],h=["\0","\0"],u=["\0\0","\0"],d=["\0\0","\t"],f=s.length*h.length;let g="\0\0"+Nc(f)+Nc(12*f+6),p=0;for(i=0,n=h.length;i<n;i++){const e=l[i];for(r=0,o=e.length;r<o;r++)c=e[r],g+=h[i]+u[i]+d[i]+Nc(r)+Nc(c.length)+Nc(p),p+=c.length}return g+=s.join("")+a.join(""),g}class Vc{constructor(e,t,s,a){this.name=e,this.psName=null,this.mimetype=null,this.disableFontFace=a.disableFontFace,this.fontExtraProperties=a.fontExtraProperties,this.loadedName=s.loadedName,this.isType3Font=s.isType3Font,this.missingFile=!1,this.cssFontInfo=s.cssFontInfo,this._charsCache=Object.create(null),this._glyphCache=Object.create(null);let i=!!(s.flags&$r);if(!i&&!s.isSimulatedFlags){const t=ko(),s=Ao(),a=Co();for(const n of e.split("+")){let e=n.replaceAll(/[,_]/g,"-");if(e=t[e]||s[e]||e,e=e.split("-",1)[0],a[e]){i=!0;break}}}this.isSerifFont=i,this.isSymbolicFont=!!(s.flags&zr),this.isMonospace=!!(s.flags&Hr);let{type:n,subtype:r}=s;this.type=n,this.subtype=r,this.systemFontInfo=s.systemFontInfo;const o=e.match(/^InvalidPDFjsFont_(.*)_\d+$/);if(this.isInvalidPDFjsFont=!!o,this.isInvalidPDFjsFont?this.fallbackName=o[1]:this.isMonospace?this.fallbackName="monospace":this.isSerifFont?this.fallbackName="serif":this.fallbackName="sans-serif",this.systemFontInfo?.guessFallback&&(this.systemFontInfo.guessFallback=!1,this.systemFontInfo.css+=`,${this.fallbackName}`),this.differences=s.differences,this.widths=s.widths,this.defaultWidth=s.defaultWidth,this.composite=s.composite,this.cMap=s.cMap,this.capHeight=s.capHeight/Ac,this.ascent=s.ascent/Ac,this.descent=s.descent/Ac,this.lineHeight=this.ascent-this.descent,this.fontMatrix=s.fontMatrix,this.bbox=s.bbox,this.defaultEncoding=s.defaultEncoding,this.toUnicode=s.toUnicode,this.toFontChar=[],"Type3"===s.type){for(let e=0;e<256;e++)this.toFontChar[e]=this.differences[e]||s.defaultEncoding[e];return}if(this.cidEncoding=s.cidEncoding||"",this.vertical=!!s.vertical,this.vertical&&(this.vmetrics=s.vmetrics,this.defaultVMetrics=s.defaultVMetrics),!t||t.isEmpty)return t&&Zt('Font file is empty in "'+e+'" ('+this.loadedName+")"),void this.fallbackToSystemFont(s);let c;[n,r]=Pc(t,s),n===this.type&&r===this.subtype||Jt(`Inconsistent font file Type/SubType, expected: ${this.type}/${this.subtype} but found: ${n}/${r}.`);try{switch(n){case"MMType1":Jt("MMType1 font ("+e+"), falling back to Type1.");case"Type1":case"CIDFontType0":this.mimetype="font/opentype";const a="Type1C"===r||"CIDFontType0C"===r?new Do(t,s):new kc(e,t,s);Ic(s),c=this.convert(e,a,s);break;case"OpenType":case"TrueType":case"CIDFontType2":this.mimetype="font/opentype",c=this.checkAndRepair(e,t,s),Ic(s),this.isOpenType&&(n="OpenType");break;default:throw new cs(`Font ${n} is not supported`)}}catch(e){return Zt(e),void this.fallbackToSystemFont(s)}Bc(s),this.data=c,this.type=n,this.subtype=r,this.fontMatrix=s.fontMatrix,this.widths=s.widths,this.defaultWidth=s.defaultWidth,this.toUnicode=s.toUnicode,this.seacMap=s.seacMap}get renderer(){return ss(this,"renderer",Go.create(this,jr))}exportData(){const e=Object.create(null);for(const s of Cc){const t=this[s];void 0!==t&&(e[s]=t)}if(!this.fontExtraProperties)return{data:e};const t=Object.create(null);for(const s of Sc){const e=this[s];void 0!==e&&(t[s]=e)}return{data:e,extra:t}}fallbackToSystemFont(e){this.missingFile=!0;const{name:t,type:s}=this;let a=Kr(t);const i=ko(),n=Ao(),r=!!i[a],o=!(!n[a]||!i[n[a]]);a=i[a]||n[a]||a;const c=Vo()[a];c&&(isNaN(this.ascent)&&(this.ascent=c.ascent/Ac),isNaN(this.descent)&&(this.descent=c.descent/Ac),isNaN(this.capHeight)&&(this.capHeight=c.capHeight/Ac)),this.bold=/bold/gi.test(a),this.italic=/oblique|italic/gi.test(a),this.black=/Black/g.test(t);const l=/Narrow/g.test(t);if(this.remeasure=(!r||l)&&Object.keys(this.widths).length>0,(r||o)&&"CIDFontType2"===s&&this.cidEncoding.startsWith("Identity-")){const s=e.cidToGidMap,a=[];if(Ec(a,Io()),/Arial-?Black/i.test(t)?Ec(a,Bo()):/Calibri/i.test(t)&&Ec(a,Fo()),s){for(const e in a){const t=a[e];void 0!==s[t]&&(a[+e]=s[t])}s.length!==this.toUnicode.length&&e.hasIncludedToUnicodeMap&&this.toUnicode instanceof No&&this.toUnicode.forEach(function(e,t){const i=a[e];void 0===s[i]&&(a[+e]=t)})}this.toUnicode instanceof No||this.toUnicode.forEach(function(e,t){a[+e]=t}),this.toFontChar=a,this.toUnicode=new Ro(a)}else if(/Symbol/i.test(a))this.toFontChar=Lc(Tr,Dr(),this.differences);else if(/Dingbats/i.test(a))this.toFontChar=Lc(Rr,Or(),this.differences);else if(r||o){const e=Lc(this.defaultEncoding,Dr(),this.differences);"CIDFontType2"!==s||this.cidEncoding.startsWith("Identity-")||this.toUnicode instanceof No||this.toUnicode.forEach(function(t,s){e[+t]=s}),this.toFontChar=e}else{const e=Dr(),s=[];this.toUnicode.forEach((t,a)=>{if(!this.composite){const s=Er(this.differences[t]||this.defaultEncoding[t],e);-1!==s&&(a=s)}s[+t]=a}),this.composite&&this.toUnicode instanceof No&&/Tahoma|Verdana/i.test(t)&&Ec(s,Io()),this.toFontChar=s}Bc(e),this.loadedName=a.split("-",1)[0]}checkAndRepair(e,t,s){const a=["OS/2","cmap","head","hhea","hmtx","maxp","name","post","loca","glyf","fpgm","prep","cvt ","CFF "];function i(e,t){const s=Object.create(null);s["OS/2"]=null,s.cmap=null,s.head=null,s.hhea=null,s.hmtx=null,s.maxp=null,s.name=null,s.post=null;for(let i=0;i<t;i++){const t=n(e);a.includes(t.tag)&&0!==t.length&&(s[t.tag]=t)}return s}function n(e){const t=e.getString(4),s=e.getInt32()>>>0,a=e.getInt32()>>>0,i=e.getInt32()>>>0,n=e.pos;e.pos=e.start||0,e.skip(a);const r=e.getBytes(i);return e.pos=n,"head"===t&&(r[8]=r[9]=r[10]=r[11]=0,r[17]|=32),{tag:t,checksum:s,length:i,offset:a,data:r}}function r(e){return{version:e.getString(4),numTables:e.getUint16(),searchRange:e.getUint16(),entrySelector:e.getUint16(),rangeShift:e.getUint16()}}function o(e,t,s,a,i,n){const r={length:0,sizeOfInstructions:0};if(t<0||t>=e.length||s>e.length||s-t<=12)return r;const o=e.subarray(t,s),c=Rc(o[2],o[3]),l=Rc(o[4],o[5]),h=Rc(o[6],o[7]),u=Rc(o[8],o[9]);c>h&&(Tc(o,2,h),Tc(o,6,c)),l>u&&(Tc(o,4,u),Tc(o,8,l));const d=Rc(o[0],o[1]);if(d<0)return d<-1||(a.set(o,i),r.length=o.length),r;let f,g=10,p=0;for(f=0;f<d;f++)p=1+(o[g]<<8|o[g+1]),g+=2;const m=g,b=o[g]<<8|o[g+1];r.sizeOfInstructions=b,g+=2+b;const w=g;let y=0;for(f=0;f<p;f++){const e=o[g++];192&e&&(o[g-1]=63&e);let t=2;2&e?t=1:16&e&&(t=0);let s=2;4&e?s=1:32&e&&(s=0);const a=t+s;if(y+=a,8&e){const e=o[g++];0===e&&(o[g-1]^=8),f+=e,y+=e*a}}if(0===y)return r;let x=g+y;return x>o.length?r:!n&&b>0?(a.set(o.subarray(0,m),i),a.set([0,0],i+m),a.set(o.subarray(w,x),i+m+2),x-=b,o.length-x>3&&(x=x+3&-4),r.length=x,r):o.length-x>3?(x=x+3&-4,a.set(o.subarray(0,x),i),r.length=x,r):(a.set(o,i),r.length=o.length,r)}function c(e){const s=(t.start||0)+e.offset;t.pos=s;const a=[[],[]],i=[],n=e.length,r=s+n;if(0!==t.getUint16()||n<6)return[a,i];const o=t.getUint16(),c=t.getUint16();let l,h;for(l=0;l<o&&t.pos+12<=r;l++){const e={platform:t.getUint16(),encoding:t.getUint16(),language:t.getUint16(),name:t.getUint16(),length:t.getUint16(),offset:t.getUint16()};(_c(e)||Uc(e))&&i.push(e)}for(l=0,h=i.length;l<h;l++){const e=i[l];if(e.length<=0)continue;const n=s+c+e.offset;if(n+e.length>r)continue;t.pos=n;const o=e.name;if(e.encoding){let s="";for(let a=0,i=e.length;a<i;a+=2)s+=String.fromCharCode(t.getUint16());a[1][o]=s}else a[0][o]=t.getString(e.length)}return[a,i]}const l=[0,0,0,0,0,0,0,0,-2,-2,-2,-2,0,0,-2,-5,-1,-1,-1,-1,-1,-1,-1,-1,0,0,-1,0,-1,-1,-1,-1,1,-1,-999,0,1,0,-1,-2,0,-1,-2,-1,-1,0,-1,-1,0,0,-999,-999,-1,-1,-1,-1,-2,-999,-2,-2,-999,0,-2,-2,0,0,-2,0,-2,0,0,0,-2,-1,-1,1,1,0,0,-1,-1,-1,-1,-1,-1,-1,0,0,-1,0,-1,-1,0,-999,-1,-1,-1,-1,-1,-1,0,0,0,0,0,0,0,0,0,0,0,0,-2,-999,-999,-999,-999,-999,-1,-1,-2,-2,0,0,0,0,-1,-1,-999,-2,-2,0,0,-1,-2,-2,0,0,0,-1,-1,-1,-2];function h(e,t){let s,a,i,n,r,o=e.data,c=0,h=0,u=0;const d=[],f=[],g=[];let p=t.tooComplexToFollowFunctions,m=!1,b=0,w=0;for(let x=o.length;c<x;){const e=o[c++];if(64===e)if(a=o[c++],m||w)c+=a;else for(s=0;s<a;s++)d.push(o[c++]);else if(65===e)if(a=o[c++],m||w)c+=2*a;else for(s=0;s<a;s++)i=o[c++],d.push(i<<8|o[c++]);else if(176==(248&e))if(a=e-176+1,m||w)c+=a;else for(s=0;s<a;s++)d.push(o[c++]);else if(184==(248&e))if(a=e-184+1,m||w)c+=2*a;else for(s=0;s<a;s++)i=o[c++],d.push(Rc(i,o[c++]));else if(43!==e||p)if(44!==e||p){if(45===e)if(m)m=!1,h=c;else{if(r=f.pop(),!r)return Zt("TT: ENDF bad stack"),void(t.hintsValid=!1);n=g.pop(),o=r.data,c=r.i,t.functionsStackDeltas[n]=d.length-r.stackTop}else if(137===e)(m||w)&&(Zt("TT: nested IDEFs not allowed"),p=!0),m=!0,u=c;else if(88===e)++b;else if(27===e)w=b;else if(89===e)w===b&&(w=0),--b;else if(28===e&&!m&&!w){const e=d.at(-1);e>0&&(c+=e-1)}}else(m||w)&&(Zt("TT: nested FDEFs not allowed"),p=!0),m=!0,u=c,n=d.pop(),t.functionsDefined[n]={data:o,i:c};else if(!m&&!w)if(n=d.at(-1),isNaN(n))Jt("TT: CALL empty stack (or invalid entry).");else if(t.functionsUsed[n]=!0,n in t.functionsStackDeltas){const e=d.length+t.functionsStackDeltas[n];if(e<0)return Zt("TT: CALL invalid functions stack delta."),void(t.hintsValid=!1);d.length=e}else if(n in t.functionsDefined&&!g.includes(n)){if(f.push({data:o,i:c,stackTop:d.length-1}),g.push(n),r=t.functionsDefined[n],!r)return Zt("TT: CALL non-existent function"),void(t.hintsValid=!1);o=r.data,c=r.i}if(!m&&!w){let t=0;for(e<=142?t=l[e]:e>=192&&e<=223?t=-1:e>=224&&(t=-2),e>=113&&e<=117&&(a=d.pop(),isNaN(a)||(t=2*-a));t<0&&d.length>0;)d.pop(),t++;for(;t>0;)d.push(NaN),t--}}t.tooComplexToFollowFunctions=p;const y=[o];c>o.length&&y.push(new Uint8Array(c-o.length)),u>h&&(Zt("TT: complementing a missing function tail"),y.push(new Uint8Array([34,45]))),function(e,t){if(t.length>1){let s,a,i=0;for(s=0,a=t.length;s<a;s++)i+=t[s].length;i=i+3&-4;const n=new Uint8Array(i);let r=0;for(s=0,a=t.length;s<a;s++)n.set(t[s],r),r+=t[s].length;e.data=n,e.length=i}}(e,y)}let u,d;if(Oc(t=new ni(new Uint8Array(t.getBytes())))){const e=function(e,t){const{numFonts:s,offsetTable:a}=function(e){const t=e.getString(4);es("ttcf"===t,"Must be a TrueType Collection font.");const s=e.getUint16(),a=e.getUint16(),i=e.getInt32()>>>0,n=[];for(let o=0;o<i;o++)n.push(e.getInt32()>>>0);const r={ttcTag:t,majorVersion:s,minorVersion:a,numFonts:i,offsetTable:n};switch(s){case 1:return r;case 2:return r.dsigTag=e.getInt32()>>>0,r.dsigLength=e.getInt32()>>>0,r.dsigOffset=e.getInt32()>>>0,r}throw new cs(`Invalid TrueType Collection majorVersion: ${s}.`)}(e),n=t.split("+");let o;for(let l=0;l<s;l++){e.pos=(e.start||0)+a[l];const s=r(e),h=i(e,s.numTables);if(!h.name)throw new cs('TrueType Collection font must contain a "name" table.');const[u]=c(h.name);for(let e=0,a=u.length;e<a;e++)for(let i=0,r=u[e].length;i<r;i++){const a=u[e][i]?.replaceAll(/\s/g,"");if(a){if(a===t)return{header:s,tables:h};if(!(n.length<2))for(const e of n)a===e&&(o={name:e,header:s,tables:h})}}}if(o)return Zt(`TrueType Collection does not contain "${t}" font, falling back to "${o.name}" font instead.`),{header:o.header,tables:o.tables};throw new cs(`TrueType Collection does not contain "${t}" font.`)}(t,this.name);u=e.header,d=e.tables}else u=r(t),d=i(t,u.numTables);const f=!d["CFF "];if(f){if(!d.loca)throw new cs('Required "loca" table is not found');d.glyf||(Zt('Required "glyf" table is not found -- trying to recover.'),d.glyf={tag:"glyf",data:new Uint8Array(0)}),this.isOpenType=!1}else{if("OTTO"===u.version&&!s.composite||!d.head||!d.hhea||!d.maxp||!d.post)return this.convert(e,new Do(new ni(d["CFF "].data),s),s);delete d.glyf,delete d.loca,delete d.fpgm,delete d.prep,delete d["cvt "],this.isOpenType=!0}if(!d.maxp)throw new cs('Required "maxp" table is not found');let g;if(!f)try{const e=new io(new ni(d["CFF "].data),s,jr).parse();e.duplicateFirstGlyph();const t=new xo(e);d["CFF "].data=t.compile(),g=e.charStringCount}catch{Zt("Failed to compile font "+s.loadedName)}t.pos=(t.start||0)+d.maxp.offset;let p=t.getInt32();const m=g??t.getUint16();if(20480===p&&6!==d.maxp.length&&(d.maxp.data=d.maxp.data.subarray(0,6),d.maxp.length=6),65536!==p&&20480!==p){if(6===d.maxp.length)p=20480;else{if(!(d.maxp.length>=32))throw new cs('"maxp" table has a wrong version number');p=65536}!function(e,t,s){e[t+3]=255&s,e[t+2]=s>>>8,e[t+1]=s>>>16,e[t]=s>>>24}(d.maxp.data,0,p)}let b=Mc(d.head.data[50],d.head.data[51]);if(d.loca){const e=b?4*(m+1):2*(m+1);if(d.loca.length!==e){Zt("Incorrect 'loca' table length -- attempting to fix it.");const s=Object.values(d).filter(Boolean).sort((e,t)=>e.offset-t.offset),a=s.indexOf(d.loca),i=s[a+1]||null;if(i&&d.loca.offset+e<i.offset){const s=t.pos;t.pos=t.start||0,t.skip(d.loca.offset),d.loca.data=t.getBytes(e),d.loca.length=e,t.pos=s}}}if(s.scaleFactors?.length===m&&f){const{scaleFactors:e}=s,t=new Xo({glyfTable:d.glyf.data,isGlyphLocationsLong:b,locaTable:d.loca.data,numGlyphs:m});t.scale(e);const{glyf:a,loca:i,isLocationLong:n}=t.write();d.glyf.data=a,d.loca.data=i,n!==!!b&&(d.head.data[50]=0,b=d.head.data[51]=n?1:0);const r=d.hmtx.data;for(let s=0;s<m;s++){const t=4*s,a=Math.round(e[s]*Mc(r[t],r[t+1]));r[t]=a>>8&255,r[t+1]=255&a,Tc(r,t+2,Math.round(e[s]*Rc(r[t+2],r[t+3])))}}let w=m+1,y=!0;w>65535&&(y=!1,w=m,Zt("Not enough space in glyfs to duplicate first glyph."));let x=0,k=0;p>=65536&&d.maxp.length>=32&&(t.pos+=8,t.getUint16()>2&&(d.maxp.data[14]=0,d.maxp.data[15]=2),t.pos+=4,x=t.getUint16(),t.pos+=4,k=t.getUint16()),d.maxp.data[4]=w>>8,d.maxp.data[5]=255&w;const v=function(e,t,s,a){const i={functionsDefined:[],functionsUsed:[],functionsStackDeltas:[],tooComplexToFollowFunctions:!1,hintsValid:!0};if(e&&h(e,i),t&&h(t,i),e&&function(e,t){if(!e.tooComplexToFollowFunctions)if(e.functionsDefined.length>t)Zt("TT: more functions defined than expected"),e.hintsValid=!1;else for(let s=0,a=e.functionsUsed.length;s<a;s++){if(s>t)return Zt("TT: invalid function id: "+s),void(e.hintsValid=!1);if(e.functionsUsed[s]&&!e.functionsDefined[s])return Zt("TT: undefined function: "+s),void(e.hintsValid=!1)}}(i,a),s&&1&s.length){const e=new Uint8Array(s.length+1);e.set(s.data),s.data=e}return i.hintsValid}(d.fpgm,d.prep,d["cvt "],x);if(v||(delete d.fpgm,delete d.prep,delete d["cvt "]),function(e,t,s,a,i,n){if(!t)return void(s&&(s.data=null));e.pos=(e.start||0)+t.offset,e.pos+=4,e.pos+=2,e.pos+=2,e.pos+=2,e.pos+=2,e.pos+=2,e.pos+=2,e.pos+=2,e.pos+=2,e.pos+=2;const r=e.getUint16();e.pos+=8,e.pos+=2;let o=e.getUint16();0!==r&&(2&Mc(a.data[44],a.data[45])||(t.data[22]=0,t.data[23]=0)),o>i&&(Jt(`The numOfMetrics (${o}) should not be greater than the numGlyphs (${i}).`),o=i,t.data[34]=(65280&o)>>8,t.data[35]=255&o);const c=i-o-(s.length-4*o>>1);if(c>0){const e=new Uint8Array(s.length+2*c);e.set(s.data),n&&(e[s.length]=s.data[2],e[s.length+1]=s.data[3]),s.data=e}}(t,d.hhea,d.hmtx,d.head,w,y),!d.head)throw new cs('Required "head" table is not found');!function(e,t,s){const a=e.data,i=function(e,t,s,a){return(e<<24)+(t<<16)+(s<<8)+a}(a[0],a[1],a[2],a[3]);i>>16!=1&&(Jt("Attempting to fix invalid version in head table: "+i),a[0]=0,a[1]=1,a[2]=0,a[3]=0);const n=Mc(a[50],a[51]);if(n<0||n>1){Jt("Attempting to fix invalid indexToLocFormat in head table: "+n);const e=t+1;if(s===e<<1)a[50]=0,a[51]=0;else{if(s!==e<<2)throw new cs("Could not fix indexToLocFormat: "+n);a[50]=0,a[51]=1}}}(d.head,m,f?d.loca.length:0);let A=Object.create(null);if(f){const e=function(e,t,s,a,i,n,r){let c,l,h;a?(c=4,l=function(e,t){return e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3]},h=function(e,t,s){e[t]=s>>>24&255,e[t+1]=s>>16&255,e[t+2]=s>>8&255,e[t+3]=255&s}):(c=2,l=function(e,t){return e[t]<<9|e[t+1]<<1},h=function(e,t,s){e[t]=s>>9&255,e[t+1]=s>>1&255});const u=n?s+1:s,d=c*(1+u),f=new Uint8Array(d);f.set(e.data.subarray(0,d)),e.data=f;const g=t.data,p=g.length,m=new Uint8Array(p);let b,w;const y=[];for(b=0,w=0;b<s+1;b++,w+=c){let e=l(f,w);e>p&&(e=p),y.push({index:b,offset:e,endOffset:0})}for(y.sort((e,t)=>e.offset-t.offset),b=0;b<s;b++)y[b].endOffset=y[b+1].offset;for(y.sort((e,t)=>e.index-t.index),b=0;b<s;b++){const{offset:e,endOffset:t}=y[b];if(0!==e||0!==t)break;const s=y[b+1].offset;if(0!==s){y[b].endOffset=s;break}}const x=y.at(-2);0!==x.offset&&0===x.endOffset&&(x.endOffset=p);const k=Object.create(null);let v=0;for(h(f,0,v),b=0,w=c;b<s;b++,w+=c){const e=o(g,y[b].offset,y[b].endOffset,m,v,i),t=e.length;0===t&&(k[b]=!0),e.sizeOfInstructions>r&&(r=e.sizeOfInstructions),v+=t,h(f,w,v)}if(0===v){const e=new Uint8Array([0,1,0,0,0,0,0,0,0,0,0,0,0,0,49,0]);for(b=0,w=c;b<u;b++,w+=c)h(f,w,e.length);t.data=e}else if(n){const s=l(f,c);m.length>s+v?t.data=m.subarray(0,s+v):(t.data=new Uint8Array(s+v),t.data.set(m.subarray(0,v))),t.data.set(m.subarray(0,s),v),h(e.data,f.length-c,v+s)}else t.data=m.subarray(0,v);return{missingGlyphs:k,maxSizeOfInstructions:r}}(d.loca,d.glyf,m,b,v,y,k);A=e.missingGlyphs,p>=65536&&d.maxp.length>=32&&(d.maxp.data[26]=e.maxSizeOfInstructions>>8,d.maxp.data[27]=255&e.maxSizeOfInstructions)}if(!d.hhea)throw new cs('Required "hhea" table is not found');0===d.hhea.data[10]&&0===d.hhea.data[11]&&(d.hhea.data[10]=255,d.hhea.data[11]=255);const C={unitsPerEm:Mc(d.head.data[18],d.head.data[19]),yMax:Rc(d.head.data[42],d.head.data[43]),yMin:Rc(d.head.data[38],d.head.data[39]),ascent:Rc(d.hhea.data[4],d.hhea.data[5]),descent:Rc(d.hhea.data[6],d.hhea.data[7]),lineGap:Rc(d.hhea.data[8],d.hhea.data[9])};this.ascent=C.ascent/C.unitsPerEm,this.descent=C.descent/C.unitsPerEm,this.lineGap=C.lineGap/C.unitsPerEm,this.cssFontInfo?.lineHeight?(this.lineHeight=this.cssFontInfo.metrics.lineHeight,this.lineGap=this.cssFontInfo.metrics.lineGap):this.lineHeight=this.ascent-this.descent+this.lineGap,d.post&&function(e,s,a){const i=(t.start||0)+e.offset;t.pos=i;const n=i+e.length,r=t.getInt32();t.skip(28);let o,c,l=!0;switch(r){case 65536:o=Wr;break;case 131072:const e=t.getUint16();if(e!==a){l=!1;break}const i=[];for(c=0;c<e;++c){const e=t.getUint16();if(e>=32768){l=!1;break}i.push(e)}if(!l)break;const h=[],u=[];for(;t.pos<n;){const e=t.getByte();for(u.length=e,c=0;c<e;++c)u[c]=String.fromCharCode(t.getByte());h.push(u.join(""))}for(o=[],c=0;c<e;++c){const e=i[c];e<258?o.push(Wr[e]):o.push(h[e-258])}break;case 196608:break;default:Zt("Unknown/unsupported post table version "+r),l=!1,s.defaultEncoding&&(o=s.defaultEncoding)}s.glyphNames=o}(d.post,s,m),d.post={tag:"post",data:zc(s)};const S=Object.create(null);function I(e){return!A[e]}if(s.composite){const e=s.cidToGidMap||[],t=0===e.length;s.cMap.forEach(function(s,a){if("string"==typeof a&&(a=qc(s,a,!0)),a>65535)throw new cs("Max size of CID is 65,535");let i=-1;t?i=a:void 0!==e[a]&&(i=e[a]),i>=0&&i<m&&I(i)&&(S[s]=i)})}else{const e=function(e,t,s,a){if(!e)return Zt("No cmap table available."),{platformId:-1,encodingId:-1,mappings:[],hasShortCmap:!1};let i,n=(t.start||0)+e.offset;t.pos=n,t.skip(2);const r=t.getUint16();let o,c=!1;for(let m=0;m<r;m++){const e=t.getUint16(),i=t.getUint16(),n=t.getInt32()>>>0;let l=!1;if(o?.platformId!==e||o?.encodingId!==i){if(0!==e||0!==i&&1!==i&&3!==i)if(1===e&&0===i)l=!0;else if(3!==e||1!==i||!a&&o){if(s&&3===e&&0===i){l=!0;let s=!0;if(m<r-1){const a=t.peekBytes(2);Mc(a[0],a[1])<e&&(s=!1)}s&&(c=!0)}}else l=!0,s||(c=!0);else l=!0;if(l&&(o={platformId:e,encodingId:i,offset:n}),c)break}}if(o&&(t.pos=n+o.offset),!o||-1===t.peekByte())return Zt("Could not find a preferred cmap table."),{platformId:-1,encodingId:-1,mappings:[],hasShortCmap:!1};const l=t.getUint16();let h=!1;const u=[];let d,f;if(0===l){for(t.skip(4),d=0;d<256;d++){const e=t.getByte();e&&u.push({charCode:d,glyphId:e})}h=!0}else if(2===l){t.skip(4);const e=[];let s=0;for(let i=0;i<256;i++){const a=t.getUint16()>>3;e.push(a),s=Math.max(a,s)}const a=[];for(let i=0;i<=s;i++)a.push({firstCode:t.getUint16(),entryCount:t.getUint16(),idDelta:Rc(t.getByte(),t.getByte()),idRangePos:t.pos+t.getUint16()});for(let i=0;i<256;i++)if(0===e[i])t.pos=a[0].idRangePos+2*i,f=t.getUint16(),u.push({charCode:i,glyphId:f});else{const s=a[e[i]];for(d=0;d<s.entryCount;d++){const e=(i<<8)+d+s.firstCode;t.pos=s.idRangePos+2*d,f=t.getUint16(),0!==f&&(f=(f+s.idDelta)%65536),u.push({charCode:e,glyphId:f})}}}else if(4===l){t.skip(4);const e=t.getUint16()>>1;t.skip(6);const s=[];let a;for(a=0;a<e;a++)s.push({end:t.getUint16()});for(t.skip(2),a=0;a<e;a++)s[a].start=t.getUint16();for(a=0;a<e;a++)s[a].delta=t.getUint16();let r,o=0;for(a=0;a<e;a++){i=s[a];const n=t.getUint16();n?(r=(n>>1)-(e-a),i.offsetIndex=r,o=Math.max(o,r+i.end-i.start+1)):i.offsetIndex=-1}const c=[];for(d=0;d<o;d++)c.push(t.getUint16());for(a=0;a<e;a++){i=s[a],n=i.start;const e=i.end,t=i.delta;for(r=i.offsetIndex,d=n;d<=e;d++)65535!==d&&(f=r<0?d:c[r+d-n],f=f+t&65535,u.push({charCode:d,glyphId:f}))}}else if(6===l){t.skip(4);const e=t.getUint16(),s=t.getUint16();for(d=0;d<s;d++){f=t.getUint16();const s=e+d;u.push({charCode:s,glyphId:f})}}else{if(12!==l)return Zt("cmap table has unsupported format: "+l),{platformId:-1,encodingId:-1,mappings:[],hasShortCmap:!1};{t.skip(10);const e=t.getInt32()>>>0;for(d=0;d<e;d++){const e=t.getInt32()>>>0,s=t.getInt32()>>>0;let a=t.getInt32()>>>0;for(let t=e;t<=s;t++)u.push({charCode:t,glyphId:a++})}}}u.sort((e,t)=>e.charCode-t.charCode);const g=[],p=new Set;for(const m of u){const{charCode:e}=m;p.has(e)||(p.add(e),g.push(m))}return{platformId:o.platformId,encodingId:o.encodingId,mappings:g,hasShortCmap:h}}(d.cmap,t,this.isSymbolicFont,s.hasEncoding),a=e.platformId,i=e.encodingId,n=e.mappings;let r=[],o=!1;if(!s.hasEncoding||"MacRomanEncoding"!==s.baseEncodingName&&"WinAnsiEncoding"!==s.baseEncodingName||(r=Nr(s.baseEncodingName)),s.hasEncoding&&!this.isSymbolicFont&&(3===a&&1===i||1===a&&0===i)){const e=Dr();for(let t=0;t<256;t++){let o;if(o=void 0!==this.differences[t]?this.differences[t]:r.length&&""!==r[t]?r[t]:Fr[t],!o)continue;const c=Vr(o,e);let l;if(3===a&&1===i?l=e[c]:1===a&&0===i&&(l=Br.indexOf(c)),void 0===l){if(!s.glyphNames&&s.hasIncludedToUnicodeMap&&!(this.toUnicode instanceof No)){const e=this.toUnicode.get(t);e&&(l=e.codePointAt(0))}if(void 0===l)continue}for(const e of n)if(e.charCode===l){S[t]=e.glyphId;break}}}else if(0===a){for(const e of n)S[e.charCode]=e.glyphId;o=!0}else if(3===a&&0===i)for(const t of n){let e=t.charCode;e>=61440&&e<=61695&&(e&=255),S[e]=t.glyphId}else for(const t of n)S[t.charCode]=t.glyphId;if(s.glyphNames&&(r.length||this.differences.length))for(let t=0;t<256;++t){if(!o&&void 0!==S[t])continue;const e=this.differences[t]||r[t];if(!e)continue;const a=s.glyphNames.indexOf(e);a>0&&I(a)&&(S[t]=a)}}0===S.length&&(S[0]=0);let B=w-1;if(y||(B=0),!s.cssFontInfo){const e=jc(S,I,B,this.toUnicode);this.toFontChar=e.toFontChar,d.cmap={tag:"cmap",data:Hc(e.charCodeToGlyphId,e.toUnicodeExtraMap,w)},d["OS/2"]&&function(e,t){t.pos=(t.start||0)+e.offset;const s=t.getUint16();t.skip(60);const a=t.getUint16();return!(s<4&&768&a)&&(!(t.getUint16()>t.getUint16())&&(t.skip(6),0!==t.getUint16()&&(e.data[8]=e.data[9]=0,!0)))}(d["OS/2"],t)||(d["OS/2"]={tag:"OS/2",data:$c(s,e.charCodeToGlyphId,C)})}if(d.name){const[t,a]=c(d.name);d.name.data=Wc(e,t),this.psName=t[0][6]||null,s.composite||function(e,t,s){if(e.isInternalFont)return;if(e.hasIncludedToUnicodeMap)return;if(e.hasEncoding)return;if(e.toUnicode instanceof No)return;if(!t)return;if(0===s.length)return;if(e.defaultEncoding===Mr)return;for(const r of s)if(!Uc(r))return;const a=Mr,i=[],n=Dr();for(const r in a){const e=a[r];if(""===e)continue;const t=n[e];void 0!==t&&(i[r]=String.fromCharCode(t))}i.length>0&&e.toUnicode.amend(i)}(s,this.isSymbolicFont,a)}else d.name={tag:"name",data:Wc(this.name)};const F=new ac(u.version);for(const M in d)F.addTable(M,d[M].data);return F.toArray()}convert(e,s,a){a.fixedPitch=!1,a.builtInEncoding&&function(e,t){if(e.isInternalFont)return;if(e.hasIncludedToUnicodeMap)return;if(t===e.defaultEncoding)return;if(e.toUnicode instanceof No)return;const s=[],a=Dr();for(const i in t){if(e.hasEncoding&&(e.baseEncodingName||void 0!==e.differences[i]))continue;const n=Er(t[i],a);-1!==n&&(s[i]=String.fromCharCode(n))}s.length>0&&e.toUnicode.amend(s)}(a,a.builtInEncoding);let i=1;s instanceof Do&&(i=s.numGlyphs-1);const n=s.getGlyphMapping(a);let r=null,o=n,c=null;a.cssFontInfo||(r=jc(n,s.hasGlyphId.bind(s),i,this.toUnicode),this.toFontChar=r.toFontChar,o=r.charCodeToGlyphId,c=r.toUnicodeExtraMap);const l=s.numGlyphs;function h(e,t){let s=null;for(const a in e)t===e[a]&&(s||=[]).push(0|a);return s}function u(e,t){for(const s in e)if(t===e[s])return 0|s;return r.charCodeToGlyphId[r.nextAvailableFontCharCode]=t,r.nextAvailableFontCharCode++}const d=s.seacs;if(r&&d?.length){const e=a.fontMatrix||t,i=s.getCharset(),o=Object.create(null);for(let t in d){t|=0;const s=d[t],a=Fr[s[2]],c=Fr[s[3]],l=i.indexOf(a),f=i.indexOf(c);if(l<0||f<0)continue;const g={x:s[0]*e[0]+s[1]*e[2]+e[4],y:s[0]*e[1]+s[1]*e[3]+e[5]},p=h(n,t);if(p)for(const e of p){const t=r.charCodeToGlyphId,s=u(t,l),a=u(t,f);o[e]={baseFontCharCode:s,accentFontCharCode:a,accentOffset:g}}}a.seacMap=o}const f=a.fontMatrix?1/Math.max(...a.fontMatrix.slice(0,4).map(Math.abs)):1e3,g=new ac("OTTO");return g.addTable("CFF ",s.data),g.addTable("OS/2",$c(a,o)),g.addTable("cmap",Hc(o,c,l)),g.addTable("head","\0\0\0\0\0\0\0\0\0\0_<õ\0\0"+Dc(f)+"\0\0\0\0ž\v~'\0\0\0\0ž\v~'\0\0"+Dc(a.descent)+"ÿ"+Dc(a.ascent)+Nc(a.italicAngle?2:0)+"\0\0\0\0\0\0\0"),g.addTable("hhea","\0\0\0"+Dc(a.ascent)+Dc(a.descent)+"\0\0ÿÿ\0\0\0\0\0\0"+Dc(a.capHeight)+Dc(Math.tan(a.italicAngle)*a.xHeight)+"\0\0\0\0\0\0\0\0\0\0\0\0"+Nc(l)),g.addTable("hmtx",function(){const e=s.charstrings,t=s.cff?s.cff.widths:null;let a="\0\0\0\0";for(let s=1,i=l;s<i;s++){let i=0;if(e){const t=e[s-1];i="width"in t?t.width:0}else t&&(i=Math.ceil(t[s]||0));a+=Nc(i)+Nc(0)}return a}()),g.addTable("maxp","\0\0P\0"+Nc(l)),g.addTable("name",Wc(e)),g.addTable("post",zc(a)),g.toArray()}get _spaceWidth(){const e=["space","minus","one","i","I"];let t;for(const s of e){if(s in this.widths){t=this.widths[s];break}const e=Dr()[s];let a=0;if(this.composite&&this.cMap.contains(e)&&(a=this.cMap.lookup(e),"string"==typeof a&&(a=qc(e,a))),!a&&this.toUnicode&&(a=this.toUnicode.charCodeOf(e)),a<=0&&(a=e),t=this.widths[a],t)break}return ss(this,"_spaceWidth",t||this.defaultWidth)}_charToGlyph(e,t=!1){let s,a,i,n=this._glyphCache[e];if(n?.isSpace===t)return n;let r=e;this.cMap?.contains(e)&&(r=this.cMap.lookup(e),"string"==typeof r&&(r=qc(e,r))),a=this.widths[r],"number"!=typeof a&&(a=this.defaultWidth);const o=this.vmetrics?.[r];let c=this.toUnicode.get(e)||e;"number"==typeof c&&(c=String.fromCharCode(c));let l=void 0!==this.toFontChar[e];if(s=this.toFontChar[e]||e,this.missingFile){const t=this.differences[e]||this.defaultEncoding[e];".notdef"!==t&&""!==t||"Type1"!==this.type||(s=32,""===t&&(a||=this._spaceWidth,c=String.fromCharCode(s))),s=function(e){return e>=65520&&e<=65535?0:e>=62976&&e<=63743?Pr()[e]||e:173===e?45:e}(s)}this.isType3Font&&(i=s);let h=null;if(this.seacMap?.[e]){l=!0;const t=this.seacMap[e];s=t.baseFontCharCode,h={fontChar:String.fromCodePoint(t.accentFontCharCode),offset:t.accentOffset}}let u="";if("number"==typeof s&&(s<=1114111?u=String.fromCodePoint(s):Zt(`charToGlyph - invalid fontCharCode: ${s}`)),this.missingFile&&this.vertical&&1===u.length){const e=Yr()[u.charCodeAt(0)];e&&(u=c=String.fromCharCode(e))}return n=new Fc(e,u,c,h,a,o,i,t,l),this._glyphCache[e]=n}charsToGlyphs(e){let t=this._charsCache[e];if(t)return t;if(t=[],this.cMap){const s=Object.create(null),a=e.length;let i=0;for(;i<a;){this.cMap.readCharCode(e,i,s);const{charcode:a,length:n}=s;i+=n;const r=this._charToGlyph(a,1===n&&32===e.charCodeAt(i-1));t.push(r)}}else for(let s=0,a=e.length;s<a;++s){const a=e.charCodeAt(s),i=this._charToGlyph(a,32===a);t.push(i)}return this._charsCache[e]=t}getCharPositions(e){const t=[];if(this.cMap){const s=Object.create(null);let a=0;for(;a<e.length;){this.cMap.readCharCode(e,a,s);const i=s.length;t.push([a,a+i]),a+=i}}else for(let s=0,a=e.length;s<a;++s)t.push([s,s+1]);return t}get glyphCacheValues(){return Object.values(this._glyphCache)}encodeString(e){const t=[],s=[],a=()=>t.length%2==1,i=this.toUnicode instanceof No?e=>this.toUnicode.charCodeOf(e):e=>this.toUnicode.charCodeOf(String.fromCodePoint(e));for(let n=0,r=e.length;n<r;n++){const r=e.codePointAt(n);if(r>55295&&(r<57344||r>65533)&&n++,this.toUnicode){const e=i(r);if(-1!==e){a()&&(t.push(s.join("")),s.length=0);for(let t=(this.cMap?this.cMap.getCharCodeLength(e):1)-1;t>=0;t--)s.push(String.fromCharCode(e>>8*t&255));continue}}a()||(t.push(s.join("")),s.length=0),s.push(String.fromCodePoint(r))}return t.push(s.join("")),t}}class Xc{constructor(e){this.error=e,this.loadedName="g_font_error",this.missingFile=!0}charsToGlyphs(){return[]}encodeString(e){return[e]}exportData(){return{error:this.error}}}class Kc{#P;#$;#z;static strings=["fontFamily","fontWeight","italicAngle"];static write(e){const t=new TextEncoder,s={};let a=0;for(const c of Kc.strings){const i=t.encode(e[c]);s[c]=i,a+=4+i.length}const i=new ArrayBuffer(a),n=new Uint8Array(i),r=new DataView(i);let o=0;for(const c of Kc.strings){const e=s[c],t=e.length;r.setUint32(o,t),n.set(e,o+4),o+=4+t}return es(o===i.byteLength,"CssFontInfo.write: Buffer overflow"),i}constructor(e){this.#P=e,this.#$=new DataView(this.#P),this.#z=new TextDecoder}#G(e){es(e<Kc.strings.length,"Invalid string index");let t=0;for(let a=0;a<e;a++)t+=this.#$.getUint32(t)+4;const s=this.#$.getUint32(t);return this.#z.decode(new Uint8Array(this.#P,t+4,s))}get fontFamily(){return this.#G(0)}get fontWeight(){return this.#G(1)}get italicAngle(){return this.#G(2)}}class Yc{#P;#$;#z;static strings=["css","loadedName","baseFontName","src"];static write(e){const t=new TextEncoder,s={};let a=0;for(const u of Yc.strings){const i=t.encode(e[u]);s[u]=i,a+=4+i.length}a+=4;let i,n,r=1+a;e.style&&(i=t.encode(e.style.style),n=t.encode(e.style.weight),r+=4+i.length+4+n.length);const o=new ArrayBuffer(r),c=new Uint8Array(o),l=new DataView(o);let h=0;l.setUint8(h++,e.guessFallback?1:0),l.setUint32(h,0),h+=4,a=0;for(const u of Yc.strings){const e=s[u],t=e.length;a+=4+t,l.setUint32(h,t),c.set(e,h+4),h+=4+t}return l.setUint32(h-a-4,a),e.style&&(l.setUint32(h,i.length),c.set(i,h+4),h+=4+i.length,l.setUint32(h,n.length),c.set(n,h+4),h+=4+n.length),es(h<=o.byteLength,"SubstitionInfo.write: Buffer overflow"),o.transferToFixedLength(h)}constructor(e){this.#P=e,this.#$=new DataView(this.#P),this.#z=new TextDecoder}get guessFallback(){return 0!==this.#$.getUint8(0)}#G(e){es(e<Yc.strings.length,"Invalid string index");let t=5;for(let a=0;a<e;a++)t+=this.#$.getUint32(t)+4;const s=this.#$.getUint32(t);return this.#z.decode(new Uint8Array(this.#P,t+4,s))}get css(){return this.#G(0)}get loadedName(){return this.#G(1)}get baseFontName(){return this.#G(2)}get src(){return this.#G(3)}get style(){let e=1;e+=4+this.#$.getUint32(e);const t=this.#$.getUint32(e),s=this.#z.decode(new Uint8Array(this.#P,e+4,t));e+=4+t;const a=this.#$.getUint32(e);return{style:s,weight:this.#z.decode(new Uint8Array(this.#P,e+4,a))}}}class Jc{static bools=["black","bold","disableFontFace","fontExtraProperties","isInvalidPDFjsFont","isType3Font","italic","missingFile","remeasure","vertical"];static numbers=["ascent","defaultWidth","descent"];static strings=["fallbackName","loadedName","mimetype","name"];static#W=Math.ceil(2*this.bools.length/8);static#V=this.#W+8*this.numbers.length;static#X=this.#V+1+8;static#K=this.#X+1+48;static#Y=this.#K+1+6;#P;#z;#$;constructor({data:e,extra:t}){this.#P=e,this.#z=new TextDecoder,this.#$=new DataView(this.#P),t&&Object.assign(this,t)}#J(e){es(e<Jc.bools.length,"Invalid boolean index");const t=Math.floor(e/4),s=2*e%8,a=this.#$.getUint8(t)>>s&3;return 0===a?void 0:2===a}get black(){return this.#J(0)}get bold(){return this.#J(1)}get disableFontFace(){return this.#J(2)}get fontExtraProperties(){return this.#J(3)}get isInvalidPDFjsFont(){return this.#J(4)}get isType3Font(){return this.#J(5)}get italic(){return this.#J(6)}get missingFile(){return this.#J(7)}get remeasure(){return this.#J(8)}get vertical(){return this.#J(9)}#Z(e){return es(e<Jc.numbers.length,"Invalid number index"),this.#$.getFloat64(Jc.#W+8*e)}get ascent(){return this.#Z(0)}get defaultWidth(){return this.#Z(1)}get descent(){return this.#Z(2)}get bbox(){let e=Jc.#V;if(0===this.#$.getUint8(e))return;e+=1;const t=[];for(let s=0;s<4;s++)t.push(this.#$.getInt16(e,!0)),e+=2;return t}get fontMatrix(){let e=Jc.#X;if(0===this.#$.getUint8(e))return;e+=1;const t=[];for(let s=0;s<6;s++)t.push(this.#$.getFloat64(e,!0)),e+=8;return t}get defaultVMetrics(){let e=Jc.#K;if(0===this.#$.getUint8(e))return;e+=1;const t=[];for(let s=0;s<3;s++)t.push(this.#$.getInt16(e,!0)),e+=2;return t}#G(e){es(e<Jc.strings.length,"Invalid string index");let t=Jc.#Y+4;for(let i=0;i<e;i++)t+=this.#$.getUint32(t)+4;const s=this.#$.getUint32(t),a=new Uint8Array(s);return a.set(new Uint8Array(this.#P,t+4,s)),this.#z.decode(a)}get fallbackName(){return this.#G(0)}get loadedName(){return this.#G(1)}get mimetype(){return this.#G(2)}get name(){return this.#G(3)}get data(){let e=Jc.#Y;e+=4+this.#$.getUint32(e),e+=4+this.#$.getUint32(e),e+=4+this.#$.getUint32(e);const t=this.#$.getUint32(e);if(0!==t)return new Uint8Array(this.#P,e+4,t)}clearData(){let e=Jc.#Y;e+=4+this.#$.getUint32(e),e+=4+this.#$.getUint32(e),e+=4+this.#$.getUint32(e);const t=this.#$.getUint32(e);new Uint8Array(this.#P,e+4,t).fill(0),this.#$.setUint32(e,0)}get cssFontInfo(){let e=Jc.#Y;e+=4+this.#$.getUint32(e),e+=4+this.#$.getUint32(e);const t=this.#$.getUint32(e);if(0===t)return null;const s=new Uint8Array(t);return s.set(new Uint8Array(this.#P,e+4,t)),new Kc(s.buffer)}get systemFontInfo(){let e=Jc.#Y;e+=4+this.#$.getUint32(e);const t=this.#$.getUint32(e);if(0===t)return null;const s=new Uint8Array(t);return s.set(new Uint8Array(this.#P,e+4,t)),new Yc(s.buffer)}static write(e){const t=e.systemFontInfo?Yc.write(e.systemFontInfo):null,s=e.cssFontInfo?Kc.write(e.cssFontInfo):null,a=new TextEncoder,i={};let n=0;for(const g of Jc.strings)i[g]=a.encode(e[g]),n+=4+i[g].length;const r=Jc.#Y+4+n+4+(t?t.byteLength:0)+4+(s?s.byteLength:0)+4+(e.data?e.data.length:0),o=new ArrayBuffer(r),c=new Uint8Array(o),l=new DataView(o);let h=0;const u=Jc.bools.length;let d=0,f=0;for(let g=0;g<u;g++){const t=e[Jc.bools[g]];d|=(void 0===t?0:t?2:1)<<f,f+=2,8!==f&&g!==u-1||(l.setUint8(h++,d),d=0,f=0)}es(h===Jc.#W,"FontInfo.write: Boolean properties offset mismatch");for(const g of Jc.numbers)l.setFloat64(h,e[g]),h+=8;if(es(h===Jc.#V,"FontInfo.write: Number properties offset mismatch"),e.bbox){l.setUint8(h++,4);for(const t of e.bbox)l.setInt16(h,t,!0),h+=2}else l.setUint8(h++,0),h+=8;if(es(h===Jc.#X,"FontInfo.write: BBox properties offset mismatch"),e.fontMatrix){l.setUint8(h++,6);for(const t of e.fontMatrix)l.setFloat64(h,t,!0),h+=8}else l.setUint8(h++,0),h+=48;if(es(h===Jc.#K,"FontInfo.write: FontMatrix properties offset mismatch"),e.defaultVMetrics){l.setUint8(h++,1);for(const t of e.defaultVMetrics)l.setInt16(h,t,!0),h+=2}else l.setUint8(h++,0),h+=6;es(h===Jc.#Y,"FontInfo.write: DefaultVMetrics properties offset mismatch"),l.setUint32(Jc.#Y,0),h+=4;for(const g of Jc.strings){const e=i[g],t=e.length;l.setUint32(h,t),c.set(e,h+4),h+=4+t}if(l.setUint32(Jc.#Y,h-Jc.#Y-4),t){const e=t.byteLength;l.setUint32(h,e),es(h+4+e<=o.byteLength,"FontInfo.write: Buffer overflow at systemFontInfo"),c.set(new Uint8Array(t),h+4),h+=4+e}else l.setUint32(h,0),h+=4;if(s){const e=s.byteLength;l.setUint32(h,e),es(h+4+e<=o.byteLength,"FontInfo.write: Buffer overflow at cssFontInfo"),c.set(new Uint8Array(s),h+4),h+=4+e}else l.setUint32(h,0),h+=4;return void 0===e.data?(l.setUint32(h,0),h+=4):(l.setUint32(h,e.data.length),c.set(e.data,h+4),h+=4+e.data.length),es(h<=o.byteLength,"FontInfo.write: Buffer overflow"),o.transferToFixedLength(h)}}class Zc{static#Q=0;static#ee=1;static#te=2;static#se=3;static#ae=4;static#ie=8;static#ne=12;static#re=16;constructor(e){this.buffer=e,this.view=new DataView(e),this.data=new Uint8Array(e)}static write(e){let t,s=null,a=[],i=[],n=[],r=[],o=null,c=null;switch(e[0]){case"RadialAxial":t="axial"===e[1]?1:2,s=e[2],n=e[3],1===t?a.push(...e[4],...e[5]):a.push(e[4][0],e[4][1],e[6],e[5][0],e[5][1],e[7]);break;case"Mesh":t=3,o=e[1],a=e[2],i=e[3],r=e[4]||[],s=e[6],c=e[7];break;default:throw new Error(`Unsupported pattern type: ${e[0]}`)}const l=Math.floor(a.length/2),h=Math.floor(i.length/3),u=n.length,d=r.length;let f=0;for(const w of r)f+=1,f=4*Math.ceil(f/4),f+=4+4*w.coords.length,f+=4+4*w.colors.length,void 0!==w.verticesPerRow&&(f+=4);const g=new ArrayBuffer(20+8*l+3*h+8*u+(s?16:0)+(c?3:0)+f),p=new DataView(g),m=new Uint8Array(g);p.setUint8(Zc.#Q,t),p.setUint8(Zc.#ee,s?1:0),p.setUint8(Zc.#te,c?1:0),p.setUint8(Zc.#se,o),p.setUint32(Zc.#ae,l,!0),p.setUint32(Zc.#ie,h,!0),p.setUint32(Zc.#ne,u,!0),p.setUint32(Zc.#re,d,!0);let b=20;new Float32Array(g,b,2*l).set(a),b+=8*l,m.set(i,b),b+=3*h;for(const[w,y]of n)p.setFloat32(b,w,!0),b+=4,p.setUint32(b,parseInt(y.slice(1),16),!0),b+=4;if(s)for(const w of s)p.setFloat32(b,w,!0),b+=4;c&&(m.set(c,b),b+=3);for(let w=0;w<r.length;w++){const e=r[w];p.setUint8(b,e.type),b+=1,b=4*Math.ceil(b/4),p.setUint32(b,e.coords.length,!0),b+=4,new Int32Array(g,b,e.coords.length).set(e.coords),b+=4*e.coords.length,p.setUint32(b,e.colors.length,!0),b+=4,new Int32Array(g,b,e.colors.length).set(e.colors),b+=4*e.colors.length,void 0!==e.verticesPerRow&&(p.setUint32(b,e.verticesPerRow,!0),b+=4)}return g}getIR(){const e=this.view,t=this.data[Zc.#Q],s=!!this.data[Zc.#ee],a=!!this.data[Zc.#te],i=e.getUint32(Zc.#ae,!0),n=e.getUint32(Zc.#ie,!0),r=e.getUint32(Zc.#ne,!0),o=e.getUint32(Zc.#re,!0);let c=20;const l=new Float32Array(this.buffer,c,2*i);c+=8*i;const h=new Uint8Array(this.buffer,c,3*n);c+=3*n;const u=[];for(let p=0;p<r;++p){const t=e.getFloat32(c,!0);c+=4;const s=e.getUint32(c,!0);c+=4,u.push([t,`#${s.toString(16).padStart(6,"0")}`])}let d=null;if(s){d=[];for(let t=0;t<4;++t)d.push(e.getFloat32(c,!0)),c+=4}let f=null;a&&(f=new Uint8Array(this.buffer,c,3),c+=3);const g=[];for(let p=0;p<o;++p){const t=e.getUint8(c);c+=1,c=4*Math.ceil(c/4);const s=e.getUint32(c,!0);c+=4;const a=new Int32Array(this.buffer,c,s);c+=4*s;const i=e.getUint32(c,!0);c+=4;const n=new Int32Array(this.buffer,c,i);c+=4*i;const r={type:t,coords:a,colors:n};t===k&&(r.verticesPerRow=e.getUint32(c,!0),c+=4),g.push(r)}if(1===t)return["RadialAxial","axial",d,u,Array.from(l.slice(0,2)),Array.from(l.slice(2,4)),null,null];if(2===t)return["RadialAxial","radial",d,u,[l[0],l[1]],[l[3],l[4]],l[2],l[5]];if(3===t){const e=this.data[Zc.#se];let t=null;if(l.length>0){let e=l[0],s=l[0],a=l[1],i=l[1];for(let t=0;t<l.length;t+=2){const n=l[t],r=l[t+1];e=e>n?n:e,a=a>r?r:a,s=s<n?n:s,i=i<r?r:i}t=[e,a,s,i]}return["Mesh",e,l,h,g,t,d,f]}throw new Error(`Unsupported pattern kind: ${t}`)}}class Qc{static write(e){let t,s;return gs.isFloat16ArraySupported?(s=new ArrayBuffer(2*e.length),t=new Float16Array(s)):(s=new ArrayBuffer(4*e.length),t=new Float32Array(s)),t.set(e),s}#P;constructor(e){this.#P=e}get path(){return gs.isFloat16ArraySupported?new Float16Array(this.#P):new Float32Array(this.#P)}}const el=2,tl=3,sl=4,al=5,il=6,nl=7;class rl{constructor(){Qt("Cannot initialize Pattern.")}static parseShading(e,t,s,a,i,n){const r=e instanceof $s?e.dict:e,o=r.get("ShadingType");try{switch(o){case el:case tl:return new cl(r,t,s,a,i,n);case sl:case al:case il:case nl:return new dl(e,t,s,a,i,n);default:throw new cs("Unsupported ShadingType: "+o)}}catch(e){if(e instanceof Ys)throw e;return Zt(e),new fl}}}class ol{static SMALL_NUMBER=1e-6;getIR(){Qt("Abstract method `getIR` called.")}}class cl extends ol{constructor(e,t,s,a,i,n){super(),this.shadingType=e.get("ShadingType");let r=0;if(this.shadingType===el?r=4:this.shadingType===tl&&(r=6),this.coordsArr=e.getArray("Coords"),!ua(this.coordsArr,r))throw new cs("RadialAxialShading: Invalid /Coords array.");const o=mi.parse({cs:e.getRaw("CS")||e.getRaw("ColorSpace"),xref:t,resources:s,pdfFunctionFactory:a,globalColorSpaceCache:i,localColorSpaceCache:n});this.bbox=ga(e.getArray("BBox"),null);let c=0,l=1;const h=e.getArray("Domain");ua(h,2)&&([c,l]=h);let u=!1,d=!1;const f=e.getArray("Extend");if(function(e,t){return Array.isArray(e)&&(null===t||e.length===t)&&e.every(e=>"boolean"==typeof e)}(f,2)&&([u,d]=f),!(this.shadingType!==tl||u&&d)){const[e,t,s,a,i,n]=this.coordsArr,r=Math.hypot(e-a,t-i);s<=n+r&&n<=s+r&&Zt("Unsupported radial gradient.")}this.extendStart=u,this.extendEnd=d;const g=e.getRaw("Function"),p=a.create(g,!0),m=(l-c)/840,b=this.colorStops=[];if(c>=l||m<=0)return void Jt("Bad shading domain.");const w=new Float32Array(o.numComps),y=new Float32Array(1);let x=0;y[0]=c,p(y,0,w,0);const k=new Uint8ClampedArray(3);o.getRgb(w,0,k);let[v,A,C]=k;b.push([0,ms.makeHexColor(v,A,C)]);let S=1;y[0]=c+m,p(y,0,w,0),o.getRgb(w,0,k);let[I,B,F]=k,M=I-v+1,T=B-A+1,R=F-C+1,N=I-v-1,D=B-A-1,O=F-C-1;for(let E=2;E<840;E++){y[0]=c+E*m,p(y,0,w,0),o.getRgb(w,0,k);const[e,t,s]=k,a=E-x;if(M=Math.min(M,(e-v+1)/a),T=Math.min(T,(t-A+1)/a),R=Math.min(R,(s-C+1)/a),N=Math.max(N,(e-v-1)/a),D=Math.max(D,(t-A-1)/a),O=Math.max(O,(s-C-1)/a),!(N<=M&&D<=T&&O<=R)){const a=ms.makeHexColor(I,B,F);b.push([S/840,a]),M=e-I+1,T=t-B+1,R=s-F+1,N=e-I-1,D=t-B-1,O=s-F-1,x=S,v=I,A=B,C=F}S=E,I=e,B=t,F=s}b.push([1,ms.makeHexColor(I,B,F)]);let P="transparent";e.has("Background")&&(P=o.getRgbHex(e.get("Background"),0)),u||(b.unshift([0,P]),b[1][0]+=ol.SMALL_NUMBER),d||(b.at(-1)[0]-=ol.SMALL_NUMBER,b.push([1,P])),this.colorStops=b}getIR(){const{coordsArr:e,shadingType:t}=this;let s,a,i,n,r;return t===el?(a=[e[0],e[1]],i=[e[2],e[3]],n=null,r=null,s="axial"):t===tl?(a=[e[0],e[1]],i=[e[3],e[4]],n=e[2],r=e[5],s="radial"):Qt(`getPattern type unknown: ${t}`),["RadialAxial",s,this.bbox,this.colorStops,a,i,n,r]}}class ll{constructor(e,t){this.stream=e,this.context=t,this.buffer=0,this.bufferLength=0;const s=t.numComps;this.tmpCompsBuf=new Float32Array(s);const a=t.colorSpace.numComps;this.tmpCsCompsBuf=t.colorFn?new Float32Array(a):this.tmpCompsBuf}get hasData(){if(this.stream.end)return this.stream.pos<this.stream.end;if(this.bufferLength>0)return!0;const e=this.stream.getByte();return!(e<0)&&(this.buffer=e,this.bufferLength=8,!0)}readBits(e){const{stream:t}=this;let{buffer:s,bufferLength:a}=this;if(32===e){if(0===a)return t.getInt32()>>>0;s=s<<24|t.getByte()<<16|t.getByte()<<8|t.getByte();const e=t.getByte();return this.buffer=e&(1<<a)-1,(s<<8-a|(255&e)>>a)>>>0}if(8===e&&0===a)return t.getByte();for(;a<e;)s=s<<8|t.getByte(),a+=8;return a-=e,this.bufferLength=a,this.buffer=s&(1<<a)-1,s>>a}align(){this.buffer=0,this.bufferLength=0}readFlag(){return this.readBits(this.context.bitsPerFlag)}readCoordinate(){const{bitsPerCoordinate:e,decode:t}=this.context,s=this.readBits(e),a=this.readBits(e),i=e<32?1/((1<<e)-1):2.3283064365386963e-10;return[s*i*(t[1]-t[0])+t[0],a*i*(t[3]-t[2])+t[2]]}readComponents(){const{bitsPerComponent:e,colorFn:t,colorSpace:s,decode:a,numComps:i}=this.context,n=e<32?1/((1<<e)-1):2.3283064365386963e-10,r=this.tmpCompsBuf;for(let c=0,l=4;c<i;c++,l+=2){const t=this.readBits(e);r[c]=t*n*(a[l+1]-a[l])+a[l]}const o=this.tmpCsCompsBuf;return t?.(r,0,o,0),s.getRgb(o,0)}}let hl=Object.create(null);function ul(e){return hl[e]||=function(e){const t=[];for(let s=0;s<=e;s++){const a=s/e,i=1-a;t.push(new Float32Array([i**3,3*a*i**2,3*a**2*i,a**3]))}return t}(e)}class dl extends ol{static MIN_SPLIT_PATCH_CHUNKS_AMOUNT=3;static MAX_SPLIT_PATCH_CHUNKS_AMOUNT=20;static TRIANGLE_DENSITY=20;constructor(e,t,s,a,i,n){if(super(),!(e instanceof $s))throw new cs("Mesh data is not a stream");const r=e.dict;this.shadingType=r.get("ShadingType"),this.bbox=ga(r.getArray("BBox"),null);const o=mi.parse({cs:r.getRaw("CS")||r.getRaw("ColorSpace"),xref:t,resources:s,pdfFunctionFactory:a,globalColorSpaceCache:i,localColorSpaceCache:n});this.background=r.has("Background")?o.getRgb(r.get("Background"),0):null;const c=r.getRaw("Function"),l=c?a.create(c,!0):null;this.coords=[],this.colors=[],this.figures=[];const h={bitsPerCoordinate:r.get("BitsPerCoordinate"),bitsPerComponent:r.get("BitsPerComponent"),bitsPerFlag:r.get("BitsPerFlag"),decode:r.getArray("Decode"),colorFn:l,colorSpace:o,numComps:l?1:o.numComps},u=new ll(e,h);let d=!1;switch(this.shadingType){case sl:this._decodeType4Shading(u);break;case al:const e=0|r.get("VerticesPerRow");if(e<2)throw new cs("Invalid VerticesPerRow");this._decodeType5Shading(u,e);break;case il:this._decodeType6Shading(u),d=!0;break;case nl:this._decodeType7Shading(u),d=!0;break;default:Qt("Unsupported mesh type.")}if(d){this._updateBounds();for(let e=0,t=this.figures.length;e<t;e++)this._buildFigureFromPatch(e)}this._updateBounds(),this._packData()}_decodeType4Shading(e){const t=this.coords,s=this.colors,a=[],i=[];let n=0;for(;e.hasData;){const r=e.readFlag(),o=e.readCoordinate(),c=e.readComponents();if(0===n){if(!(0<=r&&r<=2))throw new cs("Unknown type4 flag");switch(r){case 0:n=3;break;case 1:i.push(i.at(-2),i.at(-1)),n=1;break;case 2:i.push(i.at(-3),i.at(-1)),n=1}a.push(r)}i.push(t.length),t.push(o),s.push(c),n--,e.align()}this.figures.push({type:x,coords:new Int32Array(i),colors:new Int32Array(i)})}_decodeType5Shading(e,t){const s=this.coords,a=this.colors,i=[];for(;e.hasData;){const t=e.readCoordinate(),n=e.readComponents();i.push(s.length),s.push(t),a.push(n)}this.figures.push({type:k,coords:new Int32Array(i),colors:new Int32Array(i),verticesPerRow:t})}_decodeType6Shading(e){const t=this.coords,s=this.colors,a=new Int32Array(16),i=new Int32Array(4);for(;e.hasData;){const n=e.readFlag();if(!(0<=n&&n<=3))throw new cs("Unknown type6 flag");const r=t.length;for(let s=0,a=0!==n?8:12;s<a;s++)t.push(e.readCoordinate());const o=s.length;for(let t=0,a=0!==n?2:4;t<a;t++)s.push(e.readComponents());let c,l,h,u;switch(n){case 0:a[12]=r+3,a[13]=r+4,a[14]=r+5,a[15]=r+6,a[8]=r+2,a[11]=r+7,a[4]=r+1,a[7]=r+8,a[0]=r,a[1]=r+11,a[2]=r+10,a[3]=r+9,i[2]=o+1,i[3]=o+2,i[0]=o,i[1]=o+3;break;case 1:c=a[12],l=a[13],h=a[14],u=a[15],a[12]=u,a[13]=r+0,a[14]=r+1,a[15]=r+2,a[8]=h,a[11]=r+3,a[4]=l,a[7]=r+4,a[0]=c,a[1]=r+7,a[2]=r+6,a[3]=r+5,c=i[2],l=i[3],i[2]=l,i[3]=o,i[0]=c,i[1]=o+1;break;case 2:c=a[15],l=a[11],a[12]=a[3],a[13]=r+0,a[14]=r+1,a[15]=r+2,a[8]=a[7],a[11]=r+3,a[4]=l,a[7]=r+4,a[0]=c,a[1]=r+7,a[2]=r+6,a[3]=r+5,c=i[3],i[2]=i[1],i[3]=o,i[0]=c,i[1]=o+1;break;case 3:a[12]=a[0],a[13]=r+0,a[14]=r+1,a[15]=r+2,a[8]=a[1],a[11]=r+3,a[4]=a[2],a[7]=r+4,a[0]=a[3],a[1]=r+7,a[2]=r+6,a[3]=r+5,i[2]=i[0],i[3]=o,i[0]=i[1],i[1]=o+1}a[5]=t.length,t.push([(-4*t[a[0]][0]-t[a[15]][0]+6*(t[a[4]][0]+t[a[1]][0])-2*(t[a[12]][0]+t[a[3]][0])+3*(t[a[13]][0]+t[a[7]][0]))/9,(-4*t[a[0]][1]-t[a[15]][1]+6*(t[a[4]][1]+t[a[1]][1])-2*(t[a[12]][1]+t[a[3]][1])+3*(t[a[13]][1]+t[a[7]][1]))/9]),a[6]=t.length,t.push([(-4*t[a[3]][0]-t[a[12]][0]+6*(t[a[2]][0]+t[a[7]][0])-2*(t[a[0]][0]+t[a[15]][0])+3*(t[a[4]][0]+t[a[14]][0]))/9,(-4*t[a[3]][1]-t[a[12]][1]+6*(t[a[2]][1]+t[a[7]][1])-2*(t[a[0]][1]+t[a[15]][1])+3*(t[a[4]][1]+t[a[14]][1]))/9]),a[9]=t.length,t.push([(-4*t[a[12]][0]-t[a[3]][0]+6*(t[a[8]][0]+t[a[13]][0])-2*(t[a[0]][0]+t[a[15]][0])+3*(t[a[11]][0]+t[a[1]][0]))/9,(-4*t[a[12]][1]-t[a[3]][1]+6*(t[a[8]][1]+t[a[13]][1])-2*(t[a[0]][1]+t[a[15]][1])+3*(t[a[11]][1]+t[a[1]][1]))/9]),a[10]=t.length,t.push([(-4*t[a[15]][0]-t[a[0]][0]+6*(t[a[11]][0]+t[a[14]][0])-2*(t[a[12]][0]+t[a[3]][0])+3*(t[a[2]][0]+t[a[8]][0]))/9,(-4*t[a[15]][1]-t[a[0]][1]+6*(t[a[11]][1]+t[a[14]][1])-2*(t[a[12]][1]+t[a[3]][1])+3*(t[a[2]][1]+t[a[8]][1]))/9]),this.figures.push({type:v,coords:new Int32Array(a),colors:new Int32Array(i)})}}_decodeType7Shading(e){const t=this.coords,s=this.colors,a=new Int32Array(16),i=new Int32Array(4);for(;e.hasData;){const n=e.readFlag();if(!(0<=n&&n<=3))throw new cs("Unknown type7 flag");const r=t.length;for(let s=0,a=0!==n?12:16;s<a;s++)t.push(e.readCoordinate());const o=s.length;for(let t=0,a=0!==n?2:4;t<a;t++)s.push(e.readComponents());let c,l,h,u;switch(n){case 0:a[12]=r+3,a[13]=r+4,a[14]=r+5,a[15]=r+6,a[8]=r+2,a[9]=r+13,a[10]=r+14,a[11]=r+7,a[4]=r+1,a[5]=r+12,a[6]=r+15,a[7]=r+8,a[0]=r,a[1]=r+11,a[2]=r+10,a[3]=r+9,i[2]=o+1,i[3]=o+2,i[0]=o,i[1]=o+3;break;case 1:c=a[12],l=a[13],h=a[14],u=a[15],a[12]=u,a[13]=r+0,a[14]=r+1,a[15]=r+2,a[8]=h,a[9]=r+9,a[10]=r+10,a[11]=r+3,a[4]=l,a[5]=r+8,a[6]=r+11,a[7]=r+4,a[0]=c,a[1]=r+7,a[2]=r+6,a[3]=r+5,c=i[2],l=i[3],i[2]=l,i[3]=o,i[0]=c,i[1]=o+1;break;case 2:c=a[15],l=a[11],a[12]=a[3],a[13]=r+0,a[14]=r+1,a[15]=r+2,a[8]=a[7],a[9]=r+9,a[10]=r+10,a[11]=r+3,a[4]=l,a[5]=r+8,a[6]=r+11,a[7]=r+4,a[0]=c,a[1]=r+7,a[2]=r+6,a[3]=r+5,c=i[3],i[2]=i[1],i[3]=o,i[0]=c,i[1]=o+1;break;case 3:a[12]=a[0],a[13]=r+0,a[14]=r+1,a[15]=r+2,a[8]=a[1],a[9]=r+9,a[10]=r+10,a[11]=r+3,a[4]=a[2],a[5]=r+8,a[6]=r+11,a[7]=r+4,a[0]=a[3],a[1]=r+7,a[2]=r+6,a[3]=r+5,i[2]=i[0],i[3]=o,i[0]=i[1],i[1]=o+1}this.figures.push({type:v,coords:new Int32Array(a),colors:new Int32Array(i)})}}_buildFigureFromPatch(e){const t=this.figures[e];es(t.type===v,"Unexpected patch mesh figure");const s=this.coords,a=this.colors,i=t.coords,n=t.colors,r=Math.min(s[i[0]][0],s[i[3]][0],s[i[12]][0],s[i[15]][0]),o=Math.min(s[i[0]][1],s[i[3]][1],s[i[12]][1],s[i[15]][1]),c=Math.max(s[i[0]][0],s[i[3]][0],s[i[12]][0],s[i[15]][0]),l=Math.max(s[i[0]][1],s[i[3]][1],s[i[12]][1],s[i[15]][1]);let h=Math.ceil((c-r)*dl.TRIANGLE_DENSITY/(this.bounds[2]-this.bounds[0]));h=Ss(h,dl.MIN_SPLIT_PATCH_CHUNKS_AMOUNT,dl.MAX_SPLIT_PATCH_CHUNKS_AMOUNT);let u=Math.ceil((l-o)*dl.TRIANGLE_DENSITY/(this.bounds[3]-this.bounds[1]));u=Ss(u,dl.MIN_SPLIT_PATCH_CHUNKS_AMOUNT,dl.MAX_SPLIT_PATCH_CHUNKS_AMOUNT);const d=h+1,f=new Int32Array((u+1)*d),g=new Int32Array((u+1)*d);let p=0;const m=new Uint8Array(3),b=new Uint8Array(3),w=a[n[0]],y=a[n[1]],x=a[n[2]],A=a[n[3]],C=ul(u),S=ul(h);for(let k=0;k<=u;k++){m[0]=(w[0]*(u-k)+x[0]*k)/u|0,m[1]=(w[1]*(u-k)+x[1]*k)/u|0,m[2]=(w[2]*(u-k)+x[2]*k)/u|0,b[0]=(y[0]*(u-k)+A[0]*k)/u|0,b[1]=(y[1]*(u-k)+A[1]*k)/u|0,b[2]=(y[2]*(u-k)+A[2]*k)/u|0;for(let e=0;e<=h;e++,p++){if(!(0!==k&&k!==u||0!==e&&e!==h))continue;let t=0,n=0,r=0;for(let a=0;a<=3;a++)for(let o=0;o<=3;o++,r++){const c=C[k][a]*S[e][o];t+=s[i[r]][0]*c,n+=s[i[r]][1]*c}f[p]=s.length,s.push([t,n]),g[p]=a.length;const o=new Uint8Array(3);o[0]=(m[0]*(h-e)+b[0]*e)/h|0,o[1]=(m[1]*(h-e)+b[1]*e)/h|0,o[2]=(m[2]*(h-e)+b[2]*e)/h|0,a.push(o)}}f[0]=i[0],g[0]=n[0],f[h]=i[3],g[h]=n[1],f[d*u]=i[12],g[d*u]=n[2],f[d*u+h]=i[15],g[d*u+h]=n[3],this.figures[e]={type:k,coords:f,colors:g,verticesPerRow:d}}_updateBounds(){let e=this.coords[0][0],t=this.coords[0][1],s=e,a=t;for(let i=1,n=this.coords.length;i<n;i++){const n=this.coords[i][0],r=this.coords[i][1];e=e>n?n:e,t=t>r?r:t,s=s<n?n:s,a=a<r?r:a}this.bounds=[e,t,s,a]}_packData(){let e,t,s,a;const i=this.coords,n=new Float32Array(2*i.length);for(e=0,s=0,t=i.length;e<t;e++){const t=i[e];n[s++]=t[0],n[s++]=t[1]}this.coords=n;const r=this.colors,o=new Uint8Array(3*r.length);for(e=0,s=0,t=r.length;e<t;e++){const t=r[e];o[s++]=t[0],o[s++]=t[1],o[s++]=t[2]}this.colors=o;const c=this.figures;for(e=0,t=c.length;e<t;e++){const t=c[e],i=t.coords,n=t.colors;for(s=0,a=i.length;s<a;s++)i[s]*=2,n[s]*=3}}getIR(){const{bounds:e}=this;if(e[2]-e[0]===0||e[3]-e[1]===0)throw new cs(`Invalid MeshShading bounds: [${e}].`);return["Mesh",this.shadingType,this.coords,this.colors,this.figures,e,this.bbox,this.background]}}class fl extends ol{getIR(){return["Dummy"]}}function gl(e,t,s){const a=da(t.getArray("Matrix"),Ws),i=ga(t.getArray("BBox"),null);if(!i||i[2]-i[0]===0||i[3]-i[1]===0)throw new cs("Invalid getTilingPatternIR /BBox array.");const n=t.get("XStep");if("number"!=typeof n)throw new cs("Invalid getTilingPatternIR /XStep value.");const r=t.get("YStep");if("number"!=typeof r)throw new cs("Invalid getTilingPatternIR /YStep value.");const o=t.get("PaintType");if(!Number.isInteger(o))throw new cs("Invalid getTilingPatternIR /PaintType value.");const c=t.get("TilingType");if(!Number.isInteger(c))throw new cs("Invalid getTilingPatternIR /TilingType value.");return["TilingPattern",s,e,a,i,n,r,o,c]}const pl=[1.3877,1,1,1,.97801,.92482,.89552,.91133,.81988,.97566,.98152,.93548,.93548,1.2798,.85284,.92794,1,.96134,1.54657,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.82845,.82845,.85284,.85284,.85284,.75859,.92138,.83908,.7762,.73293,.87289,.73133,.7514,.81921,.87356,.95958,.59526,.75727,.69225,1.04924,.9121,.86943,.79795,.88198,.77958,.70864,.81055,.90399,.88653,.96017,.82577,.77892,.78257,.97507,1.54657,.97507,.85284,.89552,.90176,.88762,.8785,.75241,.8785,.90518,.95015,.77618,.8785,.88401,.91916,.86304,.88401,.91488,.8785,.8801,.8785,.8785,.91343,.7173,1.04106,.8785,.85075,.95794,.82616,.85162,.79492,.88331,1.69808,.88331,.85284,.97801,.89552,.91133,.89552,.91133,1.7801,.89552,1.24487,1.13254,1.12401,.96839,.85284,.68787,.70645,.85592,.90747,1.01466,1.0088,.90323,1,1.07463,1,.91056,.75806,1.19118,.96839,.78864,.82845,.84133,.75859,.83908,.83908,.83908,.83908,.83908,.83908,.77539,.73293,.73133,.73133,.73133,.73133,.95958,.95958,.95958,.95958,.88506,.9121,.86943,.86943,.86943,.86943,.86943,.85284,.87508,.90399,.90399,.90399,.90399,.77892,.79795,.90807,.88762,.88762,.88762,.88762,.88762,.88762,.8715,.75241,.90518,.90518,.90518,.90518,.88401,.88401,.88401,.88401,.8785,.8785,.8801,.8801,.8801,.8801,.8801,.90747,.89049,.8785,.8785,.8785,.8785,.85162,.8785,.85162,.83908,.88762,.83908,.88762,.83908,.88762,.73293,.75241,.73293,.75241,.73293,.75241,.73293,.75241,.87289,.83016,.88506,.93125,.73133,.90518,.73133,.90518,.73133,.90518,.73133,.90518,.73133,.90518,.81921,.77618,.81921,.77618,.81921,.77618,1,1,.87356,.8785,.91075,.89608,.95958,.88401,.95958,.88401,.95958,.88401,.95958,.88401,.95958,.88401,.76229,.90167,.59526,.91916,1,1,.86304,.69225,.88401,1,1,.70424,.79468,.91926,.88175,.70823,.94903,.9121,.8785,1,1,.9121,.8785,.87802,.88656,.8785,.86943,.8801,.86943,.8801,.86943,.8801,.87402,.89291,.77958,.91343,1,1,.77958,.91343,.70864,.7173,.70864,.7173,.70864,.7173,.70864,.7173,1,1,.81055,.75841,.81055,1.06452,.90399,.8785,.90399,.8785,.90399,.8785,.90399,.8785,.90399,.8785,.90399,.8785,.96017,.95794,.77892,.85162,.77892,.78257,.79492,.78257,.79492,.78257,.79492,.9297,.56892,.83908,.88762,.77539,.8715,.87508,.89049,1,1,.81055,1.04106,1.20528,1.20528,1,1.15543,.70674,.98387,.94721,1.33431,1.45894,.95161,1.06303,.83908,.80352,.57184,.6965,.56289,.82001,.56029,.81235,1.02988,.83908,.7762,.68156,.80367,.73133,.78257,.87356,.86943,.95958,.75727,.89019,1.04924,.9121,.7648,.86943,.87356,.79795,.78275,.81055,.77892,.9762,.82577,.99819,.84896,.95958,.77892,.96108,1.01407,.89049,1.02988,.94211,.96108,.8936,.84021,.87842,.96399,.79109,.89049,1.00813,1.02988,.86077,.87445,.92099,.84723,.86513,.8801,.75638,.85714,.78216,.79586,.87965,.94211,.97747,.78287,.97926,.84971,1.02988,.94211,.8801,.94211,.84971,.73133,1,1,1,1,1,1,1,1,1,1,1,1,.90264,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.90518,1,1,1,1,1,1,1,1,1,1,1,1,.90548,1,1,1,1,1,1,.96017,.95794,.96017,.95794,.96017,.95794,.77892,.85162,1,1,.89552,.90527,1,.90363,.92794,.92794,.92794,.92794,.87012,.87012,.87012,.89552,.89552,1.42259,.71143,1.06152,1,1,1.03372,1.03372,.97171,1.4956,2.2807,.93835,.83406,.91133,.84107,.91133,1,1,1,.72021,1,1.23108,.83489,.88525,.88525,.81499,.90527,1.81055,.90527,1.81055,1.31006,1.53711,.94434,1.08696,1,.95018,.77192,.85284,.90747,1.17534,.69825,.9716,1.37077,.90747,.90747,.85356,.90747,.90747,1.44947,.85284,.8941,.8941,.70572,.8,.70572,.70572,.70572,.70572,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.99862,.99862,1,1,1,1,1,1.08004,.91027,1,1,1,.99862,1,1,1,1,1,1,1,1,1,1,1,1,.90727,.90727,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],ml={lineHeight:1.2207,lineGap:.2207},bl=[1.3877,1,1,1,.97801,.92482,.89552,.91133,.81988,.97566,.98152,.93548,.93548,1.2798,.85284,.92794,1,.96134,1.56239,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.82845,.82845,.85284,.85284,.85284,.75859,.92138,.83908,.7762,.71805,.87289,.73133,.7514,.81921,.87356,.95958,.59526,.75727,.69225,1.04924,.90872,.85938,.79795,.87068,.77958,.69766,.81055,.90399,.88653,.96068,.82577,.77892,.78257,.97507,1.529,.97507,.85284,.89552,.90176,.94908,.86411,.74012,.86411,.88323,.95015,.86411,.86331,.88401,.91916,.86304,.88401,.9039,.86331,.86331,.86411,.86411,.90464,.70852,1.04106,.86331,.84372,.95794,.82616,.84548,.79492,.88331,1.69808,.88331,.85284,.97801,.89552,.91133,.89552,.91133,1.7801,.89552,1.24487,1.13254,1.19129,.96839,.85284,.68787,.70645,.85592,.90747,1.01466,1.0088,.90323,1,1.07463,1,.91056,.75806,1.19118,.96839,.78864,.82845,.84133,.75859,.83908,.83908,.83908,.83908,.83908,.83908,.77539,.71805,.73133,.73133,.73133,.73133,.95958,.95958,.95958,.95958,.88506,.90872,.85938,.85938,.85938,.85938,.85938,.85284,.87068,.90399,.90399,.90399,.90399,.77892,.79795,.90807,.94908,.94908,.94908,.94908,.94908,.94908,.85887,.74012,.88323,.88323,.88323,.88323,.88401,.88401,.88401,.88401,.8785,.86331,.86331,.86331,.86331,.86331,.86331,.90747,.89049,.86331,.86331,.86331,.86331,.84548,.86411,.84548,.83908,.94908,.83908,.94908,.83908,.94908,.71805,.74012,.71805,.74012,.71805,.74012,.71805,.74012,.87289,.79538,.88506,.92726,.73133,.88323,.73133,.88323,.73133,.88323,.73133,.88323,.73133,.88323,.81921,.86411,.81921,.86411,.81921,.86411,1,1,.87356,.86331,.91075,.8777,.95958,.88401,.95958,.88401,.95958,.88401,.95958,.88401,.95958,.88401,.76467,.90167,.59526,.91916,1,1,.86304,.69225,.88401,1,1,.70424,.77312,.91926,.88175,.70823,.94903,.90872,.86331,1,1,.90872,.86331,.86906,.88116,.86331,.85938,.86331,.85938,.86331,.85938,.86331,.87402,.86549,.77958,.90464,1,1,.77958,.90464,.69766,.70852,.69766,.70852,.69766,.70852,.69766,.70852,1,1,.81055,.75841,.81055,1.06452,.90399,.86331,.90399,.86331,.90399,.86331,.90399,.86331,.90399,.86331,.90399,.86331,.96068,.95794,.77892,.84548,.77892,.78257,.79492,.78257,.79492,.78257,.79492,.9297,.56892,.83908,.94908,.77539,.85887,.87068,.89049,1,1,.81055,1.04106,1.20528,1.20528,1,1.15543,.70088,.98387,.94721,1.33431,1.45894,.95161,1.48387,.83908,.80352,.57118,.6965,.56347,.79179,.55853,.80346,1.02988,.83908,.7762,.67174,.86036,.73133,.78257,.87356,.86441,.95958,.75727,.89019,1.04924,.90872,.74889,.85938,.87891,.79795,.7957,.81055,.77892,.97447,.82577,.97466,.87179,.95958,.77892,.94252,.95612,.8753,1.02988,.92733,.94252,.87411,.84021,.8728,.95612,.74081,.8753,1.02189,1.02988,.84814,.87445,.91822,.84723,.85668,.86331,.81344,.87581,.76422,.82046,.96057,.92733,.99375,.78022,.95452,.86015,1.02988,.92733,.86331,.92733,.86015,.73133,1,1,1,1,1,1,1,1,1,1,1,1,.90631,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.88323,1,1,1,1,1,1,1,1,1,1,1,1,.85174,1,1,1,1,1,1,.96068,.95794,.96068,.95794,.96068,.95794,.77892,.84548,1,1,.89552,.90527,1,.90363,.92794,.92794,.92794,.89807,.87012,.87012,.87012,.89552,.89552,1.42259,.71094,1.06152,1,1,1.03372,1.03372,.97171,1.4956,2.2807,.92972,.83406,.91133,.83326,.91133,1,1,1,.72021,1,1.23108,.83489,.88525,.88525,.81499,.90616,1.81055,.90527,1.81055,1.3107,1.53711,.94434,1.08696,1,.95018,.77192,.85284,.90747,1.17534,.69825,.9716,1.37077,.90747,.90747,.85356,.90747,.90747,1.44947,.85284,.8941,.8941,.70572,.8,.70572,.70572,.70572,.70572,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.99862,.99862,1,1,1,1,1,1.08004,.91027,1,1,1,.99862,1,1,1,1,1,1,1,1,1,1,1,1,.90727,.90727,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],wl={lineHeight:1.2207,lineGap:.2207},yl=[1.3877,1,1,1,1.17223,1.1293,.89552,.91133,.80395,1.02269,1.15601,.91056,.91056,1.2798,.85284,.89807,1,.90861,1.39543,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.96309,.96309,.85284,.85284,.85284,.83319,.88071,.8675,.81552,.72346,.85193,.73206,.7522,.81105,.86275,.90685,.6377,.77892,.75593,1.02638,.89249,.84118,.77452,.85374,.75186,.67789,.79776,.88844,.85066,.94309,.77818,.7306,.76659,1.10369,1.38313,1.10369,1.06139,.89552,.8739,.9245,.9245,.83203,.9245,.85865,1.09842,.9245,.9245,1.03297,1.07692,.90918,1.03297,.94959,.9245,.92274,.9245,.9245,1.02933,.77832,1.20562,.9245,.8916,.98986,.86621,.89453,.79004,.94152,1.77256,.94152,.85284,.97801,.89552,.91133,.89552,.91133,1.91729,.89552,1.17889,1.13254,1.16359,.92098,.85284,.68787,.71353,.84737,.90747,1.0088,1.0044,.87683,1,1.09091,1,.92229,.739,1.15642,.92098,.76288,.80504,.80972,.75859,.8675,.8675,.8675,.8675,.8675,.8675,.76318,.72346,.73206,.73206,.73206,.73206,.90685,.90685,.90685,.90685,.86477,.89249,.84118,.84118,.84118,.84118,.84118,.85284,.84557,.88844,.88844,.88844,.88844,.7306,.77452,.86331,.9245,.9245,.9245,.9245,.9245,.9245,.84843,.83203,.85865,.85865,.85865,.85865,.82601,.82601,.82601,.82601,.94469,.9245,.92274,.92274,.92274,.92274,.92274,.90747,.86651,.9245,.9245,.9245,.9245,.89453,.9245,.89453,.8675,.9245,.8675,.9245,.8675,.9245,.72346,.83203,.72346,.83203,.72346,.83203,.72346,.83203,.85193,.8875,.86477,.99034,.73206,.85865,.73206,.85865,.73206,.85865,.73206,.85865,.73206,.85865,.81105,.9245,.81105,.9245,.81105,.9245,1,1,.86275,.9245,.90872,.93591,.90685,.82601,.90685,.82601,.90685,.82601,.90685,1.03297,.90685,.82601,.77896,1.05611,.6377,1.07692,1,1,.90918,.75593,1.03297,1,1,.76032,.9375,.98156,.93407,.77261,1.11429,.89249,.9245,1,1,.89249,.9245,.92534,.86698,.9245,.84118,.92274,.84118,.92274,.84118,.92274,.8667,.86291,.75186,1.02933,1,1,.75186,1.02933,.67789,.77832,.67789,.77832,.67789,.77832,.67789,.77832,1,1,.79776,.97655,.79776,1.23023,.88844,.9245,.88844,.9245,.88844,.9245,.88844,.9245,.88844,.9245,.88844,.9245,.94309,.98986,.7306,.89453,.7306,.76659,.79004,.76659,.79004,.76659,.79004,1.09231,.54873,.8675,.9245,.76318,.84843,.84557,.86651,1,1,.79776,1.20562,1.18622,1.18622,1,1.1437,.67009,.96334,.93695,1.35191,1.40909,.95161,1.48387,.8675,.90861,.6192,.7363,.64824,.82411,.56321,.85696,1.23516,.8675,.81552,.7286,.84134,.73206,.76659,.86275,.84369,.90685,.77892,.85871,1.02638,.89249,.75828,.84118,.85984,.77452,.76466,.79776,.7306,.90782,.77818,.903,.87291,.90685,.7306,.99058,1.03667,.94635,1.23516,.9849,.99058,.92393,.8916,.942,1.03667,.75026,.94635,1.0297,1.23516,.90918,.94048,.98217,.89746,.84153,.92274,.82507,.88832,.84438,.88178,1.03525,.9849,1.00225,.78086,.97248,.89404,1.23516,.9849,.92274,.9849,.89404,.73206,1,1,1,1,1,1,1,1,1,1,1,1,.89693,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.85865,1,1,1,1,1,1,1,1,1,1,1,1,.90933,1,1,1,1,1,1,.94309,.98986,.94309,.98986,.94309,.98986,.7306,.89453,1,1,.89552,.90527,1,.90186,1.12308,1.12308,1.12308,1.12308,1.2566,1.2566,1.2566,.89552,.89552,1.42259,.68994,1.03809,1,1,1.0176,1.0176,1.11523,1.4956,2.01462,.97858,.82616,.91133,.83437,.91133,1,1,1,.70508,1,1.23108,.79801,.84426,.84426,.774,.90572,1.81055,.90749,1.81055,1.28809,1.55469,.94434,1.07806,1,.97094,.7589,.85284,.90747,1.19658,.69825,.97622,1.33512,.90747,.90747,.85284,.90747,.90747,1.44947,.85284,.8941,.8941,.70572,.8,.70572,.70572,.70572,.70572,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.99862,.99862,1,1,1,1,1,1.0336,.91027,1,1,1,.99862,1,1,1,1,1,1,1,1,1,1,1,1,1.05859,1.05859,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],xl={lineHeight:1.2207,lineGap:.2207},kl=[1.3877,1,1,1,1.17223,1.1293,.89552,.91133,.80395,1.02269,1.15601,.91056,.91056,1.2798,.85284,.89807,1,.90861,1.39016,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.91133,.96309,.96309,.85284,.85284,.85284,.83319,.88071,.8675,.81552,.73834,.85193,.73206,.7522,.81105,.86275,.90685,.6377,.77892,.75593,1.02638,.89385,.85122,.77452,.86503,.75186,.68887,.79776,.88844,.85066,.94258,.77818,.7306,.76659,1.10369,1.39016,1.10369,1.06139,.89552,.8739,.86128,.94469,.8457,.94469,.89464,1.09842,.84636,.94469,1.03297,1.07692,.90918,1.03297,.95897,.94469,.9482,.94469,.94469,1.04692,.78223,1.20562,.94469,.90332,.98986,.86621,.90527,.79004,.94152,1.77256,.94152,.85284,.97801,.89552,.91133,.89552,.91133,1.91729,.89552,1.17889,1.13254,1.08707,.92098,.85284,.68787,.71353,.84737,.90747,1.0088,1.0044,.87683,1,1.09091,1,.92229,.739,1.15642,.92098,.76288,.80504,.80972,.75859,.8675,.8675,.8675,.8675,.8675,.8675,.76318,.73834,.73206,.73206,.73206,.73206,.90685,.90685,.90685,.90685,.86477,.89385,.85122,.85122,.85122,.85122,.85122,.85284,.85311,.88844,.88844,.88844,.88844,.7306,.77452,.86331,.86128,.86128,.86128,.86128,.86128,.86128,.8693,.8457,.89464,.89464,.89464,.89464,.82601,.82601,.82601,.82601,.94469,.94469,.9482,.9482,.9482,.9482,.9482,.90747,.86651,.94469,.94469,.94469,.94469,.90527,.94469,.90527,.8675,.86128,.8675,.86128,.8675,.86128,.73834,.8457,.73834,.8457,.73834,.8457,.73834,.8457,.85193,.92454,.86477,.9921,.73206,.89464,.73206,.89464,.73206,.89464,.73206,.89464,.73206,.89464,.81105,.84636,.81105,.84636,.81105,.84636,1,1,.86275,.94469,.90872,.95786,.90685,.82601,.90685,.82601,.90685,.82601,.90685,1.03297,.90685,.82601,.77741,1.05611,.6377,1.07692,1,1,.90918,.75593,1.03297,1,1,.76032,.90452,.98156,1.11842,.77261,1.11429,.89385,.94469,1,1,.89385,.94469,.95877,.86901,.94469,.85122,.9482,.85122,.9482,.85122,.9482,.8667,.90016,.75186,1.04692,1,1,.75186,1.04692,.68887,.78223,.68887,.78223,.68887,.78223,.68887,.78223,1,1,.79776,.92188,.79776,1.23023,.88844,.94469,.88844,.94469,.88844,.94469,.88844,.94469,.88844,.94469,.88844,.94469,.94258,.98986,.7306,.90527,.7306,.76659,.79004,.76659,.79004,.76659,.79004,1.09231,.54873,.8675,.86128,.76318,.8693,.85311,.86651,1,1,.79776,1.20562,1.18622,1.18622,1,1.1437,.67742,.96334,.93695,1.35191,1.40909,.95161,1.48387,.86686,.90861,.62267,.74359,.65649,.85498,.56963,.88254,1.23516,.8675,.81552,.75443,.84503,.73206,.76659,.86275,.85122,.90685,.77892,.85746,1.02638,.89385,.75657,.85122,.86275,.77452,.74171,.79776,.7306,.95165,.77818,.89772,.88831,.90685,.7306,.98142,1.02191,.96576,1.23516,.99018,.98142,.9236,.89258,.94035,1.02191,.78848,.96576,.9561,1.23516,.90918,.92578,.95424,.89746,.83969,.9482,.80113,.89442,.85208,.86155,.98022,.99018,1.00452,.81209,.99247,.89181,1.23516,.99018,.9482,.99018,.89181,.73206,1,1,1,1,1,1,1,1,1,1,1,1,.88844,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.89464,1,1,1,1,1,1,1,1,1,1,1,1,.96766,1,1,1,1,1,1,.94258,.98986,.94258,.98986,.94258,.98986,.7306,.90527,1,1,.89552,.90527,1,.90186,1.12308,1.12308,1.12308,1.12308,1.2566,1.2566,1.2566,.89552,.89552,1.42259,.69043,1.03809,1,1,1.0176,1.0176,1.11523,1.4956,2.01462,.99331,.82616,.91133,.84286,.91133,1,1,1,.70508,1,1.23108,.79801,.84426,.84426,.774,.90527,1.81055,.90527,1.81055,1.28809,1.55469,.94434,1.07806,1,.97094,.7589,.85284,.90747,1.19658,.69825,.97622,1.33512,.90747,.90747,.85356,.90747,.90747,1.44947,.85284,.8941,.8941,.70572,.8,.70572,.70572,.70572,.70572,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.99862,.99862,1,1,1,1,1,1.0336,.91027,1,1,1,.99862,1,1,1,1,1,1,1,1,1,1,1,1,1.05859,1.05859,1,1,1,1.07185,.99413,.96334,1.08065,1,1,1,1,1,1,1,1,1,1,1],vl={lineHeight:1.2207,lineGap:.2207},Al=[.76116,1,1,1.0006,.99998,.99974,.99973,.99973,.99982,.99977,1.00087,.99998,.99998,.99959,1.00003,1.0006,.99998,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99998,1,1.00003,1.00003,1.00003,1.00026,.9999,.99977,.99977,.99977,.99977,1.00001,1.00026,1.00022,.99977,1.0006,.99973,.99977,1.00026,.99999,.99977,1.00022,1.00001,1.00022,.99977,1.00001,1.00026,.99977,1.00001,1.00016,1.00001,1.00001,1.00026,.99998,1.0006,.99998,1.00003,.99973,.99998,.99973,1.00026,.99973,1.00026,.99973,.99998,1.00026,1.00026,1.0006,1.0006,.99973,1.0006,.99982,1.00026,1.00026,1.00026,1.00026,.99959,.99973,.99998,1.00026,.99973,1.00022,.99973,.99973,1,.99959,1.00077,.99959,1.00003,.99998,.99973,.99973,.99973,.99973,1.00077,.99973,.99998,1.00025,.99968,.99973,1.00003,1.00025,.60299,1.00024,1.06409,1,1,.99998,1,.99973,1.0006,.99998,1,.99936,.99973,1.00002,1.00002,1.00002,1.00026,.99977,.99977,.99977,.99977,.99977,.99977,1,.99977,1.00001,1.00001,1.00001,1.00001,1.0006,1.0006,1.0006,1.0006,.99977,.99977,1.00022,1.00022,1.00022,1.00022,1.00022,1.00003,1.00022,.99977,.99977,.99977,.99977,1.00001,1.00001,1.00026,.99973,.99973,.99973,.99973,.99973,.99973,.99982,.99973,.99973,.99973,.99973,.99973,1.0006,1.0006,1.0006,1.0006,1.00026,1.00026,1.00026,1.00026,1.00026,1.00026,1.00026,1.06409,1.00026,1.00026,1.00026,1.00026,1.00026,.99973,1.00026,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,1.03374,.99977,1.00026,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,.99977,1.00026,.99977,1.00026,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.00042,.99973,.99973,1.0006,.99977,.99973,.99973,1.00026,1.0006,1.00026,1.0006,1.00026,1.03828,1.00026,.99999,1.00026,1.0006,.99977,1.00026,.99977,1.00026,.99977,1.00026,.9993,.9998,1.00026,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,1,1.00016,.99977,.99959,.99977,.99959,.99977,.99959,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00026,.99998,1.00026,.8121,1.00026,.99998,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,1.00016,1.00022,1.00001,.99973,1.00001,1.00026,1,1.00026,1,1.00026,1,1.0006,.99973,.99977,.99973,1,.99982,1.00022,1.00026,1.00001,.99973,1.00026,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,1.00034,.99977,1,.99997,1.00026,1.00078,1.00036,.99973,1.00013,1.0006,.99977,.99977,.99988,.85148,1.00001,1.00026,.99977,1.00022,1.0006,.99977,1.00001,.99999,.99977,1.00069,1.00022,.99977,1.00001,.99984,1.00026,1.00001,1.00024,1.00001,.9999,1,1.0006,1.00001,1.00041,.99962,1.00026,1.0006,.99995,1.00041,.99942,.99973,.99927,1.00082,.99902,1.00026,1.00087,1.0006,1.00069,.99973,.99867,.99973,.9993,1.00026,1.00049,1.00056,1,.99988,.99935,.99995,.99954,1.00055,.99945,1.00032,1.0006,.99995,1.00026,.99995,1.00032,1.00001,1.00008,.99971,1.00019,.9994,1.00001,1.0006,1.00044,.99973,1.00023,1.00047,1,.99942,.99561,.99989,1.00035,.99977,1.00035,.99977,1.00019,.99944,1.00001,1.00021,.99926,1.00035,1.00035,.99942,1.00048,.99999,.99977,1.00022,1.00035,1.00001,.99977,1.00026,.99989,1.00057,1.00001,.99936,1.00052,1.00012,.99996,1.00043,1,1.00035,.9994,.99976,1.00035,.99973,1.00052,1.00041,1.00119,1.00037,.99973,1.00002,.99986,1.00041,1.00041,.99902,.9996,1.00034,.99999,1.00026,.99999,1.00026,.99973,1.00052,.99973,1,.99973,1.00041,1.00075,.9994,1.0003,.99999,1,1.00041,.99955,1,.99915,.99973,.99973,1.00026,1.00119,.99955,.99973,1.0006,.99911,1.0006,1.00026,.99972,1.00026,.99902,1.00041,.99973,.99999,1,1,1.00038,1.0005,1.00016,1.00022,1.00016,1.00022,1.00016,1.00022,1.00001,.99973,1,1,.99973,1,1,.99955,1.0006,1.0006,1.0006,1.0006,1,1,1,.99973,.99973,.99972,1,1,1.00106,.99999,.99998,.99998,.99999,.99998,1.66475,1,.99973,.99973,1.00023,.99973,.99971,1.00047,1.00023,1,.99991,.99984,1.00002,1.00002,1.00002,1.00002,1,1,1,1,1,1,1,.99972,1,1.20985,1.39713,1.00003,1.00031,1.00015,1,.99561,1.00027,1.00031,1.00031,.99915,1.00031,1.00031,.99999,1.00003,.99999,.99999,1.41144,1.6,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.40579,1.40579,1.36625,.99999,1,.99861,.99861,1,1.00026,1.00026,1.00026,1.00026,.99972,.99999,.99999,.99999,.99999,1.40483,1,.99977,1.00054,1,1,.99953,.99962,1.00042,.9995,1,1,1,1,1,1,1,1,.99998,.99998,.99998,.99998,1,1,1,1,1,1,1,1,1,1,1],Cl={lineHeight:1.2,lineGap:.2},Sl=[.76116,1,1,1.0006,.99998,.99974,.99973,.99973,.99982,.99977,1.00087,.99998,.99998,.99959,1.00003,1.0006,.99998,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99998,1,1.00003,1.00003,1.00003,1.00026,.9999,.99977,.99977,.99977,.99977,1.00001,1.00026,1.00022,.99977,1.0006,.99973,.99977,1.00026,.99999,.99977,1.00022,1.00001,1.00022,.99977,1.00001,1.00026,.99977,1.00001,1.00016,1.00001,1.00001,1.00026,.99998,1.0006,.99998,1.00003,.99973,.99998,.99973,1.00026,.99973,1.00026,.99973,.99998,1.00026,1.00026,1.0006,1.0006,.99973,1.0006,.99982,1.00026,1.00026,1.00026,1.00026,.99959,.99973,.99998,1.00026,.99973,1.00022,.99973,.99973,1,.99959,1.00077,.99959,1.00003,.99998,.99973,.99973,.99973,.99973,1.00077,.99973,.99998,1.00025,.99968,.99973,1.00003,1.00025,.60299,1.00024,1.06409,1,1,.99998,1,.99973,1.0006,.99998,1,.99936,.99973,1.00002,1.00002,1.00002,1.00026,.99977,.99977,.99977,.99977,.99977,.99977,1,.99977,1.00001,1.00001,1.00001,1.00001,1.0006,1.0006,1.0006,1.0006,.99977,.99977,1.00022,1.00022,1.00022,1.00022,1.00022,1.00003,1.00022,.99977,.99977,.99977,.99977,1.00001,1.00001,1.00026,.99973,.99973,.99973,.99973,.99973,.99973,.99982,.99973,.99973,.99973,.99973,.99973,1.0006,1.0006,1.0006,1.0006,1.00026,1.00026,1.00026,1.00026,1.00026,1.00026,1.00026,1.06409,1.00026,1.00026,1.00026,1.00026,1.00026,.99973,1.00026,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,1.0044,.99977,1.00026,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,.99977,1.00026,.99977,1.00026,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,.99971,.99973,.99973,1.0006,.99977,.99973,.99973,1.00026,1.0006,1.00026,1.0006,1.00026,1.01011,1.00026,.99999,1.00026,1.0006,.99977,1.00026,.99977,1.00026,.99977,1.00026,.9993,.9998,1.00026,1.00022,1.00026,1.00022,1.00026,1.00022,1.00026,1,1.00016,.99977,.99959,.99977,.99959,.99977,.99959,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00026,.99998,1.00026,.8121,1.00026,.99998,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,.99977,1.00026,1.00016,1.00022,1.00001,.99973,1.00001,1.00026,1,1.00026,1,1.00026,1,1.0006,.99973,.99977,.99973,1,.99982,1.00022,1.00026,1.00001,.99973,1.00026,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99977,1,1,1.00026,.99969,.99972,.99981,.9998,1.0006,.99977,.99977,1.00022,.91155,1.00001,1.00026,.99977,1.00022,1.0006,.99977,1.00001,.99999,.99977,.99966,1.00022,1.00032,1.00001,.99944,1.00026,1.00001,.99968,1.00001,1.00047,1,1.0006,1.00001,.99981,1.00101,1.00026,1.0006,.99948,.99981,1.00064,.99973,.99942,1.00101,1.00061,1.00026,1.00069,1.0006,1.00014,.99973,1.01322,.99973,1.00065,1.00026,1.00012,.99923,1,1.00064,1.00076,.99948,1.00055,1.00063,1.00007,.99943,1.0006,.99948,1.00026,.99948,.99943,1.00001,1.00001,1.00029,1.00038,1.00035,1.00001,1.0006,1.0006,.99973,.99978,1.00001,1.00057,.99989,.99967,.99964,.99967,.99977,.99999,.99977,1.00038,.99977,1.00001,.99973,1.00066,.99967,.99967,1.00041,.99998,.99999,.99977,1.00022,.99967,1.00001,.99977,1.00026,.99964,1.00031,1.00001,.99999,.99999,1,1.00023,1,1,.99999,1.00035,1.00001,.99999,.99973,.99977,.99999,1.00058,.99973,.99973,.99955,.9995,1.00026,1.00026,1.00032,.99989,1.00034,.99999,1.00026,1.00026,1.00026,.99973,.45998,.99973,1.00026,.99973,1.00001,.99999,.99982,.99994,.99996,1,1.00042,1.00044,1.00029,1.00023,.99973,.99973,1.00026,.99949,1.00002,.99973,1.0006,1.0006,1.0006,.99975,1.00026,1.00026,1.00032,.98685,.99973,1.00026,1,1,.99966,1.00044,1.00016,1.00022,1.00016,1.00022,1.00016,1.00022,1.00001,.99973,1,1,.99973,1,1,.99955,1.0006,1.0006,1.0006,1.0006,1,1,1,.99973,.99973,.99972,1,1,1.00106,.99999,.99998,.99998,.99999,.99998,1.66475,1,.99973,.99973,1,.99973,.99971,.99978,1,1,.99991,.99984,1.00002,1.00002,1.00002,1.00002,1.00098,1,1,1,1.00049,1,1,.99972,1,1.20985,1.39713,1.00003,1.00031,1.00015,1,.99561,1.00027,1.00031,1.00031,.99915,1.00031,1.00031,.99999,1.00003,.99999,.99999,1.41144,1.6,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.40579,1.40579,1.36625,.99999,1,.99861,.99861,1,1.00026,1.00026,1.00026,1.00026,.99972,.99999,.99999,.99999,.99999,1.40483,1,.99977,1.00054,1,1,.99953,.99962,1.00042,.9995,1,1,1,1,1,1,1,1,.99998,.99998,.99998,.99998,1,1,1,1,1,1,1,1,1,1,1],Il={lineHeight:1.35,lineGap:.2},Bl=[.76116,1,1,1.0006,1.0006,1.00006,.99973,.99973,.99982,1.00001,1.00043,.99998,.99998,.99959,1.00003,1.0006,.99998,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,1.0006,1,1.00003,1.00003,1.00003,.99973,.99987,1.00001,1.00001,.99977,.99977,1.00001,1.00026,1.00022,.99977,1.0006,1,1.00001,.99973,.99999,.99977,1.00022,1.00001,1.00022,.99977,1.00001,1.00026,.99977,1.00001,1.00016,1.00001,1.00001,1.00026,1.0006,1.0006,1.0006,.99949,.99973,.99998,.99973,.99973,1,.99973,.99973,1.0006,.99973,.99973,.99924,.99924,1,.99924,.99999,.99973,.99973,.99973,.99973,.99998,1,1.0006,.99973,1,.99977,1,1,1,1.00005,1.0009,1.00005,1.00003,.99998,.99973,.99973,.99973,.99973,1.0009,.99973,.99998,1.00025,.99968,.99973,1.00003,1.00025,.60299,1.00024,1.06409,1,1,.99998,1,.9998,1.0006,.99998,1,.99936,.99973,1.00002,1.00002,1.00002,1.00026,1.00001,1.00001,1.00001,1.00001,1.00001,1.00001,1,.99977,1.00001,1.00001,1.00001,1.00001,1.0006,1.0006,1.0006,1.0006,.99977,.99977,1.00022,1.00022,1.00022,1.00022,1.00022,1.00003,1.00022,.99977,.99977,.99977,.99977,1.00001,1.00001,1.00026,.99973,.99973,.99973,.99973,.99973,.99973,.99982,1,.99973,.99973,.99973,.99973,1.0006,1.0006,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,1.06409,1.00026,.99973,.99973,.99973,.99973,1,.99973,1,1.00001,.99973,1.00001,.99973,1.00001,.99973,.99977,1,.99977,1,.99977,1,.99977,1,.99977,1.0288,.99977,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,.99977,.99973,.99977,.99973,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,.99924,1.0006,1.0006,.99946,1.00034,1,.99924,1.00001,1,1,.99973,.99924,.99973,.99924,.99973,1.06311,.99973,1.00024,.99973,.99924,.99977,.99973,.99977,.99973,.99977,.99973,1.00041,.9998,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,1,1.00016,.99977,.99998,.99977,.99998,.99977,.99998,1.00001,1,1.00001,1,1.00001,1,1.00001,1,1.00026,1.0006,1.00026,.89547,1.00026,1.0006,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,1.00016,.99977,1.00001,1,1.00001,1.00026,1,1.00026,1,1.00026,1,.99924,.99973,1.00001,.99973,1,.99982,1.00022,1.00026,1.00001,1,1.00026,1.0006,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,1.00001,1,1.00054,.99977,1.00084,1.00007,.99973,1.00013,.99924,1.00001,1.00001,.99945,.91221,1.00001,1.00026,.99977,1.00022,1.0006,1.00001,1.00001,.99999,.99977,.99933,1.00022,1.00054,1.00001,1.00065,1.00026,1.00001,1.0001,1.00001,1.00052,1,1.0006,1.00001,.99945,.99897,.99968,.99924,1.00036,.99945,.99949,1,1.0006,.99897,.99918,.99968,.99911,.99924,1,.99962,1.01487,1,1.0005,.99973,1.00012,1.00043,1,.99995,.99994,1.00036,.99947,1.00019,1.00063,1.00025,.99924,1.00036,.99973,1.00036,1.00025,1.00001,1.00001,1.00027,1.0001,1.00068,1.00001,1.0006,1.0006,1,1.00008,.99957,.99972,.9994,.99954,.99975,1.00051,1.00001,1.00019,1.00001,1.0001,.99986,1.00001,1.00001,1.00038,.99954,.99954,.9994,1.00066,.99999,.99977,1.00022,1.00054,1.00001,.99977,1.00026,.99975,1.0001,1.00001,.99993,.9995,.99955,1.00016,.99978,.99974,1.00019,1.00022,.99955,1.00053,.99973,1.00089,1.00005,.99967,1.00048,.99973,1.00002,1.00034,.99973,.99973,.99964,1.00006,1.00066,.99947,.99973,.98894,.99973,1,.44898,1,.99946,1,1.00039,1.00082,.99991,.99991,.99985,1.00022,1.00023,1.00061,1.00006,.99966,.99973,.99973,.99973,1.00019,1.0008,1,.99924,.99924,.99924,.99983,1.00044,.99973,.99964,.98332,1,.99973,1,1,.99962,.99895,1.00016,.99977,1.00016,.99977,1.00016,.99977,1.00001,1,1,1,.99973,1,1,.99955,.99924,.99924,.99924,.99924,.99998,.99998,.99998,.99973,.99973,.99972,1,1,1.00267,.99999,.99998,.99998,1,.99998,1.66475,1,.99973,.99973,1.00023,.99973,1.00423,.99925,.99999,1,.99991,.99984,1.00002,1.00002,1.00002,1.00002,1.00049,1,1.00245,1,1,1,1,.96329,1,1.20985,1.39713,1.00003,.8254,1.00015,1,1.00035,1.00027,1.00031,1.00031,1.00003,1.00031,1.00031,.99999,1.00003,.99999,.99999,1.41144,1.6,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.40579,1.40579,1.36625,.99999,1,.99861,.99861,1,1.00026,1.00026,1.00026,1.00026,.95317,.99999,.99999,.99999,.99999,1.40483,1,.99977,1.00054,1,1,.99953,.99962,1.00042,.9995,1,1,1,1,1,1,1,1,.99998,.99998,.99998,.99998,1,1,1,1,1,1,1,1,1,1,1],Fl={lineHeight:1.35,lineGap:.2},Ml=[.76116,1,1,1.0006,1.0006,1.00006,.99973,.99973,.99982,1.00001,1.00043,.99998,.99998,.99959,1.00003,1.0006,.99998,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,.99973,1.0006,1,1.00003,1.00003,1.00003,.99973,.99987,1.00001,1.00001,.99977,.99977,1.00001,1.00026,1.00022,.99977,1.0006,1,1.00001,.99973,.99999,.99977,1.00022,1.00001,1.00022,.99977,1.00001,1.00026,.99977,1.00001,1.00016,1.00001,1.00001,1.00026,1.0006,1.0006,1.0006,.99949,.99973,.99998,.99973,.99973,1,.99973,.99973,1.0006,.99973,.99973,.99924,.99924,1,.99924,.99999,.99973,.99973,.99973,.99973,.99998,1,1.0006,.99973,1,.99977,1,1,1,1.00005,1.0009,1.00005,1.00003,.99998,.99973,.99973,.99973,.99973,1.0009,.99973,.99998,1.00025,.99968,.99973,1.00003,1.00025,.60299,1.00024,1.06409,1,1,.99998,1,.9998,1.0006,.99998,1,.99936,.99973,1.00002,1.00002,1.00002,1.00026,1.00001,1.00001,1.00001,1.00001,1.00001,1.00001,1,.99977,1.00001,1.00001,1.00001,1.00001,1.0006,1.0006,1.0006,1.0006,.99977,.99977,1.00022,1.00022,1.00022,1.00022,1.00022,1.00003,1.00022,.99977,.99977,.99977,.99977,1.00001,1.00001,1.00026,.99973,.99973,.99973,.99973,.99973,.99973,.99982,1,.99973,.99973,.99973,.99973,1.0006,1.0006,1.0006,1.0006,.99973,.99973,.99973,.99973,.99973,.99973,.99973,1.06409,1.00026,.99973,.99973,.99973,.99973,1,.99973,1,1.00001,.99973,1.00001,.99973,1.00001,.99973,.99977,1,.99977,1,.99977,1,.99977,1,.99977,1.04596,.99977,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00001,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,.99977,.99973,.99977,.99973,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,1.0006,.99924,1.0006,1.0006,1.00019,1.00034,1,.99924,1.00001,1,1,.99973,.99924,.99973,.99924,.99973,1.02572,.99973,1.00005,.99973,.99924,.99977,.99973,.99977,.99973,.99977,.99973,.99999,.9998,.99973,1.00022,.99973,1.00022,.99973,1.00022,.99973,1,1.00016,.99977,.99998,.99977,.99998,.99977,.99998,1.00001,1,1.00001,1,1.00001,1,1.00001,1,1.00026,1.0006,1.00026,.84533,1.00026,1.0006,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,.99977,.99973,1.00016,.99977,1.00001,1,1.00001,1.00026,1,1.00026,1,1.00026,1,.99924,.99973,1.00001,.99973,1,.99982,1.00022,1.00026,1.00001,1,1.00026,1.0006,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99998,.99928,1,.99977,1.00013,1.00055,.99947,.99945,.99941,.99924,1.00001,1.00001,1.0004,.91621,1.00001,1.00026,.99977,1.00022,1.0006,1.00001,1.00005,.99999,.99977,1.00015,1.00022,.99977,1.00001,.99973,1.00026,1.00001,1.00019,1.00001,.99946,1,1.0006,1.00001,.99978,1.00045,.99973,.99924,1.00023,.99978,.99966,1,1.00065,1.00045,1.00019,.99973,.99973,.99924,1,1,.96499,1,1.00055,.99973,1.00008,1.00027,1,.9997,.99995,1.00023,.99933,1.00019,1.00015,1.00031,.99924,1.00023,.99973,1.00023,1.00031,1.00001,.99928,1.00029,1.00092,1.00035,1.00001,1.0006,1.0006,1,.99988,.99975,1,1.00082,.99561,.9996,1.00035,1.00001,.99962,1.00001,1.00092,.99964,1.00001,.99963,.99999,1.00035,1.00035,1.00082,.99962,.99999,.99977,1.00022,1.00035,1.00001,.99977,1.00026,.9996,.99967,1.00001,1.00034,1.00074,1.00054,1.00053,1.00063,.99971,.99962,1.00035,.99975,.99977,.99973,1.00043,.99953,1.0007,.99915,.99973,1.00008,.99892,1.00073,1.00073,1.00114,.99915,1.00073,.99955,.99973,1.00092,.99973,1,.99998,1,1.0003,1,1.00043,1.00001,.99969,1.0003,1,1.00035,1.00001,.9995,1,1.00092,.99973,.99973,.99973,1.0007,.9995,1,.99924,1.0006,.99924,.99972,1.00062,.99973,1.00114,1.00073,1,.99955,1,1,1.00047,.99968,1.00016,.99977,1.00016,.99977,1.00016,.99977,1.00001,1,1,1,.99973,1,1,.99955,.99924,.99924,.99924,.99924,.99998,.99998,.99998,.99973,.99973,.99972,1,1,1.00267,.99999,.99998,.99998,1,.99998,1.66475,1,.99973,.99973,1.00023,.99973,.99971,.99925,1.00023,1,.99991,.99984,1.00002,1.00002,1.00002,1.00002,1,1,1,1,1,1,1,.96329,1,1.20985,1.39713,1.00003,.8254,1.00015,1,1.00035,1.00027,1.00031,1.00031,.99915,1.00031,1.00031,.99999,1.00003,.99999,.99999,1.41144,1.6,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.41144,1.40579,1.40579,1.36625,.99999,1,.99861,.99861,1,1.00026,1.00026,1.00026,1.00026,.95317,.99999,.99999,.99999,.99999,1.40483,1,.99977,1.00054,1,1,.99953,.99962,1.00042,.9995,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],Tl={lineHeight:1.2,lineGap:.2},Rl=[365,0,333,278,333,474,556,556,889,722,238,333,333,389,584,278,333,278,278,556,556,556,556,556,556,556,556,556,556,333,333,584,584,584,611,975,722,722,722,722,667,611,778,722,278,556,722,611,833,722,778,667,778,722,667,611,722,667,944,667,667,611,333,278,333,584,556,333,556,611,556,611,556,333,611,611,278,278,556,278,889,611,611,611,611,389,556,333,611,556,778,556,556,500,389,280,389,584,333,556,556,556,556,280,556,333,737,370,556,584,737,552,400,549,333,333,333,576,556,278,333,333,365,556,834,834,834,611,722,722,722,722,722,722,1e3,722,667,667,667,667,278,278,278,278,722,722,778,778,778,778,778,584,778,722,722,722,722,667,667,611,556,556,556,556,556,556,889,556,556,556,556,556,278,278,278,278,611,611,611,611,611,611,611,549,611,611,611,611,611,556,611,556,722,556,722,556,722,556,722,556,722,556,722,556,722,556,722,719,722,611,667,556,667,556,667,556,667,556,667,556,778,611,778,611,778,611,778,611,722,611,722,611,278,278,278,278,278,278,278,278,278,278,785,556,556,278,722,556,556,611,278,611,278,611,385,611,479,611,278,722,611,722,611,722,611,708,723,611,778,611,778,611,778,611,1e3,944,722,389,722,389,722,389,667,556,667,556,667,556,667,556,611,333,611,479,611,333,722,611,722,611,722,611,722,611,722,611,722,611,944,778,667,556,667,611,500,611,500,611,500,278,556,722,556,1e3,889,778,611,667,556,611,333,333,333,333,333,333,333,333,333,333,333,465,722,333,853,906,474,825,927,838,278,722,722,601,719,667,611,722,778,278,722,667,833,722,644,778,722,667,600,611,667,821,667,809,802,278,667,615,451,611,278,582,615,610,556,606,475,460,611,541,278,558,556,612,556,445,611,766,619,520,684,446,582,715,576,753,845,278,582,611,582,845,667,669,885,567,711,667,278,276,556,1094,1062,875,610,722,622,719,722,719,722,567,712,667,904,626,719,719,610,702,833,722,778,719,667,722,611,622,854,667,730,703,1005,1019,870,979,719,711,1031,719,556,618,615,417,635,556,709,497,615,615,500,635,740,604,611,604,611,556,490,556,875,556,615,581,833,844,729,854,615,552,854,583,556,556,611,417,552,556,278,281,278,969,906,611,500,615,556,604,778,611,487,447,944,778,944,778,944,778,667,556,333,333,556,1e3,1e3,552,278,278,278,278,500,500,500,556,556,350,1e3,1e3,240,479,333,333,604,333,167,396,556,556,1094,556,885,489,1115,1e3,768,600,834,834,834,834,1e3,500,1e3,500,1e3,500,500,494,612,823,713,584,549,713,979,722,274,549,549,583,549,549,604,584,604,604,708,625,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,729,604,604,354,354,1e3,990,990,990,990,494,604,604,604,604,354,1021,1052,917,750,750,531,656,594,510,500,750,750,611,611,333,333,333,333,333,333,333,333,222,222,333,333,333,333,333,333,333,333],Nl=[-1,-1,-1,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,161,162,163,164,165,166,167,168,169,170,171,172,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,402,506,507,508,509,510,511,536,537,538,539,710,711,713,728,729,730,731,732,733,900,901,902,903,904,905,906,908,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1138,1139,1168,1169,7808,7809,7810,7811,7812,7813,7922,7923,8208,8209,8211,8212,8213,8215,8216,8217,8218,8219,8220,8221,8222,8224,8225,8226,8230,8240,8242,8243,8249,8250,8252,8254,8260,8319,8355,8356,8359,8364,8453,8467,8470,8482,8486,8494,8539,8540,8541,8542,8592,8593,8594,8595,8596,8597,8616,8706,8710,8719,8721,8722,8730,8734,8735,8745,8747,8776,8800,8801,8804,8805,8962,8976,8992,8993,9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9552,9553,9554,9555,9556,9557,9558,9559,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,9570,9571,9572,9573,9574,9575,9576,9577,9578,9579,9580,9600,9604,9608,9612,9616,9617,9618,9619,9632,9633,9642,9643,9644,9650,9658,9660,9668,9674,9675,9679,9688,9689,9702,9786,9787,9788,9792,9794,9824,9827,9829,9830,9834,9835,9836,61441,61442,61445,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],Dl=[365,0,333,278,333,474,556,556,889,722,238,333,333,389,584,278,333,278,278,556,556,556,556,556,556,556,556,556,556,333,333,584,584,584,611,975,722,722,722,722,667,611,778,722,278,556,722,611,833,722,778,667,778,722,667,611,722,667,944,667,667,611,333,278,333,584,556,333,556,611,556,611,556,333,611,611,278,278,556,278,889,611,611,611,611,389,556,333,611,556,778,556,556,500,389,280,389,584,333,556,556,556,556,280,556,333,737,370,556,584,737,552,400,549,333,333,333,576,556,278,333,333,365,556,834,834,834,611,722,722,722,722,722,722,1e3,722,667,667,667,667,278,278,278,278,722,722,778,778,778,778,778,584,778,722,722,722,722,667,667,611,556,556,556,556,556,556,889,556,556,556,556,556,278,278,278,278,611,611,611,611,611,611,611,549,611,611,611,611,611,556,611,556,722,556,722,556,722,556,722,556,722,556,722,556,722,556,722,740,722,611,667,556,667,556,667,556,667,556,667,556,778,611,778,611,778,611,778,611,722,611,722,611,278,278,278,278,278,278,278,278,278,278,782,556,556,278,722,556,556,611,278,611,278,611,396,611,479,611,278,722,611,722,611,722,611,708,723,611,778,611,778,611,778,611,1e3,944,722,389,722,389,722,389,667,556,667,556,667,556,667,556,611,333,611,479,611,333,722,611,722,611,722,611,722,611,722,611,722,611,944,778,667,556,667,611,500,611,500,611,500,278,556,722,556,1e3,889,778,611,667,556,611,333,333,333,333,333,333,333,333,333,333,333,333,722,333,854,906,473,844,930,847,278,722,722,610,671,667,611,722,778,278,722,667,833,722,657,778,718,667,590,611,667,822,667,829,781,278,667,620,479,611,278,591,620,621,556,610,479,492,611,558,278,566,556,603,556,450,611,712,605,532,664,409,591,704,578,773,834,278,591,611,591,834,667,667,886,614,719,667,278,278,556,1094,1042,854,622,719,677,719,722,708,722,614,722,667,927,643,719,719,615,687,833,722,778,719,667,722,611,677,781,667,729,708,979,989,854,1e3,708,719,1042,729,556,619,604,534,618,556,736,510,611,611,507,622,740,604,611,611,611,556,889,556,885,556,646,583,889,935,707,854,594,552,865,589,556,556,611,469,563,556,278,278,278,969,906,611,507,619,556,611,778,611,575,467,944,778,944,778,944,778,667,556,333,333,556,1e3,1e3,552,278,278,278,278,500,500,500,556,556,350,1e3,1e3,240,479,333,333,604,333,167,396,556,556,1104,556,885,516,1146,1e3,768,600,834,834,834,834,999,500,1e3,500,1e3,500,500,494,612,823,713,584,549,713,979,722,274,549,549,583,549,549,604,584,604,604,708,625,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,729,604,604,354,354,1e3,990,990,990,990,494,604,604,604,604,354,1021,1052,917,750,750,531,656,594,510,500,750,750,611,611,333,333,333,333,333,333,333,333,222,222,333,333,333,333,333,333,333,333],Ol=[-1,-1,-1,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,161,162,163,164,165,166,167,168,169,170,171,172,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,402,506,507,508,509,510,511,536,537,538,539,710,711,713,728,729,730,731,732,733,900,901,902,903,904,905,906,908,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1138,1139,1168,1169,7808,7809,7810,7811,7812,7813,7922,7923,8208,8209,8211,8212,8213,8215,8216,8217,8218,8219,8220,8221,8222,8224,8225,8226,8230,8240,8242,8243,8249,8250,8252,8254,8260,8319,8355,8356,8359,8364,8453,8467,8470,8482,8486,8494,8539,8540,8541,8542,8592,8593,8594,8595,8596,8597,8616,8706,8710,8719,8721,8722,8730,8734,8735,8745,8747,8776,8800,8801,8804,8805,8962,8976,8992,8993,9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9552,9553,9554,9555,9556,9557,9558,9559,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,9570,9571,9572,9573,9574,9575,9576,9577,9578,9579,9580,9600,9604,9608,9612,9616,9617,9618,9619,9632,9633,9642,9643,9644,9650,9658,9660,9668,9674,9675,9679,9688,9689,9702,9786,9787,9788,9792,9794,9824,9827,9829,9830,9834,9835,9836,61441,61442,61445,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],Pl=[365,0,333,278,278,355,556,556,889,667,191,333,333,389,584,278,333,278,278,556,556,556,556,556,556,556,556,556,556,278,278,584,584,584,556,1015,667,667,722,722,667,611,778,722,278,500,667,556,833,722,778,667,778,722,667,611,722,667,944,667,667,611,278,278,278,469,556,333,556,556,500,556,556,278,556,556,222,222,500,222,833,556,556,556,556,333,500,278,556,500,722,500,500,500,334,260,334,584,333,556,556,556,556,260,556,333,737,370,556,584,737,552,400,549,333,333,333,576,537,278,333,333,365,556,834,834,834,611,667,667,667,667,667,667,1e3,722,667,667,667,667,278,278,278,278,722,722,778,778,778,778,778,584,778,722,722,722,722,667,667,611,556,556,556,556,556,556,889,500,556,556,556,556,278,278,278,278,556,556,556,556,556,556,556,549,611,556,556,556,556,500,556,500,667,556,667,556,667,556,722,500,722,500,722,500,722,500,722,625,722,556,667,556,667,556,667,556,667,556,667,556,778,556,778,556,778,556,778,556,722,556,722,556,278,278,278,278,278,278,278,222,278,278,733,444,500,222,667,500,500,556,222,556,222,556,281,556,400,556,222,722,556,722,556,722,556,615,723,556,778,556,778,556,778,556,1e3,944,722,333,722,333,722,333,667,500,667,500,667,500,667,500,611,278,611,354,611,278,722,556,722,556,722,556,722,556,722,556,722,556,944,722,667,500,667,611,500,611,500,611,500,222,556,667,556,1e3,889,778,611,667,500,611,278,333,333,333,333,333,333,333,333,333,333,333,667,278,789,846,389,794,865,775,222,667,667,570,671,667,611,722,778,278,667,667,833,722,648,778,725,667,600,611,667,837,667,831,761,278,667,570,439,555,222,550,570,571,500,556,439,463,555,542,222,500,492,548,500,447,556,670,573,486,603,374,550,652,546,728,779,222,550,556,550,779,667,667,843,544,708,667,278,278,500,1066,982,844,589,715,639,724,667,651,667,544,704,667,917,614,715,715,589,686,833,722,778,725,667,722,611,639,795,667,727,673,920,923,805,886,651,694,1022,682,556,562,522,493,553,556,688,465,556,556,472,564,686,550,556,556,556,500,833,500,835,500,572,518,830,851,621,736,526,492,752,534,556,556,556,378,496,500,222,222,222,910,828,556,472,565,500,556,778,556,492,339,944,722,944,722,944,722,667,500,333,333,556,1e3,1e3,552,222,222,222,222,333,333,333,556,556,350,1e3,1e3,188,354,333,333,500,333,167,365,556,556,1094,556,885,323,1083,1e3,768,600,834,834,834,834,1e3,500,998,500,1e3,500,500,494,612,823,713,584,549,713,979,719,274,549,549,584,549,549,604,584,604,604,708,625,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,729,604,604,354,354,1e3,990,990,990,990,494,604,604,604,604,354,1021,1052,917,750,750,531,656,594,510,500,750,750,500,500,333,333,333,333,333,333,333,333,222,222,294,294,324,324,316,328,398,285],El=[-1,-1,-1,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,161,162,163,164,165,166,167,168,169,170,171,172,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,402,506,507,508,509,510,511,536,537,538,539,710,711,713,728,729,730,731,732,733,900,901,902,903,904,905,906,908,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1138,1139,1168,1169,7808,7809,7810,7811,7812,7813,7922,7923,8208,8209,8211,8212,8213,8215,8216,8217,8218,8219,8220,8221,8222,8224,8225,8226,8230,8240,8242,8243,8249,8250,8252,8254,8260,8319,8355,8356,8359,8364,8453,8467,8470,8482,8486,8494,8539,8540,8541,8542,8592,8593,8594,8595,8596,8597,8616,8706,8710,8719,8721,8722,8730,8734,8735,8745,8747,8776,8800,8801,8804,8805,8962,8976,8992,8993,9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9552,9553,9554,9555,9556,9557,9558,9559,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,9570,9571,9572,9573,9574,9575,9576,9577,9578,9579,9580,9600,9604,9608,9612,9616,9617,9618,9619,9632,9633,9642,9643,9644,9650,9658,9660,9668,9674,9675,9679,9688,9689,9702,9786,9787,9788,9792,9794,9824,9827,9829,9830,9834,9835,9836,61441,61442,61445,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],Ll=[365,0,333,278,278,355,556,556,889,667,191,333,333,389,584,278,333,278,278,556,556,556,556,556,556,556,556,556,556,278,278,584,584,584,556,1015,667,667,722,722,667,611,778,722,278,500,667,556,833,722,778,667,778,722,667,611,722,667,944,667,667,611,278,278,278,469,556,333,556,556,500,556,556,278,556,556,222,222,500,222,833,556,556,556,556,333,500,278,556,500,722,500,500,500,334,260,334,584,333,556,556,556,556,260,556,333,737,370,556,584,737,552,400,549,333,333,333,576,537,278,333,333,365,556,834,834,834,611,667,667,667,667,667,667,1e3,722,667,667,667,667,278,278,278,278,722,722,778,778,778,778,778,584,778,722,722,722,722,667,667,611,556,556,556,556,556,556,889,500,556,556,556,556,278,278,278,278,556,556,556,556,556,556,556,549,611,556,556,556,556,500,556,500,667,556,667,556,667,556,722,500,722,500,722,500,722,500,722,615,722,556,667,556,667,556,667,556,667,556,667,556,778,556,778,556,778,556,778,556,722,556,722,556,278,278,278,278,278,278,278,222,278,278,735,444,500,222,667,500,500,556,222,556,222,556,292,556,334,556,222,722,556,722,556,722,556,604,723,556,778,556,778,556,778,556,1e3,944,722,333,722,333,722,333,667,500,667,500,667,500,667,500,611,278,611,375,611,278,722,556,722,556,722,556,722,556,722,556,722,556,944,722,667,500,667,611,500,611,500,611,500,222,556,667,556,1e3,889,778,611,667,500,611,278,333,333,333,333,333,333,333,333,333,333,333,667,278,784,838,384,774,855,752,222,667,667,551,668,667,611,722,778,278,667,668,833,722,650,778,722,667,618,611,667,798,667,835,748,278,667,578,446,556,222,547,578,575,500,557,446,441,556,556,222,500,500,576,500,448,556,690,569,482,617,395,547,648,525,713,781,222,547,556,547,781,667,667,865,542,719,667,278,278,500,1057,1010,854,583,722,635,719,667,656,667,542,677,667,923,604,719,719,583,656,833,722,778,719,667,722,611,635,760,667,740,667,917,938,792,885,656,719,1010,722,556,573,531,365,583,556,669,458,559,559,438,583,688,552,556,542,556,500,458,500,823,500,573,521,802,823,625,719,521,510,750,542,556,556,556,365,510,500,222,278,222,906,812,556,438,559,500,552,778,556,489,411,944,722,944,722,944,722,667,500,333,333,556,1e3,1e3,552,222,222,222,222,333,333,333,556,556,350,1e3,1e3,188,354,333,333,500,333,167,365,556,556,1094,556,885,323,1073,1e3,768,600,834,834,834,834,1e3,500,1e3,500,1e3,500,500,494,612,823,713,584,549,713,979,719,274,549,549,583,549,549,604,584,604,604,708,625,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,708,729,604,604,354,354,1e3,990,990,990,990,494,604,604,604,604,354,1021,1052,917,750,750,531,656,594,510,500,750,750,500,500,333,333,333,333,333,333,333,333,222,222,294,294,324,324,316,328,398,285],_l=[-1,-1,-1,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,161,162,163,164,165,166,167,168,169,170,171,172,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211,212,213,214,215,216,217,218,219,220,221,222,223,224,225,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,242,243,244,245,246,247,248,249,250,251,252,253,254,255,256,257,258,259,260,261,262,263,264,265,266,267,268,269,270,271,272,273,274,275,276,277,278,279,280,281,282,283,284,285,286,287,288,289,290,291,292,293,294,295,296,297,298,299,300,301,302,303,304,305,306,307,308,309,310,311,312,313,314,315,316,317,318,319,320,321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,340,341,342,343,344,345,346,347,348,349,350,351,352,353,354,355,356,357,358,359,360,361,362,363,364,365,366,367,368,369,370,371,372,373,374,375,376,377,378,379,380,381,382,383,402,506,507,508,509,510,511,536,537,538,539,710,711,713,728,729,730,731,732,733,900,901,902,903,904,905,906,908,910,911,912,913,914,915,916,917,918,919,920,921,922,923,924,925,926,927,928,929,931,932,933,934,935,936,937,938,939,940,941,942,943,944,945,946,947,948,949,950,951,952,953,954,955,956,957,958,959,960,961,962,963,964,965,966,967,968,969,970,971,972,973,974,1024,1025,1026,1027,1028,1029,1030,1031,1032,1033,1034,1035,1036,1037,1038,1039,1040,1041,1042,1043,1044,1045,1046,1047,1048,1049,1050,1051,1052,1053,1054,1055,1056,1057,1058,1059,1060,1061,1062,1063,1064,1065,1066,1067,1068,1069,1070,1071,1072,1073,1074,1075,1076,1077,1078,1079,1080,1081,1082,1083,1084,1085,1086,1087,1088,1089,1090,1091,1092,1093,1094,1095,1096,1097,1098,1099,1100,1101,1102,1103,1104,1105,1106,1107,1108,1109,1110,1111,1112,1113,1114,1115,1116,1117,1118,1119,1138,1139,1168,1169,7808,7809,7810,7811,7812,7813,7922,7923,8208,8209,8211,8212,8213,8215,8216,8217,8218,8219,8220,8221,8222,8224,8225,8226,8230,8240,8242,8243,8249,8250,8252,8254,8260,8319,8355,8356,8359,8364,8453,8467,8470,8482,8486,8494,8539,8540,8541,8542,8592,8593,8594,8595,8596,8597,8616,8706,8710,8719,8721,8722,8730,8734,8735,8745,8747,8776,8800,8801,8804,8805,8962,8976,8992,8993,9472,9474,9484,9488,9492,9496,9500,9508,9516,9524,9532,9552,9553,9554,9555,9556,9557,9558,9559,9560,9561,9562,9563,9564,9565,9566,9567,9568,9569,9570,9571,9572,9573,9574,9575,9576,9577,9578,9579,9580,9600,9604,9608,9612,9616,9617,9618,9619,9632,9633,9642,9643,9644,9650,9658,9660,9668,9674,9675,9679,9688,9689,9702,9786,9787,9788,9792,9794,9824,9827,9829,9830,9834,9835,9836,61441,61442,61445,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1],Ul=[1.36898,1,1,.72706,.80479,.83734,.98894,.99793,.9897,.93884,.86209,.94292,.94292,1.16661,1.02058,.93582,.96694,.93582,1.19137,.99793,.99793,.99793,.99793,.99793,.99793,.99793,.99793,.99793,.99793,.78076,.78076,1.02058,1.02058,1.02058,.72851,.78966,.90838,.83637,.82391,.96376,.80061,.86275,.8768,.95407,1.0258,.73901,.85022,.83655,1.0156,.95546,.92179,.87107,.92179,.82114,.8096,.89713,.94438,.95353,.94083,.91905,.90406,.9446,.94292,1.18777,.94292,1.02058,.89903,.90088,.94938,.97898,.81093,.97571,.94938,1.024,.9577,.95933,.98621,1.0474,.97455,.98981,.9672,.95933,.9446,.97898,.97407,.97646,.78036,1.10208,.95442,.95298,.97579,.9332,.94039,.938,.80687,1.01149,.80687,1.02058,.80479,.99793,.99793,.99793,.99793,1.01149,1.00872,.90088,.91882,1.0213,.8361,1.02058,.62295,.54324,.89022,1.08595,1,1,.90088,1,.97455,.93582,.90088,1,1.05686,.8361,.99642,.99642,.99642,.72851,.90838,.90838,.90838,.90838,.90838,.90838,.868,.82391,.80061,.80061,.80061,.80061,1.0258,1.0258,1.0258,1.0258,.97484,.95546,.92179,.92179,.92179,.92179,.92179,1.02058,.92179,.94438,.94438,.94438,.94438,.90406,.86958,.98225,.94938,.94938,.94938,.94938,.94938,.94938,.9031,.81093,.94938,.94938,.94938,.94938,.98621,.98621,.98621,.98621,.93969,.95933,.9446,.9446,.9446,.9446,.9446,1.08595,.9446,.95442,.95442,.95442,.95442,.94039,.97898,.94039,.90838,.94938,.90838,.94938,.90838,.94938,.82391,.81093,.82391,.81093,.82391,.81093,.82391,.81093,.96376,.84313,.97484,.97571,.80061,.94938,.80061,.94938,.80061,.94938,.80061,.94938,.80061,.94938,.8768,.9577,.8768,.9577,.8768,.9577,1,1,.95407,.95933,.97069,.95933,1.0258,.98621,1.0258,.98621,1.0258,.98621,1.0258,.98621,1.0258,.98621,.887,1.01591,.73901,1.0474,1,1,.97455,.83655,.98981,1,1,.83655,.73977,.83655,.73903,.84638,1.033,.95546,.95933,1,1,.95546,.95933,.8271,.95417,.95933,.92179,.9446,.92179,.9446,.92179,.9446,.936,.91964,.82114,.97646,1,1,.82114,.97646,.8096,.78036,.8096,.78036,1,1,.8096,.78036,1,1,.89713,.77452,.89713,1.10208,.94438,.95442,.94438,.95442,.94438,.95442,.94438,.95442,.94438,.95442,.94438,.95442,.94083,.97579,.90406,.94039,.90406,.9446,.938,.9446,.938,.9446,.938,1,.99793,.90838,.94938,.868,.9031,.92179,.9446,1,1,.89713,1.10208,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90989,.9358,.91945,.83181,.75261,.87992,.82976,.96034,.83689,.97268,1.0078,.90838,.83637,.8019,.90157,.80061,.9446,.95407,.92436,1.0258,.85022,.97153,1.0156,.95546,.89192,.92179,.92361,.87107,.96318,.89713,.93704,.95638,.91905,.91709,.92796,1.0258,.93704,.94836,1.0373,.95933,1.0078,.95871,.94836,.96174,.92601,.9498,.98607,.95776,.95933,1.05453,1.0078,.98275,.9314,.95617,.91701,1.05993,.9446,.78367,.9553,1,.86832,1.0128,.95871,.99394,.87548,.96361,.86774,1.0078,.95871,.9446,.95871,.86774,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.94083,.97579,.94083,.97579,.94083,.97579,.90406,.94039,.96694,1,.89903,1,1,1,.93582,.93582,.93582,1,.908,.908,.918,.94219,.94219,.96544,1,1.285,1,1,.81079,.81079,1,1,.74854,1,1,1,1,.99793,1,1,1,.65,1,1.36145,1,1,1,1,1,1,1,1,1,1,1,1.17173,1,.80535,.76169,1.02058,1.0732,1.05486,1,1,1.30692,1.08595,1.08595,1,1.08595,1.08595,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.16161,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],ql={lineHeight:1.2,lineGap:.2},jl=[1.36898,1,1,.66227,.80779,.81625,.97276,.97276,.97733,.92222,.83266,.94292,.94292,1.16148,1.02058,.93582,.96694,.93582,1.17337,.97276,.97276,.97276,.97276,.97276,.97276,.97276,.97276,.97276,.97276,.78076,.78076,1.02058,1.02058,1.02058,.71541,.76813,.85576,.80591,.80729,.94299,.77512,.83655,.86523,.92222,.98621,.71743,.81698,.79726,.98558,.92222,.90637,.83809,.90637,.80729,.76463,.86275,.90699,.91605,.9154,.85308,.85458,.90531,.94292,1.21296,.94292,1.02058,.89903,1.18616,.99613,.91677,.78216,.91677,.90083,.98796,.9135,.92168,.95381,.98981,.95298,.95381,.93459,.92168,.91513,.92004,.91677,.95077,.748,1.04502,.91677,.92061,.94236,.89544,.89364,.9,.80687,.8578,.80687,1.02058,.80779,.97276,.97276,.97276,.97276,.8578,.99973,1.18616,.91339,1.08074,.82891,1.02058,.55509,.71526,.89022,1.08595,1,1,1.18616,1,.96736,.93582,1.18616,1,1.04864,.82711,.99043,.99043,.99043,.71541,.85576,.85576,.85576,.85576,.85576,.85576,.845,.80729,.77512,.77512,.77512,.77512,.98621,.98621,.98621,.98621,.95961,.92222,.90637,.90637,.90637,.90637,.90637,1.02058,.90251,.90699,.90699,.90699,.90699,.85458,.83659,.94951,.99613,.99613,.99613,.99613,.99613,.99613,.85811,.78216,.90083,.90083,.90083,.90083,.95381,.95381,.95381,.95381,.9135,.92168,.91513,.91513,.91513,.91513,.91513,1.08595,.91677,.91677,.91677,.91677,.91677,.89364,.92332,.89364,.85576,.99613,.85576,.99613,.85576,.99613,.80729,.78216,.80729,.78216,.80729,.78216,.80729,.78216,.94299,.76783,.95961,.91677,.77512,.90083,.77512,.90083,.77512,.90083,.77512,.90083,.77512,.90083,.86523,.9135,.86523,.9135,.86523,.9135,1,1,.92222,.92168,.92222,.92168,.98621,.95381,.98621,.95381,.98621,.95381,.98621,.95381,.98621,.95381,.86036,.97096,.71743,.98981,1,1,.95298,.79726,.95381,1,1,.79726,.6894,.79726,.74321,.81691,1.0006,.92222,.92168,1,1,.92222,.92168,.79464,.92098,.92168,.90637,.91513,.90637,.91513,.90637,.91513,.909,.87514,.80729,.95077,1,1,.80729,.95077,.76463,.748,.76463,.748,1,1,.76463,.748,1,1,.86275,.72651,.86275,1.04502,.90699,.91677,.90699,.91677,.90699,.91677,.90699,.91677,.90699,.91677,.90699,.91677,.9154,.94236,.85458,.89364,.85458,.90531,.9,.90531,.9,.90531,.9,1,.97276,.85576,.99613,.845,.85811,.90251,.91677,1,1,.86275,1.04502,1.18616,1.18616,1.18616,1.18616,1.18616,1.18616,1.18616,1.18616,1.18616,1.00899,1.30628,.85576,.80178,.66862,.7927,.69323,.88127,.72459,.89711,.95381,.85576,.80591,.7805,.94729,.77512,.90531,.92222,.90637,.98621,.81698,.92655,.98558,.92222,.85359,.90637,.90976,.83809,.94523,.86275,.83509,.93157,.85308,.83392,.92346,.98621,.83509,.92886,.91324,.92168,.95381,.90646,.92886,.90557,.86847,.90276,.91324,.86842,.92168,.99531,.95381,.9224,.85408,.92699,.86847,1.0051,.91513,.80487,.93481,1,.88159,1.05214,.90646,.97355,.81539,.89398,.85923,.95381,.90646,.91513,.90646,.85923,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.9154,.94236,.9154,.94236,.9154,.94236,.85458,.89364,.96694,1,.89903,1,1,1,.91782,.91782,.91782,1,.896,.896,.896,.9332,.9332,.95973,1,1.26,1,1,.80479,.80178,1,1,.85633,1,1,1,1,.97276,1,1,1,.698,1,1.36145,1,1,1,1,1,1,1,1,1,1,1,1.14542,1,.79199,.78694,1.02058,1.03493,1.05486,1,1,1.23026,1.08595,1.08595,1,1.08595,1.08595,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.20006,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],Hl={lineHeight:1.2,lineGap:.2},$l=[1.36898,1,1,.65507,.84943,.85639,.88465,.88465,.86936,.88307,.86948,.85283,.85283,1.06383,1.02058,.75945,.9219,.75945,1.17337,.88465,.88465,.88465,.88465,.88465,.88465,.88465,.88465,.88465,.88465,.75945,.75945,1.02058,1.02058,1.02058,.69046,.70926,.85158,.77812,.76852,.89591,.70466,.76125,.80094,.86822,.83864,.728,.77212,.79475,.93637,.87514,.8588,.76013,.8588,.72421,.69866,.77598,.85991,.80811,.87832,.78112,.77512,.8562,1.0222,1.18417,1.0222,1.27014,.89903,1.15012,.93859,.94399,.846,.94399,.81453,1.0186,.94219,.96017,1.03075,1.02175,.912,1.03075,.96998,.96017,.93859,.94399,.94399,.95493,.746,1.12658,.94578,.91,.979,.882,.882,.83,.85034,.83537,.85034,1.02058,.70869,.88465,.88465,.88465,.88465,.83537,.90083,1.15012,.9161,.94565,.73541,1.02058,.53609,.69353,.79519,1.08595,1,1,1.15012,1,.91974,.75945,1.15012,1,.9446,.73361,.9005,.9005,.9005,.62864,.85158,.85158,.85158,.85158,.85158,.85158,.773,.76852,.70466,.70466,.70466,.70466,.83864,.83864,.83864,.83864,.90561,.87514,.8588,.8588,.8588,.8588,.8588,1.02058,.85751,.85991,.85991,.85991,.85991,.77512,.76013,.88075,.93859,.93859,.93859,.93859,.93859,.93859,.8075,.846,.81453,.81453,.81453,.81453,.82424,.82424,.82424,.82424,.9278,.96017,.93859,.93859,.93859,.93859,.93859,1.08595,.8562,.94578,.94578,.94578,.94578,.882,.94578,.882,.85158,.93859,.85158,.93859,.85158,.93859,.76852,.846,.76852,.846,.76852,.846,.76852,.846,.89591,.8544,.90561,.94399,.70466,.81453,.70466,.81453,.70466,.81453,.70466,.81453,.70466,.81453,.80094,.94219,.80094,.94219,.80094,.94219,1,1,.86822,.96017,.86822,.96017,.83864,.82424,.83864,.82424,.83864,.82424,.83864,1.03075,.83864,.82424,.81402,1.02738,.728,1.02175,1,1,.912,.79475,1.03075,1,1,.79475,.83911,.79475,.66266,.80553,1.06676,.87514,.96017,1,1,.87514,.96017,.86865,.87396,.96017,.8588,.93859,.8588,.93859,.8588,.93859,.867,.84759,.72421,.95493,1,1,.72421,.95493,.69866,.746,.69866,.746,1,1,.69866,.746,1,1,.77598,.88417,.77598,1.12658,.85991,.94578,.85991,.94578,.85991,.94578,.85991,.94578,.85991,.94578,.85991,.94578,.87832,.979,.77512,.882,.77512,.8562,.83,.8562,.83,.8562,.83,1,.88465,.85158,.93859,.773,.8075,.85751,.8562,1,1,.77598,1.12658,1.15012,1.15012,1.15012,1.15012,1.15012,1.15313,1.15012,1.15012,1.15012,1.08106,1.03901,.85158,.77025,.62264,.7646,.65351,.86026,.69461,.89947,1.03075,.85158,.77812,.76449,.88836,.70466,.8562,.86822,.8588,.83864,.77212,.85308,.93637,.87514,.82352,.8588,.85701,.76013,.89058,.77598,.8156,.82565,.78112,.77899,.89386,.83864,.8156,.9486,.92388,.96186,1.03075,.91123,.9486,.93298,.878,.93942,.92388,.84596,.96186,.95119,1.03075,.922,.88787,.95829,.88,.93559,.93859,.78815,.93758,1,.89217,1.03737,.91123,.93969,.77487,.85769,.86799,1.03075,.91123,.93859,.91123,.86799,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.87832,.979,.87832,.979,.87832,.979,.77512,.882,.9219,1,.89903,1,1,1,.87321,.87321,.87321,1,1.027,1.027,1.027,.86847,.86847,.79121,1,1.124,1,1,.73572,.73572,1,1,.85034,1,1,1,1,.88465,1,1,1,.669,1,1.36145,1,1,1,1,1,1,1,1,1,1,1,1.04828,1,.74948,.75187,1.02058,.98391,1.02119,1,1,1.06233,1.08595,1.08595,1,1.08595,1.08595,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.05233,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],zl={lineHeight:1.2,lineGap:.2},Gl=[1.36898,1,1,.76305,.82784,.94935,.89364,.92241,.89073,.90706,.98472,.85283,.85283,1.0664,1.02058,.74505,.9219,.74505,1.23456,.92241,.92241,.92241,.92241,.92241,.92241,.92241,.92241,.92241,.92241,.74505,.74505,1.02058,1.02058,1.02058,.73002,.72601,.91755,.8126,.80314,.92222,.73764,.79726,.83051,.90284,.86023,.74,.8126,.84869,.96518,.91115,.8858,.79761,.8858,.74498,.73914,.81363,.89591,.83659,.89633,.85608,.8111,.90531,1.0222,1.22736,1.0222,1.27014,.89903,.90088,.86667,1.0231,.896,1.01411,.90083,1.05099,1.00512,.99793,1.05326,1.09377,.938,1.06226,1.00119,.99793,.98714,1.0231,1.01231,.98196,.792,1.19137,.99074,.962,1.01915,.926,.942,.856,.85034,.92006,.85034,1.02058,.69067,.92241,.92241,.92241,.92241,.92006,.9332,.90088,.91882,.93484,.75339,1.02058,.56866,.54324,.79519,1.08595,1,1,.90088,1,.95325,.74505,.90088,1,.97198,.75339,.91009,.91009,.91009,.66466,.91755,.91755,.91755,.91755,.91755,.91755,.788,.80314,.73764,.73764,.73764,.73764,.86023,.86023,.86023,.86023,.92915,.91115,.8858,.8858,.8858,.8858,.8858,1.02058,.8858,.89591,.89591,.89591,.89591,.8111,.79611,.89713,.86667,.86667,.86667,.86667,.86667,.86667,.86936,.896,.90083,.90083,.90083,.90083,.84224,.84224,.84224,.84224,.97276,.99793,.98714,.98714,.98714,.98714,.98714,1.08595,.89876,.99074,.99074,.99074,.99074,.942,1.0231,.942,.91755,.86667,.91755,.86667,.91755,.86667,.80314,.896,.80314,.896,.80314,.896,.80314,.896,.92222,.93372,.92915,1.01411,.73764,.90083,.73764,.90083,.73764,.90083,.73764,.90083,.73764,.90083,.83051,1.00512,.83051,1.00512,.83051,1.00512,1,1,.90284,.99793,.90976,.99793,.86023,.84224,.86023,.84224,.86023,.84224,.86023,1.05326,.86023,.84224,.82873,1.07469,.74,1.09377,1,1,.938,.84869,1.06226,1,1,.84869,.83704,.84869,.81441,.85588,1.08927,.91115,.99793,1,1,.91115,.99793,.91887,.90991,.99793,.8858,.98714,.8858,.98714,.8858,.98714,.894,.91434,.74498,.98196,1,1,.74498,.98196,.73914,.792,.73914,.792,1,1,.73914,.792,1,1,.81363,.904,.81363,1.19137,.89591,.99074,.89591,.99074,.89591,.99074,.89591,.99074,.89591,.99074,.89591,.99074,.89633,1.01915,.8111,.942,.8111,.90531,.856,.90531,.856,.90531,.856,1,.92241,.91755,.86667,.788,.86936,.8858,.89876,1,1,.81363,1.19137,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90088,.90388,1.03901,.92138,.78105,.7154,.86169,.80513,.94007,.82528,.98612,1.06226,.91755,.8126,.81884,.92819,.73764,.90531,.90284,.8858,.86023,.8126,.91172,.96518,.91115,.83089,.8858,.87791,.79761,.89297,.81363,.88157,.89992,.85608,.81992,.94307,.86023,.88157,.95308,.98699,.99793,1.06226,.95817,.95308,.97358,.928,.98088,.98699,.92761,.99793,.96017,1.06226,.986,.944,.95978,.938,.96705,.98714,.80442,.98972,1,.89762,1.04552,.95817,.99007,.87064,.91879,.88888,1.06226,.95817,.98714,.95817,.88888,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.89633,1.01915,.89633,1.01915,.89633,1.01915,.8111,.942,.9219,1,.89903,1,1,1,.93173,.93173,.93173,1,1.06304,1.06304,1.06904,.89903,.89903,.80549,1,1.156,1,1,.76575,.76575,1,1,.72458,1,1,1,1,.92241,1,1,1,.619,1,1.36145,1,1,1,1,1,1,1,1,1,1,1,1.07257,1,.74705,.71119,1.02058,1.024,1.02119,1,1,1.1536,1.08595,1.08595,1,1.08595,1.08595,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.05638,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],Wl={lineHeight:1.2,lineGap:.2},Vl=[1.76738,1,1,.99297,.9824,1.04016,1.06497,1.03424,.97529,1.17647,1.23203,1.1085,1.1085,1.16939,1.2107,.9754,1.21408,.9754,1.59578,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,1.03424,.81378,.81378,1.2107,1.2107,1.2107,.71703,.97847,.97363,.88776,.8641,1.02096,.79795,.85132,.914,1.06085,1.1406,.8007,.89858,.83693,1.14889,1.09398,.97489,.92094,.97489,.90399,.84041,.95923,1.00135,1,1.06467,.98243,.90996,.99361,1.1085,1.56942,1.1085,1.2107,.74627,.94282,.96752,1.01519,.86304,1.01359,.97278,1.15103,1.01359,.98561,1.02285,1.02285,1.00527,1.02285,1.0302,.99041,1.0008,1.01519,1.01359,1.02258,.79104,1.16862,.99041,.97454,1.02511,.99298,.96752,.95801,.94856,1.16579,.94856,1.2107,.9824,1.03424,1.03424,1,1.03424,1.16579,.8727,1.3871,1.18622,1.10818,1.04478,1.2107,1.18622,.75155,.94994,1.28826,1.21408,1.21408,.91056,1,.91572,.9754,.64663,1.18328,1.24866,1.04478,1.14169,1.15749,1.17389,.71703,.97363,.97363,.97363,.97363,.97363,.97363,.93506,.8641,.79795,.79795,.79795,.79795,1.1406,1.1406,1.1406,1.1406,1.02096,1.09398,.97426,.97426,.97426,.97426,.97426,1.2107,.97489,1.00135,1.00135,1.00135,1.00135,.90996,.92094,1.02798,.96752,.96752,.96752,.96752,.96752,.96752,.93136,.86304,.97278,.97278,.97278,.97278,1.02285,1.02285,1.02285,1.02285,.97122,.99041,1,1,1,1,1,1.28826,1.0008,.99041,.99041,.99041,.99041,.96752,1.01519,.96752,.97363,.96752,.97363,.96752,.97363,.96752,.8641,.86304,.8641,.86304,.8641,.86304,.8641,.86304,1.02096,1.03057,1.02096,1.03517,.79795,.97278,.79795,.97278,.79795,.97278,.79795,.97278,.79795,.97278,.914,1.01359,.914,1.01359,.914,1.01359,1,1,1.06085,.98561,1.06085,1.00879,1.1406,1.02285,1.1406,1.02285,1.1406,1.02285,1.1406,1.02285,1.1406,1.02285,.97138,1.08692,.8007,1.02285,1,1,1.00527,.83693,1.02285,1,1,.83693,.9455,.83693,.90418,.83693,1.13005,1.09398,.99041,1,1,1.09398,.99041,.96692,1.09251,.99041,.97489,1.0008,.97489,1.0008,.97489,1.0008,.93994,.97931,.90399,1.02258,1,1,.90399,1.02258,.84041,.79104,.84041,.79104,.84041,.79104,.84041,.79104,1,1,.95923,1.07034,.95923,1.16862,1.00135,.99041,1.00135,.99041,1.00135,.99041,1.00135,.99041,1.00135,.99041,1.00135,.99041,1.06467,1.02511,.90996,.96752,.90996,.99361,.95801,.99361,.95801,.99361,.95801,1.07733,1.03424,.97363,.96752,.93506,.93136,.97489,1.0008,1,1,.95923,1.16862,1.15103,1.15103,1.01173,1.03959,.75953,.81378,.79912,1.15103,1.21994,.95161,.87815,1.01149,.81525,.7676,.98167,1.01134,1.02546,.84097,1.03089,1.18102,.97363,.88776,.85134,.97826,.79795,.99361,1.06085,.97489,1.1406,.89858,1.0388,1.14889,1.09398,.86039,.97489,1.0595,.92094,.94793,.95923,.90996,.99346,.98243,1.02112,.95493,1.1406,.90996,1.03574,1.02597,1.0008,1.18102,1.06628,1.03574,1.0192,1.01932,1.00886,.97531,1.0106,1.0008,1.13189,1.18102,1.02277,.98683,1.0016,.99561,1.07237,1.0008,.90434,.99921,.93803,.8965,1.23085,1.06628,1.04983,.96268,1.0499,.98439,1.18102,1.06628,1.0008,1.06628,.98439,.79795,1,1,1,1,1,1,1,1,1,1,1,1,1.09466,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.97278,1,1,1,1,1,1,1,1,1,1,1,1,1.02065,1,1,1,1,1,1,1.06467,1.02511,1.06467,1.02511,1.06467,1.02511,.90996,.96752,1,1.21408,.89903,1,1,.75155,1.04394,1.04394,1.04394,1.04394,.98633,.98633,.98633,.73047,.73047,1.20642,.91211,1.25635,1.222,1.02956,1.03372,1.03372,.96039,1.24633,1,1.12454,.93503,1.03424,1.19687,1.03424,1,1,1,.771,1,1,1.15749,1.15749,1.15749,1.10948,.86279,.94434,.86279,.94434,.86182,1,1,1.16897,1,.96085,.90137,1.2107,1.18416,1.13973,.69825,.9716,2.10339,1.29004,1.29004,1.21172,1.29004,1.29004,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.42603,1,.99862,.99862,1,.87025,.87025,.87025,.87025,1.18874,1.42603,1,1.42603,1.42603,.99862,1,1,1,1,1,1.2886,1.04315,1.15296,1.34163,1,1,1,1.09193,1.09193,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],Xl={lineHeight:1.33008,lineGap:0},Kl=[1.76738,1,1,.98946,1.03959,1.04016,1.02809,1.036,.97639,1.10953,1.23203,1.11144,1.11144,1.16939,1.21237,.9754,1.21261,.9754,1.59754,1.036,1.036,1.036,1.036,1.036,1.036,1.036,1.036,1.036,1.036,.81378,.81378,1.21237,1.21237,1.21237,.73541,.97847,.97363,.89723,.87897,1.0426,.79429,.85292,.91149,1.05815,1.1406,.79631,.90128,.83853,1.04396,1.10615,.97552,.94436,.97552,.88641,.80527,.96083,1.00135,1,1.06777,.9817,.91142,.99361,1.11144,1.57293,1.11144,1.21237,.74627,1.31818,1.06585,.97042,.83055,.97042,.93503,1.1261,.97042,.97922,1.14236,.94552,1.01054,1.14236,1.02471,.97922,.94165,.97042,.97042,1.0276,.78929,1.1261,.97922,.95874,1.02197,.98507,.96752,.97168,.95107,1.16579,.95107,1.21237,1.03959,1.036,1.036,1,1.036,1.16579,.87357,1.31818,1.18754,1.26781,1.05356,1.21237,1.18622,.79487,.94994,1.29004,1.24047,1.24047,1.31818,1,.91484,.9754,1.31818,1.1349,1.24866,1.05356,1.13934,1.15574,1.17389,.73541,.97363,.97363,.97363,.97363,.97363,.97363,.94385,.87897,.79429,.79429,.79429,.79429,1.1406,1.1406,1.1406,1.1406,1.0426,1.10615,.97552,.97552,.97552,.97552,.97552,1.21237,.97552,1.00135,1.00135,1.00135,1.00135,.91142,.94436,.98721,1.06585,1.06585,1.06585,1.06585,1.06585,1.06585,.96705,.83055,.93503,.93503,.93503,.93503,1.14236,1.14236,1.14236,1.14236,.93125,.97922,.94165,.94165,.94165,.94165,.94165,1.29004,.94165,.97922,.97922,.97922,.97922,.96752,.97042,.96752,.97363,1.06585,.97363,1.06585,.97363,1.06585,.87897,.83055,.87897,.83055,.87897,.83055,.87897,.83055,1.0426,1.0033,1.0426,.97042,.79429,.93503,.79429,.93503,.79429,.93503,.79429,.93503,.79429,.93503,.91149,.97042,.91149,.97042,.91149,.97042,1,1,1.05815,.97922,1.05815,.97922,1.1406,1.14236,1.1406,1.14236,1.1406,1.14236,1.1406,1.14236,1.1406,1.14236,.97441,1.04302,.79631,1.01582,1,1,1.01054,.83853,1.14236,1,1,.83853,1.09125,.83853,.90418,.83853,1.19508,1.10615,.97922,1,1,1.10615,.97922,1.01034,1.10466,.97922,.97552,.94165,.97552,.94165,.97552,.94165,.91602,.91981,.88641,1.0276,1,1,.88641,1.0276,.80527,.78929,.80527,.78929,.80527,.78929,.80527,.78929,1,1,.96083,1.05403,.95923,1.16862,1.00135,.97922,1.00135,.97922,1.00135,.97922,1.00135,.97922,1.00135,.97922,1.00135,.97922,1.06777,1.02197,.91142,.96752,.91142,.99361,.97168,.99361,.97168,.99361,.97168,1.23199,1.036,.97363,1.06585,.94385,.96705,.97552,.94165,1,1,.96083,1.1261,1.31818,1.31818,1.31818,1.31818,1.31818,1.31818,1.31818,1.31818,1.31818,.95161,1.27126,1.00811,.83284,.77702,.99137,.95253,1.0347,.86142,1.07205,1.14236,.97363,.89723,.86869,1.09818,.79429,.99361,1.05815,.97552,1.1406,.90128,1.06662,1.04396,1.10615,.84918,.97552,1.04694,.94436,.98015,.96083,.91142,1.00356,.9817,1.01945,.98999,1.1406,.91142,1.04961,.9898,1.00639,1.14236,1.07514,1.04961,.99607,1.02897,1.008,.9898,.95134,1.00639,1.11121,1.14236,1.00518,.97981,1.02186,1,1.08578,.94165,.99314,.98387,.93028,.93377,1.35125,1.07514,1.10687,.93491,1.04232,1.00351,1.14236,1.07514,.94165,1.07514,1.00351,.79429,1,1,1,1,1,1,1,1,1,1,1,1,1.09097,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.93503,1,1,1,1,1,1,1,1,1,1,1,1,.96609,1,1,1,1,1,1,1.06777,1.02197,1.06777,1.02197,1.06777,1.02197,.91142,.96752,1,1.21261,.89903,1,1,.75155,1.04745,1.04745,1.04745,1.04394,.98633,.98633,.98633,.72959,.72959,1.20502,.91406,1.26514,1.222,1.02956,1.03372,1.03372,.96039,1.24633,1,1.09125,.93327,1.03336,1.16541,1.036,1,1,1,.771,1,1,1.15574,1.15574,1.15574,1.15574,.86364,.94434,.86279,.94434,.86224,1,1,1.16798,1,.96085,.90068,1.21237,1.18416,1.13904,.69825,.9716,2.10339,1.29004,1.29004,1.21339,1.29004,1.29004,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.42603,1,.99862,.99862,1,.87025,.87025,.87025,.87025,1.18775,1.42603,1,1.42603,1.42603,.99862,1,1,1,1,1,1.2886,1.04315,1.15296,1.34163,1,1,1,1.13269,1.13269,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],Yl={lineHeight:1.33008,lineGap:0},Jl=[1.76738,1,1,.98946,1.14763,1.05365,1.06234,.96927,.92586,1.15373,1.18414,.91349,.91349,1.07403,1.17308,.78383,1.20088,.78383,1.42531,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.78383,.78383,1.17308,1.17308,1.17308,.77349,.94565,.94729,.85944,.88506,.9858,.74817,.80016,.88449,.98039,.95782,.69238,.89898,.83231,.98183,1.03989,.96924,.86237,.96924,.80595,.74524,.86091,.95402,.94143,.98448,.8858,.83089,.93285,1.0949,1.39016,1.0949,1.45994,.74627,1.04839,.97454,.97454,.87207,.97454,.87533,1.06151,.97454,1.00176,1.16484,1.08132,.98047,1.16484,1.02989,1.01054,.96225,.97454,.97454,1.06598,.79004,1.16344,1.00351,.94629,.9973,.91016,.96777,.9043,.91082,.92481,.91082,1.17308,.95748,.96927,.96927,1,.96927,.92481,.80597,1.04839,1.23393,1.1781,.9245,1.17308,1.20808,.63218,.94261,1.24822,1.09971,1.09971,1.04839,1,.85273,.78032,1.04839,1.09971,1.22326,.9245,1.09836,1.13525,1.15222,.70424,.94729,.94729,.94729,.94729,.94729,.94729,.85498,.88506,.74817,.74817,.74817,.74817,.95782,.95782,.95782,.95782,.9858,1.03989,.96924,.96924,.96924,.96924,.96924,1.17308,.96924,.95402,.95402,.95402,.95402,.83089,.86237,.88409,.97454,.97454,.97454,.97454,.97454,.97454,.92916,.87207,.87533,.87533,.87533,.87533,.93146,.93146,.93146,.93146,.93854,1.01054,.96225,.96225,.96225,.96225,.96225,1.24822,.8761,1.00351,1.00351,1.00351,1.00351,.96777,.97454,.96777,.94729,.97454,.94729,.97454,.94729,.97454,.88506,.87207,.88506,.87207,.88506,.87207,.88506,.87207,.9858,.95391,.9858,.97454,.74817,.87533,.74817,.87533,.74817,.87533,.74817,.87533,.74817,.87533,.88449,.97454,.88449,.97454,.88449,.97454,1,1,.98039,1.00176,.98039,1.00176,.95782,.93146,.95782,.93146,.95782,.93146,.95782,1.16484,.95782,.93146,.84421,1.12761,.69238,1.08132,1,1,.98047,.83231,1.16484,1,1,.84723,1.04861,.84723,.78755,.83231,1.23736,1.03989,1.01054,1,1,1.03989,1.01054,.9857,1.03849,1.01054,.96924,.96225,.96924,.96225,.96924,.96225,.92383,.90171,.80595,1.06598,1,1,.80595,1.06598,.74524,.79004,.74524,.79004,.74524,.79004,.74524,.79004,1,1,.86091,1.02759,.85771,1.16344,.95402,1.00351,.95402,1.00351,.95402,1.00351,.95402,1.00351,.95402,1.00351,.95402,1.00351,.98448,.9973,.83089,.96777,.83089,.93285,.9043,.93285,.9043,.93285,.9043,1.31868,.96927,.94729,.97454,.85498,.92916,.96924,.8761,1,1,.86091,1.16344,1.04839,1.04839,1.04839,1.04839,1.04839,1.04839,1.04839,1.04839,1.04839,.81965,.81965,.94729,.78032,.71022,.90883,.84171,.99877,.77596,1.05734,1.2,.94729,.85944,.82791,.9607,.74817,.93285,.98039,.96924,.95782,.89898,.98316,.98183,1.03989,.78614,.96924,.97642,.86237,.86075,.86091,.83089,.90082,.8858,.97296,1.01284,.95782,.83089,1.0976,1.04,1.03342,1.2,1.0675,1.0976,.98205,1.03809,1.05097,1.04,.95364,1.03342,1.05401,1.2,1.02148,1.0119,1.04724,1.0127,1.02732,.96225,.8965,.97783,.93574,.94818,1.30679,1.0675,1.11826,.99821,1.0557,1.0326,1.2,1.0675,.96225,1.0675,1.0326,.74817,1,1,1,1,1,1,1,1,1,1,1,1,1.03754,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.87533,1,1,1,1,1,1,1,1,1,1,1,1,.98705,1,1,1,1,1,1,.98448,.9973,.98448,.9973,.98448,.9973,.83089,.96777,1,1.20088,.89903,1,1,.75155,.94945,.94945,.94945,.94945,1.12317,1.12317,1.12317,.67603,.67603,1.15621,.73584,1.21191,1.22135,1.06483,.94868,.94868,.95996,1.24633,1,1.07497,.87709,.96927,1.01473,.96927,1,1,1,.77295,1,1,1.09836,1.09836,1.09836,1.01522,.86321,.94434,.8649,.94434,.86182,1,1,1.083,1,.91578,.86438,1.17308,1.18416,1.14589,.69825,.97622,1.96791,1.24822,1.24822,1.17308,1.24822,1.24822,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.42603,1,.99862,.99862,1,.87025,.87025,.87025,.87025,1.17984,1.42603,1,1.42603,1.42603,.99862,1,1,1,1,1,1.2886,1.04315,1.15296,1.34163,1,1,1,1.10742,1.10742,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1],Zl={lineHeight:1.33008,lineGap:0},Ql=[1.76738,1,1,.98594,1.02285,1.10454,1.06234,.96927,.92037,1.19985,1.2046,.90616,.90616,1.07152,1.1714,.78032,1.20088,.78032,1.40246,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.96927,.78032,.78032,1.1714,1.1714,1.1714,.80597,.94084,.96706,.85944,.85734,.97093,.75842,.79936,.88198,.9831,.95782,.71387,.86969,.84636,1.07796,1.03584,.96924,.83968,.96924,.82826,.79649,.85771,.95132,.93119,.98965,.88433,.8287,.93365,1.08612,1.3638,1.08612,1.45786,.74627,.80499,.91484,1.05707,.92383,1.05882,.9403,1.12654,1.05882,1.01756,1.09011,1.09011,.99414,1.09011,1.034,1.01756,1.05356,1.05707,1.05882,1.04399,.84863,1.21968,1.01756,.95801,1.00068,.91797,.96777,.9043,.90351,.92105,.90351,1.1714,.85337,.96927,.96927,.99912,.96927,.92105,.80597,1.2434,1.20808,1.05937,.90957,1.1714,1.20808,.75155,.94261,1.24644,1.09971,1.09971,.84751,1,.85273,.78032,.61584,1.05425,1.17914,.90957,1.08665,1.11593,1.14169,.73381,.96706,.96706,.96706,.96706,.96706,.96706,.86035,.85734,.75842,.75842,.75842,.75842,.95782,.95782,.95782,.95782,.97093,1.03584,.96924,.96924,.96924,.96924,.96924,1.1714,.96924,.95132,.95132,.95132,.95132,.8287,.83968,.89049,.91484,.91484,.91484,.91484,.91484,.91484,.93575,.92383,.9403,.9403,.9403,.9403,.8717,.8717,.8717,.8717,1.00527,1.01756,1.05356,1.05356,1.05356,1.05356,1.05356,1.24644,.95923,1.01756,1.01756,1.01756,1.01756,.96777,1.05707,.96777,.96706,.91484,.96706,.91484,.96706,.91484,.85734,.92383,.85734,.92383,.85734,.92383,.85734,.92383,.97093,1.0969,.97093,1.05882,.75842,.9403,.75842,.9403,.75842,.9403,.75842,.9403,.75842,.9403,.88198,1.05882,.88198,1.05882,.88198,1.05882,1,1,.9831,1.01756,.9831,1.01756,.95782,.8717,.95782,.8717,.95782,.8717,.95782,1.09011,.95782,.8717,.84784,1.11551,.71387,1.09011,1,1,.99414,.84636,1.09011,1,1,.84636,1.0536,.84636,.94298,.84636,1.23297,1.03584,1.01756,1,1,1.03584,1.01756,1.00323,1.03444,1.01756,.96924,1.05356,.96924,1.05356,.96924,1.05356,.93066,.98293,.82826,1.04399,1,1,.82826,1.04399,.79649,.84863,.79649,.84863,.79649,.84863,.79649,.84863,1,1,.85771,1.17318,.85771,1.21968,.95132,1.01756,.95132,1.01756,.95132,1.01756,.95132,1.01756,.95132,1.01756,.95132,1.01756,.98965,1.00068,.8287,.96777,.8287,.93365,.9043,.93365,.9043,.93365,.9043,1.08571,.96927,.96706,.91484,.86035,.93575,.96924,.95923,1,1,.85771,1.21968,1.11437,1.11437,.93109,.91202,.60411,.84164,.55572,1.01173,.97361,.81818,.81818,.96635,.78032,.72727,.92366,.98601,1.03405,.77968,1.09799,1.2,.96706,.85944,.85638,.96491,.75842,.93365,.9831,.96924,.95782,.86969,.94152,1.07796,1.03584,.78437,.96924,.98715,.83968,.83491,.85771,.8287,.94492,.88433,.9287,1.0098,.95782,.8287,1.0625,.98248,1.03424,1.2,1.01071,1.0625,.95246,1.03809,1.04912,.98248,1.00221,1.03424,1.05443,1.2,1.04785,.99609,1.00169,1.05176,.99346,1.05356,.9087,1.03004,.95542,.93117,1.23362,1.01071,1.07831,1.02512,1.05205,1.03502,1.2,1.01071,1.05356,1.01071,1.03502,.75842,1,1,1,1,1,1,1,1,1,1,1,1,1.03719,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,.9403,1,1,1,1,1,1,1,1,1,1,1,1,1.04021,1,1,1,1,1,1,.98965,1.00068,.98965,1.00068,.98965,1.00068,.8287,.96777,1,1.20088,.89903,1,1,.75155,1.03077,1.03077,1.03077,1.03077,1.13196,1.13196,1.13196,.67428,.67428,1.16039,.73291,1.20996,1.22135,1.06483,.94868,.94868,.95996,1.24633,1,1.07497,.87796,.96927,1.01518,.96927,1,1,1,.77295,1,1,1.10539,1.10539,1.11358,1.06967,.86279,.94434,.86279,.94434,.86182,1,1,1.083,1,.91578,.86507,1.1714,1.18416,1.14589,.69825,.97622,1.9697,1.24822,1.24822,1.17238,1.24822,1.24822,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1.42603,1,.99862,.99862,1,.87025,.87025,.87025,.87025,1.18083,1.42603,1,1.42603,1.42603,.99862,1,1,1,1,1,1.2886,1.04315,1.15296,1.34163,1,1,1,1.10938,1.10938,1,1,1,1.05425,1.09971,1.09971,1.09971,1,1,1,1,1,1,1,1,1,1,1],eh={lineHeight:1.33008,lineGap:0},th=Ks(function(e){e["MyriadPro-Regular"]=e["PdfJS-Fallback-Regular"]={name:"LiberationSans-Regular",factors:Gl,baseWidths:Ll,baseMapping:_l,metrics:Wl},e["MyriadPro-Bold"]=e["PdfJS-Fallback-Bold"]={name:"LiberationSans-Bold",factors:Ul,baseWidths:Rl,baseMapping:Nl,metrics:ql},e["MyriadPro-It"]=e["MyriadPro-Italic"]=e["PdfJS-Fallback-Italic"]={name:"LiberationSans-Italic",factors:$l,baseWidths:Pl,baseMapping:El,metrics:zl},e["MyriadPro-BoldIt"]=e["MyriadPro-BoldItalic"]=e["PdfJS-Fallback-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:jl,baseWidths:Dl,baseMapping:Ol,metrics:Hl},e.ArialMT=e.Arial=e["Arial-Regular"]={name:"LiberationSans-Regular",baseWidths:Ll,baseMapping:_l},e["Arial-BoldMT"]=e["Arial-Bold"]={name:"LiberationSans-Bold",baseWidths:Rl,baseMapping:Nl},e["Arial-ItalicMT"]=e["Arial-Italic"]={name:"LiberationSans-Italic",baseWidths:Pl,baseMapping:El},e["Arial-BoldItalicMT"]=e["Arial-BoldItalic"]={name:"LiberationSans-BoldItalic",baseWidths:Dl,baseMapping:Ol},e["Calibri-Regular"]={name:"LiberationSans-Regular",factors:kl,baseWidths:Ll,baseMapping:_l,metrics:vl},e["Calibri-Bold"]={name:"LiberationSans-Bold",factors:pl,baseWidths:Rl,baseMapping:Nl,metrics:ml},e["Calibri-Italic"]={name:"LiberationSans-Italic",factors:yl,baseWidths:Pl,baseMapping:El,metrics:xl},e["Calibri-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:bl,baseWidths:Dl,baseMapping:Ol,metrics:wl},e["Segoeui-Regular"]={name:"LiberationSans-Regular",factors:Ql,baseWidths:Ll,baseMapping:_l,metrics:eh},e["Segoeui-Bold"]={name:"LiberationSans-Bold",factors:Vl,baseWidths:Rl,baseMapping:Nl,metrics:Xl},e["Segoeui-Italic"]={name:"LiberationSans-Italic",factors:Jl,baseWidths:Pl,baseMapping:El,metrics:Zl},e["Segoeui-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:Kl,baseWidths:Dl,baseMapping:Ol,metrics:Yl},e["Helvetica-Regular"]=e.Helvetica={name:"LiberationSans-Regular",factors:Ml,baseWidths:Ll,baseMapping:_l,metrics:Tl},e["Helvetica-Bold"]={name:"LiberationSans-Bold",factors:Al,baseWidths:Rl,baseMapping:Nl,metrics:Cl},e["Helvetica-Italic"]={name:"LiberationSans-Italic",factors:Bl,baseWidths:Pl,baseMapping:El,metrics:Fl},e["Helvetica-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:Sl,baseWidths:Dl,baseMapping:Ol,metrics:Il}});function sh(e){const t=Kr(e);return th()[t]}function ah(e){const t=function(e){const t=sh(e);if(!t)return null;const{baseWidths:s,baseMapping:a,factors:i}=t,n=i?s.map((e,t)=>e*i[t]):s;let r,o=-2;const c=[];for(const[l,h]of a.map((e,t)=>[e,t]).sort(([e],[t])=>e-t))-1!==l&&(l===o+1?(r.push(n[h]),o+=1):(o=l,r=[n[h]],c.push(l,r)));return c}(e),s=new Ps(null);s.set("BaseFont",Ns.get(e)),s.set("Type",Ns.get("Font")),s.set("Subtype",Ns.get("CIDFontType2")),s.set("Encoding",Ns.get("Identity-H")),s.set("CIDToGIDMap",Ns.get("Identity")),s.set("W",t),s.set("FirstChar",t[0]),s.set("LastChar",t.at(-2)+t.at(-1).length-1);const a=new Ps(null);s.set("FontDescriptor",a);const i=new Ps(null);return i.set("Ordering","Identity"),i.set("Registry","Adobe"),i.set("Supplement",0),s.set("CIDSystemInfo",i),s}class ih{constructor(e){this.lexer=e,this.operators=[],this.token=null,this.prev=null}nextToken(){this.prev=this.token,this.token=this.lexer.getToken()}accept(e){return this.token.type===e&&(this.nextToken(),!0)}expect(e){if(this.accept(e))return!0;throw new cs(`Unexpected symbol: found ${this.token.type} expected ${e}.`)}parse(){return this.nextToken(),this.expect(nh.LBRACE),this.parseBlock(),this.expect(nh.RBRACE),this.operators}parseBlock(){for(;;)if(this.accept(nh.NUMBER))this.operators.push(this.prev.value);else if(this.accept(nh.OPERATOR))this.operators.push(this.prev.value);else{if(!this.accept(nh.LBRACE))return;this.parseCondition()}}parseCondition(){const e=this.operators.length;if(this.operators.push(null,null),this.parseBlock(),this.expect(nh.RBRACE),this.accept(nh.IF))this.operators[e]=this.operators.length,this.operators[e+1]="jz";else{if(!this.accept(nh.LBRACE))throw new cs("PS Function: error parsing conditional.");{const t=this.operators.length;this.operators.push(null,null);const s=this.operators.length;this.parseBlock(),this.expect(nh.RBRACE),this.expect(nh.IFELSE),this.operators[t]=this.operators.length,this.operators[t+1]="j",this.operators[e]=s,this.operators[e+1]="jz"}}}}const nh={LBRACE:0,RBRACE:1,NUMBER:2,OPERATOR:3,IF:4,IFELSE:5};class rh{static get opCache(){return ss(this,"opCache",Object.create(null))}constructor(e,t){this.type=e,this.value=t}static getOperator(e){return rh.opCache[e]||=new rh(nh.OPERATOR,e)}static get LBRACE(){return ss(this,"LBRACE",new rh(nh.LBRACE,"{"))}static get RBRACE(){return ss(this,"RBRACE",new rh(nh.RBRACE,"}"))}static get IF(){return ss(this,"IF",new rh(nh.IF,"IF"))}static get IFELSE(){return ss(this,"IFELSE",new rh(nh.IFELSE,"IFELSE"))}}class oh{constructor(e){this.stream=e,this.nextChar(),this.strBuf=[]}nextChar(){return this.currentChar=this.stream.getByte()}getToken(){let e=!1,t=this.currentChar;for(;;){if(t<0)return Fs;if(e)10!==t&&13!==t||(e=!1);else if(37===t)e=!0;else if(!ha(t))break;t=this.nextChar()}switch(0|t){case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case 43:case 45:case 46:return new rh(nh.NUMBER,this.getNumber());case 123:return this.nextChar(),rh.LBRACE;case 125:return this.nextChar(),rh.RBRACE}const s=this.strBuf;for(s.length=0,s[0]=String.fromCharCode(t);(t=this.nextChar())>=0&&(t>=65&&t<=90||t>=97&&t<=122);)s.push(String.fromCharCode(t));const a=s.join("");switch(a.toLowerCase()){case"if":return rh.IF;case"ifelse":return rh.IFELSE;default:return rh.getOperator(a)}}getNumber(){let e=this.currentChar;const t=this.strBuf;for(t.length=0,t[0]=String.fromCharCode(e);(e=this.nextChar())>=0&&(e>=48&&e<=57||45===e||46===e);)t.push(String.fromCharCode(e));const s=parseFloat(t.join(""));if(isNaN(s))throw new cs(`Invalid floating point number: ${s}`);return s}}class ch{constructor(e){this._onlyRefs=!0===e?.onlyRefs,this._onlyRefs||(this._nameRefMap=new Map,this._imageMap=new Map),this._imageCache=new _s}getByName(e){this._onlyRefs&&Qt("Should not call `getByName` method.");const t=this._nameRefMap.get(e);return t?this.getByRef(t):this._imageMap.get(e)||null}getByRef(e){return this._imageCache.get(e)||null}set(e,t,s){Qt("Abstract method `set` called.")}}class lh extends ch{set(e,t=null,s){if("string"!=typeof e)throw new Error('LocalImageCache.set - expected "name" argument.');if(t){if(this._imageCache.has(t))return;this._nameRefMap.set(e,t),this._imageCache.put(t,s)}else this._imageMap.has(e)||this._imageMap.set(e,s)}}class hh extends ch{set(e=null,t=null,s){if("string"!=typeof e&&!t)throw new Error('LocalColorSpaceCache.set - expected "name" and/or "ref" argument.');if(t){if(this._imageCache.has(t))return;null!==e&&this._nameRefMap.set(e,t),this._imageCache.put(t,s)}else this._imageMap.has(e)||this._imageMap.set(e,s)}}class uh extends ch{constructor(e){super({onlyRefs:!0})}set(e=null,t,s){if(!t)throw new Error('LocalFunctionCache.set - expected "ref" argument.');this._imageCache.has(t)||this._imageCache.put(t,s)}}class dh extends ch{set(e,t=null,s){if("string"!=typeof e)throw new Error('LocalGStateCache.set - expected "name" argument.');if(t){if(this._imageCache.has(t))return;this._nameRefMap.set(e,t),this._imageCache.put(t,s)}else this._imageMap.has(e)||this._imageMap.set(e,s)}}class fh extends ch{constructor(e){super({onlyRefs:!0})}set(e=null,t,s){if(!t)throw new Error('LocalTilingPatternCache.set - expected "ref" argument.');this._imageCache.has(t)||this._imageCache.put(t,s)}}class gh extends ch{constructor(e){super({onlyRefs:!0})}set(e=null,t,s){if(!t)throw new Error('RegionalImageCache.set - expected "ref" argument.');this._imageCache.has(t)||this._imageCache.put(t,s)}}class ph extends ch{constructor(e){super({onlyRefs:!0})}set(e=null,t,s){if(!t)throw new Error('GlobalColorSpaceCache.set - expected "ref" argument.');this._imageCache.has(t)||this._imageCache.put(t,s)}clear(){this._imageCache.clear()}}class mh{static NUM_PAGES_THRESHOLD=2;static MIN_IMAGES_TO_CACHE=10;static MAX_BYTE_SIZE=5e7;#oe=new Ls;constructor(){this._refCache=new _s,this._imageCache=new _s}get#ce(){let e=0;for(const t of this._imageCache)e+=t.byteSize;return e}get#le(){return!(this._imageCache.size<mh.MIN_IMAGES_TO_CACHE)&&!(this.#ce<mh.MAX_BYTE_SIZE)}shouldCache(e,t){let s=this._refCache.get(e);return s||(s=new Set,this._refCache.put(e,s)),s.add(t),!(s.size<mh.NUM_PAGES_THRESHOLD)&&!(!this._imageCache.has(e)&&this.#le)}addDecodeFailed(e){this.#oe.put(e)}hasDecodeFailed(e){return this.#oe.has(e)}addByteSize(e,t){const s=this._imageCache.get(e);s&&(s.byteSize||(s.byteSize=t))}getData(e,t){const s=this._refCache.get(e);if(!s)return null;if(s.size<mh.NUM_PAGES_THRESHOLD)return null;const a=this._imageCache.get(e);return a?(s.add(t),a):null}setData(e,t){if(!this._refCache.has(e))throw new Error('GlobalImageCache.setData - expected "shouldCache" to have been called.');this._imageCache.has(e)||(this.#le?Zt("GlobalImageCache.setData - cache limit reached."):this._imageCache.put(e,t))}clear(e=!1){e||(this.#oe.clear(),this._refCache.clear()),this._imageCache.clear()}}class bh{constructor({xref:e,isEvalSupported:t=!0}){this.xref=e,this.isEvalSupported=!1!==t}create(e,t=!1){let s,a;if(e instanceof Es?s=e:e instanceof Ps?s=e.objId:e instanceof $s&&(s=e.dict?.objId),s){const e=this._localFunctionCache.getByRef(s);if(e)return e}const i=this.xref.fetchIfRef(e);if(Array.isArray(i)){if(!t)throw new Error('PDFFunctionFactory.create - expected "parseArray" argument.');a=yh.parseArray(this,i)}else a=yh.parse(this,i);return s&&this._localFunctionCache.set(null,s,a),a}get _localFunctionCache(){return ss(this,"_localFunctionCache",new uh)}}function wh(e){return Array.isArray(e)?ua(e,null)?e:e.map(e=>+e):null}class yh{static getSampleArray(e,t,s,a){let i,n,r=1;for(i=0,n=e.length;i<n;i++)r*=e[i];r*=t;const o=new Array(r);let c=0,l=0;const h=1/(2**s-1),u=a.getBytes((r*s+7)/8);let d=0;for(i=0;i<r;i++){for(;c<s;)l<<=8,l|=u[d++],c+=8;c-=s,o[i]=(l>>c)*h,l&=(1<<c)-1}return o}static parse(e,t){const s=t.dict||t;switch(s.get("FunctionType")){case 0:return this.constructSampled(e,t,s);case 1:break;case 2:return this.constructInterpolated(e,s);case 3:return this.constructStiched(e,s);case 4:return this.constructPostScript(e,t,s)}throw new cs("Unknown type of function")}static parseArray(e,t){const{xref:s}=e,a=[];for(const i of t)a.push(this.parse(e,s.fetchIfRef(i)));return function(e,t,s,i){for(let n=0,r=a.length;n<r;n++)a[n](e,t,s,i+n)}}static constructSampled(e,t,s){function a(e){const t=e.length,s=[];let a=0;for(let i=0;i<t;i+=2)s[a++]=[e[i],e[i+1]];return s}function i(e,t,s,a,i){return a+(i-a)/(s-t)*(e-t)}let n=wh(s.getArray("Domain")),r=wh(s.getArray("Range"));if(!n||!r)throw new cs("No domain or range");const o=n.length/2,c=r.length/2;n=a(n),r=a(r);const l=wh(s.getArray("Size")),h=s.get("BitsPerSample"),u=s.get("Order")||1;1!==u&&Jt("No support for cubic spline interpolation: "+u);let d=wh(s.getArray("Encode"));if(d)d=a(d);else{d=[];for(let e=0;e<o;++e)d.push([0,l[e]-1])}let f=wh(s.getArray("Decode"));f=f?a(f):r;const g=this.getSampleArray(l,c,h,t);return function(e,t,s,a){const h=1<<o,u=new Float64Array(h).fill(1),p=new Uint32Array(h);let m,b,w=c,y=1;for(m=0;m<o;++m){const s=n[m][0],a=n[m][1];let r=i(Ss(e[t+m],s,a),s,a,d[m][0],d[m][1]);const o=l[m];r=Ss(r,0,o-1);const c=r<o-1?Math.floor(r):r-1,f=c+1-r,g=r-c,x=c*w,k=x+w;for(b=0;b<h;b++)b&y?(u[b]*=g,p[b]+=k):(u[b]*=f,p[b]+=x);w*=o,y<<=1}for(b=0;b<c;++b){let e=0;for(m=0;m<h;m++)e+=g[p[m]+b]*u[m];e=i(e,0,1,f[b][0],f[b][1]),s[a+b]=Ss(e,r[b][0],r[b][1])}}}static constructInterpolated(e,t){const s=wh(t.getArray("C0"))||[0],a=wh(t.getArray("C1"))||[1],i=t.get("N"),n=[];for(let o=0,c=s.length;o<c;++o)n.push(a[o]-s[o]);const r=n.length;return function(e,t,a,o){const c=1===i?e[t]:e[t]**i;for(let i=0;i<r;++i)a[o+i]=s[i]+c*n[i]}}static constructStiched(e,t){const s=wh(t.getArray("Domain"));if(!s)throw new cs("No domain");if(1!==s.length/2)throw new cs("Bad domain for stiched function");const{xref:a}=e,i=[];for(const c of t.get("Functions"))i.push(this.parse(e,a.fetchIfRef(c)));const n=wh(t.getArray("Bounds")),r=wh(t.getArray("Encode")),o=new Float32Array(1);return function(e,t,a,c){const l=Ss(e[t],s[0],s[1]),h=n.length;let u;for(u=0;u<h&&!(l<n[u]);++u);let d=s[0];u>0&&(d=n[u-1]);let f=s[1];u<n.length&&(f=n[u]);const g=r[2*u],p=r[2*u+1];o[0]=d===f?g:g+(l-d)*(p-g)/(f-d),i[u](o,0,a,c)}}static constructPostScript(e,t,s){const a=wh(s.getArray("Domain")),i=wh(s.getArray("Range"));if(!a)throw new cs("No domain.");if(!i)throw new cs("No range.");const n=new oh(t),r=new ih(n).parse();if(e.isEvalSupported&&gs.isEvalSupported){const e=(new Ph).compile(r,a,i);if(e)return new Function("src","srcOffset","dest","destOffset",e)}Jt("Unable to compile PS function");const o=i.length>>1,c=a.length>>1,l=new vh(r),h=Object.create(null);let u=8192;const d=new Float32Array(c);return function(e,t,s,a){let n,r,f="";const g=d;for(n=0;n<c;n++)r=e[t+n],g[n]=r,f+=r+"_";const p=h[f];if(void 0!==p)return void s.set(p,a);const m=new Float32Array(o),b=l.execute(g),w=b.length-o;for(n=0;n<o;n++){r=b[w+n];let e=i[2*n];r<e?r=e:(e=i[2*n+1],r>e&&(r=e)),m[n]=r}u>0&&(u--,h[f]=m),s.set(m,a)}}}function xh(e){let t;if(e instanceof Ps)t=e;else{if(!(e instanceof $s))return!1;t=e.dict}return t.has("FunctionType")}class kh{static MAX_STACK_SIZE=100;constructor(e){this.stack=e?Array.from(e):[]}push(e){if(this.stack.length>=kh.MAX_STACK_SIZE)throw new Error("PostScript function stack overflow.");this.stack.push(e)}pop(){if(this.stack.length<=0)throw new Error("PostScript function stack underflow.");return this.stack.pop()}copy(e){if(this.stack.length+e>=kh.MAX_STACK_SIZE)throw new Error("PostScript function stack overflow.");const t=this.stack;for(let s=t.length-e,a=e-1;a>=0;a--,s++)t.push(t[s])}index(e){this.push(this.stack[this.stack.length-e-1])}roll(e,t){const s=this.stack,a=s.length-e,i=s.length-1,n=a+(t-Math.floor(t/e)*e);for(let r=a,o=i;r<o;r++,o--){const e=s[r];s[r]=s[o],s[o]=e}for(let r=a,o=n-1;r<o;r++,o--){const e=s[r];s[r]=s[o],s[o]=e}for(let r=n,o=i;r<o;r++,o--){const e=s[r];s[r]=s[o],s[o]=e}}}class vh{constructor(e){this.operators=e}execute(e){const t=new kh(e);let s=0;const a=this.operators,i=a.length;let n,r,o;for(;s<i;)if(n=a[s++],"number"!=typeof n)switch(n){case"jz":o=t.pop(),r=t.pop(),r||(s=o);break;case"j":r=t.pop(),s=r;break;case"abs":r=t.pop(),t.push(Math.abs(r));break;case"add":o=t.pop(),r=t.pop(),t.push(r+o);break;case"and":o=t.pop(),r=t.pop(),"boolean"==typeof r&&"boolean"==typeof o?t.push(r&&o):t.push(r&o);break;case"atan":o=t.pop(),r=t.pop(),r=Math.atan2(r,o)/Math.PI*180,r<0&&(r+=360),t.push(r);break;case"bitshift":o=t.pop(),r=t.pop(),r>0?t.push(r<<o):t.push(r>>o);break;case"ceiling":r=t.pop(),t.push(Math.ceil(r));break;case"copy":r=t.pop(),t.copy(r);break;case"cos":r=t.pop(),t.push(Math.cos(r%360/180*Math.PI));break;case"cvi":r=0|t.pop(),t.push(r);break;case"cvr":break;case"div":o=t.pop(),r=t.pop(),t.push(r/o);break;case"dup":t.copy(1);break;case"eq":o=t.pop(),r=t.pop(),t.push(r===o);break;case"exch":t.roll(2,1);break;case"exp":o=t.pop(),r=t.pop(),t.push(r**o);break;case"false":t.push(!1);break;case"floor":r=t.pop(),t.push(Math.floor(r));break;case"ge":o=t.pop(),r=t.pop(),t.push(r>=o);break;case"gt":o=t.pop(),r=t.pop(),t.push(r>o);break;case"idiv":o=t.pop(),r=t.pop(),t.push(r/o|0);break;case"index":r=t.pop(),t.index(r);break;case"le":o=t.pop(),r=t.pop(),t.push(r<=o);break;case"ln":r=t.pop(),t.push(Math.log(r));break;case"log":r=t.pop(),t.push(Math.log10(r));break;case"lt":o=t.pop(),r=t.pop(),t.push(r<o);break;case"mod":o=t.pop(),r=t.pop(),t.push(r%o);break;case"mul":o=t.pop(),r=t.pop(),t.push(r*o);break;case"ne":o=t.pop(),r=t.pop(),t.push(r!==o);break;case"neg":r=t.pop(),t.push(-r);break;case"not":r=t.pop(),"boolean"==typeof r?t.push(!r):t.push(~r);break;case"or":o=t.pop(),r=t.pop(),"boolean"==typeof r&&"boolean"==typeof o?t.push(r||o):t.push(r|o);break;case"pop":t.pop();break;case"roll":o=t.pop(),r=t.pop(),t.roll(r,o);break;case"round":r=t.pop(),t.push(Math.round(r));break;case"sin":r=t.pop(),t.push(Math.sin(r%360/180*Math.PI));break;case"sqrt":r=t.pop(),t.push(Math.sqrt(r));break;case"sub":o=t.pop(),r=t.pop(),t.push(r-o);break;case"true":t.push(!0);break;case"truncate":r=t.pop(),r=r<0?Math.ceil(r):Math.floor(r),t.push(r);break;case"xor":o=t.pop(),r=t.pop(),"boolean"==typeof r&&"boolean"==typeof o?t.push(r!==o):t.push(r^o);break;default:throw new cs(`Unknown operator ${n}`)}else t.push(n);return t.stack}}class Ah{constructor(e){this.type=e}visit(e){Qt("abstract method")}}class Ch extends Ah{constructor(e,t,s){super("args"),this.index=e,this.min=t,this.max=s}visit(e){e.visitArgument(this)}}class Sh extends Ah{constructor(e){super("literal"),this.number=e,this.min=e,this.max=e}visit(e){e.visitLiteral(this)}}class Ih extends Ah{constructor(e,t,s,a,i){super("binary"),this.op=e,this.arg1=t,this.arg2=s,this.min=a,this.max=i}visit(e){e.visitBinaryOperation(this)}}class Bh extends Ah{constructor(e,t){super("max"),this.arg=e,this.min=e.min,this.max=t}visit(e){e.visitMin(this)}}class Fh extends Ah{constructor(e,t,s){super("var"),this.index=e,this.min=t,this.max=s}visit(e){e.visitVariable(this)}}class Mh extends Ah{constructor(e,t){super("definition"),this.variable=e,this.arg=t}visit(e){e.visitVariableDefinition(this)}}class Th{constructor(){this.parts=[]}visitArgument(e){this.parts.push("Math.max(",e.min,", Math.min(",e.max,", src[srcOffset + ",e.index,"]))")}visitVariable(e){this.parts.push("v",e.index)}visitLiteral(e){this.parts.push(e.number)}visitBinaryOperation(e){this.parts.push("("),e.arg1.visit(this),this.parts.push(" ",e.op," "),e.arg2.visit(this),this.parts.push(")")}visitVariableDefinition(e){this.parts.push("var "),e.variable.visit(this),this.parts.push(" = "),e.arg.visit(this),this.parts.push(";")}visitMin(e){this.parts.push("Math.min("),e.arg.visit(this),this.parts.push(", ",e.max,")")}toString(){return this.parts.join("")}}function Rh(e,t){return"literal"===t.type&&0===t.number?e:"literal"===e.type&&0===e.number?t:"literal"===t.type&&"literal"===e.type?new Sh(e.number+t.number):new Ih("+",e,t,e.min+t.min,e.max+t.max)}function Nh(e,t){if("literal"===t.type){if(0===t.number)return new Sh(0);if(1===t.number)return e;if("literal"===e.type)return new Sh(e.number*t.number)}if("literal"===e.type){if(0===e.number)return new Sh(0);if(1===e.number)return t}const s=Math.min(e.min*t.min,e.min*t.max,e.max*t.min,e.max*t.max),a=Math.max(e.min*t.min,e.min*t.max,e.max*t.min,e.max*t.max);return new Ih("*",e,t,s,a)}function Dh(e,t){if("literal"===t.type){if(0===t.number)return e;if("literal"===e.type)return new Sh(e.number-t.number)}return"binary"===t.type&&"-"===t.op&&"literal"===e.type&&1===e.number&&"literal"===t.arg1.type&&1===t.arg1.number?t.arg2:new Ih("-",e,t,e.min-t.max,e.max-t.min)}function Oh(e,t){return e.min>=t?new Sh(t):e.max<=t?e:new Bh(e,t)}class Ph{compile(e,t,s){const a=[],i=[],n=t.length>>1,r=s.length>>1;let o,c,l,h,u,d,f,g,p=0;for(let b=0;b<n;b++)a.push(new Ch(b,t[2*b],t[2*b+1]));for(let b=0,w=e.length;b<w;b++)if(g=e[b],"number"!=typeof g)switch(g){case"add":if(a.length<2)return null;h=a.pop(),l=a.pop(),a.push(Rh(l,h));break;case"cvr":if(a.length<1)return null;break;case"mul":if(a.length<2)return null;h=a.pop(),l=a.pop(),a.push(Nh(l,h));break;case"sub":if(a.length<2)return null;h=a.pop(),l=a.pop(),a.push(Dh(l,h));break;case"exch":if(a.length<2)return null;u=a.pop(),d=a.pop(),a.push(u,d);break;case"pop":if(a.length<1)return null;a.pop();break;case"index":if(a.length<1)return null;if(l=a.pop(),"literal"!==l.type)return null;if(o=l.number,o<0||!Number.isInteger(o)||a.length<o)return null;if(u=a[a.length-o-1],"literal"===u.type||"var"===u.type){a.push(u);break}f=new Fh(p++,u.min,u.max),a[a.length-o-1]=f,a.push(f),i.push(new Mh(f,u));break;case"dup":if(a.length<1)return null;if("number"==typeof e[b+1]&&"gt"===e[b+2]&&e[b+3]===b+7&&"jz"===e[b+4]&&"pop"===e[b+5]&&e[b+6]===e[b+1]){l=a.pop(),a.push(Oh(l,e[b+1])),b+=6;break}if(u=a.at(-1),"literal"===u.type||"var"===u.type){a.push(u);break}f=new Fh(p++,u.min,u.max),a[a.length-1]=f,a.push(f),i.push(new Mh(f,u));break;case"roll":if(a.length<2)return null;if(h=a.pop(),l=a.pop(),"literal"!==h.type||"literal"!==l.type)return null;if(c=h.number,o=l.number,o<=0||!Number.isInteger(o)||!Number.isInteger(c)||a.length<o)return null;if(c=(c%o+o)%o,0===c)break;a.push(...a.splice(a.length-o,o-c));break;default:return null}else a.push(new Sh(g));if(a.length!==r)return null;const m=[];for(const b of i){const e=new Th;b.visit(e),m.push(e.toString())}for(let b=0,w=a.length;b<w;b++){const e=a[b],t=new Th;e.visit(t);const i=s[2*b],n=s[2*b+1],r=[t.toString()];i>e.min&&(r.unshift("Math.max(",i,", "),r.push(")")),n<e.max&&(r.unshift("Math.min(",n,", "),r.push(")")),r.unshift("dest[destOffset + ",b,"] = "),r.push(";"),m.push(r.join(""))}return m.join("\n")}}const Eh=["BN","BN","BN","BN","BN","BN","BN","BN","BN","S","B","S","WS","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","B","B","B","S","WS","ON","ON","ET","ET","ET","ON","ON","ON","ON","ON","ES","CS","ES","CS","CS","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","CS","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","ON","ON","ON","BN","BN","BN","BN","BN","BN","B","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","BN","CS","ON","ET","ET","ET","ET","ON","ON","ON","ON","L","ON","ON","BN","ON","ON","ET","ET","EN","EN","ON","L","ON","ON","ON","EN","L","ON","ON","ON","ON","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","L","ON","L","L","L","L","L","L","L","L"],Lh=["AN","AN","AN","AN","AN","AN","ON","ON","AL","ET","ET","AL","CS","AL","ON","ON","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AL","AL","","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AN","AN","AN","AN","AN","AN","AN","AN","AN","AN","ET","AN","AN","AL","AL","AL","NSM","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","AL","NSM","NSM","NSM","NSM","NSM","NSM","NSM","AN","ON","NSM","NSM","NSM","NSM","NSM","NSM","AL","AL","NSM","NSM","ON","NSM","NSM","NSM","NSM","AL","AL","EN","EN","EN","EN","EN","EN","EN","EN","EN","EN","AL","AL","AL","AL","AL","AL"];function _h(e){return!!(1&e)}function Uh(e){return!(1&e)}function qh(e,t,s){let a,i;for(a=t,i=e.length;a<i;++a)if(e[a]!==s)return a;return a}function jh(e,t,s){for(let a=t,i=s-1;a<i;++a,--i){const t=e[a];e[a]=e[i],e[i]=t}}function Hh(e,t,s=!1){let a="ltr";return s?a="ttb":t||(a="rtl"),{str:e,dir:a}}const $h=[],zh=[];function Gh(e,t=-1,s=!1){let a=!0;const i=e.length;if(0===i||s)return Hh(e,a,s);$h.length=i,zh.length=i;let n,r,o=0;for(n=0;n<i;++n){$h[n]=e.charAt(n);const t=e.charCodeAt(n);let s="L";t<=255?s=Eh[t]:1424<=t&&t<=1524?s="R":1536<=t&&t<=1791?(s=Lh[255&t],s||Zt("Bidi: invalid Unicode character "+t.toString(16))):(1792<=t&&t<=2220||64336<=t&&t<=65023||65136<=t&&t<=65279)&&(s="AL"),"R"!==s&&"AL"!==s&&"AN"!==s||o++,zh[n]=s}if(0===o)return a=!0,Hh(e,a);-1===t&&(o/i<.3&&i>4?(a=!0,t=0):(a=!1,t=1));const c=[];for(n=0;n<i;++n)c[n]=t;const l=_h(t)?"R":"L",h=l,u=h;let d,f=h;for(n=0;n<i;++n)"NSM"===zh[n]?zh[n]=f:f=zh[n];for(f=h,n=0;n<i;++n)d=zh[n],"EN"===d?zh[n]="AL"===f?"AN":"EN":"R"!==d&&"L"!==d&&"AL"!==d||(f=d);for(n=0;n<i;++n)d=zh[n],"AL"===d&&(zh[n]="R");for(n=1;n<i-1;++n)"ES"===zh[n]&&"EN"===zh[n-1]&&"EN"===zh[n+1]&&(zh[n]="EN"),"CS"!==zh[n]||"EN"!==zh[n-1]&&"AN"!==zh[n-1]||zh[n+1]!==zh[n-1]||(zh[n]=zh[n-1]);for(n=0;n<i;++n)if("EN"===zh[n]){for(let e=n-1;e>=0&&"ET"===zh[e];--e)zh[e]="EN";for(let e=n+1;e<i&&"ET"===zh[e];++e)zh[e]="EN"}for(n=0;n<i;++n)d=zh[n],"WS"!==d&&"ES"!==d&&"ET"!==d&&"CS"!==d||(zh[n]="ON");for(f=h,n=0;n<i;++n)d=zh[n],"EN"===d?zh[n]="L"===f?"L":"EN":"R"!==d&&"L"!==d||(f=d);for(n=0;n<i;++n)if("ON"===zh[n]){const e=qh(zh,n+1,"ON");let t=h;n>0&&(t=zh[n-1]);let s=u;e+1<i&&(s=zh[e+1]),"L"!==t&&(t="R"),"L"!==s&&(s="R"),t===s&&zh.fill(t,n,e),n=e-1}for(n=0;n<i;++n)"ON"===zh[n]&&(zh[n]=l);for(n=0;n<i;++n)d=zh[n],Uh(c[n])?"R"===d?c[n]+=1:"AN"!==d&&"EN"!==d||(c[n]+=2):"L"!==d&&"AN"!==d&&"EN"!==d||(c[n]+=1);let g,p=-1,m=99;for(n=0,r=c.length;n<r;++n)g=c[n],p<g&&(p=g),m>g&&_h(g)&&(m=g);for(g=p;g>=m;--g){let e=-1;for(n=0,r=c.length;n<r;++n)c[n]<g?e>=0&&(jh($h,e,n),e=-1):e<0&&(e=n);e>=0&&jh($h,e,c.length)}for(n=0,r=$h.length;n<r;++n){const e=$h[n];"<"!==e&&">"!==e||($h[n]="")}return Hh($h.join(""),a)}const Wh={style:"normal",weight:"normal"},Vh={style:"normal",weight:"bold"},Xh={style:"italic",weight:"normal"},Kh={style:"italic",weight:"bold"},Yh=new Map([["Times-Roman",{local:["Times New Roman","Times-Roman","Times","Liberation Serif","Nimbus Roman","Nimbus Roman L","Tinos","Thorndale","TeX Gyre Termes","FreeSerif","Linux Libertine O","Libertinus Serif","PT Astra Serif","DejaVu Serif","Bitstream Vera Serif","Ubuntu"],style:Wh,ultimate:"serif"}],["Times-Bold",{alias:"Times-Roman",style:Vh,ultimate:"serif"}],["Times-Italic",{alias:"Times-Roman",style:Xh,ultimate:"serif"}],["Times-BoldItalic",{alias:"Times-Roman",style:Kh,ultimate:"serif"}],["Helvetica",{local:["Helvetica","Helvetica Neue","Arial","Arial Nova","Liberation Sans","Arimo","Nimbus Sans","Nimbus Sans L","A030","TeX Gyre Heros","FreeSans","DejaVu Sans","Albany","Bitstream Vera Sans","Arial Unicode MS","Microsoft Sans Serif","Apple Symbols","Cantarell"],path:"LiberationSans-Regular.ttf",style:Wh,ultimate:"sans-serif"}],["Helvetica-Bold",{alias:"Helvetica",path:"LiberationSans-Bold.ttf",style:Vh,ultimate:"sans-serif"}],["Helvetica-Oblique",{alias:"Helvetica",path:"LiberationSans-Italic.ttf",style:Xh,ultimate:"sans-serif"}],["Helvetica-BoldOblique",{alias:"Helvetica",path:"LiberationSans-BoldItalic.ttf",style:Kh,ultimate:"sans-serif"}],["Courier",{local:["Courier","Courier New","Liberation Mono","Nimbus Mono","Nimbus Mono L","Cousine","Cumberland","TeX Gyre Cursor","FreeMono","Linux Libertine Mono O","Libertinus Mono"],style:Wh,ultimate:"monospace"}],["Courier-Bold",{alias:"Courier",style:Vh,ultimate:"monospace"}],["Courier-Oblique",{alias:"Courier",style:Xh,ultimate:"monospace"}],["Courier-BoldOblique",{alias:"Courier",style:Kh,ultimate:"monospace"}],["ArialBlack",{local:["Arial Black"],style:{style:"normal",weight:"900"},fallback:"Helvetica-Bold"}],["ArialBlack-Bold",{alias:"ArialBlack"}],["ArialBlack-Italic",{alias:"ArialBlack",style:{style:"italic",weight:"900"},fallback:"Helvetica-BoldOblique"}],["ArialBlack-BoldItalic",{alias:"ArialBlack-Italic"}],["ArialNarrow",{local:["Arial Narrow","Liberation Sans Narrow","Helvetica Condensed","Nimbus Sans Narrow","TeX Gyre Heros Cn"],style:Wh,fallback:"Helvetica"}],["ArialNarrow-Bold",{alias:"ArialNarrow",style:Vh,fallback:"Helvetica-Bold"}],["ArialNarrow-Italic",{alias:"ArialNarrow",style:Xh,fallback:"Helvetica-Oblique"}],["ArialNarrow-BoldItalic",{alias:"ArialNarrow",style:Kh,fallback:"Helvetica-BoldOblique"}],["Calibri",{local:["Calibri","Carlito"],style:Wh,fallback:"Helvetica"}],["Calibri-Bold",{alias:"Calibri",style:Vh,fallback:"Helvetica-Bold"}],["Calibri-Italic",{alias:"Calibri",style:Xh,fallback:"Helvetica-Oblique"}],["Calibri-BoldItalic",{alias:"Calibri",style:Kh,fallback:"Helvetica-BoldOblique"}],["Wingdings",{local:["Wingdings","URW Dingbats"],style:Wh}],["Wingdings-Regular",{alias:"Wingdings"}],["Wingdings-Bold",{alias:"Wingdings"}],["ËÎÌå",{local:["SimSun","SimSun Regular","NSimSun"],style:Wh,ultimate:"serif"}],["ºÚÌå",{local:["SimHei","SimHei Regular"],style:Wh,ultimate:"sans-serif"}],["¿¬Ìå",{local:["KaiTi","SimKai","SimKai Regular"],style:Wh,ultimate:"sans-serif"}],["·ÂËÎ",{local:["FangSong","SimFang","SimFang Regular"],style:Wh,ultimate:"serif"}],["¿¬Ìå_GB2312",{alias:"¿¬Ìå"}],["·ÂËÎ_GB2312",{alias:"·ÂËÎ"}],["Á¥Êé",{local:["SimLi","SimLi Regular"],style:Wh,ultimate:"serif"}],["ÐÂËÎ",{alias:"ËÎÌå"}]]),Jh=new Map([["Arial-Black","ArialBlack"]]);function Zh(e){const t=new Set(["thin","extralight","ultralight","demilight","semilight","light","book","regular","normal","medium","demibold","semibold","bold","extrabold","ultrabold","black","heavy","extrablack","ultrablack","roman","italic","oblique","ultracondensed","extracondensed","condensed","semicondensed","normal","semiexpanded","expanded","extraexpanded","ultraexpanded","bolditalic"]);return e.split(/[- ,+]+/g).filter(e=>!t.has(e.toLowerCase())).join(" ")}function Qh({alias:e,local:t,path:s,fallback:a,style:i,ultimate:n},r,o,c=!0,l=!0,h=""){const u={style:null,ultimate:null};if(t){const e=h?` ${h}`:"";for(const s of t)r.push(`local(${s}${e})`)}if(e){const t=Yh.get(e),n=h||function(e){switch(e){case Vh:return"Bold";case Xh:return"Italic";case Kh:return"Bold Italic";default:if("bold"===e?.weight)return"Bold";if("italic"===e?.style)return"Italic"}return""}(i);Object.assign(u,Qh(t,r,o,c&&!a,l&&!s,n))}if(i&&(u.style=i),n&&(u.ultimate=n),c&&a){const e=Yh.get(a),{ultimate:t}=Qh(e,r,o,c,l&&!s,h);u.ultimate||=t}return l&&s&&o&&r.push(`url(${o}${s})`),u}function eu(e,t,s,a,i,n){if(a.startsWith("InvalidPDFjsFont_"))return null;"TrueType"!==n&&"Type1"!==n||!/^[A-Z]{6}\+/.test(a)||(a=a.slice(7));const r=a=Kr(a);let o=e.get(r);if(o)return o;let c=Yh.get(a);if(!c)for(const[m,b]of Jh)if(a.startsWith(m)){a=`${b}${a.substring(m.length)}`,c=Yh.get(a);break}let l=!1;c||(c=Yh.get(i),l=!0);const h=`${t.getDocId()}_s${t.createFontId()}`;if(!c){if(!Aa(a))return Zt(`Cannot substitute the font because of its name: ${a}`),e.set(r,null),null;const t=/bold/gi.test(a),s=/oblique|italic/gi.test(a),i=t&&s&&Kh||t&&Vh||s&&Xh||Wh;return o={css:`"${Zh(a)}",${h}`,guessFallback:!0,loadedName:h,baseFontName:a,src:`local(${a})`,style:i},e.set(r,o),o}const u=[];l&&Aa(a)&&u.push(`local(${a})`);const{style:d,ultimate:f}=Qh(c,u,s),g=null===f,p=g?"":`,${f}`;return o={css:`"${Zh(a)}",${h}${p}`,guessFallback:g,loadedName:h,baseFontName:a,src:u.join(","),style:d},e.set(r,o),o}const tu=3285377520,su=4294901760,au=65535;class iu{constructor(e){this.h1=e?4294967295&e:tu,this.h2=e?4294967295&e:tu}update(e){let t,s;if("string"==typeof e){t=new Uint8Array(2*e.length),s=0;for(let a=0,i=e.length;a<i;a++){const i=e.charCodeAt(a);i<=255?t[s++]=i:(t[s++]=i>>>8,t[s++]=255&i)}}else{if(!ArrayBuffer.isView(e))throw new Error("Invalid data format, must be a string or TypedArray.");t=e.slice(),s=t.byteLength}const a=s>>2,i=s-4*a,n=new Uint32Array(t.buffer,0,a);let r=0,o=0,c=this.h1,l=this.h2;const h=3432918353,u=461845907,d=11601,f=13715;for(let g=0;g<a;g++)1&g?(r=n[g],r=r*h&su|r*d&au,r=r<<15|r>>>17,r=r*u&su|r*f&au,c^=r,c=c<<13|c>>>19,c=5*c+3864292196):(o=n[g],o=o*h&su|o*d&au,o=o<<15|o>>>17,o=o*u&su|o*f&au,l^=o,l=l<<13|l>>>19,l=5*l+3864292196);switch(r=0,i){case 3:r^=t[4*a+2]<<16;case 2:r^=t[4*a+1]<<8;case 1:r^=t[4*a],r=r*h&su|r*d&au,r=r<<15|r>>>17,r=r*u&su|r*f&au,1&a?c^=r:l^=r}this.h1=c,this.h2=l}hexdigest(){let e=this.h1,t=this.h2;return e^=t>>>1,e=3981806797*e&su|36045*e&au,t=4283543511*t&su|(2950163797*(t<<16|e>>>16)&su)>>>16,e^=t>>>1,e=444984403*e&su|60499*e&au,t=3301882366*t&su|(3120437893*(t<<16|e>>>16)&su)>>>16,e^=t>>>1,(e>>>0).toString(16).padStart(8,"0")+(t>>>0).toString(16).padStart(8,"0")}}function nu(e,t,s,a,i,n){const r=i*n;let o;o=t<=8?new Uint8Array(r):t<=16?new Uint16Array(r):new Uint32Array(r);const c=s/i,l=a/n;let h,u,d,f,g=0;const p=new Uint16Array(i),m=s;for(h=0;h<i;h++)p[h]=Math.floor(h*c);for(h=0;h<n;h++)for(d=Math.floor(h*l)*m,u=0;u<i;u++)f=d+p[u],o[g++]=e[f];return o}class ru{constructor({xref:e,res:t,image:s,isInline:a=!1,smask:i=null,mask:n=null,isMask:r=!1,pdfFunctionFactory:o,globalColorSpaceCache:c,localColorSpaceCache:l}){this.image=s;const h=s.dict,u=h.get("F","Filter");let d;if(u instanceof Ns)d=u.name;else if(Array.isArray(u)){const t=e.fetchIfRef(u[0]);t instanceof Ns&&(d=t.name)}switch(d){case"JPXDecode":({width:s.width,height:s.height,componentsCount:s.numComps,bitsPerComponent:s.bitsPerComponent}=Hi.parseImageProperties(s.stream)),s.stream.reset();const e=di.getReducePowerForJPX(s.width,s.height,s.numComps);if(this.jpxDecoderOptions={numComponents:0,isIndexedColormap:!1,smaskInData:h.has("SMaskInData"),reducePower:e},e){const t=2**e;s.width=Math.ceil(s.width/t),s.height=Math.ceil(s.height/t)}break;case"JBIG2Decode":s.bitsPerComponent=1,s.numComps=1}let f=h.get("W","Width"),g=h.get("H","Height");if(Number.isInteger(s.width)&&s.width>0&&Number.isInteger(s.height)&&s.height>0&&(s.width!==f||s.height!==g))Zt("PDFImage - using the Width/Height of the image data, rather than the image dictionary."),f=s.width,g=s.height;else{const e="number"==typeof f&&f>0,t="number"==typeof g&&g>0;if(!e||!t){if(!s.fallbackDims)throw new cs(`Invalid image width: ${f} or height: ${g}`);Zt("PDFImage - using the Width/Height of the parent image, for SMask/Mask data."),e||(f=s.fallbackDims.width),t||(g=s.fallbackDims.height)}}this.width=f,this.height=g,this.interpolate=h.get("I","Interpolate"),this.imageMask=h.get("IM","ImageMask")||!1,this.matte=h.get("Matte")||!1;let p=s.bitsPerComponent;if(!p&&(p=h.get("BPC","BitsPerComponent"),!p)){if(!this.imageMask)throw new cs(`Bits per component missing in image: ${this.imageMask}`);p=1}if(this.bpc=p,!this.imageMask){let i=h.getRaw("CS")||h.getRaw("ColorSpace");const n=!!i;if(n)this.jpxDecoderOptions?.smaskInData&&(i=Ns.get("DeviceRGBA"));else if(this.jpxDecoderOptions)i=Ns.get("DeviceRGBA");else switch(s.numComps){case 1:i=Ns.get("DeviceGray");break;case 3:i=Ns.get("DeviceRGB");break;case 4:i=Ns.get("DeviceCMYK");break;default:throw new Error(`Images with ${s.numComps} color components not supported.`)}this.colorSpace=mi.parse({cs:i,xref:e,resources:a?t:null,pdfFunctionFactory:o,globalColorSpaceCache:c,localColorSpaceCache:l}),this.numComps=this.colorSpace.numComps,this.jpxDecoderOptions&&(this.jpxDecoderOptions.numComponents=n?this.numComps:0,this.jpxDecoderOptions.isIndexedColormap="Indexed"===this.colorSpace.name)}if(this.decode=h.getArray("D","Decode"),this.needsDecode=!1,this.decode&&(this.colorSpace&&!this.colorSpace.isDefaultDecode(this.decode,p)||r&&!Ga.isDefaultDecode(this.decode,1))){this.needsDecode=!0;const e=(1<<p)-1;this.decodeCoefficients=[],this.decodeAddends=[];const t="Indexed"===this.colorSpace?.name;for(let s=0,a=0;s<this.decode.length;s+=2,++a){const i=this.decode[s],n=this.decode[s+1];this.decodeCoefficients[a]=t?(n-i)/e:n-i,this.decodeAddends[a]=t?i:e*i}}i?(i.fallbackDims??={width:f,height:g},this.smask=new ru({xref:e,res:t,image:i,isInline:a,pdfFunctionFactory:o,globalColorSpaceCache:c,localColorSpaceCache:l})):n&&(n instanceof $s?n.dict.get("IM","ImageMask")?(n.fallbackDims??={width:f,height:g},this.mask=new ru({xref:e,res:t,image:n,isInline:a,isMask:!0,pdfFunctionFactory:o,globalColorSpaceCache:c,localColorSpaceCache:l})):Zt("Ignoring /Mask in image without /ImageMask."):this.mask=n)}static async buildImage({xref:e,res:t,image:s,isInline:a=!1,pdfFunctionFactory:i,globalColorSpaceCache:n,localColorSpaceCache:r}){const o=s;let c=null,l=null;const h=s.dict.get("SMask"),u=s.dict.get("Mask");return h?h instanceof $s?c=h:Zt("Unsupported /SMask format."):u&&(u instanceof $s||Array.isArray(u)?l=u:Zt("Unsupported /Mask format.")),new ru({xref:e,res:t,image:o,isInline:a,smask:c,mask:l,pdfFunctionFactory:i,globalColorSpaceCache:n,localColorSpaceCache:r})}static async createMask({image:e,isOffscreenCanvasSupported:t=!1}){const{dict:s}=e,a=s.get("W","Width"),i=s.get("H","Height"),n=s.get("I","Interpolate"),r=s.getArray("D","Decode"),o=r?.[0]>0,c=(a+7>>3)*i,l=e.getBytes(c),h=1===a&&1===i&&o===(0===l.length||!!(128&l[0]));if(h)return{isSingleOpaquePixel:h};if(t){if(di.needsToBeResized(a,i)){const e=new Uint8ClampedArray(a*i*4);return ui({src:l,dest:e,width:a,height:i,nonBlackColor:0,inverseDecode:o}),di.createImage({kind:B,data:e,width:a,height:i,interpolate:n})}const e=new OffscreenCanvas(a,i),t=e.getContext("2d"),s=t.createImageData(a,i);return ui({src:l,dest:s.data,width:a,height:i,nonBlackColor:0,inverseDecode:o}),t.putImageData(s,0,0),{data:null,width:a,height:i,interpolate:n,bitmap:e.transferToImageBitmap()}}const u=l.byteLength;let d;if(e instanceof gi&&(!o||c===u)?d=l:o?(d=new Uint8Array(c),d.set(l),d.fill(255,u)):d=new Uint8Array(l),o)for(let f=0;f<u;f++)d[f]^=255;return{data:d,width:a,height:i,interpolate:n}}get drawWidth(){return Math.max(this.width,this.smask?.width||0,this.mask?.width||0)}get drawHeight(){return Math.max(this.height,this.smask?.height||0,this.mask?.height||0)}decodeBuffer(e){const t=this.bpc,s=this.numComps,a=this.decodeAddends,i=this.decodeCoefficients,n=(1<<t)-1;let r,o;if(1===t){for(r=0,o=e.length;r<o;r++)e[r]=+!e[r];return}let c=0;for(r=0,o=this.width*this.height;r<o;r++)for(let t=0;t<s;t++)e[c]=Ss(a[t]+e[c]*i[t],0,n),c++}getComponents(e){const t=this.bpc;if(8===t)return e;const s=this.width,a=this.height,i=this.numComps,n=s*a*i;let r,o=0;r=t<=8?new Uint8Array(n):t<=16?new Uint16Array(n):new Uint32Array(n);const c=s*i,l=(1<<t)-1;let h,u,d=0;if(1===t){let t,s,i;for(let n=0;n<a;n++){for(s=d+(-8&c),i=d+c;d<s;)u=e[o++],r[d]=u>>7&1,r[d+1]=u>>6&1,r[d+2]=u>>5&1,r[d+3]=u>>4&1,r[d+4]=u>>3&1,r[d+5]=u>>2&1,r[d+6]=u>>1&1,r[d+7]=1&u,d+=8;if(d<i)for(u=e[o++],t=128;d<i;)r[d++]=+!!(u&t),t>>=1}}else{let s=0;for(u=0,d=0,h=n;d<h;++d){for(d%c===0&&(u=0,s=0);s<t;)u=u<<8|e[o++],s+=8;const a=s-t;let i=u>>a;i<0?i=0:i>l&&(i=l),r[d]=i,u&=(1<<a)-1,s=a}}return r}async fillOpacity(e,t,s,a,i){const n=this.smask,r=this.mask;let o,c,l,h,u,d;if(n)c=n.width,l=n.height,o=new Uint8ClampedArray(c*l),await n.fillGrayBuffer(o),c===t&&l===s||(o=nu(o,n.bpc,c,l,t,s));else if(r)if(r instanceof ru){for(c=r.width,l=r.height,o=new Uint8ClampedArray(c*l),r.numComps=1,await r.fillGrayBuffer(o),h=0,u=c*l;h<u;++h)o[h]=255-o[h];c===t&&l===s||(o=nu(o,r.bpc,c,l,t,s))}else{if(!Array.isArray(r))throw new cs("Unknown mask format.");{o=new Uint8ClampedArray(t*s);const e=this.numComps;for(h=0,u=t*s;h<u;++h){let t=0;const s=h*e;for(d=0;d<e;++d){const e=i[s+d],a=2*d;if(e<r[a]||e>r[a+1]){t=255;break}}o[h]=t}}}if(o)for(h=0,d=3,u=t*a;h<u;++h,d+=4)e[d]=o[h];else for(h=0,d=3,u=t*a;h<u;++h,d+=4)e[d]=255}undoPreblend(e,t,s){const a=this.smask?.matte;if(!a)return;const i=this.colorSpace.getRgb(a,0),n=i[0],r=i[1],o=i[2],c=t*s*4;for(let l=0;l<c;l+=4){const t=e[l+3];if(0===t){e[l]=255,e[l+1]=255,e[l+2]=255;continue}const s=255/t;e[l]=(e[l]-n)*s+n,e[l+1]=(e[l+1]-r)*s+r,e[l+2]=(e[l+2]-o)*s+o}}async createImageData(e=!1,t=!1){const s=this.drawWidth,a=this.drawHeight,i={width:s,height:a,interpolate:this.interpolate,kind:0,data:null},n=this.numComps,r=this.width,o=this.height,c=this.bpc,l=r*n*c+7>>3,h=t&&di.needsToBeResized(s,a);if(!this.smask&&!this.mask&&"DeviceRGBA"===this.colorSpace.name){i.kind=B;const e=i.data=await this.getImageBytes(o*r*4,{});return t?h?di.createImage(i,!1):this.createBitmap(B,s,a,e):i}if(!e){let e;if("DeviceGray"===this.colorSpace.name&&1===c?e=S:"DeviceRGB"!==this.colorSpace.name||8!==c||this.needsDecode||(e=I),e&&!this.smask&&!this.mask&&s===r&&a===o){const n=await this.#he(r,o);if(n)return n;const c=await this.getImageBytes(o*l,{});if(t)return h?di.createImage({data:c,kind:e,width:s,height:a,interpolate:this.interpolate},this.needsDecode):this.createBitmap(e,r,o,c);if(i.kind=e,i.data=c,this.needsDecode){es(e===S,"PDFImage.createImageData: The image must be grayscale.");const t=i.data;for(let e=0,s=t.length;e<s;e++)t[e]^=255}return i}if(this.image instanceof Ui&&!this.smask&&!this.mask&&!this.needsDecode){let e=o*l;if(t&&!h){let t=!1;switch(this.colorSpace.name){case"DeviceGray":e*=4,t=!0;break;case"DeviceRGB":e=e/3*4,t=!0;break;case"DeviceCMYK":t=!0}if(t){const t=await this.#he(s,a);if(t)return t;const i=await this.getImageBytes(e,{drawWidth:s,drawHeight:a,forceRGBA:!0});return this.createBitmap(B,s,a,i)}}else switch(this.colorSpace.name){case"DeviceGray":e*=3;case"DeviceRGB":case"DeviceCMYK":return i.kind=I,i.data=await this.getImageBytes(e,{drawWidth:s,drawHeight:a,forceRGB:!0}),h?di.createImage(i):i}}}const u=await this.getImageBytes(o*l,{internal:!0}),d=0|u.length/l*a/o,f=this.getComponents(u);let g,p,m,b,w,y;return t&&!h&&(m=new OffscreenCanvas(s,a),b=m.getContext("2d"),w=b.createImageData(s,a),y=w.data),i.kind=B,e||this.smask||this.mask?(t&&!h||(y=new Uint8ClampedArray(s*a*4)),g=1,p=!0,await this.fillOpacity(y,s,a,d,f)):(!t||h?(i.kind=I,y=new Uint8ClampedArray(s*a*3),g=0):(new Uint32Array(y.buffer).fill(gs.isLittleEndian?4278190080:255),g=1),p=!1),this.needsDecode&&this.decodeBuffer(f),this.colorSpace.fillRgb(y,r,o,s,a,d,c,f,g),p&&this.undoPreblend(y,s,d),t&&!h?(b.putImageData(w,0,0),{data:null,width:s,height:a,bitmap:m.transferToImageBitmap(),interpolate:this.interpolate}):(i.data=y,h?di.createImage(i):i)}async fillGrayBuffer(e){const t=this.numComps;if(1!==t)throw new cs(`Reading gray scale from a color image: ${t}`);const s=this.width,a=this.height,i=this.bpc,n=s*t*i+7>>3,r=await this.getImageBytes(a*n,{internal:!0}),o=this.getComponents(r);let c,l;if(1===i){if(l=s*a,this.needsDecode)for(c=0;c<l;++c)e[c]=o[c]-1&255;else for(c=0;c<l;++c)e[c]=255&-o[c];return}this.needsDecode&&this.decodeBuffer(o),l=s*a;const h=255/((1<<i)-1);for(c=0;c<l;++c)e[c]=h*o[c]}createBitmap(e,t,s,a){const i=new OffscreenCanvas(t,s),n=i.getContext("2d");let r;return e===B?r=new ImageData(a,t,s):(r=n.createImageData(t,s),hi({kind:e,src:a,dest:new Uint32Array(r.data.buffer),width:t,height:s,inverseDecode:this.needsDecode})),n.putImageData(r,0,0),{data:null,width:t,height:s,bitmap:i.transferToImageBitmap(),interpolate:this.interpolate}}async#he(e,t){const s=await this.image.getTransferableImage();return s?{data:null,width:e,height:t,bitmap:s,interpolate:this.interpolate}:null}async getImageBytes(e,{drawWidth:t,drawHeight:s,forceRGBA:a=!1,forceRGB:i=!1,internal:n=!1}){this.image.reset(),this.image.drawWidth=t||this.width,this.image.drawHeight=s||this.height,this.image.forceRGBA=!!a,this.image.forceRGB=!!i;const r=await this.image.getImageData(e,this.jpxDecoderOptions);return n||this.image instanceof gi?r:(es(r instanceof Uint8Array,'PDFImage.getImageBytes: Unsupported "imageBytes" type.'),new Uint8Array(r))}}const ou=Object.freeze({maxImageSize:-1,disableFontFace:!1,ignoreErrors:!1,isEvalSupported:!0,isOffscreenCanvasSupported:!1,isImageDecoderSupported:!1,canvasMaxAreaInBytes:-1,fontExtraProperties:!1,useSystemFonts:!0,useWasm:!0,useWorkerFetch:!0,cMapUrl:null,iccUrl:null,standardFontDataUrl:null,wasmUrl:null}),cu=1,lu=2,hu=Promise.resolve();function uu(e,t=!1){if(Array.isArray(e)){for(const t of e){const e=uu(t,!0);if(e)return e}return Zt(`Unsupported blend mode Array: ${e}`),"source-over"}if(!(e instanceof Ns))return t?null:"source-over";switch(e.name){case"Normal":case"Compatible":return"source-over";case"Multiply":return"multiply";case"Screen":return"screen";case"Overlay":return"overlay";case"Darken":return"darken";case"Lighten":return"lighten";case"ColorDodge":return"color-dodge";case"ColorBurn":return"color-burn";case"HardLight":return"hard-light";case"SoftLight":return"soft-light";case"Difference":return"difference";case"Exclusion":return"exclusion";case"Hue":return"hue";case"Saturation":return"saturation";case"Color":return"color";case"Luminosity":return"luminosity"}return t?null:(Zt(`Unsupported blend mode: ${e.name}`),"source-over")}function du(e,{objId:t,fn:s,args:a,optionalContent:i,hasMask:n}){t&&e.addDependency(t),e.addImageOps(s,a,i,n),s===Tt&&a[0]?.count>0&&a[0].count++}class fu{static TIME_SLOT_DURATION_MS=20;static CHECK_TIME_EVERY=100;constructor(){this.reset()}check(){return!(++this.checked<fu.CHECK_TIME_EVERY)&&(this.checked=0,this.endTime<=Date.now())}reset(){this.endTime=Date.now()+fu.TIME_SLOT_DURATION_MS,this.checked=0}}class gu{constructor({xref:e,handler:t,pageIndex:s,idFactory:a,fontCache:i,builtInCMapCache:n,standardFontDataCache:r,globalColorSpaceCache:o,globalImageCache:c,systemFontCache:l,options:h=null}){this.xref=e,this.handler=t,this.pageIndex=s,this.idFactory=a,this.fontCache=i,this.builtInCMapCache=n,this.standardFontDataCache=r,this.globalColorSpaceCache=o,this.globalImageCache=c,this.systemFontCache=l,this.options=h||ou,this.type3FontRefs=null,this._regionalImageCache=new gh,this._fetchBuiltInCMapBound=this.fetchBuiltInCMap.bind(this)}get _pdfFunctionFactory(){return ss(this,"_pdfFunctionFactory",new bh({xref:this.xref,isEvalSupported:this.options.isEvalSupported}))}get parsingType3Font(){return!!this.type3FontRefs}clone(e=null){const t=Object.create(this);return t.options=Object.assign(Object.create(null),this.options,e),t}hasBlendModes(e,t){if(!(e instanceof Ps))return!1;if(e.objId&&t.has(e.objId))return!1;const s=new Ls(t);e.objId&&s.put(e.objId);const a=[e],i=this.xref;for(;a.length;){const e=a.shift(),n=e.get("ExtGState");if(n instanceof Ps)for(let a of n.getRawValues()){if(a instanceof Es){if(s.has(a))continue;try{a=i.fetch(a)}catch(t){s.put(a),Jt(`hasBlendModes - ignoring ExtGState: "${t}".`);continue}}if(!(a instanceof Ps))continue;a.objId&&s.put(a.objId);const e=a.get("BM");if(e instanceof Ns){if("Normal"!==e.name)return!0}else if(void 0!==e&&Array.isArray(e))for(const t of e)if(t instanceof Ns&&"Normal"!==t.name)return!0}const r=e.get("XObject");if(r instanceof Ps)for(let o of r.getRawValues()){if(o instanceof Es){if(s.has(o))continue;try{o=i.fetch(o)}catch(t){s.put(o),Jt(`hasBlendModes - ignoring XObject: "${t}".`);continue}}if(!(o instanceof $s))continue;o.dict.objId&&s.put(o.dict.objId);const e=o.dict.get("Resources");!(e instanceof Ps)||e.objId&&s.has(e.objId)||(a.push(e),e.objId&&s.put(e.objId))}}for(const n of s)t.put(n);return!1}async fetchBuiltInCMap(e){const t=this.builtInCMapCache.get(e);if(t)return t;let s;return s=this.options.useWorkerFetch?{cMapData:await ta(`${this.options.cMapUrl}${e}.bcmap`),isCompressed:!0}:await this.handler.sendWithPromise("FetchBinaryData",{type:"cMapReaderFactory",name:e}),this.builtInCMapCache.set(e,s),s}async fetchStandardFontData(e){const t=this.standardFontDataCache.get(e);if(t)return new ni(t);if(this.options.useSystemFonts&&"Symbol"!==e&&"ZapfDingbats"!==e)return null;const s=vo()[e];let a;try{a=this.options.useWorkerFetch?await ta(`${this.options.standardFontDataUrl}${s}`):await this.handler.sendWithPromise("FetchBinaryData",{type:"standardFontDataFactory",filename:s})}catch(e){return Zt(e),null}return this.standardFontDataCache.set(e,a),new ni(a)}async buildFormXObject(e,t,s,a,i,n,r,o){const{dict:c}=t,l=da(c.getArray("Matrix"),null),h=ga(c.getArray("BBox"),null);let u,d;c.has("OC")&&(u=await this.parseMarkedContentProps(c.get("OC"),e)),void 0!==u&&a.addOp(xt,["OC",u]);const f=c.get("Group");if(f){d={matrix:l,bbox:h,smask:s,isolated:!1,knockout:!1};let t=null;if(Us(f.get("S"),"Transparency")&&(d.isolated=f.get("I")||!1,d.knockout=f.get("K")||!1,f.has("CS"))){const s=this._getColorSpace(f.getRaw("CS"),e,r);t=s instanceof Ga?s:await this._handleColorSpace(s)}s?.backdrop&&(t||=mi.rgb,s.backdrop=t.getRgbHex(s.backdrop,0)),a.addOp(It,[d])}const g=[l&&new Float32Array(l),!f&&h&&new Float32Array(h)||null];a.addOp(Ct,g);const p=c.get("Resources");await this.getOperatorList({stream:t,task:i,resources:p instanceof Ps?p:e,operatorList:a,initialState:n,prevRefs:o}),a.addOp(St,[]),f&&a.addOp(Bt,[d]),void 0!==u&&a.addOp(kt,[])}_sendImgData(e,t,s=!1){const a=t?[t.bitmap||t.data.buffer]:null;return this.parsingType3Font||s?this.handler.send("commonobj",[e,"Image",t],a):this.handler.send("obj",[e,this.pageIndex,"Image",t],a)}async buildPaintImageXObject({resources:e,image:t,isInline:s=!1,operatorList:a,cacheKey:i,localImageCache:n,localColorSpaceCache:r}){const{maxImageSize:o,ignoreErrors:c,isOffscreenCanvasSupported:l}=this.options,{dict:h}=t,u=h.objId,d=h.get("W","Width"),f=h.get("H","Height");if(!d||"number"!=typeof d||!f||"number"!=typeof f)return void Zt("Image dimensions are missing, or not numbers.");if(-1!==o&&d*f>o){const e="Image exceeded maximum allowed size and was removed.";if(!c)throw new Error(e);return void Zt(e)}let g,p,m,b;if(h.has("OC")&&(g=await this.parseMarkedContentProps(h.get("OC"),e)),h.get("IM","ImageMask")){if(p=await ru.createMask({image:t,isOffscreenCanvasSupported:l&&!this.parsingType3Font}),p.isSingleOpaquePixel){if(m=Lt,b=[],a.addImageOps(m,b,g),i){const e={fn:m,args:b,optionalContent:g};n.set(i,u,e),u&&this._regionalImageCache.set(null,u,e)}return}if(this.parsingType3Font)return b=function({data:e,width:t,height:s}){if(t>1e3||s>1e3)return null;const a=new Uint8Array([0,2,4,0,1,0,5,4,8,10,0,8,0,2,1,0]),i=t+1,n=new Uint8Array(i*(s+1));let r,o,c;const l=t+7&-8,h=new Uint8Array(l*s);let u=0;for(const k of e){let e=128;for(;e>0;)h[u++]=k&e?0:255,e>>=1}let d=0;for(u=0,0!==h[u]&&(n[0]=1,++d),o=1;o<t;o++)h[u]!==h[u+1]&&(n[o]=h[u]?2:1,++d),u++;for(0!==h[u]&&(n[o]=2,++d),r=1;r<s;r++){u=r*l,c=r*i,h[u-l]!==h[u]&&(n[c]=h[u]?1:8,++d);let e=(h[u]?4:0)+(h[u-l]?8:0);for(o=1;o<t;o++)e=(e>>2)+(h[u+1]?4:0)+(h[u-l+1]?8:0),a[e]&&(n[c+o]=a[e],++d),u++;if(h[u-l]!==h[u]&&(n[c+o]=h[u]?2:4,++d),d>1e3)return null}for(u=l*(s-1),c=r*i,0!==h[u]&&(n[c]=8,++d),o=1;o<t;o++)h[u]!==h[u+1]&&(n[c+o]=h[u]?4:8,++d),u++;if(0!==h[u]&&(n[c+o]=4,++d),d>1e3)return null;const f=new Int32Array([0,i,-1,0,-i,0,0,0,1]),g=[],{a:p,b:m,c:b,d:w,e:y,f:x}=(new DOMMatrix).scaleSelf(1/t,-1/s).translateSelf(0,-s);for(r=0;d&&r<=s;r++){let e=r*i;const s=e+t;for(;e<s&&!n[e];)e++;if(e===s)continue;let a=e%i,o=r;g.push(Ht,p*a+b*o+y,m*a+w*o+x);const c=e;let l=n[e];do{const t=f[l];do{e+=t}while(!n[e]);const s=n[e];5!==s&&10!==s?(l=s,n[e]=0):(l=s&51*l>>4,n[e]&=l>>2|l<<2),a=e%i,o=e/i|0,g.push($t,p*a+b*o+y,m*a+w*o+x),n[e]||--d}while(c!==e);--r}return[jt,[new Float32Array(g)],new Float32Array([0,0,t,s])]}(p),b?void a.addImageOps(_t,b,g):(Zt("Cannot compile Type3 glyph."),void a.addImageOps(Tt,[p],g));const e=`mask_${this.idFactory.createObjId()}`;if(a.addDependency(e),p.dataLen=p.bitmap?p.width*p.height*4:p.data.length,this._sendImgData(e,p),m=Tt,b=[{data:e,width:p.width,height:p.height,interpolate:p.interpolate,count:1}],a.addImageOps(m,b,g),i){const t={objId:e,fn:m,args:b,optionalContent:g};n.set(i,u,t),u&&this._regionalImageCache.set(null,u,t)}return}const w=h.has("SMask")||h.has("Mask");if(s&&d+f<200&&!w){try{const i=new ru({xref:this.xref,res:e,image:t,isInline:s,pdfFunctionFactory:this._pdfFunctionFactory,globalColorSpaceCache:this.globalColorSpaceCache,localColorSpaceCache:r});p=await i.createImageData(!0,!1),a.addImageOps(Dt,[p],g)}catch(e){const t=`Unable to decode inline image: "${e}".`;if(!c)throw new Error(t);Zt(t)}return}let y=`img_${this.idFactory.createObjId()}`,x=!1,k=null;if(this.parsingType3Font?y=`${this.idFactory.getDocId()}_type3_${y}`:i&&u&&(x=this.globalImageCache.shouldCache(u,this.pageIndex),x&&(es(!s,"Cannot cache an inline image globally."),y=`${this.idFactory.getDocId()}_${y}`)),a.addDependency(y),m=Nt,b=[y,d,f],a.addImageOps(m,b,g,w),x){if(k={objId:y,fn:m,args:b,optionalContent:g,hasMask:w,byteSize:0},this.globalImageCache.hasDecodeFailed(u))return this.globalImageCache.setData(u,k),void this._sendImgData(y,null,x);if(d*f>25e4||w){const e=await this.handler.sendWithPromise("commonobj",[y,"CopyLocalImage",{imageRef:u}]);if(e)return this.globalImageCache.setData(u,k),void this.globalImageCache.addByteSize(u,e)}}if(ru.buildImage({xref:this.xref,res:e,image:t,isInline:s,pdfFunctionFactory:this._pdfFunctionFactory,globalColorSpaceCache:this.globalColorSpaceCache,localColorSpaceCache:r}).then(async e=>(p=await e.createImageData(!1,l),p.dataLen=p.bitmap?p.width*p.height*4:p.data.length,p.ref=u,x&&this.globalImageCache.addByteSize(u,p.dataLen),this._sendImgData(y,p,x))).catch(e=>(Zt(`Unable to decode image "${y}": "${e}".`),u&&this.globalImageCache.addDecodeFailed(u),this._sendImgData(y,null,x))),i){const e={objId:y,fn:m,args:b,optionalContent:g,hasMask:w};n.set(i,u,e),u&&(this._regionalImageCache.set(null,u,e),x&&(es(k,"The global cache-data must be available."),this.globalImageCache.setData(u,k)))}}handleSMask(e,t,s,a,i,n,r){const o=e.get("G"),c={subtype:e.get("S").name,backdrop:e.get("BC")},l=e.get("TR");if(xh(l)){const e=this._pdfFunctionFactory.create(l),t=new Uint8Array(256),s=new Float32Array(1);for(let a=0;a<256;a++)s[0]=a/255,e(s,0,s,0),t[a]=255*s[0]|0;c.transferMap=t}return this.buildFormXObject(t,o,c,s,a,i.state.clone({newPath:!0}),n,r)}handleTransferFunction(e){let t;if(Array.isArray(e))t=e;else{if(!xh(e))return null;t=[e]}const s=[];let a=0,i=0;for(const n of t){const e=this.xref.fetchIfRef(n);if(a++,Us(e,"Identity")){s.push(null);continue}if(!xh(e))return null;const t=this._pdfFunctionFactory.create(e),r=new Uint8Array(256),o=new Float32Array(1);for(let s=0;s<256;s++)o[0]=s/255,t(o,0,o,0),r[s]=255*o[0]|0;s.push(r),i++}return 1!==a&&4!==a||0===i?null:s}handleTilingType(e,t,s,a,i,n,r,o){const c=new Vi,l=Ps.merge({xref:this.xref,dictArray:[i.get("Resources"),s]});return this.getOperatorList({stream:a,task:r,resources:l,operatorList:c}).then(function(){const s=c.getIR(),a=gl(s,i,t);n.addDependencies(c.dependencies),n.addOp(e,a),i.objId&&o.set(null,i.objId,{operatorListIR:s,dict:i})}).catch(e=>{if(!(e instanceof ls)){if(!this.options.ignoreErrors)throw e;Zt(`handleTilingType - ignoring pattern: "${e}".`)}})}async handleSetFont(e,t,s,a,i,n,r=null,o=null){const c=t?.[0]instanceof Ns?t[0].name:null,l=await this.loadFont(c,s,e,i,r,o);return l.font.isType3Font&&a.addDependencies(l.type3Dependencies),n.font=l.font,l.send(this.handler),l.loadedName}handleText(e,t){const s=t.font,a=s.charsToGlyphs(e);return s.data&&(t.textRenderingMode&C||"Pattern"===t.fillColorSpace.name||s.disableFontFace)&&gu.buildFontPaths(s,a,this.handler,this.options),a}ensureStateFont(e){if(e.font)return;const t=new cs("Missing setFont (Tf) operator before text rendering operator.");if(!this.options.ignoreErrors)throw t;Zt(`ensureStateFont: "${t}".`)}async setGState({resources:e,gState:t,operatorList:s,cacheKey:a,task:i,stateManager:n,localGStateCache:r,localColorSpaceCache:o,seenRefs:c}){const l=t.objId;let h=!0;const u=[];let d=Promise.resolve();for(const[f,g]of t)switch(f){case"Type":break;case"LW":if("number"!=typeof g){Zt(`Invalid LW (line width): ${g}`);break}u.push([f,Math.abs(g)]);break;case"LC":case"LJ":case"ML":case"D":case"RI":case"FL":case"CA":case"ca":u.push([f,g]);break;case"Font":h=!1,d=d.then(()=>this.handleSetFont(e,null,g[0],s,i,n.state).then(function(e){s.addDependency(e),u.push([f,[e,g[1]]])}));break;case"BM":u.push([f,uu(g)]);break;case"SMask":if(Us(g,"None")){u.push([f,!1]);break}g instanceof Ps?(h=!1,d=d.then(()=>this.handleSMask(g,e,s,i,n,o,c)),u.push([f,!0])):Zt("Unsupported SMask type");break;case"TR":const t=this.handleTransferFunction(g);u.push([f,t]);break;case"OP":case"op":case"OPM":case"BG":case"BG2":case"UCR":case"UCR2":case"TR2":case"HT":case"SM":case"SA":case"AIS":case"TK":Jt("graphic state operator "+f);break;default:Jt("Unknown graphic state operator "+f)}await d,u.length>0&&s.addOp(fe,[u]),h&&r.set(a,l,u)}loadFont(e,t,s,a,i=null,n=null){const r=async()=>new pu({loadedName:"g_font_error",font:new Xc(`Font "${e}" is not available.`),dict:t});let o;if(t)t instanceof Es&&(o=t);else{const t=s.get("Font");t&&(o=t.getRaw(e))}if(o){if(this.type3FontRefs?.has(o))return r();if(this.fontCache.has(o))return this.fontCache.get(o);try{t=this.xref.fetchIfRef(o)}catch(e){Zt(`loadFont - lookup failed: "${e}".`)}}if(!(t instanceof Ps)){if(!this.options.ignoreErrors&&!this.parsingType3Font)return Zt(`Font "${e}" is not available.`),r();Zt(`Font "${e}" is not available -- attempting to fallback to a default font.`),t=i||gu.fallbackFontDict}if(t.cacheKey&&this.fontCache.has(t.cacheKey))return this.fontCache.get(t.cacheKey);const{promise:c,resolve:l}=Promise.withResolvers();let h;try{h=this.preEvaluateFont(t),h.cssFontInfo=n}catch(e){return Zt(`loadFont - preEvaluateFont failed: "${e}".`),r()}const{descriptor:u,hash:d}=h,f=o instanceof Es;let g;if(d&&u instanceof Ps){const e=u.fontAliases||=Object.create(null);if(e[d]){const t=e[d].aliasRef;if(f&&t&&this.fontCache.has(t))return this.fontCache.putAlias(o,t),this.fontCache.get(o)}else e[d]={fontID:this.idFactory.createFontId()};f&&(e[d].aliasRef=o),g=e[d].fontID}else g=this.idFactory.createFontId();return es(g?.startsWith("f"),'The "fontID" must be (correctly) defined.'),f?this.fontCache.put(o,c):(t.cacheKey=`cacheKey_${g}`,this.fontCache.put(t.cacheKey,c)),t.loadedName=`${this.idFactory.getDocId()}_${g}`,this.translateFont(h).then(async e=>{const i=new pu({loadedName:t.loadedName,font:e,dict:t});if(e.isType3Font)try{await i.loadType3Data(this,s,a)}catch(e){throw new Error(`Type3 font load error: ${e}`)}l(i)}).catch(e=>{Zt(`loadFont - translateFont failed: "${e}".`),l(new pu({loadedName:t.loadedName,font:new Xc(e?.message),dict:t}))}),c}buildPath(e,t,s){const{pathMinMax:a,pathBuffer:i}=s;switch(0|e){case Ae:{const e=s.currentPointX=t[0],n=s.currentPointY=t[1],r=t[2],o=t[3],c=e+r,l=n+o;0===r||0===o?i.push(Ht,e,n,$t,c,l,Wt):i.push(Ht,e,n,$t,c,n,$t,c,l,$t,e,l,Wt),ms.rectBoundingBox(e,n,c,l,a);break}case be:{const e=s.currentPointX=t[0],n=s.currentPointY=t[1];i.push(Ht,e,n),ms.pointBoundingBox(e,n,a);break}case we:{const e=s.currentPointX=t[0],n=s.currentPointY=t[1];i.push($t,e,n),ms.pointBoundingBox(e,n,a);break}case ye:{const e=s.currentPointX,n=s.currentPointY,[r,o,c,l,h,u]=t;s.currentPointX=h,s.currentPointY=u,i.push(zt,r,o,c,l,h,u),ms.bezierBoundingBox(e,n,r,o,c,l,h,u,a);break}case xe:{const e=s.currentPointX,n=s.currentPointY,[r,o,c,l]=t;s.currentPointX=c,s.currentPointY=l,i.push(zt,e,n,r,o,c,l),ms.bezierBoundingBox(e,n,e,n,r,o,c,l,a);break}case ke:{const e=s.currentPointX,n=s.currentPointY,[r,o,c,l]=t;s.currentPointX=c,s.currentPointY=l,i.push(zt,r,o,c,l,c,l),ms.bezierBoundingBox(e,n,r,o,c,l,c,l,a);break}case ve:i.push(Wt)}}_getColorSpace(e,t,s){return mi.parse({cs:e,xref:this.xref,resources:t,pdfFunctionFactory:this._pdfFunctionFactory,globalColorSpaceCache:this.globalColorSpaceCache,localColorSpaceCache:s,asyncIfNotCached:!0})}async _handleColorSpace(e){try{return await e}catch(e){if(e instanceof ls)return null;if(this.options.ignoreErrors)return Zt(`_handleColorSpace - ignoring ColorSpace: "${e}".`),null;throw e}}parseShading({shading:e,resources:t,localColorSpaceCache:s,localShadingPatternCache:a}){let i,n=a.get(e);if(n)return n;try{i=rl.parseShading(e,this.xref,t,this._pdfFunctionFactory,this.globalColorSpaceCache,s).getIR()}catch(t){if(t instanceof ls)return null;if(this.options.ignoreErrors)return Zt(`parseShading - ignoring shading: "${t}".`),a.set(e,null),null;throw t}if(n=`pattern_${this.idFactory.createObjId()}`,this.parsingType3Font&&(n=`${this.idFactory.getDocId()}_type3_${n}`),a.set(e,n),this.parsingType3Font){const e=[],t=Zc.write(i);e.push(t),this.handler.send("commonobj",[n,"Pattern",t],e)}else this.handler.send("obj",[n,this.pageIndex,"Pattern",i]);return n}handleColorN(e,t,s,a,i,n,r,o,c,l){const h=s.pop();if(h instanceof Ns){const u=i.getRaw(h.name),d=u instanceof Es&&c.getByRef(u);if(d)try{const i=a.base?a.base.getRgbHex(s,0):null,n=gl(d.operatorListIR,d.dict,i);return void e.addOp(t,n)}catch{}const f=this.xref.fetchIfRef(u);if(f){const i=f instanceof $s?f.dict:f,h=i.get("PatternType");if(h===cu){const o=a.base?a.base.getRgbHex(s,0):null;return this.handleTilingType(t,o,n,f,i,e,r,c)}if(h===lu){const s=i.get("Shading"),a=this.parseShading({shading:s,resources:n,localColorSpaceCache:o,localShadingPatternCache:l});if(a){const s=da(i.getArray("Matrix"),null);e.addOp(t,["Shading",a,s])}return}throw new cs(`Unknown PatternType: ${h}`)}}throw new cs(`Unknown PatternName: ${h}`)}_parseVisibilityExpression(e,t,s){if(++t>10)return void Zt("Visibility expression is too deeply nested");const a=e.length,i=this.xref.fetchIfRef(e[0]);if(!(a<2)&&i instanceof Ns){switch(i.name){case"And":case"Or":case"Not":s.push(i.name);break;default:return void Zt(`Invalid operator ${i.name} in visibility expression`)}for(let i=1;i<a;i++){const a=e[i],n=this.xref.fetchIfRef(a);if(Array.isArray(n)){const e=[];s.push(e),this._parseVisibilityExpression(n,t,e)}else a instanceof Es&&s.push(a.toString())}}else Zt("Invalid visibility expression")}async parseMarkedContentProps(e,t){let s;if(e instanceof Ns)s=t.get("Properties").get(e.name);else{if(!(e instanceof Ps))throw new cs("Optional content properties malformed.");s=e}const a=s.get("Type")?.name;if("OCG"===a)return{type:a,id:s.objId};if("OCMD"===a){const e=s.get("VE");if(Array.isArray(e)){const t=[];if(this._parseVisibilityExpression(e,0,t),t.length>0)return{type:"OCMD",expression:t}}const t=s.get("OCGs");if(Array.isArray(t)||t instanceof Ps){const e=[];if(Array.isArray(t))for(const s of t)e.push(s.toString());else e.push(t.objId);return{type:a,ids:e,policy:s.get("P")instanceof Ns?s.get("P").name:null,expression:null}}if(t instanceof Es)return{type:a,id:t.toString()}}return null}getOperatorList({stream:e,task:t,resources:s,operatorList:a,initialState:i=null,fallbackFontDict:n=null,prevRefs:r=null}){const o=e.dict?.objId,c=new Ls(r);if(o){if(r?.has(o))throw new Error(`getOperatorList - ignoring circular reference: ${o}`);c.put(o)}if(s||=Ps.empty,i||=new wu,!a)throw new Error('getOperatorList: missing "operatorList" parameter');const l=this,h=this.xref,u=new lh,d=new hh,f=new dh,g=new fh,p=new Map,m=s.get("XObject")||Ps.empty,b=s.get("Pattern")||Ps.empty,w=new mu(i),y=new yu(e,h,w),x=new fu;function k(e){for(let t=0,s=y.savedStatesDepth;t<s;t++)a.addOp(pe,[])}return new Promise(function e(i,r){const o=function(t){Promise.all([t,a.ready]).then(function(){try{e(i,r)}catch(i){r(i)}},r)};t.ensureNotTerminated(),x.reset();const v={};let A,C,S,I,B,F;for(;!(A=x.check());){if(v.args=null,!y.read(v))break;let e=v.args,r=v.fn;switch(0|r){case mt:if(F=e[0]instanceof Ns,B=e[0].name,F){const t=u.getByName(B);if(t){du(a,t),e=null;continue}}return void o(new Promise(function(e,i){if(!F)throw new cs("XObject must be referred to by name.");let n=m.getRaw(B);if(n instanceof Es){const t=u.getByRef(n)||l._regionalImageCache.getByRef(n)||l.globalImageCache.getData(n,l.pageIndex);if(t)return du(a,t),void e();n=h.fetch(n)}if(!(n instanceof $s))throw new cs("XObject should be a stream");const r=n.dict.get("Subtype");if(!(r instanceof Ns))throw new cs("XObject should have a Name subtype");if("Form"!==r.name)if("Image"!==r.name){if("PS"!==r.name)throw new cs(`Unhandled XObject subtype ${r.name}`);Jt("Ignored XObject subtype PS"),e()}else l.buildPaintImageXObject({resources:s,image:n,operatorList:a,cacheKey:B,localImageCache:u,localColorSpaceCache:d}).then(e,i);else w.save(),l.buildFormXObject(s,n,null,a,t,w.state.clone({newPath:!0}),d,c).then(function(){w.restore(),e()},i)}).catch(function(e){if(!(e instanceof ls)){if(!l.options.ignoreErrors)throw e;Zt(`getOperatorList - ignoring XObject: "${e}".`)}}));case je:const y=e[1];return void o(l.handleSetFont(s,e,null,a,t,w.state,n).then(function(e){a.addDependency(e),a.addOp(je,[e,y])}));case pt:const x=e[0].cacheKey;if(x){const t=u.getByName(x);if(t){du(a,t),e=null;continue}}return void o(l.buildPaintImageXObject({resources:s,image:e[0],isInline:!0,operatorList:a,cacheKey:x,localImageCache:u,localColorSpaceCache:d}));case Xe:if(!w.state.font){l.ensureStateFont(w.state);continue}e[0]=l.handleText(e[0],w.state);break;case Ke:if(!w.state.font){l.ensureStateFont(w.state);continue}const k=[],v=w.state;for(const t of e[0])"string"==typeof t?k.push(...l.handleText(t,v)):"number"==typeof t&&k.push(t);e[0]=k,r=Xe;break;case Ye:if(!w.state.font){l.ensureStateFont(w.state);continue}a.addOp(Ve),e[0]=l.handleText(e[0],w.state),r=Xe;break;case Je:if(!w.state.font){l.ensureStateFont(w.state);continue}a.addOp(Ve),a.addOp(_e,[e.shift()]),a.addOp(Le,[e.shift()]),e[0]=l.handleText(e[0],w.state),r=Xe;break;case He:w.state.textRenderingMode=e[0];break;case tt:{const t=l._getColorSpace(e[0],s,d);if(t instanceof Ga){w.state.fillColorSpace=t;continue}return void o(l._handleColorSpace(t).then(e=>{w.state.fillColorSpace=e||mi.gray}))}case et:{const t=l._getColorSpace(e[0],s,d);if(t instanceof Ga){w.state.strokeColorSpace=t;continue}return void o(l._handleColorSpace(t).then(e=>{w.state.strokeColorSpace=e||mi.gray}))}case it:I=w.state.fillColorSpace,e=[I.getRgbHex(e,0)],r=lt;break;case st:I=w.state.strokeColorSpace,e=[I.getRgbHex(e,0)],r=ct;break;case ot:w.state.fillColorSpace=mi.gray,e=[mi.gray.getRgbHex(e,0)],r=lt;break;case rt:w.state.strokeColorSpace=mi.gray,e=[mi.gray.getRgbHex(e,0)],r=ct;break;case ut:w.state.fillColorSpace=mi.cmyk,e=[mi.cmyk.getRgbHex(e,0)],r=lt;break;case ht:w.state.strokeColorSpace=mi.cmyk,e=[mi.cmyk.getRgbHex(e,0)],r=ct;break;case lt:w.state.fillColorSpace=mi.rgb,e=[mi.rgb.getRgbHex(e,0)];break;case ct:w.state.strokeColorSpace=mi.rgb,e=[mi.rgb.getRgbHex(e,0)];break;case nt:if(I=w.state.patternFillColorSpace,!I){if(ua(e,null)){e=[mi.gray.getRgbHex(e,0)],r=lt;break}e=[],r=qt;break}if("Pattern"===I.name)return void o(l.handleColorN(a,nt,e,I,b,s,t,d,g,p));e=[I.getRgbHex(e,0)],r=lt;break;case at:if(I=w.state.patternStrokeColorSpace,!I){if(ua(e,null)){e=[mi.gray.getRgbHex(e,0)],r=ct;break}e=[],r=Ut;break}if("Pattern"===I.name)return void o(l.handleColorN(a,at,e,I,b,s,t,d,g,p));e=[I.getRgbHex(e,0)],r=ct;break;case dt:let A;try{const t=s.get("Shading");if(!t)throw new cs("No shading resource found");if(A=t.get(e[0].name),!A)throw new cs("No shading object found")}catch(i){if(i instanceof ls)continue;if(l.options.ignoreErrors){Zt(`getOperatorList - ignoring Shading: "${i}".`);continue}throw i}const M=l.parseShading({shading:A,resources:s,localColorSpaceCache:d,localShadingPatternCache:p});if(!M)continue;e=[M],r=dt;break;case fe:if(F=e[0]instanceof Ns,B=e[0].name,F){const t=f.getByName(B);if(t){t.length>0&&a.addOp(fe,[t]),e=null;continue}}return void o(new Promise(function(e,i){if(!F)throw new cs("GState must be referred to by name.");const n=s.get("ExtGState");if(!(n instanceof Ps))throw new cs("ExtGState should be a dictionary.");const r=n.get(B);if(!(r instanceof Ps))throw new cs("GState should be a dictionary.");l.setGState({resources:s,gState:r,operatorList:a,cacheKey:B,task:t,stateManager:w,localGStateCache:f,localColorSpaceCache:d,seenRefs:c}).then(e,i)}).catch(function(e){if(!(e instanceof ls)){if(!l.options.ignoreErrors)throw e;Zt(`getOperatorList - ignoring ExtGState: "${e}".`)}}));case re:{const[t]=e;if("number"!=typeof t){Zt(`Invalid setLineWidth: ${t}`);continue}e[0]=Math.abs(t);break}case he:{const t=e[1];if("number"!=typeof t){Zt(`Invalid setDash: ${t}`);continue}const s=e[0];if(!Array.isArray(s)){Zt(`Invalid setDash: ${s}`);continue}s.some(e=>"number"!=typeof e)&&(e[0]=s.filter(e=>"number"==typeof e));break}case be:case we:case ye:case xe:case ke:case ve:case Ae:l.buildPath(r,e,w.state);continue;case Ce:case Se:case Ie:case Be:case Fe:case Me:case Te:case Re:case Ne:{const{state:{pathBuffer:e,pathMinMax:t}}=w;r!==Se&&r!==Te&&r!==Re||e.push(Wt),0===e.length?a.addOp(_t,[r,[null],null]):(a.addOp(_t,[r,[new Float32Array(e)],t.slice()]),e.length=0,t.set([1/0,1/0,-1/0,-1/0],0));continue}case We:a.addOp(r,[new Float32Array(e)]);continue;case bt:case wt:case vt:case At:continue;case xt:if(!(e[0]instanceof Ns)){Zt(`Expected name for beginMarkedContentProps arg0=${e[0]}`),a.addOp(xt,["OC",null]);continue}if("OC"===e[0].name)return void o(l.parseMarkedContentProps(e[1],s).then(e=>{a.addOp(xt,["OC",e])}).catch(e=>{if(!(e instanceof ls)){if(!l.options.ignoreErrors)throw e;Zt(`getOperatorList - ignoring beginMarkedContentProps: "${e}".`),a.addOp(xt,["OC",null])}}));e=[e[0].name,e[1]instanceof Ps?e[1].get("MCID"):null];break;default:if(null!==e){for(C=0,S=e.length;C<S&&!(e[C]instanceof Ps);C++);if(C<S){Zt("getOperatorList - ignoring operator: "+r);continue}}}a.addOp(r,e)}A?o(hu):(k(),i())}).catch(e=>{if(!(e instanceof ls)){if(!this.options.ignoreErrors)throw e;Zt(`getOperatorList - ignoring errors during "${t.name}" task: "${e}".`),k()}})}getTextContent({stream:e,task:s,resources:a,stateManager:i=null,includeMarkedContent:n=!1,sink:r,seenStyles:o=new Set,viewBox:c,lang:l=null,markedContentData:h=null,disableNormalization:u=!1,keepWhiteSpace:d=!1,prevRefs:f=null,intersector:g=null}){const p=e.dict?.objId,m=new Ls(f);if(p){if(f?.has(p))throw new Error(`getTextContent - ignoring circular reference: ${p}`);m.put(p)}a||=Ps.empty,i||=new mu(new bu),n&&(h||={level:0});const b={items:[],styles:Object.create(null),lang:l},w={initialized:!1,str:[],totalWidth:0,totalHeight:0,width:0,height:0,vertical:!1,prevTransform:null,textAdvanceScale:0,spaceInFlowMin:0,spaceInFlowMax:0,trackingSpaceMin:1/0,negativeSpaceMax:-1/0,notASpace:-1/0,transform:null,fontName:null,hasEOL:!1},y=[" "," "];let x=0;function k(e){const t=(x+1)%2,s=" "!==y[x]&&" "===y[t];return y[x]=e,x=t,!d&&s}function v(){return!d&&" "!==y[x]&&" "===y[(x+1)%2]}function A(){y[0]=y[1]=" ",x=0}const C=this,S=this.xref,I=[];let B=null;const F=new lh,M=new dh,T=new yu(e,S,i);let R;function N({width:e=0,height:t=0,transform:s=w.prevTransform,fontName:a=w.fontName}){g?.addExtraChar(" "),b.items.push({str:" ",dir:"ltr",width:e,height:t,transform:s,fontName:a,hasEOL:!1})}function D(){const e=R.font,s=[R.fontSize*R.textHScale,0,0,R.fontSize,0,R.textRise];if(e.isType3Font&&(R.fontSize<=1||e.isCharBBox)&&!ks(R.fontMatrix,t)){const t=e.bbox[3]-e.bbox[1];t>0&&(s[3]*=t*R.fontMatrix[3])}return ms.transform(R.ctm,ms.transform(R.textMatrix,s))}function O(){if(w.initialized)return w;const{font:e,loadedName:t}=R;if(!o.has(t)&&(o.add(t),b.styles[t]={fontFamily:e.fallbackName,ascent:e.ascent,descent:e.descent,vertical:e.vertical},C.options.fontExtraProperties&&e.systemFontInfo)){const s=b.styles[t];s.fontSubstitution=e.systemFontInfo.css,s.fontSubstitutionLoadedName=e.systemFontInfo.loadedName}w.fontName=t;const s=w.transform=D();e.vertical?(w.width=w.totalWidth=Math.hypot(s[0],s[1]),w.height=w.totalHeight=0,w.vertical=!0):(w.width=w.totalWidth=0,w.height=w.totalHeight=Math.hypot(s[2],s[3]),w.vertical=!1);const a=Math.hypot(R.textLineMatrix[0],R.textLineMatrix[1]),i=Math.hypot(R.ctm[0],R.ctm[1]);w.textAdvanceScale=i*a;const{fontSize:n}=R;return w.trackingSpaceMin=.102*n,w.notASpace=.03*n,w.negativeSpaceMax=-.2*n,w.spaceInFlowMin=.102*n,w.spaceInFlowMax=.6*n,w.hasEOL=!1,w.initialized=!0,w}function P(){if(!w.initialized)return;const e=Math.hypot(R.textLineMatrix[0],R.textLineMatrix[1]),t=Math.hypot(R.ctm[0],R.ctm[1])*e;t!==w.textAdvanceScale&&(w.vertical?(w.totalHeight+=w.height*w.textAdvanceScale,w.height=0):(w.totalWidth+=w.width*w.textAdvanceScale,w.width=0),w.textAdvanceScale=t)}function E(e){let t=e.str.join("");u||(t=function(e){return As||(As=/([\u00a0\u00b5\u037e\u0eb3\u2000-\u200a\u202f\u2126\ufb00-\ufb04\ufb06\ufb20-\ufb36\ufb38-\ufb3c\ufb3e\ufb40-\ufb41\ufb43-\ufb44\ufb46-\ufba1\ufba4-\ufba9\ufbae-\ufbb1\ufbd3-\ufbdc\ufbde-\ufbe7\ufbea-\ufbf8\ufbfc-\ufbfd\ufc00-\ufc5d\ufc64-\ufcf1\ufcf5-\ufd3d\ufd88\ufdf4\ufdfa-\ufdfb\ufe71\ufe77\ufe79\ufe7b\ufe7d]+)|(\ufb05+)/gu,Cs=new Map([["ſt","ſt"]])),e.replaceAll(As,(e,t,s)=>t?t.normalize("NFKC"):Cs.get(s))}(t));const s=Gh(t,-1,e.vertical);return{str:s.str,dir:s.dir,width:Math.abs(e.totalWidth),height:Math.abs(e.totalHeight),transform:e.transform,fontName:e.fontName,hasEOL:e.hasEOL}}async function L(e,i){const n=await C.loadFont(e,i,a,s);R.loadedName=n.loadedName,R.font=n.font,R.fontMatrix=n.font.fontMatrix||t}function _(e,t,s){const a=Math.hypot(s[0],s[1]);return[(s[0]*e+s[1]*t)/a,(s[2]*e+s[3]*t)/a]}function U(e){const t=D();let s=t[4],a=t[5];if(R.font?.vertical){if(s<c[0]||s>c[2]||a+e<c[1]||a>c[3])return!1}else if(s+e<c[0]||s>c[2]||a<c[1]||a>c[3])return!1;if(!R.font||!w.prevTransform)return!0;let i=w.prevTransform[4],n=w.prevTransform[5];if(i===s&&n===a)return!0;let r=-1;switch(t[0]&&0===t[1]&&0===t[2]?r=t[0]>0?0:180:t[1]&&0===t[0]&&0===t[3]&&(r=t[1]>0?90:270),r){case 0:break;case 90:[s,a]=[a,s],[i,n]=[n,i];break;case 180:[s,a,i,n]=[-s,-a,-i,-n];break;case 270:[s,a]=[-a,-s],[i,n]=[-n,-i];break;default:[s,a]=_(s,a,t),[i,n]=_(i,n,w.prevTransform)}if(R.font.vertical){const e=(n-a)/w.textAdvanceScale,t=s-i,r=Math.sign(w.height);return e<r*w.negativeSpaceMax?Math.abs(t)>.5*w.width?(j(),!0):(A(),$(),!0):Math.abs(t)>w.width?(j(),!0):(e<=r*w.notASpace&&A(),e<=r*w.trackingSpaceMin?v()?(A(),$(),N({height:Math.abs(e)})):w.height+=e:H(e,w.prevTransform,r)||(0===w.str.length?(A(),N({height:Math.abs(e)})):w.height+=e),Math.abs(t)>.25*w.width&&$(),!0)}const o=(s-i)/w.textAdvanceScale,l=a-n,h=Math.sign(w.width);return o<h*w.negativeSpaceMax?Math.abs(l)>.5*w.height?(j(),!0):(A(),$(),!0):Math.abs(l)>w.height?(j(),!0):(o<=h*w.notASpace&&A(),o<=h*w.trackingSpaceMin?v()?(A(),$(),N({width:Math.abs(o)})):w.width+=o:H(o,w.prevTransform,h)||(0===w.str.length?(A(),N({width:Math.abs(o)})):w.width+=o),Math.abs(l)>.25*w.height&&$(),!0)}function q({chars:e,extraSpacing:t}){const s=R.font;if(!e){const e=R.charSpacing+t;return e&&(s.vertical?R.translateTextMatrix(0,-e):R.translateTextMatrix(e*R.textHScale,0)),void(d&&U(0))}const a=s.charsToGlyphs(e),i=R.fontMatrix[0]*R.fontSize;for(let n=0,r=a.length;n<r;n++){const e=a[n],{category:o,originalCharCode:c}=e;if(o.isInvisibleFormatMark)continue;let l=R.charSpacing+(n+1===r?t:0),h=e.width;s.vertical&&(h=e.vmetric?e.vmetric[0]:-h);let u=h*i;if(32===c&&(l+=R.wordSpacing),!d&&o.isWhitespace){s.vertical?(l+=-u,R.translateTextMatrix(0,-l)):(l+=u,R.translateTextMatrix(l*R.textHScale,0)),k(" ");continue}if(!o.isZeroWidthDiacritic&&!U(u)){s.vertical?R.translateTextMatrix(0,u):R.translateTextMatrix(u*R.textHScale,0);continue}const f=O();o.isZeroWidthDiacritic&&(u=0),s.vertical?(g?.addGlyph(D(),0,u,e.unicode),R.translateTextMatrix(0,u),u=Math.abs(u),f.height+=u):(u*=R.textHScale,g?.addGlyph(D(),u,0,e.unicode),R.translateTextMatrix(u,0),f.width+=u),u&&(f.prevTransform=D());const p=e.unicode;k(p)&&(f.str.push(" "),g?.addExtraChar(" ")),g||f.str.push(p),l&&(s.vertical?R.translateTextMatrix(0,-l):R.translateTextMatrix(l*R.textHScale,0))}}function j(){g?.addExtraChar("\n"),A(),w.initialized?(w.hasEOL=!0,$()):b.items.push({str:"",dir:"ltr",width:0,height:0,transform:D(),fontName:R.loadedName,hasEOL:!0})}function H(e,t,s){if(s*w.spaceInFlowMin<=e&&e<=s*w.spaceInFlowMax)return w.initialized&&(A(),w.str.push(" "),g?.addExtraChar(" ")),!1;const a=w.fontName;let i=0;return w.vertical&&(i=e,e=0),$(),A(),N({width:Math.abs(e),height:Math.abs(i),transform:t||D(),fontName:a}),!0}function $(){w.initialized&&w.str&&(w.vertical?w.totalHeight+=w.height*w.textAdvanceScale:w.totalWidth+=w.width*w.textAdvanceScale,b.items.push(E(w)),w.initialized=!1,w.str.length=0)}function z(e=!1){const t=b.items.length;0===t||e&&t<10||(r?.enqueue(b,t),b.items=[],b.styles=Object.create(null))}const G=new fu;return new Promise(function e(t,f){const g=function(s){z(!0),Promise.all([s,r?.ready]).then(function(){try{e(t,f)}catch(t){f(t)}},f)};s.ensureNotTerminated(),G.reset();const p={};let w,y,x,k=[];for(;!(w=G.check());){if(k.length=0,p.args=k,!T.read(p))break;const e=R;R=i.state;const t=p.fn;switch(k=p.args,0|t){case je:const t=k[0].name,f=k[1];if(R.font&&t===R.fontName&&f===R.fontSize)break;return $(),R.fontName=t,R.fontSize=f,void g(L(t,null));case $e:R.textRise=k[0];break;case Ue:R.textHScale=k[0]/100;break;case qe:R.leading=k[0];break;case ze:R.translateTextLineMatrix(k[0],k[1]),R.textMatrix=R.textLineMatrix.slice();break;case Ge:R.leading=-k[1],R.translateTextLineMatrix(k[0],k[1]),R.textMatrix=R.textLineMatrix.slice();break;case Ve:R.carriageReturn();break;case We:R.setTextMatrix(k[0],k[1],k[2],k[3],k[4],k[5]),R.setTextLineMatrix(k[0],k[1],k[2],k[3],k[4],k[5]),P();break;case Le:R.charSpacing=k[0];break;case _e:R.wordSpacing=k[0];break;case Pe:R.textMatrix=Ws.slice(),R.textLineMatrix=Ws.slice();break;case Ke:if(!i.state.font){C.ensureStateFont(i.state);continue}const p=(R.font.vertical?1:-1)*R.fontSize/1e3,w=k[0];for(let e=0,s=w.length;e<s;e++){const t=w[e];if("string"==typeof t)I.push(t);else if("number"==typeof t&&0!==t){const e=I.join("");I.length=0,q({chars:e,extraSpacing:t*p})}}if(I.length>0){const e=I.join("");I.length=0,q({chars:e,extraSpacing:0})}break;case Xe:if(!i.state.font){C.ensureStateFont(i.state);continue}q({chars:k[0],extraSpacing:0});break;case Ye:if(!i.state.font){C.ensureStateFont(i.state);continue}R.carriageReturn(),q({chars:k[0],extraSpacing:0});break;case Je:if(!i.state.font){C.ensureStateFont(i.state);continue}R.wordSpacing=k[0],R.charSpacing=k[1],R.carriageReturn(),q({chars:k[2],extraSpacing:0});break;case mt:if($(),B??=a.get("XObject")||Ps.empty,x=k[0]instanceof Ns,y=k[0].name,x&&F.getByName(y))break;return void g(new Promise(function(e,t){if(!x)throw new cs("XObject must be referred to by name.");let f=B.getRaw(y);if(f instanceof Es){if(F.getByRef(f))return void e();if(C.globalImageCache.getData(f,C.pageIndex))return void e();f=S.fetch(f)}if(!(f instanceof $s))throw new cs("XObject should be a stream");const{dict:g}=f,p=g.get("Subtype");if(!(p instanceof Ns))throw new cs("XObject should have a Name subtype");if("Form"!==p.name)return F.set(y,g.objId,!0),void e();const b=i.state.clone(),w=new mu(b),k=da(g.getArray("Matrix"),null);k&&w.transform(k);const v=g.get("Resources");z();const A={enqueueInvoked:!1,enqueue(e,t){this.enqueueInvoked=!0,r.enqueue(e,t)},get desiredSize(){return r.desiredSize??0},get ready(){return r.ready}};C.getTextContent({stream:f,task:s,resources:v instanceof Ps?v:a,stateManager:w,includeMarkedContent:n,sink:r&&A,seenStyles:o,viewBox:c,lang:l,markedContentData:h,disableNormalization:u,keepWhiteSpace:d,prevRefs:m}).then(function(){A.enqueueInvoked||F.set(y,g.objId,!0),e()},t)}).catch(function(e){if(!(e instanceof ls)){if(!C.options.ignoreErrors)throw e;Zt(`getTextContent - ignoring XObject: "${e}".`)}}));case fe:if(x=k[0]instanceof Ns,y=k[0].name,x&&M.getByName(y))break;return void g(new Promise(function(e,t){if(!x)throw new cs("GState must be referred to by name.");const s=a.get("ExtGState");if(!(s instanceof Ps))throw new cs("ExtGState should be a dictionary.");const i=s.get(y);if(!(i instanceof Ps))throw new cs("GState should be a dictionary.");const n=i.get("Font");n?($(),R.fontName=null,R.fontSize=n[1],L(null,n[0]).then(e,t)):(M.set(y,i.objId,!0),e())}).catch(function(e){if(!(e instanceof ls)){if(!C.options.ignoreErrors)throw e;Zt(`getTextContent - ignoring ExtGState: "${e}".`)}}));case yt:$(),n&&(h.level++,b.items.push({type:"beginMarkedContent",tag:k[0]instanceof Ns?k[0].name:null}));break;case xt:if($(),n){h.level++;let e=null;k[1]instanceof Ps&&(e=k[1].get("MCID")),b.items.push({type:"beginMarkedContentProps",id:Number.isInteger(e)?`${C.idFactory.getPageObjId()}_mc${e}`:null,tag:k[0]instanceof Ns?k[0].name:null})}break;case kt:if($(),n){if(0===h.level)break;h.level--,b.items.push({type:"endMarkedContent"})}break;case pe:!e||e.font===R.font&&e.fontSize===R.fontSize&&e.fontName===R.fontName||$()}if(b.items.length>=(r?.desiredSize??1)){w=!0;break}}w?g(hu):($(),z(),t())}).catch(e=>{if(!(e instanceof ls)){if(!this.options.ignoreErrors)throw e;Zt(`getTextContent - ignoring errors during "${s.name}" task: "${e}".`),$(),z()}})}async extractDataStructures(e,t){const s=this.xref;let a;const i=this.readToUnicode(t.toUnicode);if(t.composite){const s=e.get("CIDSystemInfo");s instanceof Ps&&!t.cidSystemInfo&&(t.cidSystemInfo={registry:ws(s.get("Registry")),ordering:ws(s.get("Ordering")),supplement:s.get("Supplement")});try{const t=e.get("CIDToGIDMap");t instanceof $s&&(a=t.getBytes())}catch(e){if(!this.options.ignoreErrors)throw e;Zt(`extractDataStructures - ignoring CIDToGIDMap data: "${e}".`)}}const n=[];let r,o=null;if(e.has("Encoding")){if(r=e.get("Encoding"),r instanceof Ps){if(o=r.get("BaseEncoding"),o=o instanceof Ns?o.name:null,r.has("Differences")){const e=r.get("Differences");let t=0;for(const a of e){const e=s.fetchIfRef(a);if("number"==typeof e)t=e;else{if(!(e instanceof Ns))throw new cs(`Invalid entry in 'Differences' array: ${e}`);n[t++]=e.name}}}}else if(r instanceof Ns)o=r.name;else{const e="Encoding is not a Name nor a Dict";if(!this.options.ignoreErrors)throw new cs(e);Zt(e)}"MacRomanEncoding"!==o&&"MacExpertEncoding"!==o&&"WinAnsiEncoding"!==o&&(o=null)}const c=!t.file||t.isInternalFont,l=So()[t.name];if(o&&c&&l&&(o=null),"WinAnsiEncoding"===o&&c&&t.name?.charCodeAt(0)>=183){const e=t.name;if(["ËÎÌå","ºÚÌå","¿¬Ìå","·ÂËÎ","¿¬Ìå_GB2312","·ÂËÎ_GB2312","Á¥Êé","ÐÂËÎ"].includes(e)){o=null,t.defaultEncoding="Adobe-GB1-UCS2",t.composite=!0,t.cidEncoding=Ns.get("GBK-EUC-H");const e=await Cr.create({encoding:t.cidEncoding,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null});t.cMap=e,t.vertical=t.cMap.vertical,t.cidSystemInfo={registry:"Adobe",ordering:"GB1",supplement:0}}}if(o)t.defaultEncoding=Nr(o);else{let e=!!(t.flags&zr);const s=!!(t.flags&Gr);"TrueType"===t.type&&e&&s&&0!==n.length&&(t.flags&=~zr,e=!1),r=Fr,"TrueType"!==t.type||s||(r=Mr),(e||l)&&(r=Br,c&&(/Symbol/i.test(t.name)?r=Tr:/Dingbats/i.test(t.name)?r=Rr:/Wingdings/i.test(t.name)&&(r=Mr))),t.defaultEncoding=r}t.differences=n,t.baseEncodingName=o,t.hasEncoding=!!o||n.length>0,t.dict=e,t.toUnicode=await i;const h=await this.buildToUnicode(t);return t.toUnicode=h,a&&(t.cidToGidMap=this.readCidToGidMap(a,h)),t}_simpleFontToUnicode(e,t=!1){es(!e.composite,"Must be a simple font.");const s=[],a=e.defaultEncoding.slice(),i=e.baseEncodingName,n=e.differences;for(const o in n){const e=n[o];".notdef"!==e&&(a[o]=e)}const r=Dr();for(const o in a){let n=a[o];if(""===n)continue;let c=r[n];if(void 0!==c){s[o]=String.fromCharCode(c);continue}let l=0;switch(n[0]){case"G":3===n.length&&(l=parseInt(n.substring(1),16));break;case"g":5===n.length&&(l=parseInt(n.substring(1),16));break;case"C":case"c":if(n.length>=3&&n.length<=4){const s=n.substring(1);if(t){l=parseInt(s,16);break}if(l=+s,Number.isNaN(l)&&Number.isInteger(parseInt(s,16)))return this._simpleFontToUnicode(e,!0)}break;case"u":c=Er(n,r),-1!==c&&(l=c);break;default:switch(n){case"f_h":case"f_t":case"T_h":s[o]=n.replaceAll("_","");continue}}if(l>0&&l<=1114111&&Number.isInteger(l)){if(i&&l===+o){const e=Nr(i);if(e&&(n=e[o])){s[o]=String.fromCharCode(r[n]);continue}}s[o]=String.fromCodePoint(l)}}return s}async buildToUnicode(e){if(e.hasIncludedToUnicodeMap=e.toUnicode?.length>0,e.hasIncludedToUnicodeMap)return!e.composite&&e.hasEncoding&&(e.fallbackToUnicode=this._simpleFontToUnicode(e)),e.toUnicode;if(!e.composite)return new Ro(this._simpleFontToUnicode(e));if(e.composite&&(e.cMap.builtInCMap&&!(e.cMap instanceof hr)||"Adobe"===e.cidSystemInfo?.registry&&("GB1"===e.cidSystemInfo.ordering||"CNS1"===e.cidSystemInfo.ordering||"Japan1"===e.cidSystemInfo.ordering||"Korea1"===e.cidSystemInfo.ordering))){const{registry:t,ordering:s}=e.cidSystemInfo,a=Ns.get(`${t}-${s}-UCS2`),i=await Cr.create({encoding:a,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null}),n=[],r=[];return e.cMap.forEach(function(e,t){if(t>65535)throw new cs("Max size of CID is 65,535");const s=i.lookup(t);if(s){r.length=0;for(let e=0,t=s.length;e<t;e+=2)r.push((s.charCodeAt(e)<<8)+s.charCodeAt(e+1));n[e]=String.fromCharCode(...r)}}),new Ro(n)}return new No(e.firstChar,e.lastChar)}async readToUnicode(e){if(!e)return null;if(e instanceof Ns){const t=await Cr.create({encoding:e,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null});return t instanceof hr?new No(0,65535):new Ro(t.getMap())}if(e instanceof $s)try{const t=await Cr.create({encoding:e,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null});if(t instanceof hr)return new No(0,65535);const s=new Array(t.length);return t.forEach(function(e,t){if("number"==typeof t)return void(s[e]=String.fromCodePoint(t));t.length%2!=0&&(t="\0"+t);const a=[];for(let s=0;s<t.length;s+=2){const e=t.charCodeAt(s)<<8|t.charCodeAt(s+1);if(55296!=(63488&e)){a.push(e);continue}s+=2;const i=t.charCodeAt(s)<<8|t.charCodeAt(s+1);a.push(((1023&e)<<10)+(1023&i)+65536)}s[e]=String.fromCodePoint(...a)}),new Ro(s)}catch(e){if(e instanceof ls)return null;if(this.options.ignoreErrors)return Zt(`readToUnicode - ignoring ToUnicode data: "${e}".`),null;throw e}return null}readCidToGidMap(e,t){const s=[];for(let a=0,i=e.length;a<i;a++){const i=e[a++]<<8|e[a],n=a>>1;(0!==i||t.has(n))&&(s[n]=i)}return s}extractWidths(e,t,s){const a=this.xref;let i=[],n=0;const r=[];let o;if(s.composite){const t=e.get("DW");n="number"==typeof t?Math.ceil(t):1e3;const c=e.get("W");if(Array.isArray(c))for(let e=0,s=c.length;e<s;e++){let t=a.fetchIfRef(c[e++]);if(!Number.isInteger(t))break;const s=a.fetchIfRef(c[e]);if(Array.isArray(s))for(const e of s){const s=a.fetchIfRef(e);"number"==typeof s&&(i[t]=s),t++}else{if(!Number.isInteger(s))break;{const n=a.fetchIfRef(c[++e]);if("number"!=typeof n)continue;for(let e=t;e<=s;e++)i[e]=n}}}if(s.vertical){const t=e.getArray("DW2");let s=ua(t,2)?t:[880,-1e3];if(o=[s[1],.5*n,s[0]],s=e.get("W2"),Array.isArray(s))for(let e=0,i=s.length;e<i;e++){let t=a.fetchIfRef(s[e++]);if(!Number.isInteger(t))break;const i=a.fetchIfRef(s[e]);if(Array.isArray(i))for(let e=0,s=i.length;e<s;e++){const s=[a.fetchIfRef(i[e++]),a.fetchIfRef(i[e++]),a.fetchIfRef(i[e])];ua(s,null)&&(r[t]=s),t++}else{if(!Number.isInteger(i))break;{const n=[a.fetchIfRef(s[++e]),a.fetchIfRef(s[++e]),a.fetchIfRef(s[++e])];if(!ua(n,null))continue;for(let e=t;e<=i;e++)r[e]=n}}}}}else{const r=e.get("Widths");if(Array.isArray(r)){let e=s.firstChar;for(const t of r){const s=a.fetchIfRef(t);"number"==typeof s&&(i[e]=s),e++}const o=t.get("MissingWidth");n="number"==typeof o?o:0}else{const t=e.get("BaseFont");if(t instanceof Ns){const e=this.getBaseFontMetrics(t.name);i=this.buildCharCodeToWidth(e.widths,s),n=e.defaultWidth}}}let c=!0,l=n;for(const h in i){const e=i[h];if(e)if(l){if(l!==e){c=!1;break}}else l=e}c?s.flags|=Hr:s.flags&=~Hr,s.defaultWidth=n,s.widths=i,s.defaultVMetrics=o,s.vmetrics=r}isSerifFont(e){const t=e.split("-",1)[0];return t in Co()||/serif/gi.test(t)}getBaseFontMetrics(e){let t=0,s=Object.create(null),a=!1,i=ko()[e]||e;const n=Wo();i in n||(i=this.isSerifFont(e)?"Times-Roman":"Helvetica");const r=n[i];return"number"==typeof r?(t=r,a=!0):s=r(),{defaultWidth:t,monospace:a,widths:s}}buildCharCodeToWidth(e,t){const s=Object.create(null),a=t.differences,i=t.defaultEncoding;for(let n=0;n<256;n++)n in a&&e[a[n]]?s[n]=e[a[n]]:n in i&&e[i[n]]&&(s[n]=e[i[n]]);return s}preEvaluateFont(e){const t=e;let s=e.get("Subtype");if(!(s instanceof Ns))throw new cs("invalid font Subtype");let a,i=!1;if("Type0"===s.name){const t=e.get("DescendantFonts");if(!t)throw new cs("Descendant fonts are not specified");if(!((e=Array.isArray(t)?this.xref.fetchIfRef(t[0]):t)instanceof Ps))throw new cs("Descendant font is not a dictionary.");if(s=e.get("Subtype"),!(s instanceof Ns))throw new cs("invalid font Subtype");i=!0}let n=e.get("FirstChar");Number.isInteger(n)||(n=0);let r=e.get("LastChar");Number.isInteger(r)||(r=i?65535:255);const o=e.get("FontDescriptor"),c=e.get("ToUnicode")||t.get("ToUnicode");if(o){a=new iu;const s=t.getRaw("Encoding");if(s instanceof Ns)a.update(s.name);else if(s instanceof Es)a.update(s.toString());else if(s instanceof Ps)for(const e of s.getRawValues())if(e instanceof Ns)a.update(e.name);else if(e instanceof Es)a.update(e.toString());else if(Array.isArray(e)){const t=e.length,s=new Array(t);for(let a=0;a<t;a++){const t=e[a];t instanceof Ns?s[a]=t.name:("number"==typeof t||t instanceof Es)&&(s[a]=t.toString())}a.update(s.join())}if(a.update(`${n}-${r}`),c instanceof $s){const e=c.stream||c,t=e.buffer?new Uint8Array(e.buffer.buffer,0,e.bufferLength):new Uint8Array(e.bytes.buffer,e.start,e.end-e.start);a.update(t)}else c instanceof Ns&&a.update(c.name);const o=e.get("Widths")||t.get("Widths");if(Array.isArray(o)){const e=[];for(const t of o)("number"==typeof t||t instanceof Es)&&e.push(t.toString());a.update(e.join())}if(i){a.update("compositeFont");const s=e.get("W")||t.get("W");if(Array.isArray(s)){const e=[];for(const t of s)if("number"==typeof t||t instanceof Es)e.push(t.toString());else if(Array.isArray(t)){const s=[];for(const e of t)("number"==typeof e||e instanceof Es)&&s.push(e.toString());e.push(`[${s.join()}]`)}a.update(e.join())}const i=e.getRaw("CIDToGIDMap")||t.getRaw("CIDToGIDMap");i instanceof Ns?a.update(i.name):i instanceof Es?a.update(i.toString()):i instanceof $s&&a.update(i.peekBytes())}}return{descriptor:o,dict:e,baseDict:t,composite:i,type:s.name,firstChar:n,lastChar:r,toUnicode:c,hash:a?a.hexdigest():""}}async translateFont({descriptor:e,dict:s,baseDict:a,composite:i,type:n,firstChar:r,lastChar:o,toUnicode:c,cssFontInfo:l}){const h="Type3"===n;if(!e){if(!h){let e=s.get("BaseFont");if(!(e instanceof Ns))throw new cs("Base font is not specified");e=e.name.replaceAll(/[,_]/g,"-");const t=this.getBaseFontMetrics(e),i=e.split("-",1)[0],l=(this.isSerifFont(i)?$r:0)|(t.monospace?Hr:0)|(So()[i]?zr:Gr),u={type:n,name:e,loadedName:a.loadedName,systemFontInfo:null,widths:t.widths,defaultWidth:t.defaultWidth,isSimulatedFlags:!0,flags:l,firstChar:r,lastChar:o,toUnicode:c,xHeight:0,capHeight:0,italicAngle:0,isType3Font:h},d=s.get("Widths"),f=Mo(e);let g=null;f&&(g=await this.fetchStandardFontData(f),u.isInternalFont=!!g),!u.isInternalFont&&this.options.useSystemFonts&&(u.systemFontInfo=eu(this.systemFontCache,this.idFactory,this.options.standardFontDataUrl,e,f,n));const p=await this.extractDataStructures(s,u);if(Array.isArray(d)){const e=[];let t=r;for(const s of d){const a=this.xref.fetchIfRef(s);"number"==typeof a&&(e[t]=a),t++}p.widths=e}else p.widths=this.buildCharCodeToWidth(t.widths,p);return new Vc(e,g,p,this.options)}e=Ps.empty}let u=e.get("FontName"),d=s.get("BaseFont");"string"==typeof u&&(u=Ns.get(u)),"string"==typeof d&&(d=Ns.get(d));const f=u?.name,g=d?.name;if(h?f||(u=Ns.get(n)):f!==g&&(Jt(`The FontDescriptor's FontName is "${f}" but should be the same as the Font's BaseFont "${g}".`),f&&g&&(g.startsWith(f)||!To(f)&&To(g))&&(u=null),u||=d),!(u instanceof Ns))throw new cs("invalid font name");let p,m,b,w,y;try{if(p=e.get("FontFile","FontFile2","FontFile3"),p){if(!(p instanceof $s))throw new cs("FontFile should be a stream");if(p.isEmpty)throw new cs("FontFile is empty")}}catch(e){if(!this.options.ignoreErrors)throw e;Zt(`translateFont - fetching "${u.name}" font file: "${e}".`),p=null}let x=!1,k=null,v=null;if(p){if(p.dict){const e=p.dict.get("Subtype");e instanceof Ns&&(m=e.name),b=p.dict.get("Length1"),w=p.dict.get("Length2"),y=p.dict.get("Length3")}}else if(l){const e=sh(u.name);e&&(l.fontFamily=`${l.fontFamily}-PdfJS-XFA`,l.metrics=e.metrics||null,k=e.factors||null,p=await this.fetchStandardFontData(e.name),x=!!p,a=s=ah(u.name),i=!0)}else if(!h){const e=Mo(u.name);e&&(p=await this.fetchStandardFontData(e),x=!!p),!x&&this.options.useSystemFonts&&(v=eu(this.systemFontCache,this.idFactory,this.options.standardFontDataUrl,u.name,e,n))}const A=da(s.getArray("FontMatrix"),t),C=ga(e.getArray("FontBBox")||s.getArray("FontBBox"),h?[0,0,0,0]:void 0);let S=e.get("Ascent");"number"!=typeof S&&(S=void 0);let I=e.get("Descent");"number"!=typeof I&&(I=void 0);let B=e.get("XHeight");"number"!=typeof B&&(B=0);let F=e.get("CapHeight");"number"!=typeof F&&(F=0);let M=e.get("Flags");Number.isInteger(M)||(M=0);let T=e.get("ItalicAngle");"number"!=typeof T&&(T=0);const R={type:n,name:u.name,subtype:m,file:p,length1:b,length2:w,length3:y,isInternalFont:x,loadedName:a.loadedName,composite:i,fixedPitch:!1,fontMatrix:A,firstChar:r,lastChar:o,toUnicode:c,bbox:C,ascent:S,descent:I,xHeight:B,capHeight:F,flags:M,italicAngle:T,isType3Font:h,cssFontInfo:l,scaleFactors:k,systemFontInfo:v};if(i){const e=a.get("Encoding");e instanceof Ns&&(R.cidEncoding=e.name);const t=await Cr.create({encoding:e,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null});R.cMap=t,R.vertical=R.cMap.vertical}const N=await this.extractDataStructures(s,R);return this.extractWidths(s,e,N),new Vc(u.name,p,N,this.options)}static buildFontPaths(e,t,s,a){function i(t){const i=`${e.loadedName}_path_${t}`;try{if(e.renderer.hasBuiltPath(t))return;const a=Qc.write(e.renderer.getPathJs(t));s.send("commonobj",[i,"FontPath",a],[a])}catch(e){if(a.ignoreErrors)return void Zt(`buildFontPaths - ignoring ${i} glyph: "${e}".`);throw e}}for(const n of t){i(n.fontChar);const e=n.accent;e?.fontChar&&i(e.fontChar)}}static get fallbackFontDict(){const e=new Ps;return e.set("BaseFont",Ns.get("Helvetica")),e.set("Type",Ns.get("FallbackType")),e.set("Subtype",Ns.get("FallbackType")),e.set("Encoding",Ns.get("WinAnsiEncoding")),ss(this,"fallbackFontDict",e)}}class pu{#ue=!1;#de=null;constructor({loadedName:e,font:t,dict:s}){this.loadedName=e,this.font=t,this.dict=s,this.type3Dependencies=t.isType3Font?new Set:null}send(e){if(this.#ue)return;this.#ue=!0;const t=this.font.exportData(),s=[];t.data&&(t.data.charProcOperatorList&&(t.charProcOperatorList=t.data.charProcOperatorList),t.data=Jc.write(t.data),s.push(t.data)),e.send("commonobj",[this.loadedName,"Font",t],s)}fallback(e,t){this.font.data&&(this.font.disableFontFace=!0,gu.buildFontPaths(this.font,this.font.glyphCacheValues,e,t))}loadType3Data(e,t,s){if(this.#de)return this.#de;const{font:a,type3Dependencies:i}=this;es(a.isType3Font,"Must be a Type3 font.");const n=e.clone({ignoreErrors:!1}),r=new Ls(e.type3FontRefs);this.dict.objId&&!r.has(this.dict.objId)&&r.put(this.dict.objId),n.type3FontRefs=r;let o=Promise.resolve();const c=this.dict.get("CharProcs"),l=this.dict.get("Resources")||t,h=Object.create(null),[u,d,f,g]=a.bbox,p=f-u,m=g-d,b=Math.hypot(p,m);for(const w of c.getKeys())o=o.then(()=>{const e=c.get(w),t=new Vi;return n.getOperatorList({stream:e,task:s,resources:l,operatorList:t}).then(()=>{switch(t.fnArray[0]){case Qe:this.#fe(t,b);break;case Ze:b||this.#ge(t)}h[w]=t.getIR();for(const e of t.dependencies)i.add(e)}).catch(function(e){Zt(`Type3 font resource "${w}" is not available.`);const t=new Vi;h[w]=t.getIR()})});return this.#de=o.then(()=>{a.charProcOperatorList=h,this._bbox&&(a.isCharBBox=!0,a.bbox=this._bbox)}),this.#de}#fe(e,t=NaN){const s=ms.normalizeRect(e.argsArray[0].slice(2)),a=s[2]-s[0],i=s[3]-s[1],n=Math.hypot(a,i);0===a||0===i?(e.fnArray.splice(0,1),e.argsArray.splice(0,1)):(0===t||Math.round(n/t)>=10)&&(this._bbox??=[1/0,1/0,-1/0,-1/0],ms.rectBoundingBox(...s,this._bbox));let r=0,o=e.length;for(;r<o;){switch(e.fnArray[r]){case Qe:break;case et:case tt:case st:case at:case it:case nt:case rt:case ot:case ct:case lt:case ht:case ut:case dt:case ue:e.fnArray.splice(r,1),e.argsArray.splice(r,1),o--;continue;case fe:const[t]=e.argsArray[r];let s=0,a=t.length;for(;s<a;){const[e]=t[s];switch(e){case"TR":case"TR2":case"HT":case"BG":case"BG2":case"UCR":case"UCR2":t.splice(s,1),a--;continue}s++}}r++}}#ge(e){let t=1;const s=e.length;for(;t<s;){if(e.fnArray[t]===_t){const s=e.argsArray[t][2];this._bbox??=[1/0,1/0,-1/0,-1/0],ms.rectBoundingBox(...s,this._bbox)}t++}}}class mu{constructor(e=new wu){this.state=e,this.stateStack=[]}save(){const e=this.state;this.stateStack.push(this.state),this.state=e.clone()}restore(){const e=this.stateStack.pop();e&&(this.state=e)}transform(e){this.state.ctm=ms.transform(this.state.ctm,e)}}class bu{constructor(){this.ctm=new Float32Array(Ws),this.fontName=null,this.fontSize=0,this.loadedName=null,this.font=null,this.fontMatrix=t,this.textMatrix=Ws.slice(),this.textLineMatrix=Ws.slice(),this.charSpacing=0,this.wordSpacing=0,this.leading=0,this.textHScale=1,this.textRise=0}setTextMatrix(e,t,s,a,i,n){const r=this.textMatrix;r[0]=e,r[1]=t,r[2]=s,r[3]=a,r[4]=i,r[5]=n}setTextLineMatrix(e,t,s,a,i,n){const r=this.textLineMatrix;r[0]=e,r[1]=t,r[2]=s,r[3]=a,r[4]=i,r[5]=n}translateTextMatrix(e,t){const s=this.textMatrix;s[4]=s[0]*e+s[2]*t+s[4],s[5]=s[1]*e+s[3]*t+s[5]}translateTextLineMatrix(e,t){const s=this.textLineMatrix;s[4]=s[0]*e+s[2]*t+s[4],s[5]=s[1]*e+s[3]*t+s[5]}carriageReturn(){this.translateTextLineMatrix(0,-this.leading),this.textMatrix=this.textLineMatrix.slice()}clone(){const e=Object.create(this);return e.textMatrix=this.textMatrix.slice(),e.textLineMatrix=this.textLineMatrix.slice(),e.fontMatrix=this.fontMatrix.slice(),e}}class wu{constructor(){this.ctm=new Float32Array(Ws),this.font=null,this.textRenderingMode=A,this._fillColorSpace=this._strokeColorSpace=mi.gray,this.patternFillColorSpace=null,this.patternStrokeColorSpace=null,this.currentPointX=this.currentPointY=0,this.pathMinMax=new Float32Array([1/0,1/0,-1/0,-1/0]),this.pathBuffer=[]}get fillColorSpace(){return this._fillColorSpace}set fillColorSpace(e){this._fillColorSpace=this.patternFillColorSpace=e}get strokeColorSpace(){return this._strokeColorSpace}set strokeColorSpace(e){this._strokeColorSpace=this.patternStrokeColorSpace=e}clone({newPath:e=!1}={}){const t=Object.create(this);return e&&(t.pathBuffer=[],t.pathMinMax=new Float32Array([1/0,1/0,-1/0,-1/0])),t}}class yu{static get opMap(){return ss(this,"opMap",Object.assign(Object.create(null),{w:{id:re,numArgs:1,variableArgs:!1},J:{id:oe,numArgs:1,variableArgs:!1},j:{id:ce,numArgs:1,variableArgs:!1},M:{id:le,numArgs:1,variableArgs:!1},d:{id:he,numArgs:2,variableArgs:!1},ri:{id:ue,numArgs:1,variableArgs:!1},i:{id:de,numArgs:1,variableArgs:!1},gs:{id:fe,numArgs:1,variableArgs:!1},q:{id:ge,numArgs:0,variableArgs:!1},Q:{id:pe,numArgs:0,variableArgs:!1},cm:{id:me,numArgs:6,variableArgs:!1},m:{id:be,numArgs:2,variableArgs:!1},l:{id:we,numArgs:2,variableArgs:!1},c:{id:ye,numArgs:6,variableArgs:!1},v:{id:xe,numArgs:4,variableArgs:!1},y:{id:ke,numArgs:4,variableArgs:!1},h:{id:ve,numArgs:0,variableArgs:!1},re:{id:Ae,numArgs:4,variableArgs:!1},S:{id:Ce,numArgs:0,variableArgs:!1},s:{id:Se,numArgs:0,variableArgs:!1},f:{id:Ie,numArgs:0,variableArgs:!1},F:{id:Ie,numArgs:0,variableArgs:!1},"f*":{id:Be,numArgs:0,variableArgs:!1},B:{id:Fe,numArgs:0,variableArgs:!1},"B*":{id:Me,numArgs:0,variableArgs:!1},b:{id:Te,numArgs:0,variableArgs:!1},"b*":{id:Re,numArgs:0,variableArgs:!1},n:{id:Ne,numArgs:0,variableArgs:!1},W:{id:De,numArgs:0,variableArgs:!1},"W*":{id:Oe,numArgs:0,variableArgs:!1},BT:{id:Pe,numArgs:0,variableArgs:!1},ET:{id:Ee,numArgs:0,variableArgs:!1},Tc:{id:Le,numArgs:1,variableArgs:!1},Tw:{id:_e,numArgs:1,variableArgs:!1},Tz:{id:Ue,numArgs:1,variableArgs:!1},TL:{id:qe,numArgs:1,variableArgs:!1},Tf:{id:je,numArgs:2,variableArgs:!1},Tr:{id:He,numArgs:1,variableArgs:!1},Ts:{id:$e,numArgs:1,variableArgs:!1},Td:{id:ze,numArgs:2,variableArgs:!1},TD:{id:Ge,numArgs:2,variableArgs:!1},Tm:{id:We,numArgs:6,variableArgs:!1},"T*":{id:Ve,numArgs:0,variableArgs:!1},Tj:{id:Xe,numArgs:1,variableArgs:!1},TJ:{id:Ke,numArgs:1,variableArgs:!1},"'":{id:Ye,numArgs:1,variableArgs:!1},'"':{id:Je,numArgs:3,variableArgs:!1},d0:{id:Ze,numArgs:2,variableArgs:!1},d1:{id:Qe,numArgs:6,variableArgs:!1},CS:{id:et,numArgs:1,variableArgs:!1},cs:{id:tt,numArgs:1,variableArgs:!1},SC:{id:st,numArgs:4,variableArgs:!0},SCN:{id:at,numArgs:33,variableArgs:!0},sc:{id:it,numArgs:4,variableArgs:!0},scn:{id:nt,numArgs:33,variableArgs:!0},G:{id:rt,numArgs:1,variableArgs:!1},g:{id:ot,numArgs:1,variableArgs:!1},RG:{id:ct,numArgs:3,variableArgs:!1},rg:{id:lt,numArgs:3,variableArgs:!1},K:{id:ht,numArgs:4,variableArgs:!1},k:{id:ut,numArgs:4,variableArgs:!1},sh:{id:dt,numArgs:1,variableArgs:!1},BI:{id:ft,numArgs:0,variableArgs:!1},ID:{id:gt,numArgs:0,variableArgs:!1},EI:{id:pt,numArgs:1,variableArgs:!1},Do:{id:mt,numArgs:1,variableArgs:!1},MP:{id:bt,numArgs:1,variableArgs:!1},DP:{id:wt,numArgs:2,variableArgs:!1},BMC:{id:yt,numArgs:1,variableArgs:!1},BDC:{id:xt,numArgs:2,variableArgs:!1},EMC:{id:kt,numArgs:0,variableArgs:!1},BX:{id:vt,numArgs:0,variableArgs:!1},EX:{id:At,numArgs:0,variableArgs:!1},BM:null,BD:null,true:null,fa:null,fal:null,fals:null,false:null,nu:null,nul:null,null:null}))}static MAX_INVALID_PATH_OPS=10;constructor(e,t,s=new mu){this.parser=new sr({lexer:new nr(e,yu.opMap),xref:t}),this.stateManager=s,this.nonProcessedArgs=[],this._isPathOp=!1,this._numInvalidPathOPS=0}get savedStatesDepth(){return this.stateManager.stateStack.length}read(e){let t=e.args;for(;;){const s=this.parser.getObj();if(s instanceof Ds){const a=s.cmd,i=yu.opMap[a];if(!i){Zt(`Unknown command "${a}".`);continue}const n=i.id,r=i.numArgs;let o=null!==t?t.length:0;if(this._isPathOp||(this._numInvalidPathOPS=0),this._isPathOp=n>=be&&n<=Ne,i.variableArgs)o>r&&Jt(`Command ${a}: expected [0, ${r}] args, but received ${o} args.`);else{if(o!==r){const e=this.nonProcessedArgs;for(;o>r;)e.push(t.shift()),o--;for(;o<r&&0!==e.length;)null===t&&(t=[]),t.unshift(e.pop()),o++}if(o<r){const e=`command ${a}: expected ${r} args, but received ${o} args.`;if(this._isPathOp&&++this._numInvalidPathOPS>yu.MAX_INVALID_PATH_OPS)throw new cs(`Invalid ${e}`);Zt(`Skipping ${e}`),null!==t&&(t.length=0);continue}}return this.preprocessCommand(n,t),e.fn=n,e.args=t,!0}if(s===Fs)return!1;if(null!==s&&(null===t&&(t=[]),t.push(s),t.length>33))throw new cs("Too many arguments")}}preprocessCommand(e,t){switch(0|e){case ge:this.stateManager.save();break;case pe:this.stateManager.restore();break;case me:this.stateManager.transform(t)}}}class xu extends yu{constructor(e){super(new ri(e))}parse(){const e={fn:0,args:[]},t={fontSize:0,fontName:"",fontColor:new Uint8ClampedArray(3)};try{for(;;){if(e.args.length=0,!this.read(e))break;if(0!==this.savedStatesDepth)continue;const{fn:s,args:a}=e;switch(0|s){case je:const[e,s]=a;e instanceof Ns&&(t.fontName=e.name),"number"==typeof s&&s>0&&(t.fontSize=s);break;case lt:mi.rgb.getRgbItem(a,0,t.fontColor,0);break;case ot:mi.gray.getRgbItem(a,0,t.fontColor,0);break;case ut:mi.cmyk.getRgbItem(a,0,t.fontColor,0)}}}catch(e){Zt(`parseDefaultAppearance - ignoring errors: "${e}".`)}return t}}function ku(e){return new xu(e).parse()}class vu extends yu{constructor(e,t,s,a){super(e),this.stream=e,this.evaluatorOptions=t,this.xref=s,this.globalColorSpaceCache=a,this.resources=e.dict?.get("Resources")}parse(){const e={fn:0,args:[]};let t={scaleFactor:1,fontSize:0,fontName:"",fontColor:new Uint8ClampedArray(3),fillColorSpace:mi.gray},s=!1;const a=[];try{for(;;){if(e.args.length=0,s||!this.read(e))break;const{fn:i,args:n}=e;switch(0|i){case ge:a.push({scaleFactor:t.scaleFactor,fontSize:t.fontSize,fontName:t.fontName,fontColor:t.fontColor.slice(),fillColorSpace:t.fillColorSpace});break;case pe:t=a.pop()||t;break;case We:t.scaleFactor*=Math.hypot(n[0],n[1]);break;case je:const[e,i]=n;e instanceof Ns&&(t.fontName=e.name),"number"==typeof i&&i>0&&(t.fontSize=i*t.scaleFactor);break;case tt:t.fillColorSpace=mi.parse({cs:n[0],xref:this.xref,resources:this.resources,pdfFunctionFactory:this._pdfFunctionFactory,globalColorSpaceCache:this.globalColorSpaceCache,localColorSpaceCache:this._localColorSpaceCache});break;case it:t.fillColorSpace.getRgbItem(n,0,t.fontColor,0);break;case lt:mi.rgb.getRgbItem(n,0,t.fontColor,0);break;case ot:mi.gray.getRgbItem(n,0,t.fontColor,0);break;case ut:mi.cmyk.getRgbItem(n,0,t.fontColor,0);break;case Xe:case Ke:case Ye:case Je:s=!0}}}catch(e){Zt(`parseAppearanceStream - ignoring errors: "${e}".`)}return this.stream.reset(),delete t.scaleFactor,delete t.fillColorSpace,t}get _localColorSpaceCache(){return ss(this,"_localColorSpaceCache",new hh)}get _pdfFunctionFactory(){return ss(this,"_pdfFunctionFactory",new bh({xref:this.xref,isEvalSupported:this.evaluatorOptions.isEvalSupported}))}}function Au(e,t){return e[0]===e[1]&&e[1]===e[2]?`${Ia(e[0]/255)} ${t?"g":"G"}`:Array.from(e,e=>Ia(e/255)).join(" ")+" "+(t?"rg":"RG")}class Cu{constructor(e,t){this.xref=e,this.widths=null,this.firstChar=1/0,this.lastChar=-1/0,this.fontFamily=t;const s=new OffscreenCanvas(1,1);this.ctxMeasure=s.getContext("2d",{willReadFrequently:!0}),Cu._fontNameId||(Cu._fontNameId=1),this.fontName=Ns.get(`InvalidPDFjsFont_${t}_${Cu._fontNameId++}`)}get fontDescriptorRef(){if(!Cu._fontDescriptorRef){const e=new Ps(this.xref);e.setIfName("Type","FontDescriptor"),e.set("FontName",this.fontName),e.set("FontFamily","MyriadPro Regular"),e.set("FontBBox",[0,0,0,0]),e.setIfName("FontStretch","Normal"),e.set("FontWeight",400),e.set("ItalicAngle",0),Cu._fontDescriptorRef=this.xref.getNewPersistentRef(e)}return Cu._fontDescriptorRef}get descendantFontRef(){const e=new Ps(this.xref);e.set("BaseFont",this.fontName),e.setIfName("Type","Font"),e.setIfName("Subtype","CIDFontType0"),e.setIfName("CIDToGIDMap","Identity"),e.set("FirstChar",this.firstChar),e.set("LastChar",this.lastChar),e.set("FontDescriptor",this.fontDescriptorRef),e.set("DW",1e3);const t=[],s=[...this.widths.entries()].sort();let a=null,i=null;for(const[r,o]of s)a?r===a+i.length?i.push(o):(t.push(a,i),a=r,i=[o]):(a=r,i=[o]);a&&t.push(a,i),e.set("W",t);const n=new Ps(this.xref);return n.set("Ordering","Identity"),n.set("Registry","Adobe"),n.set("Supplement",0),e.set("CIDSystemInfo",n),this.xref.getNewPersistentRef(e)}get baseFontRef(){const e=new Ps(this.xref);return e.set("BaseFont",this.fontName),e.setIfName("Type","Font"),e.setIfName("Subtype","Type0"),e.setIfName("Encoding","Identity-H"),e.set("DescendantFonts",[this.descendantFontRef]),e.setIfName("ToUnicode","Identity-H"),this.xref.getNewPersistentRef(e)}get resources(){const e=new Ps(this.xref),t=new Ps(this.xref);return t.set(this.fontName.name,this.baseFontRef),e.set("Font",t),e}_createContext(){return this.widths=new Map,this.ctxMeasure.font=`1000px ${this.fontFamily}`,this.ctxMeasure}createFontResources(e){const t=this._createContext();for(const s of e.split(/\r\n?|\n/))for(const e of s.split("")){const s=e.charCodeAt(0);if(this.widths.has(s))continue;const a=t.measureText(e),i=Math.ceil(a.width);this.widths.set(s,i),this.firstChar=Math.min(s,this.firstChar),this.lastChar=Math.max(s,this.lastChar)}return this.resources}static getFirstPositionInfo(e,t,i){const[n,r,o,c]=e;let l=o-n,h=c-r;t%180!=0&&([l,h]=[h,l]);const u=s*i;return{coords:[0,h+a*i-u],bbox:[0,0,l,h],matrix:0!==t?Ra(t,h,u):void 0}}createAppearance(e,t,i,n,r,o){const c=this._createContext(),l=[];let h=-1/0;for(const s of e.split(/\r\n?|\n/)){l.push(s);const e=c.measureText(s).width;h=Math.max(h,e);for(const t of ka(s)){const e=String.fromCodePoint(t);let s=this.widths.get(t);if(void 0===s){const a=c.measureText(e);s=Math.ceil(a.width),this.widths.set(t,s),this.firstChar=Math.min(t,this.firstChar),this.lastChar=Math.max(t,this.lastChar)}}}h*=n/1e3;const[u,d,f,g]=t;let p=f-u,m=g-d;i%180!=0&&([p,m]=[m,p]);let b=1;h>p&&(b=p/h);let w=1;const y=s*n,x=a*n,k=y*l.length;k>m&&(w=m/k);const v=n*Math.min(b,w),A=["q",`0 0 ${Ia(p)} ${Ia(m)} re W n`,"BT",`1 0 0 1 0 ${Ia(m+x)} Tm 0 Tc ${Au(r,!0)}`,`/${this.fontName.name} ${Ia(v)} Tf`],{resources:C}=this;if(1!==(o="number"==typeof o&&o>=0&&o<=1?o:1)){A.push("/R0 gs");const e=new Ps(this.xref),t=new Ps(this.xref);t.set("ca",o),t.set("CA",o),t.setIfName("Type","ExtGState"),e.set("R0",t),C.set("ExtGState",e)}const S=Ia(y);for(const s of l)A.push(`0 -${S} Td <${Ma(s)}> Tj`);A.push("ET","Q");const I=A.join("\n"),B=new Ps(this.xref);if(B.setIfName("Subtype","Form"),B.setIfName("Type","XObject"),B.set("BBox",[0,0,p,m]),B.set("Length",I.length),B.set("Resources",C),i){const e=Ra(i,p,m);B.set("Matrix",e)}const F=new ri(I);return F.dict=B,F}}const Su=["m/d","m/d/yy","mm/dd/yy","mm/yy","d-mmm","d-mmm-yy","dd-mmm-yy","yy-mm-dd","mmm-yy","mmmm-yy","mmm d, yyyy","mmmm d, yyyy","m/d/yy h:MM tt","m/d/yy HH:MM"],Iu=["HH:MM","h:MM tt","HH:MM:ss","h:MM:ss tt"];class Bu{constructor(e,t,s){this.root=e,this.xref=t,this._type=s}getAll(e=!1){const t=new Map;if(!this.root)return t;const s=this.xref,a=new Ls;a.put(this.root);const i=[this.root];for(;i.length>0;){const n=s.fetchIfRef(i.shift());if(!(n instanceof Ps))continue;if(n.has("Kids")){const e=n.get("Kids");if(!Array.isArray(e))continue;for(const t of e){if(a.has(t))throw new cs(`Duplicate entry in "${this._type}" tree.`);i.push(t),a.put(t)}continue}const r=n.get(this._type);if(Array.isArray(r))for(let a=0,i=r.length;a<i;a+=2)t.set(s.fetchIfRef(r[a]),e?r[a+1]:s.fetchIfRef(r[a+1]))}return t}getRaw(e){if(!this.root)return null;const t=this.xref;let s=t.fetchIfRef(this.root),a=0;for(;s.has("Kids");){if(++a>10)return Zt(`Search depth limit reached for "${this._type}" tree.`),null;const i=s.get("Kids");if(!Array.isArray(i))return null;let n=0,r=i.length-1;for(;n<=r;){const a=n+r>>1,o=t.fetchIfRef(i[a]),c=o.get("Limits");if(e<t.fetchIfRef(c[0]))r=a-1;else{if(!(e>t.fetchIfRef(c[1]))){s=o;break}n=a+1}}if(n>r)return null}const i=s.get(this._type);if(Array.isArray(i)){let s=0,a=i.length-2;for(;s<=a;){const n=s+a>>1,r=n+(1&n),o=t.fetchIfRef(i[r]);if(e<o)a=r-2;else{if(!(e>o))return i[r+1];s=r+2}}}return null}get(e){return this.xref.fetchIfRef(this.getRaw(e))}}class Fu extends Bu{constructor(e,t){super(e,t,"Names")}}class Mu extends Bu{constructor(e,t){super(e,t,"Nums")}}function Tu(){!function(){hl=Object.create(null)}(),function(){Ms=Object.create(null),Ts=Object.create(null),Rs=Object.create(null)}(),function(){qr.clear()}(),Hi.cleanup()}function Ru(e){return e instanceof Ps?e.has("UF")?e.get("UF"):e.has("F")?e.get("F"):e.has("Unix")?e.get("Unix"):e.has("Mac")?e.get("Mac"):e.has("DOS")?e.get("DOS"):null:null}class Nu{#pe=!1;constructor(e,t,s=!1){e instanceof Ps&&(this.xref=t,this.root=e,e.has("FS")&&(this.fs=e.get("FS")),e.has("RF")&&Zt("Related file specifications are not supported"),s||(e.has("EF")?this.#pe=!0:Zt("Non-embedded file specifications are not supported")))}get filename(){let e="";const t=Ru(this.root);return t&&"string"==typeof t&&(e=ws(t,!0).replaceAll("\\\\","\\").replaceAll("\\/","/").replaceAll("\\","/")),ss(this,"filename",e||"unnamed")}get content(){if(!this.#pe)return null;this._contentRef||=Ru(this.root?.get("EF"));let e=null;if(this._contentRef){const t=this.xref.fetchIfRef(this._contentRef);t instanceof $s?e=t.getBytes():Zt("Embedded file specification points to non-existing/invalid content")}else Zt("Embedded file specification does not have any content");return e}get description(){let e="";const t=this.root?.get("Desc");return t&&"string"==typeof t&&(e=ws(t)),ss(this,"description",e)}get serializable(){return{rawFilename:this.filename,filename:(e=this.filename,e.substring(e.lastIndexOf("/")+1)),content:this.content,description:this.description};var e}}const Du=0,Ou=-2,Pu=-3,Eu=-4,Lu=-5,_u=-6,Uu=-9;function qu(e,t){const s=e[t];return" "===s||"\n"===s||"\r"===s||"\t"===s}class ju{_resolveEntities(e){return e.replaceAll(/&([^;]+);/g,(e,t)=>{if("#x"===t.substring(0,2))return String.fromCodePoint(parseInt(t.substring(2),16));if("#"===t.substring(0,1))return String.fromCodePoint(parseInt(t.substring(1),10));switch(t){case"lt":return"<";case"gt":return">";case"amp":return"&";case"quot":return'"';case"apos":return"'"}return this.onResolveEntity(t)})}_parseContent(e,t){const s=[];let a=t;function i(){for(;a<e.length&&qu(e,a);)++a}for(;a<e.length&&!qu(e,a)&&">"!==e[a]&&"/"!==e[a];)++a;const n=e.substring(t,a);for(i();a<e.length&&">"!==e[a]&&"/"!==e[a]&&"?"!==e[a];){i();let t="",n="";for(;a<e.length&&!qu(e,a)&&"="!==e[a];)t+=e[a],++a;if(i(),"="!==e[a])return null;++a,i();const r=e[a];if('"'!==r&&"'"!==r)return null;const o=e.indexOf(r,++a);if(o<0)return null;n=e.substring(a,o),s.push({name:t,value:this._resolveEntities(n)}),a=o+1,i()}return{name:n,attributes:s,parsed:a-t}}_parseProcessingInstruction(e,t){let s=t;for(;s<e.length&&!qu(e,s)&&">"!==e[s]&&"?"!==e[s]&&"/"!==e[s];)++s;const a=e.substring(t,s);!function(){for(;s<e.length&&qu(e,s);)++s}();const i=s;for(;s<e.length&&("?"!==e[s]||">"!==e[s+1]);)++s;return{name:a,value:e.substring(i,s),parsed:s-t}}parseXml(e){let t=0;for(;t<e.length;){let s=t;if("<"===e[t]){let t;switch(++s,e[s]){case"/":if(++s,t=e.indexOf(">",s),t<0)return void this.onError(Uu);this.onEndElement(e.substring(s,t)),s=t+1;break;case"?":++s;const a=this._parseProcessingInstruction(e,s);if("?>"!==e.substring(s+a.parsed,s+a.parsed+2))return void this.onError(Pu);this.onPi(a.name,a.value),s+=a.parsed+2;break;case"!":if("--"===e.substring(s+1,s+3)){if(t=e.indexOf("--\x3e",s+3),t<0)return void this.onError(Lu);this.onComment(e.substring(s+3,t)),s=t+3}else if("[CDATA["===e.substring(s+1,s+8)){if(t=e.indexOf("]]>",s+8),t<0)return void this.onError(Ou);this.onCdata(e.substring(s+8,t)),s=t+3}else{if("DOCTYPE"!==e.substring(s+1,s+8))return void this.onError(_u);{const a=e.indexOf("[",s+8);let i=!1;if(t=e.indexOf(">",s+8),t<0)return void this.onError(Eu);if(a>0&&t>a){if(t=e.indexOf("]>",s+8),t<0)return void this.onError(Eu);i=!0}const n=e.substring(s+8,t+(i?1:0));this.onDoctype(n),s=t+(i?2:1)}}break;default:const i=this._parseContent(e,s);if(null===i)return void this.onError(_u);let n=!1;if("/>"===e.substring(s+i.parsed,s+i.parsed+2))n=!0;else if(">"!==e.substring(s+i.parsed,s+i.parsed+1))return void this.onError(Uu);this.onBeginElement(i.name,i.attributes,n),s+=i.parsed+(n?2:1)}}else{for(;s<e.length&&"<"!==e[s];)s++;const a=e.substring(t,s);this.onText(this._resolveEntities(a))}t=s}}onResolveEntity(e){return`&${e};`}onPi(e,t){}onComment(e){}onCdata(e){}onDoctype(e){}onText(e){}onBeginElement(e,t,s){}onEndElement(e){}onError(e){}}class Hu{constructor(e,t){this.nodeName=e,this.nodeValue=t,Object.defineProperty(this,"parentNode",{value:null,writable:!0})}get firstChild(){return this.childNodes?.[0]}get nextSibling(){const e=this.parentNode.childNodes;if(!e)return;const t=e.indexOf(this);return-1!==t?e[t+1]:void 0}get textContent(){return this.childNodes?this.childNodes.map(e=>e.textContent).join(""):this.nodeValue||""}get children(){return this.childNodes||[]}hasChildNodes(){return this.childNodes?.length>0}searchNode(e,t){if(t>=e.length)return this;const s=e[t];if(s.name.startsWith("#")&&t<e.length-1)return this.searchNode(e,t+1);const a=[];let i=this;for(;;){if(s.name===i.nodeName){if(0!==s.pos){if(0===a.length)return null;{const[n]=a.pop();let r=0;for(const a of n.childNodes)if(s.name===a.nodeName){if(r===s.pos)return a.searchNode(e,t+1);r++}return i.searchNode(e,t+1)}}{const s=i.searchNode(e,t+1);if(null!==s)return s}}if(i.childNodes?.length>0)a.push([i,0]),i=i.childNodes[0];else{if(0===a.length)return null;for(;0!==a.length;){const[e,t]=a.pop(),s=t+1;if(s<e.childNodes.length){a.push([e,s]),i=e.childNodes[s];break}}if(0===a.length)return null}}}dump(e){if("#text"!==this.nodeName){if(e.push(`<${this.nodeName}`),this.attributes)for(const t of this.attributes)e.push(` ${t.name}="${va(t.value)}"`);if(this.hasChildNodes()){e.push(">");for(const t of this.childNodes)t.dump(e);e.push(`</${this.nodeName}>`)}else this.nodeValue?e.push(`>${va(this.nodeValue)}</${this.nodeName}>`):e.push("/>")}else e.push(va(this.nodeValue))}}class $u extends ju{constructor({hasAttributes:e=!1,lowerCaseName:t=!1}){super(),this._currentFragment=null,this._stack=null,this._errorCode=Du,this._hasAttributes=e,this._lowerCaseName=t}parseFromString(e){if(this._currentFragment=[],this._stack=[],this._errorCode=Du,this.parseXml(e),this._errorCode!==Du)return;const[t]=this._currentFragment;return t?{documentElement:t}:void 0}onText(e){if(function(e){for(let t=0,s=e.length;t<s;t++)if(!qu(e,t))return!1;return!0}(e))return;const t=new Hu("#text",e);this._currentFragment.push(t)}onCdata(e){const t=new Hu("#text",e);this._currentFragment.push(t)}onBeginElement(e,t,s){this._lowerCaseName&&(e=e.toLowerCase());const a=new Hu(e);a.childNodes=[],this._hasAttributes&&(a.attributes=t),this._currentFragment.push(a),s||(this._stack.push(this._currentFragment),this._currentFragment=a.childNodes)}onEndElement(e){this._currentFragment=this._stack.pop()||[];const t=this._currentFragment.at(-1);if(!t)return null;for(const s of t.childNodes)s.parentNode=t;return t}onError(e){this._errorCode=e}}class zu{constructor(e){e=this._repair(e);const t=new $u({lowerCaseName:!0}).parseFromString(e);this._metadataMap=new Map,this._data=e,t&&this._parse(t)}_repair(e){return e.replace(/^[^<]+/,"").replaceAll(/>\\376\\377([^<]+)/g,function(e,t){const s=t.replaceAll(/\\([0-3])([0-7])([0-7])/g,function(e,t,s,a){return String.fromCharCode(64*t+8*s+1*a)}).replaceAll(/&(amp|apos|gt|lt|quot);/g,function(e,t){switch(t){case"amp":return"&";case"apos":return"'";case"gt":return">";case"lt":return"<";case"quot":return'"'}throw new Error(`_repair: ${t} isn't defined.`)}),a=[">"];for(let i=0,n=s.length;i<n;i+=2){const e=256*s.charCodeAt(i)+s.charCodeAt(i+1);e>=32&&e<127&&60!==e&&62!==e&&38!==e?a.push(String.fromCharCode(e)):a.push("&#x"+(65536+e).toString(16).substring(1)+";")}return a.join("")})}_getSequence(e){const t=e.nodeName;return"rdf:bag"!==t&&"rdf:seq"!==t&&"rdf:alt"!==t?null:e.childNodes.filter(e=>"rdf:li"===e.nodeName)}_parseArray(e){if(!e.hasChildNodes())return;const[t]=e.childNodes,s=this._getSequence(t)||[];this._metadataMap.set(e.nodeName,s.map(e=>e.textContent.trim()))}_parse(e){let t=e.documentElement;if("rdf:rdf"!==t.nodeName)for(t=t.firstChild;t&&"rdf:rdf"!==t.nodeName;)t=t.nextSibling;if(t&&"rdf:rdf"===t.nodeName&&t.hasChildNodes())for(const s of t.childNodes)if("rdf:description"===s.nodeName)for(const e of s.childNodes){const t=e.nodeName;switch(t){case"#text":continue;case"dc:creator":case"dc:subject":this._parseArray(e);continue}this._metadataMap.set(t,e.textContent.trim())}}get serializable(){return{parsedData:this._metadataMap,rawData:this._data}}}const Gu=1,Wu=2,Vu=3,Xu=4,Ku=5;class Yu{constructor(e,t,s){this.xref=e,this.dict=t,this.ref=s instanceof Es?s:null,this.roleMap=new Map,this.structParentIds=null,this.kidRefToPosition=void 0,this.parentTree=null}getKidPosition(e){if(void 0===this.kidRefToPosition){const e=this.dict.get("K");if(Array.isArray(e)){const t=this.kidRefToPosition=new Map;for(let s=0,a=e.length;s<a;s++){const a=e[s];a&&t.set(a.toString(),s)}}else this.kidRefToPosition=e instanceof Ps?new Map([[e.objId,0]]):e?null:new Map}return this.kidRefToPosition?this.kidRefToPosition.get(e)??NaN:-1}init(){this.readRoleMap();const e=this.dict.get("ParentTree");e&&(this.parentTree=new Mu(e,this.xref))}#me(e,t,s){if(!(e instanceof Es)||t<0)return;this.structParentIds||=new _s;let a=this.structParentIds.get(e);a||(a=[],this.structParentIds.put(e,a)),a.push([t,s])}addAnnotationIdToPage(e,t){this.#me(e,t,Xu)}readRoleMap(){const e=this.dict.get("RoleMap");if(e instanceof Ps)for(const[t,s]of e)s instanceof Ns&&this.roleMap.set(t,s.name)}static async canCreateStructureTree({catalogRef:e,pdfManager:t,newAnnotationsByPage:s}){if(!(e instanceof Es))return Zt("Cannot save the struct tree: no catalog reference."),!1;let a=0,i=!0;for(const[n,r]of s){const{ref:e}=await t.getPage(n);if(!(e instanceof Es)){Zt(`Cannot save the struct tree: page ${n} has no ref.`),i=!0;break}for(const t of r)t.accessibilityData?.type&&(t.parentTreeId=a++,i=!1)}if(i){for(const e of s.values())for(const t of e)delete t.parentTreeId;return!1}return!0}static async createStructureTree({newAnnotationsByPage:e,xref:t,catalogRef:s,pdfManager:a,changes:i}){const n=await a.ensureCatalog("cloneDict"),r=new _s;r.put(s,n);const o=t.getNewTemporaryRef();n.set("StructTreeRoot",o);const c=new Ps(t);c.set("Type",Ns.get("StructTreeRoot"));const l=t.getNewTemporaryRef();c.set("ParentTree",l);const h=[];c.set("K",h),r.put(o,c);const u=new Ps(t),d=[];u.set("Nums",d);const f=await this.#be({newAnnotationsByPage:e,structTreeRootRef:o,structTreeRoot:null,kids:h,nums:d,xref:t,pdfManager:a,changes:i,cache:r});c.set("ParentTreeNextKey",f),r.put(l,u);for(const[g,p]of r.items())i.put(g,{data:p})}async canUpdateStructTree({pdfManager:e,newAnnotationsByPage:t}){if(!this.ref)return Zt("Cannot update the struct tree: no root reference."),!1;let s=this.dict.get("ParentTreeNextKey");if(!Number.isInteger(s)||s<0)return Zt("Cannot update the struct tree: invalid next key."),!1;const a=this.dict.get("ParentTree");if(!(a instanceof Ps))return Zt("Cannot update the struct tree: ParentTree isn't a dict."),!1;const i=a.get("Nums");if(!Array.isArray(i))return Zt("Cannot update the struct tree: nums isn't an array."),!1;const n=new Mu(a,this.xref);for(const o of t.keys()){const{pageDict:t}=await e.getPage(o);if(!t.has("StructParents"))continue;const s=t.get("StructParents");if(!Number.isInteger(s)||!Array.isArray(n.get(s)))return Zt(`Cannot save the struct tree: page ${o} has a wrong id.`),!1}let r=!0;for(const[o,c]of t){const{pageDict:t}=await e.getPage(o);Yu.#we({elements:c,xref:this.xref,pageDict:t,numberTree:n});for(const e of c)e.accessibilityData?.type&&(e.accessibilityData.structParent>=0||(e.parentTreeId=s++),r=!1)}if(r){for(const e of t.values())for(const t of e)delete t.parentTreeId,delete t.structTreeParent;return!1}return!0}async updateStructureTree({newAnnotationsByPage:e,pdfManager:t,changes:s}){const{ref:a,xref:i}=this,n=this.dict.clone(),r=new _s;r.put(a,n);let o,c=n.getRaw("ParentTree");c instanceof Es?o=i.fetch(c):(o=c,c=i.getNewTemporaryRef(),n.set("ParentTree",c)),o=o.clone(),r.put(c,o);let l=o.getRaw("Nums"),h=null;l instanceof Es&&(h=l,l=i.fetch(h)),l=l.slice(),h||o.set("Nums",l);const u=await Yu.#be({newAnnotationsByPage:e,structTreeRootRef:a,structTreeRoot:this,kids:null,nums:l,xref:i,pdfManager:t,changes:s,cache:r});if(-1!==u){n.set("ParentTreeNextKey",u),h&&r.put(h,l);for(const[e,t]of r.items())s.put(e,{data:t})}}static async#be({newAnnotationsByPage:e,structTreeRootRef:t,structTreeRoot:s,kids:a,nums:i,xref:n,pdfManager:r,changes:o,cache:c}){const l=Ns.get("OBJR");let h,u=-1;for(const[d,f]of e){const e=await r.getPage(d),{ref:g}=e,p=g instanceof Es;for(const{accessibilityData:r,ref:m,parentTreeId:b,structTreeParent:w}of f){if(!r?.type)continue;const{structParent:f}=r;if(s&&Number.isInteger(f)&&f>=0){let t=(h||=new Map).get(d);void 0===t&&(t=new Qu(s,e.pageDict).collectObjects(g),h.set(d,t));const a=t?.get(f);if(a){const e=n.fetch(a).clone();Yu.#ye(e,r),o.put(a,{data:e});continue}}u=Math.max(u,b);const y=n.getNewTemporaryRef(),x=new Ps(n);Yu.#ye(x,r),await this.#xe({structTreeParent:w,tagDict:x,newTagRef:y,structTreeRootRef:t,fallbackKids:a,xref:n,cache:c});const k=new Ps(n);x.set("K",k),k.set("Type",l),p&&k.set("Pg",g),k.set("Obj",m),c.put(y,x),i.push(b,y)}}return u+1}static#ye(e,{type:t,title:s,lang:a,alt:i,expanded:n,actualText:r}){e.set("S",Ns.get(t)),s&&e.set("T",Fa(s)),a&&e.set("Lang",Fa(a)),i&&e.set("Alt",Fa(i)),n&&e.set("E",Fa(n)),r&&e.set("ActualText",Fa(r))}static#we({elements:e,xref:t,pageDict:s,numberTree:a}){const i=new Map;for(const c of e)if(c.structTreeParentId){const e=parseInt(c.structTreeParentId.split("_mc")[1],10);let t=i.get(e);t||(t=[],i.set(e,t)),t.push(c)}const n=s.get("StructParents");if(!Number.isInteger(n))return;const r=a.get(n),o=(e,s,a)=>{const n=i.get(e);if(n){const e=s.getRaw("P"),i=t.fetchIfRef(e);if(e instanceof Es&&i instanceof Ps){const e={ref:a,dict:s};for(const t of n)t.structTreeParent=e}return!0}return!1};for(const c of r){if(!(c instanceof Es))continue;const e=t.fetch(c),s=e.get("K");if(Number.isInteger(s))o(s,e,c);else if(Array.isArray(s))for(let a of s){if(a=t.fetchIfRef(a),Number.isInteger(a)&&o(a,e,c))break;if(!(a instanceof Ps))continue;if(!Us(a.get("Type"),"MCR"))break;const s=a.get("MCID");if(Number.isInteger(s)&&o(s,e,c))break}}}static async#xe({structTreeParent:e,tagDict:t,newTagRef:s,structTreeRootRef:a,fallbackKids:i,xref:n,cache:r}){let o,c=null;e?(({ref:c}=e),o=e.dict.getRaw("P")||a):o=a,t.set("P",o);const l=n.fetchIfRef(o);if(!l)return void i.push(s);let h=r.get(o);h||(h=l.clone(),r.put(o,h));const u=h.getRaw("K");let d=u instanceof Es?r.get(u):null;if(!d){d=n.fetchIfRef(u),d=Array.isArray(d)?d.slice():[u];const e=n.getNewTemporaryRef();h.set("K",e),r.put(e,d)}const f=d.indexOf(c);d.splice(f>=0?f+1:d.length,0,s)}}class Ju{constructor(e,t){this.tree=e,this.xref=e.xref,this.dict=t,this.kids=[],this.parseKids()}get role(){const e=this.dict.get("S"),t=e instanceof Ns?e.name:"",{root:s}=this.tree;return s.roleMap.get(t)??t}get mathML(){let e=this.dict.get("AF")||[];Array.isArray(e)||(e=[e]);for(let s of e){if(s=this.xref.fetchIfRef(s),!(s instanceof Ps))continue;if(!Us(s.get("Type"),"Filespec"))continue;if(!Us(s.get("AFRelationship"),"Supplement"))continue;const e=s.get("EF");if(!(e instanceof Ps))continue;const t=e.get("UF")||e.get("F");if(t instanceof $s&&Us(t.dict.get("Type"),"EmbeddedFile")&&Us(t.dict.get("Subtype"),"application/mathml+xml"))return ys(t.getString())}const t=this.dict.get("A");if(t instanceof Ps&&Us(t.get("O"),"MSFT_Office")){const e=t.get("MSFT_MathML");return e?ws(e):null}return null}parseKids(){let e=null;const t=this.dict.getRaw("Pg");t instanceof Es&&(e=t.toString());const s=this.dict.get("K");if(Array.isArray(s))for(const a of s){const t=this.parseKid(e,this.xref.fetchIfRef(a));t&&this.kids.push(t)}else{const t=this.parseKid(e,s);t&&this.kids.push(t)}}parseKid(e,t){if(Number.isInteger(t))return this.tree.pageDict.objId!==e?null:new Zu({type:Gu,mcid:t,pageObjId:e});if(!(t instanceof Ps))return null;const s=t.getRaw("Pg");s instanceof Es&&(e=s.toString());const a=t.get("Type")instanceof Ns?t.get("Type").name:null;if("MCR"===a){if(this.tree.pageDict.objId!==e)return null;const s=t.getRaw("Stm");return new Zu({type:Wu,refObjId:s instanceof Es?s.toString():null,pageObjId:e,mcid:t.get("MCID")})}if("OBJR"===a){if(this.tree.pageDict.objId!==e)return null;const s=t.getRaw("Obj");return new Zu({type:Vu,refObjId:s instanceof Es?s.toString():null,pageObjId:e})}return new Zu({type:Ku,dict:t})}}class Zu{constructor({type:e,dict:t=null,mcid:s=null,pageObjId:a=null,refObjId:i=null}){this.type=e,this.dict=t,this.mcid=s,this.pageObjId=a,this.refObjId=i,this.parentNode=null}}class Qu{constructor(e,t){this.root=e,this.xref=e?.xref??null,this.rootDict=e?.dict??null,this.pageDict=t,this.nodes=[]}collectObjects(e){if(!(this.root&&this.rootDict&&e instanceof Es))return null;const t=this.rootDict.get("ParentTree");if(!t)return null;const s=this.root.structParentIds?.get(e);if(!s)return null;const a=new Map,i=new Mu(t,this.xref);for(const[n]of s){const e=i.getRaw(n);e instanceof Es&&a.set(n,e)}return a}parse(e){if(!(this.root&&this.rootDict&&e instanceof Es))return;const{parentTree:t}=this.root;if(!t)return;const s=this.pageDict.get("StructParents"),a=this.root.structParentIds?.get(e);if(!Number.isInteger(s)&&!a)return;const i=new Map;if(Number.isInteger(s)){const e=t.get(s);if(Array.isArray(e))for(const t of e)t instanceof Es&&this.addNode(this.xref.fetch(t),i)}if(a)for(const[n,r]of a){const e=t.get(n);if(e){const t=this.addNode(this.xref.fetchIfRef(e),i);1===t?.kids?.length&&t.kids[0].type===Vu&&(t.kids[0].type=r)}}}addNode(e,t,s=0){if(s>40)return Zt("StructTree MAX_DEPTH reached."),null;if(!(e instanceof Ps))return null;if(t.has(e))return t.get(e);const a=new Ju(this,e);switch(t.set(e,a),a.role){case"L":case"LBody":case"LI":case"Table":case"THead":case"TBody":case"TFoot":case"TR":for(const e of a.kids)e.type===Ku&&this.addNode(e.dict,t,s-1)}const i=e.get("P");if(!(i instanceof Ps)||Us(i.get("Type"),"StructTreeRoot"))return this.addTopLevelNode(e,a)||t.delete(e),a;const n=this.addNode(i,t,s+1);if(!n)return a;let r=!1;for(const o of n.kids)o.type===Ku&&o.dict===e&&(o.parentNode=a,r=!0);return r||t.delete(e),a}addTopLevelNode(e,t){const s=this.root.getKidPosition(e.objId);return!isNaN(s)&&(-1!==s&&(this.nodes[s]=t),!0)}get serializable(){function e(t,s,a=0){if(a>40)return void Zt("StructTree too deep to be fully serialized.");const i=Object.create(null);i.role=t.role,i.children=[],s.children.push(i);let n=t.dict.get("Alt");if("string"!=typeof n&&(n=t.dict.get("ActualText")),"string"==typeof n&&(i.alt=ws(n)),"Formula"===i.role){const{mathML:e}=t;e&&(i.mathML=e)}const r=t.dict.get("A");if(r instanceof Ps){const e=ga(r.getArray("BBox"),null);if(e)i.bbox=e;else{const e=r.get("Width"),t=r.get("Height");"number"==typeof e&&e>0&&"number"==typeof t&&t>0&&(i.bbox=[0,0,e,t])}}const o=t.dict.get("Lang");"string"==typeof o&&(i.lang=ws(o));for(const c of t.kids){const t=c.type===Ku?c.parentNode:null;t?e(t,i,a+1):c.type===Gu||c.type===Wu?i.children.push({type:"content",id:`p${c.pageObjId}_mc${c.mcid}`}):c.type===Vu?i.children.push({type:"object",id:c.refObjId}):c.type===Xu&&i.children.push({type:"annotation",id:`pdfjs_internal_id_${c.refObjId}`})}}const t=Object.create(null);t.children=[],t.role="Root";for(const s of this.nodes)s&&e(s,t);return t}}const ed=function(e,t,s){if(!Array.isArray(s)||s.length<2)return!1;const[a,i,...n]=s;if(!e(a)&&!Number.isInteger(a))return!1;if(!t(i))return!1;const r=n.length;let o=!0;switch(i.name){case"XYZ":if(r<2||r>3)return!1;break;case"Fit":case"FitB":return 0===r;case"FitH":case"FitBH":case"FitV":case"FitBV":if(r>1)return!1;break;case"FitR":if(4!==r)return!1;o=!1;break;default:return!1}for(const c of n)if(!("number"==typeof c||o&&null===c))return!1;return!0}.bind(null,e=>e instanceof Es,Us);function td(e){return e instanceof Ps&&(e=e.get("D")),ed(e)?e:null}function sd(e){let t=e.get("D");if(t){if(t instanceof Ns&&(t=t.name),"string"==typeof t)return ws(t,!0);if(ed(t))return JSON.stringify(t)}return null}class ad{#ke=null;#ve=null;builtInCMapCache=new Map;fontCache=new _s;globalColorSpaceCache=new ph;globalImageCache=new mh;nonBlendModesSet=new Ls;pageDictCache=new _s;pageIndexCache=new _s;pageKidsCountCache=new _s;standardFontDataCache=new Map;systemFontCache=new Map;constructor(e,t){if(this.pdfManager=e,this.xref=t,this.#ve=t.getCatalogObj(),!(this.#ve instanceof Ps))throw new cs("Catalog object is not a dictionary.");this.toplevelPagesDict}cloneDict(){return this.#ve.clone()}get version(){const e=this.#ve.get("Version");if(e instanceof Ns){if(zs.test(e.name))return ss(this,"version",e.name);Zt(`Invalid PDF catalog version: ${e.name}`)}return ss(this,"version",null)}get lang(){const e=this.#ve.get("Lang");return ss(this,"lang",e&&"string"==typeof e?ws(e):null)}get needsRendering(){const e=this.#ve.get("NeedsRendering");return ss(this,"needsRendering","boolean"==typeof e&&e)}get collection(){let e=null;try{const t=this.#ve.get("Collection");t instanceof Ps&&t.size>0&&(e=t)}catch(e){if(e instanceof Ys)throw e;Jt("Cannot fetch Collection entry; assuming no collection is present.")}return ss(this,"collection",e)}get acroForm(){let e=null;try{const t=this.#ve.get("AcroForm");t instanceof Ps&&t.size>0&&(e=t)}catch(e){if(e instanceof Ys)throw e;Jt("Cannot fetch AcroForm entry; assuming no forms are present.")}return ss(this,"acroForm",e)}get acroFormRef(){const e=this.#ve.getRaw("AcroForm");return ss(this,"acroFormRef",e instanceof Es?e:null)}get metadata(){const e=this.#ve.getRaw("Metadata");if(!(e instanceof Es))return ss(this,"metadata",null);let t=null;try{const s=this.xref.fetch(e,!this.xref.encrypt?.encryptMetadata);if(s instanceof $s&&s.dict instanceof Ps){const e=s.dict.get("Type"),a=s.dict.get("Subtype");if(Us(e,"Metadata")&&Us(a,"XML")){const e=ys(s.getString());e&&(t=new zu(e).serializable)}}}catch(e){if(e instanceof Ys)throw e;Jt(`Skipping invalid Metadata: "${e}".`)}return ss(this,"metadata",t)}get markInfo(){let e=null;try{e=this.#Ae()}catch(e){if(e instanceof Ys)throw e;Zt("Unable to read mark info.")}return ss(this,"markInfo",e)}#Ae(){const e=this.#ve.get("MarkInfo");if(!(e instanceof Ps))return null;const t={Marked:!1,UserProperties:!1,Suspects:!1};for(const s in t){const a=e.get(s);"boolean"==typeof a&&(t[s]=a)}return t}get hasStructTree(){return this.#ve.has("StructTreeRoot")}get structTreeRoot(){let e=null;try{e=this.#Ce()}catch(e){if(e instanceof Ys)throw e;Zt("Unable read to structTreeRoot info.")}return ss(this,"structTreeRoot",e)}#Ce(){const e=this.#ve.getRaw("StructTreeRoot"),t=this.xref.fetchIfRef(e);if(!(t instanceof Ps))return null;const s=new Yu(this.xref,t,e);return s.init(),s}get toplevelPagesDict(){const e=this.#ve.get("Pages");if(!(e instanceof Ps))throw new cs("Invalid top-level pages dictionary.");return ss(this,"toplevelPagesDict",e)}get documentOutline(){let e=null;try{e=this.#Se()}catch(e){if(e instanceof Ys)throw e;Zt("Unable to read document outline.")}return ss(this,"documentOutline",e)}#Se(){let e=this.#ve.get("Outlines");if(!(e instanceof Ps))return null;if(e=e.getRaw("First"),!(e instanceof Es))return null;const t={items:[]},s=[{obj:e,parent:t}],a=new Ls;a.put(e);const i=this.xref,n=new Uint8ClampedArray(3);for(;s.length>0;){const t=s.shift(),r=i.fetchIfRef(t.obj);if(null===r)continue;r.has("Title")||Zt("Invalid outline item encountered.");const o={url:null,dest:null,action:null};ad.parseDestDictionary({destDict:r,resultObj:o,docBaseUrl:this.baseUrl,docAttachments:this.attachments});const c=r.get("Title"),l=r.get("F")||0,h=r.getArray("C"),u=r.get("Count");let d=n;!ua(h,3)||0===h[0]&&0===h[1]&&0===h[2]||(d=mi.rgb.getRgb(h,0));const f={action:o.action,attachment:o.attachment,dest:o.dest,url:o.url,unsafeUrl:o.unsafeUrl,newWindow:o.newWindow,setOCGState:o.setOCGState,title:"string"==typeof c?ws(c):"",color:d,count:Number.isInteger(u)?u:void 0,bold:!!(2&l),italic:!!(1&l),items:[]};t.parent.items.push(f),e=r.getRaw("First"),e instanceof Es&&!a.has(e)&&(s.push({obj:e,parent:f}),a.put(e)),e=r.getRaw("Next"),e instanceof Es&&!a.has(e)&&(s.push({obj:e,parent:t.parent}),a.put(e))}return t.items.length>0?t.items:null}get permissions(){let e=null;try{e=this.#Ie()}catch(e){if(e instanceof Ys)throw e;Zt("Unable to read permissions.")}return ss(this,"permissions",e)}#Ie(){const e=this.xref.trailer.get("Encrypt");if(!(e instanceof Ps))return null;let t=e.get("P");if("number"!=typeof t)return null;t+=2**32;const s=[];for(const a in y){const e=y[a];t&e&&s.push(e)}return s}get optionalContentConfig(){let e=null;try{const t=this.#ve.get("OCProperties");if(!t)return ss(this,"optionalContentConfig",null);const s=t.get("D");if(!s)return ss(this,"optionalContentConfig",null);const a=t.get("OCGs");if(!Array.isArray(a))return ss(this,"optionalContentConfig",null);const i=new _s;for(const e of a)e instanceof Es&&!i.has(e)&&i.put(e,this.#Be(e));e=this.#Fe(s,i)}catch(e){if(e instanceof Ys)throw e;Zt(`Unable to read optional content config: ${e}`)}return ss(this,"optionalContentConfig",e)}#Be(e){const t=this.xref.fetch(e),s={id:e.toString(),name:null,intent:null,usage:{print:null,view:null},rbGroups:[]},a=t.get("Name");"string"==typeof a&&(s.name=ws(a));let i=t.getArray("Intent");Array.isArray(i)||(i=[i]),i.every(e=>e instanceof Ns)&&(s.intent=i.map(e=>e.name));const n=t.get("Usage");if(!(n instanceof Ps))return s;const r=s.usage,o=n.get("Print");if(o instanceof Ps){const e=o.get("PrintState");if(e instanceof Ns)switch(e.name){case"ON":case"OFF":r.print={printState:e.name}}}const c=n.get("View");if(c instanceof Ps){const e=c.get("ViewState");if(e instanceof Ns)switch(e.name){case"ON":case"OFF":r.view={viewState:e.name}}}return s}#Fe(e,t){function s(e){const s=[];if(Array.isArray(e))for(const a of e)a instanceof Es&&t.has(a)&&s.push(a.toString());return s}function a(e,s=0){if(!Array.isArray(e))return null;const a=[];for(const o of e){if(o instanceof Es&&t.has(o)){r.put(o),a.push(o.toString());continue}const e=i(o,s);e&&a.push(e)}if(s>0)return a;const n=[];for(const[i]of t.items())r.has(i)||n.push(i.toString());return n.length&&a.push({name:null,order:n}),a}function i(e,t){if(++t>o)return Zt("parseNestedOrder - reached MAX_NESTED_LEVELS."),null;const s=n.fetchIfRef(e);if(!Array.isArray(s))return null;const i=n.fetchIfRef(s[0]);if("string"!=typeof i)return null;const r=a(s.slice(1),t);return r?.length?{name:ws(i),order:r}:null}const n=this.xref,r=new Ls,o=10;return function(e){if(Array.isArray(e))for(const s of e){const e=n.fetchIfRef(s);if(!Array.isArray(e)||!e.length)continue;const a=new Set;for(const s of e)s instanceof Es&&t.has(s)&&!a.has(s.toString())&&(a.add(s.toString()),t.get(s).rbGroups.push(a))}}(e.get("RBGroups")),{name:"string"==typeof e.get("Name")?ws(e.get("Name")):null,creator:"string"==typeof e.get("Creator")?ws(e.get("Creator")):null,baseState:e.get("BaseState")instanceof Ns?e.get("BaseState").name:null,on:s(e.get("ON")),off:s(e.get("OFF")),order:a(e.get("Order")),groups:[...t]}}setActualNumPages(e=null){this.#ke=e}get hasActualNumPages(){return null!==this.#ke}get _pagesCount(){const e=this.toplevelPagesDict.get("Count");if(!Number.isInteger(e))throw new cs("Page count in top-level pages dictionary is not an integer.");return ss(this,"_pagesCount",e)}get numPages(){return this.#ke??this._pagesCount}get destinations(){const e=this.#Me(),t=Object.create(null);for(const s of e)if(s instanceof Fu)for(const[e,a]of s.getAll()){const s=td(a);s&&(t[ws(e,!0)]=s)}else if(s instanceof Ps)for(const[e,a]of s){const s=td(a);s&&(t[ws(e,!0)]||=s)}return ss(this,"destinations",t)}getDestination(e){if(this.hasOwnProperty("destinations"))return this.destinations[e]??null;const t=this.#Me();for(const s of t)if(s instanceof Fu||s instanceof Ps){const t=td(s.get(e));if(t)return t}if(t.length){const t=this.destinations[e];if(t)return t}return null}#Me(){const e=this.#ve.get("Names"),t=[];return e?.has("Dests")&&t.push(new Fu(e.getRaw("Dests"),this.xref)),this.#ve.has("Dests")&&t.push(this.#ve.get("Dests")),t}get rawPageLabels(){const e=this.#ve.getRaw("PageLabels");return e?new Mu(e,this.xref).getAll():null}get pageLabels(){let e=null;try{e=this.#Te()}catch(e){if(e instanceof Ys)throw e;Zt("Unable to read page labels.")}return ss(this,"pageLabels",e)}#Te(){const e=this.rawPageLabels;if(!e)return null;const t=new Array(this.numPages);let s=null,a="",i="",n=1;for(let r=0,o=this.numPages;r<o;r++){const o=e.get(r);if(void 0!==o){if(!(o instanceof Ps))throw new cs("PageLabel is not a dictionary.");if(o.has("Type")&&!Us(o.get("Type"),"PageLabel"))throw new cs("Invalid type in PageLabel dictionary.");if(o.has("S")){const e=o.get("S");if(!(e instanceof Ns))throw new cs("Invalid style in PageLabel dictionary.");s=e.name}else s=null;if(o.has("P")){const e=o.get("P");if("string"!=typeof e)throw new cs("Invalid prefix in PageLabel dictionary.");a=ws(e)}else a="";if(o.has("St")){const e=o.get("St");if(!(Number.isInteger(e)&&e>=1))throw new cs("Invalid start in PageLabel dictionary.");n=e}else n=1}switch(s){case"D":i=n;break;case"R":case"r":i=ia(n,"r"===s);break;case"A":case"a":const e=26,t="a"===s?97:65,a=n-1;i=String.fromCharCode(t+a%e).repeat(Math.floor(a/e)+1);break;default:if(s)throw new cs(`Invalid style "${s}" in PageLabel dictionary.`);i=""}t[r]=a+i,n++}return t}get pageLayout(){const e=this.#ve.get("PageLayout");let t="";if(e instanceof Ns)switch(e.name){case"SinglePage":case"OneColumn":case"TwoColumnLeft":case"TwoColumnRight":case"TwoPageLeft":case"TwoPageRight":t=e.name}return ss(this,"pageLayout",t)}get pageMode(){const e=this.#ve.get("PageMode");let t="UseNone";if(e instanceof Ns)switch(e.name){case"UseNone":case"UseOutlines":case"UseThumbs":case"FullScreen":case"UseOC":case"UseAttachments":t=e.name}return ss(this,"pageMode",t)}get viewerPreferences(){const e=this.#ve.get("ViewerPreferences");if(!(e instanceof Ps))return ss(this,"viewerPreferences",null);let t=null;for(const[s,a]of e){let e;switch(s){case"HideToolbar":case"HideMenubar":case"HideWindowUI":case"FitWindow":case"CenterWindow":case"DisplayDocTitle":case"PickTrayByPDFSize":"boolean"==typeof a&&(e=a);break;case"NonFullScreenPageMode":if(a instanceof Ns)switch(a.name){case"UseNone":case"UseOutlines":case"UseThumbs":case"UseOC":e=a.name;break;default:e="UseNone"}break;case"Direction":if(a instanceof Ns)switch(a.name){case"L2R":case"R2L":e=a.name;break;default:e="L2R"}break;case"ViewArea":case"ViewClip":case"PrintArea":case"PrintClip":if(a instanceof Ns)switch(a.name){case"MediaBox":case"CropBox":case"BleedBox":case"TrimBox":case"ArtBox":e=a.name;break;default:e="CropBox"}break;case"PrintScaling":if(a instanceof Ns)switch(a.name){case"None":case"AppDefault":e=a.name;break;default:e="AppDefault"}break;case"Duplex":if(a instanceof Ns)switch(a.name){case"Simplex":case"DuplexFlipShortEdge":case"DuplexFlipLongEdge":e=a.name;break;default:e="None"}break;case"PrintPageRange":Array.isArray(a)&&a.length%2==0&&a.every((e,t,s)=>Number.isInteger(e)&&e>0&&(0===t||e>=s[t-1])&&e<=this.numPages)&&(e=a);break;case"NumCopies":Number.isInteger(a)&&a>0&&(e=a);break;default:Zt(`Ignoring non-standard key in ViewerPreferences: ${s}.`);continue}void 0!==e?(t??=Object.create(null),t[s]=e):Zt(`Bad value, for key "${s}", in ViewerPreferences: ${a}.`)}return ss(this,"viewerPreferences",t)}get openAction(){const e=this.#ve.get("OpenAction"),t=Object.create(null);if(e instanceof Ps){const s=new Ps(this.xref);s.set("A",e);const a={url:null,dest:null,action:null};ad.parseDestDictionary({destDict:s,resultObj:a}),Array.isArray(a.dest)?t.dest=a.dest:a.action&&(t.action=a.action)}else ed(e)&&(t.dest=e);return ss(this,"openAction",fs(t)>0?t:null)}get attachments(){const e=this.#ve.get("Names");let t=null;if(e instanceof Ps&&e.has("EmbeddedFiles")){const s=new Fu(e.getRaw("EmbeddedFiles"),this.xref);for(const[e,a]of s.getAll()){const s=new Nu(a,this.xref);t??=Object.create(null),t[ws(e,!0)]=s.serializable}}return ss(this,"attachments",t)}get xfaImages(){const e=this.#ve.get("Names");let t=null;if(e instanceof Ps&&e.has("XFAImages")){const s=new Fu(e.getRaw("XFAImages"),this.xref);for(const[e,a]of s.getAll())a instanceof $s&&(t??=new Map,t.set(ws(e,!0),a.getBytes()))}return ss(this,"xfaImages",t)}#Re(){const e=this.#ve.get("Names");let t=null;function s(e,s){if(!(s instanceof Ps))return;if(!Us(s.get("S"),"JavaScript"))return;let a=s.get("JS");if(a instanceof $s)a=a.getString();else if("string"!=typeof a)return;a=ws(a,!0).replaceAll("\0",""),a&&(t||=new Map).set(e,a)}if(e instanceof Ps&&e.has("JavaScript")){const t=new Fu(e.getRaw("JavaScript"),this.xref);for(const[e,a]of t.getAll())s(ws(e,!0),a)}const a=this.#ve.get("OpenAction");return a&&s("OpenAction",a),t}get jsActions(){const e=this.#Re();let t=ya(this.xref,this.#ve,te);if(e){t||=Object.create(null);for(const[s,a]of e)s in t?t[s].push(a):t[s]=[a]}return ss(this,"jsActions",t)}async cleanup(e=!1){Tu(),this.globalColorSpaceCache.clear(),this.globalImageCache.clear(e),this.pageKidsCountCache.clear(),this.pageIndexCache.clear(),this.pageDictCache.clear(),this.nonBlendModesSet.clear();for(const{dict:t}of await Promise.all(this.fontCache))delete t.cacheKey;this.fontCache.clear(),this.builtInCMapCache.clear(),this.standardFontDataCache.clear(),this.systemFontCache.clear()}async getPageDict(e){const t=[this.toplevelPagesDict],s=new Ls,a=this.#ve.getRaw("Pages");a instanceof Es&&s.put(a);const i=this.xref,n=this.pageKidsCountCache,r=this.pageIndexCache,o=this.pageDictCache;let c=0;for(;t.length;){const a=t.pop();if(a instanceof Es){const l=n.get(a);if(l>=0&&c+l<=e){c+=l;continue}if(s.has(a))throw new cs("Pages tree contains circular reference.");s.put(a);const h=await(o.get(a)||i.fetchAsync(a));if(h instanceof Ps){let t=h.getRaw("Type");if(t instanceof Es&&(t=await i.fetchAsync(t)),Us(t,"Page")||!h.has("Kids")){if(n.has(a)||n.put(a,1),r.has(a)||r.put(a,c),c===e)return[h,a];c++;continue}}t.push(h);continue}if(!(a instanceof Ps))throw new cs("Page dictionary kid reference points to wrong type of object.");const{objId:l}=a;let h=a.getRaw("Count");if(h instanceof Es&&(h=await i.fetchAsync(h)),Number.isInteger(h)&&h>=0&&(l&&!n.has(l)&&n.put(l,h),c+h<=e)){c+=h;continue}let u=a.getRaw("Kids");if(u instanceof Es&&(u=await i.fetchAsync(u)),!Array.isArray(u)){let t=a.getRaw("Type");if(t instanceof Es&&(t=await i.fetchAsync(t)),Us(t,"Page")||!a.has("Kids")){if(c===e)return[a,null];c++;continue}throw new cs("Page dictionary kids object is not an array.")}for(let e=u.length-1;e>=0;e--){const s=u[e];t.push(s),a===this.toplevelPagesDict&&s instanceof Es&&!o.has(s)&&o.put(s,i.fetchAsync(s))}}throw new Error(`Page index ${e} not found.`)}async getAllPageDicts(e=!1){const{ignoreErrors:t}=this.pdfManager.evaluatorOptions,s=[{currentNode:this.toplevelPagesDict,posInKids:0}],a=new Ls,i=this.#ve.getRaw("Pages");i instanceof Es&&a.put(i);const n=new Map,r=this.xref,o=this.pageIndexCache;let c=0;function l(e,t){t&&!o.has(t)&&o.put(t,c),n.set(c++,[e,t])}function h(s){if(s instanceof Zs&&!e)throw s;e&&t&&0===c&&(Zt(`getAllPageDicts - Skipping invalid first page: "${s}".`),s=Ps.empty),n.set(c++,[s,null])}for(;s.length>0;){const t=s.at(-1),{currentNode:i,posInKids:n}=t;let o=i.getRaw("Kids");if(o instanceof Es)try{o=await r.fetchAsync(o)}catch(e){h(e);break}if(!Array.isArray(o)){h(new cs("Page dictionary kids object is not an array."));break}if(n>=o.length){s.pop();continue}const c=o[n];let u;if(c instanceof Es){if(a.has(c)){h(new cs("Pages tree contains circular reference."));break}a.put(c);try{u=await r.fetchAsync(c)}catch(e){h(e);break}}else u=c;if(!(u instanceof Ps)){h(new cs("Page dictionary kid reference points to wrong type of object."));break}let d=u.getRaw("Type");if(d instanceof Es)try{d=await r.fetchAsync(d)}catch(e){h(e);break}Us(d,"Page")||!u.has("Kids")?l(u,c instanceof Es?c:null):s.push({currentNode:u,posInKids:0}),t.posInKids++}return n}getPageIndex(e){const t=this.pageIndexCache.get(e);if(void 0!==t)return Promise.resolve(t);const s=this.xref;let a=0;const i=t=>function(t){let a,i=0;return s.fetchAsync(t).then(function(s){if(Hs(t,e)&&!js(s,"Page")&&!(s instanceof Ps&&!s.has("Type")&&s.has("Contents")))throw new cs("The reference does not point to a /Page dictionary.");if(!s)return null;if(!(s instanceof Ps))throw new cs("Node must be a dictionary.");return a=s.getRaw("Parent"),s.getAsync("Parent")}).then(function(e){if(!e)return null;if(!(e instanceof Ps))throw new cs("Parent must be a dictionary.");return e.getAsync("Kids")}).then(function(e){if(!e)return null;const n=[];let r=!1;for(const a of e){if(!(a instanceof Es))throw new cs("Kid must be a reference.");if(Hs(a,t)){r=!0;break}n.push(s.fetchAsync(a).then(function(e){if(!(e instanceof Ps))throw new cs("Kid node must be a dictionary.");e.has("Count")?i+=e.get("Count"):i++}))}if(!r)throw new cs("Kid reference not found in parent's kids.");return Promise.all(n).then(()=>[i,a])})}(t).then(t=>{if(!t)return this.pageIndexCache.put(e,a),a;const[s,n]=t;return a+=s,i(n)});return i(e)}get baseUrl(){const e=this.#ve.get("URI");if(e instanceof Ps){const t=e.get("Base");if("string"==typeof t){const e=ts(t,null,{tryConvertEncoding:!0});if(e)return ss(this,"baseUrl",e.href)}}return ss(this,"baseUrl",this.pdfManager.docBaseUrl)}static parseDestDictionary({destDict:e,resultObj:t,docBaseUrl:s=null,docAttachments:a=null}){if(!(e instanceof Ps))return void Zt("parseDestDictionary: `destDict` must be a dictionary.");let i,n,r=e.get("A");if(r instanceof Ps||(e.has("Dest")?r=e.get("Dest"):(r=e.get("AA"),r instanceof Ps&&(r.has("D")?r=r.get("D"):r.has("U")&&(r=r.get("U"))))),r instanceof Ps){const e=r.get("S");if(!(e instanceof Ns))return void Zt("parseDestDictionary: Invalid type in Action dictionary.");const s=e.name;switch(s){case"ResetForm":const e=r.get("Flags"),o=!(1&("number"==typeof e?e:0)),c=[],l=[];for(const t of r.get("Fields")||[])t instanceof Es?l.push(t.toString()):"string"==typeof t&&c.push(ws(t));t.resetForm={fields:c,refs:l,include:o};break;case"URI":i=r.get("URI"),i instanceof Ns&&(i="/"+i.name);break;case"GoTo":n=r.get("D");break;case"Launch":case"GoToR":const h=r.get("F");if(h instanceof Ps){const e=new Nu(h,null,!0),{rawFilename:t}=e.serializable;i=t}else"string"==typeof h&&(i=h);const u=sd(r);u&&"string"==typeof i&&(i=i.split("#",1)[0]+"#"+u);const d=r.get("NewWindow");"boolean"==typeof d&&(t.newWindow=d);break;case"GoToE":const f=r.get("T");let g;if(a&&f instanceof Ps){const e=f.get("R"),t=f.get("N");Us(e,"C")&&"string"==typeof t&&(g=a[ws(t,!0)])}if(g){t.attachment=g;const e=sd(r);e&&(t.attachmentDest=e)}else Zt('parseDestDictionary - unimplemented "GoToE" action.');break;case"Named":const p=r.get("N");p instanceof Ns&&(t.action=p.name);break;case"SetOCGState":const m=r.get("State"),b=r.get("PreserveRB");if(!Array.isArray(m)||0===m.length)break;const w=[];for(const t of m)if(t instanceof Ns)switch(t.name){case"ON":case"OFF":case"Toggle":w.push(t.name)}else t instanceof Es&&w.push(t.toString());if(w.length!==m.length)break;t.setOCGState={state:w,preserveRB:"boolean"!=typeof b||b};break;case"JavaScript":const y=r.get("JS");let x;y instanceof $s?x=y.getString():"string"==typeof y&&(x=y);const k=x&&Sa(ws(x,!0));if(k){i=k.url,t.newWindow=k.newWindow;break}default:if("JavaScript"===s||"SubmitForm"===s)break;Zt(`parseDestDictionary - unsupported action: "${s}".`)}}else e.has("Dest")&&(n=e.get("Dest"));if("string"==typeof i){const e=ts(i,s,{addDefaultProtocol:!0,tryConvertEncoding:!0});e&&(t.url=e.href),t.unsafeUrl=i}n&&(n instanceof Ns&&(n=n.name),"string"==typeof n?t.dest=ws(n,!0):ed(n)&&(t.dest=n))}}function id(e){return e instanceof Es||e instanceof Ps||e instanceof $s||Array.isArray(e)}function nd(e,t){if(e instanceof Ps)e=e.getRawValues();else if(e instanceof $s)e=e.dict.getRawValues();else if(!Array.isArray(e))return;for(const s of e)id(s)&&t.push(s)}class rd{refSet=new Ls;constructor(e,t,s){this.dict=e,this.keys=t,this.xref=s}async load(){const{keys:e,dict:t}=this,s=[];for(const a of e){const e=t.getRaw(a);void 0!==e&&s.push(e)}await this.#Ne(s),this.refSet=null}async#Ne(e){const t=[],s=[];for(;e.length;){let a=e.pop();if(a instanceof Es){if(this.refSet.has(a))continue;try{this.refSet.put(a),a=this.xref.fetch(a)}catch(e){if(!(e instanceof Ys))return Zt(`ObjectLoader.#walk - requesting all data: "${e}".`),void await this.xref.stream.manager.requestAllChunks();t.push(a),s.push({begin:e.begin,end:e.end})}}if(a instanceof $s){const e=a.getBaseStreams();if(e){let i=!1;for(const t of e)t.isDataLoaded||(i=!0,s.push({begin:t.start,end:t.end}));i&&t.push(a)}}nd(a,e)}if(s.length){await this.xref.stream.manager.requestRanges(s);for(const e of t)e instanceof Es&&this.refSet.remove(e);await this.#Ne(t)}}static async load(e,t,s){if(s.stream.isDataLoaded)return;const a=new rd(e,t,s);await a.load()}}const od=Symbol(),cd=Symbol(),ld=Symbol(),hd=Symbol(),ud=Symbol(),dd=Symbol(),fd=Symbol(),gd=Symbol(),pd=Symbol(),md=Symbol("content"),bd=Symbol("data"),wd=Symbol(),yd=Symbol("extra"),xd=Symbol(),kd=Symbol(),vd=Symbol(),Ad=Symbol(),Cd=Symbol(),Sd=Symbol(),Id=Symbol(),Bd=Symbol(),Fd=Symbol(),Md=Symbol(),Td=Symbol(),Rd=Symbol(),Nd=Symbol(),Dd=Symbol(),Od=Symbol(),Pd=Symbol(),Ed=Symbol(),Ld=Symbol(),_d=Symbol(),Ud=Symbol(),qd=Symbol(),jd=Symbol(),Hd=Symbol(),$d=Symbol(),zd=Symbol(),Gd=Symbol(),Wd=Symbol(),Vd=Symbol(),Xd=Symbol(),Kd=Symbol(),Yd=Symbol(),Jd=Symbol(),Zd=Symbol("namespaceId"),Qd=Symbol("nodeName"),ef=Symbol(),tf=Symbol(),sf=Symbol(),af=Symbol(),nf=Symbol(),rf=Symbol(),of=Symbol(),cf=Symbol(),lf=Symbol("root"),hf=Symbol(),uf=Symbol(),df=Symbol(),ff=Symbol(),gf=Symbol(),pf=Symbol(),mf=Symbol(),bf=Symbol(),wf=Symbol(),yf=Symbol(),xf=Symbol(),kf=Symbol("uid"),vf=Symbol(),Af={config:{id:0,check:e=>e.startsWith("http://www.xfa.org/schema/xci/")},connectionSet:{id:1,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-connection-set/")},datasets:{id:2,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-data/")},form:{id:3,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-form/")},localeSet:{id:4,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-locale-set/")},pdf:{id:5,check:e=>"http://ns.adobe.com/xdp/pdf/"===e},signature:{id:6,check:e=>"http://www.w3.org/2000/09/xmldsig#"===e},sourceSet:{id:7,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-source-set/")},stylesheet:{id:8,check:e=>"http://www.w3.org/1999/XSL/Transform"===e},template:{id:9,check:e=>e.startsWith("http://www.xfa.org/schema/xfa-template/")},xdc:{id:10,check:e=>e.startsWith("http://www.xfa.org/schema/xdc/")},xdp:{id:11,check:e=>"http://ns.adobe.com/xdp/"===e},xfdf:{id:12,check:e=>"http://ns.adobe.com/xfdf/"===e},xhtml:{id:13,check:e=>"http://www.w3.org/1999/xhtml"===e},xmpmeta:{id:14,check:e=>"http://ns.adobe.com/xmpmeta/"===e}},Cf={pt:e=>e,cm:e=>e/2.54*72,mm:e=>e/25.4*72,in:e=>72*e,px:e=>e},Sf=/([+-]?\d+\.?\d*)(.*)/;function If(e){return e.startsWith("'")||e.startsWith('"')?e.slice(1,-1):e}function Bf({data:e,defaultValue:t,validate:s}){if(!e)return t;e=e.trim();const a=parseInt(e,10);return!isNaN(a)&&s(a)?a:t}function Ff({data:e,defaultValue:t,validate:s}){if(!e)return t;e=e.trim();const a=parseFloat(e);return!isNaN(a)&&s(a)?a:t}function Mf({data:e,defaultValue:t,validate:s}){return e&&s(e=e.trim())?e:t}function Tf(e,t){return Mf({data:e,defaultValue:t[0],validate:e=>t.includes(e)})}function Rf(e,t="0"){if(t||="0",!e)return Rf(t);const s=e.trim().match(Sf);if(!s)return Rf(t);const[,a,i]=s,n=parseFloat(a);if(isNaN(n))return Rf(t);if(0===n)return 0;const r=Cf[i];return r?r(n):n}function Nf(e){if(!e)return{num:1,den:1};const t=e.split(":",2).map(e=>parseFloat(e.trim())).filter(e=>!isNaN(e));if(1===t.length&&t.push(1),0===t.length)return{num:1,den:1};const[s,a]=t;return{num:s,den:a}}function Df(e){return e?e.trim().split(/\s+/).map(e=>({excluded:"-"===e[0],viewname:e.substring(1)})):[]}class Of{static get FAILURE(){return ss(this,"FAILURE",new Of(!1,null,null,null))}static get EMPTY(){return ss(this,"EMPTY",new Of(!0,null,null,null))}constructor(e,t,s,a){this.success=e,this.html=t,this.bbox=s,this.breakNode=a}isBreak(){return!!this.breakNode}static breakNode(e){return new Of(!1,null,null,e)}static success(e,t=null){return new Of(!0,e,t,null)}}class Pf{constructor(e){this.fonts=new Map,this.cache=new Map,this.warned=new Set,this.defaultFont=null,this.add(e)}add(e,t=null){for(const a of e)this.addPdfFont(a);for(const a of this.fonts.values())a.regular||(a.regular=a.italic||a.bold||a.bolditalic);if(!t||0===t.size)return;const s=this.fonts.get("PdfJS-Fallback-PdfJS-XFA");for(const a of t)this.fonts.set(a,s)}addPdfFont(e){const t=e.cssFontInfo,s=t.fontFamily;let a=this.fonts.get(s);a||(a=Object.create(null),this.fonts.set(s,a),this.defaultFont||(this.defaultFont=a));let i="";const n=parseFloat(t.fontWeight);0!==parseFloat(t.italicAngle)?i=n>=700?"bolditalic":"italic":n>=700&&(i="bold"),i||((e.name.includes("Bold")||e.psName?.includes("Bold"))&&(i="bold"),(e.name.includes("Italic")||e.name.endsWith("It")||e.psName?.includes("Italic")||e.psName?.endsWith("It"))&&(i+="italic")),i||(i="regular"),a[i]=e}getDefault(){return this.defaultFont}find(e,t=!0){let s=this.fonts.get(e)||this.cache.get(e);if(s)return s;const a=/,|-|_| |bolditalic|bold|italic|regular|it/gi;let i=e.replaceAll(a,"");if(s=this.fonts.get(i),s)return this.cache.set(e,s),s;i=i.toLowerCase();const n=[];for(const[r,o]of this.fonts.entries())r.replaceAll(a,"").toLowerCase().startsWith(i)&&n.push(o);if(0===n.length)for(const[,r]of this.fonts.entries())r.regular.name?.replaceAll(a,"").toLowerCase().startsWith(i)&&n.push(r);if(0===n.length){i=i.replaceAll(/psmt|mt/gi,"");for(const[e,t]of this.fonts.entries())e.replaceAll(a,"").toLowerCase().startsWith(i)&&n.push(t)}if(0===n.length)for(const r of this.fonts.values())r.regular.name?.replaceAll(a,"").toLowerCase().startsWith(i)&&n.push(r);return n.length>=1?(1!==n.length&&t&&Zt(`XFA - Too many choices to guess the correct font: ${e}`),this.cache.set(e,n[0]),n[0]):(t&&!this.warned.has(e)&&(this.warned.add(e),Zt(`XFA - Cannot find the font: ${e}`)),null)}}function Ef(e,t){return"italic"===e.posture?"bold"===e.weight?t.bolditalic:t.italic:"bold"===e.weight?t.bold:t.regular}class Lf{constructor(e,t,s,a){if(this.lineHeight=s,this.paraMargin=t||{top:0,bottom:0,left:0,right:0},!e)return void([this.pdfFont,this.xfaFont]=this.defaultFont(a));this.xfaFont={typeface:e.typeface,posture:e.posture,weight:e.weight,size:e.size,letterSpacing:e.letterSpacing};const i=a.find(e.typeface);i?(this.pdfFont=Ef(e,i),this.pdfFont||([this.pdfFont,this.xfaFont]=this.defaultFont(a))):[this.pdfFont,this.xfaFont]=this.defaultFont(a)}defaultFont(e){const t=e.find("Helvetica",!1)||e.find("Myriad Pro",!1)||e.find("Arial",!1)||e.getDefault();if(t?.regular){const e=t.regular;return[e,{typeface:e.cssFontInfo.fontFamily,posture:"normal",weight:"normal",size:10,letterSpacing:0}]}return[null,{typeface:"Courier",posture:"normal",weight:"normal",size:10,letterSpacing:0}]}}class _f{constructor(e,t,s,a){this.fontFinder=a,this.stack=[new Lf(e,t,s,a)]}pushData(e,t,s){const a=this.stack.at(-1);for(const n of["typeface","posture","weight","size","letterSpacing"])e[n]||(e[n]=a.xfaFont[n]);for(const n of["top","bottom","left","right"])isNaN(t[n])&&(t[n]=a.paraMargin[n]);const i=new Lf(e,t,s||a.lineHeight,this.fontFinder);i.pdfFont||(i.pdfFont=a.pdfFont),this.stack.push(i)}popFont(){this.stack.pop()}topFont(){return this.stack.at(-1)}}class Uf{constructor(e,t,s,a){this.glyphs=[],this.fontSelector=new _f(e,t,s,a),this.extraHeight=0}pushData(e,t,s){this.fontSelector.pushData(e,t,s)}popFont(e){return this.fontSelector.popFont()}addPara(){const e=this.fontSelector.topFont();this.extraHeight+=e.paraMargin.top+e.paraMargin.bottom}addString(e){if(!e)return;const t=this.fontSelector.topFont(),s=t.xfaFont.size;if(t.pdfFont){const a=t.xfaFont.letterSpacing,i=t.pdfFont,n=i.lineHeight||1.2,r=t.lineHeight||Math.max(1.2,n)*s,o=n-(void 0===i.lineGap?.2:i.lineGap),c=Math.max(1,o)*s,l=s/1e3,h=i.defaultWidth||i.charsToGlyphs(" ")[0].width;for(const t of e.split(/[\u2029\n]/)){const e=i.encodeString(t).join(""),s=i.charsToGlyphs(e);for(const t of s){const e=t.width||h;this.glyphs.push([e*l+a,r,c,t.unicode,!1])}this.glyphs.push([0,0,0,"\n",!0])}return void this.glyphs.pop()}for(const a of e.split(/[\u2029\n]/)){for(const e of a.split(""))this.glyphs.push([s,1.2*s,s,e,!1]);this.glyphs.push([0,0,0,"\n",!0])}this.glyphs.pop()}compute(e){let t=-1,s=0,a=0,i=0,n=0,r=0,o=!1,c=!0;for(let l=0,h=this.glyphs.length;l<h;l++){const[h,u,d,f,g]=this.glyphs[l],p=" "===f,m=c?d:u;g?(a=Math.max(a,n),n=0,i+=r,r=m,t=-1,s=0,c=!1):p?n+h>e?(a=Math.max(a,n),n=0,i+=r,r=m,t=-1,s=0,o=!0,c=!1):(r=Math.max(m,r),s=n,n+=h,t=l):n+h>e?(i+=r,r=m,-1!==t?(l=t,a=Math.max(a,s),n=0,t=-1,s=0):(a=Math.max(a,n),n=h),o=!0,c=!1):(n+=h,r=Math.max(m,r))}return a=Math.max(a,n),i+=r+this.extraHeight,{width:1.02*a,height:i,isBroken:o}}}const qf=/^[^.[]+/,jf=/^[^\]]+/,Hf=0,$f=1,zf=2,Gf=3,Wf=4,Vf=new Map([["$data",(e,t)=>e.datasets?e.datasets.data:e],["$record",(e,t)=>(e.datasets?e.datasets.data:e)[Rd]()[0]],["$template",(e,t)=>e.template],["$connectionSet",(e,t)=>e.connectionSet],["$form",(e,t)=>e.form],["$layout",(e,t)=>e.layout],["$host",(e,t)=>e.host],["$dataWindow",(e,t)=>e.dataWindow],["$event",(e,t)=>e.event],["!",(e,t)=>e.datasets],["$xfa",(e,t)=>e],["xfa",(e,t)=>e],["$",(e,t)=>t]]),Xf=new WeakMap;function Kf(e){return"*"===(e=e.trim())?1/0:parseInt(e,10)||0}function Yf(e,t,s=!0){let a=e.match(qf);if(!a)return null;let[i]=a;const n=[{name:i,cacheName:"."+i,index:0,js:null,formCalc:null,operator:Hf}];let r=i.length;for(;r<e.length;){const o=r;if("["===e.charAt(r++)){if(a=e.slice(r).match(jf),!a)return Zt("XFA - Invalid index in SOM expression"),null;n.at(-1).index=Kf(a[0]),r+=a[0].length+1;continue}let c;switch(e.charAt(r)){case".":if(!t)return null;r++,c=$f;break;case"#":r++,c=zf;break;case"[":if(s)return Zt("XFA - SOM expression contains a FormCalc subexpression which is not supported for now."),null;c=Gf;break;case"(":if(s)return Zt("XFA - SOM expression contains a JavaScript subexpression which is not supported for now."),null;c=Wf;break;default:c=Hf}if(a=e.slice(r).match(qf),!a)break;[i]=a,r+=i.length,n.push({name:i,cacheName:e.slice(o,r),operator:c,index:0,js:null,formCalc:null})}return n}function Jf(e,t,s,a=!0,i=!0){const n=Yf(s,a);if(!n)return null;const r=Vf.get(n[0].name);let o,c=0;r?(o=!0,e=[r(e,t)],c=1):(o=null===t,e=[t||e]);for(let l=n.length;c<l;c++){const{name:s,cacheName:a,operator:r,index:l}=n[c],h=[];for(const t of e){if(!t.isXFAObject)continue;let e,n;if(i&&(n=Xf.get(t),n||(n=new Map,Xf.set(t,n)),e=n.get(a)),!e){switch(r){case Hf:e=t[Id](s,!1);break;case $f:e=t[Id](s,!0);break;case zf:e=t[Sd](s),e=e.isXFAObjectArray?e.children:[e]}i&&n.set(a,e)}e.length>0&&h.push(e)}if(0===h.length&&!o&&0===c){const s=t[Pd]();if(!(t=s))return null;c=-1,e=[t];continue}e=isFinite(l)?h.filter(e=>l<e.length).map(e=>e[l]):h.flat()}return 0===e.length?null:e}function Zf(e,t,s){const a=Yf(s);if(!a)return null;if(a.some(e=>e.operator===$f))return null;const i=Vf.get(a[0].name);let n=0;i?(e=i(e,t),n=1):e=t||e;for(let r=a.length;n<r;n++){const{name:t,operator:s,index:i}=a[n];if(!isFinite(i))return a[n].index=0,e.createNodes(a.slice(n));let r;switch(s){case Hf:r=e[Id](t,!1);break;case $f:r=e[Id](t,!0);break;case zf:r=e[Sd](t),r=r.isXFAObjectArray?r.children:[r]}if(0===r.length)return e.createNodes(a.slice(n));if(!(i<r.length))return a[n].index=i-r.length,e.createNodes(a.slice(n));{const t=r[i];if(!t.isXFAObject)return Zt("XFA - Cannot create a node."),null;e=t}}return null}const Qf=Symbol(),eg=Symbol(),tg=Symbol(),sg=Symbol("_children"),ag=Symbol(),ig=Symbol(),ng=Symbol(),rg=Symbol(),og=Symbol(),cg=Symbol(),lg=Symbol(),hg=Symbol(),ug=Symbol(),dg=Symbol("parent"),fg=Symbol(),gg=Symbol(),pg=Symbol();let mg=0;const bg=Af.datasets.id;class wg{constructor(e,t,s=!1){this[Zd]=e,this[Qd]=t,this[lg]=s,this[dg]=null,this[sg]=[],this[kf]=`${t}${mg++}`,this[Ld]=null}get isXFAObject(){return!0}get isXFAObjectArray(){return!1}createNodes(e){let t=this,s=null;for(const{name:a,index:i}of e){for(let e=0,n=isFinite(i)?i:0;e<=n;e++){const e=t[Zd]===bg?-1:t[Zd];s=new kg(e,a),t[ld](s)}t=s}return s}[tf](e){if(!this[lg]||!this[sf](e))return!1;const t=e[Qd],s=this[t];if(!(s instanceof yg))return null!==s&&this[cf](s),this[t]=e,this[ld](e),!0;if(s.push(e))return this[ld](e),!0;let a="";return this.id?a=` (id: ${this.id})`:this.name&&(a=` (name: ${this.name} ${this.h.value})`),Zt(`XFA - node "${this[Qd]}"${a} has already enough "${t}"!`),!1}[sf](e){return this.hasOwnProperty(e[Qd])&&e[Zd]===this[Zd]}[Wd](){return!1}[od](){return!1}[Hd](){return!1}[$d](){return!1}[rf](){this.para&&this[Ed]()[yd].paraStack.pop()}[of](){this[Ed]()[yd].paraStack.push(this.para)}[df](e){this.id&&this[Zd]===Af.template.id&&e.set(this.id,this)}[Ed](){return this[Ld].template}[Vd](){return!1}[Xd](){return!1}[ld](e){e[dg]=this,this[sg].push(e),!e[Ld]&&this[Ld]&&(e[Ld]=this[Ld])}[cf](e){const t=this[sg].indexOf(e);this[sg].splice(t,1)}[_d](){return this.hasOwnProperty("value")}[gf](e){}[af](e){}[xd](){}[ud](e){delete this[lg],this[fd]&&(e.clean(this[fd]),delete this[fd])}[qd](e){return this[sg].indexOf(e)}[jd](e,t){t[dg]=this,this[sg].splice(e,0,t),!t[Ld]&&this[Ld]&&(t[Ld]=this[Ld])}[Kd](){return!this.name}[Jd](){return""}[mf](){return 0===this[sg].length?this[md]:this[sg].map(e=>e[mf]()).join("")}get[tg](){const e=Object.getPrototypeOf(this);if(!e._attributes){const t=e._attributes=new Set;for(const e of Object.getOwnPropertyNames(this)){if(null===this[e]||this[e]instanceof wg||this[e]instanceof yg)break;t.add(e)}}return ss(this,tg,e._attributes)}[Gd](e){let t=this;for(;t;){if(t===e)return!0;t=t[Pd]()}return!1}[Pd](){return this[dg]}[Od](){return this[Pd]()}[Rd](e=null){return e?this[e]:this[sg]}[wd](){const e=Object.create(null);this[md]&&(e.$content=this[md]);for(const t of Object.getOwnPropertyNames(this)){const s=this[t];null!==s&&(s instanceof wg?e[t]=s[wd]():s instanceof yg?s.isEmpty()||(e[t]=s.dump()):e[t]=s)}return e}[xf](){return null}[wf](){return Of.EMPTY}*[Nd](){for(const e of this[Rd]())yield e}*[rg](e,t){for(const s of this[Nd]())if(!e||t===e.has(s[Qd])){const e=this[Cd](),t=s[wf](e);t.success||(this[yd].failingNode=s),yield t}}[kd](){return null}[cd](e,t){this[yd].children.push(e)}[Cd](){}[hd]({filter:e=null,include:t=!0}){if(this[yd].generator){const e=this[Cd](),t=this[yd].failingNode[wf](e);if(!t.success)return t;t.html&&this[cd](t.html,t.bbox),delete this[yd].failingNode}else this[yd].generator=this[rg](e,t);for(;;){const e=this[yd].generator.next();if(e.done)break;const t=e.value;if(!t.success)return t;t.html&&this[cd](t.html,t.bbox)}return this[yd].generator=null,Of.EMPTY}[ff](e){this[gg]=new Set(Object.keys(e))}[cg](e){const t=this[tg],s=this[gg];return[...e].filter(e=>t.has(e)&&!s.has(e))}[hf](e,t=new Set){for(const s of this[sg])s[fg](e,t)}[fg](e,t){const s=this[og](e,t);s?this[Qf](s,e,t):this[hf](e,t)}[og](e,t){const{use:s,usehref:a}=this;if(!s&&!a)return null;let i=null,n=null,r=null,o=s;if(a?(o=a,a.startsWith("#som(")&&a.endsWith(")")?n=a.slice(5,-1):a.startsWith(".#som(")&&a.endsWith(")")?n=a.slice(6,-1):a.startsWith("#")?r=a.slice(1):a.startsWith(".#")&&(r=a.slice(2))):s.startsWith("#")?r=s.slice(1):n=s,this.use=this.usehref="",r?i=e.get(r):(i=Jf(e.get(lf),this,n,!0,!1),i&&(i=i[0])),!i)return Zt(`XFA - Invalid prototype reference: ${o}.`),null;if(i[Qd]!==this[Qd])return Zt(`XFA - Incompatible prototype: ${i[Qd]} !== ${this[Qd]}.`),null;if(t.has(i))return Zt("XFA - Cycle detected in prototypes use."),null;t.add(i);const c=i[og](e,t);return c&&i[Qf](c,e,t),i[hf](e,t),t.delete(i),i}[Qf](e,t,s){if(s.has(e))Zt("XFA - Cycle detected in prototypes use.");else{!this[md]&&e[md]&&(this[md]=e[md]),new Set(s).add(e);for(const t of this[cg](e[gg]))this[t]=e[t],this[gg]&&this[gg].add(t);for(const a of Object.getOwnPropertyNames(this)){if(this[tg].has(a))continue;const i=this[a],n=e[a];if(i instanceof yg){for(const e of i[sg])e[fg](t,s);for(let a=i[sg].length,r=n[sg].length;a<r;a++){const n=e[sg][a][gd]();if(!i.push(n))break;n[dg]=this,this[sg].push(n),n[fg](t,s)}}else if(null===i){if(null!==n){const e=n[gd]();e[dg]=this,this[a]=e,this[sg].push(e),e[fg](t,s)}}else i[hf](t,s),n&&i[Qf](n,t,s)}}}static[ag](e){return Array.isArray(e)?e.map(e=>wg[ag](e)):"object"==typeof e&&null!==e?Object.assign({},e):e}[gd](){const e=Object.create(Object.getPrototypeOf(this));for(const t of Object.getOwnPropertySymbols(this))try{e[t]=this[t]}catch{ss(e,t,this[t])}e[kf]=`${e[Qd]}${mg++}`,e[sg]=[];for(const t of Object.getOwnPropertyNames(this)){if(this[tg].has(t)){e[t]=wg[ag](this[t]);continue}const s=this[t];e[t]=s instanceof yg?new yg(s[hg]):null}for(const t of this[sg]){const s=t[Qd],a=t[gd]();e[sg].push(a),a[dg]=e,null===e[s]?e[s]=a:e[s][sg].push(a)}return e}[Rd](e=null){return e?this[sg].filter(t=>t[Qd]===e):this[sg]}[Sd](e){return this[e]}[Id](e,t,s=!0){return Array.from(this[Bd](e,t,s))}*[Bd](e,t,s=!0){if("parent"!==e){for(const s of this[sg])s[Qd]===e&&(yield s),s.name===e&&(yield s),(t||s[Kd]())&&(yield*s[Bd](e,t,!1));s&&this[tg].has(e)&&(yield new xg(this,e,this[e]))}else yield this[dg]}}class yg{constructor(e=1/0){this[hg]=e,this[sg]=[]}get isXFAObject(){return!1}get isXFAObjectArray(){return!0}push(e){return this[sg].length<=this[hg]?(this[sg].push(e),!0):(Zt(`XFA - node "${e[Qd]}" accepts no more than ${this[hg]} children`),!1)}isEmpty(){return 0===this[sg].length}dump(){return 1===this[sg].length?this[sg][0][wd]():this[sg].map(e=>e[wd]())}[gd](){const e=new yg(this[hg]);return e[sg]=this[sg].map(e=>e[gd]()),e}get children(){return this[sg]}clear(){this[sg].length=0}}class xg{constructor(e,t,s){this[dg]=e,this[Qd]=t,this[md]=s,this[pd]=!1,this[kf]="attribute"+mg++}[Pd](){return this[dg]}[zd](){return!0}[Fd](){return this[md].trim()}[gf](e){e=e.value||"",this[md]=e.toString()}[mf](){return this[md]}[Gd](e){return this[dg]===e||this[dg][Gd](e)}}class kg extends wg{constructor(e,t,s={}){if(super(e,t),this[md]="",this[ig]=null,"#text"!==t){const e=new Map;this[eg]=e;for(const[t,a]of Object.entries(s))e.set(t,new xg(this,t,a));if(s.hasOwnProperty(ef)){const e=s[ef].xfa.dataNode;void 0!==e&&("dataGroup"===e?this[ig]=!1:"dataValue"===e&&(this[ig]=!0))}}this[pd]=!1}[yf](e){const t=this[Qd];if("#text"===t)return void e.push(va(this[md]));const s=xs(t),a=this[Zd]===bg?"xfa:":"";e.push(`<${a}${s}`);for(const[i,n]of this[eg].entries()){const t=xs(i);e.push(` ${t}="${va(n[md])}"`)}if(null!==this[ig]&&(this[ig]?e.push(' xfa:dataNode="dataValue"'):e.push(' xfa:dataNode="dataGroup"')),this[md]||0!==this[sg].length){if(e.push(">"),this[md])"string"==typeof this[md]?e.push(va(this[md])):this[md][yf](e);else for(const t of this[sg])t[yf](e);e.push(`</${a}${s}>`)}else e.push("/>")}[tf](e){if(this[md]){const e=new kg(this[Zd],"#text");this[ld](e),e[md]=this[md],this[md]=""}return this[ld](e),!0}[af](e){this[md]+=e}[xd](){if(this[md]&&this[sg].length>0){const e=new kg(this[Zd],"#text");this[ld](e),e[md]=this[md],delete this[md]}}[wf](){return"#text"===this[Qd]?Of.success({name:"#text",value:this[md]}):Of.EMPTY}[Rd](e=null){return e?this[sg].filter(t=>t[Qd]===e):this[sg]}[Ad](){return this[eg]}[Sd](e){const t=this[eg].get(e);return void 0!==t?t:this[Rd](e)}*[Bd](e,t){const s=this[eg].get(e);s&&(yield s);for(const a of this[sg])a[Qd]===e&&(yield a),t&&(yield*a[Bd](e,t))}*[vd](e,t){const s=this[eg].get(e);!s||t&&s[pd]||(yield s);for(const a of this[sg])yield*a[vd](e,t)}*[Td](e,t,s){for(const a of this[sg])a[Qd]!==e||s&&a[pd]||(yield a),t&&(yield*a[Td](e,t,s))}[zd](){return null===this[ig]?0===this[sg].length||this[sg][0][Zd]===Af.xhtml.id:this[ig]}[Fd](){return null===this[ig]?0===this[sg].length?this[md].trim():this[sg][0][Zd]===Af.xhtml.id?this[sg][0][mf]().trim():null:this[md].trim()}[gf](e){e=e.value||"",this[md]=e.toString()}[wd](e=!1){const t=Object.create(null);e&&(t.$ns=this[Zd]),this[md]&&(t.$content=this[md]),t.$name=this[Qd],t.children=[];for(const s of this[sg])t.children.push(s[wd](e));t.attributes=Object.create(null);for(const[s,a]of this[eg])t.attributes[s]=a[md];return t}}class vg extends wg{constructor(e,t){super(e,t),this[md]=""}[af](e){this[md]+=e}[xd](){}}class Ag extends vg{constructor(e,t,s){super(e,t),this[ug]=s}[xd](){this[md]=Mf({data:this[md],defaultValue:this[ug][0],validate:e=>this[ug].includes(e)})}[ud](e){super[ud](e),delete this[ug]}}class Cg extends vg{[xd](){this[md]=this[md].trim()}}class Sg extends vg{constructor(e,t,s,a){super(e,t),this[ng]=s,this[pg]=a}[xd](){this[md]=Bf({data:this[md],defaultValue:this[ng],validate:this[pg]})}[ud](e){super[ud](e),delete this[ng],delete this[pg]}}class Ig extends Sg{constructor(e,t){super(e,t,0,e=>1===e)}}class Bg extends Sg{constructor(e,t){super(e,t,1,e=>0===e)}}function Fg(e){return"string"==typeof e?"0px":Number.isInteger(e)?`${e}px`:`${e.toFixed(2)}px`}const Mg={anchorType(e,t){const s=e[Od]();if(s&&(!s.layout||"position"===s.layout))switch("transform"in t||(t.transform=""),e.anchorType){case"bottomCenter":t.transform+="translate(-50%, -100%)";break;case"bottomLeft":t.transform+="translate(0,-100%)";break;case"bottomRight":t.transform+="translate(-100%,-100%)";break;case"middleCenter":t.transform+="translate(-50%,-50%)";break;case"middleLeft":t.transform+="translate(0,-50%)";break;case"middleRight":t.transform+="translate(-100%,-50%)";break;case"topCenter":t.transform+="translate(-50%,0)";break;case"topRight":t.transform+="translate(-100%,0)"}},dimensions(e,t){const s=e[Od]();let a=e.w;const i=e.h;if(s.layout?.includes("row")){const t=s[yd],i=e.colSpan;let n;-1===i?(n=Math.sumPrecise(t.columnWidths.slice(t.currentColumn)),t.currentColumn=0):(n=Math.sumPrecise(t.columnWidths.slice(t.currentColumn,t.currentColumn+i)),t.currentColumn=(t.currentColumn+e.colSpan)%t.columnWidths.length),isNaN(n)||(a=e.w=n)}t.width=""!==a?Fg(a):"auto",t.height=""!==i?Fg(i):"auto"},position(e,t){const s=e[Od]();s?.layout&&"position"!==s.layout||(t.position="absolute",t.left=Fg(e.x),t.top=Fg(e.y))},rotate(e,t){e.rotate&&("transform"in t||(t.transform=""),t.transform+=`rotate(-${e.rotate}deg)`,t.transformOrigin="top left")},presence(e,t){switch(e.presence){case"invisible":t.visibility="hidden";break;case"hidden":case"inactive":t.display="none"}},hAlign(e,t){if("para"===e[Qd])switch(e.hAlign){case"justifyAll":t.textAlign="justify-all";break;case"radix":t.textAlign="left";break;default:t.textAlign=e.hAlign}else switch(e.hAlign){case"left":t.alignSelf="start";break;case"center":t.alignSelf="center";break;case"right":t.alignSelf="end"}},margin(e,t){e.margin&&(t.margin=e.margin[xf]().margin)}};function Tg(e,t){"position"===e[Od]().layout&&(e.minW>0&&(t.minWidth=Fg(e.minW)),e.maxW>0&&(t.maxWidth=Fg(e.maxW)),e.minH>0&&(t.minHeight=Fg(e.minH)),e.maxH>0&&(t.maxHeight=Fg(e.maxH)))}function Rg(e,t,s,a,i,n){const r=new Uf(t,s,a,i);return"string"==typeof e?r.addString(e):e[nf](r),r.compute(n)}function Ng(e,t){let s=null,a=null,i=!1;if((!e.w||!e.h)&&e.value){let n=0,r=0;e.margin&&(n=e.margin.leftInset+e.margin.rightInset,r=e.margin.topInset+e.margin.bottomInset);let o=null,c=null;e.para&&(c=Object.create(null),o=""===e.para.lineHeight?null:e.para.lineHeight,c.top=""===e.para.spaceAbove?0:e.para.spaceAbove,c.bottom=""===e.para.spaceBelow?0:e.para.spaceBelow,c.left=""===e.para.marginLeft?0:e.para.marginLeft,c.right=""===e.para.marginRight?0:e.para.marginRight);let l=e.font;if(!l){const t=e[Ed]();let s=e[Pd]();for(;s&&s!==t;){if(s.font){l=s.font;break}s=s[Pd]()}}const h=(e.w||t.width)-n,u=e[Ld].fontFinder;if(e.value.exData&&e.value.exData[md]&&"text/html"===e.value.exData.contentType){const t=Rg(e.value.exData[md],l,c,o,u,h);a=t.width,s=t.height,i=t.isBroken}else{const t=e.value[mf]();if(t){const e=Rg(t,l,c,o,u,h);a=e.width,s=e.height,i=e.isBroken}}null===a||e.w||(a+=n),null===s||e.h||(s+=r)}return{w:a,h:s,isBroken:i}}function Dg(e,t,s){let a;if(""!==e.w&&""!==e.h)a=[e.x,e.y,e.w,e.h];else{if(!s)return null;let i=e.w;if(""===i){if(0===e.maxW){const t=e[Od]();i="position"===t.layout&&""!==t.w?0:e.minW}else i=Math.min(e.maxW,s.width);t.attributes.style.width=Fg(i)}let n=e.h;if(""===n){if(0===e.maxH){const t=e[Od]();n="position"===t.layout&&""!==t.h?0:e.minH}else n=Math.min(e.maxH,s.height);t.attributes.style.height=Fg(n)}a=[e.x,e.y,i,n]}return a}function Og(e){const t=e[Od]();if(t.layout?.includes("row")){const s=t[yd],a=e.colSpan;let i;i=-1===a?Math.sumPrecise(s.columnWidths.slice(s.currentColumn)):Math.sumPrecise(s.columnWidths.slice(s.currentColumn,s.currentColumn+a)),isNaN(i)||(e.w=i)}t.layout&&"position"!==t.layout&&(e.x=e.y=0),"table"===e.layout&&""===e.w&&Array.isArray(e.columnWidths)&&(e.w=Math.sumPrecise(e.columnWidths))}function Pg(e){switch(e.layout){case"position":default:return"xfaPosition";case"lr-tb":return"xfaLrTb";case"rl-row":return"xfaRlRow";case"rl-tb":return"xfaRlTb";case"row":return"xfaRow";case"table":return"xfaTable";case"tb":return"xfaTb"}}function Eg(e,...t){const s=Object.create(null);for(const a of t){const t=e[a];if(null!==t)if(Mg.hasOwnProperty(a))Mg[a](e,s);else if(t instanceof wg){const e=t[xf]();e?Object.assign(s,e):Zt(`(DEBUG) - XFA - style for ${a} not implemented yet`)}}return s}function Lg(e,t){const{attributes:s}=t,{style:a}=s,i={name:"div",attributes:{class:["xfaWrapper"],style:Object.create(null)},children:[]};if(s.class.push("xfaWrapped"),e.border){const{widths:s,insets:n}=e.border[yd];let r,o,c=n[0],l=n[3];const h=n[0]+n[2],u=n[1]+n[3];switch(e.border.hand){case"even":c-=s[0]/2,l-=s[3]/2,r=`calc(100% + ${(s[1]+s[3])/2-u}px)`,o=`calc(100% + ${(s[0]+s[2])/2-h}px)`;break;case"left":c-=s[0],l-=s[3],r=`calc(100% + ${s[1]+s[3]-u}px)`,o=`calc(100% + ${s[0]+s[2]-h}px)`;break;case"right":r=u?`calc(100% - ${u}px)`:"100%",o=h?`calc(100% - ${h}px)`:"100%"}const d=["xfaBorder"];qg(e.border)&&d.push("xfaPrintOnly");const f={name:"div",attributes:{class:d,style:{top:`${c}px`,left:`${l}px`,width:r,height:o}},children:[]};for(const e of["border","borderWidth","borderColor","borderRadius","borderStyle"])void 0!==a[e]&&(f.attributes.style[e]=a[e],delete a[e]);i.children.push(f,t)}else i.children.push(t);for(const n of["background","backgroundClip","top","left","width","height","minWidth","minHeight","maxWidth","maxHeight","transform","transformOrigin","visibility"])void 0!==a[n]&&(i.attributes.style[n]=a[n],delete a[n]);return i.attributes.style.position="absolute"===a.position?"absolute":"relative",delete a.position,a.alignSelf&&(i.attributes.style.alignSelf=a.alignSelf,delete a.alignSelf),i}function _g(e){const t=Rf(e.textIndent,"0px");if(t>=0)return;const s="padding"+("left"===("right"===e.textAlign?"right":"left")?"Left":"Right"),a=Rf(e[s],"0px");e[s]=a-t+"px"}function Ug(e,t){switch(e.access){case"nonInteractive":t.push("xfaNonInteractive");break;case"readOnly":t.push("xfaReadOnly");break;case"protected":t.push("xfaDisabled")}}function qg(e){return e.relevant.length>0&&!e.relevant[0].excluded&&"print"===e.relevant[0].viewname}function jg(e){const t=e[Ed]()[yd].paraStack;return t.length?t.at(-1):null}function Hg(e,t,s){if(s.attributes.class?.includes("xfaRich")){t&&(""===e.h&&(t.height="auto"),""===e.w&&(t.width="auto"));const a=jg(e);if(a){const e=s.attributes.style;switch(e.display="flex",e.flexDirection="column",a.vAlign){case"top":e.justifyContent="start";break;case"bottom":e.justifyContent="end";break;case"middle":e.justifyContent="center"}const t=a[xf]();for(const[s,a]of Object.entries(t))s in e||(e[s]=a)}}}function $g(e,t,s,a){if(!s)return void delete a.fontFamily;const i=If(e.typeface);a.fontFamily=`"${i}"`;const n=s.find(i);if(n){const{fontFamily:s}=n.regular.cssFontInfo;s!==i&&(a.fontFamily=`"${s}"`);const r=jg(t);if(r&&""!==r.lineHeight)return;if(a.lineHeight)return;const o=Ef(e,n);o&&(a.lineHeight=Math.max(1.2,o.lineHeight))}}function zg(e){const t=ts(e,null,{addDefaultProtocol:!0,tryConvertEncoding:!0});return t?t.href:null}function Gg(e,t){return{name:"div",attributes:{class:["lr-tb"===e.layout?"xfaLr":"xfaRl"]},children:t}}function Wg(e){if(!e[yd])return null;const t={name:"div",attributes:e[yd].attributes,children:e[yd].children};if(e[yd].failingNode){const s=e[yd].failingNode[kd]();s&&(e.layout.endsWith("-tb")?t.children.push(Gg(e,[s])):t.children.push(s))}return 0===t.children.length?null:t}function Vg(e,t,s){const a=e[yd],i=a.availableSpace,[n,r,o,c]=s;switch(e.layout){case"position":a.width=Math.max(a.width,n+o),a.height=Math.max(a.height,r+c),a.children.push(t);break;case"lr-tb":case"rl-tb":a.line&&1!==a.attempt||(a.line=Gg(e,[]),a.children.push(a.line),a.numberInLine=0),a.numberInLine+=1,a.line.children.push(t),0===a.attempt?(a.currentWidth+=o,a.height=Math.max(a.height,a.prevHeight+c)):(a.currentWidth=o,a.prevHeight=a.height,a.height+=c,a.attempt=0),a.width=Math.max(a.width,a.currentWidth);break;case"rl-row":case"row":{a.children.push(t),a.width+=o,a.height=Math.max(a.height,c);const e=Fg(a.height);for(const t of a.children)t.attributes.style.height=e;break}case"table":case"tb":a.width=Ss(o,a.width,i.width),a.height+=c,a.children.push(t)}}function Xg(e){const t=e[yd].availableSpace,s=e.margin?e.margin.topInset+e.margin.bottomInset:0,a=e.margin?e.margin.leftInset+e.margin.rightInset:0;switch(e.layout){case"lr-tb":case"rl-tb":return 0===e[yd].attempt?{width:t.width-a-e[yd].currentWidth,height:t.height-s-e[yd].prevHeight}:{width:t.width-a,height:t.height-s-e[yd].height};case"rl-row":case"row":return{width:Math.sumPrecise(e[yd].columnWidths.slice(e[yd].currentColumn)),height:t.height-a};case"table":case"tb":return{width:t.width-a,height:t.height-s-e[yd].height};default:return t}}function Kg(e,t){if(null===e[Ed]()[yd].firstUnsplittable)return!0;if(0===e.w||0===e.h)return!0;const s=e[Od](),a=s[yd]?.attempt||0,[,i,n,r]=function(e){let t,s,a=""===e.w?NaN:e.w,i=""===e.h?NaN:e.h,[n,r]=[0,0];switch(e.anchorType||""){case"bottomCenter":[n,r]=[a/2,i];break;case"bottomLeft":[n,r]=[0,i];break;case"bottomRight":[n,r]=[a,i];break;case"middleCenter":[n,r]=[a/2,i/2];break;case"middleLeft":[n,r]=[0,i/2];break;case"middleRight":[n,r]=[a,i/2];break;case"topCenter":[n,r]=[a/2,0];break;case"topRight":[n,r]=[a,0]}switch(e.rotate||0){case 0:[t,s]=[-n,-r];break;case 90:[t,s]=[-r,n],[a,i]=[i,-a];break;case 180:[t,s]=[n,r],[a,i]=[-a,-i];break;case 270:[t,s]=[r,-n],[a,i]=[-i,a]}return[e.x+t+Math.min(0,a),e.y+s+Math.min(0,i),Math.abs(a),Math.abs(i)]}(e);switch(s.layout){case"lr-tb":case"rl-tb":return 0===a?e[Ed]()[yd].noLayoutFailure?""!==e.w?Math.round(n-t.width)<=2:t.width>2:!(""!==e.h&&Math.round(r-t.height)>2)&&(""!==e.w?Math.round(n-t.width)<=2||0===s[yd].numberInLine&&t.height>2:t.width>2):!!e[Ed]()[yd].noLayoutFailure||!(""!==e.h&&Math.round(r-t.height)>2)&&(""===e.w||Math.round(n-t.width)<=2||!s[Xd]())&&t.height>2;case"table":case"tb":return!!e[Ed]()[yd].noLayoutFailure||(""===e.h||e[Vd]()?(""===e.w||Math.round(n-t.width)<=2||!s[Xd]())&&t.height>2:Math.round(r-t.height)<=2);case"position":return!!e[Ed]()[yd].noLayoutFailure||(""===e.h||Math.round(r+i-t.height)<=2||r+i>e[Ed]()[yd].currentContentArea.h);case"rl-row":case"row":return!!e[Ed]()[yd].noLayoutFailure||""===e.h||Math.round(r-t.height)<=2;default:return!0}}const Yg=Af.template.id,Jg="http://www.w3.org/2000/svg",Zg=/^H(\d+)$/,Qg=new Set(["image/gif","image/jpeg","image/jpg","image/pjpeg","image/png","image/apng","image/x-png","image/bmp","image/x-ms-bmp","image/tiff","image/tif","application/octet-stream"]),ep=[[[66,77],"image/bmp"],[[255,216,255],"image/jpeg"],[[73,73,42,0],"image/tiff"],[[77,77,0,42],"image/tiff"],[[71,73,70,56,57,97],"image/gif"],[[137,80,78,71,13,10,26,10],"image/png"]];function tp(e){if(!e||!e.border)return{w:0,h:0};const t=e.border[Md]();return t?{w:t.widths[0]+t.widths[2]+t.insets[0]+t.insets[2],h:t.widths[1]+t.widths[3]+t.insets[1]+t.insets[3]}:{w:0,h:0}}function sp(e){return e.margin&&(e.margin.topInset||e.margin.rightInset||e.margin.bottomInset||e.margin.leftInset)}function ap(e,t){if(!e.value){const t=new bb({});e[ld](t),e.value=t}e.value[gf](t)}function*ip(e){for(const t of e[Rd]())t instanceof ab?yield*t[Nd]():yield t}function np(e){return"error"===e.validate?.nullTest}function rp(e){for(;e;){if(!e.traversal)return void(e[pf]=e[Pd]()[pf]);if(e[pf])return;let t=null;for(const i of e.traversal[Rd]())if("next"===i.operation){t=i;break}if(!t||!t.ref)return void(e[pf]=e[Pd]()[pf]);const s=e[Ed]();e[pf]=++s[pf];const a=s[uf](t.ref,e);if(!a)return;e=a[0]}}function op(e,t){const s=e.assist;if(s){const e=s[wf]();e&&(t.title=e);const a=s.role.match(Zg);if(a){const e="heading",s=a[1];t.role=e,t["aria-level"]=s}}if("table"===e.layout)t.role="table";else if("row"===e.layout)t.role="row";else{const s=e[Pd]();"row"===s.layout&&(t.role="TH"===s.assist?.role?"columnheader":"cell")}}function cp(e){if(!e.assist)return null;const t=e.assist;return t.speak&&""!==t.speak[md]?t.speak[md]:t.toolTip?t.toolTip[md]:null}function lp(e){return Of.success({name:"div",attributes:{class:["xfaRich"],style:Object.create(null)},children:[{name:"span",attributes:{style:Object.create(null)},value:e}]})}function hp(e){const t=e[Ed]();null===t[yd].firstUnsplittable&&(t[yd].firstUnsplittable=e,t[yd].noLayoutFailure=!0)}function up(e){const t=e[Ed]();t[yd].firstUnsplittable===e&&(t[yd].noLayoutFailure=!1)}function dp(e){if(e[yd])return!1;if(e[yd]=Object.create(null),"auto"===e.targetType)return!1;const t=e[Ed]();let s=null;if(e.target){if(s=t[uf](e.target,e[Pd]()),!s)return!1;s=s[0]}const{currentPageArea:a,currentContentArea:i}=t[yd];if("pageArea"===e.targetType)return s instanceof Em||(s=null),e.startNew?(e[yd].target=s||a,!0):!(!s||s===a)&&(e[yd].target=s,!0);s instanceof Lp||(s=null);const n=s&&s[Pd]();let r,o=n;if(e.startNew)if(s){const e=n.contentArea.children,t=e.indexOf(i),a=e.indexOf(s);-1!==t&&t<a&&(o=null),r=a-1}else r=a.contentArea.children.indexOf(i);else{if(!s||s===i)return!1;r=n.contentArea.children.indexOf(s)-1,o=n===a?null:n}return e[yd].target=o,e[yd].index=r,!0}function fp(e,t,s){const a=e[Ed](),i=a[yd].noLayoutFailure,n=t[Od];t[Od]=()=>e,a[yd].noLayoutFailure=!0;const r=t[wf](s);e[cd](r.html,r.bbox),a[yd].noLayoutFailure=i,t[Od]=n}class gp extends Cg{constructor(e){super(Yg,"appearanceFilter"),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||""}}class pp extends wg{constructor(e){super(Yg,"arc",!0),this.circular=Bf({data:e.circular,defaultValue:0,validate:e=>1===e}),this.hand=Tf(e.hand,["even","left","right"]),this.id=e.id||"",this.startAngle=Ff({data:e.startAngle,defaultValue:0,validate:e=>!0}),this.sweepAngle=Ff({data:e.sweepAngle,defaultValue:360,validate:e=>!0}),this.use=e.use||"",this.usehref=e.usehref||"",this.edge=null,this.fill=null}[wf](){const e=this.edge||new Xp({}),t=e[xf](),s=Object.create(null);let a;"visible"===this.fill?.presence?Object.assign(s,this.fill[xf]()):s.fill="transparent",s.strokeWidth=Fg("visible"===e.presence?e.thickness:0),s.stroke=t.color;const i={xmlns:Jg,style:{width:"100%",height:"100%",overflow:"visible"}};if(360===this.sweepAngle)a={name:"ellipse",attributes:{xmlns:Jg,cx:"50%",cy:"50%",rx:"50%",ry:"50%",style:s}};else{const e=this.startAngle*Math.PI/180,t=this.sweepAngle*Math.PI/180,n=this.sweepAngle>180?1:0,[r,o,c,l]=[50*(1+Math.cos(e)),50*(1-Math.sin(e)),50*(1+Math.cos(e+t)),50*(1-Math.sin(e+t))];a={name:"path",attributes:{xmlns:Jg,d:`M ${r} ${o} A 50 50 0 ${n} 0 ${c} ${l}`,vectorEffect:"non-scaling-stroke",style:s}},Object.assign(i,{viewBox:"0 0 100 100",preserveAspectRatio:"none"})}const n={name:"svg",children:[a],attributes:i};return sp(this[Pd]()[Pd]())?Of.success({name:"div",attributes:{style:{display:"inline",width:"100%",height:"100%"}},children:[n]}):(n.attributes.style.position="absolute",Of.success(n))}}class mp extends wg{constructor(e){super(Yg,"area",!0),this.colSpan=Bf({data:e.colSpan,defaultValue:1,validate:e=>e>=1||-1===e}),this.id=e.id||"",this.name=e.name||"",this.relevant=Df(e.relevant),this.use=e.use||"",this.usehref=e.usehref||"",this.x=Rf(e.x,"0pt"),this.y=Rf(e.y,"0pt"),this.desc=null,this.extras=null,this.area=new yg,this.draw=new yg,this.exObject=new yg,this.exclGroup=new yg,this.field=new yg,this.subform=new yg,this.subformSet=new yg}*[Nd](){yield*ip(this)}[Kd](){return!0}[$d](){return!0}[cd](e,t){const[s,a,i,n]=t;this[yd].width=Math.max(this[yd].width,s+i),this[yd].height=Math.max(this[yd].height,a+n),this[yd].children.push(e)}[Cd](){return this[yd].availableSpace}[wf](e){const t=Eg(this,"position"),s={style:t,id:this[kf],class:["xfaArea"]};qg(this)&&s.class.push("xfaPrintOnly"),this.name&&(s.xfaName=this.name);const a=[];this[yd]={children:a,width:0,height:0,availableSpace:e};const i=this[hd]({filter:new Set(["area","draw","field","exclGroup","subform","subformSet"]),include:!0});if(!i.success)return i.isBreak()?i:(delete this[yd],Of.FAILURE);t.width=Fg(this[yd].width),t.height=Fg(this[yd].height);const n={name:"div",attributes:s,children:a},r=[this.x,this.y,this[yd].width,this[yd].height];return delete this[yd],Of.success(n,r)}}class bp extends wg{constructor(e){super(Yg,"assist",!0),this.id=e.id||"",this.role=e.role||"",this.use=e.use||"",this.usehref=e.usehref||"",this.speak=null,this.toolTip=null}[wf](){return this.toolTip?.[md]||null}}class wp extends wg{constructor(e){super(Yg,"barcode",!0),this.charEncoding=Mf({data:e.charEncoding?e.charEncoding.toLowerCase():"",defaultValue:"",validate:e=>["utf-8","big-five","fontspecific","gbk","gb-18030","gb-2312","ksc-5601","none","shift-jis","ucs-2","utf-16"].includes(e)||e.match(/iso-8859-\d{2}/)}),this.checksum=Tf(e.checksum,["none","1mod10","1mod10_1mod11","2mod10","auto"]),this.dataColumnCount=Bf({data:e.dataColumnCount,defaultValue:-1,validate:e=>e>=0}),this.dataLength=Bf({data:e.dataLength,defaultValue:-1,validate:e=>e>=0}),this.dataPrep=Tf(e.dataPrep,["none","flateCompress"]),this.dataRowCount=Bf({data:e.dataRowCount,defaultValue:-1,validate:e=>e>=0}),this.endChar=e.endChar||"",this.errorCorrectionLevel=Bf({data:e.errorCorrectionLevel,defaultValue:-1,validate:e=>e>=0&&e<=8}),this.id=e.id||"",this.moduleHeight=Rf(e.moduleHeight,"5mm"),this.moduleWidth=Rf(e.moduleWidth,"0.25mm"),this.printCheckDigit=Bf({data:e.printCheckDigit,defaultValue:0,validate:e=>1===e}),this.rowColumnRatio=Nf(e.rowColumnRatio),this.startChar=e.startChar||"",this.textLocation=Tf(e.textLocation,["below","above","aboveEmbedded","belowEmbedded","none"]),this.truncate=Bf({data:e.truncate,defaultValue:0,validate:e=>1===e}),this.type=Tf(e.type?e.type.toLowerCase():"",["aztec","codabar","code2of5industrial","code2of5interleaved","code2of5matrix","code2of5standard","code3of9","code3of9extended","code11","code49","code93","code128","code128a","code128b","code128c","code128sscc","datamatrix","ean8","ean8add2","ean8add5","ean13","ean13add2","ean13add5","ean13pwcd","fim","logmars","maxicode","msi","pdf417","pdf417macro","plessey","postauscust2","postauscust3","postausreplypaid","postausstandard","postukrm4scc","postusdpbc","postusimb","postusstandard","postus5zip","qrcode","rfid","rss14","rss14expanded","rss14limited","rss14stacked","rss14stackedomni","rss14truncated","telepen","ucc128","ucc128random","ucc128sscc","upca","upcaadd2","upcaadd5","upcapwcd","upce","upceadd2","upceadd5","upcean2","upcean5","upsmaxicode"]),this.upsMode=Tf(e.upsMode,["usCarrier","internationalCarrier","secureSymbol","standardSymbol"]),this.use=e.use||"",this.usehref=e.usehref||"",this.wideNarrowRatio=Nf(e.wideNarrowRatio),this.encrypt=null,this.extras=null}}class yp extends wg{constructor(e){super(Yg,"bind",!0),this.match=Tf(e.match,["once","dataRef","global","none"]),this.ref=e.ref||"",this.picture=null}}class xp extends wg{constructor(e){super(Yg,"bindItems"),this.connection=e.connection||"",this.labelRef=e.labelRef||"",this.ref=e.ref||"",this.valueRef=e.valueRef||""}}class kp extends wg{constructor(e){super(Yg,"bookend"),this.id=e.id||"",this.leader=e.leader||"",this.trailer=e.trailer||"",this.use=e.use||"",this.usehref=e.usehref||""}}class vp extends Ig{constructor(e){super(Yg,"boolean"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}[wf](e){return lp(1===this[md]?"1":"0")}}class Ap extends wg{constructor(e){super(Yg,"border",!0),this.break=Tf(e.break,["close","open"]),this.hand=Tf(e.hand,["even","left","right"]),this.id=e.id||"",this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.relevant=Df(e.relevant),this.use=e.use||"",this.usehref=e.usehref||"",this.corner=new yg(4),this.edge=new yg(4),this.extras=null,this.fill=null,this.margin=null}[Md](){if(!this[yd]){const e=this.edge.children.slice();if(e.length<4){const t=e.at(-1)||new Xp({});for(let s=e.length;s<4;s++)e.push(t)}const t=e.map(e=>e.thickness),s=[0,0,0,0];this.margin&&(s[0]=this.margin.topInset,s[1]=this.margin.rightInset,s[2]=this.margin.bottomInset,s[3]=this.margin.leftInset),this[yd]={widths:t,insets:s,edges:e}}return this[yd]}[xf](){const{edges:e}=this[Md](),t=e.map(e=>{const t=e[xf]();return t.color||="#000000",t}),s=Object.create(null);if(this.margin&&Object.assign(s,this.margin[xf]()),"visible"===this.fill?.presence&&Object.assign(s,this.fill[xf]()),this.corner.children.some(e=>0!==e.radius)){const e=this.corner.children.map(e=>e[xf]());if(2===e.length||3===e.length){const t=e.at(-1);for(let s=e.length;s<4;s++)e.push(t)}s.borderRadius=e.map(e=>e.radius).join(" ")}switch(this.presence){case"invisible":case"hidden":s.borderStyle="";break;case"inactive":s.borderStyle="none";break;default:s.borderStyle=t.map(e=>e.style).join(" ")}return s.borderWidth=t.map(e=>e.width).join(" "),s.borderColor=t.map(e=>e.color).join(" "),s}}class Cp extends wg{constructor(e){super(Yg,"break",!0),this.after=Tf(e.after,["auto","contentArea","pageArea","pageEven","pageOdd"]),this.afterTarget=e.afterTarget||"",this.before=Tf(e.before,["auto","contentArea","pageArea","pageEven","pageOdd"]),this.beforeTarget=e.beforeTarget||"",this.bookendLeader=e.bookendLeader||"",this.bookendTrailer=e.bookendTrailer||"",this.id=e.id||"",this.overflowLeader=e.overflowLeader||"",this.overflowTarget=e.overflowTarget||"",this.overflowTrailer=e.overflowTrailer||"",this.startNew=Bf({data:e.startNew,defaultValue:0,validate:e=>1===e}),this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null}}class Sp extends wg{constructor(e){super(Yg,"breakAfter",!0),this.id=e.id||"",this.leader=e.leader||"",this.startNew=Bf({data:e.startNew,defaultValue:0,validate:e=>1===e}),this.target=e.target||"",this.targetType=Tf(e.targetType,["auto","contentArea","pageArea"]),this.trailer=e.trailer||"",this.use=e.use||"",this.usehref=e.usehref||"",this.script=null}}class Ip extends wg{constructor(e){super(Yg,"breakBefore",!0),this.id=e.id||"",this.leader=e.leader||"",this.startNew=Bf({data:e.startNew,defaultValue:0,validate:e=>1===e}),this.target=e.target||"",this.targetType=Tf(e.targetType,["auto","contentArea","pageArea"]),this.trailer=e.trailer||"",this.use=e.use||"",this.usehref=e.usehref||"",this.script=null}[wf](e){return this[yd]={},Of.FAILURE}}class Bp extends wg{constructor(e){super(Yg,"button",!0),this.highlight=Tf(e.highlight,["inverted","none","outline","push"]),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null}[wf](e){const t=this[Pd]()[Pd](),s={name:"button",attributes:{id:this[kf],class:["xfaButton"],style:{}},children:[]};for(const a of t.event.children){if("click"!==a.activity||!a.script)continue;const e=Sa(a.script[md]);if(!e)continue;const t=zg(e.url);t&&s.children.push({name:"a",attributes:{id:"link"+this[kf],href:t,newWindow:e.newWindow,class:["xfaLink"],style:{}},children:[]})}return Of.success(s)}}class Fp extends wg{constructor(e){super(Yg,"calculate",!0),this.id=e.id||"",this.override=Tf(e.override,["disabled","error","ignore","warning"]),this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.message=null,this.script=null}}class Mp extends wg{constructor(e){super(Yg,"caption",!0),this.id=e.id||"",this.placement=Tf(e.placement,["left","bottom","inline","right","top"]),this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.reserve=Math.ceil(Rf(e.reserve)),this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.font=null,this.margin=null,this.para=null,this.value=null}[gf](e){ap(this,e)}[Md](e){if(!this[yd]){let{width:t,height:s}=e;switch(this.placement){case"left":case"right":case"inline":t=this.reserve<=0?t:this.reserve;break;case"top":case"bottom":s=this.reserve<=0?s:this.reserve}this[yd]=Ng(this,{width:t,height:s})}return this[yd]}[wf](e){if(!this.value)return Of.EMPTY;this[of]();const t=this.value[wf](e).html;if(!t)return this[rf](),Of.EMPTY;const s=this.reserve;if(this.reserve<=0){const{w:t,h:s}=this[Md](e);switch(this.placement){case"left":case"right":case"inline":this.reserve=t;break;case"top":case"bottom":this.reserve=s}}const a=[];"string"==typeof t?a.push({name:"#text",value:t}):a.push(t);const i=Eg(this,"font","margin","visibility");switch(this.placement){case"left":case"right":this.reserve>0&&(i.width=Fg(this.reserve));break;case"top":case"bottom":this.reserve>0&&(i.height=Fg(this.reserve))}return Hg(this,null,t),this[rf](),this.reserve=s,Of.success({name:"div",attributes:{style:i,class:["xfaCaption"]},children:a})}}class Tp extends Cg{constructor(e){super(Yg,"certificate"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class Rp extends wg{constructor(e){super(Yg,"certificates",!0),this.credentialServerPolicy=Tf(e.credentialServerPolicy,["optional","required"]),this.id=e.id||"",this.url=e.url||"",this.urlPolicy=e.urlPolicy||"",this.use=e.use||"",this.usehref=e.usehref||"",this.encryption=null,this.issuers=null,this.keyUsage=null,this.oids=null,this.signing=null,this.subjectDNs=null}}class Np extends wg{constructor(e){super(Yg,"checkButton",!0),this.id=e.id||"",this.mark=Tf(e.mark,["default","check","circle","cross","diamond","square","star"]),this.shape=Tf(e.shape,["square","round"]),this.size=Rf(e.size,"10pt"),this.use=e.use||"",this.usehref=e.usehref||"",this.border=null,this.extras=null,this.margin=null}[wf](e){const t=Eg(this,"margin"),s=Fg(this.size);let a,i,n;t.width=t.height=s;const r=this[Pd]()[Pd](),o=r.items.children.length&&r.items.children[0][wf]().html||[],c={on:(void 0!==o[0]?o[0]:"on").toString(),off:(void 0!==o[1]?o[1]:"off").toString()},l=(r.value?.[mf]()||"off")===c.on||void 0,h=r[Od](),u=r[kf];let d;h instanceof nm?(n=h[kf],a="radio",i="xfaRadio",d=h[bd]?.[kf]||h[kf]):(a="checkbox",i="xfaCheckbox",d=r[bd]?.[kf]||r[kf]);const f={name:"input",attributes:{class:[i],style:t,fieldId:u,dataId:d,type:a,checked:l,xfaOn:c.on,xfaOff:c.off,"aria-label":cp(r),"aria-required":!1}};return n&&(f.attributes.name=n),np(r)&&(f.attributes["aria-required"]=!0,f.attributes.required=!0),Of.success({name:"label",attributes:{class:["xfaLabel"]},children:[f]})}}class Dp extends wg{constructor(e){super(Yg,"choiceList",!0),this.commitOn=Tf(e.commitOn,["select","exit"]),this.id=e.id||"",this.open=Tf(e.open,["userControl","always","multiSelect","onEntry"]),this.textEntry=Bf({data:e.textEntry,defaultValue:0,validate:e=>1===e}),this.use=e.use||"",this.usehref=e.usehref||"",this.border=null,this.extras=null,this.margin=null}[wf](e){const t=Eg(this,"border","margin"),s=this[Pd]()[Pd](),a={fontSize:`calc(${s.font?.size||10}px * var(--total-scale-factor))`},i=[];if(s.items.children.length>0){const e=s.items;let t=0,n=0;2===e.children.length&&(t=e.children[0].save,n=1-t);const r=e.children[t][wf]().html,o=e.children[n][wf]().html;let c=!1;const l=s.value?.[mf]()||"";for(let s=0,h=r.length;s<h;s++){const e={name:"option",attributes:{value:o[s]||r[s],style:a},value:r[s]};o[s]===l&&(e.attributes.selected=c=!0),i.push(e)}c||i.splice(0,0,{name:"option",attributes:{hidden:!0,selected:!0},value:" "})}const n={class:["xfaSelect"],fieldId:s[kf],dataId:s[bd]?.[kf]||s[kf],style:t,"aria-label":cp(s),"aria-required":!1};return np(s)&&(n["aria-required"]=!0,n.required=!0),"multiSelect"===this.open&&(n.multiple=!0),Of.success({name:"label",attributes:{class:["xfaLabel"]},children:[{name:"select",children:i,attributes:n}]})}}class Op extends wg{constructor(e){super(Yg,"color",!0),this.cSpace=Tf(e.cSpace,["SRGB"]),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.value=e.value?function(e,t=[0,0,0]){let[s,a,i]=t;if(!e)return{r:s,g:a,b:i};const n=e.split(",",3).map(e=>Ss(parseInt(e.trim(),10),0,255)).map(e=>isNaN(e)?0:e);return n.length<3||([s,a,i]=n),{r:s,g:a,b:i}}(e.value):"",this.extras=null}[_d](){return!1}[xf](){return this.value?ms.makeHexColor(this.value.r,this.value.g,this.value.b):null}}class Pp extends wg{constructor(e){super(Yg,"comb"),this.id=e.id||"",this.numberOfCells=Bf({data:e.numberOfCells,defaultValue:0,validate:e=>e>=0}),this.use=e.use||"",this.usehref=e.usehref||""}}class Ep extends wg{constructor(e){super(Yg,"connect",!0),this.connection=e.connection||"",this.id=e.id||"",this.ref=e.ref||"",this.usage=Tf(e.usage,["exportAndImport","exportOnly","importOnly"]),this.use=e.use||"",this.usehref=e.usehref||"",this.picture=null}}class Lp extends wg{constructor(e){super(Yg,"contentArea",!0),this.h=Rf(e.h),this.id=e.id||"",this.name=e.name||"",this.relevant=Df(e.relevant),this.use=e.use||"",this.usehref=e.usehref||"",this.w=Rf(e.w),this.x=Rf(e.x,"0pt"),this.y=Rf(e.y,"0pt"),this.desc=null,this.extras=null}[wf](e){const t={left:Fg(this.x),top:Fg(this.y),width:Fg(this.w),height:Fg(this.h)},s=["xfaContentarea"];return qg(this)&&s.push("xfaPrintOnly"),Of.success({name:"div",children:[],attributes:{style:t,class:s,id:this[kf]}})}}class _p extends wg{constructor(e){super(Yg,"corner",!0),this.id=e.id||"",this.inverted=Bf({data:e.inverted,defaultValue:0,validate:e=>1===e}),this.join=Tf(e.join,["square","round"]),this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.radius=Rf(e.radius),this.stroke=Tf(e.stroke,["solid","dashDot","dashDotDot","dashed","dotted","embossed","etched","lowered","raised"]),this.thickness=Rf(e.thickness,"0.5pt"),this.use=e.use||"",this.usehref=e.usehref||"",this.color=null,this.extras=null}[xf](){const e=Eg(this,"visibility");return e.radius=Fg("square"===this.join?0:this.radius),e}}class Up extends vg{constructor(e){super(Yg,"date"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}[xd](){const e=this[md].trim();this[md]=e?new Date(e):null}[wf](e){return lp(this[md]?this[md].toString():"")}}class qp extends vg{constructor(e){super(Yg,"dateTime"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}[xd](){const e=this[md].trim();this[md]=e?new Date(e):null}[wf](e){return lp(this[md]?this[md].toString():"")}}class jp extends wg{constructor(e){super(Yg,"dateTimeEdit",!0),this.hScrollPolicy=Tf(e.hScrollPolicy,["auto","off","on"]),this.id=e.id||"",this.picker=Tf(e.picker,["host","none"]),this.use=e.use||"",this.usehref=e.usehref||"",this.border=null,this.comb=null,this.extras=null,this.margin=null}[wf](e){const t=Eg(this,"border","font","margin"),s=this[Pd]()[Pd](),a={name:"input",attributes:{type:"text",fieldId:s[kf],dataId:s[bd]?.[kf]||s[kf],class:["xfaTextfield"],style:t,"aria-label":cp(s),"aria-required":!1}};return np(s)&&(a.attributes["aria-required"]=!0,a.attributes.required=!0),Of.success({name:"label",attributes:{class:["xfaLabel"]},children:[a]})}}class Hp extends vg{constructor(e){super(Yg,"decimal"),this.fracDigits=Bf({data:e.fracDigits,defaultValue:2,validate:e=>!0}),this.id=e.id||"",this.leadDigits=Bf({data:e.leadDigits,defaultValue:-1,validate:e=>!0}),this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}[xd](){const e=parseFloat(this[md].trim());this[md]=isNaN(e)?null:e}[wf](e){return lp(null!==this[md]?this[md].toString():"")}}class $p extends wg{constructor(e){super(Yg,"defaultUi",!0),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null}}class zp extends wg{constructor(e){super(Yg,"desc",!0),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.boolean=new yg,this.date=new yg,this.dateTime=new yg,this.decimal=new yg,this.exData=new yg,this.float=new yg,this.image=new yg,this.integer=new yg,this.text=new yg,this.time=new yg}}class Gp extends Ag{constructor(e){super(Yg,"digestMethod",["","SHA1","SHA256","SHA512","RIPEMD160"]),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||""}}class Wp extends wg{constructor(e){super(Yg,"digestMethods",!0),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||"",this.digestMethod=new yg}}class Vp extends wg{constructor(e){super(Yg,"draw",!0),this.anchorType=Tf(e.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]),this.colSpan=Bf({data:e.colSpan,defaultValue:1,validate:e=>e>=1||-1===e}),this.h=e.h?Rf(e.h):"",this.hAlign=Tf(e.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=e.id||"",this.locale=e.locale||"",this.maxH=Rf(e.maxH,"0pt"),this.maxW=Rf(e.maxW,"0pt"),this.minH=Rf(e.minH,"0pt"),this.minW=Rf(e.minW,"0pt"),this.name=e.name||"",this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.relevant=Df(e.relevant),this.rotate=Bf({data:e.rotate,defaultValue:0,validate:e=>e%90==0}),this.use=e.use||"",this.usehref=e.usehref||"",this.w=e.w?Rf(e.w):"",this.x=Rf(e.x,"0pt"),this.y=Rf(e.y,"0pt"),this.assist=null,this.border=null,this.caption=null,this.desc=null,this.extras=null,this.font=null,this.keep=null,this.margin=null,this.para=null,this.traversal=null,this.ui=null,this.value=null,this.setProperty=new yg}[gf](e){ap(this,e)}[wf](e){if(rp(this),"hidden"===this.presence||"inactive"===this.presence)return Of.EMPTY;Og(this),this[of]();const t=this.w,s=this.h,{w:a,h:i,isBroken:n}=Ng(this,e);if(a&&""===this.w){if(n&&this[Od]()[Xd]())return this[rf](),Of.FAILURE;this.w=a}if(i&&""===this.h&&(this.h=i),hp(this),!Kg(this,e))return this.w=t,this.h=s,this[rf](),Of.FAILURE;up(this);const r=Eg(this,"font","hAlign","dimensions","position","presence","rotate","anchorType","border","margin");Tg(this,r),r.margin&&(r.padding=r.margin,delete r.margin);const o=["xfaDraw"];this.font&&o.push("xfaFont"),qg(this)&&o.push("xfaPrintOnly");const c={style:r,id:this[kf],class:o};this.name&&(c.xfaName=this.name);const l={name:"div",attributes:c,children:[]};op(this,c);const h=Dg(this,l,e),u=this.value?this.value[wf](e).html:null;return null===u?(this.w=t,this.h=s,this[rf](),Of.success(Lg(this,l),h)):(l.children.push(u),Hg(this,r,u),this.w=t,this.h=s,this[rf](),Of.success(Lg(this,l),h))}}class Xp extends wg{constructor(e){super(Yg,"edge",!0),this.cap=Tf(e.cap,["square","butt","round"]),this.id=e.id||"",this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.stroke=Tf(e.stroke,["solid","dashDot","dashDotDot","dashed","dotted","embossed","etched","lowered","raised"]),this.thickness=Rf(e.thickness,"0.5pt"),this.use=e.use||"",this.usehref=e.usehref||"",this.color=null,this.extras=null}[xf](){const e=Eg(this,"visibility");if(Object.assign(e,{linecap:this.cap,width:Fg(this.thickness),color:this.color?this.color[xf]():"#000000",style:""}),"visible"!==this.presence)e.style="none";else switch(this.stroke){case"solid":e.style="solid";break;case"dashDot":case"dashDotDot":case"dashed":e.style="dashed";break;case"dotted":e.style="dotted";break;case"embossed":e.style="ridge";break;case"etched":e.style="groove";break;case"lowered":e.style="inset";break;case"raised":e.style="outset"}return e}}class Kp extends Ag{constructor(e){super(Yg,"encoding",["adbe.x509.rsa_sha1","adbe.pkcs7.detached","adbe.pkcs7.sha1"]),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||""}}class Yp extends wg{constructor(e){super(Yg,"encodings",!0),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||"",this.encoding=new yg}}class Jp extends wg{constructor(e){super(Yg,"encrypt",!0),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.certificate=null}}class Zp extends wg{constructor(e){super(Yg,"encryptData",!0),this.id=e.id||"",this.operation=Tf(e.operation,["encrypt","decrypt"]),this.target=e.target||"",this.use=e.use||"",this.usehref=e.usehref||"",this.filter=null,this.manifest=null}}class Qp extends wg{constructor(e){super(Yg,"encryption",!0),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||"",this.certificate=new yg}}class em extends Ag{constructor(e){super(Yg,"encryptionMethod",["","AES256-CBC","TRIPLEDES-CBC","AES128-CBC","AES192-CBC"]),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||""}}class tm extends wg{constructor(e){super(Yg,"encryptionMethods",!0),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||"",this.encryptionMethod=new yg}}class sm extends wg{constructor(e){super(Yg,"event",!0),this.activity=Tf(e.activity,["click","change","docClose","docReady","enter","exit","full","indexChange","initialize","mouseDown","mouseEnter","mouseExit","mouseUp","postExecute","postOpen","postPrint","postSave","postSign","postSubmit","preExecute","preOpen","prePrint","preSave","preSign","preSubmit","ready","validationState"]),this.id=e.id||"",this.listen=Tf(e.listen,["refOnly","refAndDescendents"]),this.name=e.name||"",this.ref=e.ref||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.encryptData=null,this.execute=null,this.script=null,this.signData=null,this.submit=null}}class am extends vg{constructor(e){super(Yg,"exData"),this.contentType=e.contentType||"",this.href=e.href||"",this.id=e.id||"",this.maxLength=Bf({data:e.maxLength,defaultValue:-1,validate:e=>e>=-1}),this.name=e.name||"",this.rid=e.rid||"",this.transferEncoding=Tf(e.transferEncoding,["none","base64","package"]),this.use=e.use||"",this.usehref=e.usehref||""}[Hd](){return"text/html"===this.contentType}[tf](e){return("text/html"===this.contentType&&e[Zd]===Af.xhtml.id||"text/xml"===this.contentType)&&(this[md]=e,!0)}[wf](e){return"text/html"===this.contentType&&this[md]?this[md][wf](e):Of.EMPTY}}class im extends wg{constructor(e){super(Yg,"exObject",!0),this.archive=e.archive||"",this.classId=e.classId||"",this.codeBase=e.codeBase||"",this.codeType=e.codeType||"",this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.boolean=new yg,this.date=new yg,this.dateTime=new yg,this.decimal=new yg,this.exData=new yg,this.exObject=new yg,this.float=new yg,this.image=new yg,this.integer=new yg,this.text=new yg,this.time=new yg}}class nm extends wg{constructor(e){super(Yg,"exclGroup",!0),this.access=Tf(e.access,["open","nonInteractive","protected","readOnly"]),this.accessKey=e.accessKey||"",this.anchorType=Tf(e.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]),this.colSpan=Bf({data:e.colSpan,defaultValue:1,validate:e=>e>=1||-1===e}),this.h=e.h?Rf(e.h):"",this.hAlign=Tf(e.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=e.id||"",this.layout=Tf(e.layout,["position","lr-tb","rl-row","rl-tb","row","table","tb"]),this.maxH=Rf(e.maxH,"0pt"),this.maxW=Rf(e.maxW,"0pt"),this.minH=Rf(e.minH,"0pt"),this.minW=Rf(e.minW,"0pt"),this.name=e.name||"",this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.relevant=Df(e.relevant),this.use=e.use||"",this.usehref=e.usehref||"",this.w=e.w?Rf(e.w):"",this.x=Rf(e.x,"0pt"),this.y=Rf(e.y,"0pt"),this.assist=null,this.bind=null,this.border=null,this.calculate=null,this.caption=null,this.desc=null,this.extras=null,this.margin=null,this.para=null,this.traversal=null,this.validate=null,this.connect=new yg,this.event=new yg,this.field=new yg,this.setProperty=new yg}[$d](){return!0}[_d](){return!0}[gf](e){for(const t of this.field.children){if(!t.value){const e=new bb({});t[ld](e),t.value=e}t.value[gf](e)}}[Xd](){return this.layout.endsWith("-tb")&&0===this[yd].attempt&&this[yd].numberInLine>0||this[Pd]()[Xd]()}[Vd](){const e=this[Od]();return!!e[Vd]()&&(void 0!==this[yd]._isSplittable?this[yd]._isSplittable:"position"===this.layout||this.layout.includes("row")?(this[yd]._isSplittable=!1,!1):(!e.layout?.endsWith("-tb")||0===e[yd].numberInLine)&&(this[yd]._isSplittable=!0,!0))}[kd](){return Wg(this)}[cd](e,t){Vg(this,e,t)}[Cd](){return Xg(this)}[wf](e){if(rp(this),"hidden"===this.presence||"inactive"===this.presence||0===this.h||0===this.w)return Of.EMPTY;Og(this);const t=[],s={id:this[kf],class:[]};Ug(this,s.class),this[yd]||=Object.create(null),Object.assign(this[yd],{children:t,attributes:s,attempt:0,line:null,numberInLine:0,availableSpace:{width:Math.min(this.w||1/0,e.width),height:Math.min(this.h||1/0,e.height)},width:0,height:0,prevHeight:0,currentWidth:0});const a=this[Vd]();if(a||hp(this),!Kg(this,e))return Of.FAILURE;const i=new Set(["field"]);if(this.layout.includes("row")){const e=this[Od]().columnWidths;Array.isArray(e)&&e.length>0&&(this[yd].columnWidths=e,this[yd].currentColumn=0)}const n=Eg(this,"anchorType","dimensions","position","presence","border","margin","hAlign"),r=["xfaExclgroup"],o=Pg(this);o&&r.push(o),qg(this)&&r.push("xfaPrintOnly"),s.style=n,s.class=r,this.name&&(s.xfaName=this.name),this[of]();const c="lr-tb"===this.layout||"rl-tb"===this.layout,l=c?2:1;for(;this[yd].attempt<l;this[yd].attempt++){c&&1===this[yd].attempt&&(this[yd].numberInLine=0);const e=this[hd]({filter:i,include:!0});if(e.success)break;if(e.isBreak())return this[rf](),e;if(c&&0===this[yd].attempt&&0===this[yd].numberInLine&&!this[Ed]()[yd].noLayoutFailure){this[yd].attempt=l;break}}if(this[rf](),a||up(this),this[yd].attempt===l)return a||delete this[yd],Of.FAILURE;let h=0,u=0;this.margin&&(h=this.margin.leftInset+this.margin.rightInset,u=this.margin.topInset+this.margin.bottomInset);const d=Math.max(this[yd].width+h,this.w||0),f=Math.max(this[yd].height+u,this.h||0),g=[this.x,this.y,d,f];""===this.w&&(n.width=Fg(d)),""===this.h&&(n.height=Fg(f));const p={name:"div",attributes:s,children:t};return op(this,s),delete this[yd],Of.success(Lg(this,p),g)}}class rm extends wg{constructor(e){super(Yg,"execute"),this.connection=e.connection||"",this.executeType=Tf(e.executeType,["import","remerge"]),this.id=e.id||"",this.runAt=Tf(e.runAt,["client","both","server"]),this.use=e.use||"",this.usehref=e.usehref||""}}class om extends wg{constructor(e){super(Yg,"extras",!0),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||"",this.boolean=new yg,this.date=new yg,this.dateTime=new yg,this.decimal=new yg,this.exData=new yg,this.extras=new yg,this.float=new yg,this.image=new yg,this.integer=new yg,this.text=new yg,this.time=new yg}}class cm extends wg{constructor(e){super(Yg,"field",!0),this.access=Tf(e.access,["open","nonInteractive","protected","readOnly"]),this.accessKey=e.accessKey||"",this.anchorType=Tf(e.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]),this.colSpan=Bf({data:e.colSpan,defaultValue:1,validate:e=>e>=1||-1===e}),this.h=e.h?Rf(e.h):"",this.hAlign=Tf(e.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=e.id||"",this.locale=e.locale||"",this.maxH=Rf(e.maxH,"0pt"),this.maxW=Rf(e.maxW,"0pt"),this.minH=Rf(e.minH,"0pt"),this.minW=Rf(e.minW,"0pt"),this.name=e.name||"",this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.relevant=Df(e.relevant),this.rotate=Bf({data:e.rotate,defaultValue:0,validate:e=>e%90==0}),this.use=e.use||"",this.usehref=e.usehref||"",this.w=e.w?Rf(e.w):"",this.x=Rf(e.x,"0pt"),this.y=Rf(e.y,"0pt"),this.assist=null,this.bind=null,this.border=null,this.calculate=null,this.caption=null,this.desc=null,this.extras=null,this.font=null,this.format=null,this.items=new yg(2),this.keep=null,this.margin=null,this.para=null,this.traversal=null,this.ui=null,this.validate=null,this.value=null,this.bindItems=new yg,this.connect=new yg,this.event=new yg,this.setProperty=new yg}[$d](){return!0}[gf](e){ap(this,e)}[wf](e){if(rp(this),!this.ui){let e;switch(this.ui=new pb({}),this.ui[Ld]=this[Ld],this[ld](this.ui),this.items.children.length){case 0:e=new lb({}),this.ui.textEdit=e;break;case 1:e=new Np({}),this.ui.checkButton=e;break;case 2:e=new Dp({}),this.ui.choiceList=e}this.ui[ld](e)}if(!this.ui||"hidden"===this.presence||"inactive"===this.presence||0===this.h||0===this.w)return Of.EMPTY;this.caption&&delete this.caption[yd],this[of]();const t=this.caption?this.caption[wf](e).html:null,s=this.w,a=this.h;let i=0,n=0;this.margin&&(i=this.margin.leftInset+this.margin.rightInset,n=this.margin.topInset+this.margin.bottomInset);let r=null;if(""===this.w||""===this.h){let t=null,s=null,a=0,o=0;if(this.ui.checkButton)a=o=this.ui.checkButton.size;else{const{w:t,h:s}=Ng(this,e);null!==t?(a=t,o=s):o=function(e,t=!1){let s=null;if(e){const t=If(e.typeface),a=e[Ld].fontFinder.find(t);s=Ef(e,a)}if(!s)return{lineHeight:12,lineGap:2,lineNoGap:10};const a=e.size||10,i=s.lineHeight?Math.max(t?0:1.2,s.lineHeight):1.2,n=void 0===s.lineGap?.2:s.lineGap;return{lineHeight:i*a,lineGap:n*a,lineNoGap:Math.max(1,i-n)*a}}(this.font,!0).lineNoGap}if(r=tp(this.ui[Md]()),a+=r.w,o+=r.h,this.caption){const{w:i,h:n,isBroken:r}=this.caption[Md](e);if(r&&this[Od]()[Xd]())return this[rf](),Of.FAILURE;switch(t=i,s=n,this.caption.placement){case"left":case"right":case"inline":t+=a;break;case"top":case"bottom":s+=o}}else t=a,s=o;t&&""===this.w&&(t+=i,this.w=Math.min(this.maxW<=0?1/0:this.maxW,this.minW+1<t?t:this.minW)),s&&""===this.h&&(s+=n,this.h=Math.min(this.maxH<=0?1/0:this.maxH,this.minH+1<s?s:this.minH))}if(this[rf](),Og(this),hp(this),!Kg(this,e))return this.w=s,this.h=a,this[rf](),Of.FAILURE;up(this);const o=Eg(this,"font","dimensions","position","rotate","anchorType","presence","margin","hAlign");Tg(this,o);const c=["xfaField"];this.font&&c.push("xfaFont"),qg(this)&&c.push("xfaPrintOnly");const l={style:o,id:this[kf],class:c};o.margin&&(o.padding=o.margin,delete o.margin),Ug(this,c),this.name&&(l.xfaName=this.name);const h=[],u={name:"div",attributes:l,children:h};op(this,l);const d=this.border?this.border[xf]():null,f=Dg(this,u,e),g=this.ui[wf]().html;if(!g)return Object.assign(o,d),Of.success(Lg(this,u),f);this[pf]&&(g.children?.[0]?g.children[0].attributes.tabindex=this[pf]:g.attributes.tabindex=this[pf]),g.attributes.style||=Object.create(null);let p=null;if(this.ui.button?(1===g.children.length&&([p]=g.children.splice(0,1)),Object.assign(g.attributes.style,d)):Object.assign(o,d),h.push(g),this.value)if(this.ui.imageEdit)g.children.push(this.value[wf]().html);else if(!this.ui.button){let e="";if(this.value.exData)e=this.value.exData[mf]();else if(this.value.text)e=this.value.text[Md]();else{const t=this.value[wf]().html;null!==t&&(e=t.children[0].value)}this.ui.textEdit&&this.value.text?.maxChars&&(g.children[0].attributes.maxLength=this.value.text.maxChars),e&&(this.ui.numericEdit&&(e=parseFloat(e),e=isNaN(e)?"":e.toString()),"textarea"===g.children[0].name?g.children[0].attributes.textContent=e:g.children[0].attributes.value=e)}if(!this.ui.imageEdit&&g.children?.[0]&&this.h){r=r||tp(this.ui[Md]());let t=0;if(this.caption&&["top","bottom"].includes(this.caption.placement)){t=this.caption.reserve,t<=0&&(t=this.caption[Md](e).h);const s=this.h-t-n-r.h;g.children[0].attributes.style.height=Fg(s)}else g.children[0].attributes.style.height="100%"}if(p&&g.children.push(p),!t)return g.attributes.class&&g.attributes.class.push("xfaLeft"),this.w=s,this.h=a,Of.success(Lg(this,u),f);if(this.ui.button)return o.padding&&delete o.padding,"div"===t.name&&(t.name="span"),g.children.push(t),Of.success(u,f);switch(this.ui.checkButton&&(t.attributes.class[0]="xfaCaptionForCheckButton"),g.attributes.class||=[],g.children.splice(0,0,t),this.caption.placement){case"left":case"inline":g.attributes.class.push("xfaLeft");break;case"right":g.attributes.class.push("xfaRight");break;case"top":g.attributes.class.push("xfaTop");break;case"bottom":g.attributes.class.push("xfaBottom")}return this.w=s,this.h=a,Of.success(Lg(this,u),f)}}class lm extends wg{constructor(e){super(Yg,"fill",!0),this.id=e.id||"",this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.use=e.use||"",this.usehref=e.usehref||"",this.color=null,this.extras=null,this.linear=null,this.pattern=null,this.radial=null,this.solid=null,this.stipple=null}[xf](){const e=this[Pd](),t=e[Pd]()[Pd](),s=Object.create(null);let a="color",i=a;e instanceof Ap&&(a="background-color",i="background",t instanceof pb&&(s.backgroundColor="white")),(e instanceof Wm||e instanceof pp)&&(a=i="fill",s.fill="white");for(const n of Object.getOwnPropertyNames(this)){if("extras"===n||"color"===n)continue;const e=this[n];if(!(e instanceof wg))continue;const t=e[xf](this.color);return t&&(s[t.startsWith("#")?a:i]=t),s}if(this.color?.value){const e=this.color[xf]();s[e.startsWith("#")?a:i]=e}return s}}class hm extends wg{constructor(e){super(Yg,"filter",!0),this.addRevocationInfo=Tf(e.addRevocationInfo,["","required","optional","none"]),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||"",this.version=Bf({data:this.version,defaultValue:5,validate:e=>e>=1&&e<=5}),this.appearanceFilter=null,this.certificates=null,this.digestMethods=null,this.encodings=null,this.encryptionMethods=null,this.handler=null,this.lockDocument=null,this.mdp=null,this.reasons=null,this.timeStamp=null}}class um extends vg{constructor(e){super(Yg,"float"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}[xd](){const e=parseFloat(this[md].trim());this[md]=isNaN(e)?null:e}[wf](e){return lp(null!==this[md]?this[md].toString():"")}}class dm extends wg{constructor(e){super(Yg,"font",!0),this.baselineShift=Rf(e.baselineShift),this.fontHorizontalScale=Ff({data:e.fontHorizontalScale,defaultValue:100,validate:e=>e>=0}),this.fontVerticalScale=Ff({data:e.fontVerticalScale,defaultValue:100,validate:e=>e>=0}),this.id=e.id||"",this.kerningMode=Tf(e.kerningMode,["none","pair"]),this.letterSpacing=Rf(e.letterSpacing,"0"),this.lineThrough=Bf({data:e.lineThrough,defaultValue:0,validate:e=>1===e||2===e}),this.lineThroughPeriod=Tf(e.lineThroughPeriod,["all","word"]),this.overline=Bf({data:e.overline,defaultValue:0,validate:e=>1===e||2===e}),this.overlinePeriod=Tf(e.overlinePeriod,["all","word"]),this.posture=Tf(e.posture,["normal","italic"]),this.size=Rf(e.size,"10pt"),this.typeface=e.typeface||"Courier",this.underline=Bf({data:e.underline,defaultValue:0,validate:e=>1===e||2===e}),this.underlinePeriod=Tf(e.underlinePeriod,["all","word"]),this.use=e.use||"",this.usehref=e.usehref||"",this.weight=Tf(e.weight,["normal","bold"]),this.extras=null,this.fill=null}[ud](e){super[ud](e),this[Ld].usedTypefaces.add(this.typeface)}[xf](){const e=Eg(this,"fill"),t=e.color;return t&&("#000000"===t?delete e.color:t.startsWith("#")||(e.background=t,e.backgroundClip="text",e.color="transparent")),this.baselineShift&&(e.verticalAlign=Fg(this.baselineShift)),e.fontKerning="none"===this.kerningMode?"none":"normal",e.letterSpacing=Fg(this.letterSpacing),0!==this.lineThrough&&(e.textDecoration="line-through",2===this.lineThrough&&(e.textDecorationStyle="double")),0!==this.overline&&(e.textDecoration="overline",2===this.overline&&(e.textDecorationStyle="double")),e.fontStyle=this.posture,e.fontSize=Fg(.99*this.size),$g(this,this,this[Ld].fontFinder,e),0!==this.underline&&(e.textDecoration="underline",2===this.underline&&(e.textDecorationStyle="double")),e.fontWeight=this.weight,e}}class fm extends wg{constructor(e){super(Yg,"format",!0),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.picture=null}}class gm extends Cg{constructor(e){super(Yg,"handler"),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||""}}class pm extends wg{constructor(e){super(Yg,"hyphenation"),this.excludeAllCaps=Bf({data:e.excludeAllCaps,defaultValue:0,validate:e=>1===e}),this.excludeInitialCap=Bf({data:e.excludeInitialCap,defaultValue:0,validate:e=>1===e}),this.hyphenate=Bf({data:e.hyphenate,defaultValue:0,validate:e=>1===e}),this.id=e.id||"",this.pushCharacterCount=Bf({data:e.pushCharacterCount,defaultValue:3,validate:e=>e>=0}),this.remainCharacterCount=Bf({data:e.remainCharacterCount,defaultValue:3,validate:e=>e>=0}),this.use=e.use||"",this.usehref=e.usehref||"",this.wordCharacterCount=Bf({data:e.wordCharacterCount,defaultValue:7,validate:e=>e>=0})}}class mm extends Cg{constructor(e){super(Yg,"image"),this.aspect=Tf(e.aspect,["fit","actual","height","none","width"]),this.contentType=e.contentType||"",this.href=e.href||"",this.id=e.id||"",this.name=e.name||"",this.transferEncoding=Tf(e.transferEncoding,["base64","none","package"]),this.use=e.use||"",this.usehref=e.usehref||""}[wf](){if(this.contentType&&!Qg.has(this.contentType.toLowerCase()))return Of.EMPTY;let e=this[Ld].images?.get(this.href);if(!e&&(this.href||!this[md]))return Of.EMPTY;if(e||"base64"!==this.transferEncoding||(e=function(e){return Uint8Array.fromBase64?Uint8Array.fromBase64(e):us(atob(e))}(this[md])),!e)return Of.EMPTY;if(!this.contentType){for(const[t,s]of ep)if(e.length>t.length&&t.every((t,s)=>t===e[s])){this.contentType=s;break}if(!this.contentType)return Of.EMPTY}const t=new Blob([e],{type:this.contentType});let s;switch(this.aspect){case"fit":case"actual":break;case"height":s={height:"100%",objectFit:"fill"};break;case"none":s={width:"100%",height:"100%",objectFit:"fill"};break;case"width":s={width:"100%",objectFit:"fill"}}const a=this[Pd]();return Of.success({name:"img",attributes:{class:["xfaImage"],style:s,src:URL.createObjectURL(t),alt:a?cp(a[Pd]()):null}})}}class bm extends wg{constructor(e){super(Yg,"imageEdit",!0),this.data=Tf(e.data,["link","embed"]),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.border=null,this.extras=null,this.margin=null}[wf](e){return"embed"===this.data?Of.success({name:"div",children:[],attributes:{}}):Of.EMPTY}}class wm extends vg{constructor(e){super(Yg,"integer"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}[xd](){const e=parseInt(this[md].trim(),10);this[md]=isNaN(e)?null:e}[wf](e){return lp(null!==this[md]?this[md].toString():"")}}class ym extends wg{constructor(e){super(Yg,"issuers",!0),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||"",this.certificate=new yg}}class xm extends wg{constructor(e){super(Yg,"items",!0),this.id=e.id||"",this.name=e.name||"",this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.ref=e.ref||"",this.save=Bf({data:e.save,defaultValue:0,validate:e=>1===e}),this.use=e.use||"",this.usehref=e.usehref||"",this.boolean=new yg,this.date=new yg,this.dateTime=new yg,this.decimal=new yg,this.exData=new yg,this.float=new yg,this.image=new yg,this.integer=new yg,this.text=new yg,this.time=new yg}[wf](){const e=[];for(const t of this[Rd]())e.push(t[mf]());return Of.success(e)}}class km extends wg{constructor(e){super(Yg,"keep",!0),this.id=e.id||"";const t=["none","contentArea","pageArea"];this.intact=Tf(e.intact,t),this.next=Tf(e.next,t),this.previous=Tf(e.previous,t),this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null}}class vm extends wg{constructor(e){super(Yg,"keyUsage");const t=["","yes","no"];this.crlSign=Tf(e.crlSign,t),this.dataEncipherment=Tf(e.dataEncipherment,t),this.decipherOnly=Tf(e.decipherOnly,t),this.digitalSignature=Tf(e.digitalSignature,t),this.encipherOnly=Tf(e.encipherOnly,t),this.id=e.id||"",this.keyAgreement=Tf(e.keyAgreement,t),this.keyCertSign=Tf(e.keyCertSign,t),this.keyEncipherment=Tf(e.keyEncipherment,t),this.nonRepudiation=Tf(e.nonRepudiation,t),this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||""}}class Am extends wg{constructor(e){super(Yg,"line",!0),this.hand=Tf(e.hand,["even","left","right"]),this.id=e.id||"",this.slope=Tf(e.slope,["\\","/"]),this.use=e.use||"",this.usehref=e.usehref||"",this.edge=null}[wf](){const e=this[Pd]()[Pd](),t=this.edge||new Xp({}),s=t[xf](),a=Object.create(null),i="visible"===t.presence?t.thickness:0;a.strokeWidth=Fg(i),a.stroke=s.color;let n,r,o,c,l="100%",h="100%";e.w<=i?([n,r,o,c]=["50%",0,"50%","100%"],l=a.strokeWidth):e.h<=i?([n,r,o,c]=[0,"50%","100%","50%"],h=a.strokeWidth):"\\"===this.slope?[n,r,o,c]=[0,0,"100%","100%"]:[n,r,o,c]=[0,"100%","100%",0];const u={name:"svg",children:[{name:"line",attributes:{xmlns:Jg,x1:n,y1:r,x2:o,y2:c,style:a}}],attributes:{xmlns:Jg,width:l,height:h,style:{overflow:"visible"}}};return sp(e)?Of.success({name:"div",attributes:{style:{display:"inline",width:"100%",height:"100%"}},children:[u]}):(u.attributes.style.position="absolute",Of.success(u))}}class Cm extends wg{constructor(e){super(Yg,"linear",!0),this.id=e.id||"",this.type=Tf(e.type,["toRight","toBottom","toLeft","toTop"]),this.use=e.use||"",this.usehref=e.usehref||"",this.color=null,this.extras=null}[xf](e){return e=e?e[xf]():"#FFFFFF",`linear-gradient(${this.type.replace(/([RBLT])/," $1").toLowerCase()}, ${e}, ${this.color?this.color[xf]():"#000000"})`}}class Sm extends vg{constructor(e){super(Yg,"lockDocument"),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||""}[xd](){this[md]=Tf(this[md],["auto","0","1"])}}class Im extends wg{constructor(e){super(Yg,"manifest",!0),this.action=Tf(e.action,["include","all","exclude"]),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.ref=new yg}}class Bm extends wg{constructor(e){super(Yg,"margin",!0),this.bottomInset=Rf(e.bottomInset,"0"),this.id=e.id||"",this.leftInset=Rf(e.leftInset,"0"),this.rightInset=Rf(e.rightInset,"0"),this.topInset=Rf(e.topInset,"0"),this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null}[xf](){return{margin:Fg(this.topInset)+" "+Fg(this.rightInset)+" "+Fg(this.bottomInset)+" "+Fg(this.leftInset)}}}class Fm extends wg{constructor(e){super(Yg,"mdp"),this.id=e.id||"",this.permissions=Bf({data:e.permissions,defaultValue:2,validate:e=>1===e||3===e}),this.signatureType=Tf(e.signatureType,["filler","author"]),this.use=e.use||"",this.usehref=e.usehref||""}}class Mm extends wg{constructor(e){super(Yg,"medium"),this.id=e.id||"",this.imagingBBox=function(e){const t=-1;if(!e)return{x:t,y:t,width:t,height:t};const s=e.split(",",4).map(e=>Rf(e.trim(),"-1"));if(s.length<4||s[2]<0||s[3]<0)return{x:t,y:t,width:t,height:t};const[a,i,n,r]=s;return{x:a,y:i,width:n,height:r}}(e.imagingBBox),this.long=Rf(e.long),this.orientation=Tf(e.orientation,["portrait","landscape"]),this.short=Rf(e.short),this.stock=e.stock||"",this.trayIn=Tf(e.trayIn,["auto","delegate","pageFront"]),this.trayOut=Tf(e.trayOut,["auto","delegate"]),this.use=e.use||"",this.usehref=e.usehref||""}}class Tm extends wg{constructor(e){super(Yg,"message",!0),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.text=new yg}}class Rm extends wg{constructor(e){super(Yg,"numericEdit",!0),this.hScrollPolicy=Tf(e.hScrollPolicy,["auto","off","on"]),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.border=null,this.comb=null,this.extras=null,this.margin=null}[wf](e){const t=Eg(this,"border","font","margin"),s=this[Pd]()[Pd](),a={name:"input",attributes:{type:"text",fieldId:s[kf],dataId:s[bd]?.[kf]||s[kf],class:["xfaTextfield"],style:t,"aria-label":cp(s),"aria-required":!1}};return np(s)&&(a.attributes["aria-required"]=!0,a.attributes.required=!0),Of.success({name:"label",attributes:{class:["xfaLabel"]},children:[a]})}}class Nm extends wg{constructor(e){super(Yg,"occur",!0),this.id=e.id||"",this.initial=""!==e.initial?Bf({data:e.initial,defaultValue:"",validate:e=>!0}):"",this.max=""!==e.max?Bf({data:e.max,defaultValue:-1,validate:e=>!0}):"",this.min=""!==e.min?Bf({data:e.min,defaultValue:1,validate:e=>!0}):"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null}[ud](){const e=this[Pd](),t=this.min;""===this.min&&(this.min=e instanceof Em||e instanceof Lm?0:1),""===this.max&&(this.max=""===t?e instanceof Em||e instanceof Lm?-1:1:this.min),-1!==this.max&&this.max<this.min&&(this.max=this.min),""===this.initial&&(this.initial=e instanceof ob?1:this.min)}}class Dm extends Cg{constructor(e){super(Yg,"oid"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class Om extends wg{constructor(e){super(Yg,"oids",!0),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||"",this.oid=new yg}}class Pm extends wg{constructor(e){super(Yg,"overflow"),this.id=e.id||"",this.leader=e.leader||"",this.target=e.target||"",this.trailer=e.trailer||"",this.use=e.use||"",this.usehref=e.usehref||""}[Md](){if(!this[yd]){const e=this[Pd](),t=this[Ed](),s=t[uf](this.target,e),a=t[uf](this.leader,e),i=t[uf](this.trailer,e);this[yd]={target:s?.[0]||null,leader:a?.[0]||null,trailer:i?.[0]||null,addLeader:!1,addTrailer:!1}}return this[yd]}}class Em extends wg{constructor(e){super(Yg,"pageArea",!0),this.blankOrNotBlank=Tf(e.blankOrNotBlank,["any","blank","notBlank"]),this.id=e.id||"",this.initialNumber=Bf({data:e.initialNumber,defaultValue:1,validate:e=>!0}),this.name=e.name||"",this.numbered=Bf({data:e.numbered,defaultValue:1,validate:e=>!0}),this.oddOrEven=Tf(e.oddOrEven,["any","even","odd"]),this.pagePosition=Tf(e.pagePosition,["any","first","last","only","rest"]),this.relevant=Df(e.relevant),this.use=e.use||"",this.usehref=e.usehref||"",this.desc=null,this.extras=null,this.medium=null,this.occur=null,this.area=new yg,this.contentArea=new yg,this.draw=new yg,this.exclGroup=new yg,this.field=new yg,this.subform=new yg}[Yd](){return this[yd]?!this.occur||-1===this.occur.max||this[yd].numberOfUse<this.occur.max:(this[yd]={numberOfUse:0},!0)}[dd](){delete this[yd]}[Dd](){this[yd]||={numberOfUse:0};const e=this[Pd]();return"orderedOccurrence"===e.relation&&this[Yd]()?(this[yd].numberOfUse+=1,this):e[Dd]()}[Cd](){return this[yd].space||{width:0,height:0}}[wf](){this[yd]||={numberOfUse:1};const e=[];this[yd].children=e;const t=Object.create(null);if(this.medium&&this.medium.short&&this.medium.long){if(t.width=Fg(this.medium.short),t.height=Fg(this.medium.long),this[yd].space={width:this.medium.short,height:this.medium.long},"landscape"===this.medium.orientation){const e=t.width;t.width=t.height,t.height=e,this[yd].space={width:this.medium.long,height:this.medium.short}}}else Zt("XFA - No medium specified in pageArea: please file a bug.");return this[hd]({filter:new Set(["area","draw","field","subform"]),include:!0}),this[hd]({filter:new Set(["contentArea"]),include:!0}),Of.success({name:"div",children:e,attributes:{class:["xfaPage"],id:this[kf],style:t,xfaName:this.name}})}}class Lm extends wg{constructor(e){super(Yg,"pageSet",!0),this.duplexImposition=Tf(e.duplexImposition,["longEdge","shortEdge"]),this.id=e.id||"",this.name=e.name||"",this.relation=Tf(e.relation,["orderedOccurrence","duplexPaginated","simplexPaginated"]),this.relevant=Df(e.relevant),this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.occur=null,this.pageArea=new yg,this.pageSet=new yg}[dd](){for(const e of this.pageArea.children)e[dd]();for(const e of this.pageSet.children)e[dd]()}[Yd](){return!this.occur||-1===this.occur.max||this[yd].numberOfUse<this.occur.max}[Dd](){if(this[yd]||={numberOfUse:1,pageIndex:-1,pageSetIndex:-1},"orderedOccurrence"===this.relation){if(this[yd].pageIndex+1<this.pageArea.children.length)return this[yd].pageIndex+=1,this.pageArea.children[this[yd].pageIndex][Dd]();if(this[yd].pageSetIndex+1<this.pageSet.children.length)return this[yd].pageSetIndex+=1,this.pageSet.children[this[yd].pageSetIndex][Dd]();if(this[Yd]())return this[yd].numberOfUse+=1,this[yd].pageIndex=-1,this[yd].pageSetIndex=-1,this[Dd]();const e=this[Pd]();return e instanceof Lm?e[Dd]():(this[dd](),this[Dd]())}const e=this[Ed]()[yd].pageNumber,t=e%2==0?"even":"odd",s=0===e?"first":"rest";let a=this.pageArea.children.find(e=>e.oddOrEven===t&&e.pagePosition===s);return a||(a=this.pageArea.children.find(e=>"any"===e.oddOrEven&&e.pagePosition===s),a||(a=this.pageArea.children.find(e=>"any"===e.oddOrEven&&"any"===e.pagePosition),a||this.pageArea.children[0]))}}class _m extends wg{constructor(e){super(Yg,"para",!0),this.hAlign=Tf(e.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=e.id||"",this.lineHeight=e.lineHeight?Rf(e.lineHeight,"0pt"):"",this.marginLeft=e.marginLeft?Rf(e.marginLeft,"0pt"):"",this.marginRight=e.marginRight?Rf(e.marginRight,"0pt"):"",this.orphans=Bf({data:e.orphans,defaultValue:0,validate:e=>e>=0}),this.preserve=e.preserve||"",this.radixOffset=e.radixOffset?Rf(e.radixOffset,"0pt"):"",this.spaceAbove=e.spaceAbove?Rf(e.spaceAbove,"0pt"):"",this.spaceBelow=e.spaceBelow?Rf(e.spaceBelow,"0pt"):"",this.tabDefault=e.tabDefault?Rf(this.tabDefault):"",this.tabStops=(e.tabStops||"").trim().split(/\s+/).map((e,t)=>t%2==1?Rf(e):e),this.textIndent=e.textIndent?Rf(e.textIndent,"0pt"):"",this.use=e.use||"",this.usehref=e.usehref||"",this.vAlign=Tf(e.vAlign,["top","bottom","middle"]),this.widows=Bf({data:e.widows,defaultValue:0,validate:e=>e>=0}),this.hyphenation=null}[xf](){const e=Eg(this,"hAlign");return""!==this.marginLeft&&(e.paddingLeft=Fg(this.marginLeft)),""!==this.marginRight&&(e.paddingRight=Fg(this.marginRight)),""!==this.spaceAbove&&(e.paddingTop=Fg(this.spaceAbove)),""!==this.spaceBelow&&(e.paddingBottom=Fg(this.spaceBelow)),""!==this.textIndent&&(e.textIndent=Fg(this.textIndent),_g(e)),this.lineHeight>0&&(e.lineHeight=Fg(this.lineHeight)),""!==this.tabDefault&&(e.tabSize=Fg(this.tabDefault)),this.tabStops.length,this.hyphenatation&&Object.assign(e,this.hyphenatation[xf]()),e}}class Um extends wg{constructor(e){super(Yg,"passwordEdit",!0),this.hScrollPolicy=Tf(e.hScrollPolicy,["auto","off","on"]),this.id=e.id||"",this.passwordChar=e.passwordChar||"*",this.use=e.use||"",this.usehref=e.usehref||"",this.border=null,this.extras=null,this.margin=null}}class qm extends wg{constructor(e){super(Yg,"pattern",!0),this.id=e.id||"",this.type=Tf(e.type,["crossHatch","crossDiagonal","diagonalLeft","diagonalRight","horizontal","vertical"]),this.use=e.use||"",this.usehref=e.usehref||"",this.color=null,this.extras=null}[xf](e){e=e?e[xf]():"#FFFFFF";const t=this.color?this.color[xf]():"#000000",s="repeating-linear-gradient",a=`${e},${e} 5px,${t} 5px,${t} 10px`;switch(this.type){case"crossHatch":return`${s}(to top,${a}) ${s}(to right,${a})`;case"crossDiagonal":return`${s}(45deg,${a}) ${s}(-45deg,${a})`;case"diagonalLeft":return`${s}(45deg,${a})`;case"diagonalRight":return`${s}(-45deg,${a})`;case"horizontal":return`${s}(to top,${a})`;case"vertical":return`${s}(to right,${a})`}return""}}class jm extends Cg{constructor(e){super(Yg,"picture"),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||""}}class Hm extends wg{constructor(e){super(Yg,"proto",!0),this.appearanceFilter=new yg,this.arc=new yg,this.area=new yg,this.assist=new yg,this.barcode=new yg,this.bindItems=new yg,this.bookend=new yg,this.boolean=new yg,this.border=new yg,this.break=new yg,this.breakAfter=new yg,this.breakBefore=new yg,this.button=new yg,this.calculate=new yg,this.caption=new yg,this.certificate=new yg,this.certificates=new yg,this.checkButton=new yg,this.choiceList=new yg,this.color=new yg,this.comb=new yg,this.connect=new yg,this.contentArea=new yg,this.corner=new yg,this.date=new yg,this.dateTime=new yg,this.dateTimeEdit=new yg,this.decimal=new yg,this.defaultUi=new yg,this.desc=new yg,this.digestMethod=new yg,this.digestMethods=new yg,this.draw=new yg,this.edge=new yg,this.encoding=new yg,this.encodings=new yg,this.encrypt=new yg,this.encryptData=new yg,this.encryption=new yg,this.encryptionMethod=new yg,this.encryptionMethods=new yg,this.event=new yg,this.exData=new yg,this.exObject=new yg,this.exclGroup=new yg,this.execute=new yg,this.extras=new yg,this.field=new yg,this.fill=new yg,this.filter=new yg,this.float=new yg,this.font=new yg,this.format=new yg,this.handler=new yg,this.hyphenation=new yg,this.image=new yg,this.imageEdit=new yg,this.integer=new yg,this.issuers=new yg,this.items=new yg,this.keep=new yg,this.keyUsage=new yg,this.line=new yg,this.linear=new yg,this.lockDocument=new yg,this.manifest=new yg,this.margin=new yg,this.mdp=new yg,this.medium=new yg,this.message=new yg,this.numericEdit=new yg,this.occur=new yg,this.oid=new yg,this.oids=new yg,this.overflow=new yg,this.pageArea=new yg,this.pageSet=new yg,this.para=new yg,this.passwordEdit=new yg,this.pattern=new yg,this.picture=new yg,this.radial=new yg,this.reason=new yg,this.reasons=new yg,this.rectangle=new yg,this.ref=new yg,this.script=new yg,this.setProperty=new yg,this.signData=new yg,this.signature=new yg,this.signing=new yg,this.solid=new yg,this.speak=new yg,this.stipple=new yg,this.subform=new yg,this.subformSet=new yg,this.subjectDN=new yg,this.subjectDNs=new yg,this.submit=new yg,this.text=new yg,this.textEdit=new yg,this.time=new yg,this.timeStamp=new yg,this.toolTip=new yg,this.traversal=new yg,this.traverse=new yg,this.ui=new yg,this.validate=new yg,this.value=new yg,this.variables=new yg}}class $m extends wg{constructor(e){super(Yg,"radial",!0),this.id=e.id||"",this.type=Tf(e.type,["toEdge","toCenter"]),this.use=e.use||"",this.usehref=e.usehref||"",this.color=null,this.extras=null}[xf](e){e=e?e[xf]():"#FFFFFF";const t=this.color?this.color[xf]():"#000000";return`radial-gradient(circle at center, ${"toEdge"===this.type?`${e},${t}`:`${t},${e}`})`}}class zm extends Cg{constructor(e){super(Yg,"reason"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class Gm extends wg{constructor(e){super(Yg,"reasons",!0),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||"",this.reason=new yg}}class Wm extends wg{constructor(e){super(Yg,"rectangle",!0),this.hand=Tf(e.hand,["even","left","right"]),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.corner=new yg(4),this.edge=new yg(4),this.fill=null}[wf](){const e=this.edge.children.length?this.edge.children[0]:new Xp({}),t=e[xf](),s=Object.create(null);"visible"===this.fill?.presence?Object.assign(s,this.fill[xf]()):s.fill="transparent",s.strokeWidth=Fg("visible"===e.presence?e.thickness:0),s.stroke=t.color;const a=(this.corner.children.length?this.corner.children[0]:new _p({}))[xf](),i={name:"svg",children:[{name:"rect",attributes:{xmlns:Jg,width:"100%",height:"100%",x:0,y:0,rx:a.radius,ry:a.radius,style:s}}],attributes:{xmlns:Jg,style:{overflow:"visible"},width:"100%",height:"100%"}};return sp(this[Pd]()[Pd]())?Of.success({name:"div",attributes:{style:{display:"inline",width:"100%",height:"100%"}},children:[i]}):(i.attributes.style.position="absolute",Of.success(i))}}class Vm extends Cg{constructor(e){super(Yg,"ref"),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||""}}class Xm extends Cg{constructor(e){super(Yg,"script"),this.binding=e.binding||"",this.contentType=e.contentType||"",this.id=e.id||"",this.name=e.name||"",this.runAt=Tf(e.runAt,["client","both","server"]),this.use=e.use||"",this.usehref=e.usehref||""}}class Km extends wg{constructor(e){super(Yg,"setProperty"),this.connection=e.connection||"",this.ref=e.ref||"",this.target=e.target||""}}class Ym extends wg{constructor(e){super(Yg,"signData",!0),this.id=e.id||"",this.operation=Tf(e.operation,["sign","clear","verify"]),this.ref=e.ref||"",this.target=e.target||"",this.use=e.use||"",this.usehref=e.usehref||"",this.filter=null,this.manifest=null}}class Jm extends wg{constructor(e){super(Yg,"signature",!0),this.id=e.id||"",this.type=Tf(e.type,["PDF1.3","PDF1.6"]),this.use=e.use||"",this.usehref=e.usehref||"",this.border=null,this.extras=null,this.filter=null,this.manifest=null,this.margin=null}}class Zm extends wg{constructor(e){super(Yg,"signing",!0),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||"",this.certificate=new yg}}class Qm extends wg{constructor(e){super(Yg,"solid",!0),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null}[xf](e){return e?e[xf]():"#FFFFFF"}}class eb extends Cg{constructor(e){super(Yg,"speak"),this.disable=Bf({data:e.disable,defaultValue:0,validate:e=>1===e}),this.id=e.id||"",this.priority=Tf(e.priority,["custom","caption","name","toolTip"]),this.rid=e.rid||"",this.use=e.use||"",this.usehref=e.usehref||""}}class tb extends wg{constructor(e){super(Yg,"stipple",!0),this.id=e.id||"",this.rate=Bf({data:e.rate,defaultValue:50,validate:e=>e>=0&&e<=100}),this.use=e.use||"",this.usehref=e.usehref||"",this.color=null,this.extras=null}[xf](e){const t=this.rate/100;return ms.makeHexColor(Math.round(e.value.r*(1-t)+this.value.r*t),Math.round(e.value.g*(1-t)+this.value.g*t),Math.round(e.value.b*(1-t)+this.value.b*t))}}class sb extends wg{constructor(e){super(Yg,"subform",!0),this.access=Tf(e.access,["open","nonInteractive","protected","readOnly"]),this.allowMacro=Bf({data:e.allowMacro,defaultValue:0,validate:e=>1===e}),this.anchorType=Tf(e.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]),this.colSpan=Bf({data:e.colSpan,defaultValue:1,validate:e=>e>=1||-1===e}),this.columnWidths=(e.columnWidths||"").trim().split(/\s+/).map(e=>"-1"===e?-1:Rf(e)),this.h=e.h?Rf(e.h):"",this.hAlign=Tf(e.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=e.id||"",this.layout=Tf(e.layout,["position","lr-tb","rl-row","rl-tb","row","table","tb"]),this.locale=e.locale||"",this.maxH=Rf(e.maxH,"0pt"),this.maxW=Rf(e.maxW,"0pt"),this.mergeMode=Tf(e.mergeMode,["consumeData","matchTemplate"]),this.minH=Rf(e.minH,"0pt"),this.minW=Rf(e.minW,"0pt"),this.name=e.name||"",this.presence=Tf(e.presence,["visible","hidden","inactive","invisible"]),this.relevant=Df(e.relevant),this.restoreState=Tf(e.restoreState,["manual","auto"]),this.scope=Tf(e.scope,["name","none"]),this.use=e.use||"",this.usehref=e.usehref||"",this.w=e.w?Rf(e.w):"",this.x=Rf(e.x,"0pt"),this.y=Rf(e.y,"0pt"),this.assist=null,this.bind=null,this.bookend=null,this.border=null,this.break=null,this.calculate=null,this.desc=null,this.extras=null,this.keep=null,this.margin=null,this.occur=null,this.overflow=null,this.pageSet=null,this.para=null,this.traversal=null,this.validate=null,this.variables=null,this.area=new yg,this.breakAfter=new yg,this.breakBefore=new yg,this.connect=new yg,this.draw=new yg,this.event=new yg,this.exObject=new yg,this.exclGroup=new yg,this.field=new yg,this.proto=new yg,this.setProperty=new yg,this.subform=new yg,this.subformSet=new yg}[Od](){const e=this[Pd]();return e instanceof ab?e[Od]():e}[$d](){return!0}[Xd](){return this.layout.endsWith("-tb")&&0===this[yd].attempt&&this[yd].numberInLine>0||this[Pd]()[Xd]()}*[Nd](){yield*ip(this)}[kd](){return Wg(this)}[cd](e,t){Vg(this,e,t)}[Cd](){return Xg(this)}[Vd](){const e=this[Od]();return!!e[Vd]()&&(void 0!==this[yd]._isSplittable?this[yd]._isSplittable:"position"===this.layout||this.layout.includes("row")||this.keep&&"none"!==this.keep.intact?(this[yd]._isSplittable=!1,!1):(!e.layout?.endsWith("-tb")||0===e[yd].numberInLine)&&(this[yd]._isSplittable=!0,!0))}[wf](e){if(rp(this),this.break){if("auto"!==this.break.after||""!==this.break.afterTarget){const e=new Sp({targetType:this.break.after,target:this.break.afterTarget,startNew:this.break.startNew.toString()});e[Ld]=this[Ld],this[ld](e),this.breakAfter.push(e)}if("auto"!==this.break.before||""!==this.break.beforeTarget){const e=new Ip({targetType:this.break.before,target:this.break.beforeTarget,startNew:this.break.startNew.toString()});e[Ld]=this[Ld],this[ld](e),this.breakBefore.push(e)}if(""!==this.break.overflowTarget){const e=new Pm({target:this.break.overflowTarget,leader:this.break.overflowLeader,trailer:this.break.overflowTrailer});e[Ld]=this[Ld],this[ld](e),this.overflow.push(e)}this[cf](this.break),this.break=null}if("hidden"===this.presence||"inactive"===this.presence)return Of.EMPTY;if((this.breakBefore.children.length>1||this.breakAfter.children.length>1)&&Zt("XFA - Several breakBefore or breakAfter in subforms: please file a bug."),this.breakBefore.children.length>=1){const e=this.breakBefore.children[0];if(dp(e))return Of.breakNode(e)}if(this[yd]?.afterBreakAfter)return Of.EMPTY;Og(this);const t=[],s={id:this[kf],class:[]};Ug(this,s.class),this[yd]||=Object.create(null),Object.assign(this[yd],{children:t,line:null,attributes:s,attempt:0,numberInLine:0,availableSpace:{width:Math.min(this.w||1/0,e.width),height:Math.min(this.h||1/0,e.height)},width:0,height:0,prevHeight:0,currentWidth:0});const a=this[Ed](),i=a[yd].noLayoutFailure,n=this[Vd]();if(n||hp(this),!Kg(this,e))return Of.FAILURE;const r=new Set(["area","draw","exclGroup","field","subform","subformSet"]);if(this.layout.includes("row")){const e=this[Od]().columnWidths;Array.isArray(e)&&e.length>0&&(this[yd].columnWidths=e,this[yd].currentColumn=0)}const o=Eg(this,"anchorType","dimensions","position","presence","border","margin","hAlign"),c=["xfaSubform"],l=Pg(this);if(l&&c.push(l),s.style=o,s.class=c,this.name&&(s.xfaName=this.name),this.overflow){const t=this.overflow[Md]();t.addLeader&&(t.addLeader=!1,fp(this,t.leader,e))}this[of]();const h="lr-tb"===this.layout||"rl-tb"===this.layout,u=h?2:1;for(;this[yd].attempt<u;this[yd].attempt++){h&&1===this[yd].attempt&&(this[yd].numberInLine=0);const e=this[hd]({filter:r,include:!0});if(e.success)break;if(e.isBreak())return this[rf](),e;if(h&&0===this[yd].attempt&&0===this[yd].numberInLine&&!a[yd].noLayoutFailure){this[yd].attempt=u;break}}if(this[rf](),n||up(this),a[yd].noLayoutFailure=i,this[yd].attempt===u)return this.overflow&&(this[Ed]()[yd].overflowNode=this.overflow),n||delete this[yd],Of.FAILURE;if(this.overflow){const t=this.overflow[Md]();t.addTrailer&&(t.addTrailer=!1,fp(this,t.trailer,e))}let d=0,f=0;this.margin&&(d=this.margin.leftInset+this.margin.rightInset,f=this.margin.topInset+this.margin.bottomInset);const g=Math.max(this[yd].width+d,this.w||0),p=Math.max(this[yd].height+f,this.h||0),m=[this.x,this.y,g,p];if(""===this.w&&(o.width=Fg(g)),""===this.h&&(o.height=Fg(p)),("0px"===o.width||"0px"===o.height)&&0===t.length)return Of.EMPTY;const b={name:"div",attributes:s,children:t};op(this,s);const w=Of.success(Lg(this,b),m);if(this.breakAfter.children.length>=1){const e=this.breakAfter.children[0];if(dp(e))return this[yd].afterBreakAfter=w,Of.breakNode(e)}return delete this[yd],w}}class ab extends wg{constructor(e){super(Yg,"subformSet",!0),this.id=e.id||"",this.name=e.name||"",this.relation=Tf(e.relation,["ordered","choice","unordered"]),this.relevant=Df(e.relevant),this.use=e.use||"",this.usehref=e.usehref||"",this.bookend=null,this.break=null,this.desc=null,this.extras=null,this.occur=null,this.overflow=null,this.breakAfter=new yg,this.breakBefore=new yg,this.subform=new yg,this.subformSet=new yg}*[Nd](){yield*ip(this)}[Od](){let e=this[Pd]();for(;!(e instanceof sb);)e=e[Pd]();return e}[$d](){return!0}}class ib extends vg{constructor(e){super(Yg,"subjectDN"),this.delimiter=e.delimiter||",",this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}[xd](){this[md]=new Map(this[md].split(this.delimiter).map(e=>((e=e.split("=",2))[0]=e[0].trim(),e)))}}class nb extends wg{constructor(e){super(Yg,"subjectDNs",!0),this.id=e.id||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||"",this.subjectDN=new yg}}class rb extends wg{constructor(e){super(Yg,"submit",!0),this.embedPDF=Bf({data:e.embedPDF,defaultValue:0,validate:e=>1===e}),this.format=Tf(e.format,["xdp","formdata","pdf","urlencoded","xfd","xml"]),this.id=e.id||"",this.target=e.target||"",this.textEncoding=Mf({data:e.textEncoding?e.textEncoding.toLowerCase():"",defaultValue:"",validate:e=>["utf-8","big-five","fontspecific","gbk","gb-18030","gb-2312","ksc-5601","none","shift-jis","ucs-2","utf-16"].includes(e)||e.match(/iso-8859-\d{2}/)}),this.use=e.use||"",this.usehref=e.usehref||"",this.xdpContent=e.xdpContent||"",this.encrypt=null,this.encryptData=new yg,this.signData=new yg}}class ob extends wg{constructor(e){super(Yg,"template",!0),this.baseProfile=Tf(e.baseProfile,["full","interactiveForms"]),this.extras=null,this.subform=new yg}[xd](){0===this.subform.children.length&&Zt("XFA - No subforms in template node."),this.subform.children.length>=2&&Zt("XFA - Several subforms in template node: please file a bug."),this[pf]=5e3}[Vd](){return!0}[uf](e,t){return e.startsWith("#")?[this[Ud].get(e.slice(1))]:Jf(this,t,e,!0,!0)}*[bf](){if(!this.subform.children.length)return Of.success({name:"div",children:[]});this[yd]={overflowNode:null,firstUnsplittable:null,currentContentArea:null,currentPageArea:null,noLayoutFailure:!1,pageNumber:1,pagePosition:"first",oddOrEven:"odd",blankOrNotBlank:"nonBlank",paraStack:[]};const e=this.subform.children[0];e.pageSet[dd]();const t=e.pageSet.pageArea.children,s={name:"div",children:[]};let a=null,i=null,n=null;if(e.breakBefore.children.length>=1?(i=e.breakBefore.children[0],n=i.target):e.subform.children.length>=1&&e.subform.children[0].breakBefore.children.length>=1?(i=e.subform.children[0].breakBefore.children[0],n=i.target):e.break?.beforeTarget?(i=e.break,n=i.beforeTarget):e.subform.children.length>=1&&e.subform.children[0].break?.beforeTarget&&(i=e.subform.children[0].break,n=i.beforeTarget),i){const e=this[uf](n,i[Pd]());e instanceof Em&&(a=e,i[yd]={})}a||=t[0],a[yd]={numberOfUse:1};const r=a[Pd]();r[yd]={numberOfUse:1,pageIndex:r.pageArea.children.indexOf(a),pageSetIndex:0};let o,c=null,l=null,h=!0,u=0,d=0;for(;;){if(h)u=0;else if(s.children.pop(),3===++u)return Zt("XFA - Something goes wrong: please file a bug."),s;o=null,this[yd].currentPageArea=a;const t=a[wf]().html;s.children.push(t),c&&(this[yd].noLayoutFailure=!0,t.children.push(c[wf](a[yd].space).html),c=null),l&&(this[yd].noLayoutFailure=!0,t.children.push(l[wf](a[yd].space).html),l=null);const i=a.contentArea.children,n=t.children.filter(e=>e.attributes.class.includes("xfaContentarea"));h=!1,this[yd].firstUnsplittable=null,this[yd].noLayoutFailure=!1;const r=t=>{const s=e[kd]();s&&(h||=s.children?.length>0,n[t].children.push(s))};for(let a=d,u=i.length;a<u;a++){const t=this[yd].currentContentArea=i[a],u={width:t.w,height:t.h};d=0,c&&(n[a].children.push(c[wf](u).html),c=null),l&&(n[a].children.push(l[wf](u).html),l=null);const f=e[wf](u);if(f.success)return f.html?(h||=f.html.children?.length>0,n[a].children.push(f.html)):!h&&s.children.length>1&&s.children.pop(),s;if(f.isBreak()){const e=f.breakNode;if(r(a),"auto"===e.targetType)continue;e.leader&&(c=this[uf](e.leader,e[Pd]()),c=c?c[0]:null),e.trailer&&(l=this[uf](e.trailer,e[Pd]()),l=l?l[0]:null),"pageArea"===e.targetType?(o=e[yd].target,a=1/0):e[yd].target?(o=e[yd].target,d=e[yd].index+1,a=1/0):a=e[yd].index;continue}if(this[yd].overflowNode){const e=this[yd].overflowNode;this[yd].overflowNode=null;const t=e[Md](),s=t.target;t.addLeader=null!==t.leader,t.addTrailer=null!==t.trailer,r(a);const n=a;if(a=1/0,s instanceof Em)o=s;else if(s instanceof Lp){const e=i.indexOf(s);-1!==e?e>n?a=e-1:d=e:(o=s[Pd](),d=o.contentArea.children.indexOf(s))}continue}r(a)}this[yd].pageNumber+=1,o&&(o[Yd]()?o[yd].numberOfUse+=1:o=null),a=o||a[Dd](),yield null}}}class cb extends vg{constructor(e){super(Yg,"text"),this.id=e.id||"",this.maxChars=Bf({data:e.maxChars,defaultValue:0,validate:e=>e>=0}),this.name=e.name||"",this.rid=e.rid||"",this.use=e.use||"",this.usehref=e.usehref||""}[od](){return!0}[tf](e){return e[Zd]===Af.xhtml.id?(this[md]=e,!0):(Zt(`XFA - Invalid content in Text: ${e[Qd]}.`),!1)}[af](e){this[md]instanceof wg||super[af](e)}[xd](){"string"==typeof this[md]&&(this[md]=this[md].replaceAll("\r\n","\n"))}[Md](){return"string"==typeof this[md]?this[md].split(/[\u2029\u2028\n]/).filter(e=>!!e).join("\n"):this[md][mf]()}[wf](e){if("string"==typeof this[md]){const e=lp(this[md]).html;return this[md].includes("\u2029")?(e.name="div",e.children=[],this[md].split("\u2029").map(e=>e.split(/[\u2028\n]/).flatMap(e=>[{name:"span",value:e},{name:"br"}])).forEach(t=>{e.children.push({name:"p",children:t})})):/[\u2028\n]/.test(this[md])&&(e.name="div",e.children=[],this[md].split(/[\u2028\n]/).forEach(t=>{e.children.push({name:"span",value:t},{name:"br"})})),Of.success(e)}return this[md][wf](e)}}class lb extends wg{constructor(e){super(Yg,"textEdit",!0),this.allowRichText=Bf({data:e.allowRichText,defaultValue:0,validate:e=>1===e}),this.hScrollPolicy=Tf(e.hScrollPolicy,["auto","off","on"]),this.id=e.id||"",this.multiLine=Bf({data:e.multiLine,defaultValue:"",validate:e=>0===e||1===e}),this.use=e.use||"",this.usehref=e.usehref||"",this.vScrollPolicy=Tf(e.vScrollPolicy,["auto","off","on"]),this.border=null,this.comb=null,this.extras=null,this.margin=null}[wf](e){const t=Eg(this,"border","font","margin");let s;const a=this[Pd]()[Pd]();return""===this.multiLine&&(this.multiLine=a instanceof Vp?1:0),s=1===this.multiLine?{name:"textarea",attributes:{dataId:a[bd]?.[kf]||a[kf],fieldId:a[kf],class:["xfaTextfield"],style:t,"aria-label":cp(a),"aria-required":!1}}:{name:"input",attributes:{type:"text",dataId:a[bd]?.[kf]||a[kf],fieldId:a[kf],class:["xfaTextfield"],style:t,"aria-label":cp(a),"aria-required":!1}},np(a)&&(s.attributes["aria-required"]=!0,s.attributes.required=!0),Of.success({name:"label",attributes:{class:["xfaLabel"]},children:[s]})}}class hb extends Cg{constructor(e){super(Yg,"time"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}[xd](){const e=this[md].trim();this[md]=e?new Date(e):null}[wf](e){return lp(this[md]?this[md].toString():"")}}class ub extends wg{constructor(e){super(Yg,"timeStamp"),this.id=e.id||"",this.server=e.server||"",this.type=Tf(e.type,["optional","required"]),this.use=e.use||"",this.usehref=e.usehref||""}}class db extends Cg{constructor(e){super(Yg,"toolTip"),this.id=e.id||"",this.rid=e.rid||"",this.use=e.use||"",this.usehref=e.usehref||""}}class fb extends wg{constructor(e){super(Yg,"traversal",!0),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.traverse=new yg}}class gb extends wg{constructor(e){super(Yg,"traverse",!0),this.id=e.id||"",this.operation=Tf(e.operation,["next","back","down","first","left","right","up"]),this.ref=e.ref||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.script=null}get name(){return this.operation}[Kd](){return!1}}class pb extends wg{constructor(e){super(Yg,"ui",!0),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.picture=null,this.barcode=null,this.button=null,this.checkButton=null,this.choiceList=null,this.dateTimeEdit=null,this.defaultUi=null,this.imageEdit=null,this.numericEdit=null,this.passwordEdit=null,this.signature=null,this.textEdit=null}[Md](){if(void 0===this[yd]){for(const e of Object.getOwnPropertyNames(this)){if("extras"===e||"picture"===e)continue;const t=this[e];if(t instanceof wg)return this[yd]=t,t}this[yd]=null}return this[yd]}[wf](e){const t=this[Md]();return t?t[wf](e):Of.EMPTY}}class mb extends wg{constructor(e){super(Yg,"validate",!0),this.formatTest=Tf(e.formatTest,["warning","disabled","error"]),this.id=e.id||"",this.nullTest=Tf(e.nullTest,["disabled","error","warning"]),this.scriptTest=Tf(e.scriptTest,["error","disabled","warning"]),this.use=e.use||"",this.usehref=e.usehref||"",this.extras=null,this.message=null,this.picture=null,this.script=null}}class bb extends wg{constructor(e){super(Yg,"value",!0),this.id=e.id||"",this.override=Bf({data:e.override,defaultValue:0,validate:e=>1===e}),this.relevant=Df(e.relevant),this.use=e.use||"",this.usehref=e.usehref||"",this.arc=null,this.boolean=null,this.date=null,this.dateTime=null,this.decimal=null,this.exData=null,this.float=null,this.image=null,this.integer=null,this.line=null,this.rectangle=null,this.text=null,this.time=null}[gf](e){const t=this[Pd]();if(t instanceof cm&&t.ui?.imageEdit)return this.image||(this.image=new mm({}),this[ld](this.image)),void(this.image[md]=e[md]);const s=e[Qd];if(null===this[s]){for(const e of Object.getOwnPropertyNames(this)){const t=this[e];t instanceof wg&&(this[e]=null,this[cf](t))}this[e[Qd]]=e,this[ld](e)}else this[s][md]=e[md]}[mf](){if(this.exData)return"string"==typeof this.exData[md]?this.exData[md].trim():this.exData[md][mf]().trim();for(const e of Object.getOwnPropertyNames(this)){if("image"===e)continue;const t=this[e];if(t instanceof wg)return(t[md]||"").toString().trim()}return null}[wf](e){for(const t of Object.getOwnPropertyNames(this)){const s=this[t];if(s instanceof wg)return s[wf](e)}return Of.EMPTY}}class wb extends wg{constructor(e){super(Yg,"variables",!0),this.id=e.id||"",this.use=e.use||"",this.usehref=e.usehref||"",this.boolean=new yg,this.date=new yg,this.dateTime=new yg,this.decimal=new yg,this.exData=new yg,this.float=new yg,this.image=new yg,this.integer=new yg,this.manifest=new yg,this.script=new yg,this.text=new yg,this.time=new yg}[Kd](){return!0}}class yb{static[vf](e,t){if(yb.hasOwnProperty(e)){const s=yb[e](t);return s[ff](t),s}}static appearanceFilter(e){return new gp(e)}static arc(e){return new pp(e)}static area(e){return new mp(e)}static assist(e){return new bp(e)}static barcode(e){return new wp(e)}static bind(e){return new yp(e)}static bindItems(e){return new xp(e)}static bookend(e){return new kp(e)}static boolean(e){return new vp(e)}static border(e){return new Ap(e)}static break(e){return new Cp(e)}static breakAfter(e){return new Sp(e)}static breakBefore(e){return new Ip(e)}static button(e){return new Bp(e)}static calculate(e){return new Fp(e)}static caption(e){return new Mp(e)}static certificate(e){return new Tp(e)}static certificates(e){return new Rp(e)}static checkButton(e){return new Np(e)}static choiceList(e){return new Dp(e)}static color(e){return new Op(e)}static comb(e){return new Pp(e)}static connect(e){return new Ep(e)}static contentArea(e){return new Lp(e)}static corner(e){return new _p(e)}static date(e){return new Up(e)}static dateTime(e){return new qp(e)}static dateTimeEdit(e){return new jp(e)}static decimal(e){return new Hp(e)}static defaultUi(e){return new $p(e)}static desc(e){return new zp(e)}static digestMethod(e){return new Gp(e)}static digestMethods(e){return new Wp(e)}static draw(e){return new Vp(e)}static edge(e){return new Xp(e)}static encoding(e){return new Kp(e)}static encodings(e){return new Yp(e)}static encrypt(e){return new Jp(e)}static encryptData(e){return new Zp(e)}static encryption(e){return new Qp(e)}static encryptionMethod(e){return new em(e)}static encryptionMethods(e){return new tm(e)}static event(e){return new sm(e)}static exData(e){return new am(e)}static exObject(e){return new im(e)}static exclGroup(e){return new nm(e)}static execute(e){return new rm(e)}static extras(e){return new om(e)}static field(e){return new cm(e)}static fill(e){return new lm(e)}static filter(e){return new hm(e)}static float(e){return new um(e)}static font(e){return new dm(e)}static format(e){return new fm(e)}static handler(e){return new gm(e)}static hyphenation(e){return new pm(e)}static image(e){return new mm(e)}static imageEdit(e){return new bm(e)}static integer(e){return new wm(e)}static issuers(e){return new ym(e)}static items(e){return new xm(e)}static keep(e){return new km(e)}static keyUsage(e){return new vm(e)}static line(e){return new Am(e)}static linear(e){return new Cm(e)}static lockDocument(e){return new Sm(e)}static manifest(e){return new Im(e)}static margin(e){return new Bm(e)}static mdp(e){return new Fm(e)}static medium(e){return new Mm(e)}static message(e){return new Tm(e)}static numericEdit(e){return new Rm(e)}static occur(e){return new Nm(e)}static oid(e){return new Dm(e)}static oids(e){return new Om(e)}static overflow(e){return new Pm(e)}static pageArea(e){return new Em(e)}static pageSet(e){return new Lm(e)}static para(e){return new _m(e)}static passwordEdit(e){return new Um(e)}static pattern(e){return new qm(e)}static picture(e){return new jm(e)}static proto(e){return new Hm(e)}static radial(e){return new $m(e)}static reason(e){return new zm(e)}static reasons(e){return new Gm(e)}static rectangle(e){return new Wm(e)}static ref(e){return new Vm(e)}static script(e){return new Xm(e)}static setProperty(e){return new Km(e)}static signData(e){return new Ym(e)}static signature(e){return new Jm(e)}static signing(e){return new Zm(e)}static solid(e){return new Qm(e)}static speak(e){return new eb(e)}static stipple(e){return new tb(e)}static subform(e){return new sb(e)}static subformSet(e){return new ab(e)}static subjectDN(e){return new ib(e)}static subjectDNs(e){return new nb(e)}static submit(e){return new rb(e)}static template(e){return new ob(e)}static text(e){return new cb(e)}static textEdit(e){return new lb(e)}static time(e){return new hb(e)}static timeStamp(e){return new ub(e)}static toolTip(e){return new db(e)}static traversal(e){return new fb(e)}static traverse(e){return new gb(e)}static ui(e){return new pb(e)}static validate(e){return new mb(e)}static value(e){return new bb(e)}static variables(e){return new wb(e)}}const xb=Af.datasets.id;function kb(e){const t=new cb({});return t[md]=e,t}class vb{constructor(e){this.root=e,this.datasets=e.datasets,this.data=e.datasets?.data||new kg(Af.datasets.id,"data"),this.emptyMerge=0===this.data[Rd]().length,this.root.form=this.form=e.template[gd]()}_isConsumeData(){return!this.emptyMerge&&this._mergeMode}_isMatchTemplate(){return!this._isConsumeData()}bind(){return this._bindElement(this.form,this.data),this.form}getData(){return this.data}_bindValue(e,t,s){if(e[bd]=t,e[_d]())if(t[zd]()){const s=t[Fd]();e[gf](kb(s))}else if(e instanceof cm&&"multiSelect"===e.ui?.choiceList?.open){const s=t[Rd]().map(e=>e[md].trim()).join("\n");e[gf](kb(s))}else this._isConsumeData()&&Zt("XFA - Nodes haven't the same type.");else!t[zd]()||this._isMatchTemplate()?this._bindElement(e,t):Zt("XFA - Nodes haven't the same type.")}_findDataByNameToConsume(e,t,s,a){if(!e)return null;let i,n;for(let r=0;r<3;r++){for(i=s[Td](e,!1,!0);;){if(n=i.next().value,!n)break;if(t===n[zd]())return n}if(s[Zd]===Af.datasets.id&&"data"===s[Qd])break;s=s[Pd]()}return a?(i=this.data[Td](e,!0,!1),n=i.next().value,n||(i=this.data[vd](e,!0),n=i.next().value,n?.[zd]()?n:null)):null}_setProperties(e,t){if(e.hasOwnProperty("setProperty"))for(const{ref:s,target:a,connection:i}of e.setProperty.children){if(i)continue;if(!s)continue;const n=Jf(this.root,t,s,!1,!1);if(!n){Zt(`XFA - Invalid reference: ${s}.`);continue}const[r]=n;if(!r[Gd](this.data)){Zt("XFA - Invalid node: must be a data node.");continue}const o=Jf(this.root,e,a,!1,!1);if(!o){Zt(`XFA - Invalid target: ${a}.`);continue}const[c]=o;if(!c[Gd](e)){Zt("XFA - Invalid target: must be a property or subproperty.");continue}const l=c[Pd]();if(c instanceof Km||l instanceof Km){Zt("XFA - Invalid target: cannot be a setProperty or one of its properties.");continue}if(c instanceof xp||l instanceof xp){Zt("XFA - Invalid target: cannot be a bindItems or one of its properties.");continue}const h=r[mf](),u=c[Qd];if(c instanceof xg){const e=Object.create(null);e[u]=h;const t=Reflect.construct(Object.getPrototypeOf(l).constructor,[e]);l[u]=t[u];continue}c.hasOwnProperty(md)?(c[bd]=r,c[md]=h,c[xd]()):Zt("XFA - Invalid node to use in setProperty")}}_bindItems(e,t){if(!e.hasOwnProperty("items")||!e.hasOwnProperty("bindItems")||e.bindItems.isEmpty())return;for(const i of e.items.children)e[cf](i);e.items.clear();const s=new xm({}),a=new xm({});e[ld](s),e.items.push(s),e[ld](a),e.items.push(a);for(const{ref:i,labelRef:n,valueRef:r,connection:o}of e.bindItems.children){if(o)continue;if(!i)continue;const e=Jf(this.root,t,i,!1,!1);if(e)for(const t of e){if(!t[Gd](this.datasets)){Zt(`XFA - Invalid ref (${i}): must be a datasets child.`);continue}const e=Jf(this.root,t,n,!0,!1);if(!e){Zt(`XFA - Invalid label: ${n}.`);continue}const[o]=e;if(!o[Gd](this.datasets)){Zt("XFA - Invalid label: must be a datasets child.");continue}const c=Jf(this.root,t,r,!0,!1);if(!c){Zt(`XFA - Invalid value: ${r}.`);continue}const[l]=c;if(!l[Gd](this.datasets)){Zt("XFA - Invalid value: must be a datasets child.");continue}const h=kb(o[mf]()),u=kb(l[mf]());s[ld](h),s.text.push(h),a[ld](u),a.text.push(u)}else Zt(`XFA - Invalid reference: ${i}.`)}}_bindOccurrences(e,t,s){let a;if(t.length>1&&(a=e[gd](),a[cf](a.occur),a.occur=null),this._bindValue(e,t[0],s),this._setProperties(e,t[0]),this._bindItems(e,t[0]),1===t.length)return;const i=e[Pd](),n=e[Qd],r=i[qd](e);for(let o=1,c=t.length;o<c;o++){const e=t[o],c=a[gd]();i[n].push(c),i[jd](r+o,c),this._bindValue(c,e,s),this._setProperties(c,e),this._bindItems(c,e)}}_createOccurrences(e){if(!this.emptyMerge)return;const{occur:t}=e;if(!t||t.initial<=1)return;const s=e[Pd](),a=e[Qd];if(!(s[a]instanceof yg))return;let i;i=e.name?s[a].children.filter(t=>t.name===e.name).length:s[a].children.length;const n=s[qd](e)+1,r=t.initial-i;if(r){const t=e[gd]();t[cf](t.occur),t.occur=null,s[a].push(t),s[jd](n,t);for(let e=1;e<r;e++){const i=t[gd]();s[a].push(i),s[jd](n+e,i)}}}_getOccurInfo(e){const{name:t,occur:s}=e;if(!s||!t)return[1,1];const a=-1===s.max?1/0:s.max;return[s.min,a]}_setAndBind(e,t){this._setProperties(e,t),this._bindItems(e,t),this._bindElement(e,t)}_bindElement(e,t){const s=[];this._createOccurrences(e);for(const a of e[Rd]()){if(a[bd])continue;if(void 0===this._mergeMode&&"subform"===a[Qd]){this._mergeMode="consumeData"===a.mergeMode;const e=t[Rd]();if(e.length>0)this._bindOccurrences(a,[e[0]],null);else if(this.emptyMerge){const e=t[Zd]===xb?-1:t[Zd],s=a[bd]=new kg(e,a.name||"root");t[ld](s),this._bindElement(a,s)}continue}if(!a[$d]())continue;let e=!1,i=null,n=null,r=null;if(a.bind){switch(a.bind.match){case"none":this._setAndBind(a,t);continue;case"global":e=!0;break;case"dataRef":if(!a.bind.ref){Zt(`XFA - ref is empty in node ${a[Qd]}.`),this._setAndBind(a,t);continue}n=a.bind.ref}a.bind.picture&&(i=a.bind.picture[md])}const[o,c]=this._getOccurInfo(a);if(n){if(r=Jf(this.root,t,n,!0,!1),null===r){if(r=Zf(this.data,t,n),!r)continue;this._isConsumeData()&&(r[pd]=!0),this._setAndBind(a,r);continue}this._isConsumeData()&&(r=r.filter(e=>!e[pd])),r.length>c?r=r.slice(0,c):0===r.length&&(r=null),r&&this._isConsumeData()&&r.forEach(e=>{e[pd]=!0})}else{if(!a.name){this._setAndBind(a,t);continue}if(this._isConsumeData()){const s=[];for(;s.length<c;){const i=this._findDataByNameToConsume(a.name,a[_d](),t,e);if(!i)break;i[pd]=!0,s.push(i)}r=s.length>0?s:null}else{if(r=t[Td](a.name,!1,this.emptyMerge).next().value,!r){if(0===o){s.push(a);continue}const e=t[Zd]===xb?-1:t[Zd];r=a[bd]=new kg(e,a.name),this.emptyMerge&&(r[pd]=!0),t[ld](r),this._setAndBind(a,r);continue}this.emptyMerge&&(r[pd]=!0),r=[r]}}r?this._bindOccurrences(a,r,i):o>0?this._setAndBind(a,t):s.push(a)}s.forEach(e=>e[Pd]()[cf](e))}}class Ab{constructor(e,t){this.data=t,this.dataset=e.datasets||null}serialize(e){const t=[[-1,this.data[Rd]()]];for(;t.length>0;){const s=t.at(-1),[a,i]=s;if(a+1===i.length){t.pop();continue}const n=i[++s[0]],r=e.get(n[kf]);if(r)n[gf](r);else{const t=n[Ad]();for(const s of t.values()){const t=e.get(s[kf]);if(t){s[gf](t);break}}}const o=n[Rd]();o.length>0&&t.push([-1,o])}const s=['<xfa:datasets xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/">'];if(this.dataset)for(const a of this.dataset[Rd]())"data"!==a[Qd]&&a[yf](s);return this.data[yf](s),s.push("</xfa:datasets>"),s.join("")}}const Cb=Af.config.id;class Sb extends wg{constructor(e){super(Cb,"acrobat",!0),this.acrobat7=null,this.autoSave=null,this.common=null,this.validate=null,this.validateApprovalSignatures=null,this.submitUrl=new yg}}class Ib extends wg{constructor(e){super(Cb,"acrobat7",!0),this.dynamicRender=null}}class Bb extends Ag{constructor(e){super(Cb,"ADBE_JSConsole",["delegate","Enable","Disable"])}}class Fb extends Ag{constructor(e){super(Cb,"ADBE_JSDebugger",["delegate","Enable","Disable"])}}class Mb extends Ig{constructor(e){super(Cb,"addSilentPrint")}}class Tb extends Ig{constructor(e){super(Cb,"addViewerPreferences")}}class Rb extends Bg{constructor(e){super(Cb,"adjustData")}}class Nb extends Sg{constructor(e){super(Cb,"adobeExtensionLevel",0,e=>e>=1&&e<=8)}}class Db extends wg{constructor(e){super(Cb,"agent",!0),this.name=e.name?e.name.trim():"",this.common=new yg}}class Ob extends vg{constructor(e){super(Cb,"alwaysEmbed")}}class Pb extends Cg{constructor(e){super(Cb,"amd")}}class Eb extends wg{constructor(e){super(Cb,"area"),this.level=Bf({data:e.level,defaultValue:0,validate:e=>e>=1&&e<=3}),this.name=Tf(e.name,["","barcode","coreinit","deviceDriver","font","general","layout","merge","script","signature","sourceSet","templateCache"])}}class Lb extends Ag{constructor(e){super(Cb,"attributes",["preserve","delegate","ignore"])}}class _b extends Ag{constructor(e){super(Cb,"autoSave",["disabled","enabled"])}}class Ub extends Cg{constructor(e){super(Cb,"base")}}class qb extends wg{constructor(e){super(Cb,"batchOutput"),this.format=Tf(e.format,["none","concat","zip","zipCompress"])}}class jb extends vg{constructor(e){super(Cb,"behaviorOverride")}[xd](){this[md]=new Map(this[md].trim().split(/\s+/).filter(e=>e.includes(":")).map(e=>e.split(":",2)))}}class Hb extends wg{constructor(e){super(Cb,"cache",!0),this.templateCache=null}}class $b extends Ig{constructor(e){super(Cb,"change")}}class zb extends wg{constructor(e){super(Cb,"common",!0),this.data=null,this.locale=null,this.localeSet=null,this.messaging=null,this.suppressBanner=null,this.template=null,this.validationMessaging=null,this.versionControl=null,this.log=new yg}}class Gb extends wg{constructor(e){super(Cb,"compress"),this.scope=Tf(e.scope,["imageOnly","document"])}}class Wb extends Ig{constructor(e){super(Cb,"compressLogicalStructure")}}class Vb extends Bg{constructor(e){super(Cb,"compressObjectStream")}}class Xb extends wg{constructor(e){super(Cb,"compression",!0),this.compressLogicalStructure=null,this.compressObjectStream=null,this.level=null,this.type=null}}class Kb extends wg{constructor(e){super(Cb,"config",!0),this.acrobat=null,this.present=null,this.trace=null,this.agent=new yg}}class Yb extends Ag{constructor(e){super(Cb,"conformance",["A","B"])}}class Jb extends Ig{constructor(e){super(Cb,"contentCopy")}}class Zb extends Sg{constructor(e){super(Cb,"copies",1,e=>e>=1)}}class Qb extends Cg{constructor(e){super(Cb,"creator")}}class ew extends Sg{constructor(e){super(Cb,"currentPage",0,e=>e>=0)}}class tw extends wg{constructor(e){super(Cb,"data",!0),this.adjustData=null,this.attributes=null,this.incrementalLoad=null,this.outputXSL=null,this.range=null,this.record=null,this.startNode=null,this.uri=null,this.window=null,this.xsl=null,this.excludeNS=new yg,this.transform=new yg}}class sw extends wg{constructor(e){super(Cb,"debug",!0),this.uri=null}}class aw extends vg{constructor(e){super(Cb,"defaultTypeface"),this.writingScript=Tf(e.writingScript,["*","Arabic","Cyrillic","EastEuropeanRoman","Greek","Hebrew","Japanese","Korean","Roman","SimplifiedChinese","Thai","TraditionalChinese","Vietnamese"])}}class iw extends Ag{constructor(e){super(Cb,"destination",["pdf","pcl","ps","webClient","zpl"])}}class nw extends Ig{constructor(e){super(Cb,"documentAssembly")}}class rw extends wg{constructor(e){super(Cb,"driver",!0),this.name=e.name?e.name.trim():"",this.fontInfo=null,this.xdc=null}}class ow extends Ag{constructor(e){super(Cb,"duplexOption",["simplex","duplexFlipLongEdge","duplexFlipShortEdge"])}}class cw extends Ag{constructor(e){super(Cb,"dynamicRender",["forbidden","required"])}}class lw extends Ig{constructor(e){super(Cb,"embed")}}class hw extends Ig{constructor(e){super(Cb,"encrypt")}}class uw extends wg{constructor(e){super(Cb,"encryption",!0),this.encrypt=null,this.encryptionLevel=null,this.permissions=null}}class dw extends Ag{constructor(e){super(Cb,"encryptionLevel",["40bit","128bit"])}}class fw extends Cg{constructor(e){super(Cb,"enforce")}}class gw extends wg{constructor(e){super(Cb,"equate"),this.force=Bf({data:e.force,defaultValue:1,validate:e=>0===e}),this.from=e.from||"",this.to=e.to||""}}class pw extends wg{constructor(e){super(Cb,"equateRange"),this.from=e.from||"",this.to=e.to||"",this._unicodeRange=e.unicodeRange||""}get unicodeRange(){const e=[],t=/U\+([0-9a-fA-F]+)/,s=this._unicodeRange;for(let a of s.split(",").map(e=>e.trim()).filter(e=>!!e))a=a.split("-",2).map(e=>{const s=e.match(t);return s?parseInt(s[1],16):0}),1===a.length&&a.push(a[0]),e.push(a);return ss(this,"unicodeRange",e)}}class mw extends vg{constructor(e){super(Cb,"exclude")}[xd](){this[md]=this[md].trim().split(/\s+/).filter(e=>e&&["calculate","close","enter","exit","initialize","ready","validate"].includes(e))}}class bw extends Cg{constructor(e){super(Cb,"excludeNS")}}class ww extends Ag{constructor(e){super(Cb,"flipLabel",["usePrinterSetting","on","off"])}}class yw extends wg{constructor(e){super(Cb,"fontInfo",!0),this.embed=null,this.map=null,this.subsetBelow=null,this.alwaysEmbed=new yg,this.defaultTypeface=new yg,this.neverEmbed=new yg}}class xw extends Ig{constructor(e){super(Cb,"formFieldFilling")}}class kw extends Cg{constructor(e){super(Cb,"groupParent")}}class vw extends Ag{constructor(e){super(Cb,"ifEmpty",["dataValue","dataGroup","ignore","remove"])}}class Aw extends Cg{constructor(e){super(Cb,"includeXDPContent")}}class Cw extends Ag{constructor(e){super(Cb,"incrementalLoad",["none","forwardOnly"])}}class Sw extends Ig{constructor(e){super(Cb,"incrementalMerge")}}class Iw extends Ig{constructor(e){super(Cb,"interactive")}}class Bw extends Ag{constructor(e){super(Cb,"jog",["usePrinterSetting","none","pageSet"])}}class Fw extends wg{constructor(e){super(Cb,"labelPrinter",!0),this.name=Tf(e.name,["zpl","dpl","ipl","tcpl"]),this.batchOutput=null,this.flipLabel=null,this.fontInfo=null,this.xdc=null}}class Mw extends Ag{constructor(e){super(Cb,"layout",["paginate","panel"])}}class Tw extends Sg{constructor(e){super(Cb,"level",0,e=>e>0)}}class Rw extends Ig{constructor(e){super(Cb,"linearized")}}class Nw extends Cg{constructor(e){super(Cb,"locale")}}class Dw extends Cg{constructor(e){super(Cb,"localeSet")}}class Ow extends wg{constructor(e){super(Cb,"log",!0),this.mode=null,this.threshold=null,this.to=null,this.uri=null}}class Pw extends wg{constructor(e){super(Cb,"map",!0),this.equate=new yg,this.equateRange=new yg}}class Ew extends wg{constructor(e){super(Cb,"mediumInfo",!0),this.map=null}}class Lw extends wg{constructor(e){super(Cb,"message",!0),this.msgId=null,this.severity=null}}class _w extends wg{constructor(e){super(Cb,"messaging",!0),this.message=new yg}}class Uw extends Ag{constructor(e){super(Cb,"mode",["append","overwrite"])}}class qw extends Ig{constructor(e){super(Cb,"modifyAnnots")}}class jw extends Sg{constructor(e){super(Cb,"msgId",1,e=>e>=1)}}class Hw extends Cg{constructor(e){super(Cb,"nameAttr")}}class $w extends vg{constructor(e){super(Cb,"neverEmbed")}}class zw extends Sg{constructor(e){super(Cb,"numberOfCopies",null,e=>e>=2&&e<=5)}}class Gw extends wg{constructor(e){super(Cb,"openAction",!0),this.destination=null}}class Ww extends wg{constructor(e){super(Cb,"output",!0),this.to=null,this.type=null,this.uri=null}}class Vw extends Cg{constructor(e){super(Cb,"outputBin")}}class Xw extends wg{constructor(e){super(Cb,"outputXSL",!0),this.uri=null}}class Kw extends Ag{constructor(e){super(Cb,"overprint",["none","both","draw","field"])}}class Yw extends Cg{constructor(e){super(Cb,"packets")}[xd](){"*"!==this[md]&&(this[md]=this[md].trim().split(/\s+/).filter(e=>["config","datasets","template","xfdf","xslt"].includes(e)))}}class Jw extends wg{constructor(e){super(Cb,"pageOffset"),this.x=Bf({data:e.x,defaultValue:"useXDCSetting",validate:e=>!0}),this.y=Bf({data:e.y,defaultValue:"useXDCSetting",validate:e=>!0})}}class Zw extends Cg{constructor(e){super(Cb,"pageRange")}[xd](){const e=this[md].trim().split(/\s+/).map(e=>parseInt(e,10)),t=[];for(let s=0,a=e.length;s<a;s+=2)t.push(e.slice(s,s+2));this[md]=t}}class Qw extends Ag{constructor(e){super(Cb,"pagination",["simplex","duplexShortEdge","duplexLongEdge"])}}class ey extends Ag{constructor(e){super(Cb,"paginationOverride",["none","forceDuplex","forceDuplexLongEdge","forceDuplexShortEdge","forceSimplex"])}}class ty extends Sg{constructor(e){super(Cb,"part",1,e=>!1)}}class sy extends wg{constructor(e){super(Cb,"pcl",!0),this.name=e.name||"",this.batchOutput=null,this.fontInfo=null,this.jog=null,this.mediumInfo=null,this.outputBin=null,this.pageOffset=null,this.staple=null,this.xdc=null}}class ay extends wg{constructor(e){super(Cb,"pdf",!0),this.name=e.name||"",this.adobeExtensionLevel=null,this.batchOutput=null,this.compression=null,this.creator=null,this.encryption=null,this.fontInfo=null,this.interactive=null,this.linearized=null,this.openAction=null,this.pdfa=null,this.producer=null,this.renderPolicy=null,this.scriptModel=null,this.silentPrint=null,this.submitFormat=null,this.tagged=null,this.version=null,this.viewerPreferences=null,this.xdc=null}}class iy extends wg{constructor(e){super(Cb,"pdfa",!0),this.amd=null,this.conformance=null,this.includeXDPContent=null,this.part=null}}class ny extends wg{constructor(e){super(Cb,"permissions",!0),this.accessibleContent=null,this.change=null,this.contentCopy=null,this.documentAssembly=null,this.formFieldFilling=null,this.modifyAnnots=null,this.plaintextMetadata=null,this.print=null,this.printHighQuality=null}}class ry extends Ig{constructor(e){super(Cb,"pickTrayByPDFSize")}}class oy extends Cg{constructor(e){super(Cb,"picture")}}class cy extends Ig{constructor(e){super(Cb,"plaintextMetadata")}}class ly extends Ag{constructor(e){super(Cb,"presence",["preserve","dissolve","dissolveStructure","ignore","remove"])}}class hy extends wg{constructor(e){super(Cb,"present",!0),this.behaviorOverride=null,this.cache=null,this.common=null,this.copies=null,this.destination=null,this.incrementalMerge=null,this.layout=null,this.output=null,this.overprint=null,this.pagination=null,this.paginationOverride=null,this.script=null,this.validate=null,this.xdp=null,this.driver=new yg,this.labelPrinter=new yg,this.pcl=new yg,this.pdf=new yg,this.ps=new yg,this.submitUrl=new yg,this.webClient=new yg,this.zpl=new yg}}class uy extends Ig{constructor(e){super(Cb,"print")}}class dy extends Ig{constructor(e){super(Cb,"printHighQuality")}}class fy extends Ag{constructor(e){super(Cb,"printScaling",["appdefault","noScaling"])}}class gy extends Cg{constructor(e){super(Cb,"printerName")}}class py extends Cg{constructor(e){super(Cb,"producer")}}class my extends wg{constructor(e){super(Cb,"ps",!0),this.name=e.name||"",this.batchOutput=null,this.fontInfo=null,this.jog=null,this.mediumInfo=null,this.outputBin=null,this.staple=null,this.xdc=null}}class by extends vg{constructor(e){super(Cb,"range")}[xd](){this[md]=this[md].split(",",2).map(e=>e.split("-").map(e=>parseInt(e.trim(),10))).filter(e=>e.every(e=>!isNaN(e))).map(e=>(1===e.length&&e.push(e[0]),e))}}class wy extends vg{constructor(e){super(Cb,"record")}[xd](){this[md]=this[md].trim();const e=parseInt(this[md],10);!isNaN(e)&&e>=0&&(this[md]=e)}}class yy extends vg{constructor(e){super(Cb,"relevant")}[xd](){this[md]=this[md].trim().split(/\s+/)}}class xy extends vg{constructor(e){super(Cb,"rename")}[xd](){this[md]=this[md].trim(),(this[md].toLowerCase().startsWith("xml")||new RegExp("[\\p{L}_][\\p{L}\\d._\\p{M}-]*","u").test(this[md]))&&Zt("XFA - Rename: invalid XFA name")}}class ky extends Ag{constructor(e){super(Cb,"renderPolicy",["server","client"])}}class vy extends Ag{constructor(e){super(Cb,"runScripts",["both","client","none","server"])}}class Ay extends wg{constructor(e){super(Cb,"script",!0),this.currentPage=null,this.exclude=null,this.runScripts=null}}class Cy extends Ag{constructor(e){super(Cb,"scriptModel",["XFA","none"])}}class Sy extends Ag{constructor(e){super(Cb,"severity",["ignore","error","information","trace","warning"])}}class Iy extends wg{constructor(e){super(Cb,"silentPrint",!0),this.addSilentPrint=null,this.printerName=null}}class By extends wg{constructor(e){super(Cb,"staple"),this.mode=Tf(e.mode,["usePrinterSetting","on","off"])}}class Fy extends Cg{constructor(e){super(Cb,"startNode")}}class My extends Sg{constructor(e){super(Cb,"startPage",0,e=>!0)}}class Ty extends Ag{constructor(e){super(Cb,"submitFormat",["html","delegate","fdf","xml","pdf"])}}class Ry extends Cg{constructor(e){super(Cb,"submitUrl")}}class Ny extends Sg{constructor(e){super(Cb,"subsetBelow",100,e=>e>=0&&e<=100)}}class Dy extends Ig{constructor(e){super(Cb,"suppressBanner")}}class Oy extends Ig{constructor(e){super(Cb,"tagged")}}class Py extends wg{constructor(e){super(Cb,"template",!0),this.base=null,this.relevant=null,this.startPage=null,this.uri=null,this.xsl=null}}class Ey extends Ag{constructor(e){super(Cb,"threshold",["trace","error","information","warning"])}}class Ly extends Ag{constructor(e){super(Cb,"to",["null","memory","stderr","stdout","system","uri"])}}class _y extends wg{constructor(e){super(Cb,"templateCache"),this.maxEntries=Bf({data:e.maxEntries,defaultValue:5,validate:e=>e>=0})}}class Uy extends wg{constructor(e){super(Cb,"trace",!0),this.area=new yg}}class qy extends wg{constructor(e){super(Cb,"transform",!0),this.groupParent=null,this.ifEmpty=null,this.nameAttr=null,this.picture=null,this.presence=null,this.rename=null,this.whitespace=null}}class jy extends Ag{constructor(e){super(Cb,"type",["none","ascii85","asciiHex","ccittfax","flate","lzw","runLength","native","xdp","mergedXDP"])}}class Hy extends Cg{constructor(e){super(Cb,"uri")}}class $y extends Ag{constructor(e){super(Cb,"validate",["preSubmit","prePrint","preExecute","preSave"])}}class zy extends vg{constructor(e){super(Cb,"validateApprovalSignatures")}[xd](){this[md]=this[md].trim().split(/\s+/).filter(e=>["docReady","postSign"].includes(e))}}class Gy extends Ag{constructor(e){super(Cb,"validationMessaging",["allMessagesIndividually","allMessagesTogether","firstMessageOnly","noMessages"])}}class Wy extends Ag{constructor(e){super(Cb,"version",["1.7","1.6","1.5","1.4","1.3","1.2"])}}class Vy extends wg{constructor(e){super(Cb,"VersionControl"),this.outputBelow=Tf(e.outputBelow,["warn","error","update"]),this.sourceAbove=Tf(e.sourceAbove,["warn","error"]),this.sourceBelow=Tf(e.sourceBelow,["update","maintain"])}}class Xy extends wg{constructor(e){super(Cb,"viewerPreferences",!0),this.ADBE_JSConsole=null,this.ADBE_JSDebugger=null,this.addViewerPreferences=null,this.duplexOption=null,this.enforce=null,this.numberOfCopies=null,this.pageRange=null,this.pickTrayByPDFSize=null,this.printScaling=null}}class Ky extends wg{constructor(e){super(Cb,"webClient",!0),this.name=e.name?e.name.trim():"",this.fontInfo=null,this.xdc=null}}class Yy extends Ag{constructor(e){super(Cb,"whitespace",["preserve","ltrim","normalize","rtrim","trim"])}}class Jy extends vg{constructor(e){super(Cb,"window")}[xd](){const e=this[md].split(",",2).map(e=>parseInt(e.trim(),10));e.some(e=>isNaN(e))?this[md]=[0,0]:(1===e.length&&e.push(e[0]),this[md]=e)}}class Zy extends wg{constructor(e){super(Cb,"xdc",!0),this.uri=new yg,this.xsl=new yg}}class Qy extends wg{constructor(e){super(Cb,"xdp",!0),this.packets=null}}class ex extends wg{constructor(e){super(Cb,"xsl",!0),this.debug=null,this.uri=null}}class tx extends wg{constructor(e){super(Cb,"zpl",!0),this.name=e.name?e.name.trim():"",this.batchOutput=null,this.flipLabel=null,this.fontInfo=null,this.xdc=null}}class sx{static[vf](e,t){if(sx.hasOwnProperty(e))return sx[e](t)}static acrobat(e){return new Sb(e)}static acrobat7(e){return new Ib(e)}static ADBE_JSConsole(e){return new Bb(e)}static ADBE_JSDebugger(e){return new Fb(e)}static addSilentPrint(e){return new Mb(e)}static addViewerPreferences(e){return new Tb(e)}static adjustData(e){return new Rb(e)}static adobeExtensionLevel(e){return new Nb(e)}static agent(e){return new Db(e)}static alwaysEmbed(e){return new Ob(e)}static amd(e){return new Pb(e)}static area(e){return new Eb(e)}static attributes(e){return new Lb(e)}static autoSave(e){return new _b(e)}static base(e){return new Ub(e)}static batchOutput(e){return new qb(e)}static behaviorOverride(e){return new jb(e)}static cache(e){return new Hb(e)}static change(e){return new $b(e)}static common(e){return new zb(e)}static compress(e){return new Gb(e)}static compressLogicalStructure(e){return new Wb(e)}static compressObjectStream(e){return new Vb(e)}static compression(e){return new Xb(e)}static config(e){return new Kb(e)}static conformance(e){return new Yb(e)}static contentCopy(e){return new Jb(e)}static copies(e){return new Zb(e)}static creator(e){return new Qb(e)}static currentPage(e){return new ew(e)}static data(e){return new tw(e)}static debug(e){return new sw(e)}static defaultTypeface(e){return new aw(e)}static destination(e){return new iw(e)}static documentAssembly(e){return new nw(e)}static driver(e){return new rw(e)}static duplexOption(e){return new ow(e)}static dynamicRender(e){return new cw(e)}static embed(e){return new lw(e)}static encrypt(e){return new hw(e)}static encryption(e){return new uw(e)}static encryptionLevel(e){return new dw(e)}static enforce(e){return new fw(e)}static equate(e){return new gw(e)}static equateRange(e){return new pw(e)}static exclude(e){return new mw(e)}static excludeNS(e){return new bw(e)}static flipLabel(e){return new ww(e)}static fontInfo(e){return new yw(e)}static formFieldFilling(e){return new xw(e)}static groupParent(e){return new kw(e)}static ifEmpty(e){return new vw(e)}static includeXDPContent(e){return new Aw(e)}static incrementalLoad(e){return new Cw(e)}static incrementalMerge(e){return new Sw(e)}static interactive(e){return new Iw(e)}static jog(e){return new Bw(e)}static labelPrinter(e){return new Fw(e)}static layout(e){return new Mw(e)}static level(e){return new Tw(e)}static linearized(e){return new Rw(e)}static locale(e){return new Nw(e)}static localeSet(e){return new Dw(e)}static log(e){return new Ow(e)}static map(e){return new Pw(e)}static mediumInfo(e){return new Ew(e)}static message(e){return new Lw(e)}static messaging(e){return new _w(e)}static mode(e){return new Uw(e)}static modifyAnnots(e){return new qw(e)}static msgId(e){return new jw(e)}static nameAttr(e){return new Hw(e)}static neverEmbed(e){return new $w(e)}static numberOfCopies(e){return new zw(e)}static openAction(e){return new Gw(e)}static output(e){return new Ww(e)}static outputBin(e){return new Vw(e)}static outputXSL(e){return new Xw(e)}static overprint(e){return new Kw(e)}static packets(e){return new Yw(e)}static pageOffset(e){return new Jw(e)}static pageRange(e){return new Zw(e)}static pagination(e){return new Qw(e)}static paginationOverride(e){return new ey(e)}static part(e){return new ty(e)}static pcl(e){return new sy(e)}static pdf(e){return new ay(e)}static pdfa(e){return new iy(e)}static permissions(e){return new ny(e)}static pickTrayByPDFSize(e){return new ry(e)}static picture(e){return new oy(e)}static plaintextMetadata(e){return new cy(e)}static presence(e){return new ly(e)}static present(e){return new hy(e)}static print(e){return new uy(e)}static printHighQuality(e){return new dy(e)}static printScaling(e){return new fy(e)}static printerName(e){return new gy(e)}static producer(e){return new py(e)}static ps(e){return new my(e)}static range(e){return new by(e)}static record(e){return new wy(e)}static relevant(e){return new yy(e)}static rename(e){return new xy(e)}static renderPolicy(e){return new ky(e)}static runScripts(e){return new vy(e)}static script(e){return new Ay(e)}static scriptModel(e){return new Cy(e)}static severity(e){return new Sy(e)}static silentPrint(e){return new Iy(e)}static staple(e){return new By(e)}static startNode(e){return new Fy(e)}static startPage(e){return new My(e)}static submitFormat(e){return new Ty(e)}static submitUrl(e){return new Ry(e)}static subsetBelow(e){return new Ny(e)}static suppressBanner(e){return new Dy(e)}static tagged(e){return new Oy(e)}static template(e){return new Py(e)}static templateCache(e){return new _y(e)}static threshold(e){return new Ey(e)}static to(e){return new Ly(e)}static trace(e){return new Uy(e)}static transform(e){return new qy(e)}static type(e){return new jy(e)}static uri(e){return new Hy(e)}static validate(e){return new $y(e)}static validateApprovalSignatures(e){return new zy(e)}static validationMessaging(e){return new Gy(e)}static version(e){return new Wy(e)}static versionControl(e){return new Vy(e)}static viewerPreferences(e){return new Xy(e)}static webClient(e){return new Ky(e)}static whitespace(e){return new Yy(e)}static window(e){return new Jy(e)}static xdc(e){return new Zy(e)}static xdp(e){return new Qy(e)}static xsl(e){return new ex(e)}static zpl(e){return new tx(e)}}const ax=Af.connectionSet.id;class ix extends wg{constructor(e){super(ax,"connectionSet",!0),this.wsdlConnection=new yg,this.xmlConnection=new yg,this.xsdConnection=new yg}}class nx extends wg{constructor(e){super(ax,"effectiveInputPolicy"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class rx extends wg{constructor(e){super(ax,"effectiveOutputPolicy"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class ox extends Cg{constructor(e){super(ax,"operation"),this.id=e.id||"",this.input=e.input||"",this.name=e.name||"",this.output=e.output||"",this.use=e.use||"",this.usehref=e.usehref||""}}class cx extends Cg{constructor(e){super(ax,"rootElement"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class lx extends Cg{constructor(e){super(ax,"soapAction"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class hx extends Cg{constructor(e){super(ax,"soapAddress"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class ux extends Cg{constructor(e){super(ax,"uri"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class dx extends Cg{constructor(e){super(ax,"wsdlAddress"),this.id=e.id||"",this.name=e.name||"",this.use=e.use||"",this.usehref=e.usehref||""}}class fx extends wg{constructor(e){super(ax,"wsdlConnection",!0),this.dataDescription=e.dataDescription||"",this.name=e.name||"",this.effectiveInputPolicy=null,this.effectiveOutputPolicy=null,this.operation=null,this.soapAction=null,this.soapAddress=null,this.wsdlAddress=null}}class gx extends wg{constructor(e){super(ax,"xmlConnection",!0),this.dataDescription=e.dataDescription||"",this.name=e.name||"",this.uri=null}}class px extends wg{constructor(e){super(ax,"xsdConnection",!0),this.dataDescription=e.dataDescription||"",this.name=e.name||"",this.rootElement=null,this.uri=null}}class mx{static[vf](e,t){if(mx.hasOwnProperty(e))return mx[e](t)}static connectionSet(e){return new ix(e)}static effectiveInputPolicy(e){return new nx(e)}static effectiveOutputPolicy(e){return new rx(e)}static operation(e){return new ox(e)}static rootElement(e){return new cx(e)}static soapAction(e){return new lx(e)}static soapAddress(e){return new hx(e)}static uri(e){return new ux(e)}static wsdlAddress(e){return new dx(e)}static wsdlConnection(e){return new fx(e)}static xmlConnection(e){return new gx(e)}static xsdConnection(e){return new px(e)}}const bx=Af.datasets.id;class wx extends kg{constructor(e){super(bx,"data",e)}[Wd](){return!0}}class yx extends wg{constructor(e){super(bx,"datasets",!0),this.data=null,this.Signature=null}[tf](e){const t=e[Qd];("data"===t&&e[Zd]===bx||"Signature"===t&&e[Zd]===Af.signature.id)&&(this[t]=e),this[ld](e)}}class xx{static[vf](e,t){if(xx.hasOwnProperty(e))return xx[e](t)}static datasets(e){return new yx(e)}static data(e){return new wx(e)}}const kx=Af.localeSet.id;class vx extends wg{constructor(e){super(kx,"calendarSymbols",!0),this.name="gregorian",this.dayNames=new yg(2),this.eraNames=null,this.meridiemNames=null,this.monthNames=new yg(2)}}class Ax extends Cg{constructor(e){super(kx,"currencySymbol"),this.name=Tf(e.name,["symbol","isoname","decimal"])}}class Cx extends wg{constructor(e){super(kx,"currencySymbols",!0),this.currencySymbol=new yg(3)}}class Sx extends Cg{constructor(e){super(kx,"datePattern"),this.name=Tf(e.name,["full","long","med","short"])}}class Ix extends wg{constructor(e){super(kx,"datePatterns",!0),this.datePattern=new yg(4)}}class Bx extends vg{constructor(e){super(kx,"dateTimeSymbols")}}class Fx extends Cg{constructor(e){super(kx,"day")}}class Mx extends wg{constructor(e){super(kx,"dayNames",!0),this.abbr=Bf({data:e.abbr,defaultValue:0,validate:e=>1===e}),this.day=new yg(7)}}class Tx extends Cg{constructor(e){super(kx,"era")}}class Rx extends wg{constructor(e){super(kx,"eraNames",!0),this.era=new yg(2)}}class Nx extends wg{constructor(e){super(kx,"locale",!0),this.desc=e.desc||"",this.name="isoname",this.calendarSymbols=null,this.currencySymbols=null,this.datePatterns=null,this.dateTimeSymbols=null,this.numberPatterns=null,this.numberSymbols=null,this.timePatterns=null,this.typeFaces=null}}class Dx extends wg{constructor(e){super(kx,"localeSet",!0),this.locale=new yg}}class Ox extends Cg{constructor(e){super(kx,"meridiem")}}class Px extends wg{constructor(e){super(kx,"meridiemNames",!0),this.meridiem=new yg(2)}}class Ex extends Cg{constructor(e){super(kx,"month")}}class Lx extends wg{constructor(e){super(kx,"monthNames",!0),this.abbr=Bf({data:e.abbr,defaultValue:0,validate:e=>1===e}),this.month=new yg(12)}}class _x extends Cg{constructor(e){super(kx,"numberPattern"),this.name=Tf(e.name,["full","long","med","short"])}}class Ux extends wg{constructor(e){super(kx,"numberPatterns",!0),this.numberPattern=new yg(4)}}class qx extends Cg{constructor(e){super(kx,"numberSymbol"),this.name=Tf(e.name,["decimal","grouping","percent","minus","zero"])}}class jx extends wg{constructor(e){super(kx,"numberSymbols",!0),this.numberSymbol=new yg(5)}}class Hx extends Cg{constructor(e){super(kx,"timePattern"),this.name=Tf(e.name,["full","long","med","short"])}}class $x extends wg{constructor(e){super(kx,"timePatterns",!0),this.timePattern=new yg(4)}}class zx extends wg{constructor(e){super(kx,"typeFace",!0),this.name=""|e.name}}class Gx extends wg{constructor(e){super(kx,"typeFaces",!0),this.typeFace=new yg}}class Wx{static[vf](e,t){if(Wx.hasOwnProperty(e))return Wx[e](t)}static calendarSymbols(e){return new vx(e)}static currencySymbol(e){return new Ax(e)}static currencySymbols(e){return new Cx(e)}static datePattern(e){return new Sx(e)}static datePatterns(e){return new Ix(e)}static dateTimeSymbols(e){return new Bx(e)}static day(e){return new Fx(e)}static dayNames(e){return new Mx(e)}static era(e){return new Tx(e)}static eraNames(e){return new Rx(e)}static locale(e){return new Nx(e)}static localeSet(e){return new Dx(e)}static meridiem(e){return new Ox(e)}static meridiemNames(e){return new Px(e)}static month(e){return new Ex(e)}static monthNames(e){return new Lx(e)}static numberPattern(e){return new _x(e)}static numberPatterns(e){return new Ux(e)}static numberSymbol(e){return new qx(e)}static numberSymbols(e){return new jx(e)}static timePattern(e){return new Hx(e)}static timePatterns(e){return new $x(e)}static typeFace(e){return new zx(e)}static typeFaces(e){return new Gx(e)}}const Vx=Af.signature.id;class Xx extends wg{constructor(e){super(Vx,"signature",!0)}}class Kx{static[vf](e,t){if(Kx.hasOwnProperty(e))return Kx[e](t)}static signature(e){return new Xx(e)}}const Yx=Af.stylesheet.id;class Jx extends wg{constructor(e){super(Yx,"stylesheet",!0)}}class Zx{static[vf](e,t){if(Zx.hasOwnProperty(e))return Zx[e](t)}static stylesheet(e){return new Jx(e)}}const Qx=Af.xdp.id;class ek extends wg{constructor(e){super(Qx,"xdp",!0),this.uuid=e.uuid||"",this.timeStamp=e.timeStamp||"",this.config=null,this.connectionSet=null,this.datasets=null,this.localeSet=null,this.stylesheet=new yg,this.template=null}[sf](e){const t=Af[e[Qd]];return t&&e[Zd]===t.id}}class tk{static[vf](e,t){if(tk.hasOwnProperty(e))return tk[e](t)}static xdp(e){return new ek(e)}}const sk=Af.xhtml.id,ak=Symbol(),ik=new Set(["color","font","font-family","font-size","font-stretch","font-style","font-weight","margin","margin-bottom","margin-left","margin-right","margin-top","letter-spacing","line-height","orphans","page-break-after","page-break-before","page-break-inside","tab-interval","tab-stop","text-align","text-decoration","text-indent","vertical-align","widows","kerning-mode","xfa-font-horizontal-scale","xfa-font-vertical-scale","xfa-spacerun","xfa-tab-stops"]),nk=new Map([["page-break-after","breakAfter"],["page-break-before","breakBefore"],["page-break-inside","breakInside"],["kerning-mode",e=>"none"===e?"none":"normal"],["xfa-font-horizontal-scale",e=>`scaleX(${Math.max(0,parseInt(e)/100).toFixed(2)})`],["xfa-font-vertical-scale",e=>`scaleY(${Math.max(0,parseInt(e)/100).toFixed(2)})`],["xfa-spacerun",""],["xfa-tab-stops",""],["font-size",(e,t)=>Fg(.99*(e=t.fontSize=Math.abs(Rf(e))))],["letter-spacing",e=>Fg(Rf(e))],["line-height",e=>Fg(Rf(e))],["margin",e=>Fg(Rf(e))],["margin-bottom",e=>Fg(Rf(e))],["margin-left",e=>Fg(Rf(e))],["margin-right",e=>Fg(Rf(e))],["margin-top",e=>Fg(Rf(e))],["text-indent",e=>Fg(Rf(e))],["font-family",e=>e],["vertical-align",e=>Fg(Rf(e))]]),rk=/\s+/g,ok=/[\r\n]+/g,ck=/\r\n?/g;function lk(e,t,s){const a=Object.create(null);if(!e)return a;const i=Object.create(null);for(const[n,r]of e.split(";").map(e=>e.split(":",2))){const e=nk.get(n);if(""===e)continue;let t=r;e&&(t="string"==typeof e?e:e(r,i)),n.endsWith("scale")?a.transform=a.transform?`${a[n]} ${t}`:t:a[n.replaceAll(/-([a-zA-Z])/g,(e,t)=>t.toUpperCase())]=t}if(a.fontFamily&&$g({typeface:a.fontFamily,weight:a.fontWeight||"normal",posture:a.fontStyle||"normal",size:i.fontSize||0},t,t[Ld].fontFinder,a),s&&a.verticalAlign&&"0px"!==a.verticalAlign&&a.fontSize){const e=.583,t=.333,s=Rf(a.fontSize);a.fontSize=Fg(s*e),a.verticalAlign=Fg(Math.sign(Rf(a.verticalAlign))*s*t)}return s&&a.fontSize&&(a.fontSize=`calc(${a.fontSize} * var(--total-scale-factor))`),_g(a),a}const hk=new Set(["body","html"]);class uk extends kg{constructor(e,t){super(sk,t),this[ak]=!1,this.style=e.style||""}[ud](e){super[ud](e),this.style=function(e){return e.style?e.style.split(";").filter(e=>!!e.trim()).map(e=>e.split(":",2).map(e=>e.trim())).filter(([t,s])=>("font-family"===t&&e[Ld].usedTypefaces.add(s),ik.has(t))).map(e=>e.join(":")).join(";"):""}(this)}[od](){return!hk.has(this[Qd])}[af](e,t=!1){t?this[ak]=!0:(e=e.replaceAll(ok,""),this.style.includes("xfa-spacerun:yes")||(e=e.replaceAll(rk," "))),e&&(this[md]+=e)}[nf](e,t=!0){const s=Object.create(null),a={top:NaN,bottom:NaN,left:NaN,right:NaN};let i=null;for(const[n,r]of this.style.split(";").map(e=>e.split(":",2)))switch(n){case"font-family":s.typeface=If(r);break;case"font-size":s.size=Rf(r);break;case"font-weight":s.weight=r;break;case"font-style":s.posture=r;break;case"letter-spacing":s.letterSpacing=Rf(r);break;case"margin":const e=r.split(/ \t/).map(e=>Rf(e));switch(e.length){case 1:a.top=a.bottom=a.left=a.right=e[0];break;case 2:a.top=a.bottom=e[0],a.left=a.right=e[1];break;case 3:a.top=e[0],a.bottom=e[2],a.left=a.right=e[1];break;case 4:a.top=e[0],a.left=e[1],a.bottom=e[2],a.right=e[3]}break;case"margin-top":a.top=Rf(r);break;case"margin-bottom":a.bottom=Rf(r);break;case"margin-left":a.left=Rf(r);break;case"margin-right":a.right=Rf(r);break;case"line-height":i=Rf(r)}if(e.pushData(s,a,i),this[md])e.addString(this[md]);else for(const n of this[Rd]())"#text"!==n[Qd]?n[nf](e):e.addString(n[md]);t&&e.popFont()}[wf](e){const t=[];if(this[yd]={children:t},this[hd]({}),0===t.length&&!this[md])return Of.EMPTY;let s;return s=this[ak]?this[md]?this[md].replaceAll(ck,"\n"):void 0:this[md]||void 0,Of.success({name:this[Qd],attributes:{href:this.href,style:lk(this.style,this,this[ak])},children:t,value:s})}}class dk extends uk{constructor(e){super(e,"a"),this.href=zg(e.href)||""}}class fk extends uk{constructor(e){super(e,"b")}[nf](e){e.pushFont({weight:"bold"}),super[nf](e),e.popFont()}}class gk extends uk{constructor(e){super(e,"body")}[wf](e){const t=super[wf](e),{html:s}=t;return s?(s.name="div",s.attributes.class=["xfaRich"],t):Of.EMPTY}}class pk extends uk{constructor(e){super(e,"br")}[mf](){return"\n"}[nf](e){e.addString("\n")}[wf](e){return Of.success({name:"br"})}}class mk extends uk{constructor(e){super(e,"html")}[wf](e){const t=[];if(this[yd]={children:t},this[hd]({}),0===t.length)return Of.success({name:"div",attributes:{class:["xfaRich"],style:{}},value:this[md]||""});if(1===t.length){const e=t[0];if(e.attributes?.class.includes("xfaRich"))return Of.success(e)}return Of.success({name:"div",attributes:{class:["xfaRich"],style:{}},children:t})}}class bk extends uk{constructor(e){super(e,"i")}[nf](e){e.pushFont({posture:"italic"}),super[nf](e),e.popFont()}}class wk extends uk{constructor(e){super(e,"li")}}class yk extends uk{constructor(e){super(e,"ol")}}class xk extends uk{constructor(e){super(e,"p")}[nf](e){super[nf](e,!1),e.addString("\n"),e.addPara(),e.popFont()}[mf](){return this[Pd]()[Rd]().at(-1)===this?super[mf]():super[mf]()+"\n"}}class kk extends uk{constructor(e){super(e,"span")}}class vk extends uk{constructor(e){super(e,"sub")}}class Ak extends uk{constructor(e){super(e,"sup")}}class Ck extends uk{constructor(e){super(e,"ul")}}class Sk{static[vf](e,t){if(Sk.hasOwnProperty(e))return Sk[e](t)}static a(e){return new dk(e)}static b(e){return new fk(e)}static body(e){return new gk(e)}static br(e){return new pk(e)}static html(e){return new mk(e)}static i(e){return new bk(e)}static li(e){return new wk(e)}static ol(e){return new yk(e)}static p(e){return new xk(e)}static span(e){return new kk(e)}static sub(e){return new vk(e)}static sup(e){return new Ak(e)}static ul(e){return new Ck(e)}}const Ik={config:sx,connection:mx,datasets:xx,localeSet:Wx,signature:Kx,stylesheet:Zx,template:yb,xdp:tk,xhtml:Sk};class Bk{constructor(e){this.namespaceId=e}[vf](e,t){return new kg(this.namespaceId,e,t)}}class Fk extends wg{constructor(e){super(-1,"root",Object.create(null)),this.element=null,this[Ud]=e}[tf](e){return this.element=e,!0}[xd](){super[xd](),this.element.template instanceof ob&&(this[Ud].set(lf,this.element),this.element.template[hf](this[Ud]),this.element.template[Ud]=this[Ud])}}class Mk extends wg{constructor(){super(-1,"",Object.create(null))}[tf](e){return!1}}class Tk{constructor(e=null){this._namespaceStack=[],this._nsAgnosticLevel=0,this._namespacePrefixes=new Map,this._namespaces=new Map,this._nextNsId=Math.max(...Object.values(Af).map(({id:e})=>e)),this._currentNamespace=e||new Bk(++this._nextNsId)}buildRoot(e){return new Fk(e)}build({nsPrefix:e,name:t,attributes:s,namespace:a,prefixes:i}){const n=null!==a;if(n&&(this._namespaceStack.push(this._currentNamespace),this._currentNamespace=this._searchNamespace(a)),i&&this._addNamespacePrefix(i),s.hasOwnProperty(ef)){const e=Ik.datasets,t=s[ef];let a=null;for(const[s,i]of Object.entries(t))if(this._getNamespaceToUse(s)===e){a={xfa:i};break}a?s[ef]=a:delete s[ef]}const r=this._getNamespaceToUse(e),o=r?.[vf](t,s)||new Mk;return o[Wd]()&&this._nsAgnosticLevel++,(n||i||o[Wd]())&&(o[fd]={hasNamespace:n,prefixes:i,nsAgnostic:o[Wd]()}),o}isNsAgnostic(){return this._nsAgnosticLevel>0}_searchNamespace(e){let t=this._namespaces.get(e);if(t)return t;for(const[s,{check:a}]of Object.entries(Af))if(a(e)){if(t=Ik[s],t)return this._namespaces.set(e,t),t;break}return t=new Bk(++this._nextNsId),this._namespaces.set(e,t),t}_addNamespacePrefix(e){for(const{prefix:t,value:s}of e){const e=this._searchNamespace(s);let a=this._namespacePrefixes.get(t);a||(a=[],this._namespacePrefixes.set(t,a)),a.push(e)}}_getNamespaceToUse(e){if(!e)return this._currentNamespace;const t=this._namespacePrefixes.get(e);return t?.length>0?t.at(-1):(Zt(`Unknown namespace prefix: ${e}.`),null)}clean(e){const{hasNamespace:t,prefixes:s,nsAgnostic:a}=e;t&&(this._currentNamespace=this._namespaceStack.pop()),s&&s.forEach(({prefix:e})=>{this._namespacePrefixes.get(e).pop()}),a&&this._nsAgnosticLevel--}}class Rk extends ju{constructor(e=null,t=!1){super(),this._builder=new Tk(e),this._stack=[],this._globalData={usedTypefaces:new Set},this._ids=new Map,this._current=this._builder.buildRoot(this._ids),this._errorCode=Du,this._whiteRegex=/^\s+$/,this._nbsps=/\xa0+/g,this._richText=t}parse(e){if(this.parseXml(e),this._errorCode===Du)return this._current[xd](),this._current.element}onText(e){e=e.replace(this._nbsps,e=>e.slice(1)+" "),this._richText||this._current[od]()?this._current[af](e,this._richText):this._whiteRegex.test(e)||this._current[af](e.trim())}onCdata(e){this._current[af](e)}_mkAttributes(e,t){let s=null,a=null;const i=Object.create({});for(const{name:n,value:r}of e)if("xmlns"===n)s?Zt(`XFA - multiple namespace definition in <${t}>`):s=r;else if(n.startsWith("xmlns:")){const e=n.substring(6);a??=[],a.push({prefix:e,value:r})}else{const e=n.indexOf(":");if(-1===e)i[n]=r;else{const t=i[ef]??=Object.create(null),[s,a]=[n.slice(0,e),n.slice(e+1)];(t[s]||=Object.create(null))[a]=r}}return[s,a,i]}_getNameAndPrefix(e,t){const s=e.indexOf(":");return-1===s?[e,null]:[e.substring(s+1),t?"":e.substring(0,s)]}onBeginElement(e,t,s){const[a,i,n]=this._mkAttributes(t,e),[r,o]=this._getNameAndPrefix(e,this._builder.isNsAgnostic()),c=this._builder.build({nsPrefix:o,name:r,attributes:n,namespace:a,prefixes:i});c[Ld]=this._globalData,s?(c[xd](),this._current[tf](c)&&c[df](this._ids),c[ud](this._builder)):(this._stack.push(this._current),this._current=c)}onEndElement(e){const t=this._current;if(t[Hd]()&&"string"==typeof t[md]){const e=new Rk;e._globalData=this._globalData;const s=e.parse(t[md]);t[md]=null,t[tf](s)}t[xd](),this._current=this._stack.pop(),this._current[tf](t)&&t[df](this._ids),t[ud](this._builder)}onError(e){this._errorCode=e}}class Nk{constructor(e){try{this.root=(new Rk).parse(Nk._createDocument(e));const t=new vb(this.root);this.form=t.bind(),this.dataHandler=new Ab(this.root,t.getData()),this.form[Ld].template=this.form}catch(e){Zt(`XFA - an error occurred during parsing and binding: ${e}`)}}isValid(){return!(!this.root||!this.form)}_createPagesHelper(){const e=this.form[bf]();return new Promise((t,s)=>{const a=()=>{try{const s=e.next();s.done?t(s.value):setTimeout(a,0)}catch(e){s(e)}};setTimeout(a,0)})}async _createPages(){try{this.pages=await this._createPagesHelper(),this.dims=this.pages.children.map(e=>{const{width:t,height:s}=e.attributes.style;return[0,0,parseInt(t),parseInt(s)]})}catch(e){Zt(`XFA - an error occurred during layout: ${e}`)}}getBoundingBox(e){return this.dims[e]}async getNumPages(){return this.pages||await this._createPages(),this.dims.length}setImages(e){this.form[Ld].images=e}setFonts(e){this.form[Ld].fontFinder=new Pf(e);const t=[];for(let s of this.form[Ld].usedTypefaces)s=If(s),this.form[Ld].fontFinder.find(s)||t.push(s);return t.length>0?t:null}appendFonts(e,t){this.form[Ld].fontFinder.add(e,t)}async getPages(){this.pages||await this._createPages();const e=this.pages;return this.pages=null,e}serializeData(e){return this.dataHandler.serialize(e)}static _createDocument(e){return e["/xdp:xdp"]?Object.values(e).join(""):e["xdp:xdp"]}static getRichTextAsHtml(e){if(!e||"string"!=typeof e)return null;try{let t=new Rk(Sk,!0).parse(e);if(!["body","xhtml"].includes(t[Qd])){const e=Sk.body({});e[ld](t),t=e}const s=t[wf]();if(!s.success)return null;const{html:a}=s,{attributes:i}=a;return i&&(i.class&&(i.class=i.class.filter(e=>!e.startsWith("xfa"))),i.dir="auto"),{html:a,str:t[mf]()}}catch(e){Zt(`XFA - an error occurred during parsing of rich text: ${e}`)}return null}}class Dk{static createGlobals(e){return Promise.all([e.ensureCatalog("acroForm"),e.ensureDoc("xfaDatasets"),e.ensureCatalog("structTreeRoot"),e.ensureCatalog("baseUrl"),e.ensureCatalog("attachments"),e.ensureCatalog("globalColorSpaceCache")]).then(([t,s,a,i,n,r])=>({pdfManager:e,acroForm:t instanceof Ps?t:Ps.empty,xfaDatasets:s,structTreeRoot:a,baseUrl:i,attachments:n,globalColorSpaceCache:r}),e=>(Zt(`createGlobals: "${e}".`),null))}static async create(e,t,s,a,i,n,r,o){const c=i?await this._getPageIndex(e,t,s.pdfManager):null;return s.pdfManager.ensure(this,"_create",[e,t,s,a,i,n,r,c,o])}static _create(e,t,s,a,i=!1,n=null,r=null,o=null,c=null){const l=e.fetchIfRef(t);if(!(l instanceof Ps))return;let h=l.get("Subtype");if(h=h instanceof Ns?h.name:null,r&&!r.has(F[h.toUpperCase()]))return null;const{acroForm:u,pdfManager:d}=s,f=t instanceof Es?t.toString():`annot_${a.createObjId()}`,g={xref:e,ref:t,dict:l,subtype:h,id:f,annotationGlobals:s,collectFields:i,orphanFields:n,needAppearances:!i&&!0===u.get("NeedAppearances"),pageIndex:o,evaluatorOptions:d.evaluatorOptions,pageRef:c};switch(h){case"Link":return new Vk(g);case"Text":return new Wk(g);case"Widget":let e=sa({dict:l,key:"FT"});switch(e=e instanceof Ns?e.name:null,e){case"Tx":return new Hk(g);case"Btn":return new $k(g);case"Ch":return new zk(g);case"Sig":return new Gk(g)}return Zt(`Unimplemented widget field type "${e}", falling back to base field type.`),new jk(g);case"Popup":return new Xk(g);case"FreeText":return new Kk(g);case"Line":return new Yk(g);case"Square":return new Jk(g);case"Circle":return new Zk(g);case"PolyLine":return new Qk(g);case"Polygon":return new ev(g);case"Caret":return new tv(g);case"Ink":return new sv(g);case"Highlight":return new av(g);case"Underline":return new iv(g);case"Squiggly":return new nv(g);case"StrikeOut":return new rv(g);case"Stamp":return new ov(g);case"FileAttachment":return new cv(g);default:return i||Zt(h?`Unimplemented annotation type "${h}", falling back to base annotation.`:"Annotation is missing the required /Subtype."),new _k(g)}}static async _getPageIndex(e,t,s){try{const a=await e.fetchIfRefAsync(t);if(!(a instanceof Ps))return-1;const i=a.getRaw("P");if(i instanceof Es)try{return await s.ensureCatalog("getPageIndex",[i])}catch(e){Jt(`_getPageIndex -- not a valid page reference: "${e}".`)}if(a.has("Kids"))return-1;const n=await s.ensureDoc("numPages");for(let e=0;e<n;e++){const a=await s.getPage(e),i=await s.ensure(a,"annotations");for(const s of i)if(s instanceof Es&&Hs(s,t))return e}}catch(e){Zt(`_getPageIndex: "${e}".`)}return-1}static generateImages(e,t,s){if(!s)return Zt("generateImages: OffscreenCanvas is not supported, cannot save or print some annotations with images."),null;let a;for(const{bitmapId:i,bitmap:n}of e)n&&(a||=new Map,a.set(i,ov.createImage(n,t)));return a}static async saveNewAnnotations(e,t,s,a,i){const n=e.xref;let r;const o=[],{isOffscreenCanvasSupported:c}=e.options;for(const l of s)if(!l.deleted)switch(l.annotationType){case g:if(!r){const e=new Ps(n);e.setIfName("BaseFont","Helvetica"),e.setIfName("Type","Font"),e.setIfName("Subtype","Type1"),e.setIfName("Encoding","WinAnsiEncoding"),r=n.getNewTemporaryRef(),i.put(r,{data:e})}o.push(Kk.createNewAnnotation(n,l,i,{evaluator:e,task:t,baseFontRef:r}));break;case p:l.quadPoints?o.push(av.createNewAnnotation(n,l,i)):o.push(sv.createNewAnnotation(n,l,i));break;case b:o.push(sv.createNewAnnotation(n,l,i));break;case m:const s=c?await(a?.get(l.bitmapId)):null;if(s?.imageStream){const{imageStream:e,smaskStream:t}=s;if(t){const s=n.getNewTemporaryRef();i.put(s,{data:t}),e.dict.set("SMask",s)}const a=s.imageRef=n.getNewTemporaryRef();i.put(a,{data:e}),s.imageStream=s.smaskStream=null}o.push(ov.createNewAnnotation(n,l,i,{image:s}));break;case w:o.push(ov.createNewAnnotation(n,l,i,{}))}return{annotations:(await Promise.all(o)).flat()}}static async printNewAnnotations(e,t,s,a,i){if(!a)return null;const{options:n,xref:r}=t,o=[];for(const c of a)if(!c.deleted)switch(c.annotationType){case g:o.push(Kk.createNewPrintAnnotation(e,r,c,{evaluator:t,task:s,evaluatorOptions:n}));break;case p:c.quadPoints?o.push(av.createNewPrintAnnotation(e,r,c,{evaluatorOptions:n})):o.push(sv.createNewPrintAnnotation(e,r,c,{evaluatorOptions:n}));break;case b:o.push(sv.createNewPrintAnnotation(e,r,c,{evaluatorOptions:n}));break;case m:const a=n.isOffscreenCanvasSupported?await(i?.get(c.bitmapId)):null;if(a?.imageStream){const{imageStream:e,smaskStream:t}=a;t&&e.dict.set("SMask",t),a.imageRef=new Ui(e,e.length),a.imageStream=a.smaskStream=null}o.push(ov.createNewPrintAnnotation(e,r,c,{image:a,evaluatorOptions:n}));break;case w:o.push(ov.createNewPrintAnnotation(e,r,c,{evaluatorOptions:n}))}return Promise.all(o)}}function Ok(e,t=new Uint8ClampedArray(3)){if(!Array.isArray(e))return t;const s=t||new Uint8ClampedArray(3);switch(e.length){case 0:return null;case 1:return mi.gray.getRgbItem(e,0,s,0),s;case 3:return mi.rgb.getRgbItem(e,0,s,0),s;case 4:return mi.cmyk.getRgbItem(e,0,s,0),s;default:return t}}function Pk(e,t=null){return e&&Array.from(e,e=>e/255)||t}function Ek(e,t){const s=e.getArray("QuadPoints");if(!ua(s,null)||0===s.length||s.length%8>0)return null;const a=new Float32Array(s.length);for(let i=0,n=s.length;i<n;i+=8){const[e,n,r,o,c,l,h,u]=s.slice(i,i+8),d=Math.min(e,r,c,h),f=Math.max(e,r,c,h),g=Math.min(n,o,l,u),p=Math.max(n,o,l,u);if(null!==t&&(d<t[0]||f>t[2]||g<t[1]||p>t[3]))return null;a.set([d,p,f,p,d,g,f,g],i)}return a}function Lk(e,t,s){const a=new Float32Array([1/0,1/0,-1/0,-1/0]);ms.axialAlignedBoundingBox(t,s,a);const[i,n,r,o]=a;if(i===r||n===o)return[1,0,0,1,e[0],e[1]];const c=(e[2]-e[0])/(r-i),l=(e[3]-e[1])/(o-n);return[c,0,0,l,e[0]-i*c,e[1]-n*l]}class _k{constructor(e){const{dict:t,xref:s,annotationGlobals:a,ref:i,orphanFields:n}=e,r=n?.get(i);r&&t.set("Parent",r),this.setTitle(t.get("T")),this.setContents(t.get("Contents")),this.setModificationDate(t.get("M")),this.setFlags(t.get("F")),this.setRectangle(t.getArray("Rect")),this.setColor(t.getArray("C")),this.setBorderStyle(t),this.setAppearance(t),this.setOptionalContent(t);const o=t.get("MK");this.setBorderAndBackgroundColors(o),this.setRotation(o,t),this.ref=e.ref instanceof Es?e.ref:null,this._streams=[],this.appearance&&this._streams.push(this.appearance);const c=!!(this.flags&E),l=!!(this.flags&L);if(this.data={annotationFlags:this.flags,borderStyle:this.borderStyle,color:this.color,backgroundColor:this.backgroundColor,borderColor:this.borderColor,rotation:this.rotation,contentsObj:this._contents,hasAppearance:!!this.appearance,id:e.id,modificationDate:this.modificationDate,rect:this.rectangle,subtype:e.subtype,hasOwnCanvas:!1,noRotate:!!(this.flags&O),noHTML:c&&l,isEditable:!1,structParent:-1},a.structTreeRoot){let s=t.get("StructParent");this.data.structParent=s=Number.isInteger(s)&&s>=0?s:-1,a.structTreeRoot.addAnnotationIdToPage(e.pageRef,s)}if(e.collectFields){const a=t.get("Kids");if(Array.isArray(a)){const e=[];for(const t of a)t instanceof Es&&e.push(t.toString());0!==e.length&&(this.data.kidIds=e)}this.data.actions=ya(s,t,ee),this.data.fieldName=this._constructFieldName(t),this.data.pageIndex=e.pageIndex}const h=t.get("IT");h instanceof Ns&&(this.data.it=h.name),this._isOffscreenCanvasSupported=e.evaluatorOptions.isOffscreenCanvasSupported,this._fallbackFontDict=null,this._needAppearances=!1}_hasFlag(e,t){return!!(e&t)}_buildFlags(e,t){let{flags:s}=this;if(void 0===e){if(void 0===t)return;return t?s&~D:s&~N|D}return e?(s|=D,t?s&~P|N:s&~N|P):(s&=~(N|P),t?s&~D:s|D)}_isViewable(e){return!this._hasFlag(e,R)&&!this._hasFlag(e,P)}_isPrintable(e){return this._hasFlag(e,D)&&!this._hasFlag(e,N)&&!this._hasFlag(e,R)}mustBeViewed(e,t){const s=e?.get(this.data.id)?.noView;return void 0!==s?!s:this.viewable&&!this._hasFlag(this.flags,N)}mustBePrinted(e){const t=e?.get(this.data.id)?.noPrint;return void 0!==t?!t:this.printable}mustBeViewedWhenEditing(e,t=null){return e?!this.data.isEditable:!t?.has(this.data.id)}get viewable(){return null!==this.data.quadPoints&&(0===this.flags||this._isViewable(this.flags))}get printable(){return null!==this.data.quadPoints&&0!==this.flags&&this._isPrintable(this.flags)}_parseStringHelper(e){const t="string"==typeof e?ws(e):"";return{str:t,dir:t&&"rtl"===Gh(t).dir?"rtl":"ltr"}}setDefaultAppearance(e){const{dict:t,annotationGlobals:s}=e,a=sa({dict:t,key:"DA"})||s.acroForm.get("DA");this._defaultAppearance="string"==typeof a?a:"",this.data.defaultAppearanceData=ku(this._defaultAppearance)}setTitle(e){this._title=this._parseStringHelper(e)}setContents(e){this._contents=this._parseStringHelper(e)}setModificationDate(e){this.modificationDate="string"==typeof e?e:null}setFlags(e){this.flags=Number.isInteger(e)&&e>0?e:0,this.flags&R&&"Annotation"!==this.constructor.name&&(this.flags^=R)}hasFlag(e){return this._hasFlag(this.flags,e)}setRectangle(e){this.rectangle=ga(e,[0,0,0,0])}setColor(e){this.color=Ok(e)}setLineEndings(e){if(this.lineEndings=["None","None"],Array.isArray(e)&&2===e.length)for(let t=0;t<2;t++){const s=e[t];if(s instanceof Ns)switch(s.name){case"None":continue;case"Square":case"Circle":case"Diamond":case"OpenArrow":case"ClosedArrow":case"Butt":case"ROpenArrow":case"RClosedArrow":case"Slash":this.lineEndings[t]=s.name;continue}Zt(`Ignoring invalid lineEnding: ${s}`)}}setRotation(e,t){this.rotation=0;let s=e instanceof Ps?e.get("R")||0:t.get("Rotate")||0;Number.isInteger(s)&&0!==s&&(s%=360,s<0&&(s+=360),s%90==0&&(this.rotation=s))}setBorderAndBackgroundColors(e){e instanceof Ps?(this.borderColor=Ok(e.getArray("BC"),null),this.backgroundColor=Ok(e.getArray("BG"),null)):this.borderColor=this.backgroundColor=null}setBorderStyle(e){if(this.borderStyle=new Uk,e instanceof Ps)if(e.has("BS")){const t=e.get("BS");if(t instanceof Ps){const e=t.get("Type");e&&!Us(e,"Border")||(this.borderStyle.setWidth(t.get("W"),this.rectangle),this.borderStyle.setStyle(t.get("S")),this.borderStyle.setDashArray(t.getArray("D")))}}else if(e.has("Border")){const t=e.getArray("Border");Array.isArray(t)&&t.length>=3&&(this.borderStyle.setHorizontalCornerRadius(t[0]),this.borderStyle.setVerticalCornerRadius(t[1]),this.borderStyle.setWidth(t[2],this.rectangle),4===t.length&&this.borderStyle.setDashArray(t[3],!0))}else this.borderStyle.setWidth(0)}setAppearance(e){this.appearance=null;const t=e.get("AP");if(!(t instanceof Ps))return;const s=t.get("N");if(s instanceof $s)return void(this.appearance=s);if(!(s instanceof Ps))return;const a=e.get("AS");if(!(a instanceof Ns&&s.has(a.name)))return;const i=s.get(a.name);i instanceof $s&&(this.appearance=i)}setOptionalContent(e){this.oc=null;const t=e.get("OC");t instanceof Ns?Zt("setOptionalContent: Support for /Name-entry is not implemented."):t instanceof Ps&&(this.oc=t)}async loadResources(e,t){const s=await t.dict.getAsync("Resources");return s&&await rd.load(s,e,s.xref),s}async getOperatorList(e,t,s,a){const{hasOwnCanvas:i,id:n,rect:o}=this.data;let c=this.appearance;const l=!!(i&&s&r);if(l&&(0===this.width||0===this.height))return this.data.hasOwnCanvas=!1,{opList:new Vi,separateForm:!1,separateCanvas:!1};if(!c){if(!l)return{opList:new Vi,separateForm:!1,separateCanvas:!1};c=new ri(""),c.dict=new Ps}const h=c.dict,u=await this.loadResources(Vs,c),d=fa(h.getArray("BBox"),[0,0,1,1]),f=da(h.getArray("Matrix"),Ws),g=Lk(o,d,f),p=new Vi;let m;return this.oc&&(m=await e.parseMarkedContentProps(this.oc,null)),void 0!==m&&p.addOp(xt,["OC",m]),p.addOp(Ft,[n,o,g,f,l]),await e.getOperatorList({stream:c,task:t,resources:u,operatorList:p,fallbackFontDict:this._fallbackFontDict}),p.addOp(Mt,[]),void 0!==m&&p.addOp(kt,[]),this.reset(),{opList:p,separateForm:!1,separateCanvas:l}}async save(e,t,s,a){return null}get overlaysTextContent(){return!1}get hasTextContent(){return!1}async extractTextContent(e,t,s){if(!this.appearance)return;const a=await this.loadResources(Xs,this.appearance),i=[],n=[];let r=null;const o={desiredSize:Math.Infinity,ready:!0,enqueue(e,t){for(const s of e.items)void 0!==s.str&&(r||=s.transform.slice(-2),n.push(s.str),s.hasEOL&&(i.push(n.join("").trimEnd()),n.length=0))}};if(await e.getTextContent({stream:this.appearance,task:t,resources:a,includeMarkedContent:!0,keepWhiteSpace:!0,sink:o,viewBox:s}),this.reset(),n.length&&i.push(n.join("").trimEnd()),i.length>1||i[0]){const e=this.appearance.dict,t=fa(e.getArray("BBox"),null),s=da(e.getArray("Matrix"),null);this.data.textPosition=this._transformPoint(r,t,s),this.data.textContent=i}}_transformPoint(e,t,s){const{rect:a}=this.data;t||=[0,0,1,1],s||=[1,0,0,1,0,0];const i=Lk(a,t,s);i[4]-=a[0],i[5]-=a[1];const n=e.slice();return ms.applyTransform(n,i),ms.applyTransform(n,s),n}getFieldObject(){return this.data.kidIds?{id:this.data.id,actions:this.data.actions,name:this.data.fieldName,strokeColor:this.data.borderColor,fillColor:this.data.backgroundColor,type:"",kidIds:this.data.kidIds,page:this.data.pageIndex,rotation:this.rotation}:null}reset(){for(const e of this._streams)e.reset()}_constructFieldName(e){if(!e.has("T")&&!e.has("Parent"))return Zt("Unknown field name, falling back to empty field name."),"";if(!e.has("Parent"))return ws(e.get("T"));const t=[];e.has("T")&&t.unshift(ws(e.get("T")));let s=e;const a=new Ls;for(e.objId&&a.put(e.objId);s.has("Parent");){if(s=s.get("Parent"),!(s instanceof Ps)||s.objId&&a.has(s.objId))break;s.objId&&a.put(s.objId),s.has("T")&&t.unshift(ws(s.get("T")))}return t.join(".")}get width(){return this.data.rect[2]-this.data.rect[0]}get height(){return this.data.rect[3]-this.data.rect[1]}}class Uk{constructor(){this.width=1,this.rawWidth=1,this.style=K,this.dashArray=[3],this.horizontalCornerRadius=0,this.verticalCornerRadius=0}setWidth(e,t=[0,0,0,0]){if(e instanceof Ns)this.width=0;else if("number"==typeof e){if(e>0){this.rawWidth=e;const s=(t[2]-t[0])/2,a=(t[3]-t[1])/2;s>0&&a>0&&(e>s||e>a)&&(Zt(`AnnotationBorderStyle.setWidth - ignoring width: ${e}`),e=1)}this.width=e}}setStyle(e){if(e instanceof Ns)switch(e.name){case"S":this.style=K;break;case"D":this.style=Y;break;case"B":this.style=J;break;case"I":this.style=Z;break;case"U":this.style=Q}}setDashArray(e,t=!1){if(Array.isArray(e)){let s=!0,a=!0;for(const t of e){if(!(+t>=0)){s=!1;break}t>0&&(a=!1)}0===e.length||s&&!a?(this.dashArray=e,t&&this.setStyle(Ns.get("D"))):this.width=0}else e&&(this.width=0)}setHorizontalCornerRadius(e){Number.isInteger(e)&&(this.horizontalCornerRadius=e)}setVerticalCornerRadius(e){Number.isInteger(e)&&(this.verticalCornerRadius=e)}}class qk extends _k{constructor(e){super(e);const{dict:t}=e;if(t.has("IRT")){const e=t.getRaw("IRT");this.data.inReplyTo=e instanceof Es?e.toString():null;const s=t.get("RT");this.data.replyType=s instanceof Ns?s.name:T}let s=null;if(this.data.replyType===M){const e=t.get("IRT");this.setTitle(e.get("T")),this.data.titleObj=this._title,this.setContents(e.get("Contents")),this.data.contentsObj=this._contents,e.has("CreationDate")?(this.setCreationDate(e.get("CreationDate")),this.data.creationDate=this.creationDate):this.data.creationDate=null,e.has("M")?(this.setModificationDate(e.get("M")),this.data.modificationDate=this.modificationDate):this.data.modificationDate=null,s=e.getRaw("Popup"),e.has("C")?(this.setColor(e.getArray("C")),this.data.color=this.color):this.data.color=null}else this.data.titleObj=this._title,this.setCreationDate(t.get("CreationDate")),this.data.creationDate=this.creationDate,s=t.getRaw("Popup"),t.has("C")||(this.data.color=null);this.data.popupRef=s instanceof Es?s.toString():null,t.has("RC")&&(this.data.richText=Nk.getRichTextAsHtml(t.get("RC")))}setCreationDate(e){this.creationDate="string"==typeof e?e:null}_setDefaultAppearance({xref:e,extra:t,strokeColor:s,fillColor:a,blendMode:i,strokeAlpha:n,fillAlpha:r,pointsCallback:o}){const c=this.data.rect=[1/0,1/0,-1/0,-1/0],l=["q"];t&&l.push(t),s&&l.push(`${s[0]} ${s[1]} ${s[2]} RG`),a&&l.push(`${a[0]} ${a[1]} ${a[2]} rg`);const h=this.data.quadPoints||Float32Array.from([this.rectangle[0],this.rectangle[3],this.rectangle[2],this.rectangle[3],this.rectangle[0],this.rectangle[1],this.rectangle[2],this.rectangle[1]]);for(let w=0,y=h.length;w<y;w+=8){const e=o(l,h.subarray(w,w+8));ms.rectBoundingBox(...e,c)}l.push("Q");const u=new Ps(e),d=new Ps(e);d.setIfName("Subtype","Form");const f=new ri(l.join(" "));f.dict=d,u.set("Fm0",f);const g=new Ps(e);i&&g.setIfName("BM",i),g.setIfNumber("CA",n),g.setIfNumber("ca",r);const p=new Ps(e);p.set("GS0",g);const m=new Ps(e);m.set("ExtGState",p),m.set("XObject",u);const b=new Ps(e);b.set("Resources",m),b.set("BBox",c),this.appearance=new ri("/GS0 gs /Fm0 Do"),this.appearance.dict=b,this._streams.push(this.appearance,f)}static async createNewAnnotation(e,t,s,a){const i=t.ref||=e.getNewTemporaryRef(),n=await this.createNewAppearanceStream(t,e,a);let r;if(n){const a=e.getNewTemporaryRef();r=this.createNewDict(t,e,{apRef:a}),s.put(a,{data:n})}else r=this.createNewDict(t,e,{});Number.isInteger(t.parentTreeId)&&r.set("StructParent",t.parentTreeId),s.put(i,{data:r});const o={ref:i},{popup:c}=t;if(c){if(c.deleted)return r.delete("Popup"),r.delete("Contents"),r.delete("RC"),o;const t=c.ref||=e.getNewTemporaryRef();c.parent=i;const a=Xk.createNewDict(c,e);return s.put(t,{data:a}),r.setIfDefined("Contents",Fa(c.contents)),r.set("Popup",t),[o,{ref:t}]}return o}static async createNewPrintAnnotation(e,t,s,a){const i=await this.createNewAppearanceStream(s,t,a),n=this.createNewDict(s,t,i?{ap:i}:{}),r=new this.prototype.constructor({dict:n,xref:t,annotationGlobals:e,evaluatorOptions:a.evaluatorOptions});return s.ref&&(r.ref=r.refToReplace=s.ref),r}}class jk extends _k{constructor(e){super(e);const{dict:t,xref:s,annotationGlobals:a}=e,i=this.data;this._needAppearances=e.needAppearances,i.annotationType=F.WIDGET,void 0===i.fieldName&&(i.fieldName=this._constructFieldName(t)),void 0===i.actions&&(i.actions=ya(s,t,ee));let n=sa({dict:t,key:"V",getArray:!0});i.fieldValue=this._decodeFormValue(n);const r=sa({dict:t,key:"DV",getArray:!0});if(i.defaultFieldValue=this._decodeFormValue(r),void 0===n&&a.xfaDatasets){const e=this._title.str;e&&(this._hasValueFromXFA=!0,i.fieldValue=n=a.xfaDatasets.getValue(e))}void 0===n&&null!==i.defaultFieldValue&&(i.fieldValue=i.defaultFieldValue),i.alternativeText=ws(t.get("TU")||""),this.setDefaultAppearance(e),i.hasAppearance||=this._needAppearances&&void 0!==i.fieldValue&&null!==i.fieldValue;const o=sa({dict:t,key:"FT"});i.fieldType=o instanceof Ns?o.name:null;const c=sa({dict:t,key:"DR"}),l=a.acroForm.get("DR"),h=this.appearance?.dict.get("Resources");this._fieldResources={localResources:c,acroFormResources:l,appearanceResources:h,mergedResources:Ps.merge({xref:s,dictArray:[c,h,l],mergeSubDicts:!0})},i.fieldFlags=sa({dict:t,key:"Ff"}),(!Number.isInteger(i.fieldFlags)||i.fieldFlags<0)&&(i.fieldFlags=0),i.password=this.hasFieldFlag(j),i.readOnly=this.hasFieldFlag(_),i.required=this.hasFieldFlag(U),i.hidden=this._hasFlag(i.annotationFlags,N)||this._hasFlag(i.annotationFlags,P)}_decodeFormValue(e){return Array.isArray(e)?e.filter(e=>"string"==typeof e).map(e=>ws(e)):e instanceof Ns?ws(e.name):"string"==typeof e?ws(e):null}hasFieldFlag(e){return!!(this.data.fieldFlags&e)}_isViewable(e){return!0}mustBeViewed(e,t){return t?this.viewable:super.mustBeViewed(e,t)&&!this._hasFlag(this.flags,P)}getRotationMatrix(e){let t=e?.get(this.data.id)?.rotation;return void 0===t&&(t=this.rotation),0===t?Ws:Ra(t,this.width,this.height)}getBorderAndBackgroundAppearances(e){let t=e?.get(this.data.id)?.rotation;if(void 0===t&&(t=this.rotation),!this.backgroundColor&&!this.borderColor)return"";const s=0===t||180===t?`0 0 ${this.width} ${this.height} re`:`0 0 ${this.height} ${this.width} re`;let a="";return this.backgroundColor&&(a=`${Au(this.backgroundColor,!0)} ${s} f `),this.borderColor&&(a+=`${this.borderStyle.width||1} w ${Au(this.borderColor,!1)} ${s} S `),a}async getOperatorList(e,t,s,a){if(s&l&&!(this instanceof Gk)&&!this.data.noHTML&&!this.data.hasOwnCanvas)return{opList:new Vi,separateForm:!0,separateCanvas:!1};if(!this._hasText)return super.getOperatorList(e,t,s,a);const i=await this._getAppearance(e,t,s,a);if(this.appearance&&null===i)return super.getOperatorList(e,t,s,a);const n=new Vi;if(!this._defaultAppearance||null===i)return{opList:n,separateForm:!1,separateCanvas:!1};const o=!!(this.data.hasOwnCanvas&&s&r),c=[0,0,this.width,this.height],h=Lk(this.data.rect,c,[1,0,0,1,0,0]);let u;this.oc&&(u=await e.parseMarkedContentProps(this.oc,null)),void 0!==u&&n.addOp(xt,["OC",u]),n.addOp(Ft,[this.data.id,this.data.rect,h,this.getRotationMatrix(a),o]);const d=new ri(i);return await e.getOperatorList({stream:d,task:t,resources:this._fieldResources.mergedResources,operatorList:n}),n.addOp(Mt,[]),void 0!==u&&n.addOp(kt,[]),{opList:n,separateForm:!1,separateCanvas:o}}_getMKDict(e){const t=new Ps(null);return e&&t.set("R",e),t.setIfArray("BC",Pk(this.borderColor)),t.setIfArray("BG",Pk(this.backgroundColor)),t.size>0?t:null}amendSavedDict(e,t){}setValue(e,t,s,a){const{dict:i,ref:n}=function(e,t,s){const a=new Ls,i=e,n={dict:null,ref:null};for(;e instanceof Ps&&!a.has(t);){if(a.put(t),e.has("T"))break;if(!((t=e.getRaw("Parent"))instanceof Es))return n;e=s.fetch(t)}return e instanceof Ps&&e!==i&&(n.dict=e,n.ref=t),n}(e,this.ref,s);if(i){if(!a.has(n)){const e=i.clone();return e.set("V",t),a.put(n,{data:e}),e}}else e.set("V",t);return null}async save(e,t,s,a){const i=s?.get(this.data.id),n=this._buildFlags(i?.noView,i?.noPrint);let r=i?.value,o=i?.rotation;if(r===this.data.fieldValue||void 0===r){if(!this._hasValueFromXFA&&void 0===o&&void 0===n)return;r||=this.data.fieldValue}if(void 0===o&&!this._hasValueFromXFA&&Array.isArray(r)&&Array.isArray(this.data.fieldValue)&&ks(r,this.data.fieldValue)&&void 0===n)return;void 0===o&&(o=this.rotation);let l=null;if(!this._needAppearances&&(l=await this._getAppearance(e,t,c,s),null===l&&void 0===n))return;let h=!1;l?.needAppearances&&(h=!0,l=null);const{xref:u}=e,d=u.fetchIfRef(this.ref);if(!(d instanceof Ps))return;const f=new Ps(u);for(const c of d.getKeys())"AP"!==c&&f.set(c,d.getRaw(c));if(void 0!==n&&(f.set("F",n),null===l&&!h)){const e=d.getRaw("AP");e&&f.set("AP",e)}const g={path:this.data.fieldName,value:r},p=this.setValue(f,Array.isArray(r)?r.map(Fa):Fa(r),u,a);this.amendSavedDict(s,p||f);const m=this._getMKDict(o);if(m&&f.set("MK",m),a.put(this.ref,{data:f,xfa:g,needAppearances:h}),null!==l){const e=u.getNewTemporaryRef(),t=new Ps(u);f.set("AP",t),t.set("N",e);const i=this._getSaveFieldResources(u),n=new ri(l),r=n.dict=new Ps(u);r.setIfName("Subtype","Form"),r.set("Resources",i);const c=o%180==0?[0,0,this.width,this.height]:[0,0,this.height,this.width];r.set("BBox",c);const h=this.getRotationMatrix(s);h!==Ws&&r.set("Matrix",h),a.put(e,{data:n,xfa:null,needAppearances:!1})}f.set("M",`D:${vs()}`)}async _getAppearance(e,t,s,a){if(this.data.password)return null;const n=a?.get(this.data.id);let r,o;if(n&&(r=n.formattedValue||n.value,o=n.rotation),void 0===o&&void 0===r&&!this._needAppearances&&(!this._hasValueFromXFA||this.appearance))return null;const l=this.getBorderAndBackgroundAppearances(a);if(void 0===r&&(r=this.data.fieldValue,!r))return`/Tx BMC q ${l}Q EMC`;if(Array.isArray(r)&&1===r.length&&(r=r[0]),es("string"==typeof r,"Expected `value` to be a string."),r=r.trimEnd(),this.data.combo){const e=this.data.options.find(({exportValue:e})=>r===e);r=e?.displayValue||r}if(""===r)return`/Tx BMC q ${l}Q EMC`;void 0===o&&(o=this.rotation);let h,u=-1;this.data.multiLine?(h=r.split(/\r\n?|\n/).map(e=>e.normalize("NFC")),u=h.length):h=[r.replace(/\r\n?|\n/,"").normalize("NFC")];let{width:d,height:f}=this;90!==o&&270!==o||([d,f]=[f,d]),this._defaultAppearance||(this.data.defaultAppearanceData=ku(this._defaultAppearance="/Helvetica 0 Tf 0 g"));let g,p,m,b=await jk._getFontData(e,t,this.data.defaultAppearanceData,this._fieldResources.mergedResources);const w=[];let y=!1;for(const i of h){const e=b.encodeString(i);e.length>1&&(y=!0),w.push(e.join(""))}if(y&&s&c)return{needAppearances:!0};if(y&&this._isOffscreenCanvasSupported){const s=this.data.comb?"monospace":"sans-serif",a=new Cu(e.xref,s),i=a.createFontResources(h.join("")),n=i.getRaw("Font");if(this._fieldResources.mergedResources.has("Font")){const e=this._fieldResources.mergedResources.get("Font");for(const t of n.getKeys())e.set(t,n.getRaw(t))}else this._fieldResources.mergedResources.set("Font",n);const o=a.fontName.name;b=await jk._getFontData(e,t,{fontName:o,fontSize:0},i);for(let e=0,t=w.length;e<t;e++)w[e]=Ta(h[e]);const c=Object.assign(Object.create(null),this.data.defaultAppearanceData);this.data.defaultAppearanceData.fontSize=0,this.data.defaultAppearanceData.fontName=o,[g,p,m]=this._computeFontSize(f-2,d-4,r,b,u),this.data.defaultAppearanceData=c}else this._isOffscreenCanvasSupported||Zt("_getAppearance: OffscreenCanvas is not supported, annotation may not render correctly."),[g,p,m]=this._computeFontSize(f-2,d-4,r,b,u);let x=b.descent;x=isNaN(x)?i*m:Math.max(i*m,Math.abs(x)*p);const k=Math.min(Math.floor((f-p)/2),1),v=this.data.textAlignment;if(this.data.multiLine)return this._getMultilineAppearance(g,w,b,p,d,f,v,2,k,x,m,a);if(this.data.comb)return this._getCombAppearance(g,b,w[0],p,d,f,2,k,x,m,a);const A=k+x;return 0===v||v>2?`/Tx BMC q ${l}BT `+g+` 1 0 0 1 ${Ia(2)} ${Ia(A)} Tm (${ba(w[0])}) Tj ET Q EMC`:`/Tx BMC q ${l}BT `+g+` 1 0 0 1 0 0 Tm ${this._renderText(w[0],b,p,d,v,{shift:0},2,A)} ET Q EMC`}static async _getFontData(e,t,s,a){const i=new Vi,n={font:null,clone(){return this}},{fontName:r,fontSize:o}=s;return await e.handleSetFont(a,[r&&Ns.get(r),o],null,i,t,n,null),n.font}_getTextWidth(e,t){return Math.sumPrecise(t.charsToGlyphs(e).map(e=>e.width))/1e3}_computeFontSize(e,t,a,i,n){let{fontSize:r}=this.data.defaultAppearanceData,o=(r||12)*s,c=Math.round(e/o);if(!r){const l=e=>Math.floor(100*e)/100;if(-1===n){const n=this._getTextWidth(a,i);r=l(Math.min(e/s,t/n)),c=1}else{const h=a.split(/\r\n?|\n/),u=[];for(const e of h){const t=i.encodeString(e).join(""),s=i.charsToGlyphs(t),a=i.getCharPositions(t);u.push({line:t,glyphs:s,positions:a})}const d=s=>{let a=0;for(const n of u)if(a+=this._splitLine(null,i,s,t,n).length*s,a>e)return!0;return!1};for(c=Math.max(c,n);;){if(o=e/c,r=l(o/s),!d(r))break;c++}}const{fontName:h,fontColor:u}=this.data.defaultAppearanceData;this._defaultAppearance=function({fontSize:e,fontName:t,fontColor:s}){return`/${ma(t)} ${e} Tf ${Au(s,!0)}`}({fontSize:r,fontName:h,fontColor:u})}return[this._defaultAppearance,r,e/c]}_renderText(e,t,s,a,i,n,r,o){let c;c=1===i?(a-this._getTextWidth(e,t)*s)/2:2===i?a-this._getTextWidth(e,t)*s-r:r;const l=Ia(c-n.shift);return n.shift=c,`${l} ${o=Ia(o)} Td (${ba(e)}) Tj`}_getSaveFieldResources(e){const{localResources:t,appearanceResources:s,acroFormResources:a}=this._fieldResources,i=this.data.defaultAppearanceData?.fontName;if(!i)return t||Ps.empty;for(const n of[t,s])if(n instanceof Ps){const e=n.get("Font");if(e instanceof Ps&&e.has(i))return n}if(a instanceof Ps){const s=a.get("Font");if(s instanceof Ps&&s.has(i)){const a=new Ps(e);a.set(i,s.getRaw(i));const n=new Ps(e);return n.set("Font",a),Ps.merge({xref:e,dictArray:[n,t],mergeSubDicts:!0})}}return t||Ps.empty}getFieldObject(){return null}}class Hk extends jk{constructor(e){super(e);const{dict:t}=e;t.has("PMD")&&(this.flags|=N,this.data.hidden=!0,Zt("Barcodes are not supported")),this.data.hasOwnCanvas=this.data.readOnly&&!this.data.noHTML,this._hasText=!0,"string"!=typeof this.data.fieldValue&&(this.data.fieldValue="");let s=sa({dict:t,key:"Q"});(!Number.isInteger(s)||s<0||s>2)&&(s=null),this.data.textAlignment=s;let a=sa({dict:t,key:"MaxLen"});(!Number.isInteger(a)||a<0)&&(a=0),this.data.maxLen=a,this.data.multiLine=this.hasFieldFlag(q),this.data.comb=this.hasFieldFlag(X)&&!this.data.multiLine&&!this.data.password&&!this.hasFieldFlag(G)&&0!==this.data.maxLen,this.data.doNotScroll=this.hasFieldFlag(V);const{data:{actions:i}}=this;if(!i)return;const n=/^AF(Date|Time)_(?:Keystroke|Format)(?:Ex)?\(['"]?([^'"]+)['"]?\);$/;let r=!1;(1===i.Format?.length&&1===i.Keystroke?.length&&n.test(i.Format[0])&&n.test(i.Keystroke[0])||0===i.Format?.length&&1===i.Keystroke?.length&&n.test(i.Keystroke[0])||0===i.Keystroke?.length&&1===i.Format?.length&&n.test(i.Format[0]))&&(r=!0);const o=[];i.Format&&o.push(...i.Format),i.Keystroke&&o.push(...i.Keystroke),r&&(delete i.Keystroke,i.Format=o);for(const c of o){const e=c.match(n);if(!e)continue;const t="Date"===e[1];let s=e[2];const a=parseInt(s,10);if(isNaN(a)||Math.floor(Math.log10(a))+1!==e[2].length||(s=(t?Su:Iu)[a]??s),this.data.datetimeFormat=s,!r)break;if(t){/HH|MM|ss|h/.test(s)?(this.data.datetimeType="datetime-local",this.data.timeStep=/ss/.test(s)?1:60):this.data.datetimeType="date";break}this.data.datetimeType="time",this.data.timeStep=/ss/.test(s)?1:60;break}}get hasTextContent(){return!!this.appearance&&!this._needAppearances}_getCombAppearance(e,t,s,a,i,n,r,o,c,l,h){const u=i/this.data.maxLen,d=this.getBorderAndBackgroundAppearances(h),f=[],g=t.getCharPositions(s);for(const[m,b]of g)f.push(`(${ba(s.substring(m,b))}) Tj`);const p=f.join(` ${Ia(u)} 0 Td `);return`/Tx BMC q ${d}BT `+e+` 1 0 0 1 ${Ia(r)} ${Ia(o+c)} Tm ${p} ET Q EMC`}_getMultilineAppearance(e,t,s,a,i,n,r,o,c,l,h,u){const d=[],f=i-2*o,g={shift:0};for(let b=0,w=t.length;b<w;b++){const e=t[b],n=this._splitLine(e,s,a,f);for(let t=0,u=n.length;t<u;t++){const e=n[t],u=0===b&&0===t?-c-(h-l):-h;d.push(this._renderText(e,s,a,i,r,g,o,u))}}const p=this.getBorderAndBackgroundAppearances(u),m=d.join("\n");return`/Tx BMC q ${p}BT `+e+` 1 0 0 1 0 ${Ia(n)} Tm ${m} ET Q EMC`}_splitLine(e,t,s,a,i={}){e=i.line||e;const n=i.glyphs||t.charsToGlyphs(e);if(n.length<=1)return[e];const r=i.positions||t.getCharPositions(e),o=s/1e3,c=[];let l=-1,h=-1,u=-1,d=0,f=0;for(let g=0,p=n.length;g<p;g++){const[t,s]=r[g],i=n[g],p=i.width*o;" "===i.unicode?f+p>a?(c.push(e.substring(d,t)),d=t,f=p,l=-1,u=-1):(f+=p,l=t,h=s,u=g):f+p>a?-1!==l?(c.push(e.substring(d,h)),d=h,g=u+1,l=-1,f=0):(c.push(e.substring(d,t)),d=t,f=p):f+=p}return d<e.length&&c.push(e.substring(d,e.length)),c}async extractTextContent(e,t,s){await super.extractTextContent(e,t,s);const a=this.data.textContent;if(!a)return;const i=a.join("\n");if(i===this.data.fieldValue)return;const n=i.replaceAll(/([.*+?^${}()|[\]\\])|(\s+)/g,(e,t)=>t?`\\${t}`:"\\s+");new RegExp(`^\\s*${n}\\s*$`).test(this.data.fieldValue)&&(this.data.textContent=this.data.fieldValue.split("\n"))}getFieldObject(){return{id:this.data.id,value:this.data.fieldValue,defaultValue:this.data.defaultFieldValue||"",multiline:this.data.multiLine,password:this.data.password,charLimit:this.data.maxLen,comb:this.data.comb,editable:!this.data.readOnly,hidden:this.data.hidden,name:this.data.fieldName,rect:this.data.rect,actions:this.data.actions,page:this.data.pageIndex,strokeColor:this.data.borderColor,fillColor:this.data.backgroundColor,rotation:this.rotation,datetimeFormat:this.data.datetimeFormat,hasDatetimeHTML:!!this.data.datetimeType,type:"text"}}}class $k extends jk{constructor(e){super(e),this.checkedAppearance=null,this.uncheckedAppearance=null;const t=this.hasFieldFlag(H),s=this.hasFieldFlag($);this.data.checkBox=!t&&!s,this.data.radioButton=t&&!s,this.data.pushButton=s,this.data.isTooltipOnly=!1,this.data.checkBox?this._processCheckBox(e):this.data.radioButton?this._processRadioButton(e):this.data.pushButton?(this.data.hasOwnCanvas=!0,this.data.noHTML=!1,this._processPushButton(e)):Zt("Invalid field flags for button widget annotation")}async getOperatorList(e,t,s,a){if(this.data.pushButton)return super.getOperatorList(e,t,s,!1,a);let i=null,n=null;if(a){const e=a.get(this.data.id);i=e?e.value:null,n=e?e.rotation:null}if(null===i&&this.appearance)return super.getOperatorList(e,t,s,a);null==i&&(i=this.data.checkBox?this.data.fieldValue===this.data.exportValue:this.data.fieldValue===this.data.buttonValue);const r=i?this.checkedAppearance:this.uncheckedAppearance;if(r){const i=this.appearance,o=da(r.dict.getArray("Matrix"),Ws);n&&r.dict.set("Matrix",this.getRotationMatrix(a)),this.appearance=r;const c=super.getOperatorList(e,t,s,a);return this.appearance=i,r.dict.set("Matrix",o),c}return{opList:new Vi,separateForm:!1,separateCanvas:!1}}async save(e,t,s,a){this.data.checkBox?this._saveCheckbox(e,t,s,a):this.data.radioButton&&this._saveRadioButton(e,t,s,a)}async _saveCheckbox(e,t,s,a){if(!s)return;const i=s.get(this.data.id),n=this._buildFlags(i?.noView,i?.noPrint);let r=i?.rotation,o=i?.value;if(void 0===r&&void 0===n){if(void 0===o)return;if(this.data.fieldValue===this.data.exportValue===o)return}let c=e.xref.fetchIfRef(this.ref);if(!(c instanceof Ps))return;c=c.clone(),void 0===r&&(r=this.rotation),void 0===o&&(o=this.data.fieldValue===this.data.exportValue);const l={path:this.data.fieldName,value:o?this.data.exportValue:""},h=Ns.get(o?this.data.exportValue:"Off");this.setValue(c,h,e.xref,a),c.set("AS",h),c.set("M",`D:${vs()}`),void 0!==n&&c.set("F",n);const u=this._getMKDict(r);u&&c.set("MK",u),a.put(this.ref,{data:c,xfa:l,needAppearances:!1})}async _saveRadioButton(e,t,s,a){if(!s)return;const i=s.get(this.data.id),n=this._buildFlags(i?.noView,i?.noPrint);let r=i?.rotation,o=i?.value;if(void 0===r&&void 0===n){if(void 0===o)return;if(this.data.fieldValue===this.data.buttonValue===o)return}let c=e.xref.fetchIfRef(this.ref);if(!(c instanceof Ps))return;c=c.clone(),void 0===o&&(o=this.data.fieldValue===this.data.buttonValue),void 0===r&&(r=this.rotation);const l={path:this.data.fieldName,value:o?this.data.buttonValue:""},h=Ns.get(o?this.data.buttonValue:"Off");o&&this.setValue(c,h,e.xref,a),c.set("AS",h),c.set("M",`D:${vs()}`),void 0!==n&&c.set("F",n);const u=this._getMKDict(r);u&&c.set("MK",u),a.put(this.ref,{data:c,xfa:l,needAppearances:!1})}_getDefaultCheckedAppearance(e,t){const{width:s,height:a}=this,i=[0,0,s,a],n=.8*Math.min(s,a);let r,o;"check"===t?(r={width:.755*n,height:.705*n},o="3"):"disc"===t?(r={width:.791*n,height:.705*n},o="l"):Qt(`_getDefaultCheckedAppearance - unsupported type: ${t}`);const c=`q BT /PdfJsZaDb ${n} Tf 0 g ${Ia((s-r.width)/2)} ${Ia((a-r.height)/2)} Td (${o}) Tj ET Q`,l=new Ps(e.xref);l.set("FormType",1),l.setIfName("Subtype","Form"),l.setIfName("Type","XObject"),l.set("BBox",i),l.set("Matrix",[1,0,0,1,0,0]),l.set("Length",c.length);const h=new Ps(e.xref),u=new Ps(e.xref);u.set("PdfJsZaDb",this.fallbackFontDict),h.set("Font",u),l.set("Resources",h),this.checkedAppearance=new ri(c),this.checkedAppearance.dict=l,this._streams.push(this.checkedAppearance)}_processCheckBox(e){const t=e.dict.get("AP");if(!(t instanceof Ps))return;const s=t.get("N");if(!(s instanceof Ps))return;const a=this._decodeFormValue(e.dict.get("AS"));"string"==typeof a&&(this.data.fieldValue=a);const i=null!==this.data.fieldValue&&"Off"!==this.data.fieldValue?this.data.fieldValue:"Yes",n=this._decodeFormValue(s.getKeys());if(0===n.length)n.push("Off",i);else if(1===n.length)"Off"===n[0]?n.push(i):n.unshift("Off");else if(n.includes(i))n.length=0,n.push("Off",i);else{const e=n.find(e=>"Off"!==e);n.length=0,n.push("Off",e)}n.includes(this.data.fieldValue)||(this.data.fieldValue="Off"),this.data.exportValue=n[1];const r=s.get(this.data.exportValue);this.checkedAppearance=r instanceof $s?r:null;const o=s.get("Off");this.uncheckedAppearance=o instanceof $s?o:null,this.checkedAppearance?this._streams.push(this.checkedAppearance):this._getDefaultCheckedAppearance(e,"check"),this.uncheckedAppearance&&this._streams.push(this.uncheckedAppearance),this._fallbackFontDict=this.fallbackFontDict,null===this.data.defaultFieldValue&&(this.data.defaultFieldValue="Off")}_processRadioButton(e){this.data.buttonValue=null;const t=e.dict.get("Parent");if(t instanceof Ps){this.parent=e.dict.getRaw("Parent");const s=t.get("V");s instanceof Ns&&(this.data.fieldValue=this._decodeFormValue(s))}const s=e.dict.get("AP");if(!(s instanceof Ps))return;const a=s.get("N");if(!(a instanceof Ps))return;for(const r of a.getKeys())if("Off"!==r){this.data.buttonValue=this._decodeFormValue(r);break}const i=a.get(this.data.buttonValue);this.checkedAppearance=i instanceof $s?i:null;const n=a.get("Off");this.uncheckedAppearance=n instanceof $s?n:null,this.checkedAppearance?this._streams.push(this.checkedAppearance):this._getDefaultCheckedAppearance(e,"disc"),this.uncheckedAppearance&&this._streams.push(this.uncheckedAppearance),this._fallbackFontDict=this.fallbackFontDict,null===this.data.defaultFieldValue&&(this.data.defaultFieldValue="Off")}_processPushButton(e){const{dict:t,annotationGlobals:s}=e;t.has("A")||t.has("AA")||this.data.alternativeText?(this.data.isTooltipOnly=!t.has("A")&&!t.has("AA"),ad.parseDestDictionary({destDict:t,resultObj:this.data,docBaseUrl:s.baseUrl,docAttachments:s.attachments})):Zt("Push buttons without action dictionaries are not supported")}getFieldObject(){let e,t="button";return this.data.checkBox?(t="checkbox",e=this.data.exportValue):this.data.radioButton&&(t="radiobutton",e=this.data.buttonValue),{id:this.data.id,value:this.data.fieldValue||"Off",defaultValue:this.data.defaultFieldValue,exportValues:e,editable:!this.data.readOnly,name:this.data.fieldName,rect:this.data.rect,hidden:this.data.hidden,actions:this.data.actions,page:this.data.pageIndex,strokeColor:this.data.borderColor,fillColor:this.data.backgroundColor,rotation:this.rotation,type:t}}get fallbackFontDict(){const e=new Ps;return e.setIfName("BaseFont","ZapfDingbats"),e.setIfName("Type","FallbackType"),e.setIfName("Subtype","FallbackType"),e.setIfName("Encoding","ZapfDingbatsEncoding"),ss(this,"fallbackFontDict",e)}}class zk extends jk{constructor(e){super(e);const{dict:t,xref:s}=e;this.indices=t.getArray("I"),this.hasIndices=Array.isArray(this.indices)&&this.indices.length>0,this.data.options=[];const a=sa({dict:t,key:"Opt"});if(Array.isArray(a))for(let i=0,n=a.length;i<n;i++){const e=s.fetchIfRef(a[i]),t=Array.isArray(e);this.data.options[i]={exportValue:this._decodeFormValue(t?s.fetchIfRef(e[0]):e),displayValue:this._decodeFormValue(t?s.fetchIfRef(e[1]):e)}}if(this.hasIndices){this.data.fieldValue=[];const e=this.data.options.length;for(const t of this.indices)Number.isInteger(t)&&t>=0&&t<e&&this.data.fieldValue.push(this.data.options[t].exportValue)}else"string"==typeof this.data.fieldValue?this.data.fieldValue=[this.data.fieldValue]:this.data.fieldValue||=[];0===this.data.options.length&&this.data.fieldValue.length>0&&(this.data.options=this.data.fieldValue.map(e=>({exportValue:e,displayValue:e}))),this.data.combo=this.hasFieldFlag(z),this.data.multiSelect=this.hasFieldFlag(W),this._hasText=!0}getFieldObject(){const e=this.data.combo?"combobox":"listbox",t=this.data.fieldValue.length>0?this.data.fieldValue[0]:null;return{id:this.data.id,value:t,defaultValue:this.data.defaultFieldValue,editable:!this.data.readOnly,name:this.data.fieldName,rect:this.data.rect,numItems:this.data.fieldValue.length,multipleSelection:this.data.multiSelect,hidden:this.data.hidden,actions:this.data.actions,items:this.data.options,page:this.data.pageIndex,strokeColor:this.data.borderColor,fillColor:this.data.backgroundColor,rotation:this.rotation,type:e}}amendSavedDict(e,t){if(!this.hasIndices)return;let s=e?.get(this.data.id)?.value;Array.isArray(s)||(s=[s]);const a=[],{options:i}=this.data;for(let n=0,r=0,o=i.length;n<o;n++)i[n].exportValue===s[r]&&(a.push(n),r+=1);t.set("I",a)}async _getAppearance(e,t,a,i){if(this.data.combo)return super._getAppearance(e,t,a,i);let n,r;const o=i?.get(this.data.id);if(o&&(r=o.rotation,n=o.value),void 0===r&&void 0===n&&!this._needAppearances)return null;void 0===n?n=this.data.fieldValue:Array.isArray(n)||(n=[n]);let{width:c,height:l}=this;90!==r&&270!==r||([c,l]=[l,c]);const h=this.data.options.length,u=[];for(let s=0;s<h;s++){const{exportValue:e}=this.data.options[s];n.includes(e)&&u.push(s)}this._defaultAppearance||(this.data.defaultAppearanceData=ku(this._defaultAppearance="/Helvetica 0 Tf 0 g"));const d=await jk._getFontData(e,t,this.data.defaultAppearanceData,this._fieldResources.mergedResources);let f,{fontSize:g}=this.data.defaultAppearanceData;if(g)f=this._defaultAppearance;else{const e=(l-1)/h;let t,s=-1;for(const{displayValue:a}of this.data.options){const e=this._getTextWidth(a,d);e>s&&(s=e,t=a)}[f,g]=this._computeFontSize(e,c-4,t,d,-1)}const p=g*s,m=(p-g)/2,b=Math.floor(l/p);let w=0;if(u.length>0){const e=Math.min(...u),t=Math.max(...u);w=Math.max(0,t-b+1),w>e&&(w=e)}const y=Math.min(w+b+1,h),x=["/Tx BMC q",`1 1 ${c} ${l} re W n`];if(u.length){x.push("0.600006 0.756866 0.854904 rg");for(const e of u)w<=e&&e<y&&x.push(`1 ${l-(e-w+1)*p} ${c} ${p} re f`)}x.push("BT",f,`1 0 0 1 0 ${l} Tm`);const k={shift:0};for(let s=w;s<y;s++){const{displayValue:e}=this.data.options[s],t=s===w?m:0;x.push(this._renderText(e,d,g,c,0,k,2,-p+t))}return x.push("ET Q EMC"),x.join("\n")}}class Gk extends jk{constructor(e){super(e),this.data.fieldValue=null,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!this.data.hasOwnCanvas}getFieldObject(){return{id:this.data.id,value:null,page:this.data.pageIndex,type:"signature"}}}class Wk extends qk{constructor(e){super(e),this.data.noRotate=!0,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1;const{dict:t}=e;this.data.annotationType=F.TEXT,this.data.hasAppearance?this.data.name="NoIcon":(this.data.rect[1]=this.data.rect[3]-22,this.data.rect[2]=this.data.rect[0]+22,this.data.name=t.has("Name")?t.get("Name").name:"Note"),t.has("State")?(this.data.state=t.get("State")||null,this.data.stateModel=t.get("StateModel")||null):(this.data.state=null,this.data.stateModel=null)}}class Vk extends _k{constructor(e){super(e);const{dict:t,annotationGlobals:s}=e;this.data.annotationType=F.LINK,this.data.noHTML=!1;const a=Ek(t,this.rectangle);a&&(this.data.quadPoints=a),this.data.borderColor||=this.data.color,ad.parseDestDictionary({destDict:t,resultObj:this.data,docBaseUrl:s.baseUrl,docAttachments:s.attachments})}get overlaysTextContent(){return!0}}class Xk extends _k{constructor(e){super(e);const{dict:t}=e;this.data.annotationType=F.POPUP,this.data.noHTML=!1,0!==this.width&&0!==this.height||(this.data.rect=null);let s=t.get("Parent");if(s){if(this.data.parentRect=ga(s.getArray("Rect"),null),this.data.creationDate=s.get("CreationDate")||"",Us(s.get("RT"),M)&&(s=s.get("IRT")),s.has("M")?(this.setModificationDate(s.get("M")),this.data.modificationDate=this.modificationDate):this.data.modificationDate=null,s.has("C")?(this.setColor(s.getArray("C")),this.data.color=this.color):this.data.color=null,!this.viewable){const e=s.get("F");this._isViewable(e)&&this.setFlags(e)}this.setTitle(s.get("T")),this.data.titleObj=this._title,this.setContents(s.get("Contents")),this.data.contentsObj=this._contents,s.has("RC")&&(this.data.richText=Nk.getRichTextAsHtml(s.get("RC"))),this.data.open=!!t.get("Open")}else Zt("Popup annotation has a missing or invalid parent annotation.")}static createNewDict(e,t,s){const{oldAnnotation:a,rect:i,parent:n}=e,r=a||new Ps(t);return r.setIfNotExists("Type",Ns.get("Annot")),r.setIfNotExists("Subtype",Ns.get("Popup")),r.setIfNotExists("Open",!1),r.setIfArray("Rect",i),r.set("Parent",n),r}static async createNewAppearanceStream(e,t,s){return null}}class Kk extends qk{constructor(e){super(e),this.data.hasOwnCanvas=this.data.noRotate,this.data.isEditable=!this.data.noHTML,this.data.noHTML=!1;const{annotationGlobals:t,evaluatorOptions:s,xref:a}=e;if(this.data.annotationType=F.FREETEXT,this.setDefaultAppearance(e),this._hasAppearance=!!this.appearance,this._hasAppearance){const{fontColor:e,fontSize:i}=function(e,t,s,a){return new vu(e,t,s,a).parse()}(this.appearance,s,a,t.globalColorSpaceCache);this.data.defaultAppearanceData.fontColor=e,this.data.defaultAppearanceData.fontSize=i||10}else{this.data.defaultAppearanceData.fontSize||=10;const{fontColor:t,fontSize:s}=this.data.defaultAppearanceData;if(this._contents.str){this.data.textContent=this._contents.str.split(/\r\n?|\n/).map(e=>e.trimEnd());const{coords:e,bbox:t,matrix:a}=Cu.getFirstPositionInfo(this.rectangle,this.rotation,s);this.data.textPosition=this._transformPoint(e,t,a)}if(this._isOffscreenCanvasSupported){const i=e.dict.get("CA"),n=new Cu(a,"sans-serif");this.appearance=n.createAppearance(this._contents.str,this.rectangle,this.rotation,s,t,i),this._streams.push(this.appearance)}else Zt("FreeTextAnnotation: OffscreenCanvas is not supported, annotation may not render correctly.")}}get hasTextContent(){return this._hasAppearance}static createNewDict(e,t,{apRef:s,ap:a}){const{color:i,date:n,fontSize:r,oldAnnotation:o,rect:c,rotation:l,user:h,value:u}=e,d=o||new Ps(t);d.setIfNotExists("Type",Ns.get("Annot")),d.setIfNotExists("Subtype",Ns.get("FreeText")),d.set(o?"M":"CreationDate",`D:${vs(n)}`),o&&d.delete("RC"),d.setIfArray("Rect",c);const f=`/Helv ${r} Tf ${Au(i,!0)}`;if(d.set("DA",f),d.setIfDefined("Contents",Fa(u)),d.setIfNotExists("F",4),d.setIfNotExists("Border",[0,0,0]),d.setIfNumber("Rotate",l),d.setIfDefined("T",Fa(h)),s||a){const e=new Ps(t);d.set("AP",e),e.set("N",s||a)}return d}static async createNewAppearanceStream(e,t,a){const{baseFontRef:i,evaluator:n,task:r}=a,{color:o,fontSize:c,rect:l,rotation:h,value:u}=e;if(!o)return null;const d=new Ps(t),f=new Ps(t);if(i)f.set("Helv",i);else{const e=new Ps(t);e.setIfName("BaseFont","Helvetica"),e.setIfName("Type","Font"),e.setIfName("Subtype","Type1"),e.setIfName("Encoding","WinAnsiEncoding"),f.set("Helv",e)}d.set("Font",f);const g=await jk._getFontData(n,r,{fontName:"Helv",fontSize:c},d),[p,m,b,w]=l;let y=b-p,x=w-m;h%180!=0&&([y,x]=[x,y]);const k=u.split("\n"),v=c/1e3;let A=-1/0;const C=[];for(let s of k){const e=g.encodeString(s);if(e.length>1)return null;s=e.join(""),C.push(s);let t=0;const a=g.charsToGlyphs(s);for(const s of a)t+=s.width*v;A=Math.max(A,t)}let S=1;A>y&&(S=y/A);let I=1;const B=s*c,F=1*c,M=B*k.length;M>x&&(I=x/M);const T=c*Math.min(S,I);let R,N,D;switch(h){case 0:D=[1,0,0,1],N=[l[0],l[1],y,x],R=[l[0],l[3]-F];break;case 90:D=[0,1,-1,0],N=[l[1],-l[2],y,x],R=[l[1],-l[0]-F];break;case 180:D=[-1,0,0,-1],N=[-l[2],-l[3],y,x],R=[-l[2],-l[1]-F];break;case 270:D=[0,-1,1,0],N=[-l[3],l[0],y,x],R=[-l[3],l[2]-F]}const O=["q",`${D.join(" ")} 0 0 cm`,`${N.join(" ")} re W n`,"BT",`${Au(o,!0)}`,`0 Tc /Helv ${Ia(T)} Tf`];O.push(`${R.join(" ")} Td (${ba(C[0])}) Tj`);const P=Ia(B);for(let s=1,U=C.length;s<U;s++){const e=C[s];O.push(`0 -${P} Td (${ba(e)}) Tj`)}O.push("ET","Q");const E=O.join("\n"),L=new Ps(t);L.set("FormType",1),L.setIfName("Subtype","Form"),L.setIfName("Type","XObject"),L.set("BBox",l),L.set("Resources",d),L.set("Matrix",[1,0,0,1,-l[0],-l[1]]);const _=new ri(E);return _.dict=L,_}}class Yk extends qk{constructor(e){super(e);const{dict:t,xref:s}=e;this.data.annotationType=F.LINE,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1;const a=fa(t.getArray("L"),[0,0,0,0]);if(this.data.lineCoordinates=ms.normalizeRect(a),this.setLineEndings(t.getArray("LE")),this.data.lineEndings=this.lineEndings,!this.appearance){const e=Pk(this.color,[0,0,0]),i=t.get("CA"),n=Pk(Ok(t.getArray("IC"),null)),r=n?i:null,o=this.borderStyle.width||1,c=2*o,l=[this.data.lineCoordinates[0]-c,this.data.lineCoordinates[1]-c,this.data.lineCoordinates[2]+c,this.data.lineCoordinates[3]+c];ms.intersect(this.rectangle,l)||(this.rectangle=l),this._setDefaultAppearance({xref:s,extra:`${o} w`,strokeColor:e,fillColor:n,strokeAlpha:i,fillAlpha:r,pointsCallback:(e,t)=>(e.push(`${a[0]} ${a[1]} m`,`${a[2]} ${a[3]} l`,"S"),[t[0]-o,t[7]-o,t[2]+o,t[3]+o])})}}}class Jk extends qk{constructor(e){super(e);const{dict:t,xref:s}=e;if(this.data.annotationType=F.SQUARE,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1,!this.appearance){const e=Pk(this.color,[0,0,0]),a=t.get("CA"),i=Pk(Ok(t.getArray("IC"),null)),n=i?a:null;if(0===this.borderStyle.width&&!i)return;this._setDefaultAppearance({xref:s,extra:`${this.borderStyle.width} w`,strokeColor:e,fillColor:i,strokeAlpha:a,fillAlpha:n,pointsCallback:(e,t)=>{const s=t[4]+this.borderStyle.width/2,a=t[5]+this.borderStyle.width/2,n=t[6]-t[4]-this.borderStyle.width,r=t[3]-t[7]-this.borderStyle.width;return e.push(`${s} ${a} ${n} ${r} re`),i?e.push("B"):e.push("S"),[t[0],t[7],t[2],t[3]]}})}}}class Zk extends qk{constructor(e){super(e);const{dict:t,xref:s}=e;if(this.data.annotationType=F.CIRCLE,!this.appearance){const e=Pk(this.color,[0,0,0]),a=t.get("CA"),i=Pk(Ok(t.getArray("IC"),null)),n=i?a:null;if(0===this.borderStyle.width&&!i)return;const r=4/3*Math.tan(Math.PI/8);this._setDefaultAppearance({xref:s,extra:`${this.borderStyle.width} w`,strokeColor:e,fillColor:i,strokeAlpha:a,fillAlpha:n,pointsCallback:(e,t)=>{const s=t[0]+this.borderStyle.width/2,a=t[1]-this.borderStyle.width/2,n=t[6]-this.borderStyle.width/2,o=t[7]+this.borderStyle.width/2,c=s+(n-s)/2,l=a+(o-a)/2,h=(n-s)/2*r,u=(o-a)/2*r;return e.push(`${c} ${o} m`,`${c+h} ${o} ${n} ${l+u} ${n} ${l} c`,`${n} ${l-u} ${c+h} ${a} ${c} ${a} c`,`${c-h} ${a} ${s} ${l-u} ${s} ${l} c`,`${s} ${l+u} ${c-h} ${o} ${c} ${o} c`,"h"),i?e.push("B"):e.push("S"),[t[0],t[7],t[2],t[3]]}})}}}class Qk extends qk{constructor(e){super(e);const{dict:t,xref:s}=e;this.data.annotationType=F.POLYLINE,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1,this.data.vertices=null,this instanceof ev||(this.setLineEndings(t.getArray("LE")),this.data.lineEndings=this.lineEndings);const a=t.getArray("Vertices");if(!ua(a,null))return;const i=this.data.vertices=Float32Array.from(a);if(!this.appearance){const e=Pk(this.color,[0,0,0]),a=t.get("CA");let n,r=Ok(t.getArray("IC"),null);r&&(r=Pk(r)),n=r?this.color?r.every((t,s)=>t===e[s])?"f":"B":"f":"S";const o=this.borderStyle.width||1,c=2*o,l=[1/0,1/0,-1/0,-1/0];for(let t=0,s=i.length;t<s;t+=2)ms.rectBoundingBox(i[t]-c,i[t+1]-c,i[t]+c,i[t+1]+c,l);ms.intersect(this.rectangle,l)||(this.rectangle=l),this._setDefaultAppearance({xref:s,extra:`${o} w`,strokeColor:e,strokeAlpha:a,fillColor:r,fillAlpha:r?a:null,pointsCallback:(e,t)=>{for(let s=0,a=i.length;s<a;s+=2)e.push(`${i[s]} ${i[s+1]} ${0===s?"m":"l"}`);return e.push(n),[t[0],t[7],t[2],t[3]]}})}}}class ev extends Qk{constructor(e){super(e),this.data.annotationType=F.POLYGON}}class tv extends qk{constructor(e){super(e),this.data.annotationType=F.CARET}}class sv extends qk{constructor(e){super(e),this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1;const{dict:t,xref:s}=e;this.data.annotationType=F.INK,this.data.inkLists=[],this.data.isEditable=!this.data.noHTML,this.data.noHTML=!1,this.data.opacity=t.get("CA")||1;const a=t.getArray("InkList");if(Array.isArray(a)){for(let e=0,t=a.length;e<t;++e){if(!Array.isArray(a[e]))continue;const t=new Float32Array(a[e].length);this.data.inkLists.push(t);for(let i=0,n=a[e].length;i<n;i+=2){const n=s.fetchIfRef(a[e][i]),r=s.fetchIfRef(a[e][i+1]);"number"==typeof n&&"number"==typeof r&&(t[i]=n,t[i+1]=r)}}if(!this.appearance){const e=Pk(this.color,[0,0,0]),a=t.get("CA"),i=this.borderStyle.width||1,n=2*i,r=[1/0,1/0,-1/0,-1/0];for(const t of this.data.inkLists)for(let e=0,s=t.length;e<s;e+=2)ms.rectBoundingBox(t[e]-n,t[e+1]-n,t[e]+n,t[e+1]+n,r);ms.intersect(this.rectangle,r)||(this.rectangle=r),this._setDefaultAppearance({xref:s,extra:`${i} w`,strokeColor:e,strokeAlpha:a,pointsCallback:(e,t)=>{for(const s of this.data.inkLists){for(let t=0,a=s.length;t<a;t+=2)e.push(`${s[t]} ${s[t+1]} ${0===t?"m":"l"}`);e.push("S")}return[t[0],t[7],t[2],t[3]]}})}}}static createNewDict(e,t,{apRef:s,ap:a}){const{oldAnnotation:i,color:n,date:r,opacity:o,paths:c,outlines:l,rect:h,rotation:u,thickness:d,user:f}=e,g=i||new Ps(t);if(g.setIfNotExists("Type",Ns.get("Annot")),g.setIfNotExists("Subtype",Ns.get("Ink")),g.set(i?"M":"CreationDate",`D:${vs(r)}`),g.setIfArray("Rect",h),g.setIfArray("InkList",l?.points||c?.points),g.setIfNotExists("F",4),g.setIfNumber("Rotate",u),g.setIfDefined("T",Fa(f)),l&&g.setIfName("IT","InkHighlight"),d>0){const e=new Ps(t);g.set("BS",e),e.set("W",d)}if(g.setIfArray("C",Pk(n)),g.setIfNumber("CA",o),a||s){const e=new Ps(t);g.set("AP",e),e.set("N",s||a)}return g}static async createNewAppearanceStream(e,t,s){if(e.outlines)return this.createNewAppearanceStreamForHighlight(e,t,s);const{color:a,rect:i,paths:n,thickness:r,opacity:o}=e;if(!a)return null;const c=[`${r} w 1 J 1 j`,`${Au(a,!1)}`];1!==o&&c.push("/R0 gs");for(const d of n.lines){c.push(`${Ia(d[4])} ${Ia(d[5])} m`);for(let e=6,t=d.length;e<t;e+=6)if(isNaN(d[e]))c.push(`${Ia(d[e+4])} ${Ia(d[e+5])} l`);else{const[t,s,a,i,n,r]=d.slice(e,e+6);c.push([t,s,a,i,n,r].map(Ia).join(" ")+" c")}6===d.length&&c.push(`${Ia(d[4])} ${Ia(d[5])} l`)}c.push("S");const l=c.join("\n"),h=new Ps(t);if(h.set("FormType",1),h.setIfName("Subtype","Form"),h.setIfName("Type","XObject"),h.set("BBox",i),h.set("Length",l.length),1!==o){const e=new Ps(t),s=new Ps(t),a=new Ps(t);a.set("CA",o),a.setIfName("Type","ExtGState"),s.set("R0",a),e.set("ExtGState",s),h.set("Resources",e)}const u=new ri(l);return u.dict=h,u}static async createNewAppearanceStreamForHighlight(e,t,s){const{color:a,rect:i,outlines:{outline:n},opacity:r}=e;if(!a)return null;const o=[`${Au(a,!0)}`,"/R0 gs"];o.push(`${Ia(n[4])} ${Ia(n[5])} m`);for(let g=6,p=n.length;g<p;g+=6)if(isNaN(n[g]))o.push(`${Ia(n[g+4])} ${Ia(n[g+5])} l`);else{const[e,t,s,a,i,r]=n.slice(g,g+6);o.push([e,t,s,a,i,r].map(Ia).join(" ")+" c")}o.push("h f");const c=o.join("\n"),l=new Ps(t);l.set("FormType",1),l.setIfName("Subtype","Form"),l.setIfName("Type","XObject"),l.set("BBox",i),l.set("Length",c.length);const h=new Ps(t),u=new Ps(t);h.set("ExtGState",u),l.set("Resources",h);const d=new Ps(t);u.set("R0",d),d.setIfName("BM","Multiply"),1!==r&&(d.set("ca",r),d.setIfName("Type","ExtGState"));const f=new ri(c);return f.dict=l,f}}class av extends qk{constructor(e){super(e);const{dict:t,xref:s}=e;if(this.data.annotationType=F.HIGHLIGHT,this.data.isEditable=!this.data.noHTML,this.data.noHTML=!1,this.data.opacity=t.get("CA")||1,this.data.quadPoints=Ek(t,null)){const e=this.appearance?.dict.get("Resources");if(!this.appearance||!e?.has("ExtGState")){this.appearance&&Zt("HighlightAnnotation - ignoring built-in appearance stream.");const e=Pk(this.color,[1,1,0]),a=t.get("CA");this._setDefaultAppearance({xref:s,fillColor:e,blendMode:"Multiply",fillAlpha:a,pointsCallback:(e,t)=>(e.push(`${t[0]} ${t[1]} m`,`${t[2]} ${t[3]} l`,`${t[6]} ${t[7]} l`,`${t[4]} ${t[5]} l`,"f"),[t[0],t[7],t[2],t[3]])})}}else this.data.popupRef=null}get overlaysTextContent(){return!0}static createNewDict(e,t,{apRef:s,ap:a}){const{color:i,date:n,oldAnnotation:r,opacity:o,rect:c,rotation:l,user:h,quadPoints:u}=e,d=r||new Ps(t);if(d.setIfNotExists("Type",Ns.get("Annot")),d.setIfNotExists("Subtype",Ns.get("Highlight")),d.set(r?"M":"CreationDate",`D:${vs(n)}`),d.setIfArray("Rect",c),d.setIfNotExists("F",4),d.setIfNotExists("Border",[0,0,0]),d.setIfNumber("Rotate",l),d.setIfArray("QuadPoints",u),d.setIfArray("C",Pk(i)),d.setIfNumber("CA",o),d.setIfDefined("T",Fa(h)),s||a){const e=new Ps(t);d.set("AP",e),e.set("N",s||a)}return d}static async createNewAppearanceStream(e,t,s){const{color:a,rect:i,outlines:n,opacity:r}=e;if(!a)return null;const o=[`${Au(a,!0)}`,"/R0 gs"],c=[];for(const p of n){c.length=0,c.push(`${Ia(p[0])} ${Ia(p[1])} m`);for(let e=2,t=p.length;e<t;e+=2)c.push(`${Ia(p[e])} ${Ia(p[e+1])} l`);c.push("h"),o.push(c.join("\n"))}o.push("f*");const l=o.join("\n"),h=new Ps(t);h.set("FormType",1),h.setIfName("Subtype","Form"),h.setIfName("Type","XObject"),h.set("BBox",i),h.set("Length",l.length);const u=new Ps(t),d=new Ps(t);u.set("ExtGState",d),h.set("Resources",u);const f=new Ps(t);d.set("R0",f),f.setIfName("BM","Multiply"),1!==r&&(f.set("ca",r),f.setIfName("Type","ExtGState"));const g=new ri(l);return g.dict=h,g}}class iv extends qk{constructor(e){super(e);const{dict:t,xref:s}=e;if(this.data.annotationType=F.UNDERLINE,this.data.quadPoints=Ek(t,null)){if(!this.appearance){const e=Pk(this.color,[0,0,0]),a=t.get("CA");this._setDefaultAppearance({xref:s,extra:"[] 0 d 0.571 w",strokeColor:e,strokeAlpha:a,pointsCallback:(e,t)=>(e.push(`${t[4]} ${t[5]+1.3} m`,`${t[6]} ${t[7]+1.3} l`,"S"),[t[0],t[7],t[2],t[3]])})}}else this.data.popupRef=null}get overlaysTextContent(){return!0}}class nv extends qk{constructor(e){super(e);const{dict:t,xref:s}=e;if(this.data.annotationType=F.SQUIGGLY,this.data.quadPoints=Ek(t,null)){if(!this.appearance){const e=Pk(this.color,[0,0,0]),a=t.get("CA");this._setDefaultAppearance({xref:s,extra:"[] 0 d 1 w",strokeColor:e,strokeAlpha:a,pointsCallback:(e,t)=>{const s=(t[1]-t[5])/6;let a=s,i=t[4];const n=t[5],r=t[6];e.push(`${i} ${n+a} m`);do{i+=2,a=0===a?s:0,e.push(`${i} ${n+a} l`)}while(i<r);return e.push("S"),[t[4],n-2*s,r,n+2*s]}})}}else this.data.popupRef=null}get overlaysTextContent(){return!0}}class rv extends qk{constructor(e){super(e);const{dict:t,xref:s}=e;if(this.data.annotationType=F.STRIKEOUT,this.data.quadPoints=Ek(t,null)){if(!this.appearance){const e=Pk(this.color,[0,0,0]),a=t.get("CA");this._setDefaultAppearance({xref:s,extra:"[] 0 d 1 w",strokeColor:e,strokeAlpha:a,pointsCallback:(e,t)=>(e.push((t[0]+t[4])/2+" "+(t[1]+t[5])/2+" m",(t[2]+t[6])/2+" "+(t[3]+t[7])/2+" l","S"),[t[0],t[7],t[2],t[3]])})}}else this.data.popupRef=null}get overlaysTextContent(){return!0}}class ov extends qk{#De=null;constructor(e){super(e),this.data.annotationType=F.STAMP,this.data.hasOwnCanvas=this.data.noRotate,this.data.isEditable=!this.data.noHTML,this.data.noHTML=!1}mustBeViewedWhenEditing(e,t=null){return e?!this.data.isEditable||(this.#De??=this.data.hasOwnCanvas,this.data.hasOwnCanvas=!0,!0):(null!==this.#De&&(this.data.hasOwnCanvas=this.#De,this.#De=null),!t?.has(this.data.id))}static async createImage(e,t){const{width:s,height:a}=e,i=new OffscreenCanvas(s,a),n=i.getContext("2d",{alpha:!0});n.drawImage(e,0,0);const r=n.getImageData(0,0,s,a).data,o=new Uint32Array(r.buffer),c=o.some(gs.isLittleEndian?e=>e>>>24!=255:e=>!!(255&~e));c&&(n.fillStyle="white",n.fillRect(0,0,s,a),n.drawImage(e,0,0));const l=i.convertToBlob({type:"image/jpeg",quality:1}).then(e=>e.arrayBuffer()),h=Ns.get("XObject"),u=Ns.get("Image"),d=new Ps(t);d.set("Type",h),d.set("Subtype",u),d.set("BitsPerComponent",8),d.setIfName("ColorSpace","DeviceRGB"),d.setIfName("Filter","DCTDecode"),d.set("BBox",[0,0,s,a]),d.set("Width",s),d.set("Height",a);let f=null;if(c){const e=new Uint8Array(o.length);if(gs.isLittleEndian)for(let t=0,s=o.length;t<s;t++)e[t]=o[t]>>>24;else for(let t=0,s=o.length;t<s;t++)e[t]=255&o[t];const i=new Ps(t);i.set("Type",h),i.set("Subtype",u),i.set("BitsPerComponent",8),i.setIfName("ColorSpace","DeviceGray"),i.set("Width",s),i.set("Height",a),f=new ni(e,0,0,i)}return{imageStream:new ni(await l,0,0,d),smaskStream:f,width:s,height:a}}static createNewDict(e,t,{apRef:s,ap:a}){const{date:i,oldAnnotation:n,rect:r,rotation:o,user:c}=e,l=n||new Ps(t);if(l.setIfNotExists("Type",Ns.get("Annot")),l.setIfNotExists("Subtype",Ns.get("Stamp")),l.set(n?"M":"CreationDate",`D:${vs(i)}`),l.setIfArray("Rect",r),l.setIfNotExists("F",4),l.setIfNotExists("Border",[0,0,0]),l.setIfNumber("Rotate",o),l.setIfDefined("T",Fa(c)),s||a){const e=new Ps(t);l.set("AP",e),e.set("N",s||a)}return l}static async#Oe(e,t){const{areContours:s,color:a,rect:i,lines:n,thickness:r}=e;if(!a)return null;const o=[`${r} w 1 J 1 j`,`${Au(a,s)}`];for(const u of n){o.push(`${Ia(u[4])} ${Ia(u[5])} m`);for(let e=6,t=u.length;e<t;e+=6)if(isNaN(u[e]))o.push(`${Ia(u[e+4])} ${Ia(u[e+5])} l`);else{const[t,s,a,i,n,r]=u.slice(e,e+6);o.push([t,s,a,i,n,r].map(Ia).join(" ")+" c")}6===u.length&&o.push(`${Ia(u[4])} ${Ia(u[5])} l`)}o.push(s?"F":"S");const c=o.join("\n"),l=new Ps(t);l.set("FormType",1),l.setIfName("Subtype","Form"),l.setIfName("Type","XObject"),l.set("BBox",i),l.set("Length",c.length);const h=new ri(c);return h.dict=l,h}static async createNewAppearanceStream(e,t,s){if(e.oldAnnotation)return null;if(e.isSignature)return this.#Oe(e,t);const{rotation:a}=e,{imageRef:i,width:n,height:r}=s.image,o=new Ps(t),c=new Ps(t);o.set("XObject",c),c.set("Im0",i);const l=`q ${n} 0 0 ${r} 0 0 cm /Im0 Do Q`,h=new Ps(t);if(h.set("FormType",1),h.setIfName("Subtype","Form"),h.setIfName("Type","XObject"),h.set("BBox",[0,0,n,r]),h.set("Resources",o),a){const e=Ra(a,n,r);h.set("Matrix",e)}const u=new ri(l);return u.dict=h,u}}class cv extends qk{constructor(e){super(e);const{dict:t,xref:s}=e,a=new Nu(t.get("FS"),s);this.data.annotationType=F.FILEATTACHMENT,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1,this.data.file=a.serializable;const i=t.get("Name");this.data.name=i instanceof Ns?ws(i.name):"PushPin";const n=t.get("ca");this.data.fillAlpha="number"==typeof n&&n>=0&&n<=1?n:null}}const lv={get r(){return ss(this,"r",new Uint8Array([7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21]))},get k(){return ss(this,"k",new Int32Array([-680876936,-389564586,606105819,-1044525330,-176418897,1200080426,-1473231341,-45705983,1770035416,-1958414417,-42063,-1990404162,1804603682,-40341101,-1502002290,1236535329,-165796510,-1069501632,643717713,-373897302,-701558691,38016083,-660478335,-405537848,568446438,-1019803690,-187363961,1163531501,-1444681467,-51403784,1735328473,-1926607734,-378558,-2022574463,1839030562,-35309556,-1530992060,1272893353,-155497632,-1094730640,681279174,-358537222,-722521979,76029189,-640364487,-421815835,530742520,-995338651,-198630844,1126891415,-1416354905,-57434055,1700485571,-1894986606,-1051523,-2054922799,1873313359,-30611744,-1560198380,1309151649,-145523070,-1120210379,718787259,-343485551]))}};function hv(e,t,s){let a=1732584193,i=-271733879,n=-1732584194,r=271733878;const o=s+72&-64,c=new Uint8Array(o);let l,h;for(l=0;l<s;++l)c[l]=e[t++];c[l++]=128;const u=o-8;l<u&&(l=u),c[l++]=s<<3&255,c[l++]=s>>5&255,c[l++]=s>>13&255,c[l++]=s>>21&255,c[l++]=s>>>29&255,l+=3;const d=new Int32Array(16),{k:f,r:g}=lv;for(l=0;l<o;){for(h=0;h<16;++h,l+=4)d[h]=c[l]|c[l+1]<<8|c[l+2]<<16|c[l+3]<<24;let e,t,s=a,o=i,u=n,p=r;for(h=0;h<64;++h){h<16?(e=o&u|~o&p,t=h):h<32?(e=p&o|~p&u,t=5*h+1&15):h<48?(e=o^u^p,t=3*h+5&15):(e=u^(o|~p),t=7*h&15);const a=p,i=s+e+f[h]+d[t]|0,n=g[h];p=u,u=o,o=o+(i<<n|i>>>32-n)|0,s=a}a=a+s|0,i=i+o|0,n=n+u|0,r=r+p|0}return new Uint8Array([255&a,a>>8&255,a>>16&255,a>>>24&255,255&i,i>>8&255,i>>16&255,i>>>24&255,255&n,n>>8&255,n>>16&255,n>>>24&255,255&r,r>>8&255,r>>16&255,r>>>24&255])}function uv(e){try{return ys(e)}catch(t){return Zt(`UTF-8 decoding failed: "${t}".`),e}}class dv extends $u{constructor(e){super(e),this.node=null}onEndElement(e){const t=super.onEndElement(e);if(t&&"xfa:datasets"===e)throw this.node=t,new Error("Aborting DatasetXMLParser.")}}class fv{constructor(e){if(e.datasets)this.node=new $u({hasAttributes:!0}).parseFromString(e.datasets).documentElement;else{const t=new dv({hasAttributes:!0});try{t.parseFromString(e["xdp:xdp"])}catch{}this.node=t.node}}getValue(e){if(!this.node||!e)return"";const t=this.node.searchNode(pa(e),0);if(!t)return"";const s=t.firstChild;return"value"===s?.nodeName?t.children.map(e=>uv(e.textContent)):uv(t.textContent)}}class gv{#Pe;minX=1/0;minY=1/0;maxX=-1/0;maxY=-1/0;#Ee=null;#Le=[];#_e=[];#Ue=-1;#qe=!1;constructor(e){this.#Pe=e;const t=e.data.quadPoints;if(t){for(let e=0,s=t.length;e<s;e+=8)this.minX=Math.min(this.minX,t[e]),this.maxX=Math.max(this.maxX,t[e+2]),this.minY=Math.min(this.minY,t[e+5]),this.maxY=Math.max(this.maxY,t[e+1]);t.length>8&&(this.#Ee=t)}else[this.minX,this.minY,this.maxX,this.maxY]=e.data.rect}#je(e,t){if(this.minX>=e||this.maxX<=e||this.minY>=t||this.maxY<=t)return!1;const s=this.#Ee;if(!s)return!0;if(this.#Ue>=0){const a=this.#Ue;if(!(s[a]>=e||s[a+2]<=e||s[a+5]>=t||s[a+1]<=t))return!0;this.#Ue=-1}for(let a=0,i=s.length;a<i;a+=8)if(!(s[a]>=e||s[a+2]<=e||s[a+5]>=t||s[a+1]<=t))return this.#Ue=a,!0;return!1}addGlyph(e,t,s){return this.#je(e,t)?(this.#_e.length>0&&(this.#Le.push(this.#_e.join("")),this.#_e.length=0),this.#Le.push(s),this.#qe=!0,!0):(this.disableExtraChars(),!1)}addExtraChar(e){this.#qe&&this.#_e.push(e)}disableExtraChars(){this.#qe&&(this.#qe=!1,this.#_e.length=0)}setText(){this.#Pe.data.overlaidText=this.#Le.join("")}}const pv=64;class mv{#He=[];#$e=[];#ze;#Ge;#We;#Ve;#Xe;#Ke;constructor(e){let t=1/0,s=1/0,a=-1/0,i=-1/0;const n=this.#He;for(const r of e){if(!r.data.quadPoints&&!r.data.rect)continue;const e=new gv(r);n.push(e),t=Math.min(t,e.minX),s=Math.min(s,e.minY),a=Math.max(a,e.maxX),i=Math.max(i,e.maxY)}this.#ze=t,this.#We=s,this.#Ge=a,this.#Ve=i,this.#Xe=63/(a-t),this.#Ke=63/(i-s);for(const r of n){const e=this.#Ye(r.minX,r.minY),t=this.#Ye(r.maxX,r.maxY),s=(t-e)%pv,a=Math.floor((t-e)/pv);for(let i=e;i<=e+a*pv;i+=pv)for(let e=0;e<=s;e++){let t=this.#$e[i+e];t||(this.#$e[i+e]=t=[]),t.push(r)}}}#Ye(e,t){return Math.floor((e-this.#ze)*this.#Xe)+Math.floor((t-this.#We)*this.#Ke)*pv}addGlyph(e,t,s,a){const i=e[4]+t/2,n=e[5]+s/2;if(i<this.#ze||n<this.#We||i>this.#Ge||n>this.#Ve)return;const r=this.#$e[this.#Ye(i,n)];if(r)for(const o of r)o.addGlyph(i,n,a)}addExtraChar(e){for(const t of this.#He)t.addExtraChar(e)}setText(){for(const e of this.#He)e.setText()}}class bv{constructor(e,t){this.high=0|e,this.low=0|t}and(e){this.high&=e.high,this.low&=e.low}xor(e){this.high^=e.high,this.low^=e.low}shiftRight(e){e>=32?(this.low=this.high>>>e-32|0,this.high=0):(this.low=this.low>>>e|this.high<<32-e,this.high=this.high>>>e|0)}rotateRight(e){let t,s;32&e?(s=this.low,t=this.high):(t=this.low,s=this.high),e&=31,this.low=t>>>e|s<<32-e,this.high=s>>>e|t<<32-e}not(){this.high=~this.high,this.low=~this.low}add(e){const t=(this.low>>>0)+(e.low>>>0);let s=(this.high>>>0)+(e.high>>>0);t>4294967295&&(s+=1),this.low=0|t,this.high=0|s}copyTo(e,t){e[t]=this.high>>>24&255,e[t+1]=this.high>>16&255,e[t+2]=this.high>>8&255,e[t+3]=255&this.high,e[t+4]=this.low>>>24&255,e[t+5]=this.low>>16&255,e[t+6]=this.low>>8&255,e[t+7]=255&this.low}assign(e){this.high=e.high,this.low=e.low}}const wv={get k(){return ss(this,"k",[new bv(1116352408,3609767458),new bv(1899447441,602891725),new bv(3049323471,3964484399),new bv(3921009573,2173295548),new bv(961987163,4081628472),new bv(1508970993,3053834265),new bv(2453635748,2937671579),new bv(2870763221,3664609560),new bv(3624381080,2734883394),new bv(310598401,1164996542),new bv(607225278,1323610764),new bv(1426881987,3590304994),new bv(1925078388,4068182383),new bv(2162078206,991336113),new bv(2614888103,633803317),new bv(3248222580,3479774868),new bv(3835390401,2666613458),new bv(4022224774,944711139),new bv(264347078,2341262773),new bv(604807628,2007800933),new bv(770255983,1495990901),new bv(1249150122,1856431235),new bv(1555081692,3175218132),new bv(1996064986,2198950837),new bv(2554220882,3999719339),new bv(2821834349,766784016),new bv(2952996808,2566594879),new bv(3210313671,3203337956),new bv(3336571891,1034457026),new bv(3584528711,2466948901),new bv(113926993,3758326383),new bv(338241895,168717936),new bv(666307205,1188179964),new bv(773529912,1546045734),new bv(1294757372,1522805485),new bv(1396182291,2643833823),new bv(1695183700,2343527390),new bv(1986661051,1014477480),new bv(2177026350,1206759142),new bv(2456956037,344077627),new bv(2730485921,1290863460),new bv(2820302411,3158454273),new bv(3259730800,3505952657),new bv(3345764771,106217008),new bv(3516065817,3606008344),new bv(3600352804,1432725776),new bv(4094571909,1467031594),new bv(275423344,851169720),new bv(430227734,3100823752),new bv(506948616,1363258195),new bv(659060556,3750685593),new bv(883997877,3785050280),new bv(958139571,3318307427),new bv(1322822218,3812723403),new bv(1537002063,2003034995),new bv(1747873779,3602036899),new bv(1955562222,1575990012),new bv(2024104815,1125592928),new bv(2227730452,2716904306),new bv(2361852424,442776044),new bv(2428436474,593698344),new bv(2756734187,3733110249),new bv(3204031479,2999351573),new bv(3329325298,3815920427),new bv(3391569614,3928383900),new bv(3515267271,566280711),new bv(3940187606,3454069534),new bv(4118630271,4000239992),new bv(116418474,1914138554),new bv(174292421,2731055270),new bv(289380356,3203993006),new bv(460393269,320620315),new bv(685471733,587496836),new bv(852142971,1086792851),new bv(1017036298,365543100),new bv(1126000580,2618297676),new bv(1288033470,3409855158),new bv(1501505948,4234509866),new bv(1607167915,987167468),new bv(1816402316,1246189591)])}};function yv(e,t,s,a,i){e.assign(t),e.and(s),i.assign(t),i.not(),i.and(a),e.xor(i)}function xv(e,t,s,a,i){e.assign(t),e.and(s),i.assign(t),i.and(a),e.xor(i),i.assign(s),i.and(a),e.xor(i)}function kv(e,t,s){e.assign(t),e.rotateRight(28),s.assign(t),s.rotateRight(34),e.xor(s),s.assign(t),s.rotateRight(39),e.xor(s)}function vv(e,t,s){e.assign(t),e.rotateRight(14),s.assign(t),s.rotateRight(18),e.xor(s),s.assign(t),s.rotateRight(41),e.xor(s)}function Av(e,t,s){e.assign(t),e.rotateRight(1),s.assign(t),s.rotateRight(8),e.xor(s),s.assign(t),s.shiftRight(7),e.xor(s)}function Cv(e,t,s){e.assign(t),e.rotateRight(19),s.assign(t),s.rotateRight(61),e.xor(s),s.assign(t),s.shiftRight(6),e.xor(s)}function Sv(e,t,s,a=!1){let i,n,r,o,c,l,h,u;a?(i=new bv(3418070365,3238371032),n=new bv(1654270250,914150663),r=new bv(2438529370,812702999),o=new bv(355462360,4144912697),c=new bv(1731405415,4290775857),l=new bv(2394180231,1750603025),h=new bv(3675008525,1694076839),u=new bv(1203062813,3204075428)):(i=new bv(1779033703,4089235720),n=new bv(3144134277,2227873595),r=new bv(1013904242,4271175723),o=new bv(2773480762,1595750129),c=new bv(1359893119,2917565137),l=new bv(2600822924,725511199),h=new bv(528734635,4215389547),u=new bv(1541459225,327033209));const d=128*Math.ceil((s+17)/128),f=new Uint8Array(d);let g,p;for(g=0;g<s;++g)f[g]=e[t++];f[g++]=128;const m=d-16;g<m&&(g=m),g+=11,f[g++]=s>>>29&255,f[g++]=s>>21&255,f[g++]=s>>13&255,f[g++]=s>>5&255,f[g++]=s<<3&255;const b=new Array(80);for(g=0;g<80;g++)b[g]=new bv(0,0);const{k:w}=wv;let y=new bv(0,0),x=new bv(0,0),k=new bv(0,0),v=new bv(0,0),A=new bv(0,0),C=new bv(0,0),S=new bv(0,0),I=new bv(0,0);const B=new bv(0,0),F=new bv(0,0),M=new bv(0,0),T=new bv(0,0);let R,N;for(g=0;g<d;){for(p=0;p<16;++p)b[p].high=f[g]<<24|f[g+1]<<16|f[g+2]<<8|f[g+3],b[p].low=f[g+4]<<24|f[g+5]<<16|f[g+6]<<8|f[g+7],g+=8;for(p=16;p<80;++p)R=b[p],Cv(R,b[p-2],T),R.add(b[p-7]),Av(M,b[p-15],T),R.add(M),R.add(b[p-16]);for(y.assign(i),x.assign(n),k.assign(r),v.assign(o),A.assign(c),C.assign(l),S.assign(h),I.assign(u),p=0;p<80;++p)B.assign(I),vv(M,A,T),B.add(M),yv(M,A,C,S,T),B.add(M),B.add(w[p]),B.add(b[p]),kv(F,y,T),xv(M,y,x,k,T),F.add(M),R=I,I=S,S=C,C=A,v.add(B),A=v,v=k,k=x,x=y,R.assign(B),R.add(F),y=R;i.add(y),n.add(x),r.add(k),o.add(v),c.add(A),l.add(C),h.add(S),u.add(I)}return a?(N=new Uint8Array(48),i.copyTo(N,0),n.copyTo(N,8),r.copyTo(N,16),o.copyTo(N,24),c.copyTo(N,32),l.copyTo(N,40)):(N=new Uint8Array(64),i.copyTo(N,0),n.copyTo(N,8),r.copyTo(N,16),o.copyTo(N,24),c.copyTo(N,32),l.copyTo(N,40),h.copyTo(N,48),u.copyTo(N,56)),N}function Iv(e,t,s){return Sv(e,t,s,!0)}const Bv={get k(){return ss(this,"k",[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298])}};function Fv(e,t){return e>>>t|e<<32-t}function Mv(e,t,s){return e&t^~e&s}function Tv(e,t,s){return e&t^e&s^t&s}function Rv(e){return Fv(e,2)^Fv(e,13)^Fv(e,22)}function Nv(e){return Fv(e,6)^Fv(e,11)^Fv(e,25)}function Dv(e){return Fv(e,7)^Fv(e,18)^e>>>3}function Ov(e){return Fv(e,17)^Fv(e,19)^e>>>10}function Pv(e,t,s){let a=1779033703,i=3144134277,n=1013904242,r=2773480762,o=1359893119,c=2600822924,l=528734635,h=1541459225;const u=64*Math.ceil((s+9)/64),d=new Uint8Array(u);let f,g;for(f=0;f<s;++f)d[f]=e[t++];d[f++]=128;const p=u-8;f<p&&(f=p),f+=3,d[f++]=s>>>29&255,d[f++]=s>>21&255,d[f++]=s>>13&255,d[f++]=s>>5&255,d[f++]=s<<3&255;const m=new Uint32Array(64),{k:b}=Bv;for(f=0;f<u;){for(g=0;g<16;++g)m[g]=d[f]<<24|d[f+1]<<16|d[f+2]<<8|d[f+3],f+=4;for(g=16;g<64;++g)m[g]=Ov(m[g-2])+m[g-7]+Dv(m[g-15])+m[g-16]|0;let e,t,s=a,u=i,p=n,w=r,y=o,x=c,k=l,v=h;for(g=0;g<64;++g)e=v+Nv(y)+Mv(y,x,k)+b[g]+m[g],t=Rv(s)+Tv(s,u,p),v=k,k=x,x=y,y=w+e|0,w=p,p=u,u=s,s=e+t|0;a=a+s|0,i=i+u|0,n=n+p|0,r=r+w|0,o=o+y|0,c=c+x|0,l=l+k|0,h=h+v|0}return new Uint8Array([a>>24&255,a>>16&255,a>>8&255,255&a,i>>24&255,i>>16&255,i>>8&255,255&i,n>>24&255,n>>16&255,n>>8&255,255&n,r>>24&255,r>>16&255,r>>8&255,255&r,o>>24&255,o>>16&255,o>>8&255,255&o,c>>24&255,c>>16&255,c>>8&255,255&c,l>>24&255,l>>16&255,l>>8&255,255&l,h>>24&255,h>>16&255,h>>8&255,255&h])}class Ev extends gi{constructor(e,t,s){super(t),this.stream=e,this.dict=e.dict,this.decrypt=s,this.nextChunk=null,this.initialized=!1}readBlock(){let e;if(this.initialized?e=this.nextChunk:(e=this.stream.getBytes(512),this.initialized=!0),!e?.length)return void(this.eof=!0);this.nextChunk=this.stream.getBytes(512);const t=this.nextChunk?.length>0;e=(0,this.decrypt)(e,!t);const s=this.bufferLength,a=s+e.length;this.ensureBuffer(a).set(e,s),this.bufferLength=a}getOriginalStream(){return this}}class Lv{constructor(e){this.a=0,this.b=0;const t=new Uint8Array(256),s=e.length;for(let a=0;a<256;++a)t[a]=a;for(let a=0,i=0;a<256;++a){const n=t[a];i=i+n+e[a%s]&255,t[a]=t[i],t[i]=n}this.s=t}encryptBlock(e){let t=this.a,s=this.b;const a=this.s,i=e.length,n=new Uint8Array(i);for(let r=0;r<i;++r){t=t+1&255;const i=a[t];s=s+i&255;const o=a[s];a[t]=o,a[s]=i,n[r]=e[r]^a[i+o&255]}return this.a=t,this.b=s,n}decryptBlock(e){return this.encryptBlock(e)}encrypt(e){return this.encryptBlock(e)}}class _v{decryptBlock(e){return e}encrypt(e){return e}}class Uv{_s=new Uint8Array([99,124,119,123,242,107,111,197,48,1,103,43,254,215,171,118,202,130,201,125,250,89,71,240,173,212,162,175,156,164,114,192,183,253,147,38,54,63,247,204,52,165,229,241,113,216,49,21,4,199,35,195,24,150,5,154,7,18,128,226,235,39,178,117,9,131,44,26,27,110,90,160,82,59,214,179,41,227,47,132,83,209,0,237,32,252,177,91,106,203,190,57,74,76,88,207,208,239,170,251,67,77,51,133,69,249,2,127,80,60,159,168,81,163,64,143,146,157,56,245,188,182,218,33,16,255,243,210,205,12,19,236,95,151,68,23,196,167,126,61,100,93,25,115,96,129,79,220,34,42,144,136,70,238,184,20,222,94,11,219,224,50,58,10,73,6,36,92,194,211,172,98,145,149,228,121,231,200,55,109,141,213,78,169,108,86,244,234,101,122,174,8,186,120,37,46,28,166,180,198,232,221,116,31,75,189,139,138,112,62,181,102,72,3,246,14,97,53,87,185,134,193,29,158,225,248,152,17,105,217,142,148,155,30,135,233,206,85,40,223,140,161,137,13,191,230,66,104,65,153,45,15,176,84,187,22]);_inv_s=new Uint8Array([82,9,106,213,48,54,165,56,191,64,163,158,129,243,215,251,124,227,57,130,155,47,255,135,52,142,67,68,196,222,233,203,84,123,148,50,166,194,35,61,238,76,149,11,66,250,195,78,8,46,161,102,40,217,36,178,118,91,162,73,109,139,209,37,114,248,246,100,134,104,152,22,212,164,92,204,93,101,182,146,108,112,72,80,253,237,185,218,94,21,70,87,167,141,157,132,144,216,171,0,140,188,211,10,247,228,88,5,184,179,69,6,208,44,30,143,202,63,15,2,193,175,189,3,1,19,138,107,58,145,17,65,79,103,220,234,151,242,207,206,240,180,230,115,150,172,116,34,231,173,53,133,226,249,55,232,28,117,223,110,71,241,26,113,29,41,197,137,111,183,98,14,170,24,190,27,252,86,62,75,198,210,121,32,154,219,192,254,120,205,90,244,31,221,168,51,136,7,199,49,177,18,16,89,39,128,236,95,96,81,127,169,25,181,74,13,45,229,122,159,147,201,156,239,160,224,59,77,174,42,245,176,200,235,187,60,131,83,153,97,23,43,4,126,186,119,214,38,225,105,20,99,85,33,12,125]);_mix=new Uint32Array([0,235474187,470948374,303765277,941896748,908933415,607530554,708780849,1883793496,2118214995,1817866830,1649639237,1215061108,1181045119,1417561698,1517767529,3767586992,4003061179,4236429990,4069246893,3635733660,3602770327,3299278474,3400528769,2430122216,2664543715,2362090238,2193862645,2835123396,2801107407,3035535058,3135740889,3678124923,3576870512,3341394285,3374361702,3810496343,3977675356,4279080257,4043610186,2876494627,2776292904,3076639029,3110650942,2472011535,2640243204,2403728665,2169303058,1001089995,899835584,666464733,699432150,59727847,226906860,530400753,294930682,1273168787,1172967064,1475418501,1509430414,1942435775,2110667444,1876241833,1641816226,2910219766,2743034109,2976151520,3211623147,2505202138,2606453969,2302690252,2269728455,3711829422,3543599269,3240894392,3475313331,3843699074,3943906441,4178062228,4144047775,1306967366,1139781709,1374988112,1610459739,1975683434,2076935265,1775276924,1742315127,1034867998,866637845,566021896,800440835,92987698,193195065,429456164,395441711,1984812685,2017778566,1784663195,1683407248,1315562145,1080094634,1383856311,1551037884,101039829,135050206,437757123,337553864,1042385657,807962610,573804783,742039012,2531067453,2564033334,2328828971,2227573024,2935566865,2700099354,3001755655,3168937228,3868552805,3902563182,4203181171,4102977912,3736164937,3501741890,3265478751,3433712980,1106041591,1340463100,1576976609,1408749034,2043211483,2009195472,1708848333,1809054150,832877231,1068351396,766945465,599762354,159417987,126454664,361929877,463180190,2709260871,2943682380,3178106961,3009879386,2572697195,2538681184,2236228733,2336434550,3509871135,3745345300,3441850377,3274667266,3910161971,3877198648,4110568485,4211818798,2597806476,2497604743,2261089178,2295101073,2733856160,2902087851,3202437046,2968011453,3936291284,3835036895,4136440770,4169408201,3535486456,3702665459,3467192302,3231722213,2051518780,1951317047,1716890410,1750902305,1113818384,1282050075,1584504582,1350078989,168810852,67556463,371049330,404016761,841739592,1008918595,775550814,540080725,3969562369,3801332234,4035489047,4269907996,3569255213,3669462566,3366754619,3332740144,2631065433,2463879762,2160117071,2395588676,2767645557,2868897406,3102011747,3069049960,202008497,33778362,270040487,504459436,875451293,975658646,675039627,641025152,2084704233,1917518562,1615861247,1851332852,1147550661,1248802510,1484005843,1451044056,933301370,967311729,733156972,632953703,260388950,25965917,328671808,496906059,1206477858,1239443753,1543208500,1441952575,2144161806,1908694277,1675577880,1842759443,3610369226,3644379585,3408119516,3307916247,4011190502,3776767469,4077384432,4245618683,2809771154,2842737049,3144396420,3043140495,2673705150,2438237621,2203032232,2370213795]);_mixCol=new Uint8Array(256).map((e,t)=>t<128?t<<1:t<<1^27);constructor(){this.buffer=new Uint8Array(16),this.bufferPosition=0}_expandKey(e){Qt("Cannot call `_expandKey` on the base class")}_decrypt(e,t){let s,a,i;const n=new Uint8Array(16);n.set(e);for(let r=0,o=this._keySize;r<16;++r,++o)n[r]^=t[o];for(let r=this._cyclesOfRepetition-1;r>=1;--r){s=n[13],n[13]=n[9],n[9]=n[5],n[5]=n[1],n[1]=s,s=n[14],a=n[10],n[14]=n[6],n[10]=n[2],n[6]=s,n[2]=a,s=n[15],a=n[11],i=n[7],n[15]=n[3],n[11]=s,n[7]=a,n[3]=i;for(let e=0;e<16;++e)n[e]=this._inv_s[n[e]];for(let e=0,s=16*r;e<16;++e,++s)n[e]^=t[s];for(let e=0;e<16;e+=4){const t=this._mix[n[e]],a=this._mix[n[e+1]],i=this._mix[n[e+2]],r=this._mix[n[e+3]];s=t^a>>>8^a<<24^i>>>16^i<<16^r>>>24^r<<8,n[e]=s>>>24&255,n[e+1]=s>>16&255,n[e+2]=s>>8&255,n[e+3]=255&s}}s=n[13],n[13]=n[9],n[9]=n[5],n[5]=n[1],n[1]=s,s=n[14],a=n[10],n[14]=n[6],n[10]=n[2],n[6]=s,n[2]=a,s=n[15],a=n[11],i=n[7],n[15]=n[3],n[11]=s,n[7]=a,n[3]=i;for(let r=0;r<16;++r)n[r]=this._inv_s[n[r]],n[r]^=t[r];return n}_encrypt(e,t){const s=this._s;let a,i,n;const r=new Uint8Array(16);r.set(e);for(let o=0;o<16;++o)r[o]^=t[o];for(let o=1;o<this._cyclesOfRepetition;o++){for(let e=0;e<16;++e)r[e]=s[r[e]];n=r[1],r[1]=r[5],r[5]=r[9],r[9]=r[13],r[13]=n,n=r[2],i=r[6],r[2]=r[10],r[6]=r[14],r[10]=n,r[14]=i,n=r[3],i=r[7],a=r[11],r[3]=r[15],r[7]=n,r[11]=i,r[15]=a;for(let e=0;e<16;e+=4){const t=r[e],s=r[e+1],i=r[e+2],n=r[e+3];a=t^s^i^n,r[e]^=a^this._mixCol[t^s],r[e+1]^=a^this._mixCol[s^i],r[e+2]^=a^this._mixCol[i^n],r[e+3]^=a^this._mixCol[n^t]}for(let e=0,s=16*o;e<16;++e,++s)r[e]^=t[s]}for(let o=0;o<16;++o)r[o]=s[r[o]];n=r[1],r[1]=r[5],r[5]=r[9],r[9]=r[13],r[13]=n,n=r[2],i=r[6],r[2]=r[10],r[6]=r[14],r[10]=n,r[14]=i,n=r[3],i=r[7],a=r[11],r[3]=r[15],r[7]=n,r[11]=i,r[15]=a;for(let o=0,c=this._keySize;o<16;++o,++c)r[o]^=t[c];return r}_decryptBlock2(e,t){const s=e.length;let a=this.buffer,i=this.bufferPosition;const n=[];let r=this.iv;for(let l=0;l<s;++l){if(a[i]=e[l],++i,i<16)continue;const t=this._decrypt(a,this._key);for(let e=0;e<16;++e)t[e]^=r[e];r=a,n.push(t),a=new Uint8Array(16),i=0}if(this.buffer=a,this.bufferLength=i,this.iv=r,0===n.length)return new Uint8Array(0);let o=16*n.length;if(t){const e=n.at(-1);let t=e[15];if(t<=16){for(let s=15,a=16-t;s>=a;--s)if(e[s]!==t){t=0;break}o-=t,n[n.length-1]=e.subarray(0,16-t)}}const c=new Uint8Array(o);for(let l=0,h=0,u=n.length;l<u;++l,h+=16)c.set(n[l],h);return c}decryptBlock(e,t,s=null){const a=e.length,i=this.buffer;let n=this.bufferPosition;if(s)this.iv=s;else{for(let t=0;n<16&&t<a;++t,++n)i[n]=e[t];if(n<16)return this.bufferLength=n,new Uint8Array(0);this.iv=i,e=e.subarray(16)}return this.buffer=new Uint8Array(16),this.bufferLength=0,this.decryptBlock=this._decryptBlock2,this.decryptBlock(e,t)}encrypt(e,t){const s=e.length;let a=this.buffer,i=this.bufferPosition;const n=[];t||=new Uint8Array(16);for(let c=0;c<s;++c){if(a[i]=e[c],++i,i<16)continue;for(let e=0;e<16;++e)a[e]^=t[e];const s=this._encrypt(a,this._key);t=s,n.push(s),a=new Uint8Array(16),i=0}if(this.buffer=a,this.bufferLength=i,this.iv=t,0===n.length)return new Uint8Array(0);const r=16*n.length,o=new Uint8Array(r);for(let c=0,l=0,h=n.length;c<h;++c,l+=16)o.set(n[c],l);return o}}class qv extends Uv{_rcon=new Uint8Array([141,1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145,57,114,228,211,189,97,194,159,37,74,148,51,102,204,131,29,58,116,232,203,141,1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145,57,114,228,211,189,97,194,159,37,74,148,51,102,204,131,29,58,116,232,203,141,1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145,57,114,228,211,189,97,194,159,37,74,148,51,102,204,131,29,58,116,232,203,141,1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145,57,114,228,211,189,97,194,159,37,74,148,51,102,204,131,29,58,116,232,203,141,1,2,4,8,16,32,64,128,27,54,108,216,171,77,154,47,94,188,99,198,151,53,106,212,179,125,250,239,197,145,57,114,228,211,189,97,194,159,37,74,148,51,102,204,131,29,58,116,232,203,141]);constructor(e){super(),this._cyclesOfRepetition=10,this._keySize=160,this._key=this._expandKey(e)}_expandKey(e){const t=this._s,s=this._rcon,a=new Uint8Array(176);a.set(e);for(let i=16,n=1;i<176;++n){let e=a[i-3],r=a[i-2],o=a[i-1],c=a[i-4];e=t[e],r=t[r],o=t[o],c=t[c],e^=s[n];for(let t=0;t<4;++t)a[i]=e^=a[i-16],i++,a[i]=r^=a[i-16],i++,a[i]=o^=a[i-16],i++,a[i]=c^=a[i-16],i++}return a}}class jv extends Uv{constructor(e){super(),this._cyclesOfRepetition=14,this._keySize=224,this._key=this._expandKey(e)}_expandKey(e){const t=this._s,s=new Uint8Array(240);s.set(e);let a,i,n,r,o=1;for(let c=32,l=1;c<240;++l){c%32==16?(a=t[a],i=t[i],n=t[n],r=t[r]):c%32==0&&(a=s[c-3],i=s[c-2],n=s[c-1],r=s[c-4],a=t[a],i=t[i],n=t[n],r=t[r],a^=o,(o<<=1)>=256&&(o=255&(27^o)));for(let e=0;e<4;++e)s[c]=a^=s[c-32],c++,s[c]=i^=s[c-32],c++,s[c]=n^=s[c-32],c++,s[c]=r^=s[c-32],c++}return s}}class Hv{_hash(e,t,s){Qt("Abstract method `_hash` called")}checkOwnerPassword(e,t,s,a){const i=new Uint8Array(e.length+56);return i.set(e,0),i.set(t,e.length),i.set(s,e.length+t.length),ks(this._hash(e,i,s),a)}checkUserPassword(e,t,s){const a=new Uint8Array(e.length+8);return a.set(e,0),a.set(t,e.length),ks(this._hash(e,a,[]),s)}getOwnerKey(e,t,s,a){const i=new Uint8Array(e.length+56);i.set(e,0),i.set(t,e.length),i.set(s,e.length+t.length);const n=this._hash(e,i,s);return new jv(n).decryptBlock(a,!1,new Uint8Array(16))}getUserKey(e,t,s){const a=new Uint8Array(e.length+8);a.set(e,0),a.set(t,e.length);const i=this._hash(e,a,[]);return new jv(i).decryptBlock(s,!1,new Uint8Array(16))}}class $v extends Hv{_hash(e,t,s){return Pv(t,0,t.length)}}class zv extends Hv{_hash(e,t,s){let a=Pv(t,0,t.length).subarray(0,32),i=[0],n=0;for(;n<64||i.at(-1)>n-32;){const t=e.length+a.length+s.length,r=new Uint8Array(t);let o=0;r.set(e,o),o+=e.length,r.set(a,o),o+=a.length,r.set(s,o);const c=new Uint8Array(64*t);for(let e=0,s=0;e<64;e++,s+=t)c.set(r,s);i=new qv(a.subarray(0,16)).encrypt(c,a.subarray(16,32));const l=Math.sumPrecise(i.slice(0,16))%3;0===l?a=Pv(i,0,i.length):1===l?a=Iv(i,0,i.length):2===l&&(a=Sv(i,0,i.length)),n++}return a.subarray(0,32)}}class Gv{constructor(e,t){this.StringCipherConstructor=e,this.StreamCipherConstructor=t}createStream(e,t){const s=new this.StreamCipherConstructor;return new Ev(e,t,function(e,t){return s.decryptBlock(e,t)})}decryptString(e){const t=new this.StringCipherConstructor;let s=us(e);return s=t.decryptBlock(s,!0),hs(s)}encryptString(e){const t=new this.StringCipherConstructor;if(t instanceof Uv){const s=16-e.length%16;e+=String.fromCharCode(s).repeat(s);const a=new Uint8Array(16);crypto.getRandomValues(a);let i=us(e);i=t.encrypt(i,a);const n=new Uint8Array(16+i.length);return n.set(a),n.set(i,16),hs(n)}let s=us(e);return s=t.encrypt(s),hs(s)}}class Wv{static get _defaultPasswordBytes(){return ss(this,"_defaultPasswordBytes",new Uint8Array([40,191,78,94,78,117,138,65,100,0,78,86,255,250,1,8,46,46,0,182,208,104,62,128,47,12,169,254,100,83,105,122]))}#Je(e,t,s,a,i,n,r,o,c,l,h,u){if(t){const e=Math.min(127,t.length);t=t.subarray(0,e)}else t=[];const d=6===e?new zv:new $v;return d.checkUserPassword(t,o,r)?d.getUserKey(t,c,h):t.length&&d.checkOwnerPassword(t,a,n,s)?d.getOwnerKey(t,i,n,l):null}#Ze(e,t,s,a,i,n,r,o){const c=40+s.length+e.length,l=new Uint8Array(c);let h,u,d=0;if(t)for(u=Math.min(32,t.length);d<u;++d)l[d]=t[d];for(h=0;d<32;)l[d++]=Wv._defaultPasswordBytes[h++];l.set(s,d),d+=s.length,l[d++]=255&i,l[d++]=i>>8&255,l[d++]=i>>16&255,l[d++]=i>>>24&255,l.set(e,d),d+=e.length,n>=4&&!o&&(l.fill(255,d,d+4),d+=4);let f=hv(l,0,d);const g=r>>3;if(n>=3)for(h=0;h<50;++h)f=hv(f,0,g);const p=f.subarray(0,g);let m,b;if(n>=3){d=0,l.set(Wv._defaultPasswordBytes,d),d+=32,l.set(e,d),d+=e.length,m=new Lv(p),b=m.encryptBlock(hv(l,0,d)),u=p.length;const t=new Uint8Array(u);for(h=1;h<=19;++h){for(let e=0;e<u;++e)t[e]=p[e]^h;m=new Lv(t),b=m.encryptBlock(b)}}else m=new Lv(p),b=m.encryptBlock(Wv._defaultPasswordBytes);return b.every((e,t)=>a[t]===e)?p:null}#Qe(e,t,s,a){const i=new Uint8Array(32);let n=0;const r=Math.min(32,e.length);for(;n<r;++n)i[n]=e[n];let o=0;for(;n<32;)i[n++]=Wv._defaultPasswordBytes[o++];let c=hv(i,0,n);const l=a>>3;if(s>=3)for(o=0;o<50;++o)c=hv(c,0,c.length);let h,u;if(s>=3){u=t;const e=new Uint8Array(l);for(o=19;o>=0;o--){for(let t=0;t<l;++t)e[t]=c[t]^o;h=new Lv(e),u=h.encryptBlock(u)}}else h=new Lv(c.subarray(0,l)),u=h.encryptBlock(t);return u}#et(e,t,s,a=!1){const i=s.length,n=new Uint8Array(i+9);n.set(s);let r=i;return n[r++]=255&e,n[r++]=e>>8&255,n[r++]=e>>16&255,n[r++]=255&t,n[r++]=t>>8&255,a&&(n[r++]=115,n[r++]=65,n[r++]=108,n[r++]=84),hv(n,0,r).subarray(0,Math.min(i+5,16))}#tt(e,t,s,a,i){if(!(t instanceof Ns))throw new cs("Invalid crypt filter name.");const n=this,r=e.get(t.name),o=r?.get("CFM");if(!o||"None"===o.name)return function(){return new _v};if("V2"===o.name)return function(){return new Lv(n.#et(s,a,i,!1))};if("AESV2"===o.name)return function(){return new qv(n.#et(s,a,i,!0))};if("AESV3"===o.name)return function(){return new jv(i)};throw new cs("Unknown crypto method")}constructor(e,t,s){const a=e.get("Filter");if(!Us(a,"Standard"))throw new cs("unknown encryption method");this.filterName=a.name,this.dict=e;const i=e.get("V");if(!Number.isInteger(i)||1!==i&&2!==i&&4!==i&&5!==i)throw new cs("unsupported encryption algorithm");this.algorithm=i;let n=e.get("Length");if(!n)if(i<=3)n=40;else{const t=e.get("CF"),s=e.get("StmF");if(t instanceof Ps&&s instanceof Ns){t.suppressEncryption=!0;const e=t.get(s.name);n=e?.get("Length")||128,n<40&&(n<<=3)}}if(!Number.isInteger(n)||n<40||n%8!=0)throw new cs("invalid key length");const r=us(e.get("O")),o=us(e.get("U")),c=r.subarray(0,32),l=o.subarray(0,32),h=e.get("P"),u=e.get("R"),d=(4===i||5===i)&&!1!==e.get("EncryptMetadata");this.encryptMetadata=d;const f=us(t);let g,p;if(s){if(6===u)try{s=xs(s)}catch{Zt("CipherTransformFactory: Unable to convert UTF8 encoded password.")}g=us(s)}if(5!==i)p=this.#Ze(f,g,c,l,h,u,n,d);else{const t=r.subarray(32,40),s=r.subarray(40,48),a=o.subarray(0,48),i=o.subarray(32,40),n=o.subarray(40,48),h=us(e.get("OE")),d=us(e.get("UE")),f=us(e.get("Perms"));p=this.#Je(u,g,c,t,s,a,l,i,n,h,d,f)}if(!p){if(!s)throw new is("No password given",Vt);const e=this.#Qe(g,c,u,n);p=this.#Ze(f,e,c,l,h,u,n,d)}if(!p)throw new is("Incorrect Password",Xt);if(4===i&&p.length<16?(this.encryptionKey=new Uint8Array(16),this.encryptionKey.set(p)):this.encryptionKey=p,i>=4){const t=e.get("CF");t instanceof Ps&&(t.suppressEncryption=!0),this.cf=t,this.stmf=e.get("StmF")||Ns.get("Identity"),this.strf=e.get("StrF")||Ns.get("Identity"),this.eff=e.get("EFF")||this.stmf}}createCipherTransform(e,t){if(4===this.algorithm||5===this.algorithm)return new Gv(this.#tt(this.cf,this.strf,e,t,this.encryptionKey),this.#tt(this.cf,this.stmf,e,t,this.encryptionKey));const s=this.#et(e,t,this.encryptionKey,!1),a=function(){return new Lv(s)};return new Gv(a,a)}}class Vv{constructor(e,t){this.stream=e,this.pdfManager=t,this.entries=[],this._xrefStms=new Set,this._cacheMap=new Map,this._pendingRefs=new Ls,this._newPersistentRefNum=null,this._newTemporaryRefNum=null,this._persistentRefsCache=null}getNewPersistentRef(e){null===this._newPersistentRefNum&&(this._newPersistentRefNum=this.entries.length||1);const t=this._newPersistentRefNum++;return this._cacheMap.set(t,e),Es.get(t,0)}getNewTemporaryRef(){if(null===this._newTemporaryRefNum&&(this._newTemporaryRefNum=this.entries.length||1,this._newPersistentRefNum)){this._persistentRefsCache=new Map;for(let e=this._newTemporaryRefNum;e<this._newPersistentRefNum;e++)this._persistentRefsCache.set(e,this._cacheMap.get(e)),this._cacheMap.delete(e)}return Es.get(this._newTemporaryRefNum++,0)}resetNewTemporaryRef(){if(this._newTemporaryRefNum=null,this._persistentRefsCache)for(const[e,t]of this._persistentRefsCache)this._cacheMap.set(e,t);this._persistentRefsCache=null}setStartXRef(e){this.startXRefQueue=[e]}parse(e=!1){let t,s,a;e?(Zt("Indexing all PDF objects"),t=this.indexObjects()):t=this.readXRef(),t.assignXref(this),this.trailer=t;try{s=t.get("Encrypt")}catch(e){if(e instanceof Ys)throw e;Zt(`XRef.parse - Invalid "Encrypt" reference: "${e}".`)}if(s instanceof Ps){const e=t.get("ID"),a=e?.length?e[0]:"";s.suppressEncryption=!0,this.encrypt=new Wv(s,a,this.pdfManager.password)}try{a=t.get("Root")}catch(e){if(e instanceof Ys)throw e;Zt(`XRef.parse - Invalid "Root" reference: "${e}".`)}if(a instanceof Ps)try{if(a.get("Pages")instanceof Ps)return void(this.root=a)}catch(e){if(e instanceof Ys)throw e;Zt(`XRef.parse - Invalid "Pages" reference: "${e}".`)}if(!e)throw new Qs;throw new rs("Invalid Root reference.")}processXRefTable(e){if("tableState"in this||(this.tableState={entryNum:0,streamPos:e.lexer.stream.pos,parserBuf1:e.buf1,parserBuf2:e.buf2}),!qs(this.readXRefTable(e),"trailer"))throw new cs("Invalid XRef table: could not find trailer dictionary");let t=e.getObj();if(t instanceof Ps||!t.dict||(t=t.dict),!(t instanceof Ps))throw new cs("Invalid XRef table: could not parse trailer dictionary");return delete this.tableState,t}readXRefTable(e){const t=e.lexer.stream,s=this.tableState;let a;for(t.pos=s.streamPos,e.buf1=s.parserBuf1,e.buf2=s.parserBuf2;;){if(!("firstEntryNum"in s)||!("entryCount"in s)){if(qs(a=e.getObj(),"trailer"))break;s.firstEntryNum=a,s.entryCount=e.getObj()}let i=s.firstEntryNum;const n=s.entryCount;if(!Number.isInteger(i)||!Number.isInteger(n))throw new cs("Invalid XRef table: wrong types in subsection header");for(let a=s.entryNum;a<n;a++){s.streamPos=t.pos,s.entryNum=a,s.parserBuf1=e.buf1,s.parserBuf2=e.buf2;const r={};r.offset=e.getObj(),r.gen=e.getObj();const o=e.getObj();if(o instanceof Ds)switch(o.cmd){case"f":r.free=!0;break;case"n":r.uncompressed=!0}if(!Number.isInteger(r.offset)||!Number.isInteger(r.gen)||!r.free&&!r.uncompressed)throw new cs(`Invalid entry in XRef subsection: ${i}, ${n}`);0===a&&r.free&&1===i&&(i=0),this.entries[a+i]||(this.entries[a+i]=r)}s.entryNum=0,s.streamPos=t.pos,s.parserBuf1=e.buf1,s.parserBuf2=e.buf2,delete s.firstEntryNum,delete s.entryCount}if(this.entries[0]&&!this.entries[0].free)throw new cs("Invalid XRef table: unexpected first object");return a}processXRefStream(e){if(!("streamState"in this)){const{dict:t,pos:s}=e,a=t.get("W"),i=t.get("Index")||[0,t.get("Size")];this.streamState={entryRanges:i,byteWidths:a,entryNum:0,streamPos:s}}return this.readXRefStream(e),delete this.streamState,e.dict}readXRefStream(e){const t=this.streamState;e.pos=t.streamPos;const[s,a,i]=t.byteWidths,n=t.entryRanges;for(;n.length>0;){const[r,o]=n;if(!Number.isInteger(r)||!Number.isInteger(o))throw new cs(`Invalid XRef range fields: ${r}, ${o}`);if(!Number.isInteger(s)||!Number.isInteger(a)||!Number.isInteger(i))throw new cs(`Invalid XRef entry fields length: ${r}, ${o}`);for(let n=t.entryNum;n<o;++n){t.entryNum=n,t.streamPos=e.pos;let o=0,c=0,l=0;for(let t=0;t<s;++t){const t=e.getByte();if(-1===t)throw new cs("Invalid XRef byteWidths 'type'.");o=o<<8|t}0===s&&(o=1);for(let t=0;t<a;++t){const t=e.getByte();if(-1===t)throw new cs("Invalid XRef byteWidths 'offset'.");c=c<<8|t}for(let t=0;t<i;++t){const t=e.getByte();if(-1===t)throw new cs("Invalid XRef byteWidths 'generation'.");l=l<<8|t}const h={};switch(h.offset=c,h.gen=l,o){case 0:h.free=!0;break;case 1:h.uncompressed=!0;break;case 2:break;default:throw new cs(`Invalid XRef entry type: ${o}`)}this.entries[r+n]||(this.entries[r+n]=h)}t.entryNum=0,t.streamPos=e.pos,n.splice(0,2)}}indexObjects(){function e(e,t){let s="",a=e[t];for(;10!==a&&13!==a&&60!==a&&!(++t>=e.length);)s+=String.fromCharCode(a),a=e[t];return s}function t(e,t,s){const a=s.length,i=e.length;let n=0;for(;t<i;){let i=0;for(;i<a&&e[t+i]===s[i];)++i;if(i>=a)break;t++,n++}return n}const s=/\b(endobj|\d+\s+\d+\s+obj|xref|trailer\s*<<)\b/g,a=/\b(startxref|\d+\s+\d+\s+obj)\b/g,i=/^(\d+)\s+(\d+)\s+obj\b/,n=new Uint8Array([116,114,97,105,108,101,114]),r=new Uint8Array([115,116,97,114,116,120,114,101,102]),o=new Uint8Array([47,88,82,101,102]);this.entries.length=0,this._cacheMap.clear();const c=this.stream;c.pos=0;const l=c.getBytes(),h=hs(l),u=l.length;let d=c.start;const f=[],g=[];for(;d<u;){let p=l[d];if(9===p||10===p||13===p||32===p){++d;continue}if(37===p){do{if(++d,d>=u)break;p=l[d]}while(10!==p&&13!==p);continue}const m=e(l,d);let b;if(m.startsWith("xref")&&(4===m.length||/\s/.test(m[4])))d+=t(l,d,n),f.push(d),d+=t(l,d,r);else if(b=i.exec(m)){const e=0|b[1],a=0|b[2],i=d+m.length;let n,r=!1;if(this.entries[e]){if(this.entries[e].gen===a)try{new sr({lexer:new nr(c.makeSubStream(i))}).getObj(),r=!0}catch(s){s instanceof Js?Zt(`indexObjects -- checking object (${m}): "${s}".`):r=!0}}else r=!0;r&&(this.entries[e]={offset:d-c.start,gen:a,uncompressed:!0}),s.lastIndex=i;const f=s.exec(h);f?(n=s.lastIndex+1-d,"endobj"!==f[1]&&(Zt(`indexObjects: Found "${f[1]}" inside of another "obj", caused by missing "endobj" -- trying to recover.`),n-=f[1].length+1)):n=u-d;const p=l.subarray(d,d+n),w=t(p,0,o);w<n&&p[w+5]<64&&(g.push(d-c.start),this._xrefStms.add(d-c.start)),d+=n}else if(m.startsWith("trailer")&&(7===m.length||/\s/.test(m[7]))){f.push(d);const e=d+m.length;let t;a.lastIndex=e;const s=a.exec(h);s?(t=a.lastIndex+1-d,"startxref"!==s[1]&&(Zt(`indexObjects: Found "${s[1]}" after "trailer", caused by missing "startxref" -- trying to recover.`),t-=s[1].length+1)):t=u-d,d+=t}else d+=m.length+1}for(const y of g)this.startXRefQueue.push(y),this.readXRef(!0);const p=[];let m,b,w=!1;for(const y of f){c.pos=y;const e=new sr({lexer:new nr(c),xref:this,allowStreams:!0,recoveryMode:!0});if(!qs(e.getObj(),"trailer"))continue;const t=e.getObj();t instanceof Ps&&(p.push(t),t.has("Encrypt")&&(w=!0))}for(const y of[...p,"genFallback",...p]){if("genFallback"===y){if(!b)break;this._generationFallback=!0;continue}let e=!1;try{const t=y.get("Root");if(!(t instanceof Ps))continue;const s=t.get("Pages");if(!(s instanceof Ps))continue;const a=s.get("Count");Number.isInteger(a)&&(e=!0)}catch(s){b=s;continue}if(e&&(!w||y.has("Encrypt"))&&y.has("ID"))return y;m=y}if(m)return m;if(this.topDict)return this.topDict;if(!p.length)for(const y in this.entries){if(!Object.hasOwn(this.entries,y))continue;const e=this.entries[y],t=Es.get(parseInt(y),e.gen);let s;try{s=this.fetch(t)}catch{continue}if(s instanceof $s&&(s=s.dict),s instanceof Ps&&s.has("Root"))return s}throw new rs("Invalid PDF structure.")}readXRef(e=!1){const t=this.stream,s=new Set;for(;this.startXRefQueue.length;){try{const e=this.startXRefQueue[0];if(s.has(e)){Zt("readXRef - skipping XRef table since it was already parsed."),this.startXRefQueue.shift();continue}s.add(e),t.pos=e+t.start;const a=new sr({lexer:new nr(t),xref:this,allowStreams:!0});let i,n=a.getObj();if(qs(n,"xref"))i=this.processXRefTable(a),this.topDict||(this.topDict=i),n=i.get("XRefStm"),Number.isInteger(n)&&!this._xrefStms.has(n)&&(this._xrefStms.add(n),this.startXRefQueue.push(n));else{if(!Number.isInteger(n))throw new cs("Invalid XRef stream header");if(!(Number.isInteger(a.getObj())&&qs(a.getObj(),"obj")&&(n=a.getObj())instanceof $s))throw new cs("Invalid XRef stream");if(i=this.processXRefStream(n),this.topDict||(this.topDict=i),!i)throw new cs("Failed to read XRef stream")}n=i.get("Prev"),Number.isInteger(n)?this.startXRefQueue.push(n):n instanceof Es&&this.startXRefQueue.push(n.num)}catch(e){if(e instanceof Ys)throw e;Jt("(while reading XRef): "+e)}this.startXRefQueue.shift()}if(this.topDict)return this.topDict;if(!e)throw new Qs}getEntry(e){const t=this.entries[e];return t&&!t.free&&t.offset?t:null}fetchIfRef(e,t=!1){return e instanceof Es?this.fetch(e,t):e}fetch(e,t=!1){if(!(e instanceof Es))throw new Error("ref object is not a reference");const s=e.num,a=this._cacheMap.get(s);if(void 0!==a)return a instanceof Ps&&!a.objId&&(a.objId=e.toString()),a;let i=this.getEntry(s);if(null===i)return i;if(this._pendingRefs.has(e))return this._pendingRefs.remove(e),Zt(`Ignoring circular reference: ${e}.`),Bs;this._pendingRefs.put(e);try{i=i.uncompressed?this.fetchUncompressed(e,i,t):this.fetchCompressed(e,i,t),this._pendingRefs.remove(e)}catch(t){throw this._pendingRefs.remove(e),t}return i instanceof Ps?i.objId=e.toString():i instanceof $s&&(i.dict.objId=e.toString()),i}fetchUncompressed(e,t,s=!1){const a=e.gen;let i=e.num;if(t.gen!==a){const n=`Inconsistent generation in XRef: ${e}`;if(this._generationFallback&&t.gen<a)return Zt(n),this.fetchUncompressed(Es.get(i,t.gen),t,s);throw new Zs(n)}const n=this.stream.makeSubStream(t.offset+this.stream.start),r=new sr({lexer:new nr(n),xref:this,allowStreams:!0}),o=r.getObj(),c=r.getObj(),l=r.getObj();if(o!==i||c!==a||!(l instanceof Ds))throw new Zs(`Bad (uncompressed) XRef entry: ${e}`);if("obj"!==l.cmd){if(l.cmd.startsWith("obj")&&(i=parseInt(l.cmd.substring(3),10),!Number.isNaN(i)))return i;throw new Zs(`Bad (uncompressed) XRef entry: ${e}`)}return(t=this.encrypt&&!s?r.getObj(this.encrypt.createCipherTransform(i,a)):r.getObj())instanceof $s||this._cacheMap.set(i,t),t}fetchCompressed(e,t,s=!1){const a=t.offset,i=this.fetch(Es.get(a,0));if(!(i instanceof $s))throw new cs("bad ObjStm stream");const n=i.dict.get("First"),r=i.dict.get("N");if(!Number.isInteger(n)||!Number.isInteger(r))throw new cs("invalid first and n parameters for ObjStm stream");let o=new sr({lexer:new nr(i),xref:this,allowStreams:!0});const c=new Array(r),l=new Array(r);for(let d=0;d<r;++d){const e=o.getObj();if(!Number.isInteger(e))throw new cs(`invalid object number in the ObjStm stream: ${e}`);const t=o.getObj();if(!Number.isInteger(t))throw new cs(`invalid object offset in the ObjStm stream: ${t}`);c[d]=e;const s=this.getEntry(e);s?.offset===a&&s.gen!==d&&(s.gen=d),l[d]=t}const h=(i.start||0)+n,u=new Array(r);for(let d=0;d<r;++d){const e=d<r-1?l[d+1]-l[d]:void 0;if(e<0)throw new cs("Invalid offset in the ObjStm stream.");o=new sr({lexer:new nr(i.makeSubStream(h+l[d],e,i.dict)),xref:this,allowStreams:!0});const t=o.getObj();if(u[d]=t,t instanceof $s)continue;const s=c[d],n=this.entries[s];n&&n.offset===a&&n.gen===d&&this._cacheMap.set(s,t)}if(void 0===(t=u[t.gen]))throw new Zs(`Bad (compressed) XRef entry: ${e}`);return t}async fetchIfRefAsync(e,t){return e instanceof Es?this.fetchAsync(e,t):e}async fetchAsync(e,t){try{return this.fetch(e,t)}catch(s){if(!(s instanceof Ys))throw s;return await this.pdfManager.requestRange(s.begin,s.end),this.fetchAsync(e,t)}}getCatalogObj(){return this.root}}const Xv=[0,0,612,792];class Kv{#st=!1;#at=null;constructor({pdfManager:e,xref:t,pageIndex:s,pageDict:a,ref:i,globalIdFactory:n,fontCache:r,builtInCMapCache:o,standardFontDataCache:c,globalColorSpaceCache:l,globalImageCache:h,systemFontCache:u,nonBlendModesSet:d,xfaFactory:f}){this.pdfManager=e,this.pageIndex=s,this.pageDict=a,this.xref=t,this.ref=i,this.fontCache=r,this.builtInCMapCache=o,this.standardFontDataCache=c,this.globalColorSpaceCache=l,this.globalImageCache=h,this.systemFontCache=u,this.nonBlendModesSet=d,this.evaluatorOptions=e.evaluatorOptions,this.xfaFactory=f;const g={obj:0};this._localIdFactory=class extends n{static createObjId(){return`p${s}_${++g.obj}`}static getPageObjId(){return`p${i.toString()}`}}}#it(e){return new gu({xref:this.xref,handler:e,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalColorSpaceCache:this.globalColorSpaceCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions})}#nt(e,t=!1){const s=sa({dict:this.pageDict,key:e,getArray:t,stopWhenFound:!1});return Array.isArray(s)?1!==s.length&&s[0]instanceof Ps?Ps.merge({xref:this.xref,dictArray:s}):s[0]:s}get content(){return this.pageDict.getArray("Contents")}get resources(){const e=this.#nt("Resources");return ss(this,"resources",e instanceof Ps?e:Ps.empty)}getBoundingBox(e){if(this.xfaData)return this.xfaData.bbox;const t=ga(this.#nt(e,!0),null);if(t){if(t[2]-t[0]>0&&t[3]-t[1]>0)return t;Zt(`Empty, or invalid, /${e} entry.`)}return null}get mediaBox(){return ss(this,"mediaBox",this.getBoundingBox("MediaBox")||Xv)}get cropBox(){return ss(this,"cropBox",this.getBoundingBox("CropBox")||this.mediaBox)}get userUnit(){const e=this.pageDict.get("UserUnit");return ss(this,"userUnit","number"==typeof e&&e>0?e:1)}get view(){const{cropBox:e,mediaBox:t}=this;if(e!==t&&!ks(e,t)){const s=ms.intersect(e,t);if(s&&s[2]-s[0]>0&&s[3]-s[1]>0)return ss(this,"view",s);Zt("Empty /CropBox and /MediaBox intersection.")}return ss(this,"view",t)}get rotate(){let e=this.#nt("Rotate")||0;return e%90!=0?e=0:e>=360?e%=360:e<0&&(e=(e%360+360)%360),ss(this,"rotate",e)}#rt(e,t){if(!this.evaluatorOptions.ignoreErrors)throw e;Zt(`getContentStream - ignoring sub-stream (${t}): "${e}".`)}async getContentStream(){const e=await this.pdfManager.ensure(this,"content");return e instanceof $s?e:Array.isArray(e)?new pi(e,this.#rt.bind(this)):new oi}get xfaData(){return ss(this,"xfaData",this.xfaFactory?{bbox:this.xfaFactory.getBoundingBox(this.pageIndex)}:null)}async#ot(e,t,s){const a=[];for(const i of e)if(i.id){const e=Es.fromString(i.id);if(!e){Zt(`A non-linked annotation cannot be modified: ${i.id}`);continue}if(i.deleted){if(t.put(e,e),i.popupRef){const e=Es.fromString(i.popupRef);e&&t.put(e,e)}continue}if(i.popup?.deleted){const e=Es.fromString(i.popupRef);e&&t.put(e,e)}s?.put(e),i.ref=e,a.push(this.xref.fetchAsync(e).then(e=>{e instanceof Ps&&(i.oldAnnotation=e.clone())},()=>{Zt(`Cannot fetch \`oldAnnotation\` for: ${e}.`)})),delete i.id}await Promise.all(a)}async saveNewAnnotations(e,t,s,a,i){if(this.xfaFactory)throw new Error("XFA: Cannot save new annotations.");const n=this.#it(e),r=new _s,o=new Ls;await this.#ot(s,r,o);const c=this.pageDict,l=this.annotations.filter(e=>!(e instanceof Es&&r.has(e))),h=await Dk.saveNewAnnotations(n,t,s,a,i);for(const{ref:d}of h.annotations)d instanceof Es&&!o.has(d)&&l.push(d);const u=c.clone();u.set("Annots",l),i.put(this.ref,{data:u});for(const d of r)i.put(d,{data:null})}async save(e,t,s,a){const i=this.#it(e),n=await this._parsedAnnotations,r=[];for(const o of n)r.push(o.save(i,t,s,a).catch(function(e){return Zt(`save - ignoring annotation data during "${t.name}" task: "${e}".`),null}));return Promise.all(r)}async loadResources(e){await(this.#at??=this.pdfManager.ensure(this,"resources")),await rd.load(this.resources,e,this.xref)}async#ct(e,t){const s=e?.get("Resources");return s instanceof Ps&&s.size?(await rd.load(s,t,this.xref),Ps.merge({xref:this.xref,dictArray:[s,this.resources],mergeSubDicts:!0})):this.resources}async getOperatorList({handler:e,sink:t,task:s,intent:a,cacheKey:i,annotationStorage:c=null,modifiedIds:d=null}){const g=this.getContentStream(),p=this.loadResources(Vs),m=this.#it(e),b=this.xfaFactory?null:Ba(c),w=b?.get(this.pageIndex);let y=Promise.resolve(null),x=null;if(w){const e=this.pdfManager.ensureDoc("annotationGlobals");let t;const a=new Set;for(const{bitmapId:s,bitmap:n}of w)!s||n||a.has(s)||a.add(s);const{isOffscreenCanvasSupported:i}=this.evaluatorOptions;if(a.size>0){const e=w.slice();for(const[t,s]of c)t.startsWith(f)&&s.bitmap&&a.has(s.bitmapId)&&e.push(s);t=Dk.generateImages(e,this.xref,i)}else t=Dk.generateImages(w,this.xref,i);x=new Ls,y=Promise.all([e,this.#ot(w,x,null)]).then(([e])=>e?Dk.printNewAnnotations(e,m,s,w,t):null)}const k=Promise.all([g,p]).then(async([n])=>{const r=await this.#ct(n.dict,Vs),o=new Vi(a,t);return e.send("StartRenderPage",{transparency:m.hasBlendModes(r,this.nonBlendModesSet),pageIndex:this.pageIndex,cacheKey:i}),await m.getOperatorList({stream:n,task:s,resources:r,operatorList:o}),o});let[v,A,C]=await Promise.all([k,this._parsedAnnotations,y]);if(C){A=A.filter(e=>!(e.ref&&x.has(e.ref)));for(let e=0,t=C.length;e<t;e++){const s=C[e];if(s.refToReplace){const a=A.findIndex(e=>e.ref&&Hs(e.ref,s.refToReplace));a>=0&&(A.splice(a,1,s),C.splice(e--,1),t--)}}A=A.concat(C)}if(0===A.length||a&h)return v.flush(!0),{length:v.totalLength};const S=!!(a&l),I=!!(a&u),B=!!(a&n),F=!!(a&r),M=!!(a&o),T=[];for(const n of A)(B||F&&n.mustBeViewed(c,S)&&n.mustBeViewedWhenEditing(I,d)||M&&n.mustBePrinted(c))&&T.push(n.getOperatorList(m,s,a,c).catch(function(e){return Zt(`getOperatorList - ignoring annotation data during "${s.name}" task: "${e}".`),{opList:null,separateForm:!1,separateCanvas:!1}}));const R=await Promise.all(T);let N=!1,D=!1;for(const{opList:n,separateForm:r,separateCanvas:o}of R)v.addOpList(n),N||=r,D||=o;return v.flush(!0,{form:N,canvas:D}),{length:v.totalLength}}async extractTextContent({handler:e,task:t,includeMarkedContent:s,disableNormalization:a,sink:i,intersector:n=null}){const r=this.getContentStream(),o=this.loadResources(Xs),c=this.pdfManager.ensureCatalog("lang"),[l,,h]=await Promise.all([r,o,c]),u=await this.#ct(l.dict,Xs);return this.#it(e).getTextContent({stream:l,task:t,resources:u,includeMarkedContent:s,disableNormalization:a,sink:i,viewBox:this.view,lang:h,intersector:n})}async getStructTree(){const e=await this.pdfManager.ensureCatalog("structTreeRoot");if(!e)return null;await this._parsedAnnotations;try{const t=await this.pdfManager.ensure(this,"_parseStructTree",[e]);return await this.pdfManager.ensure(t,"serializable")}catch(e){return Zt(`getStructTree: "${e}".`),null}}_parseStructTree(e){const t=new Qu(e,this.pageDict);return t.parse(this.ref),t}async getAnnotationsData(e,t,s){const a=await this._parsedAnnotations;if(0===a.length)return a;const i=[],c=[];let l;const h=!!(s&n),u=!!(s&r),d=!!(s&o),f=[];for(const n of a){const s=h||u&&n.viewable;(s||d&&n.printable)&&i.push(n.data),n.hasTextContent&&s?(l??=this.#it(e),c.push(n.extractTextContent(l,t,[-1/0,-1/0,1/0,1/0]).catch(function(e){Zt(`getAnnotationsData - ignoring textContent during "${t.name}" task: "${e}".`)}))):n.overlaysTextContent&&s&&f.push(n)}if(f.length>0){const s=new mv(f);c.push(this.extractTextContent({handler:e,task:t,includeMarkedContent:!1,disableNormalization:!1,sink:null,viewBox:this.view,lang:null,intersector:s}).then(()=>{s.setText()}))}return await Promise.all(c),i}get annotations(){const e=this.#nt("Annots");return ss(this,"annotations",Array.isArray(e)?e:[])}get _parsedAnnotations(){const e=this.pdfManager.ensure(this,"annotations").then(async e=>{if(0===e.length)return e;const[t,s]=await Promise.all([this.pdfManager.ensureDoc("annotationGlobals"),this.pdfManager.ensureDoc("fieldObjects")]);if(!t)return[];const a=s?.orphanFields,i=[];for(const c of e)i.push(Dk.create(this.xref,c,t,this._localIdFactory,!1,a,null,this.ref).catch(function(e){return Zt(`_parsedAnnotations: "${e}".`),null}));const n=[];let r,o;for(const c of await Promise.all(i))c&&(c instanceof jk?(o||=[]).push(c):c instanceof Xk?(r||=[]).push(c):n.push(c));return o&&n.push(...o),r&&n.push(...r),n});return this.#st=!0,ss(this,"_parsedAnnotations",e)}get jsActions(){return ss(this,"jsActions",ya(this.xref,this.pageDict,se))}async collectAnnotationsByType(e,t,s,a,i){const{pageIndex:n}=this;if(this.#st){const e=await this._parsedAnnotations;for(const{data:t}of e)s&&!s.has(t.annotationType)||(t.pageIndex=n,a.push(Promise.resolve(t)));return}const r=await this.pdfManager.ensure(this,"annotations");for(const o of r)a.push(Dk.create(this.xref,o,i,this._localIdFactory,!1,null,s,this.ref).then(async s=>{if(!s)return null;if(s.data.pageIndex=n,s.hasTextContent&&s.viewable){const a=this.#it(e);await s.extractTextContent(a,t,[-1/0,-1/0,1/0,1/0])}return s.data}).catch(function(e){return Zt(`collectAnnotationsByType: "${e}".`),null}))}}const Yv=new Uint8Array([37,80,68,70,45]),Jv=new Uint8Array([115,116,97,114,116,120,114,101,102]),Zv=new Uint8Array([101,110,100,111,98,106]);function Qv(e,t,s=1024,a=!1){const i=t.length,n=e.peekBytes(s),r=n.length-i;if(r<=0)return!1;if(a){const s=i-1;let a=n.length-1;for(;a>=s;){let r=0;for(;r<i&&n[a-r]===t[s-r];)r++;if(r>=i)return e.pos+=a-s,!0;a--}}else{let s=0;for(;s<=r;){let a=0;for(;a<i&&n[s+a]===t[a];)a++;if(a>=i)return e.pos+=s,!0;s++}}return!1}class eA{#lt=new Map;#ht=null;constructor(e,t){if(t.length<=0)throw new rs("The PDF file is empty, i.e. its size is zero bytes.");this.pdfManager=e,this.stream=t,this.xref=new Vv(t,e);const s={font:0};this._globalIdFactory=class{static getDocId(){return`g_${e.docId}`}static createFontId(){return"f"+ ++s.font}static createObjId(){Qt("Abstract method `createObjId` called.")}static getPageObjId(){Qt("Abstract method `getPageObjId` called.")}}}parse(e){this.xref.parse(e),this.catalog=new ad(this.pdfManager,this.xref)}get linearization(){let e=null;try{e=rr.create(this.stream)}catch(e){if(e instanceof Ys)throw e;Jt(e)}return ss(this,"linearization",e)}get startXRef(){const e=this.stream;let t=0;if(this.linearization){if(e.reset(),Qv(e,Zv)){e.skip(6);let s=e.peekByte();for(;ha(s);)e.pos++,s=e.peekByte();t=e.pos-e.start}}else{const s=1024,a=Jv.length;let i=!1,n=e.end;for(;!i&&n>0;)n-=s-a,n<0&&(n=0),e.pos=n,i=Qv(e,Jv,s,!0);if(i){let s;e.skip(9);do{s=e.getByte()}while(ha(s));let a="";for(;s>=32&&s<=57;)a+=String.fromCharCode(s),s=e.getByte();t=parseInt(a,10),isNaN(t)&&(t=0)}}return ss(this,"startXRef",t)}checkHeader(){const e=this.stream;if(e.reset(),!Qv(e,Yv))return;e.moveStart(),e.skip(Yv.length);let t,s="";for(;(t=e.getByte())>32&&s.length<7;)s+=String.fromCharCode(t);zs.test(s)?this.#ht=s:Zt(`Invalid PDF header version: ${s}`)}parseStartXRef(){this.xref.setStartXRef(this.startXRef)}get numPages(){let e=0;return e=this.catalog.hasActualNumPages?this.catalog.numPages:this.xfaFactory?this.xfaFactory.getNumPages():this.linearization?this.linearization.numPages:this.catalog.numPages,ss(this,"numPages",e)}#ut(e,t=0){return!!Array.isArray(e)&&e.every(e=>{if(!((e=this.xref.fetchIfRef(e))instanceof Ps))return!1;if(e.has("Kids"))return++t>10?(Zt("#hasOnlyDocumentSignatures: maximum recursion depth reached"),!1):this.#ut(e.get("Kids"),t);const s=Us(e.get("FT"),"Sig"),a=e.get("Rect"),i=Array.isArray(a)&&a.every(e=>0===e);return s&&i})}get _xfaStreams(){const{acroForm:e}=this.catalog;if(!e)return null;const t=e.get("XFA"),s=new Map(["xdp:xdp","template","datasets","config","connectionSet","localeSet","stylesheet","/xdp:xdp"].map(e=>[e,null]));if(t instanceof $s&&!t.isEmpty)return s.set("xdp:xdp",t),s;if(!Array.isArray(t)||0===t.length)return null;for(let a=0,i=t.length;a<i;a+=2){let e;if(e=0===a?"xdp:xdp":a===i-2?"/xdp:xdp":t[a],!s.has(e))continue;const n=this.xref.fetchIfRef(t[a+1]);n instanceof $s&&!n.isEmpty&&s.set(e,n)}return s}get xfaDatasets(){const e=this._xfaStreams;if(!e)return ss(this,"xfaDatasets",null);for(const t of["datasets","xdp:xdp"]){const s=e.get(t);if(s)try{const e=ys(s.getString());return ss(this,"xfaDatasets",new fv({[t]:e}))}catch{Zt("XFA - Invalid utf-8 string.");break}}return ss(this,"xfaDatasets",null)}get xfaData(){const e=this._xfaStreams;if(!e)return null;const t=Object.create(null);for(const[s,a]of e)if(a)try{t[s]=ys(a.getString())}catch{return Zt("XFA - Invalid utf-8 string."),null}return t}get xfaFactory(){let e;return this.pdfManager.enableXfa&&this.catalog.needsRendering&&this.formInfo.hasXfa&&!this.formInfo.hasAcroForm&&(e=this.xfaData),ss(this,"xfaFactory",e?new Nk(e):null)}get isPureXfa(){return!!this.xfaFactory&&this.xfaFactory.isValid()}get htmlForXfa(){return this.xfaFactory?this.xfaFactory.getPages():null}async#dt(){const e=await this.pdfManager.ensureCatalog("xfaImages");e&&this.xfaFactory.setImages(e)}async#ft(e,t){const s=await this.pdfManager.ensureCatalog("acroForm");if(!s)return;const a=await s.getAsync("DR");if(!(a instanceof Ps))return;await rd.load(a,["Font"],this.xref);const i=a.get("Font");if(!(i instanceof Ps))return;const n=Object.assign(Object.create(null),this.pdfManager.evaluatorOptions,{useSystemFonts:!1}),{builtInCMapCache:r,fontCache:o,standardFontDataCache:c}=this.catalog,l=new gu({xref:this.xref,handler:e,pageIndex:-1,idFactory:this._globalIdFactory,fontCache:o,builtInCMapCache:r,standardFontDataCache:c,options:n}),h=new Vi,u=[],d={get font(){return u.at(-1)},set font(e){u.push(e)},clone(){return this}},f=(e,s,i)=>l.handleSetFont(a,[Ns.get(e),1],null,h,t,d,s,i).catch(e=>(Zt(`loadXfaFonts: "${e}".`),null)),g=[];for(const[b,w]of i){const e=w.get("FontDescriptor");if(!(e instanceof Ps))continue;let t=e.get("FontFamily");t=t.replaceAll(/[ ]+(\d)/g,"$1");const s={fontFamily:t,fontWeight:e.get("FontWeight"),italicAngle:-e.get("ItalicAngle")};Ca(s)&&g.push(f(b,null,s))}await Promise.all(g);const p=this.xfaFactory.setFonts(u);if(!p)return;n.ignoreErrors=!0,g.length=0,u.length=0;const m=new Set;for(const b of p)sh(`${b}-Regular`)||m.add(b);m.size&&p.push("PdfJS-Fallback");for(const b of p)if(!m.has(b))for(const e of[{name:"Regular",fontWeight:400,italicAngle:0},{name:"Bold",fontWeight:700,italicAngle:0},{name:"Italic",fontWeight:400,italicAngle:12},{name:"BoldItalic",fontWeight:700,italicAngle:12}]){const t=`${b}-${e.name}`;g.push(f(t,ah(t),{fontFamily:b,fontWeight:e.fontWeight,italicAngle:e.italicAngle}))}await Promise.all(g),this.xfaFactory.appendFonts(u,m)}loadXfaResources(e,t){return Promise.all([this.#ft(e,t).catch(()=>{}),this.#dt()])}serializeXfaData(e){return this.xfaFactory?this.xfaFactory.serializeData(e):null}get version(){return this.catalog.version||this.#ht}get formInfo(){const e={hasFields:!1,hasAcroForm:!1,hasXfa:!1,hasSignatures:!1},{acroForm:t}=this.catalog;if(!t)return ss(this,"formInfo",e);try{const s=t.get("Fields"),a=Array.isArray(s)&&s.length>0;e.hasFields=a;const i=t.get("XFA");e.hasXfa=Array.isArray(i)&&i.length>0||i instanceof $s&&!i.isEmpty;const n=!!(1&t.get("SigFlags")),r=n&&this.#ut(s);e.hasAcroForm=a&&!r,e.hasSignatures=n}catch(e){if(e instanceof Ys)throw e;Zt(`Cannot fetch form information: "${e}".`)}return ss(this,"formInfo",e)}get documentInfo(){const{catalog:e,formInfo:t,xref:s}=this,a={PDFFormatVersion:this.version,Language:e.lang,EncryptFilterName:s.encrypt?.filterName??null,IsLinearized:!!this.linearization,IsAcroFormPresent:t.hasAcroForm,IsXFAPresent:t.hasXfa,IsCollectionPresent:!!e.collection,IsSignaturesPresent:t.hasSignatures};let i;try{i=s.trailer.get("Info")}catch(e){if(e instanceof Ys)throw e;Jt("The document information dictionary is invalid.")}if(!(i instanceof Ps))return ss(this,"documentInfo",a);for(const[n,r]of i){switch(n){case"Title":case"Author":case"Subject":case"Keywords":case"Creator":case"Producer":case"CreationDate":case"ModDate":if("string"==typeof r){a[n]=ws(r);continue}break;case"Trapped":if(r instanceof Ns){a[n]=r;continue}break;default:let e;switch(typeof r){case"string":e=ws(r);break;case"number":case"boolean":e=r;break;default:r instanceof Ns&&(e=r)}if(void 0===e){Zt(`Bad value, for custom key "${n}", in Info: ${r}.`);continue}a.Custom??=Object.create(null),a.Custom[n]=e;continue}Zt(`Bad value, for key "${n}", in Info: ${r}.`)}return ss(this,"documentInfo",a)}get fingerprints(){const e="\0".repeat(16);function t(t){return"string"==typeof t&&16===t.length&&t!==e}const s=this.xref.trailer.get("ID");let a,i;return Array.isArray(s)&&t(s[0])?(a=us(s[0]),s[1]!==s[0]&&t(s[1])&&(i=us(s[1]))):a=hv(this.stream.getByteRange(0,1024),0,1024),ss(this,"fingerprints",[Is(a),i?Is(i):null])}async#gt(e){const{catalog:t,linearization:s,xref:a}=this,i=Es.get(s.objectNumberFirst,0);try{const e=await a.fetchAsync(i);if(e instanceof Ps){let s=e.getRaw("Type");if(s instanceof Es&&(s=await a.fetchAsync(s)),Us(s,"Page")||!e.has("Type")&&!e.has("Kids")&&e.has("Contents"))return t.pageKidsCountCache.has(i)||t.pageKidsCountCache.put(i,1),t.pageIndexCache.has(i)||t.pageIndexCache.put(i,0),[e,i]}throw new cs("The Linearization dictionary doesn't point to a valid Page dictionary.")}catch(s){return Zt(`_getLinearizationPage: "${s.message}".`),t.getPageDict(e)}}getPage(e){const t=this.#lt.get(e);if(t)return t;const{catalog:s,linearization:a,xfaFactory:i}=this;let n;return n=i?Promise.resolve([Ps.empty,null]):a?.pageFirst===e?this.#gt(e):s.getPageDict(e),n=n.then(([t,a])=>new Kv({pdfManager:this.pdfManager,xref:this.xref,pageIndex:e,pageDict:t,ref:a,globalIdFactory:this._globalIdFactory,fontCache:s.fontCache,builtInCMapCache:s.builtInCMapCache,standardFontDataCache:s.standardFontDataCache,globalColorSpaceCache:s.globalColorSpaceCache,globalImageCache:s.globalImageCache,systemFontCache:s.systemFontCache,nonBlendModesSet:s.nonBlendModesSet,xfaFactory:i})),this.#lt.set(e,n),n}async checkFirstPage(e=!1){if(!e)try{await this.getPage(0)}catch(e){if(e instanceof Zs)throw this.#lt.delete(0),await this.cleanup(),new Qs}}async checkLastPage(e=!1){const{catalog:t,pdfManager:s}=this;let a;t.setActualNumPages();try{if(await Promise.all([s.ensureDoc("xfaFactory"),s.ensureDoc("linearization"),s.ensureCatalog("numPages")]),this.xfaFactory)return;if(a=this.linearization?this.linearization.numPages:t.numPages,!Number.isInteger(a))throw new cs("Page count is not an integer.");if(a<=1)return;await this.getPage(a-1)}catch(i){if(this.#lt.delete(a-1),await this.cleanup(),i instanceof Zs&&!e)throw new Qs;let r;Zt(`checkLastPage - invalid /Pages tree /Count: ${a}.`);try{r=await t.getAllPageDicts(e)}catch(s){if(s instanceof Zs&&!e)throw new Qs;return void t.setActualNumPages(1)}for(const[e,[a,i]]of r){let n;a instanceof Error?(n=Promise.reject(a),n.catch(()=>{})):n=Promise.resolve(new Kv({pdfManager:s,xref:this.xref,pageIndex:e,pageDict:a,ref:i,globalIdFactory:this._globalIdFactory,fontCache:t.fontCache,builtInCMapCache:t.builtInCMapCache,standardFontDataCache:t.standardFontDataCache,globalColorSpaceCache:this.globalColorSpaceCache,globalImageCache:t.globalImageCache,systemFontCache:t.systemFontCache,nonBlendModesSet:t.nonBlendModesSet,xfaFactory:null})),this.#lt.set(e,n)}t.setActualNumPages(r.size)}}async fontFallback(e,t){const{catalog:s,pdfManager:a}=this;for(const i of await Promise.all(s.fontCache))if(i.loadedName===e)return void i.fallback(t,a.evaluatorOptions)}async cleanup(e=!1){return this.catalog?this.catalog.cleanup(e):Tu()}async#pt(e,t,s,a,i,n,r){const{xref:o}=this;if(!(s instanceof Es)||n.has(s))return;n.put(s);const c=await o.fetchAsync(s);if(!(c instanceof Ps))return;let l=await c.getAsync("Subtype");if(l=l instanceof Ns?l.name:null,"Link"===l)return;if(c.has("T")){const t=ws(await c.getAsync("T"));e=""===e?t:`${e}.${t}`}else{let s=c;for(;;){if(s=s.getRaw("Parent")||t,s instanceof Es){if(n.has(s))break;s=await o.fetchAsync(s)}if(!(s instanceof Ps))break;if(s.has("T")){const t=ws(await s.getAsync("T"));e=""===e?t:`${e}.${t}`;break}}}if(t&&!c.has("Parent")&&Us(c.get("Subtype"),"Widget")&&r.put(s,t),a.has(e)||a.set(e,[]),a.get(e).push(Dk.create(o,s,i,null,!0,r,null,null).then(e=>e?.getFieldObject()).catch(function(e){return Zt(`#collectFieldObjects: "${e}".`),null})),!c.has("Kids"))return;const h=await c.getAsync("Kids");if(Array.isArray(h))for(const u of h)await this.#pt(e,s,u,a,i,n,r)}get fieldObjects(){return ss(this,"fieldObjects",this.pdfManager.ensureDoc("formInfo").then(async e=>{if(!e.hasFields)return null;const t=await this.annotationGlobals;if(!t)return null;const{acroForm:s}=t,a=new Ls,i=Object.create(null),n=new Map,r=new _s;for(const c of s.get("Fields"))await this.#pt("",null,c,n,t,a,r);const o=[];for(const[c,l]of n)o.push(Promise.all(l).then(e=>{(e=e.filter(e=>!!e)).length>0&&(i[c]=e)}));return await Promise.all(o),{allFields:fs(i)>0?i:null,orphanFields:r}}))}get hasJSActions(){return ss(this,"hasJSActions",this.pdfManager.ensureDoc("_parseHasJSActions"))}async _parseHasJSActions(){const[e,t]=await Promise.all([this.pdfManager.ensureCatalog("jsActions"),this.pdfManager.ensureDoc("fieldObjects")]);return!!e||!!t?.allFields&&Object.values(t.allFields).some(e=>e.some(e=>null!==e.actions))}get calculationOrderIds(){const e=this.catalog.acroForm?.get("CO");if(!Array.isArray(e)||0===e.length)return ss(this,"calculationOrderIds",null);const t=[];for(const s of e)s instanceof Es&&t.push(s.toString());return ss(this,"calculationOrderIds",t.length?t:null)}get annotationGlobals(){return ss(this,"annotationGlobals",Dk.createGlobals(this.pdfManager))}}class tA{constructor({docBaseUrl:e,docId:t,enableXfa:s,evaluatorOptions:a,handler:i,password:n}){this._docBaseUrl=function(e){if(e){const t=ts(e);if(t)return t.href;Zt(`Invalid absolute docBaseUrl: "${e}".`)}return null}(e),this._docId=t,this._password=n,this.enableXfa=s,a.isOffscreenCanvasSupported&&=gs.isOffscreenCanvasSupported,a.isImageDecoderSupported&&=gs.isImageDecoderSupported,this.evaluatorOptions=Object.freeze(a),di.setOptions(a),Ui.setOptions(a),Vi.setOptions(a);const r={...a,handler:i};Hi.setOptions(r),ai.setOptions(r),ii.setOptions(r)}get docId(){return this._docId}get password(){return this._password}get docBaseUrl(){return this._docBaseUrl}ensureDoc(e,t){return this.ensure(this.pdfDocument,e,t)}ensureXRef(e,t){return this.ensure(this.pdfDocument.xref,e,t)}ensureCatalog(e,t){return this.ensure(this.pdfDocument.catalog,e,t)}getPage(e){return this.pdfDocument.getPage(e)}fontFallback(e,t){return this.pdfDocument.fontFallback(e,t)}cleanup(e=!1){return this.pdfDocument.cleanup(e)}async ensure(e,t,s){Qt("Abstract method `ensure` called")}requestRange(e,t){Qt("Abstract method `requestRange` called")}requestLoadedStream(e=!1){Qt("Abstract method `requestLoadedStream` called")}sendProgressiveData(e){Qt("Abstract method `sendProgressiveData` called")}updatePassword(e){this._password=e}terminate(e){Qt("Abstract method `terminate` called")}}class sA extends tA{constructor(e){super(e);const t=new ni(e.source);this.pdfDocument=new eA(this,t),this._loadedStreamPromise=Promise.resolve(t)}async ensure(e,t,s){const a=e[t];return"function"==typeof a?a.apply(e,s):a}requestRange(e,t){return Promise.resolve()}requestLoadedStream(e=!1){return this._loadedStreamPromise}terminate(e){}}class aA extends tA{constructor(e){super(e),this.streamManager=new li(e.source,{msgHandler:e.handler,length:e.length,disableAutoFetch:e.disableAutoFetch,rangeChunkSize:e.rangeChunkSize}),this.pdfDocument=new eA(this,this.streamManager.getStream())}async ensure(e,t,s){try{const a=e[t];return"function"==typeof a?a.apply(e,s):a}catch(a){if(!(a instanceof Ys))throw a;return await this.requestRange(a.begin,a.end),this.ensure(e,t,s)}}requestRange(e,t){return this.streamManager.requestRange(e,t)}requestLoadedStream(e=!1){return this.streamManager.requestAllChunks(e)}sendProgressiveData(e){this.streamManager.onReceiveData({chunk:e})}terminate(e){this.streamManager.abort(e)}}const iA=1,nA=2,rA=1,oA=2,cA=3,lA=4,hA=5,uA=6,dA=7,fA=8;function gA(){}function pA(e){if(e instanceof ls||e instanceof rs||e instanceof is||e instanceof os||e instanceof ns)return e;switch(e instanceof Error||"object"==typeof e&&null!==e||Qt('wrapReason: Expected "reason" to be a (possibly cloned) Error.'),e.name){case"AbortException":return new ls(e.message);case"InvalidPDFException":return new rs(e.message);case"PasswordException":return new is(e.message,e.code);case"ResponseException":return new os(e.message,e.status,e.missing);case"UnknownErrorException":return new ns(e.message,e.details)}return new ns(e.message,e.toString())}class mA{#mt=new AbortController;constructor(e,t,s){this.sourceName=e,this.targetName=t,this.comObj=s,this.callbackId=1,this.streamId=1,this.streamSinks=Object.create(null),this.streamControllers=Object.create(null),this.callbackCapabilities=Object.create(null),this.actionHandler=Object.create(null),s.addEventListener("message",this.#bt.bind(this),{signal:this.#mt.signal})}#bt({data:e}){if(e.targetName!==this.sourceName)return;if(e.stream)return void this.#wt(e);if(e.callback){const t=e.callbackId,s=this.callbackCapabilities[t];if(!s)throw new Error(`Cannot resolve callback ${t}`);if(delete this.callbackCapabilities[t],e.callback===iA)s.resolve(e.data);else{if(e.callback!==nA)throw new Error("Unexpected callback case");s.reject(pA(e.reason))}return}const t=this.actionHandler[e.action];if(!t)throw new Error(`Unknown action from worker: ${e.action}`);if(e.callbackId){const s=this.sourceName,a=e.sourceName,i=this.comObj;return void Promise.try(t,e.data).then(function(t){i.postMessage({sourceName:s,targetName:a,callback:iA,callbackId:e.callbackId,data:t})},function(t){i.postMessage({sourceName:s,targetName:a,callback:nA,callbackId:e.callbackId,reason:pA(t)})})}e.streamId?this.#yt(e):t(e.data)}on(e,t){const s=this.actionHandler;if(s[e])throw new Error(`There is already an actionName called "${e}"`);s[e]=t}send(e,t,s){this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:e,data:t},s)}sendWithPromise(e,t,s){const a=this.callbackId++,i=Promise.withResolvers();this.callbackCapabilities[a]=i;try{this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:e,callbackId:a,data:t},s)}catch(e){i.reject(e)}return i.promise}sendWithStream(e,t,s,a){const i=this.streamId++,n=this.sourceName,r=this.targetName,o=this.comObj;return new ReadableStream({start:s=>{const c=Promise.withResolvers();return this.streamControllers[i]={controller:s,startCall:c,pullCall:null,cancelCall:null,isClosed:!1},o.postMessage({sourceName:n,targetName:r,action:e,streamId:i,data:t,desiredSize:s.desiredSize},a),c.promise},pull:e=>{const t=Promise.withResolvers();return this.streamControllers[i].pullCall=t,o.postMessage({sourceName:n,targetName:r,stream:uA,streamId:i,desiredSize:e.desiredSize}),t.promise},cancel:e=>{es(e instanceof Error,"cancel must have a valid reason");const t=Promise.withResolvers();return this.streamControllers[i].cancelCall=t,this.streamControllers[i].isClosed=!0,o.postMessage({sourceName:n,targetName:r,stream:rA,streamId:i,reason:pA(e)}),t.promise}},s)}#yt(e){const t=e.streamId,s=this.sourceName,a=e.sourceName,i=this.comObj,n=this,r=this.actionHandler[e.action],o={enqueue(e,n=1,r){if(this.isCancelled)return;const o=this.desiredSize;this.desiredSize-=n,o>0&&this.desiredSize<=0&&(this.sinkCapability=Promise.withResolvers(),this.ready=this.sinkCapability.promise),i.postMessage({sourceName:s,targetName:a,stream:lA,streamId:t,chunk:e},r)},close(){this.isCancelled||(this.isCancelled=!0,i.postMessage({sourceName:s,targetName:a,stream:cA,streamId:t}),delete n.streamSinks[t])},error(e){es(e instanceof Error,"error must have a valid reason"),this.isCancelled||(this.isCancelled=!0,i.postMessage({sourceName:s,targetName:a,stream:hA,streamId:t,reason:pA(e)}))},sinkCapability:Promise.withResolvers(),onPull:null,onCancel:null,isCancelled:!1,desiredSize:e.desiredSize,ready:null};o.sinkCapability.resolve(),o.ready=o.sinkCapability.promise,this.streamSinks[t]=o,Promise.try(r,e.data,o).then(function(){i.postMessage({sourceName:s,targetName:a,stream:fA,streamId:t,success:!0})},function(e){i.postMessage({sourceName:s,targetName:a,stream:fA,streamId:t,reason:pA(e)})})}#wt(e){const t=e.streamId,s=this.sourceName,a=e.sourceName,i=this.comObj,n=this.streamControllers[t],r=this.streamSinks[t];switch(e.stream){case fA:e.success?n.startCall.resolve():n.startCall.reject(pA(e.reason));break;case dA:e.success?n.pullCall.resolve():n.pullCall.reject(pA(e.reason));break;case uA:if(!r){i.postMessage({sourceName:s,targetName:a,stream:dA,streamId:t,success:!0});break}r.desiredSize<=0&&e.desiredSize>0&&r.sinkCapability.resolve(),r.desiredSize=e.desiredSize,Promise.try(r.onPull||gA).then(function(){i.postMessage({sourceName:s,targetName:a,stream:dA,streamId:t,success:!0})},function(e){i.postMessage({sourceName:s,targetName:a,stream:dA,streamId:t,reason:pA(e)})});break;case lA:if(es(n,"enqueue should have stream controller"),n.isClosed)break;n.controller.enqueue(e.chunk);break;case cA:if(es(n,"close should have stream controller"),n.isClosed)break;n.isClosed=!0,n.controller.close(),this.#xt(n,t);break;case hA:es(n,"error should have stream controller"),n.controller.error(pA(e.reason)),this.#xt(n,t);break;case oA:e.success?n.cancelCall.resolve():n.cancelCall.reject(pA(e.reason)),this.#xt(n,t);break;case rA:if(!r)break;const o=pA(e.reason);Promise.try(r.onCancel||gA,o).then(function(){i.postMessage({sourceName:s,targetName:a,stream:oA,streamId:t,success:!0})},function(e){i.postMessage({sourceName:s,targetName:a,stream:oA,streamId:t,reason:pA(e)})}),r.sinkCapability.reject(o),r.isCancelled=!0,delete this.streamSinks[t];break;default:throw new Error("Unexpected stream case")}}async#xt(e,t){await Promise.allSettled([e.startCall?.promise,e.pullCall?.promise,e.cancelCall?.promise]),delete this.streamControllers[t]}destroy(){this.#mt?.abort(),this.#mt=null}}async function bA(e,t,s,{encrypt:a=null,encryptRef:i=null}){const n=a&&i!==e?a.createCipherTransform(e.num,e.gen):null;s.push(`${e.num} ${e.gen} obj\n`),await yA(t,s,n),s.push("\nendobj\n")}async function wA(e,t,s){t.push("<<");for(const[a,i]of e.getRawEntries())t.push(` /${ma(a)} `),await yA(i,t,s);t.push(">>")}async function yA(e,t,s){e instanceof Ns?t.push(`/${ma(e.name)}`):e instanceof Es?t.push(`${e.num} ${e.gen} R`):Array.isArray(e)||ArrayBuffer.isView(e)?await async function(e,t,s){t.push("[");for(let a=0,i=e.length;a<i;a++)await yA(e[a],t,s),a<i-1&&t.push(" ");t.push("]")}(e,t,s):"string"==typeof e?(s&&(e=s.encryptString(e)),t.push(`(${ba(e)})`)):"number"==typeof e||"boolean"==typeof e?t.push(e.toString()):e instanceof Ps?await wA(e,t,s):e instanceof $s?await async function(e,t,s){(e=e.getOriginalStream()).reset();let a=e.getBytes();const{dict:i}=e,[n,r]=await Promise.all([i.getAsync("Filter"),i.getAsync("DecodeParms")]),o=Us(Array.isArray(n)?await i.xref.fetchIfRefAsync(n[0]):n,"FlateDecode");if(a.length>=256&&!o)try{const e=new CompressionStream("deflate"),t=e.writable.getWriter();await t.ready,t.write(a).then(async()=>{await t.ready,await t.close()}).catch(()=>{});const s=await new Response(e.readable).arrayBuffer();let c,l;a=new Uint8Array(s),n?o||(c=Array.isArray(n)?[Ns.get("FlateDecode"),...n]:[Ns.get("FlateDecode"),n],r&&(l=Array.isArray(r)?[null,...r]:[null,r])):c=Ns.get("FlateDecode"),c&&i.set("Filter",c),l&&i.set("DecodeParms",l)}catch(e){Jt(`writeStream - cannot compress data: "${e}".`)}let c=hs(a);s&&(c=s.encryptString(c)),i.set("Length",c.length),await wA(i,t,s),t.push(" stream\n",c,"\nendstream")}(e,t,s):null===e?t.push("null"):Zt(`Unhandled value in writer: ${typeof e}, please file a bug.`)}function xA(e,t,s,a){for(let i=t+s-1;i>s-1;i--)a[i]=255&e,e>>=8;return s+t}function kA(e,t,s){const a=e.length;for(let i=0;i<a;i++)s[t+i]=255&e.charCodeAt(i);return t+a}function vA({xfaData:e,xfaDatasetsRef:t,changes:s,xref:a}){null===e&&(e=function(e,t){const s=new $u({hasAttributes:!0}).parseFromString(e);for(const{xfa:i}of t){if(!i)continue;const{path:e,value:t}=i;if(!e)continue;const a=pa(e);let n=s.documentElement.searchNode(a,0);!n&&a.length>1&&(n=s.documentElement.searchNode([a.at(-1)],0)),n?n.childNodes=Array.isArray(t)?t.map(e=>new Hu("value",e)):[new Hu("#text",t)]:Zt(`Node not found for path: ${e}`)}const a=[];return s.documentElement.dump(a),a.join("")}(a.fetchIfRef(t).getString(),s));const i=new ri(e);i.dict=new Ps(a),i.dict.setIfName("Type","EmbeddedFile"),s.put(t,{data:i})}function AA(e){const t=[];for(const{ref:s}of e)s.num===t.at(-2)+t.at(-1)?t[t.length-1]+=1:t.push(s.num,1);return t}function CA(e,t,s){if(Array.isArray(t.fileIds)&&t.fileIds.length>0){const a=function(e,t){const s=Math.floor(Date.now()/1e3),a=t.filename||"",i=[s.toString(),a,e.toString(),...t.infoMap.values()],n=Math.sumPrecise(i.map(e=>e.length)),r=new Uint8Array(n);let o=0;for(const c of i)o=kA(c,o,r);return hs(hv(r,0,r.length))}(e,t);s.set("ID",[t.fileIds[0]||a,a])}}async function SA({originalData:e,xrefInfo:t,changes:s,xref:a=null,hasXfa:i=!1,xfaDatasetsRef:n=null,hasXfaDatasetsEntry:r=!1,needAppearances:o,acroFormRef:c=null,acroForm:l=null,xfaData:h=null,useXrefStream:u=!1}){await async function({xref:e,acroForm:t,acroFormRef:s,hasXfa:a,hasXfaDatasetsEntry:i,xfaDatasetsRef:n,needAppearances:r,changes:o}){if(!a||i||n||Zt("XFA - Cannot save it"),!r&&(!a||!n||i))return;const c=t.clone();if(a&&!i){const e=t.get("XFA").slice();e.splice(2,0,"datasets"),e.splice(3,0,n),c.set("XFA",e)}r&&c.set("NeedAppearances",!0),o.put(s,{data:c})}({xref:a,acroForm:l,acroFormRef:c,hasXfa:i,hasXfaDatasetsEntry:r,xfaDatasetsRef:n,needAppearances:o,changes:s}),i&&vA({xfaData:h,xfaDatasetsRef:n,changes:s,xref:a});const d=function(e,t,s){const a=new Ps(null);a.setIfDefined("Prev",e?.startXRef);const i=e.newRef;return s?(t.put(i,{data:""}),a.set("Size",i.num+1),a.setIfName("Type","XRef")):a.set("Size",i.num),a.setIfDefined("Root",e?.rootRef),a.setIfDefined("Info",e?.infoRef),a.setIfDefined("Encrypt",e?.encryptRef),a}(t,s,u),f=[],g=await async function(e,t,s=[]){const a=[];for(const[i,{data:n,objStreamRef:r,index:o}]of e.items())r?a.push({ref:i,data:n,objStreamRef:r,index:o}):null!==n&&"string"!=typeof n?(await bA(i,n,s,t),a.push({ref:i,data:s.join("")}),s.length=0):a.push({ref:i,data:n});return a.sort((e,t)=>e.ref.num-t.ref.num)}(s,a,f);let p=e.length;const m=e.at(-1);10!==m&&13!==m&&(f.push("\n"),p+=1);for(const{data:x}of g)null!==x&&f.push(x);await(u?async function(e,t,s,a,i){const n=[];let r=0,o=0;for(const{ref:f,data:g,objStreamRef:p,index:m}of s){let e;r=Math.max(r,t),p?(e=m,n.push([2,p.num,e])):null!==g?(e=Math.min(f.gen,65535),n.push([1,t,e]),t+=g.length):(e=Math.min(f.gen+1,65535),n.push([0,0,e])),o=Math.max(o,e)}a.set("Index",AA(s));const c=[1,Na(r),Na(o)];a.set("W",c),CA(t,e,a);const l=Math.sumPrecise(c),h=new Uint8Array(l*n.length),u=new ni(h);u.dict=a;let d=0;for(const[f,g,p]of n)d=xA(f,c[0],d,h),d=xA(g,c[1],d,h),d=xA(p,c[2],d,h);await bA(e.newRef,u,i,{}),i.push("startxref\n",t.toString(),"\n%%EOF\n")}(t,p,g,d,f):async function(e,t,s,a,i){i.push("xref\n");const n=AA(s);let r=0;for(const{ref:o,data:c}of s)o.num===n[r]&&(i.push(`${n[r]} ${n[r+1]}\n`),r+=2),null!==c?(i.push(`${t.toString().padStart(10,"0")} ${Math.min(o.gen,65535).toString().padStart(5,"0")} n\r\n`),t+=c.length):i.push(`0000000000 ${Math.min(o.gen+1,65535).toString().padStart(5,"0")} f\r\n`);CA(t,e,a),i.push("trailer\n"),await wA(a,i,null),i.push("\nstartxref\n",t.toString(),"\n%%EOF\n")}(t,p,g,d,f));const b=e.length+Math.sumPrecise(f.map(e=>e.length)),w=new Uint8Array(b);w.set(e);let y=e.length;for(const x of f)y=kA(x,y,w);return w}class IA{constructor(e,t){this.page=e,this.documentData=t,this.annotations=null,this.pointingNamedDestinations=null,t.pagesMap.put(e.ref,this)}}class BA{constructor(e){this.document=e,this.destinations=null,this.pageLabels=null,this.pagesMap=new _s,this.oldRefMapping=new _s,this.dedupNamedDestinations=new Map,this.usedNamedDestinations=new Set,this.postponedRefCopies=new _s,this.usedStructParents=new Set,this.oldStructParentMapping=new Map,this.structTreeRoot=null,this.parentTree=null,this.idTree=null,this.roleMap=null,this.classMap=null,this.namespaces=null,this.structTreeAF=null,this.structTreePronunciationLexicon=[]}}class FA{constructor(e){this.entries=e}fetch(e){return e instanceof Es?this.entries[e.num]:e}}class MA{constructor({useObjectStreams:e=!0,title:t="",author:s=""}={}){this.hasSingleFile=!1,this.currentDocument=null,this.oldPages=[],this.newPages=[],this.xref=[null],this.xrefWrapper=new FA(this.xref),this.newRefCount=1,[this.rootRef,this.rootDict]=this.newDict,[this.infoRef,this.infoDict]=this.newDict,[this.pagesRef,this.pagesDict]=this.newDict,this.namesDict=null,this.useObjectStreams=e,this.objStreamRefs=e?new Set:null,this.version="1.7",this.title=t,this.author=s,this.pageLabels=null,this.namedDestinations=new Map,this.parentTree=new Map,this.structTreeKids=[],this.idTree=new Map,this.classMap=new Ps,this.roleMap=new Ps,this.namespaces=new Map,this.structTreeAF=[],this.structTreePronunciationLexicon=[]}get newRef(){return Es.get(this.newRefCount++,0)}get newDict(){const e=this.newRef;return[e,this.xref[e.num]=new Ps]}async#kt(e,t){const s=this.newRef;return this.xref[s.num]=await this.#vt(e,!0,t),s}cloneDict(e){const t=e.clone();return t.xref=this.xrefWrapper,t}async#vt(e,t,s){if(e instanceof Es){const{currentDocument:{oldRefMapping:t}}=this;let a=t.get(e);if(a)return a;const i=e;return"number"==typeof(e=await s.fetchAsync(i))?e:(a=this.newRef,t.put(i,a),this.xref[a.num]=await this.#vt(e,!0,s),a)}const a=[],{currentDocument:{postponedRefCopies:i}}=this;if(Array.isArray(e)){t&&(e=e.slice());for(let t=0,n=e.length;t<n;t++){const n=i.get(e[t]);n?n.push(s=>e[t]=s):a.push(this.#vt(e[t],!0,s).then(s=>e[t]=s))}return await Promise.all(a),e}let n;if(e instanceof $s?(({dict:n}=e=e.getOriginalStream().clone()),n.xref=this.xrefWrapper):e instanceof Ps&&(t&&((e=e.clone()).xref=this.xrefWrapper),n=e),n){for(const[e,t]of n.getRawEntries()){const r=i.get(t);r?r.push(t=>n.set(e,t)):a.push(this.#vt(t,!0,s).then(t=>n.set(e,t)))}await Promise.all(a)}return e}async#At(e,t,s,a,i,n,r,o=new Ls){const{currentDocument:{pagesMap:c,oldRefMapping:l}}=this,h=t.getRaw("Pg");if(h instanceof Es&&!c.has(h))return null;let u;const d=u=t.getRaw("K");if(d instanceof Es){if(o.has(d))return null;u=await s.fetchAsync(d),Array.isArray(u)||(u=[d])}u=Array.isArray(u)?u:[u];const f=[],g=[];for(let k of u){const t=k instanceof Es?k:null;if(t){if(o.has(t))continue;o.put(t),k=await s.fetchAsync(t)}if("number"==typeof k){f.push(k);continue}if(!(k instanceof Ps))continue;const h=k.getRaw("Pg");if(h instanceof Es&&!c.has(h))continue;const u=k.get("Type");if(!u||Us(u,"StructElem")){let e=!1;if(t&&a.has(t)){if(!Us(k.get("S"),"Link"))continue;e=!0}const c=await this.#At(t,k,s,a,i,n,r,o);c&&(g.push(f.length),f.push(c),t&&l.put(t,c),e&&this.xref[c.num].setIfName("S","Span"));continue}if(Us(u,"OBJR")){if(!t)continue;const s=l.get(t);if(!s)continue;const a=this.xref[s.num].getRaw("Obj");if(a instanceof Es){const t=this.xref[a.num];if(t instanceof Ps&&!t.has("StructParent")&&e){const s=this.parentTree.size;this.parentTree.set(s,[l,e]),t.set("StructParent",s)}}f.push(s);continue}if(Us(u,"MCR")){const e=await this.#vt(t||k,!0,s);f.push(e);continue}if(t){const e=await this.#vt(t,!0,s);f.push(e)}}if(0!==u.length&&0===f.length)return null;const p=this.newRef,m=this.xref[p.num]=this.cloneDict(t);m.delete("ID"),m.delete("C"),m.delete("K"),m.delete("P"),m.delete("S"),await this.#vt(m,!1,s);const b=t.get("C");if(b instanceof Ns){const e=n.get(b.name);e?m.set("C",Ns.get(e)):m.set("C",b)}else if(Array.isArray(b)){const e=[];for(const t of b)if(t instanceof Ns){const s=n.get(t.name);s?e.push(Ns.get(s)):e.push(t)}m.set("C",e)}const w=t.get("S");if(w instanceof Ns){const e=r.get(w.name);e?m.set("S",Ns.get(e)):m.set("S",w)}const y=t.get("ID");if("string"==typeof y){const e=ws(y,!1),t=i.get(e);t?m.set("ID",Fa(t)):m.set("ID",y)}let x=m.get("A");if(x){Array.isArray(x)||(x=[x]);for(let e of x)if(e=this.xrefWrapper.fetch(e),Us(e.get("O"),"Table")&&e.has("Headers")){const t=this.xrefWrapper.fetch(e.getRaw("Headers"));if(Array.isArray(t))for(let e=0,s=t.length;e<s;e++){const s=i.get(ws(t[e],!1));s&&(t[e]=s)}}}for(const k of g){const e=f[k];this.xref[e.num].set("P",p)}return 1===f.length?m.set("K",f[0]):f.length>1&&m.set("K",f),p}async extractPages(e){const t=[];let s=0;this.hasSingleFile=1===e.length;const a=[];for(const{document:i,includePages:n,excludePages:r}of e){if(!i)continue;const e=new BA(i);let o,c,l,h;a.push(e),t.push(this.#Ct(e));for(const t of n||[])Array.isArray(t)?(c||=[]).push(t):(o||=new Set).add(t);for(const t of r||[])Array.isArray(t)?(h||=[]).push(t):(l||=new Set).add(t);for(let a=0,n=i.numPages;a<n;a++){if(l?.has(a))continue;if(h){let e=!1;for(const[t,s]of h)if(a>=t&&a<=s){e=!0;break}if(e)continue}let n=!1;if(o&&(n=o.has(a)),!n&&c)for(const[e,t]of c)if(a>=e&&a<=t){n=!0;break}if(n||o||c||(n=!0),!n)continue;const r=s++;t.push(i.getPage(a).then(t=>{this.oldPages[r]=new IA(t,e)}))}}await Promise.all(t),t.length=0,this.#St(a),this.#It();for(const i of this.oldPages)t.push(this.#Bt(i));await Promise.all(t),this.#Ft(),this.#Mt(a);for(let i=0,n=this.oldPages.length;i<n;i++)this.newPages[i]=await this.#Tt(i,null);return this.#Rt(a),await this.#Nt(a),this.writePDF()}async#Ct(e){const{document:{pdfManager:t,xref:s}}=e;await Promise.all([t.ensureCatalog("destinations").then(t=>e.destinations=t),t.ensureCatalog("rawPageLabels").then(t=>e.pageLabels=t),t.ensureCatalog("structTreeRoot").then(t=>e.structTreeRoot=t)]);const a=e.structTreeRoot;if(a){const t=a.dict,i=t.get("ParentTree");if(i){const t=new Mu(i,s);e.parentTree=t.getAll(!0)}const n=t.get("IDTree");if(n){const t=new Fu(n,s);e.idTree=t.getAll(!0)}e.roleMap=t.get("RoleMap")||null,e.classMap=t.get("ClassMap")||null;let r=t.get("Namespaces")||null;r&&!Array.isArray(r)&&(r=[r]),e.namespaces=r,e.structTreeAF=t.get("AF")||null,e.structTreePronunciationLexicon=t.get("PronunciationLexicon")||null}}async#Bt(e){const{page:{xref:t,annotations:s},documentData:{pagesMap:a,destinations:i,usedNamedDestinations:n}}=e;if(!s)return;const r=[];let o=[],c=0;for(const l of s){const e=c++;r.push(t.fetchIfRefAsync(l).then(async t=>{if(!Us(t.get("Subtype"),"Link"))return void(o[e]=l);const s=t.get("A"),r=s instanceof Ps?s.get("D"):t.get("Dest");if(r&&(!Array.isArray(r)||r[0]instanceof Es&&!a.has(r[0]))){if("string"==typeof r){const t=ws(r,!0);i.has(t)&&(o[e]=l,n.add(t))}}else o[e]=l}))}await Promise.all(r),o=o.filter(e=>!!e),e.annotations=o.length>0?o:null}#Mt(e){for(const{postponedRefCopies:t,pagesMap:s}of e)for(const e of s.keys())t.put(e,[])}#Rt(e){for(const{postponedRefCopies:t,oldRefMapping:s}of e){for(const[e,a]of t.items()){const t=s.get(e);for(const e of a)e(t)}t.clear()}}#Dt(e,t,s=new Ls){if(e instanceof Es)return void(s.has(e)||(s.put(e),this.#Dt(this.xref[e.num],t,s)));if(Array.isArray(e)){for(const a of e)this.#Dt(a,t,s);return}let a;if(e instanceof $s?({dict:a}=e):e instanceof Ps&&(a=e),a){t(a);for(const e of a.getRawValues())this.#Dt(e,t,s)}}async#Nt(e){let t=0;const{parentTree:s}=this;for(let h=0,u=this.newPages.length;h<u;h++){const{documentData:{parentTree:e,oldRefMapping:a,oldStructParentMapping:i,usedStructParents:n,document:{xref:r}}}=this.oldPages[h];if(!e)continue;const o=this.newPages[h],c=this.xref[o.num];this.#Dt(c,o=>{const c=o.get("StructParent")??o.get("StructParents");if("number"!=typeof c)return;n.add(c);let l=e.get(c);const h=l instanceof Es?l:null;if(h){const e=r.fetch(h);Array.isArray(e)&&(l=e)}if(Array.isArray(l)&&l.every(e=>null===e)&&(l=null),!l)return void(o.has("StructParent")?o.delete("StructParent"):o.delete("StructParents"));let u=i.get(c);void 0===u&&(u=t++,i.set(c,u),s.set(u,[a,l])),o.has("StructParent")?o.set("StructParent",u):o.set("StructParents",u)})}const{structTreeKids:a,idTree:i,classMap:n,roleMap:r,namespaces:o,structTreeAF:c,structTreePronunciationLexicon:l}=this;for(const h of e){const{document:{xref:e},oldRefMapping:t,parentTree:s,usedStructParents:u,structTreeRoot:d,idTree:f,classMap:g,roleMap:p,namespaces:m,structTreeAF:b,structTreePronunciationLexicon:w}=h;if(!d)continue;this.currentDocument=h;const y=new Ls;for(const[a,i]of s||[])!u.has(a)&&i instanceof Es&&y.put(i);const x=new Map;for(const[a,n]of f||[]){let e=a;if(i.has(a))for(let t=1;;t++){const s=`${a}_${t}`;if(!i.has(s)){x.set(a,s),e=s;break}}i.set(e,n)}const k=new Map;if(g?.size>0)for(let[a,i]of g){if(i=await this.#vt(i,!0,e),n.has(a))for(let e=1;;e++){const t=`${a}_${e}`;if(!n.has(t)){k.set(a,t),a=t;break}}n.set(a,i)}const v=new Map;if(p?.size>0)for(const[a,i]of p){const e=r.get(a);if(e){if(e!==i)for(let t=1;;t++){const e=`${a}_${t}`;if(!r.has(e)){v.set(a,e),r.set(e,i);break}}}else r.set(a,i)}if(m?.length>0)for(const a of m){const t=await e.fetchIfRefAsync(a);let s=t.get("NS");if(!s||o.has(s))continue;s=ws(s,!1);const i=await this.#vt(t,!0,e);o.set(s,i)}if(b)for(const a of b)c.push(await this.#vt(a,!0,e));if(w)for(const a of w)l.push(await this.#vt(a,!0,e));let A=d.dict.get("K");if(A){A=Array.isArray(A)?A:[A];for(let t of A){const s=t instanceof Es?t:null;if(s&&y.has(s))continue;t=await e.fetchIfRefAsync(t);const i=await this.#At(s,t,e,y,x,k,v);i&&a.push(i)}for(const[e,s]of f||[]){const a=t.get(s),n=x.get(e)||e;a?i.set(n,a):i.delete(n)}}}for(const[h,[u,d]]of s){if(!d){s.delete(h);continue}if(!Array.isArray(d)){const e=u.get(d);void 0===e?s.delete(h):s.set(h,e);continue}const e=d.map(e=>e instanceof Es&&u.get(e)||null);0===e.length||e.every(e=>null===e)?s.delete(h):s.set(h,e)}this.currentDocument=null}#St(e){for(const t of e){if(!t.destinations)continue;const{destinations:e,pagesMap:s}=t,a=t.destinations=new Map;for(const[t,i]of Object.entries(e)){const e=i[0],n=s.get(e);n&&((n.pointingNamedDestinations||=new Set).add(t),a.set(t,i))}}}#Ft(){const{namedDestinations:e}=this;for(let t=0,s=this.oldPages.length;t<s;t++){const s=this.oldPages[t],{documentData:{destinations:a,dedupNamedDestinations:i,usedNamedDestinations:n}}=s;let{pointingNamedDestinations:r}=s;if(r){s.pointingNamedDestinations=r=r.intersection(n);for(const s of r){if(!n.has(s))continue;const r=a.get(s).slice();if(!e.has(s)){e.set(s,r);continue}const o=`${s}_p${t+1}`;i.set(s,o),e.set(o,r)}}}}#Ot(e,t){if(0===t.size)return;const s=(e,s,a)=>{"string"==typeof a&&e.set(s,t.get(ws(a,!0))||a)};for(const a of e){const e=this.xref[a.num];if(!Us(e.get("Subtype"),"Link"))continue;const t=e.get("A");if(t instanceof Ps&&t.has("D")){const e=t.get("D");s(t,"D",e);continue}const i=e.get("Dest");s(e,"Dest",i)}}async#It(){if(!this.hasSingleFile)return;const{documentData:{document:e,pageLabels:t}}=this.oldPages[0];if(!t)return;const s=e.numPages,a=[],i=new Set(this.oldPages.map(({page:{pageIndex:e}})=>e));let n=null,r=-1;for(let l=0;l<s;l++){const e=t.get(l);if(e&&(n=e,r=n.has("St")?l:-1),i.has(l)){if(-1!==r){const e=n.get("St");n=this.cloneDict(n),n.set("St",e+(l-r)),r=-1}a.push(n)}}n=a[0];let o=0;const c=this.pageLabels=[[0,n]];for(let l=0,h=a.length;l<h;l++){const e=a[l];e!==n&&(o=l,n=e,c.push([o,n]))}}async#Tt(e){const{page:t,documentData:s,annotations:a,pointingNamedDestinations:i}=this.oldPages[e];this.currentDocument=s;const{dedupNamedDestinations:n,oldRefMapping:r}=s,{xref:o,rotate:c,mediaBox:l,resources:h,ref:u}=t,d=this.newRef,f=this.xref[d.num]=this.cloneDict(t.pageDict);if(r.put(u,d),i)for(const m of i){const e=n.get(m)||m;this.namedDestinations.get(e)[0]=d}for(const m of["Rotate","MediaBox","CropBox","BleedBox","TrimBox","ArtBox","Resources","Annots","Parent","UserUnit"])f.delete(m);const g=this.newRefCount;await this.#vt(f,!1,o),f.set("Rotate",c),f.set("MediaBox",l);for(const m of["CropBox","BleedBox","TrimBox","ArtBox"]){const e=t.getBoundingBox(m);e?.some((e,t)=>e!==l[t])&&f.set(m,e)}const p=t.userUnit;if(1!==p&&f.set("UserUnit",p),f.setIfDict("Resources",await this.#vt(h,!0,o)),a){const e=await this.#vt(a,!0,o);this.#Ot(e,n),f.setIfArray("Annots",e)}if(this.useObjectStreams){const e=this.newRefCount,t=[];for(let s=g;s<e;s++)this.xref[s]instanceof $s||t.push(Es.get(s,0));for(let s=0;s<t.length;s+=65535){const e=this.newRef;this.objStreamRefs.add(e.num),this.xref[e.num]=t.slice(s,s+65535)}}return this.currentDocument=null,d}#Pt(){const{newPages:e,rootDict:t,pagesRef:s,pagesDict:a}=this;t.set("Pages",s),a.setIfName("Type","Pages"),a.set("Count",e.length);const i=[{dict:a,kids:e,parentRef:s}];for(;i.length>0;){const{dict:e,kids:t,parentRef:s}=i.pop();if(t.length<=16){e.set("Kids",t);for(const e of t)this.xref[e.num].set("Parent",s);continue}const a=Math.max(16,Math.ceil(t.length/16)),n=[];for(let i=0;i<t.length;i+=a)n.push(t.slice(i,i+a));const r=[];e.set("Kids",r);for(const o of n){const[e,t]=this.newDict;r.push(e),t.setIfName("Type","Pages"),t.set("Parent",s),t.set("Count",o.length),i.push({dict:t,kids:o,parentRef:e})}}}#Et(e,t){const s=e.sort(t?([e],[t])=>e.localeCompare(t):([e],[t])=>e-t),[a,i]=this.newDict,n=[{dict:i,entries:s}],r=t?"Names":"Nums";for(;n.length>0;){const{dict:e,entries:t}=n.pop();if(t.length<=64){e.set("Limits",[t[0][0],t.at(-1)[0]]),e.set(r,t.flat());continue}const s=[],a=Math.max(64,Math.ceil(t.length/64));for(let n=0;n<t.length;n+=a)s.push(t.slice(n,n+a));const i=[];e.set("Kids",i);for(const r of s){const[e,t]=this.newDict;i.push(e),t.set("Limits",[r[0][0],r.at(-1)[0]]),n.push({dict:t,entries:r})}}return a}#Lt(){const{pageLabels:e}=this;if(!e||0===e.length)return;const{rootDict:t}=this,s=this.#Et(this.pageLabels,!1);t.set("PageLabels",s)}#_t(){const{namedDestinations:e}=this;0!==e.size&&(this.namesDict||([this.namesRef,this.namesDict]=this.newDict,this.rootDict.set("Names",this.namesRef)),this.namesDict.set("Dests",this.#Et(Array.from(e.entries()),!0)))}#Ut(){const{structTreeKids:e}=this;if(!e||0===e.length)return;const{rootDict:t}=this,s=this.newRef,a=this.xref[s.num]=new Ps;a.setIfName("Type","StructTreeRoot"),a.setIfArray("K",e);for(const i of e){const e=this.xref[i.num],t=e.get("Type");t&&!Us(t,"StructElem")||e.set("P",s)}if(this.parentTree.size>0){const e=this.#Et(Array.from(this.parentTree.entries()),!1);this.xref[e.num].setIfName("Type","ParentTree"),a.set("ParentTree",e),a.set("ParentTreeNextKey",this.parentTree.size)}if(this.idTree.size>0){const e=this.#Et(Array.from(this.idTree.entries()),!0);this.xref[e.num].setIfName("Type","IDTree"),a.set("IDTree",e)}if(this.classMap.size>0){const e=this.newRef;this.xref[e.num]=this.classMap,a.set("ClassMap",e)}if(this.roleMap.size>0){const e=this.newRef;this.xref[e.num]=this.roleMap,a.set("RoleMap",e)}if(this.namespaces.size>0){const e=this.newRef;this.xref[e.num]=Array.from(this.namespaces.values()),a.set("Namespaces",e)}if(this.structTreeAF.length>0){const e=this.newRef;this.xref[e.num]=this.structTreeAF,a.set("AF",e)}if(this.structTreePronunciationLexicon.length>0){const e=this.newRef;this.xref[e.num]=this.structTreePronunciationLexicon,a.set("PronunciationLexicon",e)}t.set("StructTreeRoot",s)}async#qt(){const{rootDict:e}=this;e.setIfName("Type","Catalog"),e.setIfName("Version",this.version),this.#Pt(),this.#Lt(),this.#_t(),this.#Ut()}#jt(){const e=new Map;if(this.hasSingleFile){const{xref:{trailer:t}}=this.oldPages[0].documentData.document,s=t.get("Info");for(const[a,i]of s||[])"string"==typeof i&&e.set(a,ws(i))}e.delete("ModDate"),e.set("CreationDate",vs()),e.set("Creator","PDF.js"),e.set("Producer","Firefox"),this.author&&e.set("Author",this.author),this.title&&e.set("Title",this.title);for(const[t,s]of e)this.infoDict.set(t,Fa(s));return e}async#Ht(){if(!this.hasSingleFile)return[null,null,null];const{documentData:e}=this.oldPages[0],{document:{xref:{trailer:t,encrypt:s}}}=e;if(!t.has("Encrypt"))return[null,null,null];const a=t.get("Encrypt");if(!(a instanceof Ps))return[null,null,null];this.currentDocument=e;const i=[await this.#kt(a,t.xref),s,t.get("ID")];return this.currentDocument=null,i}async#$t(){const e=new _s;e.put(Es.get(0,65535),{data:null});for(let t=1,s=this.xref.length;t<s;t++)this.objStreamRefs?.has(t)?await this.#zt(Es.get(t,0),this.xref[t],e):e.put(Es.get(t,0),{data:this.xref[t]});return[e,this.newRef]}async#zt(e,t,s){const a=[""],i=[];let n=0;const r=[];for(let l=0,h=t.length;l<h;l++){const o=t[l];s.put(o,{data:null,objStreamRef:e,index:l}),i.push(`${o.num} ${n}`);const c=this.xref[o.num];await yA(c,r,null);const h=r.join("");r.length=0,a.push(h),n+=h.length+1}a[0]=i.join("\n");const o=new ri(a.join("\n")),c=o.dict=new Ps;c.setIfName("Type","ObjStm"),c.set("N",t.length),c.set("First",a[0].length+1),s.put(e,{data:o})}async writePDF(){await this.#qt();const e=this.#jt(),[t,s,a]=await this.#Ht(),[i,n]=await this.#$t(),r=[...`%PDF-${this.version}\n%`.split("").map(e=>e.charCodeAt(0)),250,222,250,206];return SA({originalData:new Uint8Array(r),changes:i,xrefInfo:{startXRef:null,rootRef:this.rootRef,infoRef:this.infoRef,encryptRef:t,newRef:n,fileIds:a||[null,null],infoMap:e},useXrefStream:this.useObjectStreams,xref:{encrypt:s,encryptRef:t}})}}class TA{constructor(e){this._msgHandler=e,this._contentLength=null,this._fullRequestReader=null,this._rangeRequestReaders=[]}getFullReader(){return es(!this._fullRequestReader,"PDFWorkerStream.getFullReader can only be called once."),this._fullRequestReader=new RA(this._msgHandler),this._fullRequestReader}getRangeReader(e,t){const s=new NA(e,t,this._msgHandler);return this._rangeRequestReaders.push(s),s}cancelAllRequests(e){this._fullRequestReader?.cancel(e);for(const t of this._rangeRequestReaders.slice(0))t.cancel(e)}}class RA{constructor(e){this._msgHandler=e,this.onProgress=null,this._contentLength=null,this._isRangeSupported=!1,this._isStreamingSupported=!1;const t=this._msgHandler.sendWithStream("GetReader");this._reader=t.getReader(),this._headersReady=this._msgHandler.sendWithPromise("ReaderHeadersReady").then(e=>{this._isStreamingSupported=e.isStreamingSupported,this._isRangeSupported=e.isRangeSupported,this._contentLength=e.contentLength})}get headersReady(){return this._headersReady}get contentLength(){return this._contentLength}get isStreamingSupported(){return this._isStreamingSupported}get isRangeSupported(){return this._isRangeSupported}async read(){const{value:e,done:t}=await this._reader.read();return t?{value:void 0,done:!0}:{value:e.buffer,done:!1}}cancel(e){this._reader.cancel(e)}}class NA{constructor(e,t,s){this._msgHandler=s,this.onProgress=null;const a=this._msgHandler.sendWithStream("GetRangeReader",{begin:e,end:t});this._reader=a.getReader()}get isStreamingSupported(){return!1}async read(){const{value:e,done:t}=await this._reader.read();return t?{value:void 0,done:!0}:{value:e.buffer,done:!1}}cancel(e){this._reader.cancel(e)}}class DA{constructor(e){this.name=e,this.terminated=!1,this._capability=Promise.withResolvers()}get finished(){return this._capability.promise}finish(){this._capability.resolve()}terminate(){this.terminated=!0}ensureNotTerminated(){if(this.terminated)throw new Error("Worker task was terminated")}}class OA{static{"undefined"==typeof window&&!e&&"undefined"!=typeof self&&"function"==typeof self.postMessage&&"onmessage"in self&&this.initializeFromPort(self)}static setup(e,t){let s=!1;e.on("test",t=>{s||(s=!0,e.send("test",t instanceof Uint8Array))}),e.on("configure",e=>{!function(e){Number.isInteger(e)&&(Kt=e)}(e.verbosity)}),e.on("GetDocRequest",e=>this.createDocumentHandler(e,t))}static createDocumentHandler(e,t){let s,a=!1,i=null;const n=new Set,r=Yt(),{docId:o,apiVersion:c}=e,l="5.4.530";if(c!==l)throw new Error(`The API version "${c}" does not match the Worker version "${l}".`);const h=(e,t)=>`The \`${e}.prototype\` contains unexpected enumerable property "${t}", thus breaking e.g. \`for...in\` iteration of ${e}s.`;for(const w in{})throw new Error(h("Object",w));for(const w in[])throw new Error(h("Array",w));const u=o+"_worker";let d=new mA(u,o,t);function f(){if(a)throw new Error("Worker was terminated")}function g(e){n.add(e)}function p(e){e.finish(),n.delete(e)}async function m(e){await s.ensureDoc("checkHeader"),await s.ensureDoc("parseStartXRef"),await s.ensureDoc("parse",[e]),await s.ensureDoc("checkFirstPage",[e]),await s.ensureDoc("checkLastPage",[e]);const t=await s.ensureDoc("isPureXfa");if(t){const e=new DA("loadXfaResources");g(e),await s.ensureDoc("loadXfaResources",[d,e]),p(e)}const[a,i]=await Promise.all([s.ensureDoc("numPages"),s.ensureDoc("fingerprints")]);return{numPages:a,fingerprints:i,htmlForXfa:t?await s.ensureDoc("htmlForXfa"):null}}function b(e){function t(e){f(),d.send("GetDoc",{pdfInfo:e})}function n(e){if(f(),e instanceof is){const t=new DA(`PasswordException: response ${e.code}`);g(t),d.sendWithPromise("PasswordRequest",e).then(function({password:e}){p(t),s.updatePassword(e),r()}).catch(function(){p(t),d.send("DocException",e)})}else d.send("DocException",pA(e))}function r(){f(),m(!1).then(t,function(e){f(),e instanceof Qs?s.requestLoadedStream().then(function(){f(),m(!0).then(t,n)}):n(e)})}f(),async function({data:e,password:t,disableAutoFetch:s,rangeChunkSize:a,length:n,docBaseUrl:r,enableXfa:c,evaluatorOptions:l}){const h={source:null,disableAutoFetch:s,docBaseUrl:r,docId:o,enableXfa:c,evaluatorOptions:l,handler:d,length:n,password:t,rangeChunkSize:a};if(e)return h.source=e,new sA(h);const u=new TA(d),g=u.getFullReader(),p=Promise.withResolvers();let m,b=[],w=0;return g.headersReady.then(function(){if(g.isRangeSupported){h.source=u,h.length=g.contentLength,h.disableAutoFetch||=g.isStreamingSupported,m=new aA(h);for(const e of b)m.sendProgressiveData(e);b=[],p.resolve(m),i=null}}).catch(function(e){p.reject(e),i=null}),new Promise(function(e,t){const s=function({value:e,done:a}){try{if(f(),a){if(!m){const e=ea(b);b=[],n&&e.length!==n&&Zt("reported HTTP length is different from actual"),h.source=e,m=new sA(h),p.resolve(m)}return void(i=null)}w+=e.byteLength,g.isStreamingSupported||d.send("DocProgress",{loaded:w,total:Math.max(w,g.contentLength||0)}),m?m.sendProgressiveData(e):b.push(e),g.read().then(s,t)}catch(e){t(e)}};g.read().then(s,t)}).catch(function(e){p.reject(e),i=null}),i=e=>{u.cancelAllRequests(e)},p.promise}(e).then(function(e){if(a)throw e.terminate(new ls("Worker was terminated.")),new Error("Worker was terminated");s=e,s.requestLoadedStream(!0).then(e=>{d.send("DataLoaded",{length:e.bytes.byteLength})})}).then(r,n)}return d.on("GetPage",function(e){return s.getPage(e.pageIndex).then(function(e){return Promise.all([s.ensure(e,"rotate"),s.ensure(e,"ref"),s.ensure(e,"userUnit"),s.ensure(e,"view")]).then(function([e,t,s,a]){return{rotate:e,ref:t,refStr:t?.toString()??null,userUnit:s,view:a}})})}),d.on("GetPageIndex",function(e){const t=Es.get(e.num,e.gen);return s.ensureCatalog("getPageIndex",[t])}),d.on("GetDestinations",function(e){return s.ensureCatalog("destinations")}),d.on("GetDestination",function(e){return s.ensureCatalog("getDestination",[e.id])}),d.on("GetPageLabels",function(e){return s.ensureCatalog("pageLabels")}),d.on("GetPageLayout",function(e){return s.ensureCatalog("pageLayout")}),d.on("GetPageMode",function(e){return s.ensureCatalog("pageMode")}),d.on("GetViewerPreferences",function(e){return s.ensureCatalog("viewerPreferences")}),d.on("GetOpenAction",function(e){return s.ensureCatalog("openAction")}),d.on("GetAttachments",function(e){return s.ensureCatalog("attachments")}),d.on("GetDocJSActions",function(e){return s.ensureCatalog("jsActions")}),d.on("GetPageJSActions",function({pageIndex:e}){return s.getPage(e).then(e=>s.ensure(e,"jsActions"))}),d.on("GetAnnotationsByType",async function({types:e,pageIndexesToSkip:t}){const[a,i]=await Promise.all([s.ensureDoc("numPages"),s.ensureDoc("annotationGlobals")]);if(!i)return null;const n=[],r=[];let o=null;try{for(let c=0,l=a;c<l;c++)t?.has(c)||(o||(o=new DA("GetAnnotationsByType"),g(o)),n.push(s.getPage(c).then(async t=>t&&t.collectAnnotationsByType(d,o,e,r,i)||[])));return await Promise.all(n),(await Promise.all(r)).filter(e=>!!e)}finally{o&&p(o)}}),d.on("GetOutline",function(e){return s.ensureCatalog("documentOutline")}),d.on("GetOptionalContentConfig",function(e){return s.ensureCatalog("optionalContentConfig")}),d.on("GetPermissions",function(e){return s.ensureCatalog("permissions")}),d.on("GetMetadata",function(e){return Promise.all([s.ensureDoc("documentInfo"),s.ensureCatalog("metadata"),s.ensureCatalog("hasStructTree")])}),d.on("GetMarkInfo",function(e){return s.ensureCatalog("markInfo")}),d.on("GetData",function(e){return s.requestLoadedStream().then(e=>e.bytes)}),d.on("GetAnnotations",function({pageIndex:e,intent:t}){return s.getPage(e).then(function(s){const a=new DA(`GetAnnotations: page ${e}`);return g(a),s.getAnnotationsData(d,a,t).then(e=>(p(a),e),e=>{throw p(a),e})})}),d.on("GetFieldObjects",function(e){return s.ensureDoc("fieldObjects").then(e=>e?.allFields||null)}),d.on("HasJSActions",function(e){return s.ensureDoc("hasJSActions")}),d.on("GetCalculationOrderIds",function(e){return s.ensureDoc("calculationOrderIds")}),d.on("ExtractPages",async function({pageInfos:e}){if(!e)return Zt("extractPages: nothing to extract."),null;Array.isArray(e)||(e=[e]);let t=0;for(const a of e)if(null===a.document)a.document=s.pdfDocument;else if(ArrayBuffer.isView(a.document)){const e=new sA({source:a.document,docId:`${o}_extractPages_${t++}`,handler:d,password:a.password??null,evaluatorOptions:Object.assign({},s.evaluatorOptions)});let i=!1,n=!0;for(;;)try{await e.requestLoadedStream(),await e.ensureDoc("checkHeader"),await e.ensureDoc("parseStartXRef"),await e.ensureDoc("parse",[i]);break}catch(t){if(t instanceof Qs){if(!1===i){i=!0;continue}n=!1,Zt("extractPages: XRefParseException.")}else if(t instanceof is){const s=new DA(`PasswordException: response ${t.code}`);g(s);try{const{password:s}=await d.sendWithPromise("PasswordRequest",t);e.updatePassword(s)}catch{n=!1,Zt("extractPages: invalid password.")}finally{p(s)}}else n=!1,Zt("extractPages: invalid document.");if(!n)break}n||(a.document=null),await e.ensureDoc("isPureXfa")?(a.document=null,Zt("extractPages does not support pure XFA documents.")):a.document=e.pdfDocument}else Zt("extractPages: invalid document.");try{const t=new MA;return await t.extractPages(e)}catch(e){return console.error(e),null}}),d.on("SaveDocument",async function({isPureXfa:e,numPages:t,annotationStorage:a,filename:i}){const n=[s.requestLoadedStream(),s.ensureCatalog("acroForm"),s.ensureCatalog("acroFormRef"),s.ensureDoc("startXRef"),s.ensureDoc("xref"),s.ensureCatalog("structTreeRoot")],r=new _s,o=[],c=e?null:Ba(a),[l,h,u,f,m,b]=await Promise.all(n),w=m.trailer.getRaw("Root")||null;let y;if(c){b?await b.canUpdateStructTree({pdfManager:s,newAnnotationsByPage:c})&&(y=b):await Yu.canCreateStructureTree({catalogRef:w,pdfManager:s,newAnnotationsByPage:c})&&(y=null);const e=Dk.generateImages(a.values(),m,s.evaluatorOptions.isOffscreenCanvasSupported),t=void 0===y?o:[];for(const[a,i]of c)t.push(s.getPage(a).then(t=>{const s=new DA(`Save (editor): page ${a}`);return g(s),t.saveNewAnnotations(d,s,i,e,r).finally(function(){p(s)})}));null===y?o.push(Promise.all(t).then(async()=>{await Yu.createStructureTree({newAnnotationsByPage:c,xref:m,catalogRef:w,pdfManager:s,changes:r})})):y&&o.push(Promise.all(t).then(async()=>{await y.updateStructureTree({newAnnotationsByPage:c,pdfManager:s,changes:r})}))}if(e)o.push(s.ensureDoc("serializeXfaData",[a]));else for(let B=0;B<t;B++)o.push(s.getPage(B).then(function(e){const t=new DA(`Save: page ${B}`);return g(t),e.save(d,t,a,r).finally(function(){p(t)})}));const x=await Promise.all(o);let k=null;if(e){if(k=x[0],!k)return l.bytes}else if(0===r.size)return l.bytes;const v=u&&h instanceof Ps&&r.values().some(e=>e.needAppearances),A=h instanceof Ps&&h.get("XFA")||null;let C=null,S=!1;if(Array.isArray(A)){for(let e=0,t=A.length;e<t;e+=2)"datasets"===A[e]&&(C=A[e+1],S=!0);null===C&&(C=m.getNewTemporaryRef())}else A&&Zt("Unsupported XFA type.");let I=Object.create(null);if(m.trailer){const e=new Map,t=m.trailer.get("Info")||null;if(t instanceof Ps)for(const[s,a]of t)"string"==typeof a&&e.set(s,ws(a));I={rootRef:w,encryptRef:m.trailer.getRaw("Encrypt")||null,newRef:m.getNewTemporaryRef(),infoRef:m.trailer.getRaw("Info")||null,infoMap:e,fileIds:m.trailer.get("ID")||null,startXRef:f,filename:i}}return SA({originalData:l.bytes,xrefInfo:I,changes:r,xref:m,hasXfa:!!A,xfaDatasetsRef:C,hasXfaDatasetsEntry:S,needAppearances:v,acroFormRef:u,acroForm:h,xfaData:k,useXrefStream:js(m.topDict,"XRef")}).finally(()=>{m.resetNewTemporaryRef()})}),d.on("GetOperatorList",function(e,t){const a=e.pageIndex;s.getPage(a).then(function(s){const i=new DA(`GetOperatorList: page ${a}`);g(i);const n=r>=ie?Date.now():0;s.getOperatorList({handler:d,sink:t,task:i,intent:e.intent,cacheKey:e.cacheKey,annotationStorage:e.annotationStorage,modifiedIds:e.modifiedIds}).then(function(e){p(i),n&&Jt(`page=${a+1} - getOperatorList: time=${Date.now()-n}ms, len=${e.length}`),t.close()},function(e){p(i),i.terminated||t.error(e)})})}),d.on("GetTextContent",function(e,t){const{pageIndex:a,includeMarkedContent:i,disableNormalization:n}=e;s.getPage(a).then(function(e){const s=new DA("GetTextContent: page "+a);g(s);const o=r>=ie?Date.now():0;e.extractTextContent({handler:d,task:s,sink:t,includeMarkedContent:i,disableNormalization:n}).then(function(){p(s),o&&Jt(`page=${a+1} - getTextContent: time=`+(Date.now()-o)+"ms"),t.close()},function(e){p(s),s.terminated||t.error(e)})})}),d.on("GetStructTree",function(e){return s.getPage(e.pageIndex).then(e=>s.ensure(e,"getStructTree"))}),d.on("FontFallback",function(e){return s.fontFallback(e.id,d)}),d.on("Cleanup",function(e){return s.cleanup(!0)}),d.on("Terminate",function(e){a=!0;const t=[];if(s){s.terminate(new ls("Worker was terminated."));const e=s.cleanup();t.push(e),s=null}else Tu();i?.(new ls("Worker was terminated."));for(const s of n)t.push(s.finished),s.terminate();return Promise.all(t).then(function(){d.destroy(),d=null})}),d.on("Ready",function(t){b(e),e=null}),u}static initializeFromPort(e){const t=new mA("worker","main",e);this.setup(t,e),t.send("ready",null)}}globalThis.pdfjsWorker={WorkerMessageHandler:OA};export{OA as WorkerMessageHandler};