VaKeR CYBER ARMY
Logo of a company Server : Apache/2.4.41 (Ubuntu)
System : Linux absol.cf 5.4.0-198-generic #218-Ubuntu SMP Fri Sep 27 20:18:53 UTC 2024 x86_64
User : www-data ( 33)
PHP Version : 7.4.33
Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Directory :  /proc/self/root/opt/mattermost/client/

Upload File :
current_dir [ Writeable ] document_root [ Writeable ]

 

Current File : //proc/self/root/opt/mattermost/client/1959.88e09e6c98529a040c03.js
/*! For license information please see 1959.88e09e6c98529a040c03.js.LICENSE.txt */
"use strict";(self.webpackChunkmattermost_webapp=self.webpackChunkmattermost_webapp||[]).push([[1959],{23100:(t,e,A)=>{var i=A(88538),s={d:(t,e)=>{for(var A in e)s.o(e,A)&&!s.o(t,A)&&Object.defineProperty(t,A,{enumerable:!0,get:e[A]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)},a=globalThis.pdfjsWorker={};s.d(a,{WorkerMessageHandler:()=>bE});const n=!("object"!=typeof i||i+""!="[object process]"||i.versions.nw||i.versions.electron&&i.type&&"browser"!==i.type),r=[1,0,0,1,0,0],o=[.001,0,0,.001,0,0],g=1.35,c=.25925925925925924,h="pdfjs_internal_editor_",l={PRINT:4,MODIFY_CONTENTS:8,COPY:16,MODIFY_ANNOTATIONS:32,FILL_INTERACTIVE_FORMS:256,COPY_FOR_ACCESSIBILITY:512,ASSEMBLE:1024,PRINT_HIGH_QUALITY:2048},I="Group",C=8192,B=65536,d={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"},u={WC:"WillClose",WS:"WillSave",DS:"DidSave",WP:"WillPrint",DP:"DidPrint"},Q={O:"PageOpen",C:"PageClose"},E=10,f=11,p=12,m=37,y=44,w=58,b=59,D=70,k=71,S=83,F=85;let R=1;function x(t){R>=5&&console.log(`Info: ${t}`)}function N(t){R>=1&&console.log(`Warning: ${t}`)}function v(t){throw new Error(t)}function G(t,e){t||v(e)}function M(t,e=null,A=null){if(!t)return null;try{if(A&&"string"==typeof t){if(A.addDefaultProtocol&&t.startsWith("www.")){const e=t.match(/\./g);e?.length>=2&&(t=`http://${t}`)}if(A.tryConvertEncoding)try{t=tt(t)}catch{}}const i=e?new URL(t,e):new URL(t);if(function(t){switch(t?.protocol){case"http:":case"https:":case"ftp:":case"mailto:":case"tel:":return!0;default:return!1}}(i))return i}catch{}return null}function L(t,e,A,i=!1){return Object.defineProperty(t,e,{value:A,enumerable:!i,configurable:!0,writable:!1}),A}const U=function(){function t(e,A){this.constructor===t&&v("Cannot initialize BaseException."),this.message=e,this.name=A}return t.prototype=new Error,t.constructor=t,t}();class H extends U{constructor(t,e){super(t,"PasswordException"),this.code=e}}class J extends U{constructor(t,e){super(t,"UnknownErrorException"),this.details=e}}class Y extends U{constructor(t){super(t,"InvalidPDFException")}}class T extends U{constructor(t){super(t,"MissingPDFException")}}class K extends U{constructor(t,e){super(t,"UnexpectedResponseException"),this.status=e}}class q extends U{constructor(t){super(t,"FormatError")}}class P extends U{constructor(t){super(t,"AbortException")}}function _(t){"object"==typeof t&&void 0!==t?.length||v("Invalid argument for bytesToString");const e=t.length,A=8192;if(e<A)return String.fromCharCode.apply(null,t);const i=[];for(let s=0;s<e;s+=A){const a=Math.min(s+A,e),n=t.subarray(s,a);i.push(String.fromCharCode.apply(null,n))}return i.join("")}function O(t){"string"!=typeof t&&v("Invalid argument for stringToBytes");const e=t.length,A=new Uint8Array(e);for(let i=0;i<e;++i)A[i]=255&t.charCodeAt(i);return A}function W(t){return String.fromCharCode(t>>24&255,t>>16&255,t>>8&255,255&t)}function Z(t){return Object.keys(t).length}class j{static get isLittleEndian(){return L(this,"isLittleEndian",function(){const t=new Uint8Array(4);return t[0]=1,1===new Uint32Array(t.buffer,0,1)[0]}())}static get isEvalSupported(){return L(this,"isEvalSupported",function(){try{return new Function(""),!0}catch{return!1}}())}static get isOffscreenCanvasSupported(){return L(this,"isOffscreenCanvasSupported","undefined"!=typeof OffscreenCanvas)}static get platform(){return"undefined"!=typeof navigator&&"string"==typeof navigator?.platform?L(this,"platform",{isMac:navigator.platform.includes("Mac")}):L(this,"platform",{isMac:!1})}static get isCSSRoundSupported(){return L(this,"isCSSRoundSupported",globalThis.CSS?.supports?.("width: round(1.5px, 1px)"))}}const V=Array.from(Array(256).keys(),(t=>t.toString(16).padStart(2,"0")));class X{static makeHexColor(t,e,A){return`#${V[t]}${V[e]}${V[A]}`}static scaleMinMax(t,e){let A;t[0]?(t[0]<0&&(A=e[0],e[0]=e[2],e[2]=A),e[0]*=t[0],e[2]*=t[0],t[3]<0&&(A=e[1],e[1]=e[3],e[3]=A),e[1]*=t[3],e[3]*=t[3]):(A=e[0],e[0]=e[1],e[1]=A,A=e[2],e[2]=e[3],e[3]=A,t[1]<0&&(A=e[1],e[1]=e[3],e[3]=A),e[1]*=t[1],e[3]*=t[1],t[2]<0&&(A=e[0],e[0]=e[2],e[2]=A),e[0]*=t[2],e[2]*=t[2]),e[0]+=t[4],e[1]+=t[5],e[2]+=t[4],e[3]+=t[5]}static transform(t,e){return[t[0]*e[0]+t[2]*e[1],t[1]*e[0]+t[3]*e[1],t[0]*e[2]+t[2]*e[3],t[1]*e[2]+t[3]*e[3],t[0]*e[4]+t[2]*e[5]+t[4],t[1]*e[4]+t[3]*e[5]+t[5]]}static applyTransform(t,e){return[t[0]*e[0]+t[1]*e[2]+e[4],t[0]*e[1]+t[1]*e[3]+e[5]]}static applyInverseTransform(t,e){const A=e[0]*e[3]-e[1]*e[2];return[(t[0]*e[3]-t[1]*e[2]+e[2]*e[5]-e[4]*e[3])/A,(-t[0]*e[1]+t[1]*e[0]+e[4]*e[1]-e[5]*e[0])/A]}static getAxialAlignedBoundingBox(t,e){const A=this.applyTransform(t,e),i=this.applyTransform(t.slice(2,4),e),s=this.applyTransform([t[0],t[3]],e),a=this.applyTransform([t[2],t[1]],e);return[Math.min(A[0],i[0],s[0],a[0]),Math.min(A[1],i[1],s[1],a[1]),Math.max(A[0],i[0],s[0],a[0]),Math.max(A[1],i[1],s[1],a[1])]}static inverseTransform(t){const e=t[0]*t[3]-t[1]*t[2];return[t[3]/e,-t[1]/e,-t[2]/e,t[0]/e,(t[2]*t[5]-t[4]*t[3])/e,(t[4]*t[1]-t[5]*t[0])/e]}static singularValueDecompose2dScale(t){const e=[t[0],t[2],t[1],t[3]],A=t[0]*e[0]+t[1]*e[2],i=t[0]*e[1]+t[1]*e[3],s=t[2]*e[0]+t[3]*e[2],a=t[2]*e[1]+t[3]*e[3],n=(A+a)/2,r=Math.sqrt((A+a)**2-4*(A*a-s*i))/2,o=n+r||1,g=n-r||1;return[Math.sqrt(o),Math.sqrt(g)]}static normalizeRect(t){const e=t.slice(0);return t[0]>t[2]&&(e[0]=t[2],e[2]=t[0]),t[1]>t[3]&&(e[1]=t[3],e[3]=t[1]),e}static intersect(t,e){const A=Math.max(Math.min(t[0],t[2]),Math.min(e[0],e[2])),i=Math.min(Math.max(t[0],t[2]),Math.max(e[0],e[2]));if(A>i)return null;const s=Math.max(Math.min(t[1],t[3]),Math.min(e[1],e[3])),a=Math.min(Math.max(t[1],t[3]),Math.max(e[1],e[3]));return s>a?null:[A,s,i,a]}static#t(t,e,A,i,s,a,n,r,o,g){if(o<=0||o>=1)return;const c=1-o,h=o*o,l=h*o,I=c*(c*(c*t+3*o*e)+3*h*A)+l*i,C=c*(c*(c*s+3*o*a)+3*h*n)+l*r;g[0]=Math.min(g[0],I),g[1]=Math.min(g[1],C),g[2]=Math.max(g[2],I),g[3]=Math.max(g[3],C)}static#e(t,e,A,i,s,a,n,r,o,g,c,h){if(Math.abs(o)<1e-12)return void(Math.abs(g)>=1e-12&&this.#t(t,e,A,i,s,a,n,r,-c/g,h));const l=g**2-4*c*o;if(l<0)return;const I=Math.sqrt(l),C=2*o;this.#t(t,e,A,i,s,a,n,r,(-g+I)/C,h),this.#t(t,e,A,i,s,a,n,r,(-g-I)/C,h)}static bezierBoundingBox(t,e,A,i,s,a,n,r,o){return o?(o[0]=Math.min(o[0],t,n),o[1]=Math.min(o[1],e,r),o[2]=Math.max(o[2],t,n),o[3]=Math.max(o[3],e,r)):o=[Math.min(t,n),Math.min(e,r),Math.max(t,n),Math.max(e,r)],this.#e(t,A,s,n,e,i,a,r,3*(3*(A-s)-t+n),6*(t-2*A+s),3*(A-t),o),this.#e(t,A,s,n,e,i,a,r,3*(3*(i-a)-e+r),6*(e-2*i+a),3*(i-e),o),o}}const z=[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 $(t){if(t[0]>="ï"){let e;if("þ"===t[0]&&"ÿ"===t[1]?(e="utf-16be",t.length%2==1&&(t=t.slice(0,-1))):"ÿ"===t[0]&&"þ"===t[1]?(e="utf-16le",t.length%2==1&&(t=t.slice(0,-1))):"ï"===t[0]&&"»"===t[1]&&"¿"===t[2]&&(e="utf-8"),e)try{const A=new TextDecoder(e,{fatal:!0}),i=O(t),s=A.decode(i);return s.includes("")?s.replaceAll(/\x1b[^\x1b]*(?:\x1b|$)/g,""):s}catch(t){N(`stringToPDFString: "${t}".`)}}const e=[];for(let A=0,i=t.length;A<i;A++){const s=t.charCodeAt(A);if(27===s){for(;++A<i&&27!==t.charCodeAt(A););continue}const a=z[s];e.push(a?String.fromCharCode(a):t.charAt(A))}return e.join("")}function tt(t){return decodeURIComponent(escape(t))}function et(t){return unescape(encodeURIComponent(t))}function At(t,e){if(t.length!==e.length)return!1;for(let A=0,i=t.length;A<i;A++)if(t[A]!==e[A])return!1;return!0}function it(t=new Date){return[t.getUTCFullYear().toString(),(t.getUTCMonth()+1).toString().padStart(2,"0"),t.getUTCDate().toString().padStart(2,"0"),t.getUTCHours().toString().padStart(2,"0"),t.getUTCMinutes().toString().padStart(2,"0"),t.getUTCSeconds().toString().padStart(2,"0")].join("")}let st=null,at=null;const nt=Symbol("CIRCULAR_REF"),rt=Symbol("EOF");let ot=Object.create(null),gt=Object.create(null),ct=Object.create(null);class ht{constructor(t){this.name=t}static get(t){return gt[t]||=new ht(t)}}class lt{constructor(t){this.cmd=t}static get(t){return ot[t]||=new lt(t)}}const It=function(){return It};class Ct{constructor(t=null){this._map=Object.create(null),this.xref=t,this.objId=null,this.suppressEncryption=!1,this.__nonSerializable__=It}assignXref(t){this.xref=t}get size(){return Object.keys(this._map).length}get(t,e,A){let i=this._map[t];return void 0===i&&void 0!==e&&(i=this._map[e],void 0===i&&void 0!==A&&(i=this._map[A])),i instanceof Bt&&this.xref?this.xref.fetch(i,this.suppressEncryption):i}async getAsync(t,e,A){let i=this._map[t];return void 0===i&&void 0!==e&&(i=this._map[e],void 0===i&&void 0!==A&&(i=this._map[A])),i instanceof Bt&&this.xref?this.xref.fetchAsync(i,this.suppressEncryption):i}getArray(t,e,A){let i=this._map[t];if(void 0===i&&void 0!==e&&(i=this._map[e],void 0===i&&void 0!==A&&(i=this._map[A])),i instanceof Bt&&this.xref&&(i=this.xref.fetch(i,this.suppressEncryption)),Array.isArray(i)){i=i.slice();for(let t=0,e=i.length;t<e;t++)i[t]instanceof Bt&&this.xref&&(i[t]=this.xref.fetch(i[t],this.suppressEncryption))}return i}getRaw(t){return this._map[t]}getKeys(){return Object.keys(this._map)}getRawValues(){return Object.values(this._map)}set(t,e){this._map[t]=e}has(t){return void 0!==this._map[t]}forEach(t){for(const e in this._map)t(e,this.get(e))}static get empty(){const t=new Ct(null);return t.set=(t,e)=>{v("Should not call `set` on the empty dictionary.")},L(this,"empty",t)}static merge({xref:t,dictArray:e,mergeSubDicts:A=!1}){const i=new Ct(t),s=new Map;for(const t of e)if(t instanceof Ct)for(const[e,i]of Object.entries(t._map)){let t=s.get(e);if(void 0===t)t=[],s.set(e,t);else if(!(A&&i instanceof Ct))continue;t.push(i)}for(const[e,A]of s){if(1===A.length||!(A[0]instanceof Ct)){i._map[e]=A[0];continue}const s=new Ct(t);for(const t of A)for(const[e,A]of Object.entries(t._map))void 0===s._map[e]&&(s._map[e]=A);s.size>0&&(i._map[e]=s)}return s.clear(),i.size>0?i:Ct.empty}clone(){const t=new Ct(this.xref);for(const e of this.getKeys())t.set(e,this.getRaw(e));return t}}class Bt{constructor(t,e){this.num=t,this.gen=e}toString(){return 0===this.gen?`${this.num}R`:`${this.num}R${this.gen}`}static fromString(t){const e=ct[t];if(e)return e;const A=/^(\d+)R(\d*)$/.exec(t);return A&&"0"!==A[1]?ct[t]=new Bt(parseInt(A[1]),A[2]?parseInt(A[2]):0):null}static get(t,e){const A=0===e?`${t}R`:`${t}R${e}`;return ct[A]||=new Bt(t,e)}}class dt{constructor(t=null){this._set=new Set(t?._set)}has(t){return this._set.has(t.toString())}put(t){this._set.add(t.toString())}remove(t){this._set.delete(t.toString())}[Symbol.iterator](){return this._set.values()}clear(){this._set.clear()}}class ut{constructor(){this._map=new Map}get size(){return this._map.size}get(t){return this._map.get(t.toString())}has(t){return this._map.has(t.toString())}put(t,e){this._map.set(t.toString(),e)}putAlias(t,e){this._map.set(t.toString(),this.get(e))}[Symbol.iterator](){return this._map.values()}clear(){this._map.clear()}*items(){for(const[t,e]of this._map)yield[Bt.fromString(t),e]}}function Qt(t,e){return t instanceof ht&&(void 0===e||t.name===e)}function Et(t,e){return t instanceof lt&&(void 0===e||t.cmd===e)}function ft(t,e){return t instanceof Ct&&(void 0===e||Qt(t.get("Type"),e))}function pt(t,e){return t.num===e.num&&t.gen===e.gen}class mt{constructor(){this.constructor===mt&&v("Cannot initialize BaseStream.")}get length(){v("Abstract getter `length` accessed")}get isEmpty(){v("Abstract getter `isEmpty` accessed")}get isDataLoaded(){return L(this,"isDataLoaded",!0)}getByte(){v("Abstract method `getByte` called")}getBytes(t){v("Abstract method `getBytes` called")}async getImageData(t,e){return this.getBytes(t,e)}async asyncGetBytes(){v("Abstract method `asyncGetBytes` called")}get isAsync(){return!1}get canAsyncDecodeImageFromBuffer(){return!1}peekByte(){const t=this.getByte();return-1!==t&&this.pos--,t}peekBytes(t){const e=this.getBytes(t);return this.pos-=e.length,e}getUint16(){const t=this.getByte(),e=this.getByte();return-1===t||-1===e?-1:(t<<8)+e}getInt32(){return(this.getByte()<<24)+(this.getByte()<<16)+(this.getByte()<<8)+this.getByte()}getByteRange(t,e){v("Abstract method `getByteRange` called")}getString(t){return _(this.getBytes(t))}skip(t){this.pos+=t||1}reset(){v("Abstract method `reset` called")}moveStart(){v("Abstract method `moveStart` called")}makeSubStream(t,e,A=null){v("Abstract method `makeSubStream` called")}getBaseStreams(){return null}}const yt=/^[1-9]\.\d$/;function wt(t){let e;return function(){return t&&(e=Object.create(null),t(e),t=null),e}}class bt extends U{constructor(t,e){super(`Missing data [${t}, ${e})`,"MissingDataException"),this.begin=t,this.end=e}}class Dt extends U{constructor(t){super(t,"ParserEOFException")}}class kt extends U{constructor(t){super(t,"XRefEntryException")}}class St extends U{constructor(t){super(t,"XRefParseException")}}function Ft(t){const e=t.length;if(0===e)return new Uint8Array(0);if(1===e)return new Uint8Array(t[0]);let A=0;for(let i=0;i<e;i++)A+=t[i].byteLength;const i=new Uint8Array(A);let s=0;for(let A=0;A<e;A++){const e=new Uint8Array(t[A]);i.set(e,s),s+=e.byteLength}return i}function Rt({dict:t,key:e,getArray:A=!1,stopWhenFound:i=!0}){let s;const a=new dt;for(;t instanceof Ct&&(!t.objId||!a.has(t.objId));){t.objId&&a.put(t.objId);const n=A?t.getArray(e):t.get(e);if(void 0!==n){if(i)return n;(s||=[]).push(n)}t=t.get("Parent")}return s}const xt=["","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 Nt(t,e=!1){G(Number.isInteger(t)&&t>0,"The number should be a positive integer.");const A=[];let i;for(;t>=1e3;)t-=1e3,A.push("M");i=t/100|0,t%=100,A.push(xt[i]),i=t/10|0,t%=10,A.push(xt[10+i]),A.push(xt[20+t]);const s=A.join("");return e?s.toLowerCase():s}function vt(t){return t<=0?0:Math.ceil(Math.log2(t))}function Gt(t,e){return t[e]<<24>>24}function Mt(t,e){return t[e]<<8|t[e+1]}function Lt(t,e){return(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}function Ut(t){return 32===t||9===t||13===t||10===t}function Ht(t,e){return Array.isArray(t)&&(null===e||t.length===e)&&t.every((t=>"number"==typeof t))}function Jt(t,e){return Ht(t,6)?t:e}function Yt(t,e){return Ht(t,4)?t:e}function Tt(t,e){return Ht(t,4)?X.normalizeRect(t):e}function Kt(t){const e=/(.+)\[(\d+)\]$/;return t.split(".").map((t=>{const A=t.match(e);return A?{name:A[1],pos:parseInt(A[2],10)}:{name:t,pos:0}}))}function qt(t){const e=[];let A=0;for(let i=0,s=t.length;i<s;i++){const s=t.charCodeAt(i);(s<33||s>126||35===s||40===s||41===s||60===s||62===s||91===s||93===s||123===s||125===s||47===s||37===s)&&(A<i&&e.push(t.substring(A,i)),e.push(`#${s.toString(16)}`),A=i+1)}return 0===e.length?t:(A<t.length&&e.push(t.substring(A,t.length)),e.join(""))}function Pt(t){return t.replaceAll(/([()\\\n\r])/g,(t=>"\n"===t?"\\n":"\r"===t?"\\r":`\\${t}`))}function _t(t,e,A,i){if(!t)return;let s=null;if(t instanceof Bt){if(i.has(t))return;s=t,i.put(s),t=e.fetch(t)}if(Array.isArray(t))for(const s of t)_t(s,e,A,i);else if(t instanceof Ct){if(Qt(t.get("S"),"JavaScript")){const e=t.get("JS");let i;e instanceof mt?i=e.getString():"string"==typeof e&&(i=e),i&&=$(i).replaceAll("\0",""),i&&A.push(i)}_t(t.getRaw("Next"),e,A,i)}s&&i.remove(s)}function Ot(t,e,A){const i=Object.create(null),s=Rt({dict:e,key:"AA",stopWhenFound:!1});if(s)for(let e=s.length-1;e>=0;e--){const a=s[e];if(a instanceof Ct)for(const e of a.getKeys()){const s=A[e];if(!s)continue;const n=[];_t(a.getRaw(e),t,n,new dt),n.length>0&&(i[s]=n)}}if(e.has("A")){const A=[];_t(e.get("A"),t,A,new dt),A.length>0&&(i.Action=A)}return Z(i)>0?i:null}const Wt={60:"&lt;",62:"&gt;",38:"&amp;",34:"&quot;",39:"&apos;"};function*Zt(t){for(let e=0,A=t.length;e<A;e++){const A=t.codePointAt(e);A>55295&&(A<57344||A>65533)&&e++,yield A}}function jt(t){const e=[];let A=0;for(let i=0,s=t.length;i<s;i++){const s=t.codePointAt(i);if(32<=s&&s<=126){const a=Wt[s];a&&(A<i&&e.push(t.substring(A,i)),e.push(a),A=i+1)}else A<i&&e.push(t.substring(A,i)),e.push(`&#x${s.toString(16).toUpperCase()};`),s>55295&&(s<57344||s>65533)&&i++,A=i+1}return 0===e.length?t:(A<t.length&&e.push(t.substring(A,t.length)),e.join(""))}function Vt(t,e=!1){const A=/^("|').*("|')$/.exec(t);if(A&&A[1]===A[2]){if(new RegExp(`[^\\\\]${A[1]}`).test(t.slice(1,-1)))return e&&N(`FontFamily contains unescaped ${A[1]}: ${t}.`),!1}else for(const A of t.split(/[ \t]+/))if(/^(\d|(-(\d|-)))/.test(A)||!/^[\w-\\]+$/.test(A))return e&&N(`FontFamily contains invalid <custom-ident>: ${t}.`),!1;return!0}function Xt(t){const e=new Set(["100","200","300","400","500","600","700","800","900","1000","normal","bold","bolder","lighter"]),{fontFamily:A,fontWeight:i,italicAngle:s}=t;if(!Vt(A,!0))return!1;const a=i?i.toString():"";t.fontWeight=e.has(a)?a:"400";const n=parseFloat(s);return t.italicAngle=isNaN(n)||n<-90||n>90?"14":s.toString(),!0}function zt(t){const e=new RegExp("^\\s*("+["app.launchURL","window.open","xfa.host.gotoURL"].join("|").replaceAll(".","\\.")+")\\((?:'|\")([^'\"]*)(?:'|\")(?:,\\s*(\\w+)\\)|\\))","i").exec(t);if(e?.[2]){const t=e[2];let A=!1;return"true"===e[3]&&"app.launchURL"===e[1]&&(A=!0),{url:t,newWindow:A}}return null}function $t(t){if(Number.isInteger(t))return t.toString();const e=Math.round(100*t);return e%100==0?(e/100).toString():e%10==0?t.toFixed(1):t.toFixed(2)}function te(t){if(!t)return null;const e=new Map;for(const[A,i]of t){if(!A.startsWith(h))continue;let t=e.get(i.pageIndex);t||(t=[],e.set(i.pageIndex,t)),t.push(i)}return e.size>0?e:null}function ee(t){return/^[\x00-\x7F]*$/.test(t)}function Ae(t){const e=[];for(let A=0,i=t.length;A<i;A++){const i=t.charCodeAt(A);e.push((i>>8&255).toString(16).padStart(2,"0"),(255&i).toString(16).padStart(2,"0"))}return e.join("")}function ie(t,e=!1){const A=[];e&&A.push("þÿ");for(let e=0,i=t.length;e<i;e++){const i=t.charCodeAt(e);A.push(String.fromCharCode(i>>8&255),String.fromCharCode(255&i))}return A.join("")}function se(t,e,A){switch(t){case 90:return[0,1,-1,0,e,0];case 180:return[-1,0,0,-1,e,A];case 270:return[0,-1,1,0,0,A];default:throw new Error("Invalid rotation")}}function ae(t){return Math.ceil(Math.ceil(Math.log2(1+t))/8)}class ne extends mt{constructor(t,e,A,i){super(),this.bytes=t instanceof Uint8Array?t:new Uint8Array(t),this.start=e||0,this.pos=this.start,this.end=e+A||this.bytes.length,this.dict=i}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(t){const e=this.bytes,A=this.pos,i=this.end;if(!t)return e.subarray(A,i);let s=A+t;return s>i&&(s=i),this.pos=s,e.subarray(A,s)}getByteRange(t,e){return t<0&&(t=0),e>this.end&&(e=this.end),this.bytes.subarray(t,e)}reset(){this.pos=this.start}moveStart(){this.start=this.pos}makeSubStream(t,e,A=null){return new ne(this.bytes.buffer,t,e,A)}}class re extends ne{constructor(t){super(O(t))}}class oe extends ne{constructor(){super(new Uint8Array(0))}}class ge extends ne{constructor(t,e,A){super(new Uint8Array(t),0,t,null),this.chunkSize=e,this._loadedChunks=new Set,this.numChunks=Math.ceil(t/e),this.manager=A,this.progressiveDataLength=0,this.lastSuccessfulEnsureByteChunk=-1}getMissingChunks(){const t=[];for(let e=0,A=this.numChunks;e<A;++e)this._loadedChunks.has(e)||t.push(e);return t}get numChunksLoaded(){return this._loadedChunks.size}get isDataLoaded(){return this.numChunksLoaded===this.numChunks}onReceiveData(t,e){const A=this.chunkSize;if(t%A!=0)throw new Error(`Bad begin offset: ${t}`);const i=t+e.byteLength;if(i%A!=0&&i!==this.bytes.length)throw new Error(`Bad end offset: ${i}`);this.bytes.set(new Uint8Array(e),t);const s=Math.floor(t/A),a=Math.floor((i-1)/A)+1;for(let t=s;t<a;++t)this._loadedChunks.add(t)}onReceiveProgressiveData(t){let e=this.progressiveDataLength;const A=Math.floor(e/this.chunkSize);this.bytes.set(new Uint8Array(t),e),e+=t.byteLength,this.progressiveDataLength=e;const i=e>=this.end?this.numChunks:Math.floor(e/this.chunkSize);for(let t=A;t<i;++t)this._loadedChunks.add(t)}ensureByte(t){if(t<this.progressiveDataLength)return;const e=Math.floor(t/this.chunkSize);if(!(e>this.numChunks)&&e!==this.lastSuccessfulEnsureByteChunk){if(!this._loadedChunks.has(e))throw new bt(t,t+1);this.lastSuccessfulEnsureByteChunk=e}}ensureRange(t,e){if(t>=e)return;if(e<=this.progressiveDataLength)return;const A=Math.floor(t/this.chunkSize);if(A>this.numChunks)return;const i=Math.min(Math.floor((e-1)/this.chunkSize)+1,this.numChunks);for(let s=A;s<i;++s)if(!this._loadedChunks.has(s))throw new bt(t,e)}nextEmptyChunk(t){const e=this.numChunks;for(let A=0;A<e;++A){const i=(t+A)%e;if(!this._loadedChunks.has(i))return i}return null}hasChunk(t){return this._loadedChunks.has(t)}getByte(){const t=this.pos;return t>=this.end?-1:(t>=this.progressiveDataLength&&this.ensureByte(t),this.bytes[this.pos++])}getBytes(t){const e=this.bytes,A=this.pos,i=this.end;if(!t)return i>this.progressiveDataLength&&this.ensureRange(A,i),e.subarray(A,i);let s=A+t;return s>i&&(s=i),s>this.progressiveDataLength&&this.ensureRange(A,s),this.pos=s,e.subarray(A,s)}getByteRange(t,e){return t<0&&(t=0),e>this.end&&(e=this.end),e>this.progressiveDataLength&&this.ensureRange(t,e),this.bytes.subarray(t,e)}makeSubStream(t,e,A=null){function i(){}e?t+e>this.progressiveDataLength&&this.ensureRange(t,t+e):t>=this.progressiveDataLength&&this.ensureByte(t),i.prototype=Object.create(this),i.prototype.getMissingChunks=function(){const t=this.chunkSize,e=Math.floor(this.start/t),A=Math.floor((this.end-1)/t)+1,i=[];for(let t=e;t<A;++t)this._loadedChunks.has(t)||i.push(t);return i},Object.defineProperty(i.prototype,"isDataLoaded",{get(){return this.numChunksLoaded===this.numChunks||0===this.getMissingChunks().length},configurable:!0});const s=new i;return s.pos=s.start=t,s.end=t+e||this.end,s.dict=A,s}getBaseStreams(){return[this]}}class ce{constructor(t,e){this.length=e.length,this.chunkSize=e.rangeChunkSize,this.stream=new ge(this.length,this.chunkSize,this),this.pdfNetworkStream=t,this.disableAutoFetch=e.disableAutoFetch,this.msgHandler=e.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(t,e){const A=this.pdfNetworkStream.getRangeReader(t,e);A.isStreamingSupported||(A.onProgress=this.onProgress.bind(this));let i=[],s=0;return new Promise(((t,e)=>{const a=({value:n,done:r})=>{try{if(r){const e=Ft(i);return i=null,void t(e)}s+=n.byteLength,A.isStreamingSupported&&this.onProgress({loaded:s}),i.push(n),A.read().then(a,e)}catch(t){e(t)}};A.read().then(a,e)})).then((e=>{this.aborted||this.onReceiveData({chunk:e,begin:t})}))}requestAllChunks(t=!1){if(!t){const t=this.stream.getMissingChunks();this._requestChunks(t)}return this._loadedStreamCapability.promise}_requestChunks(t){const e=this.currRequestId++,A=new Set;this._chunksNeededByRequest.set(e,A);for(const e of t)this.stream.hasChunk(e)||A.add(e);if(0===A.size)return Promise.resolve();const i=Promise.withResolvers();this._promisesByRequest.set(e,i);const s=[];for(const t of A){let A=this._requestsByChunk.get(t);A||(A=[],this._requestsByChunk.set(t,A),s.push(t)),A.push(e)}if(s.length>0){const t=this.groupChunks(s);for(const e of t){const t=e.beginChunk*this.chunkSize,A=Math.min(e.endChunk*this.chunkSize,this.length);this.sendRequest(t,A).catch(i.reject)}}return i.promise.catch((t=>{if(!this.aborted)throw t}))}getStream(){return this.stream}requestRange(t,e){e=Math.min(e,this.length);const A=this.getBeginChunk(t),i=this.getEndChunk(e),s=[];for(let t=A;t<i;++t)s.push(t);return this._requestChunks(s)}requestRanges(t=[]){const e=[];for(const A of t){const t=this.getBeginChunk(A.begin),i=this.getEndChunk(A.end);for(let A=t;A<i;++A)e.includes(A)||e.push(A)}return e.sort((function(t,e){return t-e})),this._requestChunks(e)}groupChunks(t){const e=[];let A=-1,i=-1;for(let s=0,a=t.length;s<a;++s){const a=t[s];A<0&&(A=a),i>=0&&i+1!==a&&(e.push({beginChunk:A,endChunk:i+1}),A=a),s+1===t.length&&e.push({beginChunk:A,endChunk:a+1}),i=a}return e}onProgress(t){this.msgHandler.send("DocProgress",{loaded:this.stream.numChunksLoaded*this.chunkSize+t.loaded,total:this.length})}onReceiveData(t){const e=t.chunk,A=void 0===t.begin,i=A?this.progressiveDataLength:t.begin,s=i+e.byteLength,a=Math.floor(i/this.chunkSize),n=s<this.length?Math.floor(s/this.chunkSize):Math.ceil(s/this.chunkSize);A?(this.stream.onReceiveProgressiveData(e),this.progressiveDataLength=s):this.stream.onReceiveData(i,e),this.stream.isDataLoaded&&this._loadedStreamCapability.resolve(this.stream);const r=[];for(let t=a;t<n;++t){const e=this._requestsByChunk.get(t);if(e){this._requestsByChunk.delete(t);for(const A of e){const e=this._chunksNeededByRequest.get(A);e.has(t)&&e.delete(t),e.size>0||r.push(A)}}}if(!this.disableAutoFetch&&0===this._requestsByChunk.size){let t;if(1===this.stream.numChunksLoaded){const e=this.stream.numChunks-1;this.stream.hasChunk(e)||(t=e)}else t=this.stream.nextEmptyChunk(n);Number.isInteger(t)&&this._requestChunks([t])}for(const t of r){const e=this._promisesByRequest.get(t);this._promisesByRequest.delete(t),e.resolve()}this.msgHandler.send("DocProgress",{loaded:this.stream.numChunksLoaded*this.chunkSize,total:this.length})}onError(t){this._loadedStreamCapability.reject(t)}getBeginChunk(t){return Math.floor(t/this.chunkSize)}getEndChunk(t){return Math.floor((t-1)/this.chunkSize)+1}abort(t){this.aborted=!0,this.pdfNetworkStream?.cancelAllRequests(t);for(const e of this._promisesByRequest.values())e.reject(t)}}class he{constructor(t,e){this.constructor===he&&v("Cannot initialize ColorSpace."),this.name=t,this.numComps=e}getRgb(t,e){const A=new Uint8ClampedArray(3);return this.getRgbItem(t,e,A,0),A}getRgbItem(t,e,A,i){v("Should not call ColorSpace.getRgbItem")}getRgbBuffer(t,e,A,i,s,a,n){v("Should not call ColorSpace.getRgbBuffer")}getOutputLength(t,e){v("Should not call ColorSpace.getOutputLength")}isPassthrough(t){return!1}isDefaultDecode(t,e){return he.isDefaultDecode(t,this.numComps)}fillRgb(t,e,A,i,s,a,n,r,o){const g=e*A;let c=null;const h=1<<n,l=A!==s||e!==i;if(this.isPassthrough(n))c=r;else if(1===this.numComps&&g>h&&"DeviceGray"!==this.name&&"DeviceRGB"!==this.name){const e=n<=8?new Uint8Array(h):new Uint16Array(h);for(let t=0;t<h;t++)e[t]=t;const A=new Uint8ClampedArray(3*h);if(this.getRgbBuffer(e,0,h,A,0,n,0),l){c=new Uint8Array(3*g);let t=0;for(let e=0;e<g;++e){const i=3*r[e];c[t++]=A[i],c[t++]=A[i+1],c[t++]=A[i+2]}}else{let e=0;for(let i=0;i<g;++i){const s=3*r[i];t[e++]=A[s],t[e++]=A[s+1],t[e++]=A[s+2],e+=o}}}else l?(c=new Uint8ClampedArray(3*g),this.getRgbBuffer(r,0,g,c,0,n,0)):this.getRgbBuffer(r,0,i*a,t,0,n,o);if(c)if(l)!function(t,e,A,i,s,a,n){n=1!==n?0:n;const r=A/s,o=i/a;let g,c=0;const h=new Uint16Array(s),l=3*A;for(let t=0;t<s;t++)h[t]=3*Math.floor(t*r);for(let A=0;A<a;A++){const i=Math.floor(A*o)*l;for(let A=0;A<s;A++)g=i+h[A],e[c++]=t[g++],e[c++]=t[g++],e[c++]=t[g++],c+=n}}(c,t,e,A,i,s,o);else{let e=0,A=0;for(let s=0,n=i*a;s<n;s++)t[e++]=c[A++],t[e++]=c[A++],t[e++]=c[A++],e+=o}}get usesZeroToOneRange(){return L(this,"usesZeroToOneRange",!0)}static _cache(t,e,A,i){if(!A)throw new Error('ColorSpace._cache - expected "localColorSpaceCache" argument.');if(!i)throw new Error('ColorSpace._cache - expected "parsedColorSpace" argument.');let s,a;t instanceof Bt&&(a=t,t=e.fetch(t)),t instanceof ht&&(s=t.name),(s||a)&&A.set(s,a,i)}static getCached(t,e,A){if(!A)throw new Error('ColorSpace.getCached - expected "localColorSpaceCache" argument.');if(t instanceof Bt){const i=A.getByRef(t);if(i)return i;try{t=e.fetch(t)}catch(t){if(t instanceof bt)throw t}}if(t instanceof ht){const e=A.getByName(t.name);if(e)return e}return null}static async parseAsync({cs:t,xref:e,resources:A=null,pdfFunctionFactory:i,localColorSpaceCache:s}){const a=this._parse(t,e,A,i);return this._cache(t,e,s,a),a}static parse({cs:t,xref:e,resources:A=null,pdfFunctionFactory:i,localColorSpaceCache:s}){const a=this.getCached(t,e,s);if(a)return a;const n=this._parse(t,e,A,i);return this._cache(t,e,s,n),n}static _parse(t,e,A=null,i){if((t=e.fetchIfRef(t))instanceof ht)switch(t.name){case"G":case"DeviceGray":return this.singletons.gray;case"RGB":case"DeviceRGB":return this.singletons.rgb;case"DeviceRGBA":return this.singletons.rgba;case"CMYK":case"DeviceCMYK":return this.singletons.cmyk;case"Pattern":return new Ie(null);default:if(A instanceof Ct){const s=A.get("ColorSpace");if(s instanceof Ct){const a=s.get(t.name);if(a){if(a instanceof ht)return this._parse(a,e,A,i);t=a;break}}}throw new q(`Unrecognized ColorSpace: ${t.name}`)}if(Array.isArray(t)){const s=e.fetchIfRef(t[0]).name;let a,n,r,o,g,c;switch(s){case"G":case"DeviceGray":return this.singletons.gray;case"RGB":case"DeviceRGB":return this.singletons.rgb;case"CMYK":case"DeviceCMYK":return this.singletons.cmyk;case"CalGray":return a=e.fetchIfRef(t[1]),o=a.getArray("WhitePoint"),g=a.getArray("BlackPoint"),c=a.get("Gamma"),new Ee(o,g,c);case"CalRGB":a=e.fetchIfRef(t[1]),o=a.getArray("WhitePoint"),g=a.getArray("BlackPoint"),c=a.getArray("Gamma");const h=a.getArray("Matrix");return new fe(o,g,c,h);case"ICCBased":const l=e.fetchIfRef(t[1]).dict;n=l.get("N");const I=l.get("Alternate");if(I){const t=this._parse(I,e,A,i);if(t.numComps===n)return t;N("ICCBased color space: Ignoring incorrect /Alternate entry.")}if(1===n)return this.singletons.gray;if(3===n)return this.singletons.rgb;if(4===n)return this.singletons.cmyk;break;case"Pattern":return r=t[1]||null,r&&(r=this._parse(r,e,A,i)),new Ie(r);case"I":case"Indexed":r=this._parse(t[1],e,A,i);const C=e.fetchIfRef(t[2])+1,B=e.fetchIfRef(t[3]);return new Ce(r,C,B);case"Separation":case"DeviceN":const d=e.fetchIfRef(t[1]);n=Array.isArray(d)?d.length:1,r=this._parse(t[2],e,A,i);const u=i.create(t[3]);return new le(n,r,u);case"Lab":a=e.fetchIfRef(t[1]),o=a.getArray("WhitePoint"),g=a.getArray("BlackPoint");const Q=a.getArray("Range");return new pe(o,g,Q);default:throw new q(`Unimplemented ColorSpace object: ${s}`)}}throw new q(`Unrecognized ColorSpace object: ${t}`)}static isDefaultDecode(t,e){if(!Array.isArray(t))return!0;if(2*e!==t.length)return N("The decode map is not the correct length"),!0;for(let e=0,A=t.length;e<A;e+=2)if(0!==t[e]||1!==t[e+1])return!1;return!0}static get singletons(){return L(this,"singletons",{get gray(){return L(this,"gray",new Be)},get rgb(){return L(this,"rgb",new de)},get rgba(){return L(this,"rgba",new ue)},get cmyk(){return L(this,"cmyk",new Qe)}})}}class le extends he{constructor(t,e,A){super("Alternate",t),this.base=e,this.tintFn=A,this.tmpBuf=new Float32Array(e.numComps)}getRgbItem(t,e,A,i){const s=this.tmpBuf;this.tintFn(t,e,s,0),this.base.getRgbItem(s,0,A,i)}getRgbBuffer(t,e,A,i,s,a,n){const r=this.tintFn,o=this.base,g=1/((1<<a)-1),c=o.numComps,h=o.usesZeroToOneRange,l=(o.isPassthrough(8)||!h)&&0===n;let I=l?s:0;const C=l?i:new Uint8ClampedArray(c*A),B=this.numComps,d=new Float32Array(B),u=new Float32Array(c);let Q,E;for(Q=0;Q<A;Q++){for(E=0;E<B;E++)d[E]=t[e++]*g;if(r(d,0,u,0),h)for(E=0;E<c;E++)C[I++]=255*u[E];else o.getRgbItem(u,0,C,I),I+=c}l||o.getRgbBuffer(C,0,A,i,s,8,n)}getOutputLength(t,e){return this.base.getOutputLength(t*this.base.numComps/this.numComps,e)}}class Ie extends he{constructor(t){super("Pattern",null),this.base=t}isDefaultDecode(t,e){v("Should not call PatternCS.isDefaultDecode")}}class Ce extends he{constructor(t,e,A){super("Indexed",1),this.base=t,this.highVal=e;const i=t.numComps*e;if(this.lookup=new Uint8Array(i),A instanceof mt){const t=A.getBytes(i);this.lookup.set(t)}else{if("string"!=typeof A)throw new q(`IndexedCS - unrecognized lookup table: ${A}`);for(let t=0;t<i;++t)this.lookup[t]=255&A.charCodeAt(t)}}getRgbItem(t,e,A,i){const s=this.base.numComps,a=t[e]*s;this.base.getRgbBuffer(this.lookup,a,1,A,i,8,0)}getRgbBuffer(t,e,A,i,s,a,n){const r=this.base,o=r.numComps,g=r.getOutputLength(o,n),c=this.lookup;for(let a=0;a<A;++a){const A=t[e++]*o;r.getRgbBuffer(c,A,1,i,s,8,n),s+=g}}getOutputLength(t,e){return this.base.getOutputLength(t*this.base.numComps,e)}isDefaultDecode(t,e){return!Array.isArray(t)||(2!==t.length?(N("Decode map length is not correct"),!0):!Number.isInteger(e)||e<1?(N("Bits per component is not correct"),!0):0===t[0]&&t[1]===(1<<e)-1)}}class Be extends he{constructor(){super("DeviceGray",1)}getRgbItem(t,e,A,i){const s=255*t[e];A[i]=A[i+1]=A[i+2]=s}getRgbBuffer(t,e,A,i,s,a,n){const r=255/((1<<a)-1);let o=e,g=s;for(let e=0;e<A;++e){const e=r*t[o++];i[g++]=e,i[g++]=e,i[g++]=e,g+=n}}getOutputLength(t,e){return t*(3+e)}}class de extends he{constructor(){super("DeviceRGB",3)}getRgbItem(t,e,A,i){A[i]=255*t[e],A[i+1]=255*t[e+1],A[i+2]=255*t[e+2]}getRgbBuffer(t,e,A,i,s,a,n){if(8===a&&0===n)return void i.set(t.subarray(e,e+3*A),s);const r=255/((1<<a)-1);let o=e,g=s;for(let e=0;e<A;++e)i[g++]=r*t[o++],i[g++]=r*t[o++],i[g++]=r*t[o++],g+=n}getOutputLength(t,e){return t*(3+e)/3|0}isPassthrough(t){return 8===t}}class ue extends he{constructor(){super("DeviceRGBA",4)}getOutputLength(t,e){return 4*t}isPassthrough(t){return 8===t}}class Qe extends he{constructor(){super("DeviceCMYK",4)}#A(t,e,A,i,s){const a=t[e]*A,n=t[e+1]*A,r=t[e+2]*A,o=t[e+3]*A;i[s]=255+a*(-4.387332384609988*a+54.48615194189176*n+18.82290502165302*r+212.25662451639585*o-285.2331026137004)+n*(1.7149763477362134*n-5.6096736904047315*r+-17.873870861415444*o-5.497006427196366)+r*(-2.5217340131683033*r-21.248923337353073*o+17.5119270841813)+o*(-21.86122147463605*o-189.48180835922747),i[s+1]=255+a*(8.841041422036149*a+60.118027045597366*n+6.871425592049007*r+31.159100130055922*o-79.2970844816548)+n*(-15.310361306967817*n+17.575251261109482*r+131.35250912493976*o-190.9453302588951)+r*(4.444339102852739*r+9.8632861493405*o-24.86741582555878)+o*(-20.737325471181034*o-187.80453709719578),i[s+2]=255+a*(.8842522430003296*a+8.078677503112928*n+30.89978309703729*r-.23883238689178934*o-14.183576799673286)+n*(10.49593273432072*n+63.02378494754052*r+50.606957656360734*o-112.23884253719248)+r*(.03296041114873217*r+115.60384449646641*o-193.58209356861505)+o*(-22.33816807309886*o-180.12613974708367)}getRgbItem(t,e,A,i){this.#A(t,e,1,A,i)}getRgbBuffer(t,e,A,i,s,a,n){const r=1/((1<<a)-1);for(let a=0;a<A;a++)this.#A(t,e,r,i,s),e+=4,s+=3+n}getOutputLength(t,e){return t/4*(3+e)|0}}class Ee extends he{constructor(t,e,A){if(super("CalGray",1),!t)throw new q("WhitePoint missing - required for color space CalGray");if([this.XW,this.YW,this.ZW]=t,[this.XB,this.YB,this.ZB]=e||[0,0,0],this.G=A||1,this.XW<0||this.ZW<0||1!==this.YW)throw new q(`Invalid WhitePoint components for ${this.name}, no fallback available`);(this.XB<0||this.YB<0||this.ZB<0)&&(x(`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||N(`${this.name}, BlackPoint: XB: ${this.XB}, YB: ${this.YB}, ZB: ${this.ZB}, only default values are supported.`),this.G<1&&(x(`Invalid Gamma: ${this.G} for ${this.name}, falling back to default.`),this.G=1)}#A(t,e,A,i,s){const a=(t[e]*s)**this.G,n=this.YW*a,r=Math.max(295.8*n**.3333333333333333-40.8,0);A[i]=r,A[i+1]=r,A[i+2]=r}getRgbItem(t,e,A,i){this.#A(t,e,A,i,1)}getRgbBuffer(t,e,A,i,s,a,n){const r=1/((1<<a)-1);for(let a=0;a<A;++a)this.#A(t,e,i,s,r),e+=1,s+=3+n}getOutputLength(t,e){return t*(3+e)}}class fe extends he{static#i=new Float32Array([.8951,.2664,-.1614,-.7502,1.7135,.0367,.0389,-.0685,1.0296]);static#s=new Float32Array([.9869929,-.1470543,.1599627,.4323053,.5183603,.0492912,-.0085287,.0400428,.9684867]);static#a=new Float32Array([3.2404542,-1.5371385,-.4985314,-.969266,1.8760108,.041556,.0556434,-.2040259,1.0572252]);static#n=new Float32Array([1,1,1]);static#r=new Float32Array(3);static#o=new Float32Array(3);static#g=new Float32Array(3);static#c=(24/116)**3/8;constructor(t,e,A,i){if(super("CalRGB",3),!t)throw new q("WhitePoint missing - required for color space CalRGB");const[s,a,n]=this.whitePoint=t,[r,o,g]=this.blackPoint=e||new Float32Array(3);if([this.GR,this.GG,this.GB]=A||new Float32Array([1,1,1]),[this.MXA,this.MYA,this.MZA,this.MXB,this.MYB,this.MZB,this.MXC,this.MYC,this.MZC]=i||new Float32Array([1,0,0,0,1,0,0,0,1]),s<0||n<0||1!==a)throw new q(`Invalid WhitePoint components for ${this.name}, no fallback available`);(r<0||o<0||g<0)&&(x(`Invalid BlackPoint for ${this.name} [${r}, ${o}, ${g}], falling back to default.`),this.blackPoint=new Float32Array(3)),(this.GR<0||this.GG<0||this.GB<0)&&(x(`Invalid Gamma [${this.GR}, ${this.GG}, ${this.GB}] for ${this.name}, falling back to default.`),this.GR=this.GG=this.GB=1)}#h(t,e,A){A[0]=t[0]*e[0]+t[1]*e[1]+t[2]*e[2],A[1]=t[3]*e[0]+t[4]*e[1]+t[5]*e[2],A[2]=t[6]*e[0]+t[7]*e[1]+t[8]*e[2]}#l(t,e,A){A[0]=1*e[0]/t[0],A[1]=1*e[1]/t[1],A[2]=1*e[2]/t[2]}#I(t,e,A){A[0]=.95047*e[0]/t[0],A[1]=1*e[1]/t[1],A[2]=1.08883*e[2]/t[2]}#C(t){return t<=.0031308?this.#B(0,1,12.92*t):t>=.99554525?1:this.#B(0,1,1.055*t**(1/2.4)-.055)}#B(t,e,A){return Math.max(t,Math.min(e,A))}#d(t){return t<0?-this.#d(-t):t>8?((t+16)/116)**3:t*fe.#c}#u(t,e,A){if(0===t[0]&&0===t[1]&&0===t[2])return A[0]=e[0],A[1]=e[1],void(A[2]=e[2]);const i=this.#d(0),s=(1-i)/(1-this.#d(t[0])),a=1-s,n=(1-i)/(1-this.#d(t[1])),r=1-n,o=(1-i)/(1-this.#d(t[2])),g=1-o;A[0]=e[0]*s+a,A[1]=e[1]*n+r,A[2]=e[2]*o+g}#Q(t,e,A){if(1===t[0]&&1===t[2])return A[0]=e[0],A[1]=e[1],void(A[2]=e[2]);const i=A;this.#h(fe.#i,e,i);const s=fe.#r;this.#l(t,i,s),this.#h(fe.#s,s,A)}#E(t,e,A){const i=A;this.#h(fe.#i,e,i);const s=fe.#r;this.#I(t,i,s),this.#h(fe.#s,s,A)}#A(t,e,A,i,s){const a=this.#B(0,1,t[e]*s),n=this.#B(0,1,t[e+1]*s),r=this.#B(0,1,t[e+2]*s),o=1===a?1:a**this.GR,g=1===n?1:n**this.GG,c=1===r?1:r**this.GB,h=this.MXA*o+this.MXB*g+this.MXC*c,l=this.MYA*o+this.MYB*g+this.MYC*c,I=this.MZA*o+this.MZB*g+this.MZC*c,C=fe.#o;C[0]=h,C[1]=l,C[2]=I;const B=fe.#g;this.#Q(this.whitePoint,C,B);const d=fe.#o;this.#u(this.blackPoint,B,d);const u=fe.#g;this.#E(fe.#n,d,u);const Q=fe.#o;this.#h(fe.#a,u,Q),A[i]=255*this.#C(Q[0]),A[i+1]=255*this.#C(Q[1]),A[i+2]=255*this.#C(Q[2])}getRgbItem(t,e,A,i){this.#A(t,e,A,i,1)}getRgbBuffer(t,e,A,i,s,a,n){const r=1/((1<<a)-1);for(let a=0;a<A;++a)this.#A(t,e,i,s,r),e+=3,s+=3+n}getOutputLength(t,e){return t*(3+e)/3|0}}class pe extends he{constructor(t,e,A){if(super("Lab",3),!t)throw new q("WhitePoint missing - required for color space Lab");if([this.XW,this.YW,this.ZW]=t,[this.amin,this.amax,this.bmin,this.bmax]=A||[-100,100,-100,100],[this.XB,this.YB,this.ZB]=e||[0,0,0],this.XW<0||this.ZW<0||1!==this.YW)throw new q("Invalid WhitePoint components, no fallback available");(this.XB<0||this.YB<0||this.ZB<0)&&(x("Invalid BlackPoint, falling back to default"),this.XB=this.YB=this.ZB=0),(this.amin>this.amax||this.bmin>this.bmax)&&(x("Invalid Range, falling back to defaults"),this.amin=-100,this.amax=100,this.bmin=-100,this.bmax=100)}#f(t){return t>=6/29?t**3:108/841*(t-4/29)}#p(t,e,A,i){return A+t*(i-A)/e}#A(t,e,A,i,s){let a=t[e],n=t[e+1],r=t[e+2];!1!==A&&(a=this.#p(a,A,0,100),n=this.#p(n,A,this.amin,this.amax),r=this.#p(r,A,this.bmin,this.bmax)),n>this.amax?n=this.amax:n<this.amin&&(n=this.amin),r>this.bmax?r=this.bmax:r<this.bmin&&(r=this.bmin);const o=(a+16)/116,g=o+n/500,c=o-r/200,h=this.XW*this.#f(g),l=this.YW*this.#f(o),I=this.ZW*this.#f(c);let C,B,d;this.ZW<1?(C=3.1339*h+-1.617*l+-.4906*I,B=-.9785*h+1.916*l+.0333*I,d=.072*h+-.229*l+1.4057*I):(C=3.2406*h+-1.5372*l+-.4986*I,B=-.9689*h+1.8758*l+.0415*I,d=.0557*h+-.204*l+1.057*I),i[s]=255*Math.sqrt(C),i[s+1]=255*Math.sqrt(B),i[s+2]=255*Math.sqrt(d)}getRgbItem(t,e,A,i){this.#A(t,e,!1,A,i)}getRgbBuffer(t,e,A,i,s,a,n){const r=(1<<a)-1;for(let a=0;a<A;a++)this.#A(t,e,r,i,s),e+=3,s+=3+n}getOutputLength(t,e){return t*(3+e)/3|0}isDefaultDecode(t,e){return!0}get usesZeroToOneRange(){return L(this,"usesZeroToOneRange",!1)}}function me(t,e){let A=0;for(let i=0;i<=e;i++)A=A<<8|t[i];return A>>>0}function ye(t,e){return 1===e?String.fromCharCode(t[0],t[1]):3===e?String.fromCharCode(t[0],t[1],t[2],t[3]):String.fromCharCode(...t.subarray(0,e+1))}function we(t,e,A){let i=0;for(let s=A;s>=0;s--)i+=t[s]+e[s],t[s]=255&i,i>>=8}function be(t,e){let A=1;for(let i=e;i>=0&&A>0;i--)A+=t[i],t[i]=255&A,A>>=8}const De=16;class ke{constructor(t){this.buffer=t,this.pos=0,this.end=t.length,this.tmpBuf=new Uint8Array(19)}readByte(){return this.pos>=this.end?-1:this.buffer[this.pos++]}readNumber(){let t,e=0;do{const A=this.readByte();if(A<0)throw new q("unexpected EOF in bcmap");t=!(128&A),e=e<<7|127&A}while(!t);return e}readSigned(){const t=this.readNumber();return 1&t?~(t>>>1):t>>>1}readHex(t,e){t.set(this.buffer.subarray(this.pos,this.pos+e+1)),this.pos+=e+1}readHexNumber(t,e){let A;const i=this.tmpBuf;let s=0;do{const t=this.readByte();if(t<0)throw new q("unexpected EOF in bcmap");A=!(128&t),i[s++]=127&t}while(!A);let a=e,n=0,r=0;for(;a>=0;){for(;r<8&&i.length>0;)n|=i[--s]<<r,r+=7;t[a]=255&n,a--,n>>=8,r-=8}}readHexSigned(t,e){this.readHexNumber(t,e);const A=1&t[e]?255:0;let i=0;for(let s=0;s<=e;s++)i=(1&i)<<8|t[s],t[s]=i>>1^A}readString(){const t=this.readNumber(),e=new Array(t);for(let A=0;A<t;A++)e[A]=this.readNumber();return String.fromCharCode(...e)}}class Se{async process(t,e,A){const i=new ke(t),s=i.readByte();e.vertical=!!(1&s);let a=null;const n=new Uint8Array(De),r=new Uint8Array(De),o=new Uint8Array(De),g=new Uint8Array(De),c=new Uint8Array(De);let h,l;for(;(l=i.readByte())>=0;){const t=l>>5;if(7===t){switch(31&l){case 0:i.readString();break;case 1:a=i.readString()}continue}const A=!!(16&l),s=15&l;if(s+1>De)throw new Error("BinaryCMapReader.process: Invalid dataSize.");const I=1,C=i.readNumber();switch(t){case 0:i.readHex(n,s),i.readHexNumber(r,s),we(r,n,s),e.addCodespaceRange(s+1,me(n,s),me(r,s));for(let t=1;t<C;t++)be(r,s),i.readHexNumber(n,s),we(n,r,s),i.readHexNumber(r,s),we(r,n,s),e.addCodespaceRange(s+1,me(n,s),me(r,s));break;case 1:i.readHex(n,s),i.readHexNumber(r,s),we(r,n,s),i.readNumber();for(let t=1;t<C;t++)be(r,s),i.readHexNumber(n,s),we(n,r,s),i.readHexNumber(r,s),we(r,n,s),i.readNumber();break;case 2:i.readHex(o,s),h=i.readNumber(),e.mapOne(me(o,s),h);for(let t=1;t<C;t++)be(o,s),A||(i.readHexNumber(c,s),we(o,c,s)),h=i.readSigned()+(h+1),e.mapOne(me(o,s),h);break;case 3:i.readHex(n,s),i.readHexNumber(r,s),we(r,n,s),h=i.readNumber(),e.mapCidRange(me(n,s),me(r,s),h);for(let t=1;t<C;t++)be(r,s),A?n.set(r):(i.readHexNumber(n,s),we(n,r,s)),i.readHexNumber(r,s),we(r,n,s),h=i.readNumber(),e.mapCidRange(me(n,s),me(r,s),h);break;case 4:i.readHex(o,I),i.readHex(g,s),e.mapOne(me(o,I),ye(g,s));for(let t=1;t<C;t++)be(o,I),A||(i.readHexNumber(c,I),we(o,c,I)),be(g,s),i.readHexSigned(c,s),we(g,c,s),e.mapOne(me(o,I),ye(g,s));break;case 5:i.readHex(n,I),i.readHexNumber(r,I),we(r,n,I),i.readHex(g,s),e.mapBfRange(me(n,I),me(r,I),ye(g,s));for(let t=1;t<C;t++)be(r,I),A?n.set(r):(i.readHexNumber(n,I),we(n,r,I)),i.readHexNumber(r,I),we(r,n,I),i.readHex(g,s),e.mapBfRange(me(n,I),me(r,I),ye(g,s));break;default:throw new Error(`BinaryCMapReader.process - unknown type: ${t}`)}}return a?A(a):e}}const Fe=new Uint8Array(0);class Re extends mt{constructor(t){if(super(),this._rawMinBufferLength=t||0,this.pos=0,this.bufferLength=0,this.eof=!1,this.buffer=Fe,this.minBufferLength=512,t)for(;this.minBufferLength<t;)this.minBufferLength*=2}get isEmpty(){for(;!this.eof&&0===this.bufferLength;)this.readBlock();return 0===this.bufferLength}ensureBuffer(t){const e=this.buffer;if(t<=e.byteLength)return e;let A=this.minBufferLength;for(;A<t;)A*=2;const i=new Uint8Array(A);return i.set(e),this.buffer=i}getByte(){const t=this.pos;for(;this.bufferLength<=t;){if(this.eof)return-1;this.readBlock()}return this.buffer[this.pos++]}getBytes(t,e=null){const A=this.pos;let i;if(t){for(this.ensureBuffer(A+t),i=A+t;!this.eof&&this.bufferLength<i;)this.readBlock(e);const s=this.bufferLength;i>s&&(i=s)}else{for(;!this.eof;)this.readBlock(e);i=this.bufferLength}return this.pos=i,this.buffer.subarray(A,i)}async getImageData(t,e=null){if(!this.canAsyncDecodeImageFromBuffer)return this.getBytes(t,e);const A=await this.stream.asyncGetBytes();return this.decodeImage(A,e)}reset(){this.pos=0}makeSubStream(t,e,A=null){if(void 0===e)for(;!this.eof;)this.readBlock();else{const A=t+e;for(;this.bufferLength<=A&&!this.eof;)this.readBlock()}return new ne(this.buffer,t,e,A)}getBaseStreams(){return this.str?this.str.getBaseStreams():null}}class xe extends Re{constructor(t,e=null){let A=0;for(const e of t)A+=e instanceof Re?e._rawMinBufferLength:e.length;super(A),this.streams=t,this._onError=e}readBlock(){const t=this.streams;if(0===t.length)return void(this.eof=!0);const e=t.shift();let A;try{A=e.getBytes()}catch(t){if(this._onError)return void this._onError(t,e.dict?.objId);throw t}const i=this.bufferLength,s=i+A.length;this.ensureBuffer(s).set(A,i),this.bufferLength=s}getBaseStreams(){const t=[];for(const e of this.streams){const A=e.getBaseStreams();A&&t.push(...A)}return t.length>0?t:null}}class Ne extends Re{constructor(t,e){e&&(e*=.8),super(e),this.str=t,this.dict=t.dict,this.input=new Uint8Array(5)}readBlock(){const t=this.str;let e=t.getByte();for(;Ut(e);)e=t.getByte();if(-1===e||126===e)return void(this.eof=!0);const A=this.bufferLength;let i,s;if(122===e){for(i=this.ensureBuffer(A+4),s=0;s<4;++s)i[A+s]=0;this.bufferLength+=4}else{const a=this.input;for(a[0]=e,s=1;s<5;++s){for(e=t.getByte();Ut(e);)e=t.getByte();if(a[s]=e,-1===e||126===e)break}if(i=this.ensureBuffer(A+s-1),this.bufferLength+=s-1,s<5){for(;s<5;++s)a[s]=117;this.eof=!0}let n=0;for(s=0;s<5;++s)n=85*n+(a[s]-33);for(s=3;s>=0;--s)i[A+s]=255&n,n>>=8}}}class ve extends Re{constructor(t,e){e&&(e*=.5),super(e),this.str=t,this.dict=t.dict,this.firstDigit=-1}readBlock(){const t=this.str.getBytes(8e3);if(!t.length)return void(this.eof=!0);const e=t.length+1>>1,A=this.ensureBuffer(this.bufferLength+e);let i=this.bufferLength,s=this.firstDigit;for(const e of t){let t;if(e>=48&&e<=57)t=15&e;else{if(!(e>=65&&e<=70||e>=97&&e<=102)){if(62===e){this.eof=!0;break}continue}t=9+(15&e)}s<0?s=t:(A[i++]=s<<4|t,s=-1)}s>=0&&this.eof&&(A[i++]=s<<4,s=-1),this.firstDigit=s,this.bufferLength=i}}const Ge=-1,Me=[[-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]],Le=[[-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]],Ue=[[-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]],He=[[-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]],Je=[[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]],Ye=[[-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 Te{constructor(t,e={}){if(!t||"function"!=typeof t.next)throw new Error('CCITTFaxDecoder - invalid "source" parameter.');let A;for(this.source=t,this.eof=!1,this.encoding=e.K||0,this.eoline=e.EndOfLine||!1,this.byteAlign=e.EncodedByteAlign||!1,this.columns=e.Columns||1728,this.rows=e.Rows||0,this.eoblock=e.EndOfBlock??!0,this.black=e.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===(A=this._lookBits(12));)this._eatBits(1);1===A&&this._eatBits(12),this.encoding>0&&(this.nextLine2D=!this._lookBits(1),this._eatBits(1))}readNextChar(){if(this.eof)return-1;const t=this.refLine,e=this.codingLine,A=this.columns;let i,s,a,n,r;if(0===this.outputBits){if(this.rowsDone&&(this.eof=!0),this.eof)return-1;let a,r,o;if(this.err=!1,this.nextLine2D){for(n=0;e[n]<A;++n)t[n]=e[n];for(t[n++]=A,t[n]=A,e[0]=0,this.codingPos=0,i=0,s=0;e[this.codingPos]<A;)switch(a=this._getTwoDimCode(),a){case 0:this._addPixels(t[i+1],s),t[i+1]<A&&(i+=2);break;case 1:if(a=r=0,s){do{a+=o=this._getBlackCode()}while(o>=64);do{r+=o=this._getWhiteCode()}while(o>=64)}else{do{a+=o=this._getWhiteCode()}while(o>=64);do{r+=o=this._getBlackCode()}while(o>=64)}for(this._addPixels(e[this.codingPos]+a,s),e[this.codingPos]<A&&this._addPixels(e[this.codingPos]+r,1^s);t[i]<=e[this.codingPos]&&t[i]<A;)i+=2;break;case 7:if(this._addPixels(t[i]+3,s),s^=1,e[this.codingPos]<A)for(++i;t[i]<=e[this.codingPos]&&t[i]<A;)i+=2;break;case 5:if(this._addPixels(t[i]+2,s),s^=1,e[this.codingPos]<A)for(++i;t[i]<=e[this.codingPos]&&t[i]<A;)i+=2;break;case 3:if(this._addPixels(t[i]+1,s),s^=1,e[this.codingPos]<A)for(++i;t[i]<=e[this.codingPos]&&t[i]<A;)i+=2;break;case 2:if(this._addPixels(t[i],s),s^=1,e[this.codingPos]<A)for(++i;t[i]<=e[this.codingPos]&&t[i]<A;)i+=2;break;case 8:if(this._addPixelsNeg(t[i]-3,s),s^=1,e[this.codingPos]<A)for(i>0?--i:++i;t[i]<=e[this.codingPos]&&t[i]<A;)i+=2;break;case 6:if(this._addPixelsNeg(t[i]-2,s),s^=1,e[this.codingPos]<A)for(i>0?--i:++i;t[i]<=e[this.codingPos]&&t[i]<A;)i+=2;break;case 4:if(this._addPixelsNeg(t[i]-1,s),s^=1,e[this.codingPos]<A)for(i>0?--i:++i;t[i]<=e[this.codingPos]&&t[i]<A;)i+=2;break;case Ge:this._addPixels(A,0),this.eof=!0;break;default:x("bad 2d code"),this._addPixels(A,0),this.err=!0}}else for(e[0]=0,this.codingPos=0,s=0;e[this.codingPos]<A;){if(a=0,s)do{a+=o=this._getBlackCode()}while(o>=64);else do{a+=o=this._getWhiteCode()}while(o>=64);this._addPixels(e[this.codingPos]+a,s),s^=1}let g=!1;if(this.byteAlign&&(this.inputBits&=-8),this.eoblock||this.row!==this.rows-1){if(a=this._lookBits(12),this.eoline)for(;a!==Ge&&1!==a;)this._eatBits(1),a=this._lookBits(12);else for(;0===a;)this._eatBits(1),a=this._lookBits(12);1===a?(this._eatBits(12),g=!0):a===Ge&&(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&&g&&this.byteAlign){if(a=this._lookBits(12),1===a){if(this._eatBits(12),this.encoding>0&&(this._lookBits(1),this._eatBits(1)),this.encoding>=0)for(n=0;n<4;++n)a=this._lookBits(12),1!==a&&x("bad rtc code: "+a),this._eatBits(12),this.encoding>0&&(this._lookBits(1),this._eatBits(1));this.eof=!0}}else if(this.err&&this.eoline){for(;;){if(a=this._lookBits(13),a===Ge)return this.eof=!0,-1;if(a>>1==1)break;this._eatBits(1)}this._eatBits(12),this.encoding>0&&(this._eatBits(1),this.nextLine2D=!(1&a))}this.outputBits=e[0]>0?e[this.codingPos=0]:e[this.codingPos=1],this.row++}if(this.outputBits>=8)r=1&this.codingPos?0:255,this.outputBits-=8,0===this.outputBits&&e[this.codingPos]<A&&(this.codingPos++,this.outputBits=e[this.codingPos]-e[this.codingPos-1]);else{a=8,r=0;do{if("number"!=typeof this.outputBits)throw new q('Invalid /CCITTFaxDecode data, "outputBits" must be a number.');this.outputBits>a?(r<<=a,1&this.codingPos||(r|=255>>8-a),this.outputBits-=a,a=0):(r<<=this.outputBits,1&this.codingPos||(r|=255>>8-this.outputBits),a-=this.outputBits,this.outputBits=0,e[this.codingPos]<A?(this.codingPos++,this.outputBits=e[this.codingPos]-e[this.codingPos-1]):a>0&&(r<<=a,a=0))}while(a)}return this.black&&(r^=255),r}_addPixels(t,e){const A=this.codingLine;let i=this.codingPos;t>A[i]&&(t>this.columns&&(x("row is wrong length"),this.err=!0,t=this.columns),1&i^e&&++i,A[i]=t),this.codingPos=i}_addPixelsNeg(t,e){const A=this.codingLine;let i=this.codingPos;if(t>A[i])t>this.columns&&(x("row is wrong length"),this.err=!0,t=this.columns),1&i^e&&++i,A[i]=t;else if(t<A[i]){for(t<0&&(x("invalid code"),this.err=!0,t=0);i>0&&t<A[i-1];)--i;A[i]=t}this.codingPos=i}_findTableCode(t,e,A,i){const s=i||0;for(let i=t;i<=e;++i){let t=this._lookBits(i);if(t===Ge)return[!0,1,!1];if(i<e&&(t<<=e-i),!s||t>=s){const e=A[t-s];if(e[0]===i)return this._eatBits(i),[!0,e[1],!0]}}return[!1,0,!1]}_getTwoDimCode(){let t,e=0;if(this.eoblock){if(e=this._lookBits(7),t=Me[e],t?.[0]>0)return this._eatBits(t[0]),t[1]}else{const t=this._findTableCode(1,7,Me);if(t[0]&&t[2])return t[1]}return x("Bad two dim code"),Ge}_getWhiteCode(){let t,e=0;if(this.eoblock){if(e=this._lookBits(12),e===Ge)return 1;if(t=e>>5?Ue[e>>3]:Le[e],t[0]>0)return this._eatBits(t[0]),t[1]}else{let t=this._findTableCode(1,9,Ue);if(t[0])return t[1];if(t=this._findTableCode(11,12,Le),t[0])return t[1]}return x("bad white code"),this._eatBits(1),1}_getBlackCode(){let t,e;if(this.eoblock){if(t=this._lookBits(13),t===Ge)return 1;if(e=t>>7?!(t>>9)&&t>>7?Je[(t>>1)-64]:Ye[t>>7]:He[t],e[0]>0)return this._eatBits(e[0]),e[1]}else{let t=this._findTableCode(2,6,Ye);if(t[0])return t[1];if(t=this._findTableCode(7,12,Je,64),t[0])return t[1];if(t=this._findTableCode(10,13,He),t[0])return t[1]}return x("bad black code"),this._eatBits(1),1}_lookBits(t){let e;for(;this.inputBits<t;){if(-1===(e=this.source.next()))return 0===this.inputBits?Ge:this.inputBuf<<t-this.inputBits&65535>>16-t;this.inputBuf=this.inputBuf<<8|e,this.inputBits+=8}return this.inputBuf>>this.inputBits-t&65535>>16-t}_eatBits(t){(this.inputBits-=t)<0&&(this.inputBits=0)}}class Ke extends Re{constructor(t,e,A){super(e),this.str=t,this.dict=t.dict,A instanceof Ct||(A=Ct.empty);const i={next:()=>t.getByte()};this.ccittFaxDecoder=new Te(i,{K:A.get("K"),EndOfLine:A.get("EndOfLine"),EncodedByteAlign:A.get("EncodedByteAlign"),Columns:A.get("Columns"),Rows:A.get("Rows"),EndOfBlock:A.get("EndOfBlock"),BlackIs1:A.get("BlackIs1")})}readBlock(){for(;!this.eof;){const t=this.ccittFaxDecoder.readNextChar();if(-1===t)return void(this.eof=!0);this.ensureBuffer(this.bufferLength+1),this.buffer[this.bufferLength++]=t}}}const qe=new Int32Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),Pe=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]),_e=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]),Oe=[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],We=[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 Ze extends Re{constructor(t,e){super(e),this.str=t,this.dict=t.dict;const A=t.getByte(),i=t.getByte();if(-1===A||-1===i)throw new q(`Invalid header in flate stream: ${A}, ${i}`);if(8!=(15&A))throw new q(`Unknown compression method in flate stream: ${A}, ${i}`);if(((A<<8)+i)%31!=0)throw new q(`Bad FCHECK in flate stream: ${A}, ${i}`);if(32&i)throw new q(`FDICT bit set in flate stream: ${A}, ${i}`);this.codeSize=0,this.codeBuf=0}async getImageData(t,e){const A=await this.asyncGetBytes();return A?.subarray(0,t)||this.getBytes(t)}async asyncGetBytes(){this.str.reset();const t=this.str.getBytes();try{const{readable:e,writable:A}=new DecompressionStream("deflate"),i=A.getWriter();i.write(t),i.close();const s=[];let a=0;for await(const t of e)s.push(t),a+=t.byteLength;const n=new Uint8Array(a);let r=0;for(const t of s)n.set(t,r),r+=t.byteLength;return n}catch{return this.str=new ne(t,2,t.length,this.str.dict),this.reset(),null}}get isAsync(){return!0}getBits(t){const e=this.str;let A,i=this.codeSize,s=this.codeBuf;for(;i<t;){if(-1===(A=e.getByte()))throw new q("Bad encoding in flate stream");s|=A<<i,i+=8}return A=s&(1<<t)-1,this.codeBuf=s>>t,this.codeSize=i-=t,A}getCode(t){const e=this.str,A=t[0],i=t[1];let s,a=this.codeSize,n=this.codeBuf;for(;a<i&&-1!==(s=e.getByte());)n|=s<<a,a+=8;const r=A[n&(1<<i)-1],o=r>>16,g=65535&r;if(o<1||a<o)throw new q("Bad encoding in flate stream");return this.codeBuf=n>>o,this.codeSize=a-o,g}generateHuffmanTable(t){const e=t.length;let A,i=0;for(A=0;A<e;++A)t[A]>i&&(i=t[A]);const s=1<<i,a=new Int32Array(s);for(let n=1,r=0,o=2;n<=i;++n,r<<=1,o<<=1)for(let i=0;i<e;++i)if(t[i]===n){let t=0,e=r;for(A=0;A<n;++A)t=t<<1|1&e,e>>=1;for(A=t;A<s;A+=o)a[A]=n<<16|i;++r}return[a,i]}#m(t){x(t),this.eof=!0}readBlock(){let t,e,A;const i=this.str;try{e=this.getBits(3)}catch(t){return void this.#m(t.message)}if(1&e&&(this.eof=!0),e>>=1,0===e){let e;if(-1===(e=i.getByte()))return void this.#m("Bad block header in flate stream");let A=e;if(-1===(e=i.getByte()))return void this.#m("Bad block header in flate stream");if(A|=e<<8,-1===(e=i.getByte()))return void this.#m("Bad block header in flate stream");let s=e;if(-1===(e=i.getByte()))return void this.#m("Bad block header in flate stream");if(s|=e<<8,s!==(65535&~A)&&(0!==A||0!==s))throw new q("Bad uncompressed block length in flate stream");this.codeBuf=0,this.codeSize=0;const a=this.bufferLength,n=a+A;if(t=this.ensureBuffer(n),this.bufferLength=n,0===A)-1===i.peekByte()&&(this.eof=!0);else{const e=i.getBytes(A);t.set(e,a),e.length<A&&(this.eof=!0)}return}let s,a;if(1===e)s=Oe,a=We;else{if(2!==e)throw new q("Unknown block type in flate stream");{const t=this.getBits(5)+257,e=this.getBits(5)+1,i=this.getBits(4)+4,n=new Uint8Array(qe.length);let r;for(r=0;r<i;++r)n[qe[r]]=this.getBits(3);const o=this.generateHuffmanTable(n);A=0,r=0;const g=t+e,c=new Uint8Array(g);let h,l,I;for(;r<g;){const t=this.getCode(o);if(16===t)h=2,l=3,I=A;else if(17===t)h=3,l=3,I=A=0;else{if(18!==t){c[r++]=A=t;continue}h=7,l=11,I=A=0}let e=this.getBits(h)+l;for(;e-- >0;)c[r++]=I}s=this.generateHuffmanTable(c.subarray(0,t)),a=this.generateHuffmanTable(c.subarray(t,g))}}t=this.buffer;let n=t?t.length:0,r=this.bufferLength;for(;;){let e=this.getCode(s);if(e<256){r+1>=n&&(t=this.ensureBuffer(r+1),n=t.length),t[r++]=e;continue}if(256===e)return void(this.bufferLength=r);e-=257,e=Pe[e];let i=e>>16;i>0&&(i=this.getBits(i)),A=(65535&e)+i,e=this.getCode(a),e=_e[e],i=e>>16,i>0&&(i=this.getBits(i));const o=(65535&e)+i;r+A>=n&&(t=this.ensureBuffer(r+A),n=t.length);for(let e=0;e<A;++e,++r)t[r]=t[r-o]}}}const je=[{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 Ve{constructor(t,e,A){this.data=t,this.bp=e,this.dataEnd=A,this.chigh=t[e],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 t=this.data;let e=this.bp;255===t[e]?t[e+1]>143?(this.clow+=65280,this.ct=8):(e++,this.clow+=t[e]<<9,this.ct=7,this.bp=e):(e++,this.clow+=e<this.dataEnd?t[e]<<8:65280,this.ct=8,this.bp=e),this.clow>65535&&(this.chigh+=this.clow>>16,this.clow&=65535)}readBit(t,e){let A=t[e]>>1,i=1&t[e];const s=je[A],a=s.qe;let n,r=this.a-a;if(this.chigh<a)r<a?(r=a,n=i,A=s.nmps):(r=a,n=1^i,1===s.switchFlag&&(i=n),A=s.nlps);else{if(this.chigh-=a,32768&r)return this.a=r,i;r<a?(n=1^i,1===s.switchFlag&&(i=n),A=s.nlps):(n=i,A=s.nmps)}do{0===this.ct&&this.byteIn(),r<<=1,this.chigh=this.chigh<<1&65535|this.clow>>15&1,this.clow=this.clow<<1&65535,this.ct--}while(!(32768&r));return this.a=r,t[e]=A<<1|i,n}}class Xe extends U{constructor(t){super(t,"Jbig2Error")}}class ze{getContexts(t){return t in this?this[t]:this[t]=new Int8Array(65536)}}class $e{constructor(t,e,A){this.data=t,this.start=e,this.end=A}get decoder(){return L(this,"decoder",new Ve(this.data,this.start,this.end))}get contextCache(){return L(this,"contextCache",new ze)}}function tA(t,e,A){const i=t.getContexts(e);let s=1;function a(t){let e=0;for(let a=0;a<t;a++){const t=A.readBit(i,s);s=s<256?s<<1|t:511&(s<<1|t)|256,e=e<<1|t}return e>>>0}const n=a(1),r=a(1)?a(1)?a(1)?a(1)?a(1)?a(32)+4436:a(12)+340:a(8)+84:a(6)+20:a(4)+4:a(2);let o;return 0===n?o=r:r>0&&(o=-r),o>=-2147483648&&o<=2147483647?o:null}function eA(t,e,A){const i=t.getContexts("IAID");let s=1;for(let t=0;t<A;t++)s=s<<1|e.readBit(i,s);return A<31?s&(1<<A)-1:2147483647&s}const AA=["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"],iA=[[{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}]],sA=[{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}]}],aA=[39717,1941,229,405],nA=[32,8];function rA(t,e,A,i,s,a,n,r){if(t)return bA(new mA(r.data,r.start,r.end),e,A,!1);if(0===i&&!a&&!s&&4===n.length&&3===n[0].x&&-1===n[0].y&&-3===n[1].x&&-1===n[1].y&&2===n[2].x&&-2===n[2].y&&-2===n[3].x&&-2===n[3].y)return function(t,e,A){const i=A.decoder,s=A.contextCache.getContexts("GB"),a=[];let n,r,o,g,c,h,l;for(r=0;r<e;r++)for(c=a[r]=new Uint8Array(t),h=r<1?c:a[r-1],l=r<2?c:a[r-2],n=l[0]<<13|l[1]<<12|l[2]<<11|h[0]<<7|h[1]<<6|h[2]<<5|h[3]<<4,o=0;o<t;o++)c[o]=g=i.readBit(s,n),n=(31735&n)<<1|(o+3<t?l[o+3]<<11:0)|(o+4<t?h[o+4]<<4:0)|g;return a}(e,A,r);const o=!!a,g=iA[i].concat(n);g.sort((function(t,e){return t.y-e.y||t.x-e.x}));const c=g.length,h=new Int8Array(c),l=new Int8Array(c),I=[];let C,B,d=0,u=0,Q=0,E=0;for(B=0;B<c;B++)h[B]=g[B].x,l[B]=g[B].y,u=Math.min(u,g[B].x),Q=Math.max(Q,g[B].x),E=Math.min(E,g[B].y),B<c-1&&g[B].y===g[B+1].y&&g[B].x===g[B+1].x-1?d|=1<<c-1-B:I.push(B);const f=I.length,p=new Int8Array(f),m=new Int8Array(f),y=new Uint16Array(f);for(C=0;C<f;C++)B=I[C],p[C]=g[B].x,m[C]=g[B].y,y[C]=1<<c-1-B;const w=-u,b=-E,D=e-Q,k=aA[i];let S=new Uint8Array(e);const F=[],R=r.decoder,x=r.contextCache.getContexts("GB");let N,v,G,M,L,U=0,H=0;for(let t=0;t<A;t++)if(s&&(U^=R.readBit(x,k),U))F.push(S);else for(S=new Uint8Array(S),F.push(S),N=0;N<e;N++){if(o&&a[t][N]){S[N]=0;continue}if(N>=w&&N<D&&t>=b)for(H=H<<1&d,B=0;B<f;B++)v=t+m[B],G=N+p[B],M=F[v][G],M&&(M=y[B],H|=M);else for(H=0,L=c-1,B=0;B<c;B++,L--)G=N+h[B],G>=0&&G<e&&(v=t+l[B],v>=0&&(M=F[v][G],M&&(H|=M<<L)));const A=R.readBit(x,H);S[N]=A}return F}function oA(t,e,A,i,s,a,n,r,o){let g=sA[A].coding;0===A&&(g=g.concat([r[0]]));const c=g.length,h=new Int32Array(c),l=new Int32Array(c);let I;for(I=0;I<c;I++)h[I]=g[I].x,l[I]=g[I].y;let C=sA[A].reference;0===A&&(C=C.concat([r[1]]));const B=C.length,d=new Int32Array(B),u=new Int32Array(B);for(I=0;I<B;I++)d[I]=C[I].x,u[I]=C[I].y;const Q=i[0].length,E=i.length,f=nA[A],p=[],m=o.decoder,y=o.contextCache.getContexts("GR");let w=0;for(let A=0;A<e;A++){if(n&&(w^=m.readBit(y,f),w))throw new Xe("prediction is not supported");const e=new Uint8Array(t);p.push(e);for(let n=0;n<t;n++){let r,o,g=0;for(I=0;I<c;I++)r=A+l[I],o=n+h[I],r<0||o<0||o>=t?g<<=1:g=g<<1|p[r][o];for(I=0;I<B;I++)r=A+u[I]-a,o=n+d[I]-s,r<0||r>=E||o<0||o>=Q?g<<=1:g=g<<1|i[r][o];const C=m.readBit(y,g);e[n]=C}}return p}function gA(t,e,A,i,s,a,n,r,o,g,c,h,l,I,C,B,d,u,Q){if(t&&e)throw new Xe("refinement with Huffman is not supported");const E=[];let f,p;for(f=0;f<i;f++){if(p=new Uint8Array(A),s)for(let t=0;t<A;t++)p[t]=s;E.push(p)}const m=d.decoder,y=d.contextCache;let w=t?-I.tableDeltaT.decode(Q):-tA(y,"IADT",m),b=0;for(f=0;f<a;){w+=t?I.tableDeltaT.decode(Q):tA(y,"IADT",m),b+=t?I.tableFirstS.decode(Q):tA(y,"IAFS",m);let i=b;for(;;){let s=0;n>1&&(s=t?Q.readBits(u):tA(y,"IAIT",m));const a=n*w+s,b=t?I.symbolIDTable.decode(Q):eA(y,m,o),D=e&&(t?Q.readBit():tA(y,"IARI",m));let k=r[b],S=k[0].length,F=k.length;if(D){const t=tA(y,"IARDW",m),e=tA(y,"IARDH",m);S+=t,F+=e,k=oA(S,F,C,k,(t>>1)+tA(y,"IARDX",m),(e>>1)+tA(y,"IARDY",m),!1,B,d)}let R=0;g?1&h?R=F-1:i+=F-1:h>1?i+=S-1:R=S-1;const x=a-(1&h?0:F-1),N=i-(2&h?S-1:0);let v,G,M;if(g)for(v=0;v<F;v++){if(p=E[N+v],!p)continue;M=k[v];const t=Math.min(A-x,S);switch(l){case 0:for(G=0;G<t;G++)p[x+G]|=M[G];break;case 2:for(G=0;G<t;G++)p[x+G]^=M[G];break;default:throw new Xe(`operator ${l} is not supported`)}}else for(G=0;G<F;G++)if(p=E[x+G],p)switch(M=k[G],l){case 0:for(v=0;v<S;v++)p[N+v]|=M[v];break;case 2:for(v=0;v<S;v++)p[N+v]^=M[v];break;default:throw new Xe(`operator ${l} is not supported`)}f++;const L=t?I.tableDeltaS.decode(Q):tA(y,"IADS",m);if(null===L)break;i+=R+L+c}}return E}function cA(t,e){const A={};A.number=Lt(t,e);const i=t[e+4],s=63&i;if(!AA[s])throw new Xe("invalid segment type: "+s);A.type=s,A.typeName=AA[s],A.deferredNonRetain=!!(128&i);const a=!!(64&i),n=t[e+5];let r=n>>5&7;const o=[31&n];let g=e+6;if(7===n){r=536870911&Lt(t,g-1),g+=3;let e=r+7>>3;for(o[0]=t[g++];--e>0;)o.push(t[g++])}else if(5===n||6===n)throw new Xe("invalid referred-to flags");A.retainBits=o;let c=4;A.number<=256?c=1:A.number<=65536&&(c=2);const h=[];let l,I;for(l=0;l<r;l++){let e;e=1===c?t[g]:2===c?Mt(t,g):Lt(t,g),h.push(e),g+=c}if(A.referredTo=h,a?(A.pageAssociation=Lt(t,g),g+=4):A.pageAssociation=t[g++],A.length=Lt(t,g),g+=4,4294967295===A.length){if(38!==s)throw new Xe("invalid unknown segment length");{const e=lA(t,g),i=!!(1&t[g+IA]),s=6,a=new Uint8Array(s);for(i||(a[0]=255,a[1]=172),a[2]=e.height>>>24&255,a[3]=e.height>>16&255,a[4]=e.height>>8&255,a[5]=255&e.height,l=g,I=t.length;l<I;l++){let e=0;for(;e<s&&a[e]===t[l+e];)e++;if(e===s){A.length=l+s;break}}if(4294967295===A.length)throw new Xe("segment end was not found")}}return A.headerEnd=g,A}function hA(t,e,A,i){const s=[];let a=A;for(;a<i;){const A=cA(e,a);a=A.headerEnd;const i={header:A,data:e};if(t.randomAccess||(i.start=a,a+=A.length,i.end=a),s.push(i),51===A.type)break}if(t.randomAccess)for(let t=0,e=s.length;t<e;t++)s[t].start=a,a+=s[t].header.length,s[t].end=a;return s}function lA(t,e){return{width:Lt(t,e),height:Lt(t,e+4),x:Lt(t,e+8),y:Lt(t,e+12),combinationOperator:7&t[e+16]}}const IA=17;function CA(t,e){const A=t.header,i=t.data,s=t.end;let a,n,r,o,g=t.start;switch(A.type){case 0:const t={},e=Mt(i,g);if(t.huffman=!!(1&e),t.refinement=!!(2&e),t.huffmanDHSelector=e>>2&3,t.huffmanDWSelector=e>>4&3,t.bitmapSizeSelector=e>>6&1,t.aggregationInstancesSelector=e>>7&1,t.bitmapCodingContextUsed=!!(256&e),t.bitmapCodingContextRetained=!!(512&e),t.template=e>>10&3,t.refinementTemplate=e>>12&1,g+=2,!t.huffman){for(o=0===t.template?4:1,n=[],r=0;r<o;r++)n.push({x:Gt(i,g),y:Gt(i,g+1)}),g+=2;t.at=n}if(t.refinement&&!t.refinementTemplate){for(n=[],r=0;r<2;r++)n.push({x:Gt(i,g),y:Gt(i,g+1)}),g+=2;t.refinementAt=n}t.numberOfExportedSymbols=Lt(i,g),g+=4,t.numberOfNewSymbols=Lt(i,g),g+=4,a=[t,A.number,A.referredTo,i,g,s];break;case 6:case 7:const c={};c.info=lA(i,g),g+=IA;const h=Mt(i,g);if(g+=2,c.huffman=!!(1&h),c.refinement=!!(2&h),c.logStripSize=h>>2&3,c.stripSize=1<<c.logStripSize,c.referenceCorner=h>>4&3,c.transposed=!!(64&h),c.combinationOperator=h>>7&3,c.defaultPixelValue=h>>9&1,c.dsOffset=h<<17>>27,c.refinementTemplate=h>>15&1,c.huffman){const t=Mt(i,g);g+=2,c.huffmanFS=3&t,c.huffmanDS=t>>2&3,c.huffmanDT=t>>4&3,c.huffmanRefinementDW=t>>6&3,c.huffmanRefinementDH=t>>8&3,c.huffmanRefinementDX=t>>10&3,c.huffmanRefinementDY=t>>12&3,c.huffmanRefinementSizeSelector=!!(16384&t)}if(c.refinement&&!c.refinementTemplate){for(n=[],r=0;r<2;r++)n.push({x:Gt(i,g),y:Gt(i,g+1)}),g+=2;c.refinementAt=n}c.numberOfSymbolInstances=Lt(i,g),g+=4,a=[c,A.referredTo,i,g,s];break;case 16:const l={},I=i[g++];l.mmr=!!(1&I),l.template=I>>1&3,l.patternWidth=i[g++],l.patternHeight=i[g++],l.maxPatternIndex=Lt(i,g),g+=4,a=[l,A.number,i,g,s];break;case 22:case 23:const C={};C.info=lA(i,g),g+=IA;const B=i[g++];C.mmr=!!(1&B),C.template=B>>1&3,C.enableSkip=!!(8&B),C.combinationOperator=B>>4&7,C.defaultPixelValue=B>>7&1,C.gridWidth=Lt(i,g),g+=4,C.gridHeight=Lt(i,g),g+=4,C.gridOffsetX=4294967295&Lt(i,g),g+=4,C.gridOffsetY=4294967295&Lt(i,g),g+=4,C.gridVectorX=Mt(i,g),g+=2,C.gridVectorY=Mt(i,g),g+=2,a=[C,A.referredTo,i,g,s];break;case 38:case 39:const d={};d.info=lA(i,g),g+=IA;const u=i[g++];if(d.mmr=!!(1&u),d.template=u>>1&3,d.prediction=!!(8&u),!d.mmr){for(o=0===d.template?4:1,n=[],r=0;r<o;r++)n.push({x:Gt(i,g),y:Gt(i,g+1)}),g+=2;d.at=n}a=[d,i,g,s];break;case 48:const Q={width:Lt(i,g),height:Lt(i,g+4),resolutionX:Lt(i,g+8),resolutionY:Lt(i,g+12)};4294967295===Q.height&&delete Q.height;const E=i[g+16];Mt(i,g+17),Q.lossless=!!(1&E),Q.refinement=!!(2&E),Q.defaultPixelValue=E>>2&1,Q.combinationOperator=E>>3&3,Q.requiresBuffer=!!(32&E),Q.combinationOperatorOverride=!!(64&E),a=[Q];break;case 49:case 50:case 51:case 62:break;case 53:a=[A.number,i,g,s];break;default:throw new Xe(`segment type ${A.typeName}(${A.type}) is not implemented`)}const c="on"+A.typeName;c in e&&e[c].apply(e,a)}function BA(t,e){for(let A=0,i=t.length;A<i;A++)CA(t[A],e)}class dA{onPageInformation(t){this.currentPageInfo=t;const e=t.width+7>>3,A=new Uint8ClampedArray(e*t.height);t.defaultPixelValue&&A.fill(255),this.buffer=A}drawBitmap(t,e){const A=this.currentPageInfo,i=t.width,s=t.height,a=A.width+7>>3,n=A.combinationOperatorOverride?t.combinationOperator:A.combinationOperator,r=this.buffer,o=128>>(7&t.x);let g,c,h,l,I=t.y*a+(t.x>>3);switch(n){case 0:for(g=0;g<s;g++){for(h=o,l=I,c=0;c<i;c++)e[g][c]&&(r[l]|=h),h>>=1,h||(h=128,l++);I+=a}break;case 2:for(g=0;g<s;g++){for(h=o,l=I,c=0;c<i;c++)e[g][c]&&(r[l]^=h),h>>=1,h||(h=128,l++);I+=a}break;default:throw new Xe(`operator ${n} is not supported`)}}onImmediateGenericRegion(t,e,A,i){const s=t.info,a=new $e(e,A,i),n=rA(t.mmr,s.width,s.height,t.template,t.prediction,null,t.at,a);this.drawBitmap(s,n)}onImmediateLosslessGenericRegion(){this.onImmediateGenericRegion(...arguments)}onSymbolDictionary(t,e,A,i,s,a){let n,r;t.huffman&&(n=function(t,e,A){let i,s,a,n,r=0;switch(t.huffmanDHSelector){case 0:case 1:i=pA(t.huffmanDHSelector+4);break;case 3:i=yA(r,e,A),r++;break;default:throw new Xe("invalid Huffman DH selector")}switch(t.huffmanDWSelector){case 0:case 1:s=pA(t.huffmanDWSelector+2);break;case 3:s=yA(r,e,A),r++;break;default:throw new Xe("invalid Huffman DW selector")}return t.bitmapSizeSelector?(a=yA(r,e,A),r++):a=pA(1),n=t.aggregationInstancesSelector?yA(r,e,A):pA(1),{tableDeltaHeight:i,tableDeltaWidth:s,tableBitmapSize:a,tableAggregateInstances:n}}(t,A,this.customTables),r=new mA(i,s,a));let o=this.symbols;o||(this.symbols=o={});const g=[];for(const t of A){const e=o[t];e&&g.push(...e)}const c=new $e(i,s,a);o[e]=function(t,e,A,i,s,a,n,r,o,g,c,h){if(t&&e)throw new Xe("symbol refinement with Huffman is not supported");const l=[];let I=0,C=vt(A.length+i);const B=c.decoder,d=c.contextCache;let u,Q;for(t&&(u=pA(1),Q=[],C=Math.max(C,1));l.length<i;){I+=t?a.tableDeltaHeight.decode(h):tA(d,"IADH",B);let i=0,s=0;const u=t?Q.length:0;for(;;){const u=t?a.tableDeltaWidth.decode(h):tA(d,"IADW",B);if(null===u)break;let E;if(i+=u,s+=i,e){const s=tA(d,"IAAI",B);if(s>1)E=gA(t,e,i,I,0,s,1,A.concat(l),C,0,0,1,0,a,o,g,c,0,h);else{const t=eA(d,B,C),e=tA(d,"IARDX",B),s=tA(d,"IARDY",B);E=oA(i,I,o,t<A.length?A[t]:l[t-A.length],e,s,!1,g,c)}l.push(E)}else t?Q.push(i):(E=rA(!1,i,I,n,!1,null,r,c),l.push(E))}if(t&&!e){const t=a.tableBitmapSize.decode(h);let e;if(h.byteAlign(),0===t)e=wA(h,s,I);else{const A=h.end,i=h.position+t;h.end=i,e=bA(h,s,I,!1),h.end=A,h.position=i}const A=Q.length;if(u===A-1)l.push(e);else{let t,i,s,a,n,r=0;for(t=u;t<A;t++){for(a=Q[t],s=r+a,n=[],i=0;i<I;i++)n.push(e[i].subarray(r,s));l.push(n),r=s}}}}const E=[],f=[];let p,m,y=!1;const w=A.length+i;for(;f.length<w;){let e=t?u.decode(h):tA(d,"IAEX",B);for(;e--;)f.push(y);y=!y}for(p=0,m=A.length;p<m;p++)f[p]&&E.push(A[p]);for(let t=0;t<i;p++,t++)f[p]&&E.push(l[t]);return E}(t.huffman,t.refinement,g,t.numberOfNewSymbols,t.numberOfExportedSymbols,n,t.template,t.at,t.refinementTemplate,t.refinementAt,c,r)}onImmediateTextRegion(t,e,A,i,s){const a=t.info;let n,r;const o=this.symbols,g=[];for(const t of e){const e=o[t];e&&g.push(...e)}const c=vt(g.length);t.huffman&&(r=new mA(A,i,s),n=function(t,e,A,i,s){const a=[];for(let t=0;t<=34;t++){const e=s.readBits(4);a.push(new uA([t,e,0,0]))}const n=new EA(a,!1);a.length=0;for(let t=0;t<i;){const e=n.decode(s);if(e>=32){let A,i,n;switch(e){case 32:if(0===t)throw new Xe("no previous value in symbol ID table");i=s.readBits(2)+3,A=a[t-1].prefixLength;break;case 33:i=s.readBits(3)+3,A=0;break;case 34:i=s.readBits(7)+11,A=0;break;default:throw new Xe("invalid code length in symbol ID table")}for(n=0;n<i;n++)a.push(new uA([t,A,0,0])),t++}else a.push(new uA([t,e,0,0])),t++}s.byteAlign();const r=new EA(a,!1);let o,g,c,h=0;switch(t.huffmanFS){case 0:case 1:o=pA(t.huffmanFS+6);break;case 3:o=yA(h,e,A),h++;break;default:throw new Xe("invalid Huffman FS selector")}switch(t.huffmanDS){case 0:case 1:case 2:g=pA(t.huffmanDS+8);break;case 3:g=yA(h,e,A),h++;break;default:throw new Xe("invalid Huffman DS selector")}switch(t.huffmanDT){case 0:case 1:case 2:c=pA(t.huffmanDT+11);break;case 3:c=yA(h,e,A),h++;break;default:throw new Xe("invalid Huffman DT selector")}if(t.refinement)throw new Xe("refinement with Huffman is not supported");return{symbolIDTable:r,tableFirstS:o,tableDeltaS:g,tableDeltaT:c}}(t,e,this.customTables,g.length,r));const h=new $e(A,i,s),l=gA(t.huffman,t.refinement,a.width,a.height,t.defaultPixelValue,t.numberOfSymbolInstances,t.stripSize,g,c,t.transposed,t.dsOffset,t.referenceCorner,t.combinationOperator,n,t.refinementTemplate,t.refinementAt,h,t.logStripSize,r);this.drawBitmap(a,l)}onImmediateLosslessTextRegion(){this.onImmediateTextRegion(...arguments)}onPatternDictionary(t,e,A,i,s){let a=this.patterns;a||(this.patterns=a={});const n=new $e(A,i,s);a[e]=function(t,e,A,i,s,a){const n=[];t||(n.push({x:-e,y:0}),0===s&&n.push({x:-3,y:-1},{x:2,y:-2},{x:-2,y:-2}));const r=rA(t,(i+1)*e,A,s,!1,null,n,a),o=[];for(let t=0;t<=i;t++){const i=[],s=e*t,a=s+e;for(let t=0;t<A;t++)i.push(r[t].subarray(s,a));o.push(i)}return o}(t.mmr,t.patternWidth,t.patternHeight,t.maxPatternIndex,t.template,n)}onImmediateHalftoneRegion(t,e,A,i,s){const a=this.patterns[e[0]],n=t.info,r=new $e(A,i,s),o=function(t,e,A,i,s,a,n,r,o,g,c,h,l,I,C){if(n)throw new Xe("skip is not supported");if(0!==r)throw new Xe(`operator "${r}" is not supported in halftone region`);const B=[];let d,u,Q;for(d=0;d<s;d++){if(Q=new Uint8Array(i),a)for(u=0;u<i;u++)Q[u]=a;B.push(Q)}const E=e.length,f=e[0],p=f[0].length,m=f.length,y=vt(E),w=[];t||(w.push({x:A<=1?3:2,y:-1}),0===A&&w.push({x:-3,y:-1},{x:2,y:-2},{x:-2,y:-2}));const b=[];let D,k,S,F,R,x,N,v,G,M,L;for(t&&(D=new mA(C.data,C.start,C.end)),d=y-1;d>=0;d--)k=t?bA(D,o,g,!0):rA(!1,o,g,A,!1,null,w,C),b[d]=k;for(S=0;S<g;S++)for(F=0;F<o;F++){for(R=0,x=0,u=y-1;u>=0;u--)R^=b[u][S][F],x|=R<<u;if(N=e[x],v=c+S*I+F*l>>8,G=h+S*l-F*I>>8,v>=0&&v+p<=i&&G>=0&&G+m<=s)for(d=0;d<m;d++)for(L=B[G+d],M=N[d],u=0;u<p;u++)L[v+u]|=M[u];else{let t,e;for(d=0;d<m;d++)if(e=G+d,!(e<0||e>=s))for(L=B[e],M=N[d],u=0;u<p;u++)t=v+u,t>=0&&t<i&&(L[t]|=M[u])}}return B}(t.mmr,a,t.template,n.width,n.height,t.defaultPixelValue,t.enableSkip,t.combinationOperator,t.gridWidth,t.gridHeight,t.gridOffsetX,t.gridOffsetY,t.gridVectorX,t.gridVectorY,r);this.drawBitmap(n,o)}onImmediateLosslessHalftoneRegion(){this.onImmediateHalftoneRegion(...arguments)}onTables(t,e,A,i){let s=this.customTables;s||(this.customTables=s={}),s[t]=function(t,e,A){const i=t[e],s=4294967295&Lt(t,e+1),a=4294967295&Lt(t,e+5),n=new mA(t,e+9,A),r=1+(i>>1&7),o=1+(i>>4&7),g=[];let c,h,l=s;do{c=n.readBits(r),h=n.readBits(o),g.push(new uA([l,c,h,0])),l+=1<<h}while(l<a);return c=n.readBits(r),g.push(new uA([s-1,c,32,0,"lower"])),c=n.readBits(r),g.push(new uA([a,c,32,0])),1&i&&(c=n.readBits(r),g.push(new uA([c,0]))),new EA(g,!1)}(e,A,i)}}class uA{constructor(t){2===t.length?(this.isOOB=!0,this.rangeLow=0,this.prefixLength=t[0],this.rangeLength=0,this.prefixCode=t[1],this.isLowerRange=!1):(this.isOOB=!1,this.rangeLow=t[0],this.prefixLength=t[1],this.rangeLength=t[2],this.prefixCode=t[3],this.isLowerRange="lower"===t[4])}}class QA{constructor(t){this.children=[],t?(this.isLeaf=!0,this.rangeLength=t.rangeLength,this.rangeLow=t.rangeLow,this.isLowerRange=t.isLowerRange,this.isOOB=t.isOOB):this.isLeaf=!1}buildTree(t,e){const A=t.prefixCode>>e&1;if(e<=0)this.children[A]=new QA(t);else{let i=this.children[A];i||(this.children[A]=i=new QA(null)),i.buildTree(t,e-1)}}decodeNode(t){if(this.isLeaf){if(this.isOOB)return null;const e=t.readBits(this.rangeLength);return this.rangeLow+(this.isLowerRange?-e:e)}const e=this.children[t.readBit()];if(!e)throw new Xe("invalid Huffman data");return e.decodeNode(t)}}class EA{constructor(t,e){e||this.assignPrefixCodes(t),this.rootNode=new QA(null);for(let e=0,A=t.length;e<A;e++){const A=t[e];A.prefixLength>0&&this.rootNode.buildTree(A,A.prefixLength-1)}}decode(t){return this.rootNode.decodeNode(t)}assignPrefixCodes(t){const e=t.length;let A=0;for(let i=0;i<e;i++)A=Math.max(A,t[i].prefixLength);const i=new Uint32Array(A+1);for(let A=0;A<e;A++)i[t[A].prefixLength]++;let s,a,n,r=1,o=0;for(i[0]=0;r<=A;){for(o=o+i[r-1]<<1,s=o,a=0;a<e;)n=t[a],n.prefixLength===r&&(n.prefixCode=s,s++),a++;r++}}}const fA={};function pA(t){let e,A=fA[t];if(A)return A;switch(t){case 1:e=[[0,1,4,0],[16,2,8,2],[272,3,16,6],[65808,3,32,7]];break;case 2:e=[[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:e=[[-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:e=[[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:e=[[-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:e=[[-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:e=[[-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:e=[[-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:e=[[-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:e=[[-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:e=[[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:e=[[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:e=[[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:e=[[-2,3,0,4],[-1,3,0,5],[0,1,0,0],[1,3,0,6],[2,3,0,7]];break;case 15:e=[[-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 Xe(`standard table B.${t} does not exist`)}for(let t=0,A=e.length;t<A;t++)e[t]=new uA(e[t]);return A=new EA(e,!0),fA[t]=A,A}class mA{constructor(t,e,A){this.data=t,this.start=e,this.end=A,this.position=e,this.shift=-1,this.currentByte=0}readBit(){if(this.shift<0){if(this.position>=this.end)throw new Xe("end of data while reading bit");this.currentByte=this.data[this.position++],this.shift=7}const t=this.currentByte>>this.shift&1;return this.shift--,t}readBits(t){let e,A=0;for(e=t-1;e>=0;e--)A|=this.readBit()<<e;return A}byteAlign(){this.shift=-1}next(){return this.position>=this.end?-1:this.data[this.position++]}}function yA(t,e,A){let i=0;for(let s=0,a=e.length;s<a;s++){const a=A[e[s]];if(a){if(t===i)return a;i++}}throw new Xe("can't find custom Huffman table")}function wA(t,e,A){const i=[];for(let s=0;s<A;s++){const A=new Uint8Array(e);i.push(A);for(let i=0;i<e;i++)A[i]=t.readBit();t.byteAlign()}return i}function bA(t,e,A,i){const s=new Te(t,{K:-1,Columns:e,Rows:A,BlackIs1:!0,EndOfBlock:i}),a=[];let n,r=!1;for(let t=0;t<A;t++){const t=new Uint8Array(e);a.push(t);let A=-1;for(let i=0;i<e;i++)A<0&&(n=s.readNextChar(),-1===n&&(n=0,r=!0),A=7),t[i]=n>>A&1,A--}if(i&&!r){const t=5;for(let e=0;e<t&&-1!==s.readNextChar();e++);}return a}class DA{parseChunks(t){return function(t){const e=new dA;for(let A=0,i=t.length;A<i;A++){const i=t[A];BA(hA({},i.data,i.start,i.end),e)}return e.buffer}(t)}parse(t){throw new Error("Not implemented: Jbig2Image.parse")}}class kA extends Re{constructor(t,e,A){super(e),this.stream=t,this.dict=t.dict,this.maybeLength=e,this.params=A}get bytes(){return L(this,"bytes",this.stream.getBytes(this.maybeLength))}ensureBuffer(t){}readBlock(){this.decodeImage()}decodeImage(t){if(this.eof)return this.buffer;t||=this.bytes;const e=new DA,A=[];if(this.params instanceof Ct){const t=this.params.get("JBIG2Globals");if(t instanceof mt){const e=t.getBytes();A.push({data:e,start:0,end:e.length})}}A.push({data:t,start:0,end:t.length});const i=e.parseChunks(A),s=i.length;for(let t=0;t<s;t++)i[t]^=255;return this.buffer=i,this.bufferLength=s,this.eof=!0,this.buffer}get canAsyncDecodeImageFromBuffer(){return this.stream.isAsync}}function SA({src:t,srcPos:e=0,dest:A,width:i,height:s,nonBlackColor:a=4294967295,inverseDecode:n=!1}){const r=j.isLittleEndian?4278190080:255,[o,g]=n?[a,r]:[r,a],c=i>>3,h=7&i,l=t.length;A=new Uint32Array(A.buffer);let I=0;for(let i=0;i<s;i++){for(const i=e+c;e<i;e++){const i=e<l?t[e]:255;A[I++]=128&i?g:o,A[I++]=64&i?g:o,A[I++]=32&i?g:o,A[I++]=16&i?g:o,A[I++]=8&i?g:o,A[I++]=4&i?g:o,A[I++]=2&i?g:o,A[I++]=1&i?g:o}if(0===h)continue;const i=e<l?t[e++]:255;for(let t=0;t<h;t++)A[I++]=i&1<<7-t?g:o}return{srcPos:e,destPos:I}}class FA extends U{constructor(t){super(t,"JpegError")}}class RA extends U{constructor(t,e){super(t,"DNLMarkerError"),this.scanLines=e}}class xA extends U{constructor(t){super(t,"EOIMarkerError")}}const NA=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]),vA=4017,GA=799,MA=3406,LA=2276,UA=1567,HA=3784,JA=5793,YA=2896;function TA(t,e){let A,i,s=0,a=16;for(;a>0&&!t[a-1];)a--;const n=[{children:[],index:0}];let r,o=n[0];for(A=0;A<a;A++){for(i=0;i<t[A];i++){for(o=n.pop(),o.children[o.index]=e[s];o.index>0;)o=n.pop();for(o.index++,n.push(o);n.length<=A;)n.push(r={children:[],index:0}),o.children[o.index]=r.children,o=r;s++}A+1<a&&(n.push(r={children:[],index:0}),o.children[o.index]=r.children,o=r)}return n[0].children}function KA(t,e,A){return 64*((t.blocksPerLine+1)*e+A)}function qA(t,e,A,i,s,a,n,r,o,g=!1){const c=A.mcusPerLine,h=A.progressive,l=e;let I=0,C=0;function B(){if(C>0)return C--,I>>C&1;if(I=t[e++],255===I){const i=t[e++];if(i){if(220===i&&g){const i=Mt(t,e+=2);if(e+=2,i>0&&i!==A.scanLines)throw new RA("Found DNL marker (0xFFDC) while parsing scan data",i)}else if(217===i){if(g){const t=m*(8===A.precision?8:0);if(t>0&&Math.round(A.scanLines/t)>=5)throw new RA("Found EOI marker (0xFFD9) while parsing scan data, possibly caused by incorrect `scanLines` parameter",t)}throw new xA("Found EOI marker (0xFFD9) while parsing scan data")}throw new FA(`unexpected marker ${(I<<8|i).toString(16)}`)}}return C=7,I>>>7}function d(t){let e=t;for(;;){switch(e=e[B()],typeof e){case"number":return e;case"object":continue}throw new FA("invalid huffman sequence")}}function u(t){let e=0;for(;t>0;)e=e<<1|B(),t--;return e}function Q(t){if(1===t)return 1===B()?1:-1;const e=u(t);return e>=1<<t-1?e:e+(-1<<t)+1}let E,f=0,p=0,m=0;function y(t,e,A,i,s){const a=A%c;m=(A/c|0)*t.v+i;const n=a*t.h+s;e(t,KA(t,m,n))}function w(t,e,A){m=A/t.blocksPerLine|0;const i=A%t.blocksPerLine;e(t,KA(t,m,i))}const b=i.length;let D,k,S,F,R,x;x=h?0===a?0===r?function(t,e){const A=d(t.huffmanTableDC),i=0===A?0:Q(A)<<o;t.blockData[e]=t.pred+=i}:function(t,e){t.blockData[e]|=B()<<o}:0===r?function(t,e){if(f>0)return void f--;let A=a;const i=n;for(;A<=i;){const i=d(t.huffmanTableAC),s=15&i,a=i>>4;if(0===s){if(a<15){f=u(a)+(1<<a)-1;break}A+=16;continue}A+=a;const n=NA[A];t.blockData[e+n]=Q(s)*(1<<o),A++}}:function(t,e){let A=a;const i=n;let s,r,g=0;for(;A<=i;){const i=e+NA[A],a=t.blockData[i]<0?-1:1;switch(p){case 0:if(r=d(t.huffmanTableAC),s=15&r,g=r>>4,0===s)g<15?(f=u(g)+(1<<g),p=4):(g=16,p=1);else{if(1!==s)throw new FA("invalid ACn encoding");E=Q(s),p=g?2:3}continue;case 1:case 2:t.blockData[i]?t.blockData[i]+=a*(B()<<o):(g--,0===g&&(p=2===p?3:0));break;case 3:t.blockData[i]?t.blockData[i]+=a*(B()<<o):(t.blockData[i]=E<<o,p=0);break;case 4:t.blockData[i]&&(t.blockData[i]+=a*(B()<<o))}A++}4===p&&(f--,0===f&&(p=0))}:function(t,e){const A=d(t.huffmanTableDC),i=0===A?0:Q(A);t.blockData[e]=t.pred+=i;let s=1;for(;s<64;){const A=d(t.huffmanTableAC),i=15&A,a=A>>4;if(0===i){if(a<15)break;s+=16;continue}s+=a;const n=NA[s];t.blockData[e+n]=Q(i),s++}};let v,G=0;const M=1===b?i[0].blocksPerLine*i[0].blocksPerColumn:c*A.mcusPerColumn;let L,U;for(;G<=M;){const A=s?Math.min(M-G,s):M;if(A>0){for(k=0;k<b;k++)i[k].pred=0;if(f=0,1===b)for(D=i[0],R=0;R<A;R++)w(D,x,G),G++;else for(R=0;R<A;R++){for(k=0;k<b;k++)for(D=i[k],L=D.h,U=D.v,S=0;S<U;S++)for(F=0;F<L;F++)y(D,x,G,S,F);G++}}if(C=0,v=OA(t,e),!v)break;if(v.invalid&&(N(`decodeScan - ${A>0?"unexpected":"excessive"} MCU data, current marker is: ${v.invalid}`),e=v.offset),!(v.marker>=65488&&v.marker<=65495))break;e+=2}return e-l}function PA(t,e,A){const i=t.quantizationTable,s=t.blockData;let a,n,r,o,g,c,h,l,I,C,B,d,u,Q,E,f,p;if(!i)throw new FA("missing required Quantization Table.");for(let t=0;t<64;t+=8)I=s[e+t],C=s[e+t+1],B=s[e+t+2],d=s[e+t+3],u=s[e+t+4],Q=s[e+t+5],E=s[e+t+6],f=s[e+t+7],I*=i[t],C|B|d|u|Q|E|f?(C*=i[t+1],B*=i[t+2],d*=i[t+3],u*=i[t+4],Q*=i[t+5],E*=i[t+6],f*=i[t+7],a=JA*I+128>>8,n=JA*u+128>>8,r=B,o=E,g=YA*(C-f)+128>>8,l=YA*(C+f)+128>>8,c=d<<4,h=Q<<4,a=a+n+1>>1,n=a-n,p=r*HA+o*UA+128>>8,r=r*UA-o*HA+128>>8,o=p,g=g+h+1>>1,h=g-h,l=l+c+1>>1,c=l-c,a=a+o+1>>1,o=a-o,n=n+r+1>>1,r=n-r,p=g*LA+l*MA+2048>>12,g=g*MA-l*LA+2048>>12,l=p,p=c*GA+h*vA+2048>>12,c=c*vA-h*GA+2048>>12,h=p,A[t]=a+l,A[t+7]=a-l,A[t+1]=n+h,A[t+6]=n-h,A[t+2]=r+c,A[t+5]=r-c,A[t+3]=o+g,A[t+4]=o-g):(p=JA*I+512>>10,A[t]=p,A[t+1]=p,A[t+2]=p,A[t+3]=p,A[t+4]=p,A[t+5]=p,A[t+6]=p,A[t+7]=p);for(let t=0;t<8;++t)I=A[t],C=A[t+8],B=A[t+16],d=A[t+24],u=A[t+32],Q=A[t+40],E=A[t+48],f=A[t+56],C|B|d|u|Q|E|f?(a=JA*I+2048>>12,n=JA*u+2048>>12,r=B,o=E,g=YA*(C-f)+2048>>12,l=YA*(C+f)+2048>>12,c=d,h=Q,a=4112+(a+n+1>>1),n=a-n,p=r*HA+o*UA+2048>>12,r=r*UA-o*HA+2048>>12,o=p,g=g+h+1>>1,h=g-h,l=l+c+1>>1,c=l-c,a=a+o+1>>1,o=a-o,n=n+r+1>>1,r=n-r,p=g*LA+l*MA+2048>>12,g=g*MA-l*LA+2048>>12,l=p,p=c*GA+h*vA+2048>>12,c=c*vA-h*GA+2048>>12,h=p,I=a+l,f=a-l,C=n+h,E=n-h,B=r+c,Q=r-c,d=o+g,u=o-g,I<16?I=0:I>=4080?I=255:I>>=4,C<16?C=0:C>=4080?C=255:C>>=4,B<16?B=0:B>=4080?B=255:B>>=4,d<16?d=0:d>=4080?d=255:d>>=4,u<16?u=0:u>=4080?u=255:u>>=4,Q<16?Q=0:Q>=4080?Q=255:Q>>=4,E<16?E=0:E>=4080?E=255:E>>=4,f<16?f=0:f>=4080?f=255:f>>=4,s[e+t]=I,s[e+t+8]=C,s[e+t+16]=B,s[e+t+24]=d,s[e+t+32]=u,s[e+t+40]=Q,s[e+t+48]=E,s[e+t+56]=f):(p=JA*I+8192>>14,p=p<-2040?0:p>=2024?255:p+2056>>4,s[e+t]=p,s[e+t+8]=p,s[e+t+16]=p,s[e+t+24]=p,s[e+t+32]=p,s[e+t+40]=p,s[e+t+48]=p,s[e+t+56]=p)}function _A(t,e){const A=e.blocksPerLine,i=e.blocksPerColumn,s=new Int16Array(64);for(let t=0;t<i;t++)for(let i=0;i<A;i++)PA(e,KA(e,t,i),s);return e.blockData}function OA(t,e,A=e){const i=t.length-1;let s=A<e?A:e;if(e>=i)return null;const a=Mt(t,e);if(a>=65472&&a<=65534)return{invalid:null,marker:a,offset:e};let n=Mt(t,s);for(;!(n>=65472&&n<=65534);){if(++s>=i)return null;n=Mt(t,s)}return{invalid:a.toString(16),marker:n,offset:s}}class WA{constructor({decodeTransform:t=null,colorTransform:e=-1}={}){this._decodeTransform=t,this._colorTransform=e}parse(t,{dnlScanLines:e=null}={}){function A(){const e=Mt(t,n);n+=2;let A=n+e-2;const i=OA(t,A,n);i?.invalid&&(N("readDataBlock - incorrect length, current marker is: "+i.invalid),A=i.offset);const s=t.subarray(n,A);return n+=s.length,s}function i(t){const e=Math.ceil(t.samplesPerLine/8/t.maxH),A=Math.ceil(t.scanLines/8/t.maxV);for(const i of t.components){const s=Math.ceil(Math.ceil(t.samplesPerLine/8)*i.h/t.maxH),a=Math.ceil(Math.ceil(t.scanLines/8)*i.v/t.maxV),n=e*i.h,r=A*i.v*64*(n+1);i.blockData=new Int16Array(r),i.blocksPerLine=s,i.blocksPerColumn=a}t.mcusPerLine=e,t.mcusPerColumn=A}let s,a,n=0,r=null,o=null,g=0;const c=[],h=[],l=[];let I=Mt(t,n);if(n+=2,65496!==I)throw new FA("SOI not found");I=Mt(t,n),n+=2;t:for(;65497!==I;){let C,B,d;switch(I){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 u=A();65504===I&&74===u[0]&&70===u[1]&&73===u[2]&&70===u[3]&&0===u[4]&&(r={version:{major:u[5],minor:u[6]},densityUnits:u[7],xDensity:u[8]<<8|u[9],yDensity:u[10]<<8|u[11],thumbWidth:u[12],thumbHeight:u[13],thumbData:u.subarray(14,14+3*u[12]*u[13])}),65518===I&&65===u[0]&&100===u[1]&&111===u[2]&&98===u[3]&&101===u[4]&&(o={version:u[5]<<8|u[6],flags0:u[7]<<8|u[8],flags1:u[9]<<8|u[10],transformCode:u[11]});break;case 65499:const Q=Mt(t,n);n+=2;const E=Q+n-2;let f;for(;n<E;){const e=t[n++],A=new Uint16Array(64);if(e>>4){if(e>>4!=1)throw new FA("DQT - invalid table spec");for(B=0;B<64;B++)f=NA[B],A[f]=Mt(t,n),n+=2}else for(B=0;B<64;B++)f=NA[B],A[f]=t[n++];c[15&e]=A}break;case 65472:case 65473:case 65474:if(s)throw new FA("Only single frame JPEGs supported");n+=2,s={},s.extended=65473===I,s.progressive=65474===I,s.precision=t[n++];const p=Mt(t,n);n+=2,s.scanLines=e||p,s.samplesPerLine=Mt(t,n),n+=2,s.components=[],s.componentIds={};const m=t[n++];let y=0,w=0;for(C=0;C<m;C++){const e=t[n],A=t[n+1]>>4,i=15&t[n+1];y<A&&(y=A),w<i&&(w=i);const a=t[n+2];d=s.components.push({h:A,v:i,quantizationId:a,quantizationTable:null}),s.componentIds[e]=d-1,n+=3}s.maxH=y,s.maxV=w,i(s);break;case 65476:const b=Mt(t,n);for(n+=2,C=2;C<b;){const e=t[n++],A=new Uint8Array(16);let i=0;for(B=0;B<16;B++,n++)i+=A[B]=t[n];const s=new Uint8Array(i);for(B=0;B<i;B++,n++)s[B]=t[n];C+=17+i,(e>>4?h:l)[15&e]=TA(A,s)}break;case 65501:n+=2,a=Mt(t,n),n+=2;break;case 65498:const D=1==++g&&!e;n+=2;const k=t[n++],S=[];for(C=0;C<k;C++){const e=t[n++],A=s.componentIds[e],i=s.components[A];i.index=e;const a=t[n++];i.huffmanTableDC=l[a>>4],i.huffmanTableAC=h[15&a],S.push(i)}const F=t[n++],R=t[n++],x=t[n++];try{const e=qA(t,n,s,S,a,F,R,x>>4,15&x,D);n+=e}catch(e){if(e instanceof RA)return N(`${e.message} -- attempting to re-parse the JPEG image.`),this.parse(t,{dnlScanLines:e.scanLines});if(e instanceof xA){N(`${e.message} -- ignoring the rest of the image data.`);break t}throw e}break;case 65500:n+=4;break;case 65535:255!==t[n]&&n--;break;default:const v=OA(t,n-2,n-3);if(v?.invalid){N("JpegImage.parse - unexpected data, current marker is: "+v.invalid),n=v.offset;break}if(!v||n>=t.length-1){N("JpegImage.parse - reached the end of the image data without finding an EOI marker (0xFFD9).");break t}throw new FA("JpegImage.parse - unknown marker: "+I.toString(16))}I=Mt(t,n),n+=2}if(!s)throw new FA("JpegImage.parse - no frame data found.");this.width=s.samplesPerLine,this.height=s.scanLines,this.jfif=r,this.adobe=o,this.components=[];for(const t of s.components){const e=c[t.quantizationId];e&&(t.quantizationTable=e),this.components.push({index:t.index,output:_A(0,t),scaleX:t.h/s.maxH,scaleY:t.v/s.maxV,blocksPerLine:t.blocksPerLine,blocksPerColumn:t.blocksPerColumn})}this.numComponents=this.components.length}_getLinearizedBlockData(t,e,A=!1){const i=this.width/t,s=this.height/e;let a,n,r,o,g,c,h,l,I,C,B,d=0;const u=this.components.length,Q=t*e*u,E=new Uint8ClampedArray(Q),f=new Uint32Array(t),p=4294967288;let m;for(h=0;h<u;h++){if(a=this.components[h],n=a.scaleX*i,r=a.scaleY*s,d=h,B=a.output,o=a.blocksPerLine+1<<3,n!==m){for(g=0;g<t;g++)l=0|g*n,f[g]=(l&p)<<3|7&l;m=n}for(c=0;c<e;c++)for(l=0|c*r,C=o*(l&p)|(7&l)<<3,g=0;g<t;g++)E[d]=B[C+f[g]],d+=u}let y=this._decodeTransform;if(A||4!==u||y||(y=new Int32Array([-256,255,-256,255,-256,255,-256,255])),y)for(h=0;h<Q;)for(l=0,I=0;l<u;l++,h++,I+=2)E[h]=(E[h]*y[I]>>8)+y[I+1];return E}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(t){let e,A,i;for(let s=0,a=t.length;s<a;s+=3)e=t[s],A=t[s+1],i=t[s+2],t[s]=e-179.456+1.402*i,t[s+1]=e+135.459-.344*A-.714*i,t[s+2]=e-226.816+1.772*A;return t}_convertYccToRgba(t,e){for(let A=0,i=0,s=t.length;A<s;A+=3,i+=4){const s=t[A],a=t[A+1],n=t[A+2];e[i]=s-179.456+1.402*n,e[i+1]=s+135.459-.344*a-.714*n,e[i+2]=s-226.816+1.772*a,e[i+3]=255}return e}_convertYcckToRgb(t){let e,A,i,s,a=0;for(let n=0,r=t.length;n<r;n+=4)e=t[n],A=t[n+1],i=t[n+2],s=t[n+3],t[a++]=A*(-660635669420364e-19*A+.000437130475926232*i-54080610064599e-18*e+.00048449797120281*s-.154362151871126)-122.67195406894+i*(-.000957964378445773*i+.000817076911346625*e-.00477271405408747*s+1.53380253221734)+e*(.000961250184130688*e-.00266257332283933*s+.48357088451265)+s*(-.000336197177618394*s+.484791561490776),t[a++]=107.268039397724+A*(219927104525741e-19*A-.000640992018297945*i+.000659397001245577*e+.000426105652938837*s-.176491792462875)+i*(-.000778269941513683*i+.00130872261408275*e+.000770482631801132*s-.151051492775562)+e*(.00126935368114843*e-.00265090189010898*s+.25802910206845)+s*(-.000318913117588328*s-.213742400323665),t[a++]=A*(-.000570115196973677*A-263409051004589e-19*i+.0020741088115012*e-.00288260236853442*s+.814272968359295)-20.810012546947+i*(-153496057440975e-19*i-.000132689043961446*e+.000560833691242812*s-.195152027534049)+e*(.00174418132927582*e-.00255243321439347*s+.116935020465145)+s*(-.000343531996510555*s+.24165260232407);return t.subarray(0,a)}_convertYcckToRgba(t){for(let e=0,A=t.length;e<A;e+=4){const A=t[e],i=t[e+1],s=t[e+2],a=t[e+3];t[e]=i*(-660635669420364e-19*i+.000437130475926232*s-54080610064599e-18*A+.00048449797120281*a-.154362151871126)-122.67195406894+s*(-.000957964378445773*s+.000817076911346625*A-.00477271405408747*a+1.53380253221734)+A*(.000961250184130688*A-.00266257332283933*a+.48357088451265)+a*(-.000336197177618394*a+.484791561490776),t[e+1]=107.268039397724+i*(219927104525741e-19*i-.000640992018297945*s+.000659397001245577*A+.000426105652938837*a-.176491792462875)+s*(-.000778269941513683*s+.00130872261408275*A+.000770482631801132*a-.151051492775562)+A*(.00126935368114843*A-.00265090189010898*a+.25802910206845)+a*(-.000318913117588328*a-.213742400323665),t[e+2]=i*(-.000570115196973677*i-263409051004589e-19*s+.0020741088115012*A-.00288260236853442*a+.814272968359295)-20.810012546947+s*(-153496057440975e-19*s-.000132689043961446*A+.000560833691242812*a-.195152027534049)+A*(.00174418132927582*A-.00255243321439347*a+.116935020465145)+a*(-.000343531996510555*a+.24165260232407),t[e+3]=255}return t}_convertYcckToCmyk(t){let e,A,i;for(let s=0,a=t.length;s<a;s+=4)e=t[s],A=t[s+1],i=t[s+2],t[s]=434.456-e-1.402*i,t[s+1]=119.541-e+.344*A+.714*i,t[s+2]=481.816-e-1.772*A;return t}_convertCmykToRgb(t){let e,A,i,s,a=0;for(let n=0,r=t.length;n<r;n+=4)e=t[n],A=t[n+1],i=t[n+2],s=t[n+3],t[a++]=255+e*(-6747147073602441e-20*e+.0008379262121013727*A+.0002894718188643294*i+.003264231057537806*s-1.1185611867203937)+A*(26374107616089405e-21*A-8626949158638572e-20*i-.0002748769067499491*s-.02155688794978967)+i*(-3878099212869363e-20*i-.0003267808279485286*s+.0686742238595345)-s*(.0003361971776183937*s+.7430659151342254),t[a++]=255+e*(.00013596372813588848*e+.000924537132573585*A+.00010567359618683593*i+.0004791864687436512*s-.3109689587515875)+A*(-.00023545346108370344*A+.0002702845253534714*i+.0020200308977307156*s-.7488052167015494)+i*(6834815998235662e-20*i+.00015168452363460973*s-.09751927774728933)-s*(.0003189131175883281*s+.7364883807733168),t[a++]=255+e*(13598650411385307e-21*e+.00012423956175490851*A+.0004751985097583589*i-36729317476630422e-22*s-.05562186980264034)+A*(.00016141380598724676*A+.0009692239130725186*i+.0007782692450036253*s-.44015232367526463)+i*(5.068882914068769e-7*i+.0017778369011375071*s-.7591454649749609)-s*(.0003435319965105553*s+.7063770186160144);return t.subarray(0,a)}_convertCmykToRgba(t){for(let e=0,A=t.length;e<A;e+=4){const A=t[e],i=t[e+1],s=t[e+2],a=t[e+3];t[e]=255+A*(-6747147073602441e-20*A+.0008379262121013727*i+.0002894718188643294*s+.003264231057537806*a-1.1185611867203937)+i*(26374107616089405e-21*i-8626949158638572e-20*s-.0002748769067499491*a-.02155688794978967)+s*(-3878099212869363e-20*s-.0003267808279485286*a+.0686742238595345)-a*(.0003361971776183937*a+.7430659151342254),t[e+1]=255+A*(.00013596372813588848*A+.000924537132573585*i+.00010567359618683593*s+.0004791864687436512*a-.3109689587515875)+i*(-.00023545346108370344*i+.0002702845253534714*s+.0020200308977307156*a-.7488052167015494)+s*(6834815998235662e-20*s+.00015168452363460973*a-.09751927774728933)-a*(.0003189131175883281*a+.7364883807733168),t[e+2]=255+A*(13598650411385307e-21*A+.00012423956175490851*i+.0004751985097583589*s-36729317476630422e-22*a-.05562186980264034)+i*(.00016141380598724676*i+.0009692239130725186*s+.0007782692450036253*a-.44015232367526463)+s*(5.068882914068769e-7*s+.0017778369011375071*a-.7591454649749609)-a*(.0003435319965105553*a+.7063770186160144),t[e+3]=255}return t}getData({width:t,height:e,forceRGBA:A=!1,forceRGB:i=!1,isSourcePDF:s=!1}){if(this.numComponents>4)throw new FA("Unsupported color mode");const a=this._getLinearizedBlockData(t,e,s);if(1===this.numComponents&&(A||i)){const t=a.length*(A?4:3),e=new Uint8ClampedArray(t);let i=0;if(A)!function(t,e){if(j.isLittleEndian)for(let A=0,i=t.length;A<i;A++)e[A]=65793*t[A]|4278190080;else for(let A=0,i=t.length;A<i;A++)e[A]=16843008*t[A]|255}(a,new Uint32Array(e.buffer));else for(const t of a)e[i++]=t,e[i++]=t,e[i++]=t;return e}if(3===this.numComponents&&this._isColorConversionNeeded){if(A){const t=new Uint8ClampedArray(a.length/3*4);return this._convertYccToRgba(a,t)}return this._convertYccToRgb(a)}if(4===this.numComponents){if(this._isColorConversionNeeded)return A?this._convertYcckToRgba(a):i?this._convertYcckToRgb(a):this._convertYcckToCmyk(a);if(A)return this._convertCmykToRgba(a);if(i)return this._convertCmykToRgb(a)}return a}}class ZA extends Re{constructor(t,e,A){super(e),this.stream=t,this.dict=t.dict,this.maybeLength=e,this.params=A}get bytes(){return L(this,"bytes",this.stream.getBytes(this.maybeLength))}ensureBuffer(t){}readBlock(){this.decodeImage()}decodeImage(t){if(this.eof)return this.buffer;t||=this.bytes;for(let e=0,A=t.length-1;e<A;e++)if(255===t[e]&&216===t[e+1]){e>0&&(t=t.subarray(e));break}const e={decodeTransform:void 0,colorTransform:void 0},A=this.dict.getArray("D","Decode");if((this.forceRGBA||this.forceRGB)&&Array.isArray(A)){const t=this.dict.get("BPC","BitsPerComponent")||8,i=A.length,s=new Int32Array(i);let a=!1;const n=(1<<t)-1;for(let t=0;t<i;t+=2)s[t]=256*(A[t+1]-A[t])|0,s[t+1]=A[t]*n|0,256===s[t]&&0===s[t+1]||(a=!0);a&&(e.decodeTransform=s)}if(this.params instanceof Ct){const t=this.params.get("ColorTransform");Number.isInteger(t)&&(e.colorTransform=t)}const i=new WA(e);i.parse(t);const s=i.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}}var jA,VA=(jA="undefined"!=typeof document?document.currentScript?.src:void 0,function(t={}){var e,A,i=t;new Promise(((t,i)=>{e=t,A=i})),i.decode=function(t,{numComponents:e=4,isIndexedColormap:A=!1,smaskInData:s=!1}){const a=t.length,n=i._malloc(a);i.HEAPU8.set(t,n);const r=i._jp2_decode(n,a,e>0?e:0,!!A,!!s);if(i._free(n),r){const{errorMessages:t}=i;return t?(delete i.errorMessages,t):"Unknown error"}const{imageData:o}=i;return i.imageData=null,o};var s=Object.assign({},i),a="./this.program",n="";"undefined"!=typeof document&&document.currentScript&&(n=document.currentScript.src),jA&&(n=jA),n=n.startsWith("blob:")?"":n.substr(0,n.replace(/[?#].*/,"").lastIndexOf("/")+1);var r,o,g,c,h,l=i.print||console.log.bind(console),I=i.printErr||console.error.bind(console);function C(){var t=o.buffer;i.HEAP8=g=new Int8Array(t),i.HEAP16=new Int16Array(t),i.HEAPU8=c=new Uint8Array(t),i.HEAPU16=new Uint16Array(t),i.HEAP32=new Int32Array(t),i.HEAPU32=h=new Uint32Array(t),i.HEAPF32=new Float32Array(t),i.HEAPF64=new Float64Array(t)}Object.assign(i,s),s=null,i.arguments&&i.arguments,i.thisProgram&&(a=i.thisProgram),i.quit&&i.quit,i.wasmBinary&&(r=i.wasmBinary);var B,d=[],u=[],Q=[],E=0,f=null,p=null,m="data:application/octet-stream;base64,";function y(t,e){var A,i=function(t){if(t==B&&r)return new Uint8Array(r);var e=function(t){if((t=>t.startsWith(m))(t))return function(t){for(var e=atob(t),A=new Uint8Array(e.length),i=0;i<e.length;++i)A[i]=e.charCodeAt(i);return A}(t.slice(37))}(t);if(e)return e;throw'sync fetching of the wasm failed: you can preload it to Module["wasmBinary"] manually, or emcc.py will do that for you when generating HTML (but not JS)'}(t);return A=new WebAssembly.Module(i),[new WebAssembly.Instance(A,e),A]}var w=t=>{for(;t.length>0;)t.shift()(i)};i.noExitRuntime;var b,D=t=>{var e=(t-o.buffer.byteLength+65535)/65536;try{return o.grow(e),C(),1}catch(t){}},k={},S=()=>{if(!S.strings){var t={USER:"web_user",LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:a||"./this.program"};for(var e in k)void 0===k[e]?delete t[e]:t[e]=k[e];var A=[];for(var e in t)A.push(`${e}=${t[e]}`);S.strings=A}return S.strings},F=[null,[],[]],R="undefined"!=typeof TextDecoder?new TextDecoder("utf8"):void 0,x=(t,e,A)=>{for(var i=e+A,s=e;t[s]&&!(s>=i);)++s;if(s-e>16&&t.buffer&&R)return R.decode(t.subarray(e,s));for(var a="";e<s;){var n=t[e++];if(128&n){var r=63&t[e++];if(192!=(224&n)){var o=63&t[e++];if((n=224==(240&n)?(15&n)<<12|r<<6|o:(7&n)<<18|r<<12|o<<6|63&t[e++])<65536)a+=String.fromCharCode(n);else{var g=n-65536;a+=String.fromCharCode(55296|g>>10,56320|1023&g)}}else a+=String.fromCharCode((31&n)<<6|r)}else a+=String.fromCharCode(n)}return a},N=(t,e)=>{var A=F[t];0===e||10===e?((1===t?l:I)(x(A,0)),A.length=0):A.push(e)},v=(t,e)=>t?x(c,t,e):"",G={c:(t,e,A)=>c.copyWithin(t,e,e+A),g:function(t,e){t>>=2;const A=i.imageData=new Uint8ClampedArray(e),s=i.HEAP32.subarray(t,t+e);A.set(s)},f:function(t,e,A,s){t>>=2,e>>=2,A>>=2;const a=i.imageData=new Uint8ClampedArray(3*s),n=i.HEAP32.subarray(t,t+s),r=i.HEAP32.subarray(e,e+s),o=i.HEAP32.subarray(A,A+s);for(let t=0;t<s;t++)a[3*t]=n[t],a[3*t+1]=r[t],a[3*t+2]=o[t]},e:function(t,e,A,s,a){t>>=2,e>>=2,A>>=2,s>>=2;const n=i.imageData=new Uint8ClampedArray(4*a),r=i.HEAP32.subarray(t,t+a),o=i.HEAP32.subarray(e,e+a),g=i.HEAP32.subarray(A,A+a),c=i.HEAP32.subarray(s,s+a);for(let t=0;t<a;t++)n[4*t]=r[t],n[4*t+1]=o[t],n[4*t+2]=g[t],n[4*t+3]=c[t]},k:t=>{var e=c.length,A=2147483648;if((t>>>=0)>A)return!1;for(var i,s=1;s<=4;s*=2){var a=e*(1+.2/s);a=Math.min(a,t+100663296);var n=Math.min(A,(i=Math.max(t,a))+(65536-i%65536)%65536);if(D(n))return!0}return!1},l:(t,e)=>{var A=0;return S().forEach(((i,s)=>{var a=e+A;h[t+4*s>>2]=a,((t,e)=>{for(var A=0;A<t.length;++A)g[e++]=t.charCodeAt(A);g[e]=0})(i,a),A+=i.length+1})),0},m:(t,e)=>{var A=S();h[t>>2]=A.length;var i=0;return A.forEach((t=>i+=t.length+1)),h[e>>2]=i,0},n:t=>52,j:function(t,e,A,i,s){return 70},b:(t,e,A,i)=>{for(var s=0,a=0;a<A;a++){var n=h[e>>2],r=h[e+4>>2];e+=8;for(var o=0;o<r;o++)N(t,c[n+o]);s+=r}return h[i>>2]=s,0},o:function(t,e){t>>=2;const A=i.imageData=new Uint8ClampedArray(4*e),s=i.HEAP32.subarray(t,t+e);for(let t=0;t<e;t++)A[4*t]=A[4*t+1]=A[4*t+2]=s[t],A[4*t+3]=255},i:function(t,e,A){t>>=2,e>>=2;const s=i.imageData=new Uint8ClampedArray(4*A),a=i.HEAP32.subarray(t,t+A),n=i.HEAP32.subarray(e,e+A);for(let t=0;t<A;t++)s[4*t]=s[4*t+1]=s[4*t+2]=a[t],s[4*t+3]=n[t]},d:function(t){const e=v(t);(i.warn||console.warn)(`OpenJPEG: ${e}`)},h:function(t,e,A,s){t>>=2,e>>=2,A>>=2;const a=i.imageData=new Uint8ClampedArray(4*s),n=i.HEAP32.subarray(t,t+s),r=i.HEAP32.subarray(e,e+s),o=i.HEAP32.subarray(A,A+s);for(let t=0;t<s;t++)a[4*t]=n[t],a[4*t+1]=r[t],a[4*t+2]=o[t],a[4*t+3]=255},a:function(t){const e=v(t);i.errorMessages?i.errorMessages+="\n"+e:i.errorMessages=e}},M=function(){var t={a:G};function e(t,e){return M=t.exports,o=M.p,C(),function(t){u.unshift(t)}(M.q),function(){if(E--,i.monitorRunDependencies?.(E),0==E&&(null!==f&&(clearInterval(f),f=null),p)){var t=p;p=null,t()}}(),M}if(E++,i.monitorRunDependencies?.(E),i.instantiateWasm)try{return i.instantiateWasm(t,e)}catch(t){I(`Module.instantiateWasm callback failed with error: ${t}`),A(t)}return B||(B="data:application/octet-stream;base64,AGFzbQEAAAABzgEaYAN/f38Bf2AEf39/fwF/YAF/AGACf38AYAF/AX9gA39/fwBgAn9/AX9gBH9/f38AYAN/fn8BfmAFf39/f38Bf2ACfn8Bf2ACfn8BfmAFf39/f38AYAN/fn8Bf2AAAX9gB39/f39/f38Bf2AJf39/f39/f39/AX9gC39/f39/f39/f39/AX9gBn9/f39/fwF/YAZ/fH9/f38Bf2AIf39/f39/f38AYAh/f39/f39/fwF/YAAAYAZ/f39/f38AYAd/f39/f39/AGACfH8BfAJbDwFhAWEAAgFhAWIAAQFhAWMABQFhAWQAAgFhAWUADAFhAWYABwFhAWcAAwFhAWgABwFhAWkABQFhAWoACQFhAWsABAFhAWwABgFhAW0ABgFhAW4ABAFhAW8AAwPAAb4BBwIFAAYEAAUGBAUBBAwFFAYCAgICAAYQEQQCChICBQIEBwQCDgICDQYCFQMHAAAEAwEWCQkDAAkGAQQEBQUODwEBAwADBgIQBBcYAgcGAwcHAQECAAQZBAYHBA8MAAQCAgIABgAGAQEBAQEBAQEAAAAAAAYDAgICAwMDAwMAAxMIBA4EAAgDAwkECAoLCAAAAQEBAQEBAQENAQAEBAUJDwESEQEAAAYDAwEFBQUFBQUFBQELAQEBAQEBAQEBCgQFAXABbm4FBwEBggKAgAIGCAF/AUGQ2QULBxsGAXACAAFxAEEBcgCYAQFzABABdAEAAXUAlwEJvQEBAEEBC21RzAHCAXNzNqcBnAGZAYsBigGJAYgBhwGGAYUBhAFSgQGAAX9+fXx7enl4d3Z1ywHKAckByAHHAcYBQMUBxAFAQMMBwQHAAb8BvgG9AbwBuwG6AbkBswGoAaYBpQGkAaMBogGhAaABnwGeAZ0BmwGaAUlKTFJIgwFTOFCCAU9FRk4rJ6sBqgGsAbQBuAG1Aa8BqQGtAa4BtgG3AXCwAbEBsgFRlgGVAYwBjgGNAZIBkwGUAZABjwEKkZoOvgGCAgEDfyMAQZAEayIEJAACQCAARQ0AAkACQAJAAkAgAUEBaw4EAAEEAgQLIABBDGohAQwCCyAAQRBqIQEgAEEEaiEADAELIABBFGohASAAQQhqIQALIAEoAgAiBUUNACACRQ0AIAAoAgAhBiAEQQBBgAQQFSIBIAM2AowEIwBBoAFrIgAkACAAIAE2ApQBIABB/wM2ApgBIABBAEGQARAVIgBBfzYCTCAAQeYANgIkIABBfzYCUCAAIABBnwFqNgIsIAAgAEGUAWo2AlQgAUEAOgAAIAAgAiADQecAQegAEGsgAEGgAWokACABQQA6AP8DIAEgBiAFEQMACyAEQZAEaiQAC9ACAQV/IAAEQCAAQQRrIgMoAgAiBCEBIAMhAiAAQQhrKAIAIgAgAEF+cSIARwRAIAIgAGsiAigCBCIBIAIoAggiBTYCCCAFIAE2AgQgACAEaiEBCyADIARqIgAoAgAiAyAAIANqQQRrKAIARwRAIAAoAgQiBCAAKAIIIgA2AgggACAENgIEIAEgA2ohAQsgAiABNgIAIAIgAUF8cWpBBGsgAUEBcjYCACACAn8gAigCAEEIayIAQf8ATQRAIABBA3ZBAWsMAQsgAGchAyAAQR0gA2t2QQRzIANBAnRrQe4AaiAAQf8fTQ0AGkE/IABBHiADa3ZBAnMgA0EBdGtBxwBqIgAgAEE/TxsLIgFBBHQiAEGgxwFqNgIEIAIgAEGoxwFqIgAoAgA2AgggACACNgIAIAIoAgggAjYCBEGozwFBqM8BKQMAQgEgAa2GhDcDAAsLyQIBBH8gAUEANgIAAkAgAkUNACABIAJqIQMCQCACQRBJBEAgACEBDAELAkAgACACaiABTQ0AIAAgA08NACAAIQEMAQsgA0EQayEGIAAgAkFwcSIFaiEBIAMgBWshAwNAIAYgBGsgACAEav0AAAD9DAAAAAAAAAAAAAAAAAAAAAD9DQ8ODQwLCgkIBwYFBAMCAQD9CwAAIARBEGoiBCAFRw0ACyACIAVGDQELAkAgAkEDcSIGRQRAIAUhBAwBC0EAIQAgBSEEA0AgA0EBayIDIAEtAAA6AAAgBEEBaiEEIAFBAWohASAAQQFqIgAgBkcNAAsLIAUgAmtBfEsNAANAIANBAWsgAS0AADoAACADQQJrIAEtAAE6AAAgA0EDayABLQACOgAAIANBBGsiAyABLQADOgAAIAFBBGohASAEQQRqIgQgAkcNAAsLC4AEAQN/IAJBgARPBEAgACABIAIQAiAADwsgACACaiEDAkAgACABc0EDcUUEQAJAIABBA3FFBEAgACECDAELIAJFBEAgACECDAELIAAhAgNAIAIgAS0AADoAACABQQFqIQEgAkEBaiICQQNxRQ0BIAIgA0kNAAsLAkAgA0F8cSIEQcAASQ0AIAIgBEFAaiIFSw0AA0AgAiABKAIANgIAIAIgASgCBDYCBCACIAEoAgg2AgggAiABKAIMNgIMIAIgASgCEDYCECACIAEoAhQ2AhQgAiABKAIYNgIYIAIgASgCHDYCHCACIAEoAiA2AiAgAiABKAIkNgIkIAIgASgCKDYCKCACIAEoAiw2AiwgAiABKAIwNgIwIAIgASgCNDYCNCACIAEoAjg2AjggAiABKAI8NgI8IAFBQGshASACQUBrIgIgBU0NAAsLIAIgBE8NAQNAIAIgASgCADYCACABQQRqIQEgAkEEaiICIARJDQALDAELIANBBEkEQCAAIQIMAQsgACADQQRrIgRLBEAgACECDAELIAAhAgNAIAIgAS0AADoAACACIAEtAAE6AAEgAiABLQACOgACIAIgAS0AAzoAAyABQQRqIQEgAkEEaiICIARNDQALCyACIANJBEADQCACIAEtAAA6AAAgAUEBaiEBIAJBAWoiAiADRw0ACwsgAAswAQF/AkAgAEUNACABRQ0AQQggACABbCIBECUiAARAIABBACABEBUaCyAAIQILIAILEQAgAEUEQEEADwtBCCAAECUL8gICAn8BfgJAIAJFDQAgACABOgAAIAAgAmoiA0EBayABOgAAIAJBA0kNACAAIAE6AAIgACABOgABIANBA2sgAToAACADQQJrIAE6AAAgAkEHSQ0AIAAgAToAAyADQQRrIAE6AAAgAkEJSQ0AIABBACAAa0EDcSIEaiIDIAFB/wFxQYGChAhsIgE2AgAgAyACIARrQXxxIgRqIgJBBGsgATYCACAEQQlJDQAgAyABNgIIIAMgATYCBCACQQhrIAE2AgAgAkEMayABNgIAIARBGUkNACADIAE2AhggAyABNgIUIAMgATYCECADIAE2AgwgAkEQayABNgIAIAJBFGsgATYCACACQRhrIAE2AgAgAkEcayABNgIAIAQgA0EEcUEYciIEayICQSBJDQAgAa1CgYCAgBB+IQUgAyAEaiEBA0AgASAFNwMYIAEgBTcDECABIAU3AwggASAFNwMAIAFBIGohASACQSBrIgJBH0sNAAsLIAALJwEBfyMAQRBrIgMkACADIAI2AgwgACABIAJBAEEAEGsgA0EQaiQAC+gFAQl/IAFFBEBBAA8LAn8gAEUE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ACAEIE5BCmpBAiAFEBpBAkcEQCAFQQFBAiAAKAK4ARtBlhJBABAPIAAoArgBRSFnDAELIE5BCmogTkEMakECEBEgTigCDCIBQZD/A0YNACABQdn/A0YEQCAAQYACNgIIIABBADYCzAEMAQsgBCkDCCKGAVAEfkIABSCGASAEKQM4fQtQBEAgAEHAADYCCCAFQQJBrD9BABAPDAELQQAhZyAFQQFB7D5BABAPCyBOQRBqJAAgZwsLACAABEAgABAQCwu0AQEBfyAAKAIMRQRAIAIgACgCJCABEQMADwsCQEEIEBQiA0UNACADIAI2AgQgAyABNgIAQQgQFCIBRQRAIAMQEA8LIAEgAzYCACAAIAAoAgRB5ABsIgI2AigDQCAAKAIYIAJKDQALIAEgACgCFDYCBCAAIAE2AhQgACAAKAIYQQFqNgIYIAAoAhwiAUUNACABKAIAQQA2AgggACABKAIENgIcIAAgACgCIEEBazYCICABEBALC/oCAQR/AkAgAEUNACAAKAKsKCIBBEAgACgCqCgiAgRAQQAhAQNAIAAoAqwoIAFBA3RqKAIAIgMEQCADEBAgACgCqCghAgsgAUEBaiIBIAJJDQALIAAoAqwoIQELIABBADYCqCggARAQIABBADYCrCgLIAAoArQoIgEEQCABEBAgAEEANgK0KAsgACgC0CsiAQRAIAEQECAAQQA2AtArCyAAKALsKyIBBEAgARAQIABBADYC7CsLIAAoAugrIgEEQCABEBAgAEEANgLoKwsgACgC/CsiAQRAIAEQECAAQQA2AoQsIABCADcC/CsLIAAoAvArIgEEQCAAKAL0KyIDBH9BACECA0AgASgCDCIEBEAgBBAQIAFBADYCDCAAKAL0KyEDCyABQRRqIQEgAkEBaiICIANJDQALIAAoAvArBSABCxAQIABBADYC8CsLIAAoAuQrIgEEQCABEBAgAEEANgLkKwsgACgC3CsiAUUNACABEBAgAEIANwLcKwsLyAcCEX8BfiAAKAIQIghBIE8EQCAAKQMIpw8LAkAgACgCFCIDQQROBEAgACgCACICQQNrKAIAIQEgACADQQRrIgM2AhQgACACQQRrNgIADAELIANBAEwEQAwBCyADQQFxIQ0gACgCACECAkAgA0EBRgRAQRghBAwBCyADQf7///8HcSEJQRghBANAIAAgAkEB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IABBADYCiAEgACgCZBAQIABBADYCZCAALQC8AUECcUUEQCAAKAKoARAQCyAAQdAAakEAQfAAEBUaIAAoAsABEDIgAEEANgLAASAAKALEARAyIABBADYCwAEgACgCyAEiAQRAIAEoAhwiAgRAIAIQECABQQA2AhwLIAEoAigiAgRAIAEoAiQEQANAIAIgBUEobCIDaigCJCIEBEAgBBAQIAEoAigiAiADakEANgIkCyACIANqKAIQIgQEQCAEEBAgASgCKCICIANqQQA2AhALIAIgA2ooAhgiBARAIAQQECABKAIoIgIgA2pBADYCGAsgBUEBaiIFIAEoAiRJDQALCyACEBAgAUEANgIoCyABEBALIABBADYCyAEgACgCSBAhIABBADYCSCAAKAJMECEgAEEANgJMIAAoAtQBIgMEQAJAIAMoAghFDQAgAygCDARAIANBADYCKANAIAMoAhhBAEoNAAsLIANBATYCECADKAIAEBAgAygCHCICRQ0AA0AgAigCBCEBIAIQECADIAE2AhwgASICDQALCyADKAIkIgIEQCACKAIEIgVBAEoEQEEAIQEDQCACKAIAIAFBDGxqIgQoAggiBgRAIAQoAgQgBhECACACKAIEIQULIAFBAWoiASAFSA0ACwsgAigCABAQIAIQEAsgAxAQCyAAQQA2AtQBIAAQEAsL5gMCCH8EfiAAKAIUKAIAKAIUIAFBzABsaiIJKAIMIgggACgCGCgCGCABQTRsaiIKNQIEIhBCAX0iEiAANQI8fCAQgKciCyAIIAtJGyEMIAkoAggiCCAKNQIAIhFCAX0iEyAANQI4fCARgKciCiAIIApJGyEKIAkoAgQiCCASIAA1AjR8IBCApyILIAggC0sbIQsgCSgCACIIIBMgADUCMHwgEYCnIg0gCCANSxshDUEAIQggACgCICgC0CsgAUG4CGxqKAIUIQ4CQCAJKAIUQQAgAmtBfyACG2oiAkUEQCAKIQAgDSEIIAshAQwBCyADQQFxIAJBAWsiD3QiCSANSQRAIA0gCWutQn8gAq0iEIZCf4V8IBCIpyEIC0EAIQBBACEBIANBAXYgD3QiAyALSQRAIAsgA2utQn8gAq0iEIZCf4V8IBCIpyEBCyAJIApJBEAgCiAJa61CfyACrSIQhkJ/hXwgEIinIQALIAMgDE8EQEEAIQwMAQsgDCAD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IABBADYCPCAAQucHNwI0IABBADYCLCAAQucHNwIkIABBADYCHCAAQucHNwIUIABBADYCDCAAQucHNwIEIABBQGshACACQQRqIgIgA0cNAAsLIAFBA3EiAUUNAEEAIQIDQCAAQQA2AgwgAELnBzcCBCAAQRBqIQAgAkEBaiICIAFHDQALCwv7BQEQfyMAQYACayIIJAACf0EBQRQQEyIGRQRAIAJBAUH0MEEAEA9BAAwBCyAGIAE2AgQgBiAANgIAIAggATYCACAIIAA2AoABA0AgCCAFIg1BAWoiBUECdCIHaiABQQFqQQJtIgM2AgAgCEGAAWogB2ogAEEBakECbSIHNgIAIAQgACABbCIJaiEEIAMhASAHIQAgCUEBSw0ACyAGIAQ2AgggBEUEQCAGEBBBAAwBCyAGIARBEBATIgM2AgwgA0UEQCACQQFB2hpBABAPIAYQEEEADAELIAYgBigCCCILQQR0NgIQIAMhACANBEAgAyAGKAIEIAYoAgBsQQR0aiIEIQEDQAJAIAggDkECdCICaigCACIJQQBMDQAgCUEBayEMQQAhBwJAIAhBgAFqIAJqKAIAIgJBAEwEQEEAIQUgCUEBRwRAIAlB/v///wdxIQoDQCAFIAxGIQ8gBUECaiEFIAEgBCAPGyIEIQEgB0ECaiIHIApHDQALCyAJQQFxDQEgBCEBDAILA0AgBCEFIAIhBANAAkAgACABNgIAIARBAUYEQCAAQRBqIQAgAUEQaiEBDAELIAAgATYCECABQRBqIQEgAEEgaiEAIARBAkohECAEQQJrIQQgEA0BCwsgASAFIAJBBHRqIAcgByAMRnJBAXEiChshBCABIAUgChshASAHQQFqIgcgCUcNAAsMAQsgASAEIAJBBHRqIAUgBSAMRnJBAXEiBRshESABIAQgBRshASARIQQLIA5BAWoiDiANRw0ACwsgAEEANgIAAkAgC0UNACALQQRPBEAgC0F8cSEAQQAhAQNAIANBADYCPCADQucHNwI0IANBADYCLCADQucHNwIkIANBADYCHCADQucHNwIUIANBADYCDCADQucHNwIEIANBQGshAyABQQRqIgEgAEcNAAsLIAtBA3EiAEUNAEEAIQEDQCADQQA2AgwgA0LnBzcCBCADQRBqIQMgAUEBaiIBIABHDQALCyAGCyESIAhBgAJqJAAgEgtTAQF/An8gAC0ADEH/AUYEQCAAQoD+g4DwADcCDEEAIAAoAggiASAAKAIETw0BGiAAIAFBAWo2AgggACABLQAAQYD+A3I2AgwLIABBADYCEEEBCwt+AgF/AX4gAL0iA0I0iKdB/w9xIgJB/w9HBHwgAkUEQCABIABEAAAAAAAAAABhBH9BAAUgAEQAAAAAAADwQ6IgARBlIQAgASgCAEFAags2AgAgAA8LIAEgAkH+B2s2AgAgA0L/////////h4B/g0KAgICAgICA8D+EvwUgAAsLSQEBfwJAQQFBLBATIgEEQCABQQA2AhACQCAAQQBMBEAgAUEBQQgQEyIANgIkIABFDQEMAwsgAUEANgIMCyABEBALQQAhAQsgAQuRAgAgAEUEQEEADwsCfwJAIAFB/wBNDQACQEGU0AEoAgAoAgBFBEAgAUGAf3FBgL8DRg0CDAELIAFB/w9NBEAgACABQT9xQYABcjoAASAAIAFBBnZBwAFyOgAAQQIMAwsgAUGAQHFBgMADRyABQYCwA09xRQRAIAAgAUE/cUGAAXI6AAIgACABQQx2QeABcjoAACAAIAFBBnZBP3FBgAFyOgABQQMMAwsgAUGAgARrQf//P00EQCAAIAFBP3FBgAFyOgADIAAgAUESdkHwAXI6AAAgACABQQZ2QT9xQYABcjoAAiAAIAFBDHZBP3FBgAFyOgABQQQMAwsLQZTHAUEZNgIAQX8MAQsgACABOgAAQQELC7wCAAJAAkACQAJAAkACQAJAAkACQAJAAkAgAUEJaw4SAAgJCggJAQIDBAoJCgoICQUGBwsgAiACKAIAIgFBBGo2AgAgACABKAIANgIADwsgAiACKAIAIgFBBGo2AgAgACABMgEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMwEANwMADwsgAiACKAIAIgFBBGo2AgAgACABMAAANwMADwsgAiACKAIAIgFBBGo2AgAgACABMQAANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKwMAOQMADwsgACACIAMRAwALDwsgAiACKAIAIgFBBGo2AgAgACABNAIANwMADwsgAiACKAIAIgFBBGo2AgAgACABNQIANwMADwsgAiACKAIAQQdqQXhxIgFBCGo2AgAgACABKQMANwMAC3MBBn8gACgCACIDLAAAQTBrIgFBCUsEQEEADwsDQEF/IQQgAkHMmbPmAE0EQEF/IAEgAkEKbCIFaiABIAVB/////wdzSxshBAsgACADQQFqIgU2AgAgAywAASEGIAQhAiAFIQMgBkEwayIBQQpJDQALIAILtBQCFX8BfiMAQUBqIggkACAIIAE2AjwgCEEnaiEWIAhBKGohEQJAAkACQAJAA0BBACEHA0AgASENIAcgDkH/////B3NKDQIgByAOaiEOAkACQAJAAkAgASIHLQAAIgsEQANAAkACQCALQf8BcSIBRQRAIAchAQwBCyABQSVHDQEgByELA0AgCy0AAUElRwRAIAshAQwCCyAHQQFqIQcgCy0AAiEZIAtBAmoiASELIBlBJUYNAAsLIAcgDWsiByAOQf////8HcyIXSg0JIAAEQCAAIA0gBxAZCyAHDQcgCCABNgI8IAFBAWohB0F/IRACQCABLAABQTBrIglBCUsNACABLQACQSRHDQAgAUEDaiEHQQEhEiAJIRALIAggBzYCPEEAIQwCQCAHLAAAIgtBIGsiAUEfSwRAIAchCQwBCyAHIQlBASABdCIBQYnRBHFFDQADQCAIIAdBAWoiCTYCPCABIAxyIQwgBywAASILQSBrIgFBIE8NASAJIQdBASABdCIBQYnRBHENAAsLAkAgC0EqRgRAAn8CQCAJLAABQTBrIgFBCUsNACAJLQACQSRHDQACfyAARQRAIAQgAUECdGpBCjYCAEEADAELIAMgAUEDdGooAgALIQ8gCUEDaiEBQQEMAQsgEg0GIAlBAWohASAARQRAIAggATYCPEEAIRJBACEPDAMLIAIgAigCACIHQQRqNgIAIAcoAgAhD0EACyESIAggATYCPCAPQQBODQFBACAPayEPIAxBgMAAciEMDAELIAhBPGoQaSIPQQBIDQogCCgCPCEBC0EAIQdBfyEKAn9BACABLQAAQS5HDQAaIAEtAAFBKkYEQAJ/AkAgASwAAkEwayIJQQlLDQAgAS0AA0EkRw0AIAFBBGohAQJ/IABFBEAgBCAJQQJ0akEKNgIAQQAMAQsgAyAJQQN0aigCAAsMAQsgEg0GIAFBAmohAUEAIABFDQAaIAIgAigCACIJQQRqNgIAIAkoAgALIQogCCABNgI8IApBAE4MAQsgCCABQQFqNgI8IAhBPGoQaSEKIAgoAjwhAUEBCyETA0AgByEUQRwhCSABIhgsAAAiB0H7AGtBRkkNCyABQQFqIQEgByAUQTpsakG/wAFqLQAAIgdBAWtBCEkNAAsgCCABNgI8AkAgB0EbRwRAIAdFDQwgEEEATgRAIABFBEAgBCAQQQJ0aiAHNgIADAwLIAggAyAQQQN0aikDADcDMAwCCyAARQ0IIAhBMGogByACIAYQaAwBCyAQQQBODQtBACEHIABFDQgLIAAtAABBIHENCyAMQf//e3EiCyAMIAxBgMAAcRshDEEAIRBBsAghFSARIQkCQAJAAn8CQAJAAkACQAJAAkACfwJAAkACQAJAAkACQAJAIBgsAAAiB0FTcSAHIAdBD3FBA0YbIAcgFBsiB0HYAGsOIQQWFhYWFhYWFhAWCQYQEBAWBhYWFhYCBQMWFgoWARYWBAALAkAgB0HBAGsOBxAWCxYQEBAACyAHQdMARg0LDBULIAgpAzAhHEGwCAwFC0EAIQcCQAJAAkACQAJAAkACQCAUQf8BcQ4IAAECAwQcBQYcCyAIKAIwIA42AgAMGwsgCCgCMCAONgIADBoLIAgoAjAgDqw3AwAMGQsgCCgCMCAOOwEADBgLIAgoAjAgDjoAAAwXCyAIKAIwIA42AgAMFgsgCCgCMCAOrDcDAAwVC0EIIAogCkEITRshCiAMQQhyIQxB+AAhBwsgESEBIAgpAzAiHEIAUgRAIAdBIHEhDQNAIAFBAWsiASAcp0EPcUHQxAFqLQAAIA1yOgAAIBxCD1YhGiAcQgSIIRwgGg0ACwsgASENIAgpAzBQDQMgDEEIcUUNAyAHQQR2QbAIaiEVQQIhEAwDCyARIQEgCCkDMCIcQgBSBEADQCABQQFrIgEgHKdBB3FBMHI6AAAgHEIHViEbIBxCA4ghHCAbDQALCyABIQ0gDEEIcUUNAiAKIBEgAWsiAUEBaiABIApIGyEKDAILIAgpAzAiHEIAUwRAIAhCACAcfSIcNwMwQQEhEEGwCAwBCyAMQYAQcQRAQQEhEEGxCAwBC0GyCEGwCCAMQQFxIhAbCyEVIBwgERAqIQ0LIBMgCkEASHENESAMQf//e3EgDCATGyEMAkAgCCkDMCIcQgBSDQAgCg0AIBEhDUEAIQoMDgsgCiAcUCARIA1raiIBIAEgCkgbIQoMDQsgCCkDMCEcDAsLAn9B/////wcgCiAKQf////8HTxsiDCIHQQBHIQkCQAJAAkAgCCgCMCIBQYQMIAEbIg0iAUEDcUUNACAHRQ0AA0AgAS0AAEUNAiAHQQFrIgdBAEchCSABQQFqIgFBA3FFDQEgBw0ACwsgCUUNAQJAIAEtAABFDQAgB0EESQ0AA0BBgIKECCABKAIAIglrIAlyQYCBgoR4cUGAgYKEeEcNAiABQQRqIQEgB0EEayIHQQNLDQALCyAHRQ0BCwNAIAEgAS0AAEUNAhogAUEBaiEBIAdBAWsiBw0ACwtBAAsiASANayAMIAEbIgEgDWohCSAKQQBOBEAgCyEMIAEhCgwMCyALIQwgASEKIAktAAANDwwLCyAIKQMwIhxCAFINAUIAIRwMCQsgCgRAIAgoAjAMAgtBACEHIABBICAPQQAgDBAcDAILIAhBADYCDCAIIBw+AgggCCAIQQhqIgc2AjBBfyEKIAcLIQtBACEHA0ACQCALKAIAIg1FDQAgCEEEaiANEGciDUEASA0PIA0gCiAHa0sNACALQQRqIQsgByANaiIHIApJDQELC0E9IQkgB0EASA0MIABBICAPIAcgDBAcIAdFBEBBACEHDAELQQAhCSAIKAIwIQsDQCALKAIAIg1FDQEgCEEEaiIKIA0QZyINIAlqIgkgB0sNASAAIAogDRAZIAtBBGohCyAHIAlLDQALCyAAQSAgDyAHIAxBgMAAcxAcIA8gByAHIA9IGyEHDAgLIBMgCkEASHENCUE9IQkgACAIKwMwIA8gCiAMIAcgBRETACIHQQBODQcMCgsgBy0AASELIAdBAWohBwwACwALIAANCSASRQ0DQQEhBwNAIAQgB0ECdGooAgAiAARAIAMgB0EDdGogACACIAYQaEEBIQ4gB0EBaiIHQQpHDQEMCwsLQQEhDiAHQQpPDQkDQCAEIAdBAnRqKAIADQEgB0EBaiIHQQpHDQALDAkLQRwhCQwGCyAIIBw8ACdBASEKIBYhDSALIQwLIAogCSANayILIAogC0obIgogEEH/////B3NKDQNBPSEJIA8gCiAQaiIBIAEgD0gbIgcgF0oNBCAAQSAgByABIAwQHCAAIBUgEBAZIABBMCAHIAEgDEGAgARzEBwgAEEwIAogC0EAEBwgACANIAsQGSAAQSAgByABIAxBgMAAcxAcIAgoAjwhAQwBCwsLQQAhDgwDC0E9IQkLQZTHASAJNgIAC0F/IQ4LIAhBQGskACAOC6gCAQR/IwBB0AFrIgUkACAFIAI2AswBIAVBoAFqIgJBAEEoEBUaIAUgBSgCzAE2AsgBAkBBACABIAVByAFqIAVB0ABqIAIgAyAEEGpBAEgNACAAKAJMQQBIIQggACAAKAIAIgdBX3E2AgACfwJAAkAgACgCMEUEQCAAQdAANgIwIABBADYCHCAAQgA3AxAgACgCLCEGIAAgBTYCLAwBCyAAKAIQDQELQX8gABA+DQEaCyAAIAEgBUHIAWogBUHQAGogBUGgAWogAyAEEGoLIQEgBgR/IABBAEEAIAAoAiQRAAAaIABBADYCMCAAIAY2AiwgAEEANgIcIAAoAhQaIABCADcDEEEABSABCxogACAAKAIAIAdBIHFyNgIAIAgNAAsgBUHQAWokAAsnAQF/QRwhAyABQQNxBH9BHAUgACABIAIQJSIANgIAQQBBMCAAGwsL/QMBBX8Cf0HgxAEoAgAiAiAAQQdqQXhxIgFBB2pBeHEiA2ohAAJAIANBACAAIAJNG0UEQCAAPwBBEHRNDQEgABAKDQELQZTHAUEwNgIAQX8MAQtB4MQBIAA2AgAgAgsiAkF/RwRAIAEgAmoiAEEEa0EQNgIAIABBEGsiA0EQNgIAAkACf0GgzwEoAgAiAQR/IAEoAggFQQALIAJGBEAgAiACQQRrKAIAQX5xayIEQQRrKAIAIQUgASAANgIIIAQgBUF+cWsiACAAKAIAakEEay0AAEEBcQRAIAAoAgQiASAAKAIIIgQ2AgggBCABNgIEIAAgAyAAayIBNgIADAMLIAJBEGsMAQsgAkEQNgIAIAIgADYCCCACIAE2AgQgAkEQNgIMQaDPASACNgIAIAJBEGoLIgAgAyAAayIBNgIACyAAIAFBfHFqQQRrIAFBAXI2AgAgAAJ/IAAoAgBBCGsiAUH/AE0EQCABQQN2QQFrDAELIAFBHSABZyIDa3ZBBHMgA0ECdGtB7gBqIAFB/x9NDQAaQT8gAUEeIANrdkECcyADQQF0a0HHAGoiASABQT9PGwsiAUEEdCIDQaDHAWo2AgQgACADQajHAWoiAygCADYCCCADIAA2AgAgACgCCCAANgIEQajPAUGozwEpAwBCASABrYaENwMACyACQX9HC70BAQJ/AkAgACgCTCIBQQBOBEAgAUUNAUHMzwEoAgAgAUH/////A3FHDQELAkAgACgCUEEKRg0AIAAoAhQiASAAKAIQRg0AIAAgAUEBajYCFCABQQo6AAAPCyAAEG8PCyAAQcwAaiIBIAEoAgAiAkH/////AyACGzYCAAJAAkAgACgCUEEKRg0AIAAoAhQiAiAAKAIQRg0AIAAgAkEBajYCFCACQQo6AAAMAQsgABBvCyABKAIAGiABQQA2AgALfAECfyMAQRBrIgEkACABQQo6AA8CQAJAIAAoAhAiAgR/IAIFIAAQPg0CIAAoAhALIAAoAhQiAkYNACAAKAJQQQpGDQAgACACQQFqNgIUIAJBCjoAAAwBCyAAIAFBD2pBASAAKAIkEQAAQQFHDQAgAS0ADxoLIAFBEGokAAuwAgECfyAABEAgACgCABA4IABBADYCACAAKAJIIgEEQCABEBAgAEEANgJICyAAKAJEIgEEQCABEBAgAEEANgJECyAAKAJsIgEEQCABEBAgAEEANgJsCyAAKAJ0IgEEQCABKAIAIgIEQCACEBAgACgCdCIBQQA2AgALIAEQECAAQQA2AnQLIAAoAngiAQRAIAEoAgwiAgRAIAIQECAAKAJ4IgFBADYCDAsgASgCBCICBEAgAhAQIAAoAngiAUEANgIECyABKAIIIgIEQCACEBAgACgCeCIBQQA2AggLIAEoAgAiAgRAIAIQECAAKAJ4IgFBADYCAAsgARAQIABBADYCeAsgACgCBCIBBEAgARAyIABBADYCBAsgACgCCCIBBEAgARAyIABBADYCCAsgABAQCwuLGwIefwV7IwBB8AFrIgkkAEEBIQ4CQCAAKAIAKAI8DQAgACgCgAENAAJAAkAgACgCdCIIRQRAIAAoAnghBAwBCyABKAIQIQMgCC8BBCEGAkAgACgCeCIERQ0AIAQoAgxFDQAgBC0AEiEDCwJAIAYEQCAIKAIAIQgDQCAIIAVBBmxqIgovAQAiByADTwRAIAkgAzYCtAEgCSAHNgKwASACQQFBoOYAIAlBsAFqEA9BACEODAYLAkAgCi8BBCIKRQ0AIApB//8DRg0AIApBAWsiCiADSQ0AIAkgAzYCpAEgCSAKNgKgASACQQFBoOYAIAlBoAFqEA9BACEODAYLIAVBAWoiBSAGRw0ACwwBCyADDQIMAQsDQCADQQFrIQNBACEFA0AgCCAFQQZsai8BACADRwRAIAVBAWoiBSAGRw0BDAQLCyADDQALCwJAIARFDQAgBCgCDCIKRQ0AAkACQCAELQASIggEQEEAIQVBASEHA0AgASgCECIDIAogBUECdGovAQAiBE0EQCAJIAM2ApQBIAkgBDYCkAEgAkEBQaDmACAJQZABahAPQQAhBwsgBUEBaiIFIAhHDQALIAhBBBATIgNFDQFBACEFA0ACQCAKIAVBAnRqIgQtAAIiBkECTwRAIAkgBjYCRCAJIAU2AkAgAkEBQcvZACAJQUBrEA9BACEHDAELIAggBC0AAyIETQRAIAkgBDYCgAEgAkEBQZPZACAJQYABahAPQQAhBwwBCyADIARBAnRqIQsCQCAGQQFHIgwNACALKAIARQ0AIAkgBDYCUCACQQFBvNUAIAlB0ABqEA9BACEHDAELAkAgBg0AIARFDQAgCSAENgJkIAkgBTYCYCACQQFBitgAIAlB4ABqEA9BACEHDAELAkAgDA0AIAQgBUYNACAJIAQ2AnggCSAFNgJ0IAkgBTYCcCACQQFBrtgAIAlB8ABqEA9BACEHDAELIAtBATYCAAsgBUEBaiIFIAhHDQALQQAhBQNAAkACQCADIAVBAnQiBGooAgBFBEAgBCAKai0AAg0BCyAFQQFqIgUgCEcNAiAHRQ0BIAEoAhBBAUcNBUEAIQUDQCADIAVBAnRqKAIABEAgCCAFQQFqIgVHDQEMBwsLQQAhByACQQJB7sUAQQAQDyAIQRBPBEAgCEHwAXEhB0EAIQQDQCAKIARBAnRqIgZBAToAAiAGIAQ6AAMgBkEBOgA+IAZBAToAOiAGQQE6ADYgBkEBOgAyIAZBAToALiAGQQE6ACogBkEBOgAmIAZBAToAIiAGQQE6AB4gBkEBOgAaIAZBAToAFiAGQQE6ABIgBkEBOgAOIAZBAToACiAGQQE6AAYgBiAEQQFyOgAHIAYgBEEPcjoAPyAGIARBDnI6ADsgBiAEQQ1yOgA3IAYgBEEMcjoAMyAGIARBC3I6AC8gBiAEQQpyOgArIAYgBEEJcjoAJyAGIARBCHI6ACMgBiAEQQdyOgAfIAYgBEEGcjoAGyAGIARBBXI6ABcgBiAEQQRyOgATIAYgBEEDcjoADyAGIARBAnI6AAsgBEEQaiIEIAdHDQALIAcgCEYNBgsDQCAKIAdBAnRqIgQgBzoAAyAEQQE6AAIgB0EBaiIHIAhHDQALDAULIAkgBTYCMCACQQFByNIAIAlBMGoQD0EAIQcgBUEBaiIFIAhHDQELCyADEBBBACEODAULIAhBBBATIgMNAQtBACEOIAJBAUGK2wBBABAPDAMLIAMQEAsCQCAAKAJ4IgNFDQAgAygCDCIPRQRAIAMoAgQQECAAKAJ4KAIIEBAgACgCeCgCABAQIAAoAngiAygCDCIEBH8gBBAQIAAoAngFIAMLEBAgAEEANgJ4DAELIAEoAhghDQJAAkAgAy0AEiIKBEAgAygCACEUIAMoAgQhBiADKAIIIQhBACEFAkADQCANIA8gBUECdGovAQBBNGxqKAIsBEAgCiAFQQFqIgVHDQEMAgsLIAkgBTYCICACQQFBwucAIAlBIGoQD0EAIQ4MBgsgCkE0bBAUIgtFDQFBACEFA0AgDyAFQQJ0aiIDLwEAIQcgCyADLQACBH8gAy0AAwUgBQtBNGxqIgQgDSAHQTRsaiID/QACAP0LAgAgBCADKAIwNgIwIAQgA/0AAiD9CwIgIAQgA/0AAhD9CwIQIAsgBUE0bGoiBCADKAIIIAMoAgxsQQJ0EBgiAzYCLCADRQRAIAUEQCAFQf//A3EhAANAIABBNGwgC2pBCGsoAgAQECAAQQFrIgANAAsLIAsQEEEAIQ4gAkEBQY7nAEEAEA8MBwsgBCAFIAhqLQAANgIYIAQgBSAGai0AADYCICAFQQFqIgUgCkcNAAsgACgCeC8BECIQQQFrIRIDQCALIBNBNGxqIgMoAgwgAygCCGwhBiANIA8gE0ECdGoiBC8BAEE0bGooAiwhCAJAIAQtAAJFBEAgBkUNASADKAIsIQVBACEHQQAhBAJAIAZBBEkNACAFIAhrQRBJDQAgBkF8cSEEQQAhAwNAIAUgA0ECdCIMaiAIIAxq/QACAP0LAgAgA0EEaiIDIARHDQALIAQgBkYNAgsgBCEDIAZBA3EiDARAA0AgBSADQQJ0IhFqIAggEWooAgA2AgAgA0EBaiEDIAdBAWoiByAMRw0ACwsgBCAGa0F8Sw0BA0AgBSADQQJ0IgRqIAQgCGooAgA2AgAgBSAEQQRqIgdqIAcgCGooAgA2AgAgBSAEQQhqIgdqIAcgCGooAgA2AgAgBSAEQQxqIgRqIAQgCGooAgA2AgAgA0EEaiIDIAZHDQALDAELIAZFDQAgFCAELQADIgNBAnRqIQQgCyADQTRsaigCLCEFQQAhAyAGQQFHBEAgBkF+cSEVQQAhDANAIAUgA0ECdCIHaiAEIAcgCGooAgAiESASIBAgEUobQQAgEUEAThsgCmxBAnRqKAIANgIAIAUgB0EEciIHaiAEIAcgCGooAgAiByASIAcgEEgbQQAgB0EAThsgCmxBAnRqKAIANgIAIANBAmohAyAMQQJqIgwgFUcNAAsLIAZBAXFFDQAgBSADQQJ0IgNqIAQgAyAIaigCACIDIBIgAyAQSBtBACADQQBOGyAKbEECdGooAgA2AgALIBNBAWoiEyAKRw0ACwwCCyAKQTRsEBQiCw0BC0EAIQ4gAkEBQY7nAEEAEA8MAwsgASgCECIDBEBBACEFA0AgDSAFQTRsaigCLCIEBEAgBBAQCyAFQQFqIgUgA0cNAAsLIA0QECABIAo2AhAgASALNgIYCyAAKAJ0IgVFDQEgBSgCACEHIAUvAQQiCwRAIAdBKmohEiAHQSRqIRMgB0EeaiERIAdBGGohFCAHQRJqIRUgB0EMaiEWIAdBBmohFyALQQJrIRhBACEFQQEhBANAAkAgASgCECIDIAcgBUEGbGoiDS8BACIGTQRAIAkgAzYCFCAJIAY2AhAgAkECQcw3IAlBEGoQDwwBCyANLwEEIghBAWpB//8DcUEBTQRAIAEoAhggBkE0bGogDS8BAjsBMAwBCyAIQQFrIgpB//8DcSIPIANPBEAgCSADNgIEIAkgDzYCACACQQJBozcgCRAPDAELAkAgBiAPRg0AIA0vAQINACAJIAEoAhgiCCAGQTRsaiIDKAIwNgLoASAJIAP9AAIg/QsD2AEgCSAD/QACEP0LA8gBIAkgA/0AAgD9CwO4ASADIAggD0E0bCIMaiIIKQIINwIIIAMgCCkCEDcCECADIAgpAhg3AhggAyAIKQIgNwIgIAMgCCkCKDcCKCADIAgoAjA2AjAgAyAIKQIANwIAIAEoAhggDGoiAyAJ/QADuAH9CwIAIAMgCf0AA9gB/QsCICADIAn9AAPIAf0LAhAgAyAJKALoATYCMCAFQQFqIAtPDQAgBCEIIBggBWtB//8DcSIDQQdPBEAgBCADQQFqIhlB+P8HcSIQaiEIIAr9ECEkIAb9ECEjQQAhDANAICMgJCASIAQgDGpBBmwiA2oiGiADIBNqIhsgAyARaiIcIAMgFGoiHSADIBVqIh4gAyAWaiIfIAMgF2oiICADIAdqIgP9CAEA/VUBAAH9VQEAAv1VAQAD/VUBAAT9VQEABf1VAQAG/VUBAAciISAj/S4gISAk/S0iJf1O/VIhIiAhICP9LSAl/VAiIf0ZAEEBcQRAIAMgIv1ZAQAACyAh/RkBQQFxBEAgICAi/VkBAAELICH9GQJBAXEEQCAfICL9WQEAAgsgIf0ZA0EBcQRAIB4gIv1ZAQADCyAh/RkEQQFxBEAgHSAi/VkBAAQLICH9GQVBAXEEQCAcICL9WQEABQsgIf0ZBkEBcQRAIBsgIv1ZAQAGCyAh/RkHQQFxBEAgGiAi/VkBAAcLIAxBCGoiDCAQRw0ACyAQIBlGDQELA0AgCiEDAkAgBiAHIAhBBmxqIgwvAQAiEEcEQCAGIQMgDyAQRw0BCyAMIAM7AQALIAsgCEEBaiIIQf//A3FHDQALCyABKAIYIAZBNGxqIA0vAQI7ATALIARBAWohBCAFQQFqIgUgC0cNAAsgACgCdCIFKAIAIQcLIAcEfyAHEBAgACgCdAUgBQsQECAAQQA2AnQMAQtBACEOIAJBAUGhxgBBABAPCyAJQfABaiQAIA4L6QEBBn8jAEEgayIEJAACfwJAIAAoAjwiAwRAQQEhBQNAIAAoAkwoAhggACgCQCACQQJ0aigCACIGQTRsaigCLEUEQCAEIAY2AhAgAUECQdo5IARBEGoQD0EAIQUgACgCPCEDCyACQQFqIgIgA0kNAAsMAQtBASEFQQEgACgCTCIDKAIQRQ0BGgNAIAMoAhggAkE0bGooAixFBEAgBCACNgIAIAFBAkHaOSAEEA9BACEFIAAoAkwhAwsgAkEBaiICIAMoAhBJDQALC0EBIAUNABogAUEBQb8VQQAQD0EACyEHIARBIGokACAHCwQAQX8LhgcCFn8CfiAAKAIYIhAoAhBFBEBBAQ8LIBAoAhghDSAAKAIUKAIAKAIUIQsDQCABIA0oAiQiAjYCJCALKAIcIgYgAkGYAWxqIQMCQAJAAn8gACgCQCIRBEAgBiALKAIYQZgBbGoiAkGQAWsoAgAgAkGYAWsoAgBrIQwgA0EMaiEGIANBBGohBCADKAIIIQIgAygCACEFQSQMAQsgA0GUAWohBiADQYwBaiEEIAMoApABIgIgAygCiAEiBWshDEE0CyALaigCACISRQ0AIAQoAgAhByAGKAIAIQkgAiAFayEGIAEoAggiA0J/IAE1AigiGIZCf4UiGSABNQIQfCAYiKciCGohBAJ/IAUgCEsEQCAFIAhrIQ5BACEIQQAgAiAETQ0BGiAGIAQgBWsiBmsMAQsgCCAFayEIIAIgBE0EQCAGIAhrIQZBACEOQQAMAQtBACEOIAMhBiACIARrCyEVIAkgB2shAiABKAIMIgQgGSABNQIUfCAYiKciCmohBQJ/IAcgCksEQCAHIAprIQ9BACEKQQAgBSAJTw0BGiACIAUgB2siAmsMAQsgCiAHayEKIAUgCU8EQCACIAprIQJBACEPQQAMAQtBACEPIAQhAiAJIAVrCyEHQQAhBSAIQQBIDQEgCkEASA0BIBVBAEgNASAHQQBIDQEgBkEASA0BIAJBAEgNASADIA9sIA5qIQcgCiAMbCAIaiEJAkACQAJAIAEoAiwiCA0AIAkNACAHDQAgAyAMRw0AIAMgBkcNACACIARHDQEgASALQSRBNCARG2oiAigCADYCLCACQQA2AgAMAwsgCA0BCyAERQ0CIAStIAOtfkIgiKcNAiADIARsIgNB/////wNLDQIgASADQQJ0EBgiAzYCLCADRQ0CIAYgASgCCCIERiABKAIMIgUgAkZxDQAgA0EAIAQgBWxBAnQQFRoLIAJFDQAgAkEBcSEXIAZBAnQhBiABKAIsIAdBAnRqIQQgEiAJQQJ0aiEFIAJBAUcEQCACQf7///8HcSEHQQAhAgNAIAQgBSAGEBIhFiAFIAxBAnQiCWoiCCAJaiEFIBYgASgCCEECdGogCCAGEBIgASgCCEECdGohBCACQQJqIgIgB0cNAAsLIBdFDQAgBCAFIAYQEhoLIAtBzABqIQsgDUE0aiENIAFBNGohAUEBIQUgFEEBaiIUIBAoAhBJDQELCyAFC9USAgl/DH4jAEGgAWsiBSQAAkAgAkEjTQRAQQAhAiADQQFBti5BABAPDAELIAJBJGsiAiACQQNuIglBA2xHBEBBACECIANBAUG2LkEAEA8MAQsgACgCSCEGIAEgBUGcAWoiAkECEBEgACAFKAKcATsBUCABQQJqIAZBCGpBBBARIAFBBmogBkEMakEEEBEgAUEKaiAGQQQQESABQQ5qIAZBBGpBBBARIAFBEmogAEHcAGpBBBARIAFBFmogAEHgAGpBBBARIAFBGmogAEHUAGpBBBARIAFBHmogAEHYAGpBBBARIAFBImogAkECEBECQAJAAkAgBSgCnAEiAkGAgAFNBEAgBiACNgIQIAIgCUcEQCAFIAk2AoQBIAUgAjYCgAEgA0EBQZHwACAFQYABahAPQQAhAgwFCyAGKAIEIgIgBigCDCIISSAGKAIIIgsgBigCACIES3FFBEAgBSAIrSACrX03A3ggBSALrSAErX03A3AgA0EBQdvsACAFQfAAahAPQQAhAgwFCyAAKAJcIgdBACAAKAJgIgobRQRAIAUgCjYCBCAFIAc2AgAgA0EBQYPxACAFEA9BACECDAULAkACQCAAKAJUIgwgBEsNAEF/IAcgDGoiByAHIAxJGyAETQ0AIAAoAlgiByACSw0AQX8gByAKaiIKIAcgCksbIAJLDQELQQAhAiADQQFB1hRBABAPDAULAkAgACgC4AENACAAKALYASIHRQ0AIAAoAtwBIgpFDQAgCyAEayIEIAdGIAggAmsiAiAKRnENACAFIAI2AmwgBSAENgJoIAUgCjYCZCAFIAc2AmAgA0EBQcPoACAFQeAAahAPQQAhAgwFCyAGIAlBNBATIgQ2AhggBEUNAQJAIAYoAhBFDQAgAUEkaiAFQZgBaiICQQEQESAEIAUoApgBIglBB3YiCjYCICAEIAlB/wBxQQFqIgw2AhggACgC4AEhCyABQSVqIAJBARARIAQgBSgCmAE2AgAgAUEmaiACQQEQESAEIAUoApgBIgg2AgRBACECIAQoAgAiB0GAAmtBgX5JBEBBACEJDAULQQAhCSAIQYACa0GBfkkNBCAEKAIYIghBH0sNAyAEQQA2AiQgBCAAKAKgATYCKEEBIQkgBigCEEEBTQ0AQQAgCiALGyEKQQAgDCALGyELIAFBJ2ohAQNAIAEgBUGYAWpBARARIAQgBSgCmAEiB0EHdiIINgJUIAQgB0H/AHFBAWoiBzYCTAJAIAAoAuABDQAgAC0AvAFBBHENACAHIAtGIAggCkZxDQAgBSAINgJUIAUgBzYCUCAFIAk2AkwgBSAKNgJIIAUgCzYCRCAFIAk2AkAgA0ECQcfuACAFQUBrEA8LIAFBAWogBUGYAWoiCEEBEBEgBCAFKAKYATYCNCABQQJqIAhBARARIAQgBSgCmAEiCDYCOCAEKAI0IgdBgAJrQYF+SQ0FIAhBgAJrQYB+TQ0FIAQoAkwiCEEgTw0EIAFBA2ohASAEQQA2AlggBCAAKAKgATYCXCAEQTRqIQQgCUEBaiIJIAYoAhBJDQALC0EAIQIgACgCXCIIRQ0EIAAoAmAiC0UNBCAAIAitIg1CAX0iDyAGKAIIIAAoAlQiB2utfCANgKciATYCaCAAIAutIg5CAX0iECAGKAIMIAAoAlgiCmutfCAOgKciBDYCbAJAAkAgAUUNACAERQ0AQf//AyAEbiABTw0BCyAFIAQ2AhQgBSABNgIQIANBAUG16QAgBUEQahAPDAULIAEgBGwhCQJAIAAtAERBAnEEQCAAIAAoAhwgB2sgCG42AhwgACAAKAIgIAprIAtuNgIgIAAgDyAAKAIkIAdrrXwgDYA+AiQgACAQIAAoAiggCmutfCAOgD4CKAwBCyAAIAQ2AiggACABNgIkIABCADcCHAsgACAJQYwsEBMiATYCnAEgAUUEQCADQQFBzR1BABAPDAULIAYoAhBBuAgQEyEBIAAoAgwgATYC0CsgACgCDCgC0CtFBEAgA0EBQc0dQQAQDwwFC0EKQRQQEyEBIAAoAgwgATYC8CsgACgCDCIBKALwK0UEQCADQQFBzR1BABAPDAULIAFBCjYC+CtBCkEUEBMhASAAKAIMIAE2AvwrIAAoAgwiASgC/CtFBEAgA0EBQc0dQQAQDwwFCyABQQo2AoQsAkAgBigCECIERQ0AIAYoAhghCEEAIQEgBEEBRwRAIARBfnEhCwNAIAggAUE0bGoiBygCIEUEQCAAKAIMKALQKyABQbgIbGpBASAHKAIYQQFrdDYCtAgLIAggAUEBciIHQTRsaiIKKAIgRQRAIAAoAgwoAtArIAdBuAhsakEBIAooAhhBAWt0NgK0CAsgAUECaiEBIAJBAmoiAiALRw0ACwsgBEEBcUUNACAIIAFBNGxqIgIoAiANACAAKAIMKALQKyABQbgIbGpBASACKAIYQQFrdDYCtAgLIAkEQCAAKAKcASEBQQAhAgNAIAEgBigCEEG4CBATIgQ2AtArIARFBEBBACECIANBAUHNHUEAEA8MBwsgAUGMLGohASACQQFqIgIgCUkNAAsLIABBBDYCCCAGKAIQIgMEQEF/IAAoAlgiASAAKAJgIgIgACgCbEEBa2xqIgQgAmoiAiACIARJGyICIAYoAgwiBCACIARJG60hEEF/IAAoAlQiAiAAKAJcIgQgACgCaEEBa2xqIgAgBGoiBCAAIARLGyIAIAYoAggiBCAAIARJG60hESABIAYoAgQiACAAIAFJG60hEiACIAYoAgAiACAAIAJJG60hEyAGKAIYIQBBACEBA0AgACAANQIEIg1CAX0iFCASfCANgCIVPgIUIAAgADUCACIOQgF9IhYgE3wgDoAiFz4CECAAQn8gADUCKCIPhkJ/hSIYIBAgFHwgDYAgFX1C/////w+DfCAPiD4CDCAAIBEgFnwgDoAgF31C/////w+DIBh8IA+IPgIIIABBNGohACABQQFqIgEgA0cNAAsLQQEhAgwECyAFIAI2ApABIANBAUH2OyAFQZABahAPQQAhAgwDC0EAIQIgBkEANgIQIANBAUHNHUEAEA8MAgsgBSAINgI0IAUgCTYCMCADQQFBt/MAIAVBMGoQDwwBCyAFIAg2AiggBSAHNgIkIAUgCTYCICADQQFBkesAIAVBIGoQDwsgBUGgAWokACACC54DAQd/IwBBEGsiBiQAAn8gAiACQQFBAiAAKAJIKAIQIghBgQJJGyIHQQF0QQVqIgRuIgUgBGxGIAIgBE9xRQRAIANBAUGKI0EAEA9BAAwBCwJ/IAAoAghBEEYEQCAAKAKcASAAKALMAUGMLGxqDAELIAAoAgwLIQRBACEAIAQtAIgsIgJBBHEEQCAEKAKkA0EBaiEACyAAIAVqIgVBIE8EQCAGIAU2AgAgA0EBQYs7IAYQD0EADAELIAQgAkEEcjoAiCwgACAFSQRAIAQgAEGUAWxqQagDaiECA0AgASACQQEQESABQQFqIgEgAkEEaiAHEBEgASAHaiIBIAJBCGpBAhARIAIgAigCCCIDIAQoAggiCSADIAlJGzYCCCABQQJqIAJBDGpBARARIAFBA2oiASACQRBqIAcQESABIAdqIgEgBkEMakEBEBEgAiAGKAIMNgIkIAIgAigCECIDIAggAyAISRs2AhAgAkGUAWohAiABQQFqIQEgAEEBaiIAIAVHDQALCyAEIAVBAWs2AqQDQQELIQogBkEQaiQAIAoL7AEBBH8jAEEQayIEJAACfwJAIAEgBEEIagJ/IAAoAkgoAhBBgAJNBEAgAgRAQX8hBUEBDAILIANBAUG+I0EAEA9BAAwDCyACQQFNDQFBfiEFQQILIgYQESAEIAIgBWo2AgwgBCgCCCICIAAoAkgoAhAiBU8EQCAEIAU2AgQgBCACNgIAIANBAUHGOiAEEA9BAAwCCyAAIAIgASAGaiAEQQxqIAMQQkUEQCADQQFBviNBABAPQQAMAgtBASAEKAIMRQ0BGiADQQFBviNBABAPQQAMAQsgA0EBQb4jQQAQD0EACyEHIARBEGokACAHC9kBAQR/IwBBEGsiBCQAIAQgAjYCDAJAAkAgAEEAIAEgBEEMaiADEEJFDQAgBCgCDA0AAn8gACgCCEEQRgRAIAAoApwBIAAoAswBQYwsbGoMAQsgACgCDAshB0EBIQUgACgCSCgCEEECSQ0BIAcoAtArIgJBHGohBkEBIQEgAiEDA0AgAyACKAIYNgLQCCADIAIoAqQGNgLcDiADQdQIaiAGQYgGEBIaIANBuAhqIQMgAUEBaiIBIAAoAkgoAhBJDQALDAELIANBAUHWIkEAEA8LIARBEGokACAFC9YBAQN/IwBBEGsiBCQAAkAgAkEBQQIgACgCSCgCECIGQYECSRsiBUECakcEQEEAIQAgA0EBQYogQQAQDwwBCwJ/IAAoAghBEEYEQCAAKAKcASAAKALMAUGMLGxqDAELIAAoAgwLIQIgASAEQQxqIAUQEUEBIQAgASAFaiIFIARBCGpBARARIAYgBCgCDCIBTQRAIAQgBjYCBCAEIAE2AgAgA0EBQdjvACAEEA9BACEADAELIAVBAWogAigC0CsgAUG4CGxqQagGakEBEBELIARBEGokACAAC4QCAQV/IwBBEGsiBCQAAn8gACgCCEEQRgRAIAAoApwBIAAoAswBQYwsbGoMAQsgACgCDAshBgJAIAJBAUECIAAoAkgiBygCEEGBAkkbIgVNBEBBACECIANBAUGkI0EAEA8MAQsgBCAFQX9zIAJqNgIMIAEgBEEIaiAFEBEgBCgCCCIIIAcoAhBPBEBBACECIANBAUGA6QBBABAPDAELQQEhAiABIAVqIgEgBigC0CsgCEG4CGxqQQEQESAAIAQoAgggAUEBaiAEQQxqIAMQQ0UEQEEAIQIgA0EBQaQjQQAQDwwBCyAEKAIMRQ0AQQAhAiADQQFBpCNBABAPCyAEQRBqJAAgAgusBgEHfyMAQRBrIgYkACAGIAI2AgwgACgCSCEJAn8gACgCCEEQRgRAIAAoApwBIAAoAswBQYwsbGoMAQsgACgCDAsiBCAELQCILEEBcjoAiCwCQCACQQRNBEAgA0EBQbwiQQAQDwwBCyABIARBARARIAQoAgBBCE8EQCADQQFBmiJBABAPDAELIAFBAWogBkEIakEBEBEgBCAGKAIIIgI2AgQgAkEFTgRAIANBAUHxIUEAEA8gBEF/NgIECyABQQJqIARBCGpBAhARIAQoAggiB0GAgARrQYCAfE0EQCAGIAc2AgAgA0EBQak9IAYQDwwBCyAEIAAoAqQBIgIgByACGzYCDCABQQRqIARBEGpBARARIAQoAhBBAk8EQCADQQFBhypBABAPDAELIAFBBWohAiAGIAYoAgxBBWs2AgwCQCAJKAIQIgdFDQAgBCgCAEEBcSEIIAQoAtArIQRBACEJIAdBCE8EQCAHQXhxIQEDQCAEIAVBuAhsaiAINgIAIAQgBUEBckG4CGxqIAg2AgAgBCAFQQJyQbgIbGogCDYCACAEIAVBA3JBuAhsaiAINgIAIAQgBUEEckG4CGxqIAg2AgAgBCAFQQVyQbgIbGogCDYCACAEIAVBBnJBuAhsaiAINgIAIAQgBUEHckG4CGxqIAg2AgAgBUEIaiEFIApBCGoiCiABRw0ACwsgB0EHcSIBRQ0AA0AgBCAFQbgIbGogCDYCACAFQQFqIQUgCUEBaiIJIAFHDQALC0EAIQUgAEEAIAIgBkEMaiADEENFBEAgA0EBQbwiQQAQDwwBCyAGKAIMBEAgA0EBQbwiQQAQDwwBCwJ/IAAoAghBEEYEQCAAKAKcASAAKALMAUGMLGxqDAELIAAoAgwLIQEgACgCSCgCEEECTwRAIAEoAtArIgEoAgRBAnQhByABQbAHaiEKIAFBrAZqIQNBASEJIAEhAgNAIAIgAf0AAgT9CwK8CCACIAEoAhQ2AswIIAJB5A5qIAMgBxASGiACQegPaiAKIAcQEhogAkG4CGohAiAJQQFqIgkgACgCSCgCEEkNAAsLQQEhBQsgBkEQaiQAIAUL7AkBBn8jAEHwAGsiBCQAIARBADYCaAJAIAJBCEcEQCADQQFBvR5BABAPIANBAUG9HkEAEA8MAQsgASAAQcwBakECEBEgAUECaiAEQewAakEEEBEgAUEGaiAEQeQAakEBEBEgAUEHaiAEQegAakEBEBEgACgCzAEiAiAAKAJoIgggACgCbGxPBEAgBCACNgJgIANBAUGdOyAEQeAAahAPDAELIAAoApwBIAJBjCxsaiEFIAIgCG4hByAEKAJkIQECQCAAKAIsIgZBAE4gAiAGR3ENACAFKALUK0EBaiIGIAFGDQAgBCAGNgJYIAQgATYCVCAEIAI2AlAgA0EBQbU7IARB0ABqEA9BACEFDAELIAUgATYC1CsCQAJAIAQoAmwiAUEBa0EMTQR/IAFBDEcNASAEQQw2AjAgA0ECQeXXACAEQTBqEA8gBCgCbAUgAQtFBEAgA0EEQbLPAEEAEA8gAEEBNgI4CwJAAkACQAJAIAUoAtgrIgEEQCAEKAJkIgYgAUkNASAEIAE2AiQgBCAGNgIgIANBAUGFJyAEQSBqEA8gAEEBNgI4QQAhBQwHCyAEKAJoIgYNAQwDCyAEKAJoIgZFDQELIAQgBiAALQBEQQR2QQFxaiIBNgJoIAQoAmQiBiAFKALYKyIJQQFrSwRAIAQgCTYCBCAEIAY2AgAgA0EBQaImIAQQDyAAQQE2AjhBACEFDAULIAEgBk0EQCAEIAE2AhQgBCAGNgIQIANBAUHpJyAEQRBqEA8gAEEBNgI4QQAhBQwFCyAFIAE2AtgrCyABIAQoAmRBAWpHDQAgACAALQBEQQFyOgBECyAEKAJsIQEgAEEQNgIIIABBACABQQxrIAAoAjgbNgIYAkAgACgCLCIBQX9GBEBBBCEFIAIgByAIbGsiASAAKAIcSQ0BIAEgACgCJE8NASAHIAAoAiBJDQEgByAAKAIoT0ECdCEFDAELIAAoAswBIAFHQQJ0IQULIAAgAC0AREH7AXEgBXI6AERBASEFIAAoAsgBIgFFDQIgASgCKCIGIAAoAswBIgJBKGxqIgcgAjYCACAHIAQoAmQiCDYCDCAEKAJoIgEEQCAHIAE2AgQgByAEKAJoIgE2AgggBygCECICRQRAIAFBGBATIQEgACgCyAEoAiggACgCzAFBKGxqIAE2AhAgAQ0EQQAhBSADQQFByTRBABAPDAQLIAIgAUEYbBAXIQEgACgCyAEoAiggACgCzAFBKGxqIQIgAUUEQCACKAIQEBBBACEFIAAoAsgBKAIoIAAoAswBQShsakEANgIQIANBAUHJNEEAEA8MBAsgAiABNgIQDAMLIAcoAhAiAUUEQCAHQQo2AghBCkEYEBMhASAAKALIASgCKCIGIAAoAswBIgJBKGxqIgcgATYCECABRQ0CIAQoAmQhCAsgCCAGIAJBKGxqIgIoAghJDQIgAiAIQQFqIgI2AgggASACQRhsEBchASAAKALIASgCKCAAKALMAUEobGohAiABRQRAIAIoAhAQEEEAIQUgACgCyAEoAiggACgCzAFBKGxqIgBBADYCCCAAQQA2AhAgA0EBQck0QQAQDwwDCyACIAE2AhAMAgsgBCABNgJAIANBAUHy2QAgBEFAaxAPQQAhBQwBC0EAIQUgB0EANgIIIANBAUHJNEEAEA8LIARB8ABqJAAgBQurBwEIfyMAQdAAayIEJAAgBEEBNgJMAkACQCAAKALIASIFKAIoIgMNACAFIAAoAmwgACgCaGwiAzYCJCADQSgQEyEDIAAoAsgBIgUgAzYCKCADRQRAQQAhBQwCCyAFKAIkRQ0AA0BBACEFIAMgBkEobCIHaiIDQQA2AhQgA0HkADYCHEHkAEEYEBMhCSAHIAAoAsgBIggoAigiA2ogCTYCGCAJRQ0CIAZBAWoiBiAIKAIkSQ0ACwsgACgCLCEJAkAgAygCEEUNAAJAIAMgCUEobGoiAygCBEUEQCABIAApAzBCAnwgAhA2DQFBACEFIAJBAUGnKUEAEA8MAwsgASADKAIQKQMAQgJ8IAIQNg0AQQAhBSACQQFBpylBABAPDAILIAAoAghBgAJHDQAgAEEINgIICwJAIAAoAmwgACgCaGwiB0UNACAAKAKcASEFQQAhAyAHQQhPBEAgB0F4cSEIQQAhBgNAIAUgA0GMLGxqQX82AtQrIAUgA0EBckGMLGxqQX82AtQrIAUgA0ECckGMLGxqQX82AtQrIAUgA0EDckGMLGxqQX82AtQrIAUgA0EEckGMLGxqQX82AtQrIAUgA0EFckGMLGxqQX82AtQrIAUgA0EGckGMLGxqQX82AtQrIAUgA0EHckGMLGxqQX82AtQrIANBCGohAyAGQQhqIgYgCEcNAAsLIAdBB3EiBkUNAANAIAUgA0GMLGxqQX82AtQrIANBAWohAyAKQQFqIgogBkcNAAsLQQAhBSAAIARByABqQQAgBEHEAGogBEFAayAEQTxqIARBOGogBEE0aiAEQcwAaiABIAIQJ0UNACAJQQFqIQcDQAJAIAQoAkxFDQAgACAEKAJIIgNBAEEAIAEgAhArRQ0CIAAoAmghCCAAKAJsIQogBCADQQFqIgY2AiAgBCAIIApsNgIkIAJBBEGg1wAgBEEgahAPIAAoAtABIAAoAkwoAhgQdEUNAiAAKAKcASADQYwsbGoiBSgC3CsiCARAIAgQECAFQgA3AtwrCyAEIAY2AhAgAkEEQeb8ACAEQRBqEA8gAyAJRgRAIAEgACgCyAEpAwhCAnwgAhA2DQFBACEFIAJBAUGnKUEAEA8MAwsgBCAHNgIEIAQgBjYCACACQQJB3eUAIAQQD0EAIQUgACAEQcgAakEAIARBxABqIARBQGsgBEE8aiAEQThqIARBNGogBEHMAGogASACECcNAQwCCwsgACACEHIhBQsgBEHQAGokACAFC8gGAgd/AX4jAEHQAGsiAyQAIANBATYCTAJAAkAgACgCaCIEQQFHDQAgACgCbEEBRw0AIAAoAlQNACAAKAJYDQAgACgCTCIFKAIADQAgBSgCBA0AIAUoAgggACgCXEcNACAFKAIMIAAoAmBHDQBBACEEIAAgA0HIAGpBACADQcQAaiADQUBrIANBPGogA0E4aiADQTRqIANBzABqIAEgAhAnRQ0BAkAgACADKAJIQQBBACABIAIQKwRAIAAoAkwiASgCEA0BQQEhBAwDCyACQQFBkcIAQQAQDwwCCyABKAIYIQFBACECA0AgASACQTRsIgRqKAIsEBAgACgCTCIFKAIYIgEgBGoiBiAAKALQASIHKAIUKAIAKAIUIAJBzABsaiIIKAIkNgIsIAYgBygCGCgCGCAEaigCJDYCJCAIQQA2AiRBASEEIAJBAWoiAiAFKAIQSQ0ACwwBCwNAAkACfwJAIARBAUcNACAAKAJsQQFHDQAgACgCnAEoAtwrRQ0AIANBADYCSCAAQQA2AswBIAAgACgCCEGAAXI2AghBAAwBC0EAIQQgACADQcgAakEAIANBxABqIANBQGsgA0E8aiADQThqIANBNGogA0HMAGogASACECdFDQMgAygCTEUNASADKAJICyIHQQFqIQQgACAHQQBBACABIAIQKyEJIAAoAmggACgCbGwhBSAJRQRAIAMgBTYCBCADIAQ2AgAgAkEBQZc5IAMQD0EAIQQMAwsgAyAFNgIkIAMgBDYCICACQQRBoNcAIANBIGoQDyAAKALQASAAKAJMKAIYEHRFBEBBACEEDAMLAkACQCAAKAJoQQFHDQAgACgCbEEBRw0AIAAoAkwiBSgCACAAKAJIIgYoAgBHDQEgBSgCBCAGKAIERw0BIAUoAgggBigCCEcNASAFKAIMIAYoAgxHDQELIAAoApwBIAdBjCxsaiIFKALcKyIGRQ0AIAYQECAFQgA3AtwrCyADIAQ2AhAgAkEEQeb8ACADQRBqEA8gASkDCCIKUAR+QgAFIAogASkDOH0LUARAIAAoAghBwABGDQELIAhBAWoiCCAAKAJoIgQgACgCbGxHDQELCyAAIAIQciEECyADQdAAaiQAIAQLtQYBDH8gACgCSCEJAkAgACgCaCAAKAJsbCIMBEAgCSgCECIBQbgIbCENIAEgAWxBAnQhCiAAKAIMIQQgACgCnAEhAwNAIAMoAtArIQsgAyAEQYwsEBIiAUEANgLoKyABQX82AtQrIAFBADYCsCggAUEANgKELCABQQA2AvArIAFCADcC+CsgASALNgLQKyABIAEtAIgsQfwBcToAiCwgBCgC6CsEQCABIAoQFCIDNgLoKyADRQRAQQAPCyADIAQoAugrIAoQEhoLIAEgBCgC+CtBFGwiBRAUIgM2AvArQQAhCCADRQ0CIAMgBCgC8CsgBRASGiAEKAL0KyIGBEAgBCgC8CshAyABKALwKyEFQQAhBwNAIAMoAgwEQCAFIAMoAhAQFCIGNgIMIAZFBEBBAA8LIAYgAygCDCADKAIQEBIaIAQoAvQrIQYLIAEgASgC+CtBAWo2AvgrIAVBFGohBSADQRRqIQMgB0EBaiIHIAZJDQALCyABIAQoAoQsQRRsIgUQFCIDNgL8KyADRQ0CIAMgBCgC/CsgBRASGiABIAQoAoQsIgg2AoQsIAgEQCAEKAL8KyEDIAEoAvwrIQVBACEHA0AgAygCCCIGBEAgBSABKALwKyAGIAQoAvAra2o2AggLIAMoAgwiBgRAIAUgASgC8CsgBiAEKALwK2tqNgIMCyAFQRRqIQUgA0EUaiEDIAdBAWoiByAIRw0ACwsgCyAEKALQKyANEBIaIAFBjCxqIQMgDkEBaiIOIAxHDQALC0EBIQggAAJ/QQBBAUHIABATIgFFDQAaIAEgAS0AKEH+AXFBAXI6ACggAUEBQQQQEyIENgIUIAEgBA0AGiABEBBBAAsiATYC0AEgAUUEQEEADwsgACgC1AEhBUEAIQQgASAAQdAAajYCHCABIAk2AhhBAUHQBhATIQMgASgCFCADNgIAAkAgA0UNACAJKAIQQcwAEBMhAyABKAIUKAIAIgcgAzYCFCADRQ0AIAcgCSgCEDYCECAAKAKkASEEIAEgBTYCLCABIAQ2AgBBASEECyAEDQAgACgC0AEQVUEAIQggAEEANgLQASACQQFBwhtBABAPCyAIC9USAwx/AX0BfiMAQTBrIggkACAAQQE2AggCfwJAAkAgASAIQShqIgVBAiACEBpBAkcNACAFIAhBLGpBAhARIAgoAixBz/4DRw0AIABBAjYCCCAAKALIASABKQM4QgJ9IhA3AwAgCCAQNwMQIAJBBEHu3gAgCEEQahAPIAAoAsgBIgMpAwAhECADKAIYIgdBAWoiBSADKAIgIgRNBEAgAygCHCEEDAILIAMCfyAEs0MAAMhCkiIPQwAAgE9dIA9DAAAAAGBxBEAgD6kMAQtBAAsiBTYCICADKAIcIAVBGGwQFyIEBEAgAyAENgIcIAMoAhgiB0EBaiEFDAILIAMoAhwQECADQQA2AiAgA0IANwMYIAJBAUGpHUEAEA8LIAJBAUG19QBBABAPQQAMAQsgBCAHQRhsaiIEQQI2AhAgBCAQxDcDCCAEQc/+AzsBACADIAU2AhggASAAKAIQQQIgAhAaQQJHBEAgAkEBQZYSQQAQD0EADAELIAAoAhAgCEEoakECEBECQAJAIAgoAigiBEGQ/wNHBEADQEHgvQEhByAEQf/9A00EQCAIIAQ2AgAgAkEBQcoQIAgQD0EADAULA0AgByIFKAIAIgMEQCAFQQxqIQcgAyAERw0BCwsCQAJAIAMNAEECIQYgAkECQfUcQQAQD0GWEiEHAkACQCABIAAoAhBBAiACEBpBAkcNAANAIAAoAhAgCEEsakECEBFB4L0BIQMgCCgCLCIEQYD+A08EQANAIAMiBSgCACIMBEAgA0EMaiEDIAQgDEcNAQsLIAUoAgQgACgCCHFFBEBB/CghBwwDCyAMBEAgDEGQ/wNGBEAgCEGQ/wM2AigMBwsgASkDOCEQIAAoAsgBIgMoAhgiBUEBaiIEIAMoAiAiB00EQCADKAIcIQcMBQsgAwJ/IAezQwAAyEKSIg9DAACAT10gD0MAAAAAYHEEQCAPqQwBC0EACyIFNgIgIAMoAhwgBUEYbBAXIgcEQCADIAc2AhwgAygCGCIFQQFqIQQMBQsgAygCHBAQIANBADYCICADQgA3AxhBqR0hBwwDCyAGQQJqIQYLIAEgACgCEEECIAIQGkECRg0ACwsgAkEBIAdBABAPIAJBAUH9yABBABAPQQAMBwsgByAFQRhsaiIFIAY2AhAgBSAQpyAGa6w3AwggBUEAOwEAIAMgBDYCGCAIIAw2AihB4L0BIQQDQCAEIgUoAgAiA0UNASAEQQxqIQQgAyAMRw0ACwsgBSgCBCAAKAIIcUUEQCACQQFB/ChBABAPQQAMBgsgASAAKAIQQQIgAhAaQQJHBEAgAkEBQZYSQQAQD0EADAYLIAAoAhAgCEEkakECEBEgCCgCJCIEQQFNBEAgAkEBQaEuQQAQD0EADAYLIAggBEECayIHNgIkIAAoAhAhBCAAKAIUIAdJBEAgBCAHEBciBEUEQCAAKAIQEBAgAEIANwMQIAJBAUHUJUEAEA9BAAwHCyAAIAQ2AhAgACAIKAIkIgc2AhQLIAEgBCAHIAIQGiIEIAgoAiRHBEAgAkEBQZYSQQAQD0EADAYLIAAgACgCECAEIAIgBSgCCBEBAEUEQCACQQFBqBJBABAPQQAMBgsgASkDOCEQIAgoAiQhDAJAIAAoAsgBIgUoAhgiBkEBaiIHIAUoAiAiBE0EQCAFKAIcIQQMAQsgBQJ/IASzQwAAyEKSIg9DAACAT10gD0MAAAAAYHEEQCAPqQwBC0EACyIENgIgIAUoAhwgBEEYbBAXIgRFDQUgBSAENgIcIAUoAhgiBkEBaiEHCyAEIAZBGGxqIgQgDEEEajYCECAEIBCnIAxrQQRrrDcDCCAEIAM7AQAgBSAHNgIYIAEgACgCEEECIAIQGkECRwRAIAJBAUGWEkEAEA9BAAwGC0EBIAogA0Hc/gNGGyEKQQEgCyADQdL+A0YbIQtBASANIANB0f4DRhshDSAAKAIQIAhBKGpBAhARIAgoAigiBEGQ/wNHDQELCyANDQELIAJBAUGYJEEAEA9BAAwCCyALRQRAIAJBAUHGJEEAEA9BAAwCCyAKRQRAIAJBAUH0JEEAEA9BAAwCC0EAIQNBACENIwBBEGsiBCQAQQEhBwJAIAAtALwBQQFxRQ0AAkAgACgCcCILRQ0AAkADQCAAKAJ0IA1BA3RqIgUoAgAiCgRAIAMgBSgCBCIGayIFQQAgAyAFTxshBSADIAZJBEAgBiADayELIAMgCmohCgNAIAtBBEkEQEGOKyEDDAULIAogBEEMakEEEBEgBCgCDCIDQX9zIAlJBEBB9CohAwwFCyADIAtBBGsiBmsgBSADIAZLIgwbIQUgAyAJaiEJIAYgA2shCyAKQQAgAyAMG2pBBGohCiADIAZJDQALIAAoAnAhCwsgBSEDCyANQQFqIg0gC0kNAAsgA0UNAUEAIQcgAkEBQekWQQAQDwwCC0EAIQcgAkEBIANBABAPDAELIAAgCRAUIgM2AogBIANFBEBBACEHIAJBAUG+IEEAEA8MAQsgACAJNgJ8IAAoAnQhBgJAIAAoAnAiCgRAQQAhCUEAIQNBACEFA0AgBiAFQQN0Ig1qIgwoAgAiCwRAIAAoAogBIANqIQoCfyAMKAIEIgYgCU0EQCAKIAsgBhASGiADIAZqIQMgCSAGawwBCyAKIAsgCRASGiADIAlqIQMgBiAJayIGBEAgCSALaiEJA0AgBkEESQ0GIAkgBEEIakEEEBEgCUEEaiEJIAAoAogBIANqIQogBkEEayIGIAQoAggiC0kEQCAKIAkgBhASGiADIAZqIQMgBCgCCCAGawwDCyAKIAkgCxASGiAEKAIIIgogA2ohAyAJIApqIQkgBiAKayIGDQALC0EACyEJIAAoAnQgDWooAgAQECAAKAJ0IgYgDWpCADcCACAAKAJwIQoLIAVBAWoiBSAKSQ0ACyAAKAJ8IQkgACgCiAEhAwsgACAJNgKQASAAIAM2AnggAEEANgJwIAYQECAAQQA2AnQMAQtBACEHIAJBAUGOK0EAEA8LIARBEGokACAHRQRAIAJBAUGPPUEAEA9BAAwCCyACQQRB99YAQQAQDyAAKALIASABKQM4Qv7///8PfEL/////D4M3AwggAEEINgIIQQEMAQsgBSgCHBAQIAVBADYCICAFQgA3AxggAkEBQakdQQAQD0EACyEOIAhBMGokACAOCxwAIAAoAghFIAAoAsABQQBHIAAoAsQBQQBHcXELBABBAAsPACAABEAgACABNgK4AQsLjwEBBH8gACgCGCIBBEAgACgCHCIDQTRuIQQgA0E0TwR/QQAhAwNAIAEoAgAiAgRAIAJBAWsQECABQQA2AgALIAEoAgQiAgRAIAIQECABQQA2AgQLIAEoAggiAgRAIAIQECABQQA2AggLIAFBNGohASADQQFqIgMgBEcNAAsgACgCGAUgAQsQECAAQQA2AhgLC4YBAQR/IAAoAhgiAQRAIAAoAhwiAkHAAE8EfyACQQZ2IQRBACECA0AgASgCACIDBEAgAxAQIAFBADYCAAsgASgCBCIDBEAgAxAQIAFBADYCBAsgASgCPBAQIAFBADYCPCABQUBrIQEgAkEBaiICIARHDQALIAAoAhgFIAELEBAgAEEANgIYCws/AQF/IAAEQCAAKAJ0IgEEQCABEBAgAEEANgJ0CyAAKAJ4IgEEQCABEBAgAEEANgJ4CyAAKAKUARAQIAAQEAsLwaYFBFx/AnsGfgF9IwBB4ABrIiMkACAAKAIIIRoCQAJAAkACQCAAKAIARQRAIBogGigCECAaKAIIayAaKAIUIBooAgxrbEECdCIGEBgiAzYCPCADRQRAIAAoAiQaIAAoAiBBAUHRPEEAEA8gACgCJBogAEEcaiEQDAMLIANBACAGEBUaDAELIBooAjwiA0UNACADEBAgGkEANgI8CyAAKAIQIjIoAhwgMigCGEGYAWxqIgNBmAFrKAIAITUgA0GQAWsoAgAhNiAAKAIUIS8gACgCDCEwIAAoAgQhNyAAKAIcKAIARQ0CIABBHGohEAJAAn9BACABKAIEIgNBAEwNABogASgCACEGAkADQCAGIAdBDGxqIgQoAgBFDQEgB0EBaiIHIANHDQALQQAMAQsgBCgCBAsiBA0AQQFBnAEQEyIERQRAIAAoAiBBAUGQMEEAEA8MAgsgBEEANgKMASABKAIEIgNB/////wdHBH8CfyABKAIAIQYgA0EASgRAA0AgBiAJQQxsaiIHKAIARQRAIAcoAggiAwR/IAcoAgQgAxECACABKAIABSAGCyAJQQxsaiIBQQ82AgggASAENgIEQQEMAwsgCUEBaiIJIANHDQALC0EAIAYgA0EMbEEMahAXIgNFDQAaIAEgAzYCACADIAEoAgQiBkEMbGoiA0EPNgIIIAMgBDYCBCADQQA2AgAgASAGQQFqNgIEQQELBUEACw0AIAAoAiBBAUGMP0EAEA8gBCgCdCIBBEAgARAQIARBADYCdAsgBCgCeCIBBEAgARAQIARBADYCeAsgBCgClAEQECAEEBAMAQsgBCAAKAIYNgKQASAAKAIoISsgACgCJCEhIAAoAiAhHSAvKAKoBiERIDAoAhAhAQJAAkAgLygCECIWQcAAcQRAIBYhCiMAQbACayIPJAACQCARBEAgIQRAQQAhByAdQQFBgRhBABAPDAILQQAhByAdQQFBgRhBABAPDAELIAQoAnQhBwJAAkAgGigCFCAaKAIMayIDIBooAhAgGigCCGsiBmwiASAEKAKEAUsEQCAHEBAgBCABQQJ0IhEQGCIHNgJ0IAdFBEBBACEHDAQLIAQgATYChAEMAQsgB0UNASABQQJ0IRELIAdBACAREBUaCyAEKAJ4IQcCQCAEKAKIAUHPFEsNACAHEBAgBEHA0gAQGCIHNgJ4IAcNAEEAIQcMAQsgBEHQFDYCiAEgB0EAQcDSABAVGiAEIAM2AoABIAQgBjYCfCAaKAIYIgJFBEBBASEHDAELIBooAhwhDUEBIQcCQAJAAkACQAJAIBooAjQiAwRAIBooAgQhCUEAIQdBACEBAkAgA0EETwRAIANBfHEhAQNAIAkgCEEDdGoiBkEcaiAGQRRqIAZBDGogBv0JAgT9VgIAAf1WAgAC/VYCAAMgXv2uASFeIAhBBGoiCCABRw0ACyBeIF4gXv0NCAkKCwwNDg8AAQIDAAECA/2uASJeIF4gXv0NBAUGBwABAgMAAQIDAAECA/2uAf0bACEHIAEgA0YNAQsDQCAJIAFBA3RqKAIEIAdqIQcgAUEBaiIBIANHDQALCyADQQFGBEAgBCgCkAFFDQULIAcgBCgCmAFNDQEgBCgClAEgBxAXIhENAkEAIQcMBgsgBCgCkAFFDQULIAQoApQBIhENAUEAIQcMBAsgBCAHNgKYASAEIBE2ApQBCyAaKAI0RQRAQQAhBwwCCyAaKAIEIQhBACEHQQAhAQNAIAcgEWogCCABQQN0IgNqIgYoAgAgBigCBBASGiAaKAIEIgggA2ooAgQgB2ohByABQQFqIgEgGigCNEkNAAsMAQsgGigCBCgCACERC0EAIQFBACEIAn9BACAaKAIoIgNFDQAaIBooAgAiBigCCCEIQQAgA0EBRg0AGiAGKAIgCyEDIAIgDWshRQJAIAMgCGoiCEUEQEEAIQkMAQtBASEBIBooAgAiAygCACEFQQAhCSAIQQFGBEBBACEBDAELIAMoAhghCQsgRUEBaiEWIAQoAnQhDiAEKAJ4IRQgGigCDCESIBooAhQhGCAaKAIIISQgGigCECErAkACQAJAAkACQAJAAkACQAJAIAFFDQAgCQ0AICFFDQEgHUECQaHQAEEAEA9BASEIDAILIAhBBEkNASAhBEAgDyAINgJwIB1BAUH8xgAgD0HwAGoQDwwICyAPIAg2AmAgHUEBQfzGACAPQeAAahAPQQAhBwwICyAdQQJBodAAQQAQDyAaKAIYIgFBHksNAUEBIQwgASAWTw0DDAULIBooAhgiAUEeTQ0BICFFDQAgDyABNgIgIB1BAUGb2wAgD0EgahAPDAULIA8gATYCACAdQQFBm9sAIA8QD0EAIQcMBQsgASAWSQ0BIAhBAkkEQCAIIQwMAQsgASAWRwRAIAghDAwBC0EBIQxBkMcBLQAADQAgIUUEQEGQxwFBAToAACAPIAg2AkAgHUECQabMACAPQUBrEA8MAQtBkMcBLQAARQRAQZDHAUEBOgAAIA8gCDYCUCAdQQJBpswAIA9B0ABqEA8LCwJAAkAgBUECSQ0AIAUgB0sNACAFIAlqIAdNDQELICEEQEEAIQcgHUEBQcLGAEEAEA8MBQtBACEHIB1BAUHCxgBBABAPDAQLAkACQCAFIBFqIhNBAWstAABBBHQgE0ECay0AAEEPcXIiBkECSQ0AIAUgBkgNACAGQfAfSQ0BCyAhBEBBACEHIB1BAUHW8gBBABAPDAULQQAhByAdQQFB1vIAQQAQDwwECyAaKAIcISYgD0EANgKQAiAPQQA2ApgCIA9CADcDiAIgD0IANwOoAiAPQgA3ApwCIA8gBkEBayIHNgKUAiAPIAUgEWogBmsiATYCgAJC/wEhYCAGQQJPBEAgATEAACFgC0EIIQMgD0EINgKQAiAPIAZBAmsiCDYClAIgDyBgQg+EIGAgB0EBRhsiYDcDiAIgDyABIAZBAUpqIgc2AoACIA8gYEL/AVEiDTYCmAICfwJAIAFBA3EiAkEDRg0AQv8BIWEgDQRAQQAgBy0AAEGPAUsNAhoLIAZBA04EQCAHMQAAIWELIA8gBkEDayINNgKUAiAPQQ9BECBgQv8BUSILGyIDNgKQAiAPIAcgBkECSmoiATYCgAIgDyBhQg+EIGEgCEEBRhsiYUL/AVE2ApgCIA8gYEIHQgggCxuGIGGEImA3A4gCIAJBAkYNACBhQv8BUQRAQQAgAS0AAEGPAUsNAhoLQv8BIWIgBkEETgRAIAExAAAhYgsgDyAGQQRrIgc2ApQCIA8gASAGQQNKaiIBNgKAAiAPIGJCD4QgYiANQQFGGyJiQv8BUTYCmAIgDyADQQdBCCBhQv8BUSIIG2oiAzYCkAIgDyBgQgdCCCAIG4YgYoQiYDcDiAIgAkEBRg0AQv8BIWEgYkL/AVEEQEEAIAEtAABBjwFLDQIaCyAGQQVOBEAgATEAACFhCyAPIAZBBWs2ApQCIA8gASAGQQRKajYCgAIgDyBhQg+EIGEgB0EBRhsiYUL/AVE2ApgCIA8gA0EHQQggYkL/AVEiARtqIgM2ApACIA8gYEIHQgggARuGIGGEImA3A4gCCyAPIGBBwAAgA2uthjcDiAJBAQtFBEAgIQRAQQAhByAdQQFBg9UAQQAQDwwFC0EAIQcgHUEBQYPVAEEAEA8MBAsgKyAkayEVIA8gBkECayILNgL0ASAPIAUgEWoiAkEDayIDNgLgASAPIAJBAmstAAAiGUGPAUsiDTYC+AEgDyAZQQR2rSJgNwPoASAPQQNBBCBgQgeDQgdRGyIBNgLwASADQQNxQQFqIgcgCyAHIAtIGyEIAkACQCAGQQJMBEAgDyALIAhrIgI2AvQBDAELIA8gAkEEayIHNgLgASAPIAMtAAAiF0GPAUsiDTYC+AEgDyAXrSJhIAGthiBghCJgNwPoASAPQQhBB0EIIGFC/wCDQv8AURsgGUGPAU0bIAFqIgE2AvABAkAgCEEBRgRAIAchAwwBCyAPIAJBBWsiAzYC4AEgDyAHLQAAIhlBjwFLIg02AvgBIA8gGa0iYSABrYYgYIQiYDcD6AEgD0EIQQdBCCBhQv8Ag0L/AFEbIBdBjwFNGyABaiIBNgLwASAIQQJGDQAgDyACQQZrIgc2AuABIA8gAy0AACIXQY8BSyINNgL4ASAPIBetImEgAa2GIGCEImA3A+gBIA9BCEEHQQggYUL/AINC/wBRGyAZQY8BTRsgAWoiATYC8AEgCEEDRgRAIAchAwwBCyAPIAJBB2siAzYC4AEgDyAHMQAAImFCjwFWIg02AvgBIA8gYSABrYYgYIQiYDcD6AEgD0EIQQdBCCBhQv8Ag0L/AFEbIBdBjwFNGyABaiIBNgLwAQsgDyALIAhrIgI2AvQBIAFBIEsNAQsCQCACQQROBEAgA0EDaygCACEHIA8gAkEEazYC9AEgDyADQQRrNgLgAQwBCyACQQBMBEBBACEHDAELIAJBAXEhRwJAIAJBAUYEQEEYIQhBACEHDAELIAJB/v///wdxIRdBGCEIQQAhB0EAIQsDQCAPIANBAWsiHzYC4AEgAy0AACFGIA8gA0ECayIDNgLgASAPIAJBAWs2AvQBIB8tAAAhHyAPIAJBAmsiAjYC9AEgRiAIdCAHciAfIAhBCGt0ciEHIAhBEGshCCALQQJqIgsgF0cNAAsLIEdFDQAgDyADQQFrNgLgASADLQAAIUggDyACQQFrNgL0ASBIIAh0IAdyIQcLIA8gB0H/AXEiA0GPAUs2AvgBIA9BB0EIIAdBgICA+AdxQYCAgPgHRhtBCCANGyICQQhBB0EIIAdBgID8A3FBgID8A0YbIAdB/////3hNG2oiCEEIQQdBCCAHQYD+AXFBgP4BRhsgB0EQdkH/AXEiDUGPAU0baiILQQhBB0EIIAdB/wBxQf8ARhsgB0EIdkH/AXEiGUGPAU0bIAFqajYC8AEgDyANIAJ0IAdBGHZyIBkgCHRyIAMgC3RyrSABrYYgYIQ3A+gBCyAPQcABaiARIAUgBmtB/wEQWwJ/QQAgDEECSQ0AGiAPQaABaiATIAlBABBbQQAgDEECRg0AGkIAIWBCACFiIA9BATYCmAEgD0EANgKQASAPQgA3A4gBIA8gCUEBayIGNgKUASAPIAUgEWogCWoiA0EBayIBNgKAASABQQNxIQUCQCAJQQBMBEAgASEDDAELIA8gA0ECayIDNgKAASABMQAAIWALIA8gYDcDiAEgDyBgQo8BViIRNgKYASAPQQdBCCBgQv8Ag0L/AFEbIg02ApABAkAgBUUNACAPIAlBAmsiAjYClAECQCAJQQJIBEAgAyEHDAELIA8gA0EBayIHNgKAASADMQAAIWILIA8gYkKPAVYiETYCmAEgDyBiIA2thiBghCJhNwOIASAPQQhBB0EIIGJC/wCDQv8AURsgYEKPAVgbIA1qIg02ApABIAVBAUYEQCAHIQMgYSFgIAYhCSACIQYMAQsgDyAJQQNrIgg2ApQBAkAgCUEDSARAIAchAQwBCyAPIAdBAWsiATYCgAEgBzEAACFjCyAPIGNCjwFWIhE2ApgBIA8gYyANrYYgYYQiYDcDiAEgD0EIQQdBCCBjQv8Ag0L/AFEbIGJCjwFYGyANaiINNgKQASAFQQJGBEAgASEDIAIhCSAIIQYMAQsgDyAJQQRrIgY2ApQBQgAhYgJAIAlBBEgEQCABIQMMAQsgDyABQQFrIgM2AoABIAExAAAhYgsgDyBiQo8BViIRNgKYASAPIGIgDa2GIGCEImA3A4gBIA9BCEEHQQggYkL/AINC/wBRGyBjQo8BWBsgDWoiDTYCkAEgCCEJCyANQSBNBEACQCAJQQVOBEAgA0EDaygCACEHIA8gCUEFazYClAEgDyADQQRrNgKAAQwBC0EAIQcgCUECSA0AQRghCQNAIA8gA0EBayIBNgKAASADLQAAIUkgDyAGQQFrIgI2ApQBIEkgCXQgB3IhByAGQQFLIUogASEDIAlBCGshCSACIQYgSg0ACwsgDyAHQf8BcSIBQY8BSzYCmAEgD0EHQQggB0GAgID4B3FBgICA+AdGG0EIIBEbIgNBCEEHQQggB0GAgPwDcUGAgPwDRhsgB0H/////eE0baiIGQQhBB0EIIAdBgP4BcUGA/gFGGyAHQRB2Qf8BcSIJQY8BTRtqIgJBCEEHQQggB0H/AHFB/wBGGyAHQQh2Qf8BcSIIQY8BTRsgDWpqNgKQASAPIAkgA3QgB0EYdnIgCCAGdHIgASACdHKtIA2thiBghDcDiAELQQELITEgGCASayEfIBZBAWohLCAUQQA6AMAQIBRBwBBqIQsgD0GAAmoQKCECIBVBAEoEQCAmQQFrIRMgFCEDIAshCEEAIREgDiEGQQAhDQNAIA0hBSARQQh0IA9B4AFqEC9B/wBxQQF0ckGg/QBqLwEAIQECQCARDQAgAUEAIAJBAmsiB0F/RhshASACQQFKBEAgByECDAELIA9BgAJqECghAgsgDykD6AEhZCAPKALwASFLIAMgAygCACABQQR2IhhBA3EgAUECdkEwcXIgInRyIhY2AgAgAUEFdkEHcSABQRBxIh5BBHZyIREgSyABQQdxIgdrIQ0gZCAHrYgiYKchCUEAIQcgFSAFQQJySgRAIBFBCHQgCUH/AHFBAXRyQaD9AGovAQAhBwJAIBENACAHQQAgAkECayIJQX9GGyEHIAJBAUoEQCAJIQIMAQsgD0GAAmoQKCECCyAHQQR2QQFxIAdBBXZBB3FyIREgDSAHQQdxIglrIQ0gYCAJrYgiYKchCQsgAyAHQQJ0QYAGcSAHQTBxciAiQQRqdCAWcjYCAAJAIAdBAnZBAnEgAUEDdkEBcXIiF0EDRw0AQQRBAyACQQJrIhZBf0YbIRcgAkEBSgRAIBYhAgwBCyAPQYACahAoIQILAn8gF0UEQCAPQoGAgIAQNwJ4QQAMAQsgF0ECTQRAIA9BASAJQQdxQdSdAWotAAAiFkEFdkF/IBZBAnZBB3EiGXRBf3MgCSAWQQNxIgl2cWpBAWoiFiAXQQFGIhcbNgJ8IA8gFkEBIBcbNgJ4IAkgGWoMAQsgCSAJQQdxQdSdAWotAAAiFkEDcSIZdiEJIBdBA0YEQCAWQQV2QQFqIRcgGUEDRgRAIA8gCUEBcUECcjYCfCAPIBdBfyAWQQJ2QQdxIhZ0QX9zIAlBAXZxajYCeCAWQQRqDAILIA8gFyAJIAlBB3FB1J0Bai0AACIJQQNxIhJ2IiBBfyAWQQJ2QQdxIhZ0QX9zcWo2AnggD0F/IAlBAnZBB3EiF3RBf3MgICAWdnEgCUEFdmpBAWo2AnwgFiAZaiASaiAXagwBCyAPIAkgCUEHcUHUnQFqLQAAIglBA3EiEnYiIEF/IBZBAnZBB3EiF3RBf3NxIBZBBXZqQQNqNgJ4IA9BfyAJQQJ2QQdxIhZ0QX9zICAgF3ZxIAlBBXZqQQNqNgJ8IBIgGWogF2ogFmoLIQkCQCAsIA8oAngiGU8EQCAPKAJ8IhIgLE0NAQsgIQRAQQAhByAdQQFBmfYAQQAQDwwHC0EAIQcgHUEBQZn2AEEAEA8MBgsgDyANIAlrNgLwASAPIGAgCa2INwPoASAHQfABcSAYQQ9xckH/AUH/ASAFQQRqIg0gFWtBAXR2IA0gFUwbIgkgCUHVAHEgH0EBShsiCUF/c3EEQCAhBEBBACEHIB1BAUGv2gBBABAPDAcLQQAhByAdQQFBr9oAQQAQDwwGCwJAAkAgHgRAIA9BwAFqEBshFyAPIA8oAtABIBkgAUETdEEfdWoiFms2AtABIA8gDykDyAEgFq2INwPIASAXQX8gFnRBf3NxIAFBCHZBAXEgFnRyQQFyQQJqIBN0IBdBH3RyIRYMAQtBACEWIAlBAXFFDQELIAYgFjYCAAsCQCABQSBxBEAgD0HAAWoQGyEXIA8gDygC0AEgGSABQRJ0QR91aiIWazYC0AEgDyAPKQPIASAWrYg3A8gBIAYgFUECdGogF0F/IBZ0QX9zcSABQQl2QQFxIBZ0ckEBciIWQQJqIBN0IBdBH3RyNgIAIAhBICAWZ2siFiAILQAAQf8AcSIXIBYgF0sbQYABcjoAAAwBCyAJQQJxRQ0AIAYgFUECdGpBADYCAAsgBkEEaiEXAkACQCABQcAAcQRAIA9BwAFqEBshGCAPIA8oAtABIBkgAUERdEEfdWoiFms2AtABIA8gDykDyAEgFq2INwPIASAYQX8gFnRBf3NxIAFBCnZBAXEgFnRyQQFyQQJqIBN0IBhBH3RyIRYMAQtBACEWIAlBBHFFDQELIBcgFjYCAAsgCEEAOgABAkAgAUGAAXEEQCAPQcABahAbIRggDyAPKALQASAZIAFBEHRBH3VqIhZrNgLQASAPIA8pA8gBIBatiDcDyAEgFyAVQQJ0aiAYQX8gFnRBf3NxIAFBC3ZBAXEgFnRyQQFyIgFBAmogE3QgGEEfdHI2AgAgCEGgfyABZ2s6AAEMAQsgCUEIcUUNACAXIBVBAnRqQQA2AgALIAZBCGohAQJAAkAgB0EQcQRAIA9BwAFqEBshGSAPIA8oAtABIBIgB0ETdEEfdWoiFms2AtABIA8gDykDyAEgFq2INwPIASAZQX8gFnRBf3NxIAdBCHZBAXEgFnRyQQFyQQJqIBN0IBlBH3RyIRcMAQtBACEXIAlBEHFFDQELIAEgFzYCAAsCQCAHQSBxBEAgD0HAAWoQGyEZIA8gDygC0AEgEiAHQRJ0QR91aiIWazYC0AEgDyAPKQPIASAWrYg3A8gBIAEgFUECdGogGUF/IBZ0QX9zcSAHQQl2QQFxIBZ0ckEBciIBQQJqIBN0IBlBH3RyNgIAIAhBICABZ2siASAILQABQf8AcSIWIAEgFksbQYABcjoAAQwBCyAJQSBxRQ0AIAEgFUECdGpBADYCAAsgBkEMaiEBAkACQCAHQcAAcQRAIA9BwAFqEBshGSAPIA8oAtABIBIgB0ERdEEfdWoiFms2AtABIA8gDykDyAEgFq2INwPIASAZQX8gFnRBf3NxIAdBCnZBAXEgFnRyQQFyQQJqIBN0IBlBH3RyIRcMAQtBACEXIAlBwABxRQ0BCyABIBc2AgALIAhBAmoiCEEAOgAAAkAgB0GAAXEEQCAPQcABahAbIRYgDyAPKALQASASIAdBEHRBH3VqIglrNgLQASAPIA8pA8gBIAmtiDcDyAEgASAVQQJ0aiAWQX8gCXRBf3NxIAdBC3ZBAXEgCXRyQQFyIgFBAmogE3QgFkEfdHI2AgAgCEGgfyABZ2s6AAAMAQsgCUGAAUkNACABIBVBAnRqQQA2AgALICJBEHMhIiADIAVBBHFqIQMgBkEQaiEGIA0gFUgNAAsLIApBCHEhOCAUQbAMaiEoIBRBoAhqISkgFEGQBGohJSAfQQNOBEAgFUEDbCE5IBVBAXQhOiAmQQFrISBBAyAmQQJrIgF0IS1BASABdCEuIBVBB2pBAXZB/P///wdxQQRqIT0gKyAkQX9zaiIBQQN2IgNBAnQiPkEEaiE7IANBAWoiP0H8////A3EiHEECdCE8IBxBA3QhEiABQRhJIUBBAiEZA0AgGSETIAstAAAhFiALQQA6AAAgIkFvcUECcyEiAkAgFUEATARAIBNBAmohGQwBCyAlIBQgE0EEcRshESATQQJqIRkgDiATIBVsQQJ0aiEIQQAhCiALIQZBACENA0AgDSEFIAYtAAFBBXZBBHEgCiAWQQd2cnIiA0EIdCAPQeABahAvQf8AcUEBdHJBoI0Bai8BACEBAkAgAw0AIAFBACACQQJrIgNBf0YbIQEgAkEBSgRAIAMhAgwBCyAPQYACahAoIQILIA8pA+gBIWUgDygC8AEhTCARIBEoAgAgAUEEdkEDcSABQQJ2QTBxciAidHIiCTYCACABQcAAcSIqQQV2IAFBgAFxIidBBnZyIQogTCABQQdxIgNrIRcgZSADrYgiYKchDUEAIRgCQCAVIAVBAnJMBEBBACEHDAELIAogBi0AAkEFdkEEcSAGLQABQQd2cnIiA0EIdCANQf8AcUEBdHJBoI0Bai8BACEHAkAgAw0AIAdBACACQQJrIgNBf0YbIQcgAkEBSgRAIAMhAgwBCyAPQYACahAoIQILIAdBBXYgB0EGdnJBAnEhCiAXIAdBB3EiA2shFyBgIAOtiCJgpyENCyARIAdBAnRBgAZxIAdBMHFyICJBBGp0IAlyNgIAQQEhCUEBIQMCQCAHQQJ2QQJxIAFBA3ZBAXFyIh5FDQAgDSANQQdxQdSdAWotAAAiA0EDcSINdiEJIB5BA0cEQEEBIAlBfyADQQJ2QQdxIhh0QX9zcSADQQV2akEBaiIDIB5BAUYiHhshCSADQQEgHhshAyANIBhqIRgMAQsgCUEHcUHUnQFqLQAAIh5BA3EiMyANIANBAnZBB3EiG2pqIB5BAnZBB3EiDWohGCAJIDN2IglBfyAbdEF/c3EgA0EFdmpBAWohA0F/IA10QX9zIAkgG3ZxIB5BBXZqQQFqIQkLIA8gFyAYazYC8AEgDyBgIBitiDcD6AEgAUHwAXEiDSANQQFrcQRAIAMgFkH/AHEiFiAGLQABQf8AcSIXIBYgF0sbIhZBAmsiF0EAIBYgF08baiEDCyAHQfABcSIXIBdBAWtxBEAgCSAGLQABQf8AcSIWIAYtAAJB/wBxIhggFiAYSxsiFkECa0EAIBZBAksbaiEJCyADICxNIAkgLE1xRQRAICEEQEEAIQcgHUEBQf32AEEAEA8MCQtBACEHIB1BAUH99gBBABAPDAgLIAYtAAIhFiAGQQA7AAEgFyANQQR2ckH/AUH/ASAFQQRqIg0gFWtBAXR2IA0gFUwbIhdB1QBxIBcgGSAfShsiGEF/c3EEQCAhBEBBACEHIB1BAUGv2gBBABAPDAkLQQAhByAdQQFBr9oAQQAQDwwICwJAAkAgAUEQcQRAIA9BwAFqEBshHiAPIA8oAtABIAMgAUETdEEfdWoiF2s2AtABIA8gDykDyAEgF62INwPIASAeQX8gF3RBf3NxIAFBCHZBAXEgF3RyQQFyQQJqICB0IB5BH3RyIRcMAQtBACEXIBhBAXFFDQELIAggFzYCAAsCQCABQSBxBEAgD0HAAWoQGyEeIA8gDygC0AEgAyABQRJ0QR91aiIXazYC0AEgDyAPKQPIASAXrYg3A8gBIAggFUECdGogHkF/IBd0QX9zcSABQQl2QQFxIBd0ckEBciIXQQJqICB0IB5BH3RyNgIAIAZBICAXZ2siFyAGLQAAQf8AcSIeIBcgHksbQYABcjoAAAwBCyAYQQJxRQ0AIAggFUECdGpBADYCAAsgCEEEaiEeAkACQCAqBEAgD0HAAWoQGyEbIA8gDygC0AEgAyABQRF0QR91aiIXazYC0AEgDyAPKQPIASAXrYg3A8gBIBtBfyAXdEF/c3EgAUEKdkEBcSAXdHJBAXJBAmogIHQgG0EfdHIhFwwBC0EAIRcgGEEEcUUNAQsgHiAXNgIACwJAICcEQCAPQcABahAbIRcgDyAPKALQASADIAFBEHRBH3VqIgNrNgLQASAPIA8pA8gBIAOtiDcDyAEgHiAVQQJ0aiAXQX8gA3RBf3NxIAFBC3ZBAXEgA3RyQQFyIgFBAmogIHQgF0EfdHI2AgAgBkGgfyABZ2s6AAEMAQsgGEEIcUUNACAeIBVBAnRqQQA2AgALIAhBCGohAQJAAkAgB0EQcQRAIA9BwAFqEBshFyAPIA8oAtABIAkgB0ETdEEfdWoiA2s2AtABIA8gDykDyAEgA62INwPIASAXQX8gA3RBf3NxIAdBCHZBAXEgA3RyQQFyQQJqICB0IBdBH3RyIQMMAQtBACEDIBhBEHFFDQELIAEgAzYCAAsCQCAHQSBxBEAgD0HAAWoQGyEXIA8gDygC0AEgCSAHQRJ0QR91aiIDazYC0AEgDyAPKQPIASADrYg3A8gBIAEgFUECdGogF0F/IAN0QX9zcSAHQQl2QQFxIAN0ckEBciIBQQJqICB0IBdBH3RyNgIAIAZBICABZ2siASAGLQABQf8AcSIDIAEgA0sbQYABcjoAAQwBCyAYQSBxRQ0AIAEgFUECdGpBADYCAAsgCEEMaiEBAkACQCAHQcAAcQRAIA9BwAFqEBshFyAPIA8oAtABIAkgB0ERdEEfdWoiA2s2AtABIA8gDykDyAEgA62INwPIASAXQX8gA3RBf3NxIAdBCnZBAXEgA3RyQQFyQQJqICB0IBdBH3RyIQMMAQtBACEDIBhBwABxRQ0BCyABIAM2AgALIAZBAmohBgJAIAdBgAFxBEAgD0HAAWoQGyEXIA8gDygC0AEgCSAHQRB0QR91aiIDazYC0AEgDyAPKQPIASADrYg3A8gBIAEgFUECdGogF0F/IAN0QX9zcSAHQQt2QQFxIAN0ckEBciIBQQJqICB0IBdBH3RyNgIAIAZBoH8gAWdrOgAADAELIBhBgAFJDQAgASAVQQJ0akEANgIACyAiQRBzISIgESAFQQRxaiERIAhBEGohCCANIBVIDQALCwJAIAxBAkkNACATQQJxRQ0AIBlBBHEhAwJAAn8CQAJAIDEEQCAUICUgAxshFkEAIRggFUEATA0BIA4gE0ECayAVbEECdGohEQNAIA9BgAFqEC8hB0EAIQEgFigCACIIBEAgESAYQQJ0aiEBQQAhCUEPIQYDQAJAIAYgCHFFDQAgBkGRosSIAXEiDSAIcQRAIAEgASgCACAHQX9zQQFxICB0cyAucjYCACAHQQF2IQcLIA1BAXQgCHEEQCABIBVBAnRqIgUgBSgCACAHQX9zQQFxICB0cyAucjYCACAHQQF2IQcLIA1BAnQgCHEEQCABIDpBAnRqIgUgBSgCACAHQX9zQQFxICB0cyAucjYCACAHQQF2IQcLIA1BA3QgCHFFDQAgASA5QQJ0aiINIA0oAgAgB0F/c0EBcSAgdHMgLnI2AgAgB0EBdiEHCyABQQRqIQEgBkEEdCEGIAlBAWoiCUEIRw0ACyAIaSEBCyAWQQRqIRYgDyAPKAKQASABazYCkAEgDyAPKQOIASABrYg3A4gBIBhBCGoiGCAVSA0ACwsgKSAoIAMbIQUgFCAlIAMbIRYgA0UhGCAVQQBMDQNBACEDIEANASAFIBYgO2pJIBYgBSA7aiIHSXENAUEAIAUiASAWIgYgPmpBCGpJIAZBBGogB0lxDQIaIAYgPGohBiABIDxqIQH9DAAAAAAAAAAAAAAAAAAAAAAhXkEAIQcDQCAFIAdBAnQiA2oiCSADIBZqIgP9AAIAIl9BBP2tASBfQQT9qwEgXiBf/Q0MDQ4PEBESExQVFhcYGRobQRz9rQH9UP1QIF/9UCJe/QsCACAJIF4gA/0AAgRBHP2rAf1QIl5BAf2tAf0Md3d3d3d3d3d3d3d3d3d3d/1OIF5BAf2rAf0M7u7u7u7u7u7u7u7u7u7u7v1O/VAgXv1QIF/9T/0LAgAgXyFeIAdBBGoiByAcRw0ACyAcID9GDQMgEiEDIF79GwMMAgsgA0UhGCApICggAxshBQwCCyAFIQEgFiEGQQALIQcDQCAHQRx2IQkgASAGKAIAIgdBBHYgCSAHQQR0cnIgB3IiCTYCACABIAkgBigCBEEcdHIiCUEBdkH37t27B3EgCUEBdEHu3bv3fnFyIAlyIAdBf3NxNgIAIAFBBGohASAGQQRqIQYgA0EIaiIDIBVIDQALCyATQQZJDQBBACEJQQAhESAWIQEgKSAoIBgbIhshByAUICUgGBsiFyEGAkAgFUEATCINDQADQCABQQRqIQMgBygCACEIIAEoAgAhASAHIDgEfyAIBSABQQR0IBFBHHZyIAFBBHZyIAMoAgBBHHRyIAFyQQN0QYiRosR4cSAIcgsgBigCAEF/c3E2AgAgBkEEaiEGIAdBBGohByABIREgAyEBIAlBCGoiCSAVSA0ACyANDQAgDiATQQZrIBVsQQJ0aiFBQQAhHiAXIREDQEEAIQMgGygCACIBBEAgFSAeayFCQQAhB0EAIQoDQCAHIU0gD0GgAWoQGyEHAkAgCiAKQQRqIgYgQiAGIB5qIBVIGyIzTiJDBEBBACEGDAELIBEoAgBBf3MhKiBBIAogHnJBAnRqIRhBACEGQQ8gCiIJQQJ0IkR0Ig0hCANAAkAgASAIcUUNACAIQZGixIgBcSInIAFxBEAgB0EBcQRAIAMgJ3IhA0EyIAlBAnR0ICpxIAFyIQELIAdBAXYhByAGQQFqIQYLIAEgJ0EBdCI0cQRAIAdBAXEEQCADIDRyIQMgAUH0ACAJQQJ0dCAqcXIhAQsgB0EBdiEHIAZBAWohBgsgASAnQQJ0IjRxBEAgB0EBcQRAIAMgNHIhAyABQegBIAlBAnR0ICpxciEBCyAHQQF2IQcgBkEBaiEGCyABICdBA3QiJ3FFDQAgB0EBcQRAIAMgJ3IhAyABQcABIAlBAnR0ICpxciEBCyAGQQFqIQYgB0EBdiEHCyAIQQR0IQggCUEBaiIJIDNIDQALIAMgRHZB//8DcUUNACBDDQADQAJAIAMgDXFFDQAgDUGRosSIAXEiCSADcQRAIBggGCgCACAHQR90ciAtcjYCACAHQQF2IQcgBkEBaiEGCyAJQQF0IANxBEAgGCAVQQJ0aiIIIAgoAgAgB0EfdHIgLXI2AgAgB0EBdiEHIAZBAWohBgsgCUECdCADcQRAIBggOkECdGoiCCAIKAIAIAdBH3RyIC1yNgIAIAdBAXYhByAGQQFqIQYLIAlBA3QgA3FFDQAgGCA5QQJ0aiIJIAkoAgAgB0EfdHIgLXI2AgAgBkEBaiEGIAdBAXYhBwsgDUEEdCENIBhBBGohGCAKQQFqIgogM0gNAAsLIA8gDygCsAEgBms2ArABIA8gDykDqAEgBq2INwOoAUEBIQdBBCEKIE1BAXFFDQALIBsgGygCBCADQRt2QQ5xIANBHXZyIANBHHZyIBEoAgRBf3NxcjYCBAsgESgCACADciIDQQN2QZGixIgBcSIBQQR2IAFBBHRyIAFyIQYgHgRAIAVBBGsiByAHKAIAIBZBBGsoAgBBf3MgAUEcdHFyNgIACyAFIAUoAgAgBiAWKAIAQX9zcXI2AgAgBSAFKAIEIBYoAgRBf3MgA0EfdnFyNgIEIBtBBGohGyARQQRqIREgBUEEaiEFIBZBBGohFiAeQQhqIh4gFUgNAAsLIBdBACA9EBUaCyAZIB9IDQALCwJAIAxBAkkNAAJAIB9BA3FBAWsiFkECSSAxcQRAIBVBAEwNAUEBICZBAmt0IQIgDiAfQfz//wdxIBVsQQJ0aiERICUgFCAfQQRxGyEFICZBAWshCEEAIQogFUEMbCEMIBVBA3QhCwNAIA9BgAFqEC8hB0EAIQEgBSgCACIDBEAgESAKQQJ0aiEBQQ8hBkEAIQkDQAJAIAMgBnFFDQAgBkGRosSIAXEiDSADcQRAIAEgASgCACAHQX9zQQFxIAh0cyACcjYCACAHQQF2IQcLIA1BAXQgA3EEQCABIBVBAnRqIh0gHSgCACAHQX9zQQFxIAh0cyACcjYCACAHQQF2IQcLIA1BAnQgA3EEQCABIAtqIh0gHSgCACAHQX9zQQFxIAh0cyACcjYCACAHQQF2IQcLIA1BA3QgA3FFDQAgASAMaiINIA0oAgAgB0F/c0EBcSAIdHMgAnI2AgAgB0EBdiEHCyABQQRqIQEgBkEEdCEGIAlBAWoiCUEIRw0ACyADaSEBCyAFQQRqIQUgDyAPKAKQASABazYCkAEgDyAPKQOIASABrYg3A4gBIApBCGoiCiAVSA0ACwsgFkEBSw0AIBVBAEwNACAlIBQgH0EEcSIBGyEJICggKSABGyECQQAhAwJ/AkAgKyAkQX9zaiIBQThJDQAgAiAJIAFBAXZB/P///wdxIgZBBGoiB2pJIAkgAiAHaiIHSXENACACIAYgCWpBCGpJIAlBBGogB0lxDQAgAUEDdkEBaiINQfz///8DcSIIQQN0IQMgCSAIQQJ0IgFqIQYgASACaiEB/QwAAAAAAAAAAAAAAAAAAAAAIV5BACEHA0AgAiAHQQJ0IhZqIhEgCSAWaiIW/QACACJfQQT9rQEgX0EE/asBIF4gX/0NDA0ODxAREhMUFRYXGBkaG0Ec/a0B/VD9UCBf/VAiXv0LAgAgESBeIBb9AAIEQRz9qwH9UCJeQQH9rQH9DHd3d3d3d3d3d3d3d3d3d3f9TiBeQQH9qwH9DO7u7u7u7u7u7u7u7u7u7u79Tv1QIF79UCBf/U/9CwIAIF8hXiAHQQRqIgcgCEcNAAsgCCANRg0CIF79GwMMAQsgAiEBIAkhBkEACyEHA0AgB0EcdiEJIAEgBigCACIHQQR2IAkgB0EEdHJyIAdyIgk2AgAgASAJIAYoAgRBHHRyIglBAXZB9+7duwdxIAlBAXRB7t27935xciAJciAHQX9zcTYCACABQQRqIQEgBkEEaiEGIANBCGoiAyAVSA0ACwsgHyAfQQFqQQNxa0EDa0EAIB9BBkobIhEgH04NAEEDICZBAmt0IRkgKyAkQX9zaiIBQQN2IgNBAnQiK0EEaiEdIANBAWoiA0H8////A3EiEkECdCEhIBJBA3QhFiAVQQxsISwgFUEDdCEtIAFBGEkhJiADIBJGIRsDQAJAAkACQAJAAn8CQCAfIBFrIgFBAWsiA0EDTwRAQX8hFyABQQVIDQUgFUEATA0GICUgFCARQQRxIgEbIQIgKCApIAEbIQkgOARAQQAhBiAmDQQgAiAJIB1qSSACIB1qIAlLcQ0EIAIgIWohASAJICFqIQcDQCAJIAZBAnQiA2oiCCAI/QACACACIANq/QACAP1P/QsCACAGQQRqIgYgEkcNAAsgFiEGIBsNBgwFCyAUICUgARshDUEAIQMgJg0BIAkgDSAdakkgDSAJIB1qIgFJcQ0BIAkgDSArakEIakkgDUEEaiABSXENASAJIAIgHWpJIAEgAktxDQEgAiAhaiEIIAkgIWohASANICFqIQf9DAAAAAAAAAAAAAAAAAAAAAAhXkEAIQYDQCAJIAZBAnQiA2oiBSADIA1qIgz9AAIAIl9BBP2tASBfQQT9qwEgXiBf/Q0MDQ4PEBESExQVFhcYGRobQRz9rQH9UP1QIAz9AAIEQRz9qwH9UCBf/VBBA/2rAf0MiIiIiIiIiIiIiIiIiIiIiP1OIAX9AAIA/VAgAiADav0AAgD9T/0LAgAgXyFeIAZBBGoiBiASRw0ACyAbDQUgFiEDIF79GwMMAgsgA0ECdEHcnQFqKAIAIRcMBAsgDSEHIAkhASACIQhBAAshBgNAIAZBHHYhCSABIAEoAgAgBygCACIGQQR2IAkgBkEEdHJyIAcoAgRBHHRyIAZyQQN0QYiRosR4cXIgCCgCAEF/c3E2AgAgCEEEaiEIIAFBBGohASAHQQRqIQcgA0EIaiIDIBVIDQALDAILIAkhByACIQELA0AgByAHKAIAIAEoAgBBf3NxNgIAIAFBBGohASAHQQRqIQcgBkEIaiIGIBVIDQALCyAVQQBMDQAgJSAUIBFBBHEiARshCiAoICkgARshAiAUICUgARshEyApICggARshHiAOIBEgFWxBAnRqIS5BACEFA0BBACEDIAIoAgAgF3EiAQRAIBUgBWshKkEAIQdBACENA0AgByFOIA9BoAFqEBshBwJAIA0gDUEEaiIGICogBSAGaiAVSBsiJE4iJwRAQQAhBgwBCyAXIAooAgBBf3NxIRggLiAFIA1yQQJ0aiELQQAhBkEPIA0iCUECdCIcdCIgIQgDQAJAIAEgCHFFDQAgCEGRosSIAXEiIiABcQRAIAdBAXEEQCADICJyIQNBMiAJQQJ0dCAYcSABciEBCyAHQQF2IQcgBkEBaiEGCyABICJBAXQiMXEEQCAHQQFxBEAgAyAxciEDIAFB9AAgCUECdHQgGHFyIQELIAdBAXYhByAGQQFqIQYLIAEgIkECdCIxcQRAIAdBAXEEQCADIDFyIQMgAUHoASAJQQJ0dCAYcXIhAQsgB0EBdiEHIAZBAWohBgsgASAiQQN0IiJxRQ0AIAdBAXEEQCADICJyIQMgAUHAASAJQQJ0dCAYcXIhAQsgBkEBaiEGIAdBAXYhBwsgCEEEdCEIIAlBAWoiCSAkSA0ACyADIBx2Qf//A3FFDQAgJw0AA0ACQCADICBxRQ0AICBBkaLEiAFxIgkgA3EEQCALIAsoAgAgB0EfdHIgGXI2AgAgB0EBdiEHIAZBAWohBgsgCUEBdCADcQRAIAsgFUECdGoiCCAIKAIAIAdBH3RyIBlyNgIAIAdBAXYhByAGQQFqIQYLIAlBAnQgA3EEQCALIC1qIgggCCgCACAHQR90ciAZcjYCACAHQQF2IQcgBkEBaiEGCyAJQQN0IANxRQ0AIAsgLGoiCSAJKAIAIAdBH3RyIBlyNgIAIAZBAWohBiAHQQF2IQcLICBBBHQhICALQQRqIQsgDUEBaiINICRIDQALCyAPIA8oArABIAZrNgKwASAPIA8pA6gBIAatiDcDqAFBASEHQQQhDSBOQQFxRQ0ACyACIAIoAgQgA0EbdkEOcSADQR12ciADQRx2ciAKKAIEQX9zcXI2AgQLIAooAgAgA3IiA0EDdkGRosSIAXEiAUEEdiABQQR0ciABciEGIAUEQCAeQQRrIgcgBygCACATQQRrKAIAQX9zIAFBHHRxcjYCAAsgHiAeKAIAIAYgEygCAEF/c3FyNgIAIB4gHigCBCATKAIEQX9zIANBH3ZxcjYCBCACQQRqIQIgCkEEaiEKIB5BBGohHiATQQRqIRMgBUEIaiIFIBVIDQALCyARQQRqIhEgH0gNAAsLQQEhByAfQQBMDQMgFUEATA0DIBVB/P///wdxIgZBAnQhAiAVQQRJIQhBACEJA0AgDiAJIBVsQQJ0aiEDAkACQCAIBEAgAyEHQQAhAQwBCyACIANqIQdBACEBA0AgAyABQQJ0aiINIA39AAIAIl79DP///3////9/////f////3/9TiJf/aEBIF8gXv0MAAAAAAAAAAAAAAAAAAAAAP05/VL9CwIAIAFBBGoiASAGRw0ACyAGIgEgFUYNAQsDQCAHQQAgBygCACIDQf////8HcSINayANIANBAEgbNgIAIAdBBGohByABQQFqIgEgFUcNAAsLQQEhByAJQQFqIgkgH0cNAAsMAwsgIUUNACAPIBooAhg2AjQgDyAWNgIwIB1BAUHcxwAgD0EwahAPDAELIA8gATYCFCAPIBY2AhAgHUEBQdzHACAPQRBqEA9BACEHDAELQQAhBwsgD0GwAmokACAHDQEMAwsgBCABQQl0QdCpAWo2AmwCfyAEKAJ0IQECQAJAIBooAhAgGigCCGsiBSAaKAIUIBooAgxrIglsIgMgBCgChAFLBEAgARAQIAQgA0ECdBAYIgE2AnRBACABRQ0DGiAEIAM2AoQBDAELIAFFDQELIAFBACADQQJ0EBUaCyAEKAJ4IQECQCAFQQJqIgYgCUEDakECdiIMQQJqbCIDIAQoAogBTQRAIANBAnQhCAwBCyABEBAgBCADQQJ0IggQGCIBNgJ4IAENAEEADAELIAQgAzYCiAEgAUEAIAgQFRoCQCAGRQ0AIAQoAngiByEBAkAgBkEETwRAIAcgBkF8cSINQQJ0aiEBQQAhCANAIAcgCEECdGr9DAAAIEkAACBJAAAgSQAAIEn9CwIAIAhBBGoiCCANRw0ACyAGIA1GDQELA0AgAUGAgIDJBDYCACABQQRqIQEgDUEBaiINIAZHDQALCyAHIAxBAWogBmxBAnRqIQNBACENAkACQCAGQQRJBEAgAyEBDAELIAMgBkF8cSINQQJ0aiEBQQAhCANAIAMgCEECdGr9DAAAIEkAACBJAAAgSQAAIEn9CwIAIAhBBGoiCCANRw0ACyAGIA1GDQELA0AgAUGAgIDJBDYCACABQQRqIQEgDUEBaiINIAZHDQALCyAJQQNxIgFFDQAgBkUNAEGAgIDIBEGAgIDABEGAgICABCABQQJGGyABQQFGGyELIAcgBiAMbEECdGohA0EAIQ0CQCAGQQRJBEAgAyEBDAELIAMgBkF8cSINQQJ0aiEBIAv9ESFfQQAhCANAIAMgCEECdGogX/0LAgAgCEEEaiIIIA1HDQALIAYgDUYNAQsDQCABIAs2AgAgAUEEaiEBIA1BAWoiDSAGRw0ACwsgBCAJNgKAASAEIAU2AnxBAQtFDQIgGigCHCARaiIZQR9OBEAgIUUNAiAjIBk2AhAgHUECQdXBACAjQRBqEA8MAwsgBBBaQQAhASAEQbCpATYCZCAEQdCeATYCYCAEQfCeATYCHAJAAkACQAJAIBooAjQiB0EBSw0AIAQoApABRQ0CIAcNAAwBCyAaKAIEIQMgB0EETwRAIAdBfHEhAkEAIQYDQCADIAZBA3RqIgFBHGogAUEUaiABQQxqIAH9CQIE/VYCAAH9VgIAAv1WAgADIF79rgEhXiAGQQRqIgYgAkcNAAsgXiBeIF79DQgJCgsMDQ4PAAECAwABAgP9rgEiXiBeIF79DQQFBgcAAQIDAAECAwABAgP9rgH9GwAhASACIAdGDQELA0AgAyACQQN0aigCBCABaiEBIAJBAWoiAiAHRw0ACwsgAUECaiIDIAQoApgBSwRAIAQoApQBIAMQFyIGRQ0FIAQgBjYClAEgASAGakEAOwAAIAQgAzYCmAEgGigCNCEHCyAEKAKUASEeIAdFDQEgGigCBCEGQQAhAkEAIQEDQCACIB5qIAYgAUEDdCIDaiIGKAIAIAYoAgQQEhogGigCBCIGIANqKAIEIAJqIQIgAUEBaiIBIBooAjRJDQALDAELIAdBAUcNASAaKAIEKAIAIR4LIBooAjwiAQRAIAQoAnQhLCAEIAE2AnQLIBooAiwEQCAWQQhxISUgBEEcaiEPIBZBAXEhLSAWQQJxRSEuQQIhHwNAIB4gKGohASAaKAIAIClBGGxqIiAoAgAhAwJAIC0gH0ECSSAZIBooAhxBBGtMcXEiIgRAIAQgATYCFCAEIAEgA2oiAzYCGCAEIAMvAAA7AXAgA0H/AToAACAEKAIYQf8BOgABIARBADYCCCAEQQA2AgAgBCABNgIQDAELIAQgATYCFCAEIAEgA2oiBjYCGCAEIAYvAAA7AXAgBkH/AToAACAEKAIYQf8BOgABIAQgBEEcajYCaCAEIAE2AhAgBEEANgIMIAQgAwR/IAEtAABBEHQFQYCA/AcLIgM2AgBBASEGIAFBAWohCSABLQABIQcCfyABLQAAQf8BRgRAIAdBkAFPBEAgBEEBNgIMIANBgP4DcgwCCyAEIAk2AhBBACEGIAdBCXQgA2oMAQsgBCAJNgIQIAdBCHQgA3ILIQEgBCAGNgIIIARBgIACNgIEIAQgAUEHdDYCAAsgICgCACEqAkAgGUEATA0AICAoAghFDQAgIiAuciEnQQAhJgNAAkACQAJAAkACQCAfQQFrDgIBAgALICIEQEEBIBl0IgFBAXYgAXIhESAEKAJ8IgVBAnQiDSAEKAJ4akEMaiEBIAQoAnQhBkEAIQggBCgCgAEiA0EETwRAIAVFDQUgBUEDbCECIAVBAXQhDEEAIBFrIQkDQCAMQQJ0IQtBACEDA0ACQCABIgcoAgAiAUUNAAJAIAFBkICAAXENACABQe8DcUUNACAEKAIAIQECQCAEKAIIIhANACABQf8BRiEKIAQoAhAiEC0AACEBAkAgCkUEQCAEIAE2AgAgBCAQQQFqNgIQDAELIAFBjwFNBEAgBCABNgIAIAQgEEEBajYCEEEHIRAMAgtB/wEhASAEQf8BNgIAC0EIIRALIAQgEEEBayIQNgIIAkAgASAQdkEBcUUNAAJAIBANACABQf8BRiEKIAQoAhAiEC0AACEBAkAgCkUEQCAEIAE2AgAgBCAQQQFqNgIQDAELIAFBjwFNBEAgBCABNgIAIAQgEEEBajYCEEEHIRAMAgtB/wEhASAEQf8BNgIAC0EIIRALIAQgEEEBayIQNgIIIAYgCSARIAEgEHZBAXEiEBs2AgAgBCgCfCEBIAdBBGsiCiAKKAIAQSByNgIAIAcgBygCBEEIcjYCBCAHIAcoAgAgEEETdHJBEHI2AgAgJQ0AIAdBfiABa0ECdGoiASABKAIEQYCAAnI2AgQgASABKAIAIBBBH3RyQYCABHI2AgAgAUEEayIBIAEoAgBBgIAIcjYCAAsgByAHKAIAQYCAgAFyIgE2AgALAkAgAUGAgYAIcQ0AIAFB+B5xRQ0AIAQoAgAhAQJAIAQoAggiEA0AIAFB/wFGIQogBCgCECIQLQAAIQECQCAKRQRAIAQgATYCACAEIBBBAWo2AhAMAQsgAUGPAU0EQCAEIAE2AgAgBCAQQQFqNgIQQQchEAwCC0H/ASEBIARB/wE2AgALQQghEAsgBCAQQQFrIhA2AgggBwJ/IAEgEHZBAXFFBEAgBygCAAwBCwJAIBANACABQf8BRiEKIAQoAhAiEC0AACEBAkAgCkUEQCAEIAE2AgAgBCAQQQFqNgIQDAELIAFBjwFNBEAgBCABNgIAIAQgEEEBajYCEEEHIRAMAgtB/wEhASAEQf8BNgIAC0EIIRALIAQgEEEBayIQNgIIIAYgDWogCSARIAEgEHZBAXEiARs2AgAgB0EEayIQIBAoAgBBgAJyNgIAIAcgBygCBEHAAHI2AgQgBygCACABQRZ0ckGAAXILQYCAgAhyIgE2AgALAkAgAUGAiIDAAHENACABQcD3AXFFDQAgBCgCACEBAkAgBCgCCCIQDQAgAUH/AUYhCiAEKAIQIhAtAAAhAQJAIApFBEAgBCABNgIAIAQgEEEBajYCEAwBCyABQY8BTQRAIAQgATYCACAEIBBBAWo2AhBBByEQDAILQf8BIQEgBEH/ATYCAAtBCCEQCyAEIBBBAWsiEDYCCCAHAn8gASAQdkEBcUUEQCAHKAIADAELAkAgEA0AIAFB/wFGIQogBCgCECIQLQAAIQECQCAKRQRAIAQgATYCACAEIBBBAWo2AhAMAQsgAUGPAU0EQCAEIAE2AgAgBCAQQQFqNgIQQQchEAwCC0H/ASEBIARB/wE2AgALQQghEAsgBCAQQQFrIhA2AgggBiALaiAJIBEgASAQdkEBcSIBGzYCACAHQQRrIhAgECgCAEGAEHI2AgAgByAHKAIEQYAEcjYCBCAHKAIAIAFBGXRyQYAIcgtBgICAwAByIgE2AgALIAFBgMCAgARxDQAgAUGAvA9xRQ0AIAQoAgAhAQJAIAQoAggiEA0AIAFB/wFGIQogBCgCECIQLQAAIQECQCAKRQRAIAQgATYCACAEIBBBAWo2AhAMAQsgAUGPAU0EQCAEIAE2AgAgBCAQQQFqNgIQQQchEAwCC0H/ASEBIARB/wE2AgALQQghEAsgBCAQQQFrIhA2AgggASAQdkEBcQRAIAYgAkECdGohTwJAIBANACABQf8BRiEUIAQoAhAiEC0AACEBAkAgFEUEQCAEIAE2AgAgBCAQQQFqNgIQDAELIAFBjwFNBEAgBCABNgIAIAQgEEEBajYCEEEHIRAMAgtB/wEhASAEQf8BNgIAC0EIIRALIAQgEEEBayIQNgIIIE8gCSARIAEgEHZBAXEiEBs2AgAgBCgCfCEBIAdBBGsiCiAKKAIAQYCAAXI2AgAgByAHKAIEQYAgcjYCBCAHIAcoAgAgEEEcdHJBgMAAcjYCACAHIAFBAnRqIgEgASgCBEEEcjYCBCABIAEoAgxBAXI2AgwgASABKAIIIBBBEnRyQQJyNgIICyAHIAcoAgBBgICAgARyNgIACyAGQQRqIQYgB0EEaiEBIANBAWoiAyAFRw0ACyAHQQxqIQEgBiACQQJ0aiEGIAhBBGoiCCAEKAKAASIDQXxxSQ0ACwsgAyAITQ0DIAVFDQNBACETQQAgEWshCyADIRADQAJAIAggEEYEQCAIIRAMAQsgAUEEayEMIAEoAgAhDUEAIQIDQAJAIA0gAkEDbCIHdiIJQZCAgAFxDQAgCUHvA3FFDQAgBCgCACEDAkAgBCgCCCIJDQAgA0H/AUchECAEKAIQIgktAAAhAwJAIBBFBEAgA0GQAU8EQEH/ASEDIARB/wE2AgAMAgsgBCADNgIAIAQgCUEBajYCEEEHIQkMAgsgBCADNgIAIAQgCUEBajYCEAtBCCEJCyAEIAlBAWsiCTYCCAJAIAMgCXZBAXFFDQAgBiACIAVsQQJ0aiFQAkAgCQ0AIANB/wFHIQ0gBCgCECIJLQAAIQMCQCANRQRAIANBkAFPBEBB/wEhAyAEQf8BNgIADAILIAQgAzYCACAEIAlBAWo2AhBBByEJDAILIAQgAzYCACAEIAlBAWo2AhALQQghCQsgBCAJQQFrIgk2AgggUCALIBEgAyAJdkEBcSIJGzYCACAEKAJ8IRAgDCAMKAIAQSAgB3RyNgIAIAEgASgCACAJQRN0QRByIAd0cjYCACABIAEoAgRBCCAHdHI2AgQgAiAlckUEQCABQX4gEGtBAnRqIgMgAygCBEGAgAJyNgIEIAMgAygCACAJQR90ckGAgARyNgIAIANBBGsiAyADKAIAQYCACHI2AgALIAJBA0cNACABIBBBAnRqIgMgAygCBEEEcjYCBCADIAMoAgxBAXI2AgwgAyADKAIIIAlBEnRyQQJyNgIICyABIAEoAgBBgICAASAHdHIiDTYCACAEKAKAASEDCyADIRAgAkEBaiICIAMgCGtJDQALCyAGQQRqIQYgAUEEaiEBIBNBAWoiEyAFRw0ACwwDC0EAIQdBACENQQAhFwJAAkACQAJAIAQoAnwiEEHAAEcNACAEKAKAAUHAAEcNAEEAQQEgGXQiAUEBdiABciIRayEFIARBHGohECAEKAJ4QYwCaiEGIAQoAgghCCAEKAIEIQMgBCgCACECIAQoAmghDCAEKAJ0IQEgFkEIcQ0BA0BBACEXA0AgASEJIAYiBygCACIGBEACQCAGQZCAgAFxDQAgBkHvA3EiAUUNACADIBAgBCgCbCABai0AAEECdGoiDCgCACILKAIAIgFrIQMCfyABIAJBEHZLBEAgCygCBCEKIAwgC0EIQQwgASADSyIUG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQMgCC0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIANBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCADQQh0IAJqIQILIAhBAWshCCACQQF0IQIgAUEBdCIBQYCAAkkNAAsgASEDIAogCkUgFBsMAQsgAiABQRB0ayECIANBgIACcUUEQCALKAIEIQogDCALQQxBCCABIANLIhQbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiELIAgtAAEhASAILQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAwCCyAEIAs2AhAgAUEJdCACaiECQQchCAwBCyAEIAs2AhBBCCEIIAFBCHQgAmohAgsgCEEBayEIIAJBAXQhAiADQQF0IgNBgIACSQ0ACyAKRSAKIBQbDAELIAsoAgQLBH8gAyAQIAcoAgRBEXZBBHEgB0EEayIKKAIAQRN2QQFxIAZBDnZBEHEgBkEQdkHAAHEgBkGqAXFycnJyIhRB0LkBai0AAEECdGoiDCgCACILKAIAIgFrIQMgFEHQuwFqLQAAIRMgCSAFIBECfyABIAJBEHZLBEAgCygCBCEUIAwgC0EIQQwgASADSyIOG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQMgCC0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIANBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCADQQh0IAJqIQILIAhBAWshCCACQQF0IQIgAUEBdCIBQYCAAkkNAAsgASEDIBQgFEUgDhsMAQsgAiABQRB0ayECIANBgIACcUUEQCALKAIEIRQgDCALQQxBCCABIANLIg4baigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiELIAgtAAEhASAILQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAwCCyAEIAs2AhAgAUEJdCACaiECQQchCAwBCyAEIAs2AhBBCCEIIAFBCHQgAmohAgsgCEEBayEIIAJBAXQhAiADQQF0IgNBgIACSQ0ACyAURSAUIA4bDAELIAsoAgQLIBNzIgEbNgIAIAogCigCAEEgcjYCACAHIAcoAgRBCHI2AgQgB0GMAmsiCyALKAIAQYCACHI2AgAgB0GEAmsiCyALKAIAQYCAAnI2AgAgB0GIAmsiCyALKAIAIAFBH3RyQYCABHI2AgAgBiABQRN0ckEQcgUgBgtBgICAAXIhBgsCQCAGQYCBgAhxDQAgBkH4HnFFDQAgAyAQIAQoAmwgBkEDdiIUQe8DcWotAABBAnRqIgwoAgAiCygCACIBayEDAn8gASACQRB2SwRAIAsoAgQhCiAMIAtBCEEMIAEgA0siExtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEDIAgtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECADQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggA0EIdCACaiECCyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyAKIApFIBMbDAELIAIgAUEQdGshAiADQYCAAnFFBEAgCygCBCEKIAwgC0EMQQggASADSyITG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQEgCC0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIAFBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCABQQh0IAJqIQILIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgCkUgCiATGwwBCyALKAIECwR/IAMgECAHKAIEQRR2QQRxIAdBBGsiCigCAEEWdkEBcSAGQQ92QRBxIAZBE3ZBwABxIBRBqgFxcnJyciIUQdC5AWotAABBAnRqIgwoAgAiCygCACIBayEDIBRB0LsBai0AACETIAkgBSARAn8gASACQRB2SwRAIAsoAgQhFCAMIAtBCEEMIAEgA0siDhtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEDIAgtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECADQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggA0EIdCACaiECCyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyAUIBRFIA4bDAELIAIgAUEQdGshAiADQYCAAnFFBEAgCygCBCEUIAwgC0EMQQggASADSyIOG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQEgCC0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIAFBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCABQQh0IAJqIQILIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgFEUgFCAOGwwBCyALKAIECyATcyIBGzYCgAIgCiAKKAIAQYACcjYCACAHIAcoAgRBwAByNgIEIAYgAUEWdHJBgAFyBSAGC0GAgIAIciEGCwJAIAZBgIiAwABxDQAgBkHA9wFxRQ0AIAMgECAEKAJsIAZBBnYiFEHvA3FqLQAAQQJ0aiIMKAIAIgsoAgAiAWshAwJ/IAEgAkEQdksEQCALKAIEIQogDCALQQhBDCABIANLIhMbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiELIAgtAAEhAyAILQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAwCCyAEIAs2AhAgA0EJdCACaiECQQchCAwBCyAEIAs2AhBBCCEIIANBCHQgAmohAgsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgCiAKRSATGwwBCyACIAFBEHRrIQIgA0GAgAJxRQRAIAsoAgQhCiAMIAtBDEEIIAEgA0siExtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEBIAgtAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECABQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggAUEIdCACaiECCyAIQQFrIQggAkEBdCECIANBAXQiA0GAgAJJDQALIApFIAogExsMAQsgCygCBAsEfyADIBAgBygCBEEXdkEEcSAHQQRrIgooAgBBGXZBAXEgBkESdkEQcSAGQRZ2QcAAcSAUQaoBcXJycnIiFEHQuQFqLQAAQQJ0aiIMKAIAIgsoAgAiAWshAyAUQdC7AWotAAAhEyAJIAUgEQJ/IAEgAkEQdksEQCALKAIEIRQgDCALQQhBDCABIANLIg4baigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiELIAgtAAEhAyAILQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAwCCyAEIAs2AhAgA0EJdCACaiECQQchCAwBCyAEIAs2AhBBCCEIIANBCHQgAmohAgsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgFCAURSAOGwwBCyACIAFBEHRrIQIgA0GAgAJxRQRAIAsoAgQhFCAMIAtBDEEIIAEgA0siDhtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEBIAgtAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECABQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggAUEIdCACaiECCyAIQQFrIQggAkEBdCECIANBAXQiA0GAgAJJDQALIBRFIBQgDhsMAQsgCygCBAsgE3MiARs2AoAEIAogCigCAEGAEHI2AgAgByAHKAIEQYAEcjYCBCAGIAFBGXRyQYAIcgUgBgtBgICAwAByIQYLAkAgBkGAwICABHENACAGQYC8D3FFDQAgAyAQIAQoAmwgBkEJdiIUQe8DcWotAABBAnRqIgwoAgAiCygCACIBayEDAn8gASACQRB2SwRAIAsoAgQhCiAMIAtBCEEMIAEgA0siExtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEDIAgtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECADQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggA0EIdCACaiECCyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyAKIApFIBMbDAELIAIgAUEQdGshAiADQYCAAnFFBEAgCygCBCEKIAwgC0EMQQggASADSyITG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQEgCC0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIAFBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCABQQh0IAJqIQILIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgCkUgCiATGwwBCyALKAIECwR/IAMgECAHKAIEQRp2QQRxIAdBBGsiCigCAEEcdkEBcSAGQRV2QRBxIAZBGXZBwABxIBRBqgFxcnJyciIUQdC5AWotAABBAnRqIgwoAgAiCygCACIBayEDIBRB0LsBai0AACETIAkgBSARAn8gASACQRB2SwRAIAsoAgQhFCAMIAtBCEEMIAEgA0siDhtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEDIAgtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECADQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggA0EIdCACaiECCyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyAUIBRFIA4bDAELIAIgAUEQdGshAiADQYCAAnFFBEAgCygCBCEUIAwgC0EMQQggASADSyIOG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQEgCC0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIAFBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCABQQh0IAJqIQILIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgFEUgFCAOGwwBCyALKAIECyATcyIBGzYCgAYgCiAKKAIAQYCAAXI2AgAgByAHKAIEQYAgcjYCBCAHIAcoAoQCQQRyNgKEAiAHIAcoAowCQQFyNgKMAiAHIAcoAogCIAFBEnRyQQJyNgKIAiAGIAFBHHRyQYDAAHIFIAYLQYCAgIAEciEGCyAHIAY2AgALIAdBBGohBiAJQQRqIQEgF0EBaiIXQcAARw0ACyAHQQxqIQYgCUGEBmohASANQTxJIVEgDUEEaiENIFENAAsMAgtBASAZdCIBQQF2IAFyIQ0gBCgCeCIJIBBBAnRqQQxqIQYgBCgCgAEhASAEKAIIIQggBCgCBCEDIAQoAgAhAiAEKAJoIQwgBCgCdCERAkAgFkEIcQRAAkAgAUEESQ0AIBAEQEEAIA1rIRQgBEEcaiEFIBBBDGwhEyAQQQN0IRUDQEEAIQsDQCAGIgkoAgAiBgRAAkAgBkGQgIABcQ0AIAZB7wNxIgFFDQAgAyAFIAQoAmwgAWotAABBAnRqIgwoAgAiCigCACIBayEDAn8gASACQRB2TQRAIAIgAUEQdGshAiADQYCAAnEEQCAKKAIEDAILIAooAgQhDiAMIApBDEEIIAEgA0siEhtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQogCC0AASEBIAgtAABB/wFHBEAgBCAKNgIQQQghCCABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAo2AhAgAUEJdCACaiECQQchCAwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEICyAIQQFrIQggAkEBdCECIANBAXQiA0GAgAJJDQALIA5FIA4gEhsMAQsgCigCBCEOIAwgCkEIQQwgASADSyISG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQMgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIANBCHQgAmohAgwBCyADQY8BTQRAIAQgCjYCECADQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgAUEBdCIBQYCAAkkNAAsgASEDIA4gDkUgEhsLBH8gAyAFIAkoAgRBEXZBBHEgCUEEayIOKAIAQRN2QQFxIAZBDnZBEHEgBkEQdkHAAHEgBkGqAXFycnJyIhJB0LkBai0AAEECdGoiDCgCACIKKAIAIgFrIQMgEkHQuwFqLQAAIRggESAUIA0CfyABIAJBEHZNBEAgAiABQRB0ayECIANBgIACcQRAIAooAgQMAgsgCigCBCESIAwgCkEMQQggASADSyIbG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQEgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgEkUgEiAbGwwBCyAKKAIEIRIgDCAKQQhBDCABIANLIhsbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhAyAILQAAQf8BRwRAIAQgCjYCEEEIIQggA0EIdCACaiECDAELIANBjwFNBEAgBCAKNgIQIANBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgEiASRSAbGwsgGHMiARs2AgAgDiAOKAIAQSByNgIAIAkgCSgCBEEIcjYCBCAGIAFBE3RyQRByBSAGC0GAgIABciEGCwJAIAZBgIGACHENACAGQfgecUUNACADIAUgBCgCbCAGQQN2IhJB7wNxai0AAEECdGoiDCgCACIKKAIAIgFrIQMCfyABIAJBEHZNBEAgAiABQRB0ayECIANBgIACcQRAIAooAgQMAgsgCigCBCEOIAwgCkEMQQggASADSyIYG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQEgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgDkUgDiAYGwwBCyAKKAIEIQ4gDCAKQQhBDCABIANLIhgbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhAyAILQAAQf8BRwRAIAQgCjYCEEEIIQggA0EIdCACaiECDAELIANBjwFNBEAgBCAKNgIQIANBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgDiAORSAYGwsEfyADIAUgCSgCBEEUdkEEcSAJQQRrIg4oAgBBFnZBAXEgBkEPdkEQcSAGQRN2QcAAcSASQaoBcXJycnIiEkHQuQFqLQAAQQJ0aiIMKAIAIgooAgAiAWshAyASQdC7AWotAAAhGCARIBBBAnRqIBQgDQJ/IAEgAkEQdk0EQCACIAFBEHRrIQIgA0GAgAJxBEAgCigCBAwCCyAKKAIEIRIgDCAKQQxBCCABIANLIhsbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhASAILQAAQf8BRwRAIAQgCjYCEEEIIQggAUEIdCACaiECDAELIAFBjwFNBEAgBCAKNgIQIAFBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiADQQF0IgNBgIACSQ0ACyASRSASIBsbDAELIAooAgQhEiAMIApBCEEMIAEgA0siGxtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQogCC0AASEDIAgtAABB/wFHBEAgBCAKNgIQQQghCCADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAo2AhAgA0EJdCACaiECQQchCAwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEICyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyASIBJFIBsbCyAYcyIBGzYCACAOIA4oAgBBgAJyNgIAIAkgCSgCBEHAAHI2AgQgBiABQRZ0ckGAAXIFIAYLQYCAgAhyIQYLAkAgBkGAiIDAAHENACAGQcD3AXFFDQAgAyAFIAQoAmwgBkEGdiISQe8DcWotAABBAnRqIgwoAgAiCigCACIBayEDAn8gASACQRB2TQRAIAIgAUEQdGshAiADQYCAAnEEQCAKKAIEDAILIAooAgQhDiAMIApBDEEIIAEgA0siGBtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQogCC0AASEBIAgtAABB/wFHBEAgBCAKNgIQQQghCCABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAo2AhAgAUEJdCACaiECQQchCAwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEICyAIQQFrIQggAkEBdCECIANBAXQiA0GAgAJJDQALIA5FIA4gGBsMAQsgCigCBCEOIAwgCkEIQQwgASADSyIYG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQMgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIANBCHQgAmohAgwBCyADQY8BTQRAIAQgCjYCECADQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgAUEBdCIBQYCAAkkNAAsgASEDIA4gDkUgGBsLBH8gAyAFIAkoAgRBF3ZBBHEgCUEEayIOKAIAQRl2QQFxIAZBEnZBEHEgBkEWdkHAAHEgEkGqAXFycnJyIhJB0LkBai0AAEECdGoiDCgCACIKKAIAIgFrIQMgEkHQuwFqLQAAIRggESAVaiAUIA0CfyABIAJBEHZNBEAgAiABQRB0ayECIANBgIACcQRAIAooAgQMAgsgCigCBCESIAwgCkEMQQggASADSyIbG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQEgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgEkUgEiAbGwwBCyAKKAIEIRIgDCAKQQhBDCABIANLIhsbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhAyAILQAAQf8BRwRAIAQgCjYCEEEIIQggA0EIdCACaiECDAELIANBjwFNBEAgBCAKNgIQIANBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgEiASRSAbGwsgGHMiARs2AgAgDiAOKAIAQYAQcjYCACAJIAkoAgRBgARyNgIEIAYgAUEZdHJBgAhyBSAGC0GAgIDAAHIhBgsCQCAGQYDAgIAEcQ0AIAZBgLwPcUUNACADIAUgBCgCbCAGQQl2IhJB7wNxai0AAEECdGoiDCgCACIKKAIAIgFrIQMCfyABIAJBEHZNBEAgAiABQRB0ayECIANBgIACcQRAIAooAgQMAgsgCigCBCEOIAwgCkEMQQggASADSyIYG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQEgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgDkUgDiAYGwwBCyAKKAIEIQ4gDCAKQQhBDCABIANLIhgbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhAyAILQAAQf8BRwRAIAQgCjYCEEEIIQggA0EIdCACaiECDAELIANBjwFNBEAgBCAKNgIQIANBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgDiAORSAYGwsEfyADIAUgCSgCBEEadkEEcSAJQQRrIg4oAgBBHHZBAXEgBkEVdkEQcSAGQRl2QcAAcSASQaoBcXJycnIiEkHQuQFqLQAAQQJ0aiIMKAIAIgooAgAiAWshAyASQdC7AWotAAAhGCARIBNqIBQgDQJ/IAEgAkEQdk0EQCACIAFBEHRrIQIgA0GAgAJxBEAgCigCBAwCCyAKKAIEIRIgDCAKQQxBCCABIANLIhsbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhASAILQAAQf8BRwRAIAQgCjYCEEEIIQggAUEIdCACaiECDAELIAFBjwFNBEAgBCAKNgIQIAFBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiADQQF0IgNBgIACSQ0ACyASRSASIBsbDAELIAooAgQhEiAMIApBCEEMIAEgA0siGxtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQogCC0AASEDIAgtAABB/wFHBEAgBCAKNgIQQQghCCADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAo2AhAgA0EJdCACaiECQQchCAwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEICyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyASIBJFIBsbCyAYcyIKGzYCACAOIA4oAgBBgIABcjYCACAJIAkoAgRBgCByNgIEIAQoAnxBAnQgCWoiASABKAIEQQRyNgIEIAEgASgCDEEBcjYCDCABIAEoAgggCkESdHJBAnI2AgggBiAKQRx0ckGAwAByBSAGC0GAgICABHIhBgsgCSAGNgIACyAJQQRqIQYgEUEEaiERIAtBAWoiCyAQRw0ACyAJQQxqIQYgESATaiERIAdBBGoiByAEKAKAASIBQXxxSQ0ACwwBC0EEIAFBfHEiBiAGQQRNG0EBayIGQXxxQQRqIQcgCSAGQQF0QXhxakEUaiEGCyAEIAg2AgggBCADNgIEIAQgAjYCACAEIAw2AmggEEUNASABIAdNDQEDQCABIAdGIVJBACEIIAchASBSRQRAA0AgBCAGIBEgCCAQbEECdGogDSAIIAQoAnxBAmpBARBZIAhBAWoiCCAEKAKAASIBIAdrSQ0ACwsgBkEEaiEGIBFBBGohESAXQQFqIhcgEEcNAAsMAQsCQCABQQRJDQAgEARAQQAgDWshFCAEQRxqIQUgEEEMbCETIBBBA3QhFQNAQQAhCwNAIAYiCSgCACIGBEACQCAGQZCAgAFxDQAgBkHvA3EiAUUNACADIAUgBCgCbCABai0AAEECdGoiDCgCACIKKAIAIgFrIQMCfyABIAJBEHZNBEAgAiABQRB0ayECIANBgIACcQRAIAooAgQMAgsgCigCBCEOIAwgCkEMQQggASADSyISG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQEgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgDkUgDiASGwwBCyAKKAIEIQ4gDCAKQQhBDCABIANLIhIbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhAyAILQAAQf8BRwRAIAQgCjYCEEEIIQggA0EIdCACaiECDAELIANBjwFNBEAgBCAKNgIQIANBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgDiAORSASGwsEfyADIAUgCSgCBEERdkEEcSAJQQRrIg4oAgBBE3ZBAXEgBkEOdkEQcSAGQRB2QcAAcSAGQaoBcXJycnIiEkHQuQFqLQAAQQJ0aiIMKAIAIgooAgAiAWshAyASQdC7AWotAAAhGCARIBQgDQJ/IAEgAkEQdk0EQCACIAFBEHRrIQIgA0GAgAJxBEAgCigCBAwCCyAKKAIEIRIgDCAKQQxBCCABIANLIhsbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhASAILQAAQf8BRwRAIAQgCjYCEEEIIQggAUEIdCACaiECDAELIAFBjwFNBEAgBCAKNgIQIAFBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiADQQF0IgNBgIACSQ0ACyASRSASIBsbDAELIAooAgQhEiAMIApBCEEMIAEgA0siGxtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQogCC0AASEDIAgtAABB/wFHBEAgBCAKNgIQQQghCCADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAo2AhAgA0EJdCACaiECQQchCAwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEICyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyASIBJFIBsbCyAYcyIKGzYCACAOIA4oAgBBIHI2AgAgCSAJKAIEQQhyNgIEIAlBfiAEKAJ8a0ECdGoiASABKAIEQYCAAnI2AgQgASABKAIAIApBH3RyQYCABHI2AgAgAUEEayIBIAEoAgBBgIAIcjYCACAGIApBE3RyQRByBSAGC0GAgIABciEGCwJAIAZBgIGACHENACAGQfgecUUNACADIAUgBCgCbCAGQQN2IhJB7wNxai0AAEECdGoiDCgCACIKKAIAIgFrIQMCfyABIAJBEHZNBEAgAiABQRB0ayECIANBgIACcQRAIAooAgQMAgsgCigCBCEOIAwgCkEMQQggASADSyIYG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQEgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgDkUgDiAYGwwBCyAKKAIEIQ4gDCAKQQhBDCABIANLIhgbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhAyAILQAAQf8BRwRAIAQgCjYCEEEIIQggA0EIdCACaiECDAELIANBjwFNBEAgBCAKNgIQIANBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgDiAORSAYGwsEfyADIAUgCSgCBEEUdkEEcSAJQQRrIg4oAgBBFnZBAXEgBkEPdkEQcSAGQRN2QcAAcSASQaoBcXJycnIiEkHQuQFqLQAAQQJ0aiIMKAIAIgooAgAiAWshAyASQdC7AWotAAAhGCARIBBBAnRqIBQgDQJ/IAEgAkEQdk0EQCACIAFBEHRrIQIgA0GAgAJxBEAgCigCBAwCCyAKKAIEIRIgDCAKQQxBCCABIANLIhsbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhASAILQAAQf8BRwRAIAQgCjYCEEEIIQggAUEIdCACaiECDAELIAFBjwFNBEAgBCAKNgIQIAFBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiADQQF0IgNBgIACSQ0ACyASRSASIBsbDAELIAooAgQhEiAMIApBCEEMIAEgA0siGxtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQogCC0AASEDIAgtAABB/wFHBEAgBCAKNgIQQQghCCADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAo2AhAgA0EJdCACaiECQQchCAwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEICyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyASIBJFIBsbCyAYcyIBGzYCACAOIA4oAgBBgAJyNgIAIAkgCSgCBEHAAHI2AgQgBiABQRZ0ckGAAXIFIAYLQYCAgAhyIQYLAkAgBkGAiIDAAHENACAGQcD3AXFFDQAgAyAFIAQoAmwgBkEGdiISQe8DcWotAABBAnRqIgwoAgAiCigCACIBayEDAn8gASACQRB2TQRAIAIgAUEQdGshAiADQYCAAnEEQCAKKAIEDAILIAooAgQhDiAMIApBDEEIIAEgA0siGBtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQogCC0AASEBIAgtAABB/wFHBEAgBCAKNgIQQQghCCABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAo2AhAgAUEJdCACaiECQQchCAwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEICyAIQQFrIQggAkEBdCECIANBAXQiA0GAgAJJDQALIA5FIA4gGBsMAQsgCigCBCEOIAwgCkEIQQwgASADSyIYG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQMgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIANBCHQgAmohAgwBCyADQY8BTQRAIAQgCjYCECADQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgAUEBdCIBQYCAAkkNAAsgASEDIA4gDkUgGBsLBH8gAyAFIAkoAgRBF3ZBBHEgCUEEayIOKAIAQRl2QQFxIAZBEnZBEHEgBkEWdkHAAHEgEkGqAXFycnJyIhJB0LkBai0AAEECdGoiDCgCACIKKAIAIgFrIQMgEkHQuwFqLQAAIRggESAVaiAUIA0CfyABIAJBEHZNBEAgAiABQRB0ayECIANBgIACcQRAIAooAgQMAgsgCigCBCESIAwgCkEMQQggASADSyIbG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQEgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgEkUgEiAbGwwBCyAKKAIEIRIgDCAKQQhBDCABIANLIhsbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhAyAILQAAQf8BRwRAIAQgCjYCEEEIIQggA0EIdCACaiECDAELIANBjwFNBEAgBCAKNgIQIANBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgEiASRSAbGwsgGHMiARs2AgAgDiAOKAIAQYAQcjYCACAJIAkoAgRBgARyNgIEIAYgAUEZdHJBgAhyBSAGC0GAgIDAAHIhBgsCQCAGQYDAgIAEcQ0AIAZBgLwPcUUNACADIAUgBCgCbCAGQQl2IhJB7wNxai0AAEECdGoiDCgCACIKKAIAIgFrIQMCfyABIAJBEHZNBEAgAiABQRB0ayECIANBgIACcQRAIAooAgQMAgsgCigCBCEOIAwgCkEMQQggASADSyIYG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCiAILQABIQEgCC0AAEH/AUcEQCAEIAo2AhBBCCEIIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEIDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgLIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgDkUgDiAYGwwBCyAKKAIEIQ4gDCAKQQhBDCABIANLIhgbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhAyAILQAAQf8BRwRAIAQgCjYCEEEIIQggA0EIdCACaiECDAELIANBjwFNBEAgBCAKNgIQIANBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgDiAORSAYGwsEfyADIAUgCSgCBEEadkEEcSAJQQRrIg4oAgBBHHZBAXEgBkEVdkEQcSAGQRl2QcAAcSASQaoBcXJycnIiEkHQuQFqLQAAQQJ0aiIMKAIAIgooAgAiAWshAyASQdC7AWotAAAhGCARIBNqIBQgDQJ/IAEgAkEQdk0EQCACIAFBEHRrIQIgA0GAgAJxBEAgCigCBAwCCyAKKAIEIRIgDCAKQQxBCCABIANLIhsbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiEKIAgtAAEhASAILQAAQf8BRwRAIAQgCjYCEEEIIQggAUEIdCACaiECDAELIAFBjwFNBEAgBCAKNgIQIAFBCXQgAmohAkEHIQgMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAsgCEEBayEIIAJBAXQhAiADQQF0IgNBgIACSQ0ACyASRSASIBsbDAELIAooAgQhEiAMIApBCEEMIAEgA0siGxtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQogCC0AASEDIAgtAABB/wFHBEAgBCAKNgIQQQghCCADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAo2AhAgA0EJdCACaiECQQchCAwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEICyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyASIBJFIBsbCyAYcyIKGzYCACAOIA4oAgBBgIABcjYCACAJIAkoAgRBgCByNgIEIAQoAnxBAnQgCWoiASABKAIEQQRyNgIEIAEgASgCDEEBcjYCDCABIAEoAgggCkESdHJBAnI2AgggBiAKQRx0ckGAwAByBSAGC0GAgICABHIhBgsgCSAGNgIACyAJQQRqIQYgEUEEaiERIAtBAWoiCyAQRw0ACyAJQQxqIQYgESATaiERIAdBBGoiByAEKAKAASIBQXxxSQ0ACwwBC0EEIAFBfHEiBiAGQQRNG0EBayIGQXxxQQRqIQcgCSAGQQF0QXhxakEUaiEGCyAEIAg2AgggBCADNgIEIAQgAjYCACAEIAw2AmggEEUNACABIAdNDQADQCABIAdGIVNBACEIIAchASBTRQRAA0AgBCAGIBEgCCAQbEECdGogDSAIIAQoAnxBAmpBABBZIAhBAWoiCCAEKAKAASIBIAdrSQ0ACwsgBkEEaiEGIBFBBGohESAXQQFqIhcgEEcNAAsLDAILA0BBACEXA0AgASEJIAYiBygCACIGBEACQCAGQZCAgAFxDQAgBkHvA3EiAUUNACADIBAgBCgCbCABai0AAEECdGoiDCgCACILKAIAIgFrIQMCfyABIAJBEHZLBEAgCygCBCEKIAwgC0EIQQwgASADSyIUG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQMgCC0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIANBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCADQQh0IAJqIQILIAhBAWshCCACQQF0IQIgAUEBdCIBQYCAAkkNAAsgASEDIAogCkUgFBsMAQsgAiABQRB0ayECIANBgIACcUUEQCALKAIEIQogDCALQQxBCCABIANLIhQbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiELIAgtAAEhASAILQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAwCCyAEIAs2AhAgAUEJdCACaiECQQchCAwBCyAEIAs2AhBBCCEIIAFBCHQgAmohAgsgCEEBayEIIAJBAXQhAiADQQF0IgNBgIACSQ0ACyAKRSAKIBQbDAELIAsoAgQLBH8gAyAQIAcoAgRBEXZBBHEgB0EEayIKKAIAQRN2QQFxIAZBDnZBEHEgBkEQdkHAAHEgBkGqAXFycnJyIhRB0LkBai0AAEECdGoiDCgCACILKAIAIgFrIQMgFEHQuwFqLQAAIRMgCSAFIBECfyABIAJBEHZLBEAgCygCBCEUIAwgC0EIQQwgASADSyIOG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQMgCC0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIANBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCADQQh0IAJqIQILIAhBAWshCCACQQF0IQIgAUEBdCIBQYCAAkkNAAsgASEDIBQgFEUgDhsMAQsgAiABQRB0ayECIANBgIACcUUEQCALKAIEIRQgDCALQQxBCCABIANLIg4baigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiELIAgtAAEhASAILQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAwCCyAEIAs2AhAgAUEJdCACaiECQQchCAwBCyAEIAs2AhBBCCEIIAFBCHQgAmohAgsgCEEBayEIIAJBAXQhAiADQQF0IgNBgIACSQ0ACyAURSAUIA4bDAELIAsoAgQLIBNzIgEbNgIAIAogCigCAEEgcjYCACAHIAcoAgRBCHI2AgQgBiABQRN0ckEQcgUgBgtBgICAAXIhBgsCQCAGQYCBgAhxDQAgBkH4HnFFDQAgAyAQIAQoAmwgBkEDdiIUQe8DcWotAABBAnRqIgwoAgAiCygCACIBayEDAn8gASACQRB2SwRAIAsoAgQhCiAMIAtBCEEMIAEgA0siExtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEDIAgtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECADQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggA0EIdCACaiECCyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyAKIApFIBMbDAELIAIgAUEQdGshAiADQYCAAnFFBEAgCygCBCEKIAwgC0EMQQggASADSyITG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQEgCC0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIAFBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCABQQh0IAJqIQILIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgCkUgCiATGwwBCyALKAIECwR/IAMgECAHKAIEQRR2QQRxIAdBBGsiCigCAEEWdkEBcSAGQQ92QRBxIAZBE3ZBwABxIBRBqgFxcnJyciIUQdC5AWotAABBAnRqIgwoAgAiCygCACIBayEDIBRB0LsBai0AACETIAkgBSARAn8gASACQRB2SwRAIAsoAgQhFCAMIAtBCEEMIAEgA0siDhtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEDIAgtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECADQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggA0EIdCACaiECCyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyAUIBRFIA4bDAELIAIgAUEQdGshAiADQYCAAnFFBEAgCygCBCEUIAwgC0EMQQggASADSyIOG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQEgCC0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIAFBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCABQQh0IAJqIQILIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgFEUgFCAOGwwBCyALKAIECyATcyIBGzYCgAIgCiAKKAIAQYACcjYCACAHIAcoAgRBwAByNgIEIAYgAUEWdHJBgAFyBSAGC0GAgIAIciEGCwJAIAZBgIiAwABxDQAgBkHA9wFxRQ0AIAMgECAEKAJsIAZBBnYiFEHvA3FqLQAAQQJ0aiIMKAIAIgsoAgAiAWshAwJ/IAEgAkEQdksEQCALKAIEIQogDCALQQhBDCABIANLIhMbaigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiELIAgtAAEhAyAILQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAwCCyAEIAs2AhAgA0EJdCACaiECQQchCAwBCyAEIAs2AhBBCCEIIANBCHQgAmohAgsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgCiAKRSATGwwBCyACIAFBEHRrIQIgA0GAgAJxRQRAIAsoAgQhCiAMIAtBDEEIIAEgA0siExtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEBIAgtAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECABQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggAUEIdCACaiECCyAIQQFrIQggAkEBdCECIANBAXQiA0GAgAJJDQALIApFIAogExsMAQsgCygCBAsEfyADIBAgBygCBEEXdkEEcSAHQQRrIgooAgBBGXZBAXEgBkESdkEQcSAGQRZ2QcAAcSAUQaoBcXJycnIiFEHQuQFqLQAAQQJ0aiIMKAIAIgsoAgAiAWshAyAUQdC7AWotAAAhEyAJIAUgEQJ/IAEgAkEQdksEQCALKAIEIRQgDCALQQhBDCABIANLIg4baigCADYCAANAAkAgCA0AIAQoAhAiCEEBaiELIAgtAAEhAyAILQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghCAwCCyAEIAs2AhAgA0EJdCACaiECQQchCAwBCyAEIAs2AhBBCCEIIANBCHQgAmohAgsgCEEBayEIIAJBAXQhAiABQQF0IgFBgIACSQ0ACyABIQMgFCAURSAOGwwBCyACIAFBEHRrIQIgA0GAgAJxRQRAIAsoAgQhFCAMIAtBDEEIIAEgA0siDhtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEBIAgtAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECABQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggAUEIdCACaiECCyAIQQFrIQggAkEBdCECIANBAXQiA0GAgAJJDQALIBRFIBQgDhsMAQsgCygCBAsgE3MiARs2AoAEIAogCigCAEGAEHI2AgAgByAHKAIEQYAEcjYCBCAGIAFBGXRyQYAIcgUgBgtBgICAwAByIQYLAkAgBkGAwICABHENACAGQYC8D3FFDQAgAyAQIAQoAmwgBkEJdiIUQe8DcWotAABBAnRqIgwoAgAiCygCACIBayEDAn8gASACQRB2SwRAIAsoAgQhCiAMIAtBCEEMIAEgA0siExtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEDIAgtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECADQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggA0EIdCACaiECCyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyAKIApFIBMbDAELIAIgAUEQdGshAiADQYCAAnFFBEAgCygCBCEKIAwgC0EMQQggASADSyITG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQEgCC0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIAFBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCABQQh0IAJqIQILIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgCkUgCiATGwwBCyALKAIECwR/IAMgECAHKAIEQRp2QQRxIAdBBGsiCigCAEEcdkEBcSAGQRV2QRBxIAZBGXZBwABxIBRBqgFxcnJyciIUQdC5AWotAABBAnRqIgwoAgAiCygCACIBayEDIBRB0LsBai0AACETIAkgBSARAn8gASACQRB2SwRAIAsoAgQhFCAMIAtBCEEMIAEgA0siDhtqKAIANgIAA0ACQCAIDQAgBCgCECIIQQFqIQsgCC0AASEDIAgtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEIDAILIAQgCzYCECADQQl0IAJqIQJBByEIDAELIAQgCzYCEEEIIQggA0EIdCACaiECCyAIQQFrIQggAkEBdCECIAFBAXQiAUGAgAJJDQALIAEhAyAUIBRFIA4bDAELIAIgAUEQdGshAiADQYCAAnFFBEAgCygCBCEUIAwgC0EMQQggASADSyIOG2ooAgA2AgADQAJAIAgNACAEKAIQIghBAWohCyAILQABIQEgCC0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQgMAgsgBCALNgIQIAFBCXQgAmohAkEHIQgMAQsgBCALNgIQQQghCCABQQh0IAJqIQILIAhBAWshCCACQQF0IQIgA0EBdCIDQYCAAkkNAAsgFEUgFCAOGwwBCyALKAIECyATcyIBGzYCgAYgCiAKKAIAQYCAAXI2AgAgByAHKAIEQYAgcjYCBCAHIAcoAoQCQQRyNgKEAiAHIAcoAowCQQFyNgKMAiAHIAcoAogCIAFBEnRyQQJyNgKIAiAGIAFBHHRyQYDAAHIFIAYLQYCAgIAEciEGCyAHIAY2AgALIAdBBGohBiAJQQRqIQEgF0EBaiIXQcAARw0ACyAHQQxqIQYgCUGEBmohASANQTxJIVQgDUEEaiENIFQNAAsLIAQgCDYCCCAEIAM2AgQgBCACNgIAIAQgDDYCaAsMAgsgIgRAQQEgGXRBAXYhCSAEKAJ8IhFBAnQiDCAEKAJ4akEMaiEBIAQoAnQhBkEAIQ0gBCgCgAEiA0EETwRAIBFFDQQgEUEDbCEFIBFBAXQhC0EAIAlrIQIDQCALQQJ0IQpBACEDA0ACQCABIgcoAgAiAUUNACABQZCAgAFxQRBGBEAgBCgCACEBAkAgBCgCCCIQDQAgAUH/AUYhECAEKAIQIggtAAAhAQJAIBBFBEAgBCABNgIAIAQgCEEBajYCEAwBCyABQY8BTQRAIAQgATYCACAEIAhBAWo2AhBBByEQDAILQf8BIQEgBEH/ATYCAAtBCCEQCyAEIBBBAWsiCDYCCCAGIAIgCSABIAh2QQFxIAYoAgAiAUEfdkYbIAFqNgIAIAcgBygCAEGAgMAAciIBNgIACyABQYCBgAhxQYABRgRAIAQoAgAhAQJAIAQoAggiEA0AIAFB/wFGIRAgBCgCECIILQAAIQECQCAQRQRAIAQgATYCACAEIAhBAWo2AhAMAQsgAUGPAU0EQCAEIAE2AgAgBCAIQQFqNgIQQQchEAwCC0H/ASEBIARB/wE2AgALQQghEAsgBCAQQQFrIgg2AgggBiAMaiIQIAIgCSABIAh2QQFxIBAoAgAiAUEfdkYbIAFqNgIAIAcgBygCAEGAgIAEciIBNgIACyABQYCIgMAAcUGACEYEQCAEKAIAIQECQCAEKAIIIhANACABQf8BRiEQIAQoAhAiCC0AACEBAkAgEEUEQCAEIAE2AgAgBCAIQQFqNgIQDAELIAFBjwFNBEAgBCABNgIAIAQgCEEBajYCEEEHIRAMAgtB/wEhASAEQf8BNgIAC0EIIRALIAQgEEEBayIINgIIIAYgCmoiECACIAkgASAIdkEBcSAQKAIAIgFBH3ZGGyABajYCACAHIAcoAgBBgICAIHIiATYCAAsgAUGAwICABHFBgMAARw0AIAYgBUECdGohECAEKAIAIQECQCAEKAIIIggNACABQf8BRiEUIAQoAhAiCC0AACEBAkAgFEUEQCAEIAE2AgAgBCAIQQFqNgIQDAELIAFBjwFNBEAgBCABNgIAIAQgCEEBajYCEEEHIQgMAgtB/wEhASAEQf8BNgIAC0EIIQgLIAQgCEEBayIINgIIIBAgAiAJIAEgCHZBAXEgECgCACIBQR92RhsgAWo2AgAgByAHKAIAQYCAgIACcjYCAAsgBkEEaiEGIAdBBGohASADQQFqIgMgEUcNAAsgB0EMaiEBIAYgBUECdGohBiANQQRqIg0gBCgCgAEiA0F8cUkNAAsLIAMgDU0NAiARRQ0CQQAhE0EAIAlrIQUgAyEHA0ACQCAHIA1GBEAgDSEHDAELIAEoAgAhEEEAIQIDQEGQgIABIAJBA2wiB3QgEHFBECAHdEYEQCAGIAIgEWxBAnRqIRAgBCgCACEDAkAgBCgCCCIIDQAgA0H/AUchDCAEKAIQIggtAAAhAwJAIAxFBEAgA0GQAU8EQEH/ASEDIARB/wE2AgAMAgsgBCADNgIAIAQgCEEBajYCEEEHIQgMAgsgBCADNgIAIAQgCEEBajYCEAtBCCEICyAEIAhBAWsiCDYCCCAQIAUgCSADIAh2QQFxIBAoAgAiA0EfdkYbIANqNgIAIAEgASgCAEGAgMAAIAd0ciIQNgIAIAQoAoABIQMLIAMhByACQQFqIgIgAyANa0kNAAsLIAZBBGohBiABQQRqIQEgE0EBaiITIBFHDQALDAILIAQoAnghCCAEKAJ0IQcgBCgCgAEhAwJAIAQoAnwiDEHAAEcNACADQcAARw0AIAhBjAJqIQNBACETQQBBASAZdEEBdiIFayEMIAQoAgghAiAEKAIEIQYgBCgCACEBIAQoAmghDQNAQQAhCANAIAchCSADIhAoAgAiBwRAIAMhVSAHQZCAgAFxQRBGBEAgBiAPQRBBD0EOIAdB7wNxGyAHQYCAwABxG0ECdGoiDSgCACIRKAIAIgNrIQYCfyADIAFBEHZLBEAgESgCBCELIA0gEUEIQQwgAyAGSyIKG2ooAgA2AgADQAJAIAINACAEKAIQIgJBAWohESACLQABIQYgAi0AAEH/AUYEQCAGQZABTwRAIAQgBCgCDEEBajYCDCABQYD+A2ohAUEIIQIMAgsgBCARNgIQIAZBCXQgAWohAUEHIQIMAQsgBCARNgIQQQghAiAGQQh0IAFqIQELIAJBAWshAiABQQF0IQEgA0EBdCIDQYCAAkkNAAsgAyEGIAsgC0UgChsMAQsgASADQRB0ayEBIAZBgIACcUUEQCARKAIEIQsgDSARQQxBCCADIAZLIgobaigCADYCAANAAkAgAg0AIAQoAhAiAkEBaiERIAItAAEhAyACLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAFBgP4DaiEBQQghAgwCCyAEIBE2AhAgA0EJdCABaiEBQQchAgwBCyAEIBE2AhBBCCECIANBCHQgAWohAQsgAkEBayECIAFBAXQhASAGQQF0IgZBgIACSQ0ACyALRSALIAobDAELIBEoAgQLIQMgCSAMIAUgAyAJKAIAIhFBH3ZGGyARajYCACAHQYCAwAByIQcLIAdBgIGACHFBgAFGBEAgBiAPQRBBD0EOIAdB+B5xGyAHQYCAgARxG0ECdGoiDSgCACIRKAIAIgNrIQYCfyADIAFBEHZLBEAgESgCBCELIA0gEUEIQQwgAyAGSyIKG2ooAgA2AgADQAJAIAINACAEKAIQIgJBAWohESACLQABIQYgAi0AAEH/AUYEQCAGQZABTwRAIAQgBCgCDEEBajYCDCABQYD+A2ohAUEIIQIMAgsgBCARNgIQIAZBCXQgAWohAUEHIQIMAQsgBCARNgIQQQghAiAGQQh0IAFqIQELIAJBAWshAiABQQF0IQEgA0EBdCIDQYCAAkkNAAsgAyEGIAsgC0UgChsMAQsgASADQRB0ayEBIAZBgIACcUUEQCARKAIEIQsgDSARQQxBCCADIAZLIgobaigCADYCAANAAkAgAg0AIAQoAhAiAkEBaiERIAItAAEhAyACLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAFBgP4DaiEBQQghAgwCCyAEIBE2AhAgA0EJdCABaiEBQQchAgwBCyAEIBE2AhBBCCECIANBCHQgAWohAQsgAkEBayECIAFBAXQhASAGQQF0IgZBgIACSQ0ACyALRSALIAobDAELIBEoAgQLIQMgCSAMIAUgAyAJKAKAAiIRQR92RhsgEWo2AoACIAdBgICABHIhBwsgB0GAiIDAAHFBgAhGBEAgBiAPQRBBD0EOIAdBwPcBcRsgB0GAgIAgcRtBAnRqIg0oAgAiESgCACIDayEGAn8gAyABQRB2SwRAIBEoAgQhCyANIBFBCEEMIAMgBksiChtqKAIANgIAA0ACQCACDQAgBCgCECICQQFqIREgAi0AASEGIAItAABB/wFGBEAgBkGQAU8EQCAEIAQoAgxBAWo2AgwgAUGA/gNqIQFBCCECDAILIAQgETYCECAGQQl0IAFqIQFBByECDAELIAQgETYCEEEIIQIgBkEIdCABaiEBCyACQQFrIQIgAUEBdCEBIANBAXQiA0GAgAJJDQALIAMhBiALIAtFIAobDAELIAEgA0EQdGshASAGQYCAAnFFBEAgESgCBCELIA0gEUEMQQggAyAGSyIKG2ooAgA2AgADQAJAIAINACAEKAIQIgJBAWohESACLQABIQMgAi0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCABQYD+A2ohAUEIIQIMAgsgBCARNgIQIANBCXQgAWohAUEHIQIMAQsgBCARNgIQQQghAiADQQh0IAFqIQELIAJBAWshAiABQQF0IQEgBkEBdCIGQYCAAkkNAAsgC0UgCyAKGwwBCyARKAIECyEDIAkgDCAFIAMgCSgCgAQiEUEfdkYbIBFqNgKABCAHQYCAgCByIQcLIFUgB0GAwICABHFBgMAARgR/IAYgD0EQQQ9BDiAHQYC8D3EbIAdBgICAgAJxG0ECdGoiDSgCACIRKAIAIgNrIQYCfyADIAFBEHZLBEAgESgCBCELIA0gEUEIQQwgAyAGSyIKG2ooAgA2AgADQAJAIAINACAEKAIQIgJBAWohESACLQABIQYgAi0AAEH/AUYEQCAGQZABTwRAIAQgBCgCDEEBajYCDCABQYD+A2ohAUEIIQIMAgsgBCARNgIQIAZBCXQgAWohAUEHIQIMAQsgBCARNgIQQQghAiAGQQh0IAFqIQELIAJBAWshAiABQQF0IQEgA0EBdCIDQYCAAkkNAAsgAyEGIAsgC0UgChsMAQsgASADQRB0ayEBIAZBgIACcUUEQCARKAIEIQsgDSARQQxBCCADIAZLIgobaigCADYCAANAAkAgAg0AIAQoAhAiAkEBaiERIAItAAEhAyACLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAFBgP4DaiEBQQghAgwCCyAEIBE2AhAgA0EJdCABaiEBQQchAgwBCyAEIBE2AhBBCCECIANBCHQgAWohAQsgAkEBayECIAFBAXQhASAGQQF0IgZBgIACSQ0ACyALRSALIAobDAELIBEoAgQLIQMgCSAMIAUgAyAJKAKABiIRQR92RhsgEWo2AoAGIAdBgICAgAJyBSAHCzYCAAsgEEEEaiEDIAlBBGohByAIQQFqIghBwABHDQALIBBBDGohAyAJQYQGaiEHIBNBPEkhViATQQRqIRMgVg0ACyAEIAI2AgggBCAGNgIEIAQgATYCACAEIA02AmgMAgtBASAZdEEBdiELIAggDEECdCIOakEMaiEJIAQoAgghAiAEKAIEIQYgBCgCACEBIAQoAmghDUEAIRECQCADQQRJDQAgDARAIAxBA2whFCAMQQF0IRdBACALayEKA0AgF0ECdCESQQAhCANAIAkiBSgCACIQBEAgEEGQgIABcUEQRgRAIAYgD0EQQQ9BDiAQQe8DcRsgEEGAgMAAcRtBAnRqIg0oAgAiCSgCACIDayEGAn8gAyABQRB2TQRAIAEgA0EQdGshASAGQYCAAnEEQCAJKAIEDAILIAkoAgQhEyANIAlBDEEIIAMgBksiFRtqKAIANgIAA0ACQCACDQAgBCgCECIJQQFqIQIgCS0AASEDIAktAABB/wFHBEAgBCACNgIQQQghAiADQQh0IAFqIQEMAQsgA0GPAU0EQCAEIAI2AhAgA0EJdCABaiEBQQchAgwBCyAEIAQoAgxBAWo2AgwgAUGA/gNqIQFBCCECCyACQQFrIQIgAUEBdCEBIAZBAXQiBkGAgAJJDQALIBNFIBMgFRsMAQsgCSgCBCETIA0gCUEIQQwgAyAGSyIVG2ooAgA2AgADQAJAIAINACAEKAIQIglBAWohAiAJLQABIQYgCS0AAEH/AUcEQCAEIAI2AhBBCCECIAZBCHQgAWohAQwBCyAGQY8BTQRAIAQgAjYCECAGQQl0IAFqIQFBByECDAELIAQgBCgCDEEBajYCDCABQYD+A2ohAUEIIQILIAJBAWshAiABQQF0IQEgA0EBdCIDQYCAAkkNAAsgAyEGIBMgE0UgFRsLIQMgByAKIAsgAyAHKAIAIglBH3ZGGyAJajYCACAQQYCAwAByIRALIBBBgIGACHFBgAFGBEAgBiAPQRBBD0EOIBBB+B5xGyAQQYCAgARxG0ECdGoiDSgCACIJKAIAIgNrIQYCfyADIAFBEHZNBEAgASADQRB0ayEBIAZBgIACcQRAIAkoAgQMAgsgCSgCBCETIA0gCUEMQQggAyAGSyIVG2ooAgA2AgADQAJAIAINACAEKAIQIglBAWohAiAJLQABIQMgCS0AAEH/AUcEQCAEIAI2AhBBCCECIANBCHQgAWohAQwBCyADQY8BTQRAIAQgAjYCECADQQl0IAFqIQFBByECDAELIAQgBCgCDEEBajYCDCABQYD+A2ohAUEIIQILIAJBAWshAiABQQF0IQEgBkEBdCIGQYCAAkkNAAsgE0UgEyAVGwwBCyAJKAIEIRMgDSAJQQhBDCADIAZLIhUbaigCADYCAANAAkAgAg0AIAQoAhAiCUEBaiECIAktAAEhBiAJLQAAQf8BRwRAIAQgAjYCEEEIIQIgBkEIdCABaiEBDAELIAZBjwFNBEAgBCACNgIQIAZBCXQgAWohAUEHIQIMAQsgBCAEKAIMQQFqNgIMIAFBgP4DaiEBQQghAgsgAkEBayECIAFBAXQhASADQQF0IgNBgIACSQ0ACyADIQYgEyATRSAVGwshAyAHIA5qIgkgCiALIAMgCSgCACIJQR92RhsgCWo2AgAgEEGAgIAEciEQCyAQQYCIgMAAcUGACEYEQCAGIA9BEEEPQQ4gEEHA9wFxGyAQQYCAgCBxG0ECdGoiDSgCACIJKAIAIgNrIQYCfyADIAFBEHZNBEAgASADQRB0ayEBIAZBgIACcQRAIAkoAgQMAgsgCSgCBCETIA0gCUEMQQggAyAGSyIVG2ooAgA2AgADQAJAIAINACAEKAIQIglBAWohAiAJLQABIQMgCS0AAEH/AUcEQCAEIAI2AhBBCCECIANBCHQgAWohAQwBCyADQY8BTQRAIAQgAjYCECADQQl0IAFqIQFBByECDAELIAQgBCgCDEEBajYCDCABQYD+A2ohAUEIIQILIAJBAWshAiABQQF0IQEgBkEBdCIGQYCAAkkNAAsgE0UgEyAVGwwBCyAJKAIEIRMgDSAJQQhBDCADIAZLIhUbaigCADYCAANAAkAgAg0AIAQoAhAiCUEBaiECIAktAAEhBiAJLQAAQf8BRwRAIAQgAjYCEEEIIQIgBkEIdCABaiEBDAELIAZBjwFNBEAgBCACNgIQIAZBCXQgAWohAUEHIQIMAQsgBCAEKAIMQQFqNgIMIAFBgP4DaiEBQQghAgsgAkEBayECIAFBAXQhASADQQF0IgNBgIACSQ0ACyADIQYgEyATRSAVGwshAyAHIBJqIgkgCiALIAMgCSgCACIJQR92RhsgCWo2AgAgEEGAgIAgciEQCyAFIBBBgMCAgARxQYDAAEYEfyAGIA9BEEEPQQ4gEEGAvA9xGyAQQYCAgIACcRtBAnRqIg0oAgAiCSgCACIDayEGAn8gAyABQRB2TQRAIAEgA0EQdGshASAGQYCAAnEEQCAJKAIEDAILIAkoAgQhEyANIAlBDEEIIAMgBksiFRtqKAIANgIAA0ACQCACDQAgBCgCECIJQQFqIQIgCS0AASEDIAktAABB/wFHBEAgBCACNgIQQQghAiADQQh0IAFqIQEMAQsgA0GPAU0EQCAEIAI2AhAgA0EJdCABaiEBQQchAgwBCyAEIAQoAgxBAWo2AgwgAUGA/gNqIQFBCCECCyACQQFrIQIgAUEBdCEBIAZBAXQiBkGAgAJJDQALIBNFIBMgFRsMAQsgCSgCBCETIA0gCUEIQQwgAyAGSyIVG2ooAgA2AgADQAJAIAINACAEKAIQIglBAWohAiAJLQABIQYgCS0AAEH/AUcEQCAEIAI2AhBBCCECIAZBCHQgAWohAQwBCyAGQY8BTQRAIAQgAjYCECAGQQl0IAFqIQFBByECDAELIAQgBCgCDEEBajYCDCABQYD+A2ohAUEIIQILIAJBAWshAiABQQF0IQEgA0EBdCIDQYCAAkkNAAsgAyEGIBMgE0UgFRsLIQMgByAUQQJ0aiIJIAogCyADIAkoAgAiCUEfdkYbIAlqNgIAIBBBgICAgAJyBSAQCzYCAAsgBUEEaiEJIAdBBGohByAIQQFqIgggDEcNAAsgBUEMaiEJIAcgFEECdGohByARQQRqIhEgBCgCgAEiA0F8cUkNAAsMAQtBBCADQXxxIgkgCUEETRtBAWsiCUF8cUEEaiERIAggCUEBdEF4cWpBFGohCQsgBCACNgIIIAQgBjYCBCAEIAE2AgAgBCANNgJoIAxFDQEgAyARTQ0BQQAhE0EAIAtrIRQgAyEBA0ACQCABIBFGBEAgESEBDAELIAkoAgAhAkEAIRADQEGQgIABIBBBA2wiCHQgAnFBECAIdEYEQCAHIAwgEGxBAnRqIQUgBCAPQRBBD0EOIAIgCHYiAUHvA3EbIAFBgIDAAHEbQQJ0aiINNgJoIAQgBCgCBCANKAIAIgIoAgAiAWsiAzYCBAJ/IAEgBCgCACIGQRB2SwRAIAIoAgQhCiAEIAE2AgQgDSACQQhBDCABIANLIg4baigCADYCACAEKAIIIQIDQAJAIAINACAEKAIQIgJBAWohDSACLQABIQMgAi0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCAGQYD+A2ohBkEIIQIMAgsgBCANNgIQIANBCXQgBmohBkEHIQIMAQsgBCANNgIQQQghAiADQQh0IAZqIQYLIAQgAkEBayICNgIIIAQgBkEBdCIGNgIAIAQgAUEBdCIBNgIEIAFBgIACSQ0ACyAKIApFIA4bDAELIAQgBiABQRB0ayIGNgIAIANBgIACcUUEQCACKAIEIQogDSACQQxBCCABIANLIg4baigCADYCACAEKAIIIQIDQAJAIAINACAEKAIQIgJBAWohDSACLQABIQEgAi0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCAGQYD+A2ohBkEIIQIMAgsgBCANNgIQIAFBCXQgBmohBkEHIQIMAQsgBCANNgIQQQghAiABQQh0IAZqIQYLIAQgAkEBayICNgIIIAQgBkEBdCIGNgIAIAQgA0EBdCIDNgIEIANBgIACSQ0ACyAKRSAKIA4bDAELIAIoAgQLIQEgBSAUIAsgASAFKAIAIgNBH3ZGGyADajYCACAJIAkoAgBBgIDAACAIdHIiAjYCACAEKAKAASEDCyAQQQFqIhAgAyIBIBFrSQ0ACwsgCUEEaiEJIAdBBGohByATQQFqIhMgDEcNAAsMAQtBACERQQAhFwJAAkACQAJAIAQoAnwiFEHAAEcNACAEKAKAAUHAAEcNAEEAQQEgGXQiAUEBdiABciIUayETIARB5ABqIQggBEHgAGohECAEQRxqIQsgBCgCeEGMAmohBiAEKAIIIQUgBCgCBCEBIAQoAgAhAiAEKAJoIQkgBCgCdCEDIBZBCHENAQNAQQAhDANAIAMhEQJAAkACfwJAAkAgBiINKAIAIgZFBEAgASAQKAIAIgMoAgAiBmshAQJ/IAYgAkEQdksEQCADKAIEIQcgECADQQhBDCABIAZJIgobaigCADYCAANAAkAgBQ0AIAQoAhAiA0EBaiEJIAMtAAEhASADLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAk2AhAgAUEJdCACaiECQQchBQwBCyAEIAk2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiAGQQF0IgZBgIACSQ0ACyAGIQEgByAHRSAKGwwBCyACIAZBEHRrIQIgAUGAgAJxRQRAIAMoAgQhByAQIANBDEEIIAEgBkkiChtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQkgBi0AASEDIAYtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgCTYCECADQQl0IAJqIQJBByEFDAELIAQgCTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAdFIAcgChsMAQsgAygCBAtFBEAgECEJDAYLIAEgCCgCACIDKAIAIgZrIQECfyAGIAJBEHZLBEAgAygCBCEHIAggA0EIQQwgASAGSSIKG2ooAgAiAzYCAANAAkAgBQ0AIAQoAhAiCUEBaiEFIAktAAEhASAJLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiAGQQF0IgZBgIACSQ0ACyAGIQEgByAHRSAKGwwBCyACIAZBEHRrIQIgAUGAgAJxRQRAIAMoAgQhByAIIANBDEEIIAEgBkkiChtqKAIAIgM2AgADQAJAIAUNACAEKAIQIglBAWohBSAJLQABIQYgCS0AAEH/AUYEQCAGQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAZBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSAGQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgB0UgByAKGwwBCyADKAIECyEKIAEgAygCACIGayEBAn8gBiACQRB2SwRAIAMoAgQhByAIIANBCEEMIAEgBkkiDhtqKAIANgIAA0ACQCAFDQAgBCgCECIDQQFqIQkgAy0AASEBIAMtAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgCTYCECABQQl0IAJqIQJBByEFDAELIAQgCTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIAZBAXQiBkGAgAJJDQALIAYhASAHIAdFIA4bDAELIAIgBkEQdGshAiABQYCAAnFFBEAgAygCBCEHIAggA0EMQQggASAGSSIOG2ooAgA2AgADQAJAIAUNACAEKAIQIgZBAWohCSAGLQABIQMgBi0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAJNgIQIANBCXQgAmohAkEHIQUMAQsgBCAJNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgB0UgByAOGwwBCyADKAIECyEDQQAhBiAIIQkCQAJAAkACfwJAAkAgAyAKQQF0cg4EAAEDBQoLIAEgCyANKAIEQRF2QQRxIA1BBGsiBygCAEETdkEBcXIiDkHQuQFqLQAAQQJ0aiIJKAIAIgMoAgAiBmshAQJ/IAYgAkEQdksEQCADKAIEIQogCSADQQhBDCABIAZJIhIbaigCADYCAANAAkAgBQ0AIAQoAhAiA0EBaiEJIAMtAAEhASADLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAk2AhAgAUEJdCACaiECQQchBQwBCyAEIAk2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiAGQQF0IgZBgIACSQ0ACyAGIQEgCiAKRSASGwwBCyACIAZBEHRrIQIgAUGAgAJxRQRAIAMoAgQhCiAJIANBDEEIIAEgBkkiEhtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQkgBi0AASEDIAYtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgCTYCECADQQl0IAJqIQJBByEFDAELIAQgCTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogEhsMAQsgAygCBAshAyARIBMgFCADIA5B0LsBai0AAHMiAxs2AgAgByAHKAIAQSByNgIAIA0gDSgCBEEIcjYCBCANQYwCayIGIAYoAgBBgIAIcjYCACANQYQCayIGIAYoAgBBgIACcjYCACANQYgCayIGIAYoAgAgA0EfdHJBgIAEcjYCACADQRN0IVcgASALIAQoAmwtAAJBAnRqIgcoAgAiAygCACIGayEBAn8gBiACQRB2SwRAIAMoAgQhCSAHIANBCEEMIAEgBkkiDhtqKAIANgIAA0ACQCAFDQAgBCgCECIDQQFqIQcgAy0AASEBIAMtAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBzYCECABQQl0IAJqIQJBByEFDAELIAQgBzYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIAZBAXQiBkGAgAJJDQALIAYhASAJIAlFIA4bDAELIAIgBkEQdGshAiABQYCAAnFFBEAgAygCBCEJIAcgA0EMQQggASAGSSIOG2ooAgA2AgADQAJAIAUNACAEKAIQIgZBAWohByAGLQABIQMgBi0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAHNgIQIANBCXQgAmohAkEHIQUMAQsgBCAHNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgCUUgCSAOGwwBCyADKAIECyEDIFdBEHIiBiADRQ0BGgsgASALIA0oAgRBFHZBBHEgDUEEayIJKAIAQRZ2QQFxIAZBD3ZBEHEgBkETdkHAAHEgBkEDdkGqAXFycnJyIhJB0LkBai0AAEECdGoiCigCACIHKAIAIgNrIQECfyADIAJBEHZLBEAgBygCBCEOIAogB0EIQQwgASADSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIA4gDkUgChsMAQsgAiADQRB0ayECIAFBgIACcUUEQCAHKAIEIQ4gCiAHQQxBCCABIANJIgobaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhAyAHLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgA0EJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAORSAOIAobDAELIAcoAgQLIQMgESATIBQgAyASQdC7AWotAABzIgMbNgKAAiAJIAkoAgBBgAJyNgIAIA0gDSgCBEHAAHI2AgQgBiADQRZ0ckGAAXILIQYgASALIAQoAmwgBkEGdkHvA3FqLQAAQQJ0aiIJKAIAIgcoAgAiA2shAQJ/IAMgAkEQdksEQCAHKAIEIQogCSAHQQhBDCABIANJIg4baigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEJIActAAEhASAHLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAk2AhAgAUEJdCACaiECQQchBQwBCyAEIAk2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiADQQF0IgNBgIACSQ0ACyADIQEgCiAKRSAOGwwBCyACIANBEHRrIQIgAUGAgAJxRQRAIAcoAgQhCiAJIAdBDEEIIAEgA0kiDhtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQkgBy0AASEDIActAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgCTYCECADQQl0IAJqIQJBByEFDAELIAQgCTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogDhsMAQsgBygCBAtFDQELIAEgCyANKAIEQRd2QQRxIA1BBGsiCSgCAEEZdkEBcSAGQRJ2QRBxIAZBFnZBwABxIAZBBnZBqgFxcnJyciISQdC5AWotAABBAnRqIgooAgAiBygCACIDayEBAn8gAyACQRB2SwRAIAcoAgQhDiAKIAdBCEEMIAEgA0kiChtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAOIA5FIAobDAELIAIgA0EQdGshAiABQYCAAnFFBEAgBygCBCEOIAogB0EMQQggASADSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIANBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgDkUgDiAKGwwBCyAHKAIECyEDIBEgEyAUIAMgEkHQuwFqLQAAcyIDGzYCgAQgCSAJKAIAQYAQcjYCACANIA0oAgRBgARyNgIEIAYgA0EZdHJBgAhyIQYLIAEgCyAEKAJsIAZBCXZB7wNxai0AAEECdGoiCSgCACIHKAIAIgNrIQECfyADIAJBEHZLBEAgBygCBCEKIAkgB0EIQQwgASADSSIOG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAogCkUgDhsMAQsgAiADQRB0ayECIAFBgIACcUUEQCAHKAIEIQogCSAHQQxBCCABIANJIg4baigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhAyAHLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgA0EJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAKRSAKIA4bDAELIAcoAgQLRQ0FCyABIAsgDSgCBEEadkEEcSANQQRrIg4oAgBBHHZBAXEgBkEVdkEQcSAGQRl2QcAAcSAGQQl2QaoBcXJycnIiCkHQuQFqLQAAQQJ0aiIJKAIAIgcoAgAiA2shASADIAJBEHZLBEAgBygCBCESIAkgB0EIQQwgASADSSIVG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIBIgEkUgFRsMBAsgAiADQRB0ayECIAFBgIACcQ0BIAcoAgQhEiAJIAdBDEEIIAEgA0kiFRtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEDIActAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECADQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIBJFIBIgFRsMAwsCQCAGQZCAgAFxDQAgASALIAQoAmwgBkHvA3FqLQAAQQJ0aiIJKAIAIgcoAgAiA2shAQJ/IAMgAkEQdksEQCAHKAIEIQogCSAHQQhBDCABIANJIg4baigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhASAHLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiADQQF0IgNBgIACSQ0ACyADIQEgCiAKRSAOGwwBCyACIANBEHRrIQIgAUGAgAJxRQRAIAcoAgQhCiAJIAdBDEEIIAEgA0kiDhtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEDIActAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECADQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogDhsMAQsgBygCBAtFDQAgASALIA0oAgRBEXZBBHEgDUEEayIKKAIAQRN2QQFxIAZBDnZBEHEgBkEQdkHAAHEgBkGqAXFycnJyIhJB0LkBai0AAEECdGoiCSgCACIHKAIAIgNrIQECfyADIAJBEHZLBEAgBygCBCEOIAkgB0EIQQwgASADSSIVG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIA4gDkUgFRsMAQsgAiADQRB0ayECIAFBgIACcUUEQCAHKAIEIQ4gCSAHQQxBCCABIANJIhUbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhAyAHLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgA0EJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAORSAOIBUbDAELIAcoAgQLIQMgESATIBQgAyASQdC7AWotAABzIgMbNgIAIAogCigCAEEgcjYCACANIA0oAgRBCHI2AgQgDUGMAmsiByAHKAIAQYCACHI2AgAgDUGEAmsiByAHKAIAQYCAAnI2AgAgDUGIAmsiByAHKAIAIANBH3RyQYCABHI2AgAgBiADQRN0ckEQciEGCwJAIAZBgIGACHENACABIAsgBCgCbCAGQQN2Ig5B7wNxai0AAEECdGoiCSgCACIHKAIAIgNrIQECfyADIAJBEHZLBEAgBygCBCEKIAkgB0EIQQwgASADSSISG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAogCkUgEhsMAQsgAiADQRB0ayECIAFBgIACcUUEQCAHKAIEIQogCSAHQQxBCCABIANJIhIbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhAyAHLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgA0EJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAKRSAKIBIbDAELIAcoAgQLRQ0AIAEgCyANKAIEQRR2QQRxIA1BBGsiCigCAEEWdkEBcSAGQQ92QRBxIAZBE3ZBwABxIA5BqgFxcnJyciISQdC5AWotAABBAnRqIgkoAgAiBygCACIDayEBAn8gAyACQRB2SwRAIAcoAgQhDiAJIAdBCEEMIAEgA0kiFRtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAOIA5FIBUbDAELIAIgA0EQdGshAiABQYCAAnFFBEAgBygCBCEOIAkgB0EMQQggASADSSIVG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIANBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgDkUgDiAVGwwBCyAHKAIECyEDIBEgEyAUIAMgEkHQuwFqLQAAcyIDGzYCgAIgCiAKKAIAQYACcjYCACANIA0oAgRBwAByNgIEIAYgA0EWdHJBgAFyIQYLAkAgBkGAiIDAAHENACABIAsgBCgCbCAGQQZ2Ig5B7wNxai0AAEECdGoiCSgCACIHKAIAIgNrIQECfyADIAJBEHZLBEAgBygCBCEKIAkgB0EIQQwgASADSSISG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAogCkUgEhsMAQsgAiADQRB0ayECIAFBgIACcUUEQCAHKAIEIQogCSAHQQxBCCABIANJIhIbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhAyAHLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgA0EJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAKRSAKIBIbDAELIAcoAgQLRQ0AIAEgCyANKAIEQRd2QQRxIA1BBGsiCigCAEEZdkEBcSAGQRJ2QRBxIAZBFnZBwABxIA5BqgFxcnJyciISQdC5AWotAABBAnRqIgkoAgAiBygCACIDayEBAn8gAyACQRB2SwRAIAcoAgQhDiAJIAdBCEEMIAEgA0kiFRtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAOIA5FIBUbDAELIAIgA0EQdGshAiABQYCAAnFFBEAgBygCBCEOIAkgB0EMQQggASADSSIVG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIANBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgDkUgDiAVGwwBCyAHKAIECyEDIBEgEyAUIAMgEkHQuwFqLQAAcyIDGzYCgAQgCiAKKAIAQYAQcjYCACANIA0oAgRBgARyNgIEIAYgA0EZdHJBgAhyIQYLIAZBgMCAgARxDQMgASALIAQoAmwgBkEJdiISQe8DcWotAABBAnRqIgkoAgAiASgCACIDayEHAn8gAyACQRB2SwRAIAEoAgQhCiAJIAFBCEEMIAMgB0siDhtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhByAKIApFIA4bDAELIAIgA0EQdGshAiAHQYCAAnFFBEAgASgCBCEKIAkgAUEMQQggAyAHSyIOG2ooAgA2AgADQAJAIAUNACAEKAIQIgNBAWohBSADLQABIQEgAy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgB0EBdCIHQYCAAkkNAAsgCkUgCiAOGwwBCyABKAIEC0UEQCAHIQEMBAsgByALIA0oAgRBGnZBBHEgDUEEayIOKAIAQRx2QQFxIAZBFXZBEHEgBkEZdkHAAHEgEkGqAXFycnJyIgpB0LkBai0AAEECdGoiCSgCACIHKAIAIgFrIQMgASACQRB2SwRAIAcoAgQhEiAJIAdBCEEMIAEgA0siFRtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEDIActAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECADQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIBIgEkUgFRsMAwsgAiABQRB0ayECIANBgIACcUUNASADIQELIAcoAgQMAQsgBygCBCESIAkgB0EMQQggASADSyIVG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIBJFIBIgFRsLIQMgESATIBQgAyAKQdC7AWotAABzIgMbNgKABiAOIA4oAgBBgIABcjYCACANIA0oAgRBgCByNgIEIA0gDSgChAJBBHI2AoQCIA0gDSgCjAJBAXI2AowCIA0gDSgCiAIgA0ESdHJBAnI2AogCIAYgA0EcdHJBgMAAciEGCyANIAZB////tntxNgIACyANQQRqIQYgEUEEaiEDIAxBAWoiDEHAAEcNAAsgDUEMaiEGIBFBhAZqIQMgF0E8SSFYIBdBBGohFyBYDQALDAILQQEgGXQiAUEBdiABciEOIAQoAngiByAUQQJ0akEMaiEDIAQoAoABIQYgBCgCCCEFIAQoAgQhASAEKAIAIQIgBCgCaCEJIAQoAnQhCwJAAkAgFkEIcQRAIAZBBEkNAiAURQ0BIARB5ABqIRAgBEHgAGohDSAUQQNsIRsgFEEBdCEkQQAgDmshFSAEQRxqIRIDQEEAIRgDQAJAAkACfwJAIAMiCCgCACIDBEACQCADQZCAgAFxDQAgASASIAQoAmwgA0HvA3FqLQAAQQJ0aiIJKAIAIgcoAgAiBmshAQJ/IAYgAkEQdk0EQCACIAZBEHRrIQIgAUGAgAJxBEAgBygCBAwCCyAHKAIEIQwgCSAHQQxBCCABIAZJIgobaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhBiAHLQAAQf8BRwRAIAQgBTYCEEEIIQUgBkEIdCACaiECDAELIAZBjwFNBEAgBCAFNgIQIAZBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAMRSAMIAobDAELIAcoAgQhDCAJIAdBCEEMIAEgBkkiChtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFHBEAgBCAFNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAZBAXQiBkGAgAJJDQALIAYhASAMIAxFIAobC0UNACABIBIgCCgCBEERdkEEcSAIQQRrIgwoAgBBE3ZBAXEgA0EOdkEQcSADQRB2QcAAcSADQaoBcXJycnIiE0HQuQFqLQAAQQJ0aiIJKAIAIgcoAgAiBmshAQJ/IAYgAkEQdk0EQCACIAZBEHRrIQIgAUGAgAJxBEAgBygCBAwCCyAHKAIEIQogCSAHQQxBCCABIAZJIhwbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhBiAHLQAAQf8BRwRAIAQgBTYCEEEIIQUgBkEIdCACaiECDAELIAZBjwFNBEAgBCAFNgIQIAZBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAKRSAKIBwbDAELIAcoAgQhCiAJIAdBCEEMIAEgBkkiHBtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFHBEAgBCAFNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAZBAXQiBkGAgAJJDQALIAYhASAKIApFIBwbCyEGIAsgFSAOIAYgE0HQuwFqLQAAcyIGGzYCACAMIAwoAgBBIHI2AgAgCCAIKAIEQQhyNgIEIAMgBkETdHJBEHIhAwsCQCADQYCBgAhxDQAgASASIAQoAmwgA0EDdiIKQe8DcWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhDCAJIAdBDEEIIAEgBkkiExtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAxFIAwgExsMAQsgBygCBCEMIAkgB0EIQQwgASAGSSITG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAwgDEUgExsLRQ0AIAEgEiAIKAIEQRR2QQRxIAhBBGsiDCgCAEEWdkEBcSADQQ92QRBxIANBE3ZBwABxIApBqgFxcnJyciITQdC5AWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhCiAJIAdBDEEIIAEgBkkiHBtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogHBsMAQsgBygCBCEKIAkgB0EIQQwgASAGSSIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAogCkUgHBsLIQYgCyAUQQJ0aiAVIA4gBiATQdC7AWotAABzIgYbNgIAIAwgDCgCAEGAAnI2AgAgCCAIKAIEQcAAcjYCBCADIAZBFnRyQYABciEDCwJAIANBgIiAwABxDQAgASASIAQoAmwgA0EGdiIKQe8DcWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhDCAJIAdBDEEIIAEgBkkiExtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAxFIAwgExsMAQsgBygCBCEMIAkgB0EIQQwgASAGSSITG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAwgDEUgExsLRQ0AIAEgEiAIKAIEQRd2QQRxIAhBBGsiDCgCAEEZdkEBcSADQRJ2QRBxIANBFnZBwABxIApBqgFxcnJyciITQdC5AWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhCiAJIAdBDEEIIAEgBkkiHBtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogHBsMAQsgBygCBCEKIAkgB0EIQQwgASAGSSIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAogCkUgHBsLIQYgCyAkQQJ0aiAVIA4gBiATQdC7AWotAABzIgYbNgIAIAwgDCgCAEGAEHI2AgAgCCAIKAIEQYAEcjYCBCADIAZBGXRyQYAIciEDCyADQYDAgIAEcQ0DIAEgEiAEKAJsIANBCXYiCkHvA3FqLQAAQQJ0aiIJKAIAIgEoAgAiBmshBwJ/IAYgAkEQdk0EQCACIAZBEHRrIQIgB0GAgAJxBEAgASgCBAwCCyABKAIEIQwgCSABQQxBCCAGIAdLIhMbaigCADYCAANAAkAgBQ0AIAQoAhAiBkEBaiEFIAYtAAEhASAGLQAAQf8BRwRAIAQgBTYCEEEIIQUgAUEIdCACaiECDAELIAFBjwFNBEAgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiAHQQF0IgdBgIACSQ0ACyAMRSAMIBMbDAELIAEoAgQhDCAJIAFBCEEMIAYgB0siExtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFHBEAgBCAFNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAZBAXQiBkGAgAJJDQALIAYhByAMIAxFIBMbC0UEQCAHIQEMBAsgByASIAgoAgRBGnZBBHEgCEEEayIMKAIAQRx2QQFxIANBFXZBEHEgA0EZdkHAAHEgCkGqAXFycnJyIhNB0LkBai0AAEECdGoiCSgCACIKKAIAIgFrIQYgASACQRB2TQRAIAIgAUEQdGshAiAGQYCAAnEEQCAGIQEMAwsgCigCBCEHIAkgCkEMQQggASAGSyIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgVBAWohCiAFLQABIQEgBS0AAEH/AUcEQCAEIAo2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAdFIAcgHBsMAwsgCigCBCEHIAkgCkEIQQwgASAGSyIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgVBAWohCiAFLQABIQYgBS0AAEH/AUcEQCAEIAo2AhBBCCEFIAZBCHQgAmohAgwBCyAGQY8BTQRAIAQgCjYCECAGQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgByAHRSAcGwwCCyABIA0oAgAiBigCACIDayEBAn8gAyACQRB2TQRAIAIgA0EQdGshAiABQYCAAnEEQCAGKAIEDAILIAYoAgQhByANIAZBDEEIIAEgA0kiDBtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQkgBi0AASEDIAYtAABB/wFHBEAgBCAJNgIQQQghBSADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAk2AhAgA0EJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAdFIAcgDBsMAQsgBigCBCEHIA0gBkEIQQwgASADSSIMG2ooAgA2AgADQAJAIAUNACAEKAIQIgZBAWohCSAGLQABIQEgBi0AAEH/AUcEQCAEIAk2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAcgB0UgDBsLRQRAIA0hCQwECyABIBAoAgAiBigCACIDayEBAn8gAyACQRB2TQRAIAIgA0EQdGshAiABQYCAAnEEQCAGKAIEDAILIAYoAgQhByAQIAZBDEEIIAEgA0kiDBtqKAIAIgY2AgADQAJAIAUNACAEKAIQIglBAWohBSAJLQABIQMgCS0AAEH/AUcEQCAEIAU2AhBBCCEFIANBCHQgAmohAgwBCyADQY8BTQRAIAQgBTYCECADQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgB0UgByAMGwwBCyAGKAIEIQcgECAGQQhBDCABIANJIgwbaigCACIGNgIAA0ACQCAFDQAgBCgCECIJQQFqIQUgCS0AASEBIAktAABB/wFHBEAgBCAFNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAHIAdFIAwbCyEMIAEgBigCACIDayEBAn8gAyACQRB2TQRAIAIgA0EQdGshAiABQYCAAnEEQCAGKAIEDAILIAYoAgQhByAQIAZBDEEIIAEgA0kiChtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQkgBi0AASEDIAYtAABB/wFHBEAgBCAJNgIQQQghBSADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAk2AhAgA0EJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAdFIAcgChsMAQsgBigCBCEHIBAgBkEIQQwgASADSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgZBAWohCSAGLQABIQEgBi0AAEH/AUcEQCAEIAk2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAcgB0UgChsLIQZBACEDIBAhCQJAAkACQAJ/AkACQCAGIAxBAXRyDgQAAQMFCAsgASASIAgoAgRBEXZBBHEgCEEEayIHKAIAQRN2QQFxciIKQdC5AWotAABBAnRqIgkoAgAiBigCACIDayEBAn8gAyACQRB2TQRAIAIgA0EQdGshAiABQYCAAnEEQCAGKAIEDAILIAYoAgQhDCAJIAZBDEEIIAEgA0kiExtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQkgBi0AASEDIAYtAABB/wFHBEAgBCAJNgIQQQghBSADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAk2AhAgA0EJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAxFIAwgExsMAQsgBigCBCEMIAkgBkEIQQwgASADSSITG2ooAgA2AgADQAJAIAUNACAEKAIQIgZBAWohCSAGLQABIQEgBi0AAEH/AUcEQCAEIAk2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAwgDEUgExsLIQMgCyAVIA4gAyAKQdC7AWotAABzIgMbNgIAIAcgBygCAEEgcjYCACAIIAgoAgRBCHI2AgQgA0ETdCFZIAEgEiAEKAJsLQACQQJ0aiIHKAIAIgYoAgAiA2shAQJ/IAMgAkEQdk0EQCACIANBEHRrIQIgAUGAgAJxBEAgBigCBAwCCyAGKAIEIQkgByAGQQxBCCABIANJIgobaigCADYCAANAAkAgBQ0AIAQoAhAiBkEBaiEHIAYtAAEhAyAGLQAAQf8BRwRAIAQgBzYCEEEIIQUgA0EIdCACaiECDAELIANBjwFNBEAgBCAHNgIQIANBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAJRSAJIAobDAELIAYoAgQhCSAHIAZBCEEMIAEgA0kiChtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQcgBi0AASEBIAYtAABB/wFHBEAgBCAHNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAc2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAJIAlFIAobCyEGIFlBEHIiAyAGRQ0BGgsgASASIAgoAgRBFHZBBHEgCEEEayIJKAIAQRZ2QQFxIANBD3ZBEHEgA0ETdkHAAHEgA0EDdkGqAXFycnJyIhNB0LkBai0AAEECdGoiDCgCACIHKAIAIgZrIQECfyAGIAJBEHZNBEAgAiAGQRB0ayECIAFBgIACcQRAIAcoAgQMAgsgBygCBCEKIAwgB0EMQQggASAGSSIMG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQYgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAZBCHQgAmohAgwBCyAGQY8BTQRAIAQgBTYCECAGQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgCkUgCiAMGwwBCyAHKAIEIQogDCAHQQhBDCABIAZJIgwbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhASAHLQAAQf8BRwRAIAQgBTYCEEEIIQUgAUEIdCACaiECDAELIAFBjwFNBEAgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiAGQQF0IgZBgIACSQ0ACyAGIQEgCiAKRSAMGwshBiALIBRBAnRqIBUgDiAGIBNB0LsBai0AAHMiBhs2AgAgCSAJKAIAQYACcjYCACAIIAgoAgRBwAByNgIEIAMgBkEWdHJBgAFyCyEDIAEgEiAEKAJsIANBBnZB7wNxai0AAEECdGoiCSgCACIHKAIAIgZrIQECfyAGIAJBEHZNBEAgAiAGQRB0ayECIAFBgIACcQRAIAcoAgQMAgsgBygCBCEMIAkgB0EMQQggASAGSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohCSAHLQABIQYgBy0AAEH/AUcEQCAEIAk2AhBBCCEFIAZBCHQgAmohAgwBCyAGQY8BTQRAIAQgCTYCECAGQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgDEUgDCAKGwwBCyAHKAIEIQwgCSAHQQhBDCABIAZJIgobaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEJIActAAEhASAHLQAAQf8BRwRAIAQgCTYCEEEIIQUgAUEIdCACaiECDAELIAFBjwFNBEAgBCAJNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiAGQQF0IgZBgIACSQ0ACyAGIQEgDCAMRSAKGwtFDQELIAEgEiAIKAIEQRd2QQRxIAhBBGsiCSgCAEEZdkEBcSADQRJ2QRBxIANBFnZBwABxIANBBnZBqgFxcnJyciITQdC5AWotAABBAnRqIgwoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhCiAMIAdBDEEIIAEgBkkiDBtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogDBsMAQsgBygCBCEKIAwgB0EIQQwgASAGSSIMG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAogCkUgDBsLIQYgCyAkQQJ0aiAVIA4gBiATQdC7AWotAABzIgYbNgIAIAkgCSgCAEGAEHI2AgAgCCAIKAIEQYAEcjYCBCADIAZBGXRyQYAIciEDCyABIBIgBCgCbCADQQl2Qe8DcWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhDCAJIAdBDEEIIAEgBkkiChtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAxFIAwgChsMAQsgBygCBCEMIAkgB0EIQQwgASAGSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAwgDEUgChsLRQ0DCyABIBIgCCgCBEEadkEEcSAIQQRrIgwoAgBBHHZBAXEgA0EVdkEQcSADQRl2QcAAcSADQQl2QaoBcXJycnIiE0HQuQFqLQAAQQJ0aiIJKAIAIgooAgAiBmshASAGIAJBEHZNBEAgAiAGQRB0ayECIAFBgIACcQ0BIAooAgQhByAJIApBDEEIIAEgBkkiHBtqKAIANgIAA0ACQCAFDQAgBCgCECIFQQFqIQogBS0AASEGIAUtAABB/wFHBEAgBCAKNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAo2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAdFIAcgHBsMAgsgCigCBCEHIAkgCkEIQQwgASAGSSIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgVBAWohCiAFLQABIQEgBS0AAEH/AUcEQCAEIAo2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAcgB0UgHBsMAQsgCigCBAshBiALIBtBAnRqIBUgDiAGIBNB0LsBai0AAHMiBxs2AgAgDCAMKAIAQYCAAXI2AgAgCCAIKAIEQYAgcjYCBCAEKAJ8QQJ0IAhqIgYgBigCBEEEcjYCBCAGIAYoAgxBAXI2AgwgBiAGKAIIIAdBEnRyQQJyNgIIIAMgB0EcdHJBgMAAciEDCyAIIANB////tntxNgIACyAIQQRqIQMgC0EEaiELIBhBAWoiGCAURw0ACyAIQQxqIQMgCyAbQQJ0aiELIBFBBGoiESAEKAKAASIGQXxxSQ0ACwwCCwJAIAZBBEkNACAUBEAgBEHkAGohECAEQeAAaiENIBRBA2whGyAUQQF0ISRBACAOayEVIARBHGohEgNAQQAhGANAAkACQAJ/AkAgAyIIKAIAIgMEQAJAIANBkICAAXENACABIBIgBCgCbCADQe8DcWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhDCAJIAdBDEEIIAEgBkkiChtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAxFIAwgChsMAQsgBygCBCEMIAkgB0EIQQwgASAGSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAwgDEUgChsLRQ0AIAEgEiAIKAIEQRF2QQRxIAhBBGsiDCgCAEETdkEBcSADQQ52QRBxIANBEHZBwABxIANBqgFxcnJyciITQdC5AWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhCiAJIAdBDEEIIAEgBkkiHBtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogHBsMAQsgBygCBCEKIAkgB0EIQQwgASAGSSIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAogCkUgHBsLIQYgCyAVIA4gBiATQdC7AWotAABzIgcbNgIAIAwgDCgCAEEgcjYCACAIIAgoAgRBCHI2AgQgCEF+IAQoAnxrQQJ0aiIGIAYoAgRBgIACcjYCBCAGIAYoAgAgB0EfdHJBgIAEcjYCACAGQQRrIgYgBigCAEGAgAhyNgIAIAMgB0ETdHJBEHIhAwsCQCADQYCBgAhxDQAgASASIAQoAmwgA0EDdiIKQe8DcWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhDCAJIAdBDEEIIAEgBkkiExtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAxFIAwgExsMAQsgBygCBCEMIAkgB0EIQQwgASAGSSITG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAwgDEUgExsLRQ0AIAEgEiAIKAIEQRR2QQRxIAhBBGsiDCgCAEEWdkEBcSADQQ92QRBxIANBE3ZBwABxIApBqgFxcnJyciITQdC5AWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhCiAJIAdBDEEIIAEgBkkiHBtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogHBsMAQsgBygCBCEKIAkgB0EIQQwgASAGSSIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAogCkUgHBsLIQYgCyAUQQJ0aiAVIA4gBiATQdC7AWotAABzIgYbNgIAIAwgDCgCAEGAAnI2AgAgCCAIKAIEQcAAcjYCBCADIAZBFnRyQYABciEDCwJAIANBgIiAwABxDQAgASASIAQoAmwgA0EGdiIKQe8DcWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhDCAJIAdBDEEIIAEgBkkiExtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAxFIAwgExsMAQsgBygCBCEMIAkgB0EIQQwgASAGSSITG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAwgDEUgExsLRQ0AIAEgEiAIKAIEQRd2QQRxIAhBBGsiDCgCAEEZdkEBcSADQRJ2QRBxIANBFnZBwABxIApBqgFxcnJyciITQdC5AWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhCiAJIAdBDEEIIAEgBkkiHBtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogHBsMAQsgBygCBCEKIAkgB0EIQQwgASAGSSIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAogCkUgHBsLIQYgCyAkQQJ0aiAVIA4gBiATQdC7AWotAABzIgYbNgIAIAwgDCgCAEGAEHI2AgAgCCAIKAIEQYAEcjYCBCADIAZBGXRyQYAIciEDCyADQYDAgIAEcQ0DIAEgEiAEKAJsIANBCXYiCkHvA3FqLQAAQQJ0aiIJKAIAIgEoAgAiBmshBwJ/IAYgAkEQdk0EQCACIAZBEHRrIQIgB0GAgAJxBEAgASgCBAwCCyABKAIEIQwgCSABQQxBCCAGIAdLIhMbaigCADYCAANAAkAgBQ0AIAQoAhAiBkEBaiEFIAYtAAEhASAGLQAAQf8BRwRAIAQgBTYCEEEIIQUgAUEIdCACaiECDAELIAFBjwFNBEAgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiAHQQF0IgdBgIACSQ0ACyAMRSAMIBMbDAELIAEoAgQhDCAJIAFBCEEMIAYgB0siExtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFHBEAgBCAFNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAZBAXQiBkGAgAJJDQALIAYhByAMIAxFIBMbC0UEQCAHIQEMBAsgByASIAgoAgRBGnZBBHEgCEEEayIMKAIAQRx2QQFxIANBFXZBEHEgA0EZdkHAAHEgCkGqAXFycnJyIhNB0LkBai0AAEECdGoiCSgCACIKKAIAIgFrIQYgASACQRB2TQRAIAIgAUEQdGshAiAGQYCAAnEEQCAGIQEMAwsgCigCBCEHIAkgCkEMQQggASAGSyIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgVBAWohCiAFLQABIQEgBS0AAEH/AUcEQCAEIAo2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCjYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAdFIAcgHBsMAwsgCigCBCEHIAkgCkEIQQwgASAGSyIcG2ooAgA2AgADQAJAIAUNACAEKAIQIgVBAWohCiAFLQABIQYgBS0AAEH/AUcEQCAEIAo2AhBBCCEFIAZBCHQgAmohAgwBCyAGQY8BTQRAIAQgCjYCECAGQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgByAHRSAcGwwCCyABIA0oAgAiBigCACIDayEBAn8gAyACQRB2TQRAIAIgA0EQdGshAiABQYCAAnEEQCAGKAIEDAILIAYoAgQhByANIAZBDEEIIAEgA0kiDBtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQkgBi0AASEDIAYtAABB/wFHBEAgBCAJNgIQQQghBSADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAk2AhAgA0EJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAdFIAcgDBsMAQsgBigCBCEHIA0gBkEIQQwgASADSSIMG2ooAgA2AgADQAJAIAUNACAEKAIQIgZBAWohCSAGLQABIQEgBi0AAEH/AUcEQCAEIAk2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAcgB0UgDBsLRQRAIA0hCQwECyABIBAoAgAiBigCACIDayEBAn8gAyACQRB2TQRAIAIgA0EQdGshAiABQYCAAnEEQCAGKAIEDAILIAYoAgQhByAQIAZBDEEIIAEgA0kiDBtqKAIAIgY2AgADQAJAIAUNACAEKAIQIglBAWohBSAJLQABIQMgCS0AAEH/AUcEQCAEIAU2AhBBCCEFIANBCHQgAmohAgwBCyADQY8BTQRAIAQgBTYCECADQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgB0UgByAMGwwBCyAGKAIEIQcgECAGQQhBDCABIANJIgwbaigCACIGNgIAA0ACQCAFDQAgBCgCECIJQQFqIQUgCS0AASEBIAktAABB/wFHBEAgBCAFNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAHIAdFIAwbCyEMIAEgBigCACIDayEBAn8gAyACQRB2TQRAIAIgA0EQdGshAiABQYCAAnEEQCAGKAIEDAILIAYoAgQhByAQIAZBDEEIIAEgA0kiChtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQkgBi0AASEDIAYtAABB/wFHBEAgBCAJNgIQQQghBSADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAk2AhAgA0EJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAdFIAcgChsMAQsgBigCBCEHIBAgBkEIQQwgASADSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgZBAWohCSAGLQABIQEgBi0AAEH/AUcEQCAEIAk2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAcgB0UgChsLIQZBACEDIBAhCQJAAkACQAJ/AkACQCAGIAxBAXRyDgQAAQMFCAsgASASIAgoAgRBEXZBBHEgCEEEayIHKAIAQRN2QQFxciIKQdC5AWotAABBAnRqIgkoAgAiBigCACIDayEBAn8gAyACQRB2TQRAIAIgA0EQdGshAiABQYCAAnEEQCAGKAIEDAILIAYoAgQhDCAJIAZBDEEIIAEgA0kiExtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQkgBi0AASEDIAYtAABB/wFHBEAgBCAJNgIQQQghBSADQQh0IAJqIQIMAQsgA0GPAU0EQCAEIAk2AhAgA0EJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAxFIAwgExsMAQsgBigCBCEMIAkgBkEIQQwgASADSSITG2ooAgA2AgADQAJAIAUNACAEKAIQIgZBAWohCSAGLQABIQEgBi0AAEH/AUcEQCAEIAk2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAwgDEUgExsLIQMgCyAVIA4gAyAKQdC7AWotAABzIgYbNgIAIAcgBygCAEEgcjYCACAIIAgoAgRBCHI2AgQgCEF+IAQoAnxrQQJ0aiIDIAMoAgRBgIACcjYCBCADIAMoAgAgBkEfdHJBgIAEcjYCACADQQRrIgMgAygCAEGAgAhyNgIAIAZBE3QhWiABIBIgBCgCbC0AAkECdGoiBygCACIGKAIAIgNrIQECfyADIAJBEHZNBEAgAiADQRB0ayECIAFBgIACcQRAIAYoAgQMAgsgBigCBCEJIAcgBkEMQQggASADSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgZBAWohByAGLQABIQMgBi0AAEH/AUcEQCAEIAc2AhBBCCEFIANBCHQgAmohAgwBCyADQY8BTQRAIAQgBzYCECADQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgCUUgCSAKGwwBCyAGKAIEIQkgByAGQQhBDCABIANJIgobaigCADYCAANAAkAgBQ0AIAQoAhAiBkEBaiEHIAYtAAEhASAGLQAAQf8BRwRAIAQgBzYCEEEIIQUgAUEIdCACaiECDAELIAFBjwFNBEAgBCAHNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiADQQF0IgNBgIACSQ0ACyADIQEgCSAJRSAKGwshBiBaQRByIgMgBkUNARoLIAEgEiAIKAIEQRR2QQRxIAhBBGsiCSgCAEEWdkEBcSADQQ92QRBxIANBE3ZBwABxIANBA3ZBqgFxcnJyciITQdC5AWotAABBAnRqIgwoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhCiAMIAdBDEEIIAEgBkkiDBtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEGIActAABB/wFHBEAgBCAFNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAU2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIApFIAogDBsMAQsgBygCBCEKIAwgB0EIQQwgASAGSSIMG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUcEQCAEIAU2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAogCkUgDBsLIQYgCyAUQQJ0aiAVIA4gBiATQdC7AWotAABzIgYbNgIAIAkgCSgCAEGAAnI2AgAgCCAIKAIEQcAAcjYCBCADIAZBFnRyQYABcgshAyABIBIgBCgCbCADQQZ2Qe8DcWotAABBAnRqIgkoAgAiBygCACIGayEBAn8gBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnEEQCAHKAIEDAILIAcoAgQhDCAJIAdBDEEIIAEgBkkiChtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQkgBy0AASEGIActAABB/wFHBEAgBCAJNgIQQQghBSAGQQh0IAJqIQIMAQsgBkGPAU0EQCAEIAk2AhAgBkEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAxFIAwgChsMAQsgBygCBCEMIAkgB0EIQQwgASAGSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohCSAHLQABIQEgBy0AAEH/AUcEQCAEIAk2AhBBCCEFIAFBCHQgAmohAgwBCyABQY8BTQRAIAQgCTYCECABQQl0IAJqIQJBByEFDAELIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQULIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAwgDEUgChsLRQ0BCyABIBIgCCgCBEEXdkEEcSAIQQRrIgkoAgBBGXZBAXEgA0ESdkEQcSADQRZ2QcAAcSADQQZ2QaoBcXJycnIiE0HQuQFqLQAAQQJ0aiIMKAIAIgcoAgAiBmshAQJ/IAYgAkEQdk0EQCACIAZBEHRrIQIgAUGAgAJxBEAgBygCBAwCCyAHKAIEIQogDCAHQQxBCCABIAZJIgwbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhBiAHLQAAQf8BRwRAIAQgBTYCEEEIIQUgBkEIdCACaiECDAELIAZBjwFNBEAgBCAFNgIQIAZBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAKRSAKIAwbDAELIAcoAgQhCiAMIAdBCEEMIAEgBkkiDBtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFHBEAgBCAFNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAZBAXQiBkGAgAJJDQALIAYhASAKIApFIAwbCyEGIAsgJEECdGogFSAOIAYgE0HQuwFqLQAAcyIGGzYCACAJIAkoAgBBgBByNgIAIAggCCgCBEGABHI2AgQgAyAGQRl0ckGACHIhAwsgASASIAQoAmwgA0EJdkHvA3FqLQAAQQJ0aiIJKAIAIgcoAgAiBmshAQJ/IAYgAkEQdk0EQCACIAZBEHRrIQIgAUGAgAJxBEAgBygCBAwCCyAHKAIEIQwgCSAHQQxBCCABIAZJIgobaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhBiAHLQAAQf8BRwRAIAQgBTYCEEEIIQUgBkEIdCACaiECDAELIAZBjwFNBEAgBCAFNgIQIAZBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAMRSAMIAobDAELIAcoAgQhDCAJIAdBCEEMIAEgBkkiChtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFHBEAgBCAFNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAZBAXQiBkGAgAJJDQALIAYhASAMIAxFIAobC0UNAwsgASASIAgoAgRBGnZBBHEgCEEEayIMKAIAQRx2QQFxIANBFXZBEHEgA0EZdkHAAHEgA0EJdkGqAXFycnJyIhNB0LkBai0AAEECdGoiCSgCACIKKAIAIgZrIQEgBiACQRB2TQRAIAIgBkEQdGshAiABQYCAAnENASAKKAIEIQcgCSAKQQxBCCABIAZJIhwbaigCADYCAANAAkAgBQ0AIAQoAhAiBUEBaiEKIAUtAAEhBiAFLQAAQf8BRwRAIAQgCjYCEEEIIQUgBkEIdCACaiECDAELIAZBjwFNBEAgBCAKNgIQIAZBCXQgAmohAkEHIQUMAQsgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAHRSAHIBwbDAILIAooAgQhByAJIApBCEEMIAEgBkkiHBtqKAIANgIAA0ACQCAFDQAgBCgCECIFQQFqIQogBS0AASEBIAUtAABB/wFHBEAgBCAKNgIQQQghBSABQQh0IAJqIQIMAQsgAUGPAU0EQCAEIAo2AhAgAUEJdCACaiECQQchBQwBCyAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFCyAFQQFrIQUgAkEBdCECIAZBAXQiBkGAgAJJDQALIAYhASAHIAdFIBwbDAELIAooAgQLIQYgCyAbQQJ0aiAVIA4gBiATQdC7AWotAABzIgcbNgIAIAwgDCgCAEGAgAFyNgIAIAggCCgCBEGAIHI2AgQgBCgCfEECdCAIaiIGIAYoAgRBBHI2AgQgBiAGKAIMQQFyNgIMIAYgBigCCCAHQRJ0ckECcjYCCCADIAdBHHRyQYDAAHIhAwsgCCADQf///7Z7cTYCAAsgCEEEaiEDIAtBBGohCyAYQQFqIhggFEcNAAsgCEEMaiEDIAsgG0ECdGohCyARQQRqIhEgBCgCgAEiBkF8cUkNAAsMAQtBBCAGQXxxIgMgA0EETRtBAWsiA0F8cUEEaiERIAcgA0EBdEF4cWpBFGohAwsgBCAFNgIIIAQgATYCBCAEIAI2AgAgBCAJNgJoIBRFDQQgBiARTQ0EA0BBACEFIBEgBCgCgAFHBEADQCAEIAMgCyAFIBRsQQJ0aiAOIAVBABBYIAVBAWoiBSAEKAKAASARa0kNAAsLIAMgAygCAEH///+2e3E2AgAgC0EEaiELIANBBGohAyAXQQFqIhcgFEcNAAsMBAtBBCAGQXxxIgMgA0EETRtBAWsiA0F8cUEEaiERIAcgA0EBdEF4cWpBFGohAwsgBCAFNgIIIAQgATYCBCAEIAI2AgAgBCAJNgJoIBRFDQIgBiARTQ0CA0BBACEFIBEgBCgCgAFHBEADQCAEIAMgCyAFIBRsQQJ0aiAOIAVBARBYIAVBAWoiBSAEKAKAASARa0kNAAsLIAMgAygCAEH///+2e3E2AgAgC0EEaiELIANBBGohAyAXQQFqIhcgFEcNAAsMAgsDQEEAIQwDQCADIRECQAJAAn8CQAJAIAYiDSgCACIGRQRAIAEgECgCACIDKAIAIgZrIQECfyAGIAJBEHZLBEAgAygCBCEHIBAgA0EIQQwgASAGSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgNBAWohCSADLQABIQEgAy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAJNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAJNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAcgB0UgChsMAQsgAiAGQRB0ayECIAFBgIACcUUEQCADKAIEIQcgECADQQxBCCABIAZJIgobaigCADYCAANAAkAgBQ0AIAQoAhAiBkEBaiEJIAYtAAEhAyAGLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAk2AhAgA0EJdCACaiECQQchBQwBCyAEIAk2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAHRSAHIAobDAELIAMoAgQLRQRAIBAhCQwGCyABIAgoAgAiAygCACIGayEBAn8gBiACQRB2SwRAIAMoAgQhByAIIANBCEEMIAEgBkkiChtqKAIAIgM2AgADQAJAIAUNACAEKAIQIglBAWohBSAJLQABIQEgCS0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAcgB0UgChsMAQsgAiAGQRB0ayECIAFBgIACcUUEQCADKAIEIQcgCCADQQxBCCABIAZJIgobaigCACIDNgIAA0ACQCAFDQAgBCgCECIJQQFqIQUgCS0AASEGIAktAABB/wFGBEAgBkGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECAGQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgBkEIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAdFIAcgChsMAQsgAygCBAshCiABIAMoAgAiBmshAQJ/IAYgAkEQdksEQCADKAIEIQcgCCADQQhBDCABIAZJIg4baigCADYCAANAAkAgBQ0AIAQoAhAiA0EBaiEJIAMtAAEhASADLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAk2AhAgAUEJdCACaiECQQchBQwBCyAEIAk2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiAGQQF0IgZBgIACSQ0ACyAGIQEgByAHRSAOGwwBCyACIAZBEHRrIQIgAUGAgAJxRQRAIAMoAgQhByAIIANBDEEIIAEgBkkiDhtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQkgBi0AASEDIAYtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgCTYCECADQQl0IAJqIQJBByEFDAELIAQgCTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAdFIAcgDhsMAQsgAygCBAshA0EAIQYgCCEJAkACQAJAAn8CQAJAIAMgCkEBdHIOBAABAwUKCyABIAsgDSgCBEERdkEEcSANQQRrIgcoAgBBE3ZBAXFyIg5B0LkBai0AAEECdGoiCSgCACIDKAIAIgZrIQECfyAGIAJBEHZLBEAgAygCBCEKIAkgA0EIQQwgASAGSSISG2ooAgA2AgADQAJAIAUNACAEKAIQIgNBAWohCSADLQABIQEgAy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAJNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAJNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgBkEBdCIGQYCAAkkNAAsgBiEBIAogCkUgEhsMAQsgAiAGQRB0ayECIAFBgIACcUUEQCADKAIEIQogCSADQQxBCCABIAZJIhIbaigCADYCAANAAkAgBQ0AIAQoAhAiBkEBaiEJIAYtAAEhAyAGLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAk2AhAgA0EJdCACaiECQQchBQwBCyAEIAk2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAKRSAKIBIbDAELIAMoAgQLIQMgESATIBQgAyAOQdC7AWotAABzIgMbNgIAIAcgBygCAEEgcjYCACANIA0oAgRBCHI2AgQgA0ETdCFbIAEgCyAEKAJsLQACQQJ0aiIHKAIAIgMoAgAiBmshAQJ/IAYgAkEQdksEQCADKAIEIQkgByADQQhBDCABIAZJIg4baigCADYCAANAAkAgBQ0AIAQoAhAiA0EBaiEHIAMtAAEhASADLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAc2AhAgAUEJdCACaiECQQchBQwBCyAEIAc2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiAGQQF0IgZBgIACSQ0ACyAGIQEgCSAJRSAOGwwBCyACIAZBEHRrIQIgAUGAgAJxRQRAIAMoAgQhCSAHIANBDEEIIAEgBkkiDhtqKAIANgIAA0ACQCAFDQAgBCgCECIGQQFqIQcgBi0AASEDIAYtAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBzYCECADQQl0IAJqIQJBByEFDAELIAQgBzYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIAlFIAkgDhsMAQsgAygCBAshAyBbQRByIgYgA0UNARoLIAEgCyANKAIEQRR2QQRxIA1BBGsiCSgCAEEWdkEBcSAGQQ92QRBxIAZBE3ZBwABxIAZBA3ZBqgFxcnJyciISQdC5AWotAABBAnRqIgooAgAiBygCACIDayEBAn8gAyACQRB2SwRAIAcoAgQhDiAKIAdBCEEMIAEgA0kiChtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAOIA5FIAobDAELIAIgA0EQdGshAiABQYCAAnFFBEAgBygCBCEOIAogB0EMQQggASADSSIKG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIANBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgDkUgDiAKGwwBCyAHKAIECyEDIBEgEyAUIAMgEkHQuwFqLQAAcyIDGzYCgAIgCSAJKAIAQYACcjYCACANIA0oAgRBwAByNgIEIAYgA0EWdHJBgAFyCyEGIAEgCyAEKAJsIAZBBnZB7wNxai0AAEECdGoiCSgCACIHKAIAIgNrIQECfyADIAJBEHZLBEAgBygCBCEKIAkgB0EIQQwgASADSSIOG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohCSAHLQABIQEgBy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAJNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAJNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAogCkUgDhsMAQsgAiADQRB0ayECIAFBgIACcUUEQCAHKAIEIQogCSAHQQxBCCABIANJIg4baigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEJIActAAEhAyAHLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAk2AhAgA0EJdCACaiECQQchBQwBCyAEIAk2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAKRSAKIA4bDAELIAcoAgQLRQ0BCyABIAsgDSgCBEEXdkEEcSANQQRrIgkoAgBBGXZBAXEgBkESdkEQcSAGQRZ2QcAAcSAGQQZ2QaoBcXJycnIiEkHQuQFqLQAAQQJ0aiIKKAIAIgcoAgAiA2shAQJ/IAMgAkEQdksEQCAHKAIEIQ4gCiAHQQhBDCABIANJIgobaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhASAHLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiADQQF0IgNBgIACSQ0ACyADIQEgDiAORSAKGwwBCyACIANBEHRrIQIgAUGAgAJxRQRAIAcoAgQhDiAKIAdBDEEIIAEgA0kiChtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEDIActAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECADQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIA5FIA4gChsMAQsgBygCBAshAyARIBMgFCADIBJB0LsBai0AAHMiAxs2AoAEIAkgCSgCAEGAEHI2AgAgDSANKAIEQYAEcjYCBCAGIANBGXRyQYAIciEGCyABIAsgBCgCbCAGQQl2Qe8DcWotAABBAnRqIgkoAgAiBygCACIDayEBAn8gAyACQRB2SwRAIAcoAgQhCiAJIAdBCEEMIAEgA0kiDhtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAKIApFIA4bDAELIAIgA0EQdGshAiABQYCAAnFFBEAgBygCBCEKIAkgB0EMQQggASADSSIOG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIANBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgCkUgCiAOGwwBCyAHKAIEC0UNBQsgASALIA0oAgRBGnZBBHEgDUEEayIOKAIAQRx2QQFxIAZBFXZBEHEgBkEZdkHAAHEgBkEJdkGqAXFycnJyIgpB0LkBai0AAEECdGoiCSgCACIHKAIAIgNrIQEgAyACQRB2SwRAIAcoAgQhEiAJIAdBCEEMIAEgA0kiFRtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASASIBJFIBUbDAQLIAIgA0EQdGshAiABQYCAAnENASAHKAIEIRIgCSAHQQxBCCABIANJIhUbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhAyAHLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgA0EJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyASRSASIBUbDAMLAkAgBkGQgIABcQ0AIAEgCyAEKAJsIAZB7wNxai0AAEECdGoiCSgCACIHKAIAIgNrIQECfyADIAJBEHZLBEAgBygCBCEKIAkgB0EIQQwgASADSSIOG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQEgBy0AAEH/AUYEQCABQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIAFBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSABQQh0IAJqIQILIAVBAWshBSACQQF0IQIgA0EBdCIDQYCAAkkNAAsgAyEBIAogCkUgDhsMAQsgAiADQRB0ayECIAFBgIACcUUEQCAHKAIEIQogCSAHQQxBCCABIANJIg4baigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhAyAHLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgA0EJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyAKRSAKIA4bDAELIAcoAgQLRQ0AIAEgCyANKAIEQRF2QQRxIA1BBGsiCigCAEETdkEBcSAGQQ52QRBxIAZBEHZBwABxIAZBqgFxcnJyciISQdC5AWotAABBAnRqIgkoAgAiBygCACIDayEBAn8gAyACQRB2SwRAIAcoAgQhDiAJIAdBCEEMIAEgA0kiFRtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAOIA5FIBUbDAELIAIgA0EQdGshAiABQYCAAnFFBEAgBygCBCEOIAkgB0EMQQggASADSSIVG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIANBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgDkUgDiAVGwwBCyAHKAIECyEDIBEgEyAUIAMgEkHQuwFqLQAAcyIDGzYCACAKIAooAgBBIHI2AgAgDSANKAIEQQhyNgIEIAYgA0ETdHJBEHIhBgsCQCAGQYCBgAhxDQAgASALIAQoAmwgBkEDdiIOQe8DcWotAABBAnRqIgkoAgAiBygCACIDayEBAn8gAyACQRB2SwRAIAcoAgQhCiAJIAdBCEEMIAEgA0kiEhtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAKIApFIBIbDAELIAIgA0EQdGshAiABQYCAAnFFBEAgBygCBCEKIAkgB0EMQQggASADSSISG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIANBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgCkUgCiASGwwBCyAHKAIEC0UNACABIAsgDSgCBEEUdkEEcSANQQRrIgooAgBBFnZBAXEgBkEPdkEQcSAGQRN2QcAAcSAOQaoBcXJycnIiEkHQuQFqLQAAQQJ0aiIJKAIAIgcoAgAiA2shAQJ/IAMgAkEQdksEQCAHKAIEIQ4gCSAHQQhBDCABIANJIhUbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhASAHLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiADQQF0IgNBgIACSQ0ACyADIQEgDiAORSAVGwwBCyACIANBEHRrIQIgAUGAgAJxRQRAIAcoAgQhDiAJIAdBDEEIIAEgA0kiFRtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEDIActAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECADQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIA5FIA4gFRsMAQsgBygCBAshAyARIBMgFCADIBJB0LsBai0AAHMiAxs2AoACIAogCigCAEGAAnI2AgAgDSANKAIEQcAAcjYCBCAGIANBFnRyQYABciEGCwJAIAZBgIiAwABxDQAgASALIAQoAmwgBkEGdiIOQe8DcWotAABBAnRqIgkoAgAiBygCACIDayEBAn8gAyACQRB2SwRAIAcoAgQhCiAJIAdBCEEMIAEgA0kiEhtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASAKIApFIBIbDAELIAIgA0EQdGshAiABQYCAAnFFBEAgBygCBCEKIAkgB0EMQQggASADSSISG2ooAgA2AgADQAJAIAUNACAEKAIQIgdBAWohBSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCACQYD+A2ohAkEIIQUMAgsgBCAFNgIQIANBCXQgAmohAkEHIQUMAQsgBCAFNgIQQQghBSADQQh0IAJqIQILIAVBAWshBSACQQF0IQIgAUEBdCIBQYCAAkkNAAsgCkUgCiASGwwBCyAHKAIEC0UNACABIAsgDSgCBEEXdkEEcSANQQRrIgooAgBBGXZBAXEgBkESdkEQcSAGQRZ2QcAAcSAOQaoBcXJycnIiEkHQuQFqLQAAQQJ0aiIJKAIAIgcoAgAiA2shAQJ/IAMgAkEQdksEQCAHKAIEIQ4gCSAHQQhBDCABIANJIhUbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhASAHLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiADQQF0IgNBgIACSQ0ACyADIQEgDiAORSAVGwwBCyACIANBEHRrIQIgAUGAgAJxRQRAIAcoAgQhDiAJIAdBDEEIIAEgA0kiFRtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEDIActAABB/wFGBEAgA0GQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECADQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgA0EIdCACaiECCyAFQQFrIQUgAkEBdCECIAFBAXQiAUGAgAJJDQALIA5FIA4gFRsMAQsgBygCBAshAyARIBMgFCADIBJB0LsBai0AAHMiAxs2AoAEIAogCigCAEGAEHI2AgAgDSANKAIEQYAEcjYCBCAGIANBGXRyQYAIciEGCyAGQYDAgIAEcQ0DIAEgCyAEKAJsIAZBCXYiEkHvA3FqLQAAQQJ0aiIJKAIAIgEoAgAiA2shBwJ/IAMgAkEQdksEQCABKAIEIQogCSABQQhBDCADIAdLIg4baigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhASAHLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgAUEJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIAFBCHQgAmohAgsgBUEBayEFIAJBAXQhAiADQQF0IgNBgIACSQ0ACyADIQcgCiAKRSAOGwwBCyACIANBEHRrIQIgB0GAgAJxRQRAIAEoAgQhCiAJIAFBDEEIIAMgB0siDhtqKAIANgIAA0ACQCAFDQAgBCgCECIDQQFqIQUgAy0AASEBIAMtAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIAdBAXQiB0GAgAJJDQALIApFIAogDhsMAQsgASgCBAtFBEAgByEBDAQLIAcgCyANKAIEQRp2QQRxIA1BBGsiDigCAEEcdkEBcSAGQRV2QRBxIAZBGXZBwABxIBJBqgFxcnJyciIKQdC5AWotAABBAnRqIgkoAgAiBygCACIBayEDIAEgAkEQdksEQCAHKAIEIRIgCSAHQQhBDCABIANLIhUbaigCADYCAANAAkAgBQ0AIAQoAhAiB0EBaiEFIActAAEhAyAHLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAJBgP4DaiECQQghBQwCCyAEIAU2AhAgA0EJdCACaiECQQchBQwBCyAEIAU2AhBBCCEFIANBCHQgAmohAgsgBUEBayEFIAJBAXQhAiABQQF0IgFBgIACSQ0ACyASIBJFIBUbDAMLIAIgAUEQdGshAiADQYCAAnFFDQEgAyEBCyAHKAIEDAELIAcoAgQhEiAJIAdBDEEIIAEgA0siFRtqKAIANgIAA0ACQCAFDQAgBCgCECIHQQFqIQUgBy0AASEBIActAABB/wFGBEAgAUGQAU8EQCAEIAQoAgxBAWo2AgwgAkGA/gNqIQJBCCEFDAILIAQgBTYCECABQQl0IAJqIQJBByEFDAELIAQgBTYCEEEIIQUgAUEIdCACaiECCyAFQQFrIQUgAkEBdCECIANBAXQiA0GAgAJJDQALIAMhASASRSASIBUbCyEDIBEgEyAUIAMgCkHQuwFqLQAAcyIDGzYCgAYgDiAOKAIAQYCAAXI2AgAgDSANKAIEQYAgcjYCBCANIA0oAoQCQQRyNgKEAiANIA0oAowCQQFyNgKMAiANIA0oAogCIANBEnRyQQJyNgKIAiAGIANBHHRyQYDAAHIhBgsgDSAGQf///7Z7cTYCAAsgDUEEaiEGIBFBBGohAyAMQQFqIgxBwABHDQALIA1BDGohBiARQYQGaiEDIBdBPEkhXCAXQQRqIRcgXA0ACwsgBCAFNgIIIAQgATYCBCAEIAI2AgAgBCAJNgJoCwJAIBZBIHFFDQAgBCAEQeQAajYCaCAEIAQoAgQgBCgCZCIGKAIAIgFrIgI2AgQCQCABIAQoAgAiBUEQdksEQCAEIAE2AgQgBCAGQQhBDCABIAJLG2ooAgAiBjYCZCAEKAIIIQIDQAJAIAINACAEKAIQIgdBAWohCSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCAFQYD+A2ohBUEIIQIMAgsgBCAJNgIQIANBCXQgBWohBUEHIQIMAQsgBCAJNgIQQQghAiADQQh0IAVqIQULIAQgAkEBayICNgIIIAQgBUEBdCIFNgIAIAQgAUEBdCIBNgIEIAFBgIACSQ0ACyABIQIMAQsgBCAFIAFBEHRrIgU2AgAgAkGAgAJxDQAgBCAGQQxBCCABIAJLG2ooAgAiBjYCZCAEKAIIIQEDQAJAIAENACAEKAIQIgFBAWohByABLQABIQMgAS0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCAFQYD+A2ohBUEIIQEMAgsgBCAHNgIQIANBCXQgBWohBUEHIQEMAQsgBCAHNgIQQQghASADQQh0IAVqIQULIAQgAUEBayIBNgIIIAQgBUEBdCIFNgIAIAQgAkEBdCICNgIEIAJBgIACSQ0ACwsgBCACIAYoAgAiAWsiAjYCBAJAIAEgBUEQdksEQCAEIAE2AgQgBCAGQQhBDCABIAJLG2ooAgAiBjYCZCAEKAIIIQIDQAJAIAINACAEKAIQIgdBAWohCSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCAFQYD+A2ohBUEIIQIMAgsgBCAJNgIQIANBCXQgBWohBUEHIQIMAQsgBCAJNgIQQQghAiADQQh0IAVqIQULIAQgAkEBayICNgIIIAQgBUEBdCIFNgIAIAQgAUEBdCIBNgIEIAFBgIACSQ0ACyABIQIMAQsgBCAFIAFBEHRrIgU2AgAgAkGAgAJxDQAgBCAGQQxBCCABIAJLG2ooAgAiBjYCZCAEKAIIIQEDQAJAIAENACAEKAIQIgFBAWohByABLQABIQMgAS0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCAFQYD+A2ohBUEIIQEMAgsgBCAHNgIQIANBCXQgBWohBUEHIQEMAQsgBCAHNgIQQQghASADQQh0IAVqIQULIAQgAUEBayIBNgIIIAQgBUEBdCIFNgIAIAQgAkEBdCICNgIEIAJBgIACSQ0ACwsgBCACIAYoAgAiAWsiAjYCBAJAIAEgBUEQdksEQCAEIAE2AgQgBCAGQQhBDCABIAJLG2ooAgAiBjYCZCAEKAIIIQIDQAJAIAINACAEKAIQIgdBAWohCSAHLQABIQMgBy0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCAFQYD+A2ohBUEIIQIMAgsgBCAJNgIQIANBCXQgBWohBUEHIQIMAQsgBCAJNgIQQQghAiADQQh0IAVqIQULIAQgAkEBayICNgIIIAQgBUEBdCIFNgIAIAQgAUEBdCIBNgIEIAFBgIACSQ0ACyABIQIMAQsgBCAFIAFBEHRrIgU2AgAgAkGAgAJxDQAgBCAGQQxBCCABIAJLG2ooAgAiBjYCZCAEKAIIIQEDQAJAIAENACAEKAIQIgFBAWohByABLQABIQMgAS0AAEH/AUYEQCADQZABTwRAIAQgBCgCDEEBajYCDCAFQYD+A2ohBUEIIQEMAgsgBCAHNgIQIANBCXQgBWohBUEHIQEMAQsgBCAHNgIQQQghASADQQh0IAVqIQULIAQgAUEBayIBNgIIIAQgBUEBdCIFNgIAIAQgAkEBdCICNgIEIAJBgIACSQ0ACwsgBCACIAYoAgAiAWsiAjYCBCABIAVBEHZLBEAgBCABNgIEIAQgBkEIQQwgASACSxtqKAIANgJkIAQoAgghAgNAAkAgAg0AIAQoAhAiBkEBaiEHIAYtAAEhAyAGLQAAQf8BRgRAIANBkAFPBEAgBCAEKAIMQQFqNgIMIAVBgP4DaiEFQQghAgwCCyAEIAc2AhAgA0EJdCAFaiEFQQchAgwBCyAEIAc2AhBBCCECIANBCHQgBWohBQsgBCACQQFrIgI2AgggBCAFQQF0IgU2AgAgBCABQQF0IgE2AgQgAUGAgAJJDQALDAELIAQgBSABQRB0ayIHNgIAIAJBgIACcQ0AIAQgBkEMQQggASACSxtqKAIANgJkIAQoAgghBQNAAkAgBQ0AIAQoAhAiA0EBaiEGIAMtAAEhASADLQAAQf8BRgRAIAFBkAFPBEAgBCAEKAIMQQFqNgIMIAdBgP4DaiEHQQghBQwCCyAEIAY2AhAgAUEJdCAHaiEHQQchBQwBCyAEIAY2AhBBCCEFIAFBCHQgB2ohBwsgBCAFQQFrIgU2AgggBCAHQQF0Igc2AgAgBCACQQF0IgI2AgQgAkGAgAJJDQALCwsgJw0AIAQQWiAEQbCpATYCZCAEQdCeATYCYCAEQfCeATYCHAtBACAfQQFqIgEgAUEDRiIBGyEfIBkgAWshGSAmQQFqIiYgICgCCE8NASAZQQBKDQALCyAoICpqISggBCgCGCAELwFwOwAAIClBAWoiKSAaKAIsSQ0ACwsCQCArRQ0AAkAgBCgCGCIBIAQoAhAiA0ECaksEQCAhRQ0BICMgASAEKAIUIgZrNgI4ICMgAyAGazYCNCAjIAEgA2tBAms2AjAgHUECQZDyACAjQTBqEA8MAgsgBCgCDCIBQQNJDQEgIQRAICMgATYCUCAdQQJB6TUgI0HQAGoQDwwCCyAjIAE2AkAgHUECQek1ICNBQGsQDwwBCyAjIAEgBCgCFCIGazYCKCAjIAMgBms2AiQgIyABIANrQQJrNgIgIB1BAkGQ8gAgI0EgahAPCyAaKAI8RQ0AIAQgLDYCdAsgMCgCBCEBIBooAgwhXSAaKAIIIDAoAgBrIQggMCgCECIGQQFxBEAgMigCHCA3QZgBbGoiB0GQAWsoAgAgCGogB0GYAWsoAgBrIQgLIF0gAWshAyAGQQJxBEAgMigCHCA3QZgBbGoiAUGMAWsoAgAgA2ogAUGUAWsoAgBrIQMLIBooAjwiBiECIAZFBEAgBCgCdCECCyAEKAKAASEWIAQoAnwhDQJAIC8oAqgGIgdFDQAgFkUgDUVyIQEgB0EeTARAIAENAUEAIRADQCANIBBsIQRBACEBA0AgAiABIARqQQJ0aiIRKAIAIgkgCUEfdSIFcyAFayIFIAd2BEAgEUEAIAUgLygCqAZ2IhFrIBEgCUEASBs2AgALIAFBAWoiASANRw0ACyAQQQFqIhAgFkcNAAsMAQsgAQ0AIAJBACANIBZsQQJ0EBUaCyAGBEAgDSAWbCEGIC8oAhRBAUYEQCAGRQ0FQQAhASAGQQRPBEAgBkF8cSEBQQAhBANAIAIgBEECdGoiAyAD/QACACJe/RsAQQJt/REgXv0bAUECbf0cASBe/RsCQQJt/RwCIF79GwNBAm39HAP9CwIAIARBBGoiBCABRw0ACyABIAZGDQYLA0AgAiABQQJ0aiIDIAMoAgBBAm02AgAgAUEBaiIBIAZHDQALDAULIAZFDQQgMCoCIEMAAAA/lCFmQQAhBAJAIAZBBEkEQCACIQEMAQsgAiAGQXxxIgRBAnRqIQEgZv0TIV5BACEDA0AgAiADQQJ0aiIHIF4gB/0AAgD9+gH95gH9CwIAIANBBGoiAyAERw0ACyAEIAZGDQULA0AgASBmIAEoAgCylDgCACABQQRqIQEgBEEBaiIEIAZHDQALDAQLIDYgNWshESAvKAIUQQFHDQIgFkUNAyAyKAIkIgYgAyARbCIDQQJ0aiAIQQJ0aiEJIA1BfHEiDEEBayIBQQRxIQsgNiANIDVqa0ECdCEaIAFBAnZBAWpB/v///wdxIR0gAyAIakECdCAGaiACayEKQQAhCCABQQNHIRQDQEEAIQECQCAMRQ0AIAggDWwhAyAJIAggEWxBAnRqIQZBACEHIBQEQANAIAYgAUECdGogAiABIANqQQJ0av0AAgAiXv0bAEECbf0RIF79GwFBAm39HAEgXv0bAkECbf0cAiBe/RsDQQJt/RwD/QsCACAGIAFBBHIiBEECdGogAiADIARqQQJ0av0AAgAiXv0bAEECbf0RIF79GwFBAm39HAEgXv0bAkECbf0cAiBe/RsDQQJt/RwD/QsCACABQQhqIQEgB0ECaiIHIB1HDQALCyALDQAgBiABQQJ0aiACIAEgA2pBAnRq/QACACJe/RsAQQJt/REgXv0bAUECbf0cASBe/RsCQQJt/RwCIF79GwNBAm39HAP9CwIAIAFBBGohAQsCQCABIA1PDQAgCCANbCEDIAkgCCARbEECdGohBwJAIA0gAWsiEEEESQRAIAEhBAwBCyAKIAggGmxqQRBJBEAgASEEDAELIAEgEEF8cSIFaiEEQQAhBgNAIAcgASAGaiIhQQJ0aiACIAMgIWpBAnRq/QACACJe/RsAQQJt/REgXv0bAUECbf0cASBe/RsCQQJt/RwCIF79GwNBAm39HAP9CwIAIAZBBGoiBiAFRw0ACyAFIBBGDQELIARBAWohASANIARrQQFxBEAgByAEQQJ0aiACIAMgBGpBAnRqKAIAQQJtNgIAIAEhBAsgASANRg0AA0AgByAEQQJ0aiACIAMgBGpBAnRqKAIAQQJtNgIAIAcgBEEBaiIBQQJ0aiACIAEgA2pBAnRqKAIAQQJtNgIAIARBAmoiBCANRw0ACwsgCEEBaiIIIBZHDQALDAMLICMgGTYCACAdQQJB1cEAICMQDwsgECgCAEEANgIADAELIBZFDQAgDUUNACAyKAIkIAMgEWxBAnRqIAhBAnRqIQcgDUF8cSIDQQJ0IQYgMCoCIEMAAAA/lCJm/RMhXkEAIRAgDUEESSEIA0ACQAJAIAgEQCACIQkgByEBQQAhBAwBCyAGIAdqIQEgAiAGaiEJQQAhBANAIAcgBEECdCIFaiBeIAIgBWr9AAIA/foB/eYB/QsCACAEQQRqIgQgA0cNAAsgCSECIAMiBCANRg0BCyAJIQIDQCABIGYgAigCALKUOAIAIAFBBGohASACQQRqIQIgBEEBaiIEIA1HDQALCyAHIBFBAnRqIQcgEEEBaiIQIBZHDQALCyAAEBAgI0HgAGokAAvWBAEJfyAAKAIsQQhPBEAgACgCKCEFQQghCgNAIAAoAgxBBXQhCCAAKAIAIQQgACgCJCEDAkAgACgCFCIGIAAoAhAiAU0NACAEIAhqIQcgAUEBaiECIAYgAWtBAXEEQCAHIAFBBnRqIgkgBSABIANsQQJ0aiIB/QACAP0LAgAgCSAB/QACEP0LAhAgAiEBCyACIAZGDQADQCAHIAFBBnRqIgIgBSABIANsQQJ0aiIJ/QACAP0LAgAgAiAJ/QACEP0LAhAgByABQQFqIgJBBnRqIgkgBSACIANsQQJ0aiIC/QACEP0LAhAgCSAC/QACAP0LAgAgAUECaiIBIAZHDQALCwJAIAAoAhwiBiAAKAIYIgFNDQAgBCAIa0EgaiEHIAUgACgCCCADbEECdGohCCABQQFqIQIgBiABa0EBcQRAIAcgAUEGdGoiBCAIIAEgA2xBAnRqIgH9AAIA/QsCACAEIAH9AAIQ/QsCECACIQELIAIgBkYNAANAIAcgAUEGdGoiAiAIIAEgA2xBAnRqIgT9AAIA/QsCACACIAT9AAIQ/QsCECAHIAFBAWoiAkEGdGoiBCAIIAIgA2xBAnRqIgL9AAIQ/QsCECAEIAL9AAIA/QsCACABQQJqIgEgBkcNAAsLIAAQIkEAIQEgACgCIARAA0AgBSAAKAIkIAFsQQJ0aiICIAAoAgAgAUEFdGoiA/0AAgD9CwIAIAIgA/0AAhD9CwIQIAFBAWoiASAAKAIgSQ0ACwsgBUEgaiEFIApBCGoiCiAAKAIsTQ0ACwsgACgCABAQIAAQEAv3DQElfyAAKAIsQQhPBEAgACgCJCIKQQV0IR4gCkEHbCEWIApBBmwhFyAKQQVsIRggCkEDbCEZIApBAXQhGiAAKAIoIgEgCkEcbGohHyABIApBGGxqISAgASAKQRRsaiEhIAEgCkEEdGohIiABIApBDGxqISMgASAKQQN0IiRqISUgASAKQQJ0IhtqISZBCCEcA0AgACABIAAoAiRBCBA7IAAQIgJAIAAoAiAiC0UNACAdIB5sIQggACgCACEGQQAhBAJAAkAgC0HoAkkNACAGQQxqIg4gC0EBayICQQV0IgNqIA5JDQAgBkEIaiIPIANqIA9JDQAgAyAGaiAGSQ0AIAZBBGoiECADaiAQSQ0AIAJB////P0sNACABIAggJmoiAyALQQJ0IgVqIgxJIAMgASAFaiIHSXENACABIAggJWoiAiAFaiINSSACIAdJcQ0AIAEgBSAIICNqIglqIgVJIAcgCUtxDQAgBiAHSSABIAYgC0EFdGoiEUEcayISSXENACABIBFBGGsiE0kgByAQS3ENACABIBFBFGsiFEkgByAPS3ENACAHIA5LIAEgEUEQayIHSXENACADIA1JIAIgDElxDQAgAyAFSSAJIAxJcQ0AIAMgEkkgBiAMSXENACADIBNJIAwgEEtxDQAgAyAUSSAMIA9LcQ0AIAMgB0kgDCAOS3ENACACIAVJIAkgDUlxDQAgAiASSSAGIA1JcQ0AIAIgE0kgDSAQS3ENACACIBRJIA0gD0txDQAgAiAHSSANIA5LcQ0AIAkgEkkgBSAGS3ENACAJIBNJIAUgEEtxDQAgCSAUSSAFIA9LcQ0AIAcgCUsgBSAOS3ENACALQfz///8AcSEEQQAhAwNAIAEgA0ECdGogBiADQQV0aiIC/QkCACACKgIg/SABIAJBQGsqAgD9IAIgAioCYP0gA/0LAgAgASADIApqQQJ0aiAC/QkCBCACKgIk/SABIAIqAkT9IAIgAioCZP0gA/0LAgAgASADIBpqQQJ0aiAC/QkCCCACKgIo/SABIAIqAkj9IAIgAioCaP0gA/0LAgAgASADIBlqQQJ0aiAC/QkCDCACKgIs/SABIAIqAkz9IAIgAioCbP0gA/0LAgAgA0EEaiIDIARHDQALIAQgC0YNAQsDQCABIARBAnRqIAYgBEEFdGoiAyoCADgCACABIAQgCmpBAnRqIAMqAgQ4AgAgASAEIBpqQQJ0aiADKgIIOAIAIAEgBCAZakECdGogAyoCDDgCACAEQQFqIgQgC0cNAAsLIAAoAgAhBkEAIQQCQCALQdwASQ0AIAZBHGoiDyALQQFrIgJBBXQiA2ogD0kNACAGQRhqIhAgA2ogEEkNACAGQRBqIhEgA2ogEUkNACAGQRRqIhIgA2ogEkkNACACQf///z9LDQAgCCAiaiIDIAggIWoiAiALQQJ0IgVqIgxJIAIgAyAFaiIHSXENACADIAggIGoiCSAFaiINSSAHIAlLcQ0AIAMgCCAfaiIIIAVqIgVJIAcgCEtxDQAgAyAGIAtBBXRqIg5BDGsiE0kgByARS3ENACADIA5BCGsiFEkgByASS3ENACADIA5BBGsiFUkgByAQS3ENACADIA5JIAcgD0txDQAgAiANSSAJIAxJcQ0AIAIgBUkgCCAMSXENACACIBNJIAwgEUtxDQAgAiAUSSAMIBJLcQ0AIAIgFUkgDCAQS3ENACACIA5JIAwgD0txDQAgCCANSSAFIAlLcQ0AIAkgE0kgDSARS3ENACAJIBRJIA0gEktxDQAgCSAVSSANIBBLcQ0AIAkgDkkgDSAPS3ENACAIIBNJIAUgEUtxDQAgCCAUSSAFIBJLcQ0AIAggFUkgBSAQS3ENACAIIA5JIAUgD0txDQAgC0H8////AHEhBEEAIQMDQCABIAMgG2pBAnRqIAYgA0EFdGoiAv0JAhAgAioCMP0gASACKgJQ/SACIAIqAnD9IAP9CwIAIAEgAyAYakECdGogAv0JAhQgAioCNP0gASACKgJU/SACIAIqAnT9IAP9CwIAIAEgAyAXakECdGogAv0JAhggAioCOP0gASACKgJY/SACIAIqAnj9IAP9CwIAIAEgAyAWakECdGogAv0JAhwgAioCPP0gASACKgJc/SACIAIqAnz9IAP9CwIAIANBBGoiAyAERw0ACyAEIAtGDQELA0AgASAEIBtqQQJ0aiAGIARBBXRqIgMqAhA4AgAgASAEIBhqQQJ0aiADKgIUOAIAIAEgBCAXakECdGogAyoCGDgCACABIAQgFmpBAnRqIAMqAhw4AgAgBEEBaiIEIAtHDQALCyAdQQFqIR0gASAkQQJ0aiEBIBxBCGoiHCAAKAIsTQ0ACwsgACgCABAQIAAQEAtzAQJ/IAAoAhwiAUEIaiIDIAAoAiAiAk0EQANAIAAgACgCGCABQQJ0aiAAKAIUQQgQMCADIgFBCGoiAyAAKAIgIgJNDQALCyABIAJJBEAgACAAKAIYIAFBAnRqIAAoAhQgAiABaxAwCyAAKAIAEBAgABAQC0QAIAAoAhwiASAAKAIgSQRAA0AgACAAKAIYIAAoAhQgAWxBAnRqEF0gAUEBaiIBIAAoAiBJDQALCyAAKAIAEBAgABAQC6gBAQV/IAAoAlQiAygCACEFIAMoAgQiBCAAKAIUIAAoAhwiB2siBiAEIAZJGyIGBEAgBSAHIAYQEhogAyADKAIAIAZqIgU2AgAgAyADKAIEIAZrIgQ2AgQLIAQgAiACIARLGyIEBEAgBSABIAQQEhogAyADKAIAIARqIgU2AgAgAyADKAIEIARrNgIECyAFQQA6AAAgACAAKAIsIgE2AhwgACABNgIUIAILngUCBn4EfyABIAEoAgBBB2pBeHEiAUEQajYCACAAIQsgASkDACEDIAEpAwghByMAQSBrIggkACAHQv///////z+DIQQCfiAHQjCIQv//AYMiBaciCkGB+ABrQf0PTQRAIARCBIYgA0I8iIQhAiAKQYD4AGutIQUCQCADQv//////////D4MiA0KBgICAgICAgAhaBEAgAkIBfCECDAELIANCgICAgICAgIAIUg0AIAJCAYMgAnwhAgtCACACIAJC/////////wdWIgAbIQIgAK0gBXwMAQsCQCADIASEUA0AIAVC//8BUg0AIARCBIYgA0I8iIRCgICAgICAgASEIQJC/w8MAQtC/w8gCkH+hwFLDQAaQgBBgPgAQYH4ACAFUCIBGyIAIAprIglB8ABKDQAaIAMhAiAEIARCgICAgICAwACEIAEbIgYhBAJAQYABIAlrIgFBwABxBEAgAyABQUBqrYYhBEIAIQIMAQsgAUUNACAEIAGtIgWGIAJBwAAgAWutiIQhBCACIAWGIQILIAggAjcDECAIIAQ3AxgCQCAJQcAAcQRAIAYgCUFAaq2IIQNCACEGDAELIAlFDQAgBkHAACAJa62GIAMgCa0iAoiEIQMgBiACiCEGCyAIIAM3AwAgCCAGNwMIIAgpAwhCBIYgCCkDACICQjyIhCEDAkAgACAKRyAIKQMQIAgpAxiEQgBSca0gAkL//////////w+DhCICQoGAgICAgICACFoEQCADQgF8IQMMAQsgAkKAgICAgICAgAhSDQAgA0IBgyADfCEDCyADQoCAgICAgIAIhSADIANC/////////wdWIgAbIQIgAK0LIQMgCEEgaiQAIAsgB0KAgICAgICAgIB/gyADQjSGhCAChL85AwALhhgDE38BfAN+IwBBsARrIgwkACAMQQA2AiwCQCABvSIaQgBTBEBBASERQboIIRMgAZoiAb0hGgwBCyAEQYAQcQRAQQEhEUG9CCETDAELQcAIQbsIIARBAXEiERshEyARRSEVCwJAIBpCgICAgICAgPj/AINCgICAgICAgPj/AFEEQCAAQSAgAiARQQNqIgMgBEH//3txEBwgACATIBEQGSAAQZIJQfYKIAVBIHEiBRtB+wlB+gogBRsgASABYhtBAxAZIABBICACIAMgBEGAwABzEBwgAyACIAIgA0gbIQoMAQsgDEEQaiESAkACfwJAIAEgDEEsahBlIgEgAaAiAUQAAAAAAAAAAGIEQCAMIAwoAiwiBkEBazYCLCAFQSByIg5B4QBHDQEMAwsgBUEgciIOQeEARg0CIAwoAiwhCUEGIAMgA0EASBsMAQsgDCAGQR1rIgk2AiwgAUQAAAAAAACwQaIhAUEGIAMgA0EASBsLIQsgDEEwakGgAkEAIAlBAE4baiINIQcDQCAHAn8gAUQAAAAAAADwQWMgAUQAAAAAAAAAAGZxBEAgAasMAQtBAAsiAzYCACAHQQRqIQcgASADuKFEAAAAAGXNzUGiIgFEAAAAAAAAAABiDQALAkAgCUEATARAIAkhAyAHIQYgDSEIDAELIA0hCCAJIQMDQEEdIAMgA0EdTxshAwJAIAdBBGsiBiAISQ0AIAOtIRxCACEaA0AgBiAaQv////8PgyAGNQIAIByGfCIbQoCU69wDgCIaQoDslKMMfiAbfD4CACAGQQRrIgYgCE8NAAsgG0KAlOvcA1QNACAIQQRrIgggGj4CAAsDQCAIIAciBkkEQCAGQQRrIgcoAgBFDQELCyAMIAwoAiwgA2siAzYCLCAGIQcgA0EASg0ACwsgA0EASARAIAtBGWpBCW5BAWohDyAOQeYARiEQA0BBCUEAIANrIgMgA0EJTxshCgJAIAYgCE0EQCAIKAIARUECdCEHDAELQYCU69wDIAp2IRRBfyAKdEF/cyEWQQAhAyAIIQcDQCAHIAMgBygCACIXIAp2ajYCACAWIBdxIBRsIQMgB0EEaiIHIAZJDQALIAgoAgBFQQJ0IQcgA0UNACAGIAM2AgAgBkEEaiEGCyAMIAwoAiwgCmoiAzYCLCANIAcgCGoiCCAQGyIHIA9BAnRqIAYgBiAHa0ECdSAPShshBiADQQBIDQALC0EAIQMCQCAGIAhNDQAgDSAIa0ECdUEJbCEDQQohByAIKAIAIgpBCkkNAANAIANBAWohAyAKIAdBCmwiB08NAAsLIAsgA0EAIA5B5gBHG2sgDkHnAEYgC0EAR3FrIgcgBiANa0ECdUEJbEEJa0gEQCAMQTBqQYRgQaRiIAlBAEgbaiAHQYDIAGoiCkEJbSIPQQJ0aiEJQQohByAPQXdsIApqIgpBB0wEQANAIAdBCmwhByAKQQFqIgpBCEcNAAsLAkAgCSgCACIQIBAgB24iDyAHbCIKRiAJQQRqIhQgBkZxDQAgECAKayEQAkAgD0EBcUUEQEQAAAAAAABAQyEBIAdBgJTr3ANHDQEgCCAJTw0BIAlBBGstAABBAXFFDQELRAEAAAAAAEBDIQELRAAAAAAAAOA/RAAAAAAAAPA/RAAAAAAAAPg/IAYgFEYbRAAAAAAAAPg/IBAgB0EBdiIURhsgECAUSRshGQJAIBUNACATLQAAQS1HDQAgGZohGSABmiEBCyAJIAo2AgAgASAZoCABYQ0AIAkgByAKaiIDNgIAIANBgJTr3ANPBEADQCAJQQA2AgAgCCAJQQRrIglLBEAgCEEEayIIQQA2AgALIAkgCSgCAEEBaiIDNgIAIANB/5Pr3ANLDQALCyANIAhrQQJ1QQlsIQNBCiEHIAgoAgAiCkEKSQ0AA0AgA0EBaiEDIAogB0EKbCIHTw0ACwsgCUEEaiIHIAYgBiAHSxshBgsDQCAGIgcgCE0iCkUEQCAGQQRrIgYoAgBFDQELCwJAIA5B5wBHBEAgBEEIcSEJDAELIANBf3NBfyALQQEgCxsiBiADSiADQXtKcSIJGyAGaiELQX9BfiAJGyAFaiEFIARBCHEiCQ0AQXchBgJAIAoNACAHQQRrKAIAIg5FDQBBCiEKQQAhBiAOQQpwDQADQCAGIglBAWohBiAOIApBCmwiCnBFDQALIAlBf3MhBgsgByANa0ECdUEJbCEKIAVBX3FBxgBGBEBBACEJIAsgBiAKakEJayIGQQAgBkEAShsiBiAGIAtKGyELDAELQQAhCSALIAMgCmogBmpBCWsiBkEAIAZBAEobIgYgBiALShshCwtBfyEKIAtB/f///wdB/v///wcgCSALciIQG0oNASALIBBBAEdqQQFqIQ4CQCAFQV9xIhVBxgBGBEAgAyAOQf////8Hc0oNAyADQQAgA0EAShshBgwBCyASIAMgA0EfdSIGcyAGa60gEhAqIgZrQQFMBEADQCAGQQFrIgZBMDoAACASIAZrQQJIDQALCyAGQQJrIg8gBToAACAGQQFrQS1BKyADQQBIGzoAACASIA9rIgYgDkH/////B3NKDQILIAYgDmoiAyARQf////8Hc0oNASAAQSAgAiADIBFqIgMgBBAcIAAgEyAREBkgAEEwIAIgAyAEQYCABHMQHAJAAkACQCAVQcYARgRAIAxBEGpBCXIhBSANIAggCCANSxsiCSEIA0AgCDUCACAFECohBgJAIAggCUcEQCAGIAxBEGpNDQEDQCAGQQFrIgZBMDoAACAGIAxBEGpLDQALDAELIAUgBkcNACAGQQFrIgZBMDoAAAsgACAGIAUgBmsQGSAIQQRqIgggDU0NAAsgEARAIABBggxBARAZCyAHIAhNDQEgC0EATA0BA0AgCDUCACAFECoiBiAMQRBqSwRAA0AgBkEBayIGQTA6AAAgBiAMQRBqSw0ACwsgACAGQQkgCyALQQlOGxAZIAtBCWshBiAIQQRqIgggB08NAyALQQlKIRggBiELIBgNAAsMAgsCQCALQQBIDQAgByAIQQRqIAcgCEsbIQ0gDEEQakEJciEFIAghBwNAIAUgBzUCACAFECoiBkYEQCAGQQFrIgZBMDoAAAsCQCAHIAhHBEAgBiAMQRBqTQ0BA0AgBkEBayIGQTA6AAAgBiAMQRBqSw0ACwwBCyAAIAZBARAZIAZBAWohBiAJIAtyRQ0AIABBggxBARAZCyAAIAYgBSAGayIGIAsgBiALSBsQGSALIAZrIQsgB0EEaiIHIA1PDQEgC0EATg0ACwsgAEEwIAtBEmpBEkEAEBwgACAPIBIgD2sQGQwCCyALIQYLIABBMCAGQQlqQQlBABAcCyAAQSAgAiADIARBgMAAcxAcIAMgAiACIANIGyEKDAELIBMgBUEadEEfdUEJcWohCAJAIANBC0sNAEEMIANrIQZEAAAAAAAAMEAhGQNAIBlEAAAAAAAAMECiIRkgBkEBayIGDQALIAgtAABBLUYEQCAZIAGaIBmhoJohAQwBCyABIBmgIBmhIQELIBIgDCgCLCIHIAdBH3UiBnMgBmutIBIQKiIGRgRAIAZBAWsiBkEwOgAACyARQQJyIQsgBUEgcSENIAZBAmsiCSAFQQ9qOgAAIAZBAWtBLUErIAdBAEgbOgAAIARBCHEhBiAMQRBqIQcDQCAHIgUCfyABmUQAAAAAAADgQWMEQCABqgwBC0GAgICAeAsiB0HQxAFqLQAAIA1yOgAAIAEgB7ehRAAAAAAAADBAoiEBAkAgBUEBaiIHIAxBEGprQQFHDQACQCAGDQAgA0EASg0AIAFEAAAAAAAAAABhDQELIAVBLjoAASAFQQJqIQcLIAFEAAAAAAAAAABiDQALQX8hCkH9////ByALIBIgCWsiBmoiDWsgA0gNACAAQSAgAiANIANBAmogByAMQRBqIgdrIgUgBUECayADSBsgBSADGyIKaiIDIAQQHCAAIAggCxAZIABBMCACIAMgBEGAgARzEBwgACAHIAUQGSAAQTAgCiAFa0EAQQAQHCAAIAkgBhAZIABBICACIAMgBEGAwABzEBwgAyACIAIgA0gbIQoLIAxBsARqJAAgCgsEAEIACwQAQQALnwMBCX9B5gohAAJAA0AgAC0AACIBRQ0BIAFBPUYNASAAQQFqIgBBA3ENAAsCQAJAQYCChAggACgCACICayACckGAgYKEeHFBgIGChHhHDQADQEGAgoQIIAJBvfr06QNzIgFrIAFyQYCBgoR4cUGAgYKEeEcNASAAKAIEIQIgAEEEaiIBIQAgAkGAgoQIIAJrckGAgYKEeHFBgIGChHhGDQALDAELIAAhAQsDQCABIgAtAAAiAkUNASAAQQFqIQEgAkE9Rw0ACwsgACIBQeYKRgRAQQAPCwJAIAFB5gprIgBB5gpqLQAADQBBsM8BKAIAIgRFDQAgBCgCACIFRQ0AA0ACQAJ/IAUhAkHmCiEGQQAgACIBRQ0AGkHmCi0AACIDBH8CQANAIAMgAi0AACIHRw0BIAdFDQEgAUEBayIBRQ0BIAJBAWohAiAGLQABIQMgBkEBaiEGIAMNAAtBACEDCyADBUEACyACLQAAawtFBEAgACAFaiIBLQAAQT1GDQELIAQoAgQhBSAEQQRqIQQgBQ0BDAILCyABQQFqIQgLIAgLCQAgACgCPBANC84CAQh/IwBBIGsiAyQAIAMgACgCHCIENgIQIAAoAhQhBSADIAI2AhwgAyABNgIYIAMgBSAEayIBNgIUIAEgAmohBUECIQYgA0EQaiEBAn8DQAJAAkACQCAAKAI8IAEgBiADQQxqEAEiBAR/QZTHASAENgIAQX8FQQALRQRAIAUgAygCDCIHRg0BIAdBAE4NAgwDCyAFQX9HDQILIAAgACgCLCIBNgIcIAAgATYCFCAAIAEgACgCMGo2AhAgAgwDCyABIAcgASgCBCIISyIJQQN0aiIEIAcgCEEAIAkbayIIIAQoAgBqNgIAIAFBDEEEIAkbaiIBIAEoAgAgCGs2AgAgBSAHayEFIAYgCWshBiAEIQEMAQsLIABBADYCHCAAQgA3AxAgACAAKAIAQSByNgIAQQAgBkECRg0AGiACIAEoAgRrCyEKIANBIGokACAKC1YBAn8gACgCPCEEIwBBEGsiACQAIAQgAacgAUIgiKcgAkH/AXEgAEEIahAJIgIEf0GUxwEgAjYCAEF/BUEACyECIAApAwghASAAQRBqJABCfyABIAIbCwYAIAAQAAsGACAAEAML8n4FAnw2fwh7A34GfSMAQeDAAGsiGCQAIBhBADYCIEECIQwCQAJAIAAoAgAiB0GNlJzUAEYNACAHQf+f/Y8FRwRAAkAgB0GAgIDgAEcNACAAKAIEQeqggYECRw0AIAAoAghBjZSc1ABGDQILQc0IEABBASEMDAILQQAhDAsCf0EAQQFB4AAQEyIHRQ0AGiAHQQE2AkwCQAJAAkACQCAMDgMAAwEDCyAHQcMANgJYIAdBxAA2AlQgB0HFADYCUCAHQcYANgIQIAdBxwA2AgQgB0HIADYCHCAHQckANgIYIAdBygA2AhQgB0HLADYCACAHQcwANgJcIAdBzQA2AiwgB0HOADYCKCAHQc8ANgIkIAdB0AA2AiAgB0HRADYCDCAHQdIANgIIIAcQTSIINgIwIAgNAQwCCyAHQdMANgJYIAdB1AA2AlQgB0HVADYCUCAHQdYANgIQIAdB1wA2AgQgB0HYADYCXCAHQdkANgIsIAdB2gA2AiggB0HbADYCJCAHQdwANgIgIAdB3QA2AhwgB0HeADYCGCAHQd8ANgIUIAdB4AA2AgwgB0HhADYCCCAHQeIANgIAIAcCf0EBQYgBEBMiCARAIAgQTSIONgIAAkAgDkUNACAI/QwAAAAAAAAAAAAAAAAAAAAA/QsCbCAIQQA6AHwgCBAzIg42AgQgDkUNACAIEDMiDjYCCCAORQ0AIAgMAgsgCBBwC0EACyIINgIwIAhFDQELIAdBATYCSCAHQQE2AkAgB0EANgI8IAdCADcCNCAHQQE2AkQgBwwBCyAHEBBBAAsiCARAIAhBADYCPCAIQeMANgJICyAIBEAgCEEANgI4IAhB5AA2AkQLIAgEQCAIQQA2AjQgCEHlADYCQAsgGEEkaiIHBEAgB0EAQbjAABAVIgdBADYCuEAgB0J/NwKIQAsgAwRAIBggGCgC3EBBAXI2AtxACyAYIAE2AhwgGCAANgIYIBggADYCFEEBIQxBACEBAkAgGEEUaiIHRQ0AQQFByAAQEyIABH8CfyAAQYCAwAA2AkAgAEGAgMAAEBQiDjYCICAORQRAIAAQEEEADAELIAAgDjYCJCAAQQI2AhwgAEEDNgIYIABBBDYCFCAAQQU2AhAgAEEGNgIsIABBCDYCKCAAIAAoAkRBAnI2AkQgAAsFQQALIgBFDQAgAARAIABBADYCBCAAIAc2AgALIAc1AgghRSAABEAgACBFNwMICwJAIABFDQAgAC0AREECcUUNACAAQT82AhALIAAEQCAAQcEANgIYCyAABEAgAEHCADYCHAsgACEBCyABIQACfyAYQSRqIQECQCAIRQ0AIAFFDQAgCCgCTEUEQCAIQTRqQQFBtMkAQQAQD0EADAILIAgoAjAgASAIKAIYEQMAQQEhCwsgCwtFBEBB3AgQACAAEDQgCBA1DAELAn8gGEEgaiEBQQAhBwJAIABFDQAgCEUNACAIKAJMRQRAIAhBNGpBAUGFygBBABAPQQAMAgsgACAIKAIwIAEgCEE0aiAIKAIAEQEAIQcLIAcLRQRAQfgIEAAgABA0IAgQNSAYKAIgECEMAQsgGCgCICEBQQAhBwJAIAhFDQAgAEUNACAIKAJMRQ0AIAgoAjAgACABIAhBNGogCCgCBBEBACEHCwJAIAcEQEEAIQcCQCAIRQ0AIABFDQAgCCgCTEUNACAIKAIwIAAgCEE0aiAIKAIQEQAAIQcLIAcNAQtB/wkQACAIEDUgABA0IBgoAiAQIQwBCyAAEDQgCBA1IBgoAiAiDSgCHCIABEAgABAQIBgoAiAiDUIANwIcCyANKAIQISECQAJAIAJFBEACQCAERQ0AICFBBEcNAEEBIRlBBCEhDAMLAkACQCANKAIUIgFBA0YNACAhQQNHDQAgDSgCGCIAKAIAIAAoAgRHDQEgACgCNEEBRg0BIA1BAzYCFAwDCyAhQQJLDQAgDUECNgIUDAMLAkACQCABQQNrDgMDAQAECyMAQRBrIg4kAAJAAkACQCANKAIQQQRJDQAgDSgCGCIAKAIAIgEgACgCNEcNACABIAAoAmhHDQAgASAAKAKcAUcNACAAKAIEIgEgACgCOEcNACABIAAoAmxHDQAgASAAKAKgAUYNAQsgDkGHCDYCBCAOQbgKNgIAQejEAUHtPSAOEBYMAQsCQCAAKAIMIAAoAghsIghFBEAgACgCyAEhAQwBC0MAAIA/QX8gACgCtAF0QX9zs5UhSEMAAIA/QX8gACgCgAF0QX9zs5UhSkMAAIA/QX8gACgCTHRBf3OzlSFLQwAAgD9BfyAAKAIYdEF/c7OVIUkgACgCyAEhASAAKAKUASECIAAoAmAhCiAAKAIsIQdBACEAAkAgCEEISQ0AIAcgCiAIQQJ0IgtqIg9JIAogByALaiIXSXENACACIBdJIAcgAiALaiIJSXENACABIBdJIAcgASALaiILSXENACACIA9JIAkgCktxDQAgASAPSSAKIAtJcQ0AIAEgCUkgAiALSXENACAIQXxxIQAgSP0TIT0gSv0TIT4gS/0TIUMgSf0TIUBBACELA0AgAiALQQJ0Ig9qIhf9AAIAIUEgCiAPaiIJ/QACACFCIAcgD2oiEP0MAACAPwAAgD8AAIA/AACAPyBAIBD9AAIA/foB/eYB/eUB/QwAAH9DAAB/QwAAf0MAAH9D/eYB/QwAAIA/AACAPwAAgD8AAIA/ID0gASAPav0AAgD9+gH95gH95QEiP/3mAf34Af0LAgAgCf0MAACAPwAAgD8AAIA/AACAPyBDIEL9+gH95gH95QH9DAAAf0MAAH9DAAB/QwAAf0P95gEgP/3mAf34Af0LAgAgF/0MAACAPwAAgD8AAIA/AACAPyA+IEH9+gH95gH95QH9DAAAf0MAAH9DAAB/QwAAf0P95gEgP/3mAf34Af0LAgAgC0EEaiILIABHDQALIAAgCEYNAQsDQAJ/QwAAgD8gSSAHIABBAnQiC2oiDygCALKUk0MAAH9DlEMAAIA/IEggASALaigCALKUkyJMlCJNi0MAAABPXQRAIE2oDAELQYCAgIB4CyEXIAIgC2oiCSgCACEQIAogC2oiCygCACEMIA8gFzYCACALAn9DAACAPyBLIAyylJNDAAB/Q5QgTJQiTYtDAAAAT10EQCBNqAwBC0GAgICAeAs2AgAgCQJ/QwAAgD8gSiAQspSTQwAAf0OUIEyUIkyLQwAAAE9dBEAgTKgMAQtBgICAgHgLNgIAIABBAWoiACAIRw0ACwsgARAQIA0oAhgiAEEINgKAASAAQQg2AkwgAEEINgIYIABBADYCyAEgDUEBNgIUIA0gDSgCEEEBayIANgIQIABBBEkNAEEDIQADQCANKAIYIABBNGxqIgEgASgCZDYCMCABIAH9AAJU/QsCICABIAH9AAJE/QsCECABIAH9AAI0/QsCACAAQQFqIgAgDSgCEEkNAAsLIA5BEGokAAwDCyMAQRBrIgskAAJAAkACQCANKAIQQQNJDQAgDSgCGCIAKAIAIgEgACgCNEcNACABIAAoAmhHDQAgACgCBCIBIAAoAjhHDQAgASAAKAJsRg0BCyALQcUINgIEIAtBuAo2AgBB6MQBQZc+IAsQFgwBCwJAIAAoAgwgACgCCGwiAkUNAEF/IAAoAhgiCnRBf3MhAUEAQQEgCkEBa3QiCiAAKAKIARshD0EAIAogACgCVBshFyAAKAKUASEKIAAoAmAhByAAKAIsIQ5BACEAAkAgAkEESQ0AIA4gByACQQJ0IghqIglJIAcgCCAOaiIQSXENACAKIBBJIA4gCCAKaiIISXENACAHIAhJIAkgCktxDQAgAkF8cSEAIAH9ESE/IA/9ESFAIBf9ESFBQQAhCANAIA4gCEECdCIJaiIQID8gCSAKaiIM/QACACBA/bEB/foBIj39DGl0sz9pdLM/aXSzP2l0sz/95gEgByAJaiIJ/QACACBB/bEB/foBIj79DLNZGrizWRq4s1kauLNZGrj95gEgEP0AAgD9+gEiQ/3kAf3kAf0MAAAAPwAAAD8AAAA/AAAAP/3kAf34ASJC/QwAAAAAAAAAAAAAAAAAAAAA/bgBID8gQv05/VL9CwIAIAkgPyA9/QwZ0Da/GdA2vxnQNr8Z0Da//eYBIEP9DNUJgD/VCYA/1QmAP9UJgD/95gEgPv0MJzGwvicxsL4nMbC+JzGwvv3mAf3kAf3kAf0MAAAAPwAAAD8AAAA/AAAAP/3kAf34ASJC/QwAAAAAAAAAAAAAAAAAAAAA/bgBID8gQv05/VL9CwIAIAwgPyA9/Qy9Nwa3vTcGt703Bre9Nwa3/eYBIEP9DGb0fz9m9H8/ZvR/P2b0fz/95gEgPv0MNdLiPzXS4j810uI/NdLiP/3mAf3kAf3kAf0MAAAAPwAAAD8AAAA/AAAAP/3kAf34ASI9/QwAAAAAAAAAAAAAAAAAAAAA/bgBID8gPf05/VL9CwIAIAhBBGoiCCAARw0ACyAAIAJGDQELA0ACfyAKIABBAnQiCGoiCSgCACAPa7IiSENpdLM/lCAHIAhqIhAoAgAgF2uyIkpDs1kauJQgCCAOaiIMKAIAsiJLkpJDAAAAP5IiSYtDAAAAT10EQCBJqAwBC0GAgICAeAshCCAMIAEgCEEAIAhBAEobIAEgCEgbNgIAIBAgAQJ/IEhDGdA2v5QgS0PVCYA/lCBKQycxsL6UkpJDAAAAP5IiSYtDAAAAT10EQCBJqAwBC0GAgICAeAsiCEEAIAhBAEobIAEgCEgbNgIAIAkgAQJ/IEhDvTcGt5QgS0Nm9H8/lCBKQzXS4j+UkpJDAAAAP5IiSItDAAAAT10EQCBIqAwBC0GAgICAeAsiCEEAIAhBAEobIAEgCEgbNgIAIABBAWoiACACRw0ACwsgDUEBNgIUCyALQRBqJAAMAgsgISACIAIgIUsbISFBASEZDAELAkACQAJ/AkACQCANKAIYIgEoAgBBAUcNAAJAAkAgASgCNEEBaw4CAQACCyABKAJoQQJHDQECQCABKAIEQQFHDQAgASgCOEECRw0AIAEoAmxBAkcNAEEAIQsgDSIXKAIYIgAoAhghASAAKAKUASERIAAoAmAhCiAAKAIsIRAgACgCCCINIAAoAgwiAmxBAnQiABAYIQcgABAYIQggABAYIQ4CQAJAAkACQAJAAkAgB0UNACAIRQ0AIA5FDQBBfyABdEF/cyEJQQEgAUEBa3QhDCACIBcoAgRBAXEiAGshHiAXKAIAQQFxIRsgAEUNAyANRQ0DAn9BACAMa7K7IgVEarx0kxgE1j+iIAVEDAIrhxbZ5j+ioCIGmUQAAAAAAADgQWMEQCAGqgwBC0GAgICAeAshFAJ/IAVEJzEIrBxa/D+iIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4CyEaIA1BCEkhOAJ/IAVEO99PjZdu9j+iIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4CyEdIDgNASAIIAdrQRBJDQEgDiAHa0EQSQ0BIAcgEGtBEEkNASAOIAhrQRBJDQEgCCAQa0EQSQ0BIA4gEGtBEEkNASAOIA1BfHEiC0ECdCICaiEBIAIgB2ohACAa/REhPiAU/REhQyAJ/REhPyAd/REhQANAIAcgD0ECdCITav0MAAAAAAAAAAAAAAAAAAAAACAQIBNq/QACACI9IED9rgEiQSA//bYBIEH9DAAAAAAAAAAAAAAAAAAAAAD9Of1S/QsCACAIIBNq/QwAAAAAAAAAAAAAAAAAAAAAID0gQ/2xASJBID/9tgEgQf0MAAAAAAAAAAAAAAAAAAAAAP05/VL9CwIAIA4gE2r9DAAAAAAAAAAAAAAAAAAAAAAgPSA+/a4BIj0gP/22ASA9/QwAAAAAAAAAAAAAAAAAAAAA/Tn9Uv0LAgAgD0EEaiIPIAtHDQALIAIgEGohECACIAhqIQIgCyANRg0EDAILIAcQECAIEBAgDhAQDAQLIAchACAIIQIgDiEBCwNAIAAgECgCACIPIB1qIhMgCSAJIBNKG0EAIBNBAE4bNgIAIAIgDyAUayITIAkgCSATShtBACATQQBOGzYCACABIA8gGmoiDyAJIAkgD0obQQAgD0EAThs2AgAgAUEEaiEBIAJBBGohAiAAQQRqIQAgEEEEaiEQIAtBAWoiCyANRw0ACwwBCyAOIQEgCCECIAchAAsgDSAbayEaAkAgHkF+cSIdBH8Cf0EAIAxrsrsiBURqvHSTGATWP6IgBUQMAiuHFtnmP6KgIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4CyEiIBpBfnEiHEEBayE5An8gBUQnMQisHFr8P6IiBplEAAAAAAAA4EFjBEAgBqoMAQtBgICAgHgLISMgOUF+cSE6An8gBUQ730+Nl272P6IiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLISQgHUEBayElIDpBAmohJiANQQJ0IQ0DQCABIA1qIQ8gAiANaiETIAAgDWohCyANIBBqIRQgGwRAIAAgECgCACIVICRqIhIgCSAJIBJKG0EAIBJBAE4bNgIAIAIgFSAiayISIAkgCSASShtBACASQQBOGzYCACABIBUgI2oiFSAJIAkgFUobQQAgFUEAThs2AgAgCigCACEWIAsCfyARKAIAIAxrsrsiBUQ730+Nl272P6IiBplEAAAAAAAA4EFjBEAgBqoMAQtBgICAgHgLIBQoAgAiFWoiEiAJIAkgEkobQQAgEkEAThs2AgAgEyAVAn8gFiAMa7K7IgZEarx0kxgE1j+iIAVEDAIrhxbZ5j+ioCIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAtrIhIgCSAJIBJKG0EAIBJBAE4bNgIAIA8CfyAGRCcxCKwcWvw/oiIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAsgFWoiFSAJIAkgFUobQQAgFUEAThs2AgAgD0EEaiEPIBNBBGohEyALQQRqIQsgFEEEaiEUIAJBBGohAiAQQQRqIRAgAUEEaiEBIABBBGohAAtBACEVIBwEfwNAIAooAgAhHyAAAn8gESgCACAMa7K7IgVEO99PjZdu9j+iIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4CyAQKAIAIhJqIhYgCSAJIBZKG0EAIBZBAE4bNgIAIAIgEgJ/IB8gDGuyuyIGRGq8dJMYBNY/oiAFRAwCK4cW2eY/oqAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLayIWIAkgCSAWShtBACAWQQBOGzYCACABAn8gBkQnMQisHFr8P6IiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLIBJqIhIgCSAJIBJKG0EAIBJBAE4bNgIAIAooAgAhHyAAAn8gESgCACAMa7K7IgVEO99PjZdu9j+iIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4CyAQKAIEIhJqIhYgCSAJIBZKG0EAIBZBAE4bNgIEIAIgEgJ/IB8gDGuyuyIGRGq8dJMYBNY/oiAFRAwCK4cW2eY/oqAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLayIWIAkgCSAWShtBACAWQQBOGzYCBCABAn8gBkQnMQisHFr8P6IiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLIBJqIhIgCSAJIBJKG0EAIBJBAE4bNgIEIAooAgAhHyALAn8gESgCACAMa7K7IgVEO99PjZdu9j+iIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4CyAUKAIAIhJqIhYgCSAJIBZKG0EAIBZBAE4bNgIAIBMgEgJ/IB8gDGuyuyIGRGq8dJMYBNY/oiAFRAwCK4cW2eY/oqAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLayIWIAkgCSAWShtBACAWQQBOGzYCACAPAn8gBkQnMQisHFr8P6IiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLIBJqIhIgCSAJIBJKG0EAIBJBAE4bNgIAIAooAgAhHyALAn8gESgCACAMa7K7IgVEO99PjZdu9j+iIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4CyAUKAIEIhJqIhYgCSAJIBZKG0EAIBZBAE4bNgIEIBMgEgJ/IB8gDGuyuyIGRGq8dJMYBNY/oiAFRAwCK4cW2eY/oqAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLayIWIAkgCSAWShtBACAWQQBOGzYCBCAPAn8gBkQnMQisHFr8P6IiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLIBJqIhIgCSAJIBJKG0EAIBJBAE4bNgIEIBFBBGohESAKQQRqIQogD0EIaiEPIBNBCGohEyALQQhqIQsgFEEIaiEUIAFBCGohASACQQhqIQIgAEEIaiEAIBBBCGohECAVQQJqIhUgHEkNAAsgJgVBAAsgGkkEfyAKKAIAIRYgAAJ/IBEoAgAgDGuyuyIFRDvfT42XbvY/oiIGmUQAAAAAAADgQWMEQCAGqgwBC0GAgICAeAsgECgCACIVaiISIAkgCSASShtBACASQQBOGzYCACACIBUCfyAWIAxrsrsiBkRqvHSTGATWP6IgBUQMAiuHFtnmP6KgIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C2siEiAJIAkgEkobQQAgEkEAThs2AgAgAQJ/IAZEJzEIrBxa/D+iIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4CyAVaiIVIAkgCSAVShtBACAVQQBOGzYCACAKKAIAIRUgCwJ/IBEoAgAgDGuyuyIFRDvfT42XbvY/oiIGmUQAAAAAAADgQWMEQCAGqgwBC0GAgICAeAsgFCgCACILaiIUIAkgCSAUShtBACAUQQBOGzYCACATIAsCfyAVIAxrsrsiBkRqvHSTGATWP6IgBUQMAiuHFtnmP6KgIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C2siEyAJIAkgE0obQQAgE0EAThs2AgAgDwJ/IAZEJzEIrBxa/D+iIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4CyALaiILIAkgCSALShtBACALQQBOGzYCACARQQRqIREgCkEEaiEKIAJBBGohAiAQQQRqIRAgAEEEaiEAIAFBBGoFIAELIA1qIQEgAiANaiECIAAgDWohACANIBBqIRAgIEECaiIgIB1JDQALICVBfnFBAmoFQQALIB5PDQAgGwRAIAACf0EAIAxrsrsiBUQ730+Nl272P6IiBplEAAAAAAAA4EFjBEAgBqoMAQtBgICAgHgLIBAoAgAiC2oiDSAJIAkgDUobQQAgDUEAThs2AgAgAiALAn8gBURqvHSTGATWP6IgBUQMAiuHFtnmP6KgIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4C2siDSAJIAkgDUobQQAgDUEAThs2AgAgAQJ/IAVEJzEIrBxa/D+iIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4CyALaiILIAkgCSALShtBACALQQBOGzYCACACQQRqIQIgEEEEaiEQIAFBBGohASAAQQRqIQALIBpBfnEiIAR/ICBBAWsiC0F+cSE7AkACf0EAICBBD0kNABpBACAAIAIgC0EBdiIUQQN0QQhqIhNqIgtJIAIgACATaiINSXENABpBACABIA1JIAAgASATaiIPSXENABpBACAAIBAgE2oiE0kgDSAQS3ENABpBACAKIA1JIAAgCiAUQQJ0QQRqIh5qIhtJcQ0AGkEAIA0gEUsgACARIB5qIg1JcQ0AGkEAIAIgD0kgASALSXENABpBACACIBNJIAsgEEtxDQAaQQAgCiALSSACIBtJcQ0AGkEAIAIgDUkgCyARS3ENABpBACABIBNJIA8gEEtxDQAaQQAgCiAPSSABIBtJcQ0AGkEAIAEgDUkgDyARS3ENABogCiAUQQFqIhZB/P///wdxIhtBAnQiImohCyABIBtBA3QiHmohDSAAIB5qIQ8gCf0RIT8gDP0RIUNBACETA0AgECATQQN0IhRBGHIiHWoiIyAQIBRBEHIiHGoiJCAQIBRBCHIiFWoiJSAQIBRqIib9CQIA/VYCAAH9VgIAAv1WAgADIT0CfyARIBNBAnQiH2r9AAIAIEP9sQH9+gEiPv1fIkD9DDvfT42XbvY/O99PjZdu9j/98gEiQf0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAshJyAKIB9q/QACACFCIAAgFGoiH/0MAAAAAAAAAAAAAAAAAAAAACA9An8gQf0hACIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAv9ESAn/RwBAn8gPiA+/Q0ICQoLDA0ODwABAgMAAQID/V8iQf0MO99PjZdu9j8730+Nl272P/3yASI+/SEAIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C/0cAgJ/ID79IQEiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgL/RwDIkT9rgEiPiA//bYBID79DAAAAAAAAAAAAAAAAAAAAAD9Of1SIj79WgIAACAAIBVqIicgPv1aAgABIAAgHGoiKSA+/VoCAAIgACAdaiIqID79WgIAAwJ/IEIgQ/2xAf36ASI+/V8iQv0Marx0kxgE1j9qvHSTGATWP/3yASBA/QwMAiuHFtnmPwwCK4cW2eY//fIB/fABIkD9IQEiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLISggAiAUaiIr/QwAAAAAAAAAAAAAAAAAAAAAID0CfyBA/SEAIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C/0RICj9HAECfyA+/QwAAAAAAAAAAAAAAAAAAAAA/Q0ICQoLDA0ODwABAgMAAQID/V8iQP0Marx0kxgE1j9qvHSTGATWP/3yASBB/QwMAiuHFtnmPwwCK4cW2eY//fIB/fABIj79IQAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgL/RwCAn8gPv0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAv9HAMiQf2xASI+ID/9tgEgPv0MAAAAAAAAAAAAAAAAAAAAAP05/VIiPv1aAgAAIAIgFWoiKCA+/VoCAAEgAiAcaiIsID79WgIAAiACIB1qIi0gPv1aAgADAn8gQv0MJzEIrBxa/D8nMQisHFr8P/3yASI+/SEBIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4CyEuIAEgFGoiFP0MAAAAAAAAAAAAAAAAAAAAACA9An8gPv0hACIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAv9ESAu/RwBAn8gQP0MJzEIrBxa/D8nMQisHFr8P/3yASI9/SEAIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C/0cAgJ/ID39IQEiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgL/RwDIkD9rgEiPSA//bYBID39DAAAAAAAAAAAAAAAAAAAAAD9Of1SIj39WgIAACABIBVqIhUgPf1aAgABIAEgHGoiHCA9/VoCAAIgASAdaiIdID39WgIAAyAf/QwAAAAAAAAAAAAAAAAAAAAAICNBBGogJEEEaiAlQQRqICb9CQIE/VYCAAH9VgIAAv1WAgADIj4gRP2uASI9ID/9tgEgPf0MAAAAAAAAAAAAAAAAAAAAAP05/VIiPf1aAgQAICcgPf1aAgQBICkgPf1aAgQCICogPf1aAgQDICv9DAAAAAAAAAAAAAAAAAAAAAAgPiBB/bEBIj0gP/22ASA9/QwAAAAAAAAAAAAAAAAAAAAA/Tn9UiI9/VoCBAAgKCA9/VoCBAEgLCA9/VoCBAIgLSA9/VoCBAMgFP0MAAAAAAAAAAAAAAAAAAAAACA+IED9rgEiPSA//bYBID39DAAAAAAAAAAAAAAAAAAAAAD9Of1SIj39WgIEACAVID39WgIEASAcID39WgIEAiAdID39WgIEAyATQQRqIhMgG0cNAAsgESAiaiERIBAgHmohECACIB5qIQIgFiAbRgRAIA8hACANIQEgCyEKDAILIA8hACANIQEgCyEKIBtBAXQLIQsDQCAKKAIAIRMgAAJ/IBEoAgAgDGuyuyIFRDvfT42XbvY/oiIGmUQAAAAAAADgQWMEQCAGqgwBC0GAgICAeAsgECgCACINaiIPIAkgCSAPShtBACAPQQBOGzYCACACIA0CfyATIAxrsrsiBkRqvHSTGATWP6IgBUQMAiuHFtnmP6KgIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C2siDyAJIAkgD0obQQAgD0EAThs2AgAgAQJ/IAZEJzEIrBxa/D+iIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4CyANaiINIAkgCSANShtBACANQQBOGzYCACAKKAIAIRMgAAJ/IBEoAgAgDGuyuyIFRDvfT42XbvY/oiIGmUQAAAAAAADgQWMEQCAGqgwBC0GAgICAeAsgECgCBCINaiIPIAkgCSAPShtBACAPQQBOGzYCBCACIA0CfyATIAxrsrsiBkRqvHSTGATWP6IgBUQMAiuHFtnmP6KgIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C2siDyAJIAkgD0obQQAgD0EAThs2AgQgAQJ/IAZEJzEIrBxa/D+iIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4CyANaiINIAkgCSANShtBACANQQBOGzYCBCARQQRqIREgCkEEaiEKIAFBCGohASACQQhqIQIgAEEIaiEAIBBBCGohECALQQJqIgsgIEkNAAsLIDtBAmoFQQALIBpPDQAgCigCACELIAACfyARKAIAIAxrsrsiBUQ730+Nl272P6IiBplEAAAAAAAA4EFjBEAgBqoMAQtBgICAgHgLIBAoAgAiAGoiCiAJIAkgCkobQQAgCkEAThs2AgAgAiAAAn8gCyAMa7K7IgZEarx0kxgE1j+iIAVEDAIrhxbZ5j+ioCIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAtrIgIgCSACIAlIG0EAIAJBAE4bNgIAIAECfyAGRCcxCKwcWvw/oiIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAsgAGoiACAJIAAgCUgbQQAgAEEAThs2AgALIBcoAhgoAiwQECAXKAIYIgAgBzYCLCAAKAJgEBAgFygCGCIAIAg2AmAgACgClAEQECAXKAIYIgAgDjYClAEgACAA/QACACI//QsCaCAAID/9CwI0IBdBATYCFAsMBwsgASgCBEEBRw0BIAEoAjhBAUcNASABKAJsQQFHDQEgASgCGCEAIAEoApQBIQIgASgCYCEHIAEoAiwhDCABKAIIIgogASgCDCIWbEECdCIBEBghDyABEBghFyABEBghCSAPRQ0FIBdFDQUgCUUNBSAWBEAgCiANKAIAQQFxIh9rISICf0EAQQEgAEEBa3QiFGuyuyIFRGq8dJMYBNY/oiAFRAwCK4cW2eY/oqAiBplEAAAAAAAA4EFjBEAgBqoMAQtBgICAgHgLISdBfyAAdCE8ICJBfnEiHUEBayIKQQF2IgBBAWohIwJ/IAVEJzEIrBxa/D+iIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4CyEpIApBfnEhCiAAQQJ0IQggAEEDdCEAICNBfHEhGyA8QX9zIRECfyAFRDvfT42XbvY/oiIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAshKiAKQQJqISQgCEEEaiElIABBCGohICAbQQJ0ISYgG0EDdCEeIBtBAXQhECAR/REhPyAU/REhQyAdQQdJISggDyEKIBchACAJIQ4DQCAfBEAgCiAMKAIAIgEgKmoiCCARIAggEUgbQQAgCEEAThs2AgAgACABICdrIgggESAIIBFIG0EAIAhBAE4bNgIAIA4gASApaiIBIBEgASARSBtBACABQQBOGzYCACAOQQRqIQ4gCkEEaiEKIAxBBGohDCAAQQRqIQALAn8CfyAdRQRAIAchASAOIQsgCiEIQQAMAQtBACEZAkACQCAoDQAgCiAAICBqIgFJIAAgCiAgaiIISXENACAKIA4gIGoiC0kgCCAOS3ENACAKIAwgIGoiGkkgCCAMS3ENACAHIAhJIAogByAlaiIcSXENACACIAhJIAogAiAlaiIISXENACAAIAtJIAEgDktxDQAgACAaSSABIAxLcQ0AIAAgHEkgASAHS3ENACAAIAhJIAEgAktxDQAgDiAaSSALIAxLcQ0AIA4gHEkgByALSXENACACIAtJIAggDktxDQAgByAmaiEBIA4gHmohCyAKIB5qIQgDQCAMIBlBA3QiGkEYciIcaiIrIAwgGkEQciIVaiIsIAwgGkEIciISaiItIAwgGmoiLv0JAgD9VgIAAf1WAgAC/VYCAAMhPQJ/IAIgGUECdCIvav0AAgAgQ/2xAf36ASI+/V8iQP0MO99PjZdu9j8730+Nl272P/3yASJB/SEBIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4CyEwIAcgL2r9AAIAIUIgCiAaaiIv/QwAAAAAAAAAAAAAAAAAAAAAID0CfyBB/SEAIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C/0RIDD9HAECfyA+ID79DQgJCgsMDQ4PAAECAwABAgP9XyJB/Qw730+Nl272PzvfT42XbvY//fIBIj79IQAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgL/RwCAn8gPv0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAv9HAMiRP2uASI+ID/9tgEgPv0MAAAAAAAAAAAAAAAAAAAAAP05/VIiPv1aAgAAIAogEmoiMCA+/VoCAAEgCiAVaiIyID79WgIAAiAKIBxqIjMgPv1aAgADAn8gQiBD/bEB/foBIj79XyJC/QxqvHSTGATWP2q8dJMYBNY//fIBIED9DAwCK4cW2eY/DAIrhxbZ5j/98gH98AEiQP0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAshMSAAIBpqIjT9DAAAAAAAAAAAAAAAAAAAAAAgPQJ/IED9IQAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgL/REgMf0cAQJ/ID79DAAAAAAAAAAAAAAAAAAAAAD9DQgJCgsMDQ4PAAECAwABAgP9XyJA/QxqvHSTGATWP2q8dJMYBNY//fIBIEH9DAwCK4cW2eY/DAIrhxbZ5j/98gH98AEiPv0hACIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAv9HAICfyA+/SEBIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C/0cAyJB/bEBIj4gP/22ASA+/QwAAAAAAAAAAAAAAAAAAAAA/Tn9UiI+/VoCAAAgACASaiIxID79WgIAASAAIBVqIjUgPv1aAgACIAAgHGoiNiA+/VoCAAMCfyBC/QwnMQisHFr8PycxCKwcWvw//fIBIj79IQEiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLITcgDiAaaiIa/QwAAAAAAAAAAAAAAAAAAAAAID0CfyA+/SEAIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C/0RIDf9HAECfyBA/QwnMQisHFr8PycxCKwcWvw//fIBIj39IQAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgL/RwCAn8gPf0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAv9HAMiQP2uASI9ID/9tgEgPf0MAAAAAAAAAAAAAAAAAAAAAP05/VIiPf1aAgAAIA4gEmoiEiA9/VoCAAEgDiAVaiIVID39WgIAAiAOIBxqIhwgPf1aAgADIC/9DAAAAAAAAAAAAAAAAAAAAAAgK0EEaiAsQQRqIC1BBGogLv0JAgT9VgIAAf1WAgAC/VYCAAMiPiBE/a4BIj0gP/22ASA9/QwAAAAAAAAAAAAAAAAAAAAA/Tn9UiI9/VoCBAAgMCA9/VoCBAEgMiA9/VoCBAIgMyA9/VoCBAMgNP0MAAAAAAAAAAAAAAAAAAAAACA+IEH9sQEiPSA//bYBID39DAAAAAAAAAAAAAAAAAAAAAD9Of1SIj39WgIEACAxID39WgIEASA1ID39WgIEAiA2ID39WgIEAyAa/QwAAAAAAAAAAAAAAAAAAAAAID4gQP2uASI9ID/9tgEgPf0MAAAAAAAAAAAAAAAAAAAAAP05/VIiPf1aAgQAIBIgPf1aAgQBIBUgPf1aAgQCIBwgPf1aAgQDIBlBBGoiGSAbRw0ACyACICZqIQIgDCAeaiEMIAAgHmohACAQIRkgJCAbICNGDQIaDAELIAohCCAOIQsgByEBCwNAIAEoAgAhDiAIAn8gAigCACAUa7K7IgVEO99PjZdu9j+iIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4CyAMKAIAIgpqIgcgESAHIBFIG0EAIAdBAE4bNgIAIAAgCgJ/IA4gFGuyuyIGRGq8dJMYBNY/oiAFRAwCK4cW2eY/oqAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLayIHIBEgByARSBtBACAHQQBOGzYCACALAn8gBkQnMQisHFr8P6IiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLIApqIgogESAKIBFIG0EAIApBAE4bNgIAIAEoAgAhDiAIAn8gAigCACAUa7K7IgVEO99PjZdu9j+iIgaZRAAAAAAAAOBBYwRAIAaqDAELQYCAgIB4CyAMKAIEIgpqIgcgESAHIBFIG0EAIAdBAE4bNgIEIAAgCgJ/IA4gFGuyuyIGRGq8dJMYBNY/oiAFRAwCK4cW2eY/oqAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLayIHIBEgByARSBtBACAHQQBOGzYCBCALAn8gBkQnMQisHFr8P6IiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgLIApqIgogESAKIBFIG0EAIApBAE4bNgIEIAJBBGohAiABQQRqIQEgC0EIaiELIABBCGohACAIQQhqIQggDEEIaiEMIBlBAmoiGSAdSQ0ACyAkCyAiTwRAIAEhByAIIQogCwwBCyABKAIAIQ4gCAJ/IAIoAgAgFGuyuyIFRDvfT42XbvY/oiIGmUQAAAAAAADgQWMEQCAGqgwBC0GAgICAeAsgDCgCACIKaiIHIBEgByARSBtBACAHQQBOGzYCACAAIAoCfyAOIBRrsrsiBkRqvHSTGATWP6IgBUQMAiuHFtnmP6KgIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C2siByARIAcgEUgbQQAgB0EAThs2AgAgCwJ/IAZEJzEIrBxa/D+iIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4CyAKaiIKIBEgCiARSBtBACAKQQBOGzYCACACQQRqIQIgAUEEaiEHIABBBGohACAIQQRqIQogDEEEaiEMIAtBBGoLIQ4gE0EBaiITIBZHDQALCyANKAIYKAIsEBAgDSgCGCIAIA82AiwgACgCYBAQIA0oAhgiACAXNgJgIAAoApQBEBAgDSgCGCIAIAk2ApQBIAAgAP0AAgAiP/0LAmggACA//QsCNCANQQE2AhRBACEZDAYLIAEoAmhBAUcNACABKAIEQQFHDQAgASgCOEEBRw0AIAEoAmxBAUcNACABKAIYIQIgASgClAEhCCABKAJgIQwgASgCLCEAIAEoAgwgASgCCGwiF0ECdCIBEBghByABEBghDyABEBghDgJAIAdFDQAgD0UNACAORQ0AIBdFDQRBfyACdEF/cyEZQQEgAkEBa3QhESAXQQhJDQIgDyAHa0EQSQ0CIA4gB2tBEEkNAiAHIABrQRBJDQIgByAMa0EQSQ0CIAcgCGtBEEkNAiAOIA9rQRBJDQIgDyAAa0EQSQ0CIA8gDGtBEEkNAiAPIAhrQRBJDQIgDiAAa0EQSQ0CIA4gDGtBEEkNAiAOIAhrQRBJDQIgCCAXQXxxIgpBAnQiCWohCyAJIA5qIQEgByAJaiECIBn9ESE/IBH9ESE9A0ACfyAIIBNBAnQiEGr9AAIAID39sQH9+gEiPv1fIkD9DDvfT42XbvY/O99PjZdu9j/98gEiQf0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAshFCAMIBBq/QACACFCIAcgEGr9DAAAAAAAAAAAAAAAAAAAAAAgACAQav0AAgAiQwJ/IEH9IQAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgL/REgFP0cAQJ/ID4gPv0NCAkKCwwNDg8AAQIDAAECA/1fIj79DDvfT42XbvY/O99PjZdu9j/98gEiQf0hACIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAv9HAICfyBB/SEBIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C/0cA/2uASJBID/9tgEgQf0MAAAAAAAAAAAAAAAAAAAAAP05/VL9CwIAAn8gQiA9/bEB/foBIkH9XyJC/QxqvHSTGATWP2q8dJMYBNY//fIBIED9DAwCK4cW2eY/DAIrhxbZ5j/98gH98AEiQP0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAshFCAPIBBq/QwAAAAAAAAAAAAAAAAAAAAAIEMCfyBA/SEAIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C/0RIBT9HAECfyBB/QwAAAAAAAAAAAAAAAAAAAAA/Q0ICQoLDA0ODwABAgMAAQID/V8iQP0Marx0kxgE1j9qvHSTGATWP/3yASA+/QwMAiuHFtnmPwwCK4cW2eY//fIB/fABIj79IQAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgL/RwCAn8gPv0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAv9HAP9sQEiPiA//bYBID79DAAAAAAAAAAAAAAAAAAAAAD9Of1S/QsCAAJ/IEL9DCcxCKwcWvw/JzEIrBxa/D/98gEiPv0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAshFCAOIBBq/QwAAAAAAAAAAAAAAAAAAAAAIEMCfyA+/SEAIgWZRAAAAAAAAOBBYwRAIAWqDAELQYCAgIB4C/0RIBT9HAECfyBA/QwnMQisHFr8PycxCKwcWvw//fIBIj79IQAiBZlEAAAAAAAA4EFjBEAgBaoMAQtBgICAgHgL/RwCAn8gPv0hASIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAv9HAP9rgEiPiA//bYBID79DAAAAAAAAAAAAAAAAAAAAAD9Of1S/QsCACATQQRqIhMgCkcNAAsgCiAXRg0EIAkgDGohDCAAIAlqIQAgCSAPagwDCyAHEBAgDxAQIA4QEAwFCyAYQbkDNgIEIBhBuAo2AgBB6MQBQcI+IBgQFgwECyAHIQIgDiEBIAghCyAPCyEIA0AgDCgCACETIAICfyALKAIAIBFrsrsiBUQ730+Nl272P6IiBplEAAAAAAAA4EFjBEAgBqoMAQtBgICAgHgLIAAoAgAiCWoiECAZIBAgGUgbQQAgEEEAThs2AgAgCCAJAn8gEyARa7K7IgZEarx0kxgE1j+iIAVEDAIrhxbZ5j+ioCIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAtrIhAgGSAQIBlIG0EAIBBBAE4bNgIAIAECfyAGRCcxCKwcWvw/oiIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAsgCWoiCSAZIAkgGUgbQQAgCUEAThs2AgAgAUEEaiEBIAhBBGohCCACQQRqIQIgC0EEaiELIAxBBGohDCAAQQRqIQAgCkEBaiIKIBdHDQALCyANKAIYKAIsEBAgDSgCGCIAIAc2AiwgACgCYBAQIA0oAhgiACAPNgJgIAAoApQBEBAgDSgCGCAONgKUASANQQE2AhRBACEZDAELIA8QECAXEBAgCRAQCyAYKAIgIQACQCADDQAgIUUNACAAKAIYIQ5BACETA0AgDiATQTRsaiIDKAIYIgJBCEcEQAJAIAJBB00EQCADKAIMIAMoAghsIQEgAygCLCEKIAMoAiAEQCABRQ0CQQEgAkEBa3StIUVBACEHIAFBBE8EQCABQXxxIQcgRf0SIT9BACEMA0AgCiAMQQJ0aiICIAL9AAIAIj39xwFBB/3LASI+/R0AID/9HQAiRn/9EiA+/R0BID/9HQEiR3/9HgEgPSA//Q0ICQoLDA0ODwABAgMAAQID/ccBQQf9ywEiPf0dACBGf/0SID39HQEgR3/9HgH9DQABAgMICQoLEBESExgZGhv9CwIAIAxBBGoiDCAHRw0ACyABIAdGDQMLA0AgCiAHQQJ0aiICIAI0AgBCB4YgRX8+AgAgB0EBaiIHIAFHDQALDAILIAFFDQFBfyACdEF/c60hRUEAIQcgAUEETwRAIAFBfHEhByBF/RIhP0EAIQwDQCAKIAxBAnRqIgIgAv0AAgAiPf3JAf0M/wAAAAAAAAD/AAAAAAAAAP3VASI+/R0AID/9HQAiRoD9EiA+/R0BID/9HQEiR4D9HgEgPSA//Q0ICQoLDA0ODwABAgMAAQID/ckB/Qz/AAAAAAAAAP8AAAAAAAAA/dUBIj39HQAgRoD9EiA9/R0BIEeA/R4B/Q0AAQIDCAkKCxAREhMYGRob/QsCACAMQQRqIgwgB0cNAAsgASAHRg0CCwNAIAogB0ECdGoiAiACNQIAQv8BfiBFgD4CACAHQQFqIgcgAUcNAAsMAQsgAkEIayEKIAMoAgwgAygCCGwhASADKAIsIQggAygCIARAIAFFDQFBACEHIAFBBE8EQCABQXxxIQdBACECA0AgCCACQQJ0aiILIAv9AAIAIAr9rAH9CwIAIAJBBGoiAiAHRw0ACyABIAdGDQILA0AgCCAHQQJ0aiICIAIoAgAgCnU2AgAgB0EBaiIHIAFHDQALDAELIAFFDQBBACEHIAFBBE8EQCABQXxxIQdBACECA0AgCCACQQJ0aiILIAv9AAIAIAr9rQH9CwIAIAJBBGoiAiAHRw0ACyABIAdGDQELA0AgCCAHQQJ0aiICIAIoAgAgCnY2AgAgB0EBaiIHIAFHDQALCyADQQg2AhgLIBNBAWoiEyAhRw0ACwsgACgCDCAAKAIIbCEBAkAgGUUEQCAAKAIUQQJGBEAgACgCEEEBRgRAIAAoAhgoAiwgARAODAMLIARFDQIgACgCGCIAKAIsIAAoAmAgARAIDAILIAAoAhgiACgCLCAAKAJgIAAoApQBIAEQBwwBCwJAAkACQCAhQQFrDgQAAwECAwsgACgCGCgCLCABEAYMAgsgACgCGCIAKAIsIAAoAmAgACgClAEgARAFDAELIAAoAhgiACgCLCAAKAJgIAAoApQBIAAoAsgBIAEQBAsgGCgCIBAhQQAhDAsgGEHgwABqJAAgDAsIAEEIIAAQJQurAgICfgJ/Qn8hAyAALQBEQQhxRQRAIAAgACgCICIGNgIkAkACQAJAIAAgACgCMCIFBH8DQCAGIAUgACgCACAAKAIUEQAAIgVBf0YNAiAAIAAoAiQgBWoiBjYCJCAAIAAoAjAgBWsiBTYCMCAFDQALIAAoAiAFIAYLNgIkIAFCAFUNAUIAIQMMAgsgACAAKAJEQQhyNgJEIAJBBEGB9QBBABAPIABBADYCMCAAIAAoAkRBCHI2AkRCfw8LQgAhAwNAIAEgACgCACAAKAIYEQsAIgRCf1EEQCACQQRB8vQAQQAQDyAAIAAoAkRBCHI2AkQgACAAKQM4IAN8NwM4Qn8gAyADUBsPCyADIAR8IQMgASAEfSIBQgBVDQALCyAAIAApAzggA3w3AzgLIAMLIwEBfyABIAEoAgAgASgCCCIBIACnIgIgASACSRtqNgIEQQELPAICfwF+IAEoAgAgASgCCGoiAyABKAIEIgJGBEBCfw8LIAEgAiAAp2o2AgQgAyACa6wiBCAAIAAgBFUbC5gDAgJ+An8gACgCMCIFIAGnIgZPBEAgACAFIAZrNgIwIAAgACgCJCAGajYCJCAAIAApAzggAXw3AzggAQ8LIAAtAERBBHEEQCAAQQA2AjAgACAAKAIkIAVqNgIkIAAgBa0iASAAKQM4fDcDOCABQn8gBRsPCwJAIAVFBEAMAQsgAEEANgIwIAAgACgCIDYCJCABIAWtIgN9IQELIAFCAFUEQANAIAApAwggACkDOCABIAN8fFQEQCACQQRBm/UAQQAQDyAAQQA2AjAgACAAKAIgNgIkIAAgACkDOCADfCIDNwM4IAApAwgiASADfSEEIAEgACgCACAAKAIcEQoAIQUgACgCRCECIAAgBQR/IAAgATcDOCACQXtxBSACC0EEcjYCREJ/IAQgASADURsPCyABIAAoAgAgACgCGBELACIEQn9RBEAgAkEEQZv1AEEAEA8gACAAKAJEQQRyNgJEIAAgACkDOCADfDcDOEJ/IAMgA1AbDwsgAyAEfCEDIAEgBH0iAUIAVQ0ACwsgACAAKQM4IAN8NwM4IAMLmwEBBX9BASACKAIIIgcgB0EBTRshBCACKAIEIgMgAigCAGshBgNAIAQiBUEBdCEEIAUgBmsgAUkNAAsgBSAHRwRAIAUQFCIDRQRAQX8PCyACKAIAIgQEQCADIAQgBhASGiACKAIAEBALIAIgBTYCCCACIAM2AgAgAiADIAZqIgM2AgQLIAMgACABEBIaIAIgAigCBCABajYCBCABC0YBAn8gAigCACACKAIIaiIEIAIoAgQiA0YEQEF/DwsgACADIAQgA2siACABIAAgAUkbIgAQEhogAiACKAIEIABqNgIEIAALqgIBBH8jAEEQayIEJAACQCAAKAJ0DQAgAkEBTQRAIANBAUH7wgBBABAPDAELIAEgBEEMakECEBEgBCgCDCIGQf//A3EiB0UEQCADQQFBnMMAQQAQDwwBCyACIAdBBmxBAmpJBEAgA0EBQfvCAEEAEA8MAQsgBkEGbBAUIgNFDQAgAEEIEBQiAjYCdCACRQRAIAMQEAwBCyACIAM2AgAgAiAELwEMIgI7AQQgAkUEQEEBIQUMAQtBACECA0AgAUECaiAEQQxqIgVBAhARIAMgAkEGbGoiBiAEKAIMOwEAIAFBBGogBUECEBEgBiAEKAIMOwECIAFBBmoiASAFQQIQESAGIAQoAgw7AQRBASEFIAJBAWoiAiAAKAJ0LwEESQ0ACwsgBEEQaiQAIAUL8AEBBX8jAEEQayIEJAACfyAAKAJ4IgVFBEAgA0EBQc3CAEEAEA9BAAwBCyAFKAIMBEAgA0EBQdvVAEEAEA9BAAwBCyACIAUtABIiBUECdCIGSQRAIANBAUGswgBBABAPQQAMAQtBACAGEBQiAkUNABogBQRAQQAhAwNAIAEgBEEMaiIHQQIQESACIANBAnRqIgYgBCgCDDsBACABQQJqIAdBARARIAYgBCgCDDoAAiABQQNqIAdBARARIAYgBCgCDDoAAyABQQRqIQEgA0EBaiIDIAVHDQALCyAAKAJ4IAI2AgxBAQshCCAEQRBqJAAgCAvwAwEJfyMAQRBrIgUkAAJAIAJBA0kNACAAKAJ4DQAgASAFQQxqQQIQESAFLwEMIglBgQhrQf93TQRAIAUgCTYCACADQQFBtBogBRAPDAELIAFBAmogBUEMakEBEBEgBS8BDCIIRQRAIANBAUHUF0EAEA8MAQsgCEEDaiACSw0AIAggCWxBAnQQFCIHRQ0AIAgQFCIKRQRAIAcQEAwBCyAIEBQiC0UEQCAHEBAgChAQDAELQRQQFCIGRQRAIAcQECAKEBAgCxAQDAELIAFBA2ohAyAGIAo2AgggBiALNgIEIAYgCTsBECAGIAc2AgAgBSgCDCEMIAZBADYCDCAGIAw6ABIgACAGNgJ4A0AgAyAFQQxqQQEQESAEIApqIAUtAAxB/wBxQQFqOgAAIAQgC2ogBSgCDEGAAXFBB3Y6AAAgA0EBaiEDIARBAWoiBCAIRw0ACyAJRQRAQQEhBAwBC0EAIQYDQEEAIQRBACEAA0AgAkEEIAQgCmotAABBB2pBA3YiBCAEQQRPGyIEIAMgAWtqSARAQQAhBAwDCyADIAVBDGogBBARIAcgBSgCDDYCACAHQQRqIQcgAyAEaiEDIABBAWoiAEH//wNxIgQgCEkNAAtBASEEIAZBAWoiBkH//wNxIAlJDQALCyAFQRBqJAAgBAuYAQECfyMAQRBrIgUkACAAKAIYIgRB/wFHBEAgBSAENgIAIANBAkHkEyAFEA8LAkACQCACIAAoAhRGBEAgAg0BQQEhBAwCC0EAIQQgA0EBQbvsAEEAEA8MAQtBACECA0BBASEEIAEgACgCSCACQQxsakEIakEBEBEgAUEBaiEBIAJBAWoiAiAAKAIUSQ0ACwsgBUEQaiQAIAQLjgYBBn8jAEHQAGsiBCQAAkAgAkECTQRAIANBAUGb7ABBABAPDAELIAAtAHwEQCADQQRB7tIAQQAQD0EBIQYMAQtBASEGIAEgAEEoakEBEBEgAUEBaiAAQTRqQQEQESABQQJqIABBLGpBARARIAFBA2ohBQJAAkACQAJAAkAgACgCKCIHQQFrDgIAAQILIAJBBk0EQCAEIAI2AhAgA0EBQcDxACAEQRBqEA9BACEGDAULAkAgAkEHRg0AIAAoAjBBDkYNACAEIAI2AjAgA0ECQcDxACAEQTBqEA8LIAUgAEEwakEEEBEgACgCMEEORw0DQSQQFCIFRQRAQQAhBiADQQFBszxBABAPDAULIAVBDjYCACAEQQA2AkAgBEEANgI4IARBADYCSCAEQQA2AjwgBEEANgJEIARBADYCTEGw6pACIQYgBEGw6pACNgI0IAVBgIyVogQ2AgQCfyACQQdHBEAgAkEjRgRAIAFBB2ogBEHMAGpBBBARIAFBC2ogBEHIAGpBBBARIAFBD2ogBEHEAGpBBBARIAFBE2ogBEFAa0EEEBEgAUEXaiAEQTxqQQQQESABQRtqIARBOGpBBBARIAFBH2ogBEE0akEEEBEgBUEANgIEIAQoAjQhBiAEKAI4IQIgBCgCQCEDIAQoAjwhByAEKAJEIQggBCgCTCEJIAQoAkgMAgsgBCACNgIgIANBAkHk8QAgBEEgahAPC0EAIQJBACEDQQAhB0EACyEBIAUgBzYCGCAFIAg2AhAgBSAJNgIIIAUgBjYCICAFIAI2AhwgBSADNgIUIAUgATYCDCAAQQA2AnAgACAFNgJsDAMLIAAgAkEDayIBNgJwIABBASABEBMiAzYCbCADRQ0BIAJBA0wNAkEAIQIDQCAFIARBzABqQQEQESAAKAJsIAJqIAQoAkw6AAAgBUEBaiEFIAJBAWoiAiABRw0ACwwCCyAHQQNJDQIgBCAHNgIAIANBBEHb9wAgBBAPDAILQQAhBiAAQQA2AnAMAQtBASEGIABBAToAfAsgBEHQAGokACAGC7QDAQN/IwBBIGsiBCQAAkAgACgCSARAIANBAkGNNUEAEA9BASECDAELIAJBDkcEQEEAIQIgA0EBQfrrAEEAEA8MAQsgASAAQRBqQQQQESABQQRqIABBDGpBBBARIAFBCGogAEEUakECEBEgACgCDCEFAkAgBAJ/IAAoAhAiBkUEQCAAKAIUDAELIAAoAhQiAiAFRQ0AGiACDQFBAAs2AgggBCAGNgIEIAQgBTYCACADQQFB3uoAIAQQD0EAIQIMAQsgAkGBgAFrQf//fk0EQEEAIQIgA0EBQYjqAEEAEA8MAQsgACACQQwQEyICNgJIIAJFBEBBACECIANBAUGt6gBBABAPDAELQQEhAiABQQpqIABBGGpBARARIAFBC2ogAEEcakEBEBEgACgCHCIFQQdHBEAgBCAFNgIQIANBBEGd+gAgBEEQahAPCyABQQxqIABBIGpBARARIAFBDWogAEEkakEBEBEgACgCACIBIAEtALwBQfsBcSAAKAIYQf8BRkECdHI6ALwBIAAoAgAiASAAKAIMNgLYASABIAAoAhA2AtwBIABBAToAhQELIARBIGokACACC7oEAQZ/IwBBEGsiBiQAAn8gAC0AZEECcUUEQCADQQFBkdQAQQAQD0EADAELIABBADYCaAJAAkACQCACBEADQCACQQdNBEAgA0EBQbkZQQAQDwwFCyABIAZBDGoiBUEEEBEgBigCDCEEIAFBBGogBUEEEBFBCCEHIAYoAgwhBQJAAkACQAJAIAQOAgEAAwsgAkEQSQRAQeEZIQQMBwsgAUEIaiAGQQhqQQQQESAGKAIIBEBByj8hBAwHCyABQQxqIAZBDGpBBBARIAYoAgwiBA0BQbIYIQQMBgsgA0EBQbIYQQAQDwwGC0EQIQcLIAQgB0kEQCADQQFBhcUAQQAQDwwFCyACIARJBEAgA0EBQb3EAEEAEA9BAAwGCwJAAkAgACABIAdqIAQgB2sgAwJ/AkACQAJAIAVB8di9mwZMBEAgBUHjxsGTBkYNASAFQebKkZsGRg0DIAVB8MK1mwZHDQVB4MABDAQLIAVB8tiNgwdGDQFBwMABIAVB8sihywZGDQMaIAVB8ti9mwZHDQRByMABDAMLQdDAAQwCC0HYwAEMAQtB6MABCygCBBEBAA0BQQAMBwsgACAAKAJoQf////8HcjYCaAtBASAIIAVB8sihywZGGyEIIAEgBGohASACIARrIgINAAsgCA0BCyADQQFB2cMAQQAQD0EADAMLIABBAToAhAEgACAAKAJkQQRyNgJkQQEMAgsgA0EBIARBABAPCyADQQFBng5BABAPQQALIQkgBkEQaiQAIAkL4gEBAX8gACgCZEEBRwRAIANBAUG+1ABBABAPQQAPCwJAIAJBB00EQAwBCyABIABBOGpBBBARIAFBBGogAEE8akEEEBEgAkEDcQRADAELIAAgAkEIayICQQJ2IgQ2AkACQCACRQ0AIAAgBEEEEBMiAjYCRCACRQRAIANBAUGpEEEAEA9BAA8LIAAoAkBFDQAgAUEIaiEDQQAhAgNAIAMgACgCRCACQQJ0akEEEBEgA0EEaiEDIAJBAWoiAiAAKAJASQ0ACwsgACAAKAJkQQJyNgJkQQEPCyADQQFBqi1BABAPQQALxAEBAn8gACAAKAIgIgQ2AiQCQCAAKAIwIgMEQANAIAQgAyAAKAIAIAAoAhQRAAAiA0F/Rg0CIAAgACgCJCADaiIENgIkIAAgACgCMCADayIDNgIwIAMNAAsgACgCICEECyAAQQA2AjAgACAENgIkIAEgACgCACAAKAIcEQoARQRAIAAgACgCREEIcjYCREEADwsgACABNwM4QQEPCyAAIAAoAkRBCHI2AkQgAkEEQYH1AEEAEA8gACAAKAJEQQhyNgJEQQALggEBAn8jAEEQayIEJAACfyAAKAJkBEAgA0EBQdvTAEEAEA9BAAwBCyACQQRHBEAgA0EBQc4tQQAQD0EADAELIAEgBEEMakEEEBEgBCgCDEGKjqroAEcEQCADQQFB9iVBABAPQQAMAQsgACAAKAJkQQFyNgJkQQELIQUgBEEQaiQAIAULDQAgACgCACABIAIQRQsJACAAKAIAEEoLCQAgACgCABBJCw0AIAAoAgAgASACEEwLQQEBfyACBH8gA0ECQdvLAEEAEA8gACgCACABIAIgAyAEEEZFBEAgA0EBQakvQQAQD0EADwsgACACIAMQcQVBAAsLFQAgACgCACABIAIgAyAEIAUgBhBOCw8AIAAoAgAgASACIAMQTwsTACAAKAIAIAEgAiADIAQgBRArCx0AIAAoAgAgASACIAMgBCAFIAYgByAIIAkgChAnC+oEAQd/AkAgASgCCEE1IAMQJEUNACABKAIEIgcoAgAhBSAHKAIIIQQCQCAFBEBBASEGIAVBAUcEQCAFQX5xIQoDQAJ/QQAgBkUNABpBACABIAAgAyAEKAIAEQAARQ0AGiABIAAgAyAEKAIEEQAAQQBHCyEGIARBCGohBCAJQQJqIgkgCkcNAAsLAkAgBUEBcQRAIAZFDQEgASAAIAMgBCgCABEAAEEARyEGCyAHQQA2AgAgBkUNAwwCCyAHQQA2AgBBAA8LIAdBADYCAAsgASgCCCIHKAIAIQUgBygCCCEEAkACQAJ/AkAgBQRAQQEhBiAFQQFxIQggBUEBRw0BQQAMAgsgB0EANgIADAILIAVBfnEhBUEAIQkDQAJ/QQAgBkUNABpBACABIAAgAyAEKAIAEQAARQ0AGiABIAAgAyAEKAIEEQAAQQBHCyEGIARBCGohBCAJQQJqIgkgBUcNAAsgBkULIQUgCARAIAUNAiABIAAgAyAEKAIAEQAAQQBHIQYLIAdBADYCAEEAIQggBkUNAgsgAS0AhAFFBEAgA0EBQb3WAEEAEA9BAA8LIAEtAIUBRQRAIANBAUGg1gBBABAPQQAPCyAAIAEoAgAgAiADEFAhCCACRQ0BIAIoAgAiAEUNAUEBIQQCQAJAAkACQAJAAkAgASgCMEEMaw4NAwQEBAUAAQQEBAQEAgQLQQIhBAwEC0EDIQQMAwtBBCEEDAILQQUhBAwBC0F/IQQLIAAgBDYCFCABKAJsIgNFDQEgACADNgIcIAIoAgAgASgCcDYCICABQQA2AmwgCA8LIAdBADYCAEEAIQgLIAgL5AkCCn8BfiMAQfAAayIDJABBgAghCAJ/AkBBAUGACBATIgYEQCADQdwAaiELIANB7ABqIQkDQAJAAkACQCABIANB6ABqIgRBCCACEBpBCEcNACAEIANB2ABqQQQQESAJIAtBBBARQQghBQJAAkACQAJAAkAgAygCWA4CAAEECyABKQMIIg1QBH5CAAUgDSABKQM4fQsiDUL4////D1MNASACQQFByj9BABAPDAQLIAEgA0HoAGoiBEEIIAIQGkEIRw0DIAQgA0HkAGpBBBARIAMoAmRFDQEgAkEBQco/QQAQDwwDCyADIA2nQQhqNgJYDAELIAkgA0HYAGpBBBARQRAhBQsgAygCXCIEQePkwNMGRgRAIAAoAmQiAUEEcQRAIAAgAUEIcjYCZAwCCyACQQFBrStBABAPIAYQEEEADAcLIAMoAlgiB0UEQCACQQFBshhBABAPIAYQEEEADAcLIAUgB0sEQCADIAQ2AgQgAyAHNgIAIAJBAUH65wAgAxAPDAYLAkACfwJ/AkACfwJAAkACQAJAAkAgBEHx2L2bBkwEQCAEQePGwZMGRg0CIARB5sqRmwZGDQQgBEHwwrWbBkcNAUHgwAEMBgsgBEGfwMDSBkwEQCAEQfLYvZsGRg0FQcDAASAEQfLIocsGRg0GGiAEQfDy0bMGRw0BQajAAQwICyAEQfLYjYMHRg0CIARBoMDA0gZGDQZBsMABIARB6OTA0wZGDQcaCyAAKAJkIgRBAXENCCACQQFB/A5BABAPIAYQEEEADA8LQdDAAQwDC0HYwAEMAgtB6MABDAELQcjAAQshCiADIARB/wFxNgJMIAMgBEEYdjYCQCADIARBCHZB/wFxNgJIIAMgBEEQdkH/AXE2AkQgAkECQckOIANBQGsQDyAHIAVrIgUgAC0AZEEEcQ0CGiADIAMoAlwiBEEYdjYCMCADIARB/wFxNgI8IAMgBEEQdkH/AXE2AjQgAyAEQQh2Qf8BcTYCOCACQQJB2jMgA0EwahAPIAAgACgCZEH/////B3I2AmQgASAFrSINIAIgASgCKBEIACANUQ0HIAJBAUGSHEEAEA8gBhAQQQAMCgtBoMABCyEKIAcgBWsLIQUgASkDCCINUAR+QgAFIA0gASkDOH0LIAWtUwRAIAMoAlghBCADKAJcIQAgAyABKQMIIg1QBH5CAAUgDSABKQM4fQs+AiggAyAFNgIkIAMgAEH/AXE2AiAgAyAAQRh2NgIUIAMgBDYCECADIABBCHZB/wFxNgIcIAMgAEEQdkH/AXE2AhggAkEBQc31ACADQRBqEA8MBwsgBSAITQRAIAYhBAwECyAFIQggBiAFEBciBA0DIAYQECACQQFB/w9BABAPQQAMBwsgBEECcUUEQCACQQFBwg9BABAPIAYQEEEADAcLIAAgBEH/////B3I2AmQgASAHIAVrrSINIAIgASgCKBEIACANUQ0DIAAtAGRBCHFFDQEgAkECQZIcQQAQDwsgBhAQQQEMBQsgAkEBQZIcQQAQDyAGEBBBAAwECyABIAQgBSACEBogBUcEQCACQQFBxBxBABAPIAQQEEEADAQLIAAgBCIGIAUgAiAKKAIEEQEADQALIAQQEEEADAILIAJBAUGiJUEAEA9BAAwBCyAGEBBBAAshDCADQfAAaiQAIAwL5gEBBn8gACgCCEE1IAIQJARAAkAgACgCCCIGKAIAIQMgBigCCCEFAkACQAJ/AkAgAwRAQQEhBCADQQFxIQcgA0EBRw0BQQAMAgsgBkEANgIADAILIANBfnEhAwNAAn9BACAERQ0AGkEAIAAgASACIAUoAgARAABFDQAaIAAgASACIAUoAgQRAABBAEcLIQQgBUEIaiEFIAhBAmoiCCADRw0ACyAERQshAyAHBEAgAw0CIAAgASACIAUoAgARAABBAEchBAsgBkEANgIAIARFDQILIAAoAgAaQQEPCyAGQQA2AgALC0EACwoAIAAoAgAaQQALFAAgACgCACIABEAgACABNgK4AQsLIQAgACgCACABEFMgAEEAOgB8IAAgASgCuEBBAXE2AoABCzIAIAJFBEBBAA8LIAAoAgAgASACIAMQSEUEQCADQQFBqS9BABAPQQAPCyAAIAIgAxBxC2kCAn8BfCMAQRBrIgMkACACBEADQCAAIANBCGoQRCABAn8gAysDCCIFmUQAAAAAAADgQWMEQCAFqgwBC0GAgICAeAs2AgAgAUEEaiEBIABBCGohACAEQQFqIgQgAkcNAAsLIANBEGokAAuEAQICfwF9IwBBEGsiAyQAIAIEQANAIAMgAC0AADoADyADIAAtAAE6AA4gAyAALQACOgANIAMgAC0AAzoADCABAn8gAyoCDCIFi0MAAABPXQRAIAWoDAELQYCAgIB4CzYCACABQQRqIQEgAEEEaiEAIARBAWoiBCACRw0ACwsgA0EQaiQAC0sBAn8jAEEQayIDJAAgAgRAA0AgACADQQxqQQQQESABIAMoAgw2AgAgAUEEaiEBIABBBGohACAEQQFqIgQgAkcNAAsLIANBEGokAAtLAQJ/IwBBEGsiAyQAIAIEQANAIAAgA0EMakECEBEgASADKAIMNgIAIAFBBGohASAAQQJqIQAgBEEBaiIEIAJHDQALCyADQRBqJAALSgECfyMAQRBrIgMkACACBEADQCAAIANBCGoQRCABIAMrAwi2OAIAIAFBBGohASAAQQhqIQAgBEEBaiIEIAJHDQALCyADQRBqJAALaAECfyMAQRBrIgMkACACBEADQCADIAAtAAA6AA8gAyAALQABOgAOIAMgAC0AAjoADSADIAAtAAM6AAwgASADKgIMOAIAIAFBBGohASAAQQRqIQAgBEEBaiIEIAJHDQALCyADQRBqJAALTAECfyMAQRBrIgMkACACBEADQCAAIANBDGpBBBARIAEgAygCDLM4AgAgAUEEaiEBIABBBGohACAEQQFqIgQgAkcNAAsLIANBEGokAAtMAQJ/IwBBEGsiAyQAIAIEQANAIAAgA0EMakECEBEgASADKAIMszgCACABQQRqIQEgAEECaiEAIARBAWoiBCACRw0ACwsgA0EQaiQAC6oIAg1/AXsjAEEQayIIJAACfyAAKAIIQRBGBEAgACgCnAEgACgCzAFBjCxsagwBCyAAKAIMCyEJAkAgAkUEQCADQQFB8B9BABAPDAELIAAoAkghBkEBIQQgASAIQQhqQQEQESAIKAIIIgVBAk8EQCADQQJBxsgAQQAQDwwBCyACIAVBAWpHBEBBACEEIANBAkHwH0EAEA8MAQsCQCAGKAIQIgNFDQAgCSgC0CshBCADQQhPBEAgA0F4cSEGQQAhAgNAIARBADYCvEMgBEEANgKEOyAEQQA2AswyIARBADYClCogBEEANgLcISAEQQA2AqQZIARBADYC7BAgBEEANgK0CCAEQcDDAGohBCACQQhqIgIgBkcNAAsLIANBB3EiA0UNAEEAIQIDQCAEQQA2ArQIIARBuAhqIQQgAkEBaiICIANHDQALCyAJKALoKyICBH8gAhAQIAlBADYC6CsgCCgCCAUgBQtFBEBBASEEDAELA0AgAUEBaiIBIAhBDGpBARARAkAgCSgCgCxF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KT0ALgAobnVsbCkAKCVkLCVkKSAAJXN9CgAJCSB9CgBbREVWXSBEdW1wIGFuIGltYWdlX2NvbXBfaGVhZGVyIHN0cnVjdCB7CgBbREVWXSBEdW1wIGFuIGltYWdlX2hlYWRlciBzdHJ1Y3QgewoASW1hZ2UgaW5mbyB7CgAJIGRlZmF1bHQgdGlsZSB7CgAlcwkgY29tcG9uZW50ICVkIHsKAAkJIGNvbXAgJWQgewoACSBUaWxlIGluZGV4OiB7CgAJIE1hcmtlciBsaXN0OiB7CgBDb2Rlc3RyZWFtIGluZGV4IGZyb20gbWFpbiBoZWFkZXI6IHsKAENvZGVzdHJlYW0gaW5mbyBmcm9tIG1haW4gaGVhZGVyOiB7CgBTdHJlYW0gZXJyb3Igd2hpbGUgcmVhZGluZyBKUDIgSGVhZGVyIGJveAoARm91bmQgYSBtaXNwbGFjZWQgJyVjJWMlYyVjJyBib3ggb3V0c2lkZSBqcDJoIGJveAoATWFsZm9ybWVkIEpQMiBmaWxlIGZvcm1hdDogZmlyc3QgYm94IG11c3QgYmUgSlBFRyAyMDAwIHNpZ25hdHVyZSBib3gKAE1hbGZvcm1lZCBKUDIgZmlsZSBmb3JtYXQ6IHNlY29uZCBib3ggbXVzdCBiZSBmaWxlIHR5cGUgYm94CgBOb3QgZW5vdWdoIG1lbW9yeSB0byBoYW5kbGUganBlZzIwMDAgYm94CgBOb3QgZW5vdWdoIG1lbW9yeSB3aXRoIEZUWVAgQm94CgBBIG1hcmtlciBJRCB3YXMgZXhwZWN0ZWQgKDB4ZmYtLSkgaW5zdGVhZCBvZiAlLjh4CgAJCSBtY3Q9JXgKAAkJCSBjYmxrc3R5PSUjeAoACQkJIGNzdHk9JSN4CgAJCSBwcmc9JSN4CgBJbnRlZ2VyIG92ZXJmbG93CgAJIHRkeD0ldSwgdGR5PSV1CgAJIHR3PSV1LCB0aD0ldQoACSB0eDA9JXUsIHR5MD0ldQoASW52YWxpZCBjb21wb25lbnQgaW5kZXg6ICV1CgBTdHJlYW0gdG9vIHNob3J0CgBNYXJrZXIgaGFuZGxlciBmdW5jdGlvbiBmYWlsZWQgdG8gcmVhZCB0aGUgbWFya2VyIHNlZ21lbnQKAE5vdCBlbm91Z2ggbWVtb3J5IGZvciBjdXJyZW50IHByZWNpbmN0IGNvZGVibG9jayBlbGVtZW50CgBFcnJvciByZWFkaW5nIFNQQ29kIFNQQ29jIGVsZW1lbnQKAEVycm9yIHJlYWRpbmcgU1FjZCBvciBTUWNjIGVsZW1lbnQKAEEgQlBDQyBoZWFkZXIgYm94IGlzIGF2YWlsYWJsZSBhbHRob3VnaCBCUEMgZ2l2ZW4gYnkgdGhlIElIRFIgYm94ICglZCkgaW5kaWNhdGUgY29tcG9uZW50cyBiaXQgZGVwdGggaXMgY29uc3RhbnQKAEVycm9yIHdpdGggU0laIG1hcmtlcjogaWxsZWdhbCB0aWxlIG9mZnNldAoASW52YWxpZCBwcmVjaW5jdAoATm90IGVub3VnaCBtZW1vcnkgdG8gaGFuZGxlIGJhbmQgcHJlY2ludHMKAEZhaWxlZCB0byBkZWNvZGUgYWxsIHVzZWQgY29tcG9uZW50cwoAU2l6ZSBvZiBjb2RlIGJsb2NrIGRhdGEgZXhjZWVkcyBzeXN0ZW0gbGltaXRzCgBTaXplIG9mIHRpbGUgZGF0YSBleGNlZWRzIHN5c3RlbSBsaW1pdHMKAENhbm5vdCB0YWtlIGluIGNoYXJnZSBtdWx0aXBsZSBNQ1QgbWFya2VycwoAQ29ycnVwdGVkIFBQTSBtYXJrZXJzCgBOb3QgZW5vdWdoIG1lbW9yeSBmb3IgdGlsZSByZXNvbHV0aW9ucwoAQ2Fubm90IHRha2UgaW4gY2hhcmdlIG11bHRpcGxlIGNvbGxlY3Rpb25zCgBJbnZhbGlkIFBDTFIgYm94LiBSZXBvcnRzIDAgcGFsZXR0ZSBjb2x1bW5zCgBXZSBkbyBub3Qgc3VwcG9ydCBST0kgaW4gZGVjb2RpbmcgSFQgY29kZWJsb2NrcwoAQ2Fubm90IGhhbmRsZSBib3ggb2YgdW5kZWZpbmVkIHNpemVzCgBDYW5ub3QgdGFrZSBpbiBjaGFyZ2UgY29sbGVjdGlvbnMgd2l0aG91dCBzYW1lIG51bWJlciBvZiBpbmRpeGVzCgBJbnZhbGlkIHRpbGVjLT53aW5feHh4IHZhbHVlcwoAQ2Fubm90IGhhbmRsZSBib3ggb2YgbGVzcyB0aGFuIDggYnl0ZXMKAENhbm5vdCBoYW5kbGUgWEwgYm94IG9mIGxlc3MgdGhhbiAxNiBieXRlcwoAQ29tcG9uZW50IGluZGV4ICV1IHVzZWQgc2V2ZXJhbCB0aW1lcwoASW52YWxpZCBQQ0xSIGJveC4gUmVwb3J0cyAlZCBlbnRyaWVzCgBOb3QgZW5vdWdoIG1lbW9yeSB0byBjcmVhdGUgVGFnLXRyZWUgbm9kZXMKAENhbm5vdCB0YWtlIGluIGNoYXJnZSBtY3QgZGF0YSB3aXRoaW4gbXVsdGlwbGUgTUNUIHJlY29yZHMKAENhbm5vdCBkZWNvZGUgdGlsZSwgbWVtb3J5IGVycm9yCgBvcGpfajJrX2FwcGx5X25iX3RpbGVfcGFydHNfY29ycmVjdGlvbiBlcnJvcgoAUHJvYmxlbSB3aXRoIHNraXBwaW5nIEpQRUcyMDAwIGJveCwgc3RyZWFtIGVycm9yCgBQcm9ibGVtIHdpdGggcmVhZGluZyBKUEVHMjAwMCBib3gsIHN0cmVhbSBlcnJvcgoAVW5rbm93biBtYXJrZXIKAE5vdCBlbm91Z2ggbWVtb3J5IHRvIGFkZCB0bCBtYXJrZXIKAE5vdCBlbm91Z2ggbWVtb3J5IHRvIGFkZCBtaCBtYXJrZXIKAE5vdCBlbm91Z2ggbWVtb3J5IHRvIHRha2UgaW4gY2hhcmdlIFNJWiBtYXJrZXIKAEVycm9yIHJlYWRpbmcgUFBUIG1hcmtlcgoATm90IGVub3VnaCBtZW1vcnkgdG8gcmVhZCBQUFQgbWFya2VyCgBFcnJvciByZWFkaW5nIFNPVCBtYXJrZXIKAEVycm9yIHJlYWRpbmcgUExUIG1hcmtlcgoARXJyb3IgcmVhZGluZyBNQ1QgbWFya2VyCgBOb3QgZW5vdWdoIG1lbW9yeSB0byByZWFkIE1DVCBtYXJrZXIKAE5vdCBlbm91Z2ggc3BhY2UgZm9yIGV4cGVjdGVkIFNPUCBtYXJrZXIKAEV4cGVjdGVkIFNPUCBtYXJrZXIKAEVycm9yIHJlYWRpbmcgTUNPIG1hcmtlcgoARXJyb3IgcmVhZGluZyBSR04gbWFya2VyCgBFcnJvciByZWFkaW5nIFBQTSBtYXJrZXIKAE5vdCBlbm91Z2ggbWVtb3J5IHRvIHJlYWQgUFBNIG1hcmtlcgoARXJyb3IgcmVhZGluZyBUTE0gbWFya2VyCgBFcnJvciByZWFkaW5nIFBMTSBtYXJrZXIKAE5vdCBlbm91Z2ggc3BhY2UgZm9yIGV4cGVjdGVkIEVQSCBtYXJrZXIKAEV4cGVjdGVkIEVQSCBtYXJrZXIKAEVycm9yIHJlYWRpbmcgQ1JHIG1hcmtlcgoAVW5rbm93biBwcm9ncmVzc2lvbiBvcmRlciBpbiBDT0QgbWFya2VyCgBVbmtub3duIFNjb2QgdmFsdWUgaW4gQ09EIG1hcmtlcgoARXJyb3IgcmVhZGluZyBDT0QgbWFya2VyCgBFcnJvciByZWFkaW5nIFFDRCBtYXJrZXIKAENycm9yIHJlYWRpbmcgQ0JEIG1hcmtlcgoARXJyb3IgcmVhZGluZyBQT0MgbWFya2VyCgBFcnJvciByZWFkaW5nIENPQyBtYXJrZXIKAEVycm9yIHJlYWRpbmcgUUNDIG1hcmtlcgoARXJyb3IgcmVhZGluZyBNQ0MgbWFya2VyCgBOb3QgZW5vdWdoIG1lbW9yeSB0byByZWFkIE1DQyBtYXJrZXIKAHJlcXVpcmVkIFNJWiBtYXJrZXIgbm90IGZvdW5kIGluIG1haW4gaGVhZGVyCgByZXF1aXJlZCBDT0QgbWFya2VyIG5vdCBmb3VuZCBpbiBtYWluIGhlYWRlcgoAcmVxdWlyZWQgUUNEIG1hcmtlciBub3QgZm91bmQgaW4gbWFpbiBoZWFkZXIKAE5vdCBlbm91Z2ggbWVtb3J5IHRvIGhhbmRsZSBqcGVnMjAwMCBmaWxlIGhlYWRlcgoATm90IGVub3VnaCBtZW1vcnkgdG8gcmVhZCBoZWFkZXIKAEVycm9yIHdpdGggSlAgU2lnbmF0dXJlIDogYmFkIG1hZ2ljIG51bWJlcgoASW4gU09UIG1hcmtlciwgVFBTb3QgKCVkKSBpcyBub3QgdmFsaWQgcmVnYXJkcyB0byB0aGUgY3VycmVudCBudW1iZXIgb2YgdGlsZS1wYXJ0ICglZCksIGdpdmluZyB1cAoASW4gU09UIG1hcmtlciwgVFBTb3QgKCVkKSBpcyBub3QgdmFsaWQgcmVnYXJkcyB0byB0aGUgcHJldmlvdXMgbnVtYmVyIG9mIHRpbGUtcGFydCAoJWQpLCBnaXZpbmcgdXAKAEluIFNPVCBtYXJrZXIsIFRQU290ICglZCkgaXMgbm90IHZhbGlkIHJlZ2FyZHMgdG8gdGhlIGN1cnJlbnQgbnVtYmVyIG9mIHRpbGUtcGFydCAoaGVhZGVyKSAoJWQpLCBnaXZpbmcgdXAKAHRpbGVzIHJlcXVpcmUgYXQgbGVhc3Qgb25lIHJlc29sdXRpb24KAE1hcmtlciBpcyBub3QgY29tcGxpYW50IHdpdGggaXRzIHBvc2l0aW9uCgBQcm9ibGVtIHdpdGggc2VlayBmdW5jdGlvbgoARXJyb3IgcmVhZGluZyBTUENvZCBTUENvYyBlbGVtZW50LCBJbnZhbGlkIGNibGt3L2NibGtoIGNvbWJpbmF0aW9uCgBJbnZhbGlkIG11bHRpcGxlIGNvbXBvbmVudCB0cmFuc2Zvcm1hdGlvbgoAQ2Fubm90IHRha2UgaW4gY2hhcmdlIGNvbGxlY3Rpb25zIG90aGVyIHRoYW4gYXJyYXkgZGVjb3JyZWxhdGlvbgoAVG9vIGxhcmdlIHZhbHVlIGZvciBOcHBtCgBOb3QgZW5vdWdoIGJ5dGVzIHRvIHJlYWQgTnBwbQoAYmFkIHBsYWNlZCBqcGVnIGNvZGVzdHJlYW0KAAkgTWFpbiBoZWFkZXIgc3RhcnQgcG9zaXRpb249JWxsaQoJIE1haW4gaGVhZGVyIGVuZCBwb3NpdGlvbj0lbGxpCgBNYXJrZXIgc2l6ZSBpbmNvbnNpc3RlbnQgd2l0aCBzdHJlYW0gbGVuZ3RoCgBUaWxlIHBhcnQgbGVuZ3RoIHNpemUgaW5jb25zaXN0ZW50IHdpdGggc3RyZWFtIGxlbmd0aAoAQ2Fubm90IHRha2UgaW4gY2hhcmdlIG11bHRpcGxlIGRhdGEgc3Bhbm5pbmcKAFdyb25nIGZsYWcKAEVycm9yIHdpdGggRlRZUCBzaWduYXR1cmUgQm94IHNpemUKAEVycm9yIHdpdGggSlAgc2lnbmF0dXJlIEJveCBzaXplCgBJbnZhbGlkIHByZWNpbmN0IHNpemUKAEluY29uc2lzdGVudCBtYXJrZXIgc2l6ZQoASW52YWxpZCBtYXJrZXIgc2l6ZQoARXJyb3Igd2l0aCBTSVogbWFya2VyIHNpemUKAE5vdCBlbm91Z2ggbWVtb3J5IHRvIGFkZCBhIG5ldyB2YWxpZGF0aW9uIHByb2NlZHVyZQoATm90IGVub3VnaCBtZW1vcnkgdG8gZGVjb2RlIHRpbGUKAEZhaWxlZCB0byBkZWNvZGUgdGhlIGNvZGVzdHJlYW0gaW4gdGhlIEpQMiBmaWxlCgBDYW5ub3QgdGFrZSBpbiBjaGFyZ2UgY29sbGVjdGlvbnMgd2l0aCBpbmRpeCBzaHVmZmxlCgBDYW5ub3QgYWxsb2NhdGUgVGllciAxIGhhbmRsZQoATm8gZGVjb2RlZCBhcmVhIHBhcmFtZXRlcnMsIHNldCB0aGUgZGVjb2RlZCBhcmVhIHRvIHRoZSB3aG9sZSBpbWFnZQoATm90IGVub3VnaCBtZW1vcnkgdG8gY3JlYXRlIFRhZy10cmVlCgBOb3QgZW5vdWdoIG1lbW9yeSB0byByZWluaXRpYWxpemUgdGhlIHRhZyB0cmVlCgBFcnJvciByZWFkaW5nIFNQQ29kIFNQQ29jIGVsZW1lbnQsIEludmFsaWQgdHJhbnNmb3JtYXRpb24gZm91bmQKAEVycm9yIHJlYWRpbmcgU1BDb2QgU1BDb2MgZWxlbWVudC4gVW5zdXBwb3J0ZWQgTWl4ZWQgSFQgY29kZS1ibG9jayBzdHlsZSBmb3VuZAoAVGlsZSBZIGNvb3JkaW5hdGVzIGFyZSBub3Qgc3VwcG9ydGVkCgBUaWxlIFggY29vcmRpbmF0ZXMgYXJlIG5vdCBzdXBwb3J0ZWQKAEltYWdlIGNvb3JkaW5hdGVzIGFib3ZlIElOVF9NQVggYXJlIG5vdCBzdXBwb3J0ZWQKAEpQRUcyMDAwIEhlYWRlciBib3ggbm90IHJlYWQgeWV0LCAnJWMlYyVjJWMnIGJveCB3aWxsIGJlIGlnbm9yZWQKAG9wal9qMmtfbWVyZ2VfcHB0KCkgaGFzIGFscmVhZHkgYmVlbiBjYWxsZWQKAE5vdCBlbm91Z2ggbWVtb3J5IHRvIHJlYWQgU09UIG1hcmtlci4gVGlsZSBpbmRleCBhbGxvY2F0aW9uIGZhaWxlZAoASWdub3JpbmcgaWhkciBib3guIEZpcnN0IGloZHIgYm94IGFscmVhZHkgcmVhZAoAWnBwdCAldSBhbHJlYWR5IHJlYWQKAFpwcG0gJXUgYWxyZWFkeSByZWFkCgBQVEVSTSBjaGVjayBmYWlsdXJlOiAlZCBzeW50aGV0aXplZCAweEZGIG1hcmtlcnMgcmVhZAoACQkJIGNibGt3PTJeJWQKAAkJCSBjYmxraD0yXiVkCgAJCQkgcW50c3R5PSVkCgAlcyBkeD0lZCwgZHk9JWQKAAkJCSByb2lzaGlmdD0lZAoACQkJIG51bWdiaXRzPSVkCgAJCSBudW1sYXllcnM9JWQKACVzIG51bWNvbXBzPSVkCgBvcGpfanAyX2FwcGx5X2NkZWY6IGFjbj0lZCwgbnVtY29tcHM9JWQKAG9wal9qcDJfYXBwbHlfY2RlZjogY249JWQsIG51bWNvbXBzPSVkCgAJCQkgbnVtcmVzb2x1dGlvbnM9JWQKAAkJIHR5cGU9JSN4LCBwb3M9JWxsaSwgbGVuPSVkCgAlcyBzZ25kPSVkCgAJCQkgcW1mYmlkPSVkCgAlcyBwcmVjPSVkCgAJCSBuYiBvZiB0aWxlLXBhcnQgaW4gdGlsZSBbJWRdPSVkCgAlcyB4MT0lZCwgeTE9JWQKACVzIHgwPSVkLCB5MD0lZAoARmFpbGVkIHRvIGRlY29kZSB0aWxlICVkLyVkCgBTZXR0aW5nIGRlY29kaW5nIGFyZWEgdG8gJWQsJWQsJWQsJWQKAEZhaWxlZCB0byBkZWNvZGUgY29tcG9uZW50ICVkCgBJbnZhbGlkIHZhbHVlIGZvciBudW1yZXNvbHV0aW9ucyA6ICVkLCBtYXggdmFsdWUgaXMgc2V0IGluIG9wZW5qcGVnLmggYXQgJWQKAEludmFsaWQgY29tcG9uZW50IG51bWJlcjogJWQsIHJlZ2FyZGluZyB0aGUgbnVtYmVyIG9mIGNvbXBvbmVudHMgJWQKAFRvbyBtYW55IFBPQ3MgJWQKAEludmFsaWQgdGlsZSBudW1iZXIgJWQKAEludmFsaWQgdGlsZSBwYXJ0IGluZGV4IGZvciB0aWxlIG51bWJlciAlZC4gR290ICVkLCBleHBlY3RlZCAlZAoARXJyb3Igd2l0aCBTSVogbWFya2VyOiBudW1iZXIgb2YgY29tcG9uZW50IGlzIGlsbGVnYWwgLT4gJWQKAE5vdCBlbm91Z2ggbWVtb3J5IGZvciBjaWVsYWIKAENhbm5vdCBhbGxvY2F0ZSBjYmxrLT5kZWNvZGVkX2RhdGEKAEZhaWxlZCB0byBtZXJnZSBQUFQgZGF0YQoARmFpbGVkIHRvIG1lcmdlIFBQTSBkYXRhCgBJbnZhbGlkIG51bWJlciBvZiBsYXllcnMgaW4gQ09EIG1hcmtlciA6ICVkIG5vdCBpbiByYW5nZSBbMS02NTUzNV0KACVzOiVkOmNvbG9yX2NteWtfdG9fcmdiCglDQU4gTk9UIENPTlZFUlQKACVzOiVkOmNvbG9yX2VzeWNjX3RvX3JnYgoJQ0FOIE5PVCBDT05WRVJUCgAlczolZDpjb2xvcl9zeWNjX3RvX3JnYgoJQ0FOIE5PVCBDT05WRVJUCgBTdHJlYW0gdG9vIHNob3J0LCBleHBlY3RlZCBTT1QKAFVuYWJsZSB0byBzZXQgdDEgaGFuZGxlIGFzIFRMUwoAU3RyZWFtIGRvZXMgbm90IGVuZCB3aXRoIEVPQwoAQ2Fubm90IGhhbmRsZSBib3ggc2l6ZXMgaGlnaGVyIHRoYW4gMl4zMgoAb3BqX3BpX25leHRfbHJjcCgpOiBpbnZhbGlkIGNvbXBubzAvY29tcG5vMQoAb3BqX3BpX25leHRfcmxjcCgpOiBpbnZhbGlkIGNvbXBubzAvY29tcG5vMQoAb3BqX3BpX25leHRfY3BybCgpOiBpbnZhbGlkIGNvbXBubzAvY29tcG5vMQoAb3BqX3BpX25leHRfcGNybCgpOiBpbnZhbGlkIGNvbXBubzAvY29tcG5vMQoAb3BqX3BpX25leHRfcnBjbCgpOiBpbnZhbGlkIGNvbXBubzAvY29tcG5vMQoAb3BqX3QxX2RlY29kZV9jYmxrKCk6IHVuc3VwcG9ydGVkIGJwbm9fcGx1c19vbmUgPSAlZCA+PSAzMQoARmFpbGVkIHRvIGRlY29kZSB0aWxlIDEvMQoASW5zdWZmaWNpZW50IGRhdGEgZm9yIENNQVAgYm94LgoATmVlZCB0byByZWFkIGEgUENMUiBib3ggYmVmb3JlIHRoZSBDTUFQIGJveC4KAEluc3VmZmljaWVudCBkYXRhIGZvciBDREVGIGJveC4KAE51bWJlciBvZiBjaGFubmVsIGRlc2NyaXB0aW9uIGlzIGVxdWFsIHRvIHplcm8gaW4gQ0RFRiBib3guCgBTdHJlYW0gZXJyb3Igd2hpbGUgcmVhZGluZyBKUDIgSGVhZGVyIGJveDogbm8gJ2loZHInIGJveC4KAE5vbiBjb25mb3JtYW50IGNvZGVzdHJlYW0gVFBzb3Q9PVROc290LgoAU3RyZWFtIGVycm9yIHdoaWxlIHJlYWRpbmcgSlAyIEhlYWRlciBib3g6IGJveCBsZW5ndGggaXMgaW5jb25zaXN0ZW50LgoAQm94IGxlbmd0aCBpcyBpbmNvbnNpc3RlbnQuCgBSZXNvbHV0aW9uIGZhY3RvciBpcyBncmVhdGVyIHRoYW4gdGhlIG1heGltdW0gcmVzb2x1dGlvbiBpbiB0aGUgY29tcG9uZW50LgoAQ29tcG9uZW50IG1hcHBpbmcgc2VlbXMgd3JvbmcuIFRyeWluZyB0byBjb3JyZWN0LgoASW5jb21wbGV0ZSBjaGFubmVsIGRlZmluaXRpb25zLgoATWFsZm9ybWVkIEhUIGNvZGVibG9jay4gSW52YWxpZCBjb2RlYmxvY2sgbGVuZ3RoIHZhbHVlcy4KAFdlIGRvIG5vdCBzdXBwb3J0IG1vcmUgdGhhbiAzIGNvZGluZyBwYXNzZXMgaW4gYW4gSFQgY29kZWJsb2NrOyBUaGlzIGNvZGVibG9ja3MgaGFzICVkIHBhc3Nlcy4KAE1hbGZvcm1lZCBIVCBjb2RlYmxvY2suIERlY29kaW5nIHRoaXMgY29kZWJsb2NrIGlzIHN0b3BwZWQuIFRoZXJlIGFyZSAlZCB6ZXJvIGJpdHBsYW5lcyBpbiAlZCBiaXRwbGFuZXMuCgBDYW5ub3QgdGFrZSBpbiBjaGFyZ2UgbXVsdGlwbGUgdHJhbnNmb3JtYXRpb24gc3RhZ2VzLgoAVW5rbm93biBtYXJrZXIgaGFzIGJlZW4gZGV0ZWN0ZWQgYW5kIGdlbmVyYXRlZCBlcnJvci4KAENvZGVjIHByb3ZpZGVkIHRvIHRoZSBvcGpfc2V0dXBfZGVjb2RlciBmdW5jdGlvbiBpcyBub3QgYSBkZWNvbXByZXNzb3IgaGFuZGxlci4KAENvZGVjIHByb3ZpZGVkIHRvIHRoZSBvcGpfcmVhZF9oZWFkZXIgZnVuY3Rpb24gaXMgbm90IGEgZGVjb21wcmVzc29yIGhhbmRsZXIuCgBUaWxlcyBkb24ndCBhbGwgaGF2ZSB0aGUgc2FtZSBkaW1lbnNpb24uIFNraXAgdGhlIE1DVCBzdGVwLgoATnVtYmVyIG9mIGNvbXBvbmVudHMgKCVkKSBpcyBpbmNvbnNpc3RlbnQgd2l0aCBhIE1DVC4gU2tpcCB0aGUgTUNUIHN0ZXAuCgBKUDIgYm94IHdoaWNoIGFyZSBhZnRlciB0aGUgY29kZXN0cmVhbSB3aWxsIG5vdCBiZSByZWFkIGJ5IHRoaXMgZnVuY3Rpb24uCgBNYWxmb3JtZWQgSFQgY29kZWJsb2NrLiBXaGVuIHRoZSBudW1iZXIgb2YgemVybyBwbGFuZXMgYml0cGxhbmVzIGlzIGVxdWFsIHRvIHRoZSBudW1iZXIgb2YgYml0cGxhbmVzLCBvbmx5IHRoZSBjbGVhbnVwIHBhc3MgbWFrZXMgc2Vuc2UsIGJ1dCB3ZSBoYXZlICVkIHBhc3NlcyBpbiB0aGlzIGNvZGVibG9jay4gVGhlcmVmb3JlLCBvbmx5IHRoZSBjbGVhbnVwIHBhc3Mgd2lsbCBiZSBkZWNvZGVkLiBUaGlzIG1lc3NhZ2Ugd2lsbCBub3QgYmUgZGlzcGxheWVkIGFnYWluLgoASW1hZ2UgaGFzIGxlc3MgY29tcG9uZW50cyB0aGFuIGNvZGVzdHJlYW0uCgBOZWVkIHRvIGRlY29kZSB0aGUgbWFpbiBoZWFkZXIgYmVmb3JlIGJlZ2luIHRvIGRlY29kZSB0aGUgcmVtYWluaW5nIGNvZGVzdHJlYW0uCgBQc290IHZhbHVlIG9mIHRoZSBjdXJyZW50IHRpbGUtcGFydCBpcyBlcXVhbCB0byB6ZXJvLCB3ZSBhc3N1bWluZyBpdCBpcyB0aGUgbGFzdCB0aWxlLXBhcnQgb2YgdGhlIGNvZGVzdHJlYW0uCgBBIG1hbGZvcm1lZCBjb2RlYmxvY2sgdGhhdCBoYXMgbW9yZSB0aGFuIG9uZSBjb2RpbmcgcGFzcywgYnV0IHplcm8gbGVuZ3RoIGZvciAybmQgYW5kIHBvdGVudGlhbGx5IHRoZSAzcmQgcGFzcyBpbiBhbiBIVCBjb2RlYmxvY2suCgAJCQkgdGlsZS1wYXJ0WyVkXTogc3Rhcl9wb3M9JWxsaSwgZW5kX2hlYWRlcj0lbGxpLCBlbmRfcG9zPSVsbGkuCgBUaWxlICV1IGhhcyBUUHNvdCA9PSAwIGFuZCBUTnNvdCA9PSAwLCBidXQgbm8gb3RoZXIgdGlsZS1wYXJ0cyB3ZXJlIGZvdW5kLiBFT0MgaXMgYWxzbyBtaXNzaW5nLgoAQ29tcG9uZW50ICVkIGRvZXNuJ3QgaGF2ZSBhIG1hcHBpbmcuCgBBIGNvbmZvcm1pbmcgSlAyIHJlYWRlciBzaGFsbCBpZ25vcmUgYWxsIENvbG91ciBTcGVjaWZpY2F0aW9uIGJveGVzIGFmdGVyIHRoZSBmaXJzdCwgc28gd2UgaWdub3JlIHRoaXMgb25lLgoAVGhlIHNpZ25hdHVyZSBib3ggbXVzdCBiZSB0aGUgZmlyc3QgYm94IGluIHRoZSBmaWxlLgoAVGhlICBib3ggbXVzdCBiZSB0aGUgZmlyc3QgYm94IGluIHRoZSBmaWxlLgoAVGhlIGZ0eXAgYm94IG11c3QgYmUgdGhlIHNlY29uZCBib3ggaW4gdGhlIGZpbGUuCgBGYWlsZWQgdG8gZGVjb2RlLgoATWFsZm9ybWVkIEhUIGNvZGVibG9jay4gSW5jb3JyZWN0IE1FTCBzZWdtZW50IHNlcXVlbmNlLgoAQ29tcG9uZW50ICVkIGlzIG1hcHBlZCB0d2ljZS4KAE9ubHkgb25lIENNQVAgYm94IGlzIGFsbG93ZWQuCgBXZSBuZWVkIGFuIGltYWdlIHByZXZpb3VzbHkgY3JlYXRlZC4KAElIRFIgYm94X21pc3NpbmcuIFJlcXVpcmVkLgoASlAySCBib3ggbWlzc2luZy4gUmVxdWlyZWQuCgBOb3Qgc3VyZSBob3cgdGhhdCBoYXBwZW5lZC4KAE1haW4gaGVhZGVyIGhhcyBiZWVuIGNvcnJlY3RseSBkZWNvZGVkLgoAVGlsZSAlZC8lZCBoYXMgYmVlbiBkZWNvZGVkLgoASGVhZGVyIG9mIHRpbGUgJWQgLyAlZCBoYXMgYmVlbiByZWFkLgoARW1wdHkgU09UIG1hcmtlciBkZXRlY3RlZDogUHNvdD0lZC4KAERpcmVjdCB1c2UgYXQgIyVkIGhvd2V2ZXIgcGNvbD0lZC4KAEltcGxlbWVudGF0aW9uIGxpbWl0YXRpb246IGZvciBwYWxldHRlIG1hcHBpbmcsIHBjb2xbJWRdIHNob3VsZCBiZSBlcXVhbCB0byAlZCwgYnV0IGlzIGVxdWFsIHRvICVkLgoASW52YWxpZCBjb21wb25lbnQvcGFsZXR0ZSBpbmRleCBmb3IgZGlyZWN0IG1hcHBpbmcgJWQuCgBJbnZhbGlkIHZhbHVlIGZvciBjbWFwWyVkXS5tdHlwID0gJWQuCgBQc290IHZhbHVlIGlzIG5vdCBjb3JyZWN0IHJlZ2FyZHMgdG8gdGhlIEpQRUcyMDAwIG5vcm06ICVkLgoATWFsZm9ybWVkIEhUIGNvZGVibG9jay4gVkxDIGNvZGUgcHJvZHVjZXMgc2lnbmlmaWNhbnQgc2FtcGxlcyBvdXRzaWRlIHRoZSBjb2RlYmxvY2sgYXJlYS4KAFVuZXhwZWN0ZWQgT09NLgoAMzIgYml0cyBhcmUgbm90IGVub3VnaCB0byBkZWNvZGUgdGhpcyBjb2RlYmxvY2ssIHNpbmNlIHRoZSBudW1iZXIgb2YgYml0cGxhbmUsICVkLCBpcyBsYXJnZXIgdGhhbiAzMC4KAEJvdHRvbSBwb3NpdGlvbiBvZiB0aGUgZGVjb2RlZCBhcmVhIChyZWdpb25feTE9JWQpIHNob3VsZCBiZSA+IDAuCgBSaWdodCBwb3NpdGlvbiBvZiB0aGUgZGVjb2RlZCBhcmVhIChyZWdpb25feDE9JWQpIHNob3VsZCBiZSA+IDAuCgBVcCBwb3NpdGlvbiBvZiB0aGUgZGVjb2RlZCBhcmVhIChyZWdpb25feTA9JWQpIHNob3VsZCBiZSA+PSAwLgoATGVmdCBwb3NpdGlvbiBvZiB0aGUgZGVjb2RlZCBhcmVhIChyZWdpb25feDA9JWQpIHNob3VsZCBiZSA+PSAwLgoARXJyb3IgcmVhZGluZyBQUFQgbWFya2VyOiBwYWNrZXQgaGVhZGVyIGhhdmUgYmVlbiBwcmV2aW91c2x5IGZvdW5kIGluIHRoZSBtYWluIGhlYWRlciAoUFBNIG1hcmtlcikuCgBTdGFydCB0byByZWFkIGoyayBtYWluIGhlYWRlciAoJWxsZCkuCgBCb3R0b20gcG9zaXRpb24gb2YgdGhlIGRlY29kZWQgYXJlYSAocmVnaW9uX3kxPSVkKSBpcyBvdXRzaWRlIHRoZSBpbWFnZSBhcmVhIChZc2l6PSVkKS4KAFVwIHBvc2l0aW9uIG9mIHRoZSBkZWNvZGVkIGFyZWEgKHJlZ2lvbl95MD0lZCkgaXMgb3V0c2lkZSB0aGUgaW1hZ2UgYXJlYSAoWXNpej0lZCkuCgBSaWdodCBwb3NpdGlvbiBvZiB0aGUgZGVjb2RlZCBhcmVhIChyZWdpb25feDE9JWQpIGlzIG91dHNpZGUgdGhlIGltYWdlIGFyZWEgKFhzaXo9JWQpLgoATGVmdCBwb3NpdGlvbiBvZiB0aGUgZGVjb2RlZCBhcmVhIChyZWdpb25feDA9JWQpIGlzIG91dHNpZGUgdGhlIGltYWdlIGFyZWEgKFhzaXo9JWQpLgoAQm90dG9tIHBvc2l0aW9uIG9mIHRoZSBkZWNvZGVkIGFyZWEgKHJlZ2lvbl95MT0lZCkgaXMgb3V0c2lkZSB0aGUgaW1hZ2UgYXJlYSAoWU9zaXo9JWQpLgoAVXAgcG9zaXRpb24gb2YgdGhlIGRlY29kZWQgYXJlYSAocmVnaW9uX3kwPSVkKSBpcyBvdXRzaWRlIHRoZSBpbWFnZSBhcmVhIChZT3Npej0lZCkuCgBSaWdodCBwb3NpdGlvbiBvZiB0aGUgZGVjb2RlZCBhcmVhIChyZWdpb25feDE9JWQpIGlzIG91dHNpZGUgdGhlIGltYWdlIGFyZWEgKFhPc2l6PSVkKS4KAExlZnQgcG9zaXRpb24gb2YgdGhlIGRlY29kZWQgYXJlYSAocmVnaW9uX3gwPSVkKSBpcyBvdXRzaWRlIHRoZSBpbWFnZSBhcmVhIChYT3Npej0lZCkuCgBTaXplIHggb2YgdGhlIGRlY29kZWQgY29tcG9uZW50IGltYWdlIGlzIGluY29ycmVjdCAoY29tcFslZF0udz0lZCkuCgBTaXplIHkgb2YgdGhlIGRlY29kZWQgY29tcG9uZW50IGltYWdlIGlzIGluY29ycmVjdCAoY29tcFslZF0uaD0lZCkuCgBUaWxlIHJlYWQsIGRlY29kZWQgYW5kIHVwZGF0ZWQgaXMgbm90IHRoZSBkZXNpcmVkIG9uZSAoJWQgdnMgJWQpLgoASW52YWxpZCBjb21wb25lbnQgaW5kZXggJWQgKD49ICVkKS4KAG9wal9yZWFkX2hlYWRlcigpIHNob3VsZCBiZSBjYWxsZWQgYmVmb3JlIG9wal9zZXRfZGVjb2RlZF9jb21wb25lbnRzKCkuCgBNZW1vcnkgYWxsb2NhdGlvbiBmYWlsdXJlIGluIG9wal9qcDJfYXBwbHlfcGNscigpLgoAaW1hZ2UtPmNvbXBzWyVkXS5kYXRhID09IE5VTEwgaW4gb3BqX2pwMl9hcHBseV9wY2xyKCkuCgBpbnZhbGlkIGJveCBzaXplICVkICgleCkKAEZhaWwgdG8gcmVhZCB0aGUgY3VycmVudCBtYXJrZXIgc2VnbWVudCAoJSN4KQoARXJyb3Igd2l0aCBTSVogbWFya2VyOiBJSERSIHcoJXUpIGgoJXUpIHZzLiBTSVogdygldSkgaCgldSkKAEVycm9yIHJlYWRpbmcgQ09DIG1hcmtlciAoYmFkIG51bWJlciBvZiBjb21wb25lbnRzKQoASW52YWxpZCBudW1iZXIgb2YgdGlsZXMgOiAldSB4ICV1IChtYXhpbXVtIGZpeGVkIGJ5IGpwZWcyMDAwIG5vcm0gaXMgNjU1MzUgdGlsZXMpCgBJbnZhbGlkIG51bWJlciBvZiBjb21wb25lbnRzIChpaGRyKQoATm90IGVub3VnaCBtZW1vcnkgdG8gaGFuZGxlIGltYWdlIGhlYWRlciAoaWhkcikKAFdyb25nIHZhbHVlcyBmb3I6IHcoJWQpIGgoJWQpIG51bWNvbXBzKCVkKSAoaWhkcikKAEludmFsaWQgdmFsdWVzIGZvciBjb21wID0gJWQgOiBkeD0ldSBkeT0ldSAoc2hvdWxkIGJlIGJldHdlZW4gMSBhbmQgMjU1IGFjY29yZGluZyB0byB0aGUgSlBFRzIwMDAgbm9ybSkKAEJhZCBpbWFnZSBoZWFkZXIgYm94IChiYWQgc2l6ZSkKAEJhZCBDT0xSIGhlYWRlciBib3ggKGJhZCBzaXplKQoAQmFkIEJQQ0MgaGVhZGVyIGJveCAoYmFkIHNpemUpCgBFcnJvciB3aXRoIFNJWiBtYXJrZXI6IG5lZ2F0aXZlIG9yIHplcm8gaW1hZ2Ugc2l6ZSAoJWxsZCB4ICVsbGQpCgBza2lwOiBzZWdtZW50IHRvbyBsb25nICglZCkgd2l0aCBtYXggKCVkKSBmb3IgY29kZWJsb2NrICVkIChwPSVkLCBiPSVkLCByPSVkLCBjPSVkKQoAcmVhZDogc2VnbWVudCB0b28gbG9uZyAoJWQpIHdpdGggbWF4ICglZCkgZm9yIGNvZGVibG9jayAlZCAocD0lZCwgYj0lZCwgcj0lZCwgYz0lZCkKAERlc3BpdGUgSlAyIEJQQyE9MjU1LCBwcmVjaXNpb24gYW5kL29yIHNnbmQgdmFsdWVzIGZvciBjb21wWyVkXSBpcyBkaWZmZXJlbnQgdGhhbiBjb21wWzBdOgogICAgICAgIFswXSBwcmVjKCVkKSBzZ25kKCVkKSBbJWRdIHByZWMoJWQpIHNnbmQoJWQpCgBiYWQgY29tcG9uZW50IG51bWJlciBpbiBSR04gKCVkIHdoZW4gdGhlcmUgYXJlIG9ubHkgJWQpCgBFcnJvciB3aXRoIFNJWiBtYXJrZXI6IG51bWJlciBvZiBjb21wb25lbnQgaXMgbm90IGNvbXBhdGlibGUgd2l0aCB0aGUgcmVtYWluaW5nIG51bWJlciBvZiBwYXJhbWV0ZXJzICggJWQgdnMgJWQpCgBFcnJvciB3aXRoIFNJWiBtYXJrZXI6IGludmFsaWQgdGlsZSBzaXplICh0ZHg6ICVkLCB0ZHk6ICVkKQoAQmFkIENPTFIgaGVhZGVyIGJveCAoYmFkIHNpemU6ICVkKQoAQmFkIENPTFIgaGVhZGVyIGJveCAoQ0lFTGFiLCBiYWQgc2l6ZTogJWQpCgBQVEVSTSBjaGVjayBmYWlsdXJlOiAlZCByZW1haW5pbmcgYnl0ZXMgaW4gY29kZSBibG9jayAoJWQgdXNlZCAvICVkKQoATWFsZm9ybWVkIEhUIGNvZGVibG9jay4gT25lIG9mIHRoZSBmb2xsb3dpbmcgY29uZGl0aW9uIGlzIG5vdCBtZXQ6IDIgPD0gU2N1cCA8PSBtaW4oTGN1cCwgNDA3OSkKAEludmFsaWQgdmFsdWVzIGZvciBjb21wID0gJWQgOiBwcmVjPSV1IChzaG91bGQgYmUgYmV0d2VlbiAxIGFuZCAzOCBhY2NvcmRpbmcgdG8gdGhlIEpQRUcyMDAwIG5vcm0uIE9wZW5KcGVnIG9ubHkgc3VwcG9ydHMgdXAgdG8gMzEpCgBJbnZhbGlkIGJpdCBudW1iZXIgJWQgaW4gb3BqX3QyX3JlYWRfcGFja2V0X2hlYWRlcigpCgBTdHJlYW0gZXJyb3IhCgBFcnJvciBvbiB3cml0aW5nIHN0cmVhbSEKAFN0cmVhbSByZWFjaGVkIGl0cyBlbmQgIQoARXhwZWN0ZWQgYSBTT0MgbWFya2VyIAoASW52YWxpZCBib3ggc2l6ZSAlZCBmb3IgYm94ICclYyVjJWMlYycuIE5lZWQgJWQgYnl0ZXMsICVkIGJ5dGVzIHJlbWFpbmluZyAKAE1hbGZvcm1lZCBIVCBjb2RlYmxvY2suIERlY29kaW5nIHRoaXMgY29kZWJsb2NrIGlzIHN0b3BwZWQuIFVfcSBpcyBsYXJnZXIgdGhhbiB6ZXJvIGJpdHBsYW5lcyArIDEgCgBNYWxmb3JtZWQgSFQgY29kZWJsb2NrLiBEZWNvZGluZyB0aGlzIGNvZGVibG9jayBpcyBzdG9wcGVkLiBVX3EgaXNsYXJnZXIgdGhhbiBiaXRwbGFuZXMgKyAxIAoAQ09MUiBCT1ggbWV0aCB2YWx1ZSBpcyBub3QgYSByZWd1bGFyIHZhbHVlICglZCksIHNvIHdlIHdpbGwgaWdub3JlIHRoZSBlbnRpcmUgQ29sb3VyIFNwZWNpZmljYXRpb24gYm94LiAKAFdoaWxlIHJlYWRpbmcgQ0NQX1FOVFNUWSBlbGVtZW50IGluc2lkZSBRQ0Qgb3IgUUNDIG1hcmtlciBzZWdtZW50LCBudW1iZXIgb2Ygc3ViYmFuZHMgKCVkKSBpcyBncmVhdGVyIHRvIE9QSl9KMktfTUFYQkFORFMgKCVkKS4gU28gd2UgbGltaXQgdGhlIG51bWJlciBvZiBlbGVtZW50cyBzdG9yZWQgdG8gT1BKX0oyS19NQVhCQU5EUyAoJWQpIGFuZCBza2lwIHRoZSByZXN0LiAKAEpQMiBJSERSIGJveDogY29tcHJlc3Npb24gdHlwZSBpbmRpY2F0ZSB0aGF0IHRoZSBmaWxlIGlzIG5vdCBhIGNvbmZvcm1pbmcgSlAyIGZpbGUgKCVkKSAKAFRpbGUgaW5kZXggcHJvdmlkZWQgYnkgdGhlIHVzZXIgaXMgaW5jb3JyZWN0ICVkIChtYXggPSAlZCkgCgBFcnJvciBkZWNvZGluZyBjb21wb25lbnQgJWQuClRoZSBudW1iZXIgb2YgcmVzb2x1dGlvbnMgdG8gcmVtb3ZlICglZCkgaXMgZ3JlYXRlciBvciBlcXVhbCB0aGFuIHRoZSBudW1iZXIgb2YgcmVzb2x1dGlvbnMgb2YgdGhpcyBjb21wb25lbnQg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AAABVAAAAQAAAABQAADAUAAAAUgAAAAAAAAQUAAAsFAAAAFIAAABAAAAIFAAAMBQAAABOAAAAAAAADBQAACwUAAAATgAAAEAAABAUAAAwFAAAAEwAAAAAAAAUFAAABBRAAABMAAAAQAAAGBQAAAgUQAAASQAAAAAAABwUAAAMFEAAAEkAAABAAAAgFAAAEBRAAABHAAAAAAAAJBQAABwUQAAARwAAAEAAACgUAAAgFEAAAEWAAAAAAAAkFIAAJBRAAABFgAAAQAAAKBSAACgUQAAAVYAAAAAAADQUAAAwFAAAAFWAAABAAAA4FAAALBQAAABVAAAAAAAAPBQAACwUAAAAVQAAAEAAAAAUQAAwFAAAAFRAAAAAAAAEFEAANBQAAABUQAAAQAAACBRAADgUAAAAUgAAAAAAAAwUQAA8FAAAAFIAAABAAAAQFEAAABRAAABOAAAAAAAAFBRAAAQUQAAATgAAAEAAABgUQAAIFEAAAE0AAAAAAAAcFEAADBRAAABNAAAAQAAAIBRAABAUQAAATAAAAAAAACQUQAAUFEAAAEwAAABAAAAoFEAAGBRAAABKAAAAAAAALBRAABQUQAAASgAAAEAAADAUQAAYFEAAAEkAAAAAAAA0FEAAHBRAAABJAAAAQAAAOBRAACAUQAAASIAAAAAAADwUQAAkFEAAAEiAAABAAAAAFIAAKBRAAABHAAAAAAAABBSAACwUQAAARwAAAEAAAAgUgAAwFEAAAEYAAAAAAAAMFIAANBRAAABGAAAAQAAAEBSAADgUQAAARYAAAAAAABQUgAA8FEAAAEWAAABAAAAYFIAAABSAAABFAAAAAAAAHBSAAAQUgAAARQAAAEAAACAUgAAIFIAAAESAAAAAAAAkFIAADBSAAABEgAAAQAAAKBSAABAUgAAAREAAAAAAACwUgAAUFIAAAERAAABAAAAwFIAAGBSAADBCgAAAAAAANBSAABwUgAAwQoAAAEAAADgUgAAgFIAAMEJAAAAAAAA8FIAAJBSAADBCQAAAQAAAABTAACgUgAAoQgAAAAAAAAQUwAAsFIAAKEIAAABAAAAIFMAAMBSAAAhBQAAAAAAADBTAADQUgAAIQUAAAEAAABAUwAA4FIAAEEEAAAAAAAAUFMAAPBSAABBBAAAAQAAAGBTAAAAUwAAoQIAAAAAAABwUwAAEFMAAKECAAABAAAAgFMAACBTAAAhAgAAAAAAAJBTAAAwUwAAIQIAAAEAAACgUwAAQFMAAEEBAAAAAAAAsFMAAFBTAABBAQAAAQAAAMBTAABgUwAAEQEAAAAAAADQUwAAcFMAABEBAAABAAAA4FMAAIBTAACFAAAAAAAAAPBTAACQUwAAhQAAAAEAAAAAVAAAoFMAAEkAAAAAAAAAEFQAALBTAABJAAAAAQAAACBUAADAUwAAJQAAAAAAAAAwVAAA0FMAACUAAAABAAAAQFQAAOBTAAAVAAAAAAAAAFBUAADwUwAAFQAAAAEAAABgVAAAAFQAAAkAAAAAAAAAcFQAABBUAAAJAAAAAQAAAIBUAAAgVAAABQAAAAAAAACQVAAAMFQAAAUAAAABAAAAoFQAAEBUAAABAAAAAAAAAJBUAABQVAAAAQAAAAEAAACgVAAAYFQAAAFWAAAAAAAAsFQAALBUAAABVgAAAQAAAMBUAADAVAAAAAEDAwECAwMFBgcHBgYHBwABAwMBAgMDBQYHBwYGBwcFBgcHBgYHBwgICAgICAgIBQYHBwYGBwcICAgICAgICAECAwMCAgMDBgYHBwYGBwcBAgMDAgIDAwYGBwcGBgcHBgYHBwYGBwcICAgICAgICAYGBwcGBgcHCAgICAgICAgDAwQEAwMEBAcHBwcHBwcHAwMEBAMDBAQHBwcHBwcHBwcHBwcHBwcHCAgICAgICAgHBwcHBwcHBwgICAgICAgIAwMEBAMDBAQHBwcHBwcHBwMDBAQDAwQEBwcHBwcHBwcHBwcHBwcHBwgICAgICAgIBwcHBwcHBwcICAgICAgICAECAwMCAgMDBgYHBwYGBwcBAgMDAgIDAwYGBwcGBgcHBgYHBwYGBwcICAgICAgICAYGBwcGBgcHCAgICAgICAgCAgMDAgIDAwYGBwcGBgcHAgIDAwICAwMGBgcHBgYHBwYGBwcGBgcHCAgICAgICAgGBgcHBgYHBwgICAgICAgIAwMEBAMDBAQHBwcHBwcHBwMDBAQDAwQEBwcHBwcHBwcHBwcHBwcHBwgICAgICAgIBwcHBwcHBwcICAgICAgICAMDBAQDAwQEBwcHBwcHBwcDAwQEAwMEBAcHBwcHBwcHBwcHBwcHBwcICAgICAgICAcHBwcHBwcHCAgICAgICAgAAQUGAQIGBgMDBwcDAwcHAAEFBgECBgYDAwcHAwMHBwMDBwcDAwcHBAQHBwQEBwcDAwcHAwMHBwQEBwcEBAcHAQIGBgICBgYDAwcHAwMHBwECBgYCAgYGAwMHBwMDBwcDAwcHAwMHBwQEBwcEBAcHAwMHBwMDBwcEBAcHBAQHBwUGCAgGBggIBwcICAcHCAgFBggIBgYICAcHCAgHBwgIBwcICAcHCAgHBwgIBwcICAcHCAgHBwgIBwcICAcHCAgGBggIBgYICAcHCAgHBwgIBgYICAYGCAgHBwgIBwcICAcHCAgHBwgIBwcICAcHCAgHBwgIBwcICAcHCAgHBwgIAQIGBgICBgYDAwcHAwMHBwECBgYCAgYGAwMHBwMDBwcDAwcHAwMHBwQEBwcEBAcHAwMHBwMDBwcEBAcHBAQHBwICBgYCAgYGAwMHBwMDBwcCAgYGAgIGBgMDBwcDAwcHAwMHBwMDBwcEBAcHBAQHBwMDBwcDAwcHBAQHBwQEBwcGBggIBgYICAcHCAgHBwgIBgYICAYGCAgHBwgIBwcICAcHCAgHBwgIBwcICAcHCAgHBwgIBwcICAcHCAgHBwgIBgYICAYGCAgHBwgIBwcICAYGCAgGBggIBwcICAcHCAgHBwgIBwcICAcHCAgHBwgIBwcICAcHCAgHBwgIBwcICAABAwMBAgMDBQYHBwYGBwcAAQMDAQIDAwUGBwcGBgcHBQYHBwYGBwcICAgICAgICAUGBwcGBgcHCAgICAgICAgBAgMDAgIDAwYGBwcGBgcHAQIDAwICAwMGBgcHBgYHBwYGBwcGBgcHCAgICAgICAgGBgcHBgYHBwgICAgICAgIAwMEBAMDBAQHBwcHBwcHBwMDBAQDAwQEBwcHBwcHBwcHBwcHBwcHBwgICAgICAgIBwcHBwcHBwcICAgICAgICAMDBAQDAwQEBwcHBwcHBwcDAwQEAwMEBAcHBwcHBwcHBwcHBwcHBwcICAgICAgICAcHBwcHBwcHCAgICAgICAgBAgMDAgIDAwYGBwcGBgcHAQIDAwICAwMGBgcHBgYHBwYGBwcGBgcHCAgICAgICAgGBgcHBgYHBwgICAgICAgIAgIDAwICAwMGBgcHBgYHBwICAwMCAgMDBgYHBwYGBwcGBgcHBgYHBwgICAgICAgIBgYHBwYGBwcICAgICAgICAMDBAQDAwQEBwcHBwcHBwcDAwQEAwMEBAcHBwcHBwcHBwcHBwcHBwcICAgICAgICAcHBwcHBwcHCAgICAgICAgDAwQEAwMEBAcHBwcHBwcHAwMEBAMDBAQHBwcHBwcHBwcHBwcHBwcHCAgICAgICAgHBwcHBwcHBwgICAgICAgIAAMBBAMGBAcBBAIFBAcFBwADAQQDBgQHAQQCBQQHBQcBBAIFBAcFBwIFAgUFBwUHAQQCBQQHBQcCBQIFBQcFBwMGBAcGCAcIBAcFBwcIBwgDBgQHBggHCAQHBQcHCAcIBAcFBwcIBwgFBwUHBwgHCAQHBQcHCAcIBQcFBwcIBwgBBAIFBAcFBwIFAgUFBwUHAQQCBQQHBQcCBQIFBQcFBwIFAgUFBwUHAgUCBQUHBQcCBQIFBQcFBwIFAgUFBwUHBAcFBwcIBwgFBwUHBwgHCAQHBQcHCAcIBQcFBwcIBwgFBwUHBwgHCAUHBQcHCAcIBQcFBwcIBwgFBwUHBwgHCAMGBAcGCAcIBAcFBwcIBwgDBgQHBggHCAQHBQcHCAcIBAcFBwcIBwgFBwUHBwgHCAQHBQcHCAcIBQcFBwcIBwgGCAcICAgICAcIBwgICAgIBggHCAgICAgHCAcICAgICAcIBwgICAgIBwgHCAgICAgHCAcICAgICAcIBwgICAgIBAcFBwcIBwgFBwUHBwgHCAQHBQcHCAcIBQcFBwcIBwgFBwUHBwgHCAUHBQcHCAcIBQcFBwcIBwgFBwUHBwgHCAcIBwgICAgIBwgHCAgICAgHCAcICAgICAcIBwgICAgIBwgHCAgICAgHCAcICAgICAcIBwgICAgIBwgHCAgICAgJCQoKCQkKCgwMDQsMDA0LCQkKCgkJCgoMDAsNDAwLDQwMDQ0MDAsLDAkNCgkMCgsMDAsLDAwNDQwJCwoJDAoNCQkKCgkJCgoMDA0LDAwNCwkJCgoJCQoKDAwLDQwMCw0MDA0NDAwLCwwJDQoJDAoLDAwLCwwMDQ0MCQsKCQwKDQoKCgoKCgoKDQsNCw0LDQsKCgkJCgoJCQ0LDAwNCwwMDQ0NDQsLCwsNCg0KCgsKCw0NDAwLCwwMDQoMCQoLCQwKCgkJCgoJCQsNDAwLDQwMCgoKCgoKCgoLDQsNCw0LDQsLDAwNDQwMCwoMCQoNCQwLCwsLDQ0NDQsKCwoKDQoNAEHZuwELNwEAAQABAAEAAAEBAAABAQABAAEAAQABAAAAAAEBAQEAAAAAAAEAAQAAAAABAQEBAAAAAQABAQEAQZm8AQs3AQABAAEAAQAAAQEAAAEBAAEAAQABAAEAAAAAAQEBAQAAAAAAAQABAAAAAAEBAQEAAAABAAEBAQBB2bwBCwcBAAEAAQABAEHpvAELlQIBAAEAAQABAAAAAAEBAQEAAAAAAAEAAQAAAAABAQEBAAAAAAABAAEBAQAAAQEAAAABAAEAAQABAQEBAQEBAQEAAQABAAEAAQAAAAABAQEBAAEAAAEBAAEAAAAAAQEBAQABAAEBAQEBAgAAAAQAAAAEAAAACAAAAJD/AAAMAAAAGAAAAFL/AAAUAAAAGQAAAFP/AAAUAAAAGgAAAF7/AAAUAAAAGwAAAFz/AAAUAAAAHAAAAF3/AAAUAAAAHQAAAF//AAAUAAAAHgAAAFH/AAACAAAAHwAAAFX/AAAEAAAAIAAAAFf/AAAEAAAAIQAAAFj/AAAQAAAAIgAAAGD/AAAEAAAAIwAAAGH/AAAQAAAAJAAAAJH/AEGIvwELZWP/AAAEAAAAJQAAAGT/AAAUAAAAJgAAAHT/AAAUAAAAJwAAAHj/AAAEAAAAKAAAAFD/AAAEAAAAKQAAAFn/AAAEAAAAKgAAAHX/AAAUAAAAKwAAAHf/AAAUAAAALAAAAAAAAAAUAEGAwAELNS0AAAAuAAAALwAAADAAAAAxAAAAMgAAADMAAAA0AAAAICBQajYAAABweXRmNwAAAGgycGo4AEHAwAELMnJkaGk5AAAAcmxvYzoAAABjY3BiOwAAAHJsY3A8AAAAcGFtYz0AAABmZWRjPgAAAPhiAEGAwQELQRkACwAZGRkAAAAABQAAAAAAAAkAAAAACwAAAAAAAAAAGQAKChkZGQMKBwABAAkLGAAACQYLAAALAAYZAAAAGRkZAEHRwQELIQ4AAAAAAAAAABkACw0ZGRkADQAAAgAJDgAAAAkADgAADgBBi8IBCwEMAEGXwgELFRMAAAAAEwAAAAAJDAAAAAAADAAADABBxcIBCwEQAEHRwgELFQ8AAAAEDwAAAAAJEAAAAAAAEAAAEABB/8IBCwESAEGLwwELHhEAAAAAEQAAAAAJEgAAAAAAEgAAEgAAGgAAABoaGgBBwsMBCw4aAAAAGhoaAAAAAAAACQBB88MBCwEUAEH/wwELFRcAAAAAFwAAAAAJFAAAAAAAFAAAFABBrcQBCwEWAEG5xAELJxUAAAAAFQAAAAAJFgAAAAAAFgAAFgAAMDEyMzQ1Njc4OUFCQ0RFRgBB4MQBCwmQbAEAAAAAAAUAQfTEAQsBaQBBjMUBCwpqAAAAawAAAHhoAEGkxQELAQIAQbTFAQsI//////////8AQfjFAQsBBQBBhMYBCwFsAEGcxgELDmoAAABtAAAAiGgAAAAEAEG0xgELAQEAQcTGAQsF/////wo="),e(y(B,t)[0])}();function L(){function t(){b||(b=!0,i.calledRun=!0,w(u),e(i),i.onRuntimeInitialized&&i.onRuntimeInitialized(),function(){if(i.postRun)for("function"==typeof i.postRun&&(i.postRun=[i.postRun]);i.postRun.length;)t=i.postRun.shift(),Q.unshift(t);var t;w(Q)}())}E>0||(function(){if(i.preRun)for("function"==typeof i.preRun&&(i.preRun=[i.preRun]);i.preRun.length;)t=i.preRun.shift(),d.unshift(t);var t;w(d)}(),E>0||(i.setStatus?(i.setStatus("Running..."),setTimeout((function(){setTimeout((function(){i.setStatus("")}),1),t()}),1)):t()))}if(M.q,i._malloc=M.r,i._free=M.s,i._jp2_decode=M.u,p=function t(){b||L(),b||(p=t)},i.preInit)for("function"==typeof i.preInit&&(i.preInit=[i.preInit]);i.preInit.length>0;)i.preInit.pop()();return L(),i});const XA=VA;class zA extends U{constructor(t){super(t,"JpxError")}}class $A{static#y=null;static decode(t,e){e||={},this.#y||=XA({warn:N});const A=this.#y.decode(t,e);if("string"==typeof A)throw new zA(A);return A}static cleanup(){this.#y=null}static parseImageProperties(t){let e=t.getByte();for(;e>=0;){const A=e;if(e=t.getByte(),65361==(A<<8|e)){t.skip(4);const e=t.getInt32()>>>0,A=t.getInt32()>>>0,i=t.getInt32()>>>0,s=t.getInt32()>>>0;return t.skip(16),{width:e-i,height:A-s,bitsPerComponent:8,componentsCount:t.getUint16()}}}throw new zA("No size marker found in JPX stream")}}class ti extends Re{constructor(t,e,A){super(e),this.stream=t,this.dict=t.dict,this.maybeLength=e,this.params=A}get bytes(){return L(this,"bytes",this.stream.getBytes(this.maybeLength))}ensureBuffer(t){}readBlock(t){this.decodeImage(null,t)}decodeImage(t,e){return this.eof||(t||=this.bytes,this.buffer=$A.decode(t,e),this.bufferLength=this.buffer.length,this.eof=!0),this.buffer}get canAsyncDecodeImageFromBuffer(){return this.stream.isAsync}}class ei extends Re{constructor(t,e,A){super(e),this.str=t,this.dict=t.dict,this.cachedData=0,this.bitsCached=0;const i=4096,s={earlyChange:A,codeLength:9,nextCode:258,dictionaryValues:new Uint8Array(i),dictionaryLengths:new Uint16Array(i),dictionaryPrevCodes:new Uint16Array(i),currentSequence:new Uint8Array(i),currentSequenceLength:0};for(let t=0;t<256;++t)s.dictionaryValues[t]=t,s.dictionaryLengths[t]=1;this.lzwState=s}readBits(t){let e=this.bitsCached,A=this.cachedData;for(;e<t;){const t=this.str.getByte();if(-1===t)return this.eof=!0,null;A=A<<8|t,e+=8}return this.bitsCached=e-=t,this.cachedData=A,this.lastCode=null,A>>>e&(1<<t)-1}readBlock(){let t,e,A,i=1024;const s=this.lzwState;if(!s)return;const a=s.earlyChange;let n=s.nextCode;const r=s.dictionaryValues,o=s.dictionaryLengths,g=s.dictionaryPrevCodes;let c=s.codeLength,h=s.prevCode;const l=s.currentSequence;let I=s.currentSequenceLength,C=0,B=this.bufferLength,d=this.ensureBuffer(this.bufferLength+i);for(t=0;t<512;t++){const t=this.readBits(c),s=I>0;if(t<256)l[0]=t,I=1;else{if(!(t>=258)){if(256===t){c=9,n=258,I=0;continue}this.eof=!0,delete this.lzwState;break}if(t<n)for(I=o[t],e=I-1,A=t;e>=0;e--)l[e]=r[A],A=g[A];else l[I++]=l[0]}if(s&&(g[n]=h,o[n]=o[h]+1,r[n]=l[0],n++,c=n+a&n+a-1?c:0|Math.min(Math.log(n+a)/.6931471805599453+1,12)),h=t,C+=I,i<C){do{i+=512}while(i<C);d=this.ensureBuffer(this.bufferLength+i)}for(e=0;e<I;e++)d[B++]=l[e]}s.nextCode=n,s.codeLength=c,s.prevCode=h,s.currentSequenceLength=I,this.bufferLength=B}}class Ai extends Re{constructor(t,e,A){if(super(e),!(A instanceof Ct))return t;const i=this.predictor=A.get("Predictor")||1;if(i<=1)return t;if(2!==i&&(i<10||i>15))throw new q(`Unsupported predictor: ${i}`);this.readBlock=2===i?this.readBlockTiff:this.readBlockPng,this.str=t,this.dict=t.dict;const s=this.colors=A.get("Colors")||1,a=this.bits=A.get("BPC","BitsPerComponent")||8,n=this.columns=A.get("Columns")||1;return this.pixBytes=s*a+7>>3,this.rowBytes=n*s*a+7>>3,this}readBlockTiff(){const t=this.rowBytes,e=this.bufferLength,A=this.ensureBuffer(e+t),i=this.bits,s=this.colors,a=this.str.getBytes(t);if(this.eof=!a.length,this.eof)return;let n,r=0,o=0,g=0,c=0,h=e;if(1===i&&1===s)for(n=0;n<t;++n){let t=a[n]^r;t^=t>>1,t^=t>>2,t^=t>>4,r=(1&t)<<7,A[h++]=t}else if(8===i){for(n=0;n<s;++n)A[h++]=a[n];for(;n<t;++n)A[h]=A[h-s]+a[n],h++}else if(16===i){const e=2*s;for(n=0;n<e;++n)A[h++]=a[n];for(;n<t;n+=2){const t=((255&a[n])<<8)+(255&a[n+1])+((255&A[h-e])<<8)+(255&A[h-e+1]);A[h++]=t>>8&255,A[h++]=255&t}}else{const t=new Uint8Array(s+1),h=(1<<i)-1;let l=0,I=e;const C=this.columns;for(n=0;n<C;++n)for(let e=0;e<s;++e)g<i&&(r=r<<8|255&a[l++],g+=8),t[e]=t[e]+(r>>g-i)&h,g-=i,o=o<<i|t[e],c+=i,c>=8&&(A[I++]=o>>c-8&255,c-=8);c>0&&(A[I++]=(o<<8-c)+(r&(1<<8-c)-1))}this.bufferLength+=t}readBlockPng(){const t=this.rowBytes,e=this.pixBytes,A=this.str.getByte(),i=this.str.getBytes(t);if(this.eof=!i.length,this.eof)return;const s=this.bufferLength,a=this.ensureBuffer(s+t);let n=a.subarray(s-t,s);0===n.length&&(n=new Uint8Array(t));let r,o,g,c=s;switch(A){case 0:for(r=0;r<t;++r)a[c++]=i[r];break;case 1:for(r=0;r<e;++r)a[c++]=i[r];for(;r<t;++r)a[c]=a[c-e]+i[r]&255,c++;break;case 2:for(r=0;r<t;++r)a[c++]=n[r]+i[r]&255;break;case 3:for(r=0;r<e;++r)a[c++]=(n[r]>>1)+i[r];for(;r<t;++r)a[c]=(n[r]+a[c-e]>>1)+i[r]&255,c++;break;case 4:for(r=0;r<e;++r)o=n[r],g=i[r],a[c++]=o+g;for(;r<t;++r){o=n[r];const t=n[r-e],A=a[c-e],s=A+o-t;let h=s-A;h<0&&(h=-h);let l=s-o;l<0&&(l=-l);let I=s-t;I<0&&(I=-I),g=i[r],a[c++]=h<=l&&h<=I?A+g:l<=I?o+g:t+g}break;default:throw new q(`Unsupported predictor: ${A}`)}this.bufferLength+=t}}class ii extends Re{constructor(t,e){super(e),this.str=t,this.dict=t.dict}readBlock(){const t=this.str.getBytes(2);if(!t||t.length<2||128===t[0])return void(this.eof=!0);let e,A=this.bufferLength,i=t[0];if(i<128){if(e=this.ensureBuffer(A+i+1),e[A++]=t[1],i>0){const t=this.str.getBytes(i);e.set(t,A),A+=i}}else{i=257-i;const s=t[1];e=this.ensureBuffer(A+i+1);for(let t=0;t<i;t++)e[A++]=s}this.bufferLength=A}}class si{constructor({lexer:t,xref:e,allowStreams:A=!1,recoveryMode:i=!1}){this.lexer=t,this.xref=e,this.allowStreams=A,this.recoveryMode=i,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 lt&&"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(t){if(t instanceof bt)throw t;return!1}}getObj(t=null){const e=this.buf1;if(this.shift(),e instanceof lt)switch(e.cmd){case"BI":return this.makeInlineImage(t);case"[":const A=[];for(;!Et(this.buf1,"]")&&this.buf1!==rt;)A.push(this.getObj(t));if(this.buf1===rt){if(this.recoveryMode)return A;throw new Dt("End of file inside array.")}return this.shift(),A;case"<<":const i=new Ct(this.xref);for(;!Et(this.buf1,">>")&&this.buf1!==rt;){if(!(this.buf1 instanceof ht)){x("Malformed dictionary: key must be a name object"),this.shift();continue}const e=this.buf1.name;if(this.shift(),this.buf1===rt)break;i.set(e,this.getObj(t))}if(this.buf1===rt){if(this.recoveryMode)return i;throw new Dt("End of file inside dictionary.")}return Et(this.buf2,"stream")?this.allowStreams?this.makeStream(i,t):i:(this.shift(),i);default:return e}if(Number.isInteger(e)){if(Number.isInteger(this.buf1)&&Et(this.buf2,"R")){const t=Bt.get(e,this.buf1);return this.shift(),this.shift(),t}return e}return"string"==typeof e&&t?t.decryptString(e):e}findDefaultInlineStreamEnd(t){const{knownCommands:e}=this.lexer,A=t.pos;let i,s,a=0;for(;-1!==(i=t.getByte());)if(0===a)a=69===i?1:0;else if(1===a)a=73===i?2:0;else if(32===i||10===i||13===i){s=t.pos;const A=t.peekBytes(15),n=A.length;if(0===n)break;for(let t=0;t<n;t++)if(i=A[t],(0!==i||0===A[t+1])&&10!==i&&13!==i&&(i<32||i>127)){a=0;break}if(2!==a)continue;if(!e){N("findDefaultInlineStreamEnd - `lexer.knownCommands` is undefined.");continue}const r=new ri(new ne(A.slice()),e);r._hexStringWarn=()=>{};let o=0;for(;;){const t=r.getObj();if(t===rt){a=0;break}if(t instanceof lt){const A=e[t.cmd];if(!A){a=0;break}if(A.variableArgs?o<=A.numArgs:o===A.numArgs)break;o=0}else o++}if(2===a)break}else a=0;-1===i&&(N("findDefaultInlineStreamEnd: Reached the end of the stream without finding a valid EI marker"),s&&(N('... trying to recover by using the last "EI" occurrence.'),t.skip(-(t.pos-s))));let n=4;return t.skip(-n),i=t.peekByte(),t.skip(n),Ut(i)||n--,t.pos-n-A}findDCTDecodeInlineStreamEnd(t){const e=t.pos;let A,i,s=!1;for(;-1!==(A=t.getByte());)if(255===A){switch(t.getByte()){case 0:break;case 255:t.skip(-1);break;case 217:s=!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:i=t.getUint16(),i>2?t.skip(i-2):t.skip(-2)}if(s)break}const a=t.pos-e;return-1===A?(N("Inline DCTDecode image stream: EOI marker not found, searching for /EI/ instead."),t.skip(-a),this.findDefaultInlineStreamEnd(t)):(this.inlineStreamSkipEI(t),a)}findASCII85DecodeInlineStreamEnd(t){const e=t.pos;let A;for(;-1!==(A=t.getByte());)if(126===A){const e=t.pos;for(A=t.peekByte();Ut(A);)t.skip(),A=t.peekByte();if(62===A){t.skip();break}if(t.pos>e){const e=t.peekBytes(2);if(69===e[0]&&73===e[1])break}}const i=t.pos-e;return-1===A?(N("Inline ASCII85Decode image stream: EOD marker not found, searching for /EI/ instead."),t.skip(-i),this.findDefaultInlineStreamEnd(t)):(this.inlineStreamSkipEI(t),i)}findASCIIHexDecodeInlineStreamEnd(t){const e=t.pos;let A;for(;-1!==(A=t.getByte())&&62!==A;);const i=t.pos-e;return-1===A?(N("Inline ASCIIHexDecode image stream: EOD marker not found, searching for /EI/ instead."),t.skip(-i),this.findDefaultInlineStreamEnd(t)):(this.inlineStreamSkipEI(t),i)}inlineStreamSkipEI(t){let e,A=0;for(;-1!==(e=t.getByte());)if(0===A)A=69===e?1:0;else if(1===A)A=73===e?2:0;else if(2===A)break}makeInlineImage(t){const e=this.lexer,A=e.stream,i=Object.create(null);let s;for(;!Et(this.buf1,"ID")&&this.buf1!==rt;){if(!(this.buf1 instanceof ht))throw new q("Dictionary key must be a name object");const e=this.buf1.name;if(this.shift(),this.buf1===rt)break;i[e]=this.getObj(t)}-1!==e.beginInlineImagePos&&(s=A.pos-e.beginInlineImagePos);const a=this.xref.fetchIfRef(i.F||i.Filter);let n;if(a instanceof ht)n=a.name;else if(Array.isArray(a)){const t=this.xref.fetchIfRef(a[0]);t instanceof ht&&(n=t.name)}const r=A.pos;let o,g;switch(n){case"DCT":case"DCTDecode":o=this.findDCTDecodeInlineStreamEnd(A);break;case"A85":case"ASCII85Decode":o=this.findASCII85DecodeInlineStreamEnd(A);break;case"AHx":case"ASCIIHexDecode":o=this.findASCIIHexDecodeInlineStreamEnd(A);break;default:o=this.findDefaultInlineStreamEnd(A)}if(o<1e3&&s>0){const t=A.pos;A.pos=e.beginInlineImagePos,g=function(t){const e=[],A=t.length;let i=0;for(;i<A-1;)e.push(t[i++]<<8|t[i++]);return i<A&&e.push(t[i]),A+"_"+String.fromCharCode.apply(null,e)}(A.getBytes(s+o)),A.pos=t;const i=this.imageCache[g];if(void 0!==i)return this.buf2=lt.get("EI"),this.shift(),i.reset(),i}const c=new Ct(this.xref);for(const t in i)c.set(t,i[t]);let h=A.makeSubStream(r,o,c);return t&&(h=t.createStream(h,o)),h=this.filter(h,c,o),h.dict=c,void 0!==g&&(h.cacheKey="inline_img_"+ ++this._imageId,this.imageCache[g]=h),this.buf2=lt.get("EI"),this.shift(),h}#w(t){const{stream:e}=this.lexer;e.pos=t;const A=new Uint8Array([101,110,100]),i=A.length,s=[new Uint8Array([115,116,114,101,97,109]),new Uint8Array([115,116,101,97,109]),new Uint8Array([115,116,114,101,97])],a=9-i;for(;e.pos<e.end;){const n=e.peekBytes(2048),r=n.length-9;if(r<=0)break;let o=0;for(;o<r;){let r=0;for(;r<i&&n[o+r]===A[r];)r++;if(r>=i){let i=!1;for(const t of s){const e=t.length;let s=0;for(;s<e&&n[o+r+s]===t[s];)s++;if(s>=a){i=!0;break}if(s>=e){Ut(n[o+r+s])&&(x(`Found "${_([...A,...t])}" when searching for endstream command.`),i=!0);break}}if(i)return e.pos+=o,e.pos-t}o++}e.pos+=r}return-1}makeStream(t,e){const A=this.lexer;let i=A.stream;A.skipToNextLine();const s=i.pos-1;let a=t.get("Length");if(Number.isInteger(a)||(x(`Bad length "${a&&a.toString()}" in stream.`),a=0),i.pos=s+a,A.nextChar(),this.tryShift()&&Et(this.buf2,"endstream"))this.shift();else{if(a=this.#w(s),a<0)throw new q("Missing endstream command.");A.nextChar(),this.shift(),this.shift()}return this.shift(),i=i.makeSubStream(s,a,t),e&&(i=e.createStream(i,a)),i=this.filter(i,t,a),i.dict=t,i}filter(t,e,A){let i=e.get("F","Filter"),s=e.get("DP","DecodeParms");if(i instanceof ht)return Array.isArray(s)&&N("/DecodeParms should not be an Array, when /Filter is a Name."),this.makeFilter(t,i.name,A,s);let a=A;if(Array.isArray(i)){const e=i,A=s;for(let n=0,r=e.length;n<r;++n){if(i=this.xref.fetchIfRef(e[n]),!(i instanceof ht))throw new q(`Bad filter name "${i}"`);s=null,Array.isArray(A)&&n in A&&(s=this.xref.fetchIfRef(A[n])),t=this.makeFilter(t,i.name,a,s),a=null}}return t}makeFilter(t,e,A,i){if(0===A)return N(`Empty "${e}" stream.`),new oe;try{switch(e){case"Fl":case"FlateDecode":return i?new Ai(new Ze(t,A),A,i):new Ze(t,A);case"LZW":case"LZWDecode":let e=1;return i?(i.has("EarlyChange")&&(e=i.get("EarlyChange")),new Ai(new ei(t,A,e),A,i)):new ei(t,A,e);case"DCT":case"DCTDecode":return new ZA(t,A,i);case"JPX":case"JPXDecode":return new ti(t,A,i);case"A85":case"ASCII85Decode":return new Ne(t,A);case"AHx":case"ASCIIHexDecode":return new ve(t,A);case"CCF":case"CCITTFaxDecode":return new Ke(t,A,i);case"RL":case"RunLengthDecode":return new ii(t,A);case"JBIG2Decode":return new kA(t,A,i)}return N(`Filter "${e}" is not supported.`),t}catch(t){if(t instanceof bt)throw t;return N(`Invalid stream: "${t}"`),new oe}}}const ai=[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 ni(t){return t>=48&&t<=57?15&t:t>=65&&t<=70||t>=97&&t<=102?9+(15&t):-1}class ri{constructor(t,e=null){this.stream=t,this.nextChar(),this.strBuf=[],this.knownCommands=e,this._hexStringNumWarn=0,this.beginInlineImagePos=-1}nextChar(){return this.currentChar=this.stream.getByte()}peekChar(){return this.stream.peekByte()}getNumber(){let t=this.currentChar,e=!1,A=0,i=1;if(45===t?(i=-1,t=this.nextChar(),45===t&&(t=this.nextChar())):43===t&&(t=this.nextChar()),10===t||13===t)do{t=this.nextChar()}while(10===t||13===t);if(46===t&&(A=10,t=this.nextChar()),t<48||t>57){const e=`Invalid number: ${String.fromCharCode(t)} (charCode ${t})`;if(Ut(t)||-1===t)return x(`Lexer.getNumber - "${e}".`),0;throw new q(e)}let s=t-48,a=0,n=1;for(;(t=this.nextChar())>=0;)if(t>=48&&t<=57){const i=t-48;e?a=10*a+i:(0!==A&&(A*=10),s=10*s+i)}else if(46===t){if(0!==A)break;A=1}else if(45===t)N("Badly formatted number: minus sign in the middle");else{if(69!==t&&101!==t)break;if(t=this.peekChar(),43===t||45===t)n=45===t?-1:1,this.nextChar();else if(t<48||t>57)break;e=!0}return 0!==A&&(s/=A),e&&(s*=10**(n*a)),i*s}getString(){let t=1,e=!1;const A=this.strBuf;A.length=0;let i=this.nextChar();for(;;){let s=!1;switch(0|i){case-1:N("Unterminated string"),e=!0;break;case 40:++t,A.push("(");break;case 41:0==--t?(this.nextChar(),e=!0):A.push(")");break;case 92:switch(i=this.nextChar(),i){case-1:N("Unterminated string"),e=!0;break;case 110:A.push("\n");break;case 114:A.push("\r");break;case 116:A.push("\t");break;case 98:A.push("\b");break;case 102:A.push("\f");break;case 92:case 40:case 41:A.push(String.fromCharCode(i));break;case 48:case 49:case 50:case 51:case 52:case 53:case 54:case 55:let t=15&i;i=this.nextChar(),s=!0,i>=48&&i<=55&&(t=(t<<3)+(15&i),i=this.nextChar(),i>=48&&i<=55&&(s=!1,t=(t<<3)+(15&i))),A.push(String.fromCharCode(t));break;case 13:10===this.peekChar()&&this.nextChar();break;case 10:break;default:A.push(String.fromCharCode(i))}break;default:A.push(String.fromCharCode(i))}if(e)break;s||(i=this.nextChar())}return A.join("")}getName(){let t,e;const A=this.strBuf;for(A.length=0;(t=this.nextChar())>=0&&!ai[t];)if(35===t){if(t=this.nextChar(),ai[t]){N("Lexer_getName: NUMBER SIGN (#) should be followed by a hexadecimal number."),A.push("#");break}const i=ni(t);if(-1!==i){e=t,t=this.nextChar();const s=ni(t);if(-1===s){if(N(`Lexer_getName: Illegal digit (${String.fromCharCode(t)}) in hexadecimal number.`),A.push("#",String.fromCharCode(e)),ai[t])break;A.push(String.fromCharCode(t));continue}A.push(String.fromCharCode(i<<4|s))}else A.push("#",String.fromCharCode(t))}else A.push(String.fromCharCode(t));return A.length>127&&N(`Name token is longer than allowed by the spec: ${A.length}`),ht.get(A.join(""))}_hexStringWarn(t){5!=this._hexStringNumWarn++?this._hexStringNumWarn>5||N(`getHexString - ignoring invalid character: ${t}`):N("getHexString - ignoring additional invalid characters.")}getHexString(){const t=this.strBuf;t.length=0;let e,A,i=this.currentChar,s=!0;for(this._hexStringNumWarn=0;;){if(i<0){N("Unterminated hex string");break}if(62===i){this.nextChar();break}if(1!==ai[i]){if(s){if(e=ni(i),-1===e){this._hexStringWarn(i),i=this.nextChar();continue}}else{if(A=ni(i),-1===A){this._hexStringWarn(i),i=this.nextChar();continue}t.push(String.fromCharCode(e<<4|A))}s=!s,i=this.nextChar()}else i=this.nextChar()}return t.join("")}getObj(){let t=!1,e=this.currentChar;for(;;){if(e<0)return rt;if(t)10!==e&&13!==e||(t=!1);else if(37===e)t=!0;else if(1!==ai[e])break;e=this.nextChar()}switch(0|e){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(),lt.get("[");case 93:return this.nextChar(),lt.get("]");case 60:return e=this.nextChar(),60===e?(this.nextChar(),lt.get("<<")):this.getHexString();case 62:return e=this.nextChar(),62===e?(this.nextChar(),lt.get(">>")):lt.get(">");case 123:return this.nextChar(),lt.get("{");case 125:return this.nextChar(),lt.get("}");case 41:throw this.nextChar(),new q(`Illegal character: ${e}`)}let A=String.fromCharCode(e);if(e<32||e>127){const t=this.peekChar();if(t>=32&&t<=127)return this.nextChar(),lt.get(A)}const i=this.knownCommands;let s=void 0!==i?.[A];for(;(e=this.nextChar())>=0&&!ai[e];){const t=A+String.fromCharCode(e);if(s&&void 0===i[t])break;if(128===A.length)throw new q(`Command token too long: ${A.length}`);A=t,s=void 0!==i?.[A]}return"true"===A||"false"!==A&&("null"===A?null:("BI"===A&&(this.beginInlineImagePos=this.stream.pos),lt.get(A)))}skipToNextLine(){let t=this.currentChar;for(;t>=0;){if(13===t){t=this.nextChar(),10===t&&this.nextChar();break}if(10===t){this.nextChar();break}t=this.nextChar()}}}class oi{static create(t){function e(t,e,A=!1){const i=t.get(e);if(Number.isInteger(i)&&(A?i>=0:i>0))return i;throw new Error(`The "${e}" parameter in the linearization dictionary is invalid.`)}const A=new si({lexer:new ri(t),xref:null}),i=A.getObj(),s=A.getObj(),a=A.getObj(),n=A.getObj();let r,o;if(!(Number.isInteger(i)&&Number.isInteger(s)&&Et(a,"obj")&&n instanceof Ct&&"number"==typeof(r=n.get("Linearized"))&&r>0))return null;if((o=e(n,"L"))!==t.length)throw new Error('The "L" parameter in the linearization dictionary does not equal the stream length.');return{length:o,hints:function(t){const e=t.get("H");let A;if(Array.isArray(e)&&(2===(A=e.length)||4===A)){for(let t=0;t<A;t++){const A=e[t];if(!(Number.isInteger(A)&&A>0))throw new Error(`Hint (${t}) in the linearization dictionary is invalid.`)}return e}throw new Error("Hint array in the linearization dictionary is invalid.")}(n),objectNumberFirst:e(n,"O"),endFirst:e(n,"E"),numPages:e(n,"N"),mainXRefEntriesOffset:e(n,"T"),pageFirst:n.has("P")?e(n,"P",!0):0}}}const gi=["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"],ci=2**24-1;class hi{constructor(t=!1){this.codespaceRanges=[[],[],[],[]],this.numCodespaceRanges=0,this._map=[],this.name="",this.vertical=!1,this.useCMap=null,this.builtInCMap=t}addCodespaceRange(t,e,A){this.codespaceRanges[t-1].push(e,A),this.numCodespaceRanges++}mapCidRange(t,e,A){if(e-t>ci)throw new Error("mapCidRange - ignoring data above MAX_MAP_RANGE.");for(;t<=e;)this._map[t++]=A++}mapBfRange(t,e,A){if(e-t>ci)throw new Error("mapBfRange - ignoring data above MAX_MAP_RANGE.");const i=A.length-1;for(;t<=e;){this._map[t++]=A;const e=A.charCodeAt(i)+1;A=e>255?A.substring(0,i-1)+String.fromCharCode(A.charCodeAt(i-1)+1)+"\0":A.substring(0,i)+String.fromCharCode(e)}}mapBfRangeToArray(t,e,A){if(e-t>ci)throw new Error("mapBfRangeToArray - ignoring data above MAX_MAP_RANGE.");const i=A.length;let s=0;for(;t<=e&&s<i;)this._map[t]=A[s++],++t}mapOne(t,e){this._map[t]=e}lookup(t){return this._map[t]}contains(t){return void 0!==this._map[t]}forEach(t){const e=this._map,A=e.length;if(A<=65536)for(let i=0;i<A;i++)void 0!==e[i]&&t(i,e[i]);else for(const A in e)t(A,e[A])}charCodeOf(t){const e=this._map;if(e.length<=65536)return e.indexOf(t);for(const A in e)if(e[A]===t)return 0|A;return-1}getMap(){return this._map}readCharCode(t,e,A){let i=0;const s=this.codespaceRanges;for(let a=0,n=s.length;a<n;a++){i=(i<<8|t.charCodeAt(e+a))>>>0;const n=s[a];for(let t=0,e=n.length;t<e;){const e=n[t++],s=n[t++];if(i>=e&&i<=s)return A.charcode=i,void(A.length=a+1)}}A.charcode=0,A.length=1}getCharCodeLength(t){const e=this.codespaceRanges;for(let A=0,i=e.length;A<i;A++){const i=e[A];for(let e=0,s=i.length;e<s;){const s=i[e++],a=i[e++];if(t>=s&&t<=a)return A+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 t=0;t<65536;t++)if(this._map[t]!==t)return!1;return!0}}class li extends hi{constructor(t,e){super(),this.vertical=t,this.addCodespaceRange(e,0,65535)}mapCidRange(t,e,A){v("should not call mapCidRange")}mapBfRange(t,e,A){v("should not call mapBfRange")}mapBfRangeToArray(t,e,A){v("should not call mapBfRangeToArray")}mapOne(t,e){v("should not call mapCidOne")}lookup(t){return Number.isInteger(t)&&t<=65535?t:void 0}contains(t){return Number.isInteger(t)&&t<=65535}forEach(t){for(let e=0;e<=65535;e++)t(e,e)}charCodeOf(t){return Number.isInteger(t)&&t<=65535?t:-1}getMap(){const t=new Array(65536);for(let e=0;e<=65535;e++)t[e]=e;return t}get length(){return 65536}get isIdentityCMap(){v("should not access .isIdentityCMap")}}function Ii(t){let e=0;for(let A=0;A<t.length;A++)e=e<<8|t.charCodeAt(A);return e>>>0}function Ci(t){if("string"!=typeof t)throw new q("Malformed CMap: expected string.")}function Bi(t){if(!Number.isInteger(t))throw new q("Malformed CMap: expected int.")}function di(t,e){for(;;){let A=e.getObj();if(A===rt)break;if(Et(A,"endbfchar"))return;Ci(A);const i=Ii(A);A=e.getObj(),Ci(A);const s=A;t.mapOne(i,s)}}function ui(t,e){for(;;){let A=e.getObj();if(A===rt)break;if(Et(A,"endbfrange"))return;Ci(A);const i=Ii(A);A=e.getObj(),Ci(A);const s=Ii(A);if(A=e.getObj(),Number.isInteger(A)||"string"==typeof A){const e=Number.isInteger(A)?String.fromCharCode(A):A;t.mapBfRange(i,s,e)}else{if(!Et(A,"["))break;{A=e.getObj();const a=[];for(;!Et(A,"]")&&A!==rt;)a.push(A),A=e.getObj();t.mapBfRangeToArray(i,s,a)}}}throw new q("Invalid bf range.")}function Qi(t,e){for(;;){let A=e.getObj();if(A===rt)break;if(Et(A,"endcidchar"))return;Ci(A);const i=Ii(A);A=e.getObj(),Bi(A);const s=A;t.mapOne(i,s)}}function Ei(t,e){for(;;){let A=e.getObj();if(A===rt)break;if(Et(A,"endcidrange"))return;Ci(A);const i=Ii(A);A=e.getObj(),Ci(A);const s=Ii(A);A=e.getObj(),Bi(A);const a=A;t.mapCidRange(i,s,a)}}function fi(t,e){for(;;){let A=e.getObj();if(A===rt)break;if(Et(A,"endcodespacerange"))return;if("string"!=typeof A)break;const i=Ii(A);if(A=e.getObj(),"string"!=typeof A)break;const s=Ii(A);t.addCodespaceRange(A.length,i,s)}throw new q("Invalid codespace range.")}function pi(t,e){const A=e.getObj();Number.isInteger(A)&&(t.vertical=!!A)}function mi(t,e){const A=e.getObj();A instanceof ht&&(t.name=A.name)}async function yi(t,e,A,i){let s,a;t:for(;;)try{const A=e.getObj();if(A===rt)break;if(A instanceof ht)"WMode"===A.name?pi(t,e):"CMapName"===A.name&&mi(t,e),s=A;else if(A instanceof lt)switch(A.cmd){case"endcmap":break t;case"usecmap":s instanceof ht&&(a=s.name);break;case"begincodespacerange":fi(t,e);break;case"beginbfchar":di(t,e);break;case"begincidchar":Qi(t,e);break;case"beginbfrange":ui(t,e);break;case"begincidrange":Ei(t,e)}}catch(t){if(t instanceof bt)throw t;N("Invalid cMap data: "+t);continue}return!i&&a&&(i=a),i?wi(t,A,i):t}async function wi(t,e,A){if(t.useCMap=await bi(A,e),0===t.numCodespaceRanges){const e=t.useCMap.codespaceRanges;for(let A=0;A<e.length;A++)t.codespaceRanges[A]=e[A].slice();t.numCodespaceRanges=t.useCMap.numCodespaceRanges}return t.useCMap.forEach((function(e,A){t.contains(e)||t.mapOne(e,t.useCMap.lookup(e))})),t}async function bi(t,e){if("Identity-H"===t)return new li(!1,2);if("Identity-V"===t)return new li(!0,2);if(!gi.includes(t))throw new Error("Unknown CMap name: "+t);if(!e)throw new Error("Built-in CMap parameters are not provided.");const{cMapData:A,compressionType:i}=await e(t),s=new hi(!0);if(1===i)return(new Se).process(A,s,(t=>wi(s,e,t)));if(0===i){const t=new ri(new ne(A));return yi(s,t,e,null)}throw new Error(`Invalid CMap "compressionType" value: ${i}`)}class Di{static async create({encoding:t,fetchBuiltInCMap:e,useCMap:A}){if(t instanceof ht)return bi(t.name,e);if(t instanceof mt){const i=await yi(new hi,new ri(t),e,A);return i.isIdentityCMap?bi(i.name,e):i}throw new Error("Encoding required.")}}const ki=[".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"],Si=[".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"],Fi=[".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"],Ri=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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"],xi=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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","","","",""],Ni=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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"],vi=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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","","","",""],Gi=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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"],Mi=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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",""],Li=["","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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 Ui(t){switch(t){case"WinAnsiEncoding":return Gi;case"StandardEncoding":return vi;case"MacRomanEncoding":return Ni;case"SymbolSetEncoding":return Mi;case"ZapfDingbatsEncoding":return Li;case"ExpertEncoding":return Ri;case"MacExpertEncoding":return xi;default:return null}}const Hi=[".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"],Ji=[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,undefStack:!0},{id:"return",min:0,undefStack:!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,undefStack:!0},{id:"vhcurveto",min:4,resetStack:!0},{id:"hvcurveto",min:4,resetStack:!0}],Yi=[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(t,e){t[e-2]=t[e-2]+t[e-1]}},{id:"sub",min:2,stackDelta:-1,stackFn(t,e){t[e-2]=t[e-2]-t[e-1]}},{id:"div",min:2,stackDelta:-1,stackFn(t,e){t[e-2]=t[e-2]/t[e-1]}},null,{id:"neg",min:1,stackDelta:0,stackFn(t,e){t[e-1]=-t[e-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(t,e){t[e-2]=t[e-2]*t[e-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 Ti{constructor(t,e,A){this.bytes=t.getBytes(),this.properties=e,this.seacAnalysisEnabled=!!A}parse(){const t=this.properties,e=new Ki;this.cff=e;const A=this.parseHeader(),i=this.parseIndex(A.endPos),s=this.parseIndex(i.endPos),a=this.parseIndex(s.endPos),n=this.parseIndex(a.endPos),r=this.parseDict(s.obj.get(0)),o=this.createDict(Zi,r,e.strings);e.header=A.obj,e.names=this.parseNameIndex(i.obj),e.strings=this.parseStringIndex(a.obj),e.topDict=o,e.globalSubrIndex=n.obj,this.parsePrivateDict(e.topDict),e.isCIDFont=o.hasName("ROS");const g=o.getByName("CharStrings"),c=this.parseIndex(g).obj,h=o.getByName("FontMatrix");h&&(t.fontMatrix=h);const l=o.getByName("FontBBox");let I,C;if(l&&(t.ascent=Math.max(l[3],l[1]),t.descent=Math.min(l[1],l[3]),t.ascentScaled=!0),e.isCIDFont){const t=this.parseIndex(o.getByName("FDArray")).obj;for(let A=0,i=t.count;A<i;++A){const i=t.get(A),s=this.createDict(Zi,this.parseDict(i),e.strings);this.parsePrivateDict(s),e.fdArray.push(s)}C=null,I=this.parseCharsets(o.getByName("charset"),c.count,e.strings,!0),e.fdSelect=this.parseFDSelect(o.getByName("FDSelect"),c.count)}else I=this.parseCharsets(o.getByName("charset"),c.count,e.strings,!1),C=this.parseEncoding(o.getByName("Encoding"),t,e.strings,I.charset);e.charset=I,e.encoding=C;const B=this.parseCharStrings({charStrings:c,localSubrIndex:o.privateDict.subrsIndex,globalSubrIndex:n.obj,fdSelect:e.fdSelect,fdArray:e.fdArray,privateDict:o.privateDict});return e.charStrings=B.charStrings,e.seacs=B.seacs,e.widths=B.widths,e}parseHeader(){let t=this.bytes;const e=t.length;let A=0;for(;A<e&&1!==t[A];)++A;if(A>=e)throw new q("Invalid CFF header");0!==A&&(x("cff data is shifted"),t=t.subarray(A),this.bytes=t);const i=t[0],s=t[1],a=t[2],n=t[3];return{obj:new qi(i,s,a,n),endPos:a}}parseDict(t){let e=0;function A(){let A=t[e++];return 30===A?function(){let A="";const i=["0","1","2","3","4","5","6","7","8","9",".","E","E-",null,"-"],s=t.length;for(;e<s;){const s=t[e++],a=s>>4,n=15&s;if(15===a)break;if(A+=i[a],15===n)break;A+=i[n]}return parseFloat(A)}():28===A?(A=t[e++],A=(A<<24|t[e++]<<16)>>16,A):29===A?(A=t[e++],A=A<<8|t[e++],A=A<<8|t[e++],A=A<<8|t[e++],A):A>=32&&A<=246?A-139:A>=247&&A<=250?256*(A-247)+t[e++]+108:A>=251&&A<=254?-256*(A-251)-t[e++]-108:(N('CFFParser_parseDict: "'+A+'" is a reserved command.'),NaN)}let i=[];const s=[];e=0;const a=t.length;for(;e<a;){let a=t[e];a<=21?(12===a&&(a=a<<8|t[++e]),s.push([a,i]),i=[],++e):i.push(A())}return s}parseIndex(t){const e=new _i,A=this.bytes,i=A[t++]<<8|A[t++],s=[];let a,n,r=t;if(0!==i){const e=A[t++],o=t+(i+1)*e-1;for(a=0,n=i+1;a<n;++a){let i=0;for(let s=0;s<e;++s)i<<=8,i+=A[t++];s.push(o+i)}r=s[i]}for(a=0,n=s.length-1;a<n;++a){const t=s[a],i=s[a+1];e.add(A.subarray(t,i))}return{obj:e,endPos:r}}parseNameIndex(t){const e=[];for(let A=0,i=t.count;A<i;++A){const i=t.get(A);e.push(_(i))}return e}parseStringIndex(t){const e=new Pi;for(let A=0,i=t.count;A<i;++A){const i=t.get(A);e.add(_(i))}return e}createDict(t,e,A){const i=new t(A);for(const[t,A]of e)i.setByKey(t,A);return i}parseCharString(t,e,A,i){if(!e||t.callDepth>10)return!1;let s=t.stackSize;const a=t.stack;let n=e.length;for(let r=0;r<n;){const o=e[r++];let g=null;if(12===o){const t=e[r++];0===t?(e[r-2]=139,e[r-1]=22,s=0):g=Yi[t]}else if(28===o)a[s]=(e[r]<<24|e[r+1]<<16)>>16,r+=2,s++;else if(14===o){if(s>=4&&(s-=4,this.seacAnalysisEnabled))return t.seac=a.slice(s,s+4),!1;g=Ji[o]}else if(o>=32&&o<=246)a[s]=o-139,s++;else if(o>=247&&o<=254)a[s]=o<251?(o-247<<8)+e[r]+108:-(o-251<<8)-e[r]-108,r++,s++;else if(255===o)a[s]=(e[r]<<24|e[r+1]<<16|e[r+2]<<8|e[r+3])/65536,r+=4,s++;else if(19===o||20===o){if(t.hints+=s>>1,0===t.hints){e.copyWithin(r-1,r,-1),r-=1,n-=1;continue}r+=t.hints+7>>3,s%=2,g=Ji[o]}else{if(10===o||29===o){const e=10===o?A:i;if(!e)return g=Ji[o],N("Missing subrsIndex for "+g.id),!1;let n=32768;e.count<1240?n=107:e.count<33900&&(n=1131);const r=a[--s]+n;if(r<0||r>=e.count||isNaN(r))return g=Ji[o],N("Out of bounds subrIndex for "+g.id),!1;if(t.stackSize=s,t.callDepth++,!this.parseCharString(t,e.get(r),A,i))return!1;t.callDepth--,s=t.stackSize;continue}if(11===o)return t.stackSize=s,!0;if(0===o&&r===e.length)e[r-1]=14,g=Ji[14];else{if(9===o){e.copyWithin(r-1,r,-1),r-=1,n-=1;continue}g=Ji[o]}}if(g){if(g.stem&&(t.hints+=s>>1,3===o||23===o?t.hasVStems=!0:!t.hasVStems||1!==o&&18!==o||(N("CFF stem hints are in wrong order"),e[r-1]=1===o?3:23)),"min"in g&&!t.undefStack&&s<g.min)return N("Not enough parameters for "+g.id+"; actual: "+s+", expected: "+g.min),0===s&&(e[r-1]=14,!0);t.firstStackClearing&&g.stackClearing&&(t.firstStackClearing=!1,s-=g.min,s>=2&&g.stem?s%=2:s>1&&N("Found too many parameters for stack-clearing command"),s>0&&(t.width=a[s-1])),"stackDelta"in g?("stackFn"in g&&g.stackFn(a,s),s+=g.stackDelta):g.stackClearing?s=0:g.resetStack?(s=0,t.undefStack=!1):g.undefStack&&(s=0,t.undefStack=!0,t.firstStackClearing=!1)}}return n<e.length&&e.fill(14,n),t.stackSize=s,!0}parseCharStrings({charStrings:t,localSubrIndex:e,globalSubrIndex:A,fdSelect:i,fdArray:s,privateDict:a}){const n=[],r=[],o=t.count;for(let g=0;g<o;g++){const o=t.get(g),c={callDepth:0,stackSize:0,stack:[],undefStack:!0,hints:0,firstStackClearing:!0,seac:null,width:null,hasVStems:!1};let h=!0,l=null,I=a;if(i&&s.length){const t=i.getFDIndex(g);-1===t&&(N("Glyph index is not in fd select."),h=!1),t>=s.length&&(N("Invalid fd index for glyph index."),h=!1),h&&(I=s[t].privateDict,l=I.subrsIndex)}else e&&(l=e);if(h&&(h=this.parseCharString(c,o,l,A)),null!==c.width){const t=I.getByName("nominalWidthX");r[g]=t+c.width}else{const t=I.getByName("defaultWidthX");r[g]=t}null!==c.seac&&(n[g]=c.seac),h||t.set(g,new Uint8Array([14]))}return{charStrings:t,seacs:n,widths:r}}emptyPrivateDictionary(t){const e=this.createDict(Vi,[],t.strings);t.setByKey(18,[0,0]),t.privateDict=e}parsePrivateDict(t){if(!t.hasName("Private"))return void this.emptyPrivateDictionary(t);const e=t.getByName("Private");if(!Array.isArray(e)||2!==e.length)return void t.removeByName("Private");const A=e[0],i=e[1];if(0===A||i>=this.bytes.length)return void this.emptyPrivateDictionary(t);const s=i+A,a=this.bytes.subarray(i,s),n=this.parseDict(a),r=this.createDict(Vi,n,t.strings);if(t.privateDict=r,0===r.getByName("ExpansionFactor")&&r.setByName("ExpansionFactor",.06),!r.getByName("Subrs"))return;const o=r.getByName("Subrs"),g=i+o;if(0===o||g>=this.bytes.length)return void this.emptyPrivateDictionary(t);const c=this.parseIndex(g);r.subrsIndex=c.obj}parseCharsets(t,e,A,i){if(0===t)return new zi(!0,Xi.ISO_ADOBE,ki);if(1===t)return new zi(!0,Xi.EXPERT,Si);if(2===t)return new zi(!0,Xi.EXPERT_SUBSET,Fi);const s=this.bytes,a=t,n=s[t++],r=[i?0:".notdef"];let o,g,c;switch(e-=1,n){case 0:for(c=0;c<e;c++)o=s[t++]<<8|s[t++],r.push(i?o:A.get(o));break;case 1:for(;r.length<=e;)for(o=s[t++]<<8|s[t++],g=s[t++],c=0;c<=g;c++)r.push(i?o++:A.get(o++));break;case 2:for(;r.length<=e;)for(o=s[t++]<<8|s[t++],g=s[t++]<<8|s[t++],c=0;c<=g;c++)r.push(i?o++:A.get(o++));break;default:throw new q("Unknown charset format")}const h=t,l=s.subarray(a,h);return new zi(!1,n,r,l)}parseEncoding(t,e,A,i){const s=Object.create(null),a=this.bytes;let n,r,o,g=!1,c=null;if(0===t||1===t){g=!0,n=t;const e=t?Ri:vi;for(r=0,o=i.length;r<o;r++){const t=e.indexOf(i[r]);-1!==t&&(s[t]=r)}}else{const e=t;switch(n=a[t++],127&n){case 0:const e=a[t++];for(r=1;r<=e;r++)s[a[t++]]=r;break;case 1:const A=a[t++];let i=1;for(r=0;r<A;r++){const e=a[t++],A=a[t++];for(let t=e;t<=e+A;t++)s[t]=i++}break;default:throw new q(`Unknown encoding format: ${n} in CFF`)}const o=t;128&n&&(a[e]&=127,function(){const e=a[t++];for(r=0;r<e;r++){const e=a[t++],n=(a[t++]<<8)+(255&a[t++]);s[e]=i.indexOf(A.get(n))}}()),c=a.subarray(e,o)}return n&=127,new $i(g,n,s,c)}parseFDSelect(t,e){const A=this.bytes,i=A[t++],s=[];let a;switch(i){case 0:for(a=0;a<e;++a){const e=A[t++];s.push(e)}break;case 3:const n=A[t++]<<8|A[t++];for(a=0;a<n;++a){let e=A[t++]<<8|A[t++];0===a&&0!==e&&(N("parseFDSelect: The first range must have a first GID of 0 -- trying to recover."),e=0);const i=A[t++],n=A[t]<<8|A[t+1];for(let t=e;t<n;++t)s.push(i)}t+=2;break;default:throw new q(`parseFDSelect: Unknown format "${i}".`)}if(s.length!==e)throw new q("parseFDSelect: Invalid font data.");return new ts(i,s)}}class Ki{constructor(){this.header=null,this.names=[],this.topDict=null,this.strings=new Pi,this.globalSubrIndex=null,this.encoding=null,this.charset=null,this.charStrings=null,this.fdArray=[],this.fdSelect=null,this.isCIDFont=!1}duplicateFirstGlyph(){if(this.charStrings.count>=65535)return void N("Not enough space in charstrings to duplicate first glyph.");const t=this.charStrings.get(0);this.charStrings.add(t),this.isCIDFont&&this.fdSelect.fdSelect.push(this.fdSelect.fdSelect[0])}hasGlyphId(t){return!(t<0||t>=this.charStrings.count)&&this.charStrings.get(t).length>0}}class qi{constructor(t,e,A,i){this.major=t,this.minor=e,this.hdrSize=A,this.offSize=i}}class Pi{constructor(){this.strings=[]}get(t){return t>=0&&t<=390?Hi[t]:t-391<=this.strings.length?this.strings[t-391]:Hi[0]}getSID(t){let e=Hi.indexOf(t);return-1!==e?e:(e=this.strings.indexOf(t),-1!==e?e+391:-1)}add(t){this.strings.push(t)}get count(){return this.strings.length}}class _i{constructor(){this.objects=[],this.length=0}add(t){this.length+=t.length,this.objects.push(t)}set(t,e){this.length+=e.length-this.objects[t].length,this.objects[t]=e}get(t){return this.objects[t]}get count(){return this.objects.length}}class Oi{constructor(t,e){this.keyToNameMap=t.keyToNameMap,this.nameToKeyMap=t.nameToKeyMap,this.defaults=t.defaults,this.types=t.types,this.opcodes=t.opcodes,this.order=t.order,this.strings=e,this.values=Object.create(null)}setByKey(t,e){if(!(t in this.keyToNameMap))return!1;if(0===e.length)return!0;for(const A of e)if(isNaN(A))return N(`Invalid CFFDict value: "${e}" for key "${t}".`),!0;const A=this.types[t];return"num"!==A&&"sid"!==A&&"offset"!==A||(e=e[0]),this.values[t]=e,!0}setByName(t,e){if(!(t in this.nameToKeyMap))throw new q(`Invalid dictionary name "${t}"`);this.values[this.nameToKeyMap[t]]=e}hasName(t){return this.nameToKeyMap[t]in this.values}getByName(t){if(!(t in this.nameToKeyMap))throw new q(`Invalid dictionary name ${t}"`);const e=this.nameToKeyMap[t];return e in this.values?this.values[e]:this.defaults[e]}removeByName(t){delete this.values[this.nameToKeyMap[t]]}static createTables(t){const e={keyToNameMap:{},nameToKeyMap:{},defaults:{},types:{},opcodes:{},order:[]};for(const A of t){const t=Array.isArray(A[0])?(A[0][0]<<8)+A[0][1]:A[0];e.keyToNameMap[t]=A[1],e.nameToKeyMap[A[1]]=t,e.types[t]=A[2],e.defaults[t]=A[3],e.opcodes[t]=Array.isArray(A[0])?A[0]:[A[0]],e.order.push(t)}return e}}const Wi=[[[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 Zi extends Oi{static get tables(){return L(this,"tables",this.createTables(Wi))}constructor(t){super(Zi.tables,t),this.privateDict=null}}const ji=[[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 Vi extends Oi{static get tables(){return L(this,"tables",this.createTables(ji))}constructor(t){super(Vi.tables,t),this.subrsIndex=null}}const Xi={ISO_ADOBE:0,EXPERT:1,EXPERT_SUBSET:2};class zi{constructor(t,e,A,i){this.predefined=t,this.format=e,this.charset=A,this.raw=i}}class $i{constructor(t,e,A,i){this.predefined=t,this.format=e,this.encoding=A,this.raw=i}}class ts{constructor(t,e){this.format=t,this.fdSelect=e}getFDIndex(t){return t<0||t>=this.fdSelect.length?-1:this.fdSelect[t]}}class es{constructor(){this.offsets=Object.create(null)}isTracking(t){return t in this.offsets}track(t,e){if(t in this.offsets)throw new q(`Already tracking location of ${t}`);this.offsets[t]=e}offset(t){for(const e in this.offsets)this.offsets[e]+=t}setEntryLocation(t,e,A){if(!(t in this.offsets))throw new q(`Not tracking location of ${t}`);const i=A.data,s=this.offsets[t];for(let t=0,A=e.length;t<A;++t){const A=5*t+s,a=A+1,n=A+2,r=A+3,o=A+4;if(29!==i[A]||0!==i[a]||0!==i[n]||0!==i[r]||0!==i[o])throw new q("writing to an offset that is not empty");const g=e[t];i[A]=29,i[a]=g>>24&255,i[n]=g>>16&255,i[r]=g>>8&255,i[o]=255&g}}}class As{constructor(t){this.cff=t}compile(){const t=this.cff,e={data:[],length:0,add(t){try{this.data.push(...t)}catch{this.data=this.data.concat(t)}this.length=this.data.length}},A=this.compileHeader(t.header);e.add(A);const i=this.compileNameIndex(t.names);if(e.add(i),t.isCIDFont&&t.topDict.hasName("FontMatrix")){const e=t.topDict.getByName("FontMatrix");t.topDict.removeByName("FontMatrix");for(const A of t.fdArray){let t=e.slice(0);A.hasName("FontMatrix")&&(t=X.transform(t,A.getByName("FontMatrix"))),A.setByName("FontMatrix",t)}}const s=t.topDict.getByName("XUID");s?.length>16&&t.topDict.removeByName("XUID"),t.topDict.setByName("charset",0);let a=this.compileTopDicts([t.topDict],e.length,t.isCIDFont);e.add(a.output);const n=a.trackers[0],r=this.compileStringIndex(t.strings.strings);e.add(r);const o=this.compileIndex(t.globalSubrIndex);if(e.add(o),t.encoding&&t.topDict.hasName("Encoding"))if(t.encoding.predefined)n.setEntryLocation("Encoding",[t.encoding.format],e);else{const A=this.compileEncoding(t.encoding);n.setEntryLocation("Encoding",[e.length],e),e.add(A)}const g=this.compileCharset(t.charset,t.charStrings.count,t.strings,t.isCIDFont);n.setEntryLocation("charset",[e.length],e),e.add(g);const c=this.compileCharStrings(t.charStrings);if(n.setEntryLocation("CharStrings",[e.length],e),e.add(c),t.isCIDFont){n.setEntryLocation("FDSelect",[e.length],e);const A=this.compileFDSelect(t.fdSelect);e.add(A),a=this.compileTopDicts(t.fdArray,e.length,!0),n.setEntryLocation("FDArray",[e.length],e),e.add(a.output);const i=a.trackers;this.compilePrivateDicts(t.fdArray,i,e)}return this.compilePrivateDicts([t.topDict],[n],e),e.add([0]),e.data}encodeNumber(t){return Number.isInteger(t)?this.encodeInteger(t):this.encodeFloat(t)}static get EncodeFloatRegExp(){return L(this,"EncodeFloatRegExp",/\.(\d*?)(?:9{5,20}|0{5,20})\d{0,2}(?:e(.+)|$)/)}encodeFloat(t){let e=t.toString();const A=As.EncodeFloatRegExp.exec(e);if(A){const i=parseFloat("1e"+((A[2]?+A[2]:0)+A[1].length));e=(Math.round(t*i)/i).toString()}let i,s,a="";for(i=0,s=e.length;i<s;++i){const t=e[i];a+="e"===t?"-"===e[++i]?"c":"b":"."===t?"a":"-"===t?"e":t}a+=1&a.length?"f":"ff";const n=[30];for(i=0,s=a.length;i<s;i+=2)n.push(parseInt(a.substring(i,i+2),16));return n}encodeInteger(t){let e;return e=t>=-107&&t<=107?[t+139]:t>=108&&t<=1131?[247+((t-=108)>>8),255&t]:t>=-1131&&t<=-108?[251+((t=-t-108)>>8),255&t]:t>=-32768&&t<=32767?[28,t>>8&255,255&t]:[29,t>>24&255,t>>16&255,t>>8&255,255&t],e}compileHeader(t){return[t.major,t.minor,4,t.offSize]}compileNameIndex(t){const e=new _i;for(const A of t){const t=Math.min(A.length,127);let i=new Array(t);for(let e=0;e<t;e++){let t=A[e];(t<"!"||t>"~"||"["===t||"]"===t||"("===t||")"===t||"{"===t||"}"===t||"<"===t||">"===t||"/"===t||"%"===t)&&(t="_"),i[e]=t}i=i.join(""),""===i&&(i="Bad_Font_Name"),e.add(O(i))}return this.compileIndex(e)}compileTopDicts(t,e,A){const i=[];let s=new _i;for(const a of t){A&&(a.removeByName("CIDFontVersion"),a.removeByName("CIDFontRevision"),a.removeByName("CIDFontType"),a.removeByName("CIDCount"),a.removeByName("UIDBase"));const t=new es,n=this.compileDict(a,t);i.push(t),s.add(n),t.offset(e)}return s=this.compileIndex(s,i),{trackers:i,output:s}}compilePrivateDicts(t,e,A){for(let i=0,s=t.length;i<s;++i){const s=t[i],a=s.privateDict;if(!a||!s.hasName("Private"))throw new q("There must be a private dictionary.");const n=new es,r=this.compileDict(a,n);let o=A.length;if(n.offset(o),r.length||(o=0),e[i].setEntryLocation("Private",[r.length,o],A),A.add(r),a.subrsIndex&&a.hasName("Subrs")){const t=this.compileIndex(a.subrsIndex);n.setEntryLocation("Subrs",[r.length],A),A.add(t)}}}compileDict(t,e){const A=[];for(const i of t.order){if(!(i in t.values))continue;let s=t.values[i],a=t.types[i];if(Array.isArray(a)||(a=[a]),Array.isArray(s)||(s=[s]),0!==s.length){for(let n=0,r=a.length;n<r;++n){const r=a[n],o=s[n];switch(r){case"num":case"sid":A.push(...this.encodeNumber(o));break;case"offset":const a=t.keyToNameMap[i];e.isTracking(a)||e.track(a,A.length),A.push(29,0,0,0,0);break;case"array":case"delta":A.push(...this.encodeNumber(o));for(let t=1,e=s.length;t<e;++t)A.push(...this.encodeNumber(s[t]));break;default:throw new q(`Unknown data type of ${r}`)}}A.push(...t.opcodes[i])}}return A}compileStringIndex(t){const e=new _i;for(const A of t)e.add(O(A));return this.compileIndex(e)}compileCharStrings(t){const e=new _i;for(let A=0;A<t.count;A++){const i=t.get(A);0!==i.length?e.add(i):e.add(new Uint8Array([139,14]))}return this.compileIndex(e)}compileCharset(t,e,A,i){let s;const a=e-1;if(i)s=new Uint8Array([2,0,0,a>>8&255,255&a]);else{s=new Uint8Array(1+2*a),s[0]=0;let e=0;const i=t.charset.length;let n=!1;for(let a=1;a<s.length;a+=2){let r=0;if(e<i){const i=t.charset[e++];r=A.getSID(i),-1===r&&(r=0,n||(n=!0,N(`Couldn't find ${i} in CFF strings`)))}s[a]=r>>8&255,s[a+1]=255&r}}return this.compileTypedArray(s)}compileEncoding(t){return this.compileTypedArray(t.raw)}compileFDSelect(t){const e=t.format;let A,i;switch(e){case 0:for(A=new Uint8Array(1+t.fdSelect.length),A[0]=e,i=0;i<t.fdSelect.length;i++)A[i+1]=t.fdSelect[i];break;case 3:const s=0;let a=t.fdSelect[0];const n=[e,0,0,s>>8&255,255&s,a];for(i=1;i<t.fdSelect.length;i++){const e=t.fdSelect[i];e!==a&&(n.push(i>>8&255,255&i,e),a=e)}const r=(n.length-3)/3;n[1]=r>>8&255,n[2]=255&r,n.push(i>>8&255,255&i),A=new Uint8Array(n)}return this.compileTypedArray(A)}compileTypedArray(t){return Array.from(t)}compileIndex(t,e=[]){const A=t.objects,i=A.length;if(0===i)return[0,0];const s=[i>>8&255,255&i];let a,n,r=1;for(a=0;a<i;++a)r+=A[a].length;n=r<256?1:r<65536?2:r<16777216?3:4,s.push(n);let o=1;for(a=0;a<i+1;a++)1===n?s.push(255&o):2===n?s.push(o>>8&255,255&o):3===n?s.push(o>>16&255,o>>8&255,255&o):s.push(o>>>24&255,o>>16&255,o>>8&255,255&o),A[a]&&(o+=A[a].length);for(a=0;a<i;a++)e[a]&&e[a].offset(s.length),s.push(...A[a]);return s}}const is=wt((function(t){t.A=65,t.AE=198,t.AEacute=508,t.AEmacron=482,t.AEsmall=63462,t.Aacute=193,t.Aacutesmall=63457,t.Abreve=258,t.Abreveacute=7854,t.Abrevecyrillic=1232,t.Abrevedotbelow=7862,t.Abrevegrave=7856,t.Abrevehookabove=7858,t.Abrevetilde=7860,t.Acaron=461,t.Acircle=9398,t.Acircumflex=194,t.Acircumflexacute=7844,t.Acircumflexdotbelow=7852,t.Acircumflexgrave=7846,t.Acircumflexhookabove=7848,t.Acircumflexsmall=63458,t.Acircumflextilde=7850,t.Acute=63177,t.Acutesmall=63412,t.Acyrillic=1040,t.Adblgrave=512,t.Adieresis=196,t.Adieresiscyrillic=1234,t.Adieresismacron=478,t.Adieresissmall=63460,t.Adotbelow=7840,t.Adotmacron=480,t.Agrave=192,t.Agravesmall=63456,t.Ahookabove=7842,t.Aiecyrillic=1236,t.Ainvertedbreve=514,t.Alpha=913,t.Alphatonos=902,t.Amacron=256,t.Amonospace=65313,t.Aogonek=260,t.Aring=197,t.Aringacute=506,t.Aringbelow=7680,t.Aringsmall=63461,t.Asmall=63329,t.Atilde=195,t.Atildesmall=63459,t.Aybarmenian=1329,t.B=66,t.Bcircle=9399,t.Bdotaccent=7682,t.Bdotbelow=7684,t.Becyrillic=1041,t.Benarmenian=1330,t.Beta=914,t.Bhook=385,t.Blinebelow=7686,t.Bmonospace=65314,t.Brevesmall=63220,t.Bsmall=63330,t.Btopbar=386,t.C=67,t.Caarmenian=1342,t.Cacute=262,t.Caron=63178,t.Caronsmall=63221,t.Ccaron=268,t.Ccedilla=199,t.Ccedillaacute=7688,t.Ccedillasmall=63463,t.Ccircle=9400,t.Ccircumflex=264,t.Cdot=266,t.Cdotaccent=266,t.Cedillasmall=63416,t.Chaarmenian=1353,t.Cheabkhasiancyrillic=1212,t.Checyrillic=1063,t.Chedescenderabkhasiancyrillic=1214,t.Chedescendercyrillic=1206,t.Chedieresiscyrillic=1268,t.Cheharmenian=1347,t.Chekhakassiancyrillic=1227,t.Cheverticalstrokecyrillic=1208,t.Chi=935,t.Chook=391,t.Circumflexsmall=63222,t.Cmonospace=65315,t.Coarmenian=1361,t.Csmall=63331,t.D=68,t.DZ=497,t.DZcaron=452,t.Daarmenian=1332,t.Dafrican=393,t.Dcaron=270,t.Dcedilla=7696,t.Dcircle=9401,t.Dcircumflexbelow=7698,t.Dcroat=272,t.Ddotaccent=7690,t.Ddotbelow=7692,t.Decyrillic=1044,t.Deicoptic=1006,t.Delta=8710,t.Deltagreek=916,t.Dhook=394,t.Dieresis=63179,t.DieresisAcute=63180,t.DieresisGrave=63181,t.Dieresissmall=63400,t.Digammagreek=988,t.Djecyrillic=1026,t.Dlinebelow=7694,t.Dmonospace=65316,t.Dotaccentsmall=63223,t.Dslash=272,t.Dsmall=63332,t.Dtopbar=395,t.Dz=498,t.Dzcaron=453,t.Dzeabkhasiancyrillic=1248,t.Dzecyrillic=1029,t.Dzhecyrillic=1039,t.E=69,t.Eacute=201,t.Eacutesmall=63465,t.Ebreve=276,t.Ecaron=282,t.Ecedillabreve=7708,t.Echarmenian=1333,t.Ecircle=9402,t.Ecircumflex=202,t.Ecircumflexacute=7870,t.Ecircumflexbelow=7704,t.Ecircumflexdotbelow=7878,t.Ecircumflexgrave=7872,t.Ecircumflexhookabove=7874,t.Ecircumflexsmall=63466,t.Ecircumflextilde=7876,t.Ecyrillic=1028,t.Edblgrave=516,t.Edieresis=203,t.Edieresissmall=63467,t.Edot=278,t.Edotaccent=278,t.Edotbelow=7864,t.Efcyrillic=1060,t.Egrave=200,t.Egravesmall=63464,t.Eharmenian=1335,t.Ehookabove=7866,t.Eightroman=8551,t.Einvertedbreve=518,t.Eiotifiedcyrillic=1124,t.Elcyrillic=1051,t.Elevenroman=8554,t.Emacron=274,t.Emacronacute=7702,t.Emacrongrave=7700,t.Emcyrillic=1052,t.Emonospace=65317,t.Encyrillic=1053,t.Endescendercyrillic=1186,t.Eng=330,t.Enghecyrillic=1188,t.Enhookcyrillic=1223,t.Eogonek=280,t.Eopen=400,t.Epsilon=917,t.Epsilontonos=904,t.Ercyrillic=1056,t.Ereversed=398,t.Ereversedcyrillic=1069,t.Escyrillic=1057,t.Esdescendercyrillic=1194,t.Esh=425,t.Esmall=63333,t.Eta=919,t.Etarmenian=1336,t.Etatonos=905,t.Eth=208,t.Ethsmall=63472,t.Etilde=7868,t.Etildebelow=7706,t.Euro=8364,t.Ezh=439,t.Ezhcaron=494,t.Ezhreversed=440,t.F=70,t.Fcircle=9403,t.Fdotaccent=7710,t.Feharmenian=1366,t.Feicoptic=996,t.Fhook=401,t.Fitacyrillic=1138,t.Fiveroman=8548,t.Fmonospace=65318,t.Fourroman=8547,t.Fsmall=63334,t.G=71,t.GBsquare=13191,t.Gacute=500,t.Gamma=915,t.Gammaafrican=404,t.Gangiacoptic=1002,t.Gbreve=286,t.Gcaron=486,t.Gcedilla=290,t.Gcircle=9404,t.Gcircumflex=284,t.Gcommaaccent=290,t.Gdot=288,t.Gdotaccent=288,t.Gecyrillic=1043,t.Ghadarmenian=1346,t.Ghemiddlehookcyrillic=1172,t.Ghestrokecyrillic=1170,t.Gheupturncyrillic=1168,t.Ghook=403,t.Gimarmenian=1331,t.Gjecyrillic=1027,t.Gmacron=7712,t.Gmonospace=65319,t.Grave=63182,t.Gravesmall=63328,t.Gsmall=63335,t.Gsmallhook=667,t.Gstroke=484,t.H=72,t.H18533=9679,t.H18543=9642,t.H18551=9643,t.H22073=9633,t.HPsquare=13259,t.Haabkhasiancyrillic=1192,t.Hadescendercyrillic=1202,t.Hardsigncyrillic=1066,t.Hbar=294,t.Hbrevebelow=7722,t.Hcedilla=7720,t.Hcircle=9405,t.Hcircumflex=292,t.Hdieresis=7718,t.Hdotaccent=7714,t.Hdotbelow=7716,t.Hmonospace=65320,t.Hoarmenian=1344,t.Horicoptic=1e3,t.Hsmall=63336,t.Hungarumlaut=63183,t.Hungarumlautsmall=63224,t.Hzsquare=13200,t.I=73,t.IAcyrillic=1071,t.IJ=306,t.IUcyrillic=1070,t.Iacute=205,t.Iacutesmall=63469,t.Ibreve=300,t.Icaron=463,t.Icircle=9406,t.Icircumflex=206,t.Icircumflexsmall=63470,t.Icyrillic=1030,t.Idblgrave=520,t.Idieresis=207,t.Idieresisacute=7726,t.Idieresiscyrillic=1252,t.Idieresissmall=63471,t.Idot=304,t.Idotaccent=304,t.Idotbelow=7882,t.Iebrevecyrillic=1238,t.Iecyrillic=1045,t.Ifraktur=8465,t.Igrave=204,t.Igravesmall=63468,t.Ihookabove=7880,t.Iicyrillic=1048,t.Iinvertedbreve=522,t.Iishortcyrillic=1049,t.Imacron=298,t.Imacroncyrillic=1250,t.Imonospace=65321,t.Iniarmenian=1339,t.Iocyrillic=1025,t.Iogonek=302,t.Iota=921,t.Iotaafrican=406,t.Iotadieresis=938,t.Iotatonos=906,t.Ismall=63337,t.Istroke=407,t.Itilde=296,t.Itildebelow=7724,t.Izhitsacyrillic=1140,t.Izhitsadblgravecyrillic=1142,t.J=74,t.Jaarmenian=1345,t.Jcircle=9407,t.Jcircumflex=308,t.Jecyrillic=1032,t.Jheharmenian=1355,t.Jmonospace=65322,t.Jsmall=63338,t.K=75,t.KBsquare=13189,t.KKsquare=13261,t.Kabashkircyrillic=1184,t.Kacute=7728,t.Kacyrillic=1050,t.Kadescendercyrillic=1178,t.Kahookcyrillic=1219,t.Kappa=922,t.Kastrokecyrillic=1182,t.Kaverticalstrokecyrillic=1180,t.Kcaron=488,t.Kcedilla=310,t.Kcircle=9408,t.Kcommaaccent=310,t.Kdotbelow=7730,t.Keharmenian=1364,t.Kenarmenian=1343,t.Khacyrillic=1061,t.Kheicoptic=998,t.Khook=408,t.Kjecyrillic=1036,t.Klinebelow=7732,t.Kmonospace=65323,t.Koppacyrillic=1152,t.Koppagreek=990,t.Ksicyrillic=1134,t.Ksmall=63339,t.L=76,t.LJ=455,t.LL=63167,t.Lacute=313,t.Lambda=923,t.Lcaron=317,t.Lcedilla=315,t.Lcircle=9409,t.Lcircumflexbelow=7740,t.Lcommaaccent=315,t.Ldot=319,t.Ldotaccent=319,t.Ldotbelow=7734,t.Ldotbelowmacron=7736,t.Liwnarmenian=1340,t.Lj=456,t.Ljecyrillic=1033,t.Llinebelow=7738,t.Lmonospace=65324,t.Lslash=321,t.Lslashsmall=63225,t.Lsmall=63340,t.M=77,t.MBsquare=13190,t.Macron=63184,t.Macronsmall=63407,t.Macute=7742,t.Mcircle=9410,t.Mdotaccent=7744,t.Mdotbelow=7746,t.Menarmenian=1348,t.Mmonospace=65325,t.Msmall=63341,t.Mturned=412,t.Mu=924,t.N=78,t.NJ=458,t.Nacute=323,t.Ncaron=327,t.Ncedilla=325,t.Ncircle=9411,t.Ncircumflexbelow=7754,t.Ncommaaccent=325,t.Ndotaccent=7748,t.Ndotbelow=7750,t.Nhookleft=413,t.Nineroman=8552,t.Nj=459,t.Njecyrillic=1034,t.Nlinebelow=7752,t.Nmonospace=65326,t.Nowarmenian=1350,t.Nsmall=63342,t.Ntilde=209,t.Ntildesmall=63473,t.Nu=925,t.O=79,t.OE=338,t.OEsmall=63226,t.Oacute=211,t.Oacutesmall=63475,t.Obarredcyrillic=1256,t.Obarreddieresiscyrillic=1258,t.Obreve=334,t.Ocaron=465,t.Ocenteredtilde=415,t.Ocircle=9412,t.Ocircumflex=212,t.Ocircumflexacute=7888,t.Ocircumflexdotbelow=7896,t.Ocircumflexgrave=7890,t.Ocircumflexhookabove=7892,t.Ocircumflexsmall=63476,t.Ocircumflextilde=7894,t.Ocyrillic=1054,t.Odblacute=336,t.Odblgrave=524,t.Odieresis=214,t.Odieresiscyrillic=1254,t.Odieresissmall=63478,t.Odotbelow=7884,t.Ogoneksmall=63227,t.Ograve=210,t.Ogravesmall=63474,t.Oharmenian=1365,t.Ohm=8486,t.Ohookabove=7886,t.Ohorn=416,t.Ohornacute=7898,t.Ohorndotbelow=7906,t.Ohorngrave=7900,t.Ohornhookabove=7902,t.Ohorntilde=7904,t.Ohungarumlaut=336,t.Oi=418,t.Oinvertedbreve=526,t.Omacron=332,t.Omacronacute=7762,t.Omacrongrave=7760,t.Omega=8486,t.Omegacyrillic=1120,t.Omegagreek=937,t.Omegaroundcyrillic=1146,t.Omegatitlocyrillic=1148,t.Omegatonos=911,t.Omicron=927,t.Omicrontonos=908,t.Omonospace=65327,t.Oneroman=8544,t.Oogonek=490,t.Oogonekmacron=492,t.Oopen=390,t.Oslash=216,t.Oslashacute=510,t.Oslashsmall=63480,t.Osmall=63343,t.Ostrokeacute=510,t.Otcyrillic=1150,t.Otilde=213,t.Otildeacute=7756,t.Otildedieresis=7758,t.Otildesmall=63477,t.P=80,t.Pacute=7764,t.Pcircle=9413,t.Pdotaccent=7766,t.Pecyrillic=1055,t.Peharmenian=1354,t.Pemiddlehookcyrillic=1190,t.Phi=934,t.Phook=420,t.Pi=928,t.Piwrarmenian=1363,t.Pmonospace=65328,t.Psi=936,t.Psicyrillic=1136,t.Psmall=63344,t.Q=81,t.Qcircle=9414,t.Qmonospace=65329,t.Qsmall=63345,t.R=82,t.Raarmenian=1356,t.Racute=340,t.Rcaron=344,t.Rcedilla=342,t.Rcircle=9415,t.Rcommaaccent=342,t.Rdblgrave=528,t.Rdotaccent=7768,t.Rdotbelow=7770,t.Rdotbelowmacron=7772,t.Reharmenian=1360,t.Rfraktur=8476,t.Rho=929,t.Ringsmall=63228,t.Rinvertedbreve=530,t.Rlinebelow=7774,t.Rmonospace=65330,t.Rsmall=63346,t.Rsmallinverted=641,t.Rsmallinvertedsuperior=694,t.S=83,t.SF010000=9484,t.SF020000=9492,t.SF030000=9488,t.SF040000=9496,t.SF050000=9532,t.SF060000=9516,t.SF070000=9524,t.SF080000=9500,t.SF090000=9508,t.SF100000=9472,t.SF110000=9474,t.SF190000=9569,t.SF200000=9570,t.SF210000=9558,t.SF220000=9557,t.SF230000=9571,t.SF240000=9553,t.SF250000=9559,t.SF260000=9565,t.SF270000=9564,t.SF280000=9563,t.SF360000=9566,t.SF370000=9567,t.SF380000=9562,t.SF390000=9556,t.SF400000=9577,t.SF410000=9574,t.SF420000=9568,t.SF430000=9552,t.SF440000=9580,t.SF450000=9575,t.SF460000=9576,t.SF470000=9572,t.SF480000=9573,t.SF490000=9561,t.SF500000=9560,t.SF510000=9554,t.SF520000=9555,t.SF530000=9579,t.SF540000=9578,t.Sacute=346,t.Sacutedotaccent=7780,t.Sampigreek=992,t.Scaron=352,t.Scarondotaccent=7782,t.Scaronsmall=63229,t.Scedilla=350,t.Schwa=399,t.Schwacyrillic=1240,t.Schwadieresiscyrillic=1242,t.Scircle=9416,t.Scircumflex=348,t.Scommaaccent=536,t.Sdotaccent=7776,t.Sdotbelow=7778,t.Sdotbelowdotaccent=7784,t.Seharmenian=1357,t.Sevenroman=8550,t.Shaarmenian=1351,t.Shacyrillic=1064,t.Shchacyrillic=1065,t.Sheicoptic=994,t.Shhacyrillic=1210,t.Shimacoptic=1004,t.Sigma=931,t.Sixroman=8549,t.Smonospace=65331,t.Softsigncyrillic=1068,t.Ssmall=63347,t.Stigmagreek=986,t.T=84,t.Tau=932,t.Tbar=358,t.Tcaron=356,t.Tcedilla=354,t.Tcircle=9417,t.Tcircumflexbelow=7792,t.Tcommaaccent=354,t.Tdotaccent=7786,t.Tdotbelow=7788,t.Tecyrillic=1058,t.Tedescendercyrillic=1196,t.Tenroman=8553,t.Tetsecyrillic=1204,t.Theta=920,t.Thook=428,t.Thorn=222,t.Thornsmall=63486,t.Threeroman=8546,t.Tildesmall=63230,t.Tiwnarmenian=1359,t.Tlinebelow=7790,t.Tmonospace=65332,t.Toarmenian=1337,t.Tonefive=444,t.Tonesix=388,t.Tonetwo=423,t.Tretroflexhook=430,t.Tsecyrillic=1062,t.Tshecyrillic=1035,t.Tsmall=63348,t.Twelveroman=8555,t.Tworoman=8545,t.U=85,t.Uacute=218,t.Uacutesmall=63482,t.Ubreve=364,t.Ucaron=467,t.Ucircle=9418,t.Ucircumflex=219,t.Ucircumflexbelow=7798,t.Ucircumflexsmall=63483,t.Ucyrillic=1059,t.Udblacute=368,t.Udblgrave=532,t.Udieresis=220,t.Udieresisacute=471,t.Udieresisbelow=7794,t.Udieresiscaron=473,t.Udieresiscyrillic=1264,t.Udieresisgrave=475,t.Udieresismacron=469,t.Udieresissmall=63484,t.Udotbelow=7908,t.Ugrave=217,t.Ugravesmall=63481,t.Uhookabove=7910,t.Uhorn=431,t.Uhornacute=7912,t.Uhorndotbelow=7920,t.Uhorngrave=7914,t.Uhornhookabove=7916,t.Uhorntilde=7918,t.Uhungarumlaut=368,t.Uhungarumlautcyrillic=1266,t.Uinvertedbreve=534,t.Ukcyrillic=1144,t.Umacron=362,t.Umacroncyrillic=1262,t.Umacrondieresis=7802,t.Umonospace=65333,t.Uogonek=370,t.Upsilon=933,t.Upsilon1=978,t.Upsilonacutehooksymbolgreek=979,t.Upsilonafrican=433,t.Upsilondieresis=939,t.Upsilondieresishooksymbolgreek=980,t.Upsilonhooksymbol=978,t.Upsilontonos=910,t.Uring=366,t.Ushortcyrillic=1038,t.Usmall=63349,t.Ustraightcyrillic=1198,t.Ustraightstrokecyrillic=1200,t.Utilde=360,t.Utildeacute=7800,t.Utildebelow=7796,t.V=86,t.Vcircle=9419,t.Vdotbelow=7806,t.Vecyrillic=1042,t.Vewarmenian=1358,t.Vhook=434,t.Vmonospace=65334,t.Voarmenian=1352,t.Vsmall=63350,t.Vtilde=7804,t.W=87,t.Wacute=7810,t.Wcircle=9420,t.Wcircumflex=372,t.Wdieresis=7812,t.Wdotaccent=7814,t.Wdotbelow=7816,t.Wgrave=7808,t.Wmonospace=65335,t.Wsmall=63351,t.X=88,t.Xcircle=9421,t.Xdieresis=7820,t.Xdotaccent=7818,t.Xeharmenian=1341,t.Xi=926,t.Xmonospace=65336,t.Xsmall=63352,t.Y=89,t.Yacute=221,t.Yacutesmall=63485,t.Yatcyrillic=1122,t.Ycircle=9422,t.Ycircumflex=374,t.Ydieresis=376,t.Ydieresissmall=63487,t.Ydotaccent=7822,t.Ydotbelow=7924,t.Yericyrillic=1067,t.Yerudieresiscyrillic=1272,t.Ygrave=7922,t.Yhook=435,t.Yhookabove=7926,t.Yiarmenian=1349,t.Yicyrillic=1031,t.Yiwnarmenian=1362,t.Ymonospace=65337,t.Ysmall=63353,t.Ytilde=7928,t.Yusbigcyrillic=1130,t.Yusbigiotifiedcyrillic=1132,t.Yuslittlecyrillic=1126,t.Yuslittleiotifiedcyrillic=1128,t.Z=90,t.Zaarmenian=1334,t.Zacute=377,t.Zcaron=381,t.Zcaronsmall=63231,t.Zcircle=9423,t.Zcircumflex=7824,t.Zdot=379,t.Zdotaccent=379,t.Zdotbelow=7826,t.Zecyrillic=1047,t.Zedescendercyrillic=1176,t.Zedieresiscyrillic=1246,t.Zeta=918,t.Zhearmenian=1338,t.Zhebrevecyrillic=1217,t.Zhecyrillic=1046,t.Zhedescendercyrillic=1174,t.Zhedieresiscyrillic=1244,t.Zlinebelow=7828,t.Zmonospace=65338,t.Zsmall=63354,t.Zstroke=437,t.a=97,t.aabengali=2438,t.aacute=225,t.aadeva=2310,t.aagujarati=2694,t.aagurmukhi=2566,t.aamatragurmukhi=2622,t.aarusquare=13059,t.aavowelsignbengali=2494,t.aavowelsigndeva=2366,t.aavowelsigngujarati=2750,t.abbreviationmarkarmenian=1375,t.abbreviationsigndeva=2416,t.abengali=2437,t.abopomofo=12570,t.abreve=259,t.abreveacute=7855,t.abrevecyrillic=1233,t.abrevedotbelow=7863,t.abrevegrave=7857,t.abrevehookabove=7859,t.abrevetilde=7861,t.acaron=462,t.acircle=9424,t.acircumflex=226,t.acircumflexacute=7845,t.acircumflexdotbelow=7853,t.acircumflexgrave=7847,t.acircumflexhookabove=7849,t.acircumflextilde=7851,t.acute=180,t.acutebelowcmb=791,t.acutecmb=769,t.acutecomb=769,t.acutedeva=2388,t.acutelowmod=719,t.acutetonecmb=833,t.acyrillic=1072,t.adblgrave=513,t.addakgurmukhi=2673,t.adeva=2309,t.adieresis=228,t.adieresiscyrillic=1235,t.adieresismacron=479,t.adotbelow=7841,t.adotmacron=481,t.ae=230,t.aeacute=509,t.aekorean=12624,t.aemacron=483,t.afii00208=8213,t.afii08941=8356,t.afii10017=1040,t.afii10018=1041,t.afii10019=1042,t.afii10020=1043,t.afii10021=1044,t.afii10022=1045,t.afii10023=1025,t.afii10024=1046,t.afii10025=1047,t.afii10026=1048,t.afii10027=1049,t.afii10028=1050,t.afii10029=1051,t.afii10030=1052;t.afii10031=1053,t.afii10032=1054,t.afii10033=1055,t.afii10034=1056,t.afii10035=1057,t.afii10036=1058,t.afii10037=1059,t.afii10038=1060,t.afii10039=1061,t.afii10040=1062,t.afii10041=1063,t.afii10042=1064,t.afii10043=1065,t.afii10044=1066,t.afii10045=1067,t.afii10046=1068,t.afii10047=1069,t.afii10048=1070,t.afii10049=1071,t.afii10050=1168,t.afii10051=1026,t.afii10052=1027,t.afii10053=1028,t.afii10054=1029,t.afii10055=1030,t.afii10056=1031,t.afii10057=1032,t.afii10058=1033,t.afii10059=1034,t.afii10060=1035,t.afii10061=1036,t.afii10062=1038,t.afii10063=63172,t.afii10064=63173,t.afii10065=1072,t.afii10066=1073,t.afii10067=1074,t.afii10068=1075,t.afii10069=1076,t.afii10070=1077,t.afii10071=1105,t.afii10072=1078,t.afii10073=1079,t.afii10074=1080,t.afii10075=1081,t.afii10076=1082,t.afii10077=1083,t.afii10078=1084,t.afii10079=1085,t.afii10080=1086,t.afii10081=1087,t.afii10082=1088,t.afii10083=1089,t.afii10084=1090,t.afii10085=1091,t.afii10086=1092,t.afii10087=1093,t.afii10088=1094,t.afii10089=1095,t.afii10090=1096,t.afii10091=1097,t.afii10092=1098,t.afii10093=1099,t.afii10094=1100,t.afii10095=1101,t.afii10096=1102,t.afii10097=1103,t.afii10098=1169,t.afii10099=1106,t.afii10100=1107,t.afii10101=1108,t.afii10102=1109,t.afii10103=1110,t.afii10104=1111,t.afii10105=1112,t.afii10106=1113,t.afii10107=1114,t.afii10108=1115,t.afii10109=1116,t.afii10110=1118,t.afii10145=1039,t.afii10146=1122,t.afii10147=1138,t.afii10148=1140,t.afii10192=63174,t.afii10193=1119,t.afii10194=1123,t.afii10195=1139,t.afii10196=1141,t.afii10831=63175,t.afii10832=63176,t.afii10846=1241,t.afii299=8206,t.afii300=8207,t.afii301=8205,t.afii57381=1642,t.afii57388=1548,t.afii57392=1632,t.afii57393=1633,t.afii57394=1634,t.afii57395=1635,t.afii57396=1636,t.afii57397=1637,t.afii57398=1638,t.afii57399=1639,t.afii57400=1640,t.afii57401=1641,t.afii57403=1563,t.afii57407=1567,t.afii57409=1569,t.afii57410=1570,t.afii57411=1571,t.afii57412=1572,t.afii57413=1573,t.afii57414=1574,t.afii57415=1575,t.afii57416=1576,t.afii57417=1577,t.afii57418=1578,t.afii57419=1579,t.afii57420=1580,t.afii57421=1581,t.afii57422=1582,t.afii57423=1583,t.afii57424=1584,t.afii57425=1585,t.afii57426=1586,t.afii57427=1587,t.afii57428=1588,t.afii57429=1589,t.afii57430=1590,t.afii57431=1591,t.afii57432=1592,t.afii57433=1593,t.afii57434=1594,t.afii57440=1600,t.afii57441=1601,t.afii57442=1602,t.afii57443=1603,t.afii57444=1604,t.afii57445=1605,t.afii57446=1606,t.afii57448=1608,t.afii57449=1609,t.afii57450=1610,t.afii57451=1611,t.afii57452=1612,t.afii57453=1613,t.afii57454=1614,t.afii57455=1615,t.afii57456=1616,t.afii57457=1617,t.afii57458=1618,t.afii57470=1607,t.afii57505=1700,t.afii57506=1662,t.afii57507=1670,t.afii57508=1688,t.afii57509=1711,t.afii57511=1657,t.afii57512=1672,t.afii57513=1681,t.afii57514=1722,t.afii57519=1746,t.afii57534=1749,t.afii57636=8362,t.afii57645=1470,t.afii57658=1475,t.afii57664=1488,t.afii57665=1489,t.afii57666=1490,t.afii57667=1491,t.afii57668=1492,t.afii57669=1493,t.afii57670=1494,t.afii57671=1495,t.afii57672=1496,t.afii57673=1497,t.afii57674=1498,t.afii57675=1499,t.afii57676=1500,t.afii57677=1501,t.afii57678=1502,t.afii57679=1503,t.afii57680=1504,t.afii57681=1505,t.afii57682=1506,t.afii57683=1507,t.afii57684=1508,t.afii57685=1509,t.afii57686=1510,t.afii57687=1511,t.afii57688=1512,t.afii57689=1513,t.afii57690=1514,t.afii57694=64298,t.afii57695=64299,t.afii57700=64331,t.afii57705=64287,t.afii57716=1520,t.afii57717=1521,t.afii57718=1522,t.afii57723=64309,t.afii57793=1460,t.afii57794=1461,t.afii57795=1462,t.afii57796=1467,t.afii57797=1464,t.afii57798=1463,t.afii57799=1456,t.afii57800=1458,t.afii57801=1457,t.afii57802=1459,t.afii57803=1474,t.afii57804=1473,t.afii57806=1465,t.afii57807=1468,t.afii57839=1469,t.afii57841=1471,t.afii57842=1472,t.afii57929=700,t.afii61248=8453,t.afii61289=8467,t.afii61352=8470,t.afii61573=8236,t.afii61574=8237,t.afii61575=8238,t.afii61664=8204,t.afii63167=1645,t.afii64937=701,t.agrave=224,t.agujarati=2693,t.agurmukhi=2565,t.ahiragana=12354,t.ahookabove=7843,t.aibengali=2448,t.aibopomofo=12574,t.aideva=2320,t.aiecyrillic=1237,t.aigujarati=2704,t.aigurmukhi=2576,t.aimatragurmukhi=2632,t.ainarabic=1593,t.ainfinalarabic=65226,t.aininitialarabic=65227,t.ainmedialarabic=65228,t.ainvertedbreve=515,t.aivowelsignbengali=2504,t.aivowelsigndeva=2376,t.aivowelsigngujarati=2760,t.akatakana=12450,t.akatakanahalfwidth=65393,t.akorean=12623,t.alef=1488,t.alefarabic=1575,t.alefdageshhebrew=64304,t.aleffinalarabic=65166,t.alefhamzaabovearabic=1571,t.alefhamzaabovefinalarabic=65156,t.alefhamzabelowarabic=1573,t.alefhamzabelowfinalarabic=65160,t.alefhebrew=1488,t.aleflamedhebrew=64335,t.alefmaddaabovearabic=1570,t.alefmaddaabovefinalarabic=65154,t.alefmaksuraarabic=1609,t.alefmaksurafinalarabic=65264,t.alefmaksurainitialarabic=65267,t.alefmaksuramedialarabic=65268,t.alefpatahhebrew=64302,t.alefqamatshebrew=64303,t.aleph=8501,t.allequal=8780,t.alpha=945,t.alphatonos=940,t.amacron=257,t.amonospace=65345,t.ampersand=38,t.ampersandmonospace=65286,t.ampersandsmall=63270,t.amsquare=13250,t.anbopomofo=12578,t.angbopomofo=12580,t.angbracketleft=12296,t.angbracketright=12297,t.angkhankhuthai=3674,t.angle=8736,t.anglebracketleft=12296,t.anglebracketleftvertical=65087,t.anglebracketright=12297,t.anglebracketrightvertical=65088,t.angleleft=9001,t.angleright=9002,t.angstrom=8491,t.anoteleia=903,t.anudattadeva=2386,t.anusvarabengali=2434,t.anusvaradeva=2306,t.anusvaragujarati=2690,t.aogonek=261,t.apaatosquare=13056,t.aparen=9372,t.apostrophearmenian=1370,t.apostrophemod=700,t.apple=63743,t.approaches=8784,t.approxequal=8776,t.approxequalorimage=8786,t.approximatelyequal=8773,t.araeaekorean=12686,t.araeakorean=12685,t.arc=8978,t.arighthalfring=7834,t.aring=229,t.aringacute=507,t.aringbelow=7681,t.arrowboth=8596,t.arrowdashdown=8675,t.arrowdashleft=8672,t.arrowdashright=8674,t.arrowdashup=8673,t.arrowdblboth=8660,t.arrowdbldown=8659,t.arrowdblleft=8656,t.arrowdblright=8658,t.arrowdblup=8657,t.arrowdown=8595,t.arrowdownleft=8601,t.arrowdownright=8600,t.arrowdownwhite=8681,t.arrowheaddownmod=709,t.arrowheadleftmod=706,t.arrowheadrightmod=707,t.arrowheadupmod=708,t.arrowhorizex=63719,t.arrowleft=8592,t.arrowleftdbl=8656,t.arrowleftdblstroke=8653,t.arrowleftoverright=8646,t.arrowleftwhite=8678,t.arrowright=8594,t.arrowrightdblstroke=8655,t.arrowrightheavy=10142,t.arrowrightoverleft=8644,t.arrowrightwhite=8680,t.arrowtableft=8676,t.arrowtabright=8677,t.arrowup=8593,t.arrowupdn=8597,t.arrowupdnbse=8616,t.arrowupdownbase=8616,t.arrowupleft=8598,t.arrowupleftofdown=8645,t.arrowupright=8599,t.arrowupwhite=8679,t.arrowvertex=63718,t.asciicircum=94,t.asciicircummonospace=65342,t.asciitilde=126,t.asciitildemonospace=65374,t.ascript=593,t.ascriptturned=594,t.asmallhiragana=12353,t.asmallkatakana=12449,t.asmallkatakanahalfwidth=65383,t.asterisk=42,t.asteriskaltonearabic=1645,t.asteriskarabic=1645,t.asteriskmath=8727,t.asteriskmonospace=65290,t.asterisksmall=65121,t.asterism=8258,t.asuperior=63209,t.asymptoticallyequal=8771,t.at=64,t.atilde=227,t.atmonospace=65312,t.atsmall=65131,t.aturned=592,t.aubengali=2452,t.aubopomofo=12576,t.audeva=2324,t.augujarati=2708,t.augurmukhi=2580,t.aulengthmarkbengali=2519,t.aumatragurmukhi=2636,t.auvowelsignbengali=2508,t.auvowelsigndeva=2380,t.auvowelsigngujarati=2764,t.avagrahadeva=2365,t.aybarmenian=1377,t.ayin=1506,t.ayinaltonehebrew=64288,t.ayinhebrew=1506,t.b=98,t.babengali=2476,t.backslash=92,t.backslashmonospace=65340,t.badeva=2348,t.bagujarati=2732,t.bagurmukhi=2604,t.bahiragana=12400,t.bahtthai=3647,t.bakatakana=12496,t.bar=124,t.barmonospace=65372,t.bbopomofo=12549,t.bcircle=9425,t.bdotaccent=7683,t.bdotbelow=7685,t.beamedsixteenthnotes=9836,t.because=8757,t.becyrillic=1073,t.beharabic=1576,t.behfinalarabic=65168,t.behinitialarabic=65169,t.behiragana=12409,t.behmedialarabic=65170,t.behmeeminitialarabic=64671,t.behmeemisolatedarabic=64520,t.behnoonfinalarabic=64621,t.bekatakana=12505,t.benarmenian=1378,t.bet=1489,t.beta=946,t.betasymbolgreek=976,t.betdagesh=64305,t.betdageshhebrew=64305,t.bethebrew=1489,t.betrafehebrew=64332,t.bhabengali=2477,t.bhadeva=2349,t.bhagujarati=2733,t.bhagurmukhi=2605,t.bhook=595,t.bihiragana=12403,t.bikatakana=12499,t.bilabialclick=664,t.bindigurmukhi=2562,t.birusquare=13105,t.blackcircle=9679,t.blackdiamond=9670,t.blackdownpointingtriangle=9660,t.blackleftpointingpointer=9668,t.blackleftpointingtriangle=9664,t.blacklenticularbracketleft=12304,t.blacklenticularbracketleftvertical=65083,t.blacklenticularbracketright=12305,t.blacklenticularbracketrightvertical=65084,t.blacklowerlefttriangle=9699,t.blacklowerrighttriangle=9698,t.blackrectangle=9644,t.blackrightpointingpointer=9658,t.blackrightpointingtriangle=9654,t.blacksmallsquare=9642,t.blacksmilingface=9787,t.blacksquare=9632,t.blackstar=9733,t.blackupperlefttriangle=9700,t.blackupperrighttriangle=9701,t.blackuppointingsmalltriangle=9652,t.blackuppointingtriangle=9650,t.blank=9251,t.blinebelow=7687,t.block=9608,t.bmonospace=65346,t.bobaimaithai=3610,t.bohiragana=12412,t.bokatakana=12508,t.bparen=9373,t.bqsquare=13251,t.braceex=63732,t.braceleft=123,t.braceleftbt=63731,t.braceleftmid=63730,t.braceleftmonospace=65371,t.braceleftsmall=65115,t.bracelefttp=63729,t.braceleftvertical=65079,t.braceright=125,t.bracerightbt=63742,t.bracerightmid=63741,t.bracerightmonospace=65373,t.bracerightsmall=65116,t.bracerighttp=63740,t.bracerightvertical=65080,t.bracketleft=91,t.bracketleftbt=63728,t.bracketleftex=63727,t.bracketleftmonospace=65339,t.bracketlefttp=63726,t.bracketright=93,t.bracketrightbt=63739,t.bracketrightex=63738,t.bracketrightmonospace=65341,t.bracketrighttp=63737,t.breve=728,t.brevebelowcmb=814,t.brevecmb=774,t.breveinvertedbelowcmb=815,t.breveinvertedcmb=785,t.breveinverteddoublecmb=865,t.bridgebelowcmb=810,t.bridgeinvertedbelowcmb=826,t.brokenbar=166,t.bstroke=384,t.bsuperior=63210,t.btopbar=387,t.buhiragana=12406,t.bukatakana=12502,t.bullet=8226,t.bulletinverse=9688,t.bulletoperator=8729,t.bullseye=9678,t.c=99,t.caarmenian=1390,t.cabengali=2458,t.cacute=263,t.cadeva=2330,t.cagujarati=2714,t.cagurmukhi=2586,t.calsquare=13192,t.candrabindubengali=2433,t.candrabinducmb=784,t.candrabindudeva=2305,t.candrabindugujarati=2689,t.capslock=8682,t.careof=8453,t.caron=711,t.caronbelowcmb=812,t.caroncmb=780,t.carriagereturn=8629,t.cbopomofo=12568,t.ccaron=269,t.ccedilla=231,t.ccedillaacute=7689,t.ccircle=9426,t.ccircumflex=265,t.ccurl=597,t.cdot=267,t.cdotaccent=267,t.cdsquare=13253,t.cedilla=184,t.cedillacmb=807,t.cent=162,t.centigrade=8451,t.centinferior=63199,t.centmonospace=65504,t.centoldstyle=63394,t.centsuperior=63200,t.chaarmenian=1401,t.chabengali=2459,t.chadeva=2331,t.chagujarati=2715,t.chagurmukhi=2587,t.chbopomofo=12564,t.cheabkhasiancyrillic=1213,t.checkmark=10003,t.checyrillic=1095,t.chedescenderabkhasiancyrillic=1215,t.chedescendercyrillic=1207,t.chedieresiscyrillic=1269,t.cheharmenian=1395,t.chekhakassiancyrillic=1228,t.cheverticalstrokecyrillic=1209,t.chi=967,t.chieuchacirclekorean=12919,t.chieuchaparenkorean=12823,t.chieuchcirclekorean=12905,t.chieuchkorean=12618,t.chieuchparenkorean=12809,t.chochangthai=3594,t.chochanthai=3592,t.chochingthai=3593,t.chochoethai=3596,t.chook=392,t.cieucacirclekorean=12918,t.cieucaparenkorean=12822,t.cieuccirclekorean=12904,t.cieuckorean=12616,t.cieucparenkorean=12808,t.cieucuparenkorean=12828,t.circle=9675,t.circlecopyrt=169,t.circlemultiply=8855,t.circleot=8857,t.circleplus=8853,t.circlepostalmark=12342,t.circlewithlefthalfblack=9680,t.circlewithrighthalfblack=9681,t.circumflex=710,t.circumflexbelowcmb=813,t.circumflexcmb=770,t.clear=8999,t.clickalveolar=450,t.clickdental=448,t.clicklateral=449,t.clickretroflex=451,t.club=9827,t.clubsuitblack=9827,t.clubsuitwhite=9831,t.cmcubedsquare=13220,t.cmonospace=65347,t.cmsquaredsquare=13216,t.coarmenian=1409,t.colon=58,t.colonmonetary=8353,t.colonmonospace=65306,t.colonsign=8353,t.colonsmall=65109,t.colontriangularhalfmod=721,t.colontriangularmod=720,t.comma=44,t.commaabovecmb=787,t.commaaboverightcmb=789,t.commaaccent=63171,t.commaarabic=1548,t.commaarmenian=1373,t.commainferior=63201,t.commamonospace=65292,t.commareversedabovecmb=788,t.commareversedmod=701,t.commasmall=65104,t.commasuperior=63202,t.commaturnedabovecmb=786,t.commaturnedmod=699,t.compass=9788,t.congruent=8773,t.contourintegral=8750,t.control=8963,t.controlACK=6,t.controlBEL=7,t.controlBS=8,t.controlCAN=24,t.controlCR=13,t.controlDC1=17,t.controlDC2=18,t.controlDC3=19,t.controlDC4=20,t.controlDEL=127,t.controlDLE=16,t.controlEM=25,t.controlENQ=5,t.controlEOT=4,t.controlESC=27,t.controlETB=23,t.controlETX=3,t.controlFF=12,t.controlFS=28,t.controlGS=29,t.controlHT=9,t.controlLF=10,t.controlNAK=21,t.controlNULL=0,t.controlRS=30,t.controlSI=15,t.controlSO=14,t.controlSOT=2,t.controlSTX=1,t.controlSUB=26,t.controlSYN=22,t.controlUS=31,t.controlVT=11,t.copyright=169,t.copyrightsans=63721,t.copyrightserif=63193,t.cornerbracketleft=12300,t.cornerbracketlefthalfwidth=65378,t.cornerbracketleftvertical=65089,t.cornerbracketright=12301,t.cornerbracketrighthalfwidth=65379,t.cornerbracketrightvertical=65090,t.corporationsquare=13183,t.cosquare=13255,t.coverkgsquare=13254,t.cparen=9374,t.cruzeiro=8354,t.cstretched=663,t.curlyand=8911,t.curlyor=8910,t.currency=164,t.cyrBreve=63185,t.cyrFlex=63186,t.cyrbreve=63188,t.cyrflex=63189,t.d=100,t.daarmenian=1380,t.dabengali=2470,t.dadarabic=1590,t.dadeva=2342,t.dadfinalarabic=65214,t.dadinitialarabic=65215,t.dadmedialarabic=65216,t.dagesh=1468,t.dageshhebrew=1468,t.dagger=8224,t.daggerdbl=8225,t.dagujarati=2726,t.dagurmukhi=2598,t.dahiragana=12384,t.dakatakana=12480,t.dalarabic=1583,t.dalet=1491,t.daletdagesh=64307,t.daletdageshhebrew=64307,t.dalethebrew=1491,t.dalfinalarabic=65194,t.dammaarabic=1615,t.dammalowarabic=1615,t.dammatanaltonearabic=1612,t.dammatanarabic=1612,t.danda=2404,t.dargahebrew=1447,t.dargalefthebrew=1447,t.dasiapneumatacyrilliccmb=1157,t.dblGrave=63187,t.dblanglebracketleft=12298,t.dblanglebracketleftvertical=65085,t.dblanglebracketright=12299,t.dblanglebracketrightvertical=65086,t.dblarchinvertedbelowcmb=811,t.dblarrowleft=8660,t.dblarrowright=8658,t.dbldanda=2405,t.dblgrave=63190,t.dblgravecmb=783,t.dblintegral=8748,t.dbllowline=8215,t.dbllowlinecmb=819,t.dbloverlinecmb=831,t.dblprimemod=698,t.dblverticalbar=8214,t.dblverticallineabovecmb=782,t.dbopomofo=12553,t.dbsquare=13256,t.dcaron=271,t.dcedilla=7697,t.dcircle=9427,t.dcircumflexbelow=7699,t.dcroat=273,t.ddabengali=2465,t.ddadeva=2337,t.ddagujarati=2721,t.ddagurmukhi=2593,t.ddalarabic=1672,t.ddalfinalarabic=64393,t.dddhadeva=2396,t.ddhabengali=2466,t.ddhadeva=2338,t.ddhagujarati=2722,t.ddhagurmukhi=2594,t.ddotaccent=7691,t.ddotbelow=7693,t.decimalseparatorarabic=1643,t.decimalseparatorpersian=1643,t.decyrillic=1076,t.degree=176,t.dehihebrew=1453,t.dehiragana=12391,t.deicoptic=1007,t.dekatakana=12487,t.deleteleft=9003,t.deleteright=8998,t.delta=948,t.deltaturned=397,t.denominatorminusonenumeratorbengali=2552,t.dezh=676,t.dhabengali=2471,t.dhadeva=2343,t.dhagujarati=2727,t.dhagurmukhi=2599,t.dhook=599,t.dialytikatonos=901,t.dialytikatonoscmb=836,t.diamond=9830,t.diamondsuitwhite=9826,t.dieresis=168,t.dieresisacute=63191,t.dieresisbelowcmb=804,t.dieresiscmb=776,t.dieresisgrave=63192,t.dieresistonos=901,t.dihiragana=12386,t.dikatakana=12482,t.dittomark=12291,t.divide=247,t.divides=8739,t.divisionslash=8725,t.djecyrillic=1106,t.dkshade=9619,t.dlinebelow=7695,t.dlsquare=13207,t.dmacron=273,t.dmonospace=65348,t.dnblock=9604,t.dochadathai=3598,t.dodekthai=3604,t.dohiragana=12393,t.dokatakana=12489,t.dollar=36;t.dollarinferior=63203,t.dollarmonospace=65284,t.dollaroldstyle=63268,t.dollarsmall=65129,t.dollarsuperior=63204,t.dong=8363,t.dorusquare=13094,t.dotaccent=729,t.dotaccentcmb=775,t.dotbelowcmb=803,t.dotbelowcomb=803,t.dotkatakana=12539,t.dotlessi=305,t.dotlessj=63166,t.dotlessjstrokehook=644,t.dotmath=8901,t.dottedcircle=9676,t.doubleyodpatah=64287,t.doubleyodpatahhebrew=64287,t.downtackbelowcmb=798,t.downtackmod=725,t.dparen=9375,t.dsuperior=63211,t.dtail=598,t.dtopbar=396,t.duhiragana=12389,t.dukatakana=12485,t.dz=499,t.dzaltone=675,t.dzcaron=454,t.dzcurl=677,t.dzeabkhasiancyrillic=1249,t.dzecyrillic=1109,t.dzhecyrillic=1119,t.e=101,t.eacute=233,t.earth=9793,t.ebengali=2447,t.ebopomofo=12572,t.ebreve=277,t.ecandradeva=2317,t.ecandragujarati=2701,t.ecandravowelsigndeva=2373,t.ecandravowelsigngujarati=2757,t.ecaron=283,t.ecedillabreve=7709,t.echarmenian=1381,t.echyiwnarmenian=1415,t.ecircle=9428,t.ecircumflex=234,t.ecircumflexacute=7871,t.ecircumflexbelow=7705,t.ecircumflexdotbelow=7879,t.ecircumflexgrave=7873,t.ecircumflexhookabove=7875,t.ecircumflextilde=7877,t.ecyrillic=1108,t.edblgrave=517,t.edeva=2319,t.edieresis=235,t.edot=279,t.edotaccent=279,t.edotbelow=7865,t.eegurmukhi=2575,t.eematragurmukhi=2631,t.efcyrillic=1092,t.egrave=232,t.egujarati=2703,t.eharmenian=1383,t.ehbopomofo=12573,t.ehiragana=12360,t.ehookabove=7867,t.eibopomofo=12575,t.eight=56,t.eightarabic=1640,t.eightbengali=2542,t.eightcircle=9319,t.eightcircleinversesansserif=10129,t.eightdeva=2414,t.eighteencircle=9329,t.eighteenparen=9349,t.eighteenperiod=9369,t.eightgujarati=2798,t.eightgurmukhi=2670,t.eighthackarabic=1640,t.eighthangzhou=12328,t.eighthnotebeamed=9835,t.eightideographicparen=12839,t.eightinferior=8328,t.eightmonospace=65304,t.eightoldstyle=63288,t.eightparen=9339,t.eightperiod=9359,t.eightpersian=1784,t.eightroman=8567,t.eightsuperior=8312,t.eightthai=3672,t.einvertedbreve=519,t.eiotifiedcyrillic=1125,t.ekatakana=12456,t.ekatakanahalfwidth=65396,t.ekonkargurmukhi=2676,t.ekorean=12628,t.elcyrillic=1083,t.element=8712,t.elevencircle=9322,t.elevenparen=9342,t.elevenperiod=9362,t.elevenroman=8570,t.ellipsis=8230,t.ellipsisvertical=8942,t.emacron=275,t.emacronacute=7703,t.emacrongrave=7701,t.emcyrillic=1084,t.emdash=8212,t.emdashvertical=65073,t.emonospace=65349,t.emphasismarkarmenian=1371,t.emptyset=8709,t.enbopomofo=12579,t.encyrillic=1085,t.endash=8211,t.endashvertical=65074,t.endescendercyrillic=1187,t.eng=331,t.engbopomofo=12581,t.enghecyrillic=1189,t.enhookcyrillic=1224,t.enspace=8194,t.eogonek=281,t.eokorean=12627,t.eopen=603,t.eopenclosed=666,t.eopenreversed=604,t.eopenreversedclosed=606,t.eopenreversedhook=605,t.eparen=9376,t.epsilon=949,t.epsilontonos=941,t.equal=61,t.equalmonospace=65309,t.equalsmall=65126,t.equalsuperior=8316,t.equivalence=8801,t.erbopomofo=12582,t.ercyrillic=1088,t.ereversed=600,t.ereversedcyrillic=1101,t.escyrillic=1089,t.esdescendercyrillic=1195,t.esh=643,t.eshcurl=646,t.eshortdeva=2318,t.eshortvowelsigndeva=2374,t.eshreversedloop=426,t.eshsquatreversed=645,t.esmallhiragana=12359,t.esmallkatakana=12455,t.esmallkatakanahalfwidth=65386,t.estimated=8494,t.esuperior=63212,t.eta=951,t.etarmenian=1384,t.etatonos=942,t.eth=240,t.etilde=7869,t.etildebelow=7707,t.etnahtafoukhhebrew=1425,t.etnahtafoukhlefthebrew=1425,t.etnahtahebrew=1425,t.etnahtalefthebrew=1425,t.eturned=477,t.eukorean=12641,t.euro=8364,t.evowelsignbengali=2503,t.evowelsigndeva=2375,t.evowelsigngujarati=2759,t.exclam=33,t.exclamarmenian=1372,t.exclamdbl=8252,t.exclamdown=161,t.exclamdownsmall=63393,t.exclammonospace=65281,t.exclamsmall=63265,t.existential=8707,t.ezh=658,t.ezhcaron=495,t.ezhcurl=659,t.ezhreversed=441,t.ezhtail=442,t.f=102,t.fadeva=2398,t.fagurmukhi=2654,t.fahrenheit=8457,t.fathaarabic=1614,t.fathalowarabic=1614,t.fathatanarabic=1611,t.fbopomofo=12552,t.fcircle=9429,t.fdotaccent=7711,t.feharabic=1601,t.feharmenian=1414,t.fehfinalarabic=65234,t.fehinitialarabic=65235,t.fehmedialarabic=65236,t.feicoptic=997,t.female=9792,t.ff=64256,t.f_f=64256,t.ffi=64259,t.f_f_i=64259,t.ffl=64260,t.f_f_l=64260,t.fi=64257,t.f_i=64257,t.fifteencircle=9326,t.fifteenparen=9346,t.fifteenperiod=9366,t.figuredash=8210,t.filledbox=9632,t.filledrect=9644,t.finalkaf=1498,t.finalkafdagesh=64314,t.finalkafdageshhebrew=64314,t.finalkafhebrew=1498,t.finalmem=1501,t.finalmemhebrew=1501,t.finalnun=1503,t.finalnunhebrew=1503,t.finalpe=1507,t.finalpehebrew=1507,t.finaltsadi=1509,t.finaltsadihebrew=1509,t.firsttonechinese=713,t.fisheye=9673,t.fitacyrillic=1139,t.five=53,t.fivearabic=1637,t.fivebengali=2539,t.fivecircle=9316,t.fivecircleinversesansserif=10126,t.fivedeva=2411,t.fiveeighths=8541,t.fivegujarati=2795,t.fivegurmukhi=2667,t.fivehackarabic=1637,t.fivehangzhou=12325,t.fiveideographicparen=12836,t.fiveinferior=8325,t.fivemonospace=65301,t.fiveoldstyle=63285,t.fiveparen=9336,t.fiveperiod=9356,t.fivepersian=1781,t.fiveroman=8564,t.fivesuperior=8309,t.fivethai=3669,t.fl=64258,t.f_l=64258,t.florin=402,t.fmonospace=65350,t.fmsquare=13209,t.fofanthai=3615,t.fofathai=3613,t.fongmanthai=3663,t.forall=8704,t.four=52,t.fourarabic=1636,t.fourbengali=2538,t.fourcircle=9315,t.fourcircleinversesansserif=10125,t.fourdeva=2410,t.fourgujarati=2794,t.fourgurmukhi=2666,t.fourhackarabic=1636,t.fourhangzhou=12324,t.fourideographicparen=12835,t.fourinferior=8324,t.fourmonospace=65300,t.fournumeratorbengali=2551,t.fouroldstyle=63284,t.fourparen=9335,t.fourperiod=9355,t.fourpersian=1780,t.fourroman=8563,t.foursuperior=8308,t.fourteencircle=9325,t.fourteenparen=9345,t.fourteenperiod=9365,t.fourthai=3668,t.fourthtonechinese=715,t.fparen=9377,t.fraction=8260,t.franc=8355,t.g=103,t.gabengali=2455,t.gacute=501,t.gadeva=2327,t.gafarabic=1711,t.gaffinalarabic=64403,t.gafinitialarabic=64404,t.gafmedialarabic=64405,t.gagujarati=2711,t.gagurmukhi=2583,t.gahiragana=12364,t.gakatakana=12460,t.gamma=947,t.gammalatinsmall=611,t.gammasuperior=736,t.gangiacoptic=1003,t.gbopomofo=12557,t.gbreve=287,t.gcaron=487,t.gcedilla=291,t.gcircle=9430,t.gcircumflex=285,t.gcommaaccent=291,t.gdot=289,t.gdotaccent=289,t.gecyrillic=1075,t.gehiragana=12370,t.gekatakana=12466,t.geometricallyequal=8785,t.gereshaccenthebrew=1436,t.gereshhebrew=1523,t.gereshmuqdamhebrew=1437,t.germandbls=223,t.gershayimaccenthebrew=1438,t.gershayimhebrew=1524,t.getamark=12307,t.ghabengali=2456,t.ghadarmenian=1394,t.ghadeva=2328,t.ghagujarati=2712,t.ghagurmukhi=2584,t.ghainarabic=1594,t.ghainfinalarabic=65230,t.ghaininitialarabic=65231,t.ghainmedialarabic=65232,t.ghemiddlehookcyrillic=1173,t.ghestrokecyrillic=1171,t.gheupturncyrillic=1169,t.ghhadeva=2394,t.ghhagurmukhi=2650,t.ghook=608,t.ghzsquare=13203,t.gihiragana=12366,t.gikatakana=12462,t.gimarmenian=1379,t.gimel=1490,t.gimeldagesh=64306,t.gimeldageshhebrew=64306,t.gimelhebrew=1490,t.gjecyrillic=1107,t.glottalinvertedstroke=446,t.glottalstop=660,t.glottalstopinverted=662,t.glottalstopmod=704,t.glottalstopreversed=661,t.glottalstopreversedmod=705,t.glottalstopreversedsuperior=740,t.glottalstopstroke=673,t.glottalstopstrokereversed=674,t.gmacron=7713,t.gmonospace=65351,t.gohiragana=12372,t.gokatakana=12468,t.gparen=9378,t.gpasquare=13228,t.gradient=8711,t.grave=96,t.gravebelowcmb=790,t.gravecmb=768,t.gravecomb=768,t.gravedeva=2387,t.gravelowmod=718,t.gravemonospace=65344,t.gravetonecmb=832,t.greater=62,t.greaterequal=8805,t.greaterequalorless=8923,t.greatermonospace=65310,t.greaterorequivalent=8819,t.greaterorless=8823,t.greateroverequal=8807,t.greatersmall=65125,t.gscript=609,t.gstroke=485,t.guhiragana=12368,t.guillemotleft=171,t.guillemotright=187,t.guilsinglleft=8249,t.guilsinglright=8250,t.gukatakana=12464,t.guramusquare=13080,t.gysquare=13257,t.h=104,t.haabkhasiancyrillic=1193,t.haaltonearabic=1729,t.habengali=2489,t.hadescendercyrillic=1203,t.hadeva=2361,t.hagujarati=2745,t.hagurmukhi=2617,t.haharabic=1581,t.hahfinalarabic=65186,t.hahinitialarabic=65187,t.hahiragana=12399,t.hahmedialarabic=65188,t.haitusquare=13098,t.hakatakana=12495,t.hakatakanahalfwidth=65418,t.halantgurmukhi=2637,t.hamzaarabic=1569,t.hamzalowarabic=1569,t.hangulfiller=12644,t.hardsigncyrillic=1098,t.harpoonleftbarbup=8636,t.harpoonrightbarbup=8640,t.hasquare=13258,t.hatafpatah=1458,t.hatafpatah16=1458,t.hatafpatah23=1458,t.hatafpatah2f=1458,t.hatafpatahhebrew=1458,t.hatafpatahnarrowhebrew=1458,t.hatafpatahquarterhebrew=1458,t.hatafpatahwidehebrew=1458,t.hatafqamats=1459,t.hatafqamats1b=1459,t.hatafqamats28=1459,t.hatafqamats34=1459,t.hatafqamatshebrew=1459,t.hatafqamatsnarrowhebrew=1459,t.hatafqamatsquarterhebrew=1459,t.hatafqamatswidehebrew=1459,t.hatafsegol=1457,t.hatafsegol17=1457,t.hatafsegol24=1457,t.hatafsegol30=1457,t.hatafsegolhebrew=1457,t.hatafsegolnarrowhebrew=1457,t.hatafsegolquarterhebrew=1457,t.hatafsegolwidehebrew=1457,t.hbar=295,t.hbopomofo=12559,t.hbrevebelow=7723,t.hcedilla=7721,t.hcircle=9431,t.hcircumflex=293,t.hdieresis=7719,t.hdotaccent=7715,t.hdotbelow=7717,t.he=1492,t.heart=9829,t.heartsuitblack=9829,t.heartsuitwhite=9825,t.hedagesh=64308,t.hedageshhebrew=64308,t.hehaltonearabic=1729,t.heharabic=1607,t.hehebrew=1492,t.hehfinalaltonearabic=64423,t.hehfinalalttwoarabic=65258,t.hehfinalarabic=65258,t.hehhamzaabovefinalarabic=64421,t.hehhamzaaboveisolatedarabic=64420,t.hehinitialaltonearabic=64424,t.hehinitialarabic=65259,t.hehiragana=12408,t.hehmedialaltonearabic=64425,t.hehmedialarabic=65260,t.heiseierasquare=13179,t.hekatakana=12504,t.hekatakanahalfwidth=65421,t.hekutaarusquare=13110,t.henghook=615,t.herutusquare=13113,t.het=1495,t.hethebrew=1495,t.hhook=614,t.hhooksuperior=689,t.hieuhacirclekorean=12923,t.hieuhaparenkorean=12827,t.hieuhcirclekorean=12909,t.hieuhkorean=12622,t.hieuhparenkorean=12813,t.hihiragana=12402,t.hikatakana=12498,t.hikatakanahalfwidth=65419,t.hiriq=1460,t.hiriq14=1460,t.hiriq21=1460,t.hiriq2d=1460,t.hiriqhebrew=1460,t.hiriqnarrowhebrew=1460,t.hiriqquarterhebrew=1460,t.hiriqwidehebrew=1460,t.hlinebelow=7830,t.hmonospace=65352,t.hoarmenian=1392,t.hohipthai=3627,t.hohiragana=12411,t.hokatakana=12507,t.hokatakanahalfwidth=65422,t.holam=1465,t.holam19=1465,t.holam26=1465,t.holam32=1465,t.holamhebrew=1465,t.holamnarrowhebrew=1465,t.holamquarterhebrew=1465,t.holamwidehebrew=1465,t.honokhukthai=3630,t.hookabovecomb=777,t.hookcmb=777,t.hookpalatalizedbelowcmb=801,t.hookretroflexbelowcmb=802,t.hoonsquare=13122,t.horicoptic=1001,t.horizontalbar=8213,t.horncmb=795,t.hotsprings=9832,t.house=8962,t.hparen=9379,t.hsuperior=688,t.hturned=613,t.huhiragana=12405,t.huiitosquare=13107,t.hukatakana=12501,t.hukatakanahalfwidth=65420,t.hungarumlaut=733,t.hungarumlautcmb=779,t.hv=405,t.hyphen=45,t.hypheninferior=63205,t.hyphenmonospace=65293,t.hyphensmall=65123,t.hyphensuperior=63206,t.hyphentwo=8208,t.i=105,t.iacute=237,t.iacyrillic=1103,t.ibengali=2439,t.ibopomofo=12583,t.ibreve=301,t.icaron=464,t.icircle=9432,t.icircumflex=238,t.icyrillic=1110,t.idblgrave=521,t.ideographearthcircle=12943,t.ideographfirecircle=12939,t.ideographicallianceparen=12863,t.ideographiccallparen=12858,t.ideographiccentrecircle=12965,t.ideographicclose=12294,t.ideographiccomma=12289,t.ideographiccommaleft=65380,t.ideographiccongratulationparen=12855,t.ideographiccorrectcircle=12963,t.ideographicearthparen=12847,t.ideographicenterpriseparen=12861,t.ideographicexcellentcircle=12957,t.ideographicfestivalparen=12864,t.ideographicfinancialcircle=12950,t.ideographicfinancialparen=12854,t.ideographicfireparen=12843,t.ideographichaveparen=12850,t.ideographichighcircle=12964,t.ideographiciterationmark=12293,t.ideographiclaborcircle=12952,t.ideographiclaborparen=12856,t.ideographicleftcircle=12967,t.ideographiclowcircle=12966,t.ideographicmedicinecircle=12969,t.ideographicmetalparen=12846,t.ideographicmoonparen=12842,t.ideographicnameparen=12852,t.ideographicperiod=12290,t.ideographicprintcircle=12958,t.ideographicreachparen=12867,t.ideographicrepresentparen=12857,t.ideographicresourceparen=12862,t.ideographicrightcircle=12968,t.ideographicsecretcircle=12953,t.ideographicselfparen=12866,t.ideographicsocietyparen=12851,t.ideographicspace=12288,t.ideographicspecialparen=12853,t.ideographicstockparen=12849,t.ideographicstudyparen=12859,t.ideographicsunparen=12848,t.ideographicsuperviseparen=12860,t.ideographicwaterparen=12844,t.ideographicwoodparen=12845,t.ideographiczero=12295,t.ideographmetalcircle=12942,t.ideographmooncircle=12938,t.ideographnamecircle=12948,t.ideographsuncircle=12944,t.ideographwatercircle=12940,t.ideographwoodcircle=12941,t.ideva=2311,t.idieresis=239,t.idieresisacute=7727,t.idieresiscyrillic=1253,t.idotbelow=7883,t.iebrevecyrillic=1239,t.iecyrillic=1077,t.ieungacirclekorean=12917,t.ieungaparenkorean=12821,t.ieungcirclekorean=12903,t.ieungkorean=12615,t.ieungparenkorean=12807,t.igrave=236,t.igujarati=2695,t.igurmukhi=2567,t.ihiragana=12356,t.ihookabove=7881,t.iibengali=2440,t.iicyrillic=1080,t.iideva=2312,t.iigujarati=2696,t.iigurmukhi=2568,t.iimatragurmukhi=2624,t.iinvertedbreve=523,t.iishortcyrillic=1081,t.iivowelsignbengali=2496,t.iivowelsigndeva=2368,t.iivowelsigngujarati=2752,t.ij=307,t.ikatakana=12452,t.ikatakanahalfwidth=65394,t.ikorean=12643,t.ilde=732,t.iluyhebrew=1452,t.imacron=299,t.imacroncyrillic=1251,t.imageorapproximatelyequal=8787,t.imatragurmukhi=2623,t.imonospace=65353,t.increment=8710,t.infinity=8734,t.iniarmenian=1387,t.integral=8747,t.integralbottom=8993,t.integralbt=8993,t.integralex=63733,t.integraltop=8992,t.integraltp=8992,t.intersection=8745,t.intisquare=13061,t.invbullet=9688,t.invcircle=9689,t.invsmileface=9787,t.iocyrillic=1105,t.iogonek=303,t.iota=953,t.iotadieresis=970,t.iotadieresistonos=912,t.iotalatin=617,t.iotatonos=943,t.iparen=9380,t.irigurmukhi=2674,t.ismallhiragana=12355,t.ismallkatakana=12451,t.ismallkatakanahalfwidth=65384,t.issharbengali=2554,t.istroke=616,t.isuperior=63213,t.iterationhiragana=12445,t.iterationkatakana=12541,t.itilde=297,t.itildebelow=7725,t.iubopomofo=12585,t.iucyrillic=1102,t.ivowelsignbengali=2495,t.ivowelsigndeva=2367,t.ivowelsigngujarati=2751,t.izhitsacyrillic=1141,t.izhitsadblgravecyrillic=1143,t.j=106,t.jaarmenian=1393,t.jabengali=2460,t.jadeva=2332,t.jagujarati=2716,t.jagurmukhi=2588,t.jbopomofo=12560,t.jcaron=496,t.jcircle=9433,t.jcircumflex=309,t.jcrossedtail=669,t.jdotlessstroke=607,t.jecyrillic=1112,t.jeemarabic=1580,t.jeemfinalarabic=65182,t.jeeminitialarabic=65183,t.jeemmedialarabic=65184,t.jeharabic=1688,t.jehfinalarabic=64395,t.jhabengali=2461,t.jhadeva=2333,t.jhagujarati=2717,t.jhagurmukhi=2589,t.jheharmenian=1403,t.jis=12292,t.jmonospace=65354,t.jparen=9381,t.jsuperior=690,t.k=107,t.kabashkircyrillic=1185,t.kabengali=2453,t.kacute=7729,t.kacyrillic=1082,t.kadescendercyrillic=1179,t.kadeva=2325,t.kaf=1499,t.kafarabic=1603,t.kafdagesh=64315,t.kafdageshhebrew=64315,t.kaffinalarabic=65242,t.kafhebrew=1499,t.kafinitialarabic=65243,t.kafmedialarabic=65244,t.kafrafehebrew=64333,t.kagujarati=2709,t.kagurmukhi=2581,t.kahiragana=12363,t.kahookcyrillic=1220,t.kakatakana=12459,t.kakatakanahalfwidth=65398,t.kappa=954,t.kappasymbolgreek=1008,t.kapyeounmieumkorean=12657,t.kapyeounphieuphkorean=12676,t.kapyeounpieupkorean=12664,t.kapyeounssangpieupkorean=12665,t.karoriisquare=13069,t.kashidaautoarabic=1600,t.kashidaautonosidebearingarabic=1600,t.kasmallkatakana=12533,t.kasquare=13188,t.kasraarabic=1616,t.kasratanarabic=1613,t.kastrokecyrillic=1183,t.katahiraprolongmarkhalfwidth=65392,t.kaverticalstrokecyrillic=1181,t.kbopomofo=12558,t.kcalsquare=13193,t.kcaron=489,t.kcedilla=311,t.kcircle=9434,t.kcommaaccent=311,t.kdotbelow=7731,t.keharmenian=1412,t.kehiragana=12369,t.kekatakana=12465,t.kekatakanahalfwidth=65401,t.kenarmenian=1391,t.kesmallkatakana=12534,t.kgreenlandic=312,t.khabengali=2454,t.khacyrillic=1093,t.khadeva=2326,t.khagujarati=2710,t.khagurmukhi=2582,t.khaharabic=1582,t.khahfinalarabic=65190,t.khahinitialarabic=65191,t.khahmedialarabic=65192,t.kheicoptic=999,t.khhadeva=2393,t.khhagurmukhi=2649,t.khieukhacirclekorean=12920,t.khieukhaparenkorean=12824,t.khieukhcirclekorean=12906,t.khieukhkorean=12619,t.khieukhparenkorean=12810,t.khokhaithai=3586,t.khokhonthai=3589,t.khokhuatthai=3587,t.khokhwaithai=3588,t.khomutthai=3675,t.khook=409,t.khorakhangthai=3590,t.khzsquare=13201,t.kihiragana=12365,t.kikatakana=12461,t.kikatakanahalfwidth=65399,t.kiroguramusquare=13077,t.kiromeetorusquare=13078,t.kirosquare=13076,t.kiyeokacirclekorean=12910,t.kiyeokaparenkorean=12814,t.kiyeokcirclekorean=12896,t.kiyeokkorean=12593,t.kiyeokparenkorean=12800,t.kiyeoksioskorean=12595;t.kjecyrillic=1116,t.klinebelow=7733,t.klsquare=13208,t.kmcubedsquare=13222,t.kmonospace=65355,t.kmsquaredsquare=13218,t.kohiragana=12371,t.kohmsquare=13248,t.kokaithai=3585,t.kokatakana=12467,t.kokatakanahalfwidth=65402,t.kooposquare=13086,t.koppacyrillic=1153,t.koreanstandardsymbol=12927,t.koroniscmb=835,t.kparen=9382,t.kpasquare=13226,t.ksicyrillic=1135,t.ktsquare=13263,t.kturned=670,t.kuhiragana=12367,t.kukatakana=12463,t.kukatakanahalfwidth=65400,t.kvsquare=13240,t.kwsquare=13246,t.l=108,t.labengali=2482,t.lacute=314,t.ladeva=2354,t.lagujarati=2738,t.lagurmukhi=2610,t.lakkhangyaothai=3653,t.lamaleffinalarabic=65276,t.lamalefhamzaabovefinalarabic=65272,t.lamalefhamzaaboveisolatedarabic=65271,t.lamalefhamzabelowfinalarabic=65274,t.lamalefhamzabelowisolatedarabic=65273,t.lamalefisolatedarabic=65275,t.lamalefmaddaabovefinalarabic=65270,t.lamalefmaddaaboveisolatedarabic=65269,t.lamarabic=1604,t.lambda=955,t.lambdastroke=411,t.lamed=1500,t.lameddagesh=64316,t.lameddageshhebrew=64316,t.lamedhebrew=1500,t.lamfinalarabic=65246,t.lamhahinitialarabic=64714,t.laminitialarabic=65247,t.lamjeeminitialarabic=64713,t.lamkhahinitialarabic=64715,t.lamlamhehisolatedarabic=65010,t.lammedialarabic=65248,t.lammeemhahinitialarabic=64904,t.lammeeminitialarabic=64716,t.largecircle=9711,t.lbar=410,t.lbelt=620,t.lbopomofo=12556,t.lcaron=318,t.lcedilla=316,t.lcircle=9435,t.lcircumflexbelow=7741,t.lcommaaccent=316,t.ldot=320,t.ldotaccent=320,t.ldotbelow=7735,t.ldotbelowmacron=7737,t.leftangleabovecmb=794,t.lefttackbelowcmb=792,t.less=60,t.lessequal=8804,t.lessequalorgreater=8922,t.lessmonospace=65308,t.lessorequivalent=8818,t.lessorgreater=8822,t.lessoverequal=8806,t.lesssmall=65124,t.lezh=622,t.lfblock=9612,t.lhookretroflex=621,t.lira=8356,t.liwnarmenian=1388,t.lj=457,t.ljecyrillic=1113,t.ll=63168,t.lladeva=2355,t.llagujarati=2739,t.llinebelow=7739,t.llladeva=2356,t.llvocalicbengali=2529,t.llvocalicdeva=2401,t.llvocalicvowelsignbengali=2531,t.llvocalicvowelsigndeva=2403,t.lmiddletilde=619,t.lmonospace=65356,t.lmsquare=13264,t.lochulathai=3628,t.logicaland=8743,t.logicalnot=172,t.logicalnotreversed=8976,t.logicalor=8744,t.lolingthai=3621,t.longs=383,t.lowlinecenterline=65102,t.lowlinecmb=818,t.lowlinedashed=65101,t.lozenge=9674,t.lparen=9383,t.lslash=322,t.lsquare=8467,t.lsuperior=63214,t.ltshade=9617,t.luthai=3622,t.lvocalicbengali=2444,t.lvocalicdeva=2316,t.lvocalicvowelsignbengali=2530,t.lvocalicvowelsigndeva=2402,t.lxsquare=13267,t.m=109,t.mabengali=2478,t.macron=175,t.macronbelowcmb=817,t.macroncmb=772,t.macronlowmod=717,t.macronmonospace=65507,t.macute=7743,t.madeva=2350,t.magujarati=2734,t.magurmukhi=2606,t.mahapakhhebrew=1444,t.mahapakhlefthebrew=1444,t.mahiragana=12414,t.maichattawalowleftthai=63637,t.maichattawalowrightthai=63636,t.maichattawathai=3659,t.maichattawaupperleftthai=63635,t.maieklowleftthai=63628,t.maieklowrightthai=63627,t.maiekthai=3656,t.maiekupperleftthai=63626,t.maihanakatleftthai=63620,t.maihanakatthai=3633,t.maitaikhuleftthai=63625,t.maitaikhuthai=3655,t.maitholowleftthai=63631,t.maitholowrightthai=63630,t.maithothai=3657,t.maithoupperleftthai=63629,t.maitrilowleftthai=63634,t.maitrilowrightthai=63633,t.maitrithai=3658,t.maitriupperleftthai=63632,t.maiyamokthai=3654,t.makatakana=12510,t.makatakanahalfwidth=65423,t.male=9794,t.mansyonsquare=13127,t.maqafhebrew=1470,t.mars=9794,t.masoracirclehebrew=1455,t.masquare=13187,t.mbopomofo=12551,t.mbsquare=13268,t.mcircle=9436,t.mcubedsquare=13221,t.mdotaccent=7745,t.mdotbelow=7747,t.meemarabic=1605,t.meemfinalarabic=65250,t.meeminitialarabic=65251,t.meemmedialarabic=65252,t.meemmeeminitialarabic=64721,t.meemmeemisolatedarabic=64584,t.meetorusquare=13133,t.mehiragana=12417,t.meizierasquare=13182,t.mekatakana=12513,t.mekatakanahalfwidth=65426,t.mem=1502,t.memdagesh=64318,t.memdageshhebrew=64318,t.memhebrew=1502,t.menarmenian=1396,t.merkhahebrew=1445,t.merkhakefulahebrew=1446,t.merkhakefulalefthebrew=1446,t.merkhalefthebrew=1445,t.mhook=625,t.mhzsquare=13202,t.middledotkatakanahalfwidth=65381,t.middot=183,t.mieumacirclekorean=12914,t.mieumaparenkorean=12818,t.mieumcirclekorean=12900,t.mieumkorean=12609,t.mieumpansioskorean=12656,t.mieumparenkorean=12804,t.mieumpieupkorean=12654,t.mieumsioskorean=12655,t.mihiragana=12415,t.mikatakana=12511,t.mikatakanahalfwidth=65424,t.minus=8722,t.minusbelowcmb=800,t.minuscircle=8854,t.minusmod=727,t.minusplus=8723,t.minute=8242,t.miribaarusquare=13130,t.mirisquare=13129,t.mlonglegturned=624,t.mlsquare=13206,t.mmcubedsquare=13219,t.mmonospace=65357,t.mmsquaredsquare=13215,t.mohiragana=12418,t.mohmsquare=13249,t.mokatakana=12514,t.mokatakanahalfwidth=65427,t.molsquare=13270,t.momathai=3617,t.moverssquare=13223,t.moverssquaredsquare=13224,t.mparen=9384,t.mpasquare=13227,t.mssquare=13235,t.msuperior=63215,t.mturned=623,t.mu=181,t.mu1=181,t.muasquare=13186,t.muchgreater=8811,t.muchless=8810,t.mufsquare=13196,t.mugreek=956,t.mugsquare=13197,t.muhiragana=12416,t.mukatakana=12512,t.mukatakanahalfwidth=65425,t.mulsquare=13205,t.multiply=215,t.mumsquare=13211,t.munahhebrew=1443,t.munahlefthebrew=1443,t.musicalnote=9834,t.musicalnotedbl=9835,t.musicflatsign=9837,t.musicsharpsign=9839,t.mussquare=13234,t.muvsquare=13238,t.muwsquare=13244,t.mvmegasquare=13241,t.mvsquare=13239,t.mwmegasquare=13247,t.mwsquare=13245,t.n=110,t.nabengali=2472,t.nabla=8711,t.nacute=324,t.nadeva=2344,t.nagujarati=2728,t.nagurmukhi=2600,t.nahiragana=12394,t.nakatakana=12490,t.nakatakanahalfwidth=65413,t.napostrophe=329,t.nasquare=13185,t.nbopomofo=12555,t.nbspace=160,t.ncaron=328,t.ncedilla=326,t.ncircle=9437,t.ncircumflexbelow=7755,t.ncommaaccent=326,t.ndotaccent=7749,t.ndotbelow=7751,t.nehiragana=12397,t.nekatakana=12493,t.nekatakanahalfwidth=65416,t.newsheqelsign=8362,t.nfsquare=13195,t.ngabengali=2457,t.ngadeva=2329,t.ngagujarati=2713,t.ngagurmukhi=2585,t.ngonguthai=3591,t.nhiragana=12435,t.nhookleft=626,t.nhookretroflex=627,t.nieunacirclekorean=12911,t.nieunaparenkorean=12815,t.nieuncieuckorean=12597,t.nieuncirclekorean=12897,t.nieunhieuhkorean=12598,t.nieunkorean=12596,t.nieunpansioskorean=12648,t.nieunparenkorean=12801,t.nieunsioskorean=12647,t.nieuntikeutkorean=12646,t.nihiragana=12395,t.nikatakana=12491,t.nikatakanahalfwidth=65414,t.nikhahitleftthai=63641,t.nikhahitthai=3661,t.nine=57,t.ninearabic=1641,t.ninebengali=2543,t.ninecircle=9320,t.ninecircleinversesansserif=10130,t.ninedeva=2415,t.ninegujarati=2799,t.ninegurmukhi=2671,t.ninehackarabic=1641,t.ninehangzhou=12329,t.nineideographicparen=12840,t.nineinferior=8329,t.ninemonospace=65305,t.nineoldstyle=63289,t.nineparen=9340,t.nineperiod=9360,t.ninepersian=1785,t.nineroman=8568,t.ninesuperior=8313,t.nineteencircle=9330,t.nineteenparen=9350,t.nineteenperiod=9370,t.ninethai=3673,t.nj=460,t.njecyrillic=1114,t.nkatakana=12531,t.nkatakanahalfwidth=65437,t.nlegrightlong=414,t.nlinebelow=7753,t.nmonospace=65358,t.nmsquare=13210,t.nnabengali=2467,t.nnadeva=2339,t.nnagujarati=2723,t.nnagurmukhi=2595,t.nnnadeva=2345,t.nohiragana=12398,t.nokatakana=12494,t.nokatakanahalfwidth=65417,t.nonbreakingspace=160,t.nonenthai=3603,t.nonuthai=3609,t.noonarabic=1606,t.noonfinalarabic=65254,t.noonghunnaarabic=1722,t.noonghunnafinalarabic=64415,t.nooninitialarabic=65255,t.noonjeeminitialarabic=64722,t.noonjeemisolatedarabic=64587,t.noonmedialarabic=65256,t.noonmeeminitialarabic=64725,t.noonmeemisolatedarabic=64590,t.noonnoonfinalarabic=64653,t.notcontains=8716,t.notelement=8713,t.notelementof=8713,t.notequal=8800,t.notgreater=8815,t.notgreaternorequal=8817,t.notgreaternorless=8825,t.notidentical=8802,t.notless=8814,t.notlessnorequal=8816,t.notparallel=8742,t.notprecedes=8832,t.notsubset=8836,t.notsucceeds=8833,t.notsuperset=8837,t.nowarmenian=1398,t.nparen=9385,t.nssquare=13233,t.nsuperior=8319,t.ntilde=241,t.nu=957,t.nuhiragana=12396,t.nukatakana=12492,t.nukatakanahalfwidth=65415,t.nuktabengali=2492,t.nuktadeva=2364,t.nuktagujarati=2748,t.nuktagurmukhi=2620,t.numbersign=35,t.numbersignmonospace=65283,t.numbersignsmall=65119,t.numeralsigngreek=884,t.numeralsignlowergreek=885,t.numero=8470,t.nun=1504,t.nundagesh=64320,t.nundageshhebrew=64320,t.nunhebrew=1504,t.nvsquare=13237,t.nwsquare=13243,t.nyabengali=2462,t.nyadeva=2334,t.nyagujarati=2718,t.nyagurmukhi=2590,t.o=111,t.oacute=243,t.oangthai=3629,t.obarred=629,t.obarredcyrillic=1257,t.obarreddieresiscyrillic=1259,t.obengali=2451,t.obopomofo=12571,t.obreve=335,t.ocandradeva=2321,t.ocandragujarati=2705,t.ocandravowelsigndeva=2377,t.ocandravowelsigngujarati=2761,t.ocaron=466,t.ocircle=9438,t.ocircumflex=244,t.ocircumflexacute=7889,t.ocircumflexdotbelow=7897,t.ocircumflexgrave=7891,t.ocircumflexhookabove=7893,t.ocircumflextilde=7895,t.ocyrillic=1086,t.odblacute=337,t.odblgrave=525,t.odeva=2323,t.odieresis=246,t.odieresiscyrillic=1255,t.odotbelow=7885,t.oe=339,t.oekorean=12634,t.ogonek=731,t.ogonekcmb=808,t.ograve=242,t.ogujarati=2707,t.oharmenian=1413,t.ohiragana=12362,t.ohookabove=7887,t.ohorn=417,t.ohornacute=7899,t.ohorndotbelow=7907,t.ohorngrave=7901,t.ohornhookabove=7903,t.ohorntilde=7905,t.ohungarumlaut=337,t.oi=419,t.oinvertedbreve=527,t.okatakana=12458,t.okatakanahalfwidth=65397,t.okorean=12631,t.olehebrew=1451,t.omacron=333,t.omacronacute=7763,t.omacrongrave=7761,t.omdeva=2384,t.omega=969,t.omega1=982,t.omegacyrillic=1121,t.omegalatinclosed=631,t.omegaroundcyrillic=1147,t.omegatitlocyrillic=1149,t.omegatonos=974,t.omgujarati=2768,t.omicron=959,t.omicrontonos=972,t.omonospace=65359,t.one=49,t.onearabic=1633,t.onebengali=2535,t.onecircle=9312,t.onecircleinversesansserif=10122,t.onedeva=2407,t.onedotenleader=8228,t.oneeighth=8539,t.onefitted=63196,t.onegujarati=2791,t.onegurmukhi=2663,t.onehackarabic=1633,t.onehalf=189,t.onehangzhou=12321,t.oneideographicparen=12832,t.oneinferior=8321,t.onemonospace=65297,t.onenumeratorbengali=2548,t.oneoldstyle=63281,t.oneparen=9332,t.oneperiod=9352,t.onepersian=1777,t.onequarter=188,t.oneroman=8560,t.onesuperior=185,t.onethai=3665,t.onethird=8531,t.oogonek=491,t.oogonekmacron=493,t.oogurmukhi=2579,t.oomatragurmukhi=2635,t.oopen=596,t.oparen=9386,t.openbullet=9702,t.option=8997,t.ordfeminine=170,t.ordmasculine=186,t.orthogonal=8735,t.oshortdeva=2322,t.oshortvowelsigndeva=2378,t.oslash=248,t.oslashacute=511,t.osmallhiragana=12361,t.osmallkatakana=12457,t.osmallkatakanahalfwidth=65387,t.ostrokeacute=511,t.osuperior=63216,t.otcyrillic=1151,t.otilde=245,t.otildeacute=7757,t.otildedieresis=7759,t.oubopomofo=12577,t.overline=8254,t.overlinecenterline=65098,t.overlinecmb=773,t.overlinedashed=65097,t.overlinedblwavy=65100,t.overlinewavy=65099,t.overscore=175,t.ovowelsignbengali=2507,t.ovowelsigndeva=2379,t.ovowelsigngujarati=2763,t.p=112,t.paampssquare=13184,t.paasentosquare=13099,t.pabengali=2474,t.pacute=7765,t.padeva=2346,t.pagedown=8671,t.pageup=8670,t.pagujarati=2730,t.pagurmukhi=2602,t.pahiragana=12401,t.paiyannoithai=3631,t.pakatakana=12497,t.palatalizationcyrilliccmb=1156,t.palochkacyrillic=1216,t.pansioskorean=12671,t.paragraph=182,t.parallel=8741,t.parenleft=40,t.parenleftaltonearabic=64830,t.parenleftbt=63725,t.parenleftex=63724,t.parenleftinferior=8333,t.parenleftmonospace=65288,t.parenleftsmall=65113,t.parenleftsuperior=8317,t.parenlefttp=63723,t.parenleftvertical=65077,t.parenright=41,t.parenrightaltonearabic=64831,t.parenrightbt=63736,t.parenrightex=63735,t.parenrightinferior=8334,t.parenrightmonospace=65289,t.parenrightsmall=65114,t.parenrightsuperior=8318,t.parenrighttp=63734,t.parenrightvertical=65078,t.partialdiff=8706,t.paseqhebrew=1472,t.pashtahebrew=1433,t.pasquare=13225,t.patah=1463,t.patah11=1463,t.patah1d=1463,t.patah2a=1463,t.patahhebrew=1463,t.patahnarrowhebrew=1463,t.patahquarterhebrew=1463,t.patahwidehebrew=1463,t.pazerhebrew=1441,t.pbopomofo=12550,t.pcircle=9439,t.pdotaccent=7767,t.pe=1508,t.pecyrillic=1087,t.pedagesh=64324,t.pedageshhebrew=64324,t.peezisquare=13115,t.pefinaldageshhebrew=64323,t.peharabic=1662,t.peharmenian=1402,t.pehebrew=1508,t.pehfinalarabic=64343,t.pehinitialarabic=64344,t.pehiragana=12410,t.pehmedialarabic=64345,t.pekatakana=12506,t.pemiddlehookcyrillic=1191,t.perafehebrew=64334,t.percent=37,t.percentarabic=1642,t.percentmonospace=65285,t.percentsmall=65130,t.period=46,t.periodarmenian=1417,t.periodcentered=183,t.periodhalfwidth=65377,t.periodinferior=63207,t.periodmonospace=65294,t.periodsmall=65106,t.periodsuperior=63208,t.perispomenigreekcmb=834,t.perpendicular=8869,t.perthousand=8240,t.peseta=8359,t.pfsquare=13194,t.phabengali=2475,t.phadeva=2347,t.phagujarati=2731,t.phagurmukhi=2603,t.phi=966,t.phi1=981,t.phieuphacirclekorean=12922,t.phieuphaparenkorean=12826,t.phieuphcirclekorean=12908,t.phieuphkorean=12621,t.phieuphparenkorean=12812,t.philatin=632,t.phinthuthai=3642,t.phisymbolgreek=981,t.phook=421,t.phophanthai=3614,t.phophungthai=3612,t.phosamphaothai=3616,t.pi=960,t.pieupacirclekorean=12915,t.pieupaparenkorean=12819,t.pieupcieuckorean=12662,t.pieupcirclekorean=12901,t.pieupkiyeokkorean=12658,t.pieupkorean=12610,t.pieupparenkorean=12805,t.pieupsioskiyeokkorean=12660,t.pieupsioskorean=12612,t.pieupsiostikeutkorean=12661,t.pieupthieuthkorean=12663,t.pieuptikeutkorean=12659,t.pihiragana=12404,t.pikatakana=12500,t.pisymbolgreek=982,t.piwrarmenian=1411,t.planckover2pi=8463,t.planckover2pi1=8463,t.plus=43,t.plusbelowcmb=799,t.pluscircle=8853,t.plusminus=177,t.plusmod=726,t.plusmonospace=65291,t.plussmall=65122,t.plussuperior=8314,t.pmonospace=65360,t.pmsquare=13272,t.pohiragana=12413,t.pointingindexdownwhite=9759,t.pointingindexleftwhite=9756,t.pointingindexrightwhite=9758,t.pointingindexupwhite=9757,t.pokatakana=12509,t.poplathai=3611,t.postalmark=12306,t.postalmarkface=12320,t.pparen=9387,t.precedes=8826,t.prescription=8478,t.primemod=697,t.primereversed=8245,t.product=8719,t.projective=8965,t.prolongedkana=12540,t.propellor=8984,t.propersubset=8834,t.propersuperset=8835,t.proportion=8759,t.proportional=8733,t.psi=968,t.psicyrillic=1137,t.psilipneumatacyrilliccmb=1158,t.pssquare=13232,t.puhiragana=12407,t.pukatakana=12503,t.pvsquare=13236,t.pwsquare=13242,t.q=113,t.qadeva=2392,t.qadmahebrew=1448,t.qafarabic=1602,t.qaffinalarabic=65238,t.qafinitialarabic=65239,t.qafmedialarabic=65240,t.qamats=1464,t.qamats10=1464,t.qamats1a=1464,t.qamats1c=1464,t.qamats27=1464,t.qamats29=1464,t.qamats33=1464,t.qamatsde=1464,t.qamatshebrew=1464,t.qamatsnarrowhebrew=1464,t.qamatsqatanhebrew=1464,t.qamatsqatannarrowhebrew=1464,t.qamatsqatanquarterhebrew=1464,t.qamatsqatanwidehebrew=1464,t.qamatsquarterhebrew=1464,t.qamatswidehebrew=1464,t.qarneyparahebrew=1439,t.qbopomofo=12561,t.qcircle=9440,t.qhook=672,t.qmonospace=65361,t.qof=1511,t.qofdagesh=64327,t.qofdageshhebrew=64327,t.qofhebrew=1511,t.qparen=9388,t.quarternote=9833,t.qubuts=1467,t.qubuts18=1467,t.qubuts25=1467,t.qubuts31=1467,t.qubutshebrew=1467,t.qubutsnarrowhebrew=1467,t.qubutsquarterhebrew=1467,t.qubutswidehebrew=1467,t.question=63,t.questionarabic=1567,t.questionarmenian=1374,t.questiondown=191,t.questiondownsmall=63423,t.questiongreek=894,t.questionmonospace=65311,t.questionsmall=63295,t.quotedbl=34,t.quotedblbase=8222,t.quotedblleft=8220,t.quotedblmonospace=65282,t.quotedblprime=12318,t.quotedblprimereversed=12317,t.quotedblright=8221,t.quoteleft=8216,t.quoteleftreversed=8219,t.quotereversed=8219,t.quoteright=8217,t.quoterightn=329,t.quotesinglbase=8218,t.quotesingle=39,t.quotesinglemonospace=65287,t.r=114,t.raarmenian=1404,t.rabengali=2480,t.racute=341,t.radeva=2352,t.radical=8730,t.radicalex=63717,t.radoverssquare=13230,t.radoverssquaredsquare=13231,t.radsquare=13229,t.rafe=1471,t.rafehebrew=1471,t.ragujarati=2736,t.ragurmukhi=2608,t.rahiragana=12425,t.rakatakana=12521,t.rakatakanahalfwidth=65431,t.ralowerdiagonalbengali=2545,t.ramiddlediagonalbengali=2544,t.ramshorn=612,t.ratio=8758,t.rbopomofo=12566,t.rcaron=345,t.rcedilla=343,t.rcircle=9441,t.rcommaaccent=343,t.rdblgrave=529,t.rdotaccent=7769,t.rdotbelow=7771,t.rdotbelowmacron=7773,t.referencemark=8251,t.reflexsubset=8838,t.reflexsuperset=8839,t.registered=174,t.registersans=63720,t.registerserif=63194,t.reharabic=1585,t.reharmenian=1408,t.rehfinalarabic=65198,t.rehiragana=12428,t.rekatakana=12524;t.rekatakanahalfwidth=65434,t.resh=1512,t.reshdageshhebrew=64328,t.reshhebrew=1512,t.reversedtilde=8765,t.reviahebrew=1431,t.reviamugrashhebrew=1431,t.revlogicalnot=8976,t.rfishhook=638,t.rfishhookreversed=639,t.rhabengali=2525,t.rhadeva=2397,t.rho=961,t.rhook=637,t.rhookturned=635,t.rhookturnedsuperior=693,t.rhosymbolgreek=1009,t.rhotichookmod=734,t.rieulacirclekorean=12913,t.rieulaparenkorean=12817,t.rieulcirclekorean=12899,t.rieulhieuhkorean=12608,t.rieulkiyeokkorean=12602,t.rieulkiyeoksioskorean=12649,t.rieulkorean=12601,t.rieulmieumkorean=12603,t.rieulpansioskorean=12652,t.rieulparenkorean=12803,t.rieulphieuphkorean=12607,t.rieulpieupkorean=12604,t.rieulpieupsioskorean=12651,t.rieulsioskorean=12605,t.rieulthieuthkorean=12606,t.rieultikeutkorean=12650,t.rieulyeorinhieuhkorean=12653,t.rightangle=8735,t.righttackbelowcmb=793,t.righttriangle=8895,t.rihiragana=12426,t.rikatakana=12522,t.rikatakanahalfwidth=65432,t.ring=730,t.ringbelowcmb=805,t.ringcmb=778,t.ringhalfleft=703,t.ringhalfleftarmenian=1369,t.ringhalfleftbelowcmb=796,t.ringhalfleftcentered=723,t.ringhalfright=702,t.ringhalfrightbelowcmb=825,t.ringhalfrightcentered=722,t.rinvertedbreve=531,t.rittorusquare=13137,t.rlinebelow=7775,t.rlongleg=636,t.rlonglegturned=634,t.rmonospace=65362,t.rohiragana=12429,t.rokatakana=12525,t.rokatakanahalfwidth=65435,t.roruathai=3619,t.rparen=9389,t.rrabengali=2524,t.rradeva=2353,t.rragurmukhi=2652,t.rreharabic=1681,t.rrehfinalarabic=64397,t.rrvocalicbengali=2528,t.rrvocalicdeva=2400,t.rrvocalicgujarati=2784,t.rrvocalicvowelsignbengali=2500,t.rrvocalicvowelsigndeva=2372,t.rrvocalicvowelsigngujarati=2756,t.rsuperior=63217,t.rtblock=9616,t.rturned=633,t.rturnedsuperior=692,t.ruhiragana=12427,t.rukatakana=12523,t.rukatakanahalfwidth=65433,t.rupeemarkbengali=2546,t.rupeesignbengali=2547,t.rupiah=63197,t.ruthai=3620,t.rvocalicbengali=2443,t.rvocalicdeva=2315,t.rvocalicgujarati=2699,t.rvocalicvowelsignbengali=2499,t.rvocalicvowelsigndeva=2371,t.rvocalicvowelsigngujarati=2755,t.s=115,t.sabengali=2488,t.sacute=347,t.sacutedotaccent=7781,t.sadarabic=1589,t.sadeva=2360,t.sadfinalarabic=65210,t.sadinitialarabic=65211,t.sadmedialarabic=65212,t.sagujarati=2744,t.sagurmukhi=2616,t.sahiragana=12373,t.sakatakana=12469,t.sakatakanahalfwidth=65403,t.sallallahoualayhewasallamarabic=65018,t.samekh=1505,t.samekhdagesh=64321,t.samekhdageshhebrew=64321,t.samekhhebrew=1505,t.saraaathai=3634,t.saraaethai=3649,t.saraaimaimalaithai=3652,t.saraaimaimuanthai=3651,t.saraamthai=3635,t.saraathai=3632,t.saraethai=3648,t.saraiileftthai=63622,t.saraiithai=3637,t.saraileftthai=63621,t.saraithai=3636,t.saraothai=3650,t.saraueeleftthai=63624,t.saraueethai=3639,t.saraueleftthai=63623,t.sarauethai=3638,t.sarauthai=3640,t.sarauuthai=3641,t.sbopomofo=12569,t.scaron=353,t.scarondotaccent=7783,t.scedilla=351,t.schwa=601,t.schwacyrillic=1241,t.schwadieresiscyrillic=1243,t.schwahook=602,t.scircle=9442,t.scircumflex=349,t.scommaaccent=537,t.sdotaccent=7777,t.sdotbelow=7779,t.sdotbelowdotaccent=7785,t.seagullbelowcmb=828,t.second=8243,t.secondtonechinese=714,t.section=167,t.seenarabic=1587,t.seenfinalarabic=65202,t.seeninitialarabic=65203,t.seenmedialarabic=65204,t.segol=1462,t.segol13=1462,t.segol1f=1462,t.segol2c=1462,t.segolhebrew=1462,t.segolnarrowhebrew=1462,t.segolquarterhebrew=1462,t.segoltahebrew=1426,t.segolwidehebrew=1462,t.seharmenian=1405,t.sehiragana=12379,t.sekatakana=12475,t.sekatakanahalfwidth=65406,t.semicolon=59,t.semicolonarabic=1563,t.semicolonmonospace=65307,t.semicolonsmall=65108,t.semivoicedmarkkana=12444,t.semivoicedmarkkanahalfwidth=65439,t.sentisquare=13090,t.sentosquare=13091,t.seven=55,t.sevenarabic=1639,t.sevenbengali=2541,t.sevencircle=9318,t.sevencircleinversesansserif=10128,t.sevendeva=2413,t.seveneighths=8542,t.sevengujarati=2797,t.sevengurmukhi=2669,t.sevenhackarabic=1639,t.sevenhangzhou=12327,t.sevenideographicparen=12838,t.seveninferior=8327,t.sevenmonospace=65303,t.sevenoldstyle=63287,t.sevenparen=9338,t.sevenperiod=9358,t.sevenpersian=1783,t.sevenroman=8566,t.sevensuperior=8311,t.seventeencircle=9328,t.seventeenparen=9348,t.seventeenperiod=9368,t.seventhai=3671,t.sfthyphen=173,t.shaarmenian=1399,t.shabengali=2486,t.shacyrillic=1096,t.shaddaarabic=1617,t.shaddadammaarabic=64609,t.shaddadammatanarabic=64606,t.shaddafathaarabic=64608,t.shaddakasraarabic=64610,t.shaddakasratanarabic=64607,t.shade=9618,t.shadedark=9619,t.shadelight=9617,t.shademedium=9618,t.shadeva=2358,t.shagujarati=2742,t.shagurmukhi=2614,t.shalshelethebrew=1427,t.shbopomofo=12565,t.shchacyrillic=1097,t.sheenarabic=1588,t.sheenfinalarabic=65206,t.sheeninitialarabic=65207,t.sheenmedialarabic=65208,t.sheicoptic=995,t.sheqel=8362,t.sheqelhebrew=8362,t.sheva=1456,t.sheva115=1456,t.sheva15=1456,t.sheva22=1456,t.sheva2e=1456,t.shevahebrew=1456,t.shevanarrowhebrew=1456,t.shevaquarterhebrew=1456,t.shevawidehebrew=1456,t.shhacyrillic=1211,t.shimacoptic=1005,t.shin=1513,t.shindagesh=64329,t.shindageshhebrew=64329,t.shindageshshindot=64300,t.shindageshshindothebrew=64300,t.shindageshsindot=64301,t.shindageshsindothebrew=64301,t.shindothebrew=1473,t.shinhebrew=1513,t.shinshindot=64298,t.shinshindothebrew=64298,t.shinsindot=64299,t.shinsindothebrew=64299,t.shook=642,t.sigma=963,t.sigma1=962,t.sigmafinal=962,t.sigmalunatesymbolgreek=1010,t.sihiragana=12375,t.sikatakana=12471,t.sikatakanahalfwidth=65404,t.siluqhebrew=1469,t.siluqlefthebrew=1469,t.similar=8764,t.sindothebrew=1474,t.siosacirclekorean=12916,t.siosaparenkorean=12820,t.sioscieuckorean=12670,t.sioscirclekorean=12902,t.sioskiyeokkorean=12666,t.sioskorean=12613,t.siosnieunkorean=12667,t.siosparenkorean=12806,t.siospieupkorean=12669,t.siostikeutkorean=12668,t.six=54,t.sixarabic=1638,t.sixbengali=2540,t.sixcircle=9317,t.sixcircleinversesansserif=10127,t.sixdeva=2412,t.sixgujarati=2796,t.sixgurmukhi=2668,t.sixhackarabic=1638,t.sixhangzhou=12326,t.sixideographicparen=12837,t.sixinferior=8326,t.sixmonospace=65302,t.sixoldstyle=63286,t.sixparen=9337,t.sixperiod=9357,t.sixpersian=1782,t.sixroman=8565,t.sixsuperior=8310,t.sixteencircle=9327,t.sixteencurrencydenominatorbengali=2553,t.sixteenparen=9347,t.sixteenperiod=9367,t.sixthai=3670,t.slash=47,t.slashmonospace=65295,t.slong=383,t.slongdotaccent=7835,t.smileface=9786,t.smonospace=65363,t.sofpasuqhebrew=1475,t.softhyphen=173,t.softsigncyrillic=1100,t.sohiragana=12381,t.sokatakana=12477,t.sokatakanahalfwidth=65407,t.soliduslongoverlaycmb=824,t.solidusshortoverlaycmb=823,t.sorusithai=3625,t.sosalathai=3624,t.sosothai=3595,t.sosuathai=3626,t.space=32,t.spacehackarabic=32,t.spade=9824,t.spadesuitblack=9824,t.spadesuitwhite=9828,t.sparen=9390,t.squarebelowcmb=827,t.squarecc=13252,t.squarecm=13213,t.squarediagonalcrosshatchfill=9641,t.squarehorizontalfill=9636,t.squarekg=13199,t.squarekm=13214,t.squarekmcapital=13262,t.squareln=13265,t.squarelog=13266,t.squaremg=13198,t.squaremil=13269,t.squaremm=13212,t.squaremsquared=13217,t.squareorthogonalcrosshatchfill=9638,t.squareupperlefttolowerrightfill=9639,t.squareupperrighttolowerleftfill=9640,t.squareverticalfill=9637,t.squarewhitewithsmallblack=9635,t.srsquare=13275,t.ssabengali=2487,t.ssadeva=2359,t.ssagujarati=2743,t.ssangcieuckorean=12617,t.ssanghieuhkorean=12677,t.ssangieungkorean=12672,t.ssangkiyeokkorean=12594,t.ssangnieunkorean=12645,t.ssangpieupkorean=12611,t.ssangsioskorean=12614,t.ssangtikeutkorean=12600,t.ssuperior=63218,t.sterling=163,t.sterlingmonospace=65505,t.strokelongoverlaycmb=822,t.strokeshortoverlaycmb=821,t.subset=8834,t.subsetnotequal=8842,t.subsetorequal=8838,t.succeeds=8827,t.suchthat=8715,t.suhiragana=12377,t.sukatakana=12473,t.sukatakanahalfwidth=65405,t.sukunarabic=1618,t.summation=8721,t.sun=9788,t.superset=8835,t.supersetnotequal=8843,t.supersetorequal=8839,t.svsquare=13276,t.syouwaerasquare=13180,t.t=116,t.tabengali=2468,t.tackdown=8868,t.tackleft=8867,t.tadeva=2340,t.tagujarati=2724,t.tagurmukhi=2596,t.taharabic=1591,t.tahfinalarabic=65218,t.tahinitialarabic=65219,t.tahiragana=12383,t.tahmedialarabic=65220,t.taisyouerasquare=13181,t.takatakana=12479,t.takatakanahalfwidth=65408,t.tatweelarabic=1600,t.tau=964,t.tav=1514,t.tavdages=64330,t.tavdagesh=64330,t.tavdageshhebrew=64330,t.tavhebrew=1514,t.tbar=359,t.tbopomofo=12554,t.tcaron=357,t.tccurl=680,t.tcedilla=355,t.tcheharabic=1670,t.tchehfinalarabic=64379,t.tchehinitialarabic=64380,t.tchehmedialarabic=64381,t.tcircle=9443,t.tcircumflexbelow=7793,t.tcommaaccent=355,t.tdieresis=7831,t.tdotaccent=7787,t.tdotbelow=7789,t.tecyrillic=1090,t.tedescendercyrillic=1197,t.teharabic=1578,t.tehfinalarabic=65174,t.tehhahinitialarabic=64674,t.tehhahisolatedarabic=64524,t.tehinitialarabic=65175,t.tehiragana=12390,t.tehjeeminitialarabic=64673,t.tehjeemisolatedarabic=64523,t.tehmarbutaarabic=1577,t.tehmarbutafinalarabic=65172,t.tehmedialarabic=65176,t.tehmeeminitialarabic=64676,t.tehmeemisolatedarabic=64526,t.tehnoonfinalarabic=64627,t.tekatakana=12486,t.tekatakanahalfwidth=65411,t.telephone=8481,t.telephoneblack=9742,t.telishagedolahebrew=1440,t.telishaqetanahebrew=1449,t.tencircle=9321,t.tenideographicparen=12841,t.tenparen=9341,t.tenperiod=9361,t.tenroman=8569,t.tesh=679,t.tet=1496,t.tetdagesh=64312,t.tetdageshhebrew=64312,t.tethebrew=1496,t.tetsecyrillic=1205,t.tevirhebrew=1435,t.tevirlefthebrew=1435,t.thabengali=2469,t.thadeva=2341,t.thagujarati=2725,t.thagurmukhi=2597,t.thalarabic=1584,t.thalfinalarabic=65196,t.thanthakhatlowleftthai=63640,t.thanthakhatlowrightthai=63639,t.thanthakhatthai=3660,t.thanthakhatupperleftthai=63638,t.theharabic=1579,t.thehfinalarabic=65178,t.thehinitialarabic=65179,t.thehmedialarabic=65180,t.thereexists=8707,t.therefore=8756,t.theta=952,t.theta1=977,t.thetasymbolgreek=977,t.thieuthacirclekorean=12921,t.thieuthaparenkorean=12825,t.thieuthcirclekorean=12907,t.thieuthkorean=12620,t.thieuthparenkorean=12811,t.thirteencircle=9324,t.thirteenparen=9344,t.thirteenperiod=9364,t.thonangmonthothai=3601,t.thook=429,t.thophuthaothai=3602,t.thorn=254,t.thothahanthai=3607,t.thothanthai=3600,t.thothongthai=3608,t.thothungthai=3606,t.thousandcyrillic=1154,t.thousandsseparatorarabic=1644,t.thousandsseparatorpersian=1644,t.three=51,t.threearabic=1635,t.threebengali=2537,t.threecircle=9314,t.threecircleinversesansserif=10124,t.threedeva=2409,t.threeeighths=8540,t.threegujarati=2793,t.threegurmukhi=2665,t.threehackarabic=1635,t.threehangzhou=12323,t.threeideographicparen=12834,t.threeinferior=8323,t.threemonospace=65299,t.threenumeratorbengali=2550,t.threeoldstyle=63283,t.threeparen=9334,t.threeperiod=9354,t.threepersian=1779,t.threequarters=190,t.threequartersemdash=63198,t.threeroman=8562,t.threesuperior=179,t.threethai=3667,t.thzsquare=13204,t.tihiragana=12385,t.tikatakana=12481,t.tikatakanahalfwidth=65409,t.tikeutacirclekorean=12912,t.tikeutaparenkorean=12816,t.tikeutcirclekorean=12898,t.tikeutkorean=12599,t.tikeutparenkorean=12802,t.tilde=732,t.tildebelowcmb=816,t.tildecmb=771,t.tildecomb=771,t.tildedoublecmb=864,t.tildeoperator=8764,t.tildeoverlaycmb=820,t.tildeverticalcmb=830,t.timescircle=8855,t.tipehahebrew=1430,t.tipehalefthebrew=1430,t.tippigurmukhi=2672,t.titlocyrilliccmb=1155,t.tiwnarmenian=1407,t.tlinebelow=7791,t.tmonospace=65364,t.toarmenian=1385,t.tohiragana=12392,t.tokatakana=12488,t.tokatakanahalfwidth=65412,t.tonebarextrahighmod=741,t.tonebarextralowmod=745,t.tonebarhighmod=742,t.tonebarlowmod=744,t.tonebarmidmod=743,t.tonefive=445,t.tonesix=389,t.tonetwo=424,t.tonos=900,t.tonsquare=13095,t.topatakthai=3599,t.tortoiseshellbracketleft=12308,t.tortoiseshellbracketleftsmall=65117,t.tortoiseshellbracketleftvertical=65081,t.tortoiseshellbracketright=12309,t.tortoiseshellbracketrightsmall=65118,t.tortoiseshellbracketrightvertical=65082,t.totaothai=3605,t.tpalatalhook=427,t.tparen=9391,t.trademark=8482,t.trademarksans=63722,t.trademarkserif=63195,t.tretroflexhook=648,t.triagdn=9660,t.triaglf=9668,t.triagrt=9658,t.triagup=9650,t.ts=678,t.tsadi=1510,t.tsadidagesh=64326,t.tsadidageshhebrew=64326,t.tsadihebrew=1510,t.tsecyrillic=1094,t.tsere=1461,t.tsere12=1461,t.tsere1e=1461,t.tsere2b=1461,t.tserehebrew=1461,t.tserenarrowhebrew=1461,t.tserequarterhebrew=1461,t.tserewidehebrew=1461,t.tshecyrillic=1115,t.tsuperior=63219,t.ttabengali=2463,t.ttadeva=2335,t.ttagujarati=2719,t.ttagurmukhi=2591,t.tteharabic=1657,t.ttehfinalarabic=64359,t.ttehinitialarabic=64360,t.ttehmedialarabic=64361,t.tthabengali=2464,t.tthadeva=2336,t.tthagujarati=2720,t.tthagurmukhi=2592,t.tturned=647,t.tuhiragana=12388,t.tukatakana=12484,t.tukatakanahalfwidth=65410,t.tusmallhiragana=12387,t.tusmallkatakana=12483,t.tusmallkatakanahalfwidth=65391,t.twelvecircle=9323,t.twelveparen=9343,t.twelveperiod=9363,t.twelveroman=8571,t.twentycircle=9331,t.twentyhangzhou=21316,t.twentyparen=9351,t.twentyperiod=9371,t.two=50,t.twoarabic=1634,t.twobengali=2536,t.twocircle=9313,t.twocircleinversesansserif=10123,t.twodeva=2408,t.twodotenleader=8229,t.twodotleader=8229,t.twodotleadervertical=65072,t.twogujarati=2792,t.twogurmukhi=2664,t.twohackarabic=1634,t.twohangzhou=12322,t.twoideographicparen=12833,t.twoinferior=8322,t.twomonospace=65298,t.twonumeratorbengali=2549,t.twooldstyle=63282,t.twoparen=9333,t.twoperiod=9353,t.twopersian=1778,t.tworoman=8561,t.twostroke=443,t.twosuperior=178,t.twothai=3666,t.twothirds=8532,t.u=117,t.uacute=250,t.ubar=649,t.ubengali=2441,t.ubopomofo=12584,t.ubreve=365,t.ucaron=468,t.ucircle=9444,t.ucircumflex=251,t.ucircumflexbelow=7799,t.ucyrillic=1091,t.udattadeva=2385,t.udblacute=369,t.udblgrave=533,t.udeva=2313,t.udieresis=252,t.udieresisacute=472,t.udieresisbelow=7795,t.udieresiscaron=474,t.udieresiscyrillic=1265,t.udieresisgrave=476,t.udieresismacron=470,t.udotbelow=7909,t.ugrave=249,t.ugujarati=2697,t.ugurmukhi=2569,t.uhiragana=12358,t.uhookabove=7911,t.uhorn=432,t.uhornacute=7913,t.uhorndotbelow=7921,t.uhorngrave=7915,t.uhornhookabove=7917,t.uhorntilde=7919,t.uhungarumlaut=369,t.uhungarumlautcyrillic=1267,t.uinvertedbreve=535,t.ukatakana=12454,t.ukatakanahalfwidth=65395,t.ukcyrillic=1145,t.ukorean=12636,t.umacron=363,t.umacroncyrillic=1263,t.umacrondieresis=7803,t.umatragurmukhi=2625,t.umonospace=65365,t.underscore=95,t.underscoredbl=8215,t.underscoremonospace=65343,t.underscorevertical=65075,t.underscorewavy=65103,t.union=8746,t.universal=8704,t.uogonek=371,t.uparen=9392,t.upblock=9600,t.upperdothebrew=1476,t.upsilon=965,t.upsilondieresis=971,t.upsilondieresistonos=944,t.upsilonlatin=650,t.upsilontonos=973,t.uptackbelowcmb=797,t.uptackmod=724,t.uragurmukhi=2675,t.uring=367,t.ushortcyrillic=1118,t.usmallhiragana=12357,t.usmallkatakana=12453,t.usmallkatakanahalfwidth=65385,t.ustraightcyrillic=1199,t.ustraightstrokecyrillic=1201,t.utilde=361,t.utildeacute=7801,t.utildebelow=7797,t.uubengali=2442,t.uudeva=2314,t.uugujarati=2698,t.uugurmukhi=2570,t.uumatragurmukhi=2626,t.uuvowelsignbengali=2498,t.uuvowelsigndeva=2370,t.uuvowelsigngujarati=2754,t.uvowelsignbengali=2497,t.uvowelsigndeva=2369,t.uvowelsigngujarati=2753,t.v=118,t.vadeva=2357,t.vagujarati=2741,t.vagurmukhi=2613,t.vakatakana=12535,t.vav=1493,t.vavdagesh=64309,t.vavdagesh65=64309,t.vavdageshhebrew=64309,t.vavhebrew=1493,t.vavholam=64331,t.vavholamhebrew=64331,t.vavvavhebrew=1520,t.vavyodhebrew=1521,t.vcircle=9445,t.vdotbelow=7807,t.vecyrillic=1074,t.veharabic=1700,t.vehfinalarabic=64363,t.vehinitialarabic=64364,t.vehmedialarabic=64365,t.vekatakana=12537,t.venus=9792,t.verticalbar=124,t.verticallineabovecmb=781,t.verticallinebelowcmb=809,t.verticallinelowmod=716,t.verticallinemod=712,t.vewarmenian=1406,t.vhook=651,t.vikatakana=12536,t.viramabengali=2509,t.viramadeva=2381,t.viramagujarati=2765,t.visargabengali=2435,t.visargadeva=2307,t.visargagujarati=2691,t.vmonospace=65366,t.voarmenian=1400,t.voicediterationhiragana=12446,t.voicediterationkatakana=12542,t.voicedmarkkana=12443,t.voicedmarkkanahalfwidth=65438,t.vokatakana=12538,t.vparen=9393,t.vtilde=7805,t.vturned=652,t.vuhiragana=12436,t.vukatakana=12532,t.w=119,t.wacute=7811,t.waekorean=12633,t.wahiragana=12431,t.wakatakana=12527,t.wakatakanahalfwidth=65436,t.wakorean=12632,t.wasmallhiragana=12430,t.wasmallkatakana=12526,t.wattosquare=13143,t.wavedash=12316,t.wavyunderscorevertical=65076,t.wawarabic=1608,t.wawfinalarabic=65262,t.wawhamzaabovearabic=1572,t.wawhamzaabovefinalarabic=65158,t.wbsquare=13277,t.wcircle=9446,t.wcircumflex=373,t.wdieresis=7813,t.wdotaccent=7815,t.wdotbelow=7817,t.wehiragana=12433,t.weierstrass=8472,t.wekatakana=12529,t.wekorean=12638,t.weokorean=12637,t.wgrave=7809,t.whitebullet=9702,t.whitecircle=9675,t.whitecircleinverse=9689,t.whitecornerbracketleft=12302,t.whitecornerbracketleftvertical=65091,t.whitecornerbracketright=12303,t.whitecornerbracketrightvertical=65092,t.whitediamond=9671,t.whitediamondcontainingblacksmalldiamond=9672,t.whitedownpointingsmalltriangle=9663;t.whitedownpointingtriangle=9661,t.whiteleftpointingsmalltriangle=9667,t.whiteleftpointingtriangle=9665,t.whitelenticularbracketleft=12310,t.whitelenticularbracketright=12311,t.whiterightpointingsmalltriangle=9657,t.whiterightpointingtriangle=9655,t.whitesmallsquare=9643,t.whitesmilingface=9786,t.whitesquare=9633,t.whitestar=9734,t.whitetelephone=9743,t.whitetortoiseshellbracketleft=12312,t.whitetortoiseshellbracketright=12313,t.whiteuppointingsmalltriangle=9653,t.whiteuppointingtriangle=9651,t.wihiragana=12432,t.wikatakana=12528,t.wikorean=12639,t.wmonospace=65367,t.wohiragana=12434,t.wokatakana=12530,t.wokatakanahalfwidth=65382,t.won=8361,t.wonmonospace=65510,t.wowaenthai=3623,t.wparen=9394,t.wring=7832,t.wsuperior=695,t.wturned=653,t.wynn=447,t.x=120,t.xabovecmb=829,t.xbopomofo=12562,t.xcircle=9447,t.xdieresis=7821,t.xdotaccent=7819,t.xeharmenian=1389,t.xi=958,t.xmonospace=65368,t.xparen=9395,t.xsuperior=739,t.y=121,t.yaadosquare=13134,t.yabengali=2479,t.yacute=253,t.yadeva=2351,t.yaekorean=12626,t.yagujarati=2735,t.yagurmukhi=2607,t.yahiragana=12420,t.yakatakana=12516,t.yakatakanahalfwidth=65428,t.yakorean=12625,t.yamakkanthai=3662,t.yasmallhiragana=12419,t.yasmallkatakana=12515,t.yasmallkatakanahalfwidth=65388,t.yatcyrillic=1123,t.ycircle=9448,t.ycircumflex=375,t.ydieresis=255,t.ydotaccent=7823,t.ydotbelow=7925,t.yeharabic=1610,t.yehbarreearabic=1746,t.yehbarreefinalarabic=64431,t.yehfinalarabic=65266,t.yehhamzaabovearabic=1574,t.yehhamzaabovefinalarabic=65162,t.yehhamzaaboveinitialarabic=65163,t.yehhamzaabovemedialarabic=65164,t.yehinitialarabic=65267,t.yehmedialarabic=65268,t.yehmeeminitialarabic=64733,t.yehmeemisolatedarabic=64600,t.yehnoonfinalarabic=64660,t.yehthreedotsbelowarabic=1745,t.yekorean=12630,t.yen=165,t.yenmonospace=65509,t.yeokorean=12629,t.yeorinhieuhkorean=12678,t.yerahbenyomohebrew=1450,t.yerahbenyomolefthebrew=1450,t.yericyrillic=1099,t.yerudieresiscyrillic=1273,t.yesieungkorean=12673,t.yesieungpansioskorean=12675,t.yesieungsioskorean=12674,t.yetivhebrew=1434,t.ygrave=7923,t.yhook=436,t.yhookabove=7927,t.yiarmenian=1397,t.yicyrillic=1111,t.yikorean=12642,t.yinyang=9775,t.yiwnarmenian=1410,t.ymonospace=65369,t.yod=1497,t.yoddagesh=64313,t.yoddageshhebrew=64313,t.yodhebrew=1497,t.yodyodhebrew=1522,t.yodyodpatahhebrew=64287,t.yohiragana=12424,t.yoikorean=12681,t.yokatakana=12520,t.yokatakanahalfwidth=65430,t.yokorean=12635,t.yosmallhiragana=12423,t.yosmallkatakana=12519,t.yosmallkatakanahalfwidth=65390,t.yotgreek=1011,t.yoyaekorean=12680,t.yoyakorean=12679,t.yoyakthai=3618,t.yoyingthai=3597,t.yparen=9396,t.ypogegrammeni=890,t.ypogegrammenigreekcmb=837,t.yr=422,t.yring=7833,t.ysuperior=696,t.ytilde=7929,t.yturned=654,t.yuhiragana=12422,t.yuikorean=12684,t.yukatakana=12518,t.yukatakanahalfwidth=65429,t.yukorean=12640,t.yusbigcyrillic=1131,t.yusbigiotifiedcyrillic=1133,t.yuslittlecyrillic=1127,t.yuslittleiotifiedcyrillic=1129,t.yusmallhiragana=12421,t.yusmallkatakana=12517,t.yusmallkatakanahalfwidth=65389,t.yuyekorean=12683,t.yuyeokorean=12682,t.yyabengali=2527,t.yyadeva=2399,t.z=122,t.zaarmenian=1382,t.zacute=378,t.zadeva=2395,t.zagurmukhi=2651,t.zaharabic=1592,t.zahfinalarabic=65222,t.zahinitialarabic=65223,t.zahiragana=12374,t.zahmedialarabic=65224,t.zainarabic=1586,t.zainfinalarabic=65200,t.zakatakana=12470,t.zaqefgadolhebrew=1429,t.zaqefqatanhebrew=1428,t.zarqahebrew=1432,t.zayin=1494,t.zayindagesh=64310,t.zayindageshhebrew=64310,t.zayinhebrew=1494,t.zbopomofo=12567,t.zcaron=382,t.zcircle=9449,t.zcircumflex=7825,t.zcurl=657,t.zdot=380,t.zdotaccent=380,t.zdotbelow=7827,t.zecyrillic=1079,t.zedescendercyrillic=1177,t.zedieresiscyrillic=1247,t.zehiragana=12380,t.zekatakana=12476,t.zero=48,t.zeroarabic=1632,t.zerobengali=2534,t.zerodeva=2406,t.zerogujarati=2790,t.zerogurmukhi=2662,t.zerohackarabic=1632,t.zeroinferior=8320,t.zeromonospace=65296,t.zerooldstyle=63280,t.zeropersian=1776,t.zerosuperior=8304,t.zerothai=3664,t.zerowidthjoiner=65279,t.zerowidthnonjoiner=8204,t.zerowidthspace=8203,t.zeta=950,t.zhbopomofo=12563,t.zhearmenian=1386,t.zhebrevecyrillic=1218,t.zhecyrillic=1078,t.zhedescendercyrillic=1175,t.zhedieresiscyrillic=1245,t.zihiragana=12376,t.zikatakana=12472,t.zinorhebrew=1454,t.zlinebelow=7829,t.zmonospace=65370,t.zohiragana=12382,t.zokatakana=12478,t.zparen=9397,t.zretroflexhook=656,t.zstroke=438,t.zuhiragana=12378,t.zukatakana=12474,t[".notdef"]=0,t.angbracketleftbig=9001,t.angbracketleftBig=9001,t.angbracketleftbigg=9001,t.angbracketleftBigg=9001,t.angbracketrightBig=9002,t.angbracketrightbig=9002,t.angbracketrightBigg=9002,t.angbracketrightbigg=9002,t.arrowhookleft=8618,t.arrowhookright=8617,t.arrowlefttophalf=8636,t.arrowleftbothalf=8637,t.arrownortheast=8599,t.arrownorthwest=8598,t.arrowrighttophalf=8640,t.arrowrightbothalf=8641,t.arrowsoutheast=8600,t.arrowsouthwest=8601,t.backslashbig=8726,t.backslashBig=8726,t.backslashBigg=8726,t.backslashbigg=8726,t.bardbl=8214,t.bracehtipdownleft=65079,t.bracehtipdownright=65079,t.bracehtipupleft=65080,t.bracehtipupright=65080,t.braceleftBig=123,t.braceleftbig=123,t.braceleftbigg=123,t.braceleftBigg=123,t.bracerightBig=125,t.bracerightbig=125,t.bracerightbigg=125,t.bracerightBigg=125,t.bracketleftbig=91,t.bracketleftBig=91,t.bracketleftbigg=91,t.bracketleftBigg=91,t.bracketrightBig=93,t.bracketrightbig=93,t.bracketrightbigg=93,t.bracketrightBigg=93,t.ceilingleftbig=8968,t.ceilingleftBig=8968,t.ceilingleftBigg=8968,t.ceilingleftbigg=8968,t.ceilingrightbig=8969,t.ceilingrightBig=8969,t.ceilingrightbigg=8969,t.ceilingrightBigg=8969,t.circledotdisplay=8857,t.circledottext=8857,t.circlemultiplydisplay=8855,t.circlemultiplytext=8855,t.circleplusdisplay=8853,t.circleplustext=8853,t.contintegraldisplay=8750,t.contintegraltext=8750,t.coproductdisplay=8720,t.coproducttext=8720,t.floorleftBig=8970,t.floorleftbig=8970,t.floorleftbigg=8970,t.floorleftBigg=8970,t.floorrightbig=8971,t.floorrightBig=8971,t.floorrightBigg=8971,t.floorrightbigg=8971,t.hatwide=770,t.hatwider=770,t.hatwidest=770,t.intercal=7488,t.integraldisplay=8747,t.integraltext=8747,t.intersectiondisplay=8898,t.intersectiontext=8898,t.logicalanddisplay=8743,t.logicalandtext=8743,t.logicalordisplay=8744,t.logicalortext=8744,t.parenleftBig=40,t.parenleftbig=40,t.parenleftBigg=40,t.parenleftbigg=40,t.parenrightBig=41,t.parenrightbig=41,t.parenrightBigg=41,t.parenrightbigg=41,t.prime=8242,t.productdisplay=8719,t.producttext=8719,t.radicalbig=8730,t.radicalBig=8730,t.radicalBigg=8730,t.radicalbigg=8730,t.radicalbt=8730,t.radicaltp=8730,t.radicalvertex=8730,t.slashbig=47,t.slashBig=47,t.slashBigg=47,t.slashbigg=47,t.summationdisplay=8721,t.summationtext=8721,t.tildewide=732,t.tildewider=732,t.tildewidest=732,t.uniondisplay=8899,t.unionmultidisplay=8846,t.unionmultitext=8846,t.unionsqdisplay=8852,t.unionsqtext=8852,t.uniontext=8899,t.vextenddouble=8741,t.vextendsingle=8739})),ss=wt((function(t){t.space=32,t.a1=9985,t.a2=9986,t.a202=9987,t.a3=9988,t.a4=9742,t.a5=9990,t.a119=9991,t.a118=9992,t.a117=9993,t.a11=9755,t.a12=9758,t.a13=9996,t.a14=9997,t.a15=9998,t.a16=9999,t.a105=1e4,t.a17=10001,t.a18=10002,t.a19=10003,t.a20=10004,t.a21=10005,t.a22=10006,t.a23=10007,t.a24=10008,t.a25=10009,t.a26=10010,t.a27=10011,t.a28=10012,t.a6=10013,t.a7=10014,t.a8=10015,t.a9=10016,t.a10=10017,t.a29=10018,t.a30=10019,t.a31=10020,t.a32=10021,t.a33=10022,t.a34=10023,t.a35=9733,t.a36=10025,t.a37=10026,t.a38=10027,t.a39=10028,t.a40=10029,t.a41=10030,t.a42=10031,t.a43=10032,t.a44=10033,t.a45=10034,t.a46=10035,t.a47=10036,t.a48=10037,t.a49=10038,t.a50=10039,t.a51=10040,t.a52=10041,t.a53=10042,t.a54=10043,t.a55=10044,t.a56=10045,t.a57=10046,t.a58=10047,t.a59=10048,t.a60=10049,t.a61=10050,t.a62=10051,t.a63=10052,t.a64=10053,t.a65=10054,t.a66=10055,t.a67=10056,t.a68=10057,t.a69=10058,t.a70=10059,t.a71=9679,t.a72=10061,t.a73=9632,t.a74=10063,t.a203=10064,t.a75=10065,t.a204=10066,t.a76=9650,t.a77=9660,t.a78=9670,t.a79=10070,t.a81=9687,t.a82=10072,t.a83=10073,t.a84=10074,t.a97=10075,t.a98=10076,t.a99=10077,t.a100=10078,t.a101=10081,t.a102=10082,t.a103=10083,t.a104=10084,t.a106=10085,t.a107=10086,t.a108=10087,t.a112=9827,t.a111=9830,t.a110=9829,t.a109=9824,t.a120=9312,t.a121=9313,t.a122=9314,t.a123=9315,t.a124=9316,t.a125=9317,t.a126=9318,t.a127=9319,t.a128=9320,t.a129=9321,t.a130=10102,t.a131=10103,t.a132=10104,t.a133=10105,t.a134=10106,t.a135=10107,t.a136=10108,t.a137=10109,t.a138=10110,t.a139=10111,t.a140=10112,t.a141=10113,t.a142=10114,t.a143=10115,t.a144=10116,t.a145=10117,t.a146=10118,t.a147=10119,t.a148=10120,t.a149=10121,t.a150=10122,t.a151=10123,t.a152=10124,t.a153=10125,t.a154=10126,t.a155=10127,t.a156=10128,t.a157=10129,t.a158=10130,t.a159=10131,t.a160=10132,t.a161=8594,t.a163=8596,t.a164=8597,t.a196=10136,t.a165=10137,t.a192=10138,t.a166=10139,t.a167=10140,t.a168=10141,t.a169=10142,t.a170=10143,t.a171=10144,t.a172=10145,t.a173=10146,t.a162=10147,t.a174=10148,t.a175=10149,t.a176=10150,t.a177=10151,t.a178=10152,t.a179=10153,t.a193=10154,t.a180=10155,t.a199=10156,t.a181=10157,t.a200=10158,t.a182=10159,t.a201=10161,t.a183=10162,t.a184=10163,t.a197=10164,t.a185=10165,t.a194=10166,t.a198=10167,t.a186=10168,t.a195=10169,t.a187=10170,t.a188=10171,t.a189=10172,t.a190=10173,t.a191=10174,t.a89=10088,t.a90=10089,t.a93=10090,t.a94=10091,t.a91=10092,t.a92=10093,t.a205=10094,t.a85=10095,t.a206=10096,t.a86=10097,t.a87=10098,t.a88=10099,t.a95=10100,t.a96=10101,t[".notdef"]=0})),as=wt((function(t){t[63721]=169,t[63193]=169,t[63720]=174,t[63194]=174,t[63722]=8482,t[63195]=8482,t[63729]=9127,t[63730]=9128,t[63731]=9129,t[63740]=9131,t[63741]=9132,t[63742]=9133,t[63726]=9121,t[63727]=9122,t[63728]=9123,t[63737]=9124,t[63738]=9125,t[63739]=9126,t[63723]=9115,t[63724]=9116,t[63725]=9117,t[63734]=9118,t[63735]=9119,t[63736]=9120}));function ns(t,e){let A=e[t];if(void 0!==A)return A;if(!t)return-1;if("u"===t[0]){const e=t.length;let i;if(7===e&&"n"===t[1]&&"i"===t[2])i=t.substring(3);else{if(!(e>=5&&e<=7))return-1;i=t.substring(1)}if(i===i.toUpperCase()&&(A=parseInt(i,16),A>=0))return A}return-1}const rs=[[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 os(t,e=-1){if(-1!==e){const A=rs[e];for(let i=0,s=A.length;i<s;i+=2)if(t>=A[i]&&t<=A[i+1])return e}for(let e=0,A=rs.length;e<A;e++){const A=rs[e];for(let i=0,s=A.length;i<s;i+=2)if(t>=A[i]&&t<=A[i+1])return e}return-1}const gs=new RegExp("^(\\s)|(\\p{Mn})|(\\p{Cf})$","u"),cs=new Map,hs=!0,ls=[".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 Is(t,e){if(void 0!==e[t])return t;const A=ns(t,e);if(-1!==A)for(const t in e)if(e[t]===A)return t;return x("Unable to recover a standard glyph name for: "+t),t}function Cs(t,e,A){const i=Object.create(null);let s,a,n;const r=!!(4&t.flags);if(t.isInternalFont)for(n=e,a=0;a<n.length;a++)s=A.indexOf(n[a]),i[a]=s>=0?s:0;else if(t.baseEncodingName)for(n=Ui(t.baseEncodingName),a=0;a<n.length;a++)s=A.indexOf(n[a]),i[a]=s>=0?s:0;else if(r)for(a in e)i[a]=e[a];else for(n=vi,a=0;a<n.length;a++)s=A.indexOf(n[a]),i[a]=s>=0?s:0;const o=t.differences;let g;if(o)for(a in o){const t=o[a];if(s=A.indexOf(t),-1===s){g||(g=is());const e=Is(t,g);e!==t&&(s=A.indexOf(e))}i[a]=s>=0?s:0}return i}function Bs(t){return t.replaceAll(/[,_]/g,"-").replaceAll(/\s/g,"")}const ds=wt((function(t){t["Times-Roman"]="Times-Roman",t.Helvetica="Helvetica",t.Courier="Courier",t.Symbol="Symbol",t["Times-Bold"]="Times-Bold",t["Helvetica-Bold"]="Helvetica-Bold",t["Courier-Bold"]="Courier-Bold",t.ZapfDingbats="ZapfDingbats",t["Times-Italic"]="Times-Italic",t["Helvetica-Oblique"]="Helvetica-Oblique",t["Courier-Oblique"]="Courier-Oblique",t["Times-BoldItalic"]="Times-BoldItalic",t["Helvetica-BoldOblique"]="Helvetica-BoldOblique",t["Courier-BoldOblique"]="Courier-BoldOblique",t.ArialNarrow="Helvetica",t["ArialNarrow-Bold"]="Helvetica-Bold",t["ArialNarrow-BoldItalic"]="Helvetica-BoldOblique",t["ArialNarrow-Italic"]="Helvetica-Oblique",t.ArialBlack="Helvetica",t["ArialBlack-Bold"]="Helvetica-Bold",t["ArialBlack-BoldItalic"]="Helvetica-BoldOblique",t["ArialBlack-Italic"]="Helvetica-Oblique",t["Arial-Black"]="Helvetica",t["Arial-Black-Bold"]="Helvetica-Bold",t["Arial-Black-BoldItalic"]="Helvetica-BoldOblique",t["Arial-Black-Italic"]="Helvetica-Oblique",t.Arial="Helvetica",t["Arial-Bold"]="Helvetica-Bold",t["Arial-BoldItalic"]="Helvetica-BoldOblique",t["Arial-Italic"]="Helvetica-Oblique",t.ArialMT="Helvetica",t["Arial-BoldItalicMT"]="Helvetica-BoldOblique",t["Arial-BoldMT"]="Helvetica-Bold",t["Arial-ItalicMT"]="Helvetica-Oblique",t["Arial-BoldItalicMT-BoldItalic"]="Helvetica-BoldOblique",t["Arial-BoldMT-Bold"]="Helvetica-Bold",t["Arial-ItalicMT-Italic"]="Helvetica-Oblique",t.ArialUnicodeMS="Helvetica",t["ArialUnicodeMS-Bold"]="Helvetica-Bold",t["ArialUnicodeMS-BoldItalic"]="Helvetica-BoldOblique",t["ArialUnicodeMS-Italic"]="Helvetica-Oblique",t["Courier-BoldItalic"]="Courier-BoldOblique",t["Courier-Italic"]="Courier-Oblique",t.CourierNew="Courier",t["CourierNew-Bold"]="Courier-Bold",t["CourierNew-BoldItalic"]="Courier-BoldOblique",t["CourierNew-Italic"]="Courier-Oblique",t["CourierNewPS-BoldItalicMT"]="Courier-BoldOblique",t["CourierNewPS-BoldMT"]="Courier-Bold",t["CourierNewPS-ItalicMT"]="Courier-Oblique",t.CourierNewPSMT="Courier",t["Helvetica-BoldItalic"]="Helvetica-BoldOblique",t["Helvetica-Italic"]="Helvetica-Oblique",t["Symbol-Bold"]="Symbol",t["Symbol-BoldItalic"]="Symbol",t["Symbol-Italic"]="Symbol",t.TimesNewRoman="Times-Roman",t["TimesNewRoman-Bold"]="Times-Bold",t["TimesNewRoman-BoldItalic"]="Times-BoldItalic",t["TimesNewRoman-Italic"]="Times-Italic",t.TimesNewRomanPS="Times-Roman",t["TimesNewRomanPS-Bold"]="Times-Bold",t["TimesNewRomanPS-BoldItalic"]="Times-BoldItalic",t["TimesNewRomanPS-BoldItalicMT"]="Times-BoldItalic",t["TimesNewRomanPS-BoldMT"]="Times-Bold",t["TimesNewRomanPS-Italic"]="Times-Italic",t["TimesNewRomanPS-ItalicMT"]="Times-Italic",t.TimesNewRomanPSMT="Times-Roman",t["TimesNewRomanPSMT-Bold"]="Times-Bold",t["TimesNewRomanPSMT-BoldItalic"]="Times-BoldItalic",t["TimesNewRomanPSMT-Italic"]="Times-Italic"})),us=wt((function(t){t.Courier="FoxitFixed.pfb",t["Courier-Bold"]="FoxitFixedBold.pfb",t["Courier-BoldOblique"]="FoxitFixedBoldItalic.pfb",t["Courier-Oblique"]="FoxitFixedItalic.pfb",t.Helvetica="LiberationSans-Regular.ttf",t["Helvetica-Bold"]="LiberationSans-Bold.ttf",t["Helvetica-BoldOblique"]="LiberationSans-BoldItalic.ttf",t["Helvetica-Oblique"]="LiberationSans-Italic.ttf",t["Times-Roman"]="FoxitSerif.pfb",t["Times-Bold"]="FoxitSerifBold.pfb",t["Times-BoldItalic"]="FoxitSerifBoldItalic.pfb",t["Times-Italic"]="FoxitSerifItalic.pfb",t.Symbol="FoxitSymbol.pfb",t.ZapfDingbats="FoxitDingbats.pfb",t["LiberationSans-Regular"]="LiberationSans-Regular.ttf",t["LiberationSans-Bold"]="LiberationSans-Bold.ttf",t["LiberationSans-Italic"]="LiberationSans-Italic.ttf",t["LiberationSans-BoldItalic"]="LiberationSans-BoldItalic.ttf"})),Qs=wt((function(t){t.Calibri="Helvetica",t["Calibri-Bold"]="Helvetica-Bold",t["Calibri-BoldItalic"]="Helvetica-BoldOblique",t["Calibri-Italic"]="Helvetica-Oblique",t.CenturyGothic="Helvetica",t["CenturyGothic-Bold"]="Helvetica-Bold",t["CenturyGothic-BoldItalic"]="Helvetica-BoldOblique",t["CenturyGothic-Italic"]="Helvetica-Oblique",t.ComicSansMS="Comic Sans MS",t["ComicSansMS-Bold"]="Comic Sans MS-Bold",t["ComicSansMS-BoldItalic"]="Comic Sans MS-BoldItalic",t["ComicSansMS-Italic"]="Comic Sans MS-Italic",t.Impact="Helvetica",t["ItcSymbol-Bold"]="Helvetica-Bold",t["ItcSymbol-BoldItalic"]="Helvetica-BoldOblique",t["ItcSymbol-Book"]="Helvetica",t["ItcSymbol-BookItalic"]="Helvetica-Oblique",t["ItcSymbol-Medium"]="Helvetica",t["ItcSymbol-MediumItalic"]="Helvetica-Oblique",t.LucidaConsole="Courier",t["LucidaConsole-Bold"]="Courier-Bold",t["LucidaConsole-BoldItalic"]="Courier-BoldOblique",t["LucidaConsole-Italic"]="Courier-Oblique",t["LucidaSans-Demi"]="Helvetica-Bold",t["MS-Gothic"]="MS Gothic",t["MS-Gothic-Bold"]="MS Gothic-Bold",t["MS-Gothic-BoldItalic"]="MS Gothic-BoldItalic",t["MS-Gothic-Italic"]="MS Gothic-Italic",t["MS-Mincho"]="MS Mincho",t["MS-Mincho-Bold"]="MS Mincho-Bold",t["MS-Mincho-BoldItalic"]="MS Mincho-BoldItalic",t["MS-Mincho-Italic"]="MS Mincho-Italic",t["MS-PGothic"]="MS PGothic",t["MS-PGothic-Bold"]="MS PGothic-Bold",t["MS-PGothic-BoldItalic"]="MS PGothic-BoldItalic",t["MS-PGothic-Italic"]="MS PGothic-Italic",t["MS-PMincho"]="MS PMincho",t["MS-PMincho-Bold"]="MS PMincho-Bold",t["MS-PMincho-BoldItalic"]="MS PMincho-BoldItalic",t["MS-PMincho-Italic"]="MS PMincho-Italic",t.NuptialScript="Times-Italic",t.SegoeUISymbol="Helvetica"})),Es=wt((function(t){t["Adobe Jenson"]=!0,t["Adobe Text"]=!0,t.Albertus=!0,t.Aldus=!0,t.Alexandria=!0,t.Algerian=!0,t["American Typewriter"]=!0,t.Antiqua=!0,t.Apex=!0,t.Arno=!0,t.Aster=!0,t.Aurora=!0,t.Baskerville=!0,t.Bell=!0,t.Bembo=!0,t["Bembo Schoolbook"]=!0,t.Benguiat=!0,t["Berkeley Old Style"]=!0,t["Bernhard Modern"]=!0,t["Berthold City"]=!0,t.Bodoni=!0,t["Bauer Bodoni"]=!0,t["Book Antiqua"]=!0,t.Bookman=!0,t["Bordeaux Roman"]=!0,t["Californian FB"]=!0,t.Calisto=!0,t.Calvert=!0,t.Capitals=!0,t.Cambria=!0,t.Cartier=!0,t.Caslon=!0,t.Catull=!0,t.Centaur=!0,t["Century Old Style"]=!0,t["Century Schoolbook"]=!0,t.Chaparral=!0,t["Charis SIL"]=!0,t.Cheltenham=!0,t["Cholla Slab"]=!0,t.Clarendon=!0,t.Clearface=!0,t.Cochin=!0,t.Colonna=!0,t["Computer Modern"]=!0,t["Concrete Roman"]=!0,t.Constantia=!0,t["Cooper Black"]=!0,t.Corona=!0,t.Ecotype=!0,t.Egyptienne=!0,t.Elephant=!0,t.Excelsior=!0,t.Fairfield=!0,t["FF Scala"]=!0,t.Folkard=!0,t.Footlight=!0,t.FreeSerif=!0,t["Friz Quadrata"]=!0,t.Garamond=!0,t.Gentium=!0,t.Georgia=!0,t.Gloucester=!0,t["Goudy Old Style"]=!0,t["Goudy Schoolbook"]=!0,t["Goudy Pro Font"]=!0,t.Granjon=!0,t["Guardian Egyptian"]=!0,t.Heather=!0,t.Hercules=!0,t["High Tower Text"]=!0,t.Hiroshige=!0,t["Hoefler Text"]=!0,t["Humana Serif"]=!0,t.Imprint=!0,t["Ionic No. 5"]=!0,t.Janson=!0,t.Joanna=!0,t.Korinna=!0,t.Lexicon=!0,t.LiberationSerif=!0,t["Liberation Serif"]=!0,t["Linux Libertine"]=!0,t.Literaturnaya=!0,t.Lucida=!0,t["Lucida Bright"]=!0,t.Melior=!0,t.Memphis=!0,t.Miller=!0,t.Minion=!0,t.Modern=!0,t["Mona Lisa"]=!0,t["Mrs Eaves"]=!0,t["MS Serif"]=!0,t["Museo Slab"]=!0,t["New York"]=!0,t["Nimbus Roman"]=!0,t["NPS Rawlinson Roadway"]=!0,t.NuptialScript=!0,t.Palatino=!0,t.Perpetua=!0,t.Plantin=!0,t["Plantin Schoolbook"]=!0,t.Playbill=!0,t["Poor Richard"]=!0,t["Rawlinson Roadway"]=!0,t.Renault=!0,t.Requiem=!0,t.Rockwell=!0,t.Roman=!0,t["Rotis Serif"]=!0,t.Sabon=!0,t.Scala=!0,t.Seagull=!0,t.Sistina=!0,t.Souvenir=!0,t.STIX=!0,t["Stone Informal"]=!0,t["Stone Serif"]=!0,t.Sylfaen=!0,t.Times=!0,t.Trajan=!0,t["Trinité"]=!0,t["Trump Mediaeval"]=!0,t.Utopia=!0,t["Vale Type"]=!0,t["Bitstream Vera"]=!0,t["Vera Serif"]=!0,t.Versailles=!0,t.Wanted=!0,t.Weiss=!0,t["Wide Latin"]=!0,t.Windsor=!0,t.XITS=!0})),fs=wt((function(t){t.Dingbats=!0,t.Symbol=!0,t.ZapfDingbats=!0,t.Wingdings=!0,t["Wingdings-Bold"]=!0,t["Wingdings-Regular"]=!0})),ps=wt((function(t){t[2]=10,t[3]=32,t[4]=33,t[5]=34,t[6]=35,t[7]=36,t[8]=37,t[9]=38,t[10]=39,t[11]=40,t[12]=41,t[13]=42,t[14]=43,t[15]=44,t[16]=45,t[17]=46,t[18]=47,t[19]=48,t[20]=49,t[21]=50,t[22]=51,t[23]=52,t[24]=53,t[25]=54,t[26]=55,t[27]=56,t[28]=57,t[29]=58,t[30]=894,t[31]=60,t[32]=61,t[33]=62,t[34]=63,t[35]=64,t[36]=65,t[37]=66,t[38]=67,t[39]=68,t[40]=69,t[41]=70,t[42]=71,t[43]=72,t[44]=73,t[45]=74,t[46]=75,t[47]=76,t[48]=77,t[49]=78,t[50]=79,t[51]=80,t[52]=81,t[53]=82,t[54]=83,t[55]=84,t[56]=85,t[57]=86,t[58]=87,t[59]=88,t[60]=89,t[61]=90,t[62]=91,t[63]=92,t[64]=93,t[65]=94,t[66]=95,t[67]=96,t[68]=97,t[69]=98,t[70]=99,t[71]=100,t[72]=101,t[73]=102,t[74]=103,t[75]=104,t[76]=105,t[77]=106,t[78]=107,t[79]=108,t[80]=109,t[81]=110,t[82]=111,t[83]=112,t[84]=113,t[85]=114,t[86]=115,t[87]=116,t[88]=117,t[89]=118,t[90]=119,t[91]=120,t[92]=121,t[93]=122,t[94]=123,t[95]=124,t[96]=125,t[97]=126,t[98]=196,t[99]=197,t[100]=199,t[101]=201,t[102]=209,t[103]=214,t[104]=220,t[105]=225,t[106]=224,t[107]=226,t[108]=228,t[109]=227,t[110]=229,t[111]=231,t[112]=233,t[113]=232,t[114]=234,t[115]=235,t[116]=237,t[117]=236,t[118]=238,t[119]=239,t[120]=241,t[121]=243,t[122]=242,t[123]=244,t[124]=246,t[125]=245,t[126]=250,t[127]=249,t[128]=251,t[129]=252,t[130]=8224,t[131]=176,t[132]=162,t[133]=163,t[134]=167,t[135]=8226,t[136]=182,t[137]=223,t[138]=174,t[139]=169,t[140]=8482,t[141]=180,t[142]=168,t[143]=8800,t[144]=198,t[145]=216,t[146]=8734,t[147]=177,t[148]=8804,t[149]=8805,t[150]=165,t[151]=181,t[152]=8706,t[153]=8721,t[154]=8719,t[156]=8747,t[157]=170,t[158]=186,t[159]=8486,t[160]=230,t[161]=248,t[162]=191,t[163]=161,t[164]=172,t[165]=8730,t[166]=402,t[167]=8776,t[168]=8710,t[169]=171,t[170]=187,t[171]=8230,t[179]=8220,t[180]=8221,t[181]=8216,t[182]=8217,t[200]=193,t[203]=205,t[207]=211,t[210]=218,t[223]=711,t[224]=321,t[225]=322,t[226]=352,t[227]=353,t[228]=381,t[229]=382,t[233]=221,t[234]=253,t[252]=263,t[253]=268,t[254]=269,t[258]=258,t[260]=260,t[261]=261,t[265]=280,t[266]=281,t[267]=282,t[268]=283,t[269]=313,t[275]=323,t[276]=324,t[278]=328,t[283]=344,t[284]=345,t[285]=346,t[286]=347,t[292]=367,t[295]=377,t[296]=378,t[298]=380,t[305]=963,t[306]=964,t[307]=966,t[308]=8215,t[309]=8252,t[310]=8319,t[311]=8359,t[312]=8592,t[313]=8593,t[337]=9552,t[493]=1039,t[494]=1040,t[672]=1488,t[673]=1489,t[674]=1490,t[675]=1491,t[676]=1492,t[677]=1493,t[678]=1494,t[679]=1495,t[680]=1496,t[681]=1497,t[682]=1498,t[683]=1499,t[684]=1500,t[685]=1501,t[686]=1502,t[687]=1503,t[688]=1504,t[689]=1505,t[690]=1506,t[691]=1507,t[692]=1508,t[693]=1509,t[694]=1510,t[695]=1511,t[696]=1512,t[697]=1513,t[698]=1514,t[705]=1524,t[706]=8362,t[710]=64288,t[711]=64298,t[759]=1617,t[761]=1776,t[763]=1778,t[775]=1652,t[777]=1764,t[778]=1780,t[779]=1781,t[780]=1782,t[782]=771,t[783]=64726,t[786]=8363,t[788]=8532,t[790]=768,t[791]=769,t[792]=768,t[795]=803,t[797]=64336,t[798]=64337,t[799]=64342,t[800]=64343,t[801]=64344,t[802]=64345,t[803]=64362,t[804]=64363,t[805]=64364,t[2424]=7821,t[2425]=7822,t[2426]=7823,t[2427]=7824,t[2428]=7825,t[2429]=7826,t[2430]=7827,t[2433]=7682,t[2678]=8045,t[2679]=8046,t[2830]=1552,t[2838]=686,t[2840]=751,t[2842]=753,t[2843]=754,t[2844]=755,t[2846]=757,t[2856]=767,t[2857]=848,t[2858]=849,t[2862]=853,t[2863]=854,t[2864]=855,t[2865]=861,t[2866]=862,t[2906]=7460,t[2908]=7462,t[2909]=7463,t[2910]=7464,t[2912]=7466,t[2913]=7467,t[2914]=7468,t[2916]=7470,t[2917]=7471,t[2918]=7472,t[2920]=7474,t[2921]=7475,t[2922]=7476,t[2924]=7478,t[2925]=7479,t[2926]=7480,t[2928]=7482,t[2929]=7483,t[2930]=7484,t[2932]=7486,t[2933]=7487,t[2934]=7488,t[2936]=7490,t[2937]=7491,t[2938]=7492,t[2940]=7494,t[2941]=7495,t[2942]=7496,t[2944]=7498,t[2946]=7500,t[2948]=7502,t[2950]=7504,t[2951]=7505,t[2952]=7506,t[2954]=7508,t[2955]=7509,t[2956]=7510,t[2958]=7512,t[2959]=7513,t[2960]=7514,t[2962]=7516,t[2963]=7517,t[2964]=7518,t[2966]=7520,t[2967]=7521,t[2968]=7522,t[2970]=7524,t[2971]=7525,t[2972]=7526,t[2974]=7528,t[2975]=7529,t[2976]=7530,t[2978]=1537,t[2979]=1538,t[2980]=1539,t[2982]=1549,t[2983]=1551,t[2984]=1552,t[2986]=1554,t[2987]=1555,t[2988]=1556,t[2990]=1623,t[2991]=1624,t[2995]=1775,t[2999]=1791,t[3002]=64290,t[3003]=64291,t[3004]=64292,t[3006]=64294,t[3007]=64295,t[3008]=64296,t[3011]=1900,t[3014]=8223,t[3015]=8244,t[3017]=7532,t[3018]=7533,t[3019]=7534,t[3075]=7590,t[3076]=7591,t[3079]=7594,t[3080]=7595,t[3083]=7598,t[3084]=7599,t[3087]=7602,t[3088]=7603,t[3091]=7606,t[3092]=7607,t[3095]=7610,t[3096]=7611,t[3099]=7614,t[3100]=7615,t[3103]=7618,t[3104]=7619,t[3107]=8337,t[3108]=8338,t[3116]=1884,t[3119]=1885,t[3120]=1885,t[3123]=1886,t[3124]=1886,t[3127]=1887,t[3128]=1887,t[3131]=1888,t[3132]=1888,t[3135]=1889,t[3136]=1889,t[3139]=1890,t[3140]=1890,t[3143]=1891,t[3144]=1891,t[3147]=1892,t[3148]=1892,t[3153]=580,t[3154]=581,t[3157]=584,t[3158]=585,t[3161]=588,t[3162]=589,t[3165]=891,t[3166]=892,t[3169]=1274,t[3170]=1275,t[3173]=1278,t[3174]=1279,t[3181]=7622,t[3182]=7623,t[3282]=11799,t[3316]=578,t[3379]=42785,t[3393]=1159,t[3416]=8377})),ms=wt((function(t){t[227]=322,t[264]=261,t[291]=346})),ys=wt((function(t){t[1]=32,t[4]=65,t[5]=192,t[6]=193,t[9]=196,t[17]=66,t[18]=67,t[21]=268,t[24]=68,t[28]=69,t[29]=200,t[30]=201,t[32]=282,t[38]=70,t[39]=71,t[44]=72,t[47]=73,t[48]=204,t[49]=205,t[58]=74,t[60]=75,t[62]=76,t[68]=77,t[69]=78,t[75]=79,t[76]=210,t[80]=214,t[87]=80,t[89]=81,t[90]=82,t[92]=344,t[94]=83,t[97]=352,t[100]=84,t[104]=85,t[109]=220,t[115]=86,t[116]=87,t[121]=88,t[122]=89,t[124]=221,t[127]=90,t[129]=381,t[258]=97,t[259]=224,t[260]=225,t[263]=228,t[268]=261,t[271]=98,t[272]=99,t[273]=263,t[275]=269,t[282]=100,t[286]=101,t[287]=232,t[288]=233,t[290]=283,t[295]=281,t[296]=102,t[336]=103,t[346]=104,t[349]=105,t[350]=236,t[351]=237,t[361]=106,t[364]=107,t[367]=108,t[371]=322,t[373]=109,t[374]=110,t[381]=111,t[382]=242,t[383]=243,t[386]=246,t[393]=112,t[395]=113,t[396]=114,t[398]=345,t[400]=115,t[401]=347,t[403]=353,t[410]=116,t[437]=117,t[442]=252,t[448]=118,t[449]=119,t[454]=120,t[455]=121,t[457]=253,t[460]=122,t[462]=382,t[463]=380,t[853]=44,t[855]=58,t[856]=46,t[876]=47,t[878]=45,t[882]=45,t[894]=40,t[895]=41,t[896]=91,t[897]=93,t[923]=64,t[1004]=48,t[1005]=49,t[1006]=50,t[1007]=51,t[1008]=52,t[1009]=53,t[1010]=54,t[1011]=55,t[1012]=56,t[1013]=57,t[1081]=37,t[1085]=43,t[1086]=45}));function ws(t){const e=Bs(t);return ds()[e]}function bs(t){const e=Bs(t);return!!(ds()[e]||Qs()[e]||Es()[e]||fs()[e])}class Ds{constructor(t=[]){this._map=t}get length(){return this._map.length}forEach(t){for(const e in this._map)t(e,this._map[e].charCodeAt(0))}has(t){return void 0!==this._map[t]}get(t){return this._map[t]}charCodeOf(t){const e=this._map;if(e.length<=65536)return e.indexOf(t);for(const A in e)if(e[A]===t)return 0|A;return-1}amend(t){for(const e in t)this._map[e]=t[e]}}class ks{constructor(t,e){this.firstChar=t,this.lastChar=e}get length(){return this.lastChar+1-this.firstChar}forEach(t){for(let e=this.firstChar,A=this.lastChar;e<=A;e++)t(e,e)}has(t){return this.firstChar<=t&&t<=this.lastChar}get(t){if(this.firstChar<=t&&t<=this.lastChar)return String.fromCharCode(t)}charCodeOf(t){return Number.isInteger(t)&&t>=this.firstChar&&t<=this.lastChar?t:-1}amend(t){v("Should not call amend()")}}class Ss{constructor(t,e){this.properties=e;const A=new Ti(t,e,hs);this.cff=A.parse(),this.cff.duplicateFirstGlyph();const i=new As(this.cff);this.seacs=this.cff.seacs;try{this.data=i.compile()}catch{N("Failed to compile font "+e.loadedName),this.data=t}this._createBuiltInEncoding()}get numGlyphs(){return this.cff.charStrings.count}getCharset(){return this.cff.charset.charset}getGlyphMapping(){const t=this.cff,e=this.properties,{cidToGidMap:A,cMap:i}=e,s=t.charset.charset;let a,n;if(e.composite){let e,r;if(A?.length>0){e=Object.create(null);for(let t=0,i=A.length;t<i;t++){const i=A[t];void 0!==i&&(e[i]=t)}}if(a=Object.create(null),t.isCIDFont)for(n=0;n<s.length;n++){const t=s[n];r=i.charCodeOf(t),void 0!==e?.[r]&&(r=e[r]),a[r]=n}else for(n=0;n<t.charStrings.count;n++)r=i.charCodeOf(n),a[r]=n;return a}let r=t.encoding?t.encoding.encoding:null;return e.isInternalFont&&(r=e.defaultEncoding),a=Cs(e,r,s),a}hasGlyphId(t){return this.cff.hasGlyphId(t)}_createBuiltInEncoding(){const{charset:t,encoding:e}=this.cff;if(!t||!e)return;const A=t.charset,i=e.encoding,s=[];for(const t in i){const e=i[t];if(e>=0){const i=A[e];i&&(s[t]=i)}}s.length>0&&(this.properties.builtInEncoding=s)}}function Fs(t,e){return(t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3])>>>0}function Rs(t,e){return t[e]<<8|t[e+1]}function xs(t,e){return(t[e]<<24|t[e+1]<<16)>>16}function Ns(t,e){return t[e]<<24>>24}function vs(t,e){return xs(t,e)/16384}function Gs(t){const e=t.length;let A=32768;return e<1240?A=107:e<33900&&(A=1131),A}function Ms(t,e,A){const i=1===Rs(t,e+2)?Fs(t,e+8):Fs(t,e+16),s=Rs(t,e+i);let a,n,r;if(4===s){Rs(t,e+i+2);const A=Rs(t,e+i+6)>>1;for(n=e+i+14,a=[],r=0;r<A;r++,n+=2)a[r]={end:Rs(t,n)};for(n+=2,r=0;r<A;r++,n+=2)a[r].start=Rs(t,n);for(r=0;r<A;r++,n+=2)a[r].idDelta=Rs(t,n);for(r=0;r<A;r++,n+=2){let e=Rs(t,n);if(0!==e){a[r].ids=[];for(let A=0,i=a[r].end-a[r].start+1;A<i;A++)a[r].ids[A]=Rs(t,n+e),e+=2}}return a}if(12===s){const A=Fs(t,e+i+12);for(n=e+i+16,a=[],r=0;r<A;r++)e=Fs(t,n),a.push({start:e,end:Fs(t,n+4),idDelta:Fs(t,n+8)-e}),n+=12;return a}throw new q(`unsupported cmap: ${s}`)}function Ls(t,e,A,i){const s=new Ti(new ne(t,e,A-e),{},i).parse();return{glyphs:s.charStrings.objects,subrs:s.topDict.privateDict?.subrsIndex?.objects,gsubrs:s.globalSubrIndex?.objects,isCFFCIDFont:s.isCIDFont,fdSelect:s.fdSelect,fdArray:s.fdArray}}function Us(t,e){const A=e.codePointAt(0);let i=0,s=0,a=t.length-1;for(;s<a;){const e=s+a+1>>1;A<t[e].start?a=e-1:s=e}return t[s].start<=A&&A<=t[s].end&&(i=t[s].idDelta+(t[s].ids?t[s].ids[A-t[s].start]:A)&65535),{charCode:A,glyphId:i}}function Hs(t,e,A){function i(t,A){e.add(1,[t,A])}function s(t,A){e.add(2,[t,A])}function a(t,A,i,s){e.add(3,[t,A,i,s])}let n=0;const r=xs(t,n);let o,g=0,c=0;if(n+=10,r<0)do{o=Rs(t,n);const i=Rs(t,n+2);let s,a;n+=4,1&o?(2&o?(s=xs(t,n),a=xs(t,n+2)):(s=Rs(t,n),a=Rs(t,n+2)),n+=4):2&o?(s=Ns(t,n++),a=Ns(t,n++)):(s=t[n++],a=t[n++]),2&o?(g=s,c=a):(g=0,c=0);let r=1,h=1,l=0,I=0;8&o?(r=h=vs(t,n),n+=2):64&o?(r=vs(t,n),h=vs(t,n+2),n+=4):128&o&&(r=vs(t,n),l=vs(t,n+2),I=vs(t,n+4),h=vs(t,n+6),n+=8);const C=A.glyphs[i];C&&(e.add(5),e.add(7,[r,l,I,h,g,c]),Hs(C,e,A),e.add(4))}while(32&o);else{const e=[];let A,h;for(A=0;A<r;A++)e.push(Rs(t,n)),n+=2;n+=2+Rs(t,n);const l=e.at(-1)+1,I=[];for(;I.length<l;){o=t[n++];let e=1;for(8&o&&(e+=t[n++]);e-- >0;)I.push({flags:o})}for(A=0;A<l;A++){switch(18&I[A].flags){case 0:g+=xs(t,n),n+=2;break;case 2:g-=t[n++];break;case 18:g+=t[n++]}I[A].x=g}for(A=0;A<l;A++){switch(36&I[A].flags){case 0:c+=xs(t,n),n+=2;break;case 4:c-=t[n++];break;case 36:c+=t[n++]}I[A].y=c}let C=0;for(n=0;n<r;n++){const t=e[n],r=I.slice(C,t+1);if(1&r[0].flags)r.push(r[0]);else if(1&r.at(-1).flags)r.unshift(r.at(-1));else{const t={flags:1,x:(r[0].x+r.at(-1).x)/2,y:(r[0].y+r.at(-1).y)/2};r.unshift(t),r.push(t)}for(i(r[0].x,r[0].y),A=1,h=r.length;A<h;A++)1&r[A].flags?s(r[A].x,r[A].y):1&r[A+1].flags?(a(r[A].x,r[A].y,r[A+1].x,r[A+1].y),A++):a(r[A].x,r[A].y,(r[A].x+r[A+1].x)/2,(r[A].y+r[A+1].y)/2);C=t+1}}}function Js(t,e,A,i){function s(t,A){e.add(1,[t,A])}function a(t,A){e.add(2,[t,A])}function n(t,A,i,s,a,n){e.add(0,[t,A,i,s,a,n])}const r=[];let o=0,g=0,c=0;!function t(h){let l=0;for(;l<h.length;){let I,C,B,d,u,Q,E,f,p,m=!1,y=h[l++];switch(y){case 1:case 3:case 18:case 23:c+=r.length>>1,m=!0;break;case 4:g+=r.pop(),s(o,g),m=!0;break;case 5:for(;r.length>0;)o+=r.shift(),g+=r.shift(),a(o,g);break;case 6:for(;r.length>0&&(o+=r.shift(),a(o,g),0!==r.length);)g+=r.shift(),a(o,g);break;case 7:for(;r.length>0&&(g+=r.shift(),a(o,g),0!==r.length);)o+=r.shift(),a(o,g);break;case 8:for(;r.length>0;)I=o+r.shift(),B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C+r.shift(),g=d+r.shift(),n(I,B,C,d,o,g);break;case 10:if(f=r.pop(),p=null,A.isCFFCIDFont){const t=A.fdSelect.getFDIndex(i);if(t>=0&&t<A.fdArray.length){const e=A.fdArray[t];let i;e.privateDict?.subrsIndex&&(i=e.privateDict.subrsIndex.objects),i&&(f+=Gs(i),p=i[f])}else N("Invalid fd index for glyph index.")}else p=A.subrs[f+A.subrsBias];p&&t(p);break;case 11:return;case 12:switch(y=h[l++],y){case 34:I=o+r.shift(),C=I+r.shift(),u=g+r.shift(),o=C+r.shift(),n(I,g,C,u,o,u),I=o+r.shift(),C=I+r.shift(),o=C+r.shift(),n(I,u,C,g,o,g);break;case 35:I=o+r.shift(),B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C+r.shift(),g=d+r.shift(),n(I,B,C,d,o,g),I=o+r.shift(),B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C+r.shift(),g=d+r.shift(),n(I,B,C,d,o,g),r.pop();break;case 36:I=o+r.shift(),u=g+r.shift(),C=I+r.shift(),Q=u+r.shift(),o=C+r.shift(),n(I,u,C,Q,o,Q),I=o+r.shift(),C=I+r.shift(),E=Q+r.shift(),o=C+r.shift(),n(I,Q,C,E,o,g);break;case 37:const t=o,e=g;I=o+r.shift(),B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C+r.shift(),g=d+r.shift(),n(I,B,C,d,o,g),I=o+r.shift(),B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C,g=d,Math.abs(o-t)>Math.abs(g-e)?o+=r.shift():g+=r.shift(),n(I,B,C,d,o,g);break;default:throw new q(`unknown operator: 12 ${y}`)}break;case 14:if(r.length>=4){const t=r.pop(),i=r.pop();g=r.pop(),o=r.pop(),e.add(5),e.add(8,[o,g]);let s=Us(A.cmap,String.fromCharCode(A.glyphNameMap[vi[t]]));Js(A.glyphs[s.glyphId],e,A,s.glyphId),e.add(4),s=Us(A.cmap,String.fromCharCode(A.glyphNameMap[vi[i]])),Js(A.glyphs[s.glyphId],e,A,s.glyphId)}return;case 19:case 20:c+=r.length>>1,l+=c+7>>3,m=!0;break;case 21:g+=r.pop(),o+=r.pop(),s(o,g),m=!0;break;case 22:o+=r.pop(),s(o,g),m=!0;break;case 24:for(;r.length>2;)I=o+r.shift(),B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C+r.shift(),g=d+r.shift(),n(I,B,C,d,o,g);o+=r.shift(),g+=r.shift(),a(o,g);break;case 25:for(;r.length>6;)o+=r.shift(),g+=r.shift(),a(o,g);I=o+r.shift(),B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C+r.shift(),g=d+r.shift(),n(I,B,C,d,o,g);break;case 26:for(r.length%2&&(o+=r.shift());r.length>0;)I=o,B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C,g=d+r.shift(),n(I,B,C,d,o,g);break;case 27:for(r.length%2&&(g+=r.shift());r.length>0;)I=o+r.shift(),B=g,C=I+r.shift(),d=B+r.shift(),o=C+r.shift(),g=d,n(I,B,C,d,o,g);break;case 28:r.push((h[l]<<24|h[l+1]<<16)>>16),l+=2;break;case 29:f=r.pop()+A.gsubrsBias,p=A.gsubrs[f],p&&t(p);break;case 30:for(;r.length>0&&(I=o,B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C+r.shift(),g=d+(1===r.length?r.shift():0),n(I,B,C,d,o,g),0!==r.length);)I=o+r.shift(),B=g,C=I+r.shift(),d=B+r.shift(),g=d+r.shift(),o=C+(1===r.length?r.shift():0),n(I,B,C,d,o,g);break;case 31:for(;r.length>0&&(I=o+r.shift(),B=g,C=I+r.shift(),d=B+r.shift(),g=d+r.shift(),o=C+(1===r.length?r.shift():0),n(I,B,C,d,o,g),0!==r.length);)I=o,B=g+r.shift(),C=I+r.shift(),d=B+r.shift(),o=C+r.shift(),g=d+(1===r.length?r.shift():0),n(I,B,C,d,o,g);break;default:if(y<32)throw new q(`unknown operator: ${y}`);y<247?r.push(y-139):y<251?r.push(256*(y-247)+h[l++]+108):y<255?r.push(256*-(y-251)-h[l++]-108):(r.push((h[l]<<24|h[l+1]<<16|h[l+2]<<8|h[l+3])/65536),l+=4)}m&&(r.length=0)}}(t)}const Ys=[];class Ts{cmds=[];add(t,e){if(e)if(Ht(e,null))this.cmds.push(t,...e);else{N(`Commands.add - "${t}" has at least one non-number arg: "${e}".`);const A=e.map((t=>"number"==typeof t?t:0));this.cmds.push(t,...A)}else this.cmds.push(t)}}class Ks{constructor(t){this.constructor===Ks&&v("Cannot initialize CompiledFont."),this.fontMatrix=t,this.compiledGlyphs=Object.create(null),this.compiledCharCodeToGlyphId=Object.create(null)}getPathJs(t){const{charCode:e,glyphId:A}=Us(this.cmap,t);let i,s=this.compiledGlyphs[A];if(!s){try{s=this.compileGlyph(this.glyphs[A],A)}catch(t){s=Ys,i=t}this.compiledGlyphs[A]=s}if(this.compiledCharCodeToGlyphId[e]??=A,i)throw i;return s}compileGlyph(t,e){if(!t||0===t.length||14===t[0])return Ys;let A=this.fontMatrix;if(this.isCFFCIDFont){const t=this.fdSelect.getFDIndex(e);t>=0&&t<this.fdArray.length?A=this.fdArray[t].getByName("FontMatrix")||o:N("Invalid fd index for glyph index.")}const i=new Ts;return i.add(5),i.add(7,A.slice()),i.add(6),this.compileGlyphImpl(t,i,e),i.add(4),i.cmds}compileGlyphImpl(){v("Children classes should implement this.")}hasBuiltPath(t){const{charCode:e,glyphId:A}=Us(this.cmap,t);return void 0!==this.compiledGlyphs[A]&&void 0!==this.compiledCharCodeToGlyphId[e]}}class qs extends Ks{constructor(t,e,A){super(A||[488e-6,0,0,488e-6,0,0]),this.glyphs=t,this.cmap=e}compileGlyphImpl(t,e){Hs(t,e,this)}}class Ps extends Ks{constructor(t,e,A,i){super(A||[.001,0,0,.001,0,0]),this.glyphs=t.glyphs,this.gsubrs=t.gsubrs||[],this.subrs=t.subrs||[],this.cmap=e,this.glyphNameMap=i||is(),this.gsubrsBias=Gs(this.gsubrs),this.subrsBias=Gs(this.subrs),this.isCFFCIDFont=t.isCFFCIDFont,this.fdSelect=t.fdSelect,this.fdArray=t.fdArray}compileGlyphImpl(t,e,A){Js(t,e,this,A)}}class _s{static create(t,e){const A=new Uint8Array(t.data);let i,s,a,n,r,o;const g=Rs(A,4);for(let t=0,c=12;t<g;t++,c+=16){const t=_(A.subarray(c,c+4)),g=Fs(A,c+8),h=Fs(A,c+12);switch(t){case"cmap":i=Ms(A,g);break;case"glyf":s=A.subarray(g,g+h);break;case"loca":a=A.subarray(g,g+h);break;case"head":o=Rs(A,g+18),r=Rs(A,g+50);break;case"CFF ":n=Ls(A,g,g+h,e)}}if(s){const e=o?[1/o,0,0,1/o,0,0]:t.fontMatrix;return new qs(function(t,e,A){let i,s;A?(i=4,s=Fs):(i=2,s=(t,e)=>2*Rs(t,e));const a=[];let n=s(e,0);for(let A=i;A<e.length;A+=i){const i=s(e,A);a.push(t.subarray(n,i)),n=i}return a}(s,a,r),i,e)}return new Ps(n,i,t.fontMatrix,t.glyphNameMap)}}const Os=wt((function(t){t.Courier=600,t["Courier-Bold"]=600,t["Courier-BoldOblique"]=600,t["Courier-Oblique"]=600,t.Helvetica=wt((function(t){t.space=278,t.exclam=278,t.quotedbl=355,t.numbersign=556,t.dollar=556,t.percent=889,t.ampersand=667,t.quoteright=222,t.parenleft=333,t.parenright=333,t.asterisk=389,t.plus=584,t.comma=278,t.hyphen=333,t.period=278,t.slash=278,t.zero=556,t.one=556,t.two=556,t.three=556,t.four=556,t.five=556,t.six=556,t.seven=556,t.eight=556,t.nine=556,t.colon=278,t.semicolon=278,t.less=584,t.equal=584,t.greater=584,t.question=556,t.at=1015,t.A=667,t.B=667,t.C=722,t.D=722,t.E=667,t.F=611,t.G=778,t.H=722,t.I=278,t.J=500,t.K=667,t.L=556,t.M=833,t.N=722,t.O=778,t.P=667,t.Q=778,t.R=722,t.S=667,t.T=611,t.U=722,t.V=667,t.W=944,t.X=667,t.Y=667,t.Z=611,t.bracketleft=278,t.backslash=278,t.bracketright=278,t.asciicircum=469,t.underscore=556,t.quoteleft=222,t.a=556,t.b=556,t.c=500,t.d=556,t.e=556,t.f=278,t.g=556,t.h=556,t.i=222,t.j=222,t.k=500,t.l=222,t.m=833,t.n=556,t.o=556,t.p=556,t.q=556,t.r=333,t.s=500,t.t=278,t.u=556,t.v=500,t.w=722,t.x=500,t.y=500,t.z=500,t.braceleft=334,t.bar=260,t.braceright=334,t.asciitilde=584,t.exclamdown=333,t.cent=556,t.sterling=556,t.fraction=167,t.yen=556,t.florin=556,t.section=556,t.currency=556,t.quotesingle=191,t.quotedblleft=333,t.guillemotleft=556,t.guilsinglleft=333,t.guilsinglright=333,t.fi=500,t.fl=500,t.endash=556,t.dagger=556,t.daggerdbl=556,t.periodcentered=278,t.paragraph=537,t.bullet=350,t.quotesinglbase=222,t.quotedblbase=333,t.quotedblright=333,t.guillemotright=556,t.ellipsis=1e3,t.perthousand=1e3,t.questiondown=611,t.grave=333,t.acute=333,t.circumflex=333,t.tilde=333,t.macron=333,t.breve=333,t.dotaccent=333,t.dieresis=333,t.ring=333,t.cedilla=333,t.hungarumlaut=333,t.ogonek=333,t.caron=333,t.emdash=1e3,t.AE=1e3,t.ordfeminine=370,t.Lslash=556,t.Oslash=778,t.OE=1e3,t.ordmasculine=365,t.ae=889,t.dotlessi=278,t.lslash=222,t.oslash=611,t.oe=944,t.germandbls=611,t.Idieresis=278,t.eacute=556,t.abreve=556,t.uhungarumlaut=556,t.ecaron=556,t.Ydieresis=667,t.divide=584,t.Yacute=667,t.Acircumflex=667,t.aacute=556,t.Ucircumflex=722,t.yacute=500,t.scommaaccent=500,t.ecircumflex=556,t.Uring=722,t.Udieresis=722,t.aogonek=556,t.Uacute=722,t.uogonek=556,t.Edieresis=667,t.Dcroat=722,t.commaaccent=250,t.copyright=737,t.Emacron=667,t.ccaron=500,t.aring=556,t.Ncommaaccent=722,t.lacute=222,t.agrave=556,t.Tcommaaccent=611,t.Cacute=722,t.atilde=556,t.Edotaccent=667,t.scaron=500,t.scedilla=500,t.iacute=278,t.lozenge=471,t.Rcaron=722,t.Gcommaaccent=778,t.ucircumflex=556,t.acircumflex=556,t.Amacron=667,t.rcaron=333,t.ccedilla=500,t.Zdotaccent=611,t.Thorn=667,t.Omacron=778,t.Racute=722,t.Sacute=667,t.dcaron=643,t.Umacron=722,t.uring=556,t.threesuperior=333,t.Ograve=778,t.Agrave=667,t.Abreve=667,t.multiply=584,t.uacute=556,t.Tcaron=611,t.partialdiff=476,t.ydieresis=500,t.Nacute=722,t.icircumflex=278,t.Ecircumflex=667,t.adieresis=556,t.edieresis=556,t.cacute=500,t.nacute=556,t.umacron=556,t.Ncaron=722,t.Iacute=278,t.plusminus=584,t.brokenbar=260,t.registered=737,t.Gbreve=778,t.Idotaccent=278,t.summation=600,t.Egrave=667,t.racute=333,t.omacron=556,t.Zacute=611,t.Zcaron=611,t.greaterequal=549,t.Eth=722,t.Ccedilla=722,t.lcommaaccent=222,t.tcaron=317,t.eogonek=556,t.Uogonek=722,t.Aacute=667,t.Adieresis=667,t.egrave=556,t.zacute=500,t.iogonek=222,t.Oacute=778,t.oacute=556,t.amacron=556,t.sacute=500,t.idieresis=278,t.Ocircumflex=778,t.Ugrave=722,t.Delta=612,t.thorn=556,t.twosuperior=333,t.Odieresis=778,t.mu=556,t.igrave=278,t.ohungarumlaut=556,t.Eogonek=667,t.dcroat=556,t.threequarters=834,t.Scedilla=667,t.lcaron=299,t.Kcommaaccent=667,t.Lacute=556,t.trademark=1e3,t.edotaccent=556,t.Igrave=278,t.Imacron=278,t.Lcaron=556,t.onehalf=834,t.lessequal=549,t.ocircumflex=556,t.ntilde=556,t.Uhungarumlaut=722,t.Eacute=667,t.emacron=556,t.gbreve=556,t.onequarter=834,t.Scaron=667,t.Scommaaccent=667,t.Ohungarumlaut=778,t.degree=400,t.ograve=556,t.Ccaron=722,t.ugrave=556,t.radical=453,t.Dcaron=722,t.rcommaaccent=333,t.Ntilde=722,t.otilde=556,t.Rcommaaccent=722,t.Lcommaaccent=556,t.Atilde=667,t.Aogonek=667,t.Aring=667,t.Otilde=778,t.zdotaccent=500,t.Ecaron=667,t.Iogonek=278,t.kcommaaccent=500,t.minus=584,t.Icircumflex=278,t.ncaron=556,t.tcommaaccent=278,t.logicalnot=584,t.odieresis=556,t.udieresis=556,t.notequal=549,t.gcommaaccent=556,t.eth=556,t.zcaron=500,t.ncommaaccent=556,t.onesuperior=333,t.imacron=278,t.Euro=556})),t["Helvetica-Bold"]=wt((function(t){t.space=278,t.exclam=333,t.quotedbl=474,t.numbersign=556,t.dollar=556,t.percent=889,t.ampersand=722,t.quoteright=278,t.parenleft=333,t.parenright=333,t.asterisk=389,t.plus=584,t.comma=278,t.hyphen=333,t.period=278,t.slash=278,t.zero=556,t.one=556,t.two=556,t.three=556,t.four=556,t.five=556,t.six=556,t.seven=556,t.eight=556,t.nine=556,t.colon=333,t.semicolon=333,t.less=584,t.equal=584,t.greater=584,t.question=611,t.at=975,t.A=722,t.B=722,t.C=722,t.D=722,t.E=667,t.F=611,t.G=778,t.H=722,t.I=278,t.J=556,t.K=722,t.L=611,t.M=833,t.N=722,t.O=778,t.P=667,t.Q=778,t.R=722,t.S=667,t.T=611,t.U=722,t.V=667,t.W=944,t.X=667,t.Y=667,t.Z=611,t.bracketleft=333,t.backslash=278,t.bracketright=333,t.asciicircum=584,t.underscore=556,t.quoteleft=278,t.a=556,t.b=611,t.c=556,t.d=611,t.e=556,t.f=333,t.g=611,t.h=611,t.i=278,t.j=278,t.k=556,t.l=278,t.m=889,t.n=611,t.o=611,t.p=611,t.q=611,t.r=389,t.s=556,t.t=333,t.u=611,t.v=556,t.w=778,t.x=556,t.y=556,t.z=500,t.braceleft=389,t.bar=280,t.braceright=389,t.asciitilde=584,t.exclamdown=333,t.cent=556,t.sterling=556,t.fraction=167,t.yen=556,t.florin=556,t.section=556,t.currency=556,t.quotesingle=238,t.quotedblleft=500,t.guillemotleft=556,t.guilsinglleft=333,t.guilsinglright=333,t.fi=611,t.fl=611,t.endash=556,t.dagger=556,t.daggerdbl=556,t.periodcentered=278,t.paragraph=556,t.bullet=350,t.quotesinglbase=278,t.quotedblbase=500,t.quotedblright=500,t.guillemotright=556,t.ellipsis=1e3,t.perthousand=1e3,t.questiondown=611,t.grave=333,t.acute=333,t.circumflex=333,t.tilde=333,t.macron=333,t.breve=333,t.dotaccent=333,t.dieresis=333,t.ring=333,t.cedilla=333,t.hungarumlaut=333,t.ogonek=333,t.caron=333,t.emdash=1e3,t.AE=1e3,t.ordfeminine=370,t.Lslash=611,t.Oslash=778,t.OE=1e3,t.ordmasculine=365,t.ae=889,t.dotlessi=278,t.lslash=278,t.oslash=611,t.oe=944,t.germandbls=611,t.Idieresis=278,t.eacute=556,t.abreve=556,t.uhungarumlaut=611,t.ecaron=556,t.Ydieresis=667,t.divide=584,t.Yacute=667,t.Acircumflex=722,t.aacute=556,t.Ucircumflex=722,t.yacute=556,t.scommaaccent=556,t.ecircumflex=556,t.Uring=722,t.Udieresis=722,t.aogonek=556,t.Uacute=722,t.uogonek=611,t.Edieresis=667,t.Dcroat=722,t.commaaccent=250,t.copyright=737,t.Emacron=667,t.ccaron=556,t.aring=556,t.Ncommaaccent=722,t.lacute=278,t.agrave=556,t.Tcommaaccent=611,t.Cacute=722,t.atilde=556,t.Edotaccent=667,t.scaron=556,t.scedilla=556,t.iacute=278,t.lozenge=494,t.Rcaron=722,t.Gcommaaccent=778,t.ucircumflex=611,t.acircumflex=556,t.Amacron=722,t.rcaron=389,t.ccedilla=556,t.Zdotaccent=611,t.Thorn=667,t.Omacron=778,t.Racute=722,t.Sacute=667,t.dcaron=743,t.Umacron=722,t.uring=611,t.threesuperior=333,t.Ograve=778,t.Agrave=722,t.Abreve=722,t.multiply=584,t.uacute=611,t.Tcaron=611,t.partialdiff=494,t.ydieresis=556,t.Nacute=722,t.icircumflex=278,t.Ecircumflex=667,t.adieresis=556,t.edieresis=556,t.cacute=556,t.nacute=611,t.umacron=611,t.Ncaron=722,t.Iacute=278,t.plusminus=584,t.brokenbar=280,t.registered=737,t.Gbreve=778,t.Idotaccent=278,t.summation=600,t.Egrave=667,t.racute=389,t.omacron=611,t.Zacute=611,t.Zcaron=611,t.greaterequal=549,t.Eth=722,t.Ccedilla=722,t.lcommaaccent=278,t.tcaron=389,t.eogonek=556,t.Uogonek=722,t.Aacute=722,t.Adieresis=722,t.egrave=556,t.zacute=500,t.iogonek=278,t.Oacute=778,t.oacute=611,t.amacron=556,t.sacute=556,t.idieresis=278,t.Ocircumflex=778,t.Ugrave=722,t.Delta=612,t.thorn=611,t.twosuperior=333,t.Odieresis=778,t.mu=611,t.igrave=278,t.ohungarumlaut=611,t.Eogonek=667,t.dcroat=611,t.threequarters=834,t.Scedilla=667,t.lcaron=400,t.Kcommaaccent=722,t.Lacute=611,t.trademark=1e3,t.edotaccent=556,t.Igrave=278,t.Imacron=278,t.Lcaron=611,t.onehalf=834,t.lessequal=549,t.ocircumflex=611,t.ntilde=611,t.Uhungarumlaut=722,t.Eacute=667,t.emacron=556,t.gbreve=611,t.onequarter=834,t.Scaron=667,t.Scommaaccent=667,t.Ohungarumlaut=778,t.degree=400,t.ograve=611,t.Ccaron=722,t.ugrave=611,t.radical=549,t.Dcaron=722,t.rcommaaccent=389,t.Ntilde=722,t.otilde=611,t.Rcommaaccent=722,t.Lcommaaccent=611,t.Atilde=722,t.Aogonek=722,t.Aring=722,t.Otilde=778,t.zdotaccent=500,t.Ecaron=667,t.Iogonek=278,t.kcommaaccent=556,t.minus=584,t.Icircumflex=278,t.ncaron=611,t.tcommaaccent=333,t.logicalnot=584,t.odieresis=611,t.udieresis=611,t.notequal=549,t.gcommaaccent=611,t.eth=611,t.zcaron=500,t.ncommaaccent=611,t.onesuperior=333,t.imacron=278,t.Euro=556})),t["Helvetica-BoldOblique"]=wt((function(t){t.space=278,t.exclam=333,t.quotedbl=474,t.numbersign=556,t.dollar=556,t.percent=889,t.ampersand=722,t.quoteright=278,t.parenleft=333,t.parenright=333,t.asterisk=389,t.plus=584,t.comma=278,t.hyphen=333,t.period=278,t.slash=278,t.zero=556,t.one=556,t.two=556,t.three=556,t.four=556,t.five=556,t.six=556,t.seven=556,t.eight=556,t.nine=556,t.colon=333,t.semicolon=333,t.less=584,t.equal=584,t.greater=584,t.question=611,t.at=975,t.A=722,t.B=722,t.C=722,t.D=722,t.E=667,t.F=611,t.G=778,t.H=722,t.I=278,t.J=556,t.K=722,t.L=611,t.M=833,t.N=722,t.O=778,t.P=667,t.Q=778,t.R=722,t.S=667,t.T=611,t.U=722,t.V=667,t.W=944,t.X=667,t.Y=667,t.Z=611,t.bracketleft=333,t.backslash=278,t.bracketright=333,t.asciicircum=584,t.underscore=556,t.quoteleft=278,t.a=556,t.b=611,t.c=556,t.d=611,t.e=556,t.f=333,t.g=611,t.h=611,t.i=278,t.j=278,t.k=556,t.l=278,t.m=889,t.n=611,t.o=611,t.p=611,t.q=611,t.r=389,t.s=556,t.t=333,t.u=611,t.v=556,t.w=778,t.x=556,t.y=556,t.z=500,t.braceleft=389,t.bar=280,t.braceright=389,t.asciitilde=584,t.exclamdown=333,t.cent=556,t.sterling=556,t.fraction=167,t.yen=556,t.florin=556,t.section=556,t.currency=556,t.quotesingle=238,t.quotedblleft=500,t.guillemotleft=556,t.guilsinglleft=333,t.guilsinglright=333,t.fi=611,t.fl=611,t.endash=556,t.dagger=556,t.daggerdbl=556,t.periodcentered=278,t.paragraph=556,t.bullet=350,t.quotesinglbase=278,t.quotedblbase=500,t.quotedblright=500,t.guillemotright=556,t.ellipsis=1e3,t.perthousand=1e3,t.questiondown=611,t.grave=333,t.acute=333,t.circumflex=333,t.tilde=333,t.macron=333,t.breve=333,t.dotaccent=333,t.dieresis=333,t.ring=333,t.cedilla=333,t.hungarumlaut=333,t.ogonek=333,t.caron=333,t.emdash=1e3,t.AE=1e3,t.ordfeminine=370,t.Lslash=611,t.Oslash=778,t.OE=1e3,t.ordmasculine=365,t.ae=889,t.dotlessi=278,t.lslash=278,t.oslash=611,t.oe=944,t.germandbls=611,t.Idieresis=278,t.eacute=556,t.abreve=556,t.uhungarumlaut=611,t.ecaron=556,t.Ydieresis=667,t.divide=584,t.Yacute=667,t.Acircumflex=722,t.aacute=556,t.Ucircumflex=722,t.yacute=556,t.scommaaccent=556,t.ecircumflex=556,t.Uring=722,t.Udieresis=722,t.aogonek=556,t.Uacute=722,t.uogonek=611,t.Edieresis=667,t.Dcroat=722,t.commaaccent=250,t.copyright=737,t.Emacron=667,t.ccaron=556,t.aring=556,t.Ncommaaccent=722,t.lacute=278,t.agrave=556,t.Tcommaaccent=611,t.Cacute=722,t.atilde=556,t.Edotaccent=667,t.scaron=556,t.scedilla=556,t.iacute=278,t.lozenge=494,t.Rcaron=722,t.Gcommaaccent=778,t.ucircumflex=611,t.acircumflex=556,t.Amacron=722,t.rcaron=389,t.ccedilla=556,t.Zdotaccent=611,t.Thorn=667,t.Omacron=778,t.Racute=722,t.Sacute=667,t.dcaron=743,t.Umacron=722,t.uring=611,t.threesuperior=333,t.Ograve=778,t.Agrave=722,t.Abreve=722,t.multiply=584,t.uacute=611,t.Tcaron=611,t.partialdiff=494,t.ydieresis=556,t.Nacute=722,t.icircumflex=278,t.Ecircumflex=667,t.adieresis=556,t.edieresis=556,t.cacute=556,t.nacute=611,t.umacron=611,t.Ncaron=722,t.Iacute=278,t.plusminus=584,t.brokenbar=280,t.registered=737,t.Gbreve=778,t.Idotaccent=278,t.summation=600,t.Egrave=667,t.racute=389,t.omacron=611,t.Zacute=611,t.Zcaron=611,t.greaterequal=549,t.Eth=722,t.Ccedilla=722,t.lcommaaccent=278,t.tcaron=389,t.eogonek=556,t.Uogonek=722,t.Aacute=722,t.Adieresis=722,t.egrave=556,t.zacute=500,t.iogonek=278,t.Oacute=778,t.oacute=611,t.amacron=556,t.sacute=556,t.idieresis=278,t.Ocircumflex=778,t.Ugrave=722,t.Delta=612,t.thorn=611,t.twosuperior=333,t.Odieresis=778,t.mu=611,t.igrave=278,t.ohungarumlaut=611,t.Eogonek=667,t.dcroat=611,t.threequarters=834,t.Scedilla=667,t.lcaron=400,t.Kcommaaccent=722,t.Lacute=611,t.trademark=1e3,t.edotaccent=556,t.Igrave=278,t.Imacron=278,t.Lcaron=611,t.onehalf=834,t.lessequal=549,t.ocircumflex=611,t.ntilde=611,t.Uhungarumlaut=722,t.Eacute=667,t.emacron=556,t.gbreve=611,t.onequarter=834,t.Scaron=667,t.Scommaaccent=667,t.Ohungarumlaut=778,t.degree=400,t.ograve=611,t.Ccaron=722,t.ugrave=611,t.radical=549,t.Dcaron=722,t.rcommaaccent=389,t.Ntilde=722,t.otilde=611,t.Rcommaaccent=722,t.Lcommaaccent=611,t.Atilde=722,t.Aogonek=722,t.Aring=722,t.Otilde=778,t.zdotaccent=500,t.Ecaron=667,t.Iogonek=278,t.kcommaaccent=556,t.minus=584,t.Icircumflex=278,t.ncaron=611,t.tcommaaccent=333,t.logicalnot=584,t.odieresis=611,t.udieresis=611,t.notequal=549,t.gcommaaccent=611,t.eth=611,t.zcaron=500,t.ncommaaccent=611,t.onesuperior=333,t.imacron=278,t.Euro=556})),t["Helvetica-Oblique"]=wt((function(t){t.space=278,t.exclam=278,t.quotedbl=355,t.numbersign=556,t.dollar=556,t.percent=889,t.ampersand=667,t.quoteright=222,t.parenleft=333,t.parenright=333,t.asterisk=389,t.plus=584,t.comma=278,t.hyphen=333,t.period=278,t.slash=278,t.zero=556,t.one=556,t.two=556,t.three=556,t.four=556,t.five=556,t.six=556,t.seven=556,t.eight=556,t.nine=556,t.colon=278,t.semicolon=278,t.less=584,t.equal=584,t.greater=584,t.question=556,t.at=1015,t.A=667,t.B=667,t.C=722,t.D=722,t.E=667,t.F=611,t.G=778,t.H=722,t.I=278,t.J=500,t.K=667,t.L=556,t.M=833,t.N=722,t.O=778,t.P=667,t.Q=778,t.R=722,t.S=667,t.T=611,t.U=722,t.V=667,t.W=944,t.X=667,t.Y=667,t.Z=611,t.bracketleft=278,t.backslash=278,t.bracketright=278,t.asciicircum=469,t.underscore=556,t.quoteleft=222,t.a=556,t.b=556,t.c=500,t.d=556,t.e=556,t.f=278,t.g=556,t.h=556,t.i=222,t.j=222,t.k=500,t.l=222,t.m=833,t.n=556,t.o=556,t.p=556,t.q=556,t.r=333,t.s=500,t.t=278,t.u=556,t.v=500,t.w=722,t.x=500,t.y=500,t.z=500,t.braceleft=334,t.bar=260,t.braceright=334,t.asciitilde=584,t.exclamdown=333,t.cent=556,t.sterling=556,t.fraction=167,t.yen=556,t.florin=556,t.section=556,t.currency=556,t.quotesingle=191,t.quotedblleft=333,t.guillemotleft=556,t.guilsinglleft=333,t.guilsinglright=333,t.fi=500,t.fl=500,t.endash=556,t.dagger=556,t.daggerdbl=556,t.periodcentered=278,t.paragraph=537,t.bullet=350,t.quotesinglbase=222,t.quotedblbase=333,t.quotedblright=333,t.guillemotright=556,t.ellipsis=1e3,t.perthousand=1e3,t.questiondown=611,t.grave=333,t.acute=333,t.circumflex=333,t.tilde=333,t.macron=333,t.breve=333,t.dotaccent=333,t.dieresis=333,t.ring=333,t.cedilla=333,t.hungarumlaut=333,t.ogonek=333,t.caron=333,t.emdash=1e3,t.AE=1e3,t.ordfeminine=370,t.Lslash=556,t.Oslash=778,t.OE=1e3,t.ordmasculine=365,t.ae=889,t.dotlessi=278,t.lslash=222,t.oslash=611,t.oe=944,t.germandbls=611,t.Idieresis=278,t.eacute=556,t.abreve=556,t.uhungarumlaut=556,t.ecaron=556,t.Ydieresis=667,t.divide=584,t.Yacute=667,t.Acircumflex=667,t.aacute=556,t.Ucircumflex=722,t.yacute=500,t.scommaaccent=500,t.ecircumflex=556,t.Uring=722,t.Udieresis=722,t.aogonek=556,t.Uacute=722,t.uogonek=556,t.Edieresis=667,t.Dcroat=722,t.commaaccent=250,t.copyright=737,t.Emacron=667,t.ccaron=500,t.aring=556,t.Ncommaaccent=722,t.lacute=222,t.agrave=556,t.Tcommaaccent=611,t.Cacute=722,t.atilde=556,t.Edotaccent=667,t.scaron=500,t.scedilla=500,t.iacute=278,t.lozenge=471,t.Rcaron=722,t.Gcommaaccent=778,t.ucircumflex=556,t.acircumflex=556,t.Amacron=667,t.rcaron=333,t.ccedilla=500,t.Zdotaccent=611,t.Thorn=667,t.Omacron=778,t.Racute=722,t.Sacute=667,t.dcaron=643,t.Umacron=722,t.uring=556,t.threesuperior=333,t.Ograve=778,t.Agrave=667,t.Abreve=667,t.multiply=584,t.uacute=556,t.Tcaron=611,t.partialdiff=476,t.ydieresis=500,t.Nacute=722,t.icircumflex=278,t.Ecircumflex=667,t.adieresis=556,t.edieresis=556,t.cacute=500,t.nacute=556,t.umacron=556,t.Ncaron=722,t.Iacute=278,t.plusminus=584,t.brokenbar=260,t.registered=737,t.Gbreve=778,t.Idotaccent=278,t.summation=600,t.Egrave=667,t.racute=333,t.omacron=556,t.Zacute=611,t.Zcaron=611,t.greaterequal=549,t.Eth=722,t.Ccedilla=722,t.lcommaaccent=222,t.tcaron=317,t.eogonek=556,t.Uogonek=722,t.Aacute=667,t.Adieresis=667,t.egrave=556,t.zacute=500,t.iogonek=222,t.Oacute=778,t.oacute=556,t.amacron=556,t.sacute=500,t.idieresis=278,t.Ocircumflex=778,t.Ugrave=722,t.Delta=612,t.thorn=556,t.twosuperior=333,t.Odieresis=778,t.mu=556,t.igrave=278,t.ohungarumlaut=556,t.Eogonek=667,t.dcroat=556,t.threequarters=834,t.Scedilla=667,t.lcaron=299,t.Kcommaaccent=667,t.Lacute=556,t.trademark=1e3,t.edotaccent=556,t.Igrave=278,t.Imacron=278,t.Lcaron=556,t.onehalf=834,t.lessequal=549,t.ocircumflex=556,t.ntilde=556,t.Uhungarumlaut=722,t.Eacute=667,t.emacron=556,t.gbreve=556,t.onequarter=834,t.Scaron=667,t.Scommaaccent=667,t.Ohungarumlaut=778,t.degree=400,t.ograve=556,t.Ccaron=722,t.ugrave=556,t.radical=453,t.Dcaron=722,t.rcommaaccent=333,t.Ntilde=722,t.otilde=556,t.Rcommaaccent=722,t.Lcommaaccent=556,t.Atilde=667,t.Aogonek=667,t.Aring=667,t.Otilde=778,t.zdotaccent=500,t.Ecaron=667,t.Iogonek=278,t.kcommaaccent=500,t.minus=584,t.Icircumflex=278,t.ncaron=556,t.tcommaaccent=278,t.logicalnot=584,t.odieresis=556,t.udieresis=556,t.notequal=549,t.gcommaaccent=556,t.eth=556,t.zcaron=500,t.ncommaaccent=556,t.onesuperior=333,t.imacron=278,t.Euro=556})),t.Symbol=wt((function(t){t.space=250,t.exclam=333,t.universal=713,t.numbersign=500,t.existential=549,t.percent=833,t.ampersand=778,t.suchthat=439,t.parenleft=333,t.parenright=333,t.asteriskmath=500,t.plus=549,t.comma=250,t.minus=549,t.period=250,t.slash=278,t.zero=500,t.one=500,t.two=500,t.three=500,t.four=500,t.five=500,t.six=500,t.seven=500,t.eight=500,t.nine=500,t.colon=278,t.semicolon=278,t.less=549,t.equal=549,t.greater=549,t.question=444,t.congruent=549,t.Alpha=722,t.Beta=667,t.Chi=722,t.Delta=612,t.Epsilon=611,t.Phi=763,t.Gamma=603,t.Eta=722,t.Iota=333,t.theta1=631,t.Kappa=722,t.Lambda=686,t.Mu=889,t.Nu=722,t.Omicron=722,t.Pi=768,t.Theta=741,t.Rho=556,t.Sigma=592,t.Tau=611,t.Upsilon=690,t.sigma1=439,t.Omega=768,t.Xi=645,t.Psi=795,t.Zeta=611,t.bracketleft=333,t.therefore=863,t.bracketright=333,t.perpendicular=658,t.underscore=500,t.radicalex=500,t.alpha=631,t.beta=549,t.chi=549,t.delta=494,t.epsilon=439,t.phi=521,t.gamma=411,t.eta=603,t.iota=329,t.phi1=603,t.kappa=549,t.lambda=549,t.mu=576,t.nu=521,t.omicron=549,t.pi=549,t.theta=521,t.rho=549,t.sigma=603,t.tau=439,t.upsilon=576,t.omega1=713,t.omega=686,t.xi=493,t.psi=686,t.zeta=494,t.braceleft=480,t.bar=200,t.braceright=480,t.similar=549,t.Euro=750,t.Upsilon1=620,t.minute=247,t.lessequal=549,t.fraction=167,t.infinity=713,t.florin=500,t.club=753,t.diamond=753,t.heart=753,t.spade=753,t.arrowboth=1042,t.arrowleft=987,t.arrowup=603,t.arrowright=987,t.arrowdown=603,t.degree=400,t.plusminus=549,t.second=411,t.greaterequal=549,t.multiply=549,t.proportional=713,t.partialdiff=494,t.bullet=460,t.divide=549,t.notequal=549,t.equivalence=549,t.approxequal=549,t.ellipsis=1e3,t.arrowvertex=603,t.arrowhorizex=1e3,t.carriagereturn=658,t.aleph=823,t.Ifraktur=686,t.Rfraktur=795,t.weierstrass=987,t.circlemultiply=768,t.circleplus=768,t.emptyset=823,t.intersection=768,t.union=768,t.propersuperset=713,t.reflexsuperset=713,t.notsubset=713,t.propersubset=713,t.reflexsubset=713,t.element=713,t.notelement=713,t.angle=768,t.gradient=713,t.registerserif=790,t.copyrightserif=790,t.trademarkserif=890,t.product=823,t.radical=549,t.dotmath=250,t.logicalnot=713,t.logicaland=603,t.logicalor=603,t.arrowdblboth=1042,t.arrowdblleft=987,t.arrowdblup=603,t.arrowdblright=987,t.arrowdbldown=603,t.lozenge=494,t.angleleft=329,t.registersans=790,t.copyrightsans=790,t.trademarksans=786,t.summation=713,t.parenlefttp=384,t.parenleftex=384,t.parenleftbt=384,t.bracketlefttp=384,t.bracketleftex=384,t.bracketleftbt=384,t.bracelefttp=494,t.braceleftmid=494,t.braceleftbt=494,t.braceex=494,t.angleright=329,t.integral=274,t.integraltp=686,t.integralex=686,t.integralbt=686,t.parenrighttp=384,t.parenrightex=384,t.parenrightbt=384,t.bracketrighttp=384,t.bracketrightex=384,t.bracketrightbt=384,t.bracerighttp=494,t.bracerightmid=494,t.bracerightbt=494,t.apple=790})),t["Times-Roman"]=wt((function(t){t.space=250,t.exclam=333,t.quotedbl=408,t.numbersign=500,t.dollar=500,t.percent=833,t.ampersand=778,t.quoteright=333,t.parenleft=333,t.parenright=333,t.asterisk=500,t.plus=564,t.comma=250,t.hyphen=333,t.period=250,t.slash=278,t.zero=500,t.one=500,t.two=500,t.three=500,t.four=500,t.five=500,t.six=500,t.seven=500,t.eight=500,t.nine=500,t.colon=278,t.semicolon=278,t.less=564,t.equal=564,t.greater=564,t.question=444,t.at=921,t.A=722,t.B=667,t.C=667,t.D=722,t.E=611,t.F=556,t.G=722,t.H=722,t.I=333,t.J=389,t.K=722,t.L=611,t.M=889,t.N=722,t.O=722,t.P=556,t.Q=722,t.R=667,t.S=556,t.T=611,t.U=722,t.V=722,t.W=944,t.X=722,t.Y=722,t.Z=611,t.bracketleft=333,t.backslash=278,t.bracketright=333,t.asciicircum=469,t.underscore=500,t.quoteleft=333,t.a=444,t.b=500,t.c=444,t.d=500,t.e=444,t.f=333,t.g=500,t.h=500,t.i=278,t.j=278,t.k=500,t.l=278,t.m=778,t.n=500,t.o=500,t.p=500,t.q=500,t.r=333,t.s=389,t.t=278,t.u=500,t.v=500,t.w=722,t.x=500,t.y=500,t.z=444,t.braceleft=480,t.bar=200,t.braceright=480,t.asciitilde=541,t.exclamdown=333,t.cent=500,t.sterling=500,t.fraction=167,t.yen=500,t.florin=500,t.section=500,t.currency=500,t.quotesingle=180,t.quotedblleft=444,t.guillemotleft=500,t.guilsinglleft=333,t.guilsinglright=333,t.fi=556,t.fl=556,t.endash=500,t.dagger=500,t.daggerdbl=500,t.periodcentered=250,t.paragraph=453,t.bullet=350,t.quotesinglbase=333,t.quotedblbase=444,t.quotedblright=444,t.guillemotright=500,t.ellipsis=1e3,t.perthousand=1e3,t.questiondown=444,t.grave=333,t.acute=333,t.circumflex=333,t.tilde=333,t.macron=333,t.breve=333,t.dotaccent=333,t.dieresis=333,t.ring=333,t.cedilla=333,t.hungarumlaut=333,t.ogonek=333,t.caron=333,t.emdash=1e3,t.AE=889,t.ordfeminine=276,t.Lslash=611,t.Oslash=722,t.OE=889,t.ordmasculine=310,t.ae=667,t.dotlessi=278,t.lslash=278,t.oslash=500,t.oe=722,t.germandbls=500,t.Idieresis=333,t.eacute=444,t.abreve=444,t.uhungarumlaut=500,t.ecaron=444,t.Ydieresis=722,t.divide=564,t.Yacute=722,t.Acircumflex=722,t.aacute=444,t.Ucircumflex=722,t.yacute=500,t.scommaaccent=389,t.ecircumflex=444,t.Uring=722,t.Udieresis=722,t.aogonek=444,t.Uacute=722,t.uogonek=500,t.Edieresis=611,t.Dcroat=722,t.commaaccent=250,t.copyright=760,t.Emacron=611,t.ccaron=444,t.aring=444,t.Ncommaaccent=722,t.lacute=278,t.agrave=444,t.Tcommaaccent=611,t.Cacute=667,t.atilde=444,t.Edotaccent=611,t.scaron=389,t.scedilla=389,t.iacute=278,t.lozenge=471,t.Rcaron=667,t.Gcommaaccent=722,t.ucircumflex=500,t.acircumflex=444,t.Amacron=722,t.rcaron=333,t.ccedilla=444,t.Zdotaccent=611,t.Thorn=556,t.Omacron=722,t.Racute=667,t.Sacute=556,t.dcaron=588,t.Umacron=722,t.uring=500,t.threesuperior=300,t.Ograve=722,t.Agrave=722,t.Abreve=722,t.multiply=564,t.uacute=500,t.Tcaron=611,t.partialdiff=476,t.ydieresis=500,t.Nacute=722,t.icircumflex=278,t.Ecircumflex=611,t.adieresis=444,t.edieresis=444,t.cacute=444,t.nacute=500,t.umacron=500,t.Ncaron=722,t.Iacute=333,t.plusminus=564,t.brokenbar=200,t.registered=760,t.Gbreve=722,t.Idotaccent=333,t.summation=600,t.Egrave=611,t.racute=333,t.omacron=500,t.Zacute=611,t.Zcaron=611,t.greaterequal=549,t.Eth=722,t.Ccedilla=667,t.lcommaaccent=278,t.tcaron=326,t.eogonek=444,t.Uogonek=722,t.Aacute=722,t.Adieresis=722,t.egrave=444,t.zacute=444,t.iogonek=278,t.Oacute=722,t.oacute=500,t.amacron=444,t.sacute=389,t.idieresis=278,t.Ocircumflex=722,t.Ugrave=722,t.Delta=612,t.thorn=500,t.twosuperior=300,t.Odieresis=722,t.mu=500,t.igrave=278,t.ohungarumlaut=500,t.Eogonek=611,t.dcroat=500,t.threequarters=750,t.Scedilla=556,t.lcaron=344,t.Kcommaaccent=722,t.Lacute=611,t.trademark=980,t.edotaccent=444,t.Igrave=333,t.Imacron=333,t.Lcaron=611,t.onehalf=750,t.lessequal=549,t.ocircumflex=500,t.ntilde=500,t.Uhungarumlaut=722,t.Eacute=611,t.emacron=444,t.gbreve=500,t.onequarter=750,t.Scaron=556,t.Scommaaccent=556,t.Ohungarumlaut=722,t.degree=400,t.ograve=500,t.Ccaron=667,t.ugrave=500,t.radical=453,t.Dcaron=722,t.rcommaaccent=333,t.Ntilde=722,t.otilde=500,t.Rcommaaccent=667,t.Lcommaaccent=611,t.Atilde=722,t.Aogonek=722,t.Aring=722,t.Otilde=722,t.zdotaccent=444,t.Ecaron=611,t.Iogonek=333,t.kcommaaccent=500,t.minus=564,t.Icircumflex=333,t.ncaron=500,t.tcommaaccent=278,t.logicalnot=564,t.odieresis=500,t.udieresis=500,t.notequal=549,t.gcommaaccent=500,t.eth=500,t.zcaron=444,t.ncommaaccent=500,t.onesuperior=300,t.imacron=278,t.Euro=500})),t["Times-Bold"]=wt((function(t){t.space=250,t.exclam=333,t.quotedbl=555,t.numbersign=500,t.dollar=500,t.percent=1e3,t.ampersand=833,t.quoteright=333,t.parenleft=333,t.parenright=333,t.asterisk=500,t.plus=570,t.comma=250,t.hyphen=333,t.period=250,t.slash=278,t.zero=500,t.one=500,t.two=500,t.three=500,t.four=500,t.five=500,t.six=500,t.seven=500,t.eight=500,t.nine=500,t.colon=333,t.semicolon=333,t.less=570,t.equal=570,t.greater=570,t.question=500,t.at=930,t.A=722,t.B=667,t.C=722,t.D=722,t.E=667,t.F=611,t.G=778,t.H=778,t.I=389,t.J=500,t.K=778,t.L=667,t.M=944,t.N=722,t.O=778,t.P=611,t.Q=778,t.R=722,t.S=556,t.T=667,t.U=722,t.V=722,t.W=1e3,t.X=722,t.Y=722,t.Z=667,t.bracketleft=333,t.backslash=278,t.bracketright=333,t.asciicircum=581,t.underscore=500,t.quoteleft=333,t.a=500,t.b=556,t.c=444,t.d=556,t.e=444,t.f=333,t.g=500,t.h=556,t.i=278,t.j=333,t.k=556,t.l=278,t.m=833,t.n=556,t.o=500,t.p=556,t.q=556,t.r=444,t.s=389,t.t=333,t.u=556,t.v=500,t.w=722,t.x=500,t.y=500,t.z=444,t.braceleft=394,t.bar=220,t.braceright=394,t.asciitilde=520,t.exclamdown=333,t.cent=500,t.sterling=500,t.fraction=167,t.yen=500,t.florin=500,t.section=500,t.currency=500,t.quotesingle=278,t.quotedblleft=500,t.guillemotleft=500,t.guilsinglleft=333,t.guilsinglright=333,t.fi=556,t.fl=556,t.endash=500,t.dagger=500,t.daggerdbl=500,t.periodcentered=250,t.paragraph=540,t.bullet=350,t.quotesinglbase=333,t.quotedblbase=500,t.quotedblright=500,t.guillemotright=500,t.ellipsis=1e3,t.perthousand=1e3,t.questiondown=500,t.grave=333,t.acute=333,t.circumflex=333,t.tilde=333,t.macron=333,t.breve=333,t.dotaccent=333,t.dieresis=333,t.ring=333,t.cedilla=333,t.hungarumlaut=333,t.ogonek=333,t.caron=333,t.emdash=1e3,t.AE=1e3,t.ordfeminine=300,t.Lslash=667,t.Oslash=778,t.OE=1e3,t.ordmasculine=330,t.ae=722,t.dotlessi=278,t.lslash=278,t.oslash=500,t.oe=722,t.germandbls=556,t.Idieresis=389,t.eacute=444,t.abreve=500,t.uhungarumlaut=556,t.ecaron=444,t.Ydieresis=722,t.divide=570,t.Yacute=722,t.Acircumflex=722,t.aacute=500,t.Ucircumflex=722,t.yacute=500,t.scommaaccent=389,t.ecircumflex=444,t.Uring=722,t.Udieresis=722,t.aogonek=500,t.Uacute=722,t.uogonek=556,t.Edieresis=667,t.Dcroat=722,t.commaaccent=250,t.copyright=747,t.Emacron=667,t.ccaron=444,t.aring=500,t.Ncommaaccent=722,t.lacute=278,t.agrave=500,t.Tcommaaccent=667,t.Cacute=722,t.atilde=500,t.Edotaccent=667,t.scaron=389,t.scedilla=389,t.iacute=278,t.lozenge=494,t.Rcaron=722,t.Gcommaaccent=778,t.ucircumflex=556,t.acircumflex=500,t.Amacron=722,t.rcaron=444,t.ccedilla=444,t.Zdotaccent=667,t.Thorn=611,t.Omacron=778,t.Racute=722,t.Sacute=556,t.dcaron=672,t.Umacron=722,t.uring=556,t.threesuperior=300,t.Ograve=778,t.Agrave=722,t.Abreve=722,t.multiply=570,t.uacute=556,t.Tcaron=667,t.partialdiff=494,t.ydieresis=500,t.Nacute=722,t.icircumflex=278,t.Ecircumflex=667,t.adieresis=500,t.edieresis=444,t.cacute=444,t.nacute=556,t.umacron=556,t.Ncaron=722,t.Iacute=389,t.plusminus=570,t.brokenbar=220,t.registered=747,t.Gbreve=778,t.Idotaccent=389,t.summation=600,t.Egrave=667,t.racute=444,t.omacron=500,t.Zacute=667,t.Zcaron=667,t.greaterequal=549,t.Eth=722,t.Ccedilla=722,t.lcommaaccent=278,t.tcaron=416,t.eogonek=444,t.Uogonek=722,t.Aacute=722,t.Adieresis=722,t.egrave=444,t.zacute=444,t.iogonek=278,t.Oacute=778,t.oacute=500,t.amacron=500,t.sacute=389,t.idieresis=278,t.Ocircumflex=778,t.Ugrave=722,t.Delta=612,t.thorn=556,t.twosuperior=300,t.Odieresis=778,t.mu=556,t.igrave=278,t.ohungarumlaut=500,t.Eogonek=667,t.dcroat=556,t.threequarters=750,t.Scedilla=556,t.lcaron=394,t.Kcommaaccent=778,t.Lacute=667,t.trademark=1e3,t.edotaccent=444,t.Igrave=389,t.Imacron=389,t.Lcaron=667,t.onehalf=750,t.lessequal=549,t.ocircumflex=500,t.ntilde=556,t.Uhungarumlaut=722,t.Eacute=667,t.emacron=444,t.gbreve=500,t.onequarter=750,t.Scaron=556,t.Scommaaccent=556,t.Ohungarumlaut=778,t.degree=400,t.ograve=500,t.Ccaron=722,t.ugrave=556,t.radical=549,t.Dcaron=722,t.rcommaaccent=444,t.Ntilde=722,t.otilde=500,t.Rcommaaccent=722,t.Lcommaaccent=667,t.Atilde=722,t.Aogonek=722,t.Aring=722,t.Otilde=778,t.zdotaccent=444,t.Ecaron=667,t.Iogonek=389,t.kcommaaccent=556,t.minus=570,t.Icircumflex=389,t.ncaron=556,t.tcommaaccent=333,t.logicalnot=570,t.odieresis=500,t.udieresis=556,t.notequal=549,t.gcommaaccent=500,t.eth=500,t.zcaron=444,t.ncommaaccent=556,t.onesuperior=300,t.imacron=278,t.Euro=500})),t["Times-BoldItalic"]=wt((function(t){t.space=250,t.exclam=389,t.quotedbl=555,t.numbersign=500,t.dollar=500,t.percent=833,t.ampersand=778,t.quoteright=333,t.parenleft=333,t.parenright=333,t.asterisk=500,t.plus=570,t.comma=250,t.hyphen=333,t.period=250,t.slash=278,t.zero=500,t.one=500,t.two=500,t.three=500,t.four=500,t.five=500,t.six=500,t.seven=500,t.eight=500,t.nine=500,t.colon=333,t.semicolon=333,t.less=570,t.equal=570,t.greater=570,t.question=500,t.at=832,t.A=667,t.B=667,t.C=667,t.D=722,t.E=667,t.F=667,t.G=722,t.H=778,t.I=389,t.J=500,t.K=667,t.L=611,t.M=889,t.N=722,t.O=722,t.P=611,t.Q=722,t.R=667,t.S=556,t.T=611,t.U=722,t.V=667,t.W=889,t.X=667,t.Y=611,t.Z=611,t.bracketleft=333,t.backslash=278,t.bracketright=333,t.asciicircum=570,t.underscore=500,t.quoteleft=333,t.a=500,t.b=500,t.c=444,t.d=500,t.e=444,t.f=333,t.g=500,t.h=556,t.i=278,t.j=278,t.k=500,t.l=278,t.m=778,t.n=556,t.o=500,t.p=500,t.q=500,t.r=389,t.s=389,t.t=278,t.u=556,t.v=444,t.w=667,t.x=500,t.y=444,t.z=389,t.braceleft=348,t.bar=220,t.braceright=348,t.asciitilde=570,t.exclamdown=389,t.cent=500,t.sterling=500,t.fraction=167,t.yen=500,t.florin=500,t.section=500,t.currency=500,t.quotesingle=278,t.quotedblleft=500,t.guillemotleft=500,t.guilsinglleft=333,t.guilsinglright=333,t.fi=556,t.fl=556,t.endash=500,t.dagger=500,t.daggerdbl=500,t.periodcentered=250,t.paragraph=500,t.bullet=350,t.quotesinglbase=333,t.quotedblbase=500,t.quotedblright=500,t.guillemotright=500,t.ellipsis=1e3,t.perthousand=1e3,t.questiondown=500,t.grave=333,t.acute=333,t.circumflex=333,t.tilde=333,t.macron=333,t.breve=333,t.dotaccent=333,t.dieresis=333,t.ring=333,t.cedilla=333,t.hungarumlaut=333,t.ogonek=333,t.caron=333,t.emdash=1e3,t.AE=944,t.ordfeminine=266,t.Lslash=611,t.Oslash=722,t.OE=944,t.ordmasculine=300,t.ae=722,t.dotlessi=278,t.lslash=278,t.oslash=500,t.oe=722,t.germandbls=500,t.Idieresis=389,t.eacute=444,t.abreve=500,t.uhungarumlaut=556,t.ecaron=444,t.Ydieresis=611,t.divide=570,t.Yacute=611,t.Acircumflex=667,t.aacute=500,t.Ucircumflex=722,t.yacute=444,t.scommaaccent=389,t.ecircumflex=444,t.Uring=722,t.Udieresis=722,t.aogonek=500,t.Uacute=722,t.uogonek=556,t.Edieresis=667,t.Dcroat=722,t.commaaccent=250,t.copyright=747,t.Emacron=667,t.ccaron=444,t.aring=500,t.Ncommaaccent=722,t.lacute=278,t.agrave=500,t.Tcommaaccent=611,t.Cacute=667,t.atilde=500,t.Edotaccent=667,t.scaron=389,t.scedilla=389,t.iacute=278,t.lozenge=494,t.Rcaron=667,t.Gcommaaccent=722,t.ucircumflex=556,t.acircumflex=500,t.Amacron=667,t.rcaron=389,t.ccedilla=444,t.Zdotaccent=611,t.Thorn=611,t.Omacron=722,t.Racute=667,t.Sacute=556,t.dcaron=608,t.Umacron=722,t.uring=556,t.threesuperior=300,t.Ograve=722,t.Agrave=667,t.Abreve=667,t.multiply=570,t.uacute=556,t.Tcaron=611,t.partialdiff=494,t.ydieresis=444,t.Nacute=722,t.icircumflex=278,t.Ecircumflex=667,t.adieresis=500,t.edieresis=444,t.cacute=444,t.nacute=556,t.umacron=556,t.Ncaron=722,t.Iacute=389,t.plusminus=570,t.brokenbar=220,t.registered=747,t.Gbreve=722,t.Idotaccent=389,t.summation=600,t.Egrave=667,t.racute=389,t.omacron=500,t.Zacute=611,t.Zcaron=611,t.greaterequal=549,t.Eth=722,t.Ccedilla=667,t.lcommaaccent=278,t.tcaron=366,t.eogonek=444,t.Uogonek=722,t.Aacute=667,t.Adieresis=667,t.egrave=444,t.zacute=389,t.iogonek=278,t.Oacute=722,t.oacute=500,t.amacron=500,t.sacute=389,t.idieresis=278,t.Ocircumflex=722,t.Ugrave=722,t.Delta=612,t.thorn=500,t.twosuperior=300,t.Odieresis=722,t.mu=576,t.igrave=278,t.ohungarumlaut=500,t.Eogonek=667,t.dcroat=500,t.threequarters=750,t.Scedilla=556,t.lcaron=382,t.Kcommaaccent=667,t.Lacute=611,t.trademark=1e3,t.edotaccent=444,t.Igrave=389,t.Imacron=389,t.Lcaron=611,t.onehalf=750,t.lessequal=549,t.ocircumflex=500,t.ntilde=556,t.Uhungarumlaut=722,t.Eacute=667,t.emacron=444,t.gbreve=500,t.onequarter=750,t.Scaron=556,t.Scommaaccent=556,t.Ohungarumlaut=722,t.degree=400,t.ograve=500,t.Ccaron=667,t.ugrave=556,t.radical=549,t.Dcaron=722,t.rcommaaccent=389,t.Ntilde=722,t.otilde=500,t.Rcommaaccent=667,t.Lcommaaccent=611,t.Atilde=667,t.Aogonek=667,t.Aring=667,t.Otilde=722,t.zdotaccent=389,t.Ecaron=667,t.Iogonek=389,t.kcommaaccent=500,t.minus=606,t.Icircumflex=389,t.ncaron=556,t.tcommaaccent=278,t.logicalnot=606,t.odieresis=500,t.udieresis=556,t.notequal=549,t.gcommaaccent=500,t.eth=500,t.zcaron=389,t.ncommaaccent=556,t.onesuperior=300,t.imacron=278,t.Euro=500})),t["Times-Italic"]=wt((function(t){t.space=250,t.exclam=333,t.quotedbl=420,t.numbersign=500,t.dollar=500,t.percent=833,t.ampersand=778,t.quoteright=333,t.parenleft=333,t.parenright=333,t.asterisk=500,t.plus=675,t.comma=250,t.hyphen=333,t.period=250,t.slash=278,t.zero=500,t.one=500,t.two=500,t.three=500,t.four=500,t.five=500,t.six=500,t.seven=500,t.eight=500,t.nine=500,t.colon=333,t.semicolon=333,t.less=675,t.equal=675,t.greater=675,t.question=500,t.at=920,t.A=611,t.B=611,t.C=667,t.D=722,t.E=611,t.F=611,t.G=722,t.H=722,t.I=333,t.J=444,t.K=667,t.L=556,t.M=833,t.N=667,t.O=722,t.P=611,t.Q=722,t.R=611,t.S=500,t.T=556,t.U=722,t.V=611,t.W=833,t.X=611,t.Y=556,t.Z=556,t.bracketleft=389,t.backslash=278,t.bracketright=389,t.asciicircum=422,t.underscore=500,t.quoteleft=333,t.a=500,t.b=500,t.c=444,t.d=500,t.e=444,t.f=278,t.g=500,t.h=500,t.i=278,t.j=278,t.k=444,t.l=278,t.m=722,t.n=500,t.o=500,t.p=500,t.q=500,t.r=389,t.s=389,t.t=278,t.u=500,t.v=444,t.w=667,t.x=444,t.y=444,t.z=389,t.braceleft=400,t.bar=275,t.braceright=400,t.asciitilde=541,t.exclamdown=389,t.cent=500,t.sterling=500,t.fraction=167,t.yen=500,t.florin=500,t.section=500,t.currency=500,t.quotesingle=214,t.quotedblleft=556,t.guillemotleft=500,t.guilsinglleft=333,t.guilsinglright=333,t.fi=500,t.fl=500,t.endash=500,t.dagger=500,t.daggerdbl=500,t.periodcentered=250,t.paragraph=523,t.bullet=350,t.quotesinglbase=333,t.quotedblbase=556,t.quotedblright=556,t.guillemotright=500,t.ellipsis=889,t.perthousand=1e3,t.questiondown=500,t.grave=333,t.acute=333,t.circumflex=333,t.tilde=333,t.macron=333,t.breve=333,t.dotaccent=333,t.dieresis=333,t.ring=333,t.cedilla=333,t.hungarumlaut=333,t.ogonek=333,t.caron=333,t.emdash=889,t.AE=889,t.ordfeminine=276,t.Lslash=556,t.Oslash=722,t.OE=944,t.ordmasculine=310,t.ae=667,t.dotlessi=278,t.lslash=278,t.oslash=500,t.oe=667,t.germandbls=500,t.Idieresis=333,t.eacute=444,t.abreve=500,t.uhungarumlaut=500,t.ecaron=444,t.Ydieresis=556,t.divide=675,t.Yacute=556,t.Acircumflex=611,t.aacute=500,t.Ucircumflex=722,t.yacute=444,t.scommaaccent=389,t.ecircumflex=444,t.Uring=722,t.Udieresis=722,t.aogonek=500,t.Uacute=722,t.uogonek=500,t.Edieresis=611,t.Dcroat=722,t.commaaccent=250,t.copyright=760,t.Emacron=611,t.ccaron=444,t.aring=500,t.Ncommaaccent=667,t.lacute=278,t.agrave=500,t.Tcommaaccent=556,t.Cacute=667,t.atilde=500,t.Edotaccent=611,t.scaron=389,t.scedilla=389,t.iacute=278,t.lozenge=471,t.Rcaron=611,t.Gcommaaccent=722,t.ucircumflex=500,t.acircumflex=500,t.Amacron=611,t.rcaron=389,t.ccedilla=444,t.Zdotaccent=556,t.Thorn=611,t.Omacron=722,t.Racute=611,t.Sacute=500,t.dcaron=544,t.Umacron=722,t.uring=500,t.threesuperior=300,t.Ograve=722,t.Agrave=611,t.Abreve=611,t.multiply=675,t.uacute=500,t.Tcaron=556,t.partialdiff=476,t.ydieresis=444,t.Nacute=667,t.icircumflex=278,t.Ecircumflex=611,t.adieresis=500,t.edieresis=444,t.cacute=444,t.nacute=500,t.umacron=500,t.Ncaron=667,t.Iacute=333,t.plusminus=675,t.brokenbar=275,t.registered=760,t.Gbreve=722,t.Idotaccent=333,t.summation=600,t.Egrave=611,t.racute=389,t.omacron=500,t.Zacute=556,t.Zcaron=556,t.greaterequal=549,t.Eth=722,t.Ccedilla=667,t.lcommaaccent=278,t.tcaron=300,t.eogonek=444,t.Uogonek=722,t.Aacute=611,t.Adieresis=611,t.egrave=444,t.zacute=389,t.iogonek=278,t.Oacute=722,t.oacute=500,t.amacron=500,t.sacute=389,t.idieresis=278,t.Ocircumflex=722,t.Ugrave=722,t.Delta=612,t.thorn=500,t.twosuperior=300,t.Odieresis=722,t.mu=500,t.igrave=278,t.ohungarumlaut=500,t.Eogonek=611,t.dcroat=500,t.threequarters=750,t.Scedilla=500,t.lcaron=300,t.Kcommaaccent=667,t.Lacute=556,t.trademark=980,t.edotaccent=444,t.Igrave=333,t.Imacron=333,t.Lcaron=611,t.onehalf=750,t.lessequal=549,t.ocircumflex=500,t.ntilde=500,t.Uhungarumlaut=722,t.Eacute=611,t.emacron=444,t.gbreve=500,t.onequarter=750,t.Scaron=500,t.Scommaaccent=500,t.Ohungarumlaut=722,t.degree=400,t.ograve=500,t.Ccaron=667,t.ugrave=500,t.radical=453,t.Dcaron=722,t.rcommaaccent=389,t.Ntilde=667,t.otilde=500,t.Rcommaaccent=611,t.Lcommaaccent=556,t.Atilde=611,t.Aogonek=611,t.Aring=611,t.Otilde=722,t.zdotaccent=389,t.Ecaron=611,t.Iogonek=333,t.kcommaaccent=444,t.minus=675,t.Icircumflex=333,t.ncaron=500,t.tcommaaccent=278,t.logicalnot=675,t.odieresis=500,t.udieresis=500,t.notequal=549,t.gcommaaccent=500,t.eth=500,t.zcaron=389,t.ncommaaccent=500,t.onesuperior=300,t.imacron=278,t.Euro=500})),t.ZapfDingbats=wt((function(t){t.space=278,t.a1=974,t.a2=961,t.a202=974,t.a3=980,t.a4=719,t.a5=789,t.a119=790,t.a118=791,t.a117=690,t.a11=960,t.a12=939,t.a13=549,t.a14=855,t.a15=911,t.a16=933,t.a105=911,t.a17=945,t.a18=974,t.a19=755,t.a20=846,t.a21=762,t.a22=761,t.a23=571,t.a24=677,t.a25=763,t.a26=760,t.a27=759,t.a28=754,t.a6=494,t.a7=552,t.a8=537,t.a9=577,t.a10=692,t.a29=786,t.a30=788,t.a31=788,t.a32=790,t.a33=793,t.a34=794,t.a35=816,t.a36=823,t.a37=789,t.a38=841,t.a39=823,t.a40=833,t.a41=816,t.a42=831,t.a43=923,t.a44=744,t.a45=723,t.a46=749,t.a47=790,t.a48=792,t.a49=695,t.a50=776,t.a51=768,t.a52=792,t.a53=759,t.a54=707,t.a55=708,t.a56=682,t.a57=701,t.a58=826,t.a59=815,t.a60=789,t.a61=789,t.a62=707,t.a63=687,t.a64=696,t.a65=689,t.a66=786,t.a67=787,t.a68=713,t.a69=791,t.a70=785,t.a71=791,t.a72=873,t.a73=761,t.a74=762,t.a203=762,t.a75=759,t.a204=759,t.a76=892,t.a77=892,t.a78=788,t.a79=784,t.a81=438,t.a82=138,t.a83=277,t.a84=415,t.a97=392,t.a98=392,t.a99=668,t.a100=668,t.a89=390,t.a90=390,t.a93=317,t.a94=317,t.a91=276,t.a92=276,t.a205=509,t.a85=509,t.a206=410,t.a86=410,t.a87=234,t.a88=234,t.a95=334,t.a96=334,t.a101=732,t.a102=544,t.a103=544,t.a104=910,t.a106=667,t.a107=760,t.a108=760,t.a112=776,t.a111=595,t.a110=694,t.a109=626,t.a120=788,t.a121=788,t.a122=788,t.a123=788,t.a124=788,t.a125=788,t.a126=788,t.a127=788,t.a128=788,t.a129=788,t.a130=788,t.a131=788,t.a132=788,t.a133=788,t.a134=788,t.a135=788,t.a136=788,t.a137=788,t.a138=788,t.a139=788,t.a140=788,t.a141=788,t.a142=788,t.a143=788,t.a144=788,t.a145=788,t.a146=788,t.a147=788,t.a148=788,t.a149=788,t.a150=788,t.a151=788,t.a152=788,t.a153=788,t.a154=788,t.a155=788,t.a156=788,t.a157=788,t.a158=788,t.a159=788,t.a160=894,t.a161=838,t.a163=1016,t.a164=458,t.a196=748,t.a165=924,t.a192=748,t.a166=918,t.a167=927,t.a168=928,t.a169=928,t.a170=834,t.a171=873,t.a172=828,t.a173=924,t.a162=924,t.a174=917,t.a175=930,t.a176=931,t.a177=463,t.a178=883,t.a179=836,t.a193=836,t.a180=867,t.a199=867,t.a181=696,t.a200=696,t.a182=874,t.a201=874,t.a183=760,t.a184=946,t.a197=771,t.a185=865,t.a194=771,t.a198=888,t.a186=967,t.a195=888,t.a187=831,t.a188=873,t.a189=927,t.a190=970,t.a191=918}))})),Ws=wt((function(t){t.Courier={ascent:629,descent:-157,capHeight:562,xHeight:-426},t["Courier-Bold"]={ascent:629,descent:-157,capHeight:562,xHeight:439},t["Courier-Oblique"]={ascent:629,descent:-157,capHeight:562,xHeight:426},t["Courier-BoldOblique"]={ascent:629,descent:-157,capHeight:562,xHeight:426},t.Helvetica={ascent:718,descent:-207,capHeight:718,xHeight:523},t["Helvetica-Bold"]={ascent:718,descent:-207,capHeight:718,xHeight:532},t["Helvetica-Oblique"]={ascent:718,descent:-207,capHeight:718,xHeight:523},t["Helvetica-BoldOblique"]={ascent:718,descent:-207,capHeight:718,xHeight:532},t["Times-Roman"]={ascent:683,descent:-217,capHeight:662,xHeight:450},t["Times-Bold"]={ascent:683,descent:-217,capHeight:676,xHeight:461},t["Times-Italic"]={ascent:683,descent:-217,capHeight:653,xHeight:441},t["Times-BoldItalic"]={ascent:683,descent:-217,capHeight:669,xHeight:462},t.Symbol={ascent:Math.NaN,descent:Math.NaN,capHeight:Math.NaN,xHeight:Math.NaN},t.ZapfDingbats={ascent:Math.NaN,descent:Math.NaN,capHeight:Math.NaN,xHeight:Math.NaN}}));class Zs{constructor({glyfTable:t,isGlyphLocationsLong:e,locaTable:A,numGlyphs:i}){this.glyphs=[];const s=new DataView(A.buffer,A.byteOffset,A.byteLength),a=new DataView(t.buffer,t.byteOffset,t.byteLength),n=e?4:2;let r=e?s.getUint32(0):2*s.getUint16(0),o=0;for(let t=0;t<i;t++){o+=n;const t=e?s.getUint32(o):2*s.getUint16(o);if(t===r){this.glyphs.push(new js({}));continue}const A=js.parse(r,a);this.glyphs.push(A),r=t}}getSize(){return this.glyphs.reduce(((t,e)=>t+(e.getSize()+3&-4)),0)}write(){const t=this.getSize(),e=new DataView(new ArrayBuffer(t)),A=t>131070,i=A?4:2,s=new DataView(new ArrayBuffer((this.glyphs.length+1)*i));A?s.setUint32(0,0):s.setUint16(0,0);let a=0,n=0;for(const t of this.glyphs)a+=t.write(a,e),a=a+3&-4,n+=i,A?s.setUint32(n,a):s.setUint16(n,a>>1);return{isLocationLong:A,loca:new Uint8Array(s.buffer),glyf:new Uint8Array(e.buffer)}}scale(t){for(let e=0,A=this.glyphs.length;e<A;e++)this.glyphs[e].scale(t[e])}}class js{constructor({header:t=null,simple:e=null,composites:A=null}){this.header=t,this.simple=e,this.composites=A}static parse(t,e){const[A,i]=Vs.parse(t,e);if(t+=A,i.numberOfContours<0){const A=[];for(;;){const[i,s]=$s.parse(t,e);if(t+=i,A.push(s),!(32&s.flags))break}return new js({header:i,composites:A})}const s=zs.parse(t,e,i.numberOfContours);return new js({header:i,simple:s})}getSize(){if(!this.header)return 0;const t=this.simple?this.simple.getSize():this.composites.reduce(((t,e)=>t+e.getSize()),0);return this.header.getSize()+t}write(t,e){if(!this.header)return 0;const A=t;if(t+=this.header.write(t,e),this.simple)t+=this.simple.write(t,e);else for(const A of this.composites)t+=A.write(t,e);return t-A}scale(t){if(!this.header)return;const e=(this.header.xMin+this.header.xMax)/2;if(this.header.scale(e,t),this.simple)this.simple.scale(e,t);else for(const A of this.composites)A.scale(e,t)}}class Vs{constructor({numberOfContours:t,xMin:e,yMin:A,xMax:i,yMax:s}){this.numberOfContours=t,this.xMin=e,this.yMin=A,this.xMax=i,this.yMax=s}static parse(t,e){return[10,new Vs({numberOfContours:e.getInt16(t),xMin:e.getInt16(t+2),yMin:e.getInt16(t+4),xMax:e.getInt16(t+6),yMax:e.getInt16(t+8)})]}getSize(){return 10}write(t,e){return e.setInt16(t,this.numberOfContours),e.setInt16(t+2,this.xMin),e.setInt16(t+4,this.yMin),e.setInt16(t+6,this.xMax),e.setInt16(t+8,this.yMax),10}scale(t,e){this.xMin=Math.round(t+(this.xMin-t)*e),this.xMax=Math.round(t+(this.xMax-t)*e)}}class Xs{constructor({flags:t,xCoordinates:e,yCoordinates:A}){this.xCoordinates=e,this.yCoordinates=A,this.flags=t}}class zs{constructor({contours:t,instructions:e}){this.contours=t,this.instructions=e}static parse(t,e,A){const i=[];for(let s=0;s<A;s++){const A=e.getUint16(t);t+=2,i.push(A)}const s=i[A-1]+1,a=e.getUint16(t);t+=2;const n=new Uint8Array(e).slice(t,t+a);t+=a;const r=[];for(let A=0;A<s;t++,A++){let i=e.getUint8(t);if(r.push(i),8&i){const s=e.getUint8(++t);i^=8;for(let t=0;t<s;t++)r.push(i);A+=s}}const o=[];let g=[],c=[],h=[];const l=[];let I=0,C=0;for(let A=0;A<s;A++){const s=r[A];if(2&s){const A=e.getUint8(t++);C+=16&s?A:-A,g.push(C)}else 16&s||(C+=e.getInt16(t),t+=2),g.push(C);i[I]===A&&(I++,o.push(g),g=[])}C=0,I=0;for(let A=0;A<s;A++){const s=r[A];if(4&s){const A=e.getUint8(t++);C+=32&s?A:-A,c.push(C)}else 32&s||(C+=e.getInt16(t),t+=2),c.push(C);h.push(1&s|64&s),i[I]===A&&(g=o[I],I++,l.push(new Xs({flags:h,xCoordinates:g,yCoordinates:c})),c=[],h=[])}return new zs({contours:l,instructions:n})}getSize(){let t=2*this.contours.length+2+this.instructions.length,e=0,A=0;for(const i of this.contours){t+=i.flags.length;for(let s=0,a=i.xCoordinates.length;s<a;s++){const a=i.xCoordinates[s],n=i.yCoordinates[s];let r=Math.abs(a-e);r>255?t+=2:r>0&&(t+=1),e=a,r=Math.abs(n-A),r>255?t+=2:r>0&&(t+=1),A=n}}return t}write(t,e){const A=t,i=[],s=[],a=[];let n=0,r=0;for(const A of this.contours){for(let t=0,e=A.xCoordinates.length;t<e;t++){let e=A.flags[t];const o=A.xCoordinates[t];let g=o-n;if(0===g)e|=16,i.push(0);else{const t=Math.abs(g);t<=255?(e|=g>=0?18:2,i.push(t)):i.push(g)}n=o;const c=A.yCoordinates[t];if(g=c-r,0===g)e|=32,s.push(0);else{const t=Math.abs(g);t<=255?(e|=g>=0?36:4,s.push(t)):s.push(g)}r=c,a.push(e)}e.setUint16(t,i.length-1),t+=2}e.setUint16(t,this.instructions.length),t+=2,this.instructions.length&&(new Uint8Array(e.buffer,0,e.buffer.byteLength).set(this.instructions,t),t+=this.instructions.length);for(const A of a)e.setUint8(t++,A);for(let A=0,s=i.length;A<s;A++){const s=i[A],n=a[A];2&n?e.setUint8(t++,s):16&n||(e.setInt16(t,s),t+=2)}for(let A=0,i=s.length;A<i;A++){const i=s[A],n=a[A];4&n?e.setUint8(t++,i):32&n||(e.setInt16(t,i),t+=2)}return t-A}scale(t,e){for(const A of this.contours)if(0!==A.xCoordinates.length)for(let i=0,s=A.xCoordinates.length;i<s;i++)A.xCoordinates[i]=Math.round(t+(A.xCoordinates[i]-t)*e)}}class $s{constructor({flags:t,glyphIndex:e,argument1:A,argument2:i,transf:s,instructions:a}){this.flags=t,this.glyphIndex=e,this.argument1=A,this.argument2=i,this.transf=s,this.instructions=a}static parse(t,e){const A=t,i=[];let s=e.getUint16(t);const a=e.getUint16(t+2);let n,r;t+=4,1&s?(2&s?(n=e.getInt16(t),r=e.getInt16(t+2)):(n=e.getUint16(t),r=e.getUint16(t+2)),t+=4,s^=1):(2&s?(n=e.getInt8(t),r=e.getInt8(t+1)):(n=e.getUint8(t),r=e.getUint8(t+1)),t+=2),8&s?(i.push(e.getUint16(t)),t+=2):64&s?(i.push(e.getUint16(t),e.getUint16(t+2)),t+=4):128&s&&(i.push(e.getUint16(t),e.getUint16(t+2),e.getUint16(t+4),e.getUint16(t+6)),t+=8);let o=null;if(256&s){const A=e.getUint16(t);t+=2,o=new Uint8Array(e).slice(t,t+A),t+=A}return[t-A,new $s({flags:s,glyphIndex:a,argument1:n,argument2:r,transf:i,instructions:o})]}getSize(){let t=4+2*this.transf.length;return 256&this.flags&&(t+=2+this.instructions.length),t+=2,2&this.flags?this.argument1>=-128&&this.argument1<=127&&this.argument2>=-128&&this.argument2<=127||(t+=2):this.argument1>=0&&this.argument1<=255&&this.argument2>=0&&this.argument2<=255||(t+=2),t}write(t,e){const A=t;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),e.setUint16(t,this.flags),e.setUint16(t+2,this.glyphIndex),t+=4,1&this.flags?(2&this.flags?(e.setInt16(t,this.argument1),e.setInt16(t+2,this.argument2)):(e.setUint16(t,this.argument1),e.setUint16(t+2,this.argument2)),t+=4):(e.setUint8(t,this.argument1),e.setUint8(t+1,this.argument2),t+=2),256&this.flags&&(e.setUint16(t,this.instructions.length),t+=2,this.instructions.length&&(new Uint8Array(e.buffer,0,e.buffer.byteLength).set(this.instructions,t),t+=this.instructions.length)),t-A}scale(t,e){}}function ta(t,e,A){t[e]=A>>8&255,t[e+1]=255&A}function ea(t,e,A){t[e]=A>>24&255,t[e+1]=A>>16&255,t[e+2]=A>>8&255,t[e+3]=255&A}function Aa(t,e,A){if(A instanceof Uint8Array)t.set(A,e);else if("string"==typeof A)for(let i=0,s=A.length;i<s;i++)t[e++]=255&A.charCodeAt(i);else for(const i of A)t[e++]=255&i}class ia{constructor(t){this.sfnt=t,this.tables=Object.create(null)}static getSearchParams(t,e){let A=1,i=0;for(;(A^t)>A;)A<<=1,i++;const s=A*e;return{range:s,entry:i,rangeShift:e*t-s}}toArray(){let t=this.sfnt;const e=this.tables,A=Object.keys(e);A.sort();const i=A.length;let s,a,n,r,o,g=12+16*i;const c=[g];for(s=0;s<i;s++)r=e[A[s]],g+=(r.length+3&-4)>>>0,c.push(g);const h=new Uint8Array(g);for(s=0;s<i;s++)r=e[A[s]],Aa(h,c[s],r);"true"===t&&(t=W(65536)),h[0]=255&t.charCodeAt(0),h[1]=255&t.charCodeAt(1),h[2]=255&t.charCodeAt(2),h[3]=255&t.charCodeAt(3),ta(h,4,i);const l=ia.getSearchParams(i,16);for(ta(h,6,l.range),ta(h,8,l.entry),ta(h,10,l.rangeShift),g=12,s=0;s<i;s++){o=A[s],h[g]=255&o.charCodeAt(0),h[g+1]=255&o.charCodeAt(1),h[g+2]=255&o.charCodeAt(2),h[g+3]=255&o.charCodeAt(3);let t=0;for(a=c[s],n=c[s+1];a<n;a+=4)t=t+Lt(h,a)>>>0;ea(h,g+4,t),ea(h,g+8,c[s]),ea(h,g+12,e[o].length),g+=16}return h}addTable(t,e){if(t in this.tables)throw new Error("Table "+t+" already exists");this.tables[t]=e}}const sa=[4],aa=[5],na=[6],ra=[7],oa=[8],ga=[12,35],ca=[14],ha=[21],la=[22],Ia=[30],Ca=[31];class Ba{constructor(){this.width=0,this.lsb=0,this.flexing=!1,this.output=[],this.stack=[]}convert(t,e,A){const i=t.length;let s,a,n,r=!1;for(let o=0;o<i;o++){let i=t[o];if(i<32){switch(12===i&&(i=(i<<8)+t[++o]),i){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){r=!0;break}const t=this.stack.pop();this.stack.push(0,t);break}r=this.executeCommand(1,sa);break;case 5:r=this.executeCommand(2,aa);break;case 6:r=this.executeCommand(1,na);break;case 7:r=this.executeCommand(1,ra);break;case 8:r=this.executeCommand(6,oa);break;case 10:if(this.stack.length<1){r=!0;break}if(n=this.stack.pop(),!e[n]){r=!0;break}r=this.convert(e[n],e,A);break;case 11:return r;case 13:if(this.stack.length<2){r=!0;break}s=this.stack.pop(),a=this.stack.pop(),this.lsb=a,this.width=s,this.stack.push(s,a),r=this.executeCommand(2,la);break;case 14:this.output.push(ca[0]);break;case 21:if(this.flexing)break;r=this.executeCommand(2,ha);break;case 22:if(this.flexing){this.stack.push(0);break}r=this.executeCommand(1,la);break;case 30:r=this.executeCommand(4,Ia);break;case 31:r=this.executeCommand(4,Ca);break;case 3078:if(A){const t=this.stack.at(-5);this.seac=this.stack.splice(-4,4),this.seac[0]+=this.lsb-t,r=this.executeCommand(0,ca)}else r=this.executeCommand(4,ca);break;case 3079:if(this.stack.length<4){r=!0;break}this.stack.pop(),s=this.stack.pop();const t=this.stack.pop();a=this.stack.pop(),this.lsb=a,this.width=s,this.stack.push(s,a,t),r=this.executeCommand(3,ha);break;case 3084:if(this.stack.length<2){r=!0;break}const o=this.stack.pop(),g=this.stack.pop();this.stack.push(g/o);break;case 3088:if(this.stack.length<2){r=!0;break}n=this.stack.pop();const c=this.stack.pop();if(0===n&&3===c){const t=this.stack.splice(-17,17);this.stack.push(t[2]+t[0],t[3]+t[1],t[4],t[5],t[6],t[7],t[8],t[9],t[10],t[11],t[12],t[13],t[14]),r=this.executeCommand(13,ga,!0),this.flexing=!1,this.stack.push(t[15],t[16])}else 1===n&&0===c&&(this.flexing=!0);break;case 3089:break;default:N('Unknown type 1 charstring command of "'+i+'"')}if(r)break}else i<=246?i-=139:i=i<=250?256*(i-247)+t[++o]+108:i<=254?-256*(i-251)-t[++o]-108:(255&t[++o])<<24|(255&t[++o])<<16|(255&t[++o])<<8|255&t[++o],this.stack.push(i)}return r}executeCommand(t,e,A){const i=this.stack.length;if(t>i)return!0;const s=i-t;for(let t=s;t<i;t++){let e=this.stack[t];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(...e),A?this.stack.splice(s,t):this.stack.length=0,!1}}function da(t){return t>=48&&t<=57||t>=65&&t<=70||t>=97&&t<=102}function ua(t,e,A){if(A>=t.length)return new Uint8Array(0);let i,s,a=0|e;for(i=0;i<A;i++)a=52845*(t[i]+a)+22719&65535;const n=t.length-A,r=new Uint8Array(n);for(i=A,s=0;s<n;i++,s++){const e=t[i];r[s]=e^a>>8,a=52845*(e+a)+22719&65535}return r}function Qa(t){return 47===t||91===t||93===t||123===t||125===t||40===t||41===t}class Ea{constructor(t,e,A){if(e){const e=t.getBytes(),A=!((da(e[0])||Ut(e[0]))&&da(e[1])&&da(e[2])&&da(e[3])&&da(e[4])&&da(e[5])&&da(e[6])&&da(e[7]));t=new ne(A?ua(e,55665,4):function(t){let e=55665;const A=t.length,i=new Uint8Array(A>>>1);let s,a;for(s=0,a=0;s<A;s++){const n=t[s];if(!da(n))continue;let r;for(s++;s<A&&!da(r=t[s]);)s++;if(s<A){const t=parseInt(String.fromCharCode(n,r),16);i[a++]=t^e>>8,e=52845*(t+e)+22719&65535}}return i.slice(4,a)}(e))}this.seacAnalysisEnabled=!!A,this.stream=t,this.nextChar()}readNumberArray(){this.getToken();const t=[];for(;;){const e=this.getToken();if(null===e||"]"===e||"}"===e)break;t.push(parseFloat(e||0))}return t}readNumber(){const t=this.getToken();return parseFloat(t||0)}readInt(){const t=this.getToken();return 0|parseInt(t||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 t=!1,e=this.currentChar;for(;;){if(-1===e)return null;if(t)10!==e&&13!==e||(t=!1);else if(37===e)t=!0;else if(!Ut(e))break;e=this.nextChar()}if(Qa(e))return this.nextChar(),String.fromCharCode(e);let A="";do{A+=String.fromCharCode(e),e=this.nextChar()}while(e>=0&&!Ut(e)&&!Qa(e));return A}readCharStrings(t,e){return-1===e?t:ua(t,4330,e)}extractFontProgram(t){const e=this.stream,A=[],i=[],s=Object.create(null);s.lenIV=4;const a={subrs:[],charstrings:[],properties:{privateData:s}};let n,r,o,g;for(;null!==(n=this.getToken());)if("/"===n)switch(n=this.getToken(),n){case"CharStrings":for(this.getToken(),this.getToken(),this.getToken(),this.getToken();n=this.getToken(),null!==n&&"end"!==n;){if("/"!==n)continue;const t=this.getToken();r=this.readInt(),this.getToken(),o=r>0?e.getBytes(r):new Uint8Array(0),g=a.properties.privateData.lenIV;const A=this.readCharStrings(o,g);this.nextChar(),n=this.getToken(),"noaccess"===n?this.getToken():"/"===n&&this.prevChar(),i.push({glyph:t,encoded:A})}break;case"Subrs":for(this.readInt(),this.getToken();"dup"===this.getToken();){const t=this.readInt();r=this.readInt(),this.getToken(),o=r>0?e.getBytes(r):new Uint8Array(0),g=a.properties.privateData.lenIV;const i=this.readCharStrings(o,g);this.nextChar(),n=this.getToken(),"noaccess"===n&&this.getToken(),A[t]=i}break;case"BlueValues":case"OtherBlues":case"FamilyBlues":case"FamilyOtherBlues":const t=this.readNumberArray();t.length>0&&t.length;break;case"StemSnapH":case"StemSnapV":a.properties.privateData[n]=this.readNumberArray();break;case"StdHW":case"StdVW":a.properties.privateData[n]=this.readNumberArray()[0];break;case"BlueShift":case"lenIV":case"BlueFuzz":case"BlueScale":case"LanguageGroup":a.properties.privateData[n]=this.readNumber();break;case"ExpansionFactor":a.properties.privateData[n]=this.readNumber()||.06;break;case"ForceBold":a.properties.privateData[n]=this.readBoolean()}for(const{encoded:e,glyph:s}of i){const i=new Ba,n=i.convert(e,A,this.seacAnalysisEnabled);let r=i.output;n&&(r=[14]);const o={glyphName:s,charstring:r,width:i.width,lsb:i.lsb,seac:i.seac};if(".notdef"===s?a.charstrings.unshift(o):a.charstrings.push(o),t.builtInEncoding){const e=t.builtInEncoding.indexOf(s);e>-1&&void 0===t.widths[e]&&e>=t.firstChar&&e<=t.lastChar&&(t.widths[e]=i.width)}}return a}extractFontHeader(t){let e;for(;null!==(e=this.getToken());)if("/"===e)switch(e=this.getToken(),e){case"FontMatrix":const A=this.readNumberArray();t.fontMatrix=A;break;case"Encoding":const i=this.getToken();let s;if(/^\d+$/.test(i)){s=[];const t=0|parseInt(i,10);this.getToken();for(let A=0;A<t;A++){for(e=this.getToken();"dup"!==e&&"def"!==e;)if(e=this.getToken(),null===e)return;if("def"===e)break;const t=this.readInt();this.getToken();const A=this.getToken();s[t]=A,this.getToken()}}else s=Ui(i);t.builtInEncoding=s;break;case"FontBBox":const a=this.readNumberArray();t.ascent=Math.max(a[3],a[1]),t.descent=Math.min(a[1],a[3]),t.ascentScaled=!0}}}function fa(t,e,A){const i=t.length,s=e.length,a=i-s;let n=A,r=!1;for(;n<a;){let A=0;for(;A<s&&t[n+A]===e[A];)A++;if(A>=s){for(n+=A;n<i&&Ut(t[n]);)n++;r=!0;break}n++}return{found:r,length:n}}class pa{constructor(t,e,A){let i=A.length1,s=A.length2,a=e.peekBytes(6);const n=128===a[0]&&1===a[1];n&&(e.skip(6),i=a[5]<<24|a[4]<<16|a[3]<<8|a[2]);const r=function(t,e){const A=[101,101,120,101,99],i=t.pos;let s,a,n,r;try{s=t.getBytes(e),a=s.length}catch{}if(a===e&&(n=fa(s,A,e-2*A.length),n.found&&n.length===e))return{stream:new ne(s),length:e};for(N('Invalid "Length1" property in Type1 font -- trying to recover.'),t.pos=i;n=fa(t.peekBytes(2048),A,0),0!==n.length;)if(t.pos+=n.length,n.found){r=t.pos-i;break}return t.pos=i,r?{stream:new ne(t.getBytes(r)),length:r}:(N('Unable to recover "Length1" property in Type1 font -- using as is.'),{stream:new ne(t.getBytes(e)),length:e})}(e,i);new Ea(r.stream,!1,hs).extractFontHeader(A),n&&(a=e.getBytes(6),s=a[5]<<24|a[4]<<16|a[3]<<8|a[2]);const o=function(t){const e=t.getBytes();if(0===e.length)throw new q("getEexecBlock - no font program found.");return{stream:new ne(e),length:e.length}}(e),g=new Ea(o.stream,!0,hs).extractFontProgram(A);for(const t in g.properties)A[t]=g.properties[t];const c=g.charstrings,h=this.getType2Charstrings(c),l=this.getType2Subrs(g.subrs);this.charstrings=c,this.data=this.wrap(t,h,this.charstrings,l,A),this.seacs=this.getSeacs(g.charstrings)}get numGlyphs(){return this.charstrings.length+1}getCharset(){const t=[".notdef"];for(const{glyphName:e}of this.charstrings)t.push(e);return t}getGlyphMapping(t){const e=this.charstrings;if(t.composite){const A=Object.create(null);for(let i=0,s=e.length;i<s;i++)A[t.cMap.charCodeOf(i)]=i+1;return A}const A=[".notdef"];let i,s;for(s=0;s<e.length;s++)A.push(e[s].glyphName);const a=t.builtInEncoding;if(a){i=Object.create(null);for(const t in a)s=A.indexOf(a[t]),s>=0&&(i[t]=s)}return Cs(t,i,A)}hasGlyphId(t){return!(t<0||t>=this.numGlyphs)&&(0===t||this.charstrings[t-1].charstring.length>0)}getSeacs(t){const e=[];for(let A=0,i=t.length;A<i;A++){const i=t[A];i.seac&&(e[A+1]=i.seac)}return e}getType2Charstrings(t){const e=[];for(const A of t)e.push(A.charstring);return e}getType2Subrs(t){let e=0;const A=t.length;e=A<1133?107:A<33769?1131:32768;const i=[];let s;for(s=0;s<e;s++)i.push([11]);for(s=0;s<A;s++)i.push(t[s]);return i}wrap(t,e,A,i,s){const a=new Ki;a.header=new qi(1,0,4,4),a.names=[t];const n=new Zi;n.setByName("version",391),n.setByName("Notice",392),n.setByName("FullName",393),n.setByName("FamilyName",394),n.setByName("Weight",395),n.setByName("Encoding",null),n.setByName("FontMatrix",s.fontMatrix),n.setByName("FontBBox",s.bbox),n.setByName("charset",null),n.setByName("CharStrings",null),n.setByName("Private",null),a.topDict=n;const r=new Pi;r.add("Version 0.11"),r.add("See original notice"),r.add(t),r.add(t),r.add("Medium"),a.strings=r,a.globalSubrIndex=new _i;const o=e.length,g=[".notdef"];let c,h;for(c=0;c<o;c++){const t=A[c].glyphName;-1===Hi.indexOf(t)&&r.add(t),g.push(t)}a.charset=new zi(!1,0,g);const l=new _i;for(l.add([139,14]),c=0;c<o;c++)l.add(e[c]);a.charStrings=l;const I=new Vi;I.setByName("Subrs",null);const C=["BlueValues","OtherBlues","FamilyBlues","FamilyOtherBlues","StemSnapH","StemSnapV","BlueShift","BlueFuzz","BlueScale","LanguageGroup","ExpansionFactor","ForceBold","StdHW","StdVW"];for(c=0,h=C.length;c<h;c++){const t=C[c];if(!(t in s.privateData))continue;const e=s.privateData[t];if(Array.isArray(e))for(let t=e.length-1;t>0;t--)e[t]-=e[t-1];I.setByName(t,e)}a.topDict.privateDict=I;const B=new _i;for(c=0,h=i.length;c<h;c++)B.add(i[c]);return I.subrsIndex=B,new As(a).compile()}}const ma=[[57344,63743],[1048576,1114109]],ya=1e3,wa=["ascent","bbox","black","bold","charProcOperatorList","composite","cssFontInfo","data","defaultVMetrics","defaultWidth","descent","fallbackName","fontMatrix","isInvalidPDFjsFont","isType3Font","italic","loadedName","mimetype","missingFile","name","remeasure","subtype","systemFontInfo","type","vertical"],ba=["cMap","defaultEncoding","differences","isMonospace","isSerifFont","isSymbolicFont","seacMap","toFontChar","toUnicode","vmetrics","widths"];function Da(t){if(!t.fontMatrix)return;if(t.fontMatrix[0]===o[0])return;const e=.001/t.fontMatrix[0],A=t.widths;for(const t in A)A[t]*=e;t.defaultWidth*=e}function ka(t){if(!t.fallbackToUnicode)return;if(t.toUnicode instanceof ks)return;const e=[];for(const A in t.fallbackToUnicode)t.toUnicode.has(A)||(e[A]=t.fallbackToUnicode[A]);e.length>0&&t.toUnicode.amend(e)}class Sa{constructor(t,e,A,i,s,a,n,r,o){this.originalCharCode=t,this.fontChar=e,this.unicode=A,this.accent=i,this.width=s,this.vmetric=a,this.operatorListId=n,this.isSpace=r,this.isInFont=o}get category(){return L(this,"category",function(t){const e=cs.get(t);if(e)return e;const A=t.match(gs),i={isWhitespace:!!A?.[1],isZeroWidthDiacritic:!!A?.[2],isInvisibleFormatMark:!!A?.[3]};return cs.set(t,i),i}(this.unicode),!0)}}function Fa(t,e){return(t<<8)+e}function Ra(t,e,A){t[e+1]=A,t[e]=A>>>8}function xa(t,e){const A=(t<<8)+e;return 32768&A?A-65536:A}function Na(t){return String.fromCharCode(t>>8&255,255&t)}function va(t){return t>32767?t=32767:t<-32768&&(t=-32768),String.fromCharCode(t>>8&255,255&t)}function Ga(t){return"ttcf"===_(t.peekBytes(4))}function Ma(t,e){for(const A in e)t[+A]=e[A]}function La(t,e,A){const i=[];let s;for(let A=0,a=t.length;A<a;A++)s=ns(t[A],e),-1!==s&&(i[A]=s);for(const t in A)s=ns(A[t],e),-1!==s&&(i[+t]=s);return i}function Ua(t){return 1===t.platform&&0===t.encoding&&0===t.language}function Ha(t){return 3===t.platform&&1===t.encoding&&1033===t.language}function Ja(t,e,A=!1){switch(e.length){case 1:return e.charCodeAt(0);case 2:return e.charCodeAt(0)<<8|e.charCodeAt(1)}const i=`Unsupported CID string (charCode ${t}): "${e}".`;if(A)throw new q(i);return N(i),e}function Ya(t,e,A,i){const s=Object.create(null),a=new Map,n=[],r=new Set;let o=0,g=ma[o][0],c=ma[o][1];for(const l in t){let I=t[l];if(!e(I))continue;if(g>c){if(o++,o>=ma.length){N("Ran out of space in font private use area.");break}g=ma[o][0],c=ma[o][1]}const C=g++;0===I&&(I=A);let B=i.get(l);"string"==typeof B&&(B=B.codePointAt(0)),!B||(h=B,ma[0][0]<=h&&h<=ma[0][1]||ma[1][0]<=h&&h<=ma[1][1])||r.has(I)||(a.set(B,I),r.add(I)),s[C]=I,n[l]=C}var h;return{toFontChar:n,charCodeToGlyphId:s,toUnicodeExtraMap:a,nextAvailableFontCharCode:g}}function Ta(t,e,A){const i=function(t,e,A){const i=[];for(const e in t)t[e]>=A||i.push({fontCharCode:0|e,glyphId:t[e]});if(e)for(const[t,s]of e)s>=A||i.push({fontCharCode:t,glyphId:s});0===i.length&&i.push({fontCharCode:0,glyphId:0}),i.sort((function(t,e){return t.fontCharCode-e.fontCharCode}));const s=[],a=i.length;for(let t=0;t<a;){const e=i[t].fontCharCode,A=[i[t].glyphId];++t;let n=e;for(;t<a&&n+1===i[t].fontCharCode&&(A.push(i[t].glyphId),++n,++t,65535!==n););s.push([e,n,A])}return s}(t,e,A),s=i.at(-1)[1]>65535?2:1;let a,n,r,o,g="\0\0"+Na(s)+"\0\0"+W(4+8*s);for(a=i.length-1;a>=0&&!(i[a][0]<=65535);--a);const c=a+1;i[a][0]<65535&&65535===i[a][1]&&(i[a][1]=65534);const h=i[a][1]<65535?1:0,l=c+h,I=ia.getSearchParams(l,2);let C,B,d,u,Q="",E="",f="",p="",m="",y=0;for(a=0,n=c;a<n;a++){C=i[a],B=C[0],d=C[1],Q+=Na(B),E+=Na(d),u=C[2];let t=!0;for(r=1,o=u.length;r<o;++r)if(u[r]!==u[r-1]+1){t=!1;break}if(t)f+=Na(u[0]-B&65535),p+=Na(0);else{const t=2*(l-a)+2*y;for(y+=d-B+1,f+=Na(0),p+=Na(t),r=0,o=u.length;r<o;++r)m+=Na(u[r])}}h>0&&(E+="ÿÿ",Q+="ÿÿ",f+="\0",p+="\0\0");const w="\0\0"+Na(2*l)+Na(I.range)+Na(I.entry)+Na(I.rangeShift)+E+"\0\0"+Q+f+p+m;let b="",D="";if(s>1){for(g+="\0\0\n"+W(4+8*s+4+w.length),b="",a=0,n=i.length;a<n;a++){C=i[a],B=C[0],u=C[2];let t=u[0];for(r=1,o=u.length;r<o;++r)u[r]!==u[r-1]+1&&(d=C[0]+r-1,b+=W(B)+W(d)+W(t),B=d+1,t=u[r]);b+=W(B)+W(C[1])+W(t)}D="\0\f\0\0"+W(b.length+16)+"\0\0\0\0"+W(b.length/12)}return g+"\0"+Na(w.length+4)+w+D+b}function Ka(t,e,A){A||={unitsPerEm:0,yMax:0,yMin:0,ascent:0,descent:0};let i=0,s=0,a=0,n=0,r=null,o=0,g=-1;if(e){for(let t in e)if(t|=0,(r>t||!r)&&(r=t),o<t&&(o=t),g=os(t,g),g<32)i|=1<<g;else if(g<64)s|=1<<g-32;else if(g<96)a|=1<<g-64;else{if(!(g<123))throw new q("Unicode ranges Bits > 123 are reserved for internal usage");n|=1<<g-96}o>65535&&(o=65535)}else r=0,o=255;const c=t.bbox||[0,0,0,0],h=A.unitsPerEm||(t.fontMatrix?1/Math.max(...t.fontMatrix.slice(0,4).map(Math.abs)):1e3),l=t.ascentScaled?1:h/ya,I=A.ascent||Math.round(l*(t.ascent||c[3]));let C=A.descent||Math.round(l*(t.descent||c[1]));C>0&&t.descent>0&&c[1]<0&&(C=-C);const B=A.yMax||I,d=-A.yMin||-C;return"\0$ô\0\0\0Š»\0\0\0ŒŠ»\0\0ß\x001\0\0\0\0"+String.fromCharCode(t.fixedPitch?9:0)+"\0\0\0\0\0\0"+W(i)+W(s)+W(a)+W(n)+"*21*"+Na(t.italicAngle?1:0)+Na(r||t.firstChar)+Na(o||t.lastChar)+Na(I)+Na(C)+"\0d"+Na(B)+Na(d)+"\0\0\0\0\0\0\0\0"+Na(t.xHeight)+Na(t.capHeight)+Na(0)+Na(r||t.firstChar)+"\0"}function qa(t){return"\0\0\0"+W(Math.floor(65536*t.italicAngle))+"\0\0\0\0"+W(t.fixedPitch?1:0)+"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"}function Pa(t){return t.replaceAll(/[^\x21-\x7E]|[[\](){}<>/%]/g,"").slice(0,63)}function _a(t,e){e||(e=[[],[]]);const A=[e[0][0]||"Original licence",e[0][1]||t,e[0][2]||"Unknown",e[0][3]||"uniqueID",e[0][4]||t,e[0][5]||"Version 0.11",e[0][6]||Pa(t),e[0][7]||"Unknown",e[0][8]||"Unknown",e[0][9]||"Unknown"],i=[];let s,a,n,r,o;for(s=0,a=A.length;s<a;s++){o=e[1][s]||A[s];const t=[];for(n=0,r=o.length;n<r;n++)t.push(Na(o.charCodeAt(n)));i.push(t.join(""))}const g=[A,i],c=["\0","\0"],h=["\0\0","\0"],l=["\0\0","\t"],I=A.length*c.length;let C="\0\0"+Na(I)+Na(12*I+6),B=0;for(s=0,a=c.length;s<a;s++){const t=g[s];for(n=0,r=t.length;n<r;n++)o=t[n],C+=c[s]+h[s]+l[s]+Na(n)+Na(o.length)+Na(B),B+=o.length}return C+=A.join("")+i.join(""),C}class Oa{constructor(t,e,A){this.name=t,this.psName=null,this.mimetype=null,this.disableFontFace=!1,this.loadedName=A.loadedName,this.isType3Font=A.isType3Font,this.missingFile=!1,this.cssFontInfo=A.cssFontInfo,this._charsCache=Object.create(null),this._glyphCache=Object.create(null);let i=!!(2&A.flags);if(!i&&!A.isSimulatedFlags){const e=t.replaceAll(/[,_]/g,"-").split("-",1)[0],A=Es();for(const t of e.split("+"))if(A[t]){i=!0;break}}this.isSerifFont=i,this.isSymbolicFont=!!(4&A.flags),this.isMonospace=!!(1&A.flags);let{type:s,subtype:a}=A;this.type=s,this.subtype=a,this.systemFontInfo=A.systemFontInfo;const n=t.match(/^InvalidPDFjsFont_(.*)_\d+$/);if(this.isInvalidPDFjsFont=!!n,this.isInvalidPDFjsFont?this.fallbackName=n[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=A.differences,this.widths=A.widths,this.defaultWidth=A.defaultWidth,this.composite=A.composite,this.cMap=A.cMap,this.capHeight=A.capHeight/ya,this.ascent=A.ascent/ya,this.descent=A.descent/ya,this.lineHeight=this.ascent-this.descent,this.fontMatrix=A.fontMatrix,this.bbox=A.bbox,this.defaultEncoding=A.defaultEncoding,this.toUnicode=A.toUnicode,this.toFontChar=[],"Type3"===A.type){for(let t=0;t<256;t++)this.toFontChar[t]=this.differences[t]||A.defaultEncoding[t];return}if(this.cidEncoding=A.cidEncoding||"",this.vertical=!!A.vertical,this.vertical&&(this.vmetrics=A.vmetrics,this.defaultVMetrics=A.defaultVMetrics),!e||e.isEmpty)return e&&N('Font file is empty in "'+t+'" ('+this.loadedName+")"),void this.fallbackToSystemFont(A);let r;[s,a]=function(t,{type:e,subtype:A,composite:i}){let s,a;return function(t){const e=t.peekBytes(4);return 65536===Lt(e,0)||"true"===_(e)}(t)||Ga(t)?s=i?"CIDFontType2":"TrueType":function(t){return"OTTO"===_(t.peekBytes(4))}(t)?s=i?"CIDFontType2":"OpenType":function(t){const e=t.peekBytes(2);return 37===e[0]&&33===e[1]||128===e[0]&&1===e[1]}(t)?s=i?"CIDFontType0":"MMType1"===e?"MMType1":"Type1":function(t){const e=t.peekBytes(4);return e[0]>=1&&e[3]>=1&&e[3]<=4}(t)?i?(s="CIDFontType0",a="CIDFontType0C"):(s="MMType1"===e?"MMType1":"Type1",a="Type1C"):(N("getFontFileType: Unable to detect correct font file Type/Subtype."),s=e,a=A),[s,a]}(e,A),s===this.type&&a===this.subtype||x(`Inconsistent font file Type/SubType, expected: ${this.type}/${this.subtype} but found: ${s}/${a}.`);try{switch(s){case"MMType1":x("MMType1 font ("+t+"), falling back to Type1.");case"Type1":case"CIDFontType0":this.mimetype="font/opentype";const i="Type1C"===a||"CIDFontType0C"===a?new Ss(e,A):new pa(t,e,A);Da(A),r=this.convert(t,i,A);break;case"OpenType":case"TrueType":case"CIDFontType2":this.mimetype="font/opentype",r=this.checkAndRepair(t,e,A),this.isOpenType&&(Da(A),s="OpenType");break;default:throw new q(`Font ${s} is not supported`)}}catch(t){return N(t),void this.fallbackToSystemFont(A)}ka(A),this.data=r,this.type=s,this.subtype=a,this.fontMatrix=A.fontMatrix,this.widths=A.widths,this.defaultWidth=A.defaultWidth,this.toUnicode=A.toUnicode,this.seacMap=A.seacMap}get renderer(){return L(this,"renderer",_s.create(this,hs))}exportData(t=!1){const e=t?[...wa,...ba]:wa,A=Object.create(null);let i,s;for(i of e)s=this[i],void 0!==s&&(A[i]=s);return A}fallbackToSystemFont(t){this.missingFile=!0;const{name:e,type:A}=this;let i=Bs(e);const s=ds(),a=Qs(),n=!!s[i],r=!(!a[i]||!s[a[i]]);i=s[i]||a[i]||i;const o=Ws()[i];o&&(isNaN(this.ascent)&&(this.ascent=o.ascent/ya),isNaN(this.descent)&&(this.descent=o.descent/ya),isNaN(this.capHeight)&&(this.capHeight=o.capHeight/ya)),this.bold=/bold/gi.test(i),this.italic=/oblique|italic/gi.test(i),this.black=/Black/g.test(e);const g=/Narrow/g.test(e);if(this.remeasure=(!n||g)&&Object.keys(this.widths).length>0,(n||r)&&"CIDFontType2"===A&&this.cidEncoding.startsWith("Identity-")){const A=t.cidToGidMap,i=[];if(Ma(i,ps()),/Arial-?Black/i.test(e)?Ma(i,ms()):/Calibri/i.test(e)&&Ma(i,ys()),A){for(const t in i){const e=i[t];void 0!==A[e]&&(i[+t]=A[e])}A.length!==this.toUnicode.length&&t.hasIncludedToUnicodeMap&&this.toUnicode instanceof ks&&this.toUnicode.forEach((function(t,e){const s=i[t];void 0===A[s]&&(i[+t]=e)}))}this.toUnicode instanceof ks||this.toUnicode.forEach((function(t,e){i[+t]=e})),this.toFontChar=i,this.toUnicode=new Ds(i)}else if(/Symbol/i.test(i))this.toFontChar=La(Mi,is(),this.differences);else if(/Dingbats/i.test(i))this.toFontChar=La(Li,ss(),this.differences);else if(n){const t=La(this.defaultEncoding,is(),this.differences);"CIDFontType2"!==A||this.cidEncoding.startsWith("Identity-")||this.toUnicode instanceof ks||this.toUnicode.forEach((function(e,A){t[+e]=A})),this.toFontChar=t}else{const t=is(),A=[];this.toUnicode.forEach(((e,i)=>{if(!this.composite){const A=ns(this.differences[e]||this.defaultEncoding[e],t);-1!==A&&(i=A)}A[+e]=i})),this.composite&&this.toUnicode instanceof ks&&/Tahoma|Verdana/i.test(e)&&Ma(A,ps()),this.toFontChar=A}ka(t),this.loadedName=i.split("-",1)[0]}checkAndRepair(t,e,A){const i=["OS/2","cmap","head","hhea","hmtx","maxp","name","post","loca","glyf","fpgm","prep","cvt ","CFF "];function s(t,e){const A=Object.create(null);A["OS/2"]=null,A.cmap=null,A.head=null,A.hhea=null,A.hmtx=null,A.maxp=null,A.name=null,A.post=null;for(let s=0;s<e;s++){const e=a(t);i.includes(e.tag)&&0!==e.length&&(A[e.tag]=e)}return A}function a(t){const e=t.getString(4),A=t.getInt32()>>>0,i=t.getInt32()>>>0,s=t.getInt32()>>>0,a=t.pos;t.pos=t.start||0,t.skip(i);const n=t.getBytes(s);return t.pos=a,"head"===e&&(n[8]=n[9]=n[10]=n[11]=0,n[17]|=32),{tag:e,checksum:A,length:s,offset:i,data:n}}function n(t){return{version:t.getString(4),numTables:t.getUint16(),searchRange:t.getUint16(),entrySelector:t.getUint16(),rangeShift:t.getUint16()}}function r(t,e,A,i,s,a){const n={length:0,sizeOfInstructions:0};if(e<0||e>=t.length||A>t.length||A-e<=12)return n;const r=t.subarray(e,A),o=xa(r[2],r[3]),g=xa(r[4],r[5]),c=xa(r[6],r[7]),h=xa(r[8],r[9]);o>c&&(Ra(r,2,c),Ra(r,6,o)),g>h&&(Ra(r,4,h),Ra(r,8,g));const l=xa(r[0],r[1]);if(l<0)return l<-1||(i.set(r,s),n.length=r.length),n;let I,C=10,B=0;for(I=0;I<l;I++)B=1+(r[C]<<8|r[C+1]),C+=2;const d=C,u=r[C]<<8|r[C+1];n.sizeOfInstructions=u,C+=2+u;const Q=C;let E=0;for(I=0;I<B;I++){const t=r[C++];192&t&&(r[C-1]=63&t);let e=2;2&t?e=1:16&t&&(e=0);let A=2;4&t?A=1:32&t&&(A=0);const i=e+A;if(E+=i,8&t){const t=r[C++];0===t&&(r[C-1]^=8),I+=t,E+=t*i}}if(0===E)return n;let f=C+E;return f>r.length?n:!a&&u>0?(i.set(r.subarray(0,d),s),i.set([0,0],s+d),i.set(r.subarray(Q,f),s+d+2),f-=u,r.length-f>3&&(f=f+3&-4),n.length=f,n):r.length-f>3?(f=f+3&-4,i.set(r.subarray(0,f),s),n.length=f,n):(i.set(r,s),n.length=r.length,n)}function o(t){const A=(e.start||0)+t.offset;e.pos=A;const i=[[],[]],s=[],a=t.length,n=A+a;if(0!==e.getUint16()||a<6)return[i,s];const r=e.getUint16(),o=e.getUint16();let g,c;for(g=0;g<r&&e.pos+12<=n;g++){const t={platform:e.getUint16(),encoding:e.getUint16(),language:e.getUint16(),name:e.getUint16(),length:e.getUint16(),offset:e.getUint16()};(Ua(t)||Ha(t))&&s.push(t)}for(g=0,c=s.length;g<c;g++){const t=s[g];if(t.length<=0)continue;const a=A+o+t.offset;if(a+t.length>n)continue;e.pos=a;const r=t.name;if(t.encoding){let A="";for(let i=0,s=t.length;i<s;i+=2)A+=String.fromCharCode(e.getUint16());i[1][r]=A}else i[0][r]=e.getString(t.length)}return[i,s]}const g=[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 c(t,e){let A,i,s,a,n,r=t.data,o=0,c=0,h=0;const l=[],I=[],C=[];let B=e.tooComplexToFollowFunctions,d=!1,u=0,Q=0;for(let t=r.length;o<t;){const t=r[o++];if(64===t)if(i=r[o++],d||Q)o+=i;else for(A=0;A<i;A++)l.push(r[o++]);else if(65===t)if(i=r[o++],d||Q)o+=2*i;else for(A=0;A<i;A++)s=r[o++],l.push(s<<8|r[o++]);else if(176==(248&t))if(i=t-176+1,d||Q)o+=i;else for(A=0;A<i;A++)l.push(r[o++]);else if(184==(248&t))if(i=t-184+1,d||Q)o+=2*i;else for(A=0;A<i;A++)s=r[o++],l.push(s<<8|r[o++]);else if(43!==t||B)if(44!==t||B){if(45===t)if(d)d=!1,c=o;else{if(n=I.pop(),!n)return N("TT: ENDF bad stack"),void(e.hintsValid=!1);a=C.pop(),r=n.data,o=n.i,e.functionsStackDeltas[a]=l.length-n.stackTop}else if(137===t)(d||Q)&&(N("TT: nested IDEFs not allowed"),B=!0),d=!0,h=o;else if(88===t)++u;else if(27===t)Q=u;else if(89===t)Q===u&&(Q=0),--u;else if(28===t&&!d&&!Q){const t=l.at(-1);t>0&&(o+=t-1)}}else(d||Q)&&(N("TT: nested FDEFs not allowed"),B=!0),d=!0,h=o,a=l.pop(),e.functionsDefined[a]={data:r,i:o};else if(!d&&!Q)if(a=l.at(-1),isNaN(a))x("TT: CALL empty stack (or invalid entry).");else if(e.functionsUsed[a]=!0,a in e.functionsStackDeltas){const t=l.length+e.functionsStackDeltas[a];if(t<0)return N("TT: CALL invalid functions stack delta."),void(e.hintsValid=!1);l.length=t}else if(a in e.functionsDefined&&!C.includes(a)){if(I.push({data:r,i:o,stackTop:l.length-1}),C.push(a),n=e.functionsDefined[a],!n)return N("TT: CALL non-existent function"),void(e.hintsValid=!1);r=n.data,o=n.i}if(!d&&!Q){let e=0;for(t<=142?e=g[t]:t>=192&&t<=223?e=-1:t>=224&&(e=-2),t>=113&&t<=117&&(i=l.pop(),isNaN(i)||(e=2*-i));e<0&&l.length>0;)l.pop(),e++;for(;e>0;)l.push(NaN),e--}}e.tooComplexToFollowFunctions=B;const E=[r];o>r.length&&E.push(new Uint8Array(o-r.length)),h>c&&(N("TT: complementing a missing function tail"),E.push(new Uint8Array([34,45]))),function(t,e){if(e.length>1){let A,i,s=0;for(A=0,i=e.length;A<i;A++)s+=e[A].length;s=s+3&-4;const a=new Uint8Array(s);let n=0;for(A=0,i=e.length;A<i;A++)a.set(e[A],n),n+=e[A].length;t.data=a,t.length=s}}(t,E)}let h,l,I,C;if(Ga(e=new ne(new Uint8Array(e.getBytes())))){const t=function(t,e){const{numFonts:A,offsetTable:i}=function(t){const e=t.getString(4);G("ttcf"===e,"Must be a TrueType Collection font.");const A=t.getUint16(),i=t.getUint16(),s=t.getInt32()>>>0,a=[];for(let e=0;e<s;e++)a.push(t.getInt32()>>>0);const n={ttcTag:e,majorVersion:A,minorVersion:i,numFonts:s,offsetTable:a};switch(A){case 1:return n;case 2:return n.dsigTag=t.getInt32()>>>0,n.dsigLength=t.getInt32()>>>0,n.dsigOffset=t.getInt32()>>>0,n}throw new q(`Invalid TrueType Collection majorVersion: ${A}.`)}(t),a=e.split("+");let r;for(let g=0;g<A;g++){t.pos=(t.start||0)+i[g];const A=n(t),c=s(t,A.numTables);if(!c.name)throw new q('TrueType Collection font must contain a "name" table.');const[h]=o(c.name);for(let t=0,i=h.length;t<i;t++)for(let i=0,s=h[t].length;i<s;i++){const s=h[t][i]?.replaceAll(/\s/g,"");if(s){if(s===e)return{header:A,tables:c};if(!(a.length<2))for(const t of a)s===t&&(r={name:t,header:A,tables:c})}}}if(r)return N(`TrueType Collection does not contain "${e}" font, falling back to "${r.name}" font instead.`),{header:r.header,tables:r.tables};throw new q(`TrueType Collection does not contain "${e}" font.`)}(e,this.name);h=t.header,l=t.tables}else h=n(e),l=s(e,h.numTables);const B=!l["CFF "];if(B){if(!l.loca)throw new q('Required "loca" table is not found');l.glyf||(N('Required "glyf" table is not found -- trying to recover.'),l.glyf={tag:"glyf",data:new Uint8Array(0)}),this.isOpenType=!1}else{const e=A.composite&&(A.cidToGidMap?.length>0||!(A.cMap instanceof li));if("OTTO"===h.version&&!e||!l.head||!l.hhea||!l.maxp||!l.post)return C=new ne(l["CFF "].data),I=new Ss(C,A),Da(A),this.convert(t,I,A);delete l.glyf,delete l.loca,delete l.fpgm,delete l.prep,delete l["cvt "],this.isOpenType=!0}if(!l.maxp)throw new q('Required "maxp" table is not found');e.pos=(e.start||0)+l.maxp.offset;let d=e.getInt32();const u=e.getUint16();if(65536!==d&&20480!==d){if(6===l.maxp.length)d=20480;else{if(!(l.maxp.length>=32))throw new q('"maxp" table has a wrong version number');d=65536}!function(t,e,A){t[3]=255&A,t[2]=A>>>8,t[1]=A>>>16,t[0]=A>>>24}(l.maxp.data,0,d)}if(A.scaleFactors?.length===u&&B){const{scaleFactors:t}=A,e=Fa(l.head.data[50],l.head.data[51]),i=new Zs({glyfTable:l.glyf.data,isGlyphLocationsLong:e,locaTable:l.loca.data,numGlyphs:u});i.scale(t);const{glyf:s,loca:a,isLocationLong:n}=i.write();l.glyf.data=s,l.loca.data=a,n!==!!e&&(l.head.data[50]=0,l.head.data[51]=n?1:0);const r=l.hmtx.data;for(let e=0;e<u;e++){const A=4*e,i=Math.round(t[e]*Fa(r[A],r[A+1]));r[A]=i>>8&255,r[A+1]=255&i,Ra(r,A+2,Math.round(t[e]*xa(r[A+2],r[A+3])))}}let Q=u+1,E=!0;Q>65535&&(E=!1,Q=u,N("Not enough space in glyfs to duplicate first glyph."));let f=0,p=0;d>=65536&&l.maxp.length>=32&&(e.pos+=8,e.getUint16()>2&&(l.maxp.data[14]=0,l.maxp.data[15]=2),e.pos+=4,f=e.getUint16(),e.pos+=4,p=e.getUint16()),l.maxp.data[4]=Q>>8,l.maxp.data[5]=255&Q;const m=function(t,e,A,i){const s={functionsDefined:[],functionsUsed:[],functionsStackDeltas:[],tooComplexToFollowFunctions:!1,hintsValid:!0};if(t&&c(t,s),e&&c(e,s),t&&function(t,e){if(!t.tooComplexToFollowFunctions)if(t.functionsDefined.length>e)N("TT: more functions defined than expected"),t.hintsValid=!1;else for(let A=0,i=t.functionsUsed.length;A<i;A++){if(A>e)return N("TT: invalid function id: "+A),void(t.hintsValid=!1);if(t.functionsUsed[A]&&!t.functionsDefined[A])return N("TT: undefined function: "+A),void(t.hintsValid=!1)}}(s,i),A&&1&A.length){const t=new Uint8Array(A.length+1);t.set(A.data),A.data=t}return s.hintsValid}(l.fpgm,l.prep,l["cvt "],f);if(m||(delete l.fpgm,delete l.prep,delete l["cvt "]),function(t,e,A,i,s,a){if(!e)return void(A&&(A.data=null));t.pos=(t.start||0)+e.offset,t.pos+=4,t.pos+=2,t.pos+=2,t.pos+=2,t.pos+=2,t.pos+=2,t.pos+=2,t.pos+=2,t.pos+=2,t.pos+=2;const n=t.getUint16();t.pos+=8,t.pos+=2;let r=t.getUint16();0!==n&&(2&Fa(i.data[44],i.data[45])||(e.data[22]=0,e.data[23]=0)),r>s&&(x(`The numOfMetrics (${r}) should not be greater than the numGlyphs (${s}).`),r=s,e.data[34]=(65280&r)>>8,e.data[35]=255&r);const o=s-r-(A.length-4*r>>1);if(o>0){const t=new Uint8Array(A.length+2*o);t.set(A.data),a&&(t[A.length]=A.data[2],t[A.length+1]=A.data[3]),A.data=t}}(e,l.hhea,l.hmtx,l.head,Q,E),!l.head)throw new q('Required "head" table is not found');!function(t,e,A){const i=t.data,s=function(t,e,A,i){return(t<<24)+(e<<16)+(A<<8)+i}(i[0],i[1],i[2],i[3]);s>>16!=1&&(x("Attempting to fix invalid version in head table: "+s),i[0]=0,i[1]=1,i[2]=0,i[3]=0);const a=Fa(i[50],i[51]);if(a<0||a>1){x("Attempting to fix invalid indexToLocFormat in head table: "+a);const t=e+1;if(A===t<<1)i[50]=0,i[51]=0;else{if(A!==t<<2)throw new q("Could not fix indexToLocFormat: "+a);i[50]=0,i[51]=1}}}(l.head,u,B?l.loca.length:0);let y=Object.create(null);if(B){const t=Fa(l.head.data[50],l.head.data[51]),e=function(t,e,A,i,s,a,n){let o,g,c;i?(o=4,g=function(t,e){return t[e]<<24|t[e+1]<<16|t[e+2]<<8|t[e+3]},c=function(t,e,A){t[e]=A>>>24&255,t[e+1]=A>>16&255,t[e+2]=A>>8&255,t[e+3]=255&A}):(o=2,g=function(t,e){return t[e]<<9|t[e+1]<<1},c=function(t,e,A){t[e]=A>>9&255,t[e+1]=A>>1&255});const h=a?A+1:A,l=o*(1+h),I=new Uint8Array(l);I.set(t.data.subarray(0,l)),t.data=I;const C=e.data,B=C.length,d=new Uint8Array(B);let u,Q;const E=[];for(u=0,Q=0;u<A+1;u++,Q+=o){let t=g(I,Q);t>B&&(t=B),E.push({index:u,offset:t,endOffset:0})}for(E.sort(((t,e)=>t.offset-e.offset)),u=0;u<A;u++)E[u].endOffset=E[u+1].offset;for(E.sort(((t,e)=>t.index-e.index)),u=0;u<A;u++){const{offset:t,endOffset:e}=E[u];if(0!==t||0!==e)break;const A=E[u+1].offset;if(0!==A){E[u].endOffset=A;break}}const f=E.at(-2);0!==f.offset&&0===f.endOffset&&(f.endOffset=B);const p=Object.create(null);let m=0;for(c(I,0,m),u=0,Q=o;u<A;u++,Q+=o){const t=r(C,E[u].offset,E[u].endOffset,d,m,s),e=t.length;0===e&&(p[u]=!0),t.sizeOfInstructions>n&&(n=t.sizeOfInstructions),m+=e,c(I,Q,m)}if(0===m){const t=new Uint8Array([0,1,0,0,0,0,0,0,0,0,0,0,0,0,49,0]);for(u=0,Q=o;u<h;u++,Q+=o)c(I,Q,t.length);e.data=t}else if(a){const A=g(I,o);d.length>A+m?e.data=d.subarray(0,A+m):(e.data=new Uint8Array(A+m),e.data.set(d.subarray(0,m))),e.data.set(d.subarray(0,A),m),c(t.data,I.length-o,m+A)}else e.data=d.subarray(0,m);return{missingGlyphs:p,maxSizeOfInstructions:n}}(l.loca,l.glyf,u,t,m,E,p);y=e.missingGlyphs,d>=65536&&l.maxp.length>=32&&(l.maxp.data[26]=e.maxSizeOfInstructions>>8,l.maxp.data[27]=255&e.maxSizeOfInstructions)}if(!l.hhea)throw new q('Required "hhea" table is not found');0===l.hhea.data[10]&&0===l.hhea.data[11]&&(l.hhea.data[10]=255,l.hhea.data[11]=255);const w={unitsPerEm:Fa(l.head.data[18],l.head.data[19]),yMax:xa(l.head.data[42],l.head.data[43]),yMin:xa(l.head.data[38],l.head.data[39]),ascent:xa(l.hhea.data[4],l.hhea.data[5]),descent:xa(l.hhea.data[6],l.hhea.data[7]),lineGap:xa(l.hhea.data[8],l.hhea.data[9])};this.ascent=w.ascent/w.unitsPerEm,this.descent=w.descent/w.unitsPerEm,this.lineGap=w.lineGap/w.unitsPerEm,this.cssFontInfo?.lineHeight?(this.lineHeight=this.cssFontInfo.metrics.lineHeight,this.lineGap=this.cssFontInfo.metrics.lineGap):this.lineHeight=this.ascent-this.descent+this.lineGap,l.post&&function(t,A,i){const s=(e.start||0)+t.offset;e.pos=s;const a=s+t.length,n=e.getInt32();e.skip(28);let r,o,g=!0;switch(n){case 65536:r=ls;break;case 131072:const t=e.getUint16();if(t!==i){g=!1;break}const s=[];for(o=0;o<t;++o){const t=e.getUint16();if(t>=32768){g=!1;break}s.push(t)}if(!g)break;const c=[],h=[];for(;e.pos<a;){const t=e.getByte();for(h.length=t,o=0;o<t;++o)h[o]=String.fromCharCode(e.getByte());c.push(h.join(""))}for(r=[],o=0;o<t;++o){const t=s[o];t<258?r.push(ls[t]):r.push(c[t-258])}break;case 196608:break;default:N("Unknown/unsupported post table version "+n),g=!1,A.defaultEncoding&&(r=A.defaultEncoding)}A.glyphNames=r}(l.post,A,u),l.post={tag:"post",data:qa(A)};const b=Object.create(null);function D(t){return!y[t]}if(A.composite){const t=A.cidToGidMap||[],e=0===t.length;A.cMap.forEach((function(A,i){if("string"==typeof i&&(i=Ja(A,i,!0)),i>65535)throw new q("Max size of CID is 65,535");let s=-1;e?s=i:void 0!==t[i]&&(s=t[i]),s>=0&&s<u&&D(s)&&(b[A]=s)}))}else{const t=function(t,e,A,i){if(!t)return N("No cmap table available."),{platformId:-1,encodingId:-1,mappings:[],hasShortCmap:!1};let s,a=(e.start||0)+t.offset;e.pos=a,e.skip(2);const n=e.getUint16();let r,o=!1;for(let t=0;t<n;t++){const s=e.getUint16(),a=e.getUint16(),g=e.getInt32()>>>0;let c=!1;if(r?.platformId!==s||r?.encodingId!==a){if(0!==s||0!==a&&1!==a&&3!==a)if(1===s&&0===a)c=!0;else if(3!==s||1!==a||!i&&r){if(A&&3===s&&0===a){c=!0;let A=!0;if(t<n-1){const t=e.peekBytes(2);Fa(t[0],t[1])<s&&(A=!1)}A&&(o=!0)}}else c=!0,A||(o=!0);else c=!0;if(c&&(r={platformId:s,encodingId:a,offset:g}),o)break}}if(r&&(e.pos=a+r.offset),!r||-1===e.peekByte())return N("Could not find a preferred cmap table."),{platformId:-1,encodingId:-1,mappings:[],hasShortCmap:!1};const g=e.getUint16();let c=!1;const h=[];let l,I;if(0===g){for(e.skip(4),l=0;l<256;l++){const t=e.getByte();t&&h.push({charCode:l,glyphId:t})}c=!0}else if(2===g){e.skip(4);const t=[];let A=0;for(let i=0;i<256;i++){const i=e.getUint16()>>3;t.push(i),A=Math.max(i,A)}const i=[];for(let t=0;t<=A;t++)i.push({firstCode:e.getUint16(),entryCount:e.getUint16(),idDelta:xa(e.getByte(),e.getByte()),idRangePos:e.pos+e.getUint16()});for(let A=0;A<256;A++)if(0===t[A])e.pos=i[0].idRangePos+2*A,I=e.getUint16(),h.push({charCode:A,glyphId:I});else{const s=i[t[A]];for(l=0;l<s.entryCount;l++){const t=(A<<8)+l+s.firstCode;e.pos=s.idRangePos+2*l,I=e.getUint16(),0!==I&&(I=(I+s.idDelta)%65536),h.push({charCode:t,glyphId:I})}}}else if(4===g){e.skip(4);const t=e.getUint16()>>1;e.skip(6);const A=[];let i;for(i=0;i<t;i++)A.push({end:e.getUint16()});for(e.skip(2),i=0;i<t;i++)A[i].start=e.getUint16();for(i=0;i<t;i++)A[i].delta=e.getUint16();let n,r=0;for(i=0;i<t;i++){s=A[i];const a=e.getUint16();a?(n=(a>>1)-(t-i),s.offsetIndex=n,r=Math.max(r,n+s.end-s.start+1)):s.offsetIndex=-1}const o=[];for(l=0;l<r;l++)o.push(e.getUint16());for(i=0;i<t;i++){s=A[i],a=s.start;const t=s.end,e=s.delta;for(n=s.offsetIndex,l=a;l<=t;l++)65535!==l&&(I=n<0?l:o[n+l-a],I=I+e&65535,h.push({charCode:l,glyphId:I}))}}else if(6===g){e.skip(4);const t=e.getUint16(),A=e.getUint16();for(l=0;l<A;l++){I=e.getUint16();const A=t+l;h.push({charCode:A,glyphId:I})}}else{if(12!==g)return N("cmap table has unsupported format: "+g),{platformId:-1,encodingId:-1,mappings:[],hasShortCmap:!1};{e.skip(10);const t=e.getInt32()>>>0;for(l=0;l<t;l++){const t=e.getInt32()>>>0,A=e.getInt32()>>>0;let i=e.getInt32()>>>0;for(let e=t;e<=A;e++)h.push({charCode:e,glyphId:i++})}}}h.sort((function(t,e){return t.charCode-e.charCode}));for(let t=1;t<h.length;t++)h[t-1].charCode===h[t].charCode&&(h.splice(t,1),t--);return{platformId:r.platformId,encodingId:r.encodingId,mappings:h,hasShortCmap:c}}(l.cmap,e,this.isSymbolicFont,A.hasEncoding),i=t.platformId,s=t.encodingId,a=t.mappings;let n=[],r=!1;if(!A.hasEncoding||"MacRomanEncoding"!==A.baseEncodingName&&"WinAnsiEncoding"!==A.baseEncodingName||(n=Ui(A.baseEncodingName)),A.hasEncoding&&!this.isSymbolicFont&&(3===i&&1===s||1===i&&0===s)){const t=is();for(let e=0;e<256;e++){let r;if(r=void 0!==this.differences[e]?this.differences[e]:n.length&&""!==n[e]?n[e]:vi[e],!r)continue;const o=Is(r,t);let g;if(3===i&&1===s?g=t[o]:1===i&&0===s&&(g=Ni.indexOf(o)),void 0===g){if(!A.glyphNames&&A.hasIncludedToUnicodeMap&&!(this.toUnicode instanceof ks)){const t=this.toUnicode.get(e);t&&(g=t.codePointAt(0))}if(void 0===g)continue}for(const t of a)if(t.charCode===g){b[e]=t.glyphId;break}}}else if(0===i){for(const t of a)b[t.charCode]=t.glyphId;r=!0}else if(3===i&&0===s)for(const t of a){let e=t.charCode;e>=61440&&e<=61695&&(e&=255),b[e]=t.glyphId}else for(const t of a)b[t.charCode]=t.glyphId;if(A.glyphNames&&(n.length||this.differences.length))for(let t=0;t<256;++t){if(!r&&void 0!==b[t])continue;const e=this.differences[t]||n[t];if(!e)continue;const i=A.glyphNames.indexOf(e);i>0&&D(i)&&(b[t]=i)}}0===b.length&&(b[0]=0);let k=Q-1;if(E||(k=0),!A.cssFontInfo){const t=Ya(b,D,k,this.toUnicode);this.toFontChar=t.toFontChar,l.cmap={tag:"cmap",data:Ta(t.charCodeToGlyphId,t.toUnicodeExtraMap,Q)},l["OS/2"]&&function(t,e){e.pos=(e.start||0)+t.offset;const A=e.getUint16();e.skip(60);const i=e.getUint16();return!(A<4&&768&i||e.getUint16()>e.getUint16()||(e.skip(6),0===e.getUint16()||(t.data[8]=t.data[9]=0,0)))}(l["OS/2"],e)||(l["OS/2"]={tag:"OS/2",data:Ka(A,t.charCodeToGlyphId,w)})}if(!B)try{C=new ne(l["CFF "].data),I=new Ti(C,A,hs).parse(),I.duplicateFirstGlyph();const t=new As(I);l["CFF "].data=t.compile()}catch{N("Failed to compile font "+A.loadedName)}if(l.name){const[e,i]=o(l.name);l.name.data=_a(t,e),this.psName=e[0][6]||null,A.composite||function(t,e,A){if(t.isInternalFont)return;if(t.hasIncludedToUnicodeMap)return;if(t.hasEncoding)return;if(t.toUnicode instanceof ks)return;if(!e)return;if(0===A.length)return;if(t.defaultEncoding===Gi)return;for(const t of A)if(!Ha(t))return;const i=Gi,s=[],a=is();for(const t in i){const e=i[t];if(""===e)continue;const A=a[e];void 0!==A&&(s[t]=String.fromCharCode(A))}s.length>0&&t.toUnicode.amend(s)}(A,this.isSymbolicFont,i)}else l.name={tag:"name",data:_a(this.name)};const S=new ia(h.version);for(const t in l)S.addTable(t,l[t].data);return S.toArray()}convert(t,e,A){A.fixedPitch=!1,A.builtInEncoding&&function(t,e){if(t.isInternalFont)return;if(t.hasIncludedToUnicodeMap)return;if(e===t.defaultEncoding)return;if(t.toUnicode instanceof ks)return;const A=[],i=is();for(const s in e){if(t.hasEncoding&&(t.baseEncodingName||void 0!==t.differences[s]))continue;const a=ns(e[s],i);-1!==a&&(A[s]=String.fromCharCode(a))}A.length>0&&t.toUnicode.amend(A)}(A,A.builtInEncoding);let i=1;e instanceof Ss&&(i=e.numGlyphs-1);const s=e.getGlyphMapping(A);let a=null,n=s,r=null;A.cssFontInfo||(a=Ya(s,e.hasGlyphId.bind(e),i,this.toUnicode),this.toFontChar=a.toFontChar,n=a.charCodeToGlyphId,r=a.toUnicodeExtraMap);const g=e.numGlyphs;function c(t,e){let A=null;for(const i in t)e===t[i]&&(A||=[]).push(0|i);return A}function h(t,e){for(const A in t)if(e===t[A])return 0|A;return a.charCodeToGlyphId[a.nextAvailableFontCharCode]=e,a.nextAvailableFontCharCode++}const l=e.seacs;if(a&&l?.length){const t=A.fontMatrix||o,i=e.getCharset(),n=Object.create(null);for(let e in l){e|=0;const A=l[e],r=vi[A[2]],o=vi[A[3]],g=i.indexOf(r),I=i.indexOf(o);if(g<0||I<0)continue;const C={x:A[0]*t[0]+A[1]*t[2]+t[4],y:A[0]*t[1]+A[1]*t[3]+t[5]},B=c(s,e);if(B)for(const t of B){const e=a.charCodeToGlyphId,A=h(e,g),i=h(e,I);n[t]={baseFontCharCode:A,accentFontCharCode:i,accentOffset:C}}}A.seacMap=n}const I=A.fontMatrix?1/Math.max(...A.fontMatrix.slice(0,4).map(Math.abs)):1e3,C=new ia("OTTO");return C.addTable("CFF ",e.data),C.addTable("OS/2",Ka(A,n)),C.addTable("cmap",Ta(n,r,g)),C.addTable("head","\0\0\0\0\0\0\0\0\0\0_<õ\0\0"+va(I)+"\0\0\0\0ž\v~'\0\0\0\0ž\v~'\0\0"+va(A.descent)+"ÿ"+va(A.ascent)+Na(A.italicAngle?2:0)+"\0\0\0\0\0\0\0"),C.addTable("hhea","\0\0\0"+va(A.ascent)+va(A.descent)+"\0\0ÿÿ\0\0\0\0\0\0"+va(A.capHeight)+va(Math.tan(A.italicAngle)*A.xHeight)+"\0\0\0\0\0\0\0\0\0\0\0\0"+Na(g)),C.addTable("hmtx",function(){const t=e.charstrings,A=e.cff?e.cff.widths:null;let i="\0\0\0\0";for(let e=1,s=g;e<s;e++){let s=0;if(t){const A=t[e-1];s="width"in A?A.width:0}else A&&(s=Math.ceil(A[e]||0));i+=Na(s)+Na(0)}return i}()),C.addTable("maxp","\0\0P\0"+Na(g)),C.addTable("name",_a(t)),C.addTable("post",qa(A)),C.toArray()}_charToGlyph(t,e=!1){let A,i,s,a=this._glyphCache[t];if(a?.isSpace===e)return a;let n=t;this.cMap?.contains(t)&&(n=this.cMap.lookup(t),"string"==typeof n&&(n=Ja(t,n))),i=this.widths[n],"number"!=typeof i&&(i=this.defaultWidth);const r=this.vmetrics?.[n];let o=this.toUnicode.get(t)||t;"number"==typeof o&&(o=String.fromCharCode(o));let g=void 0!==this.toFontChar[t];if(A=this.toFontChar[t]||t,this.missingFile){const e=this.differences[t]||this.defaultEncoding[t];".notdef"!==e&&""!==e||"Type1"!==this.type||(A=32),A=function(t){return t>=65520&&t<=65535?0:t>=62976&&t<=63743?as()[t]||t:173===t?45:t}(A)}this.isType3Font&&(s=A);let c=null;if(this.seacMap?.[t]){g=!0;const e=this.seacMap[t];A=e.baseFontCharCode,c={fontChar:String.fromCodePoint(e.accentFontCharCode),offset:e.accentOffset}}let h="";return"number"==typeof A&&(A<=1114111?h=String.fromCodePoint(A):N(`charToGlyph - invalid fontCharCode: ${A}`)),a=new Sa(t,h,o,c,i,r,s,e,g),this._glyphCache[t]=a}charsToGlyphs(t){let e=this._charsCache[t];if(e)return e;if(e=[],this.cMap){const A=Object.create(null),i=t.length;let s=0;for(;s<i;){this.cMap.readCharCode(t,s,A);const{charcode:i,length:a}=A;s+=a;const n=this._charToGlyph(i,1===a&&32===t.charCodeAt(s-1));e.push(n)}}else for(let A=0,i=t.length;A<i;++A){const i=t.charCodeAt(A),s=this._charToGlyph(i,32===i);e.push(s)}return this._charsCache[t]=e}getCharPositions(t){const e=[];if(this.cMap){const A=Object.create(null);let i=0;for(;i<t.length;){this.cMap.readCharCode(t,i,A);const s=A.length;e.push([i,i+s]),i+=s}}else for(let A=0,i=t.length;A<i;++A)e.push([A,A+1]);return e}get glyphCacheValues(){return Object.values(this._glyphCache)}encodeString(t){const e=[],A=[],i=()=>e.length%2==1,s=this.toUnicode instanceof ks?t=>this.toUnicode.charCodeOf(t):t=>this.toUnicode.charCodeOf(String.fromCodePoint(t));for(let a=0,n=t.length;a<n;a++){const n=t.codePointAt(a);if(n>55295&&(n<57344||n>65533)&&a++,this.toUnicode){const t=s(n);if(-1!==t){i()&&(e.push(A.join("")),A.length=0);for(let e=(this.cMap?this.cMap.getCharCodeLength(t):1)-1;e>=0;e--)A.push(String.fromCharCode(t>>8*e&255));continue}}i()||(e.push(A.join("")),A.length=0),A.push(String.fromCodePoint(n))}return e.push(A.join("")),e}}class Wa{constructor(t){this.error=t,this.loadedName="g_font_error",this.missingFile=!0}charsToGlyphs(){return[]}encodeString(t){return[t]}exportData(t=!1){return{error:this.error}}}class Za{constructor(){v("Cannot initialize Pattern.")}static parseShading(t,e,A,i,s){const a=t instanceof mt?t.dict:t,n=a.get("ShadingType");try{switch(n){case 2:case 3:return new Va(a,e,A,i,s);case 4:case 5:case 6:case 7:return new tn(t,e,A,i,s);default:throw new q("Unsupported ShadingType: "+n)}}catch(t){if(t instanceof bt)throw t;return N(t),new en}}}class ja{static SMALL_NUMBER=1e-6;constructor(){this.constructor===ja&&v("Cannot initialize BaseShading.")}getIR(){v("Abstract method `getIR` called.")}}class Va extends ja{constructor(t,e,A,i,s){super(),this.shadingType=t.get("ShadingType");let a=0;if(2===this.shadingType?a=4:3===this.shadingType&&(a=6),this.coordsArr=t.getArray("Coords"),!Ht(this.coordsArr,a))throw new q("RadialAxialShading: Invalid /Coords array.");const n=he.parse({cs:t.getRaw("CS")||t.getRaw("ColorSpace"),xref:e,resources:A,pdfFunctionFactory:i,localColorSpaceCache:s});this.bbox=Tt(t.getArray("BBox"),null);let r=0,o=1;const g=t.getArray("Domain");Ht(g,2)&&([r,o]=g);let c=!1,h=!1;const l=t.getArray("Extend");if(function(t){return Array.isArray(t)&&2===t.length&&t.every((t=>"boolean"==typeof t))}(l)&&([c,h]=l),!(3!==this.shadingType||c&&h)){const[t,e,A,i,s,a]=this.coordsArr,n=Math.hypot(t-i,e-s);A<=a+n&&a<=A+n&&N("Unsupported radial gradient.")}this.extendStart=c,this.extendEnd=h;const I=t.getRaw("Function"),C=i.createFromArray(I),B=(o-r)/840,d=this.colorStops=[];if(r>=o||B<=0)return void x("Bad shading domain.");const u=new Float32Array(n.numComps),Q=new Float32Array(1);let E,f=0;Q[0]=r,C(Q,0,u,0);let p=n.getRgb(u,0);const m=X.makeHexColor(p[0],p[1],p[2]);d.push([0,m]);let y=1;Q[0]=r+B,C(Q,0,u,0);let w=n.getRgb(u,0),b=w[0]-p[0]+1,D=w[1]-p[1]+1,k=w[2]-p[2]+1,S=w[0]-p[0]-1,F=w[1]-p[1]-1,R=w[2]-p[2]-1;for(let t=2;t<840;t++){Q[0]=r+t*B,C(Q,0,u,0),E=n.getRgb(u,0);const e=t-f;if(b=Math.min(b,(E[0]-p[0]+1)/e),D=Math.min(D,(E[1]-p[1]+1)/e),k=Math.min(k,(E[2]-p[2]+1)/e),S=Math.max(S,(E[0]-p[0]-1)/e),F=Math.max(F,(E[1]-p[1]-1)/e),R=Math.max(R,(E[2]-p[2]-1)/e),!(S<=b&&F<=D&&R<=k)){const t=X.makeHexColor(w[0],w[1],w[2]);d.push([y/840,t]),b=E[0]-w[0]+1,D=E[1]-w[1]+1,k=E[2]-w[2]+1,S=E[0]-w[0]-1,F=E[1]-w[1]-1,R=E[2]-w[2]-1,f=y,p=w}y=t,w=E}const v=X.makeHexColor(w[0],w[1],w[2]);d.push([1,v]);let G="transparent";t.has("Background")&&(E=n.getRgb(t.get("Background"),0),G=X.makeHexColor(E[0],E[1],E[2])),c||(d.unshift([0,G]),d[1][0]+=ja.SMALL_NUMBER),h||(d.at(-1)[0]-=ja.SMALL_NUMBER,d.push([1,G])),this.colorStops=d}getIR(){const{coordsArr:t,shadingType:e}=this;let A,i,s,a,n;return 2===e?(i=[t[0],t[1]],s=[t[2],t[3]],a=null,n=null,A="axial"):3===e?(i=[t[0],t[1]],s=[t[3],t[4]],a=t[2],n=t[5],A="radial"):v(`getPattern type unknown: ${e}`),["RadialAxial",A,this.bbox,this.colorStops,i,s,a,n]}}class Xa{constructor(t,e){this.stream=t,this.context=e,this.buffer=0,this.bufferLength=0;const A=e.numComps;this.tmpCompsBuf=new Float32Array(A);const i=e.colorSpace.numComps;this.tmpCsCompsBuf=e.colorFn?new Float32Array(i):this.tmpCompsBuf}get hasData(){if(this.stream.end)return this.stream.pos<this.stream.end;if(this.bufferLength>0)return!0;const t=this.stream.getByte();return!(t<0||(this.buffer=t,this.bufferLength=8,0))}readBits(t){let e=this.buffer,A=this.bufferLength;if(32===t){if(0===A)return(this.stream.getByte()<<24|this.stream.getByte()<<16|this.stream.getByte()<<8|this.stream.getByte())>>>0;e=e<<24|this.stream.getByte()<<16|this.stream.getByte()<<8|this.stream.getByte();const t=this.stream.getByte();return this.buffer=t&(1<<A)-1,(e<<8-A|(255&t)>>A)>>>0}if(8===t&&0===A)return this.stream.getByte();for(;A<t;)e=e<<8|this.stream.getByte(),A+=8;return A-=t,this.bufferLength=A,this.buffer=e&(1<<A)-1,e>>A}align(){this.buffer=0,this.bufferLength=0}readFlag(){return this.readBits(this.context.bitsPerFlag)}readCoordinate(){const t=this.context.bitsPerCoordinate,e=this.readBits(t),A=this.readBits(t),i=this.context.decode,s=t<32?1/((1<<t)-1):2.3283064365386963e-10;return[e*s*(i[1]-i[0])+i[0],A*s*(i[3]-i[2])+i[2]]}readComponents(){const t=this.context.numComps,e=this.context.bitsPerComponent,A=e<32?1/((1<<e)-1):2.3283064365386963e-10,i=this.context.decode,s=this.tmpCompsBuf;for(let a=0,n=4;a<t;a++,n+=2){const t=this.readBits(e);s[a]=t*A*(i[n+1]-i[n])+i[n]}const a=this.tmpCsCompsBuf;return this.context.colorFn&&this.context.colorFn(s,0,a,0),this.context.colorSpace.getRgb(a,0)}}let za=Object.create(null);function $a(t){return za[t]||=function(t){const e=[];for(let A=0;A<=t;A++){const i=A/t,s=1-i;e.push(new Float32Array([s**3,3*i*s**2,3*i**2*s,i**3]))}return e}(t)}class tn extends ja{static MIN_SPLIT_PATCH_CHUNKS_AMOUNT=3;static MAX_SPLIT_PATCH_CHUNKS_AMOUNT=20;static TRIANGLE_DENSITY=20;constructor(t,e,A,i,s){if(super(),!(t instanceof mt))throw new q("Mesh data is not a stream");const a=t.dict;this.shadingType=a.get("ShadingType"),this.bbox=Tt(a.getArray("BBox"),null);const n=he.parse({cs:a.getRaw("CS")||a.getRaw("ColorSpace"),xref:e,resources:A,pdfFunctionFactory:i,localColorSpaceCache:s});this.background=a.has("Background")?n.getRgb(a.get("Background"),0):null;const r=a.getRaw("Function"),o=r?i.createFromArray(r):null;this.coords=[],this.colors=[],this.figures=[];const g={bitsPerCoordinate:a.get("BitsPerCoordinate"),bitsPerComponent:a.get("BitsPerComponent"),bitsPerFlag:a.get("BitsPerFlag"),decode:a.getArray("Decode"),colorFn:o,colorSpace:n,numComps:o?1:n.numComps},c=new Xa(t,g);let h=!1;switch(this.shadingType){case 4:this._decodeType4Shading(c);break;case 5:const t=0|a.get("VerticesPerRow");if(t<2)throw new q("Invalid VerticesPerRow");this._decodeType5Shading(c,t);break;case 6:this._decodeType6Shading(c),h=!0;break;case 7:this._decodeType7Shading(c),h=!0;break;default:v("Unsupported mesh type.")}if(h){this._updateBounds();for(let t=0,e=this.figures.length;t<e;t++)this._buildFigureFromPatch(t)}this._updateBounds(),this._packData()}_decodeType4Shading(t){const e=this.coords,A=this.colors,i=[],s=[];let a=0;for(;t.hasData;){const n=t.readFlag(),r=t.readCoordinate(),o=t.readComponents();if(0===a){if(!(0<=n&&n<=2))throw new q("Unknown type4 flag");switch(n){case 0:a=3;break;case 1:s.push(s.at(-2),s.at(-1)),a=1;break;case 2:s.push(s.at(-3),s.at(-1)),a=1}i.push(n)}s.push(e.length),e.push(r),A.push(o),a--,t.align()}this.figures.push({type:"triangles",coords:new Int32Array(s),colors:new Int32Array(s)})}_decodeType5Shading(t,e){const A=this.coords,i=this.colors,s=[];for(;t.hasData;){const e=t.readCoordinate(),a=t.readComponents();s.push(A.length),A.push(e),i.push(a)}this.figures.push({type:"lattice",coords:new Int32Array(s),colors:new Int32Array(s),verticesPerRow:e})}_decodeType6Shading(t){const e=this.coords,A=this.colors,i=new Int32Array(16),s=new Int32Array(4);for(;t.hasData;){const a=t.readFlag();if(!(0<=a&&a<=3))throw new q("Unknown type6 flag");const n=e.length;for(let A=0,i=0!==a?8:12;A<i;A++)e.push(t.readCoordinate());const r=A.length;for(let e=0,i=0!==a?2:4;e<i;e++)A.push(t.readComponents());let o,g,c,h;switch(a){case 0:i[12]=n+3,i[13]=n+4,i[14]=n+5,i[15]=n+6,i[8]=n+2,i[11]=n+7,i[4]=n+1,i[7]=n+8,i[0]=n,i[1]=n+11,i[2]=n+10,i[3]=n+9,s[2]=r+1,s[3]=r+2,s[0]=r,s[1]=r+3;break;case 1:o=i[12],g=i[13],c=i[14],h=i[15],i[12]=h,i[13]=n+0,i[14]=n+1,i[15]=n+2,i[8]=c,i[11]=n+3,i[4]=g,i[7]=n+4,i[0]=o,i[1]=n+7,i[2]=n+6,i[3]=n+5,o=s[2],g=s[3],s[2]=g,s[3]=r,s[0]=o,s[1]=r+1;break;case 2:o=i[15],g=i[11],i[12]=i[3],i[13]=n+0,i[14]=n+1,i[15]=n+2,i[8]=i[7],i[11]=n+3,i[4]=g,i[7]=n+4,i[0]=o,i[1]=n+7,i[2]=n+6,i[3]=n+5,o=s[3],s[2]=s[1],s[3]=r,s[0]=o,s[1]=r+1;break;case 3:i[12]=i[0],i[13]=n+0,i[14]=n+1,i[15]=n+2,i[8]=i[1],i[11]=n+3,i[4]=i[2],i[7]=n+4,i[0]=i[3],i[1]=n+7,i[2]=n+6,i[3]=n+5,s[2]=s[0],s[3]=r,s[0]=s[1],s[1]=r+1}i[5]=e.length,e.push([(-4*e[i[0]][0]-e[i[15]][0]+6*(e[i[4]][0]+e[i[1]][0])-2*(e[i[12]][0]+e[i[3]][0])+3*(e[i[13]][0]+e[i[7]][0]))/9,(-4*e[i[0]][1]-e[i[15]][1]+6*(e[i[4]][1]+e[i[1]][1])-2*(e[i[12]][1]+e[i[3]][1])+3*(e[i[13]][1]+e[i[7]][1]))/9]),i[6]=e.length,e.push([(-4*e[i[3]][0]-e[i[12]][0]+6*(e[i[2]][0]+e[i[7]][0])-2*(e[i[0]][0]+e[i[15]][0])+3*(e[i[4]][0]+e[i[14]][0]))/9,(-4*e[i[3]][1]-e[i[12]][1]+6*(e[i[2]][1]+e[i[7]][1])-2*(e[i[0]][1]+e[i[15]][1])+3*(e[i[4]][1]+e[i[14]][1]))/9]),i[9]=e.length,e.push([(-4*e[i[12]][0]-e[i[3]][0]+6*(e[i[8]][0]+e[i[13]][0])-2*(e[i[0]][0]+e[i[15]][0])+3*(e[i[11]][0]+e[i[1]][0]))/9,(-4*e[i[12]][1]-e[i[3]][1]+6*(e[i[8]][1]+e[i[13]][1])-2*(e[i[0]][1]+e[i[15]][1])+3*(e[i[11]][1]+e[i[1]][1]))/9]),i[10]=e.length,e.push([(-4*e[i[15]][0]-e[i[0]][0]+6*(e[i[11]][0]+e[i[14]][0])-2*(e[i[12]][0]+e[i[3]][0])+3*(e[i[2]][0]+e[i[8]][0]))/9,(-4*e[i[15]][1]-e[i[0]][1]+6*(e[i[11]][1]+e[i[14]][1])-2*(e[i[12]][1]+e[i[3]][1])+3*(e[i[2]][1]+e[i[8]][1]))/9]),this.figures.push({type:"patch",coords:new Int32Array(i),colors:new Int32Array(s)})}}_decodeType7Shading(t){const e=this.coords,A=this.colors,i=new Int32Array(16),s=new Int32Array(4);for(;t.hasData;){const a=t.readFlag();if(!(0<=a&&a<=3))throw new q("Unknown type7 flag");const n=e.length;for(let A=0,i=0!==a?12:16;A<i;A++)e.push(t.readCoordinate());const r=A.length;for(let e=0,i=0!==a?2:4;e<i;e++)A.push(t.readComponents());let o,g,c,h;switch(a){case 0:i[12]=n+3,i[13]=n+4,i[14]=n+5,i[15]=n+6,i[8]=n+2,i[9]=n+13,i[10]=n+14,i[11]=n+7,i[4]=n+1,i[5]=n+12,i[6]=n+15,i[7]=n+8,i[0]=n,i[1]=n+11,i[2]=n+10,i[3]=n+9,s[2]=r+1,s[3]=r+2,s[0]=r,s[1]=r+3;break;case 1:o=i[12],g=i[13],c=i[14],h=i[15],i[12]=h,i[13]=n+0,i[14]=n+1,i[15]=n+2,i[8]=c,i[9]=n+9,i[10]=n+10,i[11]=n+3,i[4]=g,i[5]=n+8,i[6]=n+11,i[7]=n+4,i[0]=o,i[1]=n+7,i[2]=n+6,i[3]=n+5,o=s[2],g=s[3],s[2]=g,s[3]=r,s[0]=o,s[1]=r+1;break;case 2:o=i[15],g=i[11],i[12]=i[3],i[13]=n+0,i[14]=n+1,i[15]=n+2,i[8]=i[7],i[9]=n+9,i[10]=n+10,i[11]=n+3,i[4]=g,i[5]=n+8,i[6]=n+11,i[7]=n+4,i[0]=o,i[1]=n+7,i[2]=n+6,i[3]=n+5,o=s[3],s[2]=s[1],s[3]=r,s[0]=o,s[1]=r+1;break;case 3:i[12]=i[0],i[13]=n+0,i[14]=n+1,i[15]=n+2,i[8]=i[1],i[9]=n+9,i[10]=n+10,i[11]=n+3,i[4]=i[2],i[5]=n+8,i[6]=n+11,i[7]=n+4,i[0]=i[3],i[1]=n+7,i[2]=n+6,i[3]=n+5,s[2]=s[0],s[3]=r,s[0]=s[1],s[1]=r+1}this.figures.push({type:"patch",coords:new Int32Array(i),colors:new Int32Array(s)})}}_buildFigureFromPatch(t){const e=this.figures[t];G("patch"===e.type,"Unexpected patch mesh figure");const A=this.coords,i=this.colors,s=e.coords,a=e.colors,n=Math.min(A[s[0]][0],A[s[3]][0],A[s[12]][0],A[s[15]][0]),r=Math.min(A[s[0]][1],A[s[3]][1],A[s[12]][1],A[s[15]][1]),o=Math.max(A[s[0]][0],A[s[3]][0],A[s[12]][0],A[s[15]][0]),g=Math.max(A[s[0]][1],A[s[3]][1],A[s[12]][1],A[s[15]][1]);let c=Math.ceil((o-n)*tn.TRIANGLE_DENSITY/(this.bounds[2]-this.bounds[0]));c=Math.max(tn.MIN_SPLIT_PATCH_CHUNKS_AMOUNT,Math.min(tn.MAX_SPLIT_PATCH_CHUNKS_AMOUNT,c));let h=Math.ceil((g-r)*tn.TRIANGLE_DENSITY/(this.bounds[3]-this.bounds[1]));h=Math.max(tn.MIN_SPLIT_PATCH_CHUNKS_AMOUNT,Math.min(tn.MAX_SPLIT_PATCH_CHUNKS_AMOUNT,h));const l=c+1,I=new Int32Array((h+1)*l),C=new Int32Array((h+1)*l);let B=0;const d=new Uint8Array(3),u=new Uint8Array(3),Q=i[a[0]],E=i[a[1]],f=i[a[2]],p=i[a[3]],m=$a(h),y=$a(c);for(let t=0;t<=h;t++){d[0]=(Q[0]*(h-t)+f[0]*t)/h|0,d[1]=(Q[1]*(h-t)+f[1]*t)/h|0,d[2]=(Q[2]*(h-t)+f[2]*t)/h|0,u[0]=(E[0]*(h-t)+p[0]*t)/h|0,u[1]=(E[1]*(h-t)+p[1]*t)/h|0,u[2]=(E[2]*(h-t)+p[2]*t)/h|0;for(let e=0;e<=c;e++,B++){if(!(0!==t&&t!==h||0!==e&&e!==c))continue;let a=0,n=0,r=0;for(let i=0;i<=3;i++)for(let o=0;o<=3;o++,r++){const g=m[t][i]*y[e][o];a+=A[s[r]][0]*g,n+=A[s[r]][1]*g}I[B]=A.length,A.push([a,n]),C[B]=i.length;const o=new Uint8Array(3);o[0]=(d[0]*(c-e)+u[0]*e)/c|0,o[1]=(d[1]*(c-e)+u[1]*e)/c|0,o[2]=(d[2]*(c-e)+u[2]*e)/c|0,i.push(o)}}I[0]=s[0],C[0]=a[0],I[c]=s[3],C[c]=a[1],I[l*h]=s[12],C[l*h]=a[2],I[l*h+c]=s[15],C[l*h+c]=a[3],this.figures[t]={type:"lattice",coords:I,colors:C,verticesPerRow:l}}_updateBounds(){let t=this.coords[0][0],e=this.coords[0][1],A=t,i=e;for(let s=1,a=this.coords.length;s<a;s++){const a=this.coords[s][0],n=this.coords[s][1];t=t>a?a:t,e=e>n?n:e,A=A<a?a:A,i=i<n?n:i}this.bounds=[t,e,A,i]}_packData(){let t,e,A,i;const s=this.coords,a=new Float32Array(2*s.length);for(t=0,A=0,e=s.length;t<e;t++){const e=s[t];a[A++]=e[0],a[A++]=e[1]}this.coords=a;const n=this.colors,r=new Uint8Array(3*n.length);for(t=0,A=0,e=n.length;t<e;t++){const e=n[t];r[A++]=e[0],r[A++]=e[1],r[A++]=e[2]}this.colors=r;const o=this.figures;for(t=0,e=o.length;t<e;t++){const e=o[t],s=e.coords,a=e.colors;for(A=0,i=s.length;A<i;A++)s[A]*=2,a[A]*=3}}getIR(){const{bounds:t}=this;if(t[2]-t[0]==0||t[3]-t[1]==0)throw new q(`Invalid MeshShading bounds: [${t}].`);return["Mesh",this.shadingType,this.coords,this.colors,this.figures,t,this.bbox,this.background]}}class en extends ja{getIR(){return["Dummy"]}}function An(t,e,A){const i=Jt(e.getArray("Matrix"),r),s=Tt(e.getArray("BBox"),null);if(!s||s[2]-s[0]==0||s[3]-s[1]==0)throw new q("Invalid getTilingPatternIR /BBox array.");const a=e.get("XStep");if("number"!=typeof a)throw new q("Invalid getTilingPatternIR /XStep value.");const n=e.get("YStep");if("number"!=typeof n)throw new q("Invalid getTilingPatternIR /YStep value.");const o=e.get("PaintType");if(!Number.isInteger(o))throw new q("Invalid getTilingPatternIR /PaintType value.");const g=e.get("TilingType");if(!Number.isInteger(g))throw new q("Invalid getTilingPatternIR /TilingType value.");return["TilingPattern",A,t,i,s,a,n,o,g]}const sn=[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],an={lineHeight:1.2207,lineGap:.2207},nn=[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],rn={lineHeight:1.2207,lineGap:.2207},on=[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],gn={lineHeight:1.2207,lineGap:.2207},cn=[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],hn={lineHeight:1.2207,lineGap:.2207},ln=[.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],In={lineHeight:1.2,lineGap:.2},Cn=[.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],Bn={lineHeight:1.35,lineGap:.2},dn=[.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],un={lineHeight:1.35,lineGap:.2},Qn=[.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],En={lineHeight:1.2,lineGap:.2},fn=[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],pn=[-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],mn=[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],yn=[-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],wn=[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],bn=[-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],Dn=[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],kn=[-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],Sn=[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],Fn={lineHeight:1.2,lineGap:.2},Rn=[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],xn={lineHeight:1.2,lineGap:.2},Nn=[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],vn={lineHeight:1.2,lineGap:.2},Gn=[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],Mn={lineHeight:1.2,lineGap:.2},Ln=[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],Un={lineHeight:1.33008,lineGap:0},Hn=[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],Jn={lineHeight:1.33008,lineGap:0},Yn=[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],Tn={lineHeight:1.33008,lineGap:0},Kn=[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],qn={lineHeight:1.33008,lineGap:0},Pn=wt((function(t){t["MyriadPro-Regular"]=t["PdfJS-Fallback-Regular"]={name:"LiberationSans-Regular",factors:Gn,baseWidths:Dn,baseMapping:kn,metrics:Mn},t["MyriadPro-Bold"]=t["PdfJS-Fallback-Bold"]={name:"LiberationSans-Bold",factors:Sn,baseWidths:fn,baseMapping:pn,metrics:Fn},t["MyriadPro-It"]=t["MyriadPro-Italic"]=t["PdfJS-Fallback-Italic"]={name:"LiberationSans-Italic",factors:Nn,baseWidths:wn,baseMapping:bn,metrics:vn},t["MyriadPro-BoldIt"]=t["MyriadPro-BoldItalic"]=t["PdfJS-Fallback-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:Rn,baseWidths:mn,baseMapping:yn,metrics:xn},t.ArialMT=t.Arial=t["Arial-Regular"]={name:"LiberationSans-Regular",baseWidths:Dn,baseMapping:kn},t["Arial-BoldMT"]=t["Arial-Bold"]={name:"LiberationSans-Bold",baseWidths:fn,baseMapping:pn},t["Arial-ItalicMT"]=t["Arial-Italic"]={name:"LiberationSans-Italic",baseWidths:wn,baseMapping:bn},t["Arial-BoldItalicMT"]=t["Arial-BoldItalic"]={name:"LiberationSans-BoldItalic",baseWidths:mn,baseMapping:yn},t["Calibri-Regular"]={name:"LiberationSans-Regular",factors:cn,baseWidths:Dn,baseMapping:kn,metrics:hn},t["Calibri-Bold"]={name:"LiberationSans-Bold",factors:sn,baseWidths:fn,baseMapping:pn,metrics:an},t["Calibri-Italic"]={name:"LiberationSans-Italic",factors:on,baseWidths:wn,baseMapping:bn,metrics:gn},t["Calibri-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:nn,baseWidths:mn,baseMapping:yn,metrics:rn},t["Segoeui-Regular"]={name:"LiberationSans-Regular",factors:Kn,baseWidths:Dn,baseMapping:kn,metrics:qn},t["Segoeui-Bold"]={name:"LiberationSans-Bold",factors:Ln,baseWidths:fn,baseMapping:pn,metrics:Un},t["Segoeui-Italic"]={name:"LiberationSans-Italic",factors:Yn,baseWidths:wn,baseMapping:bn,metrics:Tn},t["Segoeui-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:Hn,baseWidths:mn,baseMapping:yn,metrics:Jn},t["Helvetica-Regular"]=t.Helvetica={name:"LiberationSans-Regular",factors:Qn,baseWidths:Dn,baseMapping:kn,metrics:En},t["Helvetica-Bold"]={name:"LiberationSans-Bold",factors:ln,baseWidths:fn,baseMapping:pn,metrics:In},t["Helvetica-Italic"]={name:"LiberationSans-Italic",factors:dn,baseWidths:wn,baseMapping:bn,metrics:un},t["Helvetica-BoldItalic"]={name:"LiberationSans-BoldItalic",factors:Cn,baseWidths:mn,baseMapping:yn,metrics:Bn}}));function _n(t){const e=Bs(t);return Pn()[e]}function On(t){const e=function(t){const e=_n(t);if(!e)return null;const{baseWidths:A,baseMapping:i,factors:s}=e,a=s?A.map(((t,e)=>t*s[e])):A;let n,r=-2;const o=[];for(const[t,e]of i.map(((t,e)=>[t,e])).sort((([t],[e])=>t-e)))-1!==t&&(t===r+1?(n.push(a[e]),r+=1):(r=t,n=[a[e]],o.push(t,n)));return o}(t),A=new Ct(null);A.set("BaseFont",ht.get(t)),A.set("Type",ht.get("Font")),A.set("Subtype",ht.get("CIDFontType2")),A.set("Encoding",ht.get("Identity-H")),A.set("CIDToGIDMap",ht.get("Identity")),A.set("W",e),A.set("FirstChar",e[0]),A.set("LastChar",e.at(-2)+e.at(-1).length-1);const i=new Ct(null);A.set("FontDescriptor",i);const s=new Ct(null);return s.set("Ordering","Identity"),s.set("Registry","Adobe"),s.set("Supplement",0),A.set("CIDSystemInfo",s),A}class Wn{constructor(t){this.lexer=t,this.operators=[],this.token=null,this.prev=null}nextToken(){this.prev=this.token,this.token=this.lexer.getToken()}accept(t){return this.token.type===t&&(this.nextToken(),!0)}expect(t){if(this.accept(t))return!0;throw new q(`Unexpected symbol: found ${this.token.type} expected ${t}.`)}parse(){return this.nextToken(),this.expect(Zn.LBRACE),this.parseBlock(),this.expect(Zn.RBRACE),this.operators}parseBlock(){for(;;)if(this.accept(Zn.NUMBER))this.operators.push(this.prev.value);else if(this.accept(Zn.OPERATOR))this.operators.push(this.prev.value);else{if(!this.accept(Zn.LBRACE))return;this.parseCondition()}}parseCondition(){const t=this.operators.length;if(this.operators.push(null,null),this.parseBlock(),this.expect(Zn.RBRACE),this.accept(Zn.IF))this.operators[t]=this.operators.length,this.operators[t+1]="jz";else{if(!this.accept(Zn.LBRACE))throw new q("PS Function: error parsing conditional.");{const e=this.operators.length;this.operators.push(null,null);const A=this.operators.length;this.parseBlock(),this.expect(Zn.RBRACE),this.expect(Zn.IFELSE),this.operators[e]=this.operators.length,this.operators[e+1]="j",this.operators[t]=A,this.operators[t+1]="jz"}}}}const Zn={LBRACE:0,RBRACE:1,NUMBER:2,OPERATOR:3,IF:4,IFELSE:5};class jn{static get opCache(){return L(this,"opCache",Object.create(null))}constructor(t,e){this.type=t,this.value=e}static getOperator(t){return jn.opCache[t]||=new jn(Zn.OPERATOR,t)}static get LBRACE(){return L(this,"LBRACE",new jn(Zn.LBRACE,"{"))}static get RBRACE(){return L(this,"RBRACE",new jn(Zn.RBRACE,"}"))}static get IF(){return L(this,"IF",new jn(Zn.IF,"IF"))}static get IFELSE(){return L(this,"IFELSE",new jn(Zn.IFELSE,"IFELSE"))}}class Vn{constructor(t){this.stream=t,this.nextChar(),this.strBuf=[]}nextChar(){return this.currentChar=this.stream.getByte()}getToken(){let t=!1,e=this.currentChar;for(;;){if(e<0)return rt;if(t)10!==e&&13!==e||(t=!1);else if(37===e)t=!0;else if(!Ut(e))break;e=this.nextChar()}switch(0|e){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 jn(Zn.NUMBER,this.getNumber());case 123:return this.nextChar(),jn.LBRACE;case 125:return this.nextChar(),jn.RBRACE}const A=this.strBuf;for(A.length=0,A[0]=String.fromCharCode(e);(e=this.nextChar())>=0&&(e>=65&&e<=90||e>=97&&e<=122);)A.push(String.fromCharCode(e));const i=A.join("");switch(i.toLowerCase()){case"if":return jn.IF;case"ifelse":return jn.IFELSE;default:return jn.getOperator(i)}}getNumber(){let t=this.currentChar;const e=this.strBuf;for(e.length=0,e[0]=String.fromCharCode(t);(t=this.nextChar())>=0&&(t>=48&&t<=57||45===t||46===t);)e.push(String.fromCharCode(t));const A=parseFloat(e.join(""));if(isNaN(A))throw new q(`Invalid floating point number: ${A}`);return A}}class Xn{constructor(t){this.constructor===Xn&&v("Cannot initialize BaseLocalCache."),this._onlyRefs=!0===t?.onlyRefs,this._onlyRefs||(this._nameRefMap=new Map,this._imageMap=new Map),this._imageCache=new ut}getByName(t){this._onlyRefs&&v("Should not call `getByName` method.");const e=this._nameRefMap.get(t);return e?this.getByRef(e):this._imageMap.get(t)||null}getByRef(t){return this._imageCache.get(t)||null}set(t,e,A){v("Abstract method `set` called.")}}class zn extends Xn{set(t,e=null,A){if("string"!=typeof t)throw new Error('LocalImageCache.set - expected "name" argument.');if(e){if(this._imageCache.has(e))return;this._nameRefMap.set(t,e),this._imageCache.put(e,A)}else this._imageMap.has(t)||this._imageMap.set(t,A)}}class $n extends Xn{set(t=null,e=null,A){if("string"!=typeof t&&!e)throw new Error('LocalColorSpaceCache.set - expected "name" and/or "ref" argument.');if(e){if(this._imageCache.has(e))return;null!==t&&this._nameRefMap.set(t,e),this._imageCache.put(e,A)}else this._imageMap.has(t)||this._imageMap.set(t,A)}}class tr extends Xn{constructor(t){super({onlyRefs:!0})}set(t=null,e,A){if(!e)throw new Error('LocalFunctionCache.set - expected "ref" argument.');this._imageCache.has(e)||this._imageCache.put(e,A)}}class er extends Xn{set(t,e=null,A){if("string"!=typeof t)throw new Error('LocalGStateCache.set - expected "name" argument.');if(e){if(this._imageCache.has(e))return;this._nameRefMap.set(t,e),this._imageCache.put(e,A)}else this._imageMap.has(t)||this._imageMap.set(t,A)}}class Ar extends Xn{constructor(t){super({onlyRefs:!0})}set(t=null,e,A){if(!e)throw new Error('LocalTilingPatternCache.set - expected "ref" argument.');this._imageCache.has(e)||this._imageCache.put(e,A)}}class ir extends Xn{constructor(t){super({onlyRefs:!0})}set(t=null,e,A){if(!e)throw new Error('RegionalImageCache.set - expected "ref" argument.');this._imageCache.has(e)||this._imageCache.put(e,A)}}class sr{static NUM_PAGES_THRESHOLD=2;static MIN_IMAGES_TO_CACHE=10;static MAX_BYTE_SIZE=5e7;#b=new dt;constructor(){this._refCache=new ut,this._imageCache=new ut}get#D(){let t=0;for(const e of this._imageCache)t+=e.byteSize;return t}get#k(){return!(this._imageCache.size<sr.MIN_IMAGES_TO_CACHE||this.#D<sr.MAX_BYTE_SIZE)}shouldCache(t,e){let A=this._refCache.get(t);return A||(A=new Set,this._refCache.put(t,A)),A.add(e),!(A.size<sr.NUM_PAGES_THRESHOLD||!this._imageCache.has(t)&&this.#k)}addDecodeFailed(t){this.#b.put(t)}hasDecodeFailed(t){return this.#b.has(t)}addByteSize(t,e){const A=this._imageCache.get(t);A&&(A.byteSize||(A.byteSize=e))}getData(t,e){const A=this._refCache.get(t);if(!A)return null;if(A.size<sr.NUM_PAGES_THRESHOLD)return null;const i=this._imageCache.get(t);return i?(A.add(e),i):null}setData(t,e){if(!this._refCache.has(t))throw new Error('GlobalImageCache.setData - expected "shouldCache" to have been called.');this._imageCache.has(t)||(this.#k?N("GlobalImageCache.setData - cache limit reached."):this._imageCache.put(t,e))}clear(t=!1){t||(this.#b.clear(),this._refCache.clear()),this._imageCache.clear()}}class ar{constructor({xref:t,isEvalSupported:e=!0}){this.xref=t,this.isEvalSupported=!1!==e}create(t){const e=this.getCached(t);if(e)return e;const A=rr.parse({xref:this.xref,isEvalSupported:this.isEvalSupported,fn:t instanceof Bt?this.xref.fetch(t):t});return this._cache(t,A),A}createFromArray(t){const e=this.getCached(t);if(e)return e;const A=rr.parseArray({xref:this.xref,isEvalSupported:this.isEvalSupported,fnObj:t instanceof Bt?this.xref.fetch(t):t});return this._cache(t,A),A}getCached(t){let e;if(t instanceof Bt?e=t:t instanceof Ct?e=t.objId:t instanceof mt&&(e=t.dict?.objId),e){const t=this._localFunctionCache.getByRef(e);if(t)return t}return null}_cache(t,e){if(!e)throw new Error('PDFFunctionFactory._cache - expected "parsedFunction" argument.');let A;t instanceof Bt?A=t:t instanceof Ct?A=t.objId:t instanceof mt&&(A=t.dict?.objId),A&&this._localFunctionCache.set(null,A,e)}get _localFunctionCache(){return L(this,"_localFunctionCache",new tr)}}function nr(t){return Array.isArray(t)?Ht(t,null)?t:t.map((t=>+t)):null}class rr{static getSampleArray(t,e,A,i){let s,a,n=1;for(s=0,a=t.length;s<a;s++)n*=t[s];n*=e;const r=new Array(n);let o=0,g=0;const c=1/(2**A-1),h=i.getBytes((n*A+7)/8);let l=0;for(s=0;s<n;s++){for(;o<A;)g<<=8,g|=h[l++],o+=8;o-=A,r[s]=(g>>o)*c,g&=(1<<o)-1}return r}static parse({xref:t,isEvalSupported:e,fn:A}){const i=A.dict||A;switch(i.get("FunctionType")){case 0:return this.constructSampled({xref:t,isEvalSupported:e,fn:A,dict:i});case 1:break;case 2:return this.constructInterpolated({xref:t,isEvalSupported:e,dict:i});case 3:return this.constructStiched({xref:t,isEvalSupported:e,dict:i});case 4:return this.constructPostScript({xref:t,isEvalSupported:e,fn:A,dict:i})}throw new q("Unknown type of function")}static parseArray({xref:t,isEvalSupported:e,fnObj:A}){if(!Array.isArray(A))return this.parse({xref:t,isEvalSupported:e,fn:A});const i=[];for(const s of A)i.push(this.parse({xref:t,isEvalSupported:e,fn:t.fetchIfRef(s)}));return function(t,e,A,s){for(let a=0,n=i.length;a<n;a++)i[a](t,e,A,s+a)}}static constructSampled({xref:t,isEvalSupported:e,fn:A,dict:i}){function s(t){const e=t.length,A=[];let i=0;for(let s=0;s<e;s+=2)A[i++]=[t[s],t[s+1]];return A}function a(t,e,A,i,s){return i+(s-i)/(A-e)*(t-e)}let n=nr(i.getArray("Domain")),r=nr(i.getArray("Range"));if(!n||!r)throw new q("No domain or range");const o=n.length/2,g=r.length/2;n=s(n),r=s(r);const c=nr(i.getArray("Size")),h=i.get("BitsPerSample"),l=i.get("Order")||1;1!==l&&x("No support for cubic spline interpolation: "+l);let I=nr(i.getArray("Encode"));if(I)I=s(I);else{I=[];for(let t=0;t<o;++t)I.push([0,c[t]-1])}let C=nr(i.getArray("Decode"));C=C?s(C):r;const B=this.getSampleArray(c,g,h,A);return function(t,e,A,i){const s=1<<o,h=new Float64Array(s),l=new Uint32Array(s);let d,u;for(u=0;u<s;u++)h[u]=1;let Q=g,E=1;for(d=0;d<o;++d){const A=n[d][0],i=n[d][1];let r=a(Math.min(Math.max(t[e+d],A),i),A,i,I[d][0],I[d][1]);const o=c[d];r=Math.min(Math.max(r,0),o-1);const g=r<o-1?Math.floor(r):r-1,C=g+1-r,B=r-g,f=g*Q,p=f+Q;for(u=0;u<s;u++)u&E?(h[u]*=B,l[u]+=p):(h[u]*=C,l[u]+=f);Q*=o,E<<=1}for(u=0;u<g;++u){let t=0;for(d=0;d<s;d++)t+=B[l[d]+u]*h[d];t=a(t,0,1,C[u][0],C[u][1]),A[i+u]=Math.min(Math.max(t,r[u][0]),r[u][1])}}}static constructInterpolated({xref:t,isEvalSupported:e,dict:A}){const i=nr(A.getArray("C0"))||[0],s=nr(A.getArray("C1"))||[1],a=A.get("N"),n=[];for(let t=0,e=i.length;t<e;++t)n.push(s[t]-i[t]);const r=n.length;return function(t,e,A,s){const o=1===a?t[e]:t[e]**a;for(let t=0;t<r;++t)A[s+t]=i[t]+o*n[t]}}static constructStiched({xref:t,isEvalSupported:e,dict:A}){const i=nr(A.getArray("Domain"));if(!i)throw new q("No domain");if(1!=i.length/2)throw new q("Bad domain for stiched function");const s=[];for(const i of A.get("Functions"))s.push(this.parse({xref:t,isEvalSupported:e,fn:t.fetchIfRef(i)}));const a=nr(A.getArray("Bounds")),n=nr(A.getArray("Encode")),r=new Float32Array(1);return function(t,e,A,o){const g=function(t,e,A){return t>A?t=A:t<e&&(t=e),t}(t[e],i[0],i[1]),c=a.length;let h;for(h=0;h<c&&!(g<a[h]);++h);let l=i[0];h>0&&(l=a[h-1]);let I=i[1];h<a.length&&(I=a[h]);const C=n[2*h],B=n[2*h+1];r[0]=l===I?C:C+(g-l)*(B-C)/(I-l),s[h](r,0,A,o)}}static constructPostScript({xref:t,isEvalSupported:e,fn:A,dict:i}){const s=nr(i.getArray("Domain")),a=nr(i.getArray("Range"));if(!s)throw new q("No domain.");if(!a)throw new q("No range.");const n=new Vn(A),r=new Wn(n).parse();if(e&&j.isEvalSupported){const t=(new yr).compile(r,s,a);if(t)return new Function("src","srcOffset","dest","destOffset",t)}x("Unable to compile PS function");const o=a.length>>1,g=s.length>>1,c=new cr(r),h=Object.create(null);let l=8192;const I=new Float32Array(g);return function(t,e,A,i){let s,n,r="";const C=I;for(s=0;s<g;s++)n=t[e+s],C[s]=n,r+=n+"_";const B=h[r];if(void 0!==B)return void A.set(B,i);const d=new Float32Array(o),u=c.execute(C),Q=u.length-o;for(s=0;s<o;s++){n=u[Q+s];let t=a[2*s];n<t?n=t:(t=a[2*s+1],n>t&&(n=t)),d[s]=n}l>0&&(l--,h[r]=d),A.set(d,i)}}}function or(t){let e;if(t instanceof Ct)e=t;else{if(!(t instanceof mt))return!1;e=t.dict}return e.has("FunctionType")}class gr{static MAX_STACK_SIZE=100;constructor(t){this.stack=t?Array.from(t):[]}push(t){if(this.stack.length>=gr.MAX_STACK_SIZE)throw new Error("PostScript function stack overflow.");this.stack.push(t)}pop(){if(this.stack.length<=0)throw new Error("PostScript function stack underflow.");return this.stack.pop()}copy(t){if(this.stack.length+t>=gr.MAX_STACK_SIZE)throw new Error("PostScript function stack overflow.");const e=this.stack;for(let A=e.length-t,i=t-1;i>=0;i--,A++)e.push(e[A])}index(t){this.push(this.stack[this.stack.length-t-1])}roll(t,e){const A=this.stack,i=A.length-t,s=A.length-1,a=i+(e-Math.floor(e/t)*t);for(let t=i,e=s;t<e;t++,e--){const i=A[t];A[t]=A[e],A[e]=i}for(let t=i,e=a-1;t<e;t++,e--){const i=A[t];A[t]=A[e],A[e]=i}for(let t=a,e=s;t<e;t++,e--){const i=A[t];A[t]=A[e],A[e]=i}}}class cr{constructor(t){this.operators=t}execute(t){const e=new gr(t);let A=0;const i=this.operators,s=i.length;let a,n,r;for(;A<s;)if(a=i[A++],"number"!=typeof a)switch(a){case"jz":r=e.pop(),n=e.pop(),n||(A=r);break;case"j":n=e.pop(),A=n;break;case"abs":n=e.pop(),e.push(Math.abs(n));break;case"add":r=e.pop(),n=e.pop(),e.push(n+r);break;case"and":r=e.pop(),n=e.pop(),"boolean"==typeof n&&"boolean"==typeof r?e.push(n&&r):e.push(n&r);break;case"atan":r=e.pop(),n=e.pop(),n=Math.atan2(n,r)/Math.PI*180,n<0&&(n+=360),e.push(n);break;case"bitshift":r=e.pop(),n=e.pop(),n>0?e.push(n<<r):e.push(n>>r);break;case"ceiling":n=e.pop(),e.push(Math.ceil(n));break;case"copy":n=e.pop(),e.copy(n);break;case"cos":n=e.pop(),e.push(Math.cos(n%360/180*Math.PI));break;case"cvi":n=0|e.pop(),e.push(n);break;case"cvr":break;case"div":r=e.pop(),n=e.pop(),e.push(n/r);break;case"dup":e.copy(1);break;case"eq":r=e.pop(),n=e.pop(),e.push(n===r);break;case"exch":e.roll(2,1);break;case"exp":r=e.pop(),n=e.pop(),e.push(n**r);break;case"false":e.push(!1);break;case"floor":n=e.pop(),e.push(Math.floor(n));break;case"ge":r=e.pop(),n=e.pop(),e.push(n>=r);break;case"gt":r=e.pop(),n=e.pop(),e.push(n>r);break;case"idiv":r=e.pop(),n=e.pop(),e.push(n/r|0);break;case"index":n=e.pop(),e.index(n);break;case"le":r=e.pop(),n=e.pop(),e.push(n<=r);break;case"ln":n=e.pop(),e.push(Math.log(n));break;case"log":n=e.pop(),e.push(Math.log10(n));break;case"lt":r=e.pop(),n=e.pop(),e.push(n<r);break;case"mod":r=e.pop(),n=e.pop(),e.push(n%r);break;case"mul":r=e.pop(),n=e.pop(),e.push(n*r);break;case"ne":r=e.pop(),n=e.pop(),e.push(n!==r);break;case"neg":n=e.pop(),e.push(-n);break;case"not":n=e.pop(),"boolean"==typeof n?e.push(!n):e.push(~n);break;case"or":r=e.pop(),n=e.pop(),"boolean"==typeof n&&"boolean"==typeof r?e.push(n||r):e.push(n|r);break;case"pop":e.pop();break;case"roll":r=e.pop(),n=e.pop(),e.roll(n,r);break;case"round":n=e.pop(),e.push(Math.round(n));break;case"sin":n=e.pop(),e.push(Math.sin(n%360/180*Math.PI));break;case"sqrt":n=e.pop(),e.push(Math.sqrt(n));break;case"sub":r=e.pop(),n=e.pop(),e.push(n-r);break;case"true":e.push(!0);break;case"truncate":n=e.pop(),n=n<0?Math.ceil(n):Math.floor(n),e.push(n);break;case"xor":r=e.pop(),n=e.pop(),"boolean"==typeof n&&"boolean"==typeof r?e.push(n!==r):e.push(n^r);break;default:throw new q(`Unknown operator ${a}`)}else e.push(a);return e.stack}}class hr{constructor(t){this.type=t}visit(t){v("abstract method")}}class lr extends hr{constructor(t,e,A){super("args"),this.index=t,this.min=e,this.max=A}visit(t){t.visitArgument(this)}}class Ir extends hr{constructor(t){super("literal"),this.number=t,this.min=t,this.max=t}visit(t){t.visitLiteral(this)}}class Cr extends hr{constructor(t,e,A,i,s){super("binary"),this.op=t,this.arg1=e,this.arg2=A,this.min=i,this.max=s}visit(t){t.visitBinaryOperation(this)}}class Br extends hr{constructor(t,e){super("max"),this.arg=t,this.min=t.min,this.max=e}visit(t){t.visitMin(this)}}class dr extends hr{constructor(t,e,A){super("var"),this.index=t,this.min=e,this.max=A}visit(t){t.visitVariable(this)}}class ur extends hr{constructor(t,e){super("definition"),this.variable=t,this.arg=e}visit(t){t.visitVariableDefinition(this)}}class Qr{constructor(){this.parts=[]}visitArgument(t){this.parts.push("Math.max(",t.min,", Math.min(",t.max,", src[srcOffset + ",t.index,"]))")}visitVariable(t){this.parts.push("v",t.index)}visitLiteral(t){this.parts.push(t.number)}visitBinaryOperation(t){this.parts.push("("),t.arg1.visit(this),this.parts.push(" ",t.op," "),t.arg2.visit(this),this.parts.push(")")}visitVariableDefinition(t){this.parts.push("var "),t.variable.visit(this),this.parts.push(" = "),t.arg.visit(this),this.parts.push(";")}visitMin(t){this.parts.push("Math.min("),t.arg.visit(this),this.parts.push(", ",t.max,")")}toString(){return this.parts.join("")}}function Er(t,e){return"literal"===e.type&&0===e.number?t:"literal"===t.type&&0===t.number?e:"literal"===e.type&&"literal"===t.type?new Ir(t.number+e.number):new Cr("+",t,e,t.min+e.min,t.max+e.max)}function fr(t,e){if("literal"===e.type){if(0===e.number)return new Ir(0);if(1===e.number)return t;if("literal"===t.type)return new Ir(t.number*e.number)}if("literal"===t.type){if(0===t.number)return new Ir(0);if(1===t.number)return e}const A=Math.min(t.min*e.min,t.min*e.max,t.max*e.min,t.max*e.max),i=Math.max(t.min*e.min,t.min*e.max,t.max*e.min,t.max*e.max);return new Cr("*",t,e,A,i)}function pr(t,e){if("literal"===e.type){if(0===e.number)return t;if("literal"===t.type)return new Ir(t.number-e.number)}return"binary"===e.type&&"-"===e.op&&"literal"===t.type&&1===t.number&&"literal"===e.arg1.type&&1===e.arg1.number?e.arg2:new Cr("-",t,e,t.min-e.max,t.max-e.min)}function mr(t,e){return t.min>=e?new Ir(e):t.max<=e?t:new Br(t,e)}class yr{compile(t,e,A){const i=[],s=[],a=e.length>>1,n=A.length>>1;let r,o,g,c,h,l,I,C,B=0;for(let t=0;t<a;t++)i.push(new lr(t,e[2*t],e[2*t+1]));for(let e=0,A=t.length;e<A;e++)if(C=t[e],"number"!=typeof C)switch(C){case"add":if(i.length<2)return null;c=i.pop(),g=i.pop(),i.push(Er(g,c));break;case"cvr":if(i.length<1)return null;break;case"mul":if(i.length<2)return null;c=i.pop(),g=i.pop(),i.push(fr(g,c));break;case"sub":if(i.length<2)return null;c=i.pop(),g=i.pop(),i.push(pr(g,c));break;case"exch":if(i.length<2)return null;h=i.pop(),l=i.pop(),i.push(h,l);break;case"pop":if(i.length<1)return null;i.pop();break;case"index":if(i.length<1)return null;if(g=i.pop(),"literal"!==g.type)return null;if(r=g.number,r<0||!Number.isInteger(r)||i.length<r)return null;if(h=i[i.length-r-1],"literal"===h.type||"var"===h.type){i.push(h);break}I=new dr(B++,h.min,h.max),i[i.length-r-1]=I,i.push(I),s.push(new ur(I,h));break;case"dup":if(i.length<1)return null;if("number"==typeof t[e+1]&&"gt"===t[e+2]&&t[e+3]===e+7&&"jz"===t[e+4]&&"pop"===t[e+5]&&t[e+6]===t[e+1]){g=i.pop(),i.push(mr(g,t[e+1])),e+=6;break}if(h=i.at(-1),"literal"===h.type||"var"===h.type){i.push(h);break}I=new dr(B++,h.min,h.max),i[i.length-1]=I,i.push(I),s.push(new ur(I,h));break;case"roll":if(i.length<2)return null;if(c=i.pop(),g=i.pop(),"literal"!==c.type||"literal"!==g.type)return null;if(o=c.number,r=g.number,r<=0||!Number.isInteger(r)||!Number.isInteger(o)||i.length<r)return null;if(o=(o%r+r)%r,0===o)break;i.push(...i.splice(i.length-r,r-o));break;default:return null}else i.push(new Ir(C));if(i.length!==n)return null;const d=[];for(const t of s){const e=new Qr;t.visit(e),d.push(e.toString())}for(let t=0,e=i.length;t<e;t++){const e=i[t],s=new Qr;e.visit(s);const a=A[2*t],n=A[2*t+1],r=[s.toString()];a>e.min&&(r.unshift("Math.max(",a,", "),r.push(")")),n<e.max&&(r.unshift("Math.min(",n,", "),r.push(")")),r.unshift("dest[destOffset + ",t,"] = "),r.push(";"),d.push(r.join(""))}return d.join("\n")}}const wr=["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"],br=["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 Dr(t){return!!(1&t)}function kr(t){return!(1&t)}function Sr(t,e,A){let i,s;for(i=e,s=t.length;i<s;++i)if(t[i]!==A)return i;return i}function Fr(t,e,A,i){for(let s=e;s<A;++s)t[s]=i}function Rr(t,e,A){for(let i=e,s=A-1;i<s;++i,--s){const e=t[i];t[i]=t[s],t[s]=e}}function xr(t,e,A=!1){let i="ltr";return A?i="ttb":e||(i="rtl"),{str:t,dir:i}}const Nr=[],vr=[];function Gr(t,e=-1,A=!1){let i=!0;const s=t.length;if(0===s||A)return xr(t,i,A);Nr.length=s,vr.length=s;let a,n,r=0;for(a=0;a<s;++a){Nr[a]=t.charAt(a);const e=t.charCodeAt(a);let A="L";e<=255?A=wr[e]:1424<=e&&e<=1524?A="R":1536<=e&&e<=1791?(A=br[255&e],A||N("Bidi: invalid Unicode character "+e.toString(16))):(1792<=e&&e<=2220||64336<=e&&e<=65023||65136<=e&&e<=65279)&&(A="AL"),"R"!==A&&"AL"!==A&&"AN"!==A||r++,vr[a]=A}if(0===r)return i=!0,xr(t,i);-1===e&&(r/s<.3&&s>4?(i=!0,e=0):(i=!1,e=1));const o=[];for(a=0;a<s;++a)o[a]=e;const g=Dr(e)?"R":"L",c=g,h=c;let l,I=c;for(a=0;a<s;++a)"NSM"===vr[a]?vr[a]=I:I=vr[a];for(I=c,a=0;a<s;++a)l=vr[a],"EN"===l?vr[a]="AL"===I?"AN":"EN":"R"!==l&&"L"!==l&&"AL"!==l||(I=l);for(a=0;a<s;++a)l=vr[a],"AL"===l&&(vr[a]="R");for(a=1;a<s-1;++a)"ES"===vr[a]&&"EN"===vr[a-1]&&"EN"===vr[a+1]&&(vr[a]="EN"),"CS"!==vr[a]||"EN"!==vr[a-1]&&"AN"!==vr[a-1]||vr[a+1]!==vr[a-1]||(vr[a]=vr[a-1]);for(a=0;a<s;++a)if("EN"===vr[a]){for(let t=a-1;t>=0&&"ET"===vr[t];--t)vr[t]="EN";for(let t=a+1;t<s&&"ET"===vr[t];++t)vr[t]="EN"}for(a=0;a<s;++a)l=vr[a],"WS"!==l&&"ES"!==l&&"ET"!==l&&"CS"!==l||(vr[a]="ON");for(I=c,a=0;a<s;++a)l=vr[a],"EN"===l?vr[a]="L"===I?"L":"EN":"R"!==l&&"L"!==l||(I=l);for(a=0;a<s;++a)if("ON"===vr[a]){const t=Sr(vr,a+1,"ON");let e=c;a>0&&(e=vr[a-1]);let A=h;t+1<s&&(A=vr[t+1]),"L"!==e&&(e="R"),"L"!==A&&(A="R"),e===A&&Fr(vr,a,t,e),a=t-1}for(a=0;a<s;++a)"ON"===vr[a]&&(vr[a]=g);for(a=0;a<s;++a)l=vr[a],kr(o[a])?"R"===l?o[a]+=1:"AN"!==l&&"EN"!==l||(o[a]+=2):"L"!==l&&"AN"!==l&&"EN"!==l||(o[a]+=1);let C,B=-1,d=99;for(a=0,n=o.length;a<n;++a)C=o[a],B<C&&(B=C),d>C&&Dr(C)&&(d=C);for(C=B;C>=d;--C){let t=-1;for(a=0,n=o.length;a<n;++a)o[a]<C?t>=0&&(Rr(Nr,t,a),t=-1):t<0&&(t=a);t>=0&&Rr(Nr,t,o.length)}for(a=0,n=Nr.length;a<n;++a){const t=Nr[a];"<"!==t&&">"!==t||(Nr[a]="")}return xr(Nr.join(""),i)}const Mr={style:"normal",weight:"normal"},Lr={style:"normal",weight:"bold"},Ur={style:"italic",weight:"normal"},Hr={style:"italic",weight:"bold"},Jr=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","DejaVu Serif","Bitstream Vera Serif","Ubuntu"],style:Mr,ultimate:"serif"}],["Times-Bold",{alias:"Times-Roman",style:Lr,ultimate:"serif"}],["Times-Italic",{alias:"Times-Roman",style:Ur,ultimate:"serif"}],["Times-BoldItalic",{alias:"Times-Roman",style:Hr,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:Mr,ultimate:"sans-serif"}],["Helvetica-Bold",{alias:"Helvetica",path:"LiberationSans-Bold.ttf",style:Lr,ultimate:"sans-serif"}],["Helvetica-Oblique",{alias:"Helvetica",path:"LiberationSans-Italic.ttf",style:Ur,ultimate:"sans-serif"}],["Helvetica-BoldOblique",{alias:"Helvetica",path:"LiberationSans-BoldItalic.ttf",style:Hr,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:Mr,ultimate:"monospace"}],["Courier-Bold",{alias:"Courier",style:Lr,ultimate:"monospace"}],["Courier-Oblique",{alias:"Courier",style:Ur,ultimate:"monospace"}],["Courier-BoldOblique",{alias:"Courier",style:Hr,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:Mr,fallback:"Helvetica"}],["ArialNarrow-Bold",{alias:"ArialNarrow",style:Lr,fallback:"Helvetica-Bold"}],["ArialNarrow-Italic",{alias:"ArialNarrow",style:Ur,fallback:"Helvetica-Oblique"}],["ArialNarrow-BoldItalic",{alias:"ArialNarrow",style:Hr,fallback:"Helvetica-BoldOblique"}],["Calibri",{local:["Calibri","Carlito"],style:Mr,fallback:"Helvetica"}],["Calibri-Bold",{alias:"Calibri",style:Lr,fallback:"Helvetica-Bold"}],["Calibri-Italic",{alias:"Calibri",style:Ur,fallback:"Helvetica-Oblique"}],["Calibri-BoldItalic",{alias:"Calibri",style:Hr,fallback:"Helvetica-BoldOblique"}],["Wingdings",{local:["Wingdings","URW Dingbats"],style:Mr}],["Wingdings-Regular",{alias:"Wingdings"}],["Wingdings-Bold",{alias:"Wingdings"}]]),Yr=new Map([["Arial-Black","ArialBlack"]]);function Tr(t){const e=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 t.split(/[- ,+]+/g).filter((t=>!e.has(t.toLowerCase()))).join(" ")}function Kr({alias:t,local:e,path:A,fallback:i,style:s,ultimate:a},n,r,o=!0,g=!0,c=""){const h={style:null,ultimate:null};if(e){const t=c?` ${c}`:"";for(const A of e)n.push(`local(${A}${t})`)}if(t){const e=Jr.get(t),a=c||function(t){switch(t){case Lr:return"Bold";case Ur:return"Italic";case Hr:return"Bold Italic";default:if("bold"===t?.weight)return"Bold";if("italic"===t?.style)return"Italic"}return""}(s);Object.assign(h,Kr(e,n,r,o&&!i,g&&!A,a))}if(s&&(h.style=s),a&&(h.ultimate=a),o&&i){const t=Jr.get(i),{ultimate:e}=Kr(t,n,r,o,g&&!A,c);h.ultimate||=e}return g&&A&&r&&n.push(`url(${r}${A})`),h}function qr(t,e,A,i,s,a){if(i.startsWith("InvalidPDFjsFont_"))return null;"TrueType"!==a&&"Type1"!==a||!/^[A-Z]{6}\+/.test(i)||(i=i.slice(7));const n=i=Bs(i);let r=t.get(n);if(r)return r;let o=Jr.get(i);if(!o)for(const[t,e]of Yr)if(i.startsWith(t)){i=`${e}${i.substring(t.length)}`,o=Jr.get(i);break}let g=!1;o||(o=Jr.get(s),g=!0);const c=`${e.getDocId()}_s${e.createFontId()}`;if(!o){if(!Vt(i))return N(`Cannot substitute the font because of its name: ${i}`),t.set(n,null),null;const e=/bold/gi.test(i),A=/oblique|italic/gi.test(i),s=e&&A&&Hr||e&&Lr||A&&Ur||Mr;return r={css:`"${Tr(i)}",${c}`,guessFallback:!0,loadedName:c,baseFontName:i,src:`local(${i})`,style:s},t.set(n,r),r}const h=[];g&&Vt(i)&&h.push(`local(${i})`);const{style:l,ultimate:I}=Kr(o,h,A),C=null===I,B=C?"":`,${I}`;return r={css:`"${Tr(i)}",${c}${B}`,guessFallback:C,loadedName:c,baseFontName:i,src:h.join(","),style:l},t.set(n,r),r}class Pr{constructor(t,e){this._imgData=t,this._isMask=e}static needsToBeResized(t,e){if(t<=this._goodSquareLength&&e<=this._goodSquareLength)return!1;const{MAX_DIM:A}=this;if(t>A||e>A)return!0;const i=t*e;return this._hasMaxArea?i>this.MAX_AREA:!(i<this._goodSquareLength**2)&&(this._areGoodDims(t,e)?(this._goodSquareLength=Math.max(this._goodSquareLength,Math.floor(Math.sqrt(t*e))),!1):(this._goodSquareLength=this._guessMax(this._goodSquareLength,A,128,0),i>(this.MAX_AREA=this._goodSquareLength**2)))}static get MAX_DIM(){return L(this,"MAX_DIM",this._guessMax(2048,65537,0,1))}static get MAX_AREA(){return this._hasMaxArea=!0,L(this,"MAX_AREA",this._guessMax(Pr._goodSquareLength,this.MAX_DIM,128,0)**2)}static set MAX_AREA(t){t>=0&&(this._hasMaxArea=!0,L(this,"MAX_AREA",t))}static setMaxArea(t){this._hasMaxArea||(this.MAX_AREA=t>>2)}static _areGoodDims(t,e){try{const A=new OffscreenCanvas(t,e),i=A.getContext("2d");i.fillRect(0,0,1,1);const s=i.getImageData(0,0,1,1).data[3];return A.width=A.height=1,0!==s}catch{return!1}}static _guessMax(t,e,A,i){for(;t+A+1<e;){const A=Math.floor((t+e)/2),s=i||A;this._areGoodDims(A,s)?t=A:e=A}return t}static async createImage(t,e=!1){return new Pr(t,e)._createImage()}async _createImage(){const t=this._encodeBMP(),e=new Blob([t.buffer],{type:"image/bmp"}),A=createImageBitmap(e),{MAX_AREA:i,MAX_DIM:s}=Pr,{_imgData:a}=this,{width:n,height:r}=a,o=Math.max(n/s,r/s,Math.sqrt(n*r/i)),g=Math.max(o,2),c=Math.round(10*(o+1.25))/10/g,h=Math.floor(Math.log2(c)),l=new Array(h+2).fill(2);l[0]=g,l.splice(-1,1,c/(1<<h));let I=n,C=r,B=await A;for(const t of l){const e=I,A=C;I=Math.floor(I/t)-1,C=Math.floor(C/t)-1;const i=new OffscreenCanvas(I,C);i.getContext("2d").drawImage(B,0,0,e,A,0,0,I,C),B=i.transferToImageBitmap()}return a.data=null,a.bitmap=B,a.width=I,a.height=C,a}_encodeBMP(){const{width:t,height:e,kind:A}=this._imgData;let i,s=this._imgData.data,a=new Uint8Array(0),n=a,r=0;switch(A){case 1:{i=1,a=new Uint8Array(this._isMask?[255,255,255,255,0,0,0,0]:[0,0,0,0,255,255,255,255]);const A=t+7>>3,n=A+3&-4;if(A!==n){const t=new Uint8Array(n*e);let i=0;for(let a=0,r=e*A;a<r;a+=A,i+=n)t.set(s.subarray(a,a+A),i);s=t}break}case 2:if(i=24,3&t){const A=3*t,i=A+3&-4,a=i-A,n=new Uint8Array(i*e);let r=0;for(let t=0,i=e*A;t<i;t+=A){const e=s.subarray(t,t+A);for(let t=0;t<A;t+=3)n[r++]=e[t+2],n[r++]=e[t+1],n[r++]=e[t];r+=a}s=n}else for(let t=0,e=s.length;t<e;t+=3){const e=s[t];s[t]=s[t+2],s[t+2]=e}break;case 3:i=32,r=3,n=new Uint8Array(68);const A=new DataView(n.buffer);j.isLittleEndian?(A.setUint32(0,255,!0),A.setUint32(4,65280,!0),A.setUint32(8,16711680,!0),A.setUint32(12,4278190080,!0)):(A.setUint32(0,4278190080,!0),A.setUint32(4,16711680,!0),A.setUint32(8,65280,!0),A.setUint32(12,255,!0));break;default:throw new Error("invalid format")}let o=0;const g=40+n.length,c=14+g+a.length+s.length,h=new Uint8Array(c),l=new DataView(h.buffer);return l.setUint16(o,19778,!0),o+=2,l.setUint32(o,c,!0),o+=4,l.setUint32(o,0,!0),o+=4,l.setUint32(o,14+g+a.length,!0),o+=4,l.setUint32(o,g,!0),o+=4,l.setInt32(o,t,!0),o+=4,l.setInt32(o,-e,!0),o+=4,l.setUint16(o,1,!0),o+=2,l.setUint16(o,i,!0),o+=2,l.setUint32(o,r,!0),o+=4,l.setUint32(o,0,!0),o+=4,l.setInt32(o,0,!0),o+=4,l.setInt32(o,0,!0),o+=4,l.setUint32(o,a.length/4,!0),o+=4,l.setUint32(o,0,!0),o+=4,h.set(n,o),o+=n.length,h.set(a,o),o+=a.length,h.set(s,o),h}}Pr._goodSquareLength=2048;const _r=3285377520,Or=4294901760,Wr=65535;class Zr{constructor(t){this.h1=t?4294967295&t:_r,this.h2=t?4294967295&t:_r}update(t){let e,A;if("string"==typeof t){e=new Uint8Array(2*t.length),A=0;for(let i=0,s=t.length;i<s;i++){const s=t.charCodeAt(i);s<=255?e[A++]=s:(e[A++]=s>>>8,e[A++]=255&s)}}else{if(!ArrayBuffer.isView(t))throw new Error("Invalid data format, must be a string or TypedArray.");e=t.slice(),A=e.byteLength}const i=A>>2,s=A-4*i,a=new Uint32Array(e.buffer,0,i);let n=0,r=0,o=this.h1,g=this.h2;const c=3432918353,h=461845907,l=11601,I=13715;for(let t=0;t<i;t++)1&t?(n=a[t],n=n*c&Or|n*l&Wr,n=n<<15|n>>>17,n=n*h&Or|n*I&Wr,o^=n,o=o<<13|o>>>19,o=5*o+3864292196):(r=a[t],r=r*c&Or|r*l&Wr,r=r<<15|r>>>17,r=r*h&Or|r*I&Wr,g^=r,g=g<<13|g>>>19,g=5*g+3864292196);switch(n=0,s){case 3:n^=e[4*i+2]<<16;case 2:n^=e[4*i+1]<<8;case 1:n^=e[4*i],n=n*c&Or|n*l&Wr,n=n<<15|n>>>17,n=n*h&Or|n*I&Wr,1&i?o^=n:g^=n}this.h1=o,this.h2=g}hexdigest(){let t=this.h1,e=this.h2;return t^=e>>>1,t=3981806797*t&Or|36045*t&Wr,e=4283543511*e&Or|(2950163797*(e<<16|t>>>16)&Or)>>>16,t^=e>>>1,t=444984403*t&Or|60499*t&Wr,e=3301882366*e&Or|(3120437893*(e<<16|t>>>16)&Or)>>>16,t^=e>>>1,(t>>>0).toString(16).padStart(8,"0")+(e>>>0).toString(16).padStart(8,"0")}}function jr(t,e,A,i,s){let a=t;for(let t=0,A=e.length-1;t<A;t++){const A=e[t];a=a[A]||=[]}a[e.at(-1)]={checkFn:A,iterateFn:i,processFn:s}}const Vr=[];jr(Vr,[E,p,86,f],null,(function(t,e){const A=t.fnArray,i=(e-(t.iCurr-3))%4;switch(i){case 0:return A[e]===E;case 1:return A[e]===p;case 2:return 86===A[e];case 3:return A[e]===f}throw new Error(`iterateInlineImageGroup - invalid pos: ${i}`)}),(function(t,e){const A=t.fnArray,i=t.argsArray,s=t.iCurr,a=s-3,n=s-2,r=s-1,o=Math.min(Math.floor((e-a)/4),200);if(o<10)return e-(e-a)%4;let g=0;const c=[];let h=0,l=1,I=1;for(let t=0;t<o;t++){const e=i[n+(t<<2)],A=i[r+(t<<2)][0];l+A.width>1e3&&(g=Math.max(g,l),I+=h+2,l=0,h=0),c.push({transform:e,x:l,y:I,w:A.width,h:A.height}),l+=A.width+2,h=Math.max(h,A.height)}const C=Math.max(g,l)+1,B=I+h+1,d=new Uint8Array(C*B*4),u=C<<2;for(let t=0;t<o;t++){const e=i[r+(t<<2)][0].data,A=c[t].w<<2;let s=0,a=c[t].x+c[t].y*C<<2;d.set(e.subarray(0,A),a-u);for(let i=0,n=c[t].h;i<n;i++)d.set(e.subarray(s,s+A),a),s+=A,a+=u;for(d.set(e.subarray(s-A,s),a);a>=0;)e[a-4]=e[a],e[a-3]=e[a+1],e[a-2]=e[a+2],e[a-1]=e[a+3],e[a+A]=e[a+A-4],e[a+A+1]=e[a+A-3],e[a+A+2]=e[a+A-2],e[a+A+3]=e[a+A-1],a-=u}const Q={width:C,height:B};if(t.isOffscreenCanvasSupported){const t=new OffscreenCanvas(C,B);t.getContext("2d").putImageData(new ImageData(new Uint8ClampedArray(d.buffer),C,B),0,0),Q.bitmap=t.transferToImageBitmap(),Q.data=null}else Q.kind=3,Q.data=d;return A.splice(a,4*o,87),i.splice(a,4*o,[Q,c]),a+1})),jr(Vr,[E,p,S,f],null,(function(t,e){const A=t.fnArray,i=(e-(t.iCurr-3))%4;switch(i){case 0:return A[e]===E;case 1:return A[e]===p;case 2:return A[e]===S;case 3:return A[e]===f}throw new Error(`iterateImageMaskGroup - invalid pos: ${i}`)}),(function(t,e){const A=t.fnArray,i=t.argsArray,s=t.iCurr,a=s-3,n=s-2,r=s-1;let o=Math.floor((e-a)/4);if(o<10)return e-(e-a)%4;let g,c,h=!1;const l=i[r][0],I=i[n][0],C=i[n][1],B=i[n][2],d=i[n][3];if(C===B){h=!0,g=n+4;let t=r+4;for(let e=1;e<o;e++,g+=4,t+=4)if(c=i[g],i[t][0]!==l||c[0]!==I||c[1]!==C||c[2]!==B||c[3]!==d){e<10?h=!1:o=e;break}}if(h){o=Math.min(o,1e3);const t=new Float32Array(2*o);g=n;for(let e=0;e<o;e++,g+=4)c=i[g],t[e<<1]=c[4],t[1+(e<<1)]=c[5];A.splice(a,4*o,89),i.splice(a,4*o,[l,I,C,B,d,t])}else{o=Math.min(o,100);const t=[];for(let e=0;e<o;e++){c=i[n+(e<<2)];const A=i[r+(e<<2)][0];t.push({data:A.data,width:A.width,height:A.height,interpolate:A.interpolate,count:A.count,transform:c})}A.splice(a,4*o,84),i.splice(a,4*o,[t])}return a+1})),jr(Vr,[E,p,F,f],(function(t){const e=t.argsArray,A=t.iCurr-2;return 0===e[A][1]&&0===e[A][2]}),(function(t,e){const A=t.fnArray,i=t.argsArray,s=(e-(t.iCurr-3))%4;switch(s){case 0:return A[e]===E;case 1:if(A[e]!==p)return!1;const s=t.iCurr-2,a=i[s][0],n=i[s][3];return i[e][0]===a&&0===i[e][1]&&0===i[e][2]&&i[e][3]===n;case 2:if(A[e]!==F)return!1;const r=i[t.iCurr-1][0];return i[e][0]===r;case 3:return A[e]===f}throw new Error(`iterateImageGroup - invalid pos: ${s}`)}),(function(t,e){const A=t.fnArray,i=t.argsArray,s=t.iCurr,a=s-3,n=s-2,r=i[s-1][0],o=i[n][0],g=i[n][3],c=Math.min(Math.floor((e-a)/4),1e3);if(c<3)return e-(e-a)%4;const h=new Float32Array(2*c);let l=n;for(let t=0;t<c;t++,l+=4){const e=i[l];h[t<<1]=e[4],h[1+(t<<1)]=e[5]}const I=[r,o,g,h];return A.splice(a,4*c,88),i.splice(a,4*c,I),a+1})),jr(Vr,[31,m,42,y,32],null,(function(t,e){const A=t.fnArray,i=t.argsArray,s=(e-(t.iCurr-4))%5;switch(s){case 0:return 31===A[e];case 1:return A[e]===m;case 2:return 42===A[e];case 3:if(A[e]!==y)return!1;const s=t.iCurr-3,a=i[s][0],n=i[s][1];return i[e][0]===a&&i[e][1]===n;case 4:return 32===A[e]}throw new Error(`iterateShowTextGroup - invalid pos: ${s}`)}),(function(t,e){const A=t.fnArray,i=t.argsArray,s=t.iCurr,a=s-4,n=s-3,r=s-2,o=s-1,g=s,c=i[n][0],h=i[n][1];let l=Math.min(Math.floor((e-a)/5),1e3);if(l<3)return e-(e-a)%5;let I=a;a>=4&&A[a-4]===A[n]&&A[a-3]===A[r]&&A[a-2]===A[o]&&A[a-1]===A[g]&&i[a-4][0]===c&&i[a-4][1]===h&&(l++,I-=5);let C=I+4;for(let t=1;t<l;t++)A.splice(C,3),i.splice(C,3),C+=2;return C+1}));class Xr{constructor(t){this.queue=t}_optimize(){}push(t,e){this.queue.fnArray.push(t),this.queue.argsArray.push(e),this._optimize()}flush(){}reset(){}}class zr extends Xr{constructor(t){super(t),this.state=null,this.context={iCurr:0,fnArray:t.fnArray,argsArray:t.argsArray,isOffscreenCanvasSupported:!1},this.match=null,this.lastProcessed=0}set isOffscreenCanvasSupported(t){this.context.isOffscreenCanvasSupported=t}_optimize(){const t=this.queue.fnArray;let e=this.lastProcessed,A=t.length,i=this.state,s=this.match;if(!i&&!s&&e+1===A&&!Vr[t[e]])return void(this.lastProcessed=A);const a=this.context;for(;e<A;){if(s){if((0,s.iterateFn)(a,e)){e++;continue}if(e=(0,s.processFn)(a,e+1),A=t.length,s=null,i=null,e>=A)break}i=(i||Vr)[t[e]],i&&!Array.isArray(i)?(a.iCurr=e,e++,!i.checkFn||(0,i.checkFn)(a)?(s=i,i=null):i=null):e++}this.state=i,this.match=s,this.lastProcessed=e}flush(){for(;this.match;){const t=this.queue.fnArray.length;this.lastProcessed=(0,this.match.processFn)(this.context,t),this.match=null,this.state=null,this._optimize()}}reset(){this.state=null,this.match=null,this.lastProcessed=0}}class $r{static CHUNK_SIZE=1e3;static CHUNK_SIZE_ABOUT=this.CHUNK_SIZE-5;constructor(t=0,e){this._streamSink=e,this.fnArray=[],this.argsArray=[],this.optimizer=!e||256&t?new Xr(this):new zr(this),this.dependencies=new Set,this._totalLength=0,this.weight=0,this._resolved=e?null:Promise.resolve()}set isOffscreenCanvasSupported(t){this.optimizer.isOffscreenCanvasSupported=t}get length(){return this.argsArray.length}get ready(){return this._resolved||this._streamSink.ready}get totalLength(){return this._totalLength+this.length}addOp(t,e){this.optimizer.push(t,e),this.weight++,this._streamSink&&(this.weight>=$r.CHUNK_SIZE||this.weight>=$r.CHUNK_SIZE_ABOUT&&(t===f||32===t))&&this.flush()}addImageOps(t,e,A){void 0!==A&&this.addOp(D,["OC",A]),this.addOp(t,e),void 0!==A&&this.addOp(k,[])}addDependency(t){this.dependencies.has(t)||(this.dependencies.add(t),this.addOp(1,[t]))}addDependencies(t){for(const e of t)this.addDependency(e)}addOpList(t){if(t instanceof $r){for(const e of t.dependencies)this.dependencies.add(e);for(let e=0,A=t.length;e<A;e++)this.addOp(t.fnArray[e],t.argsArray[e])}else N('addOpList - ignoring invalid "opList" parameter.')}getIR(){return{fnArray:this.fnArray,argsArray:this.argsArray,length:this.length}}get _transfers(){const t=[],{fnArray:e,argsArray:A,length:i}=this;for(let s=0;s<i;s++)switch(e[s]){case 86:case 87:case S:const e=A[s][0];!e.cached&&e.data?.buffer instanceof ArrayBuffer&&t.push(e.data.buffer)}return t}flush(t=!1,e=null){this.optimizer.flush();const A=this.length;this._totalLength+=A,this._streamSink.enqueue({fnArray:this.fnArray,argsArray:this.argsArray,lastChunk:t,separateAnnots:e,length:A},1,this._transfers),this.dependencies.clear(),this.fnArray.length=0,this.argsArray.length=0,this.weight=0,this.optimizer.reset()}}function to(t,e,A,i){return(t=e+t*A)<0?t=0:t>i&&(t=i),t}function eo(t,e,A,i,s,a){const n=s*a;let r;r=e<=8?new Uint8Array(n):e<=16?new Uint16Array(n):new Uint32Array(n);const o=A/s,g=i/a;let c,h,l,I,C=0;const B=new Uint16Array(s),d=A;for(c=0;c<s;c++)B[c]=Math.floor(c*o);for(c=0;c<a;c++)for(l=Math.floor(c*g)*d,h=0;h<s;h++)I=l+B[h],r[C++]=t[I];return r}class Ao{constructor({xref:t,res:e,image:A,isInline:i=!1,smask:s=null,mask:a=null,isMask:n=!1,pdfFunctionFactory:r,localColorSpaceCache:o}){this.image=A;const g=A.dict,c=g.get("F","Filter");let h;if(c instanceof ht)h=c.name;else if(Array.isArray(c)){const e=t.fetchIfRef(c[0]);e instanceof ht&&(h=e.name)}switch(h){case"JPXDecode":({width:A.width,height:A.height,componentsCount:A.numComps,bitsPerComponent:A.bitsPerComponent}=$A.parseImageProperties(A.stream)),A.stream.reset(),this.jpxDecoderOptions={numComponents:0,isIndexedColormap:!1,smaskInData:g.has("SMaskInData")};break;case"JBIG2Decode":A.bitsPerComponent=1,A.numComps=1}let l=g.get("W","Width"),I=g.get("H","Height");if(Number.isInteger(A.width)&&A.width>0&&Number.isInteger(A.height)&&A.height>0&&(A.width!==l||A.height!==I)&&(N("PDFImage - using the Width/Height of the image data, rather than the image dictionary."),l=A.width,I=A.height),l<1||I<1)throw new q(`Invalid image width: ${l} or height: ${I}`);this.width=l,this.height=I,this.interpolate=g.get("I","Interpolate"),this.imageMask=g.get("IM","ImageMask")||!1,this.matte=g.get("Matte")||!1;let C=A.bitsPerComponent;if(!C&&(C=g.get("BPC","BitsPerComponent"),!C)){if(!this.imageMask)throw new q(`Bits per component missing in image: ${this.imageMask}`);C=1}if(this.bpc=C,!this.imageMask){let s=g.getRaw("CS")||g.getRaw("ColorSpace");const a=!!s;if(a)this.jpxDecoderOptions?.smaskInData&&(s=ht.get("DeviceRGBA"));else if(this.jpxDecoderOptions)s=ht.get("DeviceRGBA");else switch(A.numComps){case 1:s=ht.get("DeviceGray");break;case 3:s=ht.get("DeviceRGB");break;case 4:s=ht.get("DeviceCMYK");break;default:throw new Error(`Images with ${A.numComps} color components not supported.`)}this.colorSpace=he.parse({cs:s,xref:t,resources:i?e:null,pdfFunctionFactory:r,localColorSpaceCache:o}),this.numComps=this.colorSpace.numComps,this.jpxDecoderOptions&&(this.jpxDecoderOptions.numComponents=a?this.numComp:0,this.jpxDecoderOptions.isIndexedColormap="Indexed"===this.colorSpace.name)}if(this.decode=g.getArray("D","Decode"),this.needsDecode=!1,this.decode&&(this.colorSpace&&!this.colorSpace.isDefaultDecode(this.decode,C)||n&&!he.isDefaultDecode(this.decode,1))){this.needsDecode=!0;const t=(1<<C)-1;this.decodeCoefficients=[],this.decodeAddends=[];const e="Indexed"===this.colorSpace?.name;for(let A=0,i=0;A<this.decode.length;A+=2,++i){const s=this.decode[A],a=this.decode[A+1];this.decodeCoefficients[i]=e?(a-s)/t:a-s,this.decodeAddends[i]=e?s:t*s}}s?this.smask=new Ao({xref:t,res:e,image:s,isInline:i,pdfFunctionFactory:r,localColorSpaceCache:o}):a&&(a instanceof mt?a.dict.get("IM","ImageMask")?this.mask=new Ao({xref:t,res:e,image:a,isInline:i,isMask:!0,pdfFunctionFactory:r,localColorSpaceCache:o}):N("Ignoring /Mask in image without /ImageMask."):this.mask=a)}static async buildImage({xref:t,res:e,image:A,isInline:i=!1,pdfFunctionFactory:s,localColorSpaceCache:a}){const n=A;let r=null,o=null;const g=A.dict.get("SMask"),c=A.dict.get("Mask");return g?g instanceof mt?r=g:N("Unsupported /SMask format."):c&&(c instanceof mt||Array.isArray(c)?o=c:N("Unsupported /Mask format.")),new Ao({xref:t,res:e,image:n,isInline:i,smask:r,mask:o,pdfFunctionFactory:s,localColorSpaceCache:a})}static createRawMask({imgArray:t,width:e,height:A,imageIsFromDecodeStream:i,inverseDecode:s,interpolate:a}){const n=(e+7>>3)*A,r=t.byteLength;let o,g;if(!i||s&&n!==r?s?(o=new Uint8Array(n),o.set(t),o.fill(255,r)):o=new Uint8Array(t):o=t,s)for(g=0;g<r;g++)o[g]^=255;return{data:o,width:e,height:A,interpolate:a}}static async createMask({imgArray:t,width:e,height:A,imageIsFromDecodeStream:i,inverseDecode:s,interpolate:a,isOffscreenCanvasSupported:n=!1}){const r=1===e&&1===A&&s===(0===t.length||!!(128&t[0]));if(r)return{isSingleOpaquePixel:r};if(n){if(Pr.needsToBeResized(e,A)){const i=new Uint8ClampedArray(e*A*4);return SA({src:t,dest:i,width:e,height:A,nonBlackColor:0,inverseDecode:s}),Pr.createImage({kind:3,data:i,width:e,height:A,interpolate:a})}const i=new OffscreenCanvas(e,A),n=i.getContext("2d"),r=n.createImageData(e,A);return SA({src:t,dest:r.data,width:e,height:A,nonBlackColor:0,inverseDecode:s}),n.putImageData(r,0,0),{data:null,width:e,height:A,interpolate:a,bitmap:i.transferToImageBitmap()}}return this.createRawMask({imgArray:t,width:e,height:A,inverseDecode:s,imageIsFromDecodeStream:i,interpolate:a})}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(t){const e=this.bpc,A=this.numComps,i=this.decodeAddends,s=this.decodeCoefficients,a=(1<<e)-1;let n,r;if(1===e){for(n=0,r=t.length;n<r;n++)t[n]=+!t[n];return}let o=0;for(n=0,r=this.width*this.height;n<r;n++)for(let e=0;e<A;e++)t[o]=to(t[o],i[e],s[e],a),o++}getComponents(t){const e=this.bpc;if(8===e)return t;const A=this.width,i=this.height,s=this.numComps,a=A*i*s;let n,r=0;n=e<=8?new Uint8Array(a):e<=16?new Uint16Array(a):new Uint32Array(a);const o=A*s,g=(1<<e)-1;let c,h,l=0;if(1===e){let e,A,s;for(let a=0;a<i;a++){for(A=l+(-8&o),s=l+o;l<A;)h=t[r++],n[l]=h>>7&1,n[l+1]=h>>6&1,n[l+2]=h>>5&1,n[l+3]=h>>4&1,n[l+4]=h>>3&1,n[l+5]=h>>2&1,n[l+6]=h>>1&1,n[l+7]=1&h,l+=8;if(l<s)for(h=t[r++],e=128;l<s;)n[l++]=+!!(h&e),e>>=1}}else{let A=0;for(h=0,l=0,c=a;l<c;++l){for(l%o==0&&(h=0,A=0);A<e;)h=h<<8|t[r++],A+=8;const i=A-e;let s=h>>i;s<0?s=0:s>g&&(s=g),n[l]=s,h&=(1<<i)-1,A=i}}return n}async fillOpacity(t,e,A,i,s){const a=this.smask,n=this.mask;let r,o,g,c,h,l;if(a)o=a.width,g=a.height,r=new Uint8ClampedArray(o*g),await a.fillGrayBuffer(r),o===e&&g===A||(r=eo(r,a.bpc,o,g,e,A));else if(n)if(n instanceof Ao){for(o=n.width,g=n.height,r=new Uint8ClampedArray(o*g),n.numComps=1,await n.fillGrayBuffer(r),c=0,h=o*g;c<h;++c)r[c]=255-r[c];o===e&&g===A||(r=eo(r,n.bpc,o,g,e,A))}else{if(!Array.isArray(n))throw new q("Unknown mask format.");{r=new Uint8ClampedArray(e*A);const t=this.numComps;for(c=0,h=e*A;c<h;++c){let e=0;const A=c*t;for(l=0;l<t;++l){const t=s[A+l],i=2*l;if(t<n[i]||t>n[i+1]){e=255;break}}r[c]=e}}}if(r)for(c=0,l=3,h=e*i;c<h;++c,l+=4)t[l]=r[c];else for(c=0,l=3,h=e*i;c<h;++c,l+=4)t[l]=255}undoPreblend(t,e,A){const i=this.smask?.matte;if(!i)return;const s=this.colorSpace.getRgb(i,0),a=s[0],n=s[1],r=s[2],o=e*A*4;for(let e=0;e<o;e+=4){const A=t[e+3];if(0===A){t[e]=255,t[e+1]=255,t[e+2]=255;continue}const i=255/A;t[e]=(t[e]-a)*i+a,t[e+1]=(t[e+1]-n)*i+n,t[e+2]=(t[e+2]-r)*i+r}}async createImageData(t=!1,e=!1){const A=this.drawWidth,i=this.drawHeight,s={width:A,height:i,interpolate:this.interpolate,kind:0,data:null},a=this.numComps,n=this.width,r=this.height,o=this.bpc,g=n*a*o+7>>3,c=e&&Pr.needsToBeResized(A,i);if("DeviceRGBA"===this.colorSpace.name){s.kind=3;const t=s.data=await this.getImageBytes(r*n*4,{});return e?c?Pr.createImage(s,!1):this.createBitmap(3,A,i,t):s}if(!t){let t;if("DeviceGray"===this.colorSpace.name&&1===o?t=1:"DeviceRGB"!==this.colorSpace.name||8!==o||this.needsDecode||(t=2),t&&!this.smask&&!this.mask&&A===n&&i===r){const a=await this.getImageBytes(r*g,{});if(e)return c?Pr.createImage({data:a,kind:t,width:A,height:i,interpolate:this.interpolate},this.needsDecode):this.createBitmap(t,n,r,a);if(s.kind=t,s.data=a,this.needsDecode){G(1===t,"PDFImage.createImageData: The image must be grayscale.");const e=s.data;for(let t=0,A=e.length;t<A;t++)e[t]^=255}return s}if(this.image instanceof ZA&&!this.smask&&!this.mask&&!this.needsDecode){let t=r*g;if(e&&!c){let e=!1;switch(this.colorSpace.name){case"DeviceGray":t*=4,e=!0;break;case"DeviceRGB":t=t/3*4,e=!0;break;case"DeviceCMYK":e=!0}if(e){const e=await this.getImageBytes(t,{drawWidth:A,drawHeight:i,forceRGBA:!0});return this.createBitmap(3,A,i,e)}}else switch(this.colorSpace.name){case"DeviceGray":t*=3;case"DeviceRGB":case"DeviceCMYK":return s.kind=2,s.data=await this.getImageBytes(t,{drawWidth:A,drawHeight:i,forceRGB:!0}),c?Pr.createImage(s):s}}}const h=await this.getImageBytes(r*g,{internal:!0}),l=0|h.length/g*i/r,I=this.getComponents(h);let C,B,d,u,Q,E;return e&&!c&&(d=new OffscreenCanvas(A,i),u=d.getContext("2d"),Q=u.createImageData(A,i),E=Q.data),s.kind=3,t||this.smask||this.mask?(e&&!c||(E=new Uint8ClampedArray(A*i*4)),C=1,B=!0,await this.fillOpacity(E,A,i,l,I)):(!e||c?(s.kind=2,E=new Uint8ClampedArray(A*i*3),C=0):(new Uint32Array(E.buffer).fill(j.isLittleEndian?4278190080:255),C=1),B=!1),this.needsDecode&&this.decodeBuffer(I),this.colorSpace.fillRgb(E,n,r,A,i,l,o,I,C),B&&this.undoPreblend(E,A,l),e&&!c?(u.putImageData(Q,0,0),{data:null,width:A,height:i,bitmap:d.transferToImageBitmap(),interpolate:this.interpolate}):(s.data=E,c?Pr.createImage(s):s)}async fillGrayBuffer(t){const e=this.numComps;if(1!==e)throw new q(`Reading gray scale from a color image: ${e}`);const A=this.width,i=this.height,s=this.bpc,a=A*e*s+7>>3,n=await this.getImageBytes(i*a,{internal:!0}),r=this.getComponents(n);let o,g;if(1===s){if(g=A*i,this.needsDecode)for(o=0;o<g;++o)t[o]=r[o]-1&255;else for(o=0;o<g;++o)t[o]=255&-r[o];return}this.needsDecode&&this.decodeBuffer(r),g=A*i;const c=255/((1<<s)-1);for(o=0;o<g;++o)t[o]=c*r[o]}createBitmap(t,e,A,i){const s=new OffscreenCanvas(e,A),a=s.getContext("2d");let n;return 3===t?n=new ImageData(i,e,A):(n=a.createImageData(e,A),function(t){switch(t.kind){case 1:return SA(t);case 2:(function({src:t,srcPos:e=0,dest:A,destPos:i=0,width:s,height:a}){let n=0;const r=t.length>>2,o=new Uint32Array(t.buffer,e,r);if(j.isLittleEndian){for(;n<r-2;n+=3,i+=4){const t=o[n],e=o[n+1],s=o[n+2];A[i]=4278190080|t,A[i+1]=t>>>24|e<<8|4278190080,A[i+2]=e>>>16|s<<16|4278190080,A[i+3]=s>>>8|4278190080}for(let e=4*n,s=t.length;e<s;e+=3)A[i++]=t[e]|t[e+1]<<8|t[e+2]<<16|4278190080}else{for(;n<r-2;n+=3,i+=4){const t=o[n],e=o[n+1],s=o[n+2];A[i]=255|t,A[i+1]=t<<24|e>>>8|255,A[i+2]=e<<16|s>>>16|255,A[i+3]=s<<8|255}for(let e=4*n,s=t.length;e<s;e+=3)A[i++]=t[e]<<24|t[e+1]<<16|t[e+2]<<8|255}})(t)}}({kind:t,src:i,dest:new Uint32Array(n.data.buffer),width:e,height:A,inverseDecode:this.needsDecode})),a.putImageData(n,0,0),{data:null,width:e,height:A,bitmap:s.transferToImageBitmap(),interpolate:this.interpolate}}async getImageBytes(t,{drawWidth:e,drawHeight:A,forceRGBA:i=!1,forceRGB:s=!1,internal:a=!1}){this.image.reset(),this.image.drawWidth=e||this.width,this.image.drawHeight=A||this.height,this.image.forceRGBA=!!i,this.image.forceRGB=!!s;const n=await this.image.getImageData(t,this.jpxDecoderOptions);return a||this.image instanceof Re?n:(G(n instanceof Uint8Array,'PDFImage.getImageBytes: Unsupported "imageBytes" type.'),new Uint8Array(n))}}const io=Object.freeze({maxImageSize:-1,disableFontFace:!1,ignoreErrors:!1,isEvalSupported:!0,isOffscreenCanvasSupported:!1,canvasMaxAreaInBytes:-1,fontExtraProperties:!1,useSystemFonts:!0,cMapUrl:null,standardFontDataUrl:null}),so=Promise.resolve();function ao(t,e=!1){if(Array.isArray(t)){for(const e of t){const t=ao(e,!0);if(t)return t}return N(`Unsupported blend mode Array: ${t}`),"source-over"}if(!(t instanceof ht))return e?null:"source-over";switch(t.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 e?null:(N(`Unsupported blend mode: ${t.name}`),"source-over")}function no(t,e){e.objId&&t.addDependency(e.objId),t.addImageOps(e.fn,e.args,e.optionalContent),e.fn===S&&e.args[0]?.count>0&&e.args[0].count++}class ro{static TIME_SLOT_DURATION_MS=20;static CHECK_TIME_EVERY=100;constructor(){this.reset()}check(){return!(++this.checked<ro.CHECK_TIME_EVERY)&&(this.checked=0,this.endTime<=Date.now())}reset(){this.endTime=Date.now()+ro.TIME_SLOT_DURATION_MS,this.checked=0}}class oo{constructor({xref:t,handler:e,pageIndex:A,idFactory:i,fontCache:s,builtInCMapCache:a,standardFontDataCache:n,globalImageCache:r,systemFontCache:o,options:g=null}){this.xref=t,this.handler=e,this.pageIndex=A,this.idFactory=i,this.fontCache=s,this.builtInCMapCache=a,this.standardFontDataCache=n,this.globalImageCache=r,this.systemFontCache=o,this.options=g||io,this.type3FontRefs=null,this._regionalImageCache=new ir,this._fetchBuiltInCMapBound=this.fetchBuiltInCMap.bind(this),Pr.setMaxArea(this.options.canvasMaxAreaInBytes)}get _pdfFunctionFactory(){return L(this,"_pdfFunctionFactory",new ar({xref:this.xref,isEvalSupported:this.options.isEvalSupported}))}get parsingType3Font(){return!!this.type3FontRefs}clone(t=null){const e=Object.create(this);return e.options=Object.assign(Object.create(null),this.options,t),e}hasBlendModes(t,e){if(!(t instanceof Ct))return!1;if(t.objId&&e.has(t.objId))return!1;const A=new dt(e);t.objId&&A.put(t.objId);const i=[t],s=this.xref;for(;i.length;){const t=i.shift(),a=t.get("ExtGState");if(a instanceof Ct)for(let t of a.getRawValues()){if(t instanceof Bt){if(A.has(t))continue;try{t=s.fetch(t)}catch(e){A.put(t),x(`hasBlendModes - ignoring ExtGState: "${e}".`);continue}}if(!(t instanceof Ct))continue;t.objId&&A.put(t.objId);const i=t.get("BM");if(i instanceof ht){if("Normal"!==i.name)return!0}else if(void 0!==i&&Array.isArray(i))for(const t of i)if(t instanceof ht&&"Normal"!==t.name)return!0}const n=t.get("XObject");if(n instanceof Ct)for(let t of n.getRawValues()){if(t instanceof Bt){if(A.has(t))continue;try{t=s.fetch(t)}catch(e){A.put(t),x(`hasBlendModes - ignoring XObject: "${e}".`);continue}}if(!(t instanceof mt))continue;t.dict.objId&&A.put(t.dict.objId);const a=t.dict.get("Resources");!(a instanceof Ct)||a.objId&&A.has(a.objId)||(i.push(a),a.objId&&A.put(a.objId))}}for(const t of A)e.put(t);return!1}async fetchBuiltInCMap(t){const e=this.builtInCMapCache.get(t);if(e)return e;let A;if(null!==this.options.cMapUrl){const e=`${this.options.cMapUrl}${t}.bcmap`,i=await fetch(e);if(!i.ok)throw new Error(`fetchBuiltInCMap: failed to fetch file "${e}" with "${i.statusText}".`);A={cMapData:new Uint8Array(await i.arrayBuffer()),compressionType:1}}else A=await this.handler.sendWithPromise("FetchBuiltInCMap",{name:t});return 0!==A.compressionType&&this.builtInCMapCache.set(t,A),A}async fetchStandardFontData(t){const e=this.standardFontDataCache.get(t);if(e)return new ne(e);if(this.options.useSystemFonts&&"Symbol"!==t&&"ZapfDingbats"!==t)return null;const A=us()[t];let i;if(null!==this.options.standardFontDataUrl){const t=`${this.options.standardFontDataUrl}${A}`,e=await fetch(t);e.ok?i=new Uint8Array(await e.arrayBuffer()):N(`fetchStandardFontData: failed to fetch file "${t}" with "${e.statusText}".`)}else try{i=await this.handler.sendWithPromise("FetchStandardFontData",{filename:A})}catch(t){N(`fetchStandardFontData: failed to fetch file "${A}" with "${t}".`)}return i?(this.standardFontDataCache.set(t,i),new ne(i)):null}async buildFormXObject(t,e,A,i,s,a,n){const r=e.dict,o=Jt(r.getArray("Matrix"),null),g=Tt(r.getArray("BBox"),null);let c,h;r.has("OC")&&(c=await this.parseMarkedContentProps(r.get("OC"),t)),void 0!==c&&i.addOp(D,["OC",c]);const l=r.get("Group");if(l){h={matrix:o,bbox:g,smask:A,isolated:!1,knockout:!1};let e=null;if(Qt(l.get("S"),"Transparency")&&(h.isolated=l.get("I")||!1,h.knockout=l.get("K")||!1,l.has("CS"))){const A=l.getRaw("CS");e=he.getCached(A,this.xref,n)||await this.parseColorSpace({cs:A,resources:t,localColorSpaceCache:n})}A?.backdrop&&(e||=he.singletons.rgb,A.backdrop=e.getRgb(A.backdrop,0)),i.addOp(76,[h])}const I=l?[o,null]:[o,g];i.addOp(74,I),await this.getOperatorList({stream:e,task:s,resources:r.get("Resources")||t,operatorList:i,initialState:a}),i.addOp(75,[]),l&&i.addOp(77,[h]),void 0!==c&&i.addOp(k,[])}_sendImgData(t,e,A=!1){const i=e?[e.bitmap||e.data.buffer]:null;return this.parsingType3Font||A?this.handler.send("commonobj",[t,"Image",e],i):this.handler.send("obj",[t,this.pageIndex,"Image",e],i)}async buildPaintImageXObject({resources:t,image:e,isInline:A=!1,operatorList:i,cacheKey:s,localImageCache:a,localColorSpaceCache:n}){const r=e.dict,o=r.objId,g=r.get("W","Width"),c=r.get("H","Height");if(!g||"number"!=typeof g||!c||"number"!=typeof c)return void N("Image dimensions are missing, or not numbers.");const h=this.options.maxImageSize;if(-1!==h&&g*c>h){const t="Image exceeded maximum allowed size and was removed.";if(this.options.ignoreErrors)return void N(t);throw new Error(t)}let l,I,C;if(r.has("OC")&&(l=await this.parseMarkedContentProps(r.get("OC"),t)),r.get("IM","ImageMask")){const t=r.get("I","Interpolate"),A=g+7>>3,n=e.getBytes(A*c),h=r.getArray("D","Decode");if(this.parsingType3Font){if(I=Ao.createRawMask({imgArray:n,width:g,height:c,imageIsFromDecodeStream:e instanceof Re,inverseDecode:h?.[0]>0,interpolate:t}),I.cached=!!s,C=[I],i.addImageOps(S,C,l),s){const t={fn:S,args:C,optionalContent:l};a.set(s,o,t),o&&this._regionalImageCache.set(null,o,t)}return}if(I=await Ao.createMask({imgArray:n,width:g,height:c,imageIsFromDecodeStream:e instanceof Re,inverseDecode:h?.[0]>0,interpolate:t,isOffscreenCanvasSupported:this.options.isOffscreenCanvasSupported}),I.isSingleOpaquePixel){if(i.addImageOps(90,[],l),s){const t={fn:90,args:[],optionalContent:l};a.set(s,o,t),o&&this._regionalImageCache.set(null,o,t)}return}const B=`mask_${this.idFactory.createObjId()}`;if(i.addDependency(B),I.dataLen=I.bitmap?I.width*I.height*4:I.data.length,this._sendImgData(B,I),C=[{data:B,width:I.width,height:I.height,interpolate:I.interpolate,count:1}],i.addImageOps(S,C,l),s){const t={objId:B,fn:S,args:C,optionalContent:l};a.set(s,o,t),o&&this._regionalImageCache.set(null,o,t)}return}if(A&&g+c<200&&!r.has("SMask")&&!r.has("Mask")){try{const s=new Ao({xref:this.xref,res:t,image:e,isInline:A,pdfFunctionFactory:this._pdfFunctionFactory,localColorSpaceCache:n});I=await s.createImageData(!0,!1),i.isOffscreenCanvasSupported=this.options.isOffscreenCanvasSupported,i.addImageOps(86,[I],l)}catch(t){const e=`Unable to decode inline image: "${t}".`;if(!this.options.ignoreErrors)throw new Error(e);N(e)}return}let B=`img_${this.idFactory.createObjId()}`,d=!1;if(this.parsingType3Font?B=`${this.idFactory.getDocId()}_type3_${B}`:s&&o&&(d=this.globalImageCache.shouldCache(o,this.pageIndex),d&&(G(!A,"Cannot cache an inline image globally."),B=`${this.idFactory.getDocId()}_${B}`)),i.addDependency(B),C=[B,g,c],i.addImageOps(F,C,l),d){if(this.globalImageCache.hasDecodeFailed(o))return this.globalImageCache.setData(o,{objId:B,fn:F,args:C,optionalContent:l,byteSize:0}),void this._sendImgData(B,null,d);if(g*c>25e4||r.has("SMask")||r.has("Mask")){const t=await this.handler.sendWithPromise("commonobj",[B,"CopyLocalImage",{imageRef:o}]);if(t)return this.globalImageCache.setData(o,{objId:B,fn:F,args:C,optionalContent:l,byteSize:0}),void this.globalImageCache.addByteSize(o,t)}}if(Ao.buildImage({xref:this.xref,res:t,image:e,isInline:A,pdfFunctionFactory:this._pdfFunctionFactory,localColorSpaceCache:n}).then((async t=>(I=await t.createImageData(!1,this.options.isOffscreenCanvasSupported),I.dataLen=I.bitmap?I.width*I.height*4:I.data.length,I.ref=o,d&&this.globalImageCache.addByteSize(o,I.dataLen),this._sendImgData(B,I,d)))).catch((t=>(N(`Unable to decode image "${B}": "${t}".`),o&&this.globalImageCache.addDecodeFailed(o),this._sendImgData(B,null,d)))),s){const t={objId:B,fn:F,args:C,optionalContent:l};a.set(s,o,t),o&&(this._regionalImageCache.set(null,o,t),d&&this.globalImageCache.setData(o,{objId:B,fn:F,args:C,optionalContent:l,byteSize:0}))}}handleSMask(t,e,A,i,s,a){const n=t.get("G"),r={subtype:t.get("S").name,backdrop:t.get("BC")},o=t.get("TR");if(or(o)){const t=this._pdfFunctionFactory.create(o),e=new Uint8Array(256),A=new Float32Array(1);for(let i=0;i<256;i++)A[0]=i/255,t(A,0,A,0),e[i]=255*A[0]|0;r.transferMap=e}return this.buildFormXObject(e,n,r,A,i,s.state.clone(),a)}handleTransferFunction(t){let e;if(Array.isArray(t))e=t;else{if(!or(t))return null;e=[t]}const A=[];let i=0,s=0;for(const t of e){const e=this.xref.fetchIfRef(t);if(i++,Qt(e,"Identity")){A.push(null);continue}if(!or(e))return null;const a=this._pdfFunctionFactory.create(e),n=new Uint8Array(256),r=new Float32Array(1);for(let t=0;t<256;t++)r[0]=t/255,a(r,0,r,0),n[t]=255*r[0]|0;A.push(n),s++}return 1!==i&&4!==i||0===s?null:A}handleTilingType(t,e,A,i,s,a,n,r){const o=new $r,g=Ct.merge({xref:this.xref,dictArray:[s.get("Resources"),A]});return this.getOperatorList({stream:i,task:n,resources:g,operatorList:o}).then((function(){const A=o.getIR(),i=An(A,s,e);a.addDependencies(o.dependencies),a.addOp(t,i),s.objId&&r.set(null,s.objId,{operatorListIR:A,dict:s})})).catch((t=>{if(!(t instanceof P)){if(!this.options.ignoreErrors)throw t;N(`handleTilingType - ignoring pattern: "${t}".`)}}))}async handleSetFont(t,e,A,i,s,a,n=null,r=null){const o=e?.[0]instanceof ht?e[0].name:null;let g=await this.loadFont(o,A,t,n,r);if(g.font.isType3Font)try{await g.loadType3Data(this,t,s),i.addDependencies(g.type3Dependencies)}catch(t){g=new go({loadedName:"g_font_error",font:new Wa(`Type3 font load error: ${t}`),dict:g.font,evaluatorOptions:this.options})}return a.font=g.font,g.send(this.handler),g.loadedName}handleText(t,e){const A=e.font,i=A.charsToGlyphs(t);return A.data&&(4&e.textRenderingMode||"Pattern"===e.fillColorSpace.name||A.disableFontFace||this.options.disableFontFace)&&oo.buildFontPaths(A,i,this.handler,this.options),i}ensureStateFont(t){if(t.font)return;const e=new q("Missing setFont (Tf) operator before text rendering operator.");if(!this.options.ignoreErrors)throw e;N(`ensureStateFont: "${e}".`)}async setGState({resources:t,gState:e,operatorList:A,cacheKey:i,task:s,stateManager:a,localGStateCache:n,localColorSpaceCache:r}){const o=e.objId;let g=!0;const c=[];let h=Promise.resolve();for(const i of e.getKeys()){const n=e.get(i);switch(i){case"Type":break;case"LW":case"LC":case"LJ":case"ML":case"D":case"RI":case"FL":case"CA":case"ca":c.push([i,n]);break;case"Font":g=!1,h=h.then((()=>this.handleSetFont(t,null,n[0],A,s,a.state).then((function(t){A.addDependency(t),c.push([i,[t,n[1]]])}))));break;case"BM":c.push([i,ao(n)]);break;case"SMask":if(Qt(n,"None")){c.push([i,!1]);break}n instanceof Ct?(g=!1,h=h.then((()=>this.handleSMask(n,t,A,s,a,r))),c.push([i,!0])):N("Unsupported SMask type");break;case"TR":const e=this.handleTransferFunction(n);c.push([i,e]);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":x("graphic state operator "+i);break;default:x("Unknown graphic state operator "+i)}}await h,c.length>0&&A.addOp(9,[c]),g&&n.set(i,o,c)}loadFont(t,e,A,i=null,s=null){const a=async()=>new go({loadedName:"g_font_error",font:new Wa(`Font "${t}" is not available.`),dict:e,evaluatorOptions:this.options});let n;if(e)e instanceof Bt&&(n=e);else{const e=A.get("Font");e&&(n=e.getRaw(t))}if(n){if(this.type3FontRefs?.has(n))return a();if(this.fontCache.has(n))return this.fontCache.get(n);try{e=this.xref.fetchIfRef(n)}catch(t){N(`loadFont - lookup failed: "${t}".`)}}if(!(e instanceof Ct)){if(!this.options.ignoreErrors&&!this.parsingType3Font)return N(`Font "${t}" is not available.`),a();N(`Font "${t}" is not available -- attempting to fallback to a default font.`),e=i||oo.fallbackFontDict}if(e.cacheKey&&this.fontCache.has(e.cacheKey))return this.fontCache.get(e.cacheKey);const{promise:r,resolve:o}=Promise.withResolvers();let g;try{g=this.preEvaluateFont(e),g.cssFontInfo=s}catch(t){return N(`loadFont - preEvaluateFont failed: "${t}".`),a()}const{descriptor:c,hash:h}=g,l=n instanceof Bt;let I;if(h&&c instanceof Ct){const t=c.fontAliases||=Object.create(null);if(t[h]){const e=t[h].aliasRef;if(l&&e&&this.fontCache.has(e))return this.fontCache.putAlias(n,e),this.fontCache.get(n)}else t[h]={fontID:this.idFactory.createFontId()};l&&(t[h].aliasRef=n),I=t[h].fontID}else I=this.idFactory.createFontId();return G(I?.startsWith("f"),'The "fontID" must be (correctly) defined.'),l?this.fontCache.put(n,r):(e.cacheKey=`cacheKey_${I}`,this.fontCache.put(e.cacheKey,r)),e.loadedName=`${this.idFactory.getDocId()}_${I}`,this.translateFont(g).then((t=>{o(new go({loadedName:e.loadedName,font:t,dict:e,evaluatorOptions:this.options}))})).catch((t=>{N(`loadFont - translateFont failed: "${t}".`),o(new go({loadedName:e.loadedName,font:new Wa(t instanceof Error?t.message:t),dict:e,evaluatorOptions:this.options}))})),r}buildPath(t,e,A,i=!1){const s=t.length-1;if(A||(A=[]),s<0||91!==t.fnArray[s]){let s;switch(i&&(N(`Encountered path operator "${e}" inside of a text object.`),t.addOp(E,null)),e){case 19:const t=A[0]+A[2],e=A[1]+A[3];s=[Math.min(A[0],t),Math.min(A[1],e),Math.max(A[0],t),Math.max(A[1],e)];break;case 13:case 14:s=[A[0],A[1],A[0],A[1]];break;default:s=[1/0,1/0,-1/0,-1/0]}t.addOp(91,[[e],A,s]),i&&t.addOp(f,null)}else{const i=t.argsArray[s];i[0].push(e),i[1].push(...A);const a=i[2];switch(e){case 19:const t=A[0]+A[2],e=A[1]+A[3];a[0]=Math.min(a[0],A[0],t),a[1]=Math.min(a[1],A[1],e),a[2]=Math.max(a[2],A[0],t),a[3]=Math.max(a[3],A[1],e);break;case 13:case 14:a[0]=Math.min(a[0],A[0]),a[1]=Math.min(a[1],A[1]),a[2]=Math.max(a[2],A[0]),a[3]=Math.max(a[3],A[1])}}}parseColorSpace({cs:t,resources:e,localColorSpaceCache:A}){return he.parseAsync({cs:t,xref:this.xref,resources:e,pdfFunctionFactory:this._pdfFunctionFactory,localColorSpaceCache:A}).catch((t=>{if(t instanceof P)return null;if(this.options.ignoreErrors)return N(`parseColorSpace - ignoring ColorSpace: "${t}".`),null;throw t}))}parseShading({shading:t,resources:e,localColorSpaceCache:A,localShadingPatternCache:i}){let s,a=i.get(t);if(a)return a;try{s=Za.parseShading(t,this.xref,e,this._pdfFunctionFactory,A).getIR()}catch(e){if(e instanceof P)return null;if(this.options.ignoreErrors)return N(`parseShading - ignoring shading: "${e}".`),i.set(t,null),null;throw e}return a=`pattern_${this.idFactory.createObjId()}`,this.parsingType3Font&&(a=`${this.idFactory.getDocId()}_type3_${a}`),i.set(t,a),this.parsingType3Font?this.handler.send("commonobj",[a,"Pattern",s]):this.handler.send("obj",[a,this.pageIndex,"Pattern",s]),a}handleColorN(t,e,A,i,s,a,n,r,o,g){const c=A.pop();if(c instanceof ht){const h=s.getRaw(c.name),l=h instanceof Bt&&o.getByRef(h);if(l)try{const s=i.base?i.base.getRgb(A,0):null,a=An(l.operatorListIR,l.dict,s);return void t.addOp(e,a)}catch{}const I=this.xref.fetchIfRef(h);if(I){const s=I instanceof mt?I.dict:I,c=s.get("PatternType");if(1===c){const r=i.base?i.base.getRgb(A,0):null;return this.handleTilingType(e,r,a,I,s,t,n,o)}if(2===c){const A=s.get("Shading"),i=this.parseShading({shading:A,resources:a,localColorSpaceCache:r,localShadingPatternCache:g});if(i){const A=Jt(s.getArray("Matrix"),null);t.addOp(e,["Shading",i,A])}return}throw new q(`Unknown PatternType: ${c}`)}}throw new q(`Unknown PatternName: ${c}`)}_parseVisibilityExpression(t,e,A){if(++e>10)return void N("Visibility expression is too deeply nested");const i=t.length,s=this.xref.fetchIfRef(t[0]);if(!(i<2)&&s instanceof ht){switch(s.name){case"And":case"Or":case"Not":A.push(s.name);break;default:return void N(`Invalid operator ${s.name} in visibility expression`)}for(let s=1;s<i;s++){const i=t[s],a=this.xref.fetchIfRef(i);if(Array.isArray(a)){const t=[];A.push(t),this._parseVisibilityExpression(a,e,t)}else i instanceof Bt&&A.push(i.toString())}}else N("Invalid visibility expression")}async parseMarkedContentProps(t,e){let A;if(t instanceof ht)A=e.get("Properties").get(t.name);else{if(!(t instanceof Ct))throw new q("Optional content properties malformed.");A=t}const i=A.get("Type")?.name;if("OCG"===i)return{type:i,id:A.objId};if("OCMD"===i){const t=A.get("VE");if(Array.isArray(t)){const e=[];if(this._parseVisibilityExpression(t,0,e),e.length>0)return{type:"OCMD",expression:e}}const e=A.get("OCGs");if(Array.isArray(e)||e instanceof Ct){const t=[];if(Array.isArray(e))for(const A of e)t.push(A.toString());else t.push(e.objId);return{type:i,ids:t,policy:A.get("P")instanceof ht?A.get("P").name:null,expression:null}}if(e instanceof Bt)return{type:i,id:e.toString()}}return null}getOperatorList({stream:t,task:e,resources:A,operatorList:i,initialState:s=null,fallbackFontDict:a=null}){if(A||=Ct.empty,s||=new lo,!i)throw new Error('getOperatorList: missing "operatorList" parameter');const n=this,r=this.xref;let o=!1;const g=new zn,c=new $n,h=new er,l=new Ar,I=new Map,C=A.get("XObject")||Ct.empty,B=A.get("Pattern")||Ct.empty,d=new co(s),u=new Io(t,r,d),Q=new ro;function E(t){for(let t=0,e=u.savedStatesDepth;t<e;t++)i.addOp(f,[])}return new Promise((function t(s,f){const p=function(e){Promise.all([e,i.ready]).then((function(){try{t(s,f)}catch(t){f(t)}}),f)};e.ensureNotTerminated(),Q.reset();const k={};let S,F,R,v,G,M;for(;!(S=Q.check())&&(k.args=null,u.read(k));){let t=k.args,s=k.fn;switch(0|s){case 66:if(M=t[0]instanceof ht,G=t[0].name,M){const e=g.getByName(G);if(e){no(i,e),t=null;continue}}return void p(new Promise((function(t,s){if(!M)throw new q("XObject must be referred to by name.");let a=C.getRaw(G);if(a instanceof Bt){const e=g.getByRef(a)||n._regionalImageCache.getByRef(a);if(e)return no(i,e),void t();const A=n.globalImageCache.getData(a,n.pageIndex);if(A)return i.addDependency(A.objId),i.addImageOps(A.fn,A.args,A.optionalContent),void t();a=r.fetch(a)}if(!(a instanceof mt))throw new q("XObject should be a stream");const o=a.dict.get("Subtype");if(!(o instanceof ht))throw new q("XObject should have a Name subtype");if("Form"!==o.name)if("Image"!==o.name){if("PS"!==o.name)throw new q(`Unhandled XObject subtype ${o.name}`);x("Ignored XObject subtype PS"),t()}else n.buildPaintImageXObject({resources:A,image:a,operatorList:i,cacheKey:G,localImageCache:g,localColorSpaceCache:c}).then(t,s);else d.save(),n.buildFormXObject(A,a,null,i,e,d.state.clone(),c).then((function(){d.restore(),t()}),s)})).catch((function(t){if(!(t instanceof P)){if(!n.options.ignoreErrors)throw t;N(`getOperatorList - ignoring XObject: "${t}".`)}})));case m:var L=t[1];return void p(n.handleSetFont(A,t,null,i,e,d.state,a).then((function(t){i.addDependency(t),i.addOp(m,[t,L])})));case 31:o=!0;break;case 32:o=!1;break;case 65:var U=t[0].cacheKey;if(U){const e=g.getByName(U);if(e){no(i,e),t=null;continue}}return void p(n.buildPaintImageXObject({resources:A,image:t[0],isInline:!0,operatorList:i,cacheKey:U,localImageCache:g,localColorSpaceCache:c}));case y:if(!d.state.font){n.ensureStateFont(d.state);continue}t[0]=n.handleText(t[0],d.state);break;case 45:if(!d.state.font){n.ensureStateFont(d.state);continue}var H=[],J=d.state;for(const e of t[0])"string"==typeof e?H.push(...n.handleText(e,J)):"number"==typeof e&&H.push(e);t[0]=H,s=y;break;case 46:if(!d.state.font){n.ensureStateFont(d.state);continue}i.addOp(43),t[0]=n.handleText(t[0],d.state),s=y;break;case 47:if(!d.state.font){n.ensureStateFont(d.state);continue}i.addOp(43),i.addOp(34,[t.shift()]),i.addOp(33,[t.shift()]),t[0]=n.handleText(t[0],d.state),s=y;break;case 38:d.state.textRenderingMode=t[0];break;case 51:{const e=he.getCached(t[0],r,c);if(e){d.state.fillColorSpace=e;continue}return void p(n.parseColorSpace({cs:t[0],resources:A,localColorSpaceCache:c}).then((function(t){t&&(d.state.fillColorSpace=t)})))}case 50:{const e=he.getCached(t[0],r,c);if(e){d.state.strokeColorSpace=e;continue}return void p(n.parseColorSpace({cs:t[0],resources:A,localColorSpaceCache:c}).then((function(t){t&&(d.state.strokeColorSpace=t)})))}case 54:v=d.state.fillColorSpace,t=v.getRgb(t,0),s=b;break;case 52:v=d.state.strokeColorSpace,t=v.getRgb(t,0),s=w;break;case 57:d.state.fillColorSpace=he.singletons.gray,t=he.singletons.gray.getRgb(t,0),s=b;break;case 56:d.state.strokeColorSpace=he.singletons.gray,t=he.singletons.gray.getRgb(t,0),s=w;break;case 61:d.state.fillColorSpace=he.singletons.cmyk,t=he.singletons.cmyk.getRgb(t,0),s=b;break;case 60:d.state.strokeColorSpace=he.singletons.cmyk,t=he.singletons.cmyk.getRgb(t,0),s=w;break;case b:d.state.fillColorSpace=he.singletons.rgb,t=he.singletons.rgb.getRgb(t,0);break;case w:d.state.strokeColorSpace=he.singletons.rgb,t=he.singletons.rgb.getRgb(t,0);break;case 55:if(v=d.state.fillColorSpace,"Pattern"===v.name)return void p(n.handleColorN(i,55,t,v,B,A,e,c,l,I));t=v.getRgb(t,0),s=b;break;case 53:if(v=d.state.strokeColorSpace,"Pattern"===v.name)return void p(n.handleColorN(i,53,t,v,B,A,e,c,l,I));t=v.getRgb(t,0),s=w;break;case 62:var Y=A.get("Shading");if(!Y)throw new q("No shading resource found");var T=Y.get(t[0].name);if(!T)throw new q("No shading object found");const u=n.parseShading({shading:T,resources:A,localColorSpaceCache:c,localShadingPatternCache:I});if(!u)continue;t=[u],s=62;break;case 9:if(M=t[0]instanceof ht,G=t[0].name,M){const e=h.getByName(G);if(e){e.length>0&&i.addOp(9,[e]),t=null;continue}}return void p(new Promise((function(t,s){if(!M)throw new q("GState must be referred to by name.");const a=A.get("ExtGState");if(!(a instanceof Ct))throw new q("ExtGState should be a dictionary.");const r=a.get(G);if(!(r instanceof Ct))throw new q("GState should be a dictionary.");n.setGState({resources:A,gState:r,operatorList:i,cacheKey:G,task:e,stateManager:d,localGStateCache:h,localColorSpaceCache:c}).then(t,s)})).catch((function(t){if(!(t instanceof P)){if(!n.options.ignoreErrors)throw t;N(`getOperatorList - ignoring ExtGState: "${t}".`)}})));case 13:case 14:case 15:case 16:case 17:case 18:case 19:n.buildPath(i,s,t,o);continue;case 67:case 68:case 72:case 73:continue;case D:if(!(t[0]instanceof ht)){N(`Expected name for beginMarkedContentProps arg0=${t[0]}`),i.addOp(D,["OC",null]);continue}if("OC"===t[0].name)return void p(n.parseMarkedContentProps(t[1],A).then((t=>{i.addOp(D,["OC",t])})).catch((t=>{if(!(t instanceof P)){if(!n.options.ignoreErrors)throw t;N(`getOperatorList - ignoring beginMarkedContentProps: "${t}".`),i.addOp(D,["OC",null])}})));t=[t[0].name,t[1]instanceof Ct?t[1].get("MCID"):null];break;default:if(null!==t){for(F=0,R=t.length;F<R&&!(t[F]instanceof Ct);F++);if(F<R){N("getOperatorList - ignoring operator: "+s);continue}}}i.addOp(s,t)}S?p(so):(E(),s())})).catch((t=>{if(!(t instanceof P)){if(!this.options.ignoreErrors)throw t;N(`getOperatorList - ignoring errors during "${e.name}" task: "${t}".`),E()}}))}getTextContent({stream:t,task:e,resources:A,stateManager:i=null,includeMarkedContent:s=!1,sink:a,seenStyles:n=new Set,viewBox:g,lang:c=null,markedContentData:h=null,disableNormalization:l=!1,keepWhiteSpace:I=!1}){A||=Ct.empty,i||=new co(new ho),s&&(h||={level:0});const C={items:[],styles:Object.create(null),lang:c},B={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},d=[" "," "];let u=0;function Q(t){const e=(u+1)%2,A=" "!==d[u]&&" "===d[e];return d[u]=t,u=e,!I&&A}function E(){return!I&&" "!==d[u]&&" "===d[(u+1)%2]}function p(){d[0]=d[1]=" ",u=0}const w=this,b=this.xref,S=[];let F=null;const R=new zn,x=new er,v=new Io(t,b,i);let G;function M({width:t=0,height:e=0,transform:A=B.prevTransform,fontName:i=B.fontName}){C.items.push({str:" ",dir:"ltr",width:t,height:e,transform:A,fontName:i,hasEOL:!1})}function L(){const t=G.font,e=[G.fontSize*G.textHScale,0,0,G.fontSize,0,G.textRise];if(t.isType3Font&&(G.fontSize<=1||t.isCharBBox)&&!At(G.fontMatrix,o)){const A=t.bbox[3]-t.bbox[1];A>0&&(e[3]*=A*G.fontMatrix[3])}return X.transform(G.ctm,X.transform(G.textMatrix,e))}function U(){if(B.initialized)return B;const{font:t,loadedName:e}=G;if(!n.has(e)&&(n.add(e),C.styles[e]={fontFamily:t.fallbackName,ascent:t.ascent,descent:t.descent,vertical:t.vertical},w.options.fontExtraProperties&&t.systemFontInfo)){const A=C.styles[e];A.fontSubstitution=t.systemFontInfo.css,A.fontSubstitutionLoadedName=t.systemFontInfo.loadedName}B.fontName=e;const A=B.transform=L();t.vertical?(B.width=B.totalWidth=Math.hypot(A[0],A[1]),B.height=B.totalHeight=0,B.vertical=!0):(B.width=B.totalWidth=0,B.height=B.totalHeight=Math.hypot(A[2],A[3]),B.vertical=!1);const i=Math.hypot(G.textLineMatrix[0],G.textLineMatrix[1]),s=Math.hypot(G.ctm[0],G.ctm[1]);B.textAdvanceScale=s*i;const{fontSize:a}=G;return B.trackingSpaceMin=.102*a,B.notASpace=.03*a,B.negativeSpaceMax=-.2*a,B.spaceInFlowMin=.102*a,B.spaceInFlowMax=.6*a,B.hasEOL=!1,B.initialized=!0,B}function H(){if(!B.initialized)return;const t=Math.hypot(G.textLineMatrix[0],G.textLineMatrix[1]),e=Math.hypot(G.ctm[0],G.ctm[1])*t;e!==B.textAdvanceScale&&(B.vertical?(B.totalHeight+=B.height*B.textAdvanceScale,B.height=0):(B.totalWidth+=B.width*B.textAdvanceScale,B.width=0),B.textAdvanceScale=e)}async function J(t,i){const s=await w.loadFont(t,i,A);if(s.font.isType3Font)try{await s.loadType3Data(w,A,e)}catch{}G.loadedName=s.loadedName,G.font=s.font,G.fontMatrix=s.font.fontMatrix||o}function Y(t,e,A){const i=Math.hypot(A[0],A[1]);return[(A[0]*t+A[1]*e)/i,(A[2]*t+A[3]*e)/i]}function T(t){const e=L();let A=e[4],i=e[5];if(G.font?.vertical){if(A<g[0]||A>g[2]||i+t<g[1]||i>g[3])return!1}else if(A+t<g[0]||A>g[2]||i<g[1]||i>g[3])return!1;if(!G.font||!B.prevTransform)return!0;let s=B.prevTransform[4],a=B.prevTransform[5];if(s===A&&a===i)return!0;let n=-1;switch(e[0]&&0===e[1]&&0===e[2]?n=e[0]>0?0:180:e[1]&&0===e[0]&&0===e[3]&&(n=e[1]>0?90:270),n){case 0:break;case 90:[A,i]=[i,A],[s,a]=[a,s];break;case 180:[A,i,s,a]=[-A,-i,-s,-a];break;case 270:[A,i]=[-i,-A],[s,a]=[-a,-s];break;default:[A,i]=Y(A,i,e),[s,a]=Y(s,a,B.prevTransform)}if(G.font.vertical){const t=(a-i)/B.textAdvanceScale,e=A-s,n=Math.sign(B.height);return t<n*B.negativeSpaceMax?Math.abs(e)>.5*B.width?(_(),!0):(p(),W(),!0):Math.abs(e)>B.width?(_(),!0):(t<=n*B.notASpace&&p(),t<=n*B.trackingSpaceMin?E()?(p(),W(),M({height:Math.abs(t)})):B.height+=t:O(t,B.prevTransform,n)||(0===B.str.length?(p(),M({height:Math.abs(t)})):B.height+=t),Math.abs(e)>.25*B.width&&W(),!0)}const r=(A-s)/B.textAdvanceScale,o=i-a,c=Math.sign(B.width);return r<c*B.negativeSpaceMax?Math.abs(o)>.5*B.height?(_(),!0):(p(),W(),!0):Math.abs(o)>B.height?(_(),!0):(r<=c*B.notASpace&&p(),r<=c*B.trackingSpaceMin?E()?(p(),W(),M({width:Math.abs(r)})):B.width+=r:O(r,B.prevTransform,c)||(0===B.str.length?(p(),M({width:Math.abs(r)})):B.width+=r),Math.abs(o)>.25*B.height&&W(),!0)}function K({chars:t,extraSpacing:e}){const A=G.font;if(!t){const t=G.charSpacing+e;return t&&(A.vertical?G.translateTextMatrix(0,-t):G.translateTextMatrix(t*G.textHScale,0)),void(I&&T(0))}const i=A.charsToGlyphs(t),s=G.fontMatrix[0]*G.fontSize;for(let t=0,a=i.length;t<a;t++){const n=i[t],{category:r}=n;if(r.isInvisibleFormatMark)continue;let o=G.charSpacing+(t+1===a?e:0),g=n.width;A.vertical&&(g=n.vmetric?n.vmetric[0]:-g);let c=g*s;if(!I&&r.isWhitespace){A.vertical?(o+=-c+G.wordSpacing,G.translateTextMatrix(0,-o)):(o+=c+G.wordSpacing,G.translateTextMatrix(o*G.textHScale,0)),Q(" ");continue}if(!r.isZeroWidthDiacritic&&!T(c)){A.vertical?G.translateTextMatrix(0,c):G.translateTextMatrix(c*G.textHScale,0);continue}const h=U();r.isZeroWidthDiacritic&&(c=0),A.vertical?(G.translateTextMatrix(0,c),c=Math.abs(c),h.height+=c):(c*=G.textHScale,G.translateTextMatrix(c,0),h.width+=c),c&&(h.prevTransform=L());const l=n.unicode;Q(l)&&h.str.push(" "),h.str.push(l),o&&(A.vertical?G.translateTextMatrix(0,-o):G.translateTextMatrix(o*G.textHScale,0))}}function _(){p(),B.initialized?(B.hasEOL=!0,W()):C.items.push({str:"",dir:"ltr",width:0,height:0,transform:L(),fontName:G.loadedName,hasEOL:!0})}function O(t,e,A){if(A*B.spaceInFlowMin<=t&&t<=A*B.spaceInFlowMax)return B.initialized&&(p(),B.str.push(" ")),!1;const i=B.fontName;let s=0;return B.vertical&&(s=t,t=0),W(),p(),M({width:Math.abs(t),height:Math.abs(s),transform:e||L(),fontName:i}),!0}function W(){B.initialized&&B.str&&(B.vertical?B.totalHeight+=B.height*B.textAdvanceScale:B.totalWidth+=B.width*B.textAdvanceScale,C.items.push(function(t){let e=t.str.join("");l||(e=function(t){return st||(st=/([\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,at=new Map([["ſt","ſt"]])),t.replaceAll(st,((t,e,A)=>e?e.normalize("NFKC"):at.get(A)))}(e));const A=Gr(e,-1,t.vertical);return{str:A.str,dir:A.dir,width:Math.abs(t.totalWidth),height:Math.abs(t.totalHeight),transform:t.transform,fontName:t.fontName,hasEOL:t.hasEOL}}(B)),B.initialized=!1,B.str.length=0)}function Z(t=!1){const e=C.items.length;0===e||t&&e<10||(a.enqueue(C,e),C.items=[],C.styles=Object.create(null))}const j=new ro;return new Promise((function t(o,B){const d=function(e){Z(!0),Promise.all([e,a.ready]).then((function(){try{t(o,B)}catch(t){B(t)}}),B)};e.ensureNotTerminated(),j.reset();const u={};let Q,E=[];for(;!(Q=j.check())&&(E.length=0,u.args=E,v.read(u));){const t=G;G=i.state;const o=u.fn;switch(E=u.args,0|o){case m:var p=E[0].name,M=E[1];if(G.font&&p===G.fontName&&M===G.fontSize)break;return W(),G.fontName=p,G.fontSize=M,void d(J(p,null));case 39:G.textRise=E[0];break;case 35:G.textHScale=E[0]/100;break;case 36:G.leading=E[0];break;case 40:G.translateTextLineMatrix(E[0],E[1]),G.textMatrix=G.textLineMatrix.slice();break;case 41:G.leading=-E[1],G.translateTextLineMatrix(E[0],E[1]),G.textMatrix=G.textLineMatrix.slice();break;case 43:G.carriageReturn();break;case 42:G.setTextMatrix(E[0],E[1],E[2],E[3],E[4],E[5]),G.setTextLineMatrix(E[0],E[1],E[2],E[3],E[4],E[5]),H();break;case 33:G.charSpacing=E[0];break;case 34:G.wordSpacing=E[0];break;case 31:G.textMatrix=r.slice(),G.textLineMatrix=r.slice();break;case 45:if(!i.state.font){w.ensureStateFont(i.state);continue}const o=(G.font.vertical?1:-1)*G.fontSize/1e3,B=E[0];for(let t=0,e=B.length;t<e;t++){const e=B[t];if("string"==typeof e)S.push(e);else if("number"==typeof e&&0!==e){const t=S.join("");S.length=0,K({chars:t,extraSpacing:e*o})}}if(S.length>0){const t=S.join("");S.length=0,K({chars:t,extraSpacing:0})}break;case y:if(!i.state.font){w.ensureStateFont(i.state);continue}K({chars:E[0],extraSpacing:0});break;case 46:if(!i.state.font){w.ensureStateFont(i.state);continue}G.carriageReturn(),K({chars:E[0],extraSpacing:0});break;case 47:if(!i.state.font){w.ensureStateFont(i.state);continue}G.wordSpacing=E[0],G.charSpacing=E[1],G.carriageReturn(),K({chars:E[2],extraSpacing:0});break;case 66:W(),F||(F=A.get("XObject")||Ct.empty);var L=E[0]instanceof ht,U=E[0].name;if(L&&R.getByName(U))break;return void d(new Promise((function(t,r){if(!L)throw new q("XObject must be referred to by name.");let o=F.getRaw(U);if(o instanceof Bt){if(R.getByRef(o))return void t();if(w.globalImageCache.getData(o,w.pageIndex))return void t();o=b.fetch(o)}if(!(o instanceof mt))throw new q("XObject should be a stream");const C=o.dict.get("Subtype");if(!(C instanceof ht))throw new q("XObject should have a Name subtype");if("Form"!==C.name)return R.set(U,o.dict.objId,!0),void t();const B=i.state.clone(),d=new co(B),u=Jt(o.dict.getArray("Matrix"),null);u&&d.transform(u),Z();const Q={enqueueInvoked:!1,enqueue(t,e){this.enqueueInvoked=!0,a.enqueue(t,e)},get desiredSize(){return a.desiredSize},get ready(){return a.ready}};w.getTextContent({stream:o,task:e,resources:o.dict.get("Resources")||A,stateManager:d,includeMarkedContent:s,sink:Q,seenStyles:n,viewBox:g,lang:c,markedContentData:h,disableNormalization:l,keepWhiteSpace:I}).then((function(){Q.enqueueInvoked||R.set(U,o.dict.objId,!0),t()}),r)})).catch((function(t){if(!(t instanceof P)){if(!w.options.ignoreErrors)throw t;N(`getTextContent - ignoring XObject: "${t}".`)}})));case 9:if(L=E[0]instanceof ht,U=E[0].name,L&&x.getByName(U))break;return void d(new Promise((function(t,e){if(!L)throw new q("GState must be referred to by name.");const i=A.get("ExtGState");if(!(i instanceof Ct))throw new q("ExtGState should be a dictionary.");const s=i.get(U);if(!(s instanceof Ct))throw new q("GState should be a dictionary.");const a=s.get("Font");a?(W(),G.fontName=null,G.fontSize=a[1],J(null,a[0]).then(t,e)):(x.set(U,s.objId,!0),t())})).catch((function(t){if(!(t instanceof P)){if(!w.options.ignoreErrors)throw t;N(`getTextContent - ignoring ExtGState: "${t}".`)}})));case 69:W(),s&&(h.level++,C.items.push({type:"beginMarkedContent",tag:E[0]instanceof ht?E[0].name:null}));break;case D:if(W(),s){h.level++;let t=null;E[1]instanceof Ct&&(t=E[1].get("MCID")),C.items.push({type:"beginMarkedContentProps",id:Number.isInteger(t)?`${w.idFactory.getPageObjId()}_mc${t}`:null,tag:E[0]instanceof ht?E[0].name:null})}break;case k:if(W(),s){if(0===h.level)break;h.level--,C.items.push({type:"endMarkedContent"})}break;case f:!t||t.font===G.font&&t.fontSize===G.fontSize&&t.fontName===G.fontName||W()}if(C.items.length>=a.desiredSize){Q=!0;break}}Q?d(so):(W(),Z(),o())})).catch((t=>{if(!(t instanceof P)){if(!this.options.ignoreErrors)throw t;N(`getTextContent - ignoring errors during "${e.name}" task: "${t}".`),W(),Z()}}))}async extractDataStructures(t,e){const A=this.xref;let i;const s=this.readToUnicode(e.toUnicode);if(e.composite){const A=t.get("CIDSystemInfo");A instanceof Ct&&(e.cidSystemInfo={registry:$(A.get("Registry")),ordering:$(A.get("Ordering")),supplement:A.get("Supplement")});try{const e=t.get("CIDToGIDMap");e instanceof mt&&(i=e.getBytes())}catch(t){if(!this.options.ignoreErrors)throw t;N(`extractDataStructures - ignoring CIDToGIDMap data: "${t}".`)}}const a=[];let n,r=null;if(t.has("Encoding")){if(n=t.get("Encoding"),n instanceof Ct){if(r=n.get("BaseEncoding"),r=r instanceof ht?r.name:null,n.has("Differences")){const t=n.get("Differences");let e=0;for(const i of t){const t=A.fetchIfRef(i);if("number"==typeof t)e=t;else{if(!(t instanceof ht))throw new q(`Invalid entry in 'Differences' array: ${t}`);a[e++]=t.name}}}}else if(n instanceof ht)r=n.name;else{const t="Encoding is not a Name nor a Dict";if(!this.options.ignoreErrors)throw new q(t);N(t)}"MacRomanEncoding"!==r&&"MacExpertEncoding"!==r&&"WinAnsiEncoding"!==r&&(r=null)}const o=!e.file||e.isInternalFont,g=fs()[e.name];if(r&&o&&g&&(r=null),r)e.defaultEncoding=Ui(r);else{const t=!!(4&e.flags),A=!!(32&e.flags);n=vi,"TrueType"!==e.type||A||(n=Gi),(t||g)&&(n=Ni,o&&(/Symbol/i.test(e.name)?n=Mi:/Dingbats/i.test(e.name)?n=Li:/Wingdings/i.test(e.name)&&(n=Gi))),e.defaultEncoding=n}e.differences=a,e.baseEncodingName=r,e.hasEncoding=!!r||a.length>0,e.dict=t,e.toUnicode=await s;const c=await this.buildToUnicode(e);return e.toUnicode=c,i&&(e.cidToGidMap=this.readCidToGidMap(i,c)),e}_simpleFontToUnicode(t,e=!1){G(!t.composite,"Must be a simple font.");const A=[],i=t.defaultEncoding.slice(),s=t.baseEncodingName,a=t.differences;for(const t in a){const e=a[t];".notdef"!==e&&(i[t]=e)}const n=is();for(const a in i){let r=i[a];if(""===r)continue;let o=n[r];if(void 0!==o){A[a]=String.fromCharCode(o);continue}let g=0;switch(r[0]){case"G":3===r.length&&(g=parseInt(r.substring(1),16));break;case"g":5===r.length&&(g=parseInt(r.substring(1),16));break;case"C":case"c":if(r.length>=3&&r.length<=4){const A=r.substring(1);if(e){g=parseInt(A,16);break}if(g=+A,Number.isNaN(g)&&Number.isInteger(parseInt(A,16)))return this._simpleFontToUnicode(t,!0)}break;case"u":o=ns(r,n),-1!==o&&(g=o);break;default:switch(r){case"f_h":case"f_t":case"T_h":A[a]=r.replaceAll("_","");continue}}if(g>0&&g<=1114111&&Number.isInteger(g)){if(s&&g===+a){const t=Ui(s);if(t&&(r=t[a])){A[a]=String.fromCharCode(n[r]);continue}}A[a]=String.fromCodePoint(g)}}return A}async buildToUnicode(t){if(t.hasIncludedToUnicodeMap=t.toUnicode?.length>0,t.hasIncludedToUnicodeMap)return!t.composite&&t.hasEncoding&&(t.fallbackToUnicode=this._simpleFontToUnicode(t)),t.toUnicode;if(!t.composite)return new Ds(this._simpleFontToUnicode(t));if(t.composite&&(t.cMap.builtInCMap&&!(t.cMap instanceof li)||"Adobe"===t.cidSystemInfo?.registry&&("GB1"===t.cidSystemInfo.ordering||"CNS1"===t.cidSystemInfo.ordering||"Japan1"===t.cidSystemInfo.ordering||"Korea1"===t.cidSystemInfo.ordering))){const{registry:e,ordering:A}=t.cidSystemInfo,i=ht.get(`${e}-${A}-UCS2`),s=await Di.create({encoding:i,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null}),a=[],n=[];return t.cMap.forEach((function(t,e){if(e>65535)throw new q("Max size of CID is 65,535");const A=s.lookup(e);if(A){n.length=0;for(let t=0,e=A.length;t<e;t+=2)n.push((A.charCodeAt(t)<<8)+A.charCodeAt(t+1));a[t]=String.fromCharCode(...n)}})),new Ds(a)}return new ks(t.firstChar,t.lastChar)}async readToUnicode(t){if(!t)return null;if(t instanceof ht){const e=await Di.create({encoding:t,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null});return e instanceof li?new ks(0,65535):new Ds(e.getMap())}if(t instanceof mt)try{const e=await Di.create({encoding:t,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null});if(e instanceof li)return new ks(0,65535);const A=new Array(e.length);return e.forEach((function(t,e){if("number"==typeof e)return void(A[t]=String.fromCodePoint(e));const i=[];for(let t=0;t<e.length;t+=2){const A=e.charCodeAt(t)<<8|e.charCodeAt(t+1);if(55296!=(63488&A)){i.push(A);continue}t+=2;const s=e.charCodeAt(t)<<8|e.charCodeAt(t+1);i.push(((1023&A)<<10)+(1023&s)+65536)}A[t]=String.fromCodePoint(...i)})),new Ds(A)}catch(t){if(t instanceof P)return null;if(this.options.ignoreErrors)return N(`readToUnicode - ignoring ToUnicode data: "${t}".`),null;throw t}return null}readCidToGidMap(t,e){const A=[];for(let i=0,s=t.length;i<s;i++){const s=t[i++]<<8|t[i],a=i>>1;(0!==s||e.has(a))&&(A[a]=s)}return A}extractWidths(t,e,A){const i=this.xref;let s=[],a=0;const n=[];let r;if(A.composite){const e=t.get("DW");a="number"==typeof e?Math.ceil(e):1e3;const o=t.get("W");if(Array.isArray(o))for(let t=0,e=o.length;t<e;t++){let e=i.fetchIfRef(o[t++]);if(!Number.isInteger(e))break;const A=i.fetchIfRef(o[t]);if(Array.isArray(A))for(const t of A){const A=i.fetchIfRef(t);"number"==typeof A&&(s[e]=A),e++}else{if(!Number.isInteger(A))break;{const a=i.fetchIfRef(o[++t]);if("number"!=typeof a)continue;for(let t=e;t<=A;t++)s[t]=a}}}if(A.vertical){const e=t.getArray("DW2");let A=Ht(e,2)?e:[880,-1e3];if(r=[A[1],.5*a,A[0]],A=t.get("W2"),Array.isArray(A))for(let t=0,e=A.length;t<e;t++){let e=i.fetchIfRef(A[t++]);if(!Number.isInteger(e))break;const s=i.fetchIfRef(A[t]);if(Array.isArray(s))for(let t=0,A=s.length;t<A;t++){const A=[i.fetchIfRef(s[t++]),i.fetchIfRef(s[t++]),i.fetchIfRef(s[t])];Ht(A,null)&&(n[e]=A),e++}else{if(!Number.isInteger(s))break;{const a=[i.fetchIfRef(A[++t]),i.fetchIfRef(A[++t]),i.fetchIfRef(A[++t])];if(!Ht(a,null))continue;for(let t=e;t<=s;t++)n[t]=a}}}}}else{const n=t.get("Widths");if(Array.isArray(n)){let t=A.firstChar;for(const e of n){const A=i.fetchIfRef(e);"number"==typeof A&&(s[t]=A),t++}const r=e.get("MissingWidth");a="number"==typeof r?r:0}else{const e=t.get("BaseFont");if(e instanceof ht){const t=this.getBaseFontMetrics(e.name);s=this.buildCharCodeToWidth(t.widths,A),a=t.defaultWidth}}}let o=!0,g=a;for(const t in s){const e=s[t];if(e)if(g){if(g!==e){o=!1;break}}else g=e}o?A.flags|=1:A.flags&=-2,A.defaultWidth=a,A.widths=s,A.defaultVMetrics=r,A.vmetrics=n}isSerifFont(t){const e=t.split("-",1)[0];return e in Es()||/serif/gi.test(e)}getBaseFontMetrics(t){let e=0,A=Object.create(null),i=!1,s=ds()[t]||t;const a=Os();s in a||(s=this.isSerifFont(t)?"Times-Roman":"Helvetica");const n=a[s];return"number"==typeof n?(e=n,i=!0):A=n(),{defaultWidth:e,monospace:i,widths:A}}buildCharCodeToWidth(t,e){const A=Object.create(null),i=e.differences,s=e.defaultEncoding;for(let e=0;e<256;e++)e in i&&t[i[e]]?A[e]=t[i[e]]:e in s&&t[s[e]]&&(A[e]=t[s[e]]);return A}preEvaluateFont(t){const e=t;let A=t.get("Subtype");if(!(A instanceof ht))throw new q("invalid font Subtype");let i,s=!1;if("Type0"===A.name){const e=t.get("DescendantFonts");if(!e)throw new q("Descendant fonts are not specified");if(!((t=Array.isArray(e)?this.xref.fetchIfRef(e[0]):e)instanceof Ct))throw new q("Descendant font is not a dictionary.");if(A=t.get("Subtype"),!(A instanceof ht))throw new q("invalid font Subtype");s=!0}let a=t.get("FirstChar");Number.isInteger(a)||(a=0);let n=t.get("LastChar");Number.isInteger(n)||(n=s?65535:255);const r=t.get("FontDescriptor"),o=t.get("ToUnicode")||e.get("ToUnicode");if(r){i=new Zr;const A=e.getRaw("Encoding");if(A instanceof ht)i.update(A.name);else if(A instanceof Bt)i.update(A.toString());else if(A instanceof Ct)for(const t of A.getRawValues())if(t instanceof ht)i.update(t.name);else if(t instanceof Bt)i.update(t.toString());else if(Array.isArray(t)){const e=t.length,A=new Array(e);for(let i=0;i<e;i++){const e=t[i];e instanceof ht?A[i]=e.name:("number"==typeof e||e instanceof Bt)&&(A[i]=e.toString())}i.update(A.join())}if(i.update(`${a}-${n}`),o instanceof mt){const t=o.str||o,e=t.buffer?new Uint8Array(t.buffer.buffer,0,t.bufferLength):new Uint8Array(t.bytes.buffer,t.start,t.end-t.start);i.update(e)}else o instanceof ht&&i.update(o.name);const r=t.get("Widths")||e.get("Widths");if(Array.isArray(r)){const t=[];for(const e of r)("number"==typeof e||e instanceof Bt)&&t.push(e.toString());i.update(t.join())}if(s){i.update("compositeFont");const A=t.get("W")||e.get("W");if(Array.isArray(A)){const t=[];for(const e of A)if("number"==typeof e||e instanceof Bt)t.push(e.toString());else if(Array.isArray(e)){const A=[];for(const t of e)("number"==typeof t||t instanceof Bt)&&A.push(t.toString());t.push(`[${A.join()}]`)}i.update(t.join())}const s=t.getRaw("CIDToGIDMap")||e.getRaw("CIDToGIDMap");s instanceof ht?i.update(s.name):s instanceof Bt?i.update(s.toString()):s instanceof mt&&i.update(s.peekBytes())}}return{descriptor:r,dict:t,baseDict:e,composite:s,type:A.name,firstChar:a,lastChar:n,toUnicode:o,hash:i?i.hexdigest():""}}async translateFont({descriptor:t,dict:e,baseDict:A,composite:i,type:s,firstChar:a,lastChar:n,toUnicode:r,cssFontInfo:g}){const c="Type3"===s;if(!t){if(!c){let t=e.get("BaseFont");if(!(t instanceof ht))throw new q("Base font is not specified");t=t.name.replaceAll(/[,_]/g,"-");const i=this.getBaseFontMetrics(t),o=t.split("-",1)[0],g=(this.isSerifFont(o)?2:0)|(i.monospace?1:0)|(fs()[o]?4:32),h={type:s,name:t,loadedName:A.loadedName,systemFontInfo:null,widths:i.widths,defaultWidth:i.defaultWidth,isSimulatedFlags:!0,flags:g,firstChar:a,lastChar:n,toUnicode:r,xHeight:0,capHeight:0,italicAngle:0,isType3Font:c},l=e.get("Widths"),I=ws(t);let C=null;I&&(C=await this.fetchStandardFontData(I),h.isInternalFont=!!C),!h.isInternalFont&&this.options.useSystemFonts&&(h.systemFontInfo=qr(this.systemFontCache,this.idFactory,this.options.standardFontDataUrl,t,I,s));const B=await this.extractDataStructures(e,h);if(Array.isArray(l)){const t=[];let e=a;for(const A of l){const i=this.xref.fetchIfRef(A);"number"==typeof i&&(t[e]=i),e++}B.widths=t}else B.widths=this.buildCharCodeToWidth(i.widths,B);return new Oa(t,C,B)}{const A=Tt(e.getArray("FontBBox"),[0,0,0,0]);(t=new Ct(null)).set("FontName",ht.get(s)),t.set("FontBBox",A)}}let h=t.get("FontName"),l=e.get("BaseFont");"string"==typeof h&&(h=ht.get(h)),"string"==typeof l&&(l=ht.get(l));const I=h?.name,C=l?.name;if(c||I===C||(x(`The FontDescriptor's FontName is "${I}" but should be the same as the Font's BaseFont "${C}".`),I&&C&&(C.startsWith(I)||!bs(I)&&bs(C))&&(h=null)),h||=l,!(h instanceof ht))throw new q("invalid font name");let B,d,u,Q,E;try{B=t.get("FontFile","FontFile2","FontFile3")}catch(t){if(!this.options.ignoreErrors)throw t;N(`translateFont - fetching "${h.name}" font file: "${t}".`),B=new oe}let f=!1,p=null,m=null;if(B){if(B.dict){const t=B.dict.get("Subtype");t instanceof ht&&(d=t.name),u=B.dict.get("Length1"),Q=B.dict.get("Length2"),E=B.dict.get("Length3")}}else if(g){const t=_n(h.name);t&&(g.fontFamily=`${g.fontFamily}-PdfJS-XFA`,g.metrics=t.metrics||null,p=t.factors||null,B=await this.fetchStandardFontData(t.name),f=!!B,A=e=On(h.name),i=!0)}else if(!c){const t=ws(h.name);t&&(B=await this.fetchStandardFontData(t),f=!!B),!f&&this.options.useSystemFonts&&(m=qr(this.systemFontCache,this.idFactory,this.options.standardFontDataUrl,h.name,t,s))}const y=Jt(e.getArray("FontMatrix"),o),w=Tt(t.getArray("FontBBox")||e.getArray("FontBBox"),void 0);let b=t.get("Ascent");"number"!=typeof b&&(b=void 0);let D=t.get("Descent");"number"!=typeof D&&(D=void 0);let k=t.get("XHeight");"number"!=typeof k&&(k=0);let S=t.get("CapHeight");"number"!=typeof S&&(S=0);let F=t.get("Flags");Number.isInteger(F)||(F=0);let R=t.get("ItalicAngle");"number"!=typeof R&&(R=0);const v={type:s,name:h.name,subtype:d,file:B,length1:u,length2:Q,length3:E,isInternalFont:f,loadedName:A.loadedName,composite:i,fixedPitch:!1,fontMatrix:y,firstChar:a,lastChar:n,toUnicode:r,bbox:w,ascent:b,descent:D,xHeight:k,capHeight:S,flags:F,italicAngle:R,isType3Font:c,cssFontInfo:g,scaleFactors:p,systemFontInfo:m};if(i){const t=A.get("Encoding");t instanceof ht&&(v.cidEncoding=t.name);const e=await Di.create({encoding:t,fetchBuiltInCMap:this._fetchBuiltInCMapBound,useCMap:null});v.cMap=e,v.vertical=v.cMap.vertical}const G=await this.extractDataStructures(e,v);return this.extractWidths(e,t,G),new Oa(h.name,B,G)}static buildFontPaths(t,e,A,i){function s(e){const s=`${t.loadedName}_path_${e}`;try{if(t.renderer.hasBuiltPath(e))return;A.send("commonobj",[s,"FontPath",t.renderer.getPathJs(e)])}catch(t){if(i.ignoreErrors)return void N(`buildFontPaths - ignoring ${s} glyph: "${t}".`);throw t}}for(const t of e){s(t.fontChar);const e=t.accent;e?.fontChar&&s(e.fontChar)}}static get fallbackFontDict(){const t=new Ct;return t.set("BaseFont",ht.get("Helvetica")),t.set("Type",ht.get("FallbackType")),t.set("Subtype",ht.get("FallbackType")),t.set("Encoding",ht.get("WinAnsiEncoding")),L(this,"fallbackFontDict",t)}}class go{constructor({loadedName:t,font:e,dict:A,evaluatorOptions:i}){this.loadedName=t,this.font=e,this.dict=A,this._evaluatorOptions=i||io,this.type3Loaded=null,this.type3Dependencies=e.isType3Font?new Set:null,this.sent=!1}send(t){this.sent||(this.sent=!0,t.send("commonobj",[this.loadedName,"Font",this.font.exportData(this._evaluatorOptions.fontExtraProperties)]))}fallback(t){this.font.data&&(this.font.disableFontFace=!0,oo.buildFontPaths(this.font,this.font.glyphCacheValues,t,this._evaluatorOptions))}loadType3Data(t,e,A){if(this.type3Loaded)return this.type3Loaded;if(!this.font.isType3Font)throw new Error("Must be a Type3 font.");const i=t.clone({ignoreErrors:!1}),s=new dt(t.type3FontRefs);this.dict.objId&&!s.has(this.dict.objId)&&s.put(this.dict.objId),i.type3FontRefs=s;const a=this.font,n=this.type3Dependencies;let r=Promise.resolve();const o=this.dict.get("CharProcs"),g=this.dict.get("Resources")||e,c=Object.create(null),h=X.normalizeRect(a.bbox||[0,0,0,0]),l=h[2]-h[0],I=h[3]-h[1],C=Math.hypot(l,I);for(const t of o.getKeys())r=r.then((()=>{const e=o.get(t),s=new $r;return i.getOperatorList({stream:e,task:A,resources:g,operatorList:s}).then((()=>{49===s.fnArray[0]&&this._removeType3ColorOperators(s,C),c[t]=s.getIR();for(const t of s.dependencies)n.add(t)})).catch((function(e){N(`Type3 font resource "${t}" is not available.`);const A=new $r;c[t]=A.getIR()}))}));return this.type3Loaded=r.then((()=>{a.charProcOperatorList=c,this._bbox&&(a.isCharBBox=!0,a.bbox=this._bbox)})),this.type3Loaded}_removeType3ColorOperators(t,e=NaN){const A=X.normalizeRect(t.argsArray[0].slice(2)),i=A[2]-A[0],s=A[3]-A[1],a=Math.hypot(i,s);0===i||0===s?(t.fnArray.splice(0,1),t.argsArray.splice(0,1)):(0===e||Math.round(a/e)>=10)&&(this._bbox||(this._bbox=[1/0,1/0,-1/0,-1/0]),this._bbox[0]=Math.min(this._bbox[0],A[0]),this._bbox[1]=Math.min(this._bbox[1],A[1]),this._bbox[2]=Math.max(this._bbox[2],A[2]),this._bbox[3]=Math.max(this._bbox[3],A[3]));let n=0,r=t.length;for(;n<r;){switch(t.fnArray[n]){case 49:break;case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:case w:case b:case 60:case 61:case 62:case 7:t.fnArray.splice(n,1),t.argsArray.splice(n,1),r--;continue;case 9:const[e]=t.argsArray[n];let A=0,i=e.length;for(;A<i;){const[t]=e[A];switch(t){case"TR":case"TR2":case"HT":case"BG":case"BG2":case"UCR":case"UCR2":e.splice(A,1),i--;continue}A++}}n++}}}class co{constructor(t=new lo){this.state=t,this.stateStack=[]}save(){const t=this.state;this.stateStack.push(this.state),this.state=t.clone()}restore(){const t=this.stateStack.pop();t&&(this.state=t)}transform(t){this.state.ctm=X.transform(this.state.ctm,t)}}class ho{constructor(){this.ctm=new Float32Array(r),this.fontName=null,this.fontSize=0,this.loadedName=null,this.font=null,this.fontMatrix=o,this.textMatrix=r.slice(),this.textLineMatrix=r.slice(),this.charSpacing=0,this.wordSpacing=0,this.leading=0,this.textHScale=1,this.textRise=0}setTextMatrix(t,e,A,i,s,a){const n=this.textMatrix;n[0]=t,n[1]=e,n[2]=A,n[3]=i,n[4]=s,n[5]=a}setTextLineMatrix(t,e,A,i,s,a){const n=this.textLineMatrix;n[0]=t,n[1]=e,n[2]=A,n[3]=i,n[4]=s,n[5]=a}translateTextMatrix(t,e){const A=this.textMatrix;A[4]=A[0]*t+A[2]*e+A[4],A[5]=A[1]*t+A[3]*e+A[5]}translateTextLineMatrix(t,e){const A=this.textLineMatrix;A[4]=A[0]*t+A[2]*e+A[4],A[5]=A[1]*t+A[3]*e+A[5]}carriageReturn(){this.translateTextLineMatrix(0,-this.leading),this.textMatrix=this.textLineMatrix.slice()}clone(){const t=Object.create(this);return t.textMatrix=this.textMatrix.slice(),t.textLineMatrix=this.textLineMatrix.slice(),t.fontMatrix=this.fontMatrix.slice(),t}}class lo{constructor(){this.ctm=new Float32Array(r),this.font=null,this.textRenderingMode=0,this.fillColorSpace=he.singletons.gray,this.strokeColorSpace=he.singletons.gray}clone(){return Object.create(this)}}class Io{static get opMap(){return L(this,"opMap",Object.assign(Object.create(null),{w:{id:2,numArgs:1,variableArgs:!1},J:{id:3,numArgs:1,variableArgs:!1},j:{id:4,numArgs:1,variableArgs:!1},M:{id:5,numArgs:1,variableArgs:!1},d:{id:6,numArgs:2,variableArgs:!1},ri:{id:7,numArgs:1,variableArgs:!1},i:{id:8,numArgs:1,variableArgs:!1},gs:{id:9,numArgs:1,variableArgs:!1},q:{id:E,numArgs:0,variableArgs:!1},Q:{id:f,numArgs:0,variableArgs:!1},cm:{id:p,numArgs:6,variableArgs:!1},m:{id:13,numArgs:2,variableArgs:!1},l:{id:14,numArgs:2,variableArgs:!1},c:{id:15,numArgs:6,variableArgs:!1},v:{id:16,numArgs:4,variableArgs:!1},y:{id:17,numArgs:4,variableArgs:!1},h:{id:18,numArgs:0,variableArgs:!1},re:{id:19,numArgs:4,variableArgs:!1},S:{id:20,numArgs:0,variableArgs:!1},s:{id:21,numArgs:0,variableArgs:!1},f:{id:22,numArgs:0,variableArgs:!1},F:{id:22,numArgs:0,variableArgs:!1},"f*":{id:23,numArgs:0,variableArgs:!1},B:{id:24,numArgs:0,variableArgs:!1},"B*":{id:25,numArgs:0,variableArgs:!1},b:{id:26,numArgs:0,variableArgs:!1},"b*":{id:27,numArgs:0,variableArgs:!1},n:{id:28,numArgs:0,variableArgs:!1},W:{id:29,numArgs:0,variableArgs:!1},"W*":{id:30,numArgs:0,variableArgs:!1},BT:{id:31,numArgs:0,variableArgs:!1},ET:{id:32,numArgs:0,variableArgs:!1},Tc:{id:33,numArgs:1,variableArgs:!1},Tw:{id:34,numArgs:1,variableArgs:!1},Tz:{id:35,numArgs:1,variableArgs:!1},TL:{id:36,numArgs:1,variableArgs:!1},Tf:{id:m,numArgs:2,variableArgs:!1},Tr:{id:38,numArgs:1,variableArgs:!1},Ts:{id:39,numArgs:1,variableArgs:!1},Td:{id:40,numArgs:2,variableArgs:!1},TD:{id:41,numArgs:2,variableArgs:!1},Tm:{id:42,numArgs:6,variableArgs:!1},"T*":{id:43,numArgs:0,variableArgs:!1},Tj:{id:y,numArgs:1,variableArgs:!1},TJ:{id:45,numArgs:1,variableArgs:!1},"'":{id:46,numArgs:1,variableArgs:!1},'"':{id:47,numArgs:3,variableArgs:!1},d0:{id:48,numArgs:2,variableArgs:!1},d1:{id:49,numArgs:6,variableArgs:!1},CS:{id:50,numArgs:1,variableArgs:!1},cs:{id:51,numArgs:1,variableArgs:!1},SC:{id:52,numArgs:4,variableArgs:!0},SCN:{id:53,numArgs:33,variableArgs:!0},sc:{id:54,numArgs:4,variableArgs:!0},scn:{id:55,numArgs:33,variableArgs:!0},G:{id:56,numArgs:1,variableArgs:!1},g:{id:57,numArgs:1,variableArgs:!1},RG:{id:w,numArgs:3,variableArgs:!1},rg:{id:b,numArgs:3,variableArgs:!1},K:{id:60,numArgs:4,variableArgs:!1},k:{id:61,numArgs:4,variableArgs:!1},sh:{id:62,numArgs:1,variableArgs:!1},BI:{id:63,numArgs:0,variableArgs:!1},ID:{id:64,numArgs:0,variableArgs:!1},EI:{id:65,numArgs:1,variableArgs:!1},Do:{id:66,numArgs:1,variableArgs:!1},MP:{id:67,numArgs:1,variableArgs:!1},DP:{id:68,numArgs:2,variableArgs:!1},BMC:{id:69,numArgs:1,variableArgs:!1},BDC:{id:D,numArgs:2,variableArgs:!1},EMC:{id:k,numArgs:0,variableArgs:!1},BX:{id:72,numArgs:0,variableArgs:!1},EX:{id:73,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(t,e,A=new co){this.parser=new si({lexer:new ri(t,Io.opMap),xref:e}),this.stateManager=A,this.nonProcessedArgs=[],this._isPathOp=!1,this._numInvalidPathOPS=0}get savedStatesDepth(){return this.stateManager.stateStack.length}read(t){let e=t.args;for(;;){const A=this.parser.getObj();if(A instanceof lt){const i=A.cmd,s=Io.opMap[i];if(!s){N(`Unknown command "${i}".`);continue}const a=s.id,n=s.numArgs;let r=null!==e?e.length:0;if(this._isPathOp||(this._numInvalidPathOPS=0),this._isPathOp=a>=13&&a<=28,s.variableArgs)r>n&&x(`Command ${i}: expected [0, ${n}] args, but received ${r} args.`);else{if(r!==n){const t=this.nonProcessedArgs;for(;r>n;)t.push(e.shift()),r--;for(;r<n&&0!==t.length;)null===e&&(e=[]),e.unshift(t.pop()),r++}if(r<n){const t=`command ${i}: expected ${n} args, but received ${r} args.`;if(this._isPathOp&&++this._numInvalidPathOPS>Io.MAX_INVALID_PATH_OPS)throw new q(`Invalid ${t}`);N(`Skipping ${t}`),null!==e&&(e.length=0);continue}}return this.preprocessCommand(a,e),t.fn=a,t.args=e,!0}if(A===rt)return!1;if(null!==A&&(null===e&&(e=[]),e.push(A),e.length>33))throw new q("Too many arguments")}}preprocessCommand(t,e){switch(0|t){case E:this.stateManager.save();break;case f:this.stateManager.restore();break;case p:this.stateManager.transform(e)}}}class Co extends Io{constructor(t){super(new re(t))}parse(){const t={fn:0,args:[]},e={fontSize:0,fontName:"",fontColor:new Uint8ClampedArray(3)};try{for(;t.args.length=0,this.read(t);){if(0!==this.savedStatesDepth)continue;const{fn:A,args:i}=t;switch(0|A){case m:const[t,A]=i;t instanceof ht&&(e.fontName=t.name),"number"==typeof A&&A>0&&(e.fontSize=A);break;case b:he.singletons.rgb.getRgbItem(i,0,e.fontColor,0);break;case 57:he.singletons.gray.getRgbItem(i,0,e.fontColor,0);break;case 61:he.singletons.cmyk.getRgbItem(i,0,e.fontColor,0)}}}catch(t){N(`parseDefaultAppearance - ignoring errors: "${t}".`)}return e}}function Bo(t){return new Co(t).parse()}class uo extends Io{constructor(t,e,A){super(t),this.stream=t,this.evaluatorOptions=e,this.xref=A,this.resources=t.dict?.get("Resources")}parse(){const t={fn:0,args:[]};let e={scaleFactor:1,fontSize:0,fontName:"",fontColor:new Uint8ClampedArray(3),fillColorSpace:he.singletons.gray},A=!1;const i=[];try{for(;t.args.length=0,!A&&this.read(t);){const{fn:s,args:a}=t;switch(0|s){case E:i.push({scaleFactor:e.scaleFactor,fontSize:e.fontSize,fontName:e.fontName,fontColor:e.fontColor.slice(),fillColorSpace:e.fillColorSpace});break;case f:e=i.pop()||e;break;case 42:e.scaleFactor*=Math.hypot(a[0],a[1]);break;case m:const[t,s]=a;t instanceof ht&&(e.fontName=t.name),"number"==typeof s&&s>0&&(e.fontSize=s*e.scaleFactor);break;case 51:e.fillColorSpace=he.parse({cs:a[0],xref:this.xref,resources:this.resources,pdfFunctionFactory:this._pdfFunctionFactory,localColorSpaceCache:this._localColorSpaceCache});break;case 54:e.fillColorSpace.getRgbItem(a,0,e.fontColor,0);break;case b:he.singletons.rgb.getRgbItem(a,0,e.fontColor,0);break;case 57:he.singletons.gray.getRgbItem(a,0,e.fontColor,0);break;case 61:he.singletons.cmyk.getRgbItem(a,0,e.fontColor,0);break;case y:case 45:case 46:case 47:A=!0}}}catch(t){N(`parseAppearanceStream - ignoring errors: "${t}".`)}return this.stream.reset(),delete e.scaleFactor,delete e.fillColorSpace,e}get _localColorSpaceCache(){return L(this,"_localColorSpaceCache",new $n)}get _pdfFunctionFactory(){return L(this,"_pdfFunctionFactory",new ar({xref:this.xref,isEvalSupported:this.evaluatorOptions.isEvalSupported}))}}function Qo(t,e){return t[0]===t[1]&&t[1]===t[2]?`${$t(t[0]/255)} ${e?"g":"G"}`:Array.from(t,(t=>$t(t/255))).join(" ")+" "+(e?"rg":"RG")}class Eo{constructor(t,e){this.xref=t,this.widths=null,this.firstChar=1/0,this.lastChar=-1/0,this.fontFamily=e;const A=new OffscreenCanvas(1,1);this.ctxMeasure=A.getContext("2d",{willReadFrequently:!0}),Eo._fontNameId||(Eo._fontNameId=1),this.fontName=ht.get(`InvalidPDFjsFont_${e}_${Eo._fontNameId++}`)}get fontDescriptorRef(){if(!Eo._fontDescriptorRef){const t=new Ct(this.xref);t.set("Type",ht.get("FontDescriptor")),t.set("FontName",this.fontName),t.set("FontFamily","MyriadPro Regular"),t.set("FontBBox",[0,0,0,0]),t.set("FontStretch",ht.get("Normal")),t.set("FontWeight",400),t.set("ItalicAngle",0),Eo._fontDescriptorRef=this.xref.getNewPersistentRef(t)}return Eo._fontDescriptorRef}get descendantFontRef(){const t=new Ct(this.xref);t.set("BaseFont",this.fontName),t.set("Type",ht.get("Font")),t.set("Subtype",ht.get("CIDFontType0")),t.set("CIDToGIDMap",ht.get("Identity")),t.set("FirstChar",this.firstChar),t.set("LastChar",this.lastChar),t.set("FontDescriptor",this.fontDescriptorRef),t.set("DW",1e3);const e=[],A=[...this.widths.entries()].sort();let i=null,s=null;for(const[t,a]of A)i?t===i+s.length?s.push(a):(e.push(i,s),i=t,s=[a]):(i=t,s=[a]);i&&e.push(i,s),t.set("W",e);const a=new Ct(this.xref);return a.set("Ordering","Identity"),a.set("Registry","Adobe"),a.set("Supplement",0),t.set("CIDSystemInfo",a),this.xref.getNewPersistentRef(t)}get baseFontRef(){const t=new Ct(this.xref);return t.set("BaseFont",this.fontName),t.set("Type",ht.get("Font")),t.set("Subtype",ht.get("Type0")),t.set("Encoding",ht.get("Identity-H")),t.set("DescendantFonts",[this.descendantFontRef]),t.set("ToUnicode",ht.get("Identity-H")),this.xref.getNewPersistentRef(t)}get resources(){const t=new Ct(this.xref),e=new Ct(this.xref);return e.set(this.fontName.name,this.baseFontRef),t.set("Font",e),t}_createContext(){return this.widths=new Map,this.ctxMeasure.font=`1000px ${this.fontFamily}`,this.ctxMeasure}createFontResources(t){const e=this._createContext();for(const A of t.split(/\r\n?|\n/))for(const t of A.split("")){const A=t.charCodeAt(0);if(this.widths.has(A))continue;const i=e.measureText(t),s=Math.ceil(i.width);this.widths.set(A,s),this.firstChar=Math.min(A,this.firstChar),this.lastChar=Math.max(A,this.lastChar)}return this.resources}static getFirstPositionInfo(t,e,A){const[i,s,a,n]=t;let r=a-i,o=n-s;e%180!=0&&([r,o]=[o,r]);const c=g*A;return{coords:[0,o+.35*A-c],bbox:[0,0,r,o],matrix:0!==e?se(e,o,c):void 0}}createAppearance(t,e,A,i,s,a){const n=this._createContext(),r=[];let o=-1/0;for(const e of t.split(/\r\n?|\n/)){r.push(e);const t=n.measureText(e).width;o=Math.max(o,t);for(const t of Zt(e)){const e=String.fromCodePoint(t);let A=this.widths.get(t);if(void 0===A){const i=n.measureText(e);A=Math.ceil(i.width),this.widths.set(t,A),this.firstChar=Math.min(t,this.firstChar),this.lastChar=Math.max(t,this.lastChar)}}}o*=i/1e3;const[c,h,l,I]=e;let C=l-c,B=I-h;A%180!=0&&([C,B]=[B,C]);let d=1;o>C&&(d=C/o);let u=1;const Q=g*i,E=.35*i,f=Q*r.length;f>B&&(u=B/f);const p=i*Math.min(d,u),m=["q",`0 0 ${$t(C)} ${$t(B)} re W n`,"BT",`1 0 0 1 0 ${$t(B+E)} Tm 0 Tc ${Qo(s,!0)}`,`/${this.fontName.name} ${$t(p)} Tf`],{resources:y}=this;if(1!==(a="number"==typeof a&&a>=0&&a<=1?a:1)){m.push("/R0 gs");const t=new Ct(this.xref),e=new Ct(this.xref);e.set("ca",a),e.set("CA",a),e.set("Type",ht.get("ExtGState")),t.set("R0",e),y.set("ExtGState",t)}const w=$t(Q);for(const t of r)m.push(`0 -${w} Td <${Ae(t)}> Tj`);m.push("ET","Q");const b=m.join("\n"),D=new Ct(this.xref);if(D.set("Subtype",ht.get("Form")),D.set("Type",ht.get("XObject")),D.set("BBox",[0,0,C,B]),D.set("Length",b.length),D.set("Resources",y),A){const t=se(A,C,B);D.set("Matrix",t)}const k=new re(b);return k.dict=D,k}}class fo{constructor(t,e,A){this.constructor===fo&&v("Cannot initialize NameOrNumberTree."),this.root=t,this.xref=e,this._type=A}getAll(){const t=new Map;if(!this.root)return t;const e=this.xref,A=new dt;A.put(this.root);const i=[this.root];for(;i.length>0;){const s=e.fetchIfRef(i.shift());if(!(s instanceof Ct))continue;if(s.has("Kids")){const t=s.get("Kids");if(!Array.isArray(t))continue;for(const e of t){if(A.has(e))throw new q(`Duplicate entry in "${this._type}" tree.`);i.push(e),A.put(e)}continue}const a=s.get(this._type);if(Array.isArray(a))for(let A=0,i=a.length;A<i;A+=2)t.set(e.fetchIfRef(a[A]),e.fetchIfRef(a[A+1]))}return t}get(t){if(!this.root)return null;const e=this.xref;let A=e.fetchIfRef(this.root),i=0;for(;A.has("Kids");){if(++i>10)return N(`Search depth limit reached for "${this._type}" tree.`),null;const s=A.get("Kids");if(!Array.isArray(s))return null;let a=0,n=s.length-1;for(;a<=n;){const i=a+n>>1,r=e.fetchIfRef(s[i]),o=r.get("Limits");if(t<e.fetchIfRef(o[0]))n=i-1;else{if(!(t>e.fetchIfRef(o[1]))){A=r;break}a=i+1}}if(a>n)return null}const s=A.get(this._type);if(Array.isArray(s)){let A=0,i=s.length-2;for(;A<=i;){const a=A+i>>1,n=a+(1&a),r=e.fetchIfRef(s[n]);if(t<r)i=n-2;else{if(!(t>r))return e.fetchIfRef(s[n+1]);A=n+2}}}return null}}class po extends fo{constructor(t,e){super(t,e,"Names")}}class mo extends fo{constructor(t,e){super(t,e,"Nums")}}function yo(){za=Object.create(null),ot=Object.create(null),gt=Object.create(null),ct=Object.create(null),cs.clear(),$A.cleanup()}function wo(t){return t instanceof Ct?t.has("UF")?t.get("UF"):t.has("F")?t.get("F"):t.has("Unix")?t.get("Unix"):t.has("Mac")?t.get("Mac"):t.has("DOS")?t.get("DOS"):null:null}class bo{#S=!1;constructor(t,e,A=!1){t instanceof Ct&&(this.xref=e,this.root=t,t.has("FS")&&(this.fs=t.get("FS")),t.has("RF")&&N("Related file specifications are not supported"),A||(t.has("EF")?this.#S=!0:N("Non-embedded file specifications are not supported")))}get filename(){let t="";const e=wo(this.root);return e&&"string"==typeof e&&(t=$(e).replaceAll("\\\\","\\").replaceAll("\\/","/").replaceAll("\\","/")),L(this,"filename",t||"unnamed")}get content(){if(!this.#S)return null;this._contentRef||=wo(this.root?.get("EF"));let t=null;if(this._contentRef){const e=this.xref.fetchIfRef(this._contentRef);e instanceof mt?t=e.getBytes():N("Embedded file specification points to non-existing/invalid content")}else N("Embedded file specification does not have any content");return t}get description(){let t="";const e=this.root?.get("Desc");return e&&"string"==typeof e&&(t=$(e)),L(this,"description",t)}get serializable(){return{rawFilename:this.filename,filename:(t=this.filename,t.substring(t.lastIndexOf("/")+1)),content:this.content,description:this.description};var t}}function Do(t,e){const A=t[e];return" "===A||"\n"===A||"\r"===A||"\t"===A}class ko{_resolveEntities(t){return t.replaceAll(/&([^;]+);/g,((t,e)=>{if("#x"===e.substring(0,2))return String.fromCodePoint(parseInt(e.substring(2),16));if("#"===e.substring(0,1))return String.fromCodePoint(parseInt(e.substring(1),10));switch(e){case"lt":return"<";case"gt":return">";case"amp":return"&";case"quot":return'"';case"apos":return"'"}return this.onResolveEntity(e)}))}_parseContent(t,e){const A=[];let i=e;function s(){for(;i<t.length&&Do(t,i);)++i}for(;i<t.length&&!Do(t,i)&&">"!==t[i]&&"/"!==t[i];)++i;const a=t.substring(e,i);for(s();i<t.length&&">"!==t[i]&&"/"!==t[i]&&"?"!==t[i];){s();let e="",a="";for(;i<t.length&&!Do(t,i)&&"="!==t[i];)e+=t[i],++i;if(s(),"="!==t[i])return null;++i,s();const n=t[i];if('"'!==n&&"'"!==n)return null;const r=t.indexOf(n,++i);if(r<0)return null;a=t.substring(i,r),A.push({name:e,value:this._resolveEntities(a)}),i=r+1,s()}return{name:a,attributes:A,parsed:i-e}}_parseProcessingInstruction(t,e){let A=e;for(;A<t.length&&!Do(t,A)&&">"!==t[A]&&"?"!==t[A]&&"/"!==t[A];)++A;const i=t.substring(e,A);!function(){for(;A<t.length&&Do(t,A);)++A}();const s=A;for(;A<t.length&&("?"!==t[A]||">"!==t[A+1]);)++A;return{name:i,value:t.substring(s,A),parsed:A-e}}parseXml(t){let e=0;for(;e<t.length;){let A=e;if("<"===t[e]){let e;switch(++A,t[A]){case"/":if(++A,e=t.indexOf(">",A),e<0)return void this.onError(-9);this.onEndElement(t.substring(A,e)),A=e+1;break;case"?":++A;const i=this._parseProcessingInstruction(t,A);if("?>"!==t.substring(A+i.parsed,A+i.parsed+2))return void this.onError(-3);this.onPi(i.name,i.value),A+=i.parsed+2;break;case"!":if("--"===t.substring(A+1,A+3)){if(e=t.indexOf("--\x3e",A+3),e<0)return void this.onError(-5);this.onComment(t.substring(A+3,e)),A=e+3}else if("[CDATA["===t.substring(A+1,A+8)){if(e=t.indexOf("]]>",A+8),e<0)return void this.onError(-2);this.onCdata(t.substring(A+8,e)),A=e+3}else{if("DOCTYPE"!==t.substring(A+1,A+8))return void this.onError(-6);{const i=t.indexOf("[",A+8);let s=!1;if(e=t.indexOf(">",A+8),e<0)return void this.onError(-4);if(i>0&&e>i){if(e=t.indexOf("]>",A+8),e<0)return void this.onError(-4);s=!0}const a=t.substring(A+8,e+(s?1:0));this.onDoctype(a),A=e+(s?2:1)}}break;default:const s=this._parseContent(t,A);if(null===s)return void this.onError(-6);let a=!1;if("/>"===t.substring(A+s.parsed,A+s.parsed+2))a=!0;else if(">"!==t.substring(A+s.parsed,A+s.parsed+1))return void this.onError(-9);this.onBeginElement(s.name,s.attributes,a),A+=s.parsed+(a?2:1)}}else{for(;A<t.length&&"<"!==t[A];)A++;const i=t.substring(e,A);this.onText(this._resolveEntities(i))}e=A}}onResolveEntity(t){return`&${t};`}onPi(t,e){}onComment(t){}onCdata(t){}onDoctype(t){}onText(t){}onBeginElement(t,e,A){}onEndElement(t){}onError(t){}}class So{constructor(t,e){this.nodeName=t,this.nodeValue=e,Object.defineProperty(this,"parentNode",{value:null,writable:!0})}get firstChild(){return this.childNodes?.[0]}get nextSibling(){const t=this.parentNode.childNodes;if(!t)return;const e=t.indexOf(this);return-1!==e?t[e+1]:void 0}get textContent(){return this.childNodes?this.childNodes.map((function(t){return t.textContent})).join(""):this.nodeValue||""}get children(){return this.childNodes||[]}hasChildNodes(){return this.childNodes?.length>0}searchNode(t,e){if(e>=t.length)return this;const A=t[e];if(A.name.startsWith("#")&&e<t.length-1)return this.searchNode(t,e+1);const i=[];let s=this;for(;;){if(A.name===s.nodeName){if(0!==A.pos){if(0===i.length)return null;{const[a]=i.pop();let n=0;for(const i of a.childNodes)if(A.name===i.nodeName){if(n===A.pos)return i.searchNode(t,e+1);n++}return s.searchNode(t,e+1)}}{const A=s.searchNode(t,e+1);if(null!==A)return A}}if(s.childNodes?.length>0)i.push([s,0]),s=s.childNodes[0];else{if(0===i.length)return null;for(;0!==i.length;){const[t,e]=i.pop(),A=e+1;if(A<t.childNodes.length){i.push([t,A]),s=t.childNodes[A];break}}if(0===i.length)return null}}}dump(t){if("#text"!==this.nodeName){if(t.push(`<${this.nodeName}`),this.attributes)for(const e of this.attributes)t.push(` ${e.name}="${jt(e.value)}"`);if(this.hasChildNodes()){t.push(">");for(const e of this.childNodes)e.dump(t);t.push(`</${this.nodeName}>`)}else this.nodeValue?t.push(`>${jt(this.nodeValue)}</${this.nodeName}>`):t.push("/>")}else t.push(jt(this.nodeValue))}}class Fo extends ko{constructor({hasAttributes:t=!1,lowerCaseName:e=!1}){super(),this._currentFragment=null,this._stack=null,this._errorCode=0,this._hasAttributes=t,this._lowerCaseName=e}parseFromString(t){if(this._currentFragment=[],this._stack=[],this._errorCode=0,this.parseXml(t),0!==this._errorCode)return;const[e]=this._currentFragment;return e?{documentElement:e}:void 0}onText(t){if(function(t){for(let e=0,A=t.length;e<A;e++)if(!Do(t,e))return!1;return!0}(t))return;const e=new So("#text",t);this._currentFragment.push(e)}onCdata(t){const e=new So("#text",t);this._currentFragment.push(e)}onBeginElement(t,e,A){this._lowerCaseName&&(t=t.toLowerCase());const i=new So(t);i.childNodes=[],this._hasAttributes&&(i.attributes=e),this._currentFragment.push(i),A||(this._stack.push(this._currentFragment),this._currentFragment=i.childNodes)}onEndElement(t){this._currentFragment=this._stack.pop()||[];const e=this._currentFragment.at(-1);if(!e)return null;for(const t of e.childNodes)t.parentNode=e;return e}onError(t){this._errorCode=t}}class Ro{constructor(t){t=this._repair(t);const e=new Fo({lowerCaseName:!0}).parseFromString(t);this._metadataMap=new Map,this._data=t,e&&this._parse(e)}_repair(t){return t.replace(/^[^<]+/,"").replaceAll(/>\\376\\377([^<]+)/g,(function(t,e){const A=e.replaceAll(/\\([0-3])([0-7])([0-7])/g,(function(t,e,A,i){return String.fromCharCode(64*e+8*A+1*i)})).replaceAll(/&(amp|apos|gt|lt|quot);/g,(function(t,e){switch(e){case"amp":return"&";case"apos":return"'";case"gt":return">";case"lt":return"<";case"quot":return'"'}throw new Error(`_repair: ${e} isn't defined.`)})),i=[">"];for(let t=0,e=A.length;t<e;t+=2){const e=256*A.charCodeAt(t)+A.charCodeAt(t+1);e>=32&&e<127&&60!==e&&62!==e&&38!==e?i.push(String.fromCharCode(e)):i.push("&#x"+(65536+e).toString(16).substring(1)+";")}return i.join("")}))}_getSequence(t){const e=t.nodeName;return"rdf:bag"!==e&&"rdf:seq"!==e&&"rdf:alt"!==e?null:t.childNodes.filter((t=>"rdf:li"===t.nodeName))}_parseArray(t){if(!t.hasChildNodes())return;const[e]=t.childNodes,A=this._getSequence(e)||[];this._metadataMap.set(t.nodeName,A.map((t=>t.textContent.trim())))}_parse(t){let e=t.documentElement;if("rdf:rdf"!==e.nodeName)for(e=e.firstChild;e&&"rdf:rdf"!==e.nodeName;)e=e.nextSibling;if(e&&"rdf:rdf"===e.nodeName&&e.hasChildNodes())for(const t of e.childNodes)if("rdf:description"===t.nodeName)for(const e of t.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}}}class xo extends Re{constructor(t,e,A){super(e),this.str=t,this.dict=t.dict,this.decrypt=A,this.nextChunk=null,this.initialized=!1}readBlock(){let t;if(this.initialized?t=this.nextChunk:(t=this.str.getBytes(512),this.initialized=!0),!t||0===t.length)return void(this.eof=!0);this.nextChunk=this.str.getBytes(512);const e=this.nextChunk?.length>0;t=(0,this.decrypt)(t,!e);const A=this.bufferLength,i=A+t.length;this.ensureBuffer(i).set(t,A),this.bufferLength=i}}class No{constructor(t){this.a=0,this.b=0;const e=new Uint8Array(256),A=t.length;for(let t=0;t<256;++t)e[t]=t;for(let i=0,s=0;i<256;++i){const a=e[i];s=s+a+t[i%A]&255,e[i]=e[s],e[s]=a}this.s=e}encryptBlock(t){let e=this.a,A=this.b;const i=this.s,s=t.length,a=new Uint8Array(s);for(let n=0;n<s;++n){e=e+1&255;const s=i[e];A=A+s&255;const r=i[A];i[e]=r,i[A]=s,a[n]=t[n]^i[s+r&255]}return this.a=e,this.b=A,a}decryptBlock(t){return this.encryptBlock(t)}encrypt(t){return this.encryptBlock(t)}}const vo=function(){const t=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]),e=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]);return function(A,i,s){let a=1732584193,n=-271733879,r=-1732584194,o=271733878;const g=s+72&-64,c=new Uint8Array(g);let h,l;for(h=0;h<s;++h)c[h]=A[i++];c[h++]=128;const I=g-8;for(;h<I;)c[h++]=0;c[h++]=s<<3&255,c[h++]=s>>5&255,c[h++]=s>>13&255,c[h++]=s>>21&255,c[h++]=s>>>29&255,c[h++]=0,c[h++]=0,c[h++]=0;const C=new Int32Array(16);for(h=0;h<g;){for(l=0;l<16;++l,h+=4)C[l]=c[h]|c[h+1]<<8|c[h+2]<<16|c[h+3]<<24;let A,i,s=a,g=n,I=r,B=o;for(l=0;l<64;++l){l<16?(A=g&I|~g&B,i=l):l<32?(A=B&g|~B&I,i=5*l+1&15):l<48?(A=g^I^B,i=3*l+5&15):(A=I^(g|~B),i=7*l&15);const a=B,n=s+A+e[l]+C[i]|0,r=t[l];B=I,I=g,g=g+(n<<r|n>>>32-r)|0,s=a}a=a+s|0,n=n+g|0,r=r+I|0,o=o+B|0}return new Uint8Array([255&a,a>>8&255,a>>16&255,a>>>24&255,255&n,n>>8&255,n>>16&255,n>>>24&255,255&r,r>>8&255,r>>16&255,r>>>24&255,255&o,o>>8&255,o>>16&255,o>>>24&255])}}();class Go{constructor(t,e){this.high=0|t,this.low=0|e}and(t){this.high&=t.high,this.low&=t.low}xor(t){this.high^=t.high,this.low^=t.low}or(t){this.high|=t.high,this.low|=t.low}shiftRight(t){t>=32?(this.low=this.high>>>t-32|0,this.high=0):(this.low=this.low>>>t|this.high<<32-t,this.high=this.high>>>t|0)}shiftLeft(t){t>=32?(this.high=this.low<<t-32,this.low=0):(this.high=this.high<<t|this.low>>>32-t,this.low<<=t)}rotateRight(t){let e,A;32&t?(A=this.low,e=this.high):(e=this.low,A=this.high),t&=31,this.low=e>>>t|A<<32-t,this.high=A>>>t|e<<32-t}not(){this.high=~this.high,this.low=~this.low}add(t){const e=(this.low>>>0)+(t.low>>>0);let A=(this.high>>>0)+(t.high>>>0);e>4294967295&&(A+=1),this.low=0|e,this.high=0|A}copyTo(t,e){t[e]=this.high>>>24&255,t[e+1]=this.high>>16&255,t[e+2]=this.high>>8&255,t[e+3]=255&this.high,t[e+4]=this.low>>>24&255,t[e+5]=this.low>>16&255,t[e+6]=this.low>>8&255,t[e+7]=255&this.low}assign(t){this.high=t.high,this.low=t.low}}const Mo=function(){function t(t,e){return t>>>e|t<<32-e}function e(t,e,A){return t&e^~t&A}function A(t,e,A){return t&e^t&A^e&A}function i(e){return t(e,2)^t(e,13)^t(e,22)}function s(e){return t(e,6)^t(e,11)^t(e,25)}function a(e){return t(e,7)^t(e,18)^e>>>3}const n=[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];return function(r,o,g){let c=1779033703,h=3144134277,l=1013904242,I=2773480762,C=1359893119,B=2600822924,d=528734635,u=1541459225;const Q=64*Math.ceil((g+9)/64),E=new Uint8Array(Q);let f,p;for(f=0;f<g;++f)E[f]=r[o++];E[f++]=128;const m=Q-8;for(;f<m;)E[f++]=0;E[f++]=0,E[f++]=0,E[f++]=0,E[f++]=g>>>29&255,E[f++]=g>>21&255,E[f++]=g>>13&255,E[f++]=g>>5&255,E[f++]=g<<3&255;const y=new Uint32Array(64);for(f=0;f<Q;){for(p=0;p<16;++p)y[p]=E[f]<<24|E[f+1]<<16|E[f+2]<<8|E[f+3],f+=4;for(p=16;p<64;++p)y[p]=(t(w=y[p-2],17)^t(w,19)^w>>>10)+y[p-7]+a(y[p-15])+y[p-16]|0;let r,o,g=c,Q=h,m=l,b=I,D=C,k=B,S=d,F=u;for(p=0;p<64;++p)r=F+s(D)+e(D,k,S)+n[p]+y[p],o=i(g)+A(g,Q,m),F=S,S=k,k=D,D=b+r|0,b=m,m=Q,Q=g,g=r+o|0;c=c+g|0,h=h+Q|0,l=l+m|0,I=I+b|0,C=C+D|0,B=B+k|0,d=d+S|0,u=u+F|0}var w;return new Uint8Array([c>>24&255,c>>16&255,c>>8&255,255&c,h>>24&255,h>>16&255,h>>8&255,255&h,l>>24&255,l>>16&255,l>>8&255,255&l,I>>24&255,I>>16&255,I>>8&255,255&I,C>>24&255,C>>16&255,C>>8&255,255&C,B>>24&255,B>>16&255,B>>8&255,255&B,d>>24&255,d>>16&255,d>>8&255,255&d,u>>24&255,u>>16&255,u>>8&255,255&u])}}(),Lo=function(){function t(t,e,A,i,s){t.assign(e),t.and(A),s.assign(e),s.not(),s.and(i),t.xor(s)}function e(t,e,A,i,s){t.assign(e),t.and(A),s.assign(e),s.and(i),t.xor(s),s.assign(A),s.and(i),t.xor(s)}function A(t,e,A){t.assign(e),t.rotateRight(28),A.assign(e),A.rotateRight(34),t.xor(A),A.assign(e),A.rotateRight(39),t.xor(A)}function i(t,e,A){t.assign(e),t.rotateRight(14),A.assign(e),A.rotateRight(18),t.xor(A),A.assign(e),A.rotateRight(41),t.xor(A)}function s(t,e,A){t.assign(e),t.rotateRight(1),A.assign(e),A.rotateRight(8),t.xor(A),A.assign(e),A.shiftRight(7),t.xor(A)}function a(t,e,A){t.assign(e),t.rotateRight(19),A.assign(e),A.rotateRight(61),t.xor(A),A.assign(e),A.shiftRight(6),t.xor(A)}const n=[new Go(1116352408,3609767458),new Go(1899447441,602891725),new Go(3049323471,3964484399),new Go(3921009573,2173295548),new Go(961987163,4081628472),new Go(1508970993,3053834265),new Go(2453635748,2937671579),new Go(2870763221,3664609560),new Go(3624381080,2734883394),new Go(310598401,1164996542),new Go(607225278,1323610764),new Go(1426881987,3590304994),new Go(1925078388,4068182383),new Go(2162078206,991336113),new Go(2614888103,633803317),new Go(3248222580,3479774868),new Go(3835390401,2666613458),new Go(4022224774,944711139),new Go(264347078,2341262773),new Go(604807628,2007800933),new Go(770255983,1495990901),new Go(1249150122,1856431235),new Go(1555081692,3175218132),new Go(1996064986,2198950837),new Go(2554220882,3999719339),new Go(2821834349,766784016),new Go(2952996808,2566594879),new Go(3210313671,3203337956),new Go(3336571891,1034457026),new Go(3584528711,2466948901),new Go(113926993,3758326383),new Go(338241895,168717936),new Go(666307205,1188179964),new Go(773529912,1546045734),new Go(1294757372,1522805485),new Go(1396182291,2643833823),new Go(1695183700,2343527390),new Go(1986661051,1014477480),new Go(2177026350,1206759142),new Go(2456956037,344077627),new Go(2730485921,1290863460),new Go(2820302411,3158454273),new Go(3259730800,3505952657),new Go(3345764771,106217008),new Go(3516065817,3606008344),new Go(3600352804,1432725776),new Go(4094571909,1467031594),new Go(275423344,851169720),new Go(430227734,3100823752),new Go(506948616,1363258195),new Go(659060556,3750685593),new Go(883997877,3785050280),new Go(958139571,3318307427),new Go(1322822218,3812723403),new Go(1537002063,2003034995),new Go(1747873779,3602036899),new Go(1955562222,1575990012),new Go(2024104815,1125592928),new Go(2227730452,2716904306),new Go(2361852424,442776044),new Go(2428436474,593698344),new Go(2756734187,3733110249),new Go(3204031479,2999351573),new Go(3329325298,3815920427),new Go(3391569614,3928383900),new Go(3515267271,566280711),new Go(3940187606,3454069534),new Go(4118630271,4000239992),new Go(116418474,1914138554),new Go(174292421,2731055270),new Go(289380356,3203993006),new Go(460393269,320620315),new Go(685471733,587496836),new Go(852142971,1086792851),new Go(1017036298,365543100),new Go(1126000580,2618297676),new Go(1288033470,3409855158),new Go(1501505948,4234509866),new Go(1607167915,987167468),new Go(1816402316,1246189591)];return function(r,o,g,c=!1){let h,l,I,C,B,d,u,Q;c?(h=new Go(3418070365,3238371032),l=new Go(1654270250,914150663),I=new Go(2438529370,812702999),C=new Go(355462360,4144912697),B=new Go(1731405415,4290775857),d=new Go(2394180231,1750603025),u=new Go(3675008525,1694076839),Q=new Go(1203062813,3204075428)):(h=new Go(1779033703,4089235720),l=new Go(3144134277,2227873595),I=new Go(1013904242,4271175723),C=new Go(2773480762,1595750129),B=new Go(1359893119,2917565137),d=new Go(2600822924,725511199),u=new Go(528734635,4215389547),Q=new Go(1541459225,327033209));const E=128*Math.ceil((g+17)/128),f=new Uint8Array(E);let p,m;for(p=0;p<g;++p)f[p]=r[o++];f[p++]=128;const y=E-16;for(;p<y;)f[p++]=0;f[p++]=0,f[p++]=0,f[p++]=0,f[p++]=0,f[p++]=0,f[p++]=0,f[p++]=0,f[p++]=0,f[p++]=0,f[p++]=0,f[p++]=0,f[p++]=g>>>29&255,f[p++]=g>>21&255,f[p++]=g>>13&255,f[p++]=g>>5&255,f[p++]=g<<3&255;const w=new Array(80);for(p=0;p<80;p++)w[p]=new Go(0,0);let b=new Go(0,0),D=new Go(0,0),k=new Go(0,0),S=new Go(0,0),F=new Go(0,0),R=new Go(0,0),x=new Go(0,0),N=new Go(0,0);const v=new Go(0,0),G=new Go(0,0),M=new Go(0,0),L=new Go(0,0);let U,H;for(p=0;p<E;){for(m=0;m<16;++m)w[m].high=f[p]<<24|f[p+1]<<16|f[p+2]<<8|f[p+3],w[m].low=f[p+4]<<24|f[p+5]<<16|f[p+6]<<8|f[p+7],p+=8;for(m=16;m<80;++m)U=w[m],a(U,w[m-2],L),U.add(w[m-7]),s(M,w[m-15],L),U.add(M),U.add(w[m-16]);for(b.assign(h),D.assign(l),k.assign(I),S.assign(C),F.assign(B),R.assign(d),x.assign(u),N.assign(Q),m=0;m<80;++m)v.assign(N),i(M,F,L),v.add(M),t(M,F,R,x,L),v.add(M),v.add(n[m]),v.add(w[m]),A(G,b,L),e(M,b,D,k,L),G.add(M),U=N,N=x,x=R,R=F,S.add(v),F=S,S=k,k=D,D=b,U.assign(v),U.add(G),b=U;h.add(b),l.add(D),I.add(k),C.add(S),B.add(F),d.add(R),u.add(x),Q.add(N)}return c?(H=new Uint8Array(48),h.copyTo(H,0),l.copyTo(H,8),I.copyTo(H,16),C.copyTo(H,24),B.copyTo(H,32),d.copyTo(H,40)):(H=new Uint8Array(64),h.copyTo(H,0),l.copyTo(H,8),I.copyTo(H,16),C.copyTo(H,24),B.copyTo(H,32),d.copyTo(H,40),u.copyTo(H,48),Q.copyTo(H,56)),H}}();class Uo{decryptBlock(t){return t}encrypt(t){return t}}class Ho{constructor(){this.constructor===Ho&&v("Cannot initialize AESBaseCipher."),this._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]),this._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]),this._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]),this._mixCol=new Uint8Array(256);for(let t=0;t<256;t++)this._mixCol[t]=t<128?t<<1:t<<1^27;this.buffer=new Uint8Array(16),this.bufferPosition=0}_expandKey(t){v("Cannot call `_expandKey` on the base class")}_decrypt(t,e){let A,i,s;const a=new Uint8Array(16);a.set(t);for(let t=0,A=this._keySize;t<16;++t,++A)a[t]^=e[A];for(let t=this._cyclesOfRepetition-1;t>=1;--t){A=a[13],a[13]=a[9],a[9]=a[5],a[5]=a[1],a[1]=A,A=a[14],i=a[10],a[14]=a[6],a[10]=a[2],a[6]=A,a[2]=i,A=a[15],i=a[11],s=a[7],a[15]=a[3],a[11]=A,a[7]=i,a[3]=s;for(let t=0;t<16;++t)a[t]=this._inv_s[a[t]];for(let A=0,i=16*t;A<16;++A,++i)a[A]^=e[i];for(let t=0;t<16;t+=4){const e=this._mix[a[t]],i=this._mix[a[t+1]],s=this._mix[a[t+2]],n=this._mix[a[t+3]];A=e^i>>>8^i<<24^s>>>16^s<<16^n>>>24^n<<8,a[t]=A>>>24&255,a[t+1]=A>>16&255,a[t+2]=A>>8&255,a[t+3]=255&A}}A=a[13],a[13]=a[9],a[9]=a[5],a[5]=a[1],a[1]=A,A=a[14],i=a[10],a[14]=a[6],a[10]=a[2],a[6]=A,a[2]=i,A=a[15],i=a[11],s=a[7],a[15]=a[3],a[11]=A,a[7]=i,a[3]=s;for(let t=0;t<16;++t)a[t]=this._inv_s[a[t]],a[t]^=e[t];return a}_encrypt(t,e){const A=this._s;let i,s,a;const n=new Uint8Array(16);n.set(t);for(let t=0;t<16;++t)n[t]^=e[t];for(let t=1;t<this._cyclesOfRepetition;t++){for(let t=0;t<16;++t)n[t]=A[n[t]];a=n[1],n[1]=n[5],n[5]=n[9],n[9]=n[13],n[13]=a,a=n[2],s=n[6],n[2]=n[10],n[6]=n[14],n[10]=a,n[14]=s,a=n[3],s=n[7],i=n[11],n[3]=n[15],n[7]=a,n[11]=s,n[15]=i;for(let t=0;t<16;t+=4){const e=n[t+0],A=n[t+1],s=n[t+2],a=n[t+3];i=e^A^s^a,n[t+0]^=i^this._mixCol[e^A],n[t+1]^=i^this._mixCol[A^s],n[t+2]^=i^this._mixCol[s^a],n[t+3]^=i^this._mixCol[a^e]}for(let A=0,i=16*t;A<16;++A,++i)n[A]^=e[i]}for(let t=0;t<16;++t)n[t]=A[n[t]];a=n[1],n[1]=n[5],n[5]=n[9],n[9]=n[13],n[13]=a,a=n[2],s=n[6],n[2]=n[10],n[6]=n[14],n[10]=a,n[14]=s,a=n[3],s=n[7],i=n[11],n[3]=n[15],n[7]=a,n[11]=s,n[15]=i;for(let t=0,A=this._keySize;t<16;++t,++A)n[t]^=e[A];return n}_decryptBlock2(t,e){const A=t.length;let i=this.buffer,s=this.bufferPosition;const a=[];let n=this.iv;for(let e=0;e<A;++e){if(i[s]=t[e],++s,s<16)continue;const A=this._decrypt(i,this._key);for(let t=0;t<16;++t)A[t]^=n[t];n=i,a.push(A),i=new Uint8Array(16),s=0}if(this.buffer=i,this.bufferLength=s,this.iv=n,0===a.length)return new Uint8Array(0);let r=16*a.length;if(e){const t=a.at(-1);let e=t[15];if(e<=16){for(let A=15,i=16-e;A>=i;--A)if(t[A]!==e){e=0;break}r-=e,a[a.length-1]=t.subarray(0,16-e)}}const o=new Uint8Array(r);for(let t=0,e=0,A=a.length;t<A;++t,e+=16)o.set(a[t],e);return o}decryptBlock(t,e,A=null){const i=t.length,s=this.buffer;let a=this.bufferPosition;if(A)this.iv=A;else{for(let e=0;a<16&&e<i;++e,++a)s[a]=t[e];if(a<16)return this.bufferLength=a,new Uint8Array(0);this.iv=s,t=t.subarray(16)}return this.buffer=new Uint8Array(16),this.bufferLength=0,this.decryptBlock=this._decryptBlock2,this.decryptBlock(t,e)}encrypt(t,e){const A=t.length;let i=this.buffer,s=this.bufferPosition;const a=[];e||(e=new Uint8Array(16));for(let n=0;n<A;++n){if(i[s]=t[n],++s,s<16)continue;for(let t=0;t<16;++t)i[t]^=e[t];const A=this._encrypt(i,this._key);e=A,a.push(A),i=new Uint8Array(16),s=0}if(this.buffer=i,this.bufferLength=s,this.iv=e,0===a.length)return new Uint8Array(0);const n=16*a.length,r=new Uint8Array(n);for(let t=0,e=0,A=a.length;t<A;++t,e+=16)r.set(a[t],e);return r}}class Jo extends Ho{constructor(t){super(),this._cyclesOfRepetition=10,this._keySize=160,this._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]),this._key=this._expandKey(t)}_expandKey(t){const e=this._s,A=this._rcon,i=new Uint8Array(176);i.set(t);for(let t=16,s=1;t<176;++s){let a=i[t-3],n=i[t-2],r=i[t-1],o=i[t-4];a=e[a],n=e[n],r=e[r],o=e[o],a^=A[s];for(let e=0;e<4;++e)i[t]=a^=i[t-16],t++,i[t]=n^=i[t-16],t++,i[t]=r^=i[t-16],t++,i[t]=o^=i[t-16],t++}return i}}class Yo extends Ho{constructor(t){super(),this._cyclesOfRepetition=14,this._keySize=224,this._key=this._expandKey(t)}_expandKey(t){const e=this._s,A=new Uint8Array(240);A.set(t);let i,s,a,n,r=1;for(let t=32,o=1;t<240;++o){t%32==16?(i=e[i],s=e[s],a=e[a],n=e[n]):t%32==0&&(i=A[t-3],s=A[t-2],a=A[t-1],n=A[t-4],i=e[i],s=e[s],a=e[a],n=e[n],i^=r,(r<<=1)>=256&&(r=255&(27^r)));for(let e=0;e<4;++e)A[t]=i^=A[t-32],t++,A[t]=s^=A[t-32],t++,A[t]=a^=A[t-32],t++,A[t]=n^=A[t-32],t++}return A}}class To{checkOwnerPassword(t,e,A,i){const s=new Uint8Array(t.length+56);return s.set(t,0),s.set(e,t.length),s.set(A,t.length+e.length),At(Mo(s,0,s.length),i)}checkUserPassword(t,e,A){const i=new Uint8Array(t.length+8);return i.set(t,0),i.set(e,t.length),At(Mo(i,0,i.length),A)}getOwnerKey(t,e,A,i){const s=new Uint8Array(t.length+56);s.set(t,0),s.set(e,t.length),s.set(A,t.length+e.length);const a=Mo(s,0,s.length);return new Yo(a).decryptBlock(i,!1,new Uint8Array(16))}getUserKey(t,e,A){const i=new Uint8Array(t.length+8);i.set(t,0),i.set(e,t.length);const s=Mo(i,0,i.length);return new Yo(s).decryptBlock(A,!1,new Uint8Array(16))}}class Ko{_hash(t,e,A){let i=Mo(e,0,e.length).subarray(0,32),s=[0],a=0;for(;a<64||s.at(-1)>a-32;){const e=t.length+i.length+A.length,o=new Uint8Array(e);let g=0;o.set(t,g),g+=t.length,o.set(i,g),g+=i.length,o.set(A,g);const c=new Uint8Array(64*e);for(let t=0,A=0;t<64;t++,A+=e)c.set(o,A);s=new Jo(i.subarray(0,16)).encrypt(c,i.subarray(16,32));const h=s.slice(0,16).reduce(((t,e)=>t+e),0)%3;0===h?i=Mo(s,0,s.length):1===h?(n=s,r=s.length,i=Lo(n,0,r,!0)):2===h&&(i=Lo(s,0,s.length)),a++}var n,r;return i.subarray(0,32)}checkOwnerPassword(t,e,A,i){const s=new Uint8Array(t.length+56);return s.set(t,0),s.set(e,t.length),s.set(A,t.length+e.length),At(this._hash(t,s,A),i)}checkUserPassword(t,e,A){const i=new Uint8Array(t.length+8);return i.set(t,0),i.set(e,t.length),At(this._hash(t,i,[]),A)}getOwnerKey(t,e,A,i){const s=new Uint8Array(t.length+56);s.set(t,0),s.set(e,t.length),s.set(A,t.length+e.length);const a=this._hash(t,s,A);return new Yo(a).decryptBlock(i,!1,new Uint8Array(16))}getUserKey(t,e,A){const i=new Uint8Array(t.length+8);i.set(t,0),i.set(e,t.length);const s=this._hash(t,i,[]);return new Yo(s).decryptBlock(A,!1,new Uint8Array(16))}}class qo{constructor(t,e){this.StringCipherConstructor=t,this.StreamCipherConstructor=e}createStream(t,e){const A=new this.StreamCipherConstructor;return new xo(t,e,(function(t,e){return A.decryptBlock(t,e)}))}decryptString(t){const e=new this.StringCipherConstructor;let A=O(t);return A=e.decryptBlock(A,!0),_(A)}encryptString(t){const e=new this.StringCipherConstructor;if(e instanceof Ho){const A=16-t.length%16;t+=String.fromCharCode(A).repeat(A);const i=new Uint8Array(16);if("undefined"!=typeof crypto)crypto.getRandomValues(i);else for(let t=0;t<16;t++)i[t]=Math.floor(256*Math.random());let s=O(t);s=e.encrypt(s,i);const a=new Uint8Array(16+s.length);return a.set(i),a.set(s,16),_(a)}let A=O(t);return A=e.encrypt(A),_(A)}}class Po{static#F=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]);#R(t,e,A,i,s,a,n,r,o,g,c,h){if(e){const t=Math.min(127,e.length);e=e.subarray(0,t)}else e=[];const l=6===t?new Ko:new To;return l.checkUserPassword(e,r,n)?l.getUserKey(e,o,c):e.length&&l.checkOwnerPassword(e,i,a,A)?l.getOwnerKey(e,s,a,g):null}#x(t,e,A,i,s,a,n,r){const o=40+A.length+t.length,g=new Uint8Array(o);let c,h,l=0;if(e)for(h=Math.min(32,e.length);l<h;++l)g[l]=e[l];for(c=0;l<32;)g[l++]=Po.#F[c++];for(c=0,h=A.length;c<h;++c)g[l++]=A[c];for(g[l++]=255&s,g[l++]=s>>8&255,g[l++]=s>>16&255,g[l++]=s>>>24&255,c=0,h=t.length;c<h;++c)g[l++]=t[c];a>=4&&!r&&(g[l++]=255,g[l++]=255,g[l++]=255,g[l++]=255);let I=vo(g,0,l);const C=n>>3;if(a>=3)for(c=0;c<50;++c)I=vo(I,0,C);const B=I.subarray(0,C);let d,u;if(a>=3){for(l=0;l<32;++l)g[l]=Po.#F[l];for(c=0,h=t.length;c<h;++c)g[l++]=t[c];d=new No(B),u=d.encryptBlock(vo(g,0,l)),h=B.length;const e=new Uint8Array(h);for(c=1;c<=19;++c){for(let t=0;t<h;++t)e[t]=B[t]^c;d=new No(e),u=d.encryptBlock(u)}for(c=0,h=u.length;c<h;++c)if(i[c]!==u[c])return null}else for(d=new No(B),u=d.encryptBlock(Po.#F),c=0,h=u.length;c<h;++c)if(i[c]!==u[c])return null;return B}#N(t,e,A,i){const s=new Uint8Array(32);let a=0;const n=Math.min(32,t.length);for(;a<n;++a)s[a]=t[a];let r=0;for(;a<32;)s[a++]=Po.#F[r++];let o=vo(s,0,a);const g=i>>3;if(A>=3)for(r=0;r<50;++r)o=vo(o,0,o.length);let c,h;if(A>=3){h=e;const t=new Uint8Array(g);for(r=19;r>=0;r--){for(let e=0;e<g;++e)t[e]=o[e]^r;c=new No(t),h=c.encryptBlock(h)}}else c=new No(o.subarray(0,g)),h=c.encryptBlock(e);return h}#v(t,e,A,i=!1){const s=new Uint8Array(A.length+9),a=A.length;let n;for(n=0;n<a;++n)s[n]=A[n];return s[n++]=255&t,s[n++]=t>>8&255,s[n++]=t>>16&255,s[n++]=255&e,s[n++]=e>>8&255,i&&(s[n++]=115,s[n++]=65,s[n++]=108,s[n++]=84),vo(s,0,n).subarray(0,Math.min(A.length+5,16))}#G(t,e,A,i,s){if(!(e instanceof ht))throw new q("Invalid crypt filter name.");const a=this,n=t.get(e.name),r=n?.get("CFM");if(!r||"None"===r.name)return function(){return new Uo};if("V2"===r.name)return function(){return new No(a.#v(A,i,s,!1))};if("AESV2"===r.name)return function(){return new Jo(a.#v(A,i,s,!0))};if("AESV3"===r.name)return function(){return new Yo(s)};throw new q("Unknown crypto method")}constructor(t,e,A){const i=t.get("Filter");if(!Qt(i,"Standard"))throw new q("unknown encryption method");this.filterName=i.name,this.dict=t;const s=t.get("V");if(!Number.isInteger(s)||1!==s&&2!==s&&4!==s&&5!==s)throw new q("unsupported encryption algorithm");this.algorithm=s;let a=t.get("Length");if(!a)if(s<=3)a=40;else{const e=t.get("CF"),A=t.get("StmF");if(e instanceof Ct&&A instanceof ht){e.suppressEncryption=!0;const t=e.get(A.name);a=t?.get("Length")||128,a<40&&(a<<=3)}}if(!Number.isInteger(a)||a<40||a%8!=0)throw new q("invalid key length");const n=O(t.get("O")),r=O(t.get("U")),o=n.subarray(0,32),g=r.subarray(0,32),c=t.get("P"),h=t.get("R"),l=(4===s||5===s)&&!1!==t.get("EncryptMetadata");this.encryptMetadata=l;const I=O(e);let C,B;if(A){if(6===h)try{A=et(A)}catch{N("CipherTransformFactory: Unable to convert UTF8 encoded password.")}C=O(A)}if(5!==s)B=this.#x(I,C,o,g,c,h,a,l);else{const e=n.subarray(32,40),A=n.subarray(40,48),i=r.subarray(0,48),s=r.subarray(32,40),a=r.subarray(40,48),c=O(t.get("OE")),l=O(t.get("UE")),I=O(t.get("Perms"));B=this.#R(h,C,o,e,A,i,g,s,a,c,l,I)}if(!B&&!A)throw new H("No password given",1);if(!B&&A){const t=this.#N(C,o,h,a);B=this.#x(I,t,o,g,c,h,a,l)}if(!B)throw new H("Incorrect Password",2);if(this.encryptionKey=B,s>=4){const e=t.get("CF");e instanceof Ct&&(e.suppressEncryption=!0),this.cf=e,this.stmf=t.get("StmF")||ht.get("Identity"),this.strf=t.get("StrF")||ht.get("Identity"),this.eff=t.get("EFF")||this.stmf}}createCipherTransform(t,e){if(4===this.algorithm||5===this.algorithm)return new qo(this.#G(this.cf,this.strf,t,e,this.encryptionKey),this.#G(this.cf,this.stmf,t,e,this.encryptionKey));const A=this.#v(t,e,this.encryptionKey,!1),i=function(){return new No(A)};return new qo(i,i)}}async function _o(t,e,A,{encrypt:i=null}){const s=i?.createCipherTransform(t.num,t.gen);A.push(`${t.num} ${t.gen} obj\n`),e instanceof Ct?await Oo(e,A,s):e instanceof mt?await Wo(e,A,s):(Array.isArray(e)||ArrayBuffer.isView(e))&&await Zo(e,A,s),A.push("\nendobj\n")}async function Oo(t,e,A){e.push("<<");for(const i of t.getKeys())e.push(` /${qt(i)} `),await jo(t.getRaw(i),e,A);e.push(">>")}async function Wo(t,e,A){let i=t.getBytes();const{dict:s}=t,[a,n]=await Promise.all([s.getAsync("Filter"),s.getAsync("DecodeParms")]),r=Qt(Array.isArray(a)?await s.xref.fetchIfRefAsync(a[0]):a,"FlateDecode");if(i.length>=256||r)try{const t=new CompressionStream("deflate"),e=t.writable.getWriter();e.write(i),e.close();const A=await new Response(t.readable).arrayBuffer();let o,g;i=new Uint8Array(A),a?r||(o=Array.isArray(a)?[ht.get("FlateDecode"),...a]:[ht.get("FlateDecode"),a],n&&(g=Array.isArray(n)?[null,...n]:[null,n])):o=ht.get("FlateDecode"),o&&s.set("Filter",o),g&&s.set("DecodeParms",g)}catch(t){x(`writeStream - cannot compress data: "${t}".`)}let o=_(i);A&&(o=A.encryptString(o)),s.set("Length",o.length),await Oo(s,e,A),e.push(" stream\n",o,"\nendstream")}async function Zo(t,e,A){e.push("[");let i=!0;for(const s of t)i?i=!1:e.push(" "),await jo(s,e,A);e.push("]")}async function jo(t,e,A){t instanceof ht?e.push(`/${qt(t.name)}`):t instanceof Bt?e.push(`${t.num} ${t.gen} R`):Array.isArray(t)||ArrayBuffer.isView(t)?await Zo(t,e,A):"string"==typeof t?(A&&(t=A.encryptString(t)),e.push(`(${Pt(t)})`)):"number"==typeof t?e.push($t(t)):"boolean"==typeof t?e.push(t.toString()):t instanceof Ct?await Oo(t,e,A):t instanceof mt?await Wo(t,e,A):null===t?e.push("null"):N(`Unhandled value in writer: ${typeof t}, please file a bug.`)}function Vo(t,e,A,i){for(let s=e+A-1;s>A-1;s--)i[s]=255&t,t>>=8;return A+e}function Xo(t,e,A){for(let i=0,s=t.length;i<s;i++)A[e+i]=255&t.charCodeAt(i)}function zo(t){const e=[];for(const{ref:A}of t)A.num===e.at(-2)+e.at(-1)?e[e.length-1]+=1:e.push(A.num,1);return e}function $o(t,e,A){if(Array.isArray(e.fileIds)&&e.fileIds.length>0){const i=function(t,e){const A=Math.floor(Date.now()/1e3),i=e.filename||"",s=[A.toString(),i,t.toString()];let a=s.reduce(((t,e)=>t+e.length),0);for(const t of Object.values(e.info))s.push(t),a+=t.length;const n=new Uint8Array(a);let r=0;for(const t of s)Xo(t,r,n),r+=t.length;return _(vo(n))}(t,e);A.set("ID",[e.fileIds[0],i])}}class tg{constructor(t,e){this.dict=t,this.ref=e instanceof Bt?e:null,this.roleMap=new Map,this.structParentIds=null}init(){this.readRoleMap()}#M(t,e,A){if(!(t instanceof Bt)||e<0)return;this.structParentIds||=new ut;let i=this.structParentIds.get(t);i||(i=[],this.structParentIds.put(t,i)),i.push([e,A])}addAnnotationIdToPage(t,e){this.#M(t,e,4)}readRoleMap(){const t=this.dict.get("RoleMap");t instanceof Ct&&t.forEach(((t,e)=>{e instanceof ht&&this.roleMap.set(t,e.name)}))}static async canCreateStructureTree({catalogRef:t,pdfManager:e,newAnnotationsByPage:A}){if(!(t instanceof Bt))return N("Cannot save the struct tree: no catalog reference."),!1;let i=0,s=!0;for(const[t,a]of A){const{ref:A}=await e.getPage(t);if(!(A instanceof Bt)){N(`Cannot save the struct tree: page ${t} has no ref.`),s=!0;break}for(const t of a)t.accessibilityData?.type&&(t.parentTreeId=i++,s=!1)}if(s){for(const t of A.values())for(const e of t)delete e.parentTreeId;return!1}return!0}static async createStructureTree({newAnnotationsByPage:t,xref:e,catalogRef:A,pdfManager:i,newRefs:s}){const a=i.catalog.cloneDict(),n=new ut;n.put(A,a);const r=e.getNewTemporaryRef();a.set("StructTreeRoot",r);const o=new Ct(e);o.set("Type",ht.get("StructTreeRoot"));const g=e.getNewTemporaryRef();o.set("ParentTree",g);const c=[];o.set("K",c),n.put(r,o);const h=new Ct(e),l=[];h.set("Nums",l);const I=await this.#L({newAnnotationsByPage:t,structTreeRootRef:r,kids:c,nums:l,xref:e,pdfManager:i,cache:n});o.set("ParentTreeNextKey",I),n.put(g,h);const C=[];for(const[t,A]of n.items())C.length=0,await _o(t,A,C,e),s.push({ref:t,data:C.join("")})}async canUpdateStructTree({pdfManager:t,xref:e,newAnnotationsByPage:A}){if(!this.ref)return N("Cannot update the struct tree: no root reference."),!1;let i=this.dict.get("ParentTreeNextKey");if(!Number.isInteger(i)||i<0)return N("Cannot update the struct tree: invalid next key."),!1;const s=this.dict.get("ParentTree");if(!(s instanceof Ct))return N("Cannot update the struct tree: ParentTree isn't a dict."),!1;const a=s.get("Nums");if(!Array.isArray(a))return N("Cannot update the struct tree: nums isn't an array."),!1;const n=new mo(s,e);for(const e of A.keys()){const{pageDict:A}=await t.getPage(e);if(!A.has("StructParents"))continue;const i=A.get("StructParents");if(!Number.isInteger(i)||!Array.isArray(n.get(i)))return N(`Cannot save the struct tree: page ${e} has a wrong id.`),!1}let r=!0;for(const[e,s]of A){const{pageDict:A}=await t.getPage(e);tg.#U({elements:s,xref:this.dict.xref,pageDict:A,numberTree:n});for(const t of s)t.accessibilityData?.type&&(t.parentTreeId=i++,r=!1)}if(r){for(const t of A.values())for(const e of t)delete e.parentTreeId,delete e.structTreeParent;return!1}return!0}async updateStructureTree({newAnnotationsByPage:t,pdfManager:e,newRefs:A}){const i=this.dict.xref,s=this.dict.clone(),a=this.ref,n=new ut;n.put(a,s);let r,o=s.getRaw("ParentTree");o instanceof Bt?r=i.fetch(o):(r=o,o=i.getNewTemporaryRef(),s.set("ParentTree",o)),r=r.clone(),n.put(o,r);let g=r.getRaw("Nums"),c=null;g instanceof Bt&&(c=g,g=i.fetch(c)),g=g.slice(),c||r.set("Nums",g);const h=await tg.#L({newAnnotationsByPage:t,structTreeRootRef:a,kids:null,nums:g,xref:i,pdfManager:e,cache:n});s.set("ParentTreeNextKey",h),c&&n.put(c,g);const l=[];for(const[t,e]of n.items())l.length=0,await _o(t,e,l,i),A.push({ref:t,data:l.join("")})}static async#L({newAnnotationsByPage:t,structTreeRootRef:e,kids:A,nums:i,xref:s,pdfManager:a,cache:n}){const r=ht.get("OBJR");let o=-1/0;for(const[g,c]of t){const{ref:t}=await a.getPage(g),h=t instanceof Bt;for(const{accessibilityData:a,ref:g,parentTreeId:l,structTreeParent:I}of c){if(!a?.type)continue;const{type:c,title:C,lang:B,alt:d,expanded:u,actualText:Q}=a;o=Math.max(o,l);const E=s.getNewTemporaryRef(),f=new Ct(s);f.set("S",ht.get(c)),C&&f.set("T",C),B&&f.set("Lang",B),d&&f.set("Alt",d),u&&f.set("E",u),Q&&f.set("ActualText",Q),await this.#H({structTreeParent:I,tagDict:f,newTagRef:E,structTreeRootRef:e,fallbackKids:A,xref:s,cache:n});const p=new Ct(s);f.set("K",p),p.set("Type",r),h&&p.set("Pg",t),p.set("Obj",g),n.put(E,f),i.push(l,E)}}return o+1}static#U({elements:t,xref:e,pageDict:A,numberTree:i}){const s=new Map;for(const e of t)if(e.structTreeParentId){const t=parseInt(e.structTreeParentId.split("_mc")[1],10);let A=s.get(t);A||(A=[],s.set(t,A)),A.push(e)}const a=A.get("StructParents");if(!Number.isInteger(a))return;const n=i.get(a),r=(t,A,i)=>{const a=s.get(t);if(a){const t=A.getRaw("P"),s=e.fetchIfRef(t);if(t instanceof Bt&&s instanceof Ct){const t={ref:i,dict:A};for(const e of a)e.structTreeParent=t}return!0}return!1};for(const t of n){if(!(t instanceof Bt))continue;const A=e.fetch(t),i=A.get("K");if(Number.isInteger(i))r(i,A,t);else if(Array.isArray(i))for(let s of i){if(s=e.fetchIfRef(s),Number.isInteger(s)&&r(s,A,t))break;if(!(s instanceof Ct))continue;if(!Qt(s.get("Type"),"MCR"))break;const i=s.get("MCID");if(Number.isInteger(i)&&r(i,A,t))break}}}static async#H({structTreeParent:t,tagDict:e,newTagRef:A,structTreeRootRef:i,fallbackKids:s,xref:a,cache:n}){let r,o=null;t?(({ref:o}=t),r=t.dict.getRaw("P")||i):r=i,e.set("P",r);const g=a.fetchIfRef(r);if(!g)return void s.push(A);let c=n.get(r);c||(c=g.clone(),n.put(r,c));const h=c.getRaw("K");let l=h instanceof Bt?n.get(h):null;if(!l){l=a.fetchIfRef(h),l=Array.isArray(l)?l.slice():[h];const t=a.getNewTemporaryRef();c.set("K",t),n.put(t,l)}const I=l.indexOf(o);l.splice(I>=0?I+1:l.length,0,A)}}class eg{constructor(t,e){this.tree=t,this.dict=e,this.kids=[],this.parseKids()}get role(){const t=this.dict.get("S"),e=t instanceof ht?t.name:"",{root:A}=this.tree;return A.roleMap.has(e)?A.roleMap.get(e):e}parseKids(){let t=null;const e=this.dict.getRaw("Pg");e instanceof Bt&&(t=e.toString());const A=this.dict.get("K");if(Array.isArray(A))for(const e of A){const A=this.parseKid(t,e);A&&this.kids.push(A)}else{const e=this.parseKid(t,A);e&&this.kids.push(e)}}parseKid(t,e){if(Number.isInteger(e))return this.tree.pageDict.objId!==t?null:new Ag({type:1,mcid:e,pageObjId:t});let A=null;if(e instanceof Bt?A=this.dict.xref.fetch(e):e instanceof Ct&&(A=e),!A)return null;const i=A.getRaw("Pg");i instanceof Bt&&(t=i.toString());const s=A.get("Type")instanceof ht?A.get("Type").name:null;if("MCR"===s){if(this.tree.pageDict.objId!==t)return null;const e=A.getRaw("Stm");return new Ag({type:2,refObjId:e instanceof Bt?e.toString():null,pageObjId:t,mcid:A.get("MCID")})}if("OBJR"===s){if(this.tree.pageDict.objId!==t)return null;const e=A.getRaw("Obj");return new Ag({type:3,refObjId:e instanceof Bt?e.toString():null,pageObjId:t})}return new Ag({type:5,dict:A})}}class Ag{constructor({type:t,dict:e=null,mcid:A=null,pageObjId:i=null,refObjId:s=null}){this.type=t,this.dict=e,this.mcid=A,this.pageObjId=i,this.refObjId=s,this.parentNode=null}}class ig{constructor(t,e){this.root=t,this.rootDict=t?t.dict:null,this.pageDict=e,this.nodes=[]}parse(t){if(!this.root||!this.rootDict)return;const e=this.rootDict.get("ParentTree");if(!e)return;const A=this.pageDict.get("StructParents"),i=t instanceof Bt&&this.root.structParentIds?.get(t);if(!Number.isInteger(A)&&!i)return;const s=new Map,a=new mo(e,this.rootDict.xref);if(Number.isInteger(A)){const t=a.get(A);if(Array.isArray(t))for(const e of t)e instanceof Bt&&this.addNode(this.rootDict.xref.fetch(e),s)}if(i)for(const[t,e]of i){const A=a.get(t);if(A){const t=this.addNode(this.rootDict.xref.fetchIfRef(A),s);1===t?.kids?.length&&3===t.kids[0].type&&(t.kids[0].type=e)}}}addNode(t,e,A=0){if(A>40)return N("StructTree MAX_DEPTH reached."),null;if(e.has(t))return e.get(t);const i=new eg(this,t);e.set(t,i);const s=t.get("P");if(!s||Qt(s.get("Type"),"StructTreeRoot"))return this.addTopLevelNode(t,i)||e.delete(t),i;const a=this.addNode(s,e,A+1);if(!a)return i;let n=!1;for(const e of a.kids)5===e.type&&e.dict===t&&(e.parentNode=i,n=!0);return n||e.delete(t),i}addTopLevelNode(t,e){const A=this.rootDict.get("K");if(!A)return!1;if(A instanceof Ct)return A.objId===t.objId&&(this.nodes[0]=e,!0);if(!Array.isArray(A))return!0;let i=!1;for(let s=0;s<A.length;s++){const a=A[s];a?.toString()===t.objId&&(this.nodes[s]=e,i=!0)}return i}get serializable(){function t(e,A,i=0){if(i>40)return void N("StructTree too deep to be fully serialized.");const s=Object.create(null);s.role=e.role,s.children=[],A.children.push(s);const a=e.dict.get("Alt");"string"==typeof a&&(s.alt=$(a));const n=e.dict.get("Lang");"string"==typeof n&&(s.lang=$(n));for(const A of e.kids){const e=5===A.type?A.parentNode:null;e?t(e,s,i+1):1===A.type||2===A.type?s.children.push({type:"content",id:`p${A.pageObjId}_mc${A.mcid}`}):3===A.type?s.children.push({type:"object",id:A.refObjId}):4===A.type&&s.children.push({type:"annotation",id:`pdfjs_internal_id_${A.refObjId}`})}}const e=Object.create(null);e.children=[],e.role="Root";for(const A of this.nodes)A&&t(A,e);return e}}function sg(t){if(!Array.isArray(t)||t.length<2)return!1;const[e,A,...i]=t;if(!(e instanceof Bt||Number.isInteger(e)))return!1;if(!(A instanceof ht))return!1;let s=!0;switch(A.name){case"XYZ":if(3!==i.length)return!1;break;case"Fit":case"FitB":return 0===i.length;case"FitH":case"FitBH":case"FitV":case"FitBV":if(1!==i.length)return!1;break;case"FitR":if(4!==i.length)return!1;s=!1;break;default:return!1}for(const t of i)if(!("number"==typeof t||s&&null===t))return!1;return!0}function ag(t){return t instanceof Ct&&(t=t.get("D")),sg(t)?t:null}function ng(t){let e=t.get("D");if(e){if(e instanceof ht&&(e=e.name),"string"==typeof e)return $(e);if(sg(e))return JSON.stringify(e)}return null}class rg{constructor(t,e){if(this.pdfManager=t,this.xref=e,this._catDict=e.getCatalogObj(),!(this._catDict instanceof Ct))throw new q("Catalog object is not a dictionary.");this.toplevelPagesDict,this._actualNumPages=null,this.fontCache=new ut,this.builtInCMapCache=new Map,this.standardFontDataCache=new Map,this.globalImageCache=new sr,this.pageKidsCountCache=new ut,this.pageIndexCache=new ut,this.nonBlendModesSet=new dt,this.systemFontCache=new Map}cloneDict(){return this._catDict.clone()}get version(){const t=this._catDict.get("Version");if(t instanceof ht){if(yt.test(t.name))return L(this,"version",t.name);N(`Invalid PDF catalog version: ${t.name}`)}return L(this,"version",null)}get lang(){const t=this._catDict.get("Lang");return L(this,"lang",t&&"string"==typeof t?$(t):null)}get needsRendering(){const t=this._catDict.get("NeedsRendering");return L(this,"needsRendering","boolean"==typeof t&&t)}get collection(){let t=null;try{const e=this._catDict.get("Collection");e instanceof Ct&&e.size>0&&(t=e)}catch(t){if(t instanceof bt)throw t;x("Cannot fetch Collection entry; assuming no collection is present.")}return L(this,"collection",t)}get acroForm(){let t=null;try{const e=this._catDict.get("AcroForm");e instanceof Ct&&e.size>0&&(t=e)}catch(t){if(t instanceof bt)throw t;x("Cannot fetch AcroForm entry; assuming no forms are present.")}return L(this,"acroForm",t)}get acroFormRef(){const t=this._catDict.getRaw("AcroForm");return L(this,"acroFormRef",t instanceof Bt?t:null)}get metadata(){const t=this._catDict.getRaw("Metadata");if(!(t instanceof Bt))return L(this,"metadata",null);let e=null;try{const A=this.xref.fetch(t,!this.xref.encrypt?.encryptMetadata);if(A instanceof mt&&A.dict instanceof Ct){const t=A.dict.get("Type"),i=A.dict.get("Subtype");if(Qt(t,"Metadata")&&Qt(i,"XML")){const t=tt(A.getString());t&&(e=new Ro(t).serializable)}}}catch(t){if(t instanceof bt)throw t;x(`Skipping invalid Metadata: "${t}".`)}return L(this,"metadata",e)}get markInfo(){let t=null;try{t=this._readMarkInfo()}catch(t){if(t instanceof bt)throw t;N("Unable to read mark info.")}return L(this,"markInfo",t)}_readMarkInfo(){const t=this._catDict.get("MarkInfo");if(!(t instanceof Ct))return null;const e={Marked:!1,UserProperties:!1,Suspects:!1};for(const A in e){const i=t.get(A);"boolean"==typeof i&&(e[A]=i)}return e}get structTreeRoot(){let t=null;try{t=this._readStructTreeRoot()}catch(t){if(t instanceof bt)throw t;N("Unable read to structTreeRoot info.")}return L(this,"structTreeRoot",t)}_readStructTreeRoot(){const t=this._catDict.getRaw("StructTreeRoot"),e=this.xref.fetchIfRef(t);if(!(e instanceof Ct))return null;const A=new tg(e,t);return A.init(),A}get toplevelPagesDict(){const t=this._catDict.get("Pages");if(!(t instanceof Ct))throw new q("Invalid top-level pages dictionary.");return L(this,"toplevelPagesDict",t)}get documentOutline(){let t=null;try{t=this._readDocumentOutline()}catch(t){if(t instanceof bt)throw t;N("Unable to read document outline.")}return L(this,"documentOutline",t)}_readDocumentOutline(){let t=this._catDict.get("Outlines");if(!(t instanceof Ct))return null;if(t=t.getRaw("First"),!(t instanceof Bt))return null;const e={items:[]},A=[{obj:t,parent:e}],i=new dt;i.put(t);const s=this.xref,a=new Uint8ClampedArray(3);for(;A.length>0;){const e=A.shift(),n=s.fetchIfRef(e.obj);if(null===n)continue;n.has("Title")||N("Invalid outline item encountered.");const r={url:null,dest:null,action:null};rg.parseDestDictionary({destDict:n,resultObj:r,docBaseUrl:this.baseUrl,docAttachments:this.attachments});const o=n.get("Title"),g=n.get("F")||0,c=n.getArray("C"),h=n.get("Count");let l=a;!Ht(c,3)||0===c[0]&&0===c[1]&&0===c[2]||(l=he.singletons.rgb.getRgb(c,0));const I={action:r.action,attachment:r.attachment,dest:r.dest,url:r.url,unsafeUrl:r.unsafeUrl,newWindow:r.newWindow,setOCGState:r.setOCGState,title:"string"==typeof o?$(o):"",color:l,count:Number.isInteger(h)?h:void 0,bold:!!(2&g),italic:!!(1&g),items:[]};e.parent.items.push(I),t=n.getRaw("First"),t instanceof Bt&&!i.has(t)&&(A.push({obj:t,parent:I}),i.put(t)),t=n.getRaw("Next"),t instanceof Bt&&!i.has(t)&&(A.push({obj:t,parent:e.parent}),i.put(t))}return e.items.length>0?e.items:null}get permissions(){let t=null;try{t=this._readPermissions()}catch(t){if(t instanceof bt)throw t;N("Unable to read permissions.")}return L(this,"permissions",t)}_readPermissions(){const t=this.xref.trailer.get("Encrypt");if(!(t instanceof Ct))return null;let e=t.get("P");if("number"!=typeof e)return null;e+=2**32;const A=[];for(const t in l){const i=l[t];e&i&&A.push(i)}return A}get optionalContentConfig(){let t=null;try{const e=this._catDict.get("OCProperties");if(!e)return L(this,"optionalContentConfig",null);const A=e.get("D");if(!A)return L(this,"optionalContentConfig",null);const i=e.get("OCGs");if(!Array.isArray(i))return L(this,"optionalContentConfig",null);const s=[],a=new dt;for(const t of i)t instanceof Bt&&!a.has(t)&&(a.put(t),s.push(this.#J(t)));t=this.#Y(A,a),t.groups=s}catch(t){if(t instanceof bt)throw t;N(`Unable to read optional content config: ${t}`)}return L(this,"optionalContentConfig",t)}#J(t){const e=this.xref.fetch(t),A={id:t.toString(),name:null,intent:null,usage:{print:null,view:null}},i=e.get("Name");"string"==typeof i&&(A.name=$(i));let s=e.getArray("Intent");Array.isArray(s)||(s=[s]),s.every((t=>t instanceof ht))&&(A.intent=s.map((t=>t.name)));const a=e.get("Usage");if(!(a instanceof Ct))return A;const n=A.usage,r=a.get("Print");if(r instanceof Ct){const t=r.get("PrintState");if(t instanceof ht)switch(t.name){case"ON":case"OFF":n.print={printState:t.name}}}const o=a.get("View");if(o instanceof Ct){const t=o.get("ViewState");if(t instanceof ht)switch(t.name){case"ON":case"OFF":n.view={viewState:t.name}}}return A}#Y(t,e){function A(t){const A=[];if(Array.isArray(t))for(const i of t)i instanceof Bt&&e.has(i)&&A.push(i.toString());return A}function i(t,A=0){if(!Array.isArray(t))return null;const i=[];for(const a of t){if(a instanceof Bt&&e.has(a)){n.put(a),i.push(a.toString());continue}const t=s(a,A);t&&i.push(t)}if(A>0)return i;const a=[];for(const t of e)n.has(t)||a.push(t.toString());return a.length&&i.push({name:null,order:a}),i}function s(t,e){if(++e>r)return N("parseNestedOrder - reached MAX_NESTED_LEVELS."),null;const A=a.fetchIfRef(t);if(!Array.isArray(A))return null;const s=a.fetchIfRef(A[0]);if("string"!=typeof s)return null;const n=i(A.slice(1),e);return n&&n.length?{name:$(s),order:n}:null}const a=this.xref,n=new dt,r=10;return{name:"string"==typeof t.get("Name")?$(t.get("Name")):null,creator:"string"==typeof t.get("Creator")?$(t.get("Creator")):null,baseState:t.get("BaseState")instanceof ht?t.get("BaseState").name:null,on:A(t.get("ON")),off:A(t.get("OFF")),order:i(t.get("Order")),groups:null}}setActualNumPages(t=null){this._actualNumPages=t}get hasActualNumPages(){return null!==this._actualNumPages}get _pagesCount(){const t=this.toplevelPagesDict.get("Count");if(!Number.isInteger(t))throw new q("Page count in top-level pages dictionary is not an integer.");return L(this,"_pagesCount",t)}get numPages(){return this.hasActualNumPages?this._actualNumPages:this._pagesCount}get destinations(){const t=this._readDests(),e=Object.create(null);if(t instanceof po)for(const[A,i]of t.getAll()){const t=ag(i);t&&(e[$(A)]=t)}else t instanceof Ct&&t.forEach((function(t,A){const i=ag(A);i&&(e[t]=i)}));return L(this,"destinations",e)}getDestination(t){const e=this._readDests();if(e instanceof po){const A=ag(e.get(t));if(A)return A;const i=this.destinations[t];if(i)return N(`Found "${t}" at an incorrect position in the NameTree.`),i}else if(e instanceof Ct){const A=ag(e.get(t));if(A)return A}return null}_readDests(){const t=this._catDict.get("Names");return t?.has("Dests")?new po(t.getRaw("Dests"),this.xref):this._catDict.has("Dests")?this._catDict.get("Dests"):void 0}get pageLabels(){let t=null;try{t=this._readPageLabels()}catch(t){if(t instanceof bt)throw t;N("Unable to read page labels.")}return L(this,"pageLabels",t)}_readPageLabels(){const t=this._catDict.getRaw("PageLabels");if(!t)return null;const e=new Array(this.numPages);let A=null,i="";const s=new mo(t,this.xref).getAll();let a="",n=1;for(let t=0,r=this.numPages;t<r;t++){const r=s.get(t);if(void 0!==r){if(!(r instanceof Ct))throw new q("PageLabel is not a dictionary.");if(r.has("Type")&&!Qt(r.get("Type"),"PageLabel"))throw new q("Invalid type in PageLabel dictionary.");if(r.has("S")){const t=r.get("S");if(!(t instanceof ht))throw new q("Invalid style in PageLabel dictionary.");A=t.name}else A=null;if(r.has("P")){const t=r.get("P");if("string"!=typeof t)throw new q("Invalid prefix in PageLabel dictionary.");i=$(t)}else i="";if(r.has("St")){const t=r.get("St");if(!(Number.isInteger(t)&&t>=1))throw new q("Invalid start in PageLabel dictionary.");n=t}else n=1}switch(A){case"D":a=n;break;case"R":case"r":a=Nt(n,"r"===A);break;case"A":case"a":const t=26,e="a"===A?97:65,i=n-1;a=String.fromCharCode(e+i%t).repeat(Math.floor(i/t)+1);break;default:if(A)throw new q(`Invalid style "${A}" in PageLabel dictionary.`);a=""}e[t]=i+a,n++}return e}get pageLayout(){const t=this._catDict.get("PageLayout");let e="";if(t instanceof ht)switch(t.name){case"SinglePage":case"OneColumn":case"TwoColumnLeft":case"TwoColumnRight":case"TwoPageLeft":case"TwoPageRight":e=t.name}return L(this,"pageLayout",e)}get pageMode(){const t=this._catDict.get("PageMode");let e="UseNone";if(t instanceof ht)switch(t.name){case"UseNone":case"UseOutlines":case"UseThumbs":case"FullScreen":case"UseOC":case"UseAttachments":e=t.name}return L(this,"pageMode",e)}get viewerPreferences(){const t=this._catDict.get("ViewerPreferences");if(!(t instanceof Ct))return L(this,"viewerPreferences",null);let e=null;for(const A of t.getKeys()){const i=t.get(A);let s;switch(A){case"HideToolbar":case"HideMenubar":case"HideWindowUI":case"FitWindow":case"CenterWindow":case"DisplayDocTitle":case"PickTrayByPDFSize":"boolean"==typeof i&&(s=i);break;case"NonFullScreenPageMode":if(i instanceof ht)switch(i.name){case"UseNone":case"UseOutlines":case"UseThumbs":case"UseOC":s=i.name;break;default:s="UseNone"}break;case"Direction":if(i instanceof ht)switch(i.name){case"L2R":case"R2L":s=i.name;break;default:s="L2R"}break;case"ViewArea":case"ViewClip":case"PrintArea":case"PrintClip":if(i instanceof ht)switch(i.name){case"MediaBox":case"CropBox":case"BleedBox":case"TrimBox":case"ArtBox":s=i.name;break;default:s="CropBox"}break;case"PrintScaling":if(i instanceof ht)switch(i.name){case"None":case"AppDefault":s=i.name;break;default:s="AppDefault"}break;case"Duplex":if(i instanceof ht)switch(i.name){case"Simplex":case"DuplexFlipShortEdge":case"DuplexFlipLongEdge":s=i.name;break;default:s="None"}break;case"PrintPageRange":Array.isArray(i)&&i.length%2==0&&i.every(((t,e,A)=>Number.isInteger(t)&&t>0&&(0===e||t>=A[e-1])&&t<=this.numPages))&&(s=i);break;case"NumCopies":Number.isInteger(i)&&i>0&&(s=i);break;default:N(`Ignoring non-standard key in ViewerPreferences: ${A}.`);continue}void 0!==s?(e||(e=Object.create(null)),e[A]=s):N(`Bad value, for key "${A}", in ViewerPreferences: ${i}.`)}return L(this,"viewerPreferences",e)}get openAction(){const t=this._catDict.get("OpenAction"),e=Object.create(null);if(t instanceof Ct){const A=new Ct(this.xref);A.set("A",t);const i={url:null,dest:null,action:null};rg.parseDestDictionary({destDict:A,resultObj:i}),Array.isArray(i.dest)?e.dest=i.dest:i.action&&(e.action=i.action)}else Array.isArray(t)&&(e.dest=t);return L(this,"openAction",Z(e)>0?e:null)}get attachments(){const t=this._catDict.get("Names");let e=null;if(t instanceof Ct&&t.has("EmbeddedFiles")){const A=new po(t.getRaw("EmbeddedFiles"),this.xref);for(const[t,i]of A.getAll()){const A=new bo(i,this.xref);e||(e=Object.create(null)),e[$(t)]=A.serializable}}return L(this,"attachments",e)}get xfaImages(){const t=this._catDict.get("Names");let e=null;if(t instanceof Ct&&t.has("XFAImages")){const A=new po(t.getRaw("XFAImages"),this.xref);for(const[t,i]of A.getAll())e||(e=new Ct(this.xref)),e.set($(t),i)}return L(this,"xfaImages",e)}_collectJavaScript(){const t=this._catDict.get("Names");let e=null;function A(t,A){if(!(A instanceof Ct))return;if(!Qt(A.get("S"),"JavaScript"))return;let i=A.get("JS");if(i instanceof mt)i=i.getString();else if("string"!=typeof i)return;i=$(i).replaceAll("\0",""),i&&(e||=new Map).set(t,i)}if(t instanceof Ct&&t.has("JavaScript")){const e=new po(t.getRaw("JavaScript"),this.xref);for(const[t,i]of e.getAll())A($(t),i)}const i=this._catDict.get("OpenAction");return i&&A("OpenAction",i),e}get jsActions(){const t=this._collectJavaScript();let e=Ot(this.xref,this._catDict,u);if(t){e||=Object.create(null);for(const[A,i]of t)A in e?e[A].push(i):e[A]=[i]}return L(this,"jsActions",e)}async fontFallback(t,e){const A=await Promise.all(this.fontCache);for(const i of A)if(i.loadedName===t)return void i.fallback(e)}async cleanup(t=!1){yo(),this.globalImageCache.clear(t),this.pageKidsCountCache.clear(),this.pageIndexCache.clear(),this.nonBlendModesSet.clear();const e=await Promise.all(this.fontCache);for(const{dict:t}of e)delete t.cacheKey;this.fontCache.clear(),this.builtInCMapCache.clear(),this.standardFontDataCache.clear(),this.systemFontCache.clear()}async getPageDict(t){const e=[this.toplevelPagesDict],A=new dt,i=this._catDict.getRaw("Pages");i instanceof Bt&&A.put(i);const s=this.xref,a=this.pageKidsCountCache,n=this.pageIndexCache;let r=0;for(;e.length;){const i=e.pop();if(i instanceof Bt){const o=a.get(i);if(o>=0&&r+o<=t){r+=o;continue}if(A.has(i))throw new q("Pages tree contains circular reference.");A.put(i);const g=await s.fetchAsync(i);if(g instanceof Ct){let e=g.getRaw("Type");if(e instanceof Bt&&(e=await s.fetchAsync(e)),Qt(e,"Page")||!g.has("Kids")){if(a.has(i)||a.put(i,1),n.has(i)||n.put(i,r),r===t)return[g,i];r++;continue}}e.push(g);continue}if(!(i instanceof Ct))throw new q("Page dictionary kid reference points to wrong type of object.");const{objId:o}=i;let g=i.getRaw("Count");if(g instanceof Bt&&(g=await s.fetchAsync(g)),Number.isInteger(g)&&g>=0&&(o&&!a.has(o)&&a.put(o,g),r+g<=t)){r+=g;continue}let c=i.getRaw("Kids");if(c instanceof Bt&&(c=await s.fetchAsync(c)),!Array.isArray(c)){let e=i.getRaw("Type");if(e instanceof Bt&&(e=await s.fetchAsync(e)),Qt(e,"Page")||!i.has("Kids")){if(r===t)return[i,null];r++;continue}throw new q("Page dictionary kids object is not an array.")}for(let t=c.length-1;t>=0;t--)e.push(c[t])}throw new Error(`Page index ${t} not found.`)}async getAllPageDicts(t=!1){const{ignoreErrors:e}=this.pdfManager.evaluatorOptions,A=[{currentNode:this.toplevelPagesDict,posInKids:0}],i=new dt,s=this._catDict.getRaw("Pages");s instanceof Bt&&i.put(s);const a=new Map,n=this.xref,r=this.pageIndexCache;let o=0;function g(t,e){e&&!r.has(e)&&r.put(e,o),a.set(o++,[t,e])}function c(A){if(A instanceof kt&&!t)throw A;t&&e&&0===o&&(N(`getAllPageDicts - Skipping invalid first page: "${A}".`),A=Ct.empty),a.set(o++,[A,null])}for(;A.length>0;){const e=A.at(-1),{currentNode:s,posInKids:a}=e;let r=s.getRaw("Kids");if(r instanceof Bt)try{r=await n.fetchAsync(r)}catch(t){c(t);break}if(!Array.isArray(r)){c(new q("Page dictionary kids object is not an array."));break}if(a>=r.length){A.pop();continue}const o=r[a];let h;if(o instanceof Bt){if(i.has(o)){c(new q("Pages tree contains circular reference."));break}i.put(o);try{h=await n.fetchAsync(o)}catch(t){c(t);break}}else h=o;if(!(h instanceof Ct)){c(new q("Page dictionary kid reference points to wrong type of object."));break}let l=h.getRaw("Type");if(l instanceof Bt)try{l=await n.fetchAsync(l)}catch(t){c(t);break}Qt(l,"Page")||!h.has("Kids")?g(h,o instanceof Bt?o:null):A.push({currentNode:h,posInKids:0}),e.posInKids++}return a}getPageIndex(t){const e=this.pageIndexCache.get(t);if(void 0!==e)return Promise.resolve(e);const A=this.xref;let i=0;const s=e=>function(e){let i,s=0;return A.fetchAsync(e).then((function(A){if(pt(e,t)&&!ft(A,"Page")&&!(A instanceof Ct&&!A.has("Type")&&A.has("Contents")))throw new q("The reference does not point to a /Page dictionary.");if(!A)return null;if(!(A instanceof Ct))throw new q("Node must be a dictionary.");return i=A.getRaw("Parent"),A.getAsync("Parent")})).then((function(t){if(!t)return null;if(!(t instanceof Ct))throw new q("Parent must be a dictionary.");return t.getAsync("Kids")})).then((function(t){if(!t)return null;const a=[];let n=!1;for(const i of t){if(!(i instanceof Bt))throw new q("Kid must be a reference.");if(pt(i,e)){n=!0;break}a.push(A.fetchAsync(i).then((function(t){if(!(t instanceof Ct))throw new q("Kid node must be a dictionary.");t.has("Count")?s+=t.get("Count"):s++})))}if(!n)throw new q("Kid reference not found in parent's kids.");return Promise.all(a).then((function(){return[s,i]}))}))}(e).then((e=>{if(!e)return this.pageIndexCache.put(t,i),i;const[A,a]=e;return i+=A,s(a)}));return s(t)}get baseUrl(){const t=this._catDict.get("URI");if(t instanceof Ct){const e=t.get("Base");if("string"==typeof e){const t=M(e,null,{tryConvertEncoding:!0});if(t)return L(this,"baseUrl",t.href)}}return L(this,"baseUrl",this.pdfManager.docBaseUrl)}static parseDestDictionary({destDict:t,resultObj:e,docBaseUrl:A=null,docAttachments:i=null}){if(!(t instanceof Ct))return void N("parseDestDictionary: `destDict` must be a dictionary.");let s,a,n=t.get("A");if(n instanceof Ct||(t.has("Dest")?n=t.get("Dest"):(n=t.get("AA"),n instanceof Ct&&(n.has("D")?n=n.get("D"):n.has("U")&&(n=n.get("U"))))),n instanceof Ct){const t=n.get("S");if(!(t instanceof ht))return void N("parseDestDictionary: Invalid type in Action dictionary.");const A=t.name;switch(A){case"ResetForm":const t=n.get("Flags"),r=!(1&("number"==typeof t?t:0)),o=[],g=[];for(const t of n.get("Fields")||[])t instanceof Bt?g.push(t.toString()):"string"==typeof t&&o.push($(t));e.resetForm={fields:o,refs:g,include:r};break;case"URI":s=n.get("URI"),s instanceof ht&&(s="/"+s.name);break;case"GoTo":a=n.get("D");break;case"Launch":case"GoToR":const c=n.get("F");if(c instanceof Ct){const t=new bo(c,null,!0),{rawFilename:e}=t.serializable;s=e}else"string"==typeof c&&(s=c);const h=ng(n);h&&"string"==typeof s&&(s=s.split("#",1)[0]+"#"+h);const l=n.get("NewWindow");"boolean"==typeof l&&(e.newWindow=l);break;case"GoToE":const I=n.get("T");let C;if(i&&I instanceof Ct){const t=I.get("R"),e=I.get("N");Qt(t,"C")&&"string"==typeof e&&(C=i[$(e)])}if(C){e.attachment=C;const t=ng(n);t&&(e.attachmentDest=t)}else N('parseDestDictionary - unimplemented "GoToE" action.');break;case"Named":const B=n.get("N");B instanceof ht&&(e.action=B.name);break;case"SetOCGState":const d=n.get("State"),u=n.get("PreserveRB");if(!Array.isArray(d)||0===d.length)break;const Q=[];for(const t of d)if(t instanceof ht)switch(t.name){case"ON":case"OFF":case"Toggle":Q.push(t.name)}else t instanceof Bt&&Q.push(t.toString());if(Q.length!==d.length)break;e.setOCGState={state:Q,preserveRB:"boolean"!=typeof u||u};break;case"JavaScript":const E=n.get("JS");let f;E instanceof mt?f=E.getString():"string"==typeof E&&(f=E);const p=f&&zt($(f));if(p){s=p.url,e.newWindow=p.newWindow;break}default:if("JavaScript"===A||"SubmitForm"===A)break;N(`parseDestDictionary - unsupported action: "${A}".`)}}else t.has("Dest")&&(a=t.get("Dest"));if("string"==typeof s){const t=M(s,A,{addDefaultProtocol:!0,tryConvertEncoding:!0});t&&(e.url=t.href),e.unsafeUrl=s}a&&(a instanceof ht&&(a=a.name),"string"==typeof a?e.dest=$(a):sg(a)&&(e.dest=a))}}function og(t,e){if(t instanceof Ct)t=t.getRawValues();else if(t instanceof mt)t=t.dict.getRawValues();else if(!Array.isArray(t))return;for(const i of t)((A=i)instanceof Bt||A instanceof Ct||A instanceof mt||Array.isArray(A))&&e.push(i);var A}class gg{constructor(t,e,A){this.dict=t,this.keys=e,this.xref=A,this.refSet=null}async load(){if(this.xref.stream.isDataLoaded)return;const{keys:t,dict:e}=this;this.refSet=new dt;const A=[];for(const i of t){const t=e.getRaw(i);void 0!==t&&A.push(t)}return this._walk(A)}async _walk(t){const e=[],A=[];for(;t.length;){let i=t.pop();if(i instanceof Bt){if(this.refSet.has(i))continue;try{this.refSet.put(i),i=this.xref.fetch(i)}catch(t){if(!(t instanceof bt)){N(`ObjectLoader._walk - requesting all data: "${t}".`),this.refSet=null;const{manager:e}=this.xref.stream;return e.requestAllChunks()}e.push(i),A.push({begin:t.begin,end:t.end})}}if(i instanceof mt){const t=i.getBaseStreams();if(t){let s=!1;for(const e of t)e.isDataLoaded||(s=!0,A.push({begin:e.start,end:e.end}));s&&e.push(i)}}og(i,t)}if(A.length){await this.xref.stream.manager.requestRanges(A);for(const t of e)t instanceof Bt&&this.refSet.remove(t);return this._walk(e)}this.refSet=null}}const cg=Symbol(),hg=Symbol(),lg=Symbol(),Ig=Symbol(),Cg=Symbol(),Bg=Symbol(),dg=Symbol(),ug=Symbol(),Qg=Symbol(),Eg=Symbol("content"),fg=Symbol("data"),pg=Symbol(),mg=Symbol("extra"),yg=Symbol(),wg=Symbol(),bg=Symbol(),Dg=Symbol(),kg=Symbol(),Sg=Symbol(),Fg=Symbol(),Rg=Symbol(),xg=Symbol(),Ng=Symbol(),vg=Symbol(),Gg=Symbol(),Mg=Symbol(),Lg=Symbol(),Ug=Symbol(),Hg=Symbol(),Jg=Symbol(),Yg=Symbol(),Tg=Symbol(),Kg=Symbol(),qg=Symbol(),Pg=Symbol(),_g=Symbol(),Og=Symbol(),Wg=Symbol(),Zg=Symbol(),jg=Symbol(),Vg=Symbol(),Xg=Symbol(),zg=Symbol(),$g=Symbol(),tc=Symbol(),ec=Symbol("namespaceId"),Ac=Symbol("nodeName"),ic=Symbol(),sc=Symbol(),ac=Symbol(),nc=Symbol(),rc=Symbol(),oc=Symbol(),gc=Symbol(),cc=Symbol(),hc=Symbol("root"),lc=Symbol(),Ic=Symbol(),Cc=Symbol(),Bc=Symbol(),dc=Symbol(),uc=Symbol(),Qc=Symbol(),Ec=Symbol(),fc=Symbol(),pc=Symbol(),mc=Symbol(),yc=Symbol("uid"),wc=Symbol(),bc={config:{id:0,check:t=>t.startsWith("http://www.xfa.org/schema/xci/")},connectionSet:{id:1,check:t=>t.startsWith("http://www.xfa.org/schema/xfa-connection-set/")},datasets:{id:2,check:t=>t.startsWith("http://www.xfa.org/schema/xfa-data/")},form:{id:3,check:t=>t.startsWith("http://www.xfa.org/schema/xfa-form/")},localeSet:{id:4,check:t=>t.startsWith("http://www.xfa.org/schema/xfa-locale-set/")},pdf:{id:5,check:t=>"http://ns.adobe.com/xdp/pdf/"===t},signature:{id:6,check:t=>"http://www.w3.org/2000/09/xmldsig#"===t},sourceSet:{id:7,check:t=>t.startsWith("http://www.xfa.org/schema/xfa-source-set/")},stylesheet:{id:8,check:t=>"http://www.w3.org/1999/XSL/Transform"===t},template:{id:9,check:t=>t.startsWith("http://www.xfa.org/schema/xfa-template/")},xdc:{id:10,check:t=>t.startsWith("http://www.xfa.org/schema/xdc/")},xdp:{id:11,check:t=>"http://ns.adobe.com/xdp/"===t},xfdf:{id:12,check:t=>"http://ns.adobe.com/xfdf/"===t},xhtml:{id:13,check:t=>"http://www.w3.org/1999/xhtml"===t},xmpmeta:{id:14,check:t=>"http://ns.adobe.com/xmpmeta/"===t}},Dc={pt:t=>t,cm:t=>t/2.54*72,mm:t=>t/25.4*72,in:t=>72*t,px:t=>t},kc=/([+-]?\d+\.?\d*)(.*)/;function Sc(t){return t.startsWith("'")||t.startsWith('"')?t.slice(1,-1):t}function Fc({data:t,defaultValue:e,validate:A}){if(!t)return e;t=t.trim();const i=parseInt(t,10);return!isNaN(i)&&A(i)?i:e}function Rc({data:t,defaultValue:e,validate:A}){if(!t)return e;t=t.trim();const i=parseFloat(t);return!isNaN(i)&&A(i)?i:e}function xc({data:t,defaultValue:e,validate:A}){return t&&A(t=t.trim())?t:e}function Nc(t,e){return xc({data:t,defaultValue:e[0],validate:t=>e.includes(t)})}function vc(t,e="0"){if(e||="0",!t)return vc(e);const A=t.trim().match(kc);if(!A)return vc(e);const[,i,s]=A,a=parseFloat(i);if(isNaN(a))return vc(e);if(0===a)return 0;const n=Dc[s];return n?n(a):a}function Gc(t){if(!t)return{num:1,den:1};const e=t.trim().split(/\s*:\s*/).map((t=>parseFloat(t))).filter((t=>!isNaN(t)));if(1===e.length&&e.push(1),0===e.length)return{num:1,den:1};const[A,i]=e;return{num:A,den:i}}function Mc(t){return t?t.trim().split(/\s+/).map((t=>({excluded:"-"===t[0],viewname:t.substring(1)}))):[]}class Lc{static get FAILURE(){return L(this,"FAILURE",new Lc(!1,null,null,null))}static get EMPTY(){return L(this,"EMPTY",new Lc(!0,null,null,null))}constructor(t,e,A,i){this.success=t,this.html=e,this.bbox=A,this.breakNode=i}isBreak(){return!!this.breakNode}static breakNode(t){return new Lc(!1,null,null,t)}static success(t,e=null){return new Lc(!0,t,e,null)}}class Uc{constructor(t){this.fonts=new Map,this.cache=new Map,this.warned=new Set,this.defaultFont=null,this.add(t)}add(t,e=null){for(const e of t)this.addPdfFont(e);for(const t of this.fonts.values())t.regular||(t.regular=t.italic||t.bold||t.bolditalic);if(!e||0===e.size)return;const A=this.fonts.get("PdfJS-Fallback-PdfJS-XFA");for(const t of e)this.fonts.set(t,A)}addPdfFont(t){const e=t.cssFontInfo,A=e.fontFamily;let i=this.fonts.get(A);i||(i=Object.create(null),this.fonts.set(A,i),this.defaultFont||(this.defaultFont=i));let s="";const a=parseFloat(e.fontWeight);0!==parseFloat(e.italicAngle)?s=a>=700?"bolditalic":"italic":a>=700&&(s="bold"),s||((t.name.includes("Bold")||t.psName?.includes("Bold"))&&(s="bold"),(t.name.includes("Italic")||t.name.endsWith("It")||t.psName?.includes("Italic")||t.psName?.endsWith("It"))&&(s+="italic")),s||(s="regular"),i[s]=t}getDefault(){return this.defaultFont}find(t,e=!0){let A=this.fonts.get(t)||this.cache.get(t);if(A)return A;const i=/,|-|_| |bolditalic|bold|italic|regular|it/gi;let s=t.replaceAll(i,"");if(A=this.fonts.get(s),A)return this.cache.set(t,A),A;s=s.toLowerCase();const a=[];for(const[t,e]of this.fonts.entries())t.replaceAll(i,"").toLowerCase().startsWith(s)&&a.push(e);if(0===a.length)for(const[,t]of this.fonts.entries())t.regular.name?.replaceAll(i,"").toLowerCase().startsWith(s)&&a.push(t);if(0===a.length){s=s.replaceAll(/psmt|mt/gi,"");for(const[t,e]of this.fonts.entries())t.replaceAll(i,"").toLowerCase().startsWith(s)&&a.push(e)}if(0===a.length)for(const t of this.fonts.values())t.regular.name?.replaceAll(i,"").toLowerCase().startsWith(s)&&a.push(t);return a.length>=1?(1!==a.length&&e&&N(`XFA - Too many choices to guess the correct font: ${t}`),this.cache.set(t,a[0]),a[0]):(e&&!this.warned.has(t)&&(this.warned.add(t),N(`XFA - Cannot find the font: ${t}`)),null)}}function Hc(t,e){return"italic"===t.posture?"bold"===t.weight?e.bolditalic:e.italic:"bold"===t.weight?e.bold:e.regular}class Jc{constructor(t,e,A,i){if(this.lineHeight=A,this.paraMargin=e||{top:0,bottom:0,left:0,right:0},!t)return void([this.pdfFont,this.xfaFont]=this.defaultFont(i));this.xfaFont={typeface:t.typeface,posture:t.posture,weight:t.weight,size:t.size,letterSpacing:t.letterSpacing};const s=i.find(t.typeface);s?(this.pdfFont=Hc(t,s),this.pdfFont||([this.pdfFont,this.xfaFont]=this.defaultFont(i))):[this.pdfFont,this.xfaFont]=this.defaultFont(i)}defaultFont(t){const e=t.find("Helvetica",!1)||t.find("Myriad Pro",!1)||t.find("Arial",!1)||t.getDefault();if(e?.regular){const t=e.regular;return[t,{typeface:t.cssFontInfo.fontFamily,posture:"normal",weight:"normal",size:10,letterSpacing:0}]}return[null,{typeface:"Courier",posture:"normal",weight:"normal",size:10,letterSpacing:0}]}}class Yc{constructor(t,e,A,i){this.fontFinder=i,this.stack=[new Jc(t,e,A,i)]}pushData(t,e,A){const i=this.stack.at(-1);for(const e of["typeface","posture","weight","size","letterSpacing"])t[e]||(t[e]=i.xfaFont[e]);for(const t of["top","bottom","left","right"])isNaN(e[t])&&(e[t]=i.paraMargin[t]);const s=new Jc(t,e,A||i.lineHeight,this.fontFinder);s.pdfFont||(s.pdfFont=i.pdfFont),this.stack.push(s)}popFont(){this.stack.pop()}topFont(){return this.stack.at(-1)}}class Tc{constructor(t,e,A,i){this.glyphs=[],this.fontSelector=new Yc(t,e,A,i),this.extraHeight=0}pushData(t,e,A){this.fontSelector.pushData(t,e,A)}popFont(t){return this.fontSelector.popFont()}addPara(){const t=this.fontSelector.topFont();this.extraHeight+=t.paraMargin.top+t.paraMargin.bottom}addString(t){if(!t)return;const e=this.fontSelector.topFont(),A=e.xfaFont.size;if(e.pdfFont){const i=e.xfaFont.letterSpacing,s=e.pdfFont,a=s.lineHeight||1.2,n=e.lineHeight||Math.max(1.2,a)*A,r=a-(void 0===s.lineGap?.2:s.lineGap),o=Math.max(1,r)*A,g=A/1e3,c=s.defaultWidth||s.charsToGlyphs(" ")[0].width;for(const e of t.split(/[\u2029\n]/)){const t=s.encodeString(e).join(""),A=s.charsToGlyphs(t);for(const t of A){const e=t.width||c;this.glyphs.push([e*g+i,n,o,t.unicode,!1])}this.glyphs.push([0,0,0,"\n",!0])}this.glyphs.pop()}else{for(const e of t.split(/[\u2029\n]/)){for(const t of e.split(""))this.glyphs.push([A,1.2*A,A,t,!1]);this.glyphs.push([0,0,0,"\n",!0])}this.glyphs.pop()}}compute(t){let e=-1,A=0,i=0,s=0,a=0,n=0,r=!1,o=!0;for(let g=0,c=this.glyphs.length;g<c;g++){const[c,h,l,I,C]=this.glyphs[g],B=" "===I,d=o?l:h;C?(i=Math.max(i,a),a=0,s+=n,n=d,e=-1,A=0,o=!1):B?a+c>t?(i=Math.max(i,a),a=0,s+=n,n=d,e=-1,A=0,r=!0,o=!1):(n=Math.max(d,n),A=a,a+=c,e=g):a+c>t?(s+=n,n=d,-1!==e?(g=e,i=Math.max(i,A),a=0,e=-1,A=0):(i=Math.max(i,a),a=c),r=!0,o=!1):(a+=c,n=Math.max(d,n))}return i=Math.max(i,a),s+=n+this.extraHeight,{width:1.02*i,height:s,isBroken:r}}}const Kc=/^[^.[]+/,qc=/^[^\]]+/,Pc=new Map([["$data",(t,e)=>t.datasets?t.datasets.data:t],["$record",(t,e)=>(t.datasets?t.datasets.data:t)[Gg]()[0]],["$template",(t,e)=>t.template],["$connectionSet",(t,e)=>t.connectionSet],["$form",(t,e)=>t.form],["$layout",(t,e)=>t.layout],["$host",(t,e)=>t.host],["$dataWindow",(t,e)=>t.dataWindow],["$event",(t,e)=>t.event],["!",(t,e)=>t.datasets],["$xfa",(t,e)=>t],["xfa",(t,e)=>t],["$",(t,e)=>e]]),_c=new WeakMap;function Oc(t,e,A=!0){let i=t.match(Kc);if(!i)return null;let[s]=i;const a=[{name:s,cacheName:"."+s,index:0,js:null,formCalc:null,operator:0}];let n=s.length;for(;n<t.length;){const o=n;if("["===t.charAt(n++)){if(i=t.slice(n).match(qc),!i)return N("XFA - Invalid index in SOM expression"),null;a.at(-1).index="*"===(r=(r=i[0]).trim())?1/0:parseInt(r,10)||0,n+=i[0].length+1;continue}let g;switch(t.charAt(n)){case".":if(!e)return null;n++,g=1;break;case"#":n++,g=2;break;case"[":if(A)return N("XFA - SOM expression contains a FormCalc subexpression which is not supported for now."),null;g=3;break;case"(":if(A)return N("XFA - SOM expression contains a JavaScript subexpression which is not supported for now."),null;g=4;break;default:g=0}if(i=t.slice(n).match(Kc),!i)break;[s]=i,n+=s.length,a.push({name:s,cacheName:t.slice(o,n),operator:g,index:0,js:null,formCalc:null})}var r;return a}function Wc(t,e,A,i=!0,s=!0){const a=Oc(A,i);if(!a)return null;const n=Pc.get(a[0].name);let r,o=0;n?(r=!0,t=[n(t,e)],o=1):(r=null===e,t=[e||t]);for(let A=a.length;o<A;o++){const{name:A,cacheName:i,operator:n,index:g}=a[o],c=[];for(const e of t){if(!e.isXFAObject)continue;let t,a;if(s&&(a=_c.get(e),a||(a=new Map,_c.set(e,a)),t=a.get(i)),!t){switch(n){case 0:t=e[Fg](A,!1);break;case 1:t=e[Fg](A,!0);break;case 2:t=e[Sg](A),t=t.isXFAObjectArray?t.children:[t]}s&&a.set(i,t)}t.length>0&&c.push(t)}if(0!==c.length||r||0!==o)t=isFinite(g)?c.filter((t=>g<t.length)).map((t=>t[g])):c.flat();else{const A=e[Hg]();if(!(e=A))return null;o=-1,t=[e]}}return 0===t.length?null:t}function Zc(t,e,A){const i=Oc(A);if(!i)return null;if(i.some((t=>1===t.operator)))return null;const s=Pc.get(i[0].name);let a=0;s?(t=s(t,e),a=1):t=e||t;for(let e=i.length;a<e;a++){const{name:e,operator:A,index:s}=i[a];if(!isFinite(s))return i[a].index=0,t.createNodes(i.slice(a));let n;switch(A){case 0:n=t[Fg](e,!1);break;case 1:n=t[Fg](e,!0);break;case 2:n=t[Sg](e),n=n.isXFAObjectArray?n.children:[n]}if(0===n.length)return t.createNodes(i.slice(a));if(!(s<n.length))return i[a].index=s-n.length,t.createNodes(i.slice(a));{const e=n[s];if(!e.isXFAObject)return N("XFA - Cannot create a node."),null;t=e}}return null}const jc=Symbol(),Vc=Symbol(),Xc=Symbol(),zc=Symbol("_children"),$c=Symbol(),th=Symbol(),eh=Symbol(),Ah=Symbol(),ih=Symbol(),sh=Symbol(),ah=Symbol(),nh=Symbol(),rh=Symbol(),oh=Symbol("parent"),gh=Symbol(),ch=Symbol(),hh=Symbol();let lh=0;const Ih=bc.datasets.id;class Ch{constructor(t,e,A=!1){this[ec]=t,this[Ac]=e,this[ah]=A,this[oh]=null,this[zc]=[],this[yc]=`${e}${lh++}`,this[Yg]=null}get isXFAObject(){return!0}get isXFAObjectArray(){return!1}createNodes(t){let e=this,A=null;for(const{name:i,index:s}of t){for(let t=0,a=isFinite(s)?s:0;t<=a;t++){const t=e[ec]===Ih?-1:e[ec];A=new uh(t,i),e[lg](A)}e=A}return A}[sc](t){if(!this[ah]||!this[ac](t))return!1;const e=t[Ac],A=this[e];if(!(A instanceof Bh))return null!==A&&this[cc](A),this[e]=t,this[lg](t),!0;if(A.push(t))return this[lg](t),!0;let i="";return this.id?i=` (id: ${this.id})`:this.name&&(i=` (name: ${this.name} ${this.h.value})`),N(`XFA - node "${this[Ac]}"${i} has already enough "${e}"!`),!1}[ac](t){return this.hasOwnProperty(t[Ac])&&t[ec]===this[ec]}[jg](){return!1}[cg](){return!1}[_g](){return!1}[Og](){return!1}[oc](){this.para&&this[Jg]()[mg].paraStack.pop()}[gc](){this[Jg]()[mg].paraStack.push(this.para)}[Cc](t){this.id&&this[ec]===bc.template.id&&t.set(this.id,this)}[Jg](){return this[Yg].template}[Vg](){return!1}[Xg](){return!1}[lg](t){t[oh]=this,this[zc].push(t),!t[Yg]&&this[Yg]&&(t[Yg]=this[Yg])}[cc](t){const e=this[zc].indexOf(t);this[zc].splice(e,1)}[Tg](){return this.hasOwnProperty("value")}[dc](t){}[nc](t){}[yg](){}[Cg](t){delete this[ah],this[dg]&&(t.clean(this[dg]),delete this[dg])}[qg](t){return this[zc].indexOf(t)}[Pg](t,e){e[oh]=this,this[zc].splice(t,0,e),!e[Yg]&&this[Yg]&&(e[Yg]=this[Yg])}[zg](){return!this.name}[tc](){return""}[Qc](){return 0===this[zc].length?this[Eg]:this[zc].map((t=>t[Qc]())).join("")}get[Xc](){const t=Object.getPrototypeOf(this);if(!t._attributes){const e=t._attributes=new Set;for(const t of Object.getOwnPropertyNames(this)){if(null===this[t]||this[t]instanceof Ch||this[t]instanceof Bh)break;e.add(t)}}return L(this,Xc,t._attributes)}[Zg](t){let e=this;for(;e;){if(e===t)return!0;e=e[Hg]()}return!1}[Hg](){return this[oh]}[Ug](){return this[Hg]()}[Gg](t=null){return t?this[t]:this[zc]}[pg](){const t=Object.create(null);this[Eg]&&(t.$content=this[Eg]);for(const e of Object.getOwnPropertyNames(this)){const A=this[e];null!==A&&(A instanceof Ch?t[e]=A[pg]():A instanceof Bh?A.isEmpty()||(t[e]=A.dump()):t[e]=A)}return t}[mc](){return null}[fc](){return Lc.EMPTY}*[Mg](){for(const t of this[Gg]())yield t}*[Ah](t,e){for(const A of this[Mg]())if(!t||e===t.has(A[Ac])){const t=this[kg](),e=A[fc](t);e.success||(this[mg].failingNode=A),yield e}}[wg](){return null}[hg](t,e){this[mg].children.push(t)}[kg](){}[Ig]({filter:t=null,include:e=!0}){if(this[mg].generator){const t=this[kg](),e=this[mg].failingNode[fc](t);if(!e.success)return e;e.html&&this[hg](e.html,e.bbox),delete this[mg].failingNode}else this[mg].generator=this[Ah](t,e);for(;;){const t=this[mg].generator.next();if(t.done)break;const e=t.value;if(!e.success)return e;e.html&&this[hg](e.html,e.bbox)}return this[mg].generator=null,Lc.EMPTY}[Bc](t){this[ch]=new Set(Object.keys(t))}[sh](t){const e=this[Xc],A=this[ch];return[...t].filter((t=>e.has(t)&&!A.has(t)))}[lc](t,e=new Set){for(const A of this[zc])A[gh](t,e)}[gh](t,e){const A=this[ih](t,e);A?this[jc](A,t,e):this[lc](t,e)}[ih](t,e){const{use:A,usehref:i}=this;if(!A&&!i)return null;let s=null,a=null,n=null,r=A;if(i?(r=i,i.startsWith("#som(")&&i.endsWith(")")?a=i.slice(5,-1):i.startsWith(".#som(")&&i.endsWith(")")?a=i.slice(6,-1):i.startsWith("#")?n=i.slice(1):i.startsWith(".#")&&(n=i.slice(2))):A.startsWith("#")?n=A.slice(1):a=A,this.use=this.usehref="",n?s=t.get(n):(s=Wc(t.get(hc),this,a,!0,!1),s&&(s=s[0])),!s)return N(`XFA - Invalid prototype reference: ${r}.`),null;if(s[Ac]!==this[Ac])return N(`XFA - Incompatible prototype: ${s[Ac]} !== ${this[Ac]}.`),null;if(e.has(s))return N("XFA - Cycle detected in prototypes use."),null;e.add(s);const o=s[ih](t,e);return o&&s[jc](o,t,e),s[lc](t,e),e.delete(s),s}[jc](t,e,A){if(A.has(t))N("XFA - Cycle detected in prototypes use.");else{!this[Eg]&&t[Eg]&&(this[Eg]=t[Eg]),new Set(A).add(t);for(const e of this[sh](t[ch]))this[e]=t[e],this[ch]&&this[ch].add(e);for(const i of Object.getOwnPropertyNames(this)){if(this[Xc].has(i))continue;const s=this[i],a=t[i];if(s instanceof Bh){for(const t of s[zc])t[gh](e,A);for(let i=s[zc].length,n=a[zc].length;i<n;i++){const a=t[zc][i][ug]();if(!s.push(a))break;a[oh]=this,this[zc].push(a),a[gh](e,A)}}else if(null===s){if(null!==a){const t=a[ug]();t[oh]=this,this[i]=t,this[zc].push(t),t[gh](e,A)}}else s[lc](e,A),a&&s[jc](a,e,A)}}}static[$c](t){return Array.isArray(t)?t.map((t=>Ch[$c](t))):"object"==typeof t&&null!==t?Object.assign({},t):t}[ug](){const t=Object.create(Object.getPrototypeOf(this));for(const e of Object.getOwnPropertySymbols(this))try{t[e]=this[e]}catch{L(t,e,this[e])}t[yc]=`${t[Ac]}${lh++}`,t[zc]=[];for(const e of Object.getOwnPropertyNames(this)){if(this[Xc].has(e)){t[e]=Ch[$c](this[e]);continue}const A=this[e];t[e]=A instanceof Bh?new Bh(A[nh]):null}for(const e of this[zc]){const A=e[Ac],i=e[ug]();t[zc].push(i),i[oh]=t,null===t[A]?t[A]=i:t[A][zc].push(i)}return t}[Gg](t=null){return t?this[zc].filter((e=>e[Ac]===t)):this[zc]}[Sg](t){return this[t]}[Fg](t,e,A=!0){return Array.from(this[Rg](t,e,A))}*[Rg](t,e,A=!0){if("parent"!==t){for(const A of this[zc])A[Ac]===t&&(yield A),A.name===t&&(yield A),(e||A[zg]())&&(yield*A[Rg](t,e,!1));A&&this[Xc].has(t)&&(yield new dh(this,t,this[t]))}else yield this[oh]}}class Bh{constructor(t=1/0){this[nh]=t,this[zc]=[]}get isXFAObject(){return!1}get isXFAObjectArray(){return!0}push(t){return this[zc].length<=this[nh]?(this[zc].push(t),!0):(N(`XFA - node "${t[Ac]}" accepts no more than ${this[nh]} children`),!1)}isEmpty(){return 0===this[zc].length}dump(){return 1===this[zc].length?this[zc][0][pg]():this[zc].map((t=>t[pg]()))}[ug](){const t=new Bh(this[nh]);return t[zc]=this[zc].map((t=>t[ug]())),t}get children(){return this[zc]}clear(){this[zc].length=0}}class dh{constructor(t,e,A){this[oh]=t,this[Ac]=e,this[Eg]=A,this[Qg]=!1,this[yc]="attribute"+lh++}[Hg](){return this[oh]}[Wg](){return!0}[xg](){return this[Eg].trim()}[dc](t){t=t.value||"",this[Eg]=t.toString()}[Qc](){return this[Eg]}[Zg](t){return this[oh]===t||this[oh][Zg](t)}}class uh extends Ch{constructor(t,e,A={}){if(super(t,e),this[Eg]="",this[th]=null,"#text"!==e){const t=new Map;this[Vc]=t;for(const[e,i]of Object.entries(A))t.set(e,new dh(this,e,i));if(A.hasOwnProperty(ic)){const t=A[ic].xfa.dataNode;void 0!==t&&("dataGroup"===t?this[th]=!1:"dataValue"===t&&(this[th]=!0))}}this[Qg]=!1}[pc](t){const e=this[Ac];if("#text"===e)return void t.push(jt(this[Eg]));const A=et(e),i=this[ec]===Ih?"xfa:":"";t.push(`<${i}${A}`);for(const[e,A]of this[Vc].entries()){const i=et(e);t.push(` ${i}="${jt(A[Eg])}"`)}if(null!==this[th]&&(this[th]?t.push(' xfa:dataNode="dataValue"'):t.push(' xfa:dataNode="dataGroup"')),this[Eg]||0!==this[zc].length){if(t.push(">"),this[Eg])"string"==typeof this[Eg]?t.push(jt(this[Eg])):this[Eg][pc](t);else for(const e of this[zc])e[pc](t);t.push(`</${i}${A}>`)}else t.push("/>")}[sc](t){if(this[Eg]){const t=new uh(this[ec],"#text");this[lg](t),t[Eg]=this[Eg],this[Eg]=""}return this[lg](t),!0}[nc](t){this[Eg]+=t}[yg](){if(this[Eg]&&this[zc].length>0){const t=new uh(this[ec],"#text");this[lg](t),t[Eg]=this[Eg],delete this[Eg]}}[fc](){return"#text"===this[Ac]?Lc.success({name:"#text",value:this[Eg]}):Lc.EMPTY}[Gg](t=null){return t?this[zc].filter((e=>e[Ac]===t)):this[zc]}[Dg](){return this[Vc]}[Sg](t){const e=this[Vc].get(t);return void 0!==e?e:this[Gg](t)}*[Rg](t,e){const A=this[Vc].get(t);A&&(yield A);for(const A of this[zc])A[Ac]===t&&(yield A),e&&(yield*A[Rg](t,e))}*[bg](t,e){const A=this[Vc].get(t);!A||e&&A[Qg]||(yield A);for(const A of this[zc])yield*A[bg](t,e)}*[vg](t,e,A){for(const i of this[zc])i[Ac]!==t||A&&i[Qg]||(yield i),e&&(yield*i[vg](t,e,A))}[Wg](){return null===this[th]?0===this[zc].length||this[zc][0][ec]===bc.xhtml.id:this[th]}[xg](){return null===this[th]?0===this[zc].length?this[Eg].trim():this[zc][0][ec]===bc.xhtml.id?this[zc][0][Qc]().trim():null:this[Eg].trim()}[dc](t){t=t.value||"",this[Eg]=t.toString()}[pg](t=!1){const e=Object.create(null);t&&(e.$ns=this[ec]),this[Eg]&&(e.$content=this[Eg]),e.$name=this[Ac],e.children=[];for(const A of this[zc])e.children.push(A[pg](t));e.attributes=Object.create(null);for(const[t,A]of this[Vc])e.attributes[t]=A[Eg];return e}}class Qh extends Ch{constructor(t,e){super(t,e),this[Eg]=""}[nc](t){this[Eg]+=t}[yg](){}}class Eh extends Qh{constructor(t,e,A){super(t,e),this[rh]=A}[yg](){this[Eg]=xc({data:this[Eg],defaultValue:this[rh][0],validate:t=>this[rh].includes(t)})}[Cg](t){super[Cg](t),delete this[rh]}}class fh extends Qh{[yg](){this[Eg]=this[Eg].trim()}}class ph extends Qh{constructor(t,e,A,i){super(t,e),this[eh]=A,this[hh]=i}[yg](){this[Eg]=Fc({data:this[Eg],defaultValue:this[eh],validate:this[hh]})}[Cg](t){super[Cg](t),delete this[eh],delete this[hh]}}class mh extends ph{constructor(t,e){super(t,e,0,(t=>1===t))}}class yh extends ph{constructor(t,e){super(t,e,1,(t=>0===t))}}function wh(t){return"string"==typeof t?"0px":Number.isInteger(t)?`${t}px`:`${t.toFixed(2)}px`}const bh={anchorType(t,e){const A=t[Ug]();if(A&&(!A.layout||"position"===A.layout))switch("transform"in e||(e.transform=""),t.anchorType){case"bottomCenter":e.transform+="translate(-50%, -100%)";break;case"bottomLeft":e.transform+="translate(0,-100%)";break;case"bottomRight":e.transform+="translate(-100%,-100%)";break;case"middleCenter":e.transform+="translate(-50%,-50%)";break;case"middleLeft":e.transform+="translate(0,-50%)";break;case"middleRight":e.transform+="translate(-100%,-50%)";break;case"topCenter":e.transform+="translate(-50%,0)";break;case"topRight":e.transform+="translate(-100%,0)"}},dimensions(t,e){const A=t[Ug]();let i=t.w;const s=t.h;if(A.layout?.includes("row")){const e=A[mg],s=t.colSpan;let a;-1===s?(a=e.columnWidths.slice(e.currentColumn).reduce(((t,e)=>t+e),0),e.currentColumn=0):(a=e.columnWidths.slice(e.currentColumn,e.currentColumn+s).reduce(((t,e)=>t+e),0),e.currentColumn=(e.currentColumn+t.colSpan)%e.columnWidths.length),isNaN(a)||(i=t.w=a)}e.width=""!==i?wh(i):"auto",e.height=""!==s?wh(s):"auto"},position(t,e){const A=t[Ug]();A?.layout&&"position"!==A.layout||(e.position="absolute",e.left=wh(t.x),e.top=wh(t.y))},rotate(t,e){t.rotate&&("transform"in e||(e.transform=""),e.transform+=`rotate(-${t.rotate}deg)`,e.transformOrigin="top left")},presence(t,e){switch(t.presence){case"invisible":e.visibility="hidden";break;case"hidden":case"inactive":e.display="none"}},hAlign(t,e){if("para"===t[Ac])switch(t.hAlign){case"justifyAll":e.textAlign="justify-all";break;case"radix":e.textAlign="left";break;default:e.textAlign=t.hAlign}else switch(t.hAlign){case"left":e.alignSelf="start";break;case"center":e.alignSelf="center";break;case"right":e.alignSelf="end"}},margin(t,e){t.margin&&(e.margin=t.margin[mc]().margin)}};function Dh(t,e){"position"===t[Ug]().layout&&(t.minW>0&&(e.minWidth=wh(t.minW)),t.maxW>0&&(e.maxWidth=wh(t.maxW)),t.minH>0&&(e.minHeight=wh(t.minH)),t.maxH>0&&(e.maxHeight=wh(t.maxH)))}function kh(t,e,A,i,s,a){const n=new Tc(e,A,i,s);return"string"==typeof t?n.addString(t):t[rc](n),n.compute(a)}function Sh(t,e){let A=null,i=null,s=!1;if((!t.w||!t.h)&&t.value){let a=0,n=0;t.margin&&(a=t.margin.leftInset+t.margin.rightInset,n=t.margin.topInset+t.margin.bottomInset);let r=null,o=null;t.para&&(o=Object.create(null),r=""===t.para.lineHeight?null:t.para.lineHeight,o.top=""===t.para.spaceAbove?0:t.para.spaceAbove,o.bottom=""===t.para.spaceBelow?0:t.para.spaceBelow,o.left=""===t.para.marginLeft?0:t.para.marginLeft,o.right=""===t.para.marginRight?0:t.para.marginRight);let g=t.font;if(!g){const e=t[Jg]();let A=t[Hg]();for(;A&&A!==e;){if(A.font){g=A.font;break}A=A[Hg]()}}const c=(t.w||e.width)-a,h=t[Yg].fontFinder;if(t.value.exData&&t.value.exData[Eg]&&"text/html"===t.value.exData.contentType){const e=kh(t.value.exData[Eg],g,o,r,h,c);i=e.width,A=e.height,s=e.isBroken}else{const e=t.value[Qc]();if(e){const t=kh(e,g,o,r,h,c);i=t.width,A=t.height,s=t.isBroken}}null===i||t.w||(i+=a),null===A||t.h||(A+=n)}return{w:i,h:A,isBroken:s}}function Fh(t,e,A){let i;if(""!==t.w&&""!==t.h)i=[t.x,t.y,t.w,t.h];else{if(!A)return null;let s=t.w;if(""===s){if(0===t.maxW){const e=t[Ug]();s="position"===e.layout&&""!==e.w?0:t.minW}else s=Math.min(t.maxW,A.width);e.attributes.style.width=wh(s)}let a=t.h;if(""===a){if(0===t.maxH){const e=t[Ug]();a="position"===e.layout&&""!==e.h?0:t.minH}else a=Math.min(t.maxH,A.height);e.attributes.style.height=wh(a)}i=[t.x,t.y,s,a]}return i}function Rh(t){const e=t[Ug]();if(e.layout?.includes("row")){const A=e[mg],i=t.colSpan;let s;s=-1===i?A.columnWidths.slice(A.currentColumn).reduce(((t,e)=>t+e),0):A.columnWidths.slice(A.currentColumn,A.currentColumn+i).reduce(((t,e)=>t+e),0),isNaN(s)||(t.w=s)}e.layout&&"position"!==e.layout&&(t.x=t.y=0),"table"===t.layout&&""===t.w&&Array.isArray(t.columnWidths)&&(t.w=t.columnWidths.reduce(((t,e)=>t+e),0))}function xh(t){switch(t.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 Nh(t,...e){const A=Object.create(null);for(const i of e){const e=t[i];if(null!==e)if(bh.hasOwnProperty(i))bh[i](t,A);else if(e instanceof Ch){const t=e[mc]();t?Object.assign(A,t):N(`(DEBUG) - XFA - style for ${i} not implemented yet`)}}return A}function vh(t,e){const{attributes:A}=e,{style:i}=A,s={name:"div",attributes:{class:["xfaWrapper"],style:Object.create(null)},children:[]};if(A.class.push("xfaWrapped"),t.border){const{widths:A,insets:a}=t.border[mg];let n,r,o=a[0],g=a[3];const c=a[0]+a[2],h=a[1]+a[3];switch(t.border.hand){case"even":o-=A[0]/2,g-=A[3]/2,n=`calc(100% + ${(A[1]+A[3])/2-h}px)`,r=`calc(100% + ${(A[0]+A[2])/2-c}px)`;break;case"left":o-=A[0],g-=A[3],n=`calc(100% + ${A[1]+A[3]-h}px)`,r=`calc(100% + ${A[0]+A[2]-c}px)`;break;case"right":n=h?`calc(100% - ${h}px)`:"100%",r=c?`calc(100% - ${c}px)`:"100%"}const l=["xfaBorder"];Lh(t.border)&&l.push("xfaPrintOnly");const I={name:"div",attributes:{class:l,style:{top:`${o}px`,left:`${g}px`,width:n,height:r}},children:[]};for(const t of["border","borderWidth","borderColor","borderRadius","borderStyle"])void 0!==i[t]&&(I.attributes.style[t]=i[t],delete i[t]);s.children.push(I,e)}else s.children.push(e);for(const t of["background","backgroundClip","top","left","width","height","minWidth","minHeight","maxWidth","maxHeight","transform","transformOrigin","visibility"])void 0!==i[t]&&(s.attributes.style[t]=i[t],delete i[t]);return s.attributes.style.position="absolute"===i.position?"absolute":"relative",delete i.position,i.alignSelf&&(s.attributes.style.alignSelf=i.alignSelf,delete i.alignSelf),s}function Gh(t){const e=vc(t.textIndent,"0px");if(e>=0)return;const A="padding"+("left"==("right"===t.textAlign?"right":"left")?"Left":"Right"),i=vc(t[A],"0px");t[A]=i-e+"px"}function Mh(t,e){switch(t.access){case"nonInteractive":e.push("xfaNonInteractive");break;case"readOnly":e.push("xfaReadOnly");break;case"protected":e.push("xfaDisabled")}}function Lh(t){return t.relevant.length>0&&!t.relevant[0].excluded&&"print"===t.relevant[0].viewname}function Uh(t){const e=t[Jg]()[mg].paraStack;return e.length?e.at(-1):null}function Hh(t,e,A){if(A.attributes.class?.includes("xfaRich")){e&&(""===t.h&&(e.height="auto"),""===t.w&&(e.width="auto"));const i=Uh(t);if(i){const t=A.attributes.style;switch(t.display="flex",t.flexDirection="column",i.vAlign){case"top":t.justifyContent="start";break;case"bottom":t.justifyContent="end";break;case"middle":t.justifyContent="center"}const e=i[mc]();for(const[A,i]of Object.entries(e))A in t||(t[A]=i)}}}function Jh(t,e,A,i){if(!A)return void delete i.fontFamily;const s=Sc(t.typeface);i.fontFamily=`"${s}"`;const a=A.find(s);if(a){const{fontFamily:A}=a.regular.cssFontInfo;A!==s&&(i.fontFamily=`"${A}"`);const n=Uh(e);if(n&&""!==n.lineHeight)return;if(i.lineHeight)return;const r=Hc(t,a);r&&(i.lineHeight=Math.max(1.2,r.lineHeight))}}function Yh(t){const e=M(t,null,{addDefaultProtocol:!0,tryConvertEncoding:!0});return e?e.href:null}function Th(t,e){return{name:"div",attributes:{class:["lr-tb"===t.layout?"xfaLr":"xfaRl"]},children:e}}function Kh(t){if(!t[mg])return null;const e={name:"div",attributes:t[mg].attributes,children:t[mg].children};if(t[mg].failingNode){const A=t[mg].failingNode[wg]();A&&(t.layout.endsWith("-tb")?e.children.push(Th(t,[A])):e.children.push(A))}return 0===e.children.length?null:e}function qh(t,e,A){const i=t[mg],s=i.availableSpace,[a,n,r,o]=A;switch(t.layout){case"position":i.width=Math.max(i.width,a+r),i.height=Math.max(i.height,n+o),i.children.push(e);break;case"lr-tb":case"rl-tb":i.line&&1!==i.attempt||(i.line=Th(t,[]),i.children.push(i.line),i.numberInLine=0),i.numberInLine+=1,i.line.children.push(e),0===i.attempt?(i.currentWidth+=r,i.height=Math.max(i.height,i.prevHeight+o)):(i.currentWidth=r,i.prevHeight=i.height,i.height+=o,i.attempt=0),i.width=Math.max(i.width,i.currentWidth);break;case"rl-row":case"row":{i.children.push(e),i.width+=r,i.height=Math.max(i.height,o);const t=wh(i.height);for(const e of i.children)e.attributes.style.height=t;break}case"table":case"tb":i.width=Math.min(s.width,Math.max(i.width,r)),i.height+=o,i.children.push(e)}}function Ph(t){const e=t[mg].availableSpace,A=t.margin?t.margin.topInset+t.margin.bottomInset:0,i=t.margin?t.margin.leftInset+t.margin.rightInset:0;switch(t.layout){case"lr-tb":case"rl-tb":return 0===t[mg].attempt?{width:e.width-i-t[mg].currentWidth,height:e.height-A-t[mg].prevHeight}:{width:e.width-i,height:e.height-A-t[mg].height};case"rl-row":case"row":return{width:t[mg].columnWidths.slice(t[mg].currentColumn).reduce(((t,e)=>t+e)),height:e.height-i};case"table":case"tb":return{width:e.width-i,height:e.height-A-t[mg].height};default:return e}}function _h(t,e){if(null===t[Jg]()[mg].firstUnsplittable)return!0;if(0===t.w||0===t.h)return!0;const A=t[Ug](),i=A[mg]?.attempt||0,[,s,a,n]=function(t){let e,A,i=""===t.w?NaN:t.w,s=""===t.h?NaN:t.h,[a,n]=[0,0];switch(t.anchorType||""){case"bottomCenter":[a,n]=[i/2,s];break;case"bottomLeft":[a,n]=[0,s];break;case"bottomRight":[a,n]=[i,s];break;case"middleCenter":[a,n]=[i/2,s/2];break;case"middleLeft":[a,n]=[0,s/2];break;case"middleRight":[a,n]=[i,s/2];break;case"topCenter":[a,n]=[i/2,0];break;case"topRight":[a,n]=[i,0]}switch(t.rotate||0){case 0:[e,A]=[-a,-n];break;case 90:[e,A]=[-n,a],[i,s]=[s,-i];break;case 180:[e,A]=[a,n],[i,s]=[-i,-s];break;case 270:[e,A]=[n,-a],[i,s]=[-s,i]}return[t.x+e+Math.min(0,i),t.y+A+Math.min(0,s),Math.abs(i),Math.abs(s)]}(t);switch(A.layout){case"lr-tb":case"rl-tb":return 0===i?t[Jg]()[mg].noLayoutFailure?""!==t.w?Math.round(a-e.width)<=2:e.width>2:!(""!==t.h&&Math.round(n-e.height)>2)&&(""!==t.w?Math.round(a-e.width)<=2||0===A[mg].numberInLine&&e.height>2:e.width>2):!!t[Jg]()[mg].noLayoutFailure||!(""!==t.h&&Math.round(n-e.height)>2)&&(""===t.w||Math.round(a-e.width)<=2||!A[Xg]())&&e.height>2;case"table":case"tb":return!!t[Jg]()[mg].noLayoutFailure||(""===t.h||t[Vg]()?(""===t.w||Math.round(a-e.width)<=2||!A[Xg]())&&e.height>2:Math.round(n-e.height)<=2);case"position":return!!t[Jg]()[mg].noLayoutFailure||""===t.h||Math.round(n+s-e.height)<=2||n+s>t[Jg]()[mg].currentContentArea.h;case"rl-row":case"row":return!!t[Jg]()[mg].noLayoutFailure||""===t.h||Math.round(n-e.height)<=2;default:return!0}}const Oh=bc.template.id,Wh="http://www.w3.org/2000/svg",Zh=/^H(\d+)$/,jh=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"]),Vh=[[[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 Xh(t){if(!t||!t.border)return{w:0,h:0};const e=t.border[Ng]();return e?{w:e.widths[0]+e.widths[2]+e.insets[0]+e.insets[2],h:e.widths[1]+e.widths[3]+e.insets[1]+e.insets[3]}:{w:0,h:0}}function zh(t){return t.margin&&(t.margin.topInset||t.margin.rightInset||t.margin.bottomInset||t.margin.leftInset)}function $h(t,e){if(!t.value){const e=new IC({});t[lg](e),t.value=e}t.value[dc](e)}function*tl(t){for(const e of t[Gg]())e instanceof $I?yield*e[Mg]():yield e}function el(t){return"error"===t.validate?.nullTest}function Al(t){for(;t;){if(!t.traversal)return void(t[uc]=t[Hg]()[uc]);if(t[uc])return;let e=null;for(const A of t.traversal[Gg]())if("next"===A.operation){e=A;break}if(!e||!e.ref)return void(t[uc]=t[Hg]()[uc]);const A=t[Jg]();t[uc]=++A[uc];const i=A[Ic](e.ref,t);if(!i)return;t=i[0]}}function il(t,e){const A=t.assist;if(A){const t=A[fc]();t&&(e.title=t);const i=A.role.match(Zh);if(i){const t="heading",A=i[1];e.role=t,e["aria-level"]=A}}if("table"===t.layout)e.role="table";else if("row"===t.layout)e.role="row";else{const A=t[Hg]();"row"===A.layout&&(e.role="TH"===A.assist?.role?"columnheader":"cell")}}function sl(t){if(!t.assist)return null;const e=t.assist;return e.speak&&""!==e.speak[Eg]?e.speak[Eg]:e.toolTip?e.toolTip[Eg]:null}function al(t){return Lc.success({name:"div",attributes:{class:["xfaRich"],style:Object.create(null)},children:[{name:"span",attributes:{style:Object.create(null)},value:t}]})}function nl(t){const e=t[Jg]();null===e[mg].firstUnsplittable&&(e[mg].firstUnsplittable=t,e[mg].noLayoutFailure=!0)}function rl(t){const e=t[Jg]();e[mg].firstUnsplittable===t&&(e[mg].noLayoutFailure=!1)}function ol(t){if(t[mg])return!1;if(t[mg]=Object.create(null),"auto"===t.targetType)return!1;const e=t[Jg]();let A=null;if(t.target){if(A=e[Ic](t.target,t[Hg]()),!A)return!1;A=A[0]}const{currentPageArea:i,currentContentArea:s}=e[mg];if("pageArea"===t.targetType)return A instanceof NI||(A=null),t.startNew?(t[mg].target=A||i,!0):!(!A||A===i||(t[mg].target=A,0));A instanceof vl||(A=null);const a=A&&A[Hg]();let n,r=a;if(t.startNew)if(A){const t=a.contentArea.children,e=t.indexOf(s),i=t.indexOf(A);-1!==e&&e<i&&(r=null),n=i-1}else n=i.contentArea.children.indexOf(s);else{if(!A||A===s)return!1;n=a.contentArea.children.indexOf(A)-1,r=a===i?null:a}return t[mg].target=r,t[mg].index=n,!0}function gl(t,e,A){const i=t[Jg](),s=i[mg].noLayoutFailure,a=e[Ug];e[Ug]=()=>t,i[mg].noLayoutFailure=!0;const n=e[fc](A);t[hg](n.html,n.bbox),i[mg].noLayoutFailure=s,e[Ug]=a}class cl extends fh{constructor(t){super(Oh,"appearanceFilter"),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||""}}class hl extends Ch{constructor(t){super(Oh,"arc",!0),this.circular=Fc({data:t.circular,defaultValue:0,validate:t=>1===t}),this.hand=Nc(t.hand,["even","left","right"]),this.id=t.id||"",this.startAngle=Rc({data:t.startAngle,defaultValue:0,validate:t=>!0}),this.sweepAngle=Rc({data:t.sweepAngle,defaultValue:360,validate:t=>!0}),this.use=t.use||"",this.usehref=t.usehref||"",this.edge=null,this.fill=null}[fc](){const t=this.edge||new Pl({}),e=t[mc](),A=Object.create(null);let i;"visible"===this.fill?.presence?Object.assign(A,this.fill[mc]()):A.fill="transparent",A.strokeWidth=wh("visible"===t.presence?t.thickness:0),A.stroke=e.color;const s={xmlns:Wh,style:{width:"100%",height:"100%",overflow:"visible"}};if(360===this.sweepAngle)i={name:"ellipse",attributes:{xmlns:Wh,cx:"50%",cy:"50%",rx:"50%",ry:"50%",style:A}};else{const t=this.startAngle*Math.PI/180,e=this.sweepAngle*Math.PI/180,a=this.sweepAngle>180?1:0,[n,r,o,g]=[50*(1+Math.cos(t)),50*(1-Math.sin(t)),50*(1+Math.cos(t+e)),50*(1-Math.sin(t+e))];i={name:"path",attributes:{xmlns:Wh,d:`M ${n} ${r} A 50 50 0 ${a} 0 ${o} ${g}`,vectorEffect:"non-scaling-stroke",style:A}},Object.assign(s,{viewBox:"0 0 100 100",preserveAspectRatio:"none"})}const a={name:"svg",children:[i],attributes:s};return zh(this[Hg]()[Hg]())?Lc.success({name:"div",attributes:{style:{display:"inline",width:"100%",height:"100%"}},children:[a]}):(a.attributes.style.position="absolute",Lc.success(a))}}class ll extends Ch{constructor(t){super(Oh,"area",!0),this.colSpan=Fc({data:t.colSpan,defaultValue:1,validate:t=>t>=1||-1===t}),this.id=t.id||"",this.name=t.name||"",this.relevant=Mc(t.relevant),this.use=t.use||"",this.usehref=t.usehref||"",this.x=vc(t.x,"0pt"),this.y=vc(t.y,"0pt"),this.desc=null,this.extras=null,this.area=new Bh,this.draw=new Bh,this.exObject=new Bh,this.exclGroup=new Bh,this.field=new Bh,this.subform=new Bh,this.subformSet=new Bh}*[Mg](){yield*tl(this)}[zg](){return!0}[Og](){return!0}[hg](t,e){const[A,i,s,a]=e;this[mg].width=Math.max(this[mg].width,A+s),this[mg].height=Math.max(this[mg].height,i+a),this[mg].children.push(t)}[kg](){return this[mg].availableSpace}[fc](t){const e=Nh(this,"position"),A={style:e,id:this[yc],class:["xfaArea"]};Lh(this)&&A.class.push("xfaPrintOnly"),this.name&&(A.xfaName=this.name);const i=[];this[mg]={children:i,width:0,height:0,availableSpace:t};const s=this[Ig]({filter:new Set(["area","draw","field","exclGroup","subform","subformSet"]),include:!0});if(!s.success)return s.isBreak()?s:(delete this[mg],Lc.FAILURE);e.width=wh(this[mg].width),e.height=wh(this[mg].height);const a={name:"div",attributes:A,children:i},n=[this.x,this.y,this[mg].width,this[mg].height];return delete this[mg],Lc.success(a,n)}}class Il extends Ch{constructor(t){super(Oh,"assist",!0),this.id=t.id||"",this.role=t.role||"",this.use=t.use||"",this.usehref=t.usehref||"",this.speak=null,this.toolTip=null}[fc](){return this.toolTip?.[Eg]||null}}class Cl extends Ch{constructor(t){super(Oh,"barcode",!0),this.charEncoding=xc({data:t.charEncoding?t.charEncoding.toLowerCase():"",defaultValue:"",validate:t=>["utf-8","big-five","fontspecific","gbk","gb-18030","gb-2312","ksc-5601","none","shift-jis","ucs-2","utf-16"].includes(t)||t.match(/iso-8859-\d{2}/)}),this.checksum=Nc(t.checksum,["none","1mod10","1mod10_1mod11","2mod10","auto"]),this.dataColumnCount=Fc({data:t.dataColumnCount,defaultValue:-1,validate:t=>t>=0}),this.dataLength=Fc({data:t.dataLength,defaultValue:-1,validate:t=>t>=0}),this.dataPrep=Nc(t.dataPrep,["none","flateCompress"]),this.dataRowCount=Fc({data:t.dataRowCount,defaultValue:-1,validate:t=>t>=0}),this.endChar=t.endChar||"",this.errorCorrectionLevel=Fc({data:t.errorCorrectionLevel,defaultValue:-1,validate:t=>t>=0&&t<=8}),this.id=t.id||"",this.moduleHeight=vc(t.moduleHeight,"5mm"),this.moduleWidth=vc(t.moduleWidth,"0.25mm"),this.printCheckDigit=Fc({data:t.printCheckDigit,defaultValue:0,validate:t=>1===t}),this.rowColumnRatio=Gc(t.rowColumnRatio),this.startChar=t.startChar||"",this.textLocation=Nc(t.textLocation,["below","above","aboveEmbedded","belowEmbedded","none"]),this.truncate=Fc({data:t.truncate,defaultValue:0,validate:t=>1===t}),this.type=Nc(t.type?t.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=Nc(t.upsMode,["usCarrier","internationalCarrier","secureSymbol","standardSymbol"]),this.use=t.use||"",this.usehref=t.usehref||"",this.wideNarrowRatio=Gc(t.wideNarrowRatio),this.encrypt=null,this.extras=null}}class Bl extends Ch{constructor(t){super(Oh,"bind",!0),this.match=Nc(t.match,["once","dataRef","global","none"]),this.ref=t.ref||"",this.picture=null}}class dl extends Ch{constructor(t){super(Oh,"bindItems"),this.connection=t.connection||"",this.labelRef=t.labelRef||"",this.ref=t.ref||"",this.valueRef=t.valueRef||""}}class ul extends Ch{constructor(t){super(Oh,"bookend"),this.id=t.id||"",this.leader=t.leader||"",this.trailer=t.trailer||"",this.use=t.use||"",this.usehref=t.usehref||""}}class Ql extends mh{constructor(t){super(Oh,"boolean"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}[fc](t){return al(1===this[Eg]?"1":"0")}}class El extends Ch{constructor(t){super(Oh,"border",!0),this.break=Nc(t.break,["close","open"]),this.hand=Nc(t.hand,["even","left","right"]),this.id=t.id||"",this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.relevant=Mc(t.relevant),this.use=t.use||"",this.usehref=t.usehref||"",this.corner=new Bh(4),this.edge=new Bh(4),this.extras=null,this.fill=null,this.margin=null}[Ng](){if(!this[mg]){const t=this.edge.children.slice();if(t.length<4){const e=t.at(-1)||new Pl({});for(let A=t.length;A<4;A++)t.push(e)}const e=t.map((t=>t.thickness)),A=[0,0,0,0];this.margin&&(A[0]=this.margin.topInset,A[1]=this.margin.rightInset,A[2]=this.margin.bottomInset,A[3]=this.margin.leftInset),this[mg]={widths:e,insets:A,edges:t}}return this[mg]}[mc](){const{edges:t}=this[Ng](),e=t.map((t=>{const e=t[mc]();return e.color||="#000000",e})),A=Object.create(null);if(this.margin&&Object.assign(A,this.margin[mc]()),"visible"===this.fill?.presence&&Object.assign(A,this.fill[mc]()),this.corner.children.some((t=>0!==t.radius))){const t=this.corner.children.map((t=>t[mc]()));if(2===t.length||3===t.length){const e=t.at(-1);for(let A=t.length;A<4;A++)t.push(e)}A.borderRadius=t.map((t=>t.radius)).join(" ")}switch(this.presence){case"invisible":case"hidden":A.borderStyle="";break;case"inactive":A.borderStyle="none";break;default:A.borderStyle=e.map((t=>t.style)).join(" ")}return A.borderWidth=e.map((t=>t.width)).join(" "),A.borderColor=e.map((t=>t.color)).join(" "),A}}class fl extends Ch{constructor(t){super(Oh,"break",!0),this.after=Nc(t.after,["auto","contentArea","pageArea","pageEven","pageOdd"]),this.afterTarget=t.afterTarget||"",this.before=Nc(t.before,["auto","contentArea","pageArea","pageEven","pageOdd"]),this.beforeTarget=t.beforeTarget||"",this.bookendLeader=t.bookendLeader||"",this.bookendTrailer=t.bookendTrailer||"",this.id=t.id||"",this.overflowLeader=t.overflowLeader||"",this.overflowTarget=t.overflowTarget||"",this.overflowTrailer=t.overflowTrailer||"",this.startNew=Fc({data:t.startNew,defaultValue:0,validate:t=>1===t}),this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null}}class pl extends Ch{constructor(t){super(Oh,"breakAfter",!0),this.id=t.id||"",this.leader=t.leader||"",this.startNew=Fc({data:t.startNew,defaultValue:0,validate:t=>1===t}),this.target=t.target||"",this.targetType=Nc(t.targetType,["auto","contentArea","pageArea"]),this.trailer=t.trailer||"",this.use=t.use||"",this.usehref=t.usehref||"",this.script=null}}class ml extends Ch{constructor(t){super(Oh,"breakBefore",!0),this.id=t.id||"",this.leader=t.leader||"",this.startNew=Fc({data:t.startNew,defaultValue:0,validate:t=>1===t}),this.target=t.target||"",this.targetType=Nc(t.targetType,["auto","contentArea","pageArea"]),this.trailer=t.trailer||"",this.use=t.use||"",this.usehref=t.usehref||"",this.script=null}[fc](t){return this[mg]={},Lc.FAILURE}}class yl extends Ch{constructor(t){super(Oh,"button",!0),this.highlight=Nc(t.highlight,["inverted","none","outline","push"]),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null}[fc](t){const e=this[Hg]()[Hg](),A={name:"button",attributes:{id:this[yc],class:["xfaButton"],style:{}},children:[]};for(const t of e.event.children){if("click"!==t.activity||!t.script)continue;const e=zt(t.script[Eg]);if(!e)continue;const i=Yh(e.url);i&&A.children.push({name:"a",attributes:{id:"link"+this[yc],href:i,newWindow:e.newWindow,class:["xfaLink"],style:{}},children:[]})}return Lc.success(A)}}class wl extends Ch{constructor(t){super(Oh,"calculate",!0),this.id=t.id||"",this.override=Nc(t.override,["disabled","error","ignore","warning"]),this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.message=null,this.script=null}}class bl extends Ch{constructor(t){super(Oh,"caption",!0),this.id=t.id||"",this.placement=Nc(t.placement,["left","bottom","inline","right","top"]),this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.reserve=Math.ceil(vc(t.reserve)),this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.font=null,this.margin=null,this.para=null,this.value=null}[dc](t){$h(this,t)}[Ng](t){if(!this[mg]){let{width:e,height:A}=t;switch(this.placement){case"left":case"right":case"inline":e=this.reserve<=0?e:this.reserve;break;case"top":case"bottom":A=this.reserve<=0?A:this.reserve}this[mg]=Sh(this,{width:e,height:A})}return this[mg]}[fc](t){if(!this.value)return Lc.EMPTY;this[gc]();const e=this.value[fc](t).html;if(!e)return this[oc](),Lc.EMPTY;const A=this.reserve;if(this.reserve<=0){const{w:e,h:A}=this[Ng](t);switch(this.placement){case"left":case"right":case"inline":this.reserve=e;break;case"top":case"bottom":this.reserve=A}}const i=[];"string"==typeof e?i.push({name:"#text",value:e}):i.push(e);const s=Nh(this,"font","margin","visibility");switch(this.placement){case"left":case"right":this.reserve>0&&(s.width=wh(this.reserve));break;case"top":case"bottom":this.reserve>0&&(s.height=wh(this.reserve))}return Hh(this,null,e),this[oc](),this.reserve=A,Lc.success({name:"div",attributes:{style:s,class:["xfaCaption"]},children:i})}}class Dl extends fh{constructor(t){super(Oh,"certificate"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class kl extends Ch{constructor(t){super(Oh,"certificates",!0),this.credentialServerPolicy=Nc(t.credentialServerPolicy,["optional","required"]),this.id=t.id||"",this.url=t.url||"",this.urlPolicy=t.urlPolicy||"",this.use=t.use||"",this.usehref=t.usehref||"",this.encryption=null,this.issuers=null,this.keyUsage=null,this.oids=null,this.signing=null,this.subjectDNs=null}}class Sl extends Ch{constructor(t){super(Oh,"checkButton",!0),this.id=t.id||"",this.mark=Nc(t.mark,["default","check","circle","cross","diamond","square","star"]),this.shape=Nc(t.shape,["square","round"]),this.size=vc(t.size,"10pt"),this.use=t.use||"",this.usehref=t.usehref||"",this.border=null,this.extras=null,this.margin=null}[fc](t){const e=Nh("margin"),A=wh(this.size);let i,s,a;e.width=e.height=A;const n=this[Hg]()[Hg](),r=n.items.children.length&&n.items.children[0][fc]().html||[],o={on:(void 0!==r[0]?r[0]:"on").toString(),off:(void 0!==r[1]?r[1]:"off").toString()},g=(n.value?.[Qc]()||"off")===o.on||void 0,c=n[Ug](),h=n[yc];let l;c instanceof eI?(a=c[yc],i="radio",s="xfaRadio",l=c[fg]?.[yc]||c[yc]):(i="checkbox",s="xfaCheckbox",l=n[fg]?.[yc]||n[yc]);const I={name:"input",attributes:{class:[s],style:e,fieldId:h,dataId:l,type:i,checked:g,xfaOn:o.on,xfaOff:o.off,"aria-label":sl(n),"aria-required":!1}};return a&&(I.attributes.name=a),el(n)&&(I.attributes["aria-required"]=!0,I.attributes.required=!0),Lc.success({name:"label",attributes:{class:["xfaLabel"]},children:[I]})}}class Fl extends Ch{constructor(t){super(Oh,"choiceList",!0),this.commitOn=Nc(t.commitOn,["select","exit"]),this.id=t.id||"",this.open=Nc(t.open,["userControl","always","multiSelect","onEntry"]),this.textEntry=Fc({data:t.textEntry,defaultValue:0,validate:t=>1===t}),this.use=t.use||"",this.usehref=t.usehref||"",this.border=null,this.extras=null,this.margin=null}[fc](t){const e=Nh(this,"border","margin"),A=this[Hg]()[Hg](),i={fontSize:`calc(${A.font?.size||10}px * var(--scale-factor))`},s=[];if(A.items.children.length>0){const t=A.items;let e=0,a=0;2===t.children.length&&(e=t.children[0].save,a=1-e);const n=t.children[e][fc]().html,r=t.children[a][fc]().html;let o=!1;const g=A.value?.[Qc]()||"";for(let t=0,e=n.length;t<e;t++){const e={name:"option",attributes:{value:r[t]||n[t],style:i},value:n[t]};r[t]===g&&(e.attributes.selected=o=!0),s.push(e)}o||s.splice(0,0,{name:"option",attributes:{hidden:!0,selected:!0},value:" "})}const a={class:["xfaSelect"],fieldId:A[yc],dataId:A[fg]?.[yc]||A[yc],style:e,"aria-label":sl(A),"aria-required":!1};return el(A)&&(a["aria-required"]=!0,a.required=!0),"multiSelect"===this.open&&(a.multiple=!0),Lc.success({name:"label",attributes:{class:["xfaLabel"]},children:[{name:"select",children:s,attributes:a}]})}}class Rl extends Ch{constructor(t){super(Oh,"color",!0),this.cSpace=Nc(t.cSpace,["SRGB"]),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.value=t.value?function(t,e=[0,0,0]){let[A,i,s]=e;if(!t)return{r:A,g:i,b:s};const a=t.trim().split(/\s*,\s*/).map((t=>Math.min(Math.max(0,parseInt(t.trim(),10)),255))).map((t=>isNaN(t)?0:t));return a.length<3||([A,i,s]=a),{r:A,g:i,b:s}}(t.value):"",this.extras=null}[Tg](){return!1}[mc](){return this.value?X.makeHexColor(this.value.r,this.value.g,this.value.b):null}}class xl extends Ch{constructor(t){super(Oh,"comb"),this.id=t.id||"",this.numberOfCells=Fc({data:t.numberOfCells,defaultValue:0,validate:t=>t>=0}),this.use=t.use||"",this.usehref=t.usehref||""}}class Nl extends Ch{constructor(t){super(Oh,"connect",!0),this.connection=t.connection||"",this.id=t.id||"",this.ref=t.ref||"",this.usage=Nc(t.usage,["exportAndImport","exportOnly","importOnly"]),this.use=t.use||"",this.usehref=t.usehref||"",this.picture=null}}class vl extends Ch{constructor(t){super(Oh,"contentArea",!0),this.h=vc(t.h),this.id=t.id||"",this.name=t.name||"",this.relevant=Mc(t.relevant),this.use=t.use||"",this.usehref=t.usehref||"",this.w=vc(t.w),this.x=vc(t.x,"0pt"),this.y=vc(t.y,"0pt"),this.desc=null,this.extras=null}[fc](t){const e={left:wh(this.x),top:wh(this.y),width:wh(this.w),height:wh(this.h)},A=["xfaContentarea"];return Lh(this)&&A.push("xfaPrintOnly"),Lc.success({name:"div",children:[],attributes:{style:e,class:A,id:this[yc]}})}}class Gl extends Ch{constructor(t){super(Oh,"corner",!0),this.id=t.id||"",this.inverted=Fc({data:t.inverted,defaultValue:0,validate:t=>1===t}),this.join=Nc(t.join,["square","round"]),this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.radius=vc(t.radius),this.stroke=Nc(t.stroke,["solid","dashDot","dashDotDot","dashed","dotted","embossed","etched","lowered","raised"]),this.thickness=vc(t.thickness,"0.5pt"),this.use=t.use||"",this.usehref=t.usehref||"",this.color=null,this.extras=null}[mc](){const t=Nh(this,"visibility");return t.radius=wh("square"===this.join?0:this.radius),t}}class Ml extends Qh{constructor(t){super(Oh,"date"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}[yg](){const t=this[Eg].trim();this[Eg]=t?new Date(t):null}[fc](t){return al(this[Eg]?this[Eg].toString():"")}}class Ll extends Qh{constructor(t){super(Oh,"dateTime"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}[yg](){const t=this[Eg].trim();this[Eg]=t?new Date(t):null}[fc](t){return al(this[Eg]?this[Eg].toString():"")}}class Ul extends Ch{constructor(t){super(Oh,"dateTimeEdit",!0),this.hScrollPolicy=Nc(t.hScrollPolicy,["auto","off","on"]),this.id=t.id||"",this.picker=Nc(t.picker,["host","none"]),this.use=t.use||"",this.usehref=t.usehref||"",this.border=null,this.comb=null,this.extras=null,this.margin=null}[fc](t){const e=Nh(this,"border","font","margin"),A=this[Hg]()[Hg](),i={name:"input",attributes:{type:"text",fieldId:A[yc],dataId:A[fg]?.[yc]||A[yc],class:["xfaTextfield"],style:e,"aria-label":sl(A),"aria-required":!1}};return el(A)&&(i.attributes["aria-required"]=!0,i.attributes.required=!0),Lc.success({name:"label",attributes:{class:["xfaLabel"]},children:[i]})}}class Hl extends Qh{constructor(t){super(Oh,"decimal"),this.fracDigits=Fc({data:t.fracDigits,defaultValue:2,validate:t=>!0}),this.id=t.id||"",this.leadDigits=Fc({data:t.leadDigits,defaultValue:-1,validate:t=>!0}),this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}[yg](){const t=parseFloat(this[Eg].trim());this[Eg]=isNaN(t)?null:t}[fc](t){return al(null!==this[Eg]?this[Eg].toString():"")}}class Jl extends Ch{constructor(t){super(Oh,"defaultUi",!0),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null}}class Yl extends Ch{constructor(t){super(Oh,"desc",!0),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.boolean=new Bh,this.date=new Bh,this.dateTime=new Bh,this.decimal=new Bh,this.exData=new Bh,this.float=new Bh,this.image=new Bh,this.integer=new Bh,this.text=new Bh,this.time=new Bh}}class Tl extends Eh{constructor(t){super(Oh,"digestMethod",["","SHA1","SHA256","SHA512","RIPEMD160"]),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||""}}class Kl extends Ch{constructor(t){super(Oh,"digestMethods",!0),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||"",this.digestMethod=new Bh}}class ql extends Ch{constructor(t){super(Oh,"draw",!0),this.anchorType=Nc(t.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]),this.colSpan=Fc({data:t.colSpan,defaultValue:1,validate:t=>t>=1||-1===t}),this.h=t.h?vc(t.h):"",this.hAlign=Nc(t.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=t.id||"",this.locale=t.locale||"",this.maxH=vc(t.maxH,"0pt"),this.maxW=vc(t.maxW,"0pt"),this.minH=vc(t.minH,"0pt"),this.minW=vc(t.minW,"0pt"),this.name=t.name||"",this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.relevant=Mc(t.relevant),this.rotate=Fc({data:t.rotate,defaultValue:0,validate:t=>t%90==0}),this.use=t.use||"",this.usehref=t.usehref||"",this.w=t.w?vc(t.w):"",this.x=vc(t.x,"0pt"),this.y=vc(t.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 Bh}[dc](t){$h(this,t)}[fc](t){if(Al(this),"hidden"===this.presence||"inactive"===this.presence)return Lc.EMPTY;Rh(this),this[gc]();const e=this.w,A=this.h,{w:i,h:s,isBroken:a}=Sh(this,t);if(i&&""===this.w){if(a&&this[Ug]()[Xg]())return this[oc](),Lc.FAILURE;this.w=i}if(s&&""===this.h&&(this.h=s),nl(this),!_h(this,t))return this.w=e,this.h=A,this[oc](),Lc.FAILURE;rl(this);const n=Nh(this,"font","hAlign","dimensions","position","presence","rotate","anchorType","border","margin");Dh(this,n),n.margin&&(n.padding=n.margin,delete n.margin);const r=["xfaDraw"];this.font&&r.push("xfaFont"),Lh(this)&&r.push("xfaPrintOnly");const o={style:n,id:this[yc],class:r};this.name&&(o.xfaName=this.name);const g={name:"div",attributes:o,children:[]};il(this,o);const c=Fh(this,g,t),h=this.value?this.value[fc](t).html:null;return null===h?(this.w=e,this.h=A,this[oc](),Lc.success(vh(this,g),c)):(g.children.push(h),Hh(this,n,h),this.w=e,this.h=A,this[oc](),Lc.success(vh(this,g),c))}}class Pl extends Ch{constructor(t){super(Oh,"edge",!0),this.cap=Nc(t.cap,["square","butt","round"]),this.id=t.id||"",this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.stroke=Nc(t.stroke,["solid","dashDot","dashDotDot","dashed","dotted","embossed","etched","lowered","raised"]),this.thickness=vc(t.thickness,"0.5pt"),this.use=t.use||"",this.usehref=t.usehref||"",this.color=null,this.extras=null}[mc](){const t=Nh(this,"visibility");if(Object.assign(t,{linecap:this.cap,width:wh(this.thickness),color:this.color?this.color[mc]():"#000000",style:""}),"visible"!==this.presence)t.style="none";else switch(this.stroke){case"solid":t.style="solid";break;case"dashDot":case"dashDotDot":case"dashed":t.style="dashed";break;case"dotted":t.style="dotted";break;case"embossed":t.style="ridge";break;case"etched":t.style="groove";break;case"lowered":t.style="inset";break;case"raised":t.style="outset"}return t}}class _l extends Eh{constructor(t){super(Oh,"encoding",["adbe.x509.rsa_sha1","adbe.pkcs7.detached","adbe.pkcs7.sha1"]),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||""}}class Ol extends Ch{constructor(t){super(Oh,"encodings",!0),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||"",this.encoding=new Bh}}class Wl extends Ch{constructor(t){super(Oh,"encrypt",!0),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.certificate=null}}class Zl extends Ch{constructor(t){super(Oh,"encryptData",!0),this.id=t.id||"",this.operation=Nc(t.operation,["encrypt","decrypt"]),this.target=t.target||"",this.use=t.use||"",this.usehref=t.usehref||"",this.filter=null,this.manifest=null}}class jl extends Ch{constructor(t){super(Oh,"encryption",!0),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||"",this.certificate=new Bh}}class Vl extends Eh{constructor(t){super(Oh,"encryptionMethod",["","AES256-CBC","TRIPLEDES-CBC","AES128-CBC","AES192-CBC"]),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||""}}class Xl extends Ch{constructor(t){super(Oh,"encryptionMethods",!0),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||"",this.encryptionMethod=new Bh}}class zl extends Ch{constructor(t){super(Oh,"event",!0),this.activity=Nc(t.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=t.id||"",this.listen=Nc(t.listen,["refOnly","refAndDescendents"]),this.name=t.name||"",this.ref=t.ref||"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.encryptData=null,this.execute=null,this.script=null,this.signData=null,this.submit=null}}class $l extends Qh{constructor(t){super(Oh,"exData"),this.contentType=t.contentType||"",this.href=t.href||"",this.id=t.id||"",this.maxLength=Fc({data:t.maxLength,defaultValue:-1,validate:t=>t>=-1}),this.name=t.name||"",this.rid=t.rid||"",this.transferEncoding=Nc(t.transferEncoding,["none","base64","package"]),this.use=t.use||"",this.usehref=t.usehref||""}[_g](){return"text/html"===this.contentType}[sc](t){return("text/html"===this.contentType&&t[ec]===bc.xhtml.id||"text/xml"===this.contentType)&&(this[Eg]=t,!0)}[fc](t){return"text/html"===this.contentType&&this[Eg]?this[Eg][fc](t):Lc.EMPTY}}class tI extends Ch{constructor(t){super(Oh,"exObject",!0),this.archive=t.archive||"",this.classId=t.classId||"",this.codeBase=t.codeBase||"",this.codeType=t.codeType||"",this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.boolean=new Bh,this.date=new Bh,this.dateTime=new Bh,this.decimal=new Bh,this.exData=new Bh,this.exObject=new Bh,this.float=new Bh,this.image=new Bh,this.integer=new Bh,this.text=new Bh,this.time=new Bh}}class eI extends Ch{constructor(t){super(Oh,"exclGroup",!0),this.access=Nc(t.access,["open","nonInteractive","protected","readOnly"]),this.accessKey=t.accessKey||"",this.anchorType=Nc(t.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]),this.colSpan=Fc({data:t.colSpan,defaultValue:1,validate:t=>t>=1||-1===t}),this.h=t.h?vc(t.h):"",this.hAlign=Nc(t.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=t.id||"",this.layout=Nc(t.layout,["position","lr-tb","rl-row","rl-tb","row","table","tb"]),this.maxH=vc(t.maxH,"0pt"),this.maxW=vc(t.maxW,"0pt"),this.minH=vc(t.minH,"0pt"),this.minW=vc(t.minW,"0pt"),this.name=t.name||"",this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.relevant=Mc(t.relevant),this.use=t.use||"",this.usehref=t.usehref||"",this.w=t.w?vc(t.w):"",this.x=vc(t.x,"0pt"),this.y=vc(t.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 Bh,this.event=new Bh,this.field=new Bh,this.setProperty=new Bh}[Og](){return!0}[Tg](){return!0}[dc](t){for(const e of this.field.children){if(!e.value){const t=new IC({});e[lg](t),e.value=t}e.value[dc](t)}}[Xg](){return this.layout.endsWith("-tb")&&0===this[mg].attempt&&this[mg].numberInLine>0||this[Hg]()[Xg]()}[Vg](){const t=this[Ug]();return!!t[Vg]()&&(void 0!==this[mg]._isSplittable?this[mg]._isSplittable:"position"===this.layout||this.layout.includes("row")?(this[mg]._isSplittable=!1,!1):!(t.layout?.endsWith("-tb")&&0!==t[mg].numberInLine||(this[mg]._isSplittable=!0,0)))}[wg](){return Kh(this)}[hg](t,e){qh(this,t,e)}[kg](){return Ph(this)}[fc](t){if(Al(this),"hidden"===this.presence||"inactive"===this.presence||0===this.h||0===this.w)return Lc.EMPTY;Rh(this);const e=[],A={id:this[yc],class:[]};Mh(this,A.class),this[mg]||(this[mg]=Object.create(null)),Object.assign(this[mg],{children:e,attributes:A,attempt:0,line:null,numberInLine:0,availableSpace:{width:Math.min(this.w||1/0,t.width),height:Math.min(this.h||1/0,t.height)},width:0,height:0,prevHeight:0,currentWidth:0});const i=this[Vg]();if(i||nl(this),!_h(this,t))return Lc.FAILURE;const s=new Set(["field"]);if(this.layout.includes("row")){const t=this[Ug]().columnWidths;Array.isArray(t)&&t.length>0&&(this[mg].columnWidths=t,this[mg].currentColumn=0)}const a=Nh(this,"anchorType","dimensions","position","presence","border","margin","hAlign"),n=["xfaExclgroup"],r=xh(this);r&&n.push(r),Lh(this)&&n.push("xfaPrintOnly"),A.style=a,A.class=n,this.name&&(A.xfaName=this.name),this[gc]();const o="lr-tb"===this.layout||"rl-tb"===this.layout,g=o?2:1;for(;this[mg].attempt<g;this[mg].attempt++){o&&1===this[mg].attempt&&(this[mg].numberInLine=0);const t=this[Ig]({filter:s,include:!0});if(t.success)break;if(t.isBreak())return this[oc](),t;if(o&&0===this[mg].attempt&&0===this[mg].numberInLine&&!this[Jg]()[mg].noLayoutFailure){this[mg].attempt=g;break}}if(this[oc](),i||rl(this),this[mg].attempt===g)return i||delete this[mg],Lc.FAILURE;let c=0,h=0;this.margin&&(c=this.margin.leftInset+this.margin.rightInset,h=this.margin.topInset+this.margin.bottomInset);const l=Math.max(this[mg].width+c,this.w||0),I=Math.max(this[mg].height+h,this.h||0),C=[this.x,this.y,l,I];""===this.w&&(a.width=wh(l)),""===this.h&&(a.height=wh(I));const B={name:"div",attributes:A,children:e};return il(this,A),delete this[mg],Lc.success(vh(this,B),C)}}class AI extends Ch{constructor(t){super(Oh,"execute"),this.connection=t.connection||"",this.executeType=Nc(t.executeType,["import","remerge"]),this.id=t.id||"",this.runAt=Nc(t.runAt,["client","both","server"]),this.use=t.use||"",this.usehref=t.usehref||""}}class iI extends Ch{constructor(t){super(Oh,"extras",!0),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||"",this.boolean=new Bh,this.date=new Bh,this.dateTime=new Bh,this.decimal=new Bh,this.exData=new Bh,this.extras=new Bh,this.float=new Bh,this.image=new Bh,this.integer=new Bh,this.text=new Bh,this.time=new Bh}}class sI extends Ch{constructor(t){super(Oh,"field",!0),this.access=Nc(t.access,["open","nonInteractive","protected","readOnly"]),this.accessKey=t.accessKey||"",this.anchorType=Nc(t.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]),this.colSpan=Fc({data:t.colSpan,defaultValue:1,validate:t=>t>=1||-1===t}),this.h=t.h?vc(t.h):"",this.hAlign=Nc(t.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=t.id||"",this.locale=t.locale||"",this.maxH=vc(t.maxH,"0pt"),this.maxW=vc(t.maxW,"0pt"),this.minH=vc(t.minH,"0pt"),this.minW=vc(t.minW,"0pt"),this.name=t.name||"",this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.relevant=Mc(t.relevant),this.rotate=Fc({data:t.rotate,defaultValue:0,validate:t=>t%90==0}),this.use=t.use||"",this.usehref=t.usehref||"",this.w=t.w?vc(t.w):"",this.x=vc(t.x,"0pt"),this.y=vc(t.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 Bh(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 Bh,this.connect=new Bh,this.event=new Bh,this.setProperty=new Bh}[Og](){return!0}[dc](t){$h(this,t)}[fc](t){if(Al(this),!this.ui){let t;switch(this.ui=new hC({}),this.ui[Yg]=this[Yg],this[lg](this.ui),this.items.children.length){case 0:t=new aC({}),this.ui.textEdit=t;break;case 1:t=new Sl({}),this.ui.checkButton=t;break;case 2:t=new Fl({}),this.ui.choiceList=t}this.ui[lg](t)}if(!this.ui||"hidden"===this.presence||"inactive"===this.presence||0===this.h||0===this.w)return Lc.EMPTY;this.caption&&delete this.caption[mg],this[gc]();const e=this.caption?this.caption[fc](t).html:null,A=this.w,i=this.h;let s=0,a=0;this.margin&&(s=this.margin.leftInset+this.margin.rightInset,a=this.margin.topInset+this.margin.bottomInset);let n=null;if(""===this.w||""===this.h){let e=null,A=null,i=0,r=0;if(this.ui.checkButton)i=r=this.ui.checkButton.size;else{const{w:e,h:A}=Sh(this,t);null!==e?(i=e,r=A):r=function(t,e=!1){let A=null;if(t){const e=Sc(t.typeface),i=t[Yg].fontFinder.find(e);A=Hc(t,i)}if(!A)return{lineHeight:12,lineGap:2,lineNoGap:10};const i=t.size||10,s=A.lineHeight?Math.max(e?0:1.2,A.lineHeight):1.2,a=void 0===A.lineGap?.2:A.lineGap;return{lineHeight:s*i,lineGap:a*i,lineNoGap:Math.max(1,s-a)*i}}(this.font,!0).lineNoGap}if(n=Xh(this.ui[Ng]()),i+=n.w,r+=n.h,this.caption){const{w:s,h:a,isBroken:n}=this.caption[Ng](t);if(n&&this[Ug]()[Xg]())return this[oc](),Lc.FAILURE;switch(e=s,A=a,this.caption.placement){case"left":case"right":case"inline":e+=i;break;case"top":case"bottom":A+=r}}else e=i,A=r;e&&""===this.w&&(e+=s,this.w=Math.min(this.maxW<=0?1/0:this.maxW,this.minW+1<e?e:this.minW)),A&&""===this.h&&(A+=a,this.h=Math.min(this.maxH<=0?1/0:this.maxH,this.minH+1<A?A:this.minH))}if(this[oc](),Rh(this),nl(this),!_h(this,t))return this.w=A,this.h=i,this[oc](),Lc.FAILURE;rl(this);const r=Nh(this,"font","dimensions","position","rotate","anchorType","presence","margin","hAlign");Dh(this,r);const o=["xfaField"];this.font&&o.push("xfaFont"),Lh(this)&&o.push("xfaPrintOnly");const g={style:r,id:this[yc],class:o};r.margin&&(r.padding=r.margin,delete r.margin),Mh(this,o),this.name&&(g.xfaName=this.name);const c=[],h={name:"div",attributes:g,children:c};il(this,g);const l=this.border?this.border[mc]():null,I=Fh(this,h,t),C=this.ui[fc]().html;if(!C)return Object.assign(r,l),Lc.success(vh(this,h),I);this[uc]&&(C.children?.[0]?C.children[0].attributes.tabindex=this[uc]:C.attributes.tabindex=this[uc]),C.attributes.style||(C.attributes.style=Object.create(null));let B=null;if(this.ui.button?(1===C.children.length&&([B]=C.children.splice(0,1)),Object.assign(C.attributes.style,l)):Object.assign(r,l),c.push(C),this.value)if(this.ui.imageEdit)C.children.push(this.value[fc]().html);else if(!this.ui.button){let t="";if(this.value.exData)t=this.value.exData[Qc]();else if(this.value.text)t=this.value.text[Ng]();else{const e=this.value[fc]().html;null!==e&&(t=e.children[0].value)}this.ui.textEdit&&this.value.text?.maxChars&&(C.children[0].attributes.maxLength=this.value.text.maxChars),t&&(this.ui.numericEdit&&(t=parseFloat(t),t=isNaN(t)?"":t.toString()),"textarea"===C.children[0].name?C.children[0].attributes.textContent=t:C.children[0].attributes.value=t)}if(!this.ui.imageEdit&&C.children?.[0]&&this.h){n=n||Xh(this.ui[Ng]());let e=0;if(this.caption&&["top","bottom"].includes(this.caption.placement)){e=this.caption.reserve,e<=0&&(e=this.caption[Ng](t).h);const A=this.h-e-a-n.h;C.children[0].attributes.style.height=wh(A)}else C.children[0].attributes.style.height="100%"}if(B&&C.children.push(B),!e)return C.attributes.class&&C.attributes.class.push("xfaLeft"),this.w=A,this.h=i,Lc.success(vh(this,h),I);if(this.ui.button)return r.padding&&delete r.padding,"div"===e.name&&(e.name="span"),C.children.push(e),Lc.success(h,I);switch(this.ui.checkButton&&(e.attributes.class[0]="xfaCaptionForCheckButton"),C.attributes.class||(C.attributes.class=[]),C.children.splice(0,0,e),this.caption.placement){case"left":case"inline":C.attributes.class.push("xfaLeft");break;case"right":C.attributes.class.push("xfaRight");break;case"top":C.attributes.class.push("xfaTop");break;case"bottom":C.attributes.class.push("xfaBottom")}return this.w=A,this.h=i,Lc.success(vh(this,h),I)}}class aI extends Ch{constructor(t){super(Oh,"fill",!0),this.id=t.id||"",this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.use=t.use||"",this.usehref=t.usehref||"",this.color=null,this.extras=null,this.linear=null,this.pattern=null,this.radial=null,this.solid=null,this.stipple=null}[mc](){const t=this[Hg](),e=t[Hg]()[Hg](),A=Object.create(null);let i="color",s=i;t instanceof El&&(i="background-color",s="background",e instanceof hC&&(A.backgroundColor="white")),(t instanceof KI||t instanceof hl)&&(i=s="fill",A.fill="white");for(const t of Object.getOwnPropertyNames(this)){if("extras"===t||"color"===t)continue;const e=this[t];if(!(e instanceof Ch))continue;const a=e[mc](this.color);return a&&(A[a.startsWith("#")?i:s]=a),A}if(this.color?.value){const t=this.color[mc]();A[t.startsWith("#")?i:s]=t}return A}}class nI extends Ch{constructor(t){super(Oh,"filter",!0),this.addRevocationInfo=Nc(t.addRevocationInfo,["","required","optional","none"]),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||"",this.version=Fc({data:this.version,defaultValue:5,validate:t=>t>=1&&t<=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 rI extends Qh{constructor(t){super(Oh,"float"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}[yg](){const t=parseFloat(this[Eg].trim());this[Eg]=isNaN(t)?null:t}[fc](t){return al(null!==this[Eg]?this[Eg].toString():"")}}class oI extends Ch{constructor(t){super(Oh,"font",!0),this.baselineShift=vc(t.baselineShift),this.fontHorizontalScale=Rc({data:t.fontHorizontalScale,defaultValue:100,validate:t=>t>=0}),this.fontVerticalScale=Rc({data:t.fontVerticalScale,defaultValue:100,validate:t=>t>=0}),this.id=t.id||"",this.kerningMode=Nc(t.kerningMode,["none","pair"]),this.letterSpacing=vc(t.letterSpacing,"0"),this.lineThrough=Fc({data:t.lineThrough,defaultValue:0,validate:t=>1===t||2===t}),this.lineThroughPeriod=Nc(t.lineThroughPeriod,["all","word"]),this.overline=Fc({data:t.overline,defaultValue:0,validate:t=>1===t||2===t}),this.overlinePeriod=Nc(t.overlinePeriod,["all","word"]),this.posture=Nc(t.posture,["normal","italic"]),this.size=vc(t.size,"10pt"),this.typeface=t.typeface||"Courier",this.underline=Fc({data:t.underline,defaultValue:0,validate:t=>1===t||2===t}),this.underlinePeriod=Nc(t.underlinePeriod,["all","word"]),this.use=t.use||"",this.usehref=t.usehref||"",this.weight=Nc(t.weight,["normal","bold"]),this.extras=null,this.fill=null}[Cg](t){super[Cg](t),this[Yg].usedTypefaces.add(this.typeface)}[mc](){const t=Nh(this,"fill"),e=t.color;return e&&("#000000"===e?delete t.color:e.startsWith("#")||(t.background=e,t.backgroundClip="text",t.color="transparent")),this.baselineShift&&(t.verticalAlign=wh(this.baselineShift)),t.fontKerning="none"===this.kerningMode?"none":"normal",t.letterSpacing=wh(this.letterSpacing),0!==this.lineThrough&&(t.textDecoration="line-through",2===this.lineThrough&&(t.textDecorationStyle="double")),0!==this.overline&&(t.textDecoration="overline",2===this.overline&&(t.textDecorationStyle="double")),t.fontStyle=this.posture,t.fontSize=wh(.99*this.size),Jh(this,this,this[Yg].fontFinder,t),0!==this.underline&&(t.textDecoration="underline",2===this.underline&&(t.textDecorationStyle="double")),t.fontWeight=this.weight,t}}class gI extends Ch{constructor(t){super(Oh,"format",!0),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.picture=null}}class cI extends fh{constructor(t){super(Oh,"handler"),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||""}}class hI extends Ch{constructor(t){super(Oh,"hyphenation"),this.excludeAllCaps=Fc({data:t.excludeAllCaps,defaultValue:0,validate:t=>1===t}),this.excludeInitialCap=Fc({data:t.excludeInitialCap,defaultValue:0,validate:t=>1===t}),this.hyphenate=Fc({data:t.hyphenate,defaultValue:0,validate:t=>1===t}),this.id=t.id||"",this.pushCharacterCount=Fc({data:t.pushCharacterCount,defaultValue:3,validate:t=>t>=0}),this.remainCharacterCount=Fc({data:t.remainCharacterCount,defaultValue:3,validate:t=>t>=0}),this.use=t.use||"",this.usehref=t.usehref||"",this.wordCharacterCount=Fc({data:t.wordCharacterCount,defaultValue:7,validate:t=>t>=0})}}class lI extends fh{constructor(t){super(Oh,"image"),this.aspect=Nc(t.aspect,["fit","actual","height","none","width"]),this.contentType=t.contentType||"",this.href=t.href||"",this.id=t.id||"",this.name=t.name||"",this.transferEncoding=Nc(t.transferEncoding,["base64","none","package"]),this.use=t.use||"",this.usehref=t.usehref||""}[fc](){if(this.contentType&&!jh.has(this.contentType.toLowerCase()))return Lc.EMPTY;let t=this[Yg].images&&this[Yg].images.get(this.href);if(!t&&(this.href||!this[Eg]))return Lc.EMPTY;if(t||"base64"!==this.transferEncoding||(t=O(atob(this[Eg]))),!t)return Lc.EMPTY;if(!this.contentType){for(const[e,A]of Vh)if(t.length>e.length&&e.every(((e,A)=>e===t[A]))){this.contentType=A;break}if(!this.contentType)return Lc.EMPTY}const e=new Blob([t],{type:this.contentType});let A;switch(this.aspect){case"fit":case"actual":break;case"height":A={height:"100%",objectFit:"fill"};break;case"none":A={width:"100%",height:"100%",objectFit:"fill"};break;case"width":A={width:"100%",objectFit:"fill"}}const i=this[Hg]();return Lc.success({name:"img",attributes:{class:["xfaImage"],style:A,src:URL.createObjectURL(e),alt:i?sl(i[Hg]()):null}})}}class II extends Ch{constructor(t){super(Oh,"imageEdit",!0),this.data=Nc(t.data,["link","embed"]),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.border=null,this.extras=null,this.margin=null}[fc](t){return"embed"===this.data?Lc.success({name:"div",children:[],attributes:{}}):Lc.EMPTY}}class CI extends Qh{constructor(t){super(Oh,"integer"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}[yg](){const t=parseInt(this[Eg].trim(),10);this[Eg]=isNaN(t)?null:t}[fc](t){return al(null!==this[Eg]?this[Eg].toString():"")}}class BI extends Ch{constructor(t){super(Oh,"issuers",!0),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||"",this.certificate=new Bh}}class dI extends Ch{constructor(t){super(Oh,"items",!0),this.id=t.id||"",this.name=t.name||"",this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.ref=t.ref||"",this.save=Fc({data:t.save,defaultValue:0,validate:t=>1===t}),this.use=t.use||"",this.usehref=t.usehref||"",this.boolean=new Bh,this.date=new Bh,this.dateTime=new Bh,this.decimal=new Bh,this.exData=new Bh,this.float=new Bh,this.image=new Bh,this.integer=new Bh,this.text=new Bh,this.time=new Bh}[fc](){const t=[];for(const e of this[Gg]())t.push(e[Qc]());return Lc.success(t)}}class uI extends Ch{constructor(t){super(Oh,"keep",!0),this.id=t.id||"";const e=["none","contentArea","pageArea"];this.intact=Nc(t.intact,e),this.next=Nc(t.next,e),this.previous=Nc(t.previous,e),this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null}}class QI extends Ch{constructor(t){super(Oh,"keyUsage");const e=["","yes","no"];this.crlSign=Nc(t.crlSign,e),this.dataEncipherment=Nc(t.dataEncipherment,e),this.decipherOnly=Nc(t.decipherOnly,e),this.digitalSignature=Nc(t.digitalSignature,e),this.encipherOnly=Nc(t.encipherOnly,e),this.id=t.id||"",this.keyAgreement=Nc(t.keyAgreement,e),this.keyCertSign=Nc(t.keyCertSign,e),this.keyEncipherment=Nc(t.keyEncipherment,e),this.nonRepudiation=Nc(t.nonRepudiation,e),this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||""}}class EI extends Ch{constructor(t){super(Oh,"line",!0),this.hand=Nc(t.hand,["even","left","right"]),this.id=t.id||"",this.slope=Nc(t.slope,["\\","/"]),this.use=t.use||"",this.usehref=t.usehref||"",this.edge=null}[fc](){const t=this[Hg]()[Hg](),e=this.edge||new Pl({}),A=e[mc](),i=Object.create(null),s="visible"===e.presence?e.thickness:0;i.strokeWidth=wh(s),i.stroke=A.color;let a,n,r,o,g="100%",c="100%";t.w<=s?([a,n,r,o]=["50%",0,"50%","100%"],g=i.strokeWidth):t.h<=s?([a,n,r,o]=[0,"50%","100%","50%"],c=i.strokeWidth):"\\"===this.slope?[a,n,r,o]=[0,0,"100%","100%"]:[a,n,r,o]=[0,"100%","100%",0];const h={name:"svg",children:[{name:"line",attributes:{xmlns:Wh,x1:a,y1:n,x2:r,y2:o,style:i}}],attributes:{xmlns:Wh,width:g,height:c,style:{overflow:"visible"}}};return zh(t)?Lc.success({name:"div",attributes:{style:{display:"inline",width:"100%",height:"100%"}},children:[h]}):(h.attributes.style.position="absolute",Lc.success(h))}}class fI extends Ch{constructor(t){super(Oh,"linear",!0),this.id=t.id||"",this.type=Nc(t.type,["toRight","toBottom","toLeft","toTop"]),this.use=t.use||"",this.usehref=t.usehref||"",this.color=null,this.extras=null}[mc](t){return t=t?t[mc]():"#FFFFFF",`linear-gradient(${this.type.replace(/([RBLT])/," $1").toLowerCase()}, ${t}, ${this.color?this.color[mc]():"#000000"})`}}class pI extends Qh{constructor(t){super(Oh,"lockDocument"),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||""}[yg](){this[Eg]=Nc(this[Eg],["auto","0","1"])}}class mI extends Ch{constructor(t){super(Oh,"manifest",!0),this.action=Nc(t.action,["include","all","exclude"]),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.ref=new Bh}}class yI extends Ch{constructor(t){super(Oh,"margin",!0),this.bottomInset=vc(t.bottomInset,"0"),this.id=t.id||"",this.leftInset=vc(t.leftInset,"0"),this.rightInset=vc(t.rightInset,"0"),this.topInset=vc(t.topInset,"0"),this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null}[mc](){return{margin:wh(this.topInset)+" "+wh(this.rightInset)+" "+wh(this.bottomInset)+" "+wh(this.leftInset)}}}class wI extends Ch{constructor(t){super(Oh,"mdp"),this.id=t.id||"",this.permissions=Fc({data:t.permissions,defaultValue:2,validate:t=>1===t||3===t}),this.signatureType=Nc(t.signatureType,["filler","author"]),this.use=t.use||"",this.usehref=t.usehref||""}}class bI extends Ch{constructor(t){super(Oh,"medium"),this.id=t.id||"",this.imagingBBox=function(t){const e=-1;if(!t)return{x:e,y:e,width:e,height:e};const A=t.trim().split(/\s*,\s*/).map((t=>vc(t,"-1")));if(A.length<4||A[2]<0||A[3]<0)return{x:e,y:e,width:e,height:e};const[i,s,a,n]=A;return{x:i,y:s,width:a,height:n}}(t.imagingBBox),this.long=vc(t.long),this.orientation=Nc(t.orientation,["portrait","landscape"]),this.short=vc(t.short),this.stock=t.stock||"",this.trayIn=Nc(t.trayIn,["auto","delegate","pageFront"]),this.trayOut=Nc(t.trayOut,["auto","delegate"]),this.use=t.use||"",this.usehref=t.usehref||""}}class DI extends Ch{constructor(t){super(Oh,"message",!0),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.text=new Bh}}class kI extends Ch{constructor(t){super(Oh,"numericEdit",!0),this.hScrollPolicy=Nc(t.hScrollPolicy,["auto","off","on"]),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.border=null,this.comb=null,this.extras=null,this.margin=null}[fc](t){const e=Nh(this,"border","font","margin"),A=this[Hg]()[Hg](),i={name:"input",attributes:{type:"text",fieldId:A[yc],dataId:A[fg]?.[yc]||A[yc],class:["xfaTextfield"],style:e,"aria-label":sl(A),"aria-required":!1}};return el(A)&&(i.attributes["aria-required"]=!0,i.attributes.required=!0),Lc.success({name:"label",attributes:{class:["xfaLabel"]},children:[i]})}}class SI extends Ch{constructor(t){super(Oh,"occur",!0),this.id=t.id||"",this.initial=""!==t.initial?Fc({data:t.initial,defaultValue:"",validate:t=>!0}):"",this.max=""!==t.max?Fc({data:t.max,defaultValue:1,validate:t=>!0}):"",this.min=""!==t.min?Fc({data:t.min,defaultValue:1,validate:t=>!0}):"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null}[Cg](){const t=this[Hg](),e=this.min;""===this.min&&(this.min=t instanceof NI||t instanceof vI?0:1),""===this.max&&(this.max=""===e?t instanceof NI||t instanceof vI?-1:1:this.min),-1!==this.max&&this.max<this.min&&(this.max=this.min),""===this.initial&&(this.initial=t instanceof iC?1:this.min)}}class FI extends fh{constructor(t){super(Oh,"oid"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class RI extends Ch{constructor(t){super(Oh,"oids",!0),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||"",this.oid=new Bh}}class xI extends Ch{constructor(t){super(Oh,"overflow"),this.id=t.id||"",this.leader=t.leader||"",this.target=t.target||"",this.trailer=t.trailer||"",this.use=t.use||"",this.usehref=t.usehref||""}[Ng](){if(!this[mg]){const t=this[Hg](),e=this[Jg](),A=e[Ic](this.target,t),i=e[Ic](this.leader,t),s=e[Ic](this.trailer,t);this[mg]={target:A?.[0]||null,leader:i?.[0]||null,trailer:s?.[0]||null,addLeader:!1,addTrailer:!1}}return this[mg]}}class NI extends Ch{constructor(t){super(Oh,"pageArea",!0),this.blankOrNotBlank=Nc(t.blankOrNotBlank,["any","blank","notBlank"]),this.id=t.id||"",this.initialNumber=Fc({data:t.initialNumber,defaultValue:1,validate:t=>!0}),this.name=t.name||"",this.numbered=Fc({data:t.numbered,defaultValue:1,validate:t=>!0}),this.oddOrEven=Nc(t.oddOrEven,["any","even","odd"]),this.pagePosition=Nc(t.pagePosition,["any","first","last","only","rest"]),this.relevant=Mc(t.relevant),this.use=t.use||"",this.usehref=t.usehref||"",this.desc=null,this.extras=null,this.medium=null,this.occur=null,this.area=new Bh,this.contentArea=new Bh,this.draw=new Bh,this.exclGroup=new Bh,this.field=new Bh,this.subform=new Bh}[$g](){return this[mg]?!this.occur||-1===this.occur.max||this[mg].numberOfUse<this.occur.max:(this[mg]={numberOfUse:0},!0)}[Bg](){delete this[mg]}[Lg](){this[mg]||(this[mg]={numberOfUse:0});const t=this[Hg]();return"orderedOccurrence"===t.relation&&this[$g]()?(this[mg].numberOfUse+=1,this):t[Lg]()}[kg](){return this[mg].space||{width:0,height:0}}[fc](){this[mg]||(this[mg]={numberOfUse:1});const t=[];this[mg].children=t;const e=Object.create(null);if(this.medium&&this.medium.short&&this.medium.long){if(e.width=wh(this.medium.short),e.height=wh(this.medium.long),this[mg].space={width:this.medium.short,height:this.medium.long},"landscape"===this.medium.orientation){const t=e.width;e.width=e.height,e.height=t,this[mg].space={width:this.medium.long,height:this.medium.short}}}else N("XFA - No medium specified in pageArea: please file a bug.");return this[Ig]({filter:new Set(["area","draw","field","subform"]),include:!0}),this[Ig]({filter:new Set(["contentArea"]),include:!0}),Lc.success({name:"div",children:t,attributes:{class:["xfaPage"],id:this[yc],style:e,xfaName:this.name}})}}class vI extends Ch{constructor(t){super(Oh,"pageSet",!0),this.duplexImposition=Nc(t.duplexImposition,["longEdge","shortEdge"]),this.id=t.id||"",this.name=t.name||"",this.relation=Nc(t.relation,["orderedOccurrence","duplexPaginated","simplexPaginated"]),this.relevant=Mc(t.relevant),this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.occur=null,this.pageArea=new Bh,this.pageSet=new Bh}[Bg](){for(const t of this.pageArea.children)t[Bg]();for(const t of this.pageSet.children)t[Bg]()}[$g](){return!this.occur||-1===this.occur.max||this[mg].numberOfUse<this.occur.max}[Lg](){if(this[mg]||(this[mg]={numberOfUse:1,pageIndex:-1,pageSetIndex:-1}),"orderedOccurrence"===this.relation){if(this[mg].pageIndex+1<this.pageArea.children.length)return this[mg].pageIndex+=1,this.pageArea.children[this[mg].pageIndex][Lg]();if(this[mg].pageSetIndex+1<this.pageSet.children.length)return this[mg].pageSetIndex+=1,this.pageSet.children[this[mg].pageSetIndex][Lg]();if(this[$g]())return this[mg].numberOfUse+=1,this[mg].pageIndex=-1,this[mg].pageSetIndex=-1,this[Lg]();const t=this[Hg]();return t instanceof vI?t[Lg]():(this[Bg](),this[Lg]())}const t=this[Jg]()[mg].pageNumber,e=t%2==0?"even":"odd",A=0===t?"first":"rest";let i=this.pageArea.children.find((t=>t.oddOrEven===e&&t.pagePosition===A));return i||(i=this.pageArea.children.find((t=>"any"===t.oddOrEven&&t.pagePosition===A)),i||(i=this.pageArea.children.find((t=>"any"===t.oddOrEven&&"any"===t.pagePosition)),i||this.pageArea.children[0]))}}class GI extends Ch{constructor(t){super(Oh,"para",!0),this.hAlign=Nc(t.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=t.id||"",this.lineHeight=t.lineHeight?vc(t.lineHeight,"0pt"):"",this.marginLeft=t.marginLeft?vc(t.marginLeft,"0pt"):"",this.marginRight=t.marginRight?vc(t.marginRight,"0pt"):"",this.orphans=Fc({data:t.orphans,defaultValue:0,validate:t=>t>=0}),this.preserve=t.preserve||"",this.radixOffset=t.radixOffset?vc(t.radixOffset,"0pt"):"",this.spaceAbove=t.spaceAbove?vc(t.spaceAbove,"0pt"):"",this.spaceBelow=t.spaceBelow?vc(t.spaceBelow,"0pt"):"",this.tabDefault=t.tabDefault?vc(this.tabDefault):"",this.tabStops=(t.tabStops||"").trim().split(/\s+/).map(((t,e)=>e%2==1?vc(t):t)),this.textIndent=t.textIndent?vc(t.textIndent,"0pt"):"",this.use=t.use||"",this.usehref=t.usehref||"",this.vAlign=Nc(t.vAlign,["top","bottom","middle"]),this.widows=Fc({data:t.widows,defaultValue:0,validate:t=>t>=0}),this.hyphenation=null}[mc](){const t=Nh(this,"hAlign");return""!==this.marginLeft&&(t.paddingLeft=wh(this.marginLeft)),""!==this.marginRight&&(t.paddingight=wh(this.marginRight)),""!==this.spaceAbove&&(t.paddingTop=wh(this.spaceAbove)),""!==this.spaceBelow&&(t.paddingBottom=wh(this.spaceBelow)),""!==this.textIndent&&(t.textIndent=wh(this.textIndent),Gh(t)),this.lineHeight>0&&(t.lineHeight=wh(this.lineHeight)),""!==this.tabDefault&&(t.tabSize=wh(this.tabDefault)),this.tabStops.length,this.hyphenatation&&Object.assign(t,this.hyphenatation[mc]()),t}}class MI extends Ch{constructor(t){super(Oh,"passwordEdit",!0),this.hScrollPolicy=Nc(t.hScrollPolicy,["auto","off","on"]),this.id=t.id||"",this.passwordChar=t.passwordChar||"*",this.use=t.use||"",this.usehref=t.usehref||"",this.border=null,this.extras=null,this.margin=null}}class LI extends Ch{constructor(t){super(Oh,"pattern",!0),this.id=t.id||"",this.type=Nc(t.type,["crossHatch","crossDiagonal","diagonalLeft","diagonalRight","horizontal","vertical"]),this.use=t.use||"",this.usehref=t.usehref||"",this.color=null,this.extras=null}[mc](t){t=t?t[mc]():"#FFFFFF";const e=this.color?this.color[mc]():"#000000",A="repeating-linear-gradient",i=`${t},${t} 5px,${e} 5px,${e} 10px`;switch(this.type){case"crossHatch":return`${A}(to top,${i}) ${A}(to right,${i})`;case"crossDiagonal":return`${A}(45deg,${i}) ${A}(-45deg,${i})`;case"diagonalLeft":return`${A}(45deg,${i})`;case"diagonalRight":return`${A}(-45deg,${i})`;case"horizontal":return`${A}(to top,${i})`;case"vertical":return`${A}(to right,${i})`}return""}}class UI extends fh{constructor(t){super(Oh,"picture"),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||""}}class HI extends Ch{constructor(t){super(Oh,"proto",!0),this.appearanceFilter=new Bh,this.arc=new Bh,this.area=new Bh,this.assist=new Bh,this.barcode=new Bh,this.bindItems=new Bh,this.bookend=new Bh,this.boolean=new Bh,this.border=new Bh,this.break=new Bh,this.breakAfter=new Bh,this.breakBefore=new Bh,this.button=new Bh,this.calculate=new Bh,this.caption=new Bh,this.certificate=new Bh,this.certificates=new Bh,this.checkButton=new Bh,this.choiceList=new Bh,this.color=new Bh,this.comb=new Bh,this.connect=new Bh,this.contentArea=new Bh,this.corner=new Bh,this.date=new Bh,this.dateTime=new Bh,this.dateTimeEdit=new Bh,this.decimal=new Bh,this.defaultUi=new Bh,this.desc=new Bh,this.digestMethod=new Bh,this.digestMethods=new Bh,this.draw=new Bh,this.edge=new Bh,this.encoding=new Bh,this.encodings=new Bh,this.encrypt=new Bh,this.encryptData=new Bh,this.encryption=new Bh,this.encryptionMethod=new Bh,this.encryptionMethods=new Bh,this.event=new Bh,this.exData=new Bh,this.exObject=new Bh,this.exclGroup=new Bh,this.execute=new Bh,this.extras=new Bh,this.field=new Bh,this.fill=new Bh,this.filter=new Bh,this.float=new Bh,this.font=new Bh,this.format=new Bh,this.handler=new Bh,this.hyphenation=new Bh,this.image=new Bh,this.imageEdit=new Bh,this.integer=new Bh,this.issuers=new Bh,this.items=new Bh,this.keep=new Bh,this.keyUsage=new Bh,this.line=new Bh,this.linear=new Bh,this.lockDocument=new Bh,this.manifest=new Bh,this.margin=new Bh,this.mdp=new Bh,this.medium=new Bh,this.message=new Bh,this.numericEdit=new Bh,this.occur=new Bh,this.oid=new Bh,this.oids=new Bh,this.overflow=new Bh,this.pageArea=new Bh,this.pageSet=new Bh,this.para=new Bh,this.passwordEdit=new Bh,this.pattern=new Bh,this.picture=new Bh,this.radial=new Bh,this.reason=new Bh,this.reasons=new Bh,this.rectangle=new Bh,this.ref=new Bh,this.script=new Bh,this.setProperty=new Bh,this.signData=new Bh,this.signature=new Bh,this.signing=new Bh,this.solid=new Bh,this.speak=new Bh,this.stipple=new Bh,this.subform=new Bh,this.subformSet=new Bh,this.subjectDN=new Bh,this.subjectDNs=new Bh,this.submit=new Bh,this.text=new Bh,this.textEdit=new Bh,this.time=new Bh,this.timeStamp=new Bh,this.toolTip=new Bh,this.traversal=new Bh,this.traverse=new Bh,this.ui=new Bh,this.validate=new Bh,this.value=new Bh,this.variables=new Bh}}class JI extends Ch{constructor(t){super(Oh,"radial",!0),this.id=t.id||"",this.type=Nc(t.type,["toEdge","toCenter"]),this.use=t.use||"",this.usehref=t.usehref||"",this.color=null,this.extras=null}[mc](t){t=t?t[mc]():"#FFFFFF";const e=this.color?this.color[mc]():"#000000";return`radial-gradient(circle at center, ${"toEdge"===this.type?`${t},${e}`:`${e},${t}`})`}}class YI extends fh{constructor(t){super(Oh,"reason"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class TI extends Ch{constructor(t){super(Oh,"reasons",!0),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||"",this.reason=new Bh}}class KI extends Ch{constructor(t){super(Oh,"rectangle",!0),this.hand=Nc(t.hand,["even","left","right"]),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.corner=new Bh(4),this.edge=new Bh(4),this.fill=null}[fc](){const t=this.edge.children.length?this.edge.children[0]:new Pl({}),e=t[mc](),A=Object.create(null);"visible"===this.fill?.presence?Object.assign(A,this.fill[mc]()):A.fill="transparent",A.strokeWidth=wh("visible"===t.presence?t.thickness:0),A.stroke=e.color;const i=(this.corner.children.length?this.corner.children[0]:new Gl({}))[mc](),s={name:"svg",children:[{name:"rect",attributes:{xmlns:Wh,width:"100%",height:"100%",x:0,y:0,rx:i.radius,ry:i.radius,style:A}}],attributes:{xmlns:Wh,style:{overflow:"visible"},width:"100%",height:"100%"}};return zh(this[Hg]()[Hg]())?Lc.success({name:"div",attributes:{style:{display:"inline",width:"100%",height:"100%"}},children:[s]}):(s.attributes.style.position="absolute",Lc.success(s))}}class qI extends fh{constructor(t){super(Oh,"ref"),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||""}}class PI extends fh{constructor(t){super(Oh,"script"),this.binding=t.binding||"",this.contentType=t.contentType||"",this.id=t.id||"",this.name=t.name||"",this.runAt=Nc(t.runAt,["client","both","server"]),this.use=t.use||"",this.usehref=t.usehref||""}}class _I extends Ch{constructor(t){super(Oh,"setProperty"),this.connection=t.connection||"",this.ref=t.ref||"",this.target=t.target||""}}class OI extends Ch{constructor(t){super(Oh,"signData",!0),this.id=t.id||"",this.operation=Nc(t.operation,["sign","clear","verify"]),this.ref=t.ref||"",this.target=t.target||"",this.use=t.use||"",this.usehref=t.usehref||"",this.filter=null,this.manifest=null}}class WI extends Ch{constructor(t){super(Oh,"signature",!0),this.id=t.id||"",this.type=Nc(t.type,["PDF1.3","PDF1.6"]),this.use=t.use||"",this.usehref=t.usehref||"",this.border=null,this.extras=null,this.filter=null,this.manifest=null,this.margin=null}}class ZI extends Ch{constructor(t){super(Oh,"signing",!0),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||"",this.certificate=new Bh}}class jI extends Ch{constructor(t){super(Oh,"solid",!0),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null}[mc](t){return t?t[mc]():"#FFFFFF"}}class VI extends fh{constructor(t){super(Oh,"speak"),this.disable=Fc({data:t.disable,defaultValue:0,validate:t=>1===t}),this.id=t.id||"",this.priority=Nc(t.priority,["custom","caption","name","toolTip"]),this.rid=t.rid||"",this.use=t.use||"",this.usehref=t.usehref||""}}class XI extends Ch{constructor(t){super(Oh,"stipple",!0),this.id=t.id||"",this.rate=Fc({data:t.rate,defaultValue:50,validate:t=>t>=0&&t<=100}),this.use=t.use||"",this.usehref=t.usehref||"",this.color=null,this.extras=null}[mc](t){const e=this.rate/100;return X.makeHexColor(Math.round(t.value.r*(1-e)+this.value.r*e),Math.round(t.value.g*(1-e)+this.value.g*e),Math.round(t.value.b*(1-e)+this.value.b*e))}}class zI extends Ch{constructor(t){super(Oh,"subform",!0),this.access=Nc(t.access,["open","nonInteractive","protected","readOnly"]),this.allowMacro=Fc({data:t.allowMacro,defaultValue:0,validate:t=>1===t}),this.anchorType=Nc(t.anchorType,["topLeft","bottomCenter","bottomLeft","bottomRight","middleCenter","middleLeft","middleRight","topCenter","topRight"]),this.colSpan=Fc({data:t.colSpan,defaultValue:1,validate:t=>t>=1||-1===t}),this.columnWidths=(t.columnWidths||"").trim().split(/\s+/).map((t=>"-1"===t?-1:vc(t))),this.h=t.h?vc(t.h):"",this.hAlign=Nc(t.hAlign,["left","center","justify","justifyAll","radix","right"]),this.id=t.id||"",this.layout=Nc(t.layout,["position","lr-tb","rl-row","rl-tb","row","table","tb"]),this.locale=t.locale||"",this.maxH=vc(t.maxH,"0pt"),this.maxW=vc(t.maxW,"0pt"),this.mergeMode=Nc(t.mergeMode,["consumeData","matchTemplate"]),this.minH=vc(t.minH,"0pt"),this.minW=vc(t.minW,"0pt"),this.name=t.name||"",this.presence=Nc(t.presence,["visible","hidden","inactive","invisible"]),this.relevant=Mc(t.relevant),this.restoreState=Nc(t.restoreState,["manual","auto"]),this.scope=Nc(t.scope,["name","none"]),this.use=t.use||"",this.usehref=t.usehref||"",this.w=t.w?vc(t.w):"",this.x=vc(t.x,"0pt"),this.y=vc(t.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 Bh,this.breakAfter=new Bh,this.breakBefore=new Bh,this.connect=new Bh,this.draw=new Bh,this.event=new Bh,this.exObject=new Bh,this.exclGroup=new Bh,this.field=new Bh,this.proto=new Bh,this.setProperty=new Bh,this.subform=new Bh,this.subformSet=new Bh}[Ug](){const t=this[Hg]();return t instanceof $I?t[Ug]():t}[Og](){return!0}[Xg](){return this.layout.endsWith("-tb")&&0===this[mg].attempt&&this[mg].numberInLine>0||this[Hg]()[Xg]()}*[Mg](){yield*tl(this)}[wg](){return Kh(this)}[hg](t,e){qh(this,t,e)}[kg](){return Ph(this)}[Vg](){const t=this[Ug]();return!!t[Vg]()&&(void 0!==this[mg]._isSplittable?this[mg]._isSplittable:"position"===this.layout||this.layout.includes("row")||this.keep&&"none"!==this.keep.intact?(this[mg]._isSplittable=!1,!1):!(t.layout?.endsWith("-tb")&&0!==t[mg].numberInLine||(this[mg]._isSplittable=!0,0)))}[fc](t){if(Al(this),this.break){if("auto"!==this.break.after||""!==this.break.afterTarget){const t=new pl({targetType:this.break.after,target:this.break.afterTarget,startNew:this.break.startNew.toString()});t[Yg]=this[Yg],this[lg](t),this.breakAfter.push(t)}if("auto"!==this.break.before||""!==this.break.beforeTarget){const t=new ml({targetType:this.break.before,target:this.break.beforeTarget,startNew:this.break.startNew.toString()});t[Yg]=this[Yg],this[lg](t),this.breakBefore.push(t)}if(""!==this.break.overflowTarget){const t=new xI({target:this.break.overflowTarget,leader:this.break.overflowLeader,trailer:this.break.overflowTrailer});t[Yg]=this[Yg],this[lg](t),this.overflow.push(t)}this[cc](this.break),this.break=null}if("hidden"===this.presence||"inactive"===this.presence)return Lc.EMPTY;if((this.breakBefore.children.length>1||this.breakAfter.children.length>1)&&N("XFA - Several breakBefore or breakAfter in subforms: please file a bug."),this.breakBefore.children.length>=1){const t=this.breakBefore.children[0];if(ol(t))return Lc.breakNode(t)}if(this[mg]?.afterBreakAfter)return Lc.EMPTY;Rh(this);const e=[],A={id:this[yc],class:[]};Mh(this,A.class),this[mg]||(this[mg]=Object.create(null)),Object.assign(this[mg],{children:e,line:null,attributes:A,attempt:0,numberInLine:0,availableSpace:{width:Math.min(this.w||1/0,t.width),height:Math.min(this.h||1/0,t.height)},width:0,height:0,prevHeight:0,currentWidth:0});const i=this[Jg](),s=i[mg].noLayoutFailure,a=this[Vg]();if(a||nl(this),!_h(this,t))return Lc.FAILURE;const n=new Set(["area","draw","exclGroup","field","subform","subformSet"]);if(this.layout.includes("row")){const t=this[Ug]().columnWidths;Array.isArray(t)&&t.length>0&&(this[mg].columnWidths=t,this[mg].currentColumn=0)}const r=Nh(this,"anchorType","dimensions","position","presence","border","margin","hAlign"),o=["xfaSubform"],g=xh(this);if(g&&o.push(g),A.style=r,A.class=o,this.name&&(A.xfaName=this.name),this.overflow){const e=this.overflow[Ng]();e.addLeader&&(e.addLeader=!1,gl(this,e.leader,t))}this[gc]();const c="lr-tb"===this.layout||"rl-tb"===this.layout,h=c?2:1;for(;this[mg].attempt<h;this[mg].attempt++){c&&1===this[mg].attempt&&(this[mg].numberInLine=0);const t=this[Ig]({filter:n,include:!0});if(t.success)break;if(t.isBreak())return this[oc](),t;if(c&&0===this[mg].attempt&&0===this[mg].numberInLine&&!i[mg].noLayoutFailure){this[mg].attempt=h;break}}if(this[oc](),a||rl(this),i[mg].noLayoutFailure=s,this[mg].attempt===h)return this.overflow&&(this[Jg]()[mg].overflowNode=this.overflow),a||delete this[mg],Lc.FAILURE;if(this.overflow){const e=this.overflow[Ng]();e.addTrailer&&(e.addTrailer=!1,gl(this,e.trailer,t))}let l=0,I=0;this.margin&&(l=this.margin.leftInset+this.margin.rightInset,I=this.margin.topInset+this.margin.bottomInset);const C=Math.max(this[mg].width+l,this.w||0),B=Math.max(this[mg].height+I,this.h||0),d=[this.x,this.y,C,B];if(""===this.w&&(r.width=wh(C)),""===this.h&&(r.height=wh(B)),("0px"===r.width||"0px"===r.height)&&0===e.length)return Lc.EMPTY;const u={name:"div",attributes:A,children:e};il(this,A);const Q=Lc.success(vh(this,u),d);if(this.breakAfter.children.length>=1){const t=this.breakAfter.children[0];if(ol(t))return this[mg].afterBreakAfter=Q,Lc.breakNode(t)}return delete this[mg],Q}}class $I extends Ch{constructor(t){super(Oh,"subformSet",!0),this.id=t.id||"",this.name=t.name||"",this.relation=Nc(t.relation,["ordered","choice","unordered"]),this.relevant=Mc(t.relevant),this.use=t.use||"",this.usehref=t.usehref||"",this.bookend=null,this.break=null,this.desc=null,this.extras=null,this.occur=null,this.overflow=null,this.breakAfter=new Bh,this.breakBefore=new Bh,this.subform=new Bh,this.subformSet=new Bh}*[Mg](){yield*tl(this)}[Ug](){let t=this[Hg]();for(;!(t instanceof zI);)t=t[Hg]();return t}[Og](){return!0}}class tC extends Qh{constructor(t){super(Oh,"subjectDN"),this.delimiter=t.delimiter||",",this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}[yg](){this[Eg]=new Map(this[Eg].split(this.delimiter).map((t=>((t=t.split("=",2))[0]=t[0].trim(),t))))}}class eC extends Ch{constructor(t){super(Oh,"subjectDNs",!0),this.id=t.id||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||"",this.subjectDN=new Bh}}class AC extends Ch{constructor(t){super(Oh,"submit",!0),this.embedPDF=Fc({data:t.embedPDF,defaultValue:0,validate:t=>1===t}),this.format=Nc(t.format,["xdp","formdata","pdf","urlencoded","xfd","xml"]),this.id=t.id||"",this.target=t.target||"",this.textEncoding=xc({data:t.textEncoding?t.textEncoding.toLowerCase():"",defaultValue:"",validate:t=>["utf-8","big-five","fontspecific","gbk","gb-18030","gb-2312","ksc-5601","none","shift-jis","ucs-2","utf-16"].includes(t)||t.match(/iso-8859-\d{2}/)}),this.use=t.use||"",this.usehref=t.usehref||"",this.xdpContent=t.xdpContent||"",this.encrypt=null,this.encryptData=new Bh,this.signData=new Bh}}class iC extends Ch{constructor(t){super(Oh,"template",!0),this.baseProfile=Nc(t.baseProfile,["full","interactiveForms"]),this.extras=null,this.subform=new Bh}[yg](){0===this.subform.children.length&&N("XFA - No subforms in template node."),this.subform.children.length>=2&&N("XFA - Several subforms in template node: please file a bug."),this[uc]=5e3}[Vg](){return!0}[Ic](t,e){return t.startsWith("#")?[this[Kg].get(t.slice(1))]:Wc(this,e,t,!0,!0)}*[Ec](){if(!this.subform.children.length)return Lc.success({name:"div",children:[]});this[mg]={overflowNode:null,firstUnsplittable:null,currentContentArea:null,currentPageArea:null,noLayoutFailure:!1,pageNumber:1,pagePosition:"first",oddOrEven:"odd",blankOrNotBlank:"nonBlank",paraStack:[]};const t=this.subform.children[0];t.pageSet[Bg]();const e=t.pageSet.pageArea.children,A={name:"div",children:[]};let i=null,s=null,a=null;if(t.breakBefore.children.length>=1?(s=t.breakBefore.children[0],a=s.target):t.subform.children.length>=1&&t.subform.children[0].breakBefore.children.length>=1?(s=t.subform.children[0].breakBefore.children[0],a=s.target):t.break?.beforeTarget?(s=t.break,a=s.beforeTarget):t.subform.children.length>=1&&t.subform.children[0].break?.beforeTarget&&(s=t.subform.children[0].break,a=s.beforeTarget),s){const t=this[Ic](a,s[Hg]());t instanceof NI&&(i=t,s[mg]={})}i||(i=e[0]),i[mg]={numberOfUse:1};const n=i[Hg]();n[mg]={numberOfUse:1,pageIndex:n.pageArea.children.indexOf(i),pageSetIndex:0};let r,o=null,g=null,c=!0,h=0,l=0;for(;;){if(c)h=0;else if(A.children.pop(),3==++h)return N("XFA - Something goes wrong: please file a bug."),A;r=null,this[mg].currentPageArea=i;const e=i[fc]().html;A.children.push(e),o&&(this[mg].noLayoutFailure=!0,e.children.push(o[fc](i[mg].space).html),o=null),g&&(this[mg].noLayoutFailure=!0,e.children.push(g[fc](i[mg].space).html),g=null);const s=i.contentArea.children,a=e.children.filter((t=>t.attributes.class.includes("xfaContentarea")));c=!1,this[mg].firstUnsplittable=null,this[mg].noLayoutFailure=!1;const n=e=>{const A=t[wg]();A&&(c||=A.children?.length>0,a[e].children.push(A))};for(let e=l,i=s.length;e<i;e++){const i=this[mg].currentContentArea=s[e],h={width:i.w,height:i.h};l=0,o&&(a[e].children.push(o[fc](h).html),o=null),g&&(a[e].children.push(g[fc](h).html),g=null);const I=t[fc](h);if(I.success)return I.html?(c||=I.html.children?.length>0,a[e].children.push(I.html)):!c&&A.children.length>1&&A.children.pop(),A;if(I.isBreak()){const t=I.breakNode;if(n(e),"auto"===t.targetType)continue;t.leader&&(o=this[Ic](t.leader,t[Hg]()),o=o?o[0]:null),t.trailer&&(g=this[Ic](t.trailer,t[Hg]()),g=g?g[0]:null),"pageArea"===t.targetType?(r=t[mg].target,e=1/0):t[mg].target?(r=t[mg].target,l=t[mg].index+1,e=1/0):e=t[mg].index}else if(this[mg].overflowNode){const t=this[mg].overflowNode;this[mg].overflowNode=null;const A=t[Ng](),i=A.target;A.addLeader=null!==A.leader,A.addTrailer=null!==A.trailer,n(e);const a=e;if(e=1/0,i instanceof NI)r=i;else if(i instanceof vl){const t=s.indexOf(i);-1!==t?t>a?e=t-1:l=t:(r=i[Hg](),l=r.contentArea.children.indexOf(i))}}else n(e)}this[mg].pageNumber+=1,r&&(r[$g]()?r[mg].numberOfUse+=1:r=null),i=r||i[Lg](),yield null}}}class sC extends Qh{constructor(t){super(Oh,"text"),this.id=t.id||"",this.maxChars=Fc({data:t.maxChars,defaultValue:0,validate:t=>t>=0}),this.name=t.name||"",this.rid=t.rid||"",this.use=t.use||"",this.usehref=t.usehref||""}[cg](){return!0}[sc](t){return t[ec]===bc.xhtml.id?(this[Eg]=t,!0):(N(`XFA - Invalid content in Text: ${t[Ac]}.`),!1)}[nc](t){this[Eg]instanceof Ch||super[nc](t)}[yg](){"string"==typeof this[Eg]&&(this[Eg]=this[Eg].replaceAll("\r\n","\n"))}[Ng](){return"string"==typeof this[Eg]?this[Eg].split(/[\u2029\u2028\n]/).reduce(((t,e)=>(e&&t.push(e),t)),[]).join("\n"):this[Eg][Qc]()}[fc](t){if("string"==typeof this[Eg]){const t=al(this[Eg]).html;return this[Eg].includes("\u2029")?(t.name="div",t.children=[],this[Eg].split("\u2029").map((t=>t.split(/[\u2028\n]/).reduce(((t,e)=>(t.push({name:"span",value:e},{name:"br"}),t)),[]))).forEach((e=>{t.children.push({name:"p",children:e})}))):/[\u2028\n]/.test(this[Eg])&&(t.name="div",t.children=[],this[Eg].split(/[\u2028\n]/).forEach((e=>{t.children.push({name:"span",value:e},{name:"br"})}))),Lc.success(t)}return this[Eg][fc](t)}}class aC extends Ch{constructor(t){super(Oh,"textEdit",!0),this.allowRichText=Fc({data:t.allowRichText,defaultValue:0,validate:t=>1===t}),this.hScrollPolicy=Nc(t.hScrollPolicy,["auto","off","on"]),this.id=t.id||"",this.multiLine=Fc({data:t.multiLine,defaultValue:"",validate:t=>0===t||1===t}),this.use=t.use||"",this.usehref=t.usehref||"",this.vScrollPolicy=Nc(t.vScrollPolicy,["auto","off","on"]),this.border=null,this.comb=null,this.extras=null,this.margin=null}[fc](t){const e=Nh(this,"border","font","margin");let A;const i=this[Hg]()[Hg]();return""===this.multiLine&&(this.multiLine=i instanceof ql?1:0),A=1===this.multiLine?{name:"textarea",attributes:{dataId:i[fg]?.[yc]||i[yc],fieldId:i[yc],class:["xfaTextfield"],style:e,"aria-label":sl(i),"aria-required":!1}}:{name:"input",attributes:{type:"text",dataId:i[fg]?.[yc]||i[yc],fieldId:i[yc],class:["xfaTextfield"],style:e,"aria-label":sl(i),"aria-required":!1}},el(i)&&(A.attributes["aria-required"]=!0,A.attributes.required=!0),Lc.success({name:"label",attributes:{class:["xfaLabel"]},children:[A]})}}class nC extends fh{constructor(t){super(Oh,"time"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}[yg](){const t=this[Eg].trim();this[Eg]=t?new Date(t):null}[fc](t){return al(this[Eg]?this[Eg].toString():"")}}class rC extends Ch{constructor(t){super(Oh,"timeStamp"),this.id=t.id||"",this.server=t.server||"",this.type=Nc(t.type,["optional","required"]),this.use=t.use||"",this.usehref=t.usehref||""}}class oC extends fh{constructor(t){super(Oh,"toolTip"),this.id=t.id||"",this.rid=t.rid||"",this.use=t.use||"",this.usehref=t.usehref||""}}class gC extends Ch{constructor(t){super(Oh,"traversal",!0),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.traverse=new Bh}}class cC extends Ch{constructor(t){super(Oh,"traverse",!0),this.id=t.id||"",this.operation=Nc(t.operation,["next","back","down","first","left","right","up"]),this.ref=t.ref||"",this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.script=null}get name(){return this.operation}[zg](){return!1}}class hC extends Ch{constructor(t){super(Oh,"ui",!0),this.id=t.id||"",this.use=t.use||"",this.usehref=t.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}[Ng](){if(void 0===this[mg]){for(const t of Object.getOwnPropertyNames(this)){if("extras"===t||"picture"===t)continue;const e=this[t];if(e instanceof Ch)return this[mg]=e,e}this[mg]=null}return this[mg]}[fc](t){const e=this[Ng]();return e?e[fc](t):Lc.EMPTY}}class lC extends Ch{constructor(t){super(Oh,"validate",!0),this.formatTest=Nc(t.formatTest,["warning","disabled","error"]),this.id=t.id||"",this.nullTest=Nc(t.nullTest,["disabled","error","warning"]),this.scriptTest=Nc(t.scriptTest,["error","disabled","warning"]),this.use=t.use||"",this.usehref=t.usehref||"",this.extras=null,this.message=null,this.picture=null,this.script=null}}class IC extends Ch{constructor(t){super(Oh,"value",!0),this.id=t.id||"",this.override=Fc({data:t.override,defaultValue:0,validate:t=>1===t}),this.relevant=Mc(t.relevant),this.use=t.use||"",this.usehref=t.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}[dc](t){const e=this[Hg]();if(e instanceof sI&&e.ui?.imageEdit)return this.image||(this.image=new lI({}),this[lg](this.image)),void(this.image[Eg]=t[Eg]);const A=t[Ac];if(null===this[A]){for(const t of Object.getOwnPropertyNames(this)){const e=this[t];e instanceof Ch&&(this[t]=null,this[cc](e))}this[t[Ac]]=t,this[lg](t)}else this[A][Eg]=t[Eg]}[Qc](){if(this.exData)return"string"==typeof this.exData[Eg]?this.exData[Eg].trim():this.exData[Eg][Qc]().trim();for(const t of Object.getOwnPropertyNames(this)){if("image"===t)continue;const e=this[t];if(e instanceof Ch)return(e[Eg]||"").toString().trim()}return null}[fc](t){for(const e of Object.getOwnPropertyNames(this)){const A=this[e];if(A instanceof Ch)return A[fc](t)}return Lc.EMPTY}}class CC extends Ch{constructor(t){super(Oh,"variables",!0),this.id=t.id||"",this.use=t.use||"",this.usehref=t.usehref||"",this.boolean=new Bh,this.date=new Bh,this.dateTime=new Bh,this.decimal=new Bh,this.exData=new Bh,this.float=new Bh,this.image=new Bh,this.integer=new Bh,this.manifest=new Bh,this.script=new Bh,this.text=new Bh,this.time=new Bh}[zg](){return!0}}class BC{static[wc](t,e){if(BC.hasOwnProperty(t)){const A=BC[t](e);return A[Bc](e),A}}static appearanceFilter(t){return new cl(t)}static arc(t){return new hl(t)}static area(t){return new ll(t)}static assist(t){return new Il(t)}static barcode(t){return new Cl(t)}static bind(t){return new Bl(t)}static bindItems(t){return new dl(t)}static bookend(t){return new ul(t)}static boolean(t){return new Ql(t)}static border(t){return new El(t)}static break(t){return new fl(t)}static breakAfter(t){return new pl(t)}static breakBefore(t){return new ml(t)}static button(t){return new yl(t)}static calculate(t){return new wl(t)}static caption(t){return new bl(t)}static certificate(t){return new Dl(t)}static certificates(t){return new kl(t)}static checkButton(t){return new Sl(t)}static choiceList(t){return new Fl(t)}static color(t){return new Rl(t)}static comb(t){return new xl(t)}static connect(t){return new Nl(t)}static contentArea(t){return new vl(t)}static corner(t){return new Gl(t)}static date(t){return new Ml(t)}static dateTime(t){return new Ll(t)}static dateTimeEdit(t){return new Ul(t)}static decimal(t){return new Hl(t)}static defaultUi(t){return new Jl(t)}static desc(t){return new Yl(t)}static digestMethod(t){return new Tl(t)}static digestMethods(t){return new Kl(t)}static draw(t){return new ql(t)}static edge(t){return new Pl(t)}static encoding(t){return new _l(t)}static encodings(t){return new Ol(t)}static encrypt(t){return new Wl(t)}static encryptData(t){return new Zl(t)}static encryption(t){return new jl(t)}static encryptionMethod(t){return new Vl(t)}static encryptionMethods(t){return new Xl(t)}static event(t){return new zl(t)}static exData(t){return new $l(t)}static exObject(t){return new tI(t)}static exclGroup(t){return new eI(t)}static execute(t){return new AI(t)}static extras(t){return new iI(t)}static field(t){return new sI(t)}static fill(t){return new aI(t)}static filter(t){return new nI(t)}static float(t){return new rI(t)}static font(t){return new oI(t)}static format(t){return new gI(t)}static handler(t){return new cI(t)}static hyphenation(t){return new hI(t)}static image(t){return new lI(t)}static imageEdit(t){return new II(t)}static integer(t){return new CI(t)}static issuers(t){return new BI(t)}static items(t){return new dI(t)}static keep(t){return new uI(t)}static keyUsage(t){return new QI(t)}static line(t){return new EI(t)}static linear(t){return new fI(t)}static lockDocument(t){return new pI(t)}static manifest(t){return new mI(t)}static margin(t){return new yI(t)}static mdp(t){return new wI(t)}static medium(t){return new bI(t)}static message(t){return new DI(t)}static numericEdit(t){return new kI(t)}static occur(t){return new SI(t)}static oid(t){return new FI(t)}static oids(t){return new RI(t)}static overflow(t){return new xI(t)}static pageArea(t){return new NI(t)}static pageSet(t){return new vI(t)}static para(t){return new GI(t)}static passwordEdit(t){return new MI(t)}static pattern(t){return new LI(t)}static picture(t){return new UI(t)}static proto(t){return new HI(t)}static radial(t){return new JI(t)}static reason(t){return new YI(t)}static reasons(t){return new TI(t)}static rectangle(t){return new KI(t)}static ref(t){return new qI(t)}static script(t){return new PI(t)}static setProperty(t){return new _I(t)}static signData(t){return new OI(t)}static signature(t){return new WI(t)}static signing(t){return new ZI(t)}static solid(t){return new jI(t)}static speak(t){return new VI(t)}static stipple(t){return new XI(t)}static subform(t){return new zI(t)}static subformSet(t){return new $I(t)}static subjectDN(t){return new tC(t)}static subjectDNs(t){return new eC(t)}static submit(t){return new AC(t)}static template(t){return new iC(t)}static text(t){return new sC(t)}static textEdit(t){return new aC(t)}static time(t){return new nC(t)}static timeStamp(t){return new rC(t)}static toolTip(t){return new oC(t)}static traversal(t){return new gC(t)}static traverse(t){return new cC(t)}static ui(t){return new hC(t)}static validate(t){return new lC(t)}static value(t){return new IC(t)}static variables(t){return new CC(t)}}const dC=bc.datasets.id;function uC(t){const e=new sC({});return e[Eg]=t,e}class QC{constructor(t){this.root=t,this.datasets=t.datasets,this.data=t.datasets?.data||new uh(bc.datasets.id,"data"),this.emptyMerge=0===this.data[Gg]().length,this.root.form=this.form=t.template[ug]()}_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(t,e,A){if(t[fg]=e,t[Tg]())if(e[Wg]()){const A=e[xg]();t[dc](uC(A))}else if(t instanceof sI&&"multiSelect"===t.ui?.choiceList?.open){const A=e[Gg]().map((t=>t[Eg].trim())).join("\n");t[dc](uC(A))}else this._isConsumeData()&&N("XFA - Nodes haven't the same type.");else!e[Wg]()||this._isMatchTemplate()?this._bindElement(t,e):N("XFA - Nodes haven't the same type.")}_findDataByNameToConsume(t,e,A,i){if(!t)return null;let s,a;for(let i=0;i<3;i++){for(s=A[vg](t,!1,!0);a=s.next().value,a;)if(e===a[Wg]())return a;if(A[ec]===bc.datasets.id&&"data"===A[Ac])break;A=A[Hg]()}return i?(s=this.data[vg](t,!0,!1),a=s.next().value,a||(s=this.data[bg](t,!0),a=s.next().value,a?.[Wg]()?a:null)):null}_setProperties(t,e){if(t.hasOwnProperty("setProperty"))for(const{ref:A,target:i,connection:s}of t.setProperty.children){if(s)continue;if(!A)continue;const a=Wc(this.root,e,A,!1,!1);if(!a){N(`XFA - Invalid reference: ${A}.`);continue}const[n]=a;if(!n[Zg](this.data)){N("XFA - Invalid node: must be a data node.");continue}const r=Wc(this.root,t,i,!1,!1);if(!r){N(`XFA - Invalid target: ${i}.`);continue}const[o]=r;if(!o[Zg](t)){N("XFA - Invalid target: must be a property or subproperty.");continue}const g=o[Hg]();if(o instanceof _I||g instanceof _I){N("XFA - Invalid target: cannot be a setProperty or one of its properties.");continue}if(o instanceof dl||g instanceof dl){N("XFA - Invalid target: cannot be a bindItems or one of its properties.");continue}const c=n[Qc](),h=o[Ac];if(o instanceof dh){const t=Object.create(null);t[h]=c;const e=Reflect.construct(Object.getPrototypeOf(g).constructor,[t]);g[h]=e[h]}else o.hasOwnProperty(Eg)?(o[fg]=n,o[Eg]=c,o[yg]()):N("XFA - Invalid node to use in setProperty")}}_bindItems(t,e){if(!t.hasOwnProperty("items")||!t.hasOwnProperty("bindItems")||t.bindItems.isEmpty())return;for(const e of t.items.children)t[cc](e);t.items.clear();const A=new dI({}),i=new dI({});t[lg](A),t.items.push(A),t[lg](i),t.items.push(i);for(const{ref:s,labelRef:a,valueRef:n,connection:r}of t.bindItems.children){if(r)continue;if(!s)continue;const t=Wc(this.root,e,s,!1,!1);if(t)for(const e of t){if(!e[Zg](this.datasets)){N(`XFA - Invalid ref (${s}): must be a datasets child.`);continue}const t=Wc(this.root,e,a,!0,!1);if(!t){N(`XFA - Invalid label: ${a}.`);continue}const[r]=t;if(!r[Zg](this.datasets)){N("XFA - Invalid label: must be a datasets child.");continue}const o=Wc(this.root,e,n,!0,!1);if(!o){N(`XFA - Invalid value: ${n}.`);continue}const[g]=o;if(!g[Zg](this.datasets)){N("XFA - Invalid value: must be a datasets child.");continue}const c=uC(r[Qc]()),h=uC(g[Qc]());A[lg](c),A.text.push(c),i[lg](h),i.text.push(h)}else N(`XFA - Invalid reference: ${s}.`)}}_bindOccurrences(t,e,A){let i;if(e.length>1&&(i=t[ug](),i[cc](i.occur),i.occur=null),this._bindValue(t,e[0],A),this._setProperties(t,e[0]),this._bindItems(t,e[0]),1===e.length)return;const s=t[Hg](),a=t[Ac],n=s[qg](t);for(let t=1,r=e.length;t<r;t++){const r=e[t],o=i[ug]();s[a].push(o),s[Pg](n+t,o),this._bindValue(o,r,A),this._setProperties(o,r),this._bindItems(o,r)}}_createOccurrences(t){if(!this.emptyMerge)return;const{occur:e}=t;if(!e||e.initial<=1)return;const A=t[Hg](),i=t[Ac];if(!(A[i]instanceof Bh))return;let s;s=t.name?A[i].children.filter((e=>e.name===t.name)).length:A[i].children.length;const a=A[qg](t)+1,n=e.initial-s;if(n){const e=t[ug]();e[cc](e.occur),e.occur=null,A[i].push(e),A[Pg](a,e);for(let t=1;t<n;t++){const s=e[ug]();A[i].push(s),A[Pg](a+t,s)}}}_getOccurInfo(t){const{name:e,occur:A}=t;if(!A||!e)return[1,1];const i=-1===A.max?1/0:A.max;return[A.min,i]}_setAndBind(t,e){this._setProperties(t,e),this._bindItems(t,e),this._bindElement(t,e)}_bindElement(t,e){const A=[];this._createOccurrences(t);for(const i of t[Gg]()){if(i[fg])continue;if(void 0===this._mergeMode&&"subform"===i[Ac]){this._mergeMode="consumeData"===i.mergeMode;const t=e[Gg]();if(t.length>0)this._bindOccurrences(i,[t[0]],null);else if(this.emptyMerge){const t=e[ec]===dC?-1:e[ec],A=i[fg]=new uh(t,i.name||"root");e[lg](A),this._bindElement(i,A)}continue}if(!i[Og]())continue;let t=!1,s=null,a=null,n=null;if(i.bind){switch(i.bind.match){case"none":this._setAndBind(i,e);continue;case"global":t=!0;break;case"dataRef":if(!i.bind.ref){N(`XFA - ref is empty in node ${i[Ac]}.`),this._setAndBind(i,e);continue}a=i.bind.ref}i.bind.picture&&(s=i.bind.picture[Eg])}const[r,o]=this._getOccurInfo(i);if(a){if(n=Wc(this.root,e,a,!0,!1),null===n){if(n=Zc(this.data,e,a),!n)continue;this._isConsumeData()&&(n[Qg]=!0),this._setAndBind(i,n);continue}this._isConsumeData()&&(n=n.filter((t=>!t[Qg]))),n.length>o?n=n.slice(0,o):0===n.length&&(n=null),n&&this._isConsumeData()&&n.forEach((t=>{t[Qg]=!0}))}else{if(!i.name){this._setAndBind(i,e);continue}if(this._isConsumeData()){const A=[];for(;A.length<o;){const s=this._findDataByNameToConsume(i.name,i[Tg](),e,t);if(!s)break;s[Qg]=!0,A.push(s)}n=A.length>0?A:null}else{if(n=e[vg](i.name,!1,this.emptyMerge).next().value,!n){if(0===r){A.push(i);continue}const t=e[ec]===dC?-1:e[ec];n=i[fg]=new uh(t,i.name),this.emptyMerge&&(n[Qg]=!0),e[lg](n),this._setAndBind(i,n);continue}this.emptyMerge&&(n[Qg]=!0),n=[n]}}n?this._bindOccurrences(i,n,s):r>0?this._setAndBind(i,e):A.push(i)}A.forEach((t=>t[Hg]()[cc](t)))}}class EC{constructor(t,e){this.data=e,this.dataset=t.datasets||null}serialize(t){const e=[[-1,this.data[Gg]()]];for(;e.length>0;){const A=e.at(-1),[i,s]=A;if(i+1===s.length){e.pop();continue}const a=s[++A[0]],n=t.get(a[yc]);if(n)a[dc](n);else{const e=a[Dg]();for(const A of e.values()){const e=t.get(A[yc]);if(e){A[dc](e);break}}}const r=a[Gg]();r.length>0&&e.push([-1,r])}const A=['<xfa:datasets xmlns:xfa="http://www.xfa.org/schema/xfa-data/1.0/">'];if(this.dataset)for(const t of this.dataset[Gg]())"data"!==t[Ac]&&t[pc](A);return this.data[pc](A),A.push("</xfa:datasets>"),A.join("")}}const fC=bc.config.id;class pC extends Ch{constructor(t){super(fC,"acrobat",!0),this.acrobat7=null,this.autoSave=null,this.common=null,this.validate=null,this.validateApprovalSignatures=null,this.submitUrl=new Bh}}class mC extends Ch{constructor(t){super(fC,"acrobat7",!0),this.dynamicRender=null}}class yC extends Eh{constructor(t){super(fC,"ADBE_JSConsole",["delegate","Enable","Disable"])}}class wC extends Eh{constructor(t){super(fC,"ADBE_JSDebugger",["delegate","Enable","Disable"])}}class bC extends mh{constructor(t){super(fC,"addSilentPrint")}}class DC extends mh{constructor(t){super(fC,"addViewerPreferences")}}class kC extends yh{constructor(t){super(fC,"adjustData")}}class SC extends ph{constructor(t){super(fC,"adobeExtensionLevel",0,(t=>t>=1&&t<=8))}}class FC extends Ch{constructor(t){super(fC,"agent",!0),this.name=t.name?t.name.trim():"",this.common=new Bh}}class RC extends Qh{constructor(t){super(fC,"alwaysEmbed")}}class xC extends fh{constructor(t){super(fC,"amd")}}class NC extends Ch{constructor(t){super(fC,"area"),this.level=Fc({data:t.level,defaultValue:0,validate:t=>t>=1&&t<=3}),this.name=Nc(t.name,["","barcode","coreinit","deviceDriver","font","general","layout","merge","script","signature","sourceSet","templateCache"])}}class vC extends Eh{constructor(t){super(fC,"attributes",["preserve","delegate","ignore"])}}class GC extends Eh{constructor(t){super(fC,"autoSave",["disabled","enabled"])}}class MC extends fh{constructor(t){super(fC,"base")}}class LC extends Ch{constructor(t){super(fC,"batchOutput"),this.format=Nc(t.format,["none","concat","zip","zipCompress"])}}class UC extends Qh{constructor(t){super(fC,"behaviorOverride")}[yg](){this[Eg]=new Map(this[Eg].trim().split(/\s+/).filter((t=>t.includes(":"))).map((t=>t.split(":",2))))}}class HC extends Ch{constructor(t){super(fC,"cache",!0),this.templateCache=null}}class JC extends mh{constructor(t){super(fC,"change")}}class YC extends Ch{constructor(t){super(fC,"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 Bh}}class TC extends Ch{constructor(t){super(fC,"compress"),this.scope=Nc(t.scope,["imageOnly","document"])}}class KC extends mh{constructor(t){super(fC,"compressLogicalStructure")}}class qC extends yh{constructor(t){super(fC,"compressObjectStream")}}class PC extends Ch{constructor(t){super(fC,"compression",!0),this.compressLogicalStructure=null,this.compressObjectStream=null,this.level=null,this.type=null}}class _C extends Ch{constructor(t){super(fC,"config",!0),this.acrobat=null,this.present=null,this.trace=null,this.agent=new Bh}}class OC extends Eh{constructor(t){super(fC,"conformance",["A","B"])}}class WC extends mh{constructor(t){super(fC,"contentCopy")}}class ZC extends ph{constructor(t){super(fC,"copies",1,(t=>t>=1))}}class jC extends fh{constructor(t){super(fC,"creator")}}class VC extends ph{constructor(t){super(fC,"currentPage",0,(t=>t>=0))}}class XC extends Ch{constructor(t){super(fC,"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 Bh,this.transform=new Bh}}class zC extends Ch{constructor(t){super(fC,"debug",!0),this.uri=null}}class $C extends Qh{constructor(t){super(fC,"defaultTypeface"),this.writingScript=Nc(t.writingScript,["*","Arabic","Cyrillic","EastEuropeanRoman","Greek","Hebrew","Japanese","Korean","Roman","SimplifiedChinese","Thai","TraditionalChinese","Vietnamese"])}}class tB extends Eh{constructor(t){super(fC,"destination",["pdf","pcl","ps","webClient","zpl"])}}class eB extends mh{constructor(t){super(fC,"documentAssembly")}}class AB extends Ch{constructor(t){super(fC,"driver",!0),this.name=t.name?t.name.trim():"",this.fontInfo=null,this.xdc=null}}class iB extends Eh{constructor(t){super(fC,"duplexOption",["simplex","duplexFlipLongEdge","duplexFlipShortEdge"])}}class sB extends Eh{constructor(t){super(fC,"dynamicRender",["forbidden","required"])}}class aB extends mh{constructor(t){super(fC,"embed")}}class nB extends mh{constructor(t){super(fC,"encrypt")}}class rB extends Ch{constructor(t){super(fC,"encryption",!0),this.encrypt=null,this.encryptionLevel=null,this.permissions=null}}class oB extends Eh{constructor(t){super(fC,"encryptionLevel",["40bit","128bit"])}}class gB extends fh{constructor(t){super(fC,"enforce")}}class cB extends Ch{constructor(t){super(fC,"equate"),this.force=Fc({data:t.force,defaultValue:1,validate:t=>0===t}),this.from=t.from||"",this.to=t.to||""}}class hB extends Ch{constructor(t){super(fC,"equateRange"),this.from=t.from||"",this.to=t.to||"",this._unicodeRange=t.unicodeRange||""}get unicodeRange(){const t=[],e=/U\+([0-9a-fA-F]+)/,A=this._unicodeRange;for(let i of A.split(",").map((t=>t.trim())).filter((t=>!!t)))i=i.split("-",2).map((t=>{const A=t.match(e);return A?parseInt(A[1],16):0})),1===i.length&&i.push(i[0]),t.push(i);return L(this,"unicodeRange",t)}}class lB extends Qh{constructor(t){super(fC,"exclude")}[yg](){this[Eg]=this[Eg].trim().split(/\s+/).filter((t=>t&&["calculate","close","enter","exit","initialize","ready","validate"].includes(t)))}}class IB extends fh{constructor(t){super(fC,"excludeNS")}}class CB extends Eh{constructor(t){super(fC,"flipLabel",["usePrinterSetting","on","off"])}}class BB extends Ch{constructor(t){super(fC,"fontInfo",!0),this.embed=null,this.map=null,this.subsetBelow=null,this.alwaysEmbed=new Bh,this.defaultTypeface=new Bh,this.neverEmbed=new Bh}}class dB extends mh{constructor(t){super(fC,"formFieldFilling")}}class uB extends fh{constructor(t){super(fC,"groupParent")}}class QB extends Eh{constructor(t){super(fC,"ifEmpty",["dataValue","dataGroup","ignore","remove"])}}class EB extends fh{constructor(t){super(fC,"includeXDPContent")}}class fB extends Eh{constructor(t){super(fC,"incrementalLoad",["none","forwardOnly"])}}class pB extends mh{constructor(t){super(fC,"incrementalMerge")}}class mB extends mh{constructor(t){super(fC,"interactive")}}class yB extends Eh{constructor(t){super(fC,"jog",["usePrinterSetting","none","pageSet"])}}class wB extends Ch{constructor(t){super(fC,"labelPrinter",!0),this.name=Nc(t.name,["zpl","dpl","ipl","tcpl"]),this.batchOutput=null,this.flipLabel=null,this.fontInfo=null,this.xdc=null}}class bB extends Eh{constructor(t){super(fC,"layout",["paginate","panel"])}}class DB extends ph{constructor(t){super(fC,"level",0,(t=>t>0))}}class kB extends mh{constructor(t){super(fC,"linearized")}}class SB extends fh{constructor(t){super(fC,"locale")}}class FB extends fh{constructor(t){super(fC,"localeSet")}}class RB extends Ch{constructor(t){super(fC,"log",!0),this.mode=null,this.threshold=null,this.to=null,this.uri=null}}class xB extends Ch{constructor(t){super(fC,"map",!0),this.equate=new Bh,this.equateRange=new Bh}}class NB extends Ch{constructor(t){super(fC,"mediumInfo",!0),this.map=null}}class vB extends Ch{constructor(t){super(fC,"message",!0),this.msgId=null,this.severity=null}}class GB extends Ch{constructor(t){super(fC,"messaging",!0),this.message=new Bh}}class MB extends Eh{constructor(t){super(fC,"mode",["append","overwrite"])}}class LB extends mh{constructor(t){super(fC,"modifyAnnots")}}class UB extends ph{constructor(t){super(fC,"msgId",1,(t=>t>=1))}}class HB extends fh{constructor(t){super(fC,"nameAttr")}}class JB extends Qh{constructor(t){super(fC,"neverEmbed")}}class YB extends ph{constructor(t){super(fC,"numberOfCopies",null,(t=>t>=2&&t<=5))}}class TB extends Ch{constructor(t){super(fC,"openAction",!0),this.destination=null}}class KB extends Ch{constructor(t){super(fC,"output",!0),this.to=null,this.type=null,this.uri=null}}class qB extends fh{constructor(t){super(fC,"outputBin")}}class PB extends Ch{constructor(t){super(fC,"outputXSL",!0),this.uri=null}}class _B extends Eh{constructor(t){super(fC,"overprint",["none","both","draw","field"])}}class OB extends fh{constructor(t){super(fC,"packets")}[yg](){"*"!==this[Eg]&&(this[Eg]=this[Eg].trim().split(/\s+/).filter((t=>["config","datasets","template","xfdf","xslt"].includes(t))))}}class WB extends Ch{constructor(t){super(fC,"pageOffset"),this.x=Fc({data:t.x,defaultValue:"useXDCSetting",validate:t=>!0}),this.y=Fc({data:t.y,defaultValue:"useXDCSetting",validate:t=>!0})}}class ZB extends fh{constructor(t){super(fC,"pageRange")}[yg](){const t=this[Eg].trim().split(/\s+/).map((t=>parseInt(t,10))),e=[];for(let A=0,i=t.length;A<i;A+=2)e.push(t.slice(A,A+2));this[Eg]=e}}class jB extends Eh{constructor(t){super(fC,"pagination",["simplex","duplexShortEdge","duplexLongEdge"])}}class VB extends Eh{constructor(t){super(fC,"paginationOverride",["none","forceDuplex","forceDuplexLongEdge","forceDuplexShortEdge","forceSimplex"])}}class XB extends ph{constructor(t){super(fC,"part",1,(t=>!1))}}class zB extends Ch{constructor(t){super(fC,"pcl",!0),this.name=t.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 $B extends Ch{constructor(t){super(fC,"pdf",!0),this.name=t.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 td extends Ch{constructor(t){super(fC,"pdfa",!0),this.amd=null,this.conformance=null,this.includeXDPContent=null,this.part=null}}class ed extends Ch{constructor(t){super(fC,"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 Ad extends mh{constructor(t){super(fC,"pickTrayByPDFSize")}}class id extends fh{constructor(t){super(fC,"picture")}}class sd extends mh{constructor(t){super(fC,"plaintextMetadata")}}class ad extends Eh{constructor(t){super(fC,"presence",["preserve","dissolve","dissolveStructure","ignore","remove"])}}class nd extends Ch{constructor(t){super(fC,"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 Bh,this.labelPrinter=new Bh,this.pcl=new Bh,this.pdf=new Bh,this.ps=new Bh,this.submitUrl=new Bh,this.webClient=new Bh,this.zpl=new Bh}}class rd extends mh{constructor(t){super(fC,"print")}}class od extends mh{constructor(t){super(fC,"printHighQuality")}}class gd extends Eh{constructor(t){super(fC,"printScaling",["appdefault","noScaling"])}}class cd extends fh{constructor(t){super(fC,"printerName")}}class hd extends fh{constructor(t){super(fC,"producer")}}class ld extends Ch{constructor(t){super(fC,"ps",!0),this.name=t.name||"",this.batchOutput=null,this.fontInfo=null,this.jog=null,this.mediumInfo=null,this.outputBin=null,this.staple=null,this.xdc=null}}class Id extends Qh{constructor(t){super(fC,"range")}[yg](){this[Eg]=this[Eg].trim().split(/\s*,\s*/,2).map((t=>t.split("-").map((t=>parseInt(t.trim(),10))))).filter((t=>t.every((t=>!isNaN(t))))).map((t=>(1===t.length&&t.push(t[0]),t)))}}class Cd extends Qh{constructor(t){super(fC,"record")}[yg](){this[Eg]=this[Eg].trim();const t=parseInt(this[Eg],10);!isNaN(t)&&t>=0&&(this[Eg]=t)}}class Bd extends Qh{constructor(t){super(fC,"relevant")}[yg](){this[Eg]=this[Eg].trim().split(/\s+/)}}class dd extends Qh{constructor(t){super(fC,"rename")}[yg](){this[Eg]=this[Eg].trim(),(this[Eg].toLowerCase().startsWith("xml")||new RegExp("[\\p{L}_][\\p{L}\\d._\\p{M}-]*","u").test(this[Eg]))&&N("XFA - Rename: invalid XFA name")}}class ud extends Eh{constructor(t){super(fC,"renderPolicy",["server","client"])}}class Qd extends Eh{constructor(t){super(fC,"runScripts",["both","client","none","server"])}}class Ed extends Ch{constructor(t){super(fC,"script",!0),this.currentPage=null,this.exclude=null,this.runScripts=null}}class fd extends Eh{constructor(t){super(fC,"scriptModel",["XFA","none"])}}class pd extends Eh{constructor(t){super(fC,"severity",["ignore","error","information","trace","warning"])}}class md extends Ch{constructor(t){super(fC,"silentPrint",!0),this.addSilentPrint=null,this.printerName=null}}class yd extends Ch{constructor(t){super(fC,"staple"),this.mode=Nc(t.mode,["usePrinterSetting","on","off"])}}class wd extends fh{constructor(t){super(fC,"startNode")}}class bd extends ph{constructor(t){super(fC,"startPage",0,(t=>!0))}}class Dd extends Eh{constructor(t){super(fC,"submitFormat",["html","delegate","fdf","xml","pdf"])}}class kd extends fh{constructor(t){super(fC,"submitUrl")}}class Sd extends ph{constructor(t){super(fC,"subsetBelow",100,(t=>t>=0&&t<=100))}}class Fd extends mh{constructor(t){super(fC,"suppressBanner")}}class Rd extends mh{constructor(t){super(fC,"tagged")}}class xd extends Ch{constructor(t){super(fC,"template",!0),this.base=null,this.relevant=null,this.startPage=null,this.uri=null,this.xsl=null}}class Nd extends Eh{constructor(t){super(fC,"threshold",["trace","error","information","warning"])}}class vd extends Eh{constructor(t){super(fC,"to",["null","memory","stderr","stdout","system","uri"])}}class Gd extends Ch{constructor(t){super(fC,"templateCache"),this.maxEntries=Fc({data:t.maxEntries,defaultValue:5,validate:t=>t>=0})}}class Md extends Ch{constructor(t){super(fC,"trace",!0),this.area=new Bh}}class Ld extends Ch{constructor(t){super(fC,"transform",!0),this.groupParent=null,this.ifEmpty=null,this.nameAttr=null,this.picture=null,this.presence=null,this.rename=null,this.whitespace=null}}class Ud extends Eh{constructor(t){super(fC,"type",["none","ascii85","asciiHex","ccittfax","flate","lzw","runLength","native","xdp","mergedXDP"])}}class Hd extends fh{constructor(t){super(fC,"uri")}}class Jd extends Eh{constructor(t){super(fC,"validate",["preSubmit","prePrint","preExecute","preSave"])}}class Yd extends Qh{constructor(t){super(fC,"validateApprovalSignatures")}[yg](){this[Eg]=this[Eg].trim().split(/\s+/).filter((t=>["docReady","postSign"].includes(t)))}}class Td extends Eh{constructor(t){super(fC,"validationMessaging",["allMessagesIndividually","allMessagesTogether","firstMessageOnly","noMessages"])}}class Kd extends Eh{constructor(t){super(fC,"version",["1.7","1.6","1.5","1.4","1.3","1.2"])}}class qd extends Ch{constructor(t){super(fC,"VersionControl"),this.outputBelow=Nc(t.outputBelow,["warn","error","update"]),this.sourceAbove=Nc(t.sourceAbove,["warn","error"]),this.sourceBelow=Nc(t.sourceBelow,["update","maintain"])}}class Pd extends Ch{constructor(t){super(fC,"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 _d extends Ch{constructor(t){super(fC,"webClient",!0),this.name=t.name?t.name.trim():"",this.fontInfo=null,this.xdc=null}}class Od extends Eh{constructor(t){super(fC,"whitespace",["preserve","ltrim","normalize","rtrim","trim"])}}class Wd extends Qh{constructor(t){super(fC,"window")}[yg](){const t=this[Eg].trim().split(/\s*,\s*/,2).map((t=>parseInt(t,10)));t.some((t=>isNaN(t)))?this[Eg]=[0,0]:(1===t.length&&t.push(t[0]),this[Eg]=t)}}class Zd extends Ch{constructor(t){super(fC,"xdc",!0),this.uri=new Bh,this.xsl=new Bh}}class jd extends Ch{constructor(t){super(fC,"xdp",!0),this.packets=null}}class Vd extends Ch{constructor(t){super(fC,"xsl",!0),this.debug=null,this.uri=null}}class Xd extends Ch{constructor(t){super(fC,"zpl",!0),this.name=t.name?t.name.trim():"",this.batchOutput=null,this.flipLabel=null,this.fontInfo=null,this.xdc=null}}class zd{static[wc](t,e){if(zd.hasOwnProperty(t))return zd[t](e)}static acrobat(t){return new pC(t)}static acrobat7(t){return new mC(t)}static ADBE_JSConsole(t){return new yC(t)}static ADBE_JSDebugger(t){return new wC(t)}static addSilentPrint(t){return new bC(t)}static addViewerPreferences(t){return new DC(t)}static adjustData(t){return new kC(t)}static adobeExtensionLevel(t){return new SC(t)}static agent(t){return new FC(t)}static alwaysEmbed(t){return new RC(t)}static amd(t){return new xC(t)}static area(t){return new NC(t)}static attributes(t){return new vC(t)}static autoSave(t){return new GC(t)}static base(t){return new MC(t)}static batchOutput(t){return new LC(t)}static behaviorOverride(t){return new UC(t)}static cache(t){return new HC(t)}static change(t){return new JC(t)}static common(t){return new YC(t)}static compress(t){return new TC(t)}static compressLogicalStructure(t){return new KC(t)}static compressObjectStream(t){return new qC(t)}static compression(t){return new PC(t)}static config(t){return new _C(t)}static conformance(t){return new OC(t)}static contentCopy(t){return new WC(t)}static copies(t){return new ZC(t)}static creator(t){return new jC(t)}static currentPage(t){return new VC(t)}static data(t){return new XC(t)}static debug(t){return new zC(t)}static defaultTypeface(t){return new $C(t)}static destination(t){return new tB(t)}static documentAssembly(t){return new eB(t)}static driver(t){return new AB(t)}static duplexOption(t){return new iB(t)}static dynamicRender(t){return new sB(t)}static embed(t){return new aB(t)}static encrypt(t){return new nB(t)}static encryption(t){return new rB(t)}static encryptionLevel(t){return new oB(t)}static enforce(t){return new gB(t)}static equate(t){return new cB(t)}static equateRange(t){return new hB(t)}static exclude(t){return new lB(t)}static excludeNS(t){return new IB(t)}static flipLabel(t){return new CB(t)}static fontInfo(t){return new BB(t)}static formFieldFilling(t){return new dB(t)}static groupParent(t){return new uB(t)}static ifEmpty(t){return new QB(t)}static includeXDPContent(t){return new EB(t)}static incrementalLoad(t){return new fB(t)}static incrementalMerge(t){return new pB(t)}static interactive(t){return new mB(t)}static jog(t){return new yB(t)}static labelPrinter(t){return new wB(t)}static layout(t){return new bB(t)}static level(t){return new DB(t)}static linearized(t){return new kB(t)}static locale(t){return new SB(t)}static localeSet(t){return new FB(t)}static log(t){return new RB(t)}static map(t){return new xB(t)}static mediumInfo(t){return new NB(t)}static message(t){return new vB(t)}static messaging(t){return new GB(t)}static mode(t){return new MB(t)}static modifyAnnots(t){return new LB(t)}static msgId(t){return new UB(t)}static nameAttr(t){return new HB(t)}static neverEmbed(t){return new JB(t)}static numberOfCopies(t){return new YB(t)}static openAction(t){return new TB(t)}static output(t){return new KB(t)}static outputBin(t){return new qB(t)}static outputXSL(t){return new PB(t)}static overprint(t){return new _B(t)}static packets(t){return new OB(t)}static pageOffset(t){return new WB(t)}static pageRange(t){return new ZB(t)}static pagination(t){return new jB(t)}static paginationOverride(t){return new VB(t)}static part(t){return new XB(t)}static pcl(t){return new zB(t)}static pdf(t){return new $B(t)}static pdfa(t){return new td(t)}static permissions(t){return new ed(t)}static pickTrayByPDFSize(t){return new Ad(t)}static picture(t){return new id(t)}static plaintextMetadata(t){return new sd(t)}static presence(t){return new ad(t)}static present(t){return new nd(t)}static print(t){return new rd(t)}static printHighQuality(t){return new od(t)}static printScaling(t){return new gd(t)}static printerName(t){return new cd(t)}static producer(t){return new hd(t)}static ps(t){return new ld(t)}static range(t){return new Id(t)}static record(t){return new Cd(t)}static relevant(t){return new Bd(t)}static rename(t){return new dd(t)}static renderPolicy(t){return new ud(t)}static runScripts(t){return new Qd(t)}static script(t){return new Ed(t)}static scriptModel(t){return new fd(t)}static severity(t){return new pd(t)}static silentPrint(t){return new md(t)}static staple(t){return new yd(t)}static startNode(t){return new wd(t)}static startPage(t){return new bd(t)}static submitFormat(t){return new Dd(t)}static submitUrl(t){return new kd(t)}static subsetBelow(t){return new Sd(t)}static suppressBanner(t){return new Fd(t)}static tagged(t){return new Rd(t)}static template(t){return new xd(t)}static templateCache(t){return new Gd(t)}static threshold(t){return new Nd(t)}static to(t){return new vd(t)}static trace(t){return new Md(t)}static transform(t){return new Ld(t)}static type(t){return new Ud(t)}static uri(t){return new Hd(t)}static validate(t){return new Jd(t)}static validateApprovalSignatures(t){return new Yd(t)}static validationMessaging(t){return new Td(t)}static version(t){return new Kd(t)}static versionControl(t){return new qd(t)}static viewerPreferences(t){return new Pd(t)}static webClient(t){return new _d(t)}static whitespace(t){return new Od(t)}static window(t){return new Wd(t)}static xdc(t){return new Zd(t)}static xdp(t){return new jd(t)}static xsl(t){return new Vd(t)}static zpl(t){return new Xd(t)}}const $d=bc.connectionSet.id;class tu extends Ch{constructor(t){super($d,"connectionSet",!0),this.wsdlConnection=new Bh,this.xmlConnection=new Bh,this.xsdConnection=new Bh}}class eu extends Ch{constructor(t){super($d,"effectiveInputPolicy"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class Au extends Ch{constructor(t){super($d,"effectiveOutputPolicy"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class iu extends fh{constructor(t){super($d,"operation"),this.id=t.id||"",this.input=t.input||"",this.name=t.name||"",this.output=t.output||"",this.use=t.use||"",this.usehref=t.usehref||""}}class su extends fh{constructor(t){super($d,"rootElement"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class au extends fh{constructor(t){super($d,"soapAction"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class nu extends fh{constructor(t){super($d,"soapAddress"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class ru extends fh{constructor(t){super($d,"uri"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class ou extends fh{constructor(t){super($d,"wsdlAddress"),this.id=t.id||"",this.name=t.name||"",this.use=t.use||"",this.usehref=t.usehref||""}}class gu extends Ch{constructor(t){super($d,"wsdlConnection",!0),this.dataDescription=t.dataDescription||"",this.name=t.name||"",this.effectiveInputPolicy=null,this.effectiveOutputPolicy=null,this.operation=null,this.soapAction=null,this.soapAddress=null,this.wsdlAddress=null}}class cu extends Ch{constructor(t){super($d,"xmlConnection",!0),this.dataDescription=t.dataDescription||"",this.name=t.name||"",this.uri=null}}class hu extends Ch{constructor(t){super($d,"xsdConnection",!0),this.dataDescription=t.dataDescription||"",this.name=t.name||"",this.rootElement=null,this.uri=null}}class lu{static[wc](t,e){if(lu.hasOwnProperty(t))return lu[t](e)}static connectionSet(t){return new tu(t)}static effectiveInputPolicy(t){return new eu(t)}static effectiveOutputPolicy(t){return new Au(t)}static operation(t){return new iu(t)}static rootElement(t){return new su(t)}static soapAction(t){return new au(t)}static soapAddress(t){return new nu(t)}static uri(t){return new ru(t)}static wsdlAddress(t){return new ou(t)}static wsdlConnection(t){return new gu(t)}static xmlConnection(t){return new cu(t)}static xsdConnection(t){return new hu(t)}}const Iu=bc.datasets.id;class Cu extends uh{constructor(t){super(Iu,"data",t)}[jg](){return!0}}class Bu extends Ch{constructor(t){super(Iu,"datasets",!0),this.data=null,this.Signature=null}[sc](t){const e=t[Ac];("data"===e&&t[ec]===Iu||"Signature"===e&&t[ec]===bc.signature.id)&&(this[e]=t),this[lg](t)}}class du{static[wc](t,e){if(du.hasOwnProperty(t))return du[t](e)}static datasets(t){return new Bu(t)}static data(t){return new Cu(t)}}const uu=bc.localeSet.id;class Qu extends Ch{constructor(t){super(uu,"calendarSymbols",!0),this.name="gregorian",this.dayNames=new Bh(2),this.eraNames=null,this.meridiemNames=null,this.monthNames=new Bh(2)}}class Eu extends fh{constructor(t){super(uu,"currencySymbol"),this.name=Nc(t.name,["symbol","isoname","decimal"])}}class fu extends Ch{constructor(t){super(uu,"currencySymbols",!0),this.currencySymbol=new Bh(3)}}class pu extends fh{constructor(t){super(uu,"datePattern"),this.name=Nc(t.name,["full","long","med","short"])}}class mu extends Ch{constructor(t){super(uu,"datePatterns",!0),this.datePattern=new Bh(4)}}class yu extends Qh{constructor(t){super(uu,"dateTimeSymbols")}}class wu extends fh{constructor(t){super(uu,"day")}}class bu extends Ch{constructor(t){super(uu,"dayNames",!0),this.abbr=Fc({data:t.abbr,defaultValue:0,validate:t=>1===t}),this.day=new Bh(7)}}class Du extends fh{constructor(t){super(uu,"era")}}class ku extends Ch{constructor(t){super(uu,"eraNames",!0),this.era=new Bh(2)}}class Su extends Ch{constructor(t){super(uu,"locale",!0),this.desc=t.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 Fu extends Ch{constructor(t){super(uu,"localeSet",!0),this.locale=new Bh}}class Ru extends fh{constructor(t){super(uu,"meridiem")}}class xu extends Ch{constructor(t){super(uu,"meridiemNames",!0),this.meridiem=new Bh(2)}}class Nu extends fh{constructor(t){super(uu,"month")}}class vu extends Ch{constructor(t){super(uu,"monthNames",!0),this.abbr=Fc({data:t.abbr,defaultValue:0,validate:t=>1===t}),this.month=new Bh(12)}}class Gu extends fh{constructor(t){super(uu,"numberPattern"),this.name=Nc(t.name,["full","long","med","short"])}}class Mu extends Ch{constructor(t){super(uu,"numberPatterns",!0),this.numberPattern=new Bh(4)}}class Lu extends fh{constructor(t){super(uu,"numberSymbol"),this.name=Nc(t.name,["decimal","grouping","percent","minus","zero"])}}class Uu extends Ch{constructor(t){super(uu,"numberSymbols",!0),this.numberSymbol=new Bh(5)}}class Hu extends fh{constructor(t){super(uu,"timePattern"),this.name=Nc(t.name,["full","long","med","short"])}}class Ju extends Ch{constructor(t){super(uu,"timePatterns",!0),this.timePattern=new Bh(4)}}class Yu extends Ch{constructor(t){super(uu,"typeFace",!0),this.name=""|t.name}}class Tu extends Ch{constructor(t){super(uu,"typeFaces",!0),this.typeFace=new Bh}}class Ku{static[wc](t,e){if(Ku.hasOwnProperty(t))return Ku[t](e)}static calendarSymbols(t){return new Qu(t)}static currencySymbol(t){return new Eu(t)}static currencySymbols(t){return new fu(t)}static datePattern(t){return new pu(t)}static datePatterns(t){return new mu(t)}static dateTimeSymbols(t){return new yu(t)}static day(t){return new wu(t)}static dayNames(t){return new bu(t)}static era(t){return new Du(t)}static eraNames(t){return new ku(t)}static locale(t){return new Su(t)}static localeSet(t){return new Fu(t)}static meridiem(t){return new Ru(t)}static meridiemNames(t){return new xu(t)}static month(t){return new Nu(t)}static monthNames(t){return new vu(t)}static numberPattern(t){return new Gu(t)}static numberPatterns(t){return new Mu(t)}static numberSymbol(t){return new Lu(t)}static numberSymbols(t){return new Uu(t)}static timePattern(t){return new Hu(t)}static timePatterns(t){return new Ju(t)}static typeFace(t){return new Yu(t)}static typeFaces(t){return new Tu(t)}}const qu=bc.signature.id;class Pu extends Ch{constructor(t){super(qu,"signature",!0)}}class _u{static[wc](t,e){if(_u.hasOwnProperty(t))return _u[t](e)}static signature(t){return new Pu(t)}}const Ou=bc.stylesheet.id;class Wu extends Ch{constructor(t){super(Ou,"stylesheet",!0)}}class Zu{static[wc](t,e){if(Zu.hasOwnProperty(t))return Zu[t](e)}static stylesheet(t){return new Wu(t)}}const ju=bc.xdp.id;class Vu extends Ch{constructor(t){super(ju,"xdp",!0),this.uuid=t.uuid||"",this.timeStamp=t.timeStamp||"",this.config=null,this.connectionSet=null,this.datasets=null,this.localeSet=null,this.stylesheet=new Bh,this.template=null}[ac](t){const e=bc[t[Ac]];return e&&t[ec]===e.id}}class Xu{static[wc](t,e){if(Xu.hasOwnProperty(t))return Xu[t](e)}static xdp(t){return new Vu(t)}}const zu=bc.xhtml.id,$u=Symbol(),tQ=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"]),eQ=new Map([["page-break-after","breakAfter"],["page-break-before","breakBefore"],["page-break-inside","breakInside"],["kerning-mode",t=>"none"===t?"none":"normal"],["xfa-font-horizontal-scale",t=>`scaleX(${Math.max(0,Math.min(parseInt(t)/100)).toFixed(2)})`],["xfa-font-vertical-scale",t=>`scaleY(${Math.max(0,Math.min(parseInt(t)/100)).toFixed(2)})`],["xfa-spacerun",""],["xfa-tab-stops",""],["font-size",(t,e)=>wh(.99*(t=e.fontSize=vc(t)))],["letter-spacing",t=>wh(vc(t))],["line-height",t=>wh(vc(t))],["margin",t=>wh(vc(t))],["margin-bottom",t=>wh(vc(t))],["margin-left",t=>wh(vc(t))],["margin-right",t=>wh(vc(t))],["margin-top",t=>wh(vc(t))],["text-indent",t=>wh(vc(t))],["font-family",t=>t],["vertical-align",t=>wh(vc(t))]]),AQ=/\s+/g,iQ=/[\r\n]+/g,sQ=/\r\n?/g;function aQ(t,e,A){const i=Object.create(null);if(!t)return i;const s=Object.create(null);for(const[e,A]of t.split(";").map((t=>t.split(":",2)))){const t=eQ.get(e);if(""===t)continue;let a=A;t&&(a="string"==typeof t?t:t(A,s)),e.endsWith("scale")?i.transform=i.transform?`${i[e]} ${a}`:a:i[e.replaceAll(/-([a-zA-Z])/g,((t,e)=>e.toUpperCase()))]=a}if(i.fontFamily&&Jh({typeface:i.fontFamily,weight:i.fontWeight||"normal",posture:i.fontStyle||"normal",size:s.fontSize||0},e,e[Yg].fontFinder,i),A&&i.verticalAlign&&"0px"!==i.verticalAlign&&i.fontSize){const t=.583,e=.333,A=vc(i.fontSize);i.fontSize=wh(A*t),i.verticalAlign=wh(Math.sign(vc(i.verticalAlign))*A*e)}return A&&i.fontSize&&(i.fontSize=`calc(${i.fontSize} * var(--scale-factor))`),Gh(i),i}const nQ=new Set(["body","html"]);class rQ extends uh{constructor(t,e){super(zu,e),this[$u]=!1,this.style=t.style||""}[Cg](t){super[Cg](t),this.style=function(t){return t.style?t.style.trim().split(/\s*;\s*/).filter((t=>!!t)).map((t=>t.split(/\s*:\s*/,2))).filter((([e,A])=>("font-family"===e&&t[Yg].usedTypefaces.add(A),tQ.has(e)))).map((t=>t.join(":"))).join(";"):""}(this)}[cg](){return!nQ.has(this[Ac])}[nc](t,e=!1){e?this[$u]=!0:(t=t.replaceAll(iQ,""),this.style.includes("xfa-spacerun:yes")||(t=t.replaceAll(AQ," "))),t&&(this[Eg]+=t)}[rc](t,e=!0){const A=Object.create(null),i={top:NaN,bottom:NaN,left:NaN,right:NaN};let s=null;for(const[t,e]of this.style.split(";").map((t=>t.split(":",2))))switch(t){case"font-family":A.typeface=Sc(e);break;case"font-size":A.size=vc(e);break;case"font-weight":A.weight=e;break;case"font-style":A.posture=e;break;case"letter-spacing":A.letterSpacing=vc(e);break;case"margin":const t=e.split(/ \t/).map((t=>vc(t)));switch(t.length){case 1:i.top=i.bottom=i.left=i.right=t[0];break;case 2:i.top=i.bottom=t[0],i.left=i.right=t[1];break;case 3:i.top=t[0],i.bottom=t[2],i.left=i.right=t[1];break;case 4:i.top=t[0],i.left=t[1],i.bottom=t[2],i.right=t[3]}break;case"margin-top":i.top=vc(e);break;case"margin-bottom":i.bottom=vc(e);break;case"margin-left":i.left=vc(e);break;case"margin-right":i.right=vc(e);break;case"line-height":s=vc(e)}if(t.pushData(A,i,s),this[Eg])t.addString(this[Eg]);else for(const e of this[Gg]())"#text"!==e[Ac]?e[rc](t):t.addString(e[Eg]);e&&t.popFont()}[fc](t){const e=[];if(this[mg]={children:e},this[Ig]({}),0===e.length&&!this[Eg])return Lc.EMPTY;let A;return A=this[$u]?this[Eg]?this[Eg].replaceAll(sQ,"\n"):void 0:this[Eg]||void 0,Lc.success({name:this[Ac],attributes:{href:this.href,style:aQ(this.style,this,this[$u])},children:e,value:A})}}class oQ extends rQ{constructor(t){super(t,"a"),this.href=Yh(t.href)||""}}class gQ extends rQ{constructor(t){super(t,"b")}[rc](t){t.pushFont({weight:"bold"}),super[rc](t),t.popFont()}}class cQ extends rQ{constructor(t){super(t,"body")}[fc](t){const e=super[fc](t),{html:A}=e;return A?(A.name="div",A.attributes.class=["xfaRich"],e):Lc.EMPTY}}class hQ extends rQ{constructor(t){super(t,"br")}[Qc](){return"\n"}[rc](t){t.addString("\n")}[fc](t){return Lc.success({name:"br"})}}class lQ extends rQ{constructor(t){super(t,"html")}[fc](t){const e=[];if(this[mg]={children:e},this[Ig]({}),0===e.length)return Lc.success({name:"div",attributes:{class:["xfaRich"],style:{}},value:this[Eg]||""});if(1===e.length){const t=e[0];if(t.attributes?.class.includes("xfaRich"))return Lc.success(t)}return Lc.success({name:"div",attributes:{class:["xfaRich"],style:{}},children:e})}}class IQ extends rQ{constructor(t){super(t,"i")}[rc](t){t.pushFont({posture:"italic"}),super[rc](t),t.popFont()}}class CQ extends rQ{constructor(t){super(t,"li")}}class BQ extends rQ{constructor(t){super(t,"ol")}}class dQ extends rQ{constructor(t){super(t,"p")}[rc](t){super[rc](t,!1),t.addString("\n"),t.addPara(),t.popFont()}[Qc](){return this[Hg]()[Gg]().at(-1)===this?super[Qc]():super[Qc]()+"\n"}}class uQ extends rQ{constructor(t){super(t,"span")}}class QQ extends rQ{constructor(t){super(t,"sub")}}class EQ extends rQ{constructor(t){super(t,"sup")}}class fQ extends rQ{constructor(t){super(t,"ul")}}class pQ{static[wc](t,e){if(pQ.hasOwnProperty(t))return pQ[t](e)}static a(t){return new oQ(t)}static b(t){return new gQ(t)}static body(t){return new cQ(t)}static br(t){return new hQ(t)}static html(t){return new lQ(t)}static i(t){return new IQ(t)}static li(t){return new CQ(t)}static ol(t){return new BQ(t)}static p(t){return new dQ(t)}static span(t){return new uQ(t)}static sub(t){return new QQ(t)}static sup(t){return new EQ(t)}static ul(t){return new fQ(t)}}const mQ={config:zd,connection:lu,datasets:du,localeSet:Ku,signature:_u,stylesheet:Zu,template:BC,xdp:Xu,xhtml:pQ};class yQ{constructor(t){this.namespaceId=t}[wc](t,e){return new uh(this.namespaceId,t,e)}}class wQ extends Ch{constructor(t){super(-1,"root",Object.create(null)),this.element=null,this[Kg]=t}[sc](t){return this.element=t,!0}[yg](){super[yg](),this.element.template instanceof iC&&(this[Kg].set(hc,this.element),this.element.template[lc](this[Kg]),this.element.template[Kg]=this[Kg])}}class bQ extends Ch{constructor(){super(-1,"",Object.create(null))}[sc](t){return!1}}class DQ{constructor(t=null){this._namespaceStack=[],this._nsAgnosticLevel=0,this._namespacePrefixes=new Map,this._namespaces=new Map,this._nextNsId=Math.max(...Object.values(bc).map((({id:t})=>t))),this._currentNamespace=t||new yQ(++this._nextNsId)}buildRoot(t){return new wQ(t)}build({nsPrefix:t,name:e,attributes:A,namespace:i,prefixes:s}){const a=null!==i;if(a&&(this._namespaceStack.push(this._currentNamespace),this._currentNamespace=this._searchNamespace(i)),s&&this._addNamespacePrefix(s),A.hasOwnProperty(ic)){const t=mQ.datasets,e=A[ic];let i=null;for(const[A,s]of Object.entries(e))if(this._getNamespaceToUse(A)===t){i={xfa:s};break}i?A[ic]=i:delete A[ic]}const n=this._getNamespaceToUse(t),r=n?.[wc](e,A)||new bQ;return r[jg]()&&this._nsAgnosticLevel++,(a||s||r[jg]())&&(r[dg]={hasNamespace:a,prefixes:s,nsAgnostic:r[jg]()}),r}isNsAgnostic(){return this._nsAgnosticLevel>0}_searchNamespace(t){let e=this._namespaces.get(t);if(e)return e;for(const[A,{check:i}]of Object.entries(bc))if(i(t)){if(e=mQ[A],e)return this._namespaces.set(t,e),e;break}return e=new yQ(++this._nextNsId),this._namespaces.set(t,e),e}_addNamespacePrefix(t){for(const{prefix:e,value:A}of t){const t=this._searchNamespace(A);let i=this._namespacePrefixes.get(e);i||(i=[],this._namespacePrefixes.set(e,i)),i.push(t)}}_getNamespaceToUse(t){if(!t)return this._currentNamespace;const e=this._namespacePrefixes.get(t);return e?.length>0?e.at(-1):(N(`Unknown namespace prefix: ${t}.`),null)}clean(t){const{hasNamespace:e,prefixes:A,nsAgnostic:i}=t;e&&(this._currentNamespace=this._namespaceStack.pop()),A&&A.forEach((({prefix:t})=>{this._namespacePrefixes.get(t).pop()})),i&&this._nsAgnosticLevel--}}class kQ extends ko{constructor(t=null,e=!1){super(),this._builder=new DQ(t),this._stack=[],this._globalData={usedTypefaces:new Set},this._ids=new Map,this._current=this._builder.buildRoot(this._ids),this._errorCode=0,this._whiteRegex=/^\s+$/,this._nbsps=/\xa0+/g,this._richText=e}parse(t){if(this.parseXml(t),0===this._errorCode)return this._current[yg](),this._current.element}onText(t){t=t.replace(this._nbsps,(t=>t.slice(1)+" ")),this._richText||this._current[cg]()?this._current[nc](t,this._richText):this._whiteRegex.test(t)||this._current[nc](t.trim())}onCdata(t){this._current[nc](t)}_mkAttributes(t,e){let A=null,i=null;const s=Object.create({});for(const{name:a,value:n}of t)if("xmlns"===a)A?N(`XFA - multiple namespace definition in <${e}>`):A=n;else if(a.startsWith("xmlns:")){const t=a.substring(6);i||(i=[]),i.push({prefix:t,value:n})}else{const t=a.indexOf(":");if(-1===t)s[a]=n;else{let e=s[ic];e||(e=s[ic]=Object.create(null));const[A,i]=[a.slice(0,t),a.slice(t+1)];(e[A]||=Object.create(null))[i]=n}}return[A,i,s]}_getNameAndPrefix(t,e){const A=t.indexOf(":");return-1===A?[t,null]:[t.substring(A+1),e?"":t.substring(0,A)]}onBeginElement(t,e,A){const[i,s,a]=this._mkAttributes(e,t),[n,r]=this._getNameAndPrefix(t,this._builder.isNsAgnostic()),o=this._builder.build({nsPrefix:r,name:n,attributes:a,namespace:i,prefixes:s});o[Yg]=this._globalData,A?(o[yg](),this._current[sc](o)&&o[Cc](this._ids),o[Cg](this._builder)):(this._stack.push(this._current),this._current=o)}onEndElement(t){const e=this._current;if(e[_g]()&&"string"==typeof e[Eg]){const t=new kQ;t._globalData=this._globalData;const A=t.parse(e[Eg]);e[Eg]=null,e[sc](A)}e[yg](),this._current=this._stack.pop(),this._current[sc](e)&&e[Cc](this._ids),e[Cg](this._builder)}onError(t){this._errorCode=t}}class SQ{constructor(t){try{this.root=(new kQ).parse(SQ._createDocument(t));const e=new QC(this.root);this.form=e.bind(),this.dataHandler=new EC(this.root,e.getData()),this.form[Yg].template=this.form}catch(t){N(`XFA - an error occurred during parsing and binding: ${t}`)}}isValid(){return this.root&&this.form}_createPagesHelper(){const t=this.form[Ec]();return new Promise(((e,A)=>{const i=()=>{try{const A=t.next();A.done?e(A.value):setTimeout(i,0)}catch(t){A(t)}};setTimeout(i,0)}))}async _createPages(){try{this.pages=await this._createPagesHelper(),this.dims=this.pages.children.map((t=>{const{width:e,height:A}=t.attributes.style;return[0,0,parseInt(e),parseInt(A)]}))}catch(t){N(`XFA - an error occurred during layout: ${t}`)}}getBoundingBox(t){return this.dims[t]}async getNumPages(){return this.pages||await this._createPages(),this.dims.length}setImages(t){this.form[Yg].images=t}setFonts(t){this.form[Yg].fontFinder=new Uc(t);const e=[];for(let t of this.form[Yg].usedTypefaces)t=Sc(t),this.form[Yg].fontFinder.find(t)||e.push(t);return e.length>0?e:null}appendFonts(t,e){this.form[Yg].fontFinder.add(t,e)}async getPages(){this.pages||await this._createPages();const t=this.pages;return this.pages=null,t}serializeData(t){return this.dataHandler.serialize(t)}static _createDocument(t){return t["/xdp:xdp"]?Object.values(t).join(""):t["xdp:xdp"]}static getRichTextAsHtml(t){if(!t||"string"!=typeof t)return null;try{let e=new kQ(pQ,!0).parse(t);if(!["body","xhtml"].includes(e[Ac])){const t=pQ.body({});t[lg](e),e=t}const A=e[fc]();if(!A.success)return null;const{html:i}=A,{attributes:s}=i;return s&&(s.class&&(s.class=s.class.filter((t=>!t.startsWith("xfa")))),s.dir="auto"),{html:i,str:e[Qc]()}}catch(t){N(`XFA - an error occurred during parsing of rich text: ${t}`)}return null}}class FQ{static createGlobals(t){return Promise.all([t.ensureCatalog("acroForm"),t.ensureDoc("xfaDatasets"),t.ensureCatalog("structTreeRoot"),t.ensureCatalog("baseUrl"),t.ensureCatalog("attachments")]).then((([e,A,i,s,a])=>({pdfManager:t,acroForm:e instanceof Ct?e:Ct.empty,xfaDatasets:A,structTreeRoot:i,baseUrl:s,attachments:a})),(t=>(N(`createGlobals: "${t}".`),null)))}static async create(t,e,A,i,s,a){const n=s?await this._getPageIndex(t,e,A.pdfManager):null;return A.pdfManager.ensure(this,"_create",[t,e,A,i,s,n,a])}static _create(t,e,A,i,s=!1,a=null,n=null){const r=t.fetchIfRef(e);if(!(r instanceof Ct))return;const{acroForm:o,pdfManager:g}=A,c=e instanceof Bt?e.toString():`annot_${i.createObjId()}`;let h=r.get("Subtype");h=h instanceof ht?h.name:null;const l={xref:t,ref:e,dict:r,subtype:h,id:c,annotationGlobals:A,collectFields:s,needAppearances:!s&&!0===o.get("NeedAppearances"),pageIndex:a,evaluatorOptions:g.evaluatorOptions,pageRef:n};switch(h){case"Link":return new qQ(l);case"Text":return new KQ(l);case"Widget":let t=Rt({dict:r,key:"FT"});switch(t=t instanceof ht?t.name:null,t){case"Tx":return new HQ(l);case"Btn":return new JQ(l);case"Ch":return new YQ(l);case"Sig":return new TQ(l)}return N(`Unimplemented widget field type "${t}", falling back to base field type.`),new UQ(l);case"Popup":return new PQ(l);case"FreeText":return new _Q(l);case"Line":return new OQ(l);case"Square":return new WQ(l);case"Circle":return new ZQ(l);case"PolyLine":return new jQ(l);case"Polygon":return new VQ(l);case"Caret":return new XQ(l);case"Ink":return new zQ(l);case"Highlight":return new $Q(l);case"Underline":return new tE(l);case"Squiggly":return new eE(l);case"StrikeOut":return new AE(l);case"Stamp":return new iE(l);case"FileAttachment":return new sE(l);default:return s||N(h?`Unimplemented annotation type "${h}", falling back to base annotation.`:"Annotation is missing the required /Subtype."),new GQ(l)}}static async _getPageIndex(t,e,A){try{const i=await t.fetchIfRefAsync(e);if(!(i instanceof Ct))return-1;const s=i.getRaw("P");if(s instanceof Bt)try{return await A.ensureCatalog("getPageIndex",[s])}catch(t){x(`_getPageIndex -- not a valid page reference: "${t}".`)}if(i.has("Kids"))return-1;const a=await A.ensureDoc("numPages");for(let t=0;t<a;t++){const i=await A.getPage(t),s=await A.ensure(i,"annotations");for(const A of s)if(A instanceof Bt&&pt(A,e))return t}}catch(t){N(`_getPageIndex: "${t}".`)}return-1}static generateImages(t,e,A){if(!A)return N("generateImages: OffscreenCanvas is not supported, cannot save or print some annotations with images."),null;let i;for(const{bitmapId:A,bitmap:s}of t)s&&(i||=new Map,i.set(A,iE.createImage(s,e)));return i}static async saveNewAnnotations(t,e,A,i){const s=t.xref;let a;const n=[],r=[],{isOffscreenCanvasSupported:o}=t.options;for(const g of A)if(!g.deleted)switch(g.annotationType){case 3:if(!a){const t=new Ct(s);t.set("BaseFont",ht.get("Helvetica")),t.set("Type",ht.get("Font")),t.set("Subtype",ht.get("Type1")),t.set("Encoding",ht.get("WinAnsiEncoding"));const e=[];a=s.getNewTemporaryRef(),await _o(a,t,e,s),n.push({ref:a,data:e.join("")})}r.push(_Q.createNewAnnotation(s,g,n,{evaluator:t,task:e,baseFontRef:a}));break;case 9:g.quadPoints?r.push($Q.createNewAnnotation(s,g,n)):r.push(zQ.createNewAnnotation(s,g,n));break;case 15:r.push(zQ.createNewAnnotation(s,g,n));break;case 13:if(!o)break;const A=await i.get(g.bitmapId);if(A.imageStream){const{imageStream:t,smaskStream:e}=A,i=[];if(e){const A=s.getNewTemporaryRef();await _o(A,e,i,s),n.push({ref:A,data:i.join("")}),t.dict.set("SMask",A),i.length=0}const a=A.imageRef=s.getNewTemporaryRef();await _o(a,t,i,s),n.push({ref:a,data:i.join("")}),A.imageStream=A.smaskStream=null}r.push(iE.createNewAnnotation(s,g,n,{image:A}))}return{annotations:await Promise.all(r),dependencies:n}}static async printNewAnnotations(t,e,A,i,s){if(!i)return null;const{options:a,xref:n}=e,r=[];for(const o of i)if(!o.deleted)switch(o.annotationType){case 3:r.push(_Q.createNewPrintAnnotation(t,n,o,{evaluator:e,task:A,evaluatorOptions:a}));break;case 9:o.quadPoints?r.push($Q.createNewPrintAnnotation(t,n,o,{evaluatorOptions:a})):r.push(zQ.createNewPrintAnnotation(t,n,o,{evaluatorOptions:a}));break;case 15:r.push(zQ.createNewPrintAnnotation(t,n,o,{evaluatorOptions:a}));break;case 13:if(!a.isOffscreenCanvasSupported)break;const i=await s.get(o.bitmapId);if(i.imageStream){const{imageStream:t,smaskStream:e}=i;e&&t.dict.set("SMask",e),i.imageRef=new ZA(t,t.length),i.imageStream=i.smaskStream=null}r.push(iE.createNewPrintAnnotation(t,n,o,{image:i,evaluatorOptions:a}))}return Promise.all(r)}}function RQ(t,e=new Uint8ClampedArray(3)){if(!Array.isArray(t))return e;const A=e||new Uint8ClampedArray(3);switch(t.length){case 0:return null;case 1:return he.singletons.gray.getRgbItem(t,0,A,0),A;case 3:return he.singletons.rgb.getRgbItem(t,0,A,0),A;case 4:return he.singletons.cmyk.getRgbItem(t,0,A,0),A;default:return e}}function xQ(t){return Array.from(t,(t=>t/255))}function NQ(t,e){const A=t.getArray("QuadPoints");if(!Ht(A,null)||0===A.length||A.length%8>0)return null;const i=new Float32Array(A.length);for(let t=0,s=A.length;t<s;t+=8){const[s,a,n,r,o,g,c,h]=A.slice(t,t+8),l=Math.min(s,n,o,c),I=Math.max(s,n,o,c),C=Math.min(a,r,g,h),B=Math.max(a,r,g,h);if(null!==e&&(l<e[0]||I>e[2]||C<e[1]||B>e[3]))return null;i.set([l,B,I,B,l,C,I,C],t)}return i}function vQ(t,e,A){const[i,s,a,n]=X.getAxialAlignedBoundingBox(e,A);if(i===a||s===n)return[1,0,0,1,t[0],t[1]];const r=(t[2]-t[0])/(a-i),o=(t[3]-t[1])/(n-s);return[r,0,0,o,t[0]-i*r,t[1]-s*o]}class GQ{constructor(t){const{dict:e,xref:A,annotationGlobals:i}=t;this.setTitle(e.get("T")),this.setContents(e.get("Contents")),this.setModificationDate(e.get("M")),this.setFlags(e.get("F")),this.setRectangle(e.getArray("Rect")),this.setColor(e.getArray("C")),this.setBorderStyle(e),this.setAppearance(e),this.setOptionalContent(e);const s=e.get("MK");this.setBorderAndBackgroundColors(s),this.setRotation(s,e),this.ref=t.ref instanceof Bt?t.ref:null,this._streams=[],this.appearance&&this._streams.push(this.appearance);const a=!!(128&this.flags),n=!!(512&this.flags);if(i.structTreeRoot){let A=e.get("StructParent");A=Number.isInteger(A)&&A>=0?A:-1,i.structTreeRoot.addAnnotationIdToPage(t.pageRef,A)}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:t.id,modificationDate:this.modificationDate,rect:this.rectangle,subtype:t.subtype,hasOwnCanvas:!1,noRotate:!!(16&this.flags),noHTML:a&&n},t.collectFields){const i=e.get("Kids");if(Array.isArray(i)){const t=[];for(const e of i)e instanceof Bt&&t.push(e.toString());0!==t.length&&(this.data.kidIds=t)}this.data.actions=Ot(A,e,d),this.data.fieldName=this._constructFieldName(e),this.data.pageIndex=t.pageIndex}this._isOffscreenCanvasSupported=t.evaluatorOptions.isOffscreenCanvasSupported,this._fallbackFontDict=null,this._needAppearances=!1}_hasFlag(t,e){return!!(t&e)}_isViewable(t){return!this._hasFlag(t,1)&&!this._hasFlag(t,32)}_isPrintable(t){return this._hasFlag(t,4)&&!this._hasFlag(t,2)&&!this._hasFlag(t,1)}mustBeViewed(t,e){const A=t?.get(this.data.id)?.noView;return void 0!==A?!A:this.viewable&&!this._hasFlag(this.flags,2)}mustBePrinted(t){const e=t?.get(this.data.id)?.noPrint;return void 0!==e?!e:this.printable}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(t){const e="string"==typeof t?$(t):"";return{str:e,dir:e&&"rtl"===Gr(e).dir?"rtl":"ltr"}}setDefaultAppearance(t){const{dict:e,annotationGlobals:A}=t,i=Rt({dict:e,key:"DA"})||A.acroForm.get("DA");this._defaultAppearance="string"==typeof i?i:"",this.data.defaultAppearanceData=Bo(this._defaultAppearance)}setTitle(t){this._title=this._parseStringHelper(t)}setContents(t){this._contents=this._parseStringHelper(t)}setModificationDate(t){this.modificationDate="string"==typeof t?t:null}setFlags(t){this.flags=Number.isInteger(t)&&t>0?t:0,1&this.flags&&"Annotation"!==this.constructor.name&&(this.flags^=1)}hasFlag(t){return this._hasFlag(this.flags,t)}setRectangle(t){this.rectangle=Tt(t,[0,0,0,0])}setColor(t){this.color=RQ(t)}setLineEndings(t){if(this.lineEndings=["None","None"],Array.isArray(t)&&2===t.length)for(let e=0;e<2;e++){const A=t[e];if(A instanceof ht)switch(A.name){case"None":continue;case"Square":case"Circle":case"Diamond":case"OpenArrow":case"ClosedArrow":case"Butt":case"ROpenArrow":case"RClosedArrow":case"Slash":this.lineEndings[e]=A.name;continue}N(`Ignoring invalid lineEnding: ${A}`)}}setRotation(t,e){this.rotation=0;let A=t instanceof Ct?t.get("R")||0:e.get("Rotate")||0;Number.isInteger(A)&&0!==A&&(A%=360,A<0&&(A+=360),A%90==0&&(this.rotation=A))}setBorderAndBackgroundColors(t){t instanceof Ct?(this.borderColor=RQ(t.getArray("BC"),null),this.backgroundColor=RQ(t.getArray("BG"),null)):this.borderColor=this.backgroundColor=null}setBorderStyle(t){if(this.borderStyle=new MQ,t instanceof Ct)if(t.has("BS")){const e=t.get("BS");if(e instanceof Ct){const t=e.get("Type");t&&!Qt(t,"Border")||(this.borderStyle.setWidth(e.get("W"),this.rectangle),this.borderStyle.setStyle(e.get("S")),this.borderStyle.setDashArray(e.getArray("D")))}}else if(t.has("Border")){const e=t.getArray("Border");Array.isArray(e)&&e.length>=3&&(this.borderStyle.setHorizontalCornerRadius(e[0]),this.borderStyle.setVerticalCornerRadius(e[1]),this.borderStyle.setWidth(e[2],this.rectangle),4===e.length&&this.borderStyle.setDashArray(e[3],!0))}else this.borderStyle.setWidth(0)}setAppearance(t){this.appearance=null;const e=t.get("AP");if(!(e instanceof Ct))return;const A=e.get("N");if(A instanceof mt)return void(this.appearance=A);if(!(A instanceof Ct))return;const i=t.get("AS");if(!(i instanceof ht&&A.has(i.name)))return;const s=A.get(i.name);s instanceof mt&&(this.appearance=s)}setOptionalContent(t){this.oc=null;const e=t.get("OC");e instanceof ht?N("setOptionalContent: Support for /Name-entry is not implemented."):e instanceof Ct&&(this.oc=e)}loadResources(t,e){return e.dict.getAsync("Resources").then((e=>{if(e)return new gg(e,t,e.xref).load().then((function(){return e}))}))}async getOperatorList(t,e,A,i,s){const{hasOwnCanvas:a,id:n,rect:o}=this.data;let g=this.appearance;const c=!!(a&&2&A);if(c&&(o[0]===o[2]||o[1]===o[3]))return this.data.hasOwnCanvas=!1,{opList:new $r,separateForm:!1,separateCanvas:!1};if(!g){if(!c)return{opList:new $r,separateForm:!1,separateCanvas:!1};g=new re(""),g.dict=new Ct}const h=g.dict,l=await this.loadResources(["ExtGState","ColorSpace","Pattern","Shading","XObject","Font"],g),I=Yt(h.getArray("BBox"),[0,0,1,1]),C=Jt(h.getArray("Matrix"),r),B=vQ(o,I,C),d=new $r;let u;return this.oc&&(u=await t.parseMarkedContentProps(this.oc,null)),void 0!==u&&d.addOp(D,["OC",u]),d.addOp(80,[n,o,B,C,c]),await t.getOperatorList({stream:g,task:e,resources:l,operatorList:d,fallbackFontDict:this._fallbackFontDict}),d.addOp(81,[]),void 0!==u&&d.addOp(k,[]),this.reset(),{opList:d,separateForm:!1,separateCanvas:c}}async save(t,e,A){return null}get hasTextContent(){return!1}async extractTextContent(t,e,A){if(!this.appearance)return;const i=await this.loadResources(["ExtGState","Font","Properties","XObject"],this.appearance),s=[],a=[];let n=null;const r={desiredSize:Math.Infinity,ready:!0,enqueue(t,e){for(const e of t.items)void 0!==e.str&&(n||=e.transform.slice(-2),a.push(e.str),e.hasEOL&&(s.push(a.join("").trimEnd()),a.length=0))}};if(await t.getTextContent({stream:this.appearance,task:e,resources:i,includeMarkedContent:!0,keepWhiteSpace:!0,sink:r,viewBox:A}),this.reset(),a.length&&s.push(a.join("").trimEnd()),s.length>1||s[0]){const t=this.appearance.dict,e=Yt(t.getArray("BBox"),null),A=Jt(t.getArray("Matrix"),null);this.data.textPosition=this._transformPoint(n,e,A),this.data.textContent=s}}_transformPoint(t,e,A){const{rect:i}=this.data;e||=[0,0,1,1],A||=[1,0,0,1,0,0];const s=vQ(i,e,A);return s[4]-=i[0],s[5]-=i[1],t=X.applyTransform(t,s),X.applyTransform(t,A)}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 t of this._streams)t.reset()}_constructFieldName(t){if(!t.has("T")&&!t.has("Parent"))return N("Unknown field name, falling back to empty field name."),"";if(!t.has("Parent"))return $(t.get("T"));const e=[];t.has("T")&&e.unshift($(t.get("T")));let A=t;const i=new dt;for(t.objId&&i.put(t.objId);A.has("Parent")&&(A=A.get("Parent"),A instanceof Ct&&(!A.objId||!i.has(A.objId)));)A.objId&&i.put(A.objId),A.has("T")&&e.unshift($(A.get("T")));return e.join(".")}}class MQ{constructor(){this.width=1,this.style=1,this.dashArray=[3],this.horizontalCornerRadius=0,this.verticalCornerRadius=0}setWidth(t,e=[0,0,0,0]){if(t instanceof ht)this.width=0;else if("number"==typeof t){if(t>0){const A=(e[2]-e[0])/2,i=(e[3]-e[1])/2;A>0&&i>0&&(t>A||t>i)&&(N(`AnnotationBorderStyle.setWidth - ignoring width: ${t}`),t=1)}this.width=t}}setStyle(t){if(t instanceof ht)switch(t.name){case"S":this.style=1;break;case"D":this.style=2;break;case"B":this.style=3;break;case"I":this.style=4;break;case"U":this.style=5}}setDashArray(t,e=!1){if(Array.isArray(t)){let A=!0,i=!0;for(const e of t){if(!(+e>=0)){A=!1;break}e>0&&(i=!1)}0===t.length||A&&!i?(this.dashArray=t,e&&this.setStyle(ht.get("D"))):this.width=0}else t&&(this.width=0)}setHorizontalCornerRadius(t){Number.isInteger(t)&&(this.horizontalCornerRadius=t)}setVerticalCornerRadius(t){Number.isInteger(t)&&(this.verticalCornerRadius=t)}}class LQ extends GQ{constructor(t){super(t);const{dict:e}=t;if(e.has("IRT")){const t=e.getRaw("IRT");this.data.inReplyTo=t instanceof Bt?t.toString():null;const A=e.get("RT");this.data.replyType=A instanceof ht?A.name:"R"}let A=null;if(this.data.replyType===I){const t=e.get("IRT");this.setTitle(t.get("T")),this.data.titleObj=this._title,this.setContents(t.get("Contents")),this.data.contentsObj=this._contents,t.has("CreationDate")?(this.setCreationDate(t.get("CreationDate")),this.data.creationDate=this.creationDate):this.data.creationDate=null,t.has("M")?(this.setModificationDate(t.get("M")),this.data.modificationDate=this.modificationDate):this.data.modificationDate=null,A=t.getRaw("Popup"),t.has("C")?(this.setColor(t.getArray("C")),this.data.color=this.color):this.data.color=null}else this.data.titleObj=this._title,this.setCreationDate(e.get("CreationDate")),this.data.creationDate=this.creationDate,A=e.getRaw("Popup"),e.has("C")||(this.data.color=null);this.data.popupRef=A instanceof Bt?A.toString():null,e.has("RC")&&(this.data.richText=SQ.getRichTextAsHtml(e.get("RC")))}setCreationDate(t){this.creationDate="string"==typeof t?t:null}_setDefaultAppearance({xref:t,extra:e,strokeColor:A,fillColor:i,blendMode:s,strokeAlpha:a,fillAlpha:n,pointsCallback:r}){let o=Number.MAX_VALUE,g=Number.MAX_VALUE,c=Number.MIN_VALUE,h=Number.MIN_VALUE;const l=["q"];e&&l.push(e),A&&l.push(`${A[0]} ${A[1]} ${A[2]} RG`),i&&l.push(`${i[0]} ${i[1]} ${i[2]} rg`);let I=this.data.quadPoints;I||(I=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 t=0,e=I.length;t<e;t+=8){const[e,A,i,s]=r(l,I.subarray(t,t+8));o=Math.min(o,e),c=Math.max(c,A),g=Math.min(g,i),h=Math.max(h,s)}l.push("Q");const C=new Ct(t),B=new Ct(t);B.set("Subtype",ht.get("Form"));const d=new re(l.join(" "));d.dict=B,C.set("Fm0",d);const u=new Ct(t);s&&u.set("BM",ht.get(s)),"number"==typeof a&&u.set("CA",a),"number"==typeof n&&u.set("ca",n);const Q=new Ct(t);Q.set("GS0",u);const E=new Ct(t);E.set("ExtGState",Q),E.set("XObject",C);const f=new Ct(t);f.set("Resources",E);const p=this.data.rect=[o,g,c,h];f.set("BBox",p),this.appearance=new re("/GS0 gs /Fm0 Do"),this.appearance.dict=f,this._streams.push(this.appearance,d)}static async createNewAnnotation(t,e,A,i){const s=e.ref||=t.getNewTemporaryRef(),a=await this.createNewAppearanceStream(e,t,i),n=[];let r;if(a){const i=t.getNewTemporaryRef();r=this.createNewDict(e,t,{apRef:i}),await _o(i,a,n,t),A.push({ref:i,data:n.join("")})}else r=this.createNewDict(e,t,{});return Number.isInteger(e.parentTreeId)&&r.set("StructParent",e.parentTreeId),n.length=0,await _o(s,r,n,t),{ref:s,data:n.join("")}}static async createNewPrintAnnotation(t,e,A,i){const s=await this.createNewAppearanceStream(A,e,i),a=this.createNewDict(A,e,{ap:s}),n=new this.prototype.constructor({dict:a,xref:e,annotationGlobals:t,evaluatorOptions:i.evaluatorOptions});return A.ref&&(n.ref=n.refToReplace=A.ref),n}}class UQ extends GQ{constructor(t){super(t);const{dict:e,xref:A,annotationGlobals:i}=t,s=this.data;this._needAppearances=t.needAppearances,s.annotationType=20,void 0===s.fieldName&&(s.fieldName=this._constructFieldName(e)),void 0===s.actions&&(s.actions=Ot(A,e,d));let a=Rt({dict:e,key:"V",getArray:!0});s.fieldValue=this._decodeFormValue(a);const n=Rt({dict:e,key:"DV",getArray:!0});if(s.defaultFieldValue=this._decodeFormValue(n),void 0===a&&i.xfaDatasets){const t=this._title.str;t&&(this._hasValueFromXFA=!0,s.fieldValue=a=i.xfaDatasets.getValue(t))}void 0===a&&null!==s.defaultFieldValue&&(s.fieldValue=s.defaultFieldValue),s.alternativeText=$(e.get("TU")||""),this.setDefaultAppearance(t),s.hasAppearance||=this._needAppearances&&void 0!==s.fieldValue&&null!==s.fieldValue;const r=Rt({dict:e,key:"FT"});s.fieldType=r instanceof ht?r.name:null;const o=Rt({dict:e,key:"DR"}),g=i.acroForm.get("DR"),c=this.appearance?.dict.get("Resources");this._fieldResources={localResources:o,acroFormResources:g,appearanceResources:c,mergedResources:Ct.merge({xref:A,dictArray:[o,c,g],mergeSubDicts:!0})},s.fieldFlags=Rt({dict:e,key:"Ff"}),(!Number.isInteger(s.fieldFlags)||s.fieldFlags<0)&&(s.fieldFlags=0),s.readOnly=this.hasFieldFlag(1),s.required=this.hasFieldFlag(2),s.hidden=this._hasFlag(s.annotationFlags,2)||this._hasFlag(s.annotationFlags,32)}_decodeFormValue(t){return Array.isArray(t)?t.filter((t=>"string"==typeof t)).map((t=>$(t))):t instanceof ht?$(t.name):"string"==typeof t?$(t):null}hasFieldFlag(t){return!!(this.data.fieldFlags&t)}_isViewable(t){return!0}mustBeViewed(t,e){return e?this.viewable:super.mustBeViewed(t,e)&&!this._hasFlag(this.flags,32)}getRotationMatrix(t){let e=t?.get(this.data.id)?.rotation;return void 0===e&&(e=this.rotation),0===e?r:se(e,this.data.rect[2]-this.data.rect[0],this.data.rect[3]-this.data.rect[1])}getBorderAndBackgroundAppearances(t){let e=t?.get(this.data.id)?.rotation;if(void 0===e&&(e=this.rotation),!this.backgroundColor&&!this.borderColor)return"";const A=this.data.rect[2]-this.data.rect[0],i=this.data.rect[3]-this.data.rect[1],s=0===e||180===e?`0 0 ${A} ${i} re`:`0 0 ${i} ${A} re`;let a="";return this.backgroundColor&&(a=`${Qo(this.backgroundColor,!0)} ${s} f `),this.borderColor&&(a+=`${this.borderStyle.width||1} w ${Qo(this.borderColor,!1)} ${s} S `),a}async getOperatorList(t,e,A,i,s){if(i&&!(this instanceof TQ)&&!this.data.noHTML&&!this.data.hasOwnCanvas)return{opList:new $r,separateForm:!0,separateCanvas:!1};if(!this._hasText)return super.getOperatorList(t,e,A,i,s);const a=await this._getAppearance(t,e,A,s);if(this.appearance&&null===a)return super.getOperatorList(t,e,A,i,s);const n=new $r;if(!this._defaultAppearance||null===a)return{opList:n,separateForm:!1,separateCanvas:!1};const r=!!(this.data.hasOwnCanvas&&2&A),o=[0,0,this.data.rect[2]-this.data.rect[0],this.data.rect[3]-this.data.rect[1]],g=vQ(this.data.rect,o,[1,0,0,1,0,0]);let c;this.oc&&(c=await t.parseMarkedContentProps(this.oc,null)),void 0!==c&&n.addOp(D,["OC",c]),n.addOp(80,[this.data.id,this.data.rect,g,this.getRotationMatrix(s),r]);const h=new re(a);return await t.getOperatorList({stream:h,task:e,resources:this._fieldResources.mergedResources,operatorList:n}),n.addOp(81,[]),void 0!==c&&n.addOp(k,[]),{opList:n,separateForm:!1,separateCanvas:r}}_getMKDict(t){const e=new Ct(null);return t&&e.set("R",t),this.borderColor&&e.set("BC",xQ(this.borderColor)),this.backgroundColor&&e.set("BG",xQ(this.backgroundColor)),e.size>0?e:null}amendSavedDict(t,e){}async save(t,e,A){const i=A?.get(this.data.id);let s=i?.value,a=i?.rotation;if(s===this.data.fieldValue||void 0===s){if(!this._hasValueFromXFA&&void 0===a)return null;s||=this.data.fieldValue}if(void 0===a&&!this._hasValueFromXFA&&Array.isArray(s)&&Array.isArray(this.data.fieldValue)&&s.length===this.data.fieldValue.length&&s.every(((t,e)=>t===this.data.fieldValue[e])))return null;void 0===a&&(a=this.rotation);let n=null;if(!this._needAppearances&&(n=await this._getAppearance(t,e,8,A),null===n))return null;let o=!1;n?.needAppearances&&(o=!0,n=null);const{xref:g}=t,c=g.fetchIfRef(this.ref);if(!(c instanceof Ct))return null;const h=new Ct(g);for(const t of c.getKeys())"AP"!==t&&h.set(t,c.getRaw(t));const l={path:this.data.fieldName,value:s},I=t=>ee(t)?t:ie(t,!0);h.set("V",Array.isArray(s)?s.map(I):I(s)),this.amendSavedDict(A,h);const C=this._getMKDict(a);C&&h.set("MK",C);const B=[],d=[{ref:this.ref,data:"",xfa:l,needAppearances:o}];if(null!==n){const t=g.getNewTemporaryRef(),e=new Ct(g);h.set("AP",e),e.set("N",t);const i=this._getSaveFieldResources(g),s=new re(n),a=s.dict=new Ct(g);a.set("Subtype",ht.get("Form")),a.set("Resources",i),a.set("BBox",[0,0,this.data.rect[2]-this.data.rect[0],this.data.rect[3]-this.data.rect[1]]);const o=this.getRotationMatrix(A);o!==r&&a.set("Matrix",o),await _o(t,s,B,g),d.push({ref:t,data:B.join(""),xfa:null,needAppearances:!1}),B.length=0}return h.set("M",`D:${it()}`),await _o(this.ref,h,B,g),d[0].data=B.join(""),d}async _getAppearance(t,e,A,i){if(this.hasFieldFlag(C))return null;const s=i?.get(this.data.id);let a,n;if(s&&(a=s.formattedValue||s.value,n=s.rotation),void 0===n&&void 0===a&&!this._needAppearances&&(!this._hasValueFromXFA||this.appearance))return null;const r=this.getBorderAndBackgroundAppearances(i);if(void 0===a&&(a=this.data.fieldValue,!a))return`/Tx BMC q ${r}Q EMC`;if(Array.isArray(a)&&1===a.length&&(a=a[0]),G("string"==typeof a,"Expected `value` to be a string."),a=a.trim(),this.data.combo){const t=this.data.options.find((({exportValue:t})=>a===t));a=t?.displayValue||a}if(""===a)return`/Tx BMC q ${r}Q EMC`;void 0===n&&(n=this.rotation);let o,g=-1;this.data.multiLine?(o=a.split(/\r\n?|\n/).map((t=>t.normalize("NFC"))),g=o.length):o=[a.replace(/\r\n?|\n/,"").normalize("NFC")];let h=this.data.rect[3]-this.data.rect[1],l=this.data.rect[2]-this.data.rect[0];90!==n&&270!==n||([l,h]=[h,l]),this._defaultAppearance||(this.data.defaultAppearanceData=Bo(this._defaultAppearance="/Helvetica 0 Tf 0 g"));let I,B,d,u=await UQ._getFontData(t,e,this.data.defaultAppearanceData,this._fieldResources.mergedResources);const Q=[];let E=!1;for(const t of o){const e=u.encodeString(t);e.length>1&&(E=!0),Q.push(e.join(""))}if(E&&8&A)return{needAppearances:!0};if(E&&this._isOffscreenCanvasSupported){const A=this.data.comb?"monospace":"sans-serif",i=new Eo(t.xref,A),s=i.createFontResources(o.join("")),n=s.getRaw("Font");if(this._fieldResources.mergedResources.has("Font")){const t=this._fieldResources.mergedResources.get("Font");for(const e of n.getKeys())t.set(e,n.getRaw(e))}else this._fieldResources.mergedResources.set("Font",n);const r=i.fontName.name;u=await UQ._getFontData(t,e,{fontName:r,fontSize:0},s);for(let t=0,e=Q.length;t<e;t++)Q[t]=ie(o[t]);const c=Object.assign(Object.create(null),this.data.defaultAppearanceData);this.data.defaultAppearanceData.fontSize=0,this.data.defaultAppearanceData.fontName=r,[I,B,d]=this._computeFontSize(h-2,l-4,a,u,g),this.data.defaultAppearanceData=c}else this._isOffscreenCanvasSupported||N("_getAppearance: OffscreenCanvas is not supported, annotation may not render correctly."),[I,B,d]=this._computeFontSize(h-2,l-4,a,u,g);let f=u.descent;f=isNaN(f)?c*d:Math.max(c*d,Math.abs(f)*B);const p=Math.min(Math.floor((h-B)/2),1),m=this.data.textAlignment;if(this.data.multiLine)return this._getMultilineAppearance(I,Q,u,B,l,h,m,2,p,f,d,i);if(this.data.comb)return this._getCombAppearance(I,u,Q[0],B,l,h,2,p,f,d,i);const y=p+f;return 0===m||m>2?`/Tx BMC q ${r}BT `+I+` 1 0 0 1 ${$t(2)} ${$t(y)} Tm (${Pt(Q[0])}) Tj ET Q EMC`:`/Tx BMC q ${r}BT `+I+` 1 0 0 1 0 0 Tm ${this._renderText(Q[0],u,B,l,m,{shift:0},2,y)} ET Q EMC`}static async _getFontData(t,e,A,i){const s=new $r,a={font:null,clone(){return this}},{fontName:n,fontSize:r}=A;return await t.handleSetFont(i,[n&&ht.get(n),r],null,s,e,a,null),a.font}_getTextWidth(t,e){return e.charsToGlyphs(t).reduce(((t,e)=>t+e.width),0)/1e3}_computeFontSize(t,e,A,i,s){let{fontSize:a}=this.data.defaultAppearanceData,n=(a||12)*g,r=Math.round(t/n);if(!a){const o=t=>Math.floor(100*t)/100;if(-1===s){const s=this._getTextWidth(A,i);a=o(Math.min(t/g,s>e?e/s:1/0)),r=1}else{const c=A.split(/\r\n?|\n/),h=[];for(const t of c){const e=i.encodeString(t).join(""),A=i.charsToGlyphs(e),s=i.getCharPositions(e);h.push({line:e,glyphs:A,positions:s})}const l=A=>{let s=0;for(const a of h)if(s+=this._splitLine(null,i,A,e,a).length*A,s>t)return!0;return!1};for(r=Math.max(r,s);n=t/r,a=o(n/g),l(a);)r++}const{fontName:c,fontColor:h}=this.data.defaultAppearanceData;this._defaultAppearance=function({fontSize:t,fontName:e,fontColor:A}){return`/${qt(e)} ${t} Tf ${Qo(A,!0)}`}({fontSize:a,fontName:c,fontColor:h})}return[this._defaultAppearance,a,t/r]}_renderText(t,e,A,i,s,a,n,r){let o;o=1===s?(i-this._getTextWidth(t,e)*A)/2:2===s?i-this._getTextWidth(t,e)*A-n:n;const g=$t(o-a.shift);return a.shift=o,`${g} ${r=$t(r)} Td (${Pt(t)}) Tj`}_getSaveFieldResources(t){const{localResources:e,appearanceResources:A,acroFormResources:i}=this._fieldResources,s=this.data.defaultAppearanceData?.fontName;if(!s)return e||Ct.empty;for(const t of[e,A])if(t instanceof Ct){const e=t.get("Font");if(e instanceof Ct&&e.has(s))return t}if(i instanceof Ct){const A=i.get("Font");if(A instanceof Ct&&A.has(s)){const i=new Ct(t);i.set(s,A.getRaw(s));const a=new Ct(t);return a.set("Font",i),Ct.merge({xref:t,dictArray:[a,e],mergeSubDicts:!0})}}return e||Ct.empty}getFieldObject(){return null}}class HQ extends UQ{constructor(t){super(t);const{dict:e}=t;e.has("PMD")&&(this.flags|=2,this.data.hidden=!0,N("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 A=Rt({dict:e,key:"Q"});(!Number.isInteger(A)||A<0||A>2)&&(A=null),this.data.textAlignment=A;let i=Rt({dict:e,key:"MaxLen"});(!Number.isInteger(i)||i<0)&&(i=0),this.data.maxLen=i,this.data.multiLine=this.hasFieldFlag(4096),this.data.comb=this.hasFieldFlag(16777216)&&!this.hasFieldFlag(4096)&&!this.hasFieldFlag(C)&&!this.hasFieldFlag(1048576)&&0!==this.data.maxLen,this.data.doNotScroll=this.hasFieldFlag(8388608)}get hasTextContent(){return!!this.appearance&&!this._needAppearances}_getCombAppearance(t,e,A,i,s,a,n,r,o,g,c){const h=s/this.data.maxLen,l=this.getBorderAndBackgroundAppearances(c),I=[],C=e.getCharPositions(A);for(const[t,e]of C)I.push(`(${Pt(A.substring(t,e))}) Tj`);const B=I.join(` ${$t(h)} 0 Td `);return`/Tx BMC q ${l}BT `+t+` 1 0 0 1 ${$t(n)} ${$t(r+o)} Tm ${B} ET Q EMC`}_getMultilineAppearance(t,e,A,i,s,a,n,r,o,g,c,h){const l=[],I=s-2*r,C={shift:0};for(let t=0,a=e.length;t<a;t++){const a=e[t],h=this._splitLine(a,A,i,I);for(let e=0,a=h.length;e<a;e++){const a=h[e],I=0===t&&0===e?-o-(c-g):-c;l.push(this._renderText(a,A,i,s,n,C,r,I))}}const B=this.getBorderAndBackgroundAppearances(h),d=l.join("\n");return`/Tx BMC q ${B}BT `+t+` 1 0 0 1 0 ${$t(a)} Tm ${d} ET Q EMC`}_splitLine(t,e,A,i,s={}){t=s.line||t;const a=s.glyphs||e.charsToGlyphs(t);if(a.length<=1)return[t];const n=s.positions||e.getCharPositions(t),r=A/1e3,o=[];let g=-1,c=-1,h=-1,l=0,I=0;for(let e=0,A=a.length;e<A;e++){const[A,s]=n[e],C=a[e],B=C.width*r;" "===C.unicode?I+B>i?(o.push(t.substring(l,A)),l=A,I=B,g=-1,h=-1):(I+=B,g=A,c=s,h=e):I+B>i?-1!==g?(o.push(t.substring(l,c)),l=c,e=h+1,g=-1,I=0):(o.push(t.substring(l,A)),l=A,I=B):I+=B}return l<t.length&&o.push(t.substring(l,t.length)),o}getFieldObject(){return{id:this.data.id,value:this.data.fieldValue,defaultValue:this.data.defaultFieldValue||"",multiline:this.data.multiLine,password:this.hasFieldFlag(C),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,type:"text"}}}class JQ extends UQ{constructor(t){super(t),this.checkedAppearance=null,this.uncheckedAppearance=null,this.data.checkBox=!this.hasFieldFlag(32768)&&!this.hasFieldFlag(B),this.data.radioButton=this.hasFieldFlag(32768)&&!this.hasFieldFlag(B),this.data.pushButton=this.hasFieldFlag(B),this.data.isTooltipOnly=!1,this.data.checkBox?this._processCheckBox(t):this.data.radioButton?this._processRadioButton(t):this.data.pushButton?(this.data.hasOwnCanvas=!0,this.data.noHTML=!1,this._processPushButton(t)):N("Invalid field flags for button widget annotation")}async getOperatorList(t,e,A,i,s){if(this.data.pushButton)return super.getOperatorList(t,e,A,!1,s);let a=null,n=null;if(s){const t=s.get(this.data.id);a=t?t.value:null,n=t?t.rotation:null}if(null===a&&this.appearance)return super.getOperatorList(t,e,A,i,s);null==a&&(a=this.data.checkBox?this.data.fieldValue===this.data.exportValue:this.data.fieldValue===this.data.buttonValue);const o=a?this.checkedAppearance:this.uncheckedAppearance;if(o){const a=this.appearance,g=Jt(o.dict.getArray("Matrix"),r);n&&o.dict.set("Matrix",this.getRotationMatrix(s)),this.appearance=o;const c=super.getOperatorList(t,e,A,i,s);return this.appearance=a,o.dict.set("Matrix",g),c}return{opList:new $r,separateForm:!1,separateCanvas:!1}}async save(t,e,A){return this.data.checkBox?this._saveCheckbox(t,e,A):this.data.radioButton?this._saveRadioButton(t,e,A):null}async _saveCheckbox(t,e,A){if(!A)return null;const i=A.get(this.data.id);let s=i?.rotation,a=i?.value;if(void 0===s){if(void 0===a)return null;if(this.data.fieldValue===this.data.exportValue===a)return null}const n=t.xref.fetchIfRef(this.ref);if(!(n instanceof Ct))return null;void 0===s&&(s=this.rotation),void 0===a&&(a=this.data.fieldValue===this.data.exportValue);const r={path:this.data.fieldName,value:a?this.data.exportValue:""},o=ht.get(a?this.data.exportValue:"Off");n.set("V",o),n.set("AS",o),n.set("M",`D:${it()}`);const g=this._getMKDict(s);g&&n.set("MK",g);const c=[];return await _o(this.ref,n,c,t.xref),[{ref:this.ref,data:c.join(""),xfa:r}]}async _saveRadioButton(t,e,A){if(!A)return null;const i=A.get(this.data.id);let s=i?.rotation,a=i?.value;if(void 0===s){if(void 0===a)return null;if(this.data.fieldValue===this.data.buttonValue===a)return null}const n=t.xref.fetchIfRef(this.ref);if(!(n instanceof Ct))return null;void 0===a&&(a=this.data.fieldValue===this.data.buttonValue),void 0===s&&(s=this.rotation);const r={path:this.data.fieldName,value:a?this.data.buttonValue:""},o=ht.get(a?this.data.buttonValue:"Off"),g=[];let c=null;if(a)if(this.parent instanceof Bt){const e=t.xref.fetch(this.parent);e.set("V",o),await _o(this.parent,e,g,t.xref),c=g.join(""),g.length=0}else this.parent instanceof Ct&&this.parent.set("V",o);n.set("AS",o),n.set("M",`D:${it()}`);const h=this._getMKDict(s);h&&n.set("MK",h),await _o(this.ref,n,g,t.xref);const l=[{ref:this.ref,data:g.join(""),xfa:r}];return c&&l.push({ref:this.parent,data:c,xfa:null}),l}_getDefaultCheckedAppearance(t,e){const A=this.data.rect[2]-this.data.rect[0],i=this.data.rect[3]-this.data.rect[1],s=[0,0,A,i],a=.8*Math.min(A,i);let n,r;"check"===e?(n={width:.755*a,height:.705*a},r="3"):"disc"===e?(n={width:.791*a,height:.705*a},r="l"):v(`_getDefaultCheckedAppearance - unsupported type: ${e}`);const o=`q BT /PdfJsZaDb ${a} Tf 0 g ${$t((A-n.width)/2)} ${$t((i-n.height)/2)} Td (${r}) Tj ET Q`,g=new Ct(t.xref);g.set("FormType",1),g.set("Subtype",ht.get("Form")),g.set("Type",ht.get("XObject")),g.set("BBox",s),g.set("Matrix",[1,0,0,1,0,0]),g.set("Length",o.length);const c=new Ct(t.xref),h=new Ct(t.xref);h.set("PdfJsZaDb",this.fallbackFontDict),c.set("Font",h),g.set("Resources",c),this.checkedAppearance=new re(o),this.checkedAppearance.dict=g,this._streams.push(this.checkedAppearance)}_processCheckBox(t){const e=t.dict.get("AP");if(!(e instanceof Ct))return;const A=e.get("N");if(!(A instanceof Ct))return;const i=this._decodeFormValue(t.dict.get("AS"));"string"==typeof i&&(this.data.fieldValue=i);const s=null!==this.data.fieldValue&&"Off"!==this.data.fieldValue?this.data.fieldValue:"Yes",a=A.getKeys();if(0===a.length)a.push("Off",s);else if(1===a.length)"Off"===a[0]?a.push(s):a.unshift("Off");else if(a.includes(s))a.length=0,a.push("Off",s);else{const t=a.find((t=>"Off"!==t));a.length=0,a.push("Off",t)}a.includes(this.data.fieldValue)||(this.data.fieldValue="Off"),this.data.exportValue=a[1];const n=A.get(this.data.exportValue);this.checkedAppearance=n instanceof mt?n:null;const r=A.get("Off");this.uncheckedAppearance=r instanceof mt?r:null,this.checkedAppearance?this._streams.push(this.checkedAppearance):this._getDefaultCheckedAppearance(t,"check"),this.uncheckedAppearance&&this._streams.push(this.uncheckedAppearance),this._fallbackFontDict=this.fallbackFontDict,null===this.data.defaultFieldValue&&(this.data.defaultFieldValue="Off")}_processRadioButton(t){this.data.buttonValue=null;const e=t.dict.get("Parent");if(e instanceof Ct){this.parent=t.dict.getRaw("Parent");const A=e.get("V");A instanceof ht&&(this.data.fieldValue=this._decodeFormValue(A))}const A=t.dict.get("AP");if(!(A instanceof Ct))return;const i=A.get("N");if(!(i instanceof Ct))return;for(const t of i.getKeys())if("Off"!==t){this.data.buttonValue=this._decodeFormValue(t);break}const s=i.get(this.data.buttonValue);this.checkedAppearance=s instanceof mt?s:null;const a=i.get("Off");this.uncheckedAppearance=a instanceof mt?a:null,this.checkedAppearance?this._streams.push(this.checkedAppearance):this._getDefaultCheckedAppearance(t,"disc"),this.uncheckedAppearance&&this._streams.push(this.uncheckedAppearance),this._fallbackFontDict=this.fallbackFontDict,null===this.data.defaultFieldValue&&(this.data.defaultFieldValue="Off")}_processPushButton(t){const{dict:e,annotationGlobals:A}=t;e.has("A")||e.has("AA")||this.data.alternativeText?(this.data.isTooltipOnly=!e.has("A")&&!e.has("AA"),rg.parseDestDictionary({destDict:e,resultObj:this.data,docBaseUrl:A.baseUrl,docAttachments:A.attachments})):N("Push buttons without action dictionaries are not supported")}getFieldObject(){let t,e="button";return this.data.checkBox?(e="checkbox",t=this.data.exportValue):this.data.radioButton&&(e="radiobutton",t=this.data.buttonValue),{id:this.data.id,value:this.data.fieldValue||"Off",defaultValue:this.data.defaultFieldValue,exportValues:t,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:e}}get fallbackFontDict(){const t=new Ct;return t.set("BaseFont",ht.get("ZapfDingbats")),t.set("Type",ht.get("FallbackType")),t.set("Subtype",ht.get("FallbackType")),t.set("Encoding",ht.get("ZapfDingbatsEncoding")),L(this,"fallbackFontDict",t)}}class YQ extends UQ{constructor(t){super(t);const{dict:e,xref:A}=t;this.indices=e.getArray("I"),this.hasIndices=Array.isArray(this.indices)&&this.indices.length>0,this.data.options=[];const i=Rt({dict:e,key:"Opt"});if(Array.isArray(i))for(let t=0,e=i.length;t<e;t++){const e=A.fetchIfRef(i[t]),s=Array.isArray(e);this.data.options[t]={exportValue:this._decodeFormValue(s?A.fetchIfRef(e[0]):e),displayValue:this._decodeFormValue(s?A.fetchIfRef(e[1]):e)}}if(this.hasIndices){this.data.fieldValue=[];const t=this.data.options.length;for(const e of this.indices)Number.isInteger(e)&&e>=0&&e<t&&this.data.fieldValue.push(this.data.options[e].exportValue)}else"string"==typeof this.data.fieldValue?this.data.fieldValue=[this.data.fieldValue]:this.data.fieldValue||(this.data.fieldValue=[]);this.data.combo=this.hasFieldFlag(131072),this.data.multiSelect=this.hasFieldFlag(2097152),this._hasText=!0}getFieldObject(){const t=this.data.combo?"combobox":"listbox",e=this.data.fieldValue.length>0?this.data.fieldValue[0]:null;return{id:this.data.id,value:e,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:t}}amendSavedDict(t,e){if(!this.hasIndices)return;let A=t?.get(this.data.id)?.value;Array.isArray(A)||(A=[A]);const i=[],{options:s}=this.data;for(let t=0,e=0,a=s.length;t<a;t++)s[t].exportValue===A[e]&&(i.push(t),e+=1);e.set("I",i)}async _getAppearance(t,e,A,i){if(this.data.combo)return super._getAppearance(t,e,A,i);let s,a;const n=i?.get(this.data.id);if(n&&(a=n.rotation,s=n.value),void 0===a&&void 0===s&&!this._needAppearances)return null;void 0===s?s=this.data.fieldValue:Array.isArray(s)||(s=[s]);let r=this.data.rect[3]-this.data.rect[1],o=this.data.rect[2]-this.data.rect[0];90!==a&&270!==a||([o,r]=[r,o]);const c=this.data.options.length,h=[];for(let t=0;t<c;t++){const{exportValue:e}=this.data.options[t];s.includes(e)&&h.push(t)}this._defaultAppearance||(this.data.defaultAppearanceData=Bo(this._defaultAppearance="/Helvetica 0 Tf 0 g"));const l=await UQ._getFontData(t,e,this.data.defaultAppearanceData,this._fieldResources.mergedResources);let I,{fontSize:C}=this.data.defaultAppearanceData;if(C)I=this._defaultAppearance;else{const t=(r-1)/c;let e,A=-1;for(const{displayValue:t}of this.data.options){const i=this._getTextWidth(t,l);i>A&&(A=i,e=t)}[I,C]=this._computeFontSize(t,o-4,e,l,-1)}const B=C*g,d=(B-C)/2,u=Math.floor(r/B);let Q=0;if(h.length>0){const t=Math.min(...h),e=Math.max(...h);Q=Math.max(0,e-u+1),Q>t&&(Q=t)}const E=Math.min(Q+u+1,c),f=["/Tx BMC q",`1 1 ${o} ${r} re W n`];if(h.length){f.push("0.600006 0.756866 0.854904 rg");for(const t of h)Q<=t&&t<E&&f.push(`1 ${r-(t-Q+1)*B} ${o} ${B} re f`)}f.push("BT",I,`1 0 0 1 0 ${r} Tm`);const p={shift:0};for(let t=Q;t<E;t++){const{displayValue:e}=this.data.options[t],A=t===Q?d:0;f.push(this._renderText(e,l,C,o,0,p,2,-B+A))}return f.push("ET Q EMC"),f.join("\n")}}class TQ extends UQ{constructor(t){super(t),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 KQ extends LQ{constructor(t){super(t),this.data.noRotate=!0,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1;const{dict:e}=t;this.data.annotationType=1,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=e.has("Name")?e.get("Name").name:"Note"),e.has("State")?(this.data.state=e.get("State")||null,this.data.stateModel=e.get("StateModel")||null):(this.data.state=null,this.data.stateModel=null)}}class qQ extends GQ{constructor(t){super(t);const{dict:e,annotationGlobals:A}=t;this.data.annotationType=2,this.data.noHTML=!1;const i=NQ(e,this.rectangle);i&&(this.data.quadPoints=i),this.data.borderColor||=this.data.color,rg.parseDestDictionary({destDict:e,resultObj:this.data,docBaseUrl:A.baseUrl,docAttachments:A.attachments})}}class PQ extends GQ{constructor(t){super(t);const{dict:e}=t;this.data.annotationType=16,this.data.noHTML=!1,this.data.rect[0]!==this.data.rect[2]&&this.data.rect[1]!==this.data.rect[3]||(this.data.rect=null);let A=e.get("Parent");if(A){if(this.data.parentRect=Tt(A.getArray("Rect"),null),Qt(A.get("RT"),I)&&(A=A.get("IRT")),A.has("M")?(this.setModificationDate(A.get("M")),this.data.modificationDate=this.modificationDate):this.data.modificationDate=null,A.has("C")?(this.setColor(A.getArray("C")),this.data.color=this.color):this.data.color=null,!this.viewable){const t=A.get("F");this._isViewable(t)&&this.setFlags(t)}this.setTitle(A.get("T")),this.data.titleObj=this._title,this.setContents(A.get("Contents")),this.data.contentsObj=this._contents,A.has("RC")&&(this.data.richText=SQ.getRichTextAsHtml(A.get("RC"))),this.data.open=!!e.get("Open")}else N("Popup annotation has a missing or invalid parent annotation.")}}class _Q extends LQ{constructor(t){super(t),this.data.hasOwnCanvas=!this.data.noHTML,this.data.noHTML=!1;const{evaluatorOptions:e,xref:A}=t;if(this.data.annotationType=3,this.setDefaultAppearance(t),this._hasAppearance=!!this.appearance,this._hasAppearance){const{fontColor:t,fontSize:i}=function(t,e,A){return new uo(t,e,A).parse()}(this.appearance,e,A);this.data.defaultAppearanceData.fontColor=t,this.data.defaultAppearanceData.fontSize=i||10}else{this.data.defaultAppearanceData.fontSize||=10;const{fontColor:e,fontSize:i}=this.data.defaultAppearanceData;if(this._contents.str){this.data.textContent=this._contents.str.split(/\r\n?|\n/).map((t=>t.trimEnd()));const{coords:t,bbox:e,matrix:A}=Eo.getFirstPositionInfo(this.rectangle,this.rotation,i);this.data.textPosition=this._transformPoint(t,e,A)}if(this._isOffscreenCanvasSupported){const s=t.dict.get("CA"),a=new Eo(A,"sans-serif");this.appearance=a.createAppearance(this._contents.str,this.rectangle,this.rotation,i,e,s),this._streams.push(this.appearance)}else N("FreeTextAnnotation: OffscreenCanvas is not supported, annotation may not render correctly.")}}get hasTextContent(){return this._hasAppearance}static createNewDict(t,e,{apRef:A,ap:i}){const{color:s,fontSize:a,rect:n,rotation:r,user:o,value:g}=t,c=new Ct(e);c.set("Type",ht.get("Annot")),c.set("Subtype",ht.get("FreeText")),c.set("CreationDate",`D:${it()}`),c.set("Rect",n);const h=`/Helv ${a} Tf ${Qo(s,!0)}`;if(c.set("DA",h),c.set("Contents",ee(g)?g:ie(g,!0)),c.set("F",4),c.set("Border",[0,0,0]),c.set("Rotate",r),o&&c.set("T",ee(o)?o:ie(o,!0)),A||i){const t=new Ct(e);c.set("AP",t),A?t.set("N",A):t.set("N",i)}return c}static async createNewAppearanceStream(t,e,A){const{baseFontRef:i,evaluator:s,task:a}=A,{color:n,fontSize:r,rect:o,rotation:c,value:h}=t,l=new Ct(e),I=new Ct(e);if(i)I.set("Helv",i);else{const t=new Ct(e);t.set("BaseFont",ht.get("Helvetica")),t.set("Type",ht.get("Font")),t.set("Subtype",ht.get("Type1")),t.set("Encoding",ht.get("WinAnsiEncoding")),I.set("Helv",t)}l.set("Font",I);const C=await UQ._getFontData(s,a,{fontName:"Helv",fontSize:r},l),[B,d,u,Q]=o;let E=u-B,f=Q-d;c%180!=0&&([E,f]=[f,E]);const p=h.split("\n"),m=r/1e3;let y=-1/0;const w=[];for(let t of p){const e=C.encodeString(t);if(e.length>1)return null;t=e.join(""),w.push(t);let A=0;const i=C.charsToGlyphs(t);for(const t of i)A+=t.width*m;y=Math.max(y,A)}let b=1;y>E&&(b=E/y);let D=1;const k=g*r,S=1*r,F=k*p.length;F>f&&(D=f/F);const R=r*Math.min(b,D);let x,N,v;switch(c){case 0:v=[1,0,0,1],N=[o[0],o[1],E,f],x=[o[0],o[3]-S];break;case 90:v=[0,1,-1,0],N=[o[1],-o[2],E,f],x=[o[1],-o[0]-S];break;case 180:v=[-1,0,0,-1],N=[-o[2],-o[3],E,f],x=[-o[2],-o[1]-S];break;case 270:v=[0,-1,1,0],N=[-o[3],o[0],E,f],x=[-o[3],o[2]-S]}const G=["q",`${v.join(" ")} 0 0 cm`,`${N.join(" ")} re W n`,"BT",`${Qo(n,!0)}`,`0 Tc /Helv ${$t(R)} Tf`];G.push(`${x.join(" ")} Td (${Pt(w[0])}) Tj`);const M=$t(k);for(let t=1,e=w.length;t<e;t++){const e=w[t];G.push(`0 -${M} Td (${Pt(e)}) Tj`)}G.push("ET","Q");const L=G.join("\n"),U=new Ct(e);U.set("FormType",1),U.set("Subtype",ht.get("Form")),U.set("Type",ht.get("XObject")),U.set("BBox",o),U.set("Resources",l),U.set("Matrix",[1,0,0,1,-o[0],-o[1]]);const H=new re(L);return H.dict=U,H}}class OQ extends LQ{constructor(t){super(t);const{dict:e,xref:A}=t;this.data.annotationType=4,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1;const i=Yt(e.getArray("L"),[0,0,0,0]);if(this.data.lineCoordinates=X.normalizeRect(i),this.setLineEndings(e.getArray("LE")),this.data.lineEndings=this.lineEndings,!this.appearance){const t=this.color?xQ(this.color):[0,0,0],s=e.get("CA"),a=RQ(e.getArray("IC"),null),n=a?xQ(a):null,r=n?s:null,o=this.borderStyle.width||1,g=2*o,c=[this.data.lineCoordinates[0]-g,this.data.lineCoordinates[1]-g,this.data.lineCoordinates[2]+g,this.data.lineCoordinates[3]+g];X.intersect(this.rectangle,c)||(this.rectangle=c),this._setDefaultAppearance({xref:A,extra:`${o} w`,strokeColor:t,fillColor:n,strokeAlpha:s,fillAlpha:r,pointsCallback:(t,e)=>(t.push(`${i[0]} ${i[1]} m`,`${i[2]} ${i[3]} l`,"S"),[e[0]-o,e[2]+o,e[7]-o,e[3]+o])})}}}class WQ extends LQ{constructor(t){super(t);const{dict:e,xref:A}=t;if(this.data.annotationType=5,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1,!this.appearance){const t=this.color?xQ(this.color):[0,0,0],i=e.get("CA"),s=RQ(e.getArray("IC"),null),a=s?xQ(s):null,n=a?i:null;if(0===this.borderStyle.width&&!a)return;this._setDefaultAppearance({xref:A,extra:`${this.borderStyle.width} w`,strokeColor:t,fillColor:a,strokeAlpha:i,fillAlpha:n,pointsCallback:(t,e)=>{const A=e[4]+this.borderStyle.width/2,i=e[5]+this.borderStyle.width/2,s=e[6]-e[4]-this.borderStyle.width,n=e[3]-e[7]-this.borderStyle.width;return t.push(`${A} ${i} ${s} ${n} re`),a?t.push("B"):t.push("S"),[e[0],e[2],e[7],e[3]]}})}}}class ZQ extends LQ{constructor(t){super(t);const{dict:e,xref:A}=t;if(this.data.annotationType=6,!this.appearance){const t=this.color?xQ(this.color):[0,0,0],i=e.get("CA"),s=RQ(e.getArray("IC"),null),a=s?xQ(s):null,n=a?i:null;if(0===this.borderStyle.width&&!a)return;const r=4/3*Math.tan(Math.PI/8);this._setDefaultAppearance({xref:A,extra:`${this.borderStyle.width} w`,strokeColor:t,fillColor:a,strokeAlpha:i,fillAlpha:n,pointsCallback:(t,e)=>{const A=e[0]+this.borderStyle.width/2,i=e[1]-this.borderStyle.width/2,s=e[6]-this.borderStyle.width/2,n=e[7]+this.borderStyle.width/2,o=A+(s-A)/2,g=i+(n-i)/2,c=(s-A)/2*r,h=(n-i)/2*r;return t.push(`${o} ${n} m`,`${o+c} ${n} ${s} ${g+h} ${s} ${g} c`,`${s} ${g-h} ${o+c} ${i} ${o} ${i} c`,`${o-c} ${i} ${A} ${g-h} ${A} ${g} c`,`${A} ${g+h} ${o-c} ${n} ${o} ${n} c`,"h"),a?t.push("B"):t.push("S"),[e[0],e[2],e[7],e[3]]}})}}}class jQ extends LQ{constructor(t){super(t);const{dict:e,xref:A}=t;this.data.annotationType=8,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1,this.data.vertices=null,this instanceof VQ||(this.setLineEndings(e.getArray("LE")),this.data.lineEndings=this.lineEndings);const i=e.getArray("Vertices");if(!Ht(i,null))return;const s=this.data.vertices=Float32Array.from(i);if(!this.appearance){const t=this.color?xQ(this.color):[0,0,0],i=e.get("CA"),a=this.borderStyle.width||1,n=2*a,r=[1/0,1/0,-1/0,-1/0];for(let t=0,e=s.length;t<e;t+=2)r[0]=Math.min(r[0],s[t]-n),r[1]=Math.min(r[1],s[t+1]-n),r[2]=Math.max(r[2],s[t]+n),r[3]=Math.max(r[3],s[t+1]+n);X.intersect(this.rectangle,r)||(this.rectangle=r),this._setDefaultAppearance({xref:A,extra:`${a} w`,strokeColor:t,strokeAlpha:i,pointsCallback:(t,e)=>{for(let e=0,A=s.length;e<A;e+=2)t.push(`${s[e]} ${s[e+1]} ${0===e?"m":"l"}`);return t.push("S"),[e[0],e[2],e[7],e[3]]}})}}}class VQ extends jQ{constructor(t){super(t),this.data.annotationType=7}}class XQ extends LQ{constructor(t){super(t),this.data.annotationType=14}}class zQ extends LQ{constructor(t){super(t),this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1;const{dict:e,xref:A}=t;this.data.annotationType=15,this.data.inkLists=[];const i=e.getArray("InkList");if(Array.isArray(i)){for(let t=0,e=i.length;t<e;++t){if(!Array.isArray(i[t]))continue;const e=new Float32Array(i[t].length);this.data.inkLists.push(e);for(let s=0,a=i[t].length;s<a;s+=2){const a=A.fetchIfRef(i[t][s]),n=A.fetchIfRef(i[t][s+1]);"number"==typeof a&&"number"==typeof n&&(e[s]=a,e[s+1]=n)}}if(!this.appearance){const t=this.color?xQ(this.color):[0,0,0],i=e.get("CA"),s=this.borderStyle.width||1,a=2*s,n=[1/0,1/0,-1/0,-1/0];for(const t of this.data.inkLists)for(let e=0,A=t.length;e<A;e+=2)n[0]=Math.min(n[0],t[e]-a),n[1]=Math.min(n[1],t[e+1]-a),n[2]=Math.max(n[2],t[e]+a),n[3]=Math.max(n[3],t[e+1]+a);X.intersect(this.rectangle,n)||(this.rectangle=n),this._setDefaultAppearance({xref:A,extra:`${s} w`,strokeColor:t,strokeAlpha:i,pointsCallback:(t,e)=>{for(const e of this.data.inkLists){for(let A=0,i=e.length;A<i;A+=2)t.push(`${e[A]} ${e[A+1]} ${0===A?"m":"l"}`);t.push("S")}return[e[0],e[2],e[7],e[3]]}})}}}static createNewDict(t,e,{apRef:A,ap:i}){const{color:s,opacity:a,paths:n,outlines:r,rect:o,rotation:g,thickness:c}=t,h=new Ct(e);h.set("Type",ht.get("Annot")),h.set("Subtype",ht.get("Ink")),h.set("CreationDate",`D:${it()}`),h.set("Rect",o),h.set("InkList",r?.points||n.map((t=>t.points))),h.set("F",4),h.set("Rotate",g),r&&h.set("IT",ht.get("InkHighlight"));const l=new Ct(e);h.set("BS",l),l.set("W",c),h.set("C",Array.from(s,(t=>t/255))),h.set("CA",a);const I=new Ct(e);return h.set("AP",I),A?I.set("N",A):I.set("N",i),h}static async createNewAppearanceStream(t,e,A){if(t.outlines)return this.createNewAppearanceStreamForHighlight(t,e,A);const{color:i,rect:s,paths:a,thickness:n,opacity:r}=t,o=[`${n} w 1 J 1 j`,`${Qo(i,!1)}`];1!==r&&o.push("/R0 gs");const g=[];for(const{bezier:t}of a){if(g.length=0,g.push(`${$t(t[0])} ${$t(t[1])} m`),2===t.length)g.push(`${$t(t[0])} ${$t(t[1])} l S`);else{for(let e=2,A=t.length;e<A;e+=6){const A=t.slice(e,e+6).map($t).join(" ");g.push(`${A} c`)}g.push("S")}o.push(g.join("\n"))}const c=o.join("\n"),h=new Ct(e);if(h.set("FormType",1),h.set("Subtype",ht.get("Form")),h.set("Type",ht.get("XObject")),h.set("BBox",s),h.set("Length",c.length),1!==r){const t=new Ct(e),A=new Ct(e),i=new Ct(e);i.set("CA",r),i.set("Type",ht.get("ExtGState")),A.set("R0",i),t.set("ExtGState",A),h.set("Resources",t)}const l=new re(c);return l.dict=h,l}static async createNewAppearanceStreamForHighlight(t,e,A){const{color:i,rect:s,outlines:{outline:a},opacity:n}=t,r=[`${Qo(i,!0)}`,"/R0 gs"];r.push(`${$t(a[4])} ${$t(a[5])} m`);for(let t=6,e=a.length;t<e;t+=6)if(isNaN(a[t])||null===a[t])r.push(`${$t(a[t+4])} ${$t(a[t+5])} l`);else{const e=a.slice(t,t+6).map($t).join(" ");r.push(`${e} c`)}r.push("h f");const o=r.join("\n"),g=new Ct(e);g.set("FormType",1),g.set("Subtype",ht.get("Form")),g.set("Type",ht.get("XObject")),g.set("BBox",s),g.set("Length",o.length);const c=new Ct(e),h=new Ct(e);c.set("ExtGState",h),g.set("Resources",c);const l=new Ct(e);h.set("R0",l),l.set("BM",ht.get("Multiply")),1!==n&&(l.set("ca",n),l.set("Type",ht.get("ExtGState")));const I=new re(o);return I.dict=g,I}}class $Q extends LQ{constructor(t){super(t);const{dict:e,xref:A}=t;if(this.data.annotationType=9,this.data.quadPoints=NQ(e,null)){const t=this.appearance?.dict.get("Resources");if(!this.appearance||!t?.has("ExtGState")){this.appearance&&N("HighlightAnnotation - ignoring built-in appearance stream.");const t=this.color?xQ(this.color):[1,1,0],i=e.get("CA");this._setDefaultAppearance({xref:A,fillColor:t,blendMode:"Multiply",fillAlpha:i,pointsCallback:(t,e)=>(t.push(`${e[0]} ${e[1]} m`,`${e[2]} ${e[3]} l`,`${e[6]} ${e[7]} l`,`${e[4]} ${e[5]} l`,"f"),[e[0],e[2],e[7],e[3]])})}}else this.data.popupRef=null}static createNewDict(t,e,{apRef:A,ap:i}){const{color:s,opacity:a,rect:n,rotation:r,user:o,quadPoints:g}=t,c=new Ct(e);if(c.set("Type",ht.get("Annot")),c.set("Subtype",ht.get("Highlight")),c.set("CreationDate",`D:${it()}`),c.set("Rect",n),c.set("F",4),c.set("Border",[0,0,0]),c.set("Rotate",r),c.set("QuadPoints",g),c.set("C",Array.from(s,(t=>t/255))),c.set("CA",a),o&&c.set("T",ee(o)?o:ie(o,!0)),A||i){const t=new Ct(e);c.set("AP",t),t.set("N",A||i)}return c}static async createNewAppearanceStream(t,e,A){const{color:i,rect:s,outlines:a,opacity:n}=t,r=[`${Qo(i,!0)}`,"/R0 gs"],o=[];for(const t of a){o.length=0,o.push(`${$t(t[0])} ${$t(t[1])} m`);for(let e=2,A=t.length;e<A;e+=2)o.push(`${$t(t[e])} ${$t(t[e+1])} l`);o.push("h"),r.push(o.join("\n"))}r.push("f*");const g=r.join("\n"),c=new Ct(e);c.set("FormType",1),c.set("Subtype",ht.get("Form")),c.set("Type",ht.get("XObject")),c.set("BBox",s),c.set("Length",g.length);const h=new Ct(e),l=new Ct(e);h.set("ExtGState",l),c.set("Resources",h);const I=new Ct(e);l.set("R0",I),I.set("BM",ht.get("Multiply")),1!==n&&(I.set("ca",n),I.set("Type",ht.get("ExtGState")));const C=new re(g);return C.dict=c,C}}class tE extends LQ{constructor(t){super(t);const{dict:e,xref:A}=t;if(this.data.annotationType=10,this.data.quadPoints=NQ(e,null)){if(!this.appearance){const t=this.color?xQ(this.color):[0,0,0],i=e.get("CA");this._setDefaultAppearance({xref:A,extra:"[] 0 d 0.571 w",strokeColor:t,strokeAlpha:i,pointsCallback:(t,e)=>(t.push(`${e[4]} ${e[5]+1.3} m`,`${e[6]} ${e[7]+1.3} l`,"S"),[e[0],e[2],e[7],e[3]])})}}else this.data.popupRef=null}}class eE extends LQ{constructor(t){super(t);const{dict:e,xref:A}=t;if(this.data.annotationType=11,this.data.quadPoints=NQ(e,null)){if(!this.appearance){const t=this.color?xQ(this.color):[0,0,0],i=e.get("CA");this._setDefaultAppearance({xref:A,extra:"[] 0 d 1 w",strokeColor:t,strokeAlpha:i,pointsCallback:(t,e)=>{const A=(e[1]-e[5])/6;let i=A,s=e[4];const a=e[5],n=e[6];t.push(`${s} ${a+i} m`);do{s+=2,i=0===i?A:0,t.push(`${s} ${a+i} l`)}while(s<n);return t.push("S"),[e[4],n,a-2*A,a+2*A]}})}}else this.data.popupRef=null}}class AE extends LQ{constructor(t){super(t);const{dict:e,xref:A}=t;if(this.data.annotationType=12,this.data.quadPoints=NQ(e,null)){if(!this.appearance){const t=this.color?xQ(this.color):[0,0,0],i=e.get("CA");this._setDefaultAppearance({xref:A,extra:"[] 0 d 1 w",strokeColor:t,strokeAlpha:i,pointsCallback:(t,e)=>(t.push((e[0]+e[4])/2+" "+(e[1]+e[5])/2+" m",(e[2]+e[6])/2+" "+(e[3]+e[7])/2+" l","S"),[e[0],e[2],e[7],e[3]])})}}else this.data.popupRef=null}}class iE extends LQ{constructor(t){super(t),this.data.annotationType=13,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1}static async createImage(t,e){const{width:A,height:i}=t,s=new OffscreenCanvas(A,i),a=s.getContext("2d",{alpha:!0});a.drawImage(t,0,0);const n=a.getImageData(0,0,A,i).data,r=new Uint32Array(n.buffer),o=r.some(j.isLittleEndian?t=>t>>>24!=255:t=>!!(255&~t));o&&(a.fillStyle="white",a.fillRect(0,0,A,i),a.drawImage(t,0,0));const g=s.convertToBlob({type:"image/jpeg",quality:1}).then((t=>t.arrayBuffer())),c=ht.get("XObject"),h=ht.get("Image"),l=new Ct(e);l.set("Type",c),l.set("Subtype",h),l.set("BitsPerComponent",8),l.set("ColorSpace",ht.get("DeviceRGB")),l.set("Filter",ht.get("DCTDecode")),l.set("BBox",[0,0,A,i]),l.set("Width",A),l.set("Height",i);let I=null;if(o){const t=new Uint8Array(r.length);if(j.isLittleEndian)for(let e=0,A=r.length;e<A;e++)t[e]=r[e]>>>24;else for(let e=0,A=r.length;e<A;e++)t[e]=255&r[e];const s=new Ct(e);s.set("Type",c),s.set("Subtype",h),s.set("BitsPerComponent",8),s.set("ColorSpace",ht.get("DeviceGray")),s.set("Width",A),s.set("Height",i),I=new ne(t,0,0,s)}return{imageStream:new ne(await g,0,0,l),smaskStream:I,width:A,height:i}}static createNewDict(t,e,{apRef:A,ap:i}){const{rect:s,rotation:a,user:n}=t,r=new Ct(e);if(r.set("Type",ht.get("Annot")),r.set("Subtype",ht.get("Stamp")),r.set("CreationDate",`D:${it()}`),r.set("Rect",s),r.set("F",4),r.set("Border",[0,0,0]),r.set("Rotate",a),n&&r.set("T",ee(n)?n:ie(n,!0)),A||i){const t=new Ct(e);r.set("AP",t),A?t.set("N",A):t.set("N",i)}return r}static async createNewAppearanceStream(t,e,A){const{rotation:i}=t,{imageRef:s,width:a,height:n}=A.image,r=new Ct(e),o=new Ct(e);r.set("XObject",o),o.set("Im0",s);const g=`q ${a} 0 0 ${n} 0 0 cm /Im0 Do Q`,c=new Ct(e);if(c.set("FormType",1),c.set("Subtype",ht.get("Form")),c.set("Type",ht.get("XObject")),c.set("BBox",[0,0,a,n]),c.set("Resources",r),i){const t=se(i,a,n);c.set("Matrix",t)}const h=new re(g);return h.dict=c,h}}class sE extends LQ{constructor(t){super(t);const{dict:e,xref:A}=t,i=new bo(e.get("FS"),A);this.data.annotationType=17,this.data.hasOwnCanvas=this.data.noRotate,this.data.noHTML=!1,this.data.file=i.serializable;const s=e.get("Name");this.data.name=s instanceof ht?$(s.name):"PushPin";const a=e.get("ca");this.data.fillAlpha="number"==typeof a&&a>=0&&a<=1?a:null}}function aE(t){try{return tt(t)}catch(e){return N(`UTF-8 decoding failed: "${e}".`),t}}class nE extends Fo{constructor(t){super(t),this.node=null}onEndElement(t){const e=super.onEndElement(t);if(e&&"xfa:datasets"===t)throw this.node=e,new Error("Aborting DatasetXMLParser.")}}class rE{constructor(t){if(t.datasets)this.node=new Fo({hasAttributes:!0}).parseFromString(t.datasets).documentElement;else{const e=new nE({hasAttributes:!0});try{e.parseFromString(t["xdp:xdp"])}catch{}this.node=e.node}}getValue(t){if(!this.node||!t)return"";const e=this.node.searchNode(Kt(t),0);if(!e)return"";const A=e.firstChild;return"value"===A?.nodeName?e.children.map((t=>aE(t.textContent))):aE(e.textContent)}}class oE{#T=null;constructor(t,e){this.stream=t,this.pdfManager=e,this.entries=[],this._xrefStms=new Set,this._cacheMap=new Map,this._pendingRefs=new dt,this._newPersistentRefNum=null,this._newTemporaryRefNum=null,this._persistentRefsCache=null}getNewPersistentRef(t){null===this._newPersistentRefNum&&(this._newPersistentRefNum=this.entries.length||1);const e=this._newPersistentRefNum++;return this._cacheMap.set(e,t),Bt.get(e,0)}getNewTemporaryRef(){if(null===this._newTemporaryRefNum&&(this._newTemporaryRefNum=this.entries.length||1,this._newPersistentRefNum)){this._persistentRefsCache=new Map;for(let t=this._newTemporaryRefNum;t<this._newPersistentRefNum;t++)this._persistentRefsCache.set(t,this._cacheMap.get(t)),this._cacheMap.delete(t)}return Bt.get(this._newTemporaryRefNum++,0)}resetNewTemporaryRef(){if(this._newTemporaryRefNum=null,this._persistentRefsCache)for(const[t,e]of this._persistentRefsCache)this._cacheMap.set(t,e);this._persistentRefsCache=null}setStartXRef(t){this.startXRefQueue=[t]}parse(t=!1){let e,A,i;t?(N("Indexing all PDF objects"),e=this.indexObjects()):e=this.readXRef(),e.assignXref(this),this.trailer=e;try{A=e.get("Encrypt")}catch(t){if(t instanceof bt)throw t;N(`XRef.parse - Invalid "Encrypt" reference: "${t}".`)}if(A instanceof Ct){const t=e.get("ID"),i=t?.length?t[0]:"";A.suppressEncryption=!0,this.encrypt=new Po(A,i,this.pdfManager.password)}try{i=e.get("Root")}catch(t){if(t instanceof bt)throw t;N(`XRef.parse - Invalid "Root" reference: "${t}".`)}if(i instanceof Ct)try{if(i.get("Pages")instanceof Ct)return void(this.root=i)}catch(t){if(t instanceof bt)throw t;N(`XRef.parse - Invalid "Pages" reference: "${t}".`)}if(!t)throw new St;throw new Y("Invalid Root reference.")}processXRefTable(t){if("tableState"in this||(this.tableState={entryNum:0,streamPos:t.lexer.stream.pos,parserBuf1:t.buf1,parserBuf2:t.buf2}),!Et(this.readXRefTable(t),"trailer"))throw new q("Invalid XRef table: could not find trailer dictionary");let e=t.getObj();if(e instanceof Ct||!e.dict||(e=e.dict),!(e instanceof Ct))throw new q("Invalid XRef table: could not parse trailer dictionary");return delete this.tableState,e}readXRefTable(t){const e=t.lexer.stream,A=this.tableState;let i;for(e.pos=A.streamPos,t.buf1=A.parserBuf1,t.buf2=A.parserBuf2;;){if(!("firstEntryNum"in A)||!("entryCount"in A)){if(Et(i=t.getObj(),"trailer"))break;A.firstEntryNum=i,A.entryCount=t.getObj()}let s=A.firstEntryNum;const a=A.entryCount;if(!Number.isInteger(s)||!Number.isInteger(a))throw new q("Invalid XRef table: wrong types in subsection header");for(let i=A.entryNum;i<a;i++){A.streamPos=e.pos,A.entryNum=i,A.parserBuf1=t.buf1,A.parserBuf2=t.buf2;const n={};n.offset=t.getObj(),n.gen=t.getObj();const r=t.getObj();if(r instanceof lt)switch(r.cmd){case"f":n.free=!0;break;case"n":n.uncompressed=!0}if(!Number.isInteger(n.offset)||!Number.isInteger(n.gen)||!n.free&&!n.uncompressed)throw new q(`Invalid entry in XRef subsection: ${s}, ${a}`);0===i&&n.free&&1===s&&(s=0),this.entries[i+s]||(this.entries[i+s]=n)}A.entryNum=0,A.streamPos=e.pos,A.parserBuf1=t.buf1,A.parserBuf2=t.buf2,delete A.firstEntryNum,delete A.entryCount}if(this.entries[0]&&!this.entries[0].free)throw new q("Invalid XRef table: unexpected first object");return i}processXRefStream(t){if(!("streamState"in this)){const e=t.dict,A=e.get("W");let i=e.get("Index");i||(i=[0,e.get("Size")]),this.streamState={entryRanges:i,byteWidths:A,entryNum:0,streamPos:t.pos}}return this.readXRefStream(t),delete this.streamState,t.dict}readXRefStream(t){const e=this.streamState;t.pos=e.streamPos;const[A,i,s]=e.byteWidths,a=e.entryRanges;for(;a.length>0;){const[n,r]=a;if(!Number.isInteger(n)||!Number.isInteger(r))throw new q(`Invalid XRef range fields: ${n}, ${r}`);if(!Number.isInteger(A)||!Number.isInteger(i)||!Number.isInteger(s))throw new q(`Invalid XRef entry fields length: ${n}, ${r}`);for(let a=e.entryNum;a<r;++a){e.entryNum=a,e.streamPos=t.pos;let r=0,o=0,g=0;for(let e=0;e<A;++e){const e=t.getByte();if(-1===e)throw new q("Invalid XRef byteWidths 'type'.");r=r<<8|e}0===A&&(r=1);for(let e=0;e<i;++e){const e=t.getByte();if(-1===e)throw new q("Invalid XRef byteWidths 'offset'.");o=o<<8|e}for(let e=0;e<s;++e){const e=t.getByte();if(-1===e)throw new q("Invalid XRef byteWidths 'generation'.");g=g<<8|e}const c={};switch(c.offset=o,c.gen=g,r){case 0:c.free=!0;break;case 1:c.uncompressed=!0;break;case 2:break;default:throw new q(`Invalid XRef entry type: ${r}`)}this.entries[n+a]||(this.entries[n+a]=c)}e.entryNum=0,e.streamPos=t.pos,a.splice(0,2)}}indexObjects(){function t(t,e){let A="",i=t[e];for(;10!==i&&13!==i&&60!==i&&!(++e>=t.length);)A+=String.fromCharCode(i),i=t[e];return A}function e(t,e,A){const i=A.length,s=t.length;let a=0;for(;e<s;){let s=0;for(;s<i&&t[e+s]===A[s];)++s;if(s>=i)break;e++,a++}return a}const A=/\b(endobj|\d+\s+\d+\s+obj|xref|trailer\s*<<)\b/g,i=/\b(startxref|\d+\s+\d+\s+obj)\b/g,s=/^(\d+)\s+(\d+)\s+obj\b/,a=new Uint8Array([116,114,97,105,108,101,114]),n=new Uint8Array([115,116,97,114,116,120,114,101,102]),r=new Uint8Array([47,88,82,101,102]);this.entries.length=0,this._cacheMap.clear();const o=this.stream;o.pos=0;const g=o.getBytes(),c=_(g),h=g.length;let l=o.start;const I=[],C=[];for(;l<h;){let B=g[l];if(9===B||10===B||13===B||32===B){++l;continue}if(37===B){do{if(++l,l>=h)break;B=g[l]}while(10!==B&&13!==B);continue}const d=t(g,l);let u;if(d.startsWith("xref")&&(4===d.length||/\s/.test(d[4])))l+=e(g,l,a),I.push(l),l+=e(g,l,n);else if(u=s.exec(d)){const t=0|u[1],i=0|u[2],s=l+d.length;let a,n=!1;if(this.entries[t]){if(this.entries[t].gen===i)try{new si({lexer:new ri(o.makeSubStream(s))}).getObj(),n=!0}catch(A){A instanceof Dt?N(`indexObjects -- checking object (${d}): "${A}".`):n=!0}}else n=!0;n&&(this.entries[t]={offset:l-o.start,gen:i,uncompressed:!0}),A.lastIndex=s;const I=A.exec(c);I?(a=A.lastIndex+1-l,"endobj"!==I[1]&&(N(`indexObjects: Found "${I[1]}" inside of another "obj", caused by missing "endobj" -- trying to recover.`),a-=I[1].length+1)):a=h-l;const B=g.subarray(l,l+a),Q=e(B,0,r);Q<a&&B[Q+5]<64&&(C.push(l-o.start),this._xrefStms.add(l-o.start)),l+=a}else if(d.startsWith("trailer")&&(7===d.length||/\s/.test(d[7]))){I.push(l);const t=l+d.length;let e;i.lastIndex=t;const A=i.exec(c);A?(e=i.lastIndex+1-l,"startxref"!==A[1]&&(N(`indexObjects: Found "${A[1]}" after "trailer", caused by missing "startxref" -- trying to recover.`),e-=A[1].length+1)):e=h-l,l+=e}else l+=d.length+1}for(const t of C)this.startXRefQueue.push(t),this.readXRef(!0);const B=[];let d,u,Q=!1;for(const t of I){o.pos=t;const e=new si({lexer:new ri(o),xref:this,allowStreams:!0,recoveryMode:!0});if(!Et(e.getObj(),"trailer"))continue;const A=e.getObj();A instanceof Ct&&(B.push(A),A.has("Encrypt")&&(Q=!0))}for(const t of[...B,"genFallback",...B]){if("genFallback"===t){if(!u)break;this._generationFallback=!0;continue}let e=!1;try{const A=t.get("Root");if(!(A instanceof Ct))continue;const i=A.get("Pages");if(!(i instanceof Ct))continue;const s=i.get("Count");Number.isInteger(s)&&(e=!0)}catch(A){u=A;continue}if(e&&(!Q||t.has("Encrypt"))&&t.has("ID"))return t;d=t}if(d)return d;if(this.topDict)return this.topDict;throw new Y("Invalid PDF structure.")}readXRef(t=!1){const e=this.stream,A=new Set;for(;this.startXRefQueue.length;){try{const t=this.startXRefQueue[0];if(A.has(t)){N("readXRef - skipping XRef table since it was already parsed."),this.startXRefQueue.shift();continue}A.add(t),e.pos=t+e.start;const i=new si({lexer:new ri(e),xref:this,allowStreams:!0});let s,a=i.getObj();if(Et(a,"xref"))s=this.processXRefTable(i),this.topDict||(this.topDict=s),a=s.get("XRefStm"),Number.isInteger(a)&&!this._xrefStms.has(a)&&(this._xrefStms.add(a),this.startXRefQueue.push(a),this.#T??=a);else{if(!Number.isInteger(a))throw new q("Invalid XRef stream header");if(!(Number.isInteger(i.getObj())&&Et(i.getObj(),"obj")&&(a=i.getObj())instanceof mt))throw new q("Invalid XRef stream");if(s=this.processXRefStream(a),this.topDict||(this.topDict=s),!s)throw new q("Failed to read XRef stream")}a=s.get("Prev"),Number.isInteger(a)?this.startXRefQueue.push(a):a instanceof Bt&&this.startXRefQueue.push(a.num)}catch(t){if(t instanceof bt)throw t;x("(while reading XRef): "+t)}this.startXRefQueue.shift()}if(this.topDict)return this.topDict;if(!t)throw new St}get lastXRefStreamPos(){return this.#T??(this._xrefStms.size>0?Math.max(...this._xrefStms):null)}getEntry(t){const e=this.entries[t];return e&&!e.free&&e.offset?e:null}fetchIfRef(t,e=!1){return t instanceof Bt?this.fetch(t,e):t}fetch(t,e=!1){if(!(t instanceof Bt))throw new Error("ref object is not a reference");const A=t.num,i=this._cacheMap.get(A);if(void 0!==i)return i instanceof Ct&&!i.objId&&(i.objId=t.toString()),i;let s=this.getEntry(A);if(null===s)return this._cacheMap.set(A,s),s;if(this._pendingRefs.has(t))return this._pendingRefs.remove(t),N(`Ignoring circular reference: ${t}.`),nt;this._pendingRefs.put(t);try{s=s.uncompressed?this.fetchUncompressed(t,s,e):this.fetchCompressed(t,s,e),this._pendingRefs.remove(t)}catch(e){throw this._pendingRefs.remove(t),e}return s instanceof Ct?s.objId=t.toString():s instanceof mt&&(s.dict.objId=t.toString()),s}fetchUncompressed(t,e,A=!1){const i=t.gen;let s=t.num;if(e.gen!==i){const a=`Inconsistent generation in XRef: ${t}`;if(this._generationFallback&&e.gen<i)return N(a),this.fetchUncompressed(Bt.get(s,e.gen),e,A);throw new kt(a)}const a=this.stream.makeSubStream(e.offset+this.stream.start),n=new si({lexer:new ri(a),xref:this,allowStreams:!0}),r=n.getObj(),o=n.getObj(),g=n.getObj();if(r!==s||o!==i||!(g instanceof lt))throw new kt(`Bad (uncompressed) XRef entry: ${t}`);if("obj"!==g.cmd){if(g.cmd.startsWith("obj")&&(s=parseInt(g.cmd.substring(3),10),!Number.isNaN(s)))return s;throw new kt(`Bad (uncompressed) XRef entry: ${t}`)}return(e=this.encrypt&&!A?n.getObj(this.encrypt.createCipherTransform(s,i)):n.getObj())instanceof mt||this._cacheMap.set(s,e),e}fetchCompressed(t,e,A=!1){const i=e.offset,s=this.fetch(Bt.get(i,0));if(!(s instanceof mt))throw new q("bad ObjStm stream");const a=s.dict.get("First"),n=s.dict.get("N");if(!Number.isInteger(a)||!Number.isInteger(n))throw new q("invalid first and n parameters for ObjStm stream");let r=new si({lexer:new ri(s),xref:this,allowStreams:!0});const o=new Array(n),g=new Array(n);for(let t=0;t<n;++t){const e=r.getObj();if(!Number.isInteger(e))throw new q(`invalid object number in the ObjStm stream: ${e}`);const A=r.getObj();if(!Number.isInteger(A))throw new q(`invalid object offset in the ObjStm stream: ${A}`);o[t]=e,g[t]=A}const c=(s.start||0)+a,h=new Array(n);for(let t=0;t<n;++t){const e=t<n-1?g[t+1]-g[t]:void 0;if(e<0)throw new q("Invalid offset in the ObjStm stream.");r=new si({lexer:new ri(s.makeSubStream(c+g[t],e,s.dict)),xref:this,allowStreams:!0});const A=r.getObj();if(h[t]=A,A instanceof mt)continue;const a=o[t],l=this.entries[a];l&&l.offset===i&&l.gen===t&&this._cacheMap.set(a,A)}if(void 0===(e=h[e.gen]))throw new kt(`Bad (compressed) XRef entry: ${t}`);return e}async fetchIfRefAsync(t,e){return t instanceof Bt?this.fetchAsync(t,e):t}async fetchAsync(t,e){try{return this.fetch(t,e)}catch(A){if(!(A instanceof bt))throw A;return await this.pdfManager.requestRange(A.begin,A.end),this.fetchAsync(t,e)}}getCatalogObj(){return this.root}}const gE=[0,0,612,792];class cE{constructor({pdfManager:t,xref:e,pageIndex:A,pageDict:i,ref:s,globalIdFactory:a,fontCache:n,builtInCMapCache:r,standardFontDataCache:o,globalImageCache:g,systemFontCache:c,nonBlendModesSet:h,xfaFactory:l}){this.pdfManager=t,this.pageIndex=A,this.pageDict=i,this.xref=e,this.ref=s,this.fontCache=n,this.builtInCMapCache=r,this.standardFontDataCache=o,this.globalImageCache=g,this.systemFontCache=c,this.nonBlendModesSet=h,this.evaluatorOptions=t.evaluatorOptions,this.resourcesPromise=null,this.xfaFactory=l;const I={obj:0};this._localIdFactory=class extends a{static createObjId(){return`p${A}_${++I.obj}`}static getPageObjId(){return`p${s.toString()}`}}}_getInheritableProperty(t,e=!1){const A=Rt({dict:this.pageDict,key:t,getArray:e,stopWhenFound:!1});return Array.isArray(A)?1!==A.length&&A[0]instanceof Ct?Ct.merge({xref:this.xref,dictArray:A}):A[0]:A}get content(){return this.pageDict.getArray("Contents")}get resources(){const t=this._getInheritableProperty("Resources");return L(this,"resources",t instanceof Ct?t:Ct.empty)}_getBoundingBox(t){if(this.xfaData)return this.xfaData.bbox;const e=Tt(this._getInheritableProperty(t,!0),null);if(e){if(e[2]-e[0]>0&&e[3]-e[1]>0)return e;N(`Empty, or invalid, /${t} entry.`)}return null}get mediaBox(){return L(this,"mediaBox",this._getBoundingBox("MediaBox")||gE)}get cropBox(){return L(this,"cropBox",this._getBoundingBox("CropBox")||this.mediaBox)}get userUnit(){let t=this.pageDict.get("UserUnit");return("number"!=typeof t||t<=0)&&(t=1),L(this,"userUnit",t)}get view(){const{cropBox:t,mediaBox:e}=this;if(t!==e&&!At(t,e)){const A=X.intersect(t,e);if(A&&A[2]-A[0]>0&&A[3]-A[1]>0)return L(this,"view",A);N("Empty /CropBox and /MediaBox intersection.")}return L(this,"view",e)}get rotate(){let t=this._getInheritableProperty("Rotate")||0;return t%90!=0?t=0:t>=360?t%=360:t<0&&(t=(t%360+360)%360),L(this,"rotate",t)}_onSubStreamError(t,e){if(!this.evaluatorOptions.ignoreErrors)throw t;N(`getContentStream - ignoring sub-stream (${e}): "${t}".`)}getContentStream(){return this.pdfManager.ensure(this,"content").then((t=>t instanceof mt?t:Array.isArray(t)?new xe(t,this._onSubStreamError.bind(this)):new oe))}get xfaData(){return L(this,"xfaData",this.xfaFactory?{bbox:this.xfaFactory.getBoundingBox(this.pageIndex)}:null)}#K(t,e,A){for(const i of t)if(i.id){const t=Bt.fromString(i.id);if(!t){N(`A non-linked annotation cannot be modified: ${i.id}`);continue}if(i.deleted){e.put(t,t);continue}A?.put(t),i.ref=t,delete i.id}}async saveNewAnnotations(t,e,A,i){if(this.xfaFactory)throw new Error("XFA: Cannot save new annotations.");const s=new oo({xref:this.xref,handler:t,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions}),a=new ut,n=new dt;this.#K(A,a,n);const r=this.pageDict,o=this.annotations.filter((t=>!(t instanceof Bt&&a.has(t)))),g=await FQ.saveNewAnnotations(s,e,A,i);for(const{ref:t}of g.annotations)t instanceof Bt&&!n.has(t)&&o.push(t);const c=r.get("Annots");r.set("Annots",o);const h=[];await _o(this.ref,r,h,this.xref),c&&r.set("Annots",c);const l=g.dependencies;l.push({ref:this.ref,data:h.join("")},...g.annotations);for(const t of a)l.push({ref:t,data:null});return l}save(t,e,A){const i=new oo({xref:this.xref,handler:t,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions});return this._parsedAnnotations.then((function(t){const s=[];for(const a of t)a.mustBePrinted(A)&&s.push(a.save(i,e,A).catch((function(t){return N(`save - ignoring annotation data during "${e.name}" task: "${t}".`),null})));return Promise.all(s).then((function(t){return t.filter((t=>!!t))}))}))}loadResources(t){return this.resourcesPromise||=this.pdfManager.ensure(this,"resources"),this.resourcesPromise.then((()=>new gg(this.resources,t,this.xref).load()))}getOperatorList({handler:t,sink:e,task:A,intent:i,cacheKey:s,annotationStorage:a=null}){const n=this.getContentStream(),r=this.loadResources(["ColorSpace","ExtGState","Font","Pattern","Properties","Shading","XObject"]),o=new oo({xref:this.xref,handler:t,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions}),g=this.xfaFactory?null:te(a),c=g?.get(this.pageIndex);let l=Promise.resolve(null),I=null;if(c){const t=this.pdfManager.ensureDoc("annotationGlobals");let e;const i=new Set;for(const{bitmapId:t,bitmap:e}of c)!t||e||i.has(t)||i.add(t);const{isOffscreenCanvasSupported:s}=this.evaluatorOptions;if(i.size>0){const t=c.slice();for(const[e,A]of a)e.startsWith(h)&&A.bitmap&&i.has(A.bitmapId)&&t.push(A);e=FQ.generateImages(t,this.xref,s)}else e=FQ.generateImages(c,this.xref,s);I=new dt,this.#K(c,I,null),l=t.then((t=>t?FQ.printNewAnnotations(t,o,A,c,e):null))}const C=Promise.all([n,r]).then((([a])=>{const n=new $r(i,e);return t.send("StartRenderPage",{transparency:o.hasBlendModes(this.resources,this.nonBlendModesSet),pageIndex:this.pageIndex,cacheKey:s}),o.getOperatorList({stream:a,task:A,resources:this.resources,operatorList:n}).then((function(){return n}))}));return Promise.all([C,this._parsedAnnotations,l]).then((function([t,e,s]){if(s){e=e.filter((t=>!(t.ref&&I.has(t.ref))));for(let t=0,A=s.length;t<A;t++){const i=s[t];if(i.refToReplace){const a=e.findIndex((t=>t.ref&&pt(t.ref,i.refToReplace)));a>=0&&(e.splice(a,1,i),s.splice(t--,1),A--)}}e=e.concat(s)}if(0===e.length||64&i)return t.flush(!0),{length:t.totalLength};const n=!!(16&i),r=!!(1&i),g=!!(2&i),c=!!(4&i),h=[];for(const t of e)(r||g&&t.mustBeViewed(a,n)||c&&t.mustBePrinted(a))&&h.push(t.getOperatorList(o,A,i,n,a).catch((function(t){return N(`getOperatorList - ignoring annotation data during "${A.name}" task: "${t}".`),{opList:null,separateForm:!1,separateCanvas:!1}})));return Promise.all(h).then((function(e){let A=!1,i=!1;for(const{opList:s,separateForm:a,separateCanvas:n}of e)t.addOpList(s),A||=a,i||=n;return t.flush(!0,{form:A,canvas:i}),{length:t.totalLength}}))}))}async extractTextContent({handler:t,task:e,includeMarkedContent:A,disableNormalization:i,sink:s}){const a=this.getContentStream(),n=this.loadResources(["ExtGState","Font","Properties","XObject"]),r=this.pdfManager.ensureCatalog("lang"),[o,,g]=await Promise.all([a,n,r]);return new oo({xref:this.xref,handler:t,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions}).getTextContent({stream:o,task:e,resources:this.resources,includeMarkedContent:A,disableNormalization:i,sink:s,viewBox:this.view,lang:g})}async getStructTree(){const t=await this.pdfManager.ensureCatalog("structTreeRoot");return t?(await this._parsedAnnotations,(await this.pdfManager.ensure(this,"_parseStructTree",[t])).serializable):null}_parseStructTree(t){const e=new ig(t,this.pageDict);return e.parse(this.ref),e}async getAnnotationsData(t,e,A){const i=await this._parsedAnnotations;if(0===i.length)return i;const s=[],a=[];let n;const r=!!(1&A),o=!!(2&A),g=!!(4&A);for(const A of i){const i=r||o&&A.viewable;(i||g&&A.printable)&&s.push(A.data),A.hasTextContent&&i&&(n||=new oo({xref:this.xref,handler:t,pageIndex:this.pageIndex,idFactory:this._localIdFactory,fontCache:this.fontCache,builtInCMapCache:this.builtInCMapCache,standardFontDataCache:this.standardFontDataCache,globalImageCache:this.globalImageCache,systemFontCache:this.systemFontCache,options:this.evaluatorOptions}),a.push(A.extractTextContent(n,e,[-1/0,-1/0,1/0,1/0]).catch((function(t){N(`getAnnotationsData - ignoring textContent during "${e.name}" task: "${t}".`)}))))}return await Promise.all(a),s}get annotations(){const t=this._getInheritableProperty("Annots");return L(this,"annotations",Array.isArray(t)?t:[])}get _parsedAnnotations(){return L(this,"_parsedAnnotations",this.pdfManager.ensure(this,"annotations").then((async t=>{if(0===t.length)return t;const e=await this.pdfManager.ensureDoc("annotationGlobals");if(!e)return[];const A=[];for(const i of t)A.push(FQ.create(this.xref,i,e,this._localIdFactory,!1,this.ref).catch((function(t){return N(`_parsedAnnotations: "${t}".`),null})));const i=[];let s,a;for(const t of await Promise.all(A))t&&(t instanceof UQ?(a||=[]).push(t):t instanceof PQ?(s||=[]).push(t):i.push(t));return a&&i.push(...a),s&&i.push(...s),i})))}get jsActions(){return L(this,"jsActions",Ot(this.xref,this.pageDict,Q))}}const hE=new Uint8Array([37,80,68,70,45]),lE=new Uint8Array([115,116,97,114,116,120,114,101,102]),IE=new Uint8Array([101,110,100,111,98,106]);function CE(t,e,A=1024,i=!1){const s=e.length,a=t.peekBytes(A),n=a.length-s;if(n<=0)return!1;if(i){const A=s-1;let i=a.length-1;for(;i>=A;){let n=0;for(;n<s&&a[i-n]===e[A-n];)n++;if(n>=s)return t.pos+=i-A,!0;i--}}else{let A=0;for(;A<=n;){let i=0;for(;i<s&&a[A+i]===e[i];)i++;if(i>=s)return t.pos+=A,!0;A++}}return!1}class BE{constructor(t,e){if(e.length<=0)throw new Y("The PDF file is empty, i.e. its size is zero bytes.");this.pdfManager=t,this.stream=e,this.xref=new oE(e,t),this._pagePromises=new Map,this._version=null;const A={font:0};this._globalIdFactory=class{static getDocId(){return`g_${t.docId}`}static createFontId(){return"f"+ ++A.font}static createObjId(){v("Abstract method `createObjId` called.")}static getPageObjId(){v("Abstract method `getPageObjId` called.")}}}parse(t){this.xref.parse(t),this.catalog=new rg(this.pdfManager,this.xref)}get linearization(){let t=null;try{t=oi.create(this.stream)}catch(t){if(t instanceof bt)throw t;x(t)}return L(this,"linearization",t)}get startXRef(){const t=this.stream;let e=0;if(this.linearization){if(t.reset(),CE(t,IE)){t.skip(6);let A=t.peekByte();for(;Ut(A);)t.pos++,A=t.peekByte();e=t.pos-t.start}}else{const A=1024,i=lE.length;let s=!1,a=t.end;for(;!s&&a>0;)a-=A-i,a<0&&(a=0),t.pos=a,s=CE(t,lE,A,!0);if(s){let A;t.skip(9);do{A=t.getByte()}while(Ut(A));let i="";for(;A>=32&&A<=57;)i+=String.fromCharCode(A),A=t.getByte();e=parseInt(i,10),isNaN(e)&&(e=0)}}return L(this,"startXRef",e)}checkHeader(){const t=this.stream;if(t.reset(),!CE(t,hE))return;t.moveStart(),t.skip(hE.length);let e,A="";for(;(e=t.getByte())>32&&A.length<7;)A+=String.fromCharCode(e);yt.test(A)?this._version=A:N(`Invalid PDF header version: ${A}`)}parseStartXRef(){this.xref.setStartXRef(this.startXRef)}get numPages(){let t=0;return t=this.catalog.hasActualNumPages?this.catalog.numPages:this.xfaFactory?this.xfaFactory.getNumPages():this.linearization?this.linearization.numPages:this.catalog.numPages,L(this,"numPages",t)}_hasOnlyDocumentSignatures(t,e=0){return!!Array.isArray(t)&&t.every((t=>{if(!((t=this.xref.fetchIfRef(t))instanceof Ct))return!1;if(t.has("Kids"))return++e>10?(N("_hasOnlyDocumentSignatures: maximum recursion depth reached"),!1):this._hasOnlyDocumentSignatures(t.get("Kids"),e);const A=Qt(t.get("FT"),"Sig"),i=t.get("Rect"),s=Array.isArray(i)&&i.every((t=>0===t));return A&&s}))}get _xfaStreams(){const t=this.catalog.acroForm;if(!t)return null;const e=t.get("XFA"),A={"xdp:xdp":"",template:"",datasets:"",config:"",connectionSet:"",localeSet:"",stylesheet:"","/xdp:xdp":""};if(e instanceof mt&&!e.isEmpty)return A["xdp:xdp"]=e,A;if(!Array.isArray(e)||0===e.length)return null;for(let t=0,i=e.length;t<i;t+=2){let s;if(s=0===t?"xdp:xdp":t===i-2?"/xdp:xdp":e[t],!A.hasOwnProperty(s))continue;const a=this.xref.fetchIfRef(e[t+1]);a instanceof mt&&!a.isEmpty&&(A[s]=a)}return A}get xfaDatasets(){const t=this._xfaStreams;if(!t)return L(this,"xfaDatasets",null);for(const e of["datasets","xdp:xdp"]){const A=t[e];if(A)try{const t=tt(A.getString());return L(this,"xfaDatasets",new rE({[e]:t}))}catch{N("XFA - Invalid utf-8 string.");break}}return L(this,"xfaDatasets",null)}get xfaData(){const t=this._xfaStreams;if(!t)return null;const e=Object.create(null);for(const[A,i]of Object.entries(t))if(i)try{e[A]=tt(i.getString())}catch{return N("XFA - Invalid utf-8 string."),null}return e}get xfaFactory(){let t;return this.pdfManager.enableXfa&&this.catalog.needsRendering&&this.formInfo.hasXfa&&!this.formInfo.hasAcroForm&&(t=this.xfaData),L(this,"xfaFactory",t?new SQ(t):null)}get isPureXfa(){return!!this.xfaFactory&&this.xfaFactory.isValid()}get htmlForXfa(){return this.xfaFactory?this.xfaFactory.getPages():null}async loadXfaImages(){const t=await this.pdfManager.ensureCatalog("xfaImages");if(!t)return;const e=t.getKeys(),A=new gg(t,e,this.xref);await A.load();const i=new Map;for(const A of e){const e=t.get(A);e instanceof mt&&i.set(A,e.getBytes())}this.xfaFactory.setImages(i)}async loadXfaFonts(t,e){const A=await this.pdfManager.ensureCatalog("acroForm");if(!A)return;const i=await A.getAsync("DR");if(!(i instanceof Ct))return;const s=new gg(i,["Font"],this.xref);await s.load();const a=i.get("Font");if(!(a instanceof Ct))return;const n=Object.assign(Object.create(null),this.pdfManager.evaluatorOptions);n.useSystemFonts=!1;const r=new oo({xref:this.xref,handler:t,pageIndex:-1,idFactory:this._globalIdFactory,fontCache:this.catalog.fontCache,builtInCMapCache:this.catalog.builtInCMapCache,standardFontDataCache:this.catalog.standardFontDataCache,options:n}),o=new $r,g=[],c={get font(){return g.at(-1)},set font(t){g.push(t)},clone(){return this}},h=new Map;a.forEach(((t,e)=>{h.set(t,e)}));const l=[];for(const[t,A]of h){const s=A.get("FontDescriptor");if(!(s instanceof Ct))continue;let a=s.get("FontFamily");a=a.replaceAll(/[ ]+(\d)/g,"$1");const n={fontFamily:a,fontWeight:s.get("FontWeight"),italicAngle:-s.get("ItalicAngle")};Xt(n)&&l.push(r.handleSetFont(i,[ht.get(t),1],null,o,e,c,null,n).catch((function(t){return N(`loadXfaFonts: "${t}".`),null})))}await Promise.all(l);const I=this.xfaFactory.setFonts(g);if(!I)return;n.ignoreErrors=!0,l.length=0,g.length=0;const C=new Set;for(const t of I)_n(`${t}-Regular`)||C.add(t);C.size&&I.push("PdfJS-Fallback");for(const t of I)if(!C.has(t))for(const A 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 s=`${t}-${A.name}`,a=On(s);l.push(r.handleSetFont(i,[ht.get(s),1],null,o,e,c,a,{fontFamily:t,fontWeight:A.fontWeight,italicAngle:A.italicAngle}).catch((function(t){return N(`loadXfaFonts: "${t}".`),null})))}await Promise.all(l),this.xfaFactory.appendFonts(g,C)}async serializeXfaData(t){return this.xfaFactory?this.xfaFactory.serializeData(t):null}get version(){return this.catalog.version||this._version}get formInfo(){const t={hasFields:!1,hasAcroForm:!1,hasXfa:!1,hasSignatures:!1},e=this.catalog.acroForm;if(!e)return L(this,"formInfo",t);try{const A=e.get("Fields"),i=Array.isArray(A)&&A.length>0;t.hasFields=i;const s=e.get("XFA");t.hasXfa=Array.isArray(s)&&s.length>0||s instanceof mt&&!s.isEmpty;const a=!!(1&e.get("SigFlags")),n=a&&this._hasOnlyDocumentSignatures(A);t.hasAcroForm=i&&!n,t.hasSignatures=a}catch(t){if(t instanceof bt)throw t;N(`Cannot fetch form information: "${t}".`)}return L(this,"formInfo",t)}get documentInfo(){const t={PDFFormatVersion:this.version,Language:this.catalog.lang,EncryptFilterName:this.xref.encrypt?this.xref.encrypt.filterName:null,IsLinearized:!!this.linearization,IsAcroFormPresent:this.formInfo.hasAcroForm,IsXFAPresent:this.formInfo.hasXfa,IsCollectionPresent:!!this.catalog.collection,IsSignaturesPresent:this.formInfo.hasSignatures};let e;try{e=this.xref.trailer.get("Info")}catch(t){if(t instanceof bt)throw t;x("The document information dictionary is invalid.")}if(!(e instanceof Ct))return L(this,"documentInfo",t);for(const A of e.getKeys()){const i=e.get(A);switch(A){case"Title":case"Author":case"Subject":case"Keywords":case"Creator":case"Producer":case"CreationDate":case"ModDate":if("string"==typeof i){t[A]=$(i);continue}break;case"Trapped":if(i instanceof ht){t[A]=i;continue}break;default:let e;switch(typeof i){case"string":e=$(i);break;case"number":case"boolean":e=i;break;default:i instanceof ht&&(e=i)}if(void 0===e){N(`Bad value, for custom key "${A}", in Info: ${i}.`);continue}t.Custom||(t.Custom=Object.create(null)),t.Custom[A]=e;continue}N(`Bad value, for key "${A}", in Info: ${i}.`)}return L(this,"documentInfo",t)}get fingerprints(){function t(t){return"string"==typeof t&&t.length>0&&"\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0\0"!==t}function e(t){const e=[];for(const A of t){const t=A.toString(16);e.push(t.padStart(2,"0"))}return e.join("")}const A=this.xref.trailer.get("ID");let i,s;return Array.isArray(A)&&t(A[0])?(i=O(A[0]),A[1]!==A[0]&&t(A[1])&&(s=O(A[1]))):i=vo(this.stream.getByteRange(0,1024),0,1024),L(this,"fingerprints",[e(i),s?e(s):null])}async _getLinearizationPage(t){const{catalog:e,linearization:A,xref:i}=this,s=Bt.get(A.objectNumberFirst,0);try{const t=await i.fetchAsync(s);if(t instanceof Ct){let A=t.getRaw("Type");if(A instanceof Bt&&(A=await i.fetchAsync(A)),Qt(A,"Page")||!t.has("Type")&&!t.has("Kids")&&t.has("Contents"))return e.pageKidsCountCache.has(s)||e.pageKidsCountCache.put(s,1),e.pageIndexCache.has(s)||e.pageIndexCache.put(s,0),[t,s]}throw new q("The Linearization dictionary doesn't point to a valid Page dictionary.")}catch(A){return N(`_getLinearizationPage: "${A.message}".`),e.getPageDict(t)}}getPage(t){const e=this._pagePromises.get(t);if(e)return e;const{catalog:A,linearization:i,xfaFactory:s}=this;let a;return a=s?Promise.resolve([Ct.empty,null]):i?.pageFirst===t?this._getLinearizationPage(t):A.getPageDict(t),a=a.then((([e,i])=>new cE({pdfManager:this.pdfManager,xref:this.xref,pageIndex:t,pageDict:e,ref:i,globalIdFactory:this._globalIdFactory,fontCache:A.fontCache,builtInCMapCache:A.builtInCMapCache,standardFontDataCache:A.standardFontDataCache,globalImageCache:A.globalImageCache,systemFontCache:A.systemFontCache,nonBlendModesSet:A.nonBlendModesSet,xfaFactory:s}))),this._pagePromises.set(t,a),a}async checkFirstPage(t=!1){if(!t)try{await this.getPage(0)}catch(t){if(t instanceof kt)throw this._pagePromises.delete(0),await this.cleanup(),new St}}async checkLastPage(t=!1){const{catalog:e,pdfManager:A}=this;let i;e.setActualNumPages();try{if(await Promise.all([A.ensureDoc("xfaFactory"),A.ensureDoc("linearization"),A.ensureCatalog("numPages")]),this.xfaFactory)return;if(i=this.linearization?this.linearization.numPages:e.numPages,!Number.isInteger(i))throw new q("Page count is not an integer.");if(i<=1)return;await this.getPage(i-1)}catch(s){if(this._pagePromises.delete(i-1),await this.cleanup(),s instanceof kt&&!t)throw new St;let a;N(`checkLastPage - invalid /Pages tree /Count: ${i}.`);try{a=await e.getAllPageDicts(t)}catch(A){if(A instanceof kt&&!t)throw new St;return void e.setActualNumPages(1)}for(const[t,[i,s]]of a){let a;i instanceof Error?(a=Promise.reject(i),a.catch((()=>{}))):a=Promise.resolve(new cE({pdfManager:A,xref:this.xref,pageIndex:t,pageDict:i,ref:s,globalIdFactory:this._globalIdFactory,fontCache:e.fontCache,builtInCMapCache:e.builtInCMapCache,standardFontDataCache:e.standardFontDataCache,globalImageCache:e.globalImageCache,systemFontCache:e.systemFontCache,nonBlendModesSet:e.nonBlendModesSet,xfaFactory:null})),this._pagePromises.set(t,a)}e.setActualNumPages(a.size)}}fontFallback(t,e){return this.catalog.fontFallback(t,e)}async cleanup(t=!1){return this.catalog?this.catalog.cleanup(t):yo()}async#q(t,e,A,i,s){const{xref:a}=this;if(!(e instanceof Bt)||s.has(e))return;s.put(e);const n=await a.fetchAsync(e);if(!(n instanceof Ct))return;if(n.has("T")){const e=$(await n.getAsync("T"));t=""===t?e:`${t}.${e}`}else{let e=n;for(;;){if(e=e.getRaw("Parent"),e instanceof Bt){if(s.has(e))break;e=await a.fetchAsync(e)}if(!(e instanceof Ct))break;if(e.has("T")){const A=$(await e.getAsync("T"));t=""===t?A:`${t}.${A}`;break}}}if(A.has(t)||A.set(t,[]),A.get(t).push(FQ.create(a,e,i,null,!0,null).then((t=>t?.getFieldObject())).catch((function(t){return N(`#collectFieldObjects: "${t}".`),null}))),!n.has("Kids"))return;const r=await n.getAsync("Kids");if(Array.isArray(r))for(const e of r)await this.#q(t,e,A,i,s)}get fieldObjects(){return this.formInfo.hasFields?L(this,"fieldObjects",Promise.all([this.pdfManager.ensureDoc("annotationGlobals"),this.pdfManager.ensureCatalog("acroForm")]).then((async([t,e])=>{if(!t)return null;const A=new dt,i=Object.create(null),s=new Map;for(const i of await e.getAsync("Fields"))await this.#q("",i,s,t,A);const a=[];for(const[t,e]of s)a.push(Promise.all(e).then((e=>{(e=e.filter((t=>!!t))).length>0&&(i[t]=e)})));return await Promise.all(a),i}))):L(this,"fieldObjects",Promise.resolve(null))}get hasJSActions(){return L(this,"hasJSActions",this.pdfManager.ensureDoc("_parseHasJSActions"))}async _parseHasJSActions(){const[t,e]=await Promise.all([this.pdfManager.ensureCatalog("jsActions"),this.pdfManager.ensureDoc("fieldObjects")]);return!!t||!!e&&Object.values(e).some((t=>t.some((t=>null!==t.actions))))}get calculationOrderIds(){const t=this.catalog.acroForm;if(!t?.has("CO"))return L(this,"calculationOrderIds",null);const e=t.get("CO");if(!Array.isArray(e)||0===e.length)return L(this,"calculationOrderIds",null);const A=[];for(const t of e)t instanceof Bt&&A.push(t.toString());return 0===A.length?L(this,"calculationOrderIds",null):L(this,"calculationOrderIds",A)}get annotationGlobals(){return L(this,"annotationGlobals",FQ.createGlobals(this.pdfManager))}}class dE{constructor(t){this.constructor===dE&&v("Cannot initialize BasePdfManager."),this._docBaseUrl=function(t){if(t){const e=M(t);if(e)return e.href;N(`Invalid absolute docBaseUrl: "${t}".`)}return null}(t.docBaseUrl),this._docId=t.docId,this._password=t.password,this.enableXfa=t.enableXfa,t.evaluatorOptions.isOffscreenCanvasSupported&&=j.isOffscreenCanvasSupported,this.evaluatorOptions=Object.freeze(t.evaluatorOptions)}get docId(){return this._docId}get password(){return this._password}get docBaseUrl(){return this._docBaseUrl}get catalog(){return this.pdfDocument.catalog}ensureDoc(t,e){return this.ensure(this.pdfDocument,t,e)}ensureXRef(t,e){return this.ensure(this.pdfDocument.xref,t,e)}ensureCatalog(t,e){return this.ensure(this.pdfDocument.catalog,t,e)}getPage(t){return this.pdfDocument.getPage(t)}fontFallback(t,e){return this.pdfDocument.fontFallback(t,e)}loadXfaFonts(t,e){return this.pdfDocument.loadXfaFonts(t,e)}loadXfaImages(){return this.pdfDocument.loadXfaImages()}serializeXfaData(t){return this.pdfDocument.serializeXfaData(t)}cleanup(t=!1){return this.pdfDocument.cleanup(t)}async ensure(t,e,A){v("Abstract method `ensure` called")}requestRange(t,e){v("Abstract method `requestRange` called")}requestLoadedStream(t=!1){v("Abstract method `requestLoadedStream` called")}sendProgressiveData(t){v("Abstract method `sendProgressiveData` called")}updatePassword(t){this._password=t}terminate(t){v("Abstract method `terminate` called")}}class uE extends dE{constructor(t){super(t);const e=new ne(t.source);this.pdfDocument=new BE(this,e),this._loadedStreamPromise=Promise.resolve(e)}async ensure(t,e,A){const i=t[e];return"function"==typeof i?i.apply(t,A):i}requestRange(t,e){return Promise.resolve()}requestLoadedStream(t=!1){return this._loadedStreamPromise}terminate(t){}}class QE extends dE{constructor(t){super(t),this.streamManager=new ce(t.source,{msgHandler:t.handler,length:t.length,disableAutoFetch:t.disableAutoFetch,rangeChunkSize:t.rangeChunkSize}),this.pdfDocument=new BE(this,this.streamManager.getStream())}async ensure(t,e,A){try{const i=t[e];return"function"==typeof i?i.apply(t,A):i}catch(i){if(!(i instanceof bt))throw i;return await this.requestRange(i.begin,i.end),this.ensure(t,e,A)}}requestRange(t,e){return this.streamManager.requestRange(t,e)}requestLoadedStream(t=!1){return this.streamManager.requestAllChunks(t)}sendProgressiveData(t){this.streamManager.onReceiveData({chunk:t})}terminate(t){this.streamManager.abort(t)}}function EE(t){switch(t instanceof Error||"object"==typeof t&&null!==t||v('wrapReason: Expected "reason" to be a (possibly cloned) Error.'),t.name){case"AbortException":return new P(t.message);case"MissingPDFException":return new T(t.message);case"PasswordException":return new H(t.message,t.code);case"UnexpectedResponseException":return new K(t.message,t.status);case"UnknownErrorException":return new J(t.message,t.details);default:return new J(t.message,t.toString())}}class fE{constructor(t,e,A){this.sourceName=t,this.targetName=e,this.comObj=A,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),this._onComObjOnMessage=t=>{const e=t.data;if(e.targetName!==this.sourceName)return;if(e.stream)return void this.#P(e);if(e.callback){const t=e.callbackId,A=this.callbackCapabilities[t];if(!A)throw new Error(`Cannot resolve callback ${t}`);if(delete this.callbackCapabilities[t],1===e.callback)A.resolve(e.data);else{if(2!==e.callback)throw new Error("Unexpected callback case");A.reject(EE(e.reason))}return}const i=this.actionHandler[e.action];if(!i)throw new Error(`Unknown action from worker: ${e.action}`);if(e.callbackId){const t=this.sourceName,s=e.sourceName;new Promise((function(t){t(i(e.data))})).then((function(i){A.postMessage({sourceName:t,targetName:s,callback:1,callbackId:e.callbackId,data:i})}),(function(i){A.postMessage({sourceName:t,targetName:s,callback:2,callbackId:e.callbackId,reason:EE(i)})}))}else e.streamId?this.#_(e):i(e.data)},A.addEventListener("message",this._onComObjOnMessage)}on(t,e){const A=this.actionHandler;if(A[t])throw new Error(`There is already an actionName called "${t}"`);A[t]=e}send(t,e,A){this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:t,data:e},A)}sendWithPromise(t,e,A){const i=this.callbackId++,s=Promise.withResolvers();this.callbackCapabilities[i]=s;try{this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:t,callbackId:i,data:e},A)}catch(t){s.reject(t)}return s.promise}sendWithStream(t,e,A,i){const s=this.streamId++,a=this.sourceName,n=this.targetName,r=this.comObj;return new ReadableStream({start:A=>{const o=Promise.withResolvers();return this.streamControllers[s]={controller:A,startCall:o,pullCall:null,cancelCall:null,isClosed:!1},r.postMessage({sourceName:a,targetName:n,action:t,streamId:s,data:e,desiredSize:A.desiredSize},i),o.promise},pull:t=>{const e=Promise.withResolvers();return this.streamControllers[s].pullCall=e,r.postMessage({sourceName:a,targetName:n,stream:6,streamId:s,desiredSize:t.desiredSize}),e.promise},cancel:t=>{G(t instanceof Error,"cancel must have a valid reason");const e=Promise.withResolvers();return this.streamControllers[s].cancelCall=e,this.streamControllers[s].isClosed=!0,r.postMessage({sourceName:a,targetName:n,stream:1,streamId:s,reason:EE(t)}),e.promise}},A)}#_(t){const e=t.streamId,A=this.sourceName,i=t.sourceName,s=this.comObj,a=this,n=this.actionHandler[t.action],r={enqueue(t,a=1,n){if(this.isCancelled)return;const r=this.desiredSize;this.desiredSize-=a,r>0&&this.desiredSize<=0&&(this.sinkCapability=Promise.withResolvers(),this.ready=this.sinkCapability.promise),s.postMessage({sourceName:A,targetName:i,stream:4,streamId:e,chunk:t},n)},close(){this.isCancelled||(this.isCancelled=!0,s.postMessage({sourceName:A,targetName:i,stream:3,streamId:e}),delete a.streamSinks[e])},error(t){G(t instanceof Error,"error must have a valid reason"),this.isCancelled||(this.isCancelled=!0,s.postMessage({sourceName:A,targetName:i,stream:5,streamId:e,reason:EE(t)}))},sinkCapability:Promise.withResolvers(),onPull:null,onCancel:null,isCancelled:!1,desiredSize:t.desiredSize,ready:null};r.sinkCapability.resolve(),r.ready=r.sinkCapability.promise,this.streamSinks[e]=r,new Promise((function(e){e(n(t.data,r))})).then((function(){s.postMessage({sourceName:A,targetName:i,stream:8,streamId:e,success:!0})}),(function(t){s.postMessage({sourceName:A,targetName:i,stream:8,streamId:e,reason:EE(t)})}))}#P(t){const e=t.streamId,A=this.sourceName,i=t.sourceName,s=this.comObj,a=this.streamControllers[e],n=this.streamSinks[e];switch(t.stream){case 8:t.success?a.startCall.resolve():a.startCall.reject(EE(t.reason));break;case 7:t.success?a.pullCall.resolve():a.pullCall.reject(EE(t.reason));break;case 6:if(!n){s.postMessage({sourceName:A,targetName:i,stream:7,streamId:e,success:!0});break}n.desiredSize<=0&&t.desiredSize>0&&n.sinkCapability.resolve(),n.desiredSize=t.desiredSize,new Promise((function(t){t(n.onPull?.())})).then((function(){s.postMessage({sourceName:A,targetName:i,stream:7,streamId:e,success:!0})}),(function(t){s.postMessage({sourceName:A,targetName:i,stream:7,streamId:e,reason:EE(t)})}));break;case 4:if(G(a,"enqueue should have stream controller"),a.isClosed)break;a.controller.enqueue(t.chunk);break;case 3:if(G(a,"close should have stream controller"),a.isClosed)break;a.isClosed=!0,a.controller.close(),this.#O(a,e);break;case 5:G(a,"error should have stream controller"),a.controller.error(EE(t.reason)),this.#O(a,e);break;case 2:t.success?a.cancelCall.resolve():a.cancelCall.reject(EE(t.reason)),this.#O(a,e);break;case 1:if(!n)break;new Promise((function(e){e(n.onCancel?.(EE(t.reason)))})).then((function(){s.postMessage({sourceName:A,targetName:i,stream:2,streamId:e,success:!0})}),(function(t){s.postMessage({sourceName:A,targetName:i,stream:2,streamId:e,reason:EE(t)})})),n.sinkCapability.reject(EE(t.reason)),n.isCancelled=!0,delete this.streamSinks[e];break;default:throw new Error("Unexpected stream case")}}async#O(t,e){await Promise.allSettled([t.startCall?.promise,t.pullCall?.promise,t.cancelCall?.promise]),delete this.streamControllers[e]}destroy(){this.comObj.removeEventListener("message",this._onComObjOnMessage)}}class pE{constructor(t){this._msgHandler=t,this._contentLength=null,this._fullRequestReader=null,this._rangeRequestReaders=[]}getFullReader(){return G(!this._fullRequestReader,"PDFWorkerStream.getFullReader can only be called once."),this._fullRequestReader=new mE(this._msgHandler),this._fullRequestReader}getRangeReader(t,e){const A=new yE(t,e,this._msgHandler);return this._rangeRequestReaders.push(A),A}cancelAllRequests(t){this._fullRequestReader?.cancel(t);for(const e of this._rangeRequestReaders.slice(0))e.cancel(t)}}class mE{constructor(t){this._msgHandler=t,this.onProgress=null,this._contentLength=null,this._isRangeSupported=!1,this._isStreamingSupported=!1;const e=this._msgHandler.sendWithStream("GetReader");this._reader=e.getReader(),this._headersReady=this._msgHandler.sendWithPromise("ReaderHeadersReady").then((t=>{this._isStreamingSupported=t.isStreamingSupported,this._isRangeSupported=t.isRangeSupported,this._contentLength=t.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:t,done:e}=await this._reader.read();return e?{value:void 0,done:!0}:{value:t.buffer,done:!1}}cancel(t){this._reader.cancel(t)}}class yE{constructor(t,e,A){this._msgHandler=A,this.onProgress=null;const i=this._msgHandler.sendWithStream("GetRangeReader",{begin:t,end:e});this._reader=i.getReader()}get isStreamingSupported(){return!1}async read(){const{value:t,done:e}=await this._reader.read();return e?{value:void 0,done:!0}:{value:t.buffer,done:!1}}cancel(t){this._reader.cancel(t)}}class wE{constructor(t){this.name=t,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 bE{static setup(t,e){let A=!1;t.on("test",(function(e){A||(A=!0,t.send("test",e instanceof Uint8Array))})),t.on("configure",(function(t){!function(t){Number.isInteger(t)&&(R=t)}(t.verbosity)})),t.on("GetDocRequest",(function(t){return bE.createDocumentHandler(t,e)}))}static createDocumentHandler(t,e){let A,i=!1,s=null;const a=new Set,n=R,{docId:r,apiVersion:o}=t,g="4.4.168";if(o!==g)throw new Error(`The API version "${o}" does not match the Worker version "${g}".`);const c=[];for(const t in[])c.push(t);if(c.length)throw new Error("The `Array.prototype` contains unexpected enumerable properties: "+c.join(", ")+"; thus breaking e.g. `for...in` iteration of `Array`s.");const h=r+"_worker";let l=new fE(h,r,e);function I(){if(i)throw new Error("Worker was terminated")}function C(t){a.add(t)}function B(t){t.finish(),a.delete(t)}async function d(t){await A.ensureDoc("checkHeader"),await A.ensureDoc("parseStartXRef"),await A.ensureDoc("parse",[t]),await A.ensureDoc("checkFirstPage",[t]),await A.ensureDoc("checkLastPage",[t]);const e=await A.ensureDoc("isPureXfa");if(e){const t=new wE("loadXfaFonts");C(t),await Promise.all([A.loadXfaFonts(l,t).catch((t=>{})).then((()=>B(t))),A.loadXfaImages()])}const[i,s]=await Promise.all([A.ensureDoc("numPages"),A.ensureDoc("fingerprints")]);return{numPages:i,fingerprints:s,htmlForXfa:e?await A.ensureDoc("htmlForXfa"):null}}return l.on("GetPage",(function(t){return A.getPage(t.pageIndex).then((function(t){return Promise.all([A.ensure(t,"rotate"),A.ensure(t,"ref"),A.ensure(t,"userUnit"),A.ensure(t,"view")]).then((function([t,e,A,i]){return{rotate:t,ref:e,refStr:e?.toString()??null,userUnit:A,view:i}}))}))})),l.on("GetPageIndex",(function(t){const e=Bt.get(t.num,t.gen);return A.ensureCatalog("getPageIndex",[e])})),l.on("GetDestinations",(function(t){return A.ensureCatalog("destinations")})),l.on("GetDestination",(function(t){return A.ensureCatalog("getDestination",[t.id])})),l.on("GetPageLabels",(function(t){return A.ensureCatalog("pageLabels")})),l.on("GetPageLayout",(function(t){return A.ensureCatalog("pageLayout")})),l.on("GetPageMode",(function(t){return A.ensureCatalog("pageMode")})),l.on("GetViewerPreferences",(function(t){return A.ensureCatalog("viewerPreferences")})),l.on("GetOpenAction",(function(t){return A.ensureCatalog("openAction")})),l.on("GetAttachments",(function(t){return A.ensureCatalog("attachments")})),l.on("GetDocJSActions",(function(t){return A.ensureCatalog("jsActions")})),l.on("GetPageJSActions",(function({pageIndex:t}){return A.getPage(t).then((function(t){return A.ensure(t,"jsActions")}))})),l.on("GetOutline",(function(t){return A.ensureCatalog("documentOutline")})),l.on("GetOptionalContentConfig",(function(t){return A.ensureCatalog("optionalContentConfig")})),l.on("GetPermissions",(function(t){return A.ensureCatalog("permissions")})),l.on("GetMetadata",(function(t){return Promise.all([A.ensureDoc("documentInfo"),A.ensureCatalog("metadata")])})),l.on("GetMarkInfo",(function(t){return A.ensureCatalog("markInfo")})),l.on("GetData",(function(t){return A.requestLoadedStream().then((function(t){return t.bytes}))})),l.on("GetAnnotations",(function({pageIndex:t,intent:e}){return A.getPage(t).then((function(A){const i=new wE(`GetAnnotations: page ${t}`);return C(i),A.getAnnotationsData(l,i,e).then((t=>(B(i),t)),(t=>{throw B(i),t}))}))})),l.on("GetFieldObjects",(function(t){return A.ensureDoc("fieldObjects")})),l.on("HasJSActions",(function(t){return A.ensureDoc("hasJSActions")})),l.on("GetCalculationOrderIds",(function(t){return A.ensureDoc("calculationOrderIds")})),l.on("SaveDocument",(async function({isPureXfa:t,numPages:e,annotationStorage:i,filename:s}){const a=[A.requestLoadedStream(),A.ensureCatalog("acroForm"),A.ensureCatalog("acroFormRef"),A.ensureDoc("startXRef"),A.ensureDoc("xref"),A.ensureDoc("linearization"),A.ensureCatalog("structTreeRoot")],n=[],r=t?null:te(i),[o,g,c,h,I,C,d]=await Promise.all(a),u=I.trailer.getRaw("Root")||null;let Q;if(r){d?await d.canUpdateStructTree({pdfManager:A,xref:I,newAnnotationsByPage:r})&&(Q=d):await tg.canCreateStructureTree({catalogRef:u,pdfManager:A,newAnnotationsByPage:r})&&(Q=null);const t=FQ.generateImages(i.values(),I,A.evaluatorOptions.isOffscreenCanvasSupported),e=void 0===Q?n:[];for(const[i,s]of r)e.push(A.getPage(i).then((e=>{const A=new wE(`Save (editor): page ${i}`);return e.saveNewAnnotations(l,A,s,t).finally((function(){B(A)}))})));null===Q?n.push(Promise.all(e).then((async t=>(await tg.createStructureTree({newAnnotationsByPage:r,xref:I,catalogRef:u,pdfManager:A,newRefs:t}),t)))):Q&&n.push(Promise.all(e).then((async t=>(await Q.updateStructureTree({newAnnotationsByPage:r,pdfManager:A,newRefs:t}),t))))}if(t)n.push(A.serializeXfaData(i));else for(let t=0;t<e;t++)n.push(A.getPage(t).then((function(e){const A=new wE(`Save: page ${t}`);return e.save(l,A,i).finally((function(){B(A)}))})));const E=await Promise.all(n);let f=[],p=null;if(t){if(p=E[0],!p)return o.bytes}else if(f=E.flat(2),0===f.length)return o.bytes;const m=c&&g instanceof Ct&&f.some((t=>t.needAppearances)),y=g instanceof Ct&&g.get("XFA")||null;let w=null,b=!1;if(Array.isArray(y)){for(let t=0,e=y.length;t<e;t+=2)"datasets"===y[t]&&(w=y[t+1],b=!0);null===w&&(w=I.getNewTemporaryRef())}else y&&N("Unsupported XFA type.");let D=Object.create(null);if(I.trailer){const t=Object.create(null),e=I.trailer.get("Info")||null;e instanceof Ct&&e.forEach(((e,A)=>{"string"==typeof A&&(t[e]=$(A))})),D={rootRef:u,encryptRef:I.trailer.getRaw("Encrypt")||null,newRef:I.getNewTemporaryRef(),infoRef:I.trailer.getRaw("Info")||null,info:t,fileIds:I.trailer.get("ID")||null,startXRef:C?h:I.lastXRefStreamPos??h,filename:s}}return async function({originalData:t,xrefInfo:e,newRefs:A,xref:i=null,hasXfa:s=!1,xfaDatasetsRef:a=null,hasXfaDatasetsEntry:n=!1,needAppearances:r,acroFormRef:o=null,acroForm:g=null,xfaData:c=null,useXrefStream:h=!1}){await async function({xref:t,acroForm:e,acroFormRef:A,hasXfa:i,hasXfaDatasetsEntry:s,xfaDatasetsRef:a,needAppearances:n,newRefs:r}){if(!i||s||a||N("XFA - Cannot save it"),!n&&(!i||!a||s))return;const o=e.clone();if(i&&!s){const t=e.get("XFA").slice();t.splice(2,0,"datasets"),t.splice(3,0,a),o.set("XFA",t)}n&&o.set("NeedAppearances",!0);const g=[];await _o(A,o,g,t),r.push({ref:A,data:g.join("")})}({xref:i,acroForm:g,acroFormRef:o,hasXfa:s,hasXfaDatasetsEntry:n,xfaDatasetsRef:a,needAppearances:r,newRefs:A}),s&&function({xfaData:t,xfaDatasetsRef:e,newRefs:A,xref:i}){null===t&&(t=function(t,e){const A=new Fo({hasAttributes:!0}).parseFromString(t);for(const{xfa:t}of e){if(!t)continue;const{path:e,value:i}=t;if(!e)continue;const s=Kt(e);let a=A.documentElement.searchNode(s,0);!a&&s.length>1&&(a=A.documentElement.searchNode([s.at(-1)],0)),a?a.childNodes=Array.isArray(i)?i.map((t=>new So("value",t))):[new So("#text",i)]:N(`Node not found for path: ${e}`)}const i=[];return A.documentElement.dump(i),i.join("")}(i.fetchIfRef(e).getString(),A));const s=i.encrypt;s&&(t=s.createCipherTransform(e.num,e.gen).encryptString(t));const a=`${e.num} ${e.gen} obj\n<< /Type /EmbeddedFile /Length ${t.length}>>\nstream\n`+t+"\nendstream\nendobj\n";A.push({ref:e,data:a})}({xfaData:c,xfaDatasetsRef:a,newRefs:A,xref:i});const l=[];let I=t.length;const C=t.at(-1);10!==C&&13!==C&&(l.push("\n"),I+=1);const B=function(t,e,A){const i=new Ct(null);i.set("Prev",t.startXRef);const s=t.newRef;return A?(e.push({ref:s,data:""}),i.set("Size",s.num+1),i.set("Type",ht.get("XRef"))):i.set("Size",s.num),null!==t.rootRef&&i.set("Root",t.rootRef),null!==t.infoRef&&i.set("Info",t.infoRef),null!==t.encryptRef&&i.set("Encrypt",t.encryptRef),i}(e,A,h);A=A.sort(((t,e)=>t.ref.num-e.ref.num));for(const{data:t}of A)null!==t&&l.push(t);await(h?async function(t,e,A,i,s){const a=[];let n=0,r=0;for(const{ref:t,data:i}of A){let A;n=Math.max(n,e),null!==i?(A=Math.min(t.gen,65535),a.push([1,e,A]),e+=i.length):(A=Math.min(t.gen+1,65535),a.push([0,0,A])),r=Math.max(r,A)}i.set("Index",zo(A));const o=[1,ae(n),ae(r)];i.set("W",o),$o(e,t,i);const g=o.reduce(((t,e)=>t+e),0),c=new Uint8Array(g*a.length),h=new ne(c);h.dict=i;let l=0;for(const[t,e,A]of a)l=Vo(t,o[0],l,c),l=Vo(e,o[1],l,c),l=Vo(A,o[2],l,c);await _o(t.newRef,h,s,{}),s.push("startxref\n",e.toString(),"\n%%EOF\n")}(e,I,A,B,l):async function(t,e,A,i,s){s.push("xref\n");const a=zo(A);let n=0;for(const{ref:t,data:i}of A)t.num===a[n]&&(s.push(`${a[n]} ${a[n+1]}\n`),n+=2),null!==i?(s.push(`${e.toString().padStart(10,"0")} ${Math.min(t.gen,65535).toString().padStart(5,"0")} n\r\n`),e+=i.length):s.push(`0000000000 ${Math.min(t.gen+1,65535).toString().padStart(5,"0")} f\r\n`);$o(e,t,i),s.push("trailer\n"),await Oo(i,s),s.push("\nstartxref\n",e.toString(),"\n%%EOF\n")}(e,I,A,B,l));const d=l.reduce(((t,e)=>t+e.length),t.length),u=new Uint8Array(d);u.set(t);let Q=t.length;for(const t of l)Xo(t,Q,u),Q+=t.length;return u}({originalData:o.bytes,xrefInfo:D,newRefs:f,xref:I,hasXfa:!!y,xfaDatasetsRef:w,hasXfaDatasetsEntry:b,needAppearances:m,acroFormRef:c,acroForm:g,xfaData:p,useXrefStream:ft(I.topDict,"XRef")}).finally((()=>{I.resetNewTemporaryRef()}))})),l.on("GetOperatorList",(function(t,e){const i=t.pageIndex;A.getPage(i).then((function(A){const s=new wE(`GetOperatorList: page ${i}`);C(s);const a=n>=5?Date.now():0;A.getOperatorList({handler:l,sink:e,task:s,intent:t.intent,cacheKey:t.cacheKey,annotationStorage:t.annotationStorage}).then((function(t){B(s),a&&x(`page=${i+1} - getOperatorList: time=${Date.now()-a}ms, len=${t.length}`),e.close()}),(function(t){B(s),s.terminated||e.error(t)}))}))})),l.on("GetTextContent",(function(t,e){const{pageIndex:i,includeMarkedContent:s,disableNormalization:a}=t;A.getPage(i).then((function(t){const A=new wE("GetTextContent: page "+i);C(A);const r=n>=5?Date.now():0;t.extractTextContent({handler:l,task:A,sink:e,includeMarkedContent:s,disableNormalization:a}).then((function(){B(A),r&&x(`page=${i+1} - getTextContent: time=`+(Date.now()-r)+"ms"),e.close()}),(function(t){B(A),A.terminated||e.error(t)}))}))})),l.on("GetStructTree",(function(t){return A.getPage(t.pageIndex).then((function(t){return A.ensure(t,"getStructTree")}))})),l.on("FontFallback",(function(t){return A.fontFallback(t.id,l)})),l.on("Cleanup",(function(t){return A.cleanup(!0)})),l.on("Terminate",(function(t){i=!0;const e=[];if(A){A.terminate(new P("Worker was terminated."));const t=A.cleanup();e.push(t),A=null}else yo();s&&s(new P("Worker was terminated."));for(const t of a)e.push(t.finished),t.terminate();return Promise.all(e).then((function(){l.destroy(),l=null}))})),l.on("Ready",(function(e){!function(t){function e(t){I(),l.send("GetDoc",{pdfInfo:t})}function a(t){if(I(),t instanceof H){const e=new wE(`PasswordException: response ${t.code}`);C(e),l.sendWithPromise("PasswordRequest",t).then((function({password:t}){B(e),A.updatePassword(t),n()})).catch((function(){B(e),l.send("DocException",t)}))}else t instanceof Y||t instanceof T||t instanceof K||t instanceof J?l.send("DocException",t):l.send("DocException",new J(t.message,t.toString()))}function n(){I(),d(!1).then(e,(function(t){I(),t instanceof St?A.requestLoadedStream().then((function(){I(),d(!0).then(e,a)})):a(t)}))}I(),function({data:t,password:e,disableAutoFetch:A,rangeChunkSize:i,length:a,docBaseUrl:n,enableXfa:o,evaluatorOptions:g}){const c={source:null,disableAutoFetch:A,docBaseUrl:n,docId:r,enableXfa:o,evaluatorOptions:g,handler:l,length:a,password:e,rangeChunkSize:i},h=Promise.withResolvers();let C;if(t){try{c.source=t,C=new uE(c),h.resolve(C)}catch(t){h.reject(t)}return h.promise}let B,d=[];try{B=new pE(l)}catch(t){return h.reject(t),h.promise}const u=B.getFullReader();u.headersReady.then((function(){if(u.isRangeSupported){c.source=B,c.length=u.contentLength,c.disableAutoFetch||=u.isStreamingSupported,C=new QE(c);for(const t of d)C.sendProgressiveData(t);d=[],h.resolve(C),s=null}})).catch((function(t){h.reject(t),s=null}));let Q=0;return new Promise((function(t,e){const A=function({value:t,done:i}){try{if(I(),i)return C||function(){const t=Ft(d);a&&t.length!==a&&N("reported HTTP length is different from actual");try{c.source=t,C=new uE(c),h.resolve(C)}catch(t){h.reject(t)}d=[]}(),void(s=null);Q+=t.byteLength,u.isStreamingSupported||l.send("DocProgress",{loaded:Q,total:Math.max(Q,u.contentLength||0)}),C?C.sendProgressiveData(t):d.push(t),u.read().then(A,e)}catch(t){e(t)}};u.read().then(A,e)})).catch((function(t){h.reject(t),s=null})),s=function(t){B.cancelAllRequests(t)},h.promise}(t).then((function(t){if(i)throw t.terminate(new P("Worker was terminated.")),new Error("Worker was terminated");A=t,A.requestLoadedStream(!0).then((t=>{l.send("DataLoaded",{length:t.bytes.byteLength})}))})).then(n,a)}(t),t=null})),h}static initializeFromPort(t){const e=new fE("worker","main",t);bE.setup(e,t),e.send("ready",null)}}"undefined"==typeof window&&!n&&"undefined"!=typeof self&&function(t){return"function"==typeof t.postMessage&&"onmessage"in t}(self)&&bE.initializeFromPort(self)},97792:(t,e,A)=>{A.d(e,{YE:()=>Qi});var i=A(88538),s={9306:(t,e,A)=>{var i=A(4901),s=A(6823),a=TypeError;t.exports=function(t){if(i(t))return t;throw new a(s(t)+" is not a function")}},3506:(t,e,A)=>{var i=A(3925),s=String,a=TypeError;t.exports=function(t){if(i(t))return t;throw new a("Can't set "+s(t)+" as a prototype")}},7080:(t,e,A)=>{var i=A(4402).has;t.exports=function(t){return i(t),t}},679:(t,e,A)=>{var i=A(1625),s=TypeError;t.exports=function(t,e){if(i(e,t))return t;throw new s("Incorrect invocation")}},8551:(t,e,A)=>{var i=A(34),s=String,a=TypeError;t.exports=function(t){if(i(t))return t;throw new a(s(t)+" is not an object")}},7811:t=>{t.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},7394:(t,e,A)=>{var i=A(6706),s=A(4576),a=TypeError;t.exports=i(ArrayBuffer.prototype,"byteLength","get")||function(t){if("ArrayBuffer"!==s(t))throw new a("ArrayBuffer expected");return t.byteLength}},3238:(t,e,A)=>{var i=A(9504),s=A(7394),a=i(ArrayBuffer.prototype.slice);t.exports=function(t){if(0!==s(t))return!1;try{return a(t,0,0),!1}catch(t){return!0}}},5636:(t,e,A)=>{var i=A(4475),s=A(9504),a=A(6706),n=A(7696),r=A(3238),o=A(7394),g=A(4483),c=A(1548),h=i.structuredClone,l=i.ArrayBuffer,I=i.DataView,C=i.TypeError,B=Math.min,d=l.prototype,u=I.prototype,Q=s(d.slice),E=a(d,"resizable","get"),f=a(d,"maxByteLength","get"),p=s(u.getInt8),m=s(u.setInt8);t.exports=(c||g)&&function(t,e,A){var i,s=o(t),a=void 0===e?s:n(e),d=!E||!E(t);if(r(t))throw new C("ArrayBuffer is detached");if(c&&(t=h(t,{transfer:[t]}),s===a&&(A||d)))return t;if(s>=a&&(!A||d))i=Q(t,0,a);else{var u=A&&!d&&f?{maxByteLength:f(t)}:void 0;i=new l(a,u);for(var y=new I(t),w=new I(i),b=B(a,s),D=0;D<b;D++)m(w,D,p(y,D))}return c||g(t),i}},4644:(t,e,A)=>{var i,s,a,n=A(7811),r=A(3724),o=A(4475),g=A(4901),c=A(34),h=A(9297),l=A(6955),I=A(6823),C=A(6699),B=A(6840),d=A(2106),u=A(1625),Q=A(2787),E=A(2967),f=A(8227),p=A(3392),m=A(1181),y=m.enforce,w=m.get,b=o.Int8Array,D=b&&b.prototype,k=o.Uint8ClampedArray,S=k&&k.prototype,F=b&&Q(b),R=D&&Q(D),x=Object.prototype,N=o.TypeError,v=f("toStringTag"),G=p("TYPED_ARRAY_TAG"),M="TypedArrayConstructor",L=n&&!!E&&"Opera"!==l(o.opera),U=!1,H={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},J={BigInt64Array:8,BigUint64Array:8},Y=function(t){var e=Q(t);if(c(e)){var A=w(e);return A&&h(A,M)?A[M]:Y(e)}},T=function(t){if(!c(t))return!1;var e=l(t);return h(H,e)||h(J,e)};for(i in H)(a=(s=o[i])&&s.prototype)?y(a)[M]=s:L=!1;for(i in J)(a=(s=o[i])&&s.prototype)&&(y(a)[M]=s);if((!L||!g(F)||F===Function.prototype)&&(F=function(){throw new N("Incorrect invocation")},L))for(i in H)o[i]&&E(o[i],F);if((!L||!R||R===x)&&(R=F.prototype,L))for(i in H)o[i]&&E(o[i].prototype,R);if(L&&Q(S)!==R&&E(S,R),r&&!h(R,v))for(i in U=!0,d(R,v,{configurable:!0,get:function(){return c(this)?this[G]:void 0}}),H)o[i]&&C(o[i],G,i);t.exports={NATIVE_ARRAY_BUFFER_VIEWS:L,TYPED_ARRAY_TAG:U&&G,aTypedArray:function(t){if(T(t))return t;throw new N("Target is not a typed array")},aTypedArrayConstructor:function(t){if(g(t)&&(!E||u(F,t)))return t;throw new N(I(t)+" is not a typed array constructor")},exportTypedArrayMethod:function(t,e,A,i){if(r){if(A)for(var s in H){var a=o[s];if(a&&h(a.prototype,t))try{delete a.prototype[t]}catch(A){try{a.prototype[t]=e}catch(t){}}}R[t]&&!A||B(R,t,A?e:L&&D[t]||e,i)}},exportTypedArrayStaticMethod:function(t,e,A){var i,s;if(r){if(E){if(A)for(i in H)if((s=o[i])&&h(s,t))try{delete s[t]}catch(t){}if(F[t]&&!A)return;try{return B(F,t,A?e:L&&F[t]||e)}catch(t){}}for(i in H)!(s=o[i])||s[t]&&!A||B(s,t,e)}},getTypedArrayConstructor:Y,isView:function(t){if(!c(t))return!1;var e=l(t);return"DataView"===e||h(H,e)||h(J,e)},isTypedArray:T,TypedArray:F,TypedArrayPrototype:R}},5370:(t,e,A)=>{var i=A(6198);t.exports=function(t,e,A){for(var s=0,a=arguments.length>2?A:i(e),n=new t(a);a>s;)n[s]=e[s++];return n}},9617:(t,e,A)=>{var i=A(5397),s=A(5610),a=A(6198),n=function(t){return function(e,A,n){var r=i(e),o=a(r);if(0===o)return!t&&-1;var g,c=s(n,o);if(t&&A!=A){for(;o>c;)if((g=r[c++])!=g)return!0}else for(;o>c;c++)if((t||c in r)&&r[c]===A)return t||c||0;return!t&&-1}};t.exports={includes:n(!0),indexOf:n(!1)}},4527:(t,e,A)=>{var i=A(3724),s=A(4376),a=TypeError,n=Object.getOwnPropertyDescriptor,r=i&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(t){return t instanceof TypeError}}();t.exports=r?function(t,e){if(s(t)&&!n(t,"length").writable)throw new a("Cannot set read only .length");return t.length=e}:function(t,e){return t.length=e}},7628:(t,e,A)=>{var i=A(6198);t.exports=function(t,e){for(var A=i(t),s=new e(A),a=0;a<A;a++)s[a]=t[A-a-1];return s}},9928:(t,e,A)=>{var i=A(6198),s=A(1291),a=RangeError;t.exports=function(t,e,A,n){var r=i(t),o=s(A),g=o<0?r+o:o;if(g>=r||g<0)throw new a("Incorrect index");for(var c=new e(r),h=0;h<r;h++)c[h]=h===g?n:t[h];return c}},6319:(t,e,A)=>{var i=A(8551),s=A(9539);t.exports=function(t,e,A,a){try{return a?e(i(A)[0],A[1]):e(A)}catch(e){s(t,"throw",e)}}},4576:(t,e,A)=>{var i=A(9504),s=i({}.toString),a=i("".slice);t.exports=function(t){return a(s(t),8,-1)}},6955:(t,e,A)=>{var i=A(2140),s=A(4901),a=A(4576),n=A(8227)("toStringTag"),r=Object,o="Arguments"===a(function(){return arguments}());t.exports=i?a:function(t){var e,A,i;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(A=function(t,e){try{return t[e]}catch(t){}}(e=r(t),n))?A:o?a(e):"Object"===(i=a(e))&&s(e.callee)?"Arguments":i}},7740:(t,e,A)=>{var i=A(9297),s=A(5031),a=A(7347),n=A(4913);t.exports=function(t,e,A){for(var r=s(e),o=n.f,g=a.f,c=0;c<r.length;c++){var h=r[c];i(t,h)||A&&i(A,h)||o(t,h,g(e,h))}}},2211:(t,e,A)=>{var i=A(9039);t.exports=!i((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}))},2529:t=>{t.exports=function(t,e){return{value:t,done:e}}},6699:(t,e,A)=>{var i=A(3724),s=A(4913),a=A(6980);t.exports=i?function(t,e,A){return s.f(t,e,a(1,A))}:function(t,e,A){return t[e]=A,t}},6980:t=>{t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},4659:(t,e,A)=>{var i=A(3724),s=A(4913),a=A(6980);t.exports=function(t,e,A){i?s.f(t,e,a(0,A)):t[e]=A}},2106:(t,e,A)=>{var i=A(283),s=A(4913);t.exports=function(t,e,A){return A.get&&i(A.get,e,{getter:!0}),A.set&&i(A.set,e,{setter:!0}),s.f(t,e,A)}},6840:(t,e,A)=>{var i=A(4901),s=A(4913),a=A(283),n=A(9433);t.exports=function(t,e,A,r){r||(r={});var o=r.enumerable,g=void 0!==r.name?r.name:e;if(i(A)&&a(A,g,r),r.global)o?t[e]=A:n(e,A);else{try{r.unsafe?t[e]&&(o=!0):delete t[e]}catch(t){}o?t[e]=A:s.f(t,e,{value:A,enumerable:!1,configurable:!r.nonConfigurable,writable:!r.nonWritable})}return t}},6279:(t,e,A)=>{var i=A(6840);t.exports=function(t,e,A){for(var s in e)i(t,s,e[s],A);return t}},9433:(t,e,A)=>{var i=A(4475),s=Object.defineProperty;t.exports=function(t,e){try{s(i,t,{value:e,configurable:!0,writable:!0})}catch(A){i[t]=e}return e}},3724:(t,e,A)=>{var i=A(9039);t.exports=!i((function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))},4483:(t,e,A)=>{var i,s,a,n,r=A(4475),o=A(9714),g=A(1548),c=r.structuredClone,h=r.ArrayBuffer,l=r.MessageChannel,I=!1;if(g)I=function(t){c(t,{transfer:[t]})};else if(h)try{l||(i=o("worker_threads"))&&(l=i.MessageChannel),l&&(s=new l,a=new h(2),n=function(t){s.port1.postMessage(null,[t])},2===a.byteLength&&(n(a),0===a.byteLength&&(I=n)))}catch(t){}t.exports=I},4055:(t,e,A)=>{var i=A(4475),s=A(34),a=i.document,n=s(a)&&s(a.createElement);t.exports=function(t){return n?a.createElement(t):{}}},6837:t=>{var e=TypeError;t.exports=function(t){if(t>9007199254740991)throw e("Maximum allowed index exceeded");return t}},5002:t=>{t.exports={IndexSizeError:{s:"INDEX_SIZE_ERR",c:1,m:1},DOMStringSizeError:{s:"DOMSTRING_SIZE_ERR",c:2,m:0},HierarchyRequestError:{s:"HIERARCHY_REQUEST_ERR",c:3,m:1},WrongDocumentError:{s:"WRONG_DOCUMENT_ERR",c:4,m:1},InvalidCharacterError:{s:"INVALID_CHARACTER_ERR",c:5,m:1},NoDataAllowedError:{s:"NO_DATA_ALLOWED_ERR",c:6,m:0},NoModificationAllowedError:{s:"NO_MODIFICATION_ALLOWED_ERR",c:7,m:1},NotFoundError:{s:"NOT_FOUND_ERR",c:8,m:1},NotSupportedError:{s:"NOT_SUPPORTED_ERR",c:9,m:1},InUseAttributeError:{s:"INUSE_ATTRIBUTE_ERR",c:10,m:1},InvalidStateError:{s:"INVALID_STATE_ERR",c:11,m:1},SyntaxError:{s:"SYNTAX_ERR",c:12,m:1},InvalidModificationError:{s:"INVALID_MODIFICATION_ERR",c:13,m:1},NamespaceError:{s:"NAMESPACE_ERR",c:14,m:1},InvalidAccessError:{s:"INVALID_ACCESS_ERR",c:15,m:1},ValidationError:{s:"VALIDATION_ERR",c:16,m:0},TypeMismatchError:{s:"TYPE_MISMATCH_ERR",c:17,m:1},SecurityError:{s:"SECURITY_ERR",c:18,m:1},NetworkError:{s:"NETWORK_ERR",c:19,m:1},AbortError:{s:"ABORT_ERR",c:20,m:1},URLMismatchError:{s:"URL_MISMATCH_ERR",c:21,m:1},QuotaExceededError:{s:"QUOTA_EXCEEDED_ERR",c:22,m:1},TimeoutError:{s:"TIMEOUT_ERR",c:23,m:1},InvalidNodeTypeError:{s:"INVALID_NODE_TYPE_ERR",c:24,m:1},DataCloneError:{s:"DATA_CLONE_ERR",c:25,m:1}}},7290:(t,e,A)=>{var i=A(516),s=A(9088);t.exports=!i&&!s&&"object"==typeof window&&"object"==typeof document},516:t=>{t.exports="object"==typeof Deno&&Deno&&"object"==typeof Deno.version},9088:(t,e,A)=>{var i=A(4475),s=A(4576);t.exports="process"===s(i.process)},9392:t=>{t.exports="undefined"!=typeof navigator&&String(navigator.userAgent)||""},7388:(t,e,A)=>{var i,s,a=A(4475),n=A(9392),r=a.process,o=a.Deno,g=r&&r.versions||o&&o.version,c=g&&g.v8;c&&(s=(i=c.split("."))[0]>0&&i[0]<4?1:+(i[0]+i[1])),!s&&n&&(!(i=n.match(/Edge\/(\d+)/))||i[1]>=74)&&(i=n.match(/Chrome\/(\d+)/))&&(s=+i[1]),t.exports=s},8727:t=>{t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},6193:(t,e,A)=>{var i=A(9504),s=Error,a=i("".replace),n=String(new s("zxcasd").stack),r=/\n\s*at [^:]*:[^\n]*/,o=r.test(n);t.exports=function(t,e){if(o&&"string"==typeof t&&!s.prepareStackTrace)for(;e--;)t=a(t,r,"");return t}},6518:(t,e,A)=>{var i=A(4475),s=A(7347).f,a=A(6699),n=A(6840),r=A(9433),o=A(7740),g=A(2796);t.exports=function(t,e){var A,c,h,l,I,C=t.target,B=t.global,d=t.stat;if(A=B?i:d?i[C]||r(C,{}):i[C]&&i[C].prototype)for(c in e){if(l=e[c],h=t.dontCallGetSet?(I=s(A,c))&&I.value:A[c],!g(B?c:C+(d?".":"#")+c,t.forced)&&void 0!==h){if(typeof l==typeof h)continue;o(l,h)}(t.sham||h&&h.sham)&&a(l,"sham",!0),n(A,c,l,t)}}},9039:t=>{t.exports=function(t){try{return!!t()}catch(t){return!0}}},6080:(t,e,A)=>{var i=A(7476),s=A(9306),a=A(616),n=i(i.bind);t.exports=function(t,e){return s(t),void 0===e?t:a?n(t,e):function(){return t.apply(e,arguments)}}},616:(t,e,A)=>{var i=A(9039);t.exports=!i((function(){var t=function(){}.bind();return"function"!=typeof t||t.hasOwnProperty("prototype")}))},9565:(t,e,A)=>{var i=A(616),s=Function.prototype.call;t.exports=i?s.bind(s):function(){return s.apply(s,arguments)}},350:(t,e,A)=>{var i=A(3724),s=A(9297),a=Function.prototype,n=i&&Object.getOwnPropertyDescriptor,r=s(a,"name"),o=r&&"something"===function(){}.name,g=r&&(!i||i&&n(a,"name").configurable);t.exports={EXISTS:r,PROPER:o,CONFIGURABLE:g}},6706:(t,e,A)=>{var i=A(9504),s=A(9306);t.exports=function(t,e,A){try{return i(s(Object.getOwnPropertyDescriptor(t,e)[A]))}catch(t){}}},7476:(t,e,A)=>{var i=A(4576),s=A(9504);t.exports=function(t){if("Function"===i(t))return s(t)}},9504:(t,e,A)=>{var i=A(616),s=Function.prototype,a=s.call,n=i&&s.bind.bind(a,a);t.exports=i?n:function(t){return function(){return a.apply(t,arguments)}}},7751:(t,e,A)=>{var i=A(4475),s=A(4901);t.exports=function(t,e){return arguments.length<2?(A=i[t],s(A)?A:void 0):i[t]&&i[t][e];var A}},1767:t=>{t.exports=function(t){return{iterator:t,next:t.next,done:!1}}},8646:(t,e,A)=>{var i=A(9565),s=A(8551),a=A(1767),n=A(851);t.exports=function(t,e){e&&"string"==typeof t||s(t);var A=n(t);return a(s(void 0!==A?i(A,t):t))}},851:(t,e,A)=>{var i=A(6955),s=A(5966),a=A(4117),n=A(6269),r=A(8227)("iterator");t.exports=function(t){if(!a(t))return s(t,r)||s(t,"@@iterator")||n[i(t)]}},81:(t,e,A)=>{var i=A(9565),s=A(9306),a=A(8551),n=A(6823),r=A(851),o=TypeError;t.exports=function(t,e){var A=arguments.length<2?r(t):e;if(s(A))return a(i(A,t));throw new o(n(t)+" is not iterable")}},5966:(t,e,A)=>{var i=A(9306),s=A(4117);t.exports=function(t,e){var A=t[e];return s(A)?void 0:i(A)}},3789:(t,e,A)=>{var i=A(9306),s=A(8551),a=A(9565),n=A(1291),r=A(1767),o="Invalid size",g=RangeError,c=TypeError,h=Math.max,l=function(t,e){this.set=t,this.size=h(e,0),this.has=i(t.has),this.keys=i(t.keys)};l.prototype={getIterator:function(){return r(s(a(this.keys,this.set)))},includes:function(t){return a(this.has,this.set,t)}},t.exports=function(t){s(t);var e=+t.size;if(e!=e)throw new c(o);var A=n(e);if(A<0)throw new g(o);return new l(t,A)}},4475:function(t){var e=function(t){return t&&t.Math===Math&&t};t.exports=e("object"==typeof globalThis&&globalThis)||e("object"==typeof window&&window)||e("object"==typeof self&&self)||e("object"==typeof global&&global)||e("object"==typeof this&&this)||function(){return this}()||Function("return this")()},9297:(t,e,A)=>{var i=A(9504),s=A(8981),a=i({}.hasOwnProperty);t.exports=Object.hasOwn||function(t,e){return a(s(t),e)}},421:t=>{t.exports={}},397:(t,e,A)=>{var i=A(7751);t.exports=i("document","documentElement")},5917:(t,e,A)=>{var i=A(3724),s=A(9039),a=A(4055);t.exports=!i&&!s((function(){return 7!==Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},7055:(t,e,A)=>{var i=A(9504),s=A(9039),a=A(4576),n=Object,r=i("".split);t.exports=s((function(){return!n("z").propertyIsEnumerable(0)}))?function(t){return"String"===a(t)?r(t,""):n(t)}:n},3167:(t,e,A)=>{var i=A(4901),s=A(34),a=A(2967);t.exports=function(t,e,A){var n,r;return a&&i(n=e.constructor)&&n!==A&&s(r=n.prototype)&&r!==A.prototype&&a(t,r),t}},3706:(t,e,A)=>{var i=A(9504),s=A(4901),a=A(7629),n=i(Function.toString);s(a.inspectSource)||(a.inspectSource=function(t){return n(t)}),t.exports=a.inspectSource},1181:(t,e,A)=>{var i,s,a,n=A(8622),r=A(4475),o=A(34),g=A(6699),c=A(9297),h=A(7629),l=A(6119),I=A(421),C="Object already initialized",B=r.TypeError,d=r.WeakMap;if(n||h.state){var u=h.state||(h.state=new d);u.get=u.get,u.has=u.has,u.set=u.set,i=function(t,e){if(u.has(t))throw new B(C);return e.facade=t,u.set(t,e),e},s=function(t){return u.get(t)||{}},a=function(t){return u.has(t)}}else{var Q=l("state");I[Q]=!0,i=function(t,e){if(c(t,Q))throw new B(C);return e.facade=t,g(t,Q,e),e},s=function(t){return c(t,Q)?t[Q]:{}},a=function(t){return c(t,Q)}}t.exports={set:i,get:s,has:a,enforce:function(t){return a(t)?s(t):i(t,{})},getterFor:function(t){return function(e){var A;if(!o(e)||(A=s(e)).type!==t)throw new B("Incompatible receiver, "+t+" required");return A}}}},4209:(t,e,A)=>{var i=A(8227),s=A(6269),a=i("iterator"),n=Array.prototype;t.exports=function(t){return void 0!==t&&(s.Array===t||n[a]===t)}},4376:(t,e,A)=>{var i=A(4576);t.exports=Array.isArray||function(t){return"Array"===i(t)}},1108:(t,e,A)=>{var i=A(6955);t.exports=function(t){var e=i(t);return"BigInt64Array"===e||"BigUint64Array"===e}},4901:t=>{var e="object"==typeof document&&document.all;t.exports=void 0===e&&void 0!==e?function(t){return"function"==typeof t||t===e}:function(t){return"function"==typeof t}},2796:(t,e,A)=>{var i=A(9039),s=A(4901),a=/#|\.prototype\./,n=function(t,e){var A=o[r(t)];return A===c||A!==g&&(s(e)?i(e):!!e)},r=n.normalize=function(t){return String(t).replace(a,".").toLowerCase()},o=n.data={},g=n.NATIVE="N",c=n.POLYFILL="P";t.exports=n},4117:t=>{t.exports=function(t){return null==t}},34:(t,e,A)=>{var i=A(4901);t.exports=function(t){return"object"==typeof t?null!==t:i(t)}},3925:(t,e,A)=>{var i=A(34);t.exports=function(t){return i(t)||null===t}},6395:t=>{t.exports=!1},757:(t,e,A)=>{var i=A(7751),s=A(4901),a=A(1625),n=A(7040),r=Object;t.exports=n?function(t){return"symbol"==typeof t}:function(t){var e=i("Symbol");return s(e)&&a(e.prototype,r(t))}},507:(t,e,A)=>{var i=A(9565);t.exports=function(t,e,A){for(var s,a,n=A?t:t.iterator,r=t.next;!(s=i(r,n)).done;)if(void 0!==(a=e(s.value)))return a}},2652:(t,e,A)=>{var i=A(6080),s=A(9565),a=A(8551),n=A(6823),r=A(4209),o=A(6198),g=A(1625),c=A(81),h=A(851),l=A(9539),I=TypeError,C=function(t,e){this.stopped=t,this.result=e},B=C.prototype;t.exports=function(t,e,A){var d,u,Q,E,f,p,m,y=A&&A.that,w=!(!A||!A.AS_ENTRIES),b=!(!A||!A.IS_RECORD),D=!(!A||!A.IS_ITERATOR),k=!(!A||!A.INTERRUPTED),S=i(e,y),F=function(t){return d&&l(d,"normal",t),new C(!0,t)},R=function(t){return w?(a(t),k?S(t[0],t[1],F):S(t[0],t[1])):k?S(t,F):S(t)};if(b)d=t.iterator;else if(D)d=t;else{if(!(u=h(t)))throw new I(n(t)+" is not iterable");if(r(u)){for(Q=0,E=o(t);E>Q;Q++)if((f=R(t[Q]))&&g(B,f))return f;return new C(!1)}d=c(t,u)}for(p=b?t.next:d.next;!(m=s(p,d)).done;){try{f=R(m.value)}catch(t){l(d,"throw",t)}if("object"==typeof f&&f&&g(B,f))return f}return new C(!1)}},9539:(t,e,A)=>{var i=A(9565),s=A(8551),a=A(5966);t.exports=function(t,e,A){var n,r;s(t);try{if(!(n=a(t,"return"))){if("throw"===e)throw A;return A}n=i(n,t)}catch(t){r=!0,n=t}if("throw"===e)throw A;if(r)throw n;return s(n),A}},9462:(t,e,A)=>{var i=A(9565),s=A(2360),a=A(6699),n=A(6279),r=A(8227),o=A(1181),g=A(5966),c=A(7657).IteratorPrototype,h=A(2529),l=A(9539),I=r("toStringTag"),C="IteratorHelper",B="WrapForValidIterator",d=o.set,u=function(t){var e=o.getterFor(t?B:C);return n(s(c),{next:function(){var A=e(this);if(t)return A.nextHandler();try{var i=A.done?void 0:A.nextHandler();return h(i,A.done)}catch(t){throw A.done=!0,t}},return:function(){var A=e(this),s=A.iterator;if(A.done=!0,t){var a=g(s,"return");return a?i(a,s):h(void 0,!0)}if(A.inner)try{l(A.inner.iterator,"normal")}catch(t){return l(s,"throw",t)}return l(s,"normal"),h(void 0,!0)}})},Q=u(!0),E=u(!1);a(E,I,"Iterator Helper"),t.exports=function(t,e){var A=function(A,i){i?(i.iterator=A.iterator,i.next=A.next):i=A,i.type=e?B:C,i.nextHandler=t,i.counter=0,i.done=!1,d(this,i)};return A.prototype=e?Q:E,A}},713:(t,e,A)=>{var i=A(9565),s=A(9306),a=A(8551),n=A(1767),r=A(9462),o=A(6319),g=r((function(){var t=this.iterator,e=a(i(this.next,t));if(!(this.done=!!e.done))return o(t,this.mapper,[e.value,this.counter++],!0)}));t.exports=function(t){return a(this),s(t),new g(n(this),{mapper:t})}},7657:(t,e,A)=>{var i,s,a,n=A(9039),r=A(4901),o=A(34),g=A(2360),c=A(2787),h=A(6840),l=A(8227),I=A(6395),C=l("iterator"),B=!1;[].keys&&("next"in(a=[].keys())?(s=c(c(a)))!==Object.prototype&&(i=s):B=!0),!o(i)||n((function(){var t={};return i[C].call(t)!==t}))?i={}:I&&(i=g(i)),r(i[C])||h(i,C,(function(){return this})),t.exports={IteratorPrototype:i,BUGGY_SAFARI_ITERATORS:B}},6269:t=>{t.exports={}},6198:(t,e,A)=>{var i=A(8014);t.exports=function(t){return i(t.length)}},283:(t,e,A)=>{var i=A(9504),s=A(9039),a=A(4901),n=A(9297),r=A(3724),o=A(350).CONFIGURABLE,g=A(3706),c=A(1181),h=c.enforce,l=c.get,I=String,C=Object.defineProperty,B=i("".slice),d=i("".replace),u=i([].join),Q=r&&!s((function(){return 8!==C((function(){}),"length",{value:8}).length})),E=String(String).split("String"),f=t.exports=function(t,e,A){"Symbol("===B(I(e),0,7)&&(e="["+d(I(e),/^Symbol\(([^)]*)\).*$/,"$1")+"]"),A&&A.getter&&(e="get "+e),A&&A.setter&&(e="set "+e),(!n(t,"name")||o&&t.name!==e)&&(r?C(t,"name",{value:e,configurable:!0}):t.name=e),Q&&A&&n(A,"arity")&&t.length!==A.arity&&C(t,"length",{value:A.arity});try{A&&n(A,"constructor")&&A.constructor?r&&C(t,"prototype",{writable:!1}):t.prototype&&(t.prototype=void 0)}catch(t){}var i=h(t);return n(i,"source")||(i.source=u(E,"string"==typeof e?e:"")),t};Function.prototype.toString=f((function(){return a(this)&&l(this).source||g(this)}),"toString")},741:t=>{var e=Math.ceil,A=Math.floor;t.exports=Math.trunc||function(t){var i=+t;return(i>0?A:e)(i)}},6043:(t,e,A)=>{var i=A(9306),s=TypeError,a=function(t){var e,A;this.promise=new t((function(t,i){if(void 0!==e||void 0!==A)throw new s("Bad Promise constructor");e=t,A=i})),this.resolve=i(e),this.reject=i(A)};t.exports.f=function(t){return new a(t)}},2603:(t,e,A)=>{var i=A(655);t.exports=function(t,e){return void 0===t?arguments.length<2?"":e:i(t)}},4149:t=>{var e=RangeError;t.exports=function(t){if(t==t)return t;throw new e("NaN is not allowed")}},2360:(t,e,A)=>{var i,s=A(8551),a=A(6801),n=A(8727),r=A(421),o=A(397),g=A(4055),c=A(6119),h="prototype",l="script",I=c("IE_PROTO"),C=function(){},B=function(t){return"<"+l+">"+t+"</"+l+">"},d=function(t){t.write(B("")),t.close();var e=t.parentWindow.Object;return t=null,e},u=function(){try{i=new ActiveXObject("htmlfile")}catch(t){}var t,e,A;u="undefined"!=typeof document?document.domain&&i?d(i):(e=g("iframe"),A="java"+l+":",e.style.display="none",o.appendChild(e),e.src=String(A),(t=e.contentWindow.document).open(),t.write(B("document.F=Object")),t.close(),t.F):d(i);for(var s=n.length;s--;)delete u[h][n[s]];return u()};r[I]=!0,t.exports=Object.create||function(t,e){var A;return null!==t?(C[h]=s(t),A=new C,C[h]=null,A[I]=t):A=u(),void 0===e?A:a.f(A,e)}},6801:(t,e,A)=>{var i=A(3724),s=A(8686),a=A(4913),n=A(8551),r=A(5397),o=A(1072);e.f=i&&!s?Object.defineProperties:function(t,e){n(t);for(var A,i=r(e),s=o(e),g=s.length,c=0;g>c;)a.f(t,A=s[c++],i[A]);return t}},4913:(t,e,A)=>{var i=A(3724),s=A(5917),a=A(8686),n=A(8551),r=A(6969),o=TypeError,g=Object.defineProperty,c=Object.getOwnPropertyDescriptor,h="enumerable",l="configurable",I="writable";e.f=i?a?function(t,e,A){if(n(t),e=r(e),n(A),"function"==typeof t&&"prototype"===e&&"value"in A&&I in A&&!A[I]){var i=c(t,e);i&&i[I]&&(t[e]=A.value,A={configurable:l in A?A[l]:i[l],enumerable:h in A?A[h]:i[h],writable:!1})}return g(t,e,A)}:g:function(t,e,A){if(n(t),e=r(e),n(A),s)try{return g(t,e,A)}catch(t){}if("get"in A||"set"in A)throw new o("Accessors not supported");return"value"in A&&(t[e]=A.value),t}},7347:(t,e,A)=>{var i=A(3724),s=A(9565),a=A(8773),n=A(6980),r=A(5397),o=A(6969),g=A(9297),c=A(5917),h=Object.getOwnPropertyDescriptor;e.f=i?h:function(t,e){if(t=r(t),e=o(e),c)try{return h(t,e)}catch(t){}if(g(t,e))return n(!s(a.f,t,e),t[e])}},8480:(t,e,A)=>{var i=A(1828),s=A(8727).concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return i(t,s)}},3717:(t,e)=>{e.f=Object.getOwnPropertySymbols},2787:(t,e,A)=>{var i=A(9297),s=A(4901),a=A(8981),n=A(6119),r=A(2211),o=n("IE_PROTO"),g=Object,c=g.prototype;t.exports=r?g.getPrototypeOf:function(t){var e=a(t);if(i(e,o))return e[o];var A=e.constructor;return s(A)&&e instanceof A?A.prototype:e instanceof g?c:null}},1625:(t,e,A)=>{var i=A(9504);t.exports=i({}.isPrototypeOf)},1828:(t,e,A)=>{var i=A(9504),s=A(9297),a=A(5397),n=A(9617).indexOf,r=A(421),o=i([].push);t.exports=function(t,e){var A,i=a(t),g=0,c=[];for(A in i)!s(r,A)&&s(i,A)&&o(c,A);for(;e.length>g;)s(i,A=e[g++])&&(~n(c,A)||o(c,A));return c}},1072:(t,e,A)=>{var i=A(1828),s=A(8727);t.exports=Object.keys||function(t){return i(t,s)}},8773:(t,e)=>{var A={}.propertyIsEnumerable,i=Object.getOwnPropertyDescriptor,s=i&&!A.call({1:2},1);e.f=s?function(t){var e=i(this,t);return!!e&&e.enumerable}:A},2967:(t,e,A)=>{var i=A(6706),s=A(34),a=A(7750),n=A(3506);t.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,A={};try{(t=i(Object.prototype,"__proto__","set"))(A,[]),e=A instanceof Array}catch(t){}return function(A,i){return a(A),n(i),s(A)?(e?t(A,i):A.__proto__=i,A):A}}():void 0)},4270:(t,e,A)=>{var i=A(9565),s=A(4901),a=A(34),n=TypeError;t.exports=function(t,e){var A,r;if("string"===e&&s(A=t.toString)&&!a(r=i(A,t)))return r;if(s(A=t.valueOf)&&!a(r=i(A,t)))return r;if("string"!==e&&s(A=t.toString)&&!a(r=i(A,t)))return r;throw new n("Can't convert object to primitive value")}},5031:(t,e,A)=>{var i=A(7751),s=A(9504),a=A(8480),n=A(3717),r=A(8551),o=s([].concat);t.exports=i("Reflect","ownKeys")||function(t){var e=a.f(r(t)),A=n.f;return A?o(e,A(t)):e}},8235:(t,e,A)=>{var i=A(9504),s=A(9297),a=SyntaxError,n=parseInt,r=String.fromCharCode,o=i("".charAt),g=i("".slice),c=i(/./.exec),h={'\\"':'"',"\\\\":"\\","\\/":"/","\\b":"\b","\\f":"\f","\\n":"\n","\\r":"\r","\\t":"\t"},l=/^[\da-f]{4}$/i,I=/^[\u0000-\u001F]$/;t.exports=function(t,e){for(var A=!0,i="";e<t.length;){var C=o(t,e);if("\\"===C){var B=g(t,e,e+2);if(s(h,B))i+=h[B],e+=2;else{if("\\u"!==B)throw new a('Unknown escape sequence: "'+B+'"');var d=g(t,e+=2,e+4);if(!c(l,d))throw new a("Bad Unicode escape at: "+e);i+=r(n(d,16)),e+=4}}else{if('"'===C){A=!1,e++;break}if(c(I,C))throw new a("Bad control character in string literal at: "+e);i+=C,e++}}if(A)throw new a("Unterminated string at: "+e);return{value:i,end:e}}},7750:(t,e,A)=>{var i=A(4117),s=TypeError;t.exports=function(t){if(i(t))throw new s("Can't call method on "+t);return t}},9286:(t,e,A)=>{var i=A(4402),s=A(8469),a=i.Set,n=i.add;t.exports=function(t){var e=new a;return s(t,(function(t){n(e,t)})),e}},3440:(t,e,A)=>{var i=A(7080),s=A(4402),a=A(9286),n=A(5170),r=A(3789),o=A(8469),g=A(507),c=s.has,h=s.remove;t.exports=function(t){var e=i(this),A=r(t),s=a(e);return n(e)<=A.size?o(e,(function(t){A.includes(t)&&h(s,t)})):g(A.getIterator(),(function(t){c(e,t)&&h(s,t)})),s}},4402:(t,e,A)=>{var i=A(9504),s=Set.prototype;t.exports={Set,add:i(s.add),has:i(s.has),remove:i(s.delete),proto:s}},8750:(t,e,A)=>{var i=A(7080),s=A(4402),a=A(5170),n=A(3789),r=A(8469),o=A(507),g=s.Set,c=s.add,h=s.has;t.exports=function(t){var e=i(this),A=n(t),s=new g;return a(e)>A.size?o(A.getIterator(),(function(t){h(e,t)&&c(s,t)})):r(e,(function(t){A.includes(t)&&c(s,t)})),s}},4449:(t,e,A)=>{var i=A(7080),s=A(4402).has,a=A(5170),n=A(3789),r=A(8469),o=A(507),g=A(9539);t.exports=function(t){var e=i(this),A=n(t);if(a(e)<=A.size)return!1!==r(e,(function(t){if(A.includes(t))return!1}),!0);var c=A.getIterator();return!1!==o(c,(function(t){if(s(e,t))return g(c,"normal",!1)}))}},3838:(t,e,A)=>{var i=A(7080),s=A(5170),a=A(8469),n=A(3789);t.exports=function(t){var e=i(this),A=n(t);return!(s(e)>A.size)&&!1!==a(e,(function(t){if(!A.includes(t))return!1}),!0)}},8527:(t,e,A)=>{var i=A(7080),s=A(4402).has,a=A(5170),n=A(3789),r=A(507),o=A(9539);t.exports=function(t){var e=i(this),A=n(t);if(a(e)<A.size)return!1;var g=A.getIterator();return!1!==r(g,(function(t){if(!s(e,t))return o(g,"normal",!1)}))}},8469:(t,e,A)=>{var i=A(9504),s=A(507),a=A(4402),n=a.Set,r=a.proto,o=i(r.forEach),g=i(r.keys),c=g(new n).next;t.exports=function(t,e,A){return A?s({iterator:g(t),next:c},e):o(t,e)}},4916:(t,e,A)=>{var i=A(7751),s=function(t){return{size:t,has:function(){return!1},keys:function(){return{next:function(){return{done:!0}}}}}};t.exports=function(t){var e=i("Set");try{(new e)[t](s(0));try{return(new e)[t](s(-1)),!1}catch(t){return!0}}catch(t){return!1}}},5170:(t,e,A)=>{var i=A(6706),s=A(4402);t.exports=i(s.proto,"size","get")||function(t){return t.size}},3650:(t,e,A)=>{var i=A(7080),s=A(4402),a=A(9286),n=A(3789),r=A(507),o=s.add,g=s.has,c=s.remove;t.exports=function(t){var e=i(this),A=n(t).getIterator(),s=a(e);return r(A,(function(t){g(e,t)?c(s,t):o(s,t)})),s}},4204:(t,e,A)=>{var i=A(7080),s=A(4402).add,a=A(9286),n=A(3789),r=A(507);t.exports=function(t){var e=i(this),A=n(t).getIterator(),o=a(e);return r(A,(function(t){s(o,t)})),o}},6119:(t,e,A)=>{var i=A(5745),s=A(3392),a=i("keys");t.exports=function(t){return a[t]||(a[t]=s(t))}},7629:(t,e,A)=>{var i=A(6395),s=A(4475),a=A(9433),n="__core-js_shared__",r=t.exports=s[n]||a(n,{});(r.versions||(r.versions=[])).push({version:"3.37.1",mode:i?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.37.1/LICENSE",source:"https://github.com/zloirock/core-js"})},5745:(t,e,A)=>{var i=A(7629);t.exports=function(t,e){return i[t]||(i[t]=e||{})}},1548:(t,e,A)=>{var i=A(4475),s=A(9039),a=A(7388),n=A(7290),r=A(516),o=A(9088),g=i.structuredClone;t.exports=!!g&&!s((function(){if(r&&a>92||o&&a>94||n&&a>97)return!1;var t=new ArrayBuffer(8),e=g(t,{transfer:[t]});return 0!==t.byteLength||8!==e.byteLength}))},4495:(t,e,A)=>{var i=A(7388),s=A(9039),a=A(4475).String;t.exports=!!Object.getOwnPropertySymbols&&!s((function(){var t=Symbol("symbol detection");return!a(t)||!(Object(t)instanceof Symbol)||!Symbol.sham&&i&&i<41}))},5610:(t,e,A)=>{var i=A(1291),s=Math.max,a=Math.min;t.exports=function(t,e){var A=i(t);return A<0?s(A+e,0):a(A,e)}},5854:(t,e,A)=>{var i=A(2777),s=TypeError;t.exports=function(t){var e=i(t,"number");if("number"==typeof e)throw new s("Can't convert number to bigint");return BigInt(e)}},7696:(t,e,A)=>{var i=A(1291),s=A(8014),a=RangeError;t.exports=function(t){if(void 0===t)return 0;var e=i(t),A=s(e);if(e!==A)throw new a("Wrong length or index");return A}},5397:(t,e,A)=>{var i=A(7055),s=A(7750);t.exports=function(t){return i(s(t))}},1291:(t,e,A)=>{var i=A(741);t.exports=function(t){var e=+t;return e!=e||0===e?0:i(e)}},8014:(t,e,A)=>{var i=A(1291),s=Math.min;t.exports=function(t){var e=i(t);return e>0?s(e,9007199254740991):0}},8981:(t,e,A)=>{var i=A(7750),s=Object;t.exports=function(t){return s(i(t))}},9590:(t,e,A)=>{var i=A(1291),s=RangeError;t.exports=function(t){var e=i(t);if(e<0)throw new s("The argument can't be less than 0");return e}},2777:(t,e,A)=>{var i=A(9565),s=A(34),a=A(757),n=A(5966),r=A(4270),o=A(8227),g=TypeError,c=o("toPrimitive");t.exports=function(t,e){if(!s(t)||a(t))return t;var A,o=n(t,c);if(o){if(void 0===e&&(e="default"),A=i(o,t,e),!s(A)||a(A))return A;throw new g("Can't convert object to primitive value")}return void 0===e&&(e="number"),r(t,e)}},6969:(t,e,A)=>{var i=A(2777),s=A(757);t.exports=function(t){var e=i(t,"string");return s(e)?e:e+""}},2140:(t,e,A)=>{var i={};i[A(8227)("toStringTag")]="z",t.exports="[object z]"===String(i)},655:(t,e,A)=>{var i=A(6955),s=String;t.exports=function(t){if("Symbol"===i(t))throw new TypeError("Cannot convert a Symbol value to a string");return s(t)}},9714:(t,e,A)=>{var i=A(9088);t.exports=function(t){try{if(i)return Function('return require("'+t+'")')()}catch(t){}}},6823:t=>{var e=String;t.exports=function(t){try{return e(t)}catch(t){return"Object"}}},3392:(t,e,A)=>{var i=A(9504),s=0,a=Math.random(),n=i(1..toString);t.exports=function(t){return"Symbol("+(void 0===t?"":t)+")_"+n(++s+a,36)}},7040:(t,e,A)=>{var i=A(4495);t.exports=i&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},8686:(t,e,A)=>{var i=A(3724),s=A(9039);t.exports=i&&s((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},2812:t=>{var e=TypeError;t.exports=function(t,A){if(t<A)throw new e("Not enough arguments");return t}},8622:(t,e,A)=>{var i=A(4475),s=A(4901),a=i.WeakMap;t.exports=s(a)&&/native code/.test(String(a))},8227:(t,e,A)=>{var i=A(4475),s=A(5745),a=A(9297),n=A(3392),r=A(4495),o=A(7040),g=i.Symbol,c=s("wks"),h=o?g.for||g:g&&g.withoutSetter||n;t.exports=function(t){return a(c,t)||(c[t]=r&&a(g,t)?g[t]:h("Symbol."+t)),c[t]}},6573:(t,e,A)=>{var i=A(3724),s=A(2106),a=A(3238),n=ArrayBuffer.prototype;i&&!("detached"in n)&&s(n,"detached",{configurable:!0,get:function(){return a(this)}})},7936:(t,e,A)=>{var i=A(6518),s=A(5636);s&&i({target:"ArrayBuffer",proto:!0},{transferToFixedLength:function(){return s(this,arguments.length?arguments[0]:void 0,!1)}})},8100:(t,e,A)=>{var i=A(6518),s=A(5636);s&&i({target:"ArrayBuffer",proto:!0},{transfer:function(){return s(this,arguments.length?arguments[0]:void 0,!0)}})},4114:(t,e,A)=>{var i=A(6518),s=A(8981),a=A(6198),n=A(4527),r=A(6837);i({target:"Array",proto:!0,arity:1,forced:A(9039)((function(){return 4294967297!==[].push.call({length:4294967296},1)}))||!function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(t){return t instanceof TypeError}}()},{push:function(t){var e=s(this),A=a(e),i=arguments.length;r(A+i);for(var o=0;o<i;o++)e[A]=arguments[o],A++;return n(e,A),A}})},4628:(t,e,A)=>{var i=A(6518),s=A(6043);i({target:"Promise",stat:!0},{withResolvers:function(){var t=s.f(this);return{promise:t.promise,resolve:t.resolve,reject:t.reject}}})},7642:(t,e,A)=>{var i=A(6518),s=A(3440);i({target:"Set",proto:!0,real:!0,forced:!A(4916)("difference")},{difference:s})},8004:(t,e,A)=>{var i=A(6518),s=A(9039),a=A(8750);i({target:"Set",proto:!0,real:!0,forced:!A(4916)("intersection")||s((function(){return"3,2"!==String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))}))},{intersection:a})},3853:(t,e,A)=>{var i=A(6518),s=A(4449);i({target:"Set",proto:!0,real:!0,forced:!A(4916)("isDisjointFrom")},{isDisjointFrom:s})},5876:(t,e,A)=>{var i=A(6518),s=A(3838);i({target:"Set",proto:!0,real:!0,forced:!A(4916)("isSubsetOf")},{isSubsetOf:s})},2475:(t,e,A)=>{var i=A(6518),s=A(8527);i({target:"Set",proto:!0,real:!0,forced:!A(4916)("isSupersetOf")},{isSupersetOf:s})},5024:(t,e,A)=>{var i=A(6518),s=A(3650);i({target:"Set",proto:!0,real:!0,forced:!A(4916)("symmetricDifference")},{symmetricDifference:s})},1698:(t,e,A)=>{var i=A(6518),s=A(4204);i({target:"Set",proto:!0,real:!0,forced:!A(4916)("union")},{union:s})},7467:(t,e,A)=>{var i=A(7628),s=A(4644),a=s.aTypedArray,n=s.exportTypedArrayMethod,r=s.getTypedArrayConstructor;n("toReversed",(function(){return i(a(this),r(this))}))},4732:(t,e,A)=>{var i=A(4644),s=A(9504),a=A(9306),n=A(5370),r=i.aTypedArray,o=i.getTypedArrayConstructor,g=i.exportTypedArrayMethod,c=s(i.TypedArrayPrototype.sort);g("toSorted",(function(t){void 0!==t&&a(t);var e=r(this),A=n(o(e),e);return c(A,t)}))},9577:(t,e,A)=>{var i=A(9928),s=A(4644),a=A(1108),n=A(1291),r=A(5854),o=s.aTypedArray,g=s.getTypedArrayConstructor,c=s.exportTypedArrayMethod,h=!!function(){try{new Int8Array(1).with(2,{valueOf:function(){throw 8}})}catch(t){return 8===t}}();c("with",{with:function(t,e){var A=o(this),s=n(t),c=a(A)?r(e):+e;return i(A,g(A),s,c)}}.with,!h)},8992:(t,e,A)=>{var i=A(6518),s=A(4475),a=A(679),n=A(8551),r=A(4901),o=A(2787),g=A(2106),c=A(4659),h=A(9039),l=A(9297),I=A(8227),C=A(7657).IteratorPrototype,B=A(3724),d=A(6395),u="constructor",Q="Iterator",E=I("toStringTag"),f=TypeError,p=s[Q],m=d||!r(p)||p.prototype!==C||!h((function(){p({})})),y=function(){if(a(this,C),o(this)===C)throw new f("Abstract class Iterator not directly constructable")},w=function(t,e){B?g(C,t,{configurable:!0,get:function(){return e},set:function(e){if(n(this),this===C)throw new f("You can't redefine this property");l(this,t)?this[t]=e:c(this,t,e)}}):C[t]=e};l(C,E)||w(E,Q),!m&&l(C,u)&&C[u]!==Object||w(u,y),y.prototype=C,i({global:!0,constructor:!0,forced:m},{Iterator:y})},4743:(t,e,A)=>{var i=A(6518),s=A(9565),a=A(8551),n=A(1767),r=A(4149),o=A(9590),g=A(9462),c=A(6395),h=g((function(){for(var t,e=this.iterator,A=this.next;this.remaining;)if(this.remaining--,t=a(s(A,e)),this.done=!!t.done)return;if(t=a(s(A,e)),!(this.done=!!t.done))return t.value}));i({target:"Iterator",proto:!0,real:!0,forced:c},{drop:function(t){a(this);var e=o(r(+t));return new h(n(this),{remaining:e})}})},3215:(t,e,A)=>{var i=A(6518),s=A(2652),a=A(9306),n=A(8551),r=A(1767);i({target:"Iterator",proto:!0,real:!0},{every:function(t){n(this),a(t);var e=r(this),A=0;return!s(e,(function(e,i){if(!t(e,A++))return i()}),{IS_RECORD:!0,INTERRUPTED:!0}).stopped}})},4520:(t,e,A)=>{var i=A(6518),s=A(9565),a=A(9306),n=A(8551),r=A(1767),o=A(9462),g=A(6319),c=A(6395),h=o((function(){for(var t,e,A=this.iterator,i=this.predicate,a=this.next;;){if(t=n(s(a,A)),this.done=!!t.done)return;if(e=t.value,g(A,i,[e,this.counter++],!0))return e}}));i({target:"Iterator",proto:!0,real:!0,forced:c},{filter:function(t){return n(this),a(t),new h(r(this),{predicate:t})}})},670:(t,e,A)=>{var i=A(6518),s=A(9565),a=A(9306),n=A(8551),r=A(1767),o=A(8646),g=A(9462),c=A(9539),h=A(6395),l=g((function(){for(var t,e,A=this.iterator,i=this.mapper;;){if(e=this.inner)try{if(!(t=n(s(e.next,e.iterator))).done)return t.value;this.inner=null}catch(t){c(A,"throw",t)}if(t=n(s(this.next,A)),this.done=!!t.done)return;try{this.inner=o(i(t.value,this.counter++),!1)}catch(t){c(A,"throw",t)}}}));i({target:"Iterator",proto:!0,real:!0,forced:h},{flatMap:function(t){return n(this),a(t),new l(r(this),{mapper:t,inner:null})}})},1454:(t,e,A)=>{var i=A(6518),s=A(713);i({target:"Iterator",proto:!0,real:!0,forced:A(6395)},{map:s})},7550:(t,e,A)=>{var i=A(6518),s=A(2652),a=A(9306),n=A(8551),r=A(1767);i({target:"Iterator",proto:!0,real:!0},{some:function(t){n(this),a(t);var e=r(this),A=0;return s(e,(function(e,i){if(t(e,A++))return i()}),{IS_RECORD:!0,INTERRUPTED:!0}).stopped}})},8335:(t,e,A)=>{var i=A(6518),s=A(3724),a=A(4475),n=A(7751),r=A(9504),o=A(9565),g=A(4901),c=A(34),h=A(4376),l=A(9297),I=A(655),C=A(6198),B=A(4659),d=A(9039),u=A(8235),Q=A(4495),E=a.JSON,f=a.Number,p=a.SyntaxError,m=E&&E.parse,y=n("Object","keys"),w=Object.getOwnPropertyDescriptor,b=r("".charAt),D=r("".slice),k=r(/./.exec),S=r([].push),F=/^\d$/,R=/^[1-9]$/,x=/^(?:-|\d)$/,N=/^[\t\n\r ]$/,v=function(t,e,A,i){var s,a,n,r,g,I=t[e],B=i&&I===i.value,d=B&&"string"==typeof i.source?{source:i.source}:{};if(c(I)){var u=h(I),Q=B?i.nodes:u?[]:{};if(u)for(s=Q.length,n=C(I),r=0;r<n;r++)G(I,r,v(I,""+r,A,r<s?Q[r]:void 0));else for(a=y(I),n=C(a),r=0;r<n;r++)g=a[r],G(I,g,v(I,g,A,l(Q,g)?Q[g]:void 0))}return o(A,t,e,I,d)},G=function(t,e,A){if(s){var i=w(t,e);if(i&&!i.configurable)return}void 0===A?delete t[e]:B(t,e,A)},M=function(t,e,A,i){this.value=t,this.end=e,this.source=A,this.nodes=i},L=function(t,e){this.source=t,this.index=e};L.prototype={fork:function(t){return new L(this.source,t)},parse:function(){var t=this.source,e=this.skip(N,this.index),A=this.fork(e),i=b(t,e);if(k(x,i))return A.number();switch(i){case"{":return A.object();case"[":return A.array();case'"':return A.string();case"t":return A.keyword(!0);case"f":return A.keyword(!1);case"n":return A.keyword(null)}throw new p('Unexpected character: "'+i+'" at: '+e)},node:function(t,e,A,i,s){return new M(e,i,t?null:D(this.source,A,i),s)},object:function(){for(var t=this.source,e=this.index+1,A=!1,i={},s={};e<t.length;){if(e=this.until(['"',"}"],e),"}"===b(t,e)&&!A){e++;break}var a=this.fork(e).string(),n=a.value;e=a.end,e=this.until([":"],e)+1,e=this.skip(N,e),a=this.fork(e).parse(),B(s,n,a),B(i,n,a.value),e=this.until([",","}"],a.end);var r=b(t,e);if(","===r)A=!0,e++;else if("}"===r){e++;break}}return this.node(1,i,this.index,e,s)},array:function(){for(var t=this.source,e=this.index+1,A=!1,i=[],s=[];e<t.length;){if(e=this.skip(N,e),"]"===b(t,e)&&!A){e++;break}var a=this.fork(e).parse();if(S(s,a),S(i,a.value),e=this.until([",","]"],a.end),","===b(t,e))A=!0,e++;else if("]"===b(t,e)){e++;break}}return this.node(1,i,this.index,e,s)},string:function(){var t=this.index,e=u(this.source,this.index+1);return this.node(0,e.value,t,e.end)},number:function(){var t=this.source,e=this.index,A=e;if("-"===b(t,A)&&A++,"0"===b(t,A))A++;else{if(!k(R,b(t,A)))throw new p("Failed to parse number at: "+A);A=this.skip(F,++A)}if(!("."===b(t,A)&&(A=this.skip(F,++A)),"e"!==b(t,A)&&"E"!==b(t,A)||(A++,"+"!==b(t,A)&&"-"!==b(t,A)||A++,A!==(A=this.skip(F,A)))))throw new p("Failed to parse number's exponent value at: "+A);return this.node(0,f(D(t,e,A)),e,A)},keyword:function(t){var e=""+t,A=this.index,i=A+e.length;if(D(this.source,A,i)!==e)throw new p("Failed to parse value at: "+A);return this.node(0,t,A,i)},skip:function(t,e){for(var A=this.source;e<A.length&&k(t,b(A,e));e++);return e},until:function(t,e){e=this.skip(N,e);for(var A=b(this.source,e),i=0;i<t.length;i++)if(t[i]===A)return e;throw new p('Unexpected character: "'+A+'" at: '+e)}};var U=d((function(){var t,e="9007199254740993";return m(e,(function(e,A,i){t=i.source})),t!==e})),H=Q&&!d((function(){return 1/m("-0 \t")!=-1/0}));i({target:"JSON",stat:!0,forced:U},{parse:function(t,e){return H&&!g(e)?m(t):function(t,e){t=I(t);var A=new L(t,0,""),i=A.parse(),s=i.value,a=A.skip(N,i.end);if(a<t.length)throw new p('Unexpected extra character: "'+b(t,a)+'" after the parsed data at: '+a);return g(e)?v({"":s},"",e,i):s}(t,e)}})},3375:(t,e,A)=>{A(7642)},9225:(t,e,A)=>{A(8004)},3972:(t,e,A)=>{A(3853)},9209:(t,e,A)=>{A(5876)},5714:(t,e,A)=>{A(2475)},7561:(t,e,A)=>{A(5024)},6197:(t,e,A)=>{A(1698)},4979:(t,e,A)=>{var i=A(6518),s=A(4475),a=A(7751),n=A(6980),r=A(4913).f,o=A(9297),g=A(679),c=A(3167),h=A(2603),l=A(5002),I=A(6193),C=A(3724),B=A(6395),d="DOMException",u=a("Error"),Q=a(d),E=function(){g(this,f);var t=arguments.length,e=h(t<1?void 0:arguments[0]),A=h(t<2?void 0:arguments[1],"Error"),i=new Q(e,A),s=new u(e);return s.name=d,r(i,"stack",n(1,I(s.stack,1))),c(i,this,E),i},f=E.prototype=Q.prototype,p="stack"in new u(d),m="stack"in new Q(1,2),y=Q&&C&&Object.getOwnPropertyDescriptor(s,d),w=!(!y||y.writable&&y.configurable),b=p&&!w&&!m;i({global:!0,constructor:!0,forced:B||b},{DOMException:b?E:Q});var D=a(d),k=D.prototype;if(k.constructor!==D)for(var S in B||r(k,"constructor",n(1,D)),l)if(o(l,S)){var F=l[S],R=F.s;o(D,R)||r(D,R,n(6,F.c))}},4603:(t,e,A)=>{var i=A(6840),s=A(9504),a=A(655),n=A(2812),r=URLSearchParams,o=r.prototype,g=s(o.append),c=s(o.delete),h=s(o.forEach),l=s([].push),I=new r("a=1&a=2&b=3");I.delete("a",1),I.delete("b",void 0),I+""!="a=2"&&i(o,"delete",(function(t){var e=arguments.length,A=e<2?void 0:arguments[1];if(e&&void 0===A)return c(this,t);var i=[];h(this,(function(t,e){l(i,{key:e,value:t})})),n(e,1);for(var s,r=a(t),o=a(A),I=0,C=0,B=!1,d=i.length;I<d;)s=i[I++],B||s.key===r?(B=!0,c(this,s.key)):C++;for(;C<d;)(s=i[C++]).key===r&&s.value===o||g(this,s.key,s.value)}),{enumerable:!0,unsafe:!0})},7566:(t,e,A)=>{var i=A(6840),s=A(9504),a=A(655),n=A(2812),r=URLSearchParams,o=r.prototype,g=s(o.getAll),c=s(o.has),h=new r("a=1");!h.has("a",2)&&h.has("a",void 0)||i(o,"has",(function(t){var e=arguments.length,A=e<2?void 0:arguments[1];if(e&&void 0===A)return c(this,t);var i=g(this,t);n(e,1);for(var s=a(A),r=0;r<i.length;)if(i[r++]===s)return!0;return!1}),{enumerable:!0,unsafe:!0})},8721:(t,e,A)=>{var i=A(3724),s=A(9504),a=A(2106),n=URLSearchParams.prototype,r=s(n.forEach);i&&!("size"in n)&&a(n,"size",{get:function(){var t=0;return r(this,(function(){t++})),t},configurable:!0,enumerable:!0})}},a={};function n(t){var e=a[t];if(void 0!==e)return e.exports;var A=a[t]={exports:{}};return s[t].call(A.exports,A,A.exports,n),A.exports}n.d=(t,e)=>{for(var A in e)n.o(e,A)&&!n.o(t,A)&&Object.defineProperty(t,A,{enumerable:!0,get:e[A]})},n.o=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var r=globalThis.pdfjsLib={};n.d(r,{AbortException:()=>U,AnnotationEditorLayer:()=>di,AnnotationEditorParamsType:()=>C,AnnotationEditorType:()=>I,AnnotationEditorUIManager:()=>Rt,AnnotationLayer:()=>si,AnnotationMode:()=>l,CMapCompressionType:()=>Q,ColorPicker:()=>li,DOMSVGFactory:()=>st,DrawLayer:()=>ui,FeatureTest:()=>T,GlobalWorkerOptions:()=>Ee,ImageKind:()=>d,InvalidPDFException:()=>v,MissingPDFException:()=>G,OPS:()=>E,Outliner:()=>ri,PDFDataRangeTransport:()=>hA,PDFDateString:()=>dt,PDFWorker:()=>dA,PasswordResponses:()=>f,PermissionFlag:()=>B,PixelsPerInch:()=>tt,RenderingCancelledException:()=>nt,TextLayer:()=>$e,UnexpectedResponseException:()=>M,Util:()=>q,VerbosityLevel:()=>u,XfaLayer:()=>kA,build:()=>yA,createValidAbsoluteUrl:()=>S,fetchData:()=>et,getDocument:()=>oA,getFilenameFromUrl:()=>gt,getPdfFilenameFromUrl:()=>ct,getXfaPageViewport:()=>ut,isDataScheme:()=>rt,isPdfFile:()=>ot,noContextMenu:()=>It,normalizeUnicode:()=>O,renderTextLayer:()=>tA,setLayerDimensions:()=>pt,shadow:()=>F,updateTextLayer:()=>eA,version:()=>mA}),n(4114),n(6573),n(8100),n(7936),n(7467),n(4732),n(9577),n(4603),n(7566),n(8721);const o=!("object"!=typeof i||i+""!="[object process]"||i.versions.nw||i.versions.electron&&i.type&&"browser"!==i.type),g=[1,0,0,1,0,0],c=[.001,0,0,.001,0,0],h=1.35,l={DISABLE:0,ENABLE:1,ENABLE_FORMS:2,ENABLE_STORAGE:3},I={DISABLE:-1,NONE:0,FREETEXT:3,HIGHLIGHT:9,STAMP:13,INK:15},C={RESIZE:1,CREATE:2,FREETEXT_SIZE:11,FREETEXT_COLOR:12,FREETEXT_OPACITY:13,INK_COLOR:21,INK_THICKNESS:22,INK_OPACITY:23,HIGHLIGHT_COLOR:31,HIGHLIGHT_DEFAULT_COLOR:32,HIGHLIGHT_THICKNESS:33,HIGHLIGHT_FREE:34,HIGHLIGHT_SHOW_ALL:35},B={PRINT:4,MODIFY_CONTENTS:8,COPY:16,MODIFY_ANNOTATIONS:32,FILL_INTERACTIVE_FORMS:256,COPY_FOR_ACCESSIBILITY:512,ASSEMBLE:1024,PRINT_HIGH_QUALITY:2048},d={GRAYSCALE_1BPP:1,RGB_24BPP:2,RGBA_32BPP:3},u={ERRORS:0,WARNINGS:1,INFOS:5},Q={NONE:0,BINARY:1},E={dependency:1,setLineWidth:2,setLineCap:3,setLineJoin:4,setMiterLimit:5,setDash:6,setRenderingIntent:7,setFlatness:8,setGState:9,save:10,restore:11,transform:12,moveTo:13,lineTo:14,curveTo:15,curveTo2:16,curveTo3:17,closePath:18,rectangle:19,stroke:20,closeStroke:21,fill:22,eoFill:23,fillStroke:24,eoFillStroke:25,closeFillStroke:26,closeEOFillStroke:27,endPath:28,clip:29,eoClip:30,beginText:31,endText:32,setCharSpacing:33,setWordSpacing:34,setHScale:35,setLeading:36,setFont:37,setTextRenderingMode:38,setTextRise:39,moveText:40,setLeadingMoveText:41,setTextMatrix:42,nextLine:43,showText:44,showSpacedText:45,nextLineShowText:46,nextLineSetSpacingShowText:47,setCharWidth:48,setCharWidthAndBounds:49,setStrokeColorSpace:50,setFillColorSpace:51,setStrokeColor:52,setStrokeColorN:53,setFillColor:54,setFillColorN:55,setStrokeGray:56,setFillGray:57,setStrokeRGBColor:58,setFillRGBColor:59,setStrokeCMYKColor:60,setFillCMYKColor:61,shadingFill:62,beginInlineImage:63,beginImageData:64,endInlineImage:65,paintXObject:66,markPoint:67,markPointProps:68,beginMarkedContent:69,beginMarkedContentProps:70,endMarkedContent:71,beginCompat:72,endCompat:73,paintFormXObjectBegin:74,paintFormXObjectEnd:75,beginGroup:76,endGroup:77,beginAnnotation:80,endAnnotation:81,paintImageMaskXObject:83,paintImageMaskXObjectGroup:84,paintImageXObject:85,paintInlineImageXObject:86,paintInlineImageXObjectGroup:87,paintImageXObjectRepeat:88,paintImageMaskXObjectRepeat:89,paintSolidColorImageMask:90,constructPath:91},f={NEED_PASSWORD:1,INCORRECT_PASSWORD:2};let p=u.WARNINGS;function m(t){Number.isInteger(t)&&(p=t)}function y(){return p}function w(t){p>=u.INFOS&&console.log(`Info: ${t}`)}function b(t){p>=u.WARNINGS&&console.log(`Warning: ${t}`)}function D(t){throw new Error(t)}function k(t,e){t||D(e)}function S(t,e=null,A=null){if(!t)return null;try{if(A&&"string"==typeof t){if(A.addDefaultProtocol&&t.startsWith("www.")){const e=t.match(/\./g);e?.length>=2&&(t=`http://${t}`)}if(A.tryConvertEncoding)try{t=decodeURIComponent(escape(t))}catch{}}const i=e?new URL(t,e):new URL(t);if(function(t){switch(t?.protocol){case"http:":case"https:":case"ftp:":case"mailto:":case"tel:":return!0;default:return!1}}(i))return i}catch{}return null}function F(t,e,A,i=!1){return Object.defineProperty(t,e,{value:A,enumerable:!i,configurable:!0,writable:!1}),A}const R=function(){function t(e,A){this.constructor===t&&D("Cannot initialize BaseException."),this.message=e,this.name=A}return t.prototype=new Error,t.constructor=t,t}();class x extends R{constructor(t,e){super(t,"PasswordException"),this.code=e}}class N extends R{constructor(t,e){super(t,"UnknownErrorException"),this.details=e}}class v extends R{constructor(t){super(t,"InvalidPDFException")}}class G extends R{constructor(t){super(t,"MissingPDFException")}}class M extends R{constructor(t,e){super(t,"UnexpectedResponseException"),this.status=e}}class L extends R{constructor(t){super(t,"FormatError")}}class U extends R{constructor(t){super(t,"AbortException")}}function H(t){"object"==typeof t&&void 0!==t?.length||D("Invalid argument for bytesToString");const e=t.length,A=8192;if(e<A)return String.fromCharCode.apply(null,t);const i=[];for(let s=0;s<e;s+=A){const a=Math.min(s+A,e),n=t.subarray(s,a);i.push(String.fromCharCode.apply(null,n))}return i.join("")}function J(t){"string"!=typeof t&&D("Invalid argument for stringToBytes");const e=t.length,A=new Uint8Array(e);for(let i=0;i<e;++i)A[i]=255&t.charCodeAt(i);return A}function Y(t){const e=Object.create(null);for(const[A,i]of t)e[A]=i;return e}class T{static get isLittleEndian(){return F(this,"isLittleEndian",function(){const t=new Uint8Array(4);return t[0]=1,1===new Uint32Array(t.buffer,0,1)[0]}())}static get isEvalSupported(){return F(this,"isEvalSupported",function(){try{return new Function(""),!0}catch{return!1}}())}static get isOffscreenCanvasSupported(){return F(this,"isOffscreenCanvasSupported","undefined"!=typeof OffscreenCanvas)}static get platform(){return"undefined"!=typeof navigator&&"string"==typeof navigator?.platform?F(this,"platform",{isMac:navigator.platform.includes("Mac")}):F(this,"platform",{isMac:!1})}static get isCSSRoundSupported(){return F(this,"isCSSRoundSupported",globalThis.CSS?.supports?.("width: round(1.5px, 1px)"))}}const K=Array.from(Array(256).keys(),(t=>t.toString(16).padStart(2,"0")));class q{static makeHexColor(t,e,A){return`#${K[t]}${K[e]}${K[A]}`}static scaleMinMax(t,e){let A;t[0]?(t[0]<0&&(A=e[0],e[0]=e[2],e[2]=A),e[0]*=t[0],e[2]*=t[0],t[3]<0&&(A=e[1],e[1]=e[3],e[3]=A),e[1]*=t[3],e[3]*=t[3]):(A=e[0],e[0]=e[1],e[1]=A,A=e[2],e[2]=e[3],e[3]=A,t[1]<0&&(A=e[1],e[1]=e[3],e[3]=A),e[1]*=t[1],e[3]*=t[1],t[2]<0&&(A=e[0],e[0]=e[2],e[2]=A),e[0]*=t[2],e[2]*=t[2]),e[0]+=t[4],e[1]+=t[5],e[2]+=t[4],e[3]+=t[5]}static transform(t,e){return[t[0]*e[0]+t[2]*e[1],t[1]*e[0]+t[3]*e[1],t[0]*e[2]+t[2]*e[3],t[1]*e[2]+t[3]*e[3],t[0]*e[4]+t[2]*e[5]+t[4],t[1]*e[4]+t[3]*e[5]+t[5]]}static applyTransform(t,e){return[t[0]*e[0]+t[1]*e[2]+e[4],t[0]*e[1]+t[1]*e[3]+e[5]]}static applyInverseTransform(t,e){const A=e[0]*e[3]-e[1]*e[2];return[(t[0]*e[3]-t[1]*e[2]+e[2]*e[5]-e[4]*e[3])/A,(-t[0]*e[1]+t[1]*e[0]+e[4]*e[1]-e[5]*e[0])/A]}static getAxialAlignedBoundingBox(t,e){const A=this.applyTransform(t,e),i=this.applyTransform(t.slice(2,4),e),s=this.applyTransform([t[0],t[3]],e),a=this.applyTransform([t[2],t[1]],e);return[Math.min(A[0],i[0],s[0],a[0]),Math.min(A[1],i[1],s[1],a[1]),Math.max(A[0],i[0],s[0],a[0]),Math.max(A[1],i[1],s[1],a[1])]}static inverseTransform(t){const e=t[0]*t[3]-t[1]*t[2];return[t[3]/e,-t[1]/e,-t[2]/e,t[0]/e,(t[2]*t[5]-t[4]*t[3])/e,(t[4]*t[1]-t[5]*t[0])/e]}static singularValueDecompose2dScale(t){const e=[t[0],t[2],t[1],t[3]],A=t[0]*e[0]+t[1]*e[2],i=t[0]*e[1]+t[1]*e[3],s=t[2]*e[0]+t[3]*e[2],a=t[2]*e[1]+t[3]*e[3],n=(A+a)/2,r=Math.sqrt((A+a)**2-4*(A*a-s*i))/2,o=n+r||1,g=n-r||1;return[Math.sqrt(o),Math.sqrt(g)]}static normalizeRect(t){const e=t.slice(0);return t[0]>t[2]&&(e[0]=t[2],e[2]=t[0]),t[1]>t[3]&&(e[1]=t[3],e[3]=t[1]),e}static intersect(t,e){const A=Math.max(Math.min(t[0],t[2]),Math.min(e[0],e[2])),i=Math.min(Math.max(t[0],t[2]),Math.max(e[0],e[2]));if(A>i)return null;const s=Math.max(Math.min(t[1],t[3]),Math.min(e[1],e[3])),a=Math.min(Math.max(t[1],t[3]),Math.max(e[1],e[3]));return s>a?null:[A,s,i,a]}static#W(t,e,A,i,s,a,n,r,o,g){if(o<=0||o>=1)return;const c=1-o,h=o*o,l=h*o,I=c*(c*(c*t+3*o*e)+3*h*A)+l*i,C=c*(c*(c*s+3*o*a)+3*h*n)+l*r;g[0]=Math.min(g[0],I),g[1]=Math.min(g[1],C),g[2]=Math.max(g[2],I),g[3]=Math.max(g[3],C)}static#Z(t,e,A,i,s,a,n,r,o,g,c,h){if(Math.abs(o)<1e-12)return void(Math.abs(g)>=1e-12&&this.#W(t,e,A,i,s,a,n,r,-c/g,h));const l=g**2-4*c*o;if(l<0)return;const I=Math.sqrt(l),C=2*o;this.#W(t,e,A,i,s,a,n,r,(-g+I)/C,h),this.#W(t,e,A,i,s,a,n,r,(-g-I)/C,h)}static bezierBoundingBox(t,e,A,i,s,a,n,r,o){return o?(o[0]=Math.min(o[0],t,n),o[1]=Math.min(o[1],e,r),o[2]=Math.max(o[2],t,n),o[3]=Math.max(o[3],e,r)):o=[Math.min(t,n),Math.min(e,r),Math.max(t,n),Math.max(e,r)],this.#Z(t,A,s,n,e,i,a,r,3*(3*(A-s)-t+n),6*(t-2*A+s),3*(A-t),o),this.#Z(t,A,s,n,e,i,a,r,3*(3*(i-a)-e+r),6*(e-2*i+a),3*(i-e),o),o}}let P=null,_=null;function O(t){return P||(P=/([\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,_=new Map([["ſt","ſt"]])),t.replaceAll(P,((t,e,A)=>e?e.normalize("NFKC"):_.get(A)))}const W="pdfjs_internal_id_";n(4628),n(1454),n(3375),n(9225),n(3972),n(9209),n(5714),n(7561),n(6197),n(4979),n(8992),n(4743),n(3215),n(7550),n(8335),n(4520);class Z{constructor(){this.constructor===Z&&D("Cannot initialize BaseFilterFactory.")}addFilter(t){return"none"}addHCMFilter(t,e){return"none"}addAlphaFilter(t){return"none"}addLuminosityFilter(t){return"none"}addHighlightHCMFilter(t,e,A,i,s){return"none"}destroy(t=!1){}}class j{#j=!1;constructor({enableHWA:t=!1}={}){this.constructor===j&&D("Cannot initialize BaseCanvasFactory."),this.#j=t}create(t,e){if(t<=0||e<=0)throw new Error("Invalid canvas size");const A=this._createCanvas(t,e);return{canvas:A,context:A.getContext("2d",{willReadFrequently:!this.#j})}}reset(t,e,A){if(!t.canvas)throw new Error("Canvas is not specified");if(e<=0||A<=0)throw new Error("Invalid canvas size");t.canvas.width=e,t.canvas.height=A}destroy(t){if(!t.canvas)throw new Error("Canvas is not specified");t.canvas.width=0,t.canvas.height=0,t.canvas=null,t.context=null}_createCanvas(t,e){D("Abstract method `_createCanvas` called.")}}class V{constructor({baseUrl:t=null,isCompressed:e=!0}){this.constructor===V&&D("Cannot initialize BaseCMapReaderFactory."),this.baseUrl=t,this.isCompressed=e}async fetch({name:t}){if(!this.baseUrl)throw new Error('The CMap "baseUrl" parameter must be specified, ensure that the "cMapUrl" and "cMapPacked" API parameters are provided.');if(!t)throw new Error("CMap name must be specified.");const e=this.baseUrl+t+(this.isCompressed?".bcmap":""),A=this.isCompressed?Q.BINARY:Q.NONE;return this._fetchData(e,A).catch((t=>{throw new Error(`Unable to load ${this.isCompressed?"binary ":""}CMap at: ${e}`)}))}_fetchData(t,e){D("Abstract method `_fetchData` called.")}}class X{constructor({baseUrl:t=null}){this.constructor===X&&D("Cannot initialize BaseStandardFontDataFactory."),this.baseUrl=t}async fetch({filename:t}){if(!this.baseUrl)throw new Error('The standard font "baseUrl" parameter must be specified, ensure that the "standardFontDataUrl" API parameter is provided.');if(!t)throw new Error("Font filename must be specified.");const e=`${this.baseUrl}${t}`;return this._fetchData(e).catch((t=>{throw new Error(`Unable to load font data at: ${e}`)}))}_fetchData(t){D("Abstract method `_fetchData` called.")}}class z{constructor(){this.constructor===z&&D("Cannot initialize BaseSVGFactory.")}create(t,e,A=!1){if(t<=0||e<=0)throw new Error("Invalid SVG dimensions");const i=this._createSVG("svg:svg");return i.setAttribute("version","1.1"),A||(i.setAttribute("width",`${t}px`),i.setAttribute("height",`${e}px`)),i.setAttribute("preserveAspectRatio","none"),i.setAttribute("viewBox",`0 0 ${t} ${e}`),i}createElement(t){if("string"!=typeof t)throw new Error("Invalid SVG element type");return this._createSVG(t)}_createSVG(t){D("Abstract method `_createSVG` called.")}}const $="http://www.w3.org/2000/svg";class tt{static CSS=96;static PDF=72;static PDF_TO_CSS_UNITS=this.CSS/this.PDF}async function et(t,e="text"){if(lt(t,document.baseURI)){const A=await fetch(t);if(!A.ok)throw new Error(A.statusText);switch(e){case"arraybuffer":return A.arrayBuffer();case"blob":return A.blob();case"json":return A.json()}return A.text()}return new Promise(((A,i)=>{const s=new XMLHttpRequest;s.open("GET",t,!0),s.responseType=e,s.onreadystatechange=()=>{if(s.readyState===XMLHttpRequest.DONE)if(200!==s.status&&0!==s.status)i(new Error(s.statusText));else{switch(e){case"arraybuffer":case"blob":case"json":return void A(s.response)}A(s.responseText)}},s.send(null)}))}class At extends V{_fetchData(t,e){return et(t,this.isCompressed?"arraybuffer":"text").then((t=>({cMapData:t instanceof ArrayBuffer?new Uint8Array(t):J(t),compressionType:e})))}}class it extends X{_fetchData(t){return et(t,"arraybuffer").then((t=>new Uint8Array(t)))}}class st extends z{_createSVG(t){return document.createElementNS($,t)}}class at{constructor({viewBox:t,scale:e,rotation:A,offsetX:i=0,offsetY:s=0,dontFlip:a=!1}){this.viewBox=t,this.scale=e,this.rotation=A,this.offsetX=i,this.offsetY=s;const n=(t[2]+t[0])/2,r=(t[3]+t[1])/2;let o,g,c,h,l,I,C,B;switch((A%=360)<0&&(A+=360),A){case 180:o=-1,g=0,c=0,h=1;break;case 90:o=0,g=1,c=1,h=0;break;case 270:o=0,g=-1,c=-1,h=0;break;case 0:o=1,g=0,c=0,h=-1;break;default:throw new Error("PageViewport: Invalid rotation, must be a multiple of 90 degrees.")}a&&(c=-c,h=-h),0===o?(l=Math.abs(r-t[1])*e+i,I=Math.abs(n-t[0])*e+s,C=(t[3]-t[1])*e,B=(t[2]-t[0])*e):(l=Math.abs(n-t[0])*e+i,I=Math.abs(r-t[1])*e+s,C=(t[2]-t[0])*e,B=(t[3]-t[1])*e),this.transform=[o*e,g*e,c*e,h*e,l-o*e*n-c*e*r,I-g*e*n-h*e*r],this.width=C,this.height=B}get rawDims(){const{viewBox:t}=this;return F(this,"rawDims",{pageWidth:t[2]-t[0],pageHeight:t[3]-t[1],pageX:t[0],pageY:t[1]})}clone({scale:t=this.scale,rotation:e=this.rotation,offsetX:A=this.offsetX,offsetY:i=this.offsetY,dontFlip:s=!1}={}){return new at({viewBox:this.viewBox.slice(),scale:t,rotation:e,offsetX:A,offsetY:i,dontFlip:s})}convertToViewportPoint(t,e){return q.applyTransform([t,e],this.transform)}convertToViewportRectangle(t){const e=q.applyTransform([t[0],t[1]],this.transform),A=q.applyTransform([t[2],t[3]],this.transform);return[e[0],e[1],A[0],A[1]]}convertToPdfPoint(t,e){return q.applyInverseTransform([t,e],this.transform)}}class nt extends R{constructor(t,e=0){super(t,"RenderingCancelledException"),this.extraDelay=e}}function rt(t){const e=t.length;let A=0;for(;A<e&&""===t[A].trim();)A++;return"data:"===t.substring(A,A+5).toLowerCase()}function ot(t){return"string"==typeof t&&/\.pdf$/i.test(t)}function gt(t){return[t]=t.split(/[#?]/,1),t.substring(t.lastIndexOf("/")+1)}function ct(t,e="document.pdf"){if("string"!=typeof t)return e;if(rt(t))return b('getPdfFilenameFromUrl: ignore "data:"-URL for performance reasons.'),e;const A=/[^/?#=]+\.pdf\b(?!.*\.pdf\b)/i,i=/^(?:(?:[^:]+:)?\/\/[^/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/.exec(t);let s=A.exec(i[1])||A.exec(i[2])||A.exec(i[3]);if(s&&(s=s[0],s.includes("%")))try{s=A.exec(decodeURIComponent(s))[0]}catch{}return s||e}class ht{started=Object.create(null);times=[];time(t){t in this.started&&b(`Timer is already running for ${t}`),this.started[t]=Date.now()}timeEnd(t){t in this.started||b(`Timer has not been started for ${t}`),this.times.push({name:t,start:this.started[t],end:Date.now()}),delete this.started[t]}toString(){const t=[];let e=0;for(const{name:t}of this.times)e=Math.max(t.length,e);for(const{name:A,start:i,end:s}of this.times)t.push(`${A.padEnd(e)} ${s-i}ms\n`);return t.join("")}}function lt(t,e){try{const{protocol:A}=e?new URL(t,e):new URL(t);return"http:"===A||"https:"===A}catch{return!1}}function It(t){t.preventDefault()}function Ct(t){console.log("Deprecated API usage: "+t)}let Bt;class dt{static toDateObject(t){if(!t||"string"!=typeof t)return null;Bt||=new RegExp("^D:(\\d{4})(\\d{2})?(\\d{2})?(\\d{2})?(\\d{2})?(\\d{2})?([Z|+|-])?(\\d{2})?'?(\\d{2})?'?");const e=Bt.exec(t);if(!e)return null;const A=parseInt(e[1],10);let i=parseInt(e[2],10);i=i>=1&&i<=12?i-1:0;let s=parseInt(e[3],10);s=s>=1&&s<=31?s:1;let a=parseInt(e[4],10);a=a>=0&&a<=23?a:0;let n=parseInt(e[5],10);n=n>=0&&n<=59?n:0;let r=parseInt(e[6],10);r=r>=0&&r<=59?r:0;const o=e[7]||"Z";let g=parseInt(e[8],10);g=g>=0&&g<=23?g:0;let c=parseInt(e[9],10)||0;return c=c>=0&&c<=59?c:0,"-"===o?(a+=g,n+=c):"+"===o&&(a-=g,n-=c),new Date(Date.UTC(A,i,s,a,n,r))}}function ut(t,{scale:e=1,rotation:A=0}){const{width:i,height:s}=t.attributes.style,a=[0,0,parseInt(i),parseInt(s)];return new at({viewBox:a,scale:e,rotation:A})}function Qt(t){if(t.startsWith("#")){const e=parseInt(t.slice(1),16);return[(16711680&e)>>16,(65280&e)>>8,255&e]}return t.startsWith("rgb(")?t.slice(4,-1).split(",").map((t=>parseInt(t))):t.startsWith("rgba(")?t.slice(5,-1).split(",").map((t=>parseInt(t))).slice(0,3):(b(`Not a valid color format: "${t}"`),[0,0,0])}function Et(t){const{a:e,b:A,c:i,d:s,e:a,f:n}=t.getTransform();return[e,A,i,s,a,n]}function ft(t){const{a:e,b:A,c:i,d:s,e:a,f:n}=t.getTransform().invertSelf();return[e,A,i,s,a,n]}function pt(t,e,A=!1,i=!0){if(e instanceof at){const{pageWidth:i,pageHeight:s}=e.rawDims,{style:a}=t,n=T.isCSSRoundSupported,r=`var(--scale-factor) * ${i}px`,o=`var(--scale-factor) * ${s}px`,g=n?`round(${r}, 1px)`:`calc(${r})`,c=n?`round(${o}, 1px)`:`calc(${o})`;A&&e.rotation%180!=0?(a.width=c,a.height=g):(a.width=g,a.height=c)}i&&t.setAttribute("data-main-rotation",e.rotation)}class mt{#V=null;#X=null;#z;#$=null;constructor(t){this.#z=t}render(){const t=this.#V=document.createElement("div");t.className="editToolbar",t.setAttribute("role","toolbar");const e=this.#z._uiManager._signal;t.addEventListener("contextmenu",It,{signal:e}),t.addEventListener("pointerdown",mt.#tt,{signal:e});const A=this.#$=document.createElement("div");A.className="buttons",t.append(A);const i=this.#z.toolbarPosition;if(i){const{style:e}=t,A="ltr"===this.#z._uiManager.direction?1-i[0]:i[0];e.insetInlineEnd=100*A+"%",e.top=`calc(${100*i[1]}% + var(--editor-toolbar-vert-offset))`}return this.#et(),t}static#tt(t){t.stopPropagation()}#At(t){this.#z._focusEventsAllowed=!1,t.preventDefault(),t.stopPropagation()}#it(t){this.#z._focusEventsAllowed=!0,t.preventDefault(),t.stopPropagation()}#st(t){const e=this.#z._uiManager._signal;t.addEventListener("focusin",this.#At.bind(this),{capture:!0,signal:e}),t.addEventListener("focusout",this.#it.bind(this),{capture:!0,signal:e}),t.addEventListener("contextmenu",It,{signal:e})}hide(){this.#V.classList.add("hidden"),this.#X?.hideDropdown()}show(){this.#V.classList.remove("hidden")}#et(){const t=document.createElement("button");t.className="delete",t.tabIndex=0,t.setAttribute("data-l10n-id",`pdfjs-editor-remove-${this.#z.editorType}-button`),this.#st(t),t.addEventListener("click",(t=>{this.#z._uiManager.delete()}),{signal:this.#z._uiManager._signal}),this.#$.append(t)}get#at(){const t=document.createElement("div");return t.className="divider",t}addAltTextButton(t){this.#st(t),this.#$.prepend(t,this.#at)}addColorPicker(t){this.#X=t;const e=t.renderButton();this.#st(e),this.#$.prepend(e,this.#at)}remove(){this.#V.remove(),this.#X?.destroy(),this.#X=null}}class yt{#$=null;#V=null;#nt;constructor(t){this.#nt=t}#rt(){const t=this.#V=document.createElement("div");t.className="editToolbar",t.setAttribute("role","toolbar"),t.addEventListener("contextmenu",It,{signal:this.#nt._signal});const e=this.#$=document.createElement("div");return e.className="buttons",t.append(e),this.#ot(),t}#gt(t,e){let A=0,i=0;for(const s of t){const t=s.y+s.height;if(t<A)continue;const a=s.x+(e?s.width:0);t>A?(i=a,A=t):e?a>i&&(i=a):a<i&&(i=a)}return[e?1-i:i,A]}show(t,e,A){const[i,s]=this.#gt(e,A),{style:a}=this.#V||=this.#rt();t.append(this.#V),a.insetInlineEnd=100*i+"%",a.top=`calc(${100*s}% + var(--editor-toolbar-vert-offset))`}hide(){this.#V.remove()}#ot(){const t=document.createElement("button");t.className="highlightButton",t.tabIndex=0,t.setAttribute("data-l10n-id","pdfjs-highlight-floating-button1");const e=document.createElement("span");t.append(e),e.className="visuallyHidden",e.setAttribute("data-l10n-id","pdfjs-highlight-floating-button-label");const A=this.#nt._signal;t.addEventListener("contextmenu",It,{signal:A}),t.addEventListener("click",(()=>{this.#nt.highlightSelection("floating_button")}),{signal:A}),this.#$.append(t)}}function wt(t,e,A){for(const i of A)e.addEventListener(i,t[i].bind(t))}class bt{#ct=0;get id(){return"pdfjs_internal_editor_"+this.#ct++}}class Dt{#ht=function(){if("undefined"!=typeof crypto&&"function"==typeof crypto?.randomUUID)return crypto.randomUUID();const t=new Uint8Array(32);if("undefined"!=typeof crypto&&"function"==typeof crypto?.getRandomValues)crypto.getRandomValues(t);else for(let e=0;e<32;e++)t[e]=Math.floor(255*Math.random());return H(t)}();#ct=0;#lt=null;static get _isSVGFittingCanvas(){const t=new OffscreenCanvas(1,3).getContext("2d",{willReadFrequently:!0}),e=new Image;return e.src='data:image/svg+xml;charset=UTF-8,<svg viewBox="0 0 1 1" width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="1" height="1" style="fill:red;"/></svg>',F(this,"_isSVGFittingCanvas",e.decode().then((()=>(t.drawImage(e,0,0,1,1,0,0,1,3),0===new Uint32Array(t.getImageData(0,0,1,1).data.buffer)[0]))))}async#It(t,e){this.#lt||=new Map;let A=this.#lt.get(t);if(null===A)return null;if(A?.bitmap)return A.refCounter+=1,A;try{let t;if(A||={bitmap:null,id:`image_${this.#ht}_${this.#ct++}`,refCounter:0,isSvg:!1},"string"==typeof e?(A.url=e,t=await et(e,"blob")):t=A.file=e,"image/svg+xml"===t.type){const e=Dt._isSVGFittingCanvas,i=new FileReader,s=new Image,a=new Promise(((t,a)=>{s.onload=()=>{A.bitmap=s,A.isSvg=!0,t()},i.onload=async()=>{const t=A.svgUrl=i.result;s.src=await e?`${t}#svgView(preserveAspectRatio(none))`:t},s.onerror=i.onerror=a}));i.readAsDataURL(t),await a}else A.bitmap=await createImageBitmap(t);A.refCounter=1}catch(t){console.error(t),A=null}return this.#lt.set(t,A),A&&this.#lt.set(A.id,A),A}async getFromFile(t){const{lastModified:e,name:A,size:i,type:s}=t;return this.#It(`${e}_${A}_${i}_${s}`,t)}async getFromUrl(t){return this.#It(t,t)}async getFromId(t){this.#lt||=new Map;const e=this.#lt.get(t);return e?e.bitmap?(e.refCounter+=1,e):e.file?this.getFromFile(e.file):this.getFromUrl(e.url):null}getSvgUrl(t){const e=this.#lt.get(t);return e?.isSvg?e.svgUrl:null}deleteId(t){this.#lt||=new Map;const e=this.#lt.get(t);e&&(e.refCounter-=1,0===e.refCounter&&(e.bitmap=null))}isValidId(t){return t.startsWith(`image_${this.#ht}_`)}}class kt{#Ct=[];#Bt=!1;#dt;#ut=-1;constructor(t=128){this.#dt=t}add({cmd:t,undo:e,post:A,mustExec:i,type:s=NaN,overwriteIfSameType:a=!1,keepUndo:n=!1}){if(i&&t(),this.#Bt)return;const r={cmd:t,undo:e,post:A,type:s};if(-1===this.#ut)return this.#Ct.length>0&&(this.#Ct.length=0),this.#ut=0,void this.#Ct.push(r);if(a&&this.#Ct[this.#ut].type===s)return n&&(r.undo=this.#Ct[this.#ut].undo),void(this.#Ct[this.#ut]=r);const o=this.#ut+1;o===this.#dt?this.#Ct.splice(0,1):(this.#ut=o,o<this.#Ct.length&&this.#Ct.splice(o)),this.#Ct.push(r)}undo(){if(-1===this.#ut)return;this.#Bt=!0;const{undo:t,post:e}=this.#Ct[this.#ut];t(),e?.(),this.#Bt=!1,this.#ut-=1}redo(){if(this.#ut<this.#Ct.length-1){this.#ut+=1,this.#Bt=!0;const{cmd:t,post:e}=this.#Ct[this.#ut];t(),e?.(),this.#Bt=!1}}hasSomethingToUndo(){return-1!==this.#ut}hasSomethingToRedo(){return this.#ut<this.#Ct.length-1}destroy(){this.#Ct=null}}class St{constructor(t){this.buffer=[],this.callbacks=new Map,this.allKeys=new Set;const{isMac:e}=T.platform;for(const[A,i,s={}]of t)for(const t of A){const A=t.startsWith("mac+");e&&A?(this.callbacks.set(t.slice(4),{callback:i,options:s}),this.allKeys.add(t.split("+").at(-1))):e||A||(this.callbacks.set(t,{callback:i,options:s}),this.allKeys.add(t.split("+").at(-1)))}}#Qt(t){t.altKey&&this.buffer.push("alt"),t.ctrlKey&&this.buffer.push("ctrl"),t.metaKey&&this.buffer.push("meta"),t.shiftKey&&this.buffer.push("shift"),this.buffer.push(t.key);const e=this.buffer.join("+");return this.buffer.length=0,e}exec(t,e){if(!this.allKeys.has(e.key))return;const A=this.callbacks.get(this.#Qt(e));if(!A)return;const{callback:i,options:{bubbles:s=!1,args:a=[],checker:n=null}}=A;n&&!n(t,e)||(i.bind(t,...a,e)(),s||(e.stopPropagation(),e.preventDefault()))}}class Ft{static _colorsMapping=new Map([["CanvasText",[0,0,0]],["Canvas",[255,255,255]]]);get _colors(){const t=new Map([["CanvasText",null],["Canvas",null]]);return function(t){const e=document.createElement("span");e.style.visibility="hidden",document.body.append(e);for(const A of t.keys()){e.style.color=A;const i=window.getComputedStyle(e).color;t.set(A,Qt(i))}e.remove()}(t),F(this,"_colors",t)}convert(t){const e=Qt(t);if(!window.matchMedia("(forced-colors: active)").matches)return e;for(const[t,A]of this._colors)if(A.every(((t,A)=>t===e[A])))return Ft._colorsMapping.get(t);return e}getHexCode(t){const e=this._colors.get(t);return e?q.makeHexColor(...e):t}}class Rt{#Et=new AbortController;#ft=null;#pt=new Map;#mt=new Map;#yt=null;#wt=null;#bt=null;#Dt=new kt;#kt=0;#St=new Set;#Ft=null;#Rt=null;#xt=new Set;#Nt=!1;#vt=null;#Gt=null;#Mt=null;#Lt=!1;#Ut=null;#Ht=new bt;#Jt=!1;#Yt=!1;#Tt=null;#Kt=null;#qt=null;#Pt=I.NONE;#_t=new Set;#Ot=null;#Wt=null;#Zt=null;#jt=this.blur.bind(this);#Vt=this.focus.bind(this);#Xt=this.copy.bind(this);#zt=this.cut.bind(this);#$t=this.paste.bind(this);#te=this.keydown.bind(this);#ee=this.keyup.bind(this);#Ae=this.onEditingAction.bind(this);#ie=this.onPageChanging.bind(this);#se=this.onScaleChanging.bind(this);#ae=this.onRotationChanging.bind(this);#ne={isEditing:!1,isEmpty:!0,hasSomethingToUndo:!1,hasSomethingToRedo:!1,hasSelectedEditor:!1,hasSelectedText:!1};#re=[0,0];#oe=null;#ge=null;#ce=null;static TRANSLATE_SMALL=1;static TRANSLATE_BIG=10;static get _keyboardManager(){const t=Rt.prototype,e=t=>t.#ge.contains(document.activeElement)&&"BUTTON"!==document.activeElement.tagName&&t.hasSomethingToControl(),A=(t,{target:e})=>{if(e instanceof HTMLInputElement){const{type:t}=e;return"text"!==t&&"number"!==t}return!0},i=this.TRANSLATE_SMALL,s=this.TRANSLATE_BIG;return F(this,"_keyboardManager",new St([[["ctrl+a","mac+meta+a"],t.selectAll,{checker:A}],[["ctrl+z","mac+meta+z"],t.undo,{checker:A}],[["ctrl+y","ctrl+shift+z","mac+meta+shift+z","ctrl+shift+Z","mac+meta+shift+Z"],t.redo,{checker:A}],[["Backspace","alt+Backspace","ctrl+Backspace","shift+Backspace","mac+Backspace","mac+alt+Backspace","mac+ctrl+Backspace","Delete","ctrl+Delete","shift+Delete","mac+Delete"],t.delete,{checker:A}],[["Enter","mac+Enter"],t.addNewEditorFromKeyboard,{checker:(t,{target:e})=>!(e instanceof HTMLButtonElement)&&t.#ge.contains(e)&&!t.isEnterHandled}],[[" ","mac+ "],t.addNewEditorFromKeyboard,{checker:(t,{target:e})=>!(e instanceof HTMLButtonElement)&&t.#ge.contains(document.activeElement)}],[["Escape","mac+Escape"],t.unselectAll],[["ArrowLeft","mac+ArrowLeft"],t.translateSelectedEditors,{args:[-i,0],checker:e}],[["ctrl+ArrowLeft","mac+shift+ArrowLeft"],t.translateSelectedEditors,{args:[-s,0],checker:e}],[["ArrowRight","mac+ArrowRight"],t.translateSelectedEditors,{args:[i,0],checker:e}],[["ctrl+ArrowRight","mac+shift+ArrowRight"],t.translateSelectedEditors,{args:[s,0],checker:e}],[["ArrowUp","mac+ArrowUp"],t.translateSelectedEditors,{args:[0,-i],checker:e}],[["ctrl+ArrowUp","mac+shift+ArrowUp"],t.translateSelectedEditors,{args:[0,-s],checker:e}],[["ArrowDown","mac+ArrowDown"],t.translateSelectedEditors,{args:[0,i],checker:e}],[["ctrl+ArrowDown","mac+shift+ArrowDown"],t.translateSelectedEditors,{args:[0,s],checker:e}]]))}constructor(t,e,A,i,s,a,n,r,o){this._signal=this.#Et.signal,this.#ge=t,this.#ce=e,this.#yt=A,this._eventBus=i,this._eventBus._on("editingaction",this.#Ae),this._eventBus._on("pagechanging",this.#ie),this._eventBus._on("scalechanging",this.#se),this._eventBus._on("rotationchanging",this.#ae),this.#he(),this.#le(),this.#Ie(),this.#wt=s.annotationStorage,this.#vt=s.filterFactory,this.#Wt=a,this.#Mt=n||null,this.#Nt=r,this.#qt=o||null,this.viewParameters={realScale:tt.PDF_TO_CSS_UNITS,rotation:0},this.isShiftKeyDown=!1}destroy(){this.#Et?.abort(),this.#Et=null,this._signal=null,this._eventBus._off("editingaction",this.#Ae),this._eventBus._off("pagechanging",this.#ie),this._eventBus._off("scalechanging",this.#se),this._eventBus._off("rotationchanging",this.#ae);for(const t of this.#mt.values())t.destroy();this.#mt.clear(),this.#pt.clear(),this.#xt.clear(),this.#ft=null,this.#_t.clear(),this.#Dt.destroy(),this.#yt?.destroy(),this.#Ut?.hide(),this.#Ut=null,this.#Gt&&(clearTimeout(this.#Gt),this.#Gt=null),this.#oe&&(clearTimeout(this.#oe),this.#oe=null)}async mlGuess(t){return this.#qt?.guess(t)||null}get hasMLManager(){return!!this.#qt}get hcmFilter(){return F(this,"hcmFilter",this.#Wt?this.#vt.addHCMFilter(this.#Wt.foreground,this.#Wt.background):"none")}get direction(){return F(this,"direction",getComputedStyle(this.#ge).direction)}get highlightColors(){return F(this,"highlightColors",this.#Mt?new Map(this.#Mt.split(",").map((t=>t.split("=").map((t=>t.trim()))))):null)}get highlightColorNames(){return F(this,"highlightColorNames",this.highlightColors?new Map(Array.from(this.highlightColors,(t=>t.reverse()))):null)}setMainHighlightColorPicker(t){this.#Kt=t}editAltText(t){this.#yt?.editAltText(this,t)}onPageChanging({pageNumber:t}){this.#kt=t-1}focusMainContainer(){this.#ge.focus()}findParent(t,e){for(const A of this.#mt.values()){const{x:i,y:s,width:a,height:n}=A.div.getBoundingClientRect();if(t>=i&&t<=i+a&&e>=s&&e<=s+n)return A}return null}disableUserSelect(t=!1){this.#ce.classList.toggle("noUserSelect",t)}addShouldRescale(t){this.#xt.add(t)}removeShouldRescale(t){this.#xt.delete(t)}onScaleChanging({scale:t}){this.commitOrRemove(),this.viewParameters.realScale=t*tt.PDF_TO_CSS_UNITS;for(const t of this.#xt)t.onScaleChanging()}onRotationChanging({pagesRotation:t}){this.commitOrRemove(),this.viewParameters.rotation=t}#Ce({anchorNode:t}){return t.nodeType===Node.TEXT_NODE?t.parentElement:t}highlightSelection(t=""){const e=document.getSelection();if(!e||e.isCollapsed)return;const{anchorNode:A,anchorOffset:i,focusNode:s,focusOffset:a}=e,n=e.toString(),r=this.#Ce(e).closest(".textLayer"),o=this.getSelectionBoxes(r);if(o){e.empty(),this.#Pt===I.NONE&&(this._eventBus.dispatch("showannotationeditorui",{source:this,mode:I.HIGHLIGHT}),this.showAllEditors("highlight",!0,!0));for(const e of this.#mt.values())if(e.hasTextLayer(r)){e.createAndAddNewEditor({x:0,y:0},!1,{methodOfCreation:t,boxes:o,anchorNode:A,anchorOffset:i,focusNode:s,focusOffset:a,text:n});break}}}#Be(){const t=document.getSelection();if(!t||t.isCollapsed)return;const e=this.#Ce(t).closest(".textLayer"),A=this.getSelectionBoxes(e);A&&(this.#Ut||=new yt(this),this.#Ut.show(e,A,"ltr"===this.direction))}addToAnnotationStorage(t){t.isEmpty()||!this.#wt||this.#wt.has(t.id)||this.#wt.setValue(t.id,t)}#de(){const t=document.getSelection();if(!t||t.isCollapsed)return void(this.#Ot&&(this.#Ut?.hide(),this.#Ot=null,this.#ue({hasSelectedText:!1})));const{anchorNode:e}=t;if(e!==this.#Ot)if(this.#Ce(t).closest(".textLayer")){if(this.#Ut?.hide(),this.#Ot=e,this.#ue({hasSelectedText:!0}),(this.#Pt===I.HIGHLIGHT||this.#Pt===I.NONE)&&(this.#Pt===I.HIGHLIGHT&&this.showAllEditors("highlight",!0,!0),this.#Lt=this.isShiftKeyDown,!this.isShiftKeyDown)){const t=this._signal,e=t=>{"pointerup"===t.type&&0!==t.button||(window.removeEventListener("pointerup",e),window.removeEventListener("blur",e),"pointerup"===t.type&&this.#Qe("main_toolbar"))};window.addEventListener("pointerup",e,{signal:t}),window.addEventListener("blur",e,{signal:t})}}else this.#Ot&&(this.#Ut?.hide(),this.#Ot=null,this.#ue({hasSelectedText:!1}))}#Qe(t=""){this.#Pt===I.HIGHLIGHT?this.highlightSelection(t):this.#Nt&&this.#Be()}#he(){document.addEventListener("selectionchange",this.#de.bind(this),{signal:this._signal})}#Ee(){const t=this._signal;window.addEventListener("focus",this.#Vt,{signal:t}),window.addEventListener("blur",this.#jt,{signal:t})}#fe(){window.removeEventListener("focus",this.#Vt),window.removeEventListener("blur",this.#jt)}blur(){if(this.isShiftKeyDown=!1,this.#Lt&&(this.#Lt=!1,this.#Qe("main_toolbar")),!this.hasSelection)return;const{activeElement:t}=document;for(const e of this.#_t)if(e.div.contains(t)){this.#Tt=[e,t],e._focusEventsAllowed=!1;break}}focus(){if(!this.#Tt)return;const[t,e]=this.#Tt;this.#Tt=null,e.addEventListener("focusin",(()=>{t._focusEventsAllowed=!0}),{once:!0,signal:this._signal}),e.focus()}#Ie(){const t=this._signal;window.addEventListener("keydown",this.#te,{signal:t}),window.addEventListener("keyup",this.#ee,{signal:t})}#pe(){window.removeEventListener("keydown",this.#te),window.removeEventListener("keyup",this.#ee)}#me(){const t=this._signal;document.addEventListener("copy",this.#Xt,{signal:t}),document.addEventListener("cut",this.#zt,{signal:t}),document.addEventListener("paste",this.#$t,{signal:t})}#ye(){document.removeEventListener("copy",this.#Xt),document.removeEventListener("cut",this.#zt),document.removeEventListener("paste",this.#$t)}#le(){const t=this._signal;document.addEventListener("dragover",this.dragOver.bind(this),{signal:t}),document.addEventListener("drop",this.drop.bind(this),{signal:t})}addEditListeners(){this.#Ie(),this.#me()}removeEditListeners(){this.#pe(),this.#ye()}dragOver(t){for(const{type:e}of t.dataTransfer.items)for(const A of this.#Rt)if(A.isHandlingMimeForPasting(e))return t.dataTransfer.dropEffect="copy",void t.preventDefault()}drop(t){for(const e of t.dataTransfer.items)for(const A of this.#Rt)if(A.isHandlingMimeForPasting(e.type))return A.paste(e,this.currentLayer),void t.preventDefault()}copy(t){if(t.preventDefault(),this.#ft?.commitOrRemove(),!this.hasSelection)return;const e=[];for(const t of this.#_t){const A=t.serialize(!0);A&&e.push(A)}0!==e.length&&t.clipboardData.setData("application/pdfjs",JSON.stringify(e))}cut(t){this.copy(t),this.delete()}paste(t){t.preventDefault();const{clipboardData:e}=t;for(const t of e.items)for(const e of this.#Rt)if(e.isHandlingMimeForPasting(t.type))return void e.paste(t,this.currentLayer);let A=e.getData("application/pdfjs");if(!A)return;try{A=JSON.parse(A)}catch(t){return void b(`paste: "${t.message}".`)}if(!Array.isArray(A))return;this.unselectAll();const i=this.currentLayer;try{const t=[];for(const e of A){const A=i.deserialize(e);if(!A)return;t.push(A)}const e=()=>{for(const e of t)this.#we(e);this.#be(t)},s=()=>{for(const e of t)e.remove()};this.addCommands({cmd:e,undo:s,mustExec:!0})}catch(t){b(`paste: "${t.message}".`)}}keydown(t){this.isShiftKeyDown||"Shift"!==t.key||(this.isShiftKeyDown=!0),this.#Pt===I.NONE||this.isEditorHandlingKeyboard||Rt._keyboardManager.exec(this,t)}keyup(t){this.isShiftKeyDown&&"Shift"===t.key&&(this.isShiftKeyDown=!1,this.#Lt&&(this.#Lt=!1,this.#Qe("main_toolbar")))}onEditingAction({name:t}){switch(t){case"undo":case"redo":case"delete":case"selectAll":this[t]();break;case"highlightSelection":this.highlightSelection("context_menu")}}#ue(t){Object.entries(t).some((([t,e])=>this.#ne[t]!==e))&&(this._eventBus.dispatch("annotationeditorstateschanged",{source:this,details:Object.assign(this.#ne,t)}),this.#Pt===I.HIGHLIGHT&&!1===t.hasSelectedEditor&&this.#De([[C.HIGHLIGHT_FREE,!0]]))}#De(t){this._eventBus.dispatch("annotationeditorparamschanged",{source:this,details:t})}setEditingState(t){t?(this.#Ee(),this.#me(),this.#ue({isEditing:this.#Pt!==I.NONE,isEmpty:this.#ke(),hasSomethingToUndo:this.#Dt.hasSomethingToUndo(),hasSomethingToRedo:this.#Dt.hasSomethingToRedo(),hasSelectedEditor:!1})):(this.#fe(),this.#ye(),this.#ue({isEditing:!1}),this.disableUserSelect(!1))}registerEditorTypes(t){if(!this.#Rt){this.#Rt=t;for(const t of this.#Rt)this.#De(t.defaultPropertiesToUpdate)}}getId(){return this.#Ht.id}get currentLayer(){return this.#mt.get(this.#kt)}getLayer(t){return this.#mt.get(t)}get currentPageIndex(){return this.#kt}addLayer(t){this.#mt.set(t.pageIndex,t),this.#Jt?t.enable():t.disable()}removeLayer(t){this.#mt.delete(t.pageIndex)}updateMode(t,e=null,A=!1){if(this.#Pt!==t){if(this.#Pt=t,t===I.NONE)return this.setEditingState(!1),void this.#Se();this.setEditingState(!0),this.#Fe(),this.unselectAll();for(const e of this.#mt.values())e.updateMode(t);if(e||!A){if(e)for(const t of this.#pt.values())if(t.annotationElementId===e){this.setSelected(t),t.enterInEditMode();break}}else this.addNewEditorFromKeyboard()}}addNewEditorFromKeyboard(){this.currentLayer.canCreateNewEmptyEditor()&&this.currentLayer.addNewEditor()}updateToolbar(t){t!==this.#Pt&&this._eventBus.dispatch("switchannotationeditormode",{source:this,mode:t})}updateParams(t,e){if(this.#Rt){switch(t){case C.CREATE:return void this.currentLayer.addNewEditor();case C.HIGHLIGHT_DEFAULT_COLOR:this.#Kt?.updateColor(e);break;case C.HIGHLIGHT_SHOW_ALL:this._eventBus.dispatch("reporttelemetry",{source:this,details:{type:"editing",data:{type:"highlight",action:"toggle_visibility"}}}),(this.#Zt||=new Map).set(t,e),this.showAllEditors("highlight",e)}for(const A of this.#_t)A.updateParams(t,e);for(const A of this.#Rt)A.updateDefaultParams(t,e)}}showAllEditors(t,e,A=!1){for(const A of this.#pt.values())A.editorType===t&&A.show(e);(this.#Zt?.get(C.HIGHLIGHT_SHOW_ALL)??!0)!==e&&this.#De([[C.HIGHLIGHT_SHOW_ALL,e]])}enableWaiting(t=!1){if(this.#Yt!==t){this.#Yt=t;for(const e of this.#mt.values())t?e.disableClick():e.enableClick(),e.div.classList.toggle("waiting",t)}}#Fe(){if(!this.#Jt){this.#Jt=!0;for(const t of this.#mt.values())t.enable();for(const t of this.#pt.values())t.enable()}}#Se(){if(this.unselectAll(),this.#Jt){this.#Jt=!1;for(const t of this.#mt.values())t.disable();for(const t of this.#pt.values())t.disable()}}getEditors(t){const e=[];for(const A of this.#pt.values())A.pageIndex===t&&e.push(A);return e}getEditor(t){return this.#pt.get(t)}addEditor(t){this.#pt.set(t.id,t)}removeEditor(t){t.div.contains(document.activeElement)&&(this.#Gt&&clearTimeout(this.#Gt),this.#Gt=setTimeout((()=>{this.focusMainContainer(),this.#Gt=null}),0)),this.#pt.delete(t.id),this.unselect(t),t.annotationElementId&&this.#St.has(t.annotationElementId)||this.#wt?.remove(t.id)}addDeletedAnnotationElement(t){this.#St.add(t.annotationElementId),this.addChangedExistingAnnotation(t),t.deleted=!0}isDeletedAnnotationElement(t){return this.#St.has(t)}removeDeletedAnnotationElement(t){this.#St.delete(t.annotationElementId),this.removeChangedExistingAnnotation(t),t.deleted=!1}#we(t){const e=this.#mt.get(t.pageIndex);e?e.addOrRebuild(t):(this.addEditor(t),this.addToAnnotationStorage(t))}setActiveEditor(t){this.#ft!==t&&(this.#ft=t,t&&this.#De(t.propertiesToUpdate))}get#Re(){let t=null;for(t of this.#_t);return t}updateUI(t){this.#Re===t&&this.#De(t.propertiesToUpdate)}toggleSelected(t){if(this.#_t.has(t))return this.#_t.delete(t),t.unselect(),void this.#ue({hasSelectedEditor:this.hasSelection});this.#_t.add(t),t.select(),this.#De(t.propertiesToUpdate),this.#ue({hasSelectedEditor:!0})}setSelected(t){for(const e of this.#_t)e!==t&&e.unselect();this.#_t.clear(),this.#_t.add(t),t.select(),this.#De(t.propertiesToUpdate),this.#ue({hasSelectedEditor:!0})}isSelected(t){return this.#_t.has(t)}get firstSelectedEditor(){return this.#_t.values().next().value}unselect(t){t.unselect(),this.#_t.delete(t),this.#ue({hasSelectedEditor:this.hasSelection})}get hasSelection(){return 0!==this.#_t.size}get isEnterHandled(){return 1===this.#_t.size&&this.firstSelectedEditor.isEnterHandled}undo(){this.#Dt.undo(),this.#ue({hasSomethingToUndo:this.#Dt.hasSomethingToUndo(),hasSomethingToRedo:!0,isEmpty:this.#ke()})}redo(){this.#Dt.redo(),this.#ue({hasSomethingToUndo:!0,hasSomethingToRedo:this.#Dt.hasSomethingToRedo(),isEmpty:this.#ke()})}addCommands(t){this.#Dt.add(t),this.#ue({hasSomethingToUndo:!0,hasSomethingToRedo:!1,isEmpty:this.#ke()})}#ke(){if(0===this.#pt.size)return!0;if(1===this.#pt.size)for(const t of this.#pt.values())return t.isEmpty();return!1}delete(){if(this.commitOrRemove(),!this.hasSelection)return;const t=[...this.#_t];this.addCommands({cmd:()=>{for(const e of t)e.remove()},undo:()=>{for(const e of t)this.#we(e)},mustExec:!0})}commitOrRemove(){this.#ft?.commitOrRemove()}hasSomethingToControl(){return this.#ft||this.hasSelection}#be(t){for(const t of this.#_t)t.unselect();this.#_t.clear();for(const e of t)e.isEmpty()||(this.#_t.add(e),e.select());this.#ue({hasSelectedEditor:this.hasSelection})}selectAll(){for(const t of this.#_t)t.commit();this.#be(this.#pt.values())}unselectAll(){if((!this.#ft||(this.#ft.commitOrRemove(),this.#Pt===I.NONE))&&this.hasSelection){for(const t of this.#_t)t.unselect();this.#_t.clear(),this.#ue({hasSelectedEditor:!1})}}translateSelectedEditors(t,e,A=!1){if(A||this.commitOrRemove(),!this.hasSelection)return;this.#re[0]+=t,this.#re[1]+=e;const[i,s]=this.#re,a=[...this.#_t];this.#oe&&clearTimeout(this.#oe),this.#oe=setTimeout((()=>{this.#oe=null,this.#re[0]=this.#re[1]=0,this.addCommands({cmd:()=>{for(const t of a)this.#pt.has(t.id)&&t.translateInPage(i,s)},undo:()=>{for(const t of a)this.#pt.has(t.id)&&t.translateInPage(-i,-s)},mustExec:!1})}),1e3);for(const A of a)A.translateInPage(t,e)}setUpDragSession(){if(this.hasSelection){this.disableUserSelect(!0),this.#Ft=new Map;for(const t of this.#_t)this.#Ft.set(t,{savedX:t.x,savedY:t.y,savedPageIndex:t.pageIndex,newX:0,newY:0,newPageIndex:-1})}}endDragSession(){if(!this.#Ft)return!1;this.disableUserSelect(!1);const t=this.#Ft;this.#Ft=null;let e=!1;for(const[{x:A,y:i,pageIndex:s},a]of t)a.newX=A,a.newY=i,a.newPageIndex=s,e||=A!==a.savedX||i!==a.savedY||s!==a.savedPageIndex;if(!e)return!1;const A=(t,e,A,i)=>{if(this.#pt.has(t.id)){const s=this.#mt.get(i);s?t._setParentAndPosition(s,e,A):(t.pageIndex=i,t.x=e,t.y=A)}};return this.addCommands({cmd:()=>{for(const[e,{newX:i,newY:s,newPageIndex:a}]of t)A(e,i,s,a)},undo:()=>{for(const[e,{savedX:i,savedY:s,savedPageIndex:a}]of t)A(e,i,s,a)},mustExec:!0}),!0}dragSelectedEditors(t,e){if(this.#Ft)for(const A of this.#Ft.keys())A.drag(t,e)}rebuild(t){if(null===t.parent){const e=this.getLayer(t.pageIndex);e?(e.changeParent(t),e.addOrRebuild(t)):(this.addEditor(t),this.addToAnnotationStorage(t),t.rebuild())}else t.parent.addOrRebuild(t)}get isEditorHandlingKeyboard(){return this.getActive()?.shouldGetKeyboardEvents()||1===this.#_t.size&&this.firstSelectedEditor.shouldGetKeyboardEvents()}isActive(t){return this.#ft===t}getActive(){return this.#ft}getMode(){return this.#Pt}get imageManager(){return F(this,"imageManager",new Dt)}getSelectionBoxes(t){if(!t)return null;const e=document.getSelection();for(let A=0,i=e.rangeCount;A<i;A++)if(!t.contains(e.getRangeAt(A).commonAncestorContainer))return null;const{x:A,y:i,width:s,height:a}=t.getBoundingClientRect();let n;switch(t.getAttribute("data-main-rotation")){case"90":n=(t,e,n,r)=>({x:(e-i)/a,y:1-(t+n-A)/s,width:r/a,height:n/s});break;case"180":n=(t,e,n,r)=>({x:1-(t+n-A)/s,y:1-(e+r-i)/a,width:n/s,height:r/a});break;case"270":n=(t,e,n,r)=>({x:1-(e+r-i)/a,y:(t-A)/s,width:r/a,height:n/s});break;default:n=(t,e,n,r)=>({x:(t-A)/s,y:(e-i)/a,width:n/s,height:r/a})}const r=[];for(let t=0,A=e.rangeCount;t<A;t++){const A=e.getRangeAt(t);if(!A.collapsed)for(const{x:t,y:e,width:i,height:s}of A.getClientRects())0!==i&&0!==s&&r.push(n(t,e,i,s))}return 0===r.length?null:r}addChangedExistingAnnotation({annotationElementId:t,id:e}){(this.#bt||=new Map).set(t,e)}removeChangedExistingAnnotation({annotationElementId:t}){this.#bt?.delete(t)}renderAnnotationElement(t){const e=this.#bt?.get(t.data.id);if(!e)return;const A=this.#wt.getRawValue(e);A&&(this.#Pt!==I.NONE||A.hasBeenModified)&&A.renderAnnotationElement(t)}}class xt{#xe="";#Ne=!1;#ve=null;#Ge=null;#Me=null;#Le=!1;#z=null;static _l10nPromise=null;constructor(t){this.#z=t}static initialize(t){xt._l10nPromise||=t}async render(){const t=this.#ve=document.createElement("button");t.className="altText";const e=await xt._l10nPromise.get("pdfjs-editor-alt-text-button-label");t.textContent=e,t.setAttribute("aria-label",e),t.tabIndex="0";const A=this.#z._uiManager._signal;t.addEventListener("contextmenu",It,{signal:A}),t.addEventListener("pointerdown",(t=>t.stopPropagation()),{signal:A});const i=t=>{t.preventDefault(),this.#z._uiManager.editAltText(this.#z)};return t.addEventListener("click",i,{capture:!0,signal:A}),t.addEventListener("keydown",(e=>{e.target===t&&"Enter"===e.key&&(this.#Le=!0,i(e))}),{signal:A}),await this.#Ue(),t}finish(){this.#ve&&(this.#ve.focus({focusVisible:this.#Le}),this.#Le=!1)}isEmpty(){return!this.#xe&&!this.#Ne}get data(){return{altText:this.#xe,decorative:this.#Ne}}set data({altText:t,decorative:e}){this.#xe===t&&this.#Ne===e||(this.#xe=t,this.#Ne=e,this.#Ue())}toggle(t=!1){this.#ve&&(!t&&this.#Me&&(clearTimeout(this.#Me),this.#Me=null),this.#ve.disabled=!t)}destroy(){this.#ve?.remove(),this.#ve=null,this.#Ge=null}async#Ue(){const t=this.#ve;if(!t)return;if(!this.#xe&&!this.#Ne)return t.classList.remove("done"),void this.#Ge?.remove();t.classList.add("done"),xt._l10nPromise.get("pdfjs-editor-alt-text-edit-button-label").then((e=>{t.setAttribute("aria-label",e)}));let e=this.#Ge;if(!e){this.#Ge=e=document.createElement("span"),e.className="tooltip",e.setAttribute("role","tooltip");const A=e.id=`alt-text-tooltip-${this.#z.id}`;t.setAttribute("aria-describedby",A);const i=100,s=this.#z._uiManager._signal;s.addEventListener("abort",(()=>{clearTimeout(this.#Me),this.#Me=null}),{once:!0}),t.addEventListener("mouseenter",(()=>{this.#Me=setTimeout((()=>{this.#Me=null,this.#Ge.classList.add("show"),this.#z._reportTelemetry({action:"alt_text_tooltip"})}),i)}),{signal:s}),t.addEventListener("mouseleave",(()=>{this.#Me&&(clearTimeout(this.#Me),this.#Me=null),this.#Ge?.classList.remove("show")}),{signal:s})}e.innerText=this.#Ne?await xt._l10nPromise.get("pdfjs-editor-alt-text-decorative-tooltip"):this.#xe,e.parentNode||t.append(e);const A=this.#z.getImageForAltText();A?.setAttribute("aria-describedby",e.id)}}class Nt{#He=null;#Je=null;#xe=null;#Ye=!1;#Te=!1;#Ke=null;#qe=null;#Pe=this.focusin.bind(this);#_e=this.focusout.bind(this);#Oe=null;#We="";#Ze=!1;#je=null;#Ve=!1;#Xe=!1;#ze=!1;#$e=null;#tA=0;#eA=0;#AA=null;_initialOptions=Object.create(null);_isVisible=!0;_uiManager=null;_focusEventsAllowed=!0;_l10nPromise=null;#iA=!1;#sA=Nt._zIndex++;static _borderLineWidth=-1;static _colorManager=new Ft;static _zIndex=1;static _telemetryTimeout=1e3;static get _resizerKeyboardManager(){const t=Nt.prototype._resizeWithKeyboard,e=Rt.TRANSLATE_SMALL,A=Rt.TRANSLATE_BIG;return F(this,"_resizerKeyboardManager",new St([[["ArrowLeft","mac+ArrowLeft"],t,{args:[-e,0]}],[["ctrl+ArrowLeft","mac+shift+ArrowLeft"],t,{args:[-A,0]}],[["ArrowRight","mac+ArrowRight"],t,{args:[e,0]}],[["ctrl+ArrowRight","mac+shift+ArrowRight"],t,{args:[A,0]}],[["ArrowUp","mac+ArrowUp"],t,{args:[0,-e]}],[["ctrl+ArrowUp","mac+shift+ArrowUp"],t,{args:[0,-A]}],[["ArrowDown","mac+ArrowDown"],t,{args:[0,e]}],[["ctrl+ArrowDown","mac+shift+ArrowDown"],t,{args:[0,A]}],[["Escape","mac+Escape"],Nt.prototype._stopResizingWithKeyboard]]))}constructor(t){this.constructor===Nt&&D("Cannot initialize AnnotationEditor."),this.parent=t.parent,this.id=t.id,this.width=this.height=null,this.pageIndex=t.parent.pageIndex,this.name=t.name,this.div=null,this._uiManager=t.uiManager,this.annotationElementId=null,this._willKeepAspectRatio=!1,this._initialOptions.isCentered=t.isCentered,this._structTreeParentId=null;const{rotation:e,rawDims:{pageWidth:A,pageHeight:i,pageX:s,pageY:a}}=this.parent.viewport;this.rotation=e,this.pageRotation=(360+e-this._uiManager.viewParameters.rotation)%360,this.pageDimensions=[A,i],this.pageTranslation=[s,a];const[n,r]=this.parentDimensions;this.x=t.x/n,this.y=t.y/r,this.isAttachedToDOM=!1,this.deleted=!1}get editorType(){return Object.getPrototypeOf(this).constructor._type}static get _defaultLineColor(){return F(this,"_defaultLineColor",this._colorManager.getHexCode("CanvasText"))}static deleteAnnotationElement(t){const e=new vt({id:t.parent.getNextId(),parent:t.parent,uiManager:t._uiManager});e.annotationElementId=t.annotationElementId,e.deleted=!0,e._uiManager.addToAnnotationStorage(e)}static initialize(t,e,A){if(Nt._l10nPromise||=new Map(["pdfjs-editor-alt-text-button-label","pdfjs-editor-alt-text-edit-button-label","pdfjs-editor-alt-text-decorative-tooltip","pdfjs-editor-resizer-label-topLeft","pdfjs-editor-resizer-label-topMiddle","pdfjs-editor-resizer-label-topRight","pdfjs-editor-resizer-label-middleRight","pdfjs-editor-resizer-label-bottomRight","pdfjs-editor-resizer-label-bottomMiddle","pdfjs-editor-resizer-label-bottomLeft","pdfjs-editor-resizer-label-middleLeft"].map((e=>[e,t.get(e.replaceAll(/([A-Z])/g,(t=>`-${t.toLowerCase()}`)))]))),A?.strings)for(const e of A.strings)Nt._l10nPromise.set(e,t.get(e));if(-1!==Nt._borderLineWidth)return;const i=getComputedStyle(document.documentElement);Nt._borderLineWidth=parseFloat(i.getPropertyValue("--outline-width"))||0}static updateDefaultParams(t,e){}static get defaultPropertiesToUpdate(){return[]}static isHandlingMimeForPasting(t){return!1}static paste(t,e){D("Not implemented")}get propertiesToUpdate(){return[]}get _isDraggable(){return this.#iA}set _isDraggable(t){this.#iA=t,this.div?.classList.toggle("draggable",t)}get isEnterHandled(){return!0}center(){const[t,e]=this.pageDimensions;switch(this.parentRotation){case 90:this.x-=this.height*e/(2*t),this.y+=this.width*t/(2*e);break;case 180:this.x+=this.width/2,this.y+=this.height/2;break;case 270:this.x+=this.height*e/(2*t),this.y-=this.width*t/(2*e);break;default:this.x-=this.width/2,this.y-=this.height/2}this.fixAndSetPosition()}addCommands(t){this._uiManager.addCommands(t)}get currentLayer(){return this._uiManager.currentLayer}setInBackground(){this.div.style.zIndex=0}setInForeground(){this.div.style.zIndex=this.#sA}setParent(t){null!==t?(this.pageIndex=t.pageIndex,this.pageDimensions=t.pageDimensions):this.#aA(),this.parent=t}focusin(t){this._focusEventsAllowed&&(this.#Ze?this.#Ze=!1:this.parent.setSelected(this))}focusout(t){if(!this._focusEventsAllowed)return;if(!this.isAttachedToDOM)return;const e=t.relatedTarget;e?.closest(`#${this.id}`)||(t.preventDefault(),this.parent?.isMultipleSelection||this.commitOrRemove())}commitOrRemove(){this.isEmpty()?this.remove():this.commit()}commit(){this.addToAnnotationStorage()}addToAnnotationStorage(){this._uiManager.addToAnnotationStorage(this)}setAt(t,e,A,i){const[s,a]=this.parentDimensions;[A,i]=this.screenToPageTranslation(A,i),this.x=(t+A)/s,this.y=(e+i)/a,this.fixAndSetPosition()}#nA([t,e],A,i){[A,i]=this.screenToPageTranslation(A,i),this.x+=A/t,this.y+=i/e,this.fixAndSetPosition()}translate(t,e){this.#nA(this.parentDimensions,t,e)}translateInPage(t,e){this.#je||=[this.x,this.y],this.#nA(this.pageDimensions,t,e),this.div.scrollIntoView({block:"nearest"})}drag(t,e){this.#je||=[this.x,this.y];const[A,i]=this.parentDimensions;if(this.x+=t/A,this.y+=e/i,this.parent&&(this.x<0||this.x>1||this.y<0||this.y>1)){const{x:t,y:e}=this.div.getBoundingClientRect();this.parent.findNewParent(this,t,e)&&(this.x-=Math.floor(this.x),this.y-=Math.floor(this.y))}let{x:s,y:a}=this;const[n,r]=this.getBaseTranslation();s+=n,a+=r,this.div.style.left=`${(100*s).toFixed(2)}%`,this.div.style.top=`${(100*a).toFixed(2)}%`,this.div.scrollIntoView({block:"nearest"})}get _hasBeenMoved(){return!!this.#je&&(this.#je[0]!==this.x||this.#je[1]!==this.y)}getBaseTranslation(){const[t,e]=this.parentDimensions,{_borderLineWidth:A}=Nt,i=A/t,s=A/e;switch(this.rotation){case 90:return[-i,s];case 180:return[i,s];case 270:return[i,-s];default:return[-i,-s]}}get _mustFixPosition(){return!0}fixAndSetPosition(t=this.rotation){const[e,A]=this.pageDimensions;let{x:i,y:s,width:a,height:n}=this;if(a*=e,n*=A,i*=e,s*=A,this._mustFixPosition)switch(t){case 0:i=Math.max(0,Math.min(e-a,i)),s=Math.max(0,Math.min(A-n,s));break;case 90:i=Math.max(0,Math.min(e-n,i)),s=Math.min(A,Math.max(a,s));break;case 180:i=Math.min(e,Math.max(a,i)),s=Math.min(A,Math.max(n,s));break;case 270:i=Math.min(e,Math.max(n,i)),s=Math.max(0,Math.min(A-a,s))}this.x=i/=e,this.y=s/=A;const[r,o]=this.getBaseTranslation();i+=r,s+=o;const{style:g}=this.div;g.left=`${(100*i).toFixed(2)}%`,g.top=`${(100*s).toFixed(2)}%`,this.moveInDOM()}static#rA(t,e,A){switch(A){case 90:return[e,-t];case 180:return[-t,-e];case 270:return[-e,t];default:return[t,e]}}screenToPageTranslation(t,e){return Nt.#rA(t,e,this.parentRotation)}pageTranslationToScreen(t,e){return Nt.#rA(t,e,360-this.parentRotation)}#oA(t){switch(t){case 90:{const[t,e]=this.pageDimensions;return[0,-t/e,e/t,0]}case 180:return[-1,0,0,-1];case 270:{const[t,e]=this.pageDimensions;return[0,t/e,-e/t,0]}default:return[1,0,0,1]}}get parentScale(){return this._uiManager.viewParameters.realScale}get parentRotation(){return(this._uiManager.viewParameters.rotation+this.pageRotation)%360}get parentDimensions(){const{parentScale:t,pageDimensions:[e,A]}=this,i=e*t,s=A*t;return T.isCSSRoundSupported?[Math.round(i),Math.round(s)]:[i,s]}setDims(t,e){const[A,i]=this.parentDimensions;this.div.style.width=`${(100*t/A).toFixed(2)}%`,this.#Te||(this.div.style.height=`${(100*e/i).toFixed(2)}%`)}fixDims(){const{style:t}=this.div,{height:e,width:A}=t,i=A.endsWith("%"),s=!this.#Te&&e.endsWith("%");if(i&&s)return;const[a,n]=this.parentDimensions;i||(t.width=`${(100*parseFloat(A)/a).toFixed(2)}%`),this.#Te||s||(t.height=`${(100*parseFloat(e)/n).toFixed(2)}%`)}getInitialTranslation(){return[0,0]}#gA(){if(this.#Ke)return;this.#Ke=document.createElement("div"),this.#Ke.classList.add("resizers");const t=this._willKeepAspectRatio?["topLeft","topRight","bottomRight","bottomLeft"]:["topLeft","topMiddle","topRight","middleRight","bottomRight","bottomMiddle","bottomLeft","middleLeft"],e=this._uiManager._signal;for(const A of t){const t=document.createElement("div");this.#Ke.append(t),t.classList.add("resizer",A),t.setAttribute("data-resizer-name",A),t.addEventListener("pointerdown",this.#cA.bind(this,A),{signal:e}),t.addEventListener("contextmenu",It,{signal:e}),t.tabIndex=-1}this.div.prepend(this.#Ke)}#cA(t,e){e.preventDefault();const{isMac:A}=T.platform;if(0!==e.button||e.ctrlKey&&A)return;this.#xe?.toggle(!1);const i=this.#hA.bind(this,t),s=this._isDraggable;this._isDraggable=!1;const a=this._uiManager._signal,n={passive:!0,capture:!0,signal:a};this.parent.togglePointerEvents(!1),window.addEventListener("pointermove",i,n),window.addEventListener("contextmenu",It,{signal:a});const r=this.x,o=this.y,g=this.width,c=this.height,h=this.parent.div.style.cursor,l=this.div.style.cursor;this.div.style.cursor=this.parent.div.style.cursor=window.getComputedStyle(e.target).cursor;const I=()=>{this.parent.togglePointerEvents(!0),this.#xe?.toggle(!0),this._isDraggable=s,window.removeEventListener("pointerup",I),window.removeEventListener("blur",I),window.removeEventListener("pointermove",i,n),window.removeEventListener("contextmenu",It),this.parent.div.style.cursor=h,this.div.style.cursor=l,this.#lA(r,o,g,c)};window.addEventListener("pointerup",I,{signal:a}),window.addEventListener("blur",I,{signal:a})}#lA(t,e,A,i){const s=this.x,a=this.y,n=this.width,r=this.height;s===t&&a===e&&n===A&&r===i||this.addCommands({cmd:()=>{this.width=n,this.height=r,this.x=s,this.y=a;const[t,e]=this.parentDimensions;this.setDims(t*n,e*r),this.fixAndSetPosition()},undo:()=>{this.width=A,this.height=i,this.x=t,this.y=e;const[s,a]=this.parentDimensions;this.setDims(s*A,a*i),this.fixAndSetPosition()},mustExec:!0})}#hA(t,e){const[A,i]=this.parentDimensions,s=this.x,a=this.y,n=this.width,r=this.height,o=Nt.MIN_SIZE/A,g=Nt.MIN_SIZE/i,c=t=>Math.round(1e4*t)/1e4,h=this.#oA(this.rotation),l=(t,e)=>[h[0]*t+h[2]*e,h[1]*t+h[3]*e],I=this.#oA(360-this.rotation);let C,B,d=!1,u=!1;switch(t){case"topLeft":d=!0,C=(t,e)=>[0,0],B=(t,e)=>[t,e];break;case"topMiddle":C=(t,e)=>[t/2,0],B=(t,e)=>[t/2,e];break;case"topRight":d=!0,C=(t,e)=>[t,0],B=(t,e)=>[0,e];break;case"middleRight":u=!0,C=(t,e)=>[t,e/2],B=(t,e)=>[0,e/2];break;case"bottomRight":d=!0,C=(t,e)=>[t,e],B=(t,e)=>[0,0];break;case"bottomMiddle":C=(t,e)=>[t/2,e],B=(t,e)=>[t/2,0];break;case"bottomLeft":d=!0,C=(t,e)=>[0,e],B=(t,e)=>[t,0];break;case"middleLeft":u=!0,C=(t,e)=>[0,e/2],B=(t,e)=>[t,e/2]}const Q=C(n,r),E=B(n,r);let f=l(...E);const p=c(s+f[0]),m=c(a+f[1]);let y=1,w=1,[b,D]=this.screenToPageTranslation(e.movementX,e.movementY);var k,S;if([b,D]=(k=b/A,S=D/i,[I[0]*k+I[2]*S,I[1]*k+I[3]*S]),d){const t=Math.hypot(n,r);y=w=Math.max(Math.min(Math.hypot(E[0]-Q[0]-b,E[1]-Q[1]-D)/t,1/n,1/r),o/n,g/r)}else u?y=Math.max(o,Math.min(1,Math.abs(E[0]-Q[0]-b)))/n:w=Math.max(g,Math.min(1,Math.abs(E[1]-Q[1]-D)))/r;const F=c(n*y),R=c(r*w);f=l(...B(F,R));const x=p-f[0],N=m-f[1];this.width=F,this.height=R,this.x=x,this.y=N,this.setDims(A*F,i*R),this.fixAndSetPosition()}altTextFinish(){this.#xe?.finish()}async addEditToolbar(){return this.#Oe||this.#Xe||(this.#Oe=new mt(this),this.div.append(this.#Oe.render()),this.#xe&&this.#Oe.addAltTextButton(await this.#xe.render())),this.#Oe}removeEditToolbar(){this.#Oe&&(this.#Oe.remove(),this.#Oe=null,this.#xe?.destroy())}getClientDimensions(){return this.div.getBoundingClientRect()}async addAltTextButton(){this.#xe||(xt.initialize(Nt._l10nPromise),this.#xe=new xt(this),this.#He&&(this.#xe.data=this.#He,this.#He=null),await this.addEditToolbar())}get altTextData(){return this.#xe?.data}set altTextData(t){this.#xe&&(this.#xe.data=t)}hasAltText(){return!this.#xe?.isEmpty()}render(){this.div=document.createElement("div"),this.div.setAttribute("data-editor-rotation",(360-this.rotation)%360),this.div.className=this.name,this.div.setAttribute("id",this.id),this.div.tabIndex=this.#Ye?-1:0,this._isVisible||this.div.classList.add("hidden"),this.setInForeground();const t=this._uiManager._signal;this.div.addEventListener("focusin",this.#Pe,{signal:t}),this.div.addEventListener("focusout",this.#_e,{signal:t});const[e,A]=this.parentDimensions;this.parentRotation%180!=0&&(this.div.style.maxWidth=`${(100*A/e).toFixed(2)}%`,this.div.style.maxHeight=`${(100*e/A).toFixed(2)}%`);const[i,s]=this.getInitialTranslation();return this.translate(i,s),wt(this,this.div,["pointerdown"]),this.div}pointerdown(t){const{isMac:e}=T.platform;0!==t.button||t.ctrlKey&&e?t.preventDefault():(this.#Ze=!0,this._isDraggable?this.#IA(t):this.#CA(t))}#CA(t){const{isMac:e}=T.platform;t.ctrlKey&&!e||t.shiftKey||t.metaKey&&e?this.parent.toggleSelected(this):this.parent.setSelected(this)}#IA(t){const e=this._uiManager.isSelected(this);let A,i;this._uiManager.setUpDragSession();const s=this._uiManager._signal;e&&(this.div.classList.add("moving"),A={passive:!0,capture:!0,signal:s},this.#tA=t.clientX,this.#eA=t.clientY,i=t=>{const{clientX:e,clientY:A}=t,[i,s]=this.screenToPageTranslation(e-this.#tA,A-this.#eA);this.#tA=e,this.#eA=A,this._uiManager.dragSelectedEditors(i,s)},window.addEventListener("pointermove",i,A));const a=()=>{window.removeEventListener("pointerup",a),window.removeEventListener("blur",a),e&&(this.div.classList.remove("moving"),window.removeEventListener("pointermove",i,A)),this.#Ze=!1,this._uiManager.endDragSession()||this.#CA(t)};window.addEventListener("pointerup",a,{signal:s}),window.addEventListener("blur",a,{signal:s})}moveInDOM(){this.#$e&&clearTimeout(this.#$e),this.#$e=setTimeout((()=>{this.#$e=null,this.parent?.moveEditorInDOM(this)}),0)}_setParentAndPosition(t,e,A){t.changeParent(this),this.x=e,this.y=A,this.fixAndSetPosition()}getRect(t,e,A=this.rotation){const i=this.parentScale,[s,a]=this.pageDimensions,[n,r]=this.pageTranslation,o=t/i,g=e/i,c=this.x*s,h=this.y*a,l=this.width*s,I=this.height*a;switch(A){case 0:return[c+o+n,a-h-g-I+r,c+o+l+n,a-h-g+r];case 90:return[c+g+n,a-h+o+r,c+g+I+n,a-h+o+l+r];case 180:return[c-o-l+n,a-h+g+r,c-o+n,a-h+g+I+r];case 270:return[c-g-I+n,a-h-o-l+r,c-g+n,a-h-o+r];default:throw new Error("Invalid rotation")}}getRectInCurrentCoords(t,e){const[A,i,s,a]=t,n=s-A,r=a-i;switch(this.rotation){case 0:return[A,e-a,n,r];case 90:return[A,e-i,r,n];case 180:return[s,e-i,n,r];case 270:return[s,e-a,r,n];default:throw new Error("Invalid rotation")}}onceAdded(){}isEmpty(){return!1}enableEditMode(){this.#Xe=!0}disableEditMode(){this.#Xe=!1}isInEditMode(){return this.#Xe}shouldGetKeyboardEvents(){return this.#ze}needsToBeRebuilt(){return this.div&&!this.isAttachedToDOM}rebuild(){const t=this._uiManager._signal;this.div?.addEventListener("focusin",this.#Pe,{signal:t}),this.div?.addEventListener("focusout",this.#_e,{signal:t})}rotate(t){}serialize(t=!1,e=null){D("An editor must be serializable")}static deserialize(t,e,A){const i=new this.prototype.constructor({parent:e,id:e.getNextId(),uiManager:A});i.rotation=t.rotation,i.#He=t.accessibilityData;const[s,a]=i.pageDimensions,[n,r,o,g]=i.getRectInCurrentCoords(t.rect,a);return i.x=n/s,i.y=r/a,i.width=o/s,i.height=g/a,i}get hasBeenModified(){return!!this.annotationElementId&&(this.deleted||null!==this.serialize())}remove(){if(this.div.removeEventListener("focusin",this.#Pe),this.div.removeEventListener("focusout",this.#_e),this.isEmpty()||this.commit(),this.parent?this.parent.remove(this):this._uiManager.removeEditor(this),this.#$e&&(clearTimeout(this.#$e),this.#$e=null),this.#aA(),this.removeEditToolbar(),this.#AA){for(const t of this.#AA.values())clearTimeout(t);this.#AA=null}this.parent=null}get isResizable(){return!1}makeResizable(){this.isResizable&&(this.#gA(),this.#Ke.classList.remove("hidden"),wt(this,this.div,["keydown"]))}get toolbarPosition(){return null}keydown(t){if(!this.isResizable||t.target!==this.div||"Enter"!==t.key)return;this._uiManager.setSelected(this),this.#qe={savedX:this.x,savedY:this.y,savedWidth:this.width,savedHeight:this.height};const e=this.#Ke.children;if(!this.#Je){this.#Je=Array.from(e);const t=this.#BA.bind(this),A=this.#dA.bind(this),i=this._uiManager._signal;for(const e of this.#Je){const s=e.getAttribute("data-resizer-name");e.setAttribute("role","spinbutton"),e.addEventListener("keydown",t,{signal:i}),e.addEventListener("blur",A,{signal:i}),e.addEventListener("focus",this.#uA.bind(this,s),{signal:i}),Nt._l10nPromise.get(`pdfjs-editor-resizer-label-${s}`).then((t=>e.setAttribute("aria-label",t)))}}const A=this.#Je[0];let i=0;for(const t of e){if(t===A)break;i++}const s=(360-this.rotation+this.parentRotation)%360/90*(this.#Je.length/4);if(s!==i){if(s<i)for(let t=0;t<i-s;t++)this.#Ke.append(this.#Ke.firstChild);else if(s>i)for(let t=0;t<s-i;t++)this.#Ke.firstChild.before(this.#Ke.lastChild);let t=0;for(const A of e){const e=this.#Je[t++].getAttribute("data-resizer-name");Nt._l10nPromise.get(`pdfjs-editor-resizer-label-${e}`).then((t=>A.setAttribute("aria-label",t)))}}this.#QA(0),this.#ze=!0,this.#Ke.firstChild.focus({focusVisible:!0}),t.preventDefault(),t.stopImmediatePropagation()}#BA(t){Nt._resizerKeyboardManager.exec(this,t)}#dA(t){this.#ze&&t.relatedTarget?.parentNode!==this.#Ke&&this.#aA()}#uA(t){this.#We=this.#ze?t:""}#QA(t){if(this.#Je)for(const e of this.#Je)e.tabIndex=t}_resizeWithKeyboard(t,e){this.#ze&&this.#hA(this.#We,{movementX:t,movementY:e})}#aA(){if(this.#ze=!1,this.#QA(-1),this.#qe){const{savedX:t,savedY:e,savedWidth:A,savedHeight:i}=this.#qe;this.#lA(t,e,A,i),this.#qe=null}}_stopResizingWithKeyboard(){this.#aA(),this.div.focus()}select(){this.makeResizable(),this.div?.classList.add("selectedEditor"),this.#Oe?this.#Oe?.show():this.addEditToolbar().then((()=>{this.div?.classList.contains("selectedEditor")&&this.#Oe?.show()}))}unselect(){this.#Ke?.classList.add("hidden"),this.div?.classList.remove("selectedEditor"),this.div?.contains(document.activeElement)&&this._uiManager.currentLayer.div.focus({preventScroll:!0}),this.#Oe?.hide()}updateParams(t,e){}disableEditing(){}enableEditing(){}enterInEditMode(){}getImageForAltText(){return null}get contentDiv(){return this.div}get isEditing(){return this.#Ve}set isEditing(t){this.#Ve=t,this.parent&&(t?(this.parent.setSelected(this),this.parent.setActiveEditor(this)):this.parent.setActiveEditor(null))}setAspectRatio(t,e){this.#Te=!0;const A=t/e,{style:i}=this.div;i.aspectRatio=A,i.height="auto"}static get MIN_SIZE(){return 16}static canCreateNewEmptyEditor(){return!0}get telemetryInitialData(){return{action:"added"}}get telemetryFinalData(){return null}_reportTelemetry(t,e=!1){if(e){this.#AA||=new Map;const{action:e}=t;let A=this.#AA.get(e);return A&&clearTimeout(A),A=setTimeout((()=>{this._reportTelemetry(t),this.#AA.delete(e),0===this.#AA.size&&(this.#AA=null)}),Nt._telemetryTimeout),void this.#AA.set(e,A)}t.type||=this.editorType,this._uiManager._eventBus.dispatch("reporttelemetry",{source:this,details:{type:"editing",data:t}})}show(t=this._isVisible){this.div.classList.toggle("hidden",!t),this._isVisible=t}enable(){this.div&&(this.div.tabIndex=0),this.#Ye=!1}disable(){this.div&&(this.div.tabIndex=-1),this.#Ye=!0}renderAnnotationElement(t){let e=t.container.querySelector(".annotationContent");if(e){if("CANVAS"===e.nodeName){const t=e;e=document.createElement("div"),e.classList.add("annotationContent",this.editorType),t.before(e)}}else e=document.createElement("div"),e.classList.add("annotationContent",this.editorType),t.container.prepend(e);return e}resetAnnotationElement(t){const{firstChild:e}=t.container;"DIV"===e.nodeName&&e.classList.contains("annotationContent")&&e.remove()}}class vt extends Nt{constructor(t){super(t),this.annotationElementId=t.annotationElementId,this.deleted=!0}serialize(){return{id:this.annotationElementId,deleted:!0,pageIndex:this.pageIndex}}}const Gt=3285377520,Mt=4294901760,Lt=65535;class Ut{constructor(t){this.h1=t?4294967295&t:Gt,this.h2=t?4294967295&t:Gt}update(t){let e,A;if("string"==typeof t){e=new Uint8Array(2*t.length),A=0;for(let i=0,s=t.length;i<s;i++){const s=t.charCodeAt(i);s<=255?e[A++]=s:(e[A++]=s>>>8,e[A++]=255&s)}}else{if(!ArrayBuffer.isView(t))throw new Error("Invalid data format, must be a string or TypedArray.");e=t.slice(),A=e.byteLength}const i=A>>2,s=A-4*i,a=new Uint32Array(e.buffer,0,i);let n=0,r=0,o=this.h1,g=this.h2;const c=3432918353,h=461845907,l=11601,I=13715;for(let t=0;t<i;t++)1&t?(n=a[t],n=n*c&Mt|n*l&Lt,n=n<<15|n>>>17,n=n*h&Mt|n*I&Lt,o^=n,o=o<<13|o>>>19,o=5*o+3864292196):(r=a[t],r=r*c&Mt|r*l&Lt,r=r<<15|r>>>17,r=r*h&Mt|r*I&Lt,g^=r,g=g<<13|g>>>19,g=5*g+3864292196);switch(n=0,s){case 3:n^=e[4*i+2]<<16;case 2:n^=e[4*i+1]<<8;case 1:n^=e[4*i],n=n*c&Mt|n*l&Lt,n=n<<15|n>>>17,n=n*h&Mt|n*I&Lt,1&i?o^=n:g^=n}this.h1=o,this.h2=g}hexdigest(){let t=this.h1,e=this.h2;return t^=e>>>1,t=3981806797*t&Mt|36045*t&Lt,e=4283543511*e&Mt|(2950163797*(e<<16|t>>>16)&Mt)>>>16,t^=e>>>1,t=444984403*t&Mt|60499*t&Lt,e=3301882366*e&Mt|(3120437893*(e<<16|t>>>16)&Mt)>>>16,t^=e>>>1,(t>>>0).toString(16).padStart(8,"0")+(e>>>0).toString(16).padStart(8,"0")}}const Ht=Object.freeze({map:null,hash:"",transfer:void 0});class Jt{#EA=!1;#fA=new Map;constructor(){this.onSetModified=null,this.onResetModified=null,this.onAnnotationEditor=null}getValue(t,e){const A=this.#fA.get(t);return void 0===A?e:Object.assign(e,A)}getRawValue(t){return this.#fA.get(t)}remove(t){if(this.#fA.delete(t),0===this.#fA.size&&this.resetModified(),"function"==typeof this.onAnnotationEditor){for(const t of this.#fA.values())if(t instanceof Nt)return;this.onAnnotationEditor(null)}}setValue(t,e){const A=this.#fA.get(t);let i=!1;if(void 0!==A)for(const[t,s]of Object.entries(e))A[t]!==s&&(i=!0,A[t]=s);else i=!0,this.#fA.set(t,e);i&&this.#pA(),e instanceof Nt&&"function"==typeof this.onAnnotationEditor&&this.onAnnotationEditor(e.constructor._type)}has(t){return this.#fA.has(t)}getAll(){return this.#fA.size>0?Y(this.#fA):null}setAll(t){for(const[e,A]of Object.entries(t))this.setValue(e,A)}get size(){return this.#fA.size}#pA(){this.#EA||(this.#EA=!0,"function"==typeof this.onSetModified&&this.onSetModified())}resetModified(){this.#EA&&(this.#EA=!1,"function"==typeof this.onResetModified&&this.onResetModified())}get print(){return new Yt(this)}get serializable(){if(0===this.#fA.size)return Ht;const t=new Map,e=new Ut,A=[],i=Object.create(null);let s=!1;for(const[A,a]of this.#fA){const n=a instanceof Nt?a.serialize(!1,i):a;n&&(t.set(A,n),e.update(`${A}:${JSON.stringify(n)}`),s||=!!n.bitmap)}if(s)for(const e of t.values())e.bitmap&&A.push(e.bitmap);return t.size>0?{map:t,hash:e.hexdigest(),transfer:A}:Ht}get editorStats(){let t=null;const e=new Map;for(const A of this.#fA.values()){if(!(A instanceof Nt))continue;const i=A.telemetryFinalData;if(!i)continue;const{type:s}=i;e.has(s)||e.set(s,Object.getPrototypeOf(A).constructor),t||=Object.create(null);const a=t[s]||=new Map;for(const[t,e]of Object.entries(i)){if("type"===t)continue;let A=a.get(t);A||(A=new Map,a.set(t,A));const i=A.get(e)??0;A.set(e,i+1)}}for(const[A,i]of e)t[A]=i.computeTelemetryFinalData(t[A]);return t}}class Yt extends Jt{#mA;constructor(t){super();const{map:e,hash:A,transfer:i}=t.serializable,s=structuredClone(e,i?{transfer:i}:null);this.#mA={map:s,hash:A,transfer:i}}get print(){D("Should not call PrintAnnotationStorage.print")}get serializable(){return this.#mA}}class Tt{#yA=new Set;constructor({ownerDocument:t=globalThis.document,styleElement:e=null}){this._document=t,this.nativeFontFaces=new Set,this.styleElement=null,this.loadingRequests=[],this.loadTestFontId=0}addNativeFontFace(t){this.nativeFontFaces.add(t),this._document.fonts.add(t)}removeNativeFontFace(t){this.nativeFontFaces.delete(t),this._document.fonts.delete(t)}insertRule(t){this.styleElement||(this.styleElement=this._document.createElement("style"),this._document.documentElement.getElementsByTagName("head")[0].append(this.styleElement));const e=this.styleElement.sheet;e.insertRule(t,e.cssRules.length)}clear(){for(const t of this.nativeFontFaces)this._document.fonts.delete(t);this.nativeFontFaces.clear(),this.#yA.clear(),this.styleElement&&(this.styleElement.remove(),this.styleElement=null)}async loadSystemFont({systemFontInfo:t,_inspectFont:e}){if(t&&!this.#yA.has(t.loadedName))if(k(!this.disableFontFace,"loadSystemFont shouldn't be called when `disableFontFace` is set."),this.isFontLoadingAPISupported){const{loadedName:A,src:i,style:s}=t,a=new FontFace(A,i,s);this.addNativeFontFace(a);try{await a.load(),this.#yA.add(A),e?.(t)}catch{b(`Cannot load system font: ${t.baseFontName}, installing it could help to improve PDF rendering.`),this.removeNativeFontFace(a)}}else D("Not implemented: loadSystemFont without the Font Loading API.")}async bind(t){if(t.attached||t.missingFile&&!t.systemFontInfo)return;if(t.attached=!0,t.systemFontInfo)return void await this.loadSystemFont(t);if(this.isFontLoadingAPISupported){const e=t.createNativeFontFace();if(e){this.addNativeFontFace(e);try{await e.loaded}catch(A){throw b(`Failed to load font '${e.family}': '${A}'.`),t.disableFontFace=!0,A}}return}const e=t.createFontFaceRule();if(e){if(this.insertRule(e),this.isSyncFontLoadingSupported)return;await new Promise((e=>{const A=this._queueLoadingCallback(e);this._prepareFontLoadEvent(t,A)}))}}get isFontLoadingAPISupported(){return F(this,"isFontLoadingAPISupported",!!this._document?.fonts)}get isSyncFontLoadingSupported(){let t=!1;return(o||"undefined"!=typeof navigator&&"string"==typeof navigator?.userAgent&&/Mozilla\/5.0.*?rv:\d+.*? Gecko/.test(navigator.userAgent))&&(t=!0),F(this,"isSyncFontLoadingSupported",t)}_queueLoadingCallback(t){const{loadingRequests:e}=this,A={done:!1,complete:function(){for(k(!A.done,"completeRequest() cannot be called twice."),A.done=!0;e.length>0&&e[0].done;){const t=e.shift();setTimeout(t.callback,0)}},callback:t};return e.push(A),A}get _loadTestFont(){return F(this,"_loadTestFont",atob("T1RUTwALAIAAAwAwQ0ZGIDHtZg4AAAOYAAAAgUZGVE1lkzZwAAAEHAAAABxHREVGABQAFQAABDgAAAAeT1MvMlYNYwkAAAEgAAAAYGNtYXABDQLUAAACNAAAAUJoZWFk/xVFDQAAALwAAAA2aGhlYQdkA+oAAAD0AAAAJGhtdHgD6AAAAAAEWAAAAAZtYXhwAAJQAAAAARgAAAAGbmFtZVjmdH4AAAGAAAAAsXBvc3T/hgAzAAADeAAAACAAAQAAAAEAALZRFsRfDzz1AAsD6AAAAADOBOTLAAAAAM4KHDwAAAAAA+gDIQAAAAgAAgAAAAAAAAABAAADIQAAAFoD6AAAAAAD6AABAAAAAAAAAAAAAAAAAAAAAQAAUAAAAgAAAAQD6AH0AAUAAAKKArwAAACMAooCvAAAAeAAMQECAAACAAYJAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFBmRWQAwAAuAC4DIP84AFoDIQAAAAAAAQAAAAAAAAAAACAAIAABAAAADgCuAAEAAAAAAAAAAQAAAAEAAAAAAAEAAQAAAAEAAAAAAAIAAQAAAAEAAAAAAAMAAQAAAAEAAAAAAAQAAQAAAAEAAAAAAAUAAQAAAAEAAAAAAAYAAQAAAAMAAQQJAAAAAgABAAMAAQQJAAEAAgABAAMAAQQJAAIAAgABAAMAAQQJAAMAAgABAAMAAQQJAAQAAgABAAMAAQQJAAUAAgABAAMAAQQJAAYAAgABWABYAAAAAAAAAwAAAAMAAAAcAAEAAAAAADwAAwABAAAAHAAEACAAAAAEAAQAAQAAAC7//wAAAC7////TAAEAAAAAAAABBgAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/gwAyAAAAAQAAAAAAAAAAAAAAAAAAAAABAAQEAAEBAQJYAAEBASH4DwD4GwHEAvgcA/gXBIwMAYuL+nz5tQXkD5j3CBLnEQACAQEBIVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYAAABAQAADwACAQEEE/t3Dov6fAH6fAT+fPp8+nwHDosMCvm1Cvm1DAz6fBQAAAAAAAABAAAAAMmJbzEAAAAAzgTjFQAAAADOBOQpAAEAAAAAAAAADAAUAAQAAAABAAAAAgABAAAAAAAAAAAD6AAAAAAAAA=="))}_prepareFontLoadEvent(t,e){function A(t,e){return t.charCodeAt(e)<<24|t.charCodeAt(e+1)<<16|t.charCodeAt(e+2)<<8|255&t.charCodeAt(e+3)}function i(t,e,A,i){return t.substring(0,e)+i+t.substring(e+A)}let s,a;const n=this._document.createElement("canvas");n.width=1,n.height=1;const r=n.getContext("2d");let o=0;const g=`lt${Date.now()}${this.loadTestFontId++}`;let c=this._loadTestFont;c=i(c,976,g.length,g);const h=1482184792;let l=A(c,16);for(s=0,a=g.length-3;s<a;s+=4)l=l-h+A(g,s)|0;var I;s<g.length&&(l=l-h+A(g+"XXX",s)|0),c=i(c,16,4,(I=l,String.fromCharCode(I>>24&255,I>>16&255,I>>8&255,255&I)));const C=`@font-face {font-family:"${g}";src:url(data:font/opentype;base64,${btoa(c)});}`;this.insertRule(C);const B=this._document.createElement("div");B.style.visibility="hidden",B.style.width=B.style.height="10px",B.style.position="absolute",B.style.top=B.style.left="0px";for(const e of[t.loadedName,g]){const t=this._document.createElement("span");t.textContent="Hi",t.style.fontFamily=e,B.append(t)}this._document.body.append(B),function t(e,A){if(++o>30)return b("Load test font never loaded."),void A();r.font="30px "+e,r.fillText(".",0,20),r.getImageData(0,0,1,1).data[3]>0?A():setTimeout(t.bind(null,e,A))}(g,(()=>{B.remove(),e.complete()}))}}class Kt{constructor(t,{disableFontFace:e=!1,inspectFont:A=null}){this.compiledGlyphs=Object.create(null);for(const e in t)this[e]=t[e];this.disableFontFace=!0===e,this._inspectFont=A}createNativeFontFace(){if(!this.data||this.disableFontFace)return null;let t;if(this.cssFontInfo){const e={weight:this.cssFontInfo.fontWeight};this.cssFontInfo.italicAngle&&(e.style=`oblique ${this.cssFontInfo.italicAngle}deg`),t=new FontFace(this.cssFontInfo.fontFamily,this.data,e)}else t=new FontFace(this.loadedName,this.data,{});return this._inspectFont?.(this),t}createFontFaceRule(){if(!this.data||this.disableFontFace)return null;const t=H(this.data),e=`url(data:${this.mimetype};base64,${btoa(t)});`;let A;if(this.cssFontInfo){let t=`font-weight: ${this.cssFontInfo.fontWeight};`;this.cssFontInfo.italicAngle&&(t+=`font-style: oblique ${this.cssFontInfo.italicAngle}deg;`),A=`@font-face {font-family:"${this.cssFontInfo.fontFamily}";${t}src:${e}}`}else A=`@font-face {font-family:"${this.loadedName}";src:${e}}`;return this._inspectFont?.(this,e),A}getPathGenerator(t,e){if(void 0!==this.compiledGlyphs[e])return this.compiledGlyphs[e];let A;try{A=t.get(this.loadedName+"_path_"+e)}catch(t){b(`getPathGenerator - ignoring character: "${t}".`)}if(!Array.isArray(A)||0===A.length)return this.compiledGlyphs[e]=function(t,e){};const i=[];for(let t=0,e=A.length;t<e;)switch(A[t++]){case 0:{const[e,s,a,n,r,o]=A.slice(t,t+6);i.push((t=>t.bezierCurveTo(e,s,a,n,r,o))),t+=6}break;case 1:{const[e,s]=A.slice(t,t+2);i.push((t=>t.moveTo(e,s))),t+=2}break;case 2:{const[e,s]=A.slice(t,t+2);i.push((t=>t.lineTo(e,s))),t+=2}break;case 3:{const[e,s,a,n]=A.slice(t,t+4);i.push((t=>t.quadraticCurveTo(e,s,a,n))),t+=4}break;case 4:i.push((t=>t.restore()));break;case 5:i.push((t=>t.save()));break;case 6:k(2===i.length,"Scale command is only valid at the third position.");break;case 7:{const[e,s,a,n,r,o]=A.slice(t,t+6);i.push((t=>t.transform(e,s,a,n,r,o))),t+=6}break;case 8:{const[e,s]=A.slice(t,t+2);i.push((t=>t.translate(e,s))),t+=2}}return this.compiledGlyphs[e]=function(t,e){i[0](t),i[1](t),t.scale(e,-e);for(let e=2,A=i.length;e<A;e++)i[e](t)}}}if(o){var qt=Promise.withResolvers(),Pt=null;(async()=>{const t=await import("fs"),e=await import("http"),A=await import("https"),i=await import("url");let s,a;try{s=await import("canvas")}catch{}try{a=await import("path2d")}catch{}return new Map(Object.entries({fs:t,http:e,https:A,url:i,canvas:s,path2d:a}))})().then((t=>{if(Pt=t,qt.resolve(),!globalThis.DOMMatrix){const e=t.get("canvas")?.DOMMatrix;e?globalThis.DOMMatrix=e:b("Cannot polyfill `DOMMatrix`, rendering may be broken.")}if(!globalThis.Path2D){const e=t.get("canvas")?.CanvasRenderingContext2D,A=t.get("path2d")?.applyPath2DToCanvasRenderingContext,i=t.get("path2d")?.Path2D;e&&A&&i?(A(e),globalThis.Path2D=i):b("Cannot polyfill `Path2D`, rendering may be broken.")}}),(t=>{b(`loadPackages: ${t}`),Pt=new Map,qt.resolve()}))}class _t{static get promise(){return qt.promise}static get(t){return Pt?.get(t)}}const Ot=function(t){return _t.get("fs").promises.readFile(t).then((t=>new Uint8Array(t)))},Wt="Fill",Zt="Stroke",jt="Shading";function Vt(t,e){if(!e)return;const A=e[2]-e[0],i=e[3]-e[1],s=new Path2D;s.rect(e[0],e[1],A,i),t.clip(s)}class Xt{constructor(){this.constructor===Xt&&D("Cannot initialize BaseShadingPattern.")}getPattern(){D("Abstract method `getPattern` called.")}}class zt extends Xt{constructor(t){super(),this._type=t[1],this._bbox=t[2],this._colorStops=t[3],this._p0=t[4],this._p1=t[5],this._r0=t[6],this._r1=t[7],this.matrix=null}_createGradient(t){let e;"axial"===this._type?e=t.createLinearGradient(this._p0[0],this._p0[1],this._p1[0],this._p1[1]):"radial"===this._type&&(e=t.createRadialGradient(this._p0[0],this._p0[1],this._r0,this._p1[0],this._p1[1],this._r1));for(const t of this._colorStops)e.addColorStop(t[0],t[1]);return e}getPattern(t,e,A,i){let s;if(i===Zt||i===Wt){const a=e.current.getClippedPathBoundingBox(i,Et(t))||[0,0,0,0],n=Math.ceil(a[2]-a[0])||1,r=Math.ceil(a[3]-a[1])||1,o=e.cachedCanvases.getCanvas("pattern",n,r,!0),g=o.context;g.clearRect(0,0,g.canvas.width,g.canvas.height),g.beginPath(),g.rect(0,0,g.canvas.width,g.canvas.height),g.translate(-a[0],-a[1]),A=q.transform(A,[1,0,0,1,a[0],a[1]]),g.transform(...e.baseTransform),this.matrix&&g.transform(...this.matrix),Vt(g,this._bbox),g.fillStyle=this._createGradient(g),g.fill(),s=t.createPattern(o.canvas,"no-repeat");const c=new DOMMatrix(A);s.setTransform(c)}else Vt(t,this._bbox),s=this._createGradient(t);return s}}function $t(t,e,A,i,s,a,n,r){const o=e.coords,g=e.colors,c=t.data,h=4*t.width;let l;o[A+1]>o[i+1]&&(l=A,A=i,i=l,l=a,a=n,n=l),o[i+1]>o[s+1]&&(l=i,i=s,s=l,l=n,n=r,r=l),o[A+1]>o[i+1]&&(l=A,A=i,i=l,l=a,a=n,n=l);const I=(o[A]+e.offsetX)*e.scaleX,C=(o[A+1]+e.offsetY)*e.scaleY,B=(o[i]+e.offsetX)*e.scaleX,d=(o[i+1]+e.offsetY)*e.scaleY,u=(o[s]+e.offsetX)*e.scaleX,Q=(o[s+1]+e.offsetY)*e.scaleY;if(C>=Q)return;const E=g[a],f=g[a+1],p=g[a+2],m=g[n],y=g[n+1],w=g[n+2],b=g[r],D=g[r+1],k=g[r+2],S=Math.round(C),F=Math.round(Q);let R,x,N,v,G,M,L,U;for(let t=S;t<=F;t++){if(t<d){const e=t<C?0:(C-t)/(C-d);R=I-(I-B)*e,x=E-(E-m)*e,N=f-(f-y)*e,v=p-(p-w)*e}else{let e;e=t>Q?1:d===Q?0:(d-t)/(d-Q),R=B-(B-u)*e,x=m-(m-b)*e,N=y-(y-D)*e,v=w-(w-k)*e}let e;e=t<C?0:t>Q?1:(C-t)/(C-Q),G=I-(I-u)*e,M=E-(E-b)*e,L=f-(f-D)*e,U=p-(p-k)*e;const A=Math.round(Math.min(R,G)),i=Math.round(Math.max(R,G));let s=h*t+4*A;for(let t=A;t<=i;t++)e=(R-t)/(R-G),e<0?e=0:e>1&&(e=1),c[s++]=x-(x-M)*e|0,c[s++]=N-(N-L)*e|0,c[s++]=v-(v-U)*e|0,c[s++]=255}}function te(t,e,A){const i=e.coords,s=e.colors;let a,n;switch(e.type){case"lattice":const r=e.verticesPerRow,o=Math.floor(i.length/r)-1,g=r-1;for(a=0;a<o;a++){let e=a*r;for(let a=0;a<g;a++,e++)$t(t,A,i[e],i[e+1],i[e+r],s[e],s[e+1],s[e+r]),$t(t,A,i[e+r+1],i[e+1],i[e+r],s[e+r+1],s[e+1],s[e+r])}break;case"triangles":for(a=0,n=i.length;a<n;a+=3)$t(t,A,i[a],i[a+1],i[a+2],s[a],s[a+1],s[a+2]);break;default:throw new Error("illegal figure")}}class ee extends Xt{constructor(t){super(),this._coords=t[2],this._colors=t[3],this._figures=t[4],this._bounds=t[5],this._bbox=t[7],this._background=t[8],this.matrix=null}_createMeshCanvas(t,e,A){const i=Math.floor(this._bounds[0]),s=Math.floor(this._bounds[1]),a=Math.ceil(this._bounds[2])-i,n=Math.ceil(this._bounds[3])-s,r=Math.min(Math.ceil(Math.abs(a*t[0]*1.1)),3e3),o=Math.min(Math.ceil(Math.abs(n*t[1]*1.1)),3e3),g=a/r,c=n/o,h={coords:this._coords,colors:this._colors,offsetX:-i,offsetY:-s,scaleX:1/g,scaleY:1/c},l=r+4,I=o+4,C=A.getCanvas("mesh",l,I,!1),B=C.context,d=B.createImageData(r,o);if(e){const t=d.data;for(let A=0,i=t.length;A<i;A+=4)t[A]=e[0],t[A+1]=e[1],t[A+2]=e[2],t[A+3]=255}for(const t of this._figures)te(d,t,h);return B.putImageData(d,2,2),{canvas:C.canvas,offsetX:i-2*g,offsetY:s-2*c,scaleX:g,scaleY:c}}getPattern(t,e,A,i){let s;if(Vt(t,this._bbox),i===jt)s=q.singularValueDecompose2dScale(Et(t));else if(s=q.singularValueDecompose2dScale(e.baseTransform),this.matrix){const t=q.singularValueDecompose2dScale(this.matrix);s=[s[0]*t[0],s[1]*t[1]]}const a=this._createMeshCanvas(s,i===jt?null:this._background,e.cachedCanvases);return i!==jt&&(t.setTransform(...e.baseTransform),this.matrix&&t.transform(...this.matrix)),t.translate(a.offsetX,a.offsetY),t.scale(a.scaleX,a.scaleY),t.createPattern(a.canvas,"no-repeat")}}class Ae extends Xt{getPattern(){return"hotpink"}}class ie{static MAX_PATTERN_SIZE=3e3;constructor(t,e,A,i,s){this.operatorList=t[2],this.matrix=t[3],this.bbox=t[4],this.xstep=t[5],this.ystep=t[6],this.paintType=t[7],this.tilingType=t[8],this.color=e,this.ctx=A,this.canvasGraphicsFactory=i,this.baseTransform=s}createPatternCanvas(t){const e=this.operatorList,A=this.bbox,i=this.xstep,s=this.ystep,a=this.paintType,n=this.tilingType,r=this.color,o=this.canvasGraphicsFactory;w("TilingType: "+n);const g=A[0],c=A[1],h=A[2],l=A[3],I=q.singularValueDecompose2dScale(this.matrix),C=q.singularValueDecompose2dScale(this.baseTransform),B=[I[0]*C[0],I[1]*C[1]],d=this.getSizeAndScale(i,this.ctx.canvas.width,B[0]),u=this.getSizeAndScale(s,this.ctx.canvas.height,B[1]),Q=t.cachedCanvases.getCanvas("pattern",d.size,u.size,!0),E=Q.context,f=o.createCanvasGraphics(E);f.groupLevel=t.groupLevel,this.setFillAndStrokeStyleToContext(f,a,r);let p=g,m=c,y=h,b=l;return g<0&&(p=0,y+=Math.abs(g)),c<0&&(m=0,b+=Math.abs(c)),E.translate(-d.scale*p,-u.scale*m),f.transform(d.scale,0,0,u.scale,0,0),E.save(),this.clipBbox(f,p,m,y,b),f.baseTransform=Et(f.ctx),f.executeOperatorList(e),f.endDrawing(),{canvas:Q.canvas,scaleX:d.scale,scaleY:u.scale,offsetX:p,offsetY:m}}getSizeAndScale(t,e,A){t=Math.abs(t);const i=Math.max(ie.MAX_PATTERN_SIZE,e);let s=Math.ceil(t*A);return s>=i?s=i:A=s/t,{scale:A,size:s}}clipBbox(t,e,A,i,s){const a=i-e,n=s-A;t.ctx.rect(e,A,a,n),t.current.updateRectMinMax(Et(t.ctx),[e,A,i,s]),t.clip(),t.endPath()}setFillAndStrokeStyleToContext(t,e,A){const i=t.ctx,s=t.current;switch(e){case 1:const t=this.ctx;i.fillStyle=t.fillStyle,i.strokeStyle=t.strokeStyle,s.fillColor=t.fillStyle,s.strokeColor=t.strokeStyle;break;case 2:const a=q.makeHexColor(A[0],A[1],A[2]);i.fillStyle=a,i.strokeStyle=a,s.fillColor=a,s.strokeColor=a;break;default:throw new L(`Unsupported paint type: ${e}`)}}getPattern(t,e,A,i){let s=A;i!==jt&&(s=q.transform(s,e.baseTransform),this.matrix&&(s=q.transform(s,this.matrix)));const a=this.createPatternCanvas(e);let n=new DOMMatrix(s);n=n.translate(a.offsetX,a.offsetY),n=n.scale(1/a.scaleX,1/a.scaleY);const r=t.createPattern(a.canvas,"repeat");return r.setTransform(n),r}}function se({src:t,srcPos:e=0,dest:A,width:i,height:s,nonBlackColor:a=4294967295,inverseDecode:n=!1}){const r=T.isLittleEndian?4278190080:255,[o,g]=n?[a,r]:[r,a],c=i>>3,h=7&i,l=t.length;A=new Uint32Array(A.buffer);let I=0;for(let i=0;i<s;i++){for(const i=e+c;e<i;e++){const i=e<l?t[e]:255;A[I++]=128&i?g:o,A[I++]=64&i?g:o,A[I++]=32&i?g:o,A[I++]=16&i?g:o,A[I++]=8&i?g:o,A[I++]=4&i?g:o,A[I++]=2&i?g:o,A[I++]=1&i?g:o}if(0===h)continue;const i=e<l?t[e++]:255;for(let t=0;t<h;t++)A[I++]=i&1<<7-t?g:o}return{srcPos:e,destPos:I}}const ae=16;class ne{constructor(t){this.canvasFactory=t,this.cache=Object.create(null)}getCanvas(t,e,A){let i;return void 0!==this.cache[t]?(i=this.cache[t],this.canvasFactory.reset(i,e,A)):(i=this.canvasFactory.create(e,A),this.cache[t]=i),i}delete(t){delete this.cache[t]}clear(){for(const t in this.cache){const e=this.cache[t];this.canvasFactory.destroy(e),delete this.cache[t]}}}function re(t,e,A,i,s,a,n,r,o,g){const[c,h,l,I,C,B]=Et(t);if(0===h&&0===l){const d=n*c+C,u=Math.round(d),Q=r*I+B,E=Math.round(Q),f=(n+o)*c+C,p=Math.abs(Math.round(f)-u)||1,m=(r+g)*I+B,y=Math.abs(Math.round(m)-E)||1;return t.setTransform(Math.sign(c),0,0,Math.sign(I),u,E),t.drawImage(e,A,i,s,a,0,0,p,y),t.setTransform(c,h,l,I,C,B),[p,y]}if(0===c&&0===I){const d=r*l+C,u=Math.round(d),Q=n*h+B,E=Math.round(Q),f=(r+g)*l+C,p=Math.abs(Math.round(f)-u)||1,m=(n+o)*h+B,y=Math.abs(Math.round(m)-E)||1;return t.setTransform(0,Math.sign(h),Math.sign(l),0,u,E),t.drawImage(e,A,i,s,a,0,0,y,p),t.setTransform(c,h,l,I,C,B),[y,p]}return t.drawImage(e,A,i,s,a,n,r,o,g),[Math.hypot(c,h)*o,Math.hypot(l,I)*g]}class oe{constructor(t,e){this.alphaIsShape=!1,this.fontSize=0,this.fontSizeScale=1,this.textMatrix=g,this.textMatrixScale=1,this.fontMatrix=c,this.leading=0,this.x=0,this.y=0,this.lineX=0,this.lineY=0,this.charSpacing=0,this.wordSpacing=0,this.textHScale=1,this.textRenderingMode=0,this.textRise=0,this.fillColor="#000000",this.strokeColor="#000000",this.patternFill=!1,this.fillAlpha=1,this.strokeAlpha=1,this.lineWidth=1,this.activeSMask=null,this.transferMaps="none",this.startNewPathAndClipBox([0,0,t,e])}clone(){const t=Object.create(this);return t.clipBox=this.clipBox.slice(),t}setCurrentPoint(t,e){this.x=t,this.y=e}updatePathMinMax(t,e,A){[e,A]=q.applyTransform([e,A],t),this.minX=Math.min(this.minX,e),this.minY=Math.min(this.minY,A),this.maxX=Math.max(this.maxX,e),this.maxY=Math.max(this.maxY,A)}updateRectMinMax(t,e){const A=q.applyTransform(e,t),i=q.applyTransform(e.slice(2),t),s=q.applyTransform([e[0],e[3]],t),a=q.applyTransform([e[2],e[1]],t);this.minX=Math.min(this.minX,A[0],i[0],s[0],a[0]),this.minY=Math.min(this.minY,A[1],i[1],s[1],a[1]),this.maxX=Math.max(this.maxX,A[0],i[0],s[0],a[0]),this.maxY=Math.max(this.maxY,A[1],i[1],s[1],a[1])}updateScalingPathMinMax(t,e){q.scaleMinMax(t,e),this.minX=Math.min(this.minX,e[0]),this.minY=Math.min(this.minY,e[1]),this.maxX=Math.max(this.maxX,e[2]),this.maxY=Math.max(this.maxY,e[3])}updateCurvePathMinMax(t,e,A,i,s,a,n,r,o,g){const c=q.bezierBoundingBox(e,A,i,s,a,n,r,o,g);g||this.updateRectMinMax(t,c)}getPathBoundingBox(t=Wt,e=null){const A=[this.minX,this.minY,this.maxX,this.maxY];if(t===Zt){e||D("Stroke bounding box must include transform.");const t=q.singularValueDecompose2dScale(e),i=t[0]*this.lineWidth/2,s=t[1]*this.lineWidth/2;A[0]-=i,A[1]-=s,A[2]+=i,A[3]+=s}return A}updateClipFromPath(){const t=q.intersect(this.clipBox,this.getPathBoundingBox());this.startNewPathAndClipBox(t||[0,0,0,0])}isEmptyClip(){return this.minX===1/0}startNewPathAndClipBox(t){this.clipBox=t,this.minX=1/0,this.minY=1/0,this.maxX=0,this.maxY=0}getClippedPathBoundingBox(t=Wt,e=null){return q.intersect(this.clipBox,this.getPathBoundingBox(t,e))}}function ge(t,e){if("undefined"!=typeof ImageData&&e instanceof ImageData)return void t.putImageData(e,0,0);const A=e.height,i=e.width,s=A%ae,a=(A-s)/ae,n=0===s?a:a+1,r=t.createImageData(i,ae);let o,g=0;const c=e.data,h=r.data;let l,I,C,B;if(e.kind===d.GRAYSCALE_1BPP){const e=c.byteLength,A=new Uint32Array(h.buffer,0,h.byteLength>>2),B=A.length,d=i+7>>3,u=4294967295,Q=T.isLittleEndian?4278190080:255;for(l=0;l<n;l++){for(C=l<a?ae:s,o=0,I=0;I<C;I++){const t=e-g;let s=0;const a=t>d?i:8*t-7,n=-8&a;let r=0,h=0;for(;s<n;s+=8)h=c[g++],A[o++]=128&h?u:Q,A[o++]=64&h?u:Q,A[o++]=32&h?u:Q,A[o++]=16&h?u:Q,A[o++]=8&h?u:Q,A[o++]=4&h?u:Q,A[o++]=2&h?u:Q,A[o++]=1&h?u:Q;for(;s<a;s++)0===r&&(h=c[g++],r=128),A[o++]=h&r?u:Q,r>>=1}for(;o<B;)A[o++]=0;t.putImageData(r,0,l*ae)}}else if(e.kind===d.RGBA_32BPP){for(I=0,B=i*ae*4,l=0;l<a;l++)h.set(c.subarray(g,g+B)),g+=B,t.putImageData(r,0,I),I+=ae;l<n&&(B=i*s*4,h.set(c.subarray(g,g+B)),t.putImageData(r,0,I))}else{if(e.kind!==d.RGB_24BPP)throw new Error(`bad image kind: ${e.kind}`);for(C=ae,B=i*C,l=0;l<n;l++){for(l>=a&&(C=s,B=i*C),o=0,I=B;I--;)h[o++]=c[g++],h[o++]=c[g++],h[o++]=c[g++],h[o++]=255;t.putImageData(r,0,l*ae)}}}function ce(t,e){if(e.bitmap)return void t.drawImage(e.bitmap,0,0);const A=e.height,i=e.width,s=A%ae,a=(A-s)/ae,n=0===s?a:a+1,r=t.createImageData(i,ae);let o=0;const g=e.data,c=r.data;for(let e=0;e<n;e++){const A=e<a?ae:s;({srcPos:o}=se({src:g,srcPos:o,dest:c,width:i,height:A,nonBlackColor:0})),t.putImageData(r,0,e*ae)}}function he(t,e){const A=["strokeStyle","fillStyle","fillRule","globalAlpha","lineWidth","lineCap","lineJoin","miterLimit","globalCompositeOperation","font","filter"];for(const i of A)void 0!==t[i]&&(e[i]=t[i]);void 0!==t.setLineDash&&(e.setLineDash(t.getLineDash()),e.lineDashOffset=t.lineDashOffset)}function le(t){if(t.strokeStyle=t.fillStyle="#000000",t.fillRule="nonzero",t.globalAlpha=1,t.lineWidth=1,t.lineCap="butt",t.lineJoin="miter",t.miterLimit=10,t.globalCompositeOperation="source-over",t.font="10px sans-serif",void 0!==t.setLineDash&&(t.setLineDash([]),t.lineDashOffset=0),!o){const{filter:e}=t;"none"!==e&&""!==e&&(t.filter="none")}}function Ie(t,e){if(e)return!0;const A=q.singularValueDecompose2dScale(t);A[0]=Math.fround(A[0]),A[1]=Math.fround(A[1]);const i=Math.fround((globalThis.devicePixelRatio||1)*tt.PDF_TO_CSS_UNITS);return A[0]<=i&&A[1]<=i}const Ce=["butt","round","square"],Be=["miter","round","bevel"],de={},ue={};class Qe{constructor(t,e,A,i,s,{optionalContentConfig:a,markedContentStack:n=null},r,o){this.ctx=t,this.current=new oe(this.ctx.canvas.width,this.ctx.canvas.height),this.stateStack=[],this.pendingClip=null,this.pendingEOFill=!1,this.res=null,this.xobjs=null,this.commonObjs=e,this.objs=A,this.canvasFactory=i,this.filterFactory=s,this.groupStack=[],this.processingType3=null,this.baseTransform=null,this.baseTransformStack=[],this.groupLevel=0,this.smaskStack=[],this.smaskCounter=0,this.tempSMask=null,this.suspendedCtx=null,this.contentVisible=!0,this.markedContentStack=n||[],this.optionalContentConfig=a,this.cachedCanvases=new ne(this.canvasFactory),this.cachedPatterns=new Map,this.annotationCanvasMap=r,this.viewportScale=1,this.outputScaleX=1,this.outputScaleY=1,this.pageColors=o,this._cachedScaleForStroking=[-1,0],this._cachedGetSinglePixelWidth=null,this._cachedBitmapsMap=new Map}getObject(t,e=null){return"string"==typeof t?t.startsWith("g_")?this.commonObjs.get(t):this.objs.get(t):e}beginDrawing({transform:t,viewport:e,transparency:A=!1,background:i=null}){const s=this.ctx.canvas.width,a=this.ctx.canvas.height,n=this.ctx.fillStyle;if(this.ctx.fillStyle=i||"#ffffff",this.ctx.fillRect(0,0,s,a),this.ctx.fillStyle=n,A){const t=this.cachedCanvases.getCanvas("transparent",s,a);this.compositeCtx=this.ctx,this.transparentCanvas=t.canvas,this.ctx=t.context,this.ctx.save(),this.ctx.transform(...Et(this.compositeCtx))}this.ctx.save(),le(this.ctx),t&&(this.ctx.transform(...t),this.outputScaleX=t[0],this.outputScaleY=t[0]),this.ctx.transform(...e.transform),this.viewportScale=e.scale,this.baseTransform=Et(this.ctx)}executeOperatorList(t,e,A,i){const s=t.argsArray,a=t.fnArray;let n=e||0;const r=s.length;if(r===n)return n;const o=r-n>10&&"function"==typeof A,g=o?Date.now()+15:0;let c=0;const h=this.commonObjs,l=this.objs;let I;for(;;){if(void 0!==i&&n===i.nextBreakPoint)return i.breakIt(n,A),n;if(I=a[n],I!==E.dependency)this[I].apply(this,s[n]);else for(const t of s[n]){const e=t.startsWith("g_")?h:l;if(!e.has(t))return e.get(t,A),n}if(n++,n===r)return n;if(o&&++c>10){if(Date.now()>g)return A(),n;c=0}}}#wA(){for(;this.stateStack.length||this.inSMaskMode;)this.restore();this.ctx.restore(),this.transparentCanvas&&(this.ctx=this.compositeCtx,this.ctx.save(),this.ctx.setTransform(1,0,0,1,0,0),this.ctx.drawImage(this.transparentCanvas,0,0),this.ctx.restore(),this.transparentCanvas=null)}endDrawing(){this.#wA(),this.cachedCanvases.clear(),this.cachedPatterns.clear();for(const t of this._cachedBitmapsMap.values()){for(const e of t.values())"undefined"!=typeof HTMLCanvasElement&&e instanceof HTMLCanvasElement&&(e.width=e.height=0);t.clear()}this._cachedBitmapsMap.clear(),this.#bA()}#bA(){if(this.pageColors){const t=this.filterFactory.addHCMFilter(this.pageColors.foreground,this.pageColors.background);if("none"!==t){const e=this.ctx.filter;this.ctx.filter=t,this.ctx.drawImage(this.ctx.canvas,0,0),this.ctx.filter=e}}}_scaleImage(t,e){const A=t.width,i=t.height;let s,a,n=Math.max(Math.hypot(e[0],e[1]),1),r=Math.max(Math.hypot(e[2],e[3]),1),o=A,g=i,c="prescale1";for(;n>2&&o>1||r>2&&g>1;){let e=o,A=g;n>2&&o>1&&(e=o>=16384?Math.floor(o/2)-1||1:Math.ceil(o/2),n/=o/e),r>2&&g>1&&(A=g>=16384?Math.floor(g/2)-1||1:Math.ceil(g)/2,r/=g/A),s=this.cachedCanvases.getCanvas(c,e,A),a=s.context,a.clearRect(0,0,e,A),a.drawImage(t,0,0,o,g,0,0,e,A),t=s.canvas,o=e,g=A,c="prescale1"===c?"prescale2":"prescale1"}return{img:t,paintWidth:o,paintHeight:g}}_createMaskCanvas(t){const e=this.ctx,{width:A,height:i}=t,s=this.current.fillColor,a=this.current.patternFill,n=Et(e);let r,o,g,c;if((t.bitmap||t.data)&&t.count>1){const e=t.bitmap||t.data.buffer;o=JSON.stringify(a?n:[n.slice(0,4),s]),r=this._cachedBitmapsMap.get(e),r||(r=new Map,this._cachedBitmapsMap.set(e,r));const A=r.get(o);if(A&&!a)return{canvas:A,offsetX:Math.round(Math.min(n[0],n[2])+n[4]),offsetY:Math.round(Math.min(n[1],n[3])+n[5])};g=A}g||(c=this.cachedCanvases.getCanvas("maskCanvas",A,i),ce(c.context,t));let h=q.transform(n,[1/A,0,0,-1/i,0,0]);h=q.transform(h,[1,0,0,1,0,-i]);const[l,I,C,B]=q.getAxialAlignedBoundingBox([0,0,A,i],h),d=Math.round(C-l)||1,u=Math.round(B-I)||1,Q=this.cachedCanvases.getCanvas("fillCanvas",d,u),E=Q.context,f=l,p=I;E.translate(-f,-p),E.transform(...h),g||(g=this._scaleImage(c.canvas,ft(E)),g=g.img,r&&a&&r.set(o,g)),E.imageSmoothingEnabled=Ie(Et(E),t.interpolate),re(E,g,0,0,g.width,g.height,0,0,A,i),E.globalCompositeOperation="source-in";const m=q.transform(ft(E),[1,0,0,1,-f,-p]);return E.fillStyle=a?s.getPattern(e,this,m,Wt):s,E.fillRect(0,0,A,i),r&&!a&&(this.cachedCanvases.delete("fillCanvas"),r.set(o,Q.canvas)),{canvas:Q.canvas,offsetX:Math.round(f),offsetY:Math.round(p)}}setLineWidth(t){t!==this.current.lineWidth&&(this._cachedScaleForStroking[0]=-1),this.current.lineWidth=t,this.ctx.lineWidth=t}setLineCap(t){this.ctx.lineCap=Ce[t]}setLineJoin(t){this.ctx.lineJoin=Be[t]}setMiterLimit(t){this.ctx.miterLimit=t}setDash(t,e){const A=this.ctx;void 0!==A.setLineDash&&(A.setLineDash(t),A.lineDashOffset=e)}setRenderingIntent(t){}setFlatness(t){}setGState(t){for(const[e,A]of t)switch(e){case"LW":this.setLineWidth(A);break;case"LC":this.setLineCap(A);break;case"LJ":this.setLineJoin(A);break;case"ML":this.setMiterLimit(A);break;case"D":this.setDash(A[0],A[1]);break;case"RI":this.setRenderingIntent(A);break;case"FL":this.setFlatness(A);break;case"Font":this.setFont(A[0],A[1]);break;case"CA":this.current.strokeAlpha=A;break;case"ca":this.current.fillAlpha=A,this.ctx.globalAlpha=A;break;case"BM":this.ctx.globalCompositeOperation=A;break;case"SMask":this.current.activeSMask=A?this.tempSMask:null,this.tempSMask=null,this.checkSMaskState();break;case"TR":this.ctx.filter=this.current.transferMaps=this.filterFactory.addFilter(A)}}get inSMaskMode(){return!!this.suspendedCtx}checkSMaskState(){const t=this.inSMaskMode;this.current.activeSMask&&!t?this.beginSMaskMode():!this.current.activeSMask&&t&&this.endSMaskMode()}beginSMaskMode(){if(this.inSMaskMode)throw new Error("beginSMaskMode called while already in smask mode");const t=this.ctx.canvas.width,e=this.ctx.canvas.height,A="smaskGroupAt"+this.groupLevel,i=this.cachedCanvases.getCanvas(A,t,e);this.suspendedCtx=this.ctx,this.ctx=i.context;const s=this.ctx;s.setTransform(...Et(this.suspendedCtx)),he(this.suspendedCtx,s),function(t,e){if(t._removeMirroring)throw new Error("Context is already forwarding operations.");t.__originalSave=t.save,t.__originalRestore=t.restore,t.__originalRotate=t.rotate,t.__originalScale=t.scale,t.__originalTranslate=t.translate,t.__originalTransform=t.transform,t.__originalSetTransform=t.setTransform,t.__originalResetTransform=t.resetTransform,t.__originalClip=t.clip,t.__originalMoveTo=t.moveTo,t.__originalLineTo=t.lineTo,t.__originalBezierCurveTo=t.bezierCurveTo,t.__originalRect=t.rect,t.__originalClosePath=t.closePath,t.__originalBeginPath=t.beginPath,t._removeMirroring=()=>{t.save=t.__originalSave,t.restore=t.__originalRestore,t.rotate=t.__originalRotate,t.scale=t.__originalScale,t.translate=t.__originalTranslate,t.transform=t.__originalTransform,t.setTransform=t.__originalSetTransform,t.resetTransform=t.__originalResetTransform,t.clip=t.__originalClip,t.moveTo=t.__originalMoveTo,t.lineTo=t.__originalLineTo,t.bezierCurveTo=t.__originalBezierCurveTo,t.rect=t.__originalRect,t.closePath=t.__originalClosePath,t.beginPath=t.__originalBeginPath,delete t._removeMirroring},t.save=function(){e.save(),this.__originalSave()},t.restore=function(){e.restore(),this.__originalRestore()},t.translate=function(t,A){e.translate(t,A),this.__originalTranslate(t,A)},t.scale=function(t,A){e.scale(t,A),this.__originalScale(t,A)},t.transform=function(t,A,i,s,a,n){e.transform(t,A,i,s,a,n),this.__originalTransform(t,A,i,s,a,n)},t.setTransform=function(t,A,i,s,a,n){e.setTransform(t,A,i,s,a,n),this.__originalSetTransform(t,A,i,s,a,n)},t.resetTransform=function(){e.resetTransform(),this.__originalResetTransform()},t.rotate=function(t){e.rotate(t),this.__originalRotate(t)},t.clip=function(t){e.clip(t),this.__originalClip(t)},t.moveTo=function(t,A){e.moveTo(t,A),this.__originalMoveTo(t,A)},t.lineTo=function(t,A){e.lineTo(t,A),this.__originalLineTo(t,A)},t.bezierCurveTo=function(t,A,i,s,a,n){e.bezierCurveTo(t,A,i,s,a,n),this.__originalBezierCurveTo(t,A,i,s,a,n)},t.rect=function(t,A,i,s){e.rect(t,A,i,s),this.__originalRect(t,A,i,s)},t.closePath=function(){e.closePath(),this.__originalClosePath()},t.beginPath=function(){e.beginPath(),this.__originalBeginPath()}}(s,this.suspendedCtx),this.setGState([["BM","source-over"],["ca",1],["CA",1]])}endSMaskMode(){if(!this.inSMaskMode)throw new Error("endSMaskMode called while not in smask mode");this.ctx._removeMirroring(),he(this.ctx,this.suspendedCtx),this.ctx=this.suspendedCtx,this.suspendedCtx=null}compose(t){if(!this.current.activeSMask)return;t?(t[0]=Math.floor(t[0]),t[1]=Math.floor(t[1]),t[2]=Math.ceil(t[2]),t[3]=Math.ceil(t[3])):t=[0,0,this.ctx.canvas.width,this.ctx.canvas.height];const e=this.current.activeSMask,A=this.suspendedCtx;this.composeSMask(A,e,this.ctx,t),this.ctx.save(),this.ctx.setTransform(1,0,0,1,0,0),this.ctx.clearRect(0,0,this.ctx.canvas.width,this.ctx.canvas.height),this.ctx.restore()}composeSMask(t,e,A,i){const s=i[0],a=i[1],n=i[2]-s,r=i[3]-a;0!==n&&0!==r&&(this.genericComposeSMask(e.context,A,n,r,e.subtype,e.backdrop,e.transferMap,s,a,e.offsetX,e.offsetY),t.save(),t.globalAlpha=1,t.globalCompositeOperation="source-over",t.setTransform(1,0,0,1,0,0),t.drawImage(A.canvas,0,0),t.restore())}genericComposeSMask(t,e,A,i,s,a,n,r,o,g,c){let h=t.canvas,l=r-g,I=o-c;if(a)if(l<0||I<0||l+A>h.width||I+i>h.height){const t=this.cachedCanvases.getCanvas("maskExtension",A,i),e=t.context;e.drawImage(h,-l,-I),a.some((t=>0!==t))&&(e.globalCompositeOperation="destination-atop",e.fillStyle=q.makeHexColor(...a),e.fillRect(0,0,A,i),e.globalCompositeOperation="source-over"),h=t.canvas,l=I=0}else if(a.some((t=>0!==t))){t.save(),t.globalAlpha=1,t.setTransform(1,0,0,1,0,0);const e=new Path2D;e.rect(l,I,A,i),t.clip(e),t.globalCompositeOperation="destination-atop",t.fillStyle=q.makeHexColor(...a),t.fillRect(l,I,A,i),t.restore()}e.save(),e.globalAlpha=1,e.setTransform(1,0,0,1,0,0),"Alpha"===s&&n?e.filter=this.filterFactory.addAlphaFilter(n):"Luminosity"===s&&(e.filter=this.filterFactory.addLuminosityFilter(n));const C=new Path2D;C.rect(r,o,A,i),e.clip(C),e.globalCompositeOperation="destination-in",e.drawImage(h,l,I,A,i,r,o,A,i),e.restore()}save(){this.inSMaskMode?(he(this.ctx,this.suspendedCtx),this.suspendedCtx.save()):this.ctx.save();const t=this.current;this.stateStack.push(t),this.current=t.clone()}restore(){0===this.stateStack.length&&this.inSMaskMode&&this.endSMaskMode(),0!==this.stateStack.length&&(this.current=this.stateStack.pop(),this.inSMaskMode?(this.suspendedCtx.restore(),he(this.suspendedCtx,this.ctx)):this.ctx.restore(),this.checkSMaskState(),this.pendingClip=null,this._cachedScaleForStroking[0]=-1,this._cachedGetSinglePixelWidth=null)}transform(t,e,A,i,s,a){this.ctx.transform(t,e,A,i,s,a),this._cachedScaleForStroking[0]=-1,this._cachedGetSinglePixelWidth=null}constructPath(t,e,A){const i=this.ctx,s=this.current;let a,n,r=s.x,o=s.y;const g=Et(i),c=0===g[0]&&0===g[3]||0===g[1]&&0===g[2],h=c?A.slice(0):null;for(let A=0,l=0,I=t.length;A<I;A++)switch(0|t[A]){case E.rectangle:r=e[l++],o=e[l++];const t=e[l++],A=e[l++],I=r+t,C=o+A;i.moveTo(r,o),0===t||0===A?i.lineTo(I,C):(i.lineTo(I,o),i.lineTo(I,C),i.lineTo(r,C)),c||s.updateRectMinMax(g,[r,o,I,C]),i.closePath();break;case E.moveTo:r=e[l++],o=e[l++],i.moveTo(r,o),c||s.updatePathMinMax(g,r,o);break;case E.lineTo:r=e[l++],o=e[l++],i.lineTo(r,o),c||s.updatePathMinMax(g,r,o);break;case E.curveTo:a=r,n=o,r=e[l+4],o=e[l+5],i.bezierCurveTo(e[l],e[l+1],e[l+2],e[l+3],r,o),s.updateCurvePathMinMax(g,a,n,e[l],e[l+1],e[l+2],e[l+3],r,o,h),l+=6;break;case E.curveTo2:a=r,n=o,i.bezierCurveTo(r,o,e[l],e[l+1],e[l+2],e[l+3]),s.updateCurvePathMinMax(g,a,n,r,o,e[l],e[l+1],e[l+2],e[l+3],h),r=e[l+2],o=e[l+3],l+=4;break;case E.curveTo3:a=r,n=o,r=e[l+2],o=e[l+3],i.bezierCurveTo(e[l],e[l+1],r,o,r,o),s.updateCurvePathMinMax(g,a,n,e[l],e[l+1],r,o,r,o,h),l+=4;break;case E.closePath:i.closePath()}c&&s.updateScalingPathMinMax(g,h),s.setCurrentPoint(r,o)}closePath(){this.ctx.closePath()}stroke(t=!0){const e=this.ctx,A=this.current.strokeColor;e.globalAlpha=this.current.strokeAlpha,this.contentVisible&&("object"==typeof A&&A?.getPattern?(e.save(),e.strokeStyle=A.getPattern(e,this,ft(e),Zt),this.rescaleAndStroke(!1),e.restore()):this.rescaleAndStroke(!0)),t&&this.consumePath(this.current.getClippedPathBoundingBox()),e.globalAlpha=this.current.fillAlpha}closeStroke(){this.closePath(),this.stroke()}fill(t=!0){const e=this.ctx,A=this.current.fillColor;let i=!1;this.current.patternFill&&(e.save(),e.fillStyle=A.getPattern(e,this,ft(e),Wt),i=!0);const s=this.current.getClippedPathBoundingBox();this.contentVisible&&null!==s&&(this.pendingEOFill?(e.fill("evenodd"),this.pendingEOFill=!1):e.fill()),i&&e.restore(),t&&this.consumePath(s)}eoFill(){this.pendingEOFill=!0,this.fill()}fillStroke(){this.fill(!1),this.stroke(!1),this.consumePath()}eoFillStroke(){this.pendingEOFill=!0,this.fillStroke()}closeFillStroke(){this.closePath(),this.fillStroke()}closeEOFillStroke(){this.pendingEOFill=!0,this.closePath(),this.fillStroke()}endPath(){this.consumePath()}clip(){this.pendingClip=de}eoClip(){this.pendingClip=ue}beginText(){this.current.textMatrix=g,this.current.textMatrixScale=1,this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0}endText(){const t=this.pendingTextPaths,e=this.ctx;if(void 0!==t){e.save(),e.beginPath();for(const A of t)e.setTransform(...A.transform),e.translate(A.x,A.y),A.addToPath(e,A.fontSize);e.restore(),e.clip(),e.beginPath(),delete this.pendingTextPaths}else e.beginPath()}setCharSpacing(t){this.current.charSpacing=t}setWordSpacing(t){this.current.wordSpacing=t}setHScale(t){this.current.textHScale=t/100}setLeading(t){this.current.leading=-t}setFont(t,e){const A=this.commonObjs.get(t),i=this.current;if(!A)throw new Error(`Can't find font for ${t}`);if(i.fontMatrix=A.fontMatrix||c,0!==i.fontMatrix[0]&&0!==i.fontMatrix[3]||b("Invalid font matrix for font "+t),e<0?(e=-e,i.fontDirection=-1):i.fontDirection=1,this.current.font=A,this.current.fontSize=e,A.isType3Font)return;const s=A.loadedName||"sans-serif",a=A.systemFontInfo?.css||`"${s}", ${A.fallbackName}`;let n="normal";A.black?n="900":A.bold&&(n="bold");const r=A.italic?"italic":"normal";let o=e;e<16?o=16:e>100&&(o=100),this.current.fontSizeScale=e/o,this.ctx.font=`${r} ${n} ${o}px ${a}`}setTextRenderingMode(t){this.current.textRenderingMode=t}setTextRise(t){this.current.textRise=t}moveText(t,e){this.current.x=this.current.lineX+=t,this.current.y=this.current.lineY+=e}setLeadingMoveText(t,e){this.setLeading(-e),this.moveText(t,e)}setTextMatrix(t,e,A,i,s,a){this.current.textMatrix=[t,e,A,i,s,a],this.current.textMatrixScale=Math.hypot(t,e),this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0}nextLine(){this.moveText(0,this.current.leading)}paintChar(t,e,A,i){const s=this.ctx,a=this.current,n=a.font,r=a.textRenderingMode,o=a.fontSize/a.fontSizeScale,g=3&r,c=!!(4&r),h=a.patternFill&&!n.missingFile;let l;(n.disableFontFace||c||h)&&(l=n.getPathGenerator(this.commonObjs,t)),n.disableFontFace||h?(s.save(),s.translate(e,A),s.beginPath(),l(s,o),i&&s.setTransform(...i),0!==g&&2!==g||s.fill(),1!==g&&2!==g||s.stroke(),s.restore()):(0!==g&&2!==g||s.fillText(t,e,A),1!==g&&2!==g||s.strokeText(t,e,A)),c&&(this.pendingTextPaths||=[]).push({transform:Et(s),x:e,y:A,fontSize:o,addToPath:l})}get isFontSubpixelAAEnabled(){const{context:t}=this.cachedCanvases.getCanvas("isFontSubpixelAAEnabled",10,10);t.scale(1.5,1),t.fillText("I",0,10);const e=t.getImageData(0,0,10,10).data;let A=!1;for(let t=3;t<e.length;t+=4)if(e[t]>0&&e[t]<255){A=!0;break}return F(this,"isFontSubpixelAAEnabled",A)}showText(t){const e=this.current,A=e.font;if(A.isType3Font)return this.showType3Text(t);const i=e.fontSize;if(0===i)return;const s=this.ctx,a=e.fontSizeScale,n=e.charSpacing,r=e.wordSpacing,o=e.fontDirection,g=e.textHScale*o,c=t.length,h=A.vertical,l=h?1:-1,I=A.defaultVMetrics,C=i*e.fontMatrix[0],B=0===e.textRenderingMode&&!A.disableFontFace&&!e.patternFill;let d;if(s.save(),s.transform(...e.textMatrix),s.translate(e.x,e.y+e.textRise),o>0?s.scale(g,-1):s.scale(g,1),e.patternFill){s.save();const t=e.fillColor.getPattern(s,this,ft(s),Wt);d=Et(s),s.restore(),s.fillStyle=t}let u=e.lineWidth;const Q=e.textMatrixScale;if(0===Q||0===u){const t=3&e.textRenderingMode;1!==t&&2!==t||(u=this.getSinglePixelWidth())}else u/=Q;if(1!==a&&(s.scale(a,a),u/=a),s.lineWidth=u,A.isInvalidPDFjsFont){const A=[];let i=0;for(const e of t)A.push(e.unicode),i+=e.width;return s.fillText(A.join(""),0,0),e.x+=i*C*g,s.restore(),void this.compose()}let E,f=0;for(E=0;E<c;++E){const e=t[E];if("number"==typeof e){f+=l*e*i/1e3;continue}let g=!1;const c=(e.isSpace?r:0)+n,u=e.fontChar,Q=e.accent;let p,m,y=e.width;if(h){const t=e.vmetric||I,A=-(e.vmetric?t[1]:.5*y)*C,i=t[2]*C;y=t?-t[0]:y,p=A/a,m=(f+i)/a}else p=f/a,m=0;if(A.remeasure&&y>0){const t=1e3*s.measureText(u).width/i*a;if(y<t&&this.isFontSubpixelAAEnabled){const e=y/t;g=!0,s.save(),s.scale(e,1),p/=e}else y!==t&&(p+=(y-t)/2e3*i/a)}if(this.contentVisible&&(e.isInFont||A.missingFile))if(B&&!Q)s.fillText(u,p,m);else if(this.paintChar(u,p,m,d),Q){const t=p+i*Q.offset.x/a,e=m-i*Q.offset.y/a;this.paintChar(Q.fontChar,t,e,d)}f+=h?y*C-c*o:y*C+c*o,g&&s.restore()}h?e.y-=f:e.x+=f*g,s.restore(),this.compose()}showType3Text(t){const e=this.ctx,A=this.current,i=A.font,s=A.fontSize,a=A.fontDirection,n=i.vertical?1:-1,r=A.charSpacing,o=A.wordSpacing,g=A.textHScale*a,h=A.fontMatrix||c,l=t.length;let I,C,B,d;if(3!==A.textRenderingMode&&0!==s){for(this._cachedScaleForStroking[0]=-1,this._cachedGetSinglePixelWidth=null,e.save(),e.transform(...A.textMatrix),e.translate(A.x,A.y),e.scale(g,a),I=0;I<l;++I){if(C=t[I],"number"==typeof C){d=n*C*s/1e3,this.ctx.translate(d,0),A.x+=d*g;continue}const a=(C.isSpace?o:0)+r,c=i.charProcOperatorList[C.operatorListId];c?(this.contentVisible&&(this.processingType3=C,this.save(),e.scale(s,s),e.transform(...h),this.executeOperatorList(c),this.restore()),B=q.applyTransform([C.width,0],h)[0]*s+a,e.translate(B,0),A.x+=B*g):b(`Type3 character "${C.operatorListId}" is not available.`)}e.restore(),this.processingType3=null}}setCharWidth(t,e){}setCharWidthAndBounds(t,e,A,i,s,a){this.ctx.rect(A,i,s-A,a-i),this.ctx.clip(),this.endPath()}getColorN_Pattern(t){let e;if("TilingPattern"===t[0]){const A=t[1],i=this.baseTransform||Et(this.ctx),s={createCanvasGraphics:t=>new Qe(t,this.commonObjs,this.objs,this.canvasFactory,this.filterFactory,{optionalContentConfig:this.optionalContentConfig,markedContentStack:this.markedContentStack})};e=new ie(t,A,this.ctx,s,i)}else e=this._getPattern(t[1],t[2]);return e}setStrokeColorN(){this.current.strokeColor=this.getColorN_Pattern(arguments)}setFillColorN(){this.current.fillColor=this.getColorN_Pattern(arguments),this.current.patternFill=!0}setStrokeRGBColor(t,e,A){const i=q.makeHexColor(t,e,A);this.ctx.strokeStyle=i,this.current.strokeColor=i}setFillRGBColor(t,e,A){const i=q.makeHexColor(t,e,A);this.ctx.fillStyle=i,this.current.fillColor=i,this.current.patternFill=!1}_getPattern(t,e=null){let A;return this.cachedPatterns.has(t)?A=this.cachedPatterns.get(t):(A=function(t){switch(t[0]){case"RadialAxial":return new zt(t);case"Mesh":return new ee(t);case"Dummy":return new Ae}throw new Error(`Unknown IR type: ${t[0]}`)}(this.getObject(t)),this.cachedPatterns.set(t,A)),e&&(A.matrix=e),A}shadingFill(t){if(!this.contentVisible)return;const e=this.ctx;this.save();const A=this._getPattern(t);e.fillStyle=A.getPattern(e,this,ft(e),jt);const i=ft(e);if(i){const{width:t,height:A}=e.canvas,[s,a,n,r]=q.getAxialAlignedBoundingBox([0,0,t,A],i);this.ctx.fillRect(s,a,n-s,r-a)}else this.ctx.fillRect(-1e10,-1e10,2e10,2e10);this.compose(this.current.getClippedPathBoundingBox()),this.restore()}beginInlineImage(){D("Should not call beginInlineImage")}beginImageData(){D("Should not call beginImageData")}paintFormXObjectBegin(t,e){if(this.contentVisible&&(this.save(),this.baseTransformStack.push(this.baseTransform),t&&this.transform(...t),this.baseTransform=Et(this.ctx),e)){const t=e[2]-e[0],A=e[3]-e[1];this.ctx.rect(e[0],e[1],t,A),this.current.updateRectMinMax(Et(this.ctx),e),this.clip(),this.endPath()}}paintFormXObjectEnd(){this.contentVisible&&(this.restore(),this.baseTransform=this.baseTransformStack.pop())}beginGroup(t){if(!this.contentVisible)return;this.save(),this.inSMaskMode&&(this.endSMaskMode(),this.current.activeSMask=null);const e=this.ctx;t.isolated||w("TODO: Support non-isolated groups."),t.knockout&&b("Knockout groups not supported.");const A=Et(e);if(t.matrix&&e.transform(...t.matrix),!t.bbox)throw new Error("Bounding box is required.");let i=q.getAxialAlignedBoundingBox(t.bbox,Et(e));const s=[0,0,e.canvas.width,e.canvas.height];i=q.intersect(i,s)||[0,0,0,0];const a=Math.floor(i[0]),n=Math.floor(i[1]),r=Math.max(Math.ceil(i[2])-a,1),o=Math.max(Math.ceil(i[3])-n,1);this.current.startNewPathAndClipBox([0,0,r,o]);let g="groupAt"+this.groupLevel;t.smask&&(g+="_smask_"+this.smaskCounter++%2);const c=this.cachedCanvases.getCanvas(g,r,o),h=c.context;h.translate(-a,-n),h.transform(...A),t.smask?this.smaskStack.push({canvas:c.canvas,context:h,offsetX:a,offsetY:n,subtype:t.smask.subtype,backdrop:t.smask.backdrop,transferMap:t.smask.transferMap||null,startTransformInverse:null}):(e.setTransform(1,0,0,1,0,0),e.translate(a,n),e.save()),he(e,h),this.ctx=h,this.setGState([["BM","source-over"],["ca",1],["CA",1]]),this.groupStack.push(e),this.groupLevel++}endGroup(t){if(!this.contentVisible)return;this.groupLevel--;const e=this.ctx,A=this.groupStack.pop();if(this.ctx=A,this.ctx.imageSmoothingEnabled=!1,t.smask)this.tempSMask=this.smaskStack.pop(),this.restore();else{this.ctx.restore();const t=Et(this.ctx);this.restore(),this.ctx.save(),this.ctx.setTransform(...t);const A=q.getAxialAlignedBoundingBox([0,0,e.canvas.width,e.canvas.height],t);this.ctx.drawImage(e.canvas,0,0),this.ctx.restore(),this.compose(A)}}beginAnnotation(t,e,A,i,s){if(this.#wA(),le(this.ctx),this.ctx.save(),this.save(),this.baseTransform&&this.ctx.setTransform(...this.baseTransform),e){const i=e[2]-e[0],a=e[3]-e[1];if(s&&this.annotationCanvasMap){(A=A.slice())[4]-=e[0],A[5]-=e[1],(e=e.slice())[0]=e[1]=0,e[2]=i,e[3]=a;const[s,n]=q.singularValueDecompose2dScale(Et(this.ctx)),{viewportScale:r}=this,o=Math.ceil(i*this.outputScaleX*r),g=Math.ceil(a*this.outputScaleY*r);this.annotationCanvas=this.canvasFactory.create(o,g);const{canvas:c,context:h}=this.annotationCanvas;this.annotationCanvasMap.set(t,c),this.annotationCanvas.savedCtx=this.ctx,this.ctx=h,this.ctx.save(),this.ctx.setTransform(s,0,0,-n,0,a*n),le(this.ctx)}else le(this.ctx),this.ctx.rect(e[0],e[1],i,a),this.ctx.clip(),this.endPath()}this.current=new oe(this.ctx.canvas.width,this.ctx.canvas.height),this.transform(...A),this.transform(...i)}endAnnotation(){this.annotationCanvas&&(this.ctx.restore(),this.#bA(),this.ctx=this.annotationCanvas.savedCtx,delete this.annotationCanvas.savedCtx,delete this.annotationCanvas)}paintImageMaskXObject(t){if(!this.contentVisible)return;const e=t.count;(t=this.getObject(t.data,t)).count=e;const A=this.ctx,i=this.processingType3;if(i&&(void 0===i.compiled&&(i.compiled=function(t){const{width:e,height:A}=t;if(e>1e3||A>1e3)return null;const i=new Uint8Array([0,2,4,0,1,0,5,4,8,10,0,8,0,2,1,0]),s=e+1;let a,n,r,o=new Uint8Array(s*(A+1));const g=e+7&-8;let c=new Uint8Array(g*A),h=0;for(const e of t.data){let t=128;for(;t>0;)c[h++]=e&t?0:255,t>>=1}let l=0;for(h=0,0!==c[h]&&(o[0]=1,++l),n=1;n<e;n++)c[h]!==c[h+1]&&(o[n]=c[h]?2:1,++l),h++;for(0!==c[h]&&(o[n]=2,++l),a=1;a<A;a++){h=a*g,r=a*s,c[h-g]!==c[h]&&(o[r]=c[h]?1:8,++l);let t=(c[h]?4:0)+(c[h-g]?8:0);for(n=1;n<e;n++)t=(t>>2)+(c[h+1]?4:0)+(c[h-g+1]?8:0),i[t]&&(o[r+n]=i[t],++l),h++;if(c[h-g]!==c[h]&&(o[r+n]=c[h]?2:4,++l),l>1e3)return null}for(h=g*(A-1),r=a*s,0!==c[h]&&(o[r]=8,++l),n=1;n<e;n++)c[h]!==c[h+1]&&(o[r+n]=c[h]?4:8,++l),h++;if(0!==c[h]&&(o[r+n]=4,++l),l>1e3)return null;const I=new Int32Array([0,s,-1,0,-s,0,0,0,1]),C=new Path2D;for(a=0;l&&a<=A;a++){let t=a*s;const A=t+e;for(;t<A&&!o[t];)t++;if(t===A)continue;C.moveTo(t%s,a);const i=t;let n=o[t];do{const e=I[n];do{t+=e}while(!o[t]);const A=o[t];5!==A&&10!==A?(n=A,o[t]=0):(n=A&51*n>>4,o[t]&=n>>2|n<<2),C.lineTo(t%s,t/s|0),o[t]||--l}while(i!==t);--a}return c=null,o=null,function(t){t.save(),t.scale(1/e,-1/A),t.translate(0,-A),t.fill(C),t.beginPath(),t.restore()}}(t)),i.compiled))return void i.compiled(A);const s=this._createMaskCanvas(t),a=s.canvas;A.save(),A.setTransform(1,0,0,1,0,0),A.drawImage(a,s.offsetX,s.offsetY),A.restore(),this.compose()}paintImageMaskXObjectRepeat(t,e,A=0,i=0,s,a){if(!this.contentVisible)return;t=this.getObject(t.data,t);const n=this.ctx;n.save();const r=Et(n);n.transform(e,A,i,s,0,0);const o=this._createMaskCanvas(t);n.setTransform(1,0,0,1,o.offsetX-r[4],o.offsetY-r[5]);for(let t=0,g=a.length;t<g;t+=2){const g=q.transform(r,[e,A,i,s,a[t],a[t+1]]),[c,h]=q.applyTransform([0,0],g);n.drawImage(o.canvas,c,h)}n.restore(),this.compose()}paintImageMaskXObjectGroup(t){if(!this.contentVisible)return;const e=this.ctx,A=this.current.fillColor,i=this.current.patternFill;for(const s of t){const{data:t,width:a,height:n,transform:r}=s,o=this.cachedCanvases.getCanvas("maskCanvas",a,n),g=o.context;g.save(),ce(g,this.getObject(t,s)),g.globalCompositeOperation="source-in",g.fillStyle=i?A.getPattern(g,this,ft(e),Wt):A,g.fillRect(0,0,a,n),g.restore(),e.save(),e.transform(...r),e.scale(1,-1),re(e,o.canvas,0,0,a,n,0,-1,1,1),e.restore()}this.compose()}paintImageXObject(t){if(!this.contentVisible)return;const e=this.getObject(t);e?this.paintInlineImageXObject(e):b("Dependent image isn't ready yet")}paintImageXObjectRepeat(t,e,A,i){if(!this.contentVisible)return;const s=this.getObject(t);if(!s)return void b("Dependent image isn't ready yet");const a=s.width,n=s.height,r=[];for(let t=0,s=i.length;t<s;t+=2)r.push({transform:[e,0,0,A,i[t],i[t+1]],x:0,y:0,w:a,h:n});this.paintInlineImageXObjectGroup(s,r)}applyTransferMapsToCanvas(t){return"none"!==this.current.transferMaps&&(t.filter=this.current.transferMaps,t.drawImage(t.canvas,0,0),t.filter="none"),t.canvas}applyTransferMapsToBitmap(t){if("none"===this.current.transferMaps)return t.bitmap;const{bitmap:e,width:A,height:i}=t,s=this.cachedCanvases.getCanvas("inlineImage",A,i),a=s.context;return a.filter=this.current.transferMaps,a.drawImage(e,0,0),a.filter="none",s.canvas}paintInlineImageXObject(t){if(!this.contentVisible)return;const e=t.width,A=t.height,i=this.ctx;if(this.save(),!o){const{filter:t}=i;"none"!==t&&""!==t&&(i.filter="none")}let s;if(i.scale(1/e,-1/A),t.bitmap)s=this.applyTransferMapsToBitmap(t);else if("function"==typeof HTMLElement&&t instanceof HTMLElement||!t.data)s=t;else{const i=this.cachedCanvases.getCanvas("inlineImage",e,A).context;ge(i,t),s=this.applyTransferMapsToCanvas(i)}const a=this._scaleImage(s,ft(i));i.imageSmoothingEnabled=Ie(Et(i),t.interpolate),re(i,a.img,0,0,a.paintWidth,a.paintHeight,0,-A,e,A),this.compose(),this.restore()}paintInlineImageXObjectGroup(t,e){if(!this.contentVisible)return;const A=this.ctx;let i;if(t.bitmap)i=t.bitmap;else{const e=t.width,A=t.height,s=this.cachedCanvases.getCanvas("inlineImage",e,A).context;ge(s,t),i=this.applyTransferMapsToCanvas(s)}for(const t of e)A.save(),A.transform(...t.transform),A.scale(1,-1),re(A,i,t.x,t.y,t.w,t.h,0,-1,1,1),A.restore();this.compose()}paintSolidColorImageMask(){this.contentVisible&&(this.ctx.fillRect(0,0,1,1),this.compose())}markPoint(t){}markPointProps(t,e){}beginMarkedContent(t){this.markedContentStack.push({visible:!0})}beginMarkedContentProps(t,e){"OC"===t?this.markedContentStack.push({visible:this.optionalContentConfig.isVisible(e)}):this.markedContentStack.push({visible:!0}),this.contentVisible=this.isContentVisible()}endMarkedContent(){this.markedContentStack.pop(),this.contentVisible=this.isContentVisible()}beginCompat(){}endCompat(){}consumePath(t){const e=this.current.isEmptyClip();this.pendingClip&&this.current.updateClipFromPath(),this.pendingClip||this.compose(t);const A=this.ctx;this.pendingClip&&(e||(this.pendingClip===ue?A.clip("evenodd"):A.clip()),this.pendingClip=null),this.current.startNewPathAndClipBox(this.current.clipBox),A.beginPath()}getSinglePixelWidth(){if(!this._cachedGetSinglePixelWidth){const t=Et(this.ctx);if(0===t[1]&&0===t[2])this._cachedGetSinglePixelWidth=1/Math.min(Math.abs(t[0]),Math.abs(t[3]));else{const e=Math.abs(t[0]*t[3]-t[2]*t[1]),A=Math.hypot(t[0],t[2]),i=Math.hypot(t[1],t[3]);this._cachedGetSinglePixelWidth=Math.max(A,i)/e}}return this._cachedGetSinglePixelWidth}getScaleForStroking(){if(-1===this._cachedScaleForStroking[0]){const{lineWidth:t}=this.current,{a:e,b:A,c:i,d:s}=this.ctx.getTransform();let a,n;if(0===A&&0===i){const A=Math.abs(e),i=Math.abs(s);if(A===i)if(0===t)a=n=1/A;else{const e=A*t;a=n=e<1?1/e:1}else if(0===t)a=1/A,n=1/i;else{const e=A*t,s=i*t;a=e<1?1/e:1,n=s<1?1/s:1}}else{const r=Math.abs(e*s-A*i),o=Math.hypot(e,A),g=Math.hypot(i,s);if(0===t)a=g/r,n=o/r;else{const e=t*r;a=g>e?g/e:1,n=o>e?o/e:1}}this._cachedScaleForStroking[0]=a,this._cachedScaleForStroking[1]=n}return this._cachedScaleForStroking}rescaleAndStroke(t){const{ctx:e}=this,{lineWidth:A}=this.current,[i,s]=this.getScaleForStroking();if(e.lineWidth=A||1,1===i&&1===s)return void e.stroke();const a=e.getLineDash();if(t&&e.save(),e.scale(i,s),a.length>0){const t=Math.max(i,s);e.setLineDash(a.map((e=>e/t))),e.lineDashOffset/=t}e.stroke(),t&&e.restore()}isContentVisible(){for(let t=this.markedContentStack.length-1;t>=0;t--)if(!this.markedContentStack[t].visible)return!1;return!0}}for(const t in E)void 0!==Qe.prototype[t]&&(Qe.prototype[E[t]]=Qe.prototype[t]);class Ee{static#DA=null;static#kA="";static get workerPort(){return this.#DA}static set workerPort(t){if(!("undefined"!=typeof Worker&&t instanceof Worker)&&null!==t)throw new Error("Invalid `workerPort` type.");this.#DA=t}static get workerSrc(){return this.#kA}static set workerSrc(t){if("string"!=typeof t)throw new Error("Invalid `workerSrc` type.");this.#kA=t}}function fe(t){switch(t instanceof Error||"object"==typeof t&&null!==t||D('wrapReason: Expected "reason" to be a (possibly cloned) Error.'),t.name){case"AbortException":return new U(t.message);case"MissingPDFException":return new G(t.message);case"PasswordException":return new x(t.message,t.code);case"UnexpectedResponseException":return new M(t.message,t.status);case"UnknownErrorException":return new N(t.message,t.details);default:return new N(t.message,t.toString())}}class pe{constructor(t,e,A){this.sourceName=t,this.targetName=e,this.comObj=A,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),this._onComObjOnMessage=t=>{const e=t.data;if(e.targetName!==this.sourceName)return;if(e.stream)return void this.#SA(e);if(e.callback){const t=e.callbackId,A=this.callbackCapabilities[t];if(!A)throw new Error(`Cannot resolve callback ${t}`);if(delete this.callbackCapabilities[t],1===e.callback)A.resolve(e.data);else{if(2!==e.callback)throw new Error("Unexpected callback case");A.reject(fe(e.reason))}return}const i=this.actionHandler[e.action];if(!i)throw new Error(`Unknown action from worker: ${e.action}`);if(e.callbackId){const t=this.sourceName,s=e.sourceName;new Promise((function(t){t(i(e.data))})).then((function(i){A.postMessage({sourceName:t,targetName:s,callback:1,callbackId:e.callbackId,data:i})}),(function(i){A.postMessage({sourceName:t,targetName:s,callback:2,callbackId:e.callbackId,reason:fe(i)})}))}else e.streamId?this.#FA(e):i(e.data)},A.addEventListener("message",this._onComObjOnMessage)}on(t,e){const A=this.actionHandler;if(A[t])throw new Error(`There is already an actionName called "${t}"`);A[t]=e}send(t,e,A){this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:t,data:e},A)}sendWithPromise(t,e,A){const i=this.callbackId++,s=Promise.withResolvers();this.callbackCapabilities[i]=s;try{this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:t,callbackId:i,data:e},A)}catch(t){s.reject(t)}return s.promise}sendWithStream(t,e,A,i){const s=this.streamId++,a=this.sourceName,n=this.targetName,r=this.comObj;return new ReadableStream({start:A=>{const o=Promise.withResolvers();return this.streamControllers[s]={controller:A,startCall:o,pullCall:null,cancelCall:null,isClosed:!1},r.postMessage({sourceName:a,targetName:n,action:t,streamId:s,data:e,desiredSize:A.desiredSize},i),o.promise},pull:t=>{const e=Promise.withResolvers();return this.streamControllers[s].pullCall=e,r.postMessage({sourceName:a,targetName:n,stream:6,streamId:s,desiredSize:t.desiredSize}),e.promise},cancel:t=>{k(t instanceof Error,"cancel must have a valid reason");const e=Promise.withResolvers();return this.streamControllers[s].cancelCall=e,this.streamControllers[s].isClosed=!0,r.postMessage({sourceName:a,targetName:n,stream:1,streamId:s,reason:fe(t)}),e.promise}},A)}#FA(t){const e=t.streamId,A=this.sourceName,i=t.sourceName,s=this.comObj,a=this,n=this.actionHandler[t.action],r={enqueue(t,a=1,n){if(this.isCancelled)return;const r=this.desiredSize;this.desiredSize-=a,r>0&&this.desiredSize<=0&&(this.sinkCapability=Promise.withResolvers(),this.ready=this.sinkCapability.promise),s.postMessage({sourceName:A,targetName:i,stream:4,streamId:e,chunk:t},n)},close(){this.isCancelled||(this.isCancelled=!0,s.postMessage({sourceName:A,targetName:i,stream:3,streamId:e}),delete a.streamSinks[e])},error(t){k(t instanceof Error,"error must have a valid reason"),this.isCancelled||(this.isCancelled=!0,s.postMessage({sourceName:A,targetName:i,stream:5,streamId:e,reason:fe(t)}))},sinkCapability:Promise.withResolvers(),onPull:null,onCancel:null,isCancelled:!1,desiredSize:t.desiredSize,ready:null};r.sinkCapability.resolve(),r.ready=r.sinkCapability.promise,this.streamSinks[e]=r,new Promise((function(e){e(n(t.data,r))})).then((function(){s.postMessage({sourceName:A,targetName:i,stream:8,streamId:e,success:!0})}),(function(t){s.postMessage({sourceName:A,targetName:i,stream:8,streamId:e,reason:fe(t)})}))}#SA(t){const e=t.streamId,A=this.sourceName,i=t.sourceName,s=this.comObj,a=this.streamControllers[e],n=this.streamSinks[e];switch(t.stream){case 8:t.success?a.startCall.resolve():a.startCall.reject(fe(t.reason));break;case 7:t.success?a.pullCall.resolve():a.pullCall.reject(fe(t.reason));break;case 6:if(!n){s.postMessage({sourceName:A,targetName:i,stream:7,streamId:e,success:!0});break}n.desiredSize<=0&&t.desiredSize>0&&n.sinkCapability.resolve(),n.desiredSize=t.desiredSize,new Promise((function(t){t(n.onPull?.())})).then((function(){s.postMessage({sourceName:A,targetName:i,stream:7,streamId:e,success:!0})}),(function(t){s.postMessage({sourceName:A,targetName:i,stream:7,streamId:e,reason:fe(t)})}));break;case 4:if(k(a,"enqueue should have stream controller"),a.isClosed)break;a.controller.enqueue(t.chunk);break;case 3:if(k(a,"close should have stream controller"),a.isClosed)break;a.isClosed=!0,a.controller.close(),this.#RA(a,e);break;case 5:k(a,"error should have stream controller"),a.controller.error(fe(t.reason)),this.#RA(a,e);break;case 2:t.success?a.cancelCall.resolve():a.cancelCall.reject(fe(t.reason)),this.#RA(a,e);break;case 1:if(!n)break;new Promise((function(e){e(n.onCancel?.(fe(t.reason)))})).then((function(){s.postMessage({sourceName:A,targetName:i,stream:2,streamId:e,success:!0})}),(function(t){s.postMessage({sourceName:A,targetName:i,stream:2,streamId:e,reason:fe(t)})})),n.sinkCapability.reject(fe(t.reason)),n.isCancelled=!0,delete this.streamSinks[e];break;default:throw new Error("Unexpected stream case")}}async#RA(t,e){await Promise.allSettled([t.startCall?.promise,t.pullCall?.promise,t.cancelCall?.promise]),delete this.streamControllers[e]}destroy(){this.comObj.removeEventListener("message",this._onComObjOnMessage)}}class me{#xA;#NA;constructor({parsedData:t,rawData:e}){this.#xA=t,this.#NA=e}getRaw(){return this.#NA}get(t){return this.#xA.get(t)??null}getAll(){return Y(this.#xA)}has(t){return this.#xA.has(t)}}const ye=Symbol("INTERNAL");class we{#vA=!1;#GA=!1;#MA=!1;#LA=!0;constructor(t,{name:e,intent:A,usage:i}){this.#vA=!!(2&t),this.#GA=!!(4&t),this.name=e,this.intent=A,this.usage=i}get visible(){if(this.#MA)return this.#LA;if(!this.#LA)return!1;const{print:t,view:e}=this.usage;return this.#vA?"OFF"!==e?.viewState:!this.#GA||"OFF"!==t?.printState}_setVisible(t,e,A=!1){t!==ye&&D("Internal method `_setVisible` called."),this.#MA=A,this.#LA=e}}class be{#UA=null;#HA=new Map;#JA=null;#YA=null;constructor(t,e=2){if(this.renderingIntent=e,this.name=null,this.creator=null,null!==t){this.name=t.name,this.creator=t.creator,this.#YA=t.order;for(const A of t.groups)this.#HA.set(A.id,new we(e,A));if("OFF"===t.baseState)for(const t of this.#HA.values())t._setVisible(ye,!1);for(const e of t.on)this.#HA.get(e)._setVisible(ye,!0);for(const e of t.off)this.#HA.get(e)._setVisible(ye,!1);this.#JA=this.getHash()}}#TA(t){const e=t.length;if(e<2)return!0;const A=t[0];for(let i=1;i<e;i++){const e=t[i];let s;if(Array.isArray(e))s=this.#TA(e);else{if(!this.#HA.has(e))return b(`Optional content group not found: ${e}`),!0;s=this.#HA.get(e).visible}switch(A){case"And":if(!s)return!1;break;case"Or":if(s)return!0;break;case"Not":return!s;default:return!0}}return"And"===A}isVisible(t){if(0===this.#HA.size)return!0;if(!t)return w("Optional content group not defined."),!0;if("OCG"===t.type)return this.#HA.has(t.id)?this.#HA.get(t.id).visible:(b(`Optional content group not found: ${t.id}`),!0);if("OCMD"===t.type){if(t.expression)return this.#TA(t.expression);if(!t.policy||"AnyOn"===t.policy){for(const e of t.ids){if(!this.#HA.has(e))return b(`Optional content group not found: ${e}`),!0;if(this.#HA.get(e).visible)return!0}return!1}if("AllOn"===t.policy){for(const e of t.ids){if(!this.#HA.has(e))return b(`Optional content group not found: ${e}`),!0;if(!this.#HA.get(e).visible)return!1}return!0}if("AnyOff"===t.policy){for(const e of t.ids){if(!this.#HA.has(e))return b(`Optional content group not found: ${e}`),!0;if(!this.#HA.get(e).visible)return!0}return!1}if("AllOff"===t.policy){for(const e of t.ids){if(!this.#HA.has(e))return b(`Optional content group not found: ${e}`),!0;if(this.#HA.get(e).visible)return!1}return!0}return b(`Unknown optional content policy ${t.policy}.`),!0}return b(`Unknown group type ${t.type}.`),!0}setVisibility(t,e=!0){const A=this.#HA.get(t);A?(A._setVisible(ye,!!e,!0),this.#UA=null):b(`Optional content group not found: ${t}`)}setOCGState({state:t,preserveRB:e}){let A;for(const e of t){switch(e){case"ON":case"OFF":case"Toggle":A=e;continue}const t=this.#HA.get(e);if(t)switch(A){case"ON":t._setVisible(ye,!0);break;case"OFF":t._setVisible(ye,!1);break;case"Toggle":t._setVisible(ye,!t.visible)}}this.#UA=null}get hasInitialVisibility(){return null===this.#JA||this.getHash()===this.#JA}getOrder(){return this.#HA.size?this.#YA?this.#YA.slice():[...this.#HA.keys()]:null}getGroups(){return this.#HA.size>0?Y(this.#HA):null}getGroup(t){return this.#HA.get(t)||null}getHash(){if(null!==this.#UA)return this.#UA;const t=new Ut;for(const[e,A]of this.#HA)t.update(`${e}:${A.visible}`);return this.#UA=t.hexdigest()}}class De{constructor(t,{disableRange:e=!1,disableStream:A=!1}){k(t,'PDFDataTransportStream - missing required "pdfDataRangeTransport" argument.');const{length:i,initialData:s,progressiveDone:a,contentDispositionFilename:n}=t;if(this._queuedChunks=[],this._progressiveDone=a,this._contentDispositionFilename=n,s?.length>0){const t=s instanceof Uint8Array&&s.byteLength===s.buffer.byteLength?s.buffer:new Uint8Array(s).buffer;this._queuedChunks.push(t)}this._pdfDataRangeTransport=t,this._isStreamingSupported=!A,this._isRangeSupported=!e,this._contentLength=i,this._fullRequestReader=null,this._rangeReaders=[],t.addRangeListener(((t,e)=>{this._onReceiveData({begin:t,chunk:e})})),t.addProgressListener(((t,e)=>{this._onProgress({loaded:t,total:e})})),t.addProgressiveReadListener((t=>{this._onReceiveData({chunk:t})})),t.addProgressiveDoneListener((()=>{this._onProgressiveDone()})),t.transportReady()}_onReceiveData({begin:t,chunk:e}){const A=e instanceof Uint8Array&&e.byteLength===e.buffer.byteLength?e.buffer:new Uint8Array(e).buffer;void 0===t?this._fullRequestReader?this._fullRequestReader._enqueue(A):this._queuedChunks.push(A):k(this._rangeReaders.some((function(e){return e._begin===t&&(e._enqueue(A),!0)})),"_onReceiveData - no `PDFDataTransportStreamRangeReader` instance found.")}get _progressiveDataLength(){return this._fullRequestReader?._loaded??0}_onProgress(t){void 0===t.total?this._rangeReaders[0]?.onProgress?.({loaded:t.loaded}):this._fullRequestReader?.onProgress?.({loaded:t.loaded,total:t.total})}_onProgressiveDone(){this._fullRequestReader?.progressiveDone(),this._progressiveDone=!0}_removeRangeReader(t){const e=this._rangeReaders.indexOf(t);e>=0&&this._rangeReaders.splice(e,1)}getFullReader(){k(!this._fullRequestReader,"PDFDataTransportStream.getFullReader can only be called once.");const t=this._queuedChunks;return this._queuedChunks=null,new ke(this,t,this._progressiveDone,this._contentDispositionFilename)}getRangeReader(t,e){if(e<=this._progressiveDataLength)return null;const A=new Se(this,t,e);return this._pdfDataRangeTransport.requestDataRange(t,e),this._rangeReaders.push(A),A}cancelAllRequests(t){this._fullRequestReader?.cancel(t);for(const e of this._rangeReaders.slice(0))e.cancel(t);this._pdfDataRangeTransport.abort()}}class ke{constructor(t,e,A=!1,i=null){this._stream=t,this._done=A||!1,this._filename=ot(i)?i:null,this._queuedChunks=e||[],this._loaded=0;for(const t of this._queuedChunks)this._loaded+=t.byteLength;this._requests=[],this._headersReady=Promise.resolve(),t._fullRequestReader=this,this.onProgress=null}_enqueue(t){this._done||(this._requests.length>0?this._requests.shift().resolve({value:t,done:!1}):this._queuedChunks.push(t),this._loaded+=t.byteLength)}get headersReady(){return this._headersReady}get filename(){return this._filename}get isRangeSupported(){return this._stream._isRangeSupported}get isStreamingSupported(){return this._stream._isStreamingSupported}get contentLength(){return this._stream._contentLength}async read(){if(this._queuedChunks.length>0)return{value:this._queuedChunks.shift(),done:!1};if(this._done)return{value:void 0,done:!0};const t=Promise.withResolvers();return this._requests.push(t),t.promise}cancel(t){this._done=!0;for(const t of this._requests)t.resolve({value:void 0,done:!0});this._requests.length=0}progressiveDone(){this._done||(this._done=!0)}}class Se{constructor(t,e,A){this._stream=t,this._begin=e,this._end=A,this._queuedChunk=null,this._requests=[],this._done=!1,this.onProgress=null}_enqueue(t){if(!this._done){if(0===this._requests.length)this._queuedChunk=t;else{this._requests.shift().resolve({value:t,done:!1});for(const t of this._requests)t.resolve({value:void 0,done:!0});this._requests.length=0}this._done=!0,this._stream._removeRangeReader(this)}}get isStreamingSupported(){return!1}async read(){if(this._queuedChunk){const t=this._queuedChunk;return this._queuedChunk=null,{value:t,done:!1}}if(this._done)return{value:void 0,done:!0};const t=Promise.withResolvers();return this._requests.push(t),t.promise}cancel(t){this._done=!0;for(const t of this._requests)t.resolve({value:void 0,done:!0});this._requests.length=0,this._stream._removeRangeReader(this)}}function Fe({getResponseHeader:t,isHttp:e,rangeChunkSize:A,disableRange:i}){const s={allowRangeRequests:!1,suggestedLength:void 0},a=parseInt(t("Content-Length"),10);return Number.isInteger(a)?(s.suggestedLength=a,a<=2*A||i||!e||"bytes"!==t("Accept-Ranges")||"identity"!==(t("Content-Encoding")||"identity")||(s.allowRangeRequests=!0),s):s}function Re(t){const e=t("Content-Disposition");if(e){let t=function(t){let e=!0,A=i("filename\\*","i").exec(t);if(A){A=A[1];let t=n(A);return t=unescape(t),t=r(t),t=o(t),a(t)}if(A=function(t){const e=[];let A;const s=i("filename\\*((?!0\\d)\\d+)(\\*?)","ig");for(;null!==(A=s.exec(t));){let[,t,i,s]=A;if(t=parseInt(t,10),t in e){if(0===t)break}else e[t]=[i,s]}const a=[];for(let t=0;t<e.length&&t in e;++t){let[A,i]=e[t];i=n(i),A&&(i=unescape(i),0===t&&(i=r(i))),a.push(i)}return a.join("")}(t),A)return a(o(A));if(A=i("filename","i").exec(t),A){A=A[1];let t=n(A);return t=o(t),a(t)}function i(t,e){return new RegExp("(?:^|;)\\s*"+t+'\\s*=\\s*([^";\\s][^;\\s]*|"(?:[^"\\\\]|\\\\"?)+"?)',e)}function s(t,A){if(t){if(!/^[\x00-\xFF]+$/.test(A))return A;try{const i=new TextDecoder(t,{fatal:!0}),s=J(A);A=i.decode(s),e=!1}catch{}}return A}function a(t){return e&&/[\x80-\xff]/.test(t)&&(t=s("utf-8",t),e&&(t=s("iso-8859-1",t))),t}function n(t){if(t.startsWith('"')){const e=t.slice(1).split('\\"');for(let t=0;t<e.length;++t){const A=e[t].indexOf('"');-1!==A&&(e[t]=e[t].slice(0,A),e.length=t+1),e[t]=e[t].replaceAll(/\\(.)/g,"$1")}t=e.join('"')}return t}function r(t){const e=t.indexOf("'");return-1===e?t:s(t.slice(0,e),t.slice(e+1).replace(/^[^']*'/,""))}function o(t){return!t.startsWith("=?")||/[\x00-\x19\x80-\xff]/.test(t)?t:t.replaceAll(/=\?([\w-]*)\?([QqBb])\?((?:[^?]|\?(?!=))*)\?=/g,(function(t,e,A,i){if("q"===A||"Q"===A)return s(e,i=(i=i.replaceAll("_"," ")).replaceAll(/=([0-9a-fA-F]{2})/g,(function(t,e){return String.fromCharCode(parseInt(e,16))})));try{i=atob(i)}catch{}return s(e,i)}))}return""}(e);if(t.includes("%"))try{t=decodeURIComponent(t)}catch{}if(ot(t))return t}return null}function xe(t,e){return 404===t||0===t&&e.startsWith("file:")?new G('Missing PDF "'+e+'".'):new M(`Unexpected server response (${t}) while retrieving PDF "${e}".`,t)}function Ne(t){return 200===t||206===t}function ve(t,e,A){return{method:"GET",headers:t,signal:A.signal,mode:"cors",credentials:e?"include":"same-origin",redirect:"follow"}}function Ge(t){const e=new Headers;for(const A in t){const i=t[A];void 0!==i&&e.append(A,i)}return e}function Me(t){return t instanceof Uint8Array?t.buffer:t instanceof ArrayBuffer?t:(b(`getArrayBuffer - unexpected data format: ${t}`),new Uint8Array(t).buffer)}class Le{constructor(t){this.source=t,this.isHttp=/^https?:/i.test(t.url),this.httpHeaders=this.isHttp&&t.httpHeaders||{},this._fullRequestReader=null,this._rangeRequestReaders=[]}get _progressiveDataLength(){return this._fullRequestReader?._loaded??0}getFullReader(){return k(!this._fullRequestReader,"PDFFetchStream.getFullReader can only be called once."),this._fullRequestReader=new Ue(this),this._fullRequestReader}getRangeReader(t,e){if(e<=this._progressiveDataLength)return null;const A=new He(this,t,e);return this._rangeRequestReaders.push(A),A}cancelAllRequests(t){this._fullRequestReader?.cancel(t);for(const e of this._rangeRequestReaders.slice(0))e.cancel(t)}}class Ue{constructor(t){this._stream=t,this._reader=null,this._loaded=0,this._filename=null;const e=t.source;this._withCredentials=e.withCredentials||!1,this._contentLength=e.length,this._headersCapability=Promise.withResolvers(),this._disableRange=e.disableRange||!1,this._rangeChunkSize=e.rangeChunkSize,this._rangeChunkSize||this._disableRange||(this._disableRange=!0),this._abortController=new AbortController,this._isStreamingSupported=!e.disableStream,this._isRangeSupported=!e.disableRange,this._headers=Ge(this._stream.httpHeaders);const A=e.url;fetch(A,ve(this._headers,this._withCredentials,this._abortController)).then((t=>{if(!Ne(t.status))throw xe(t.status,A);this._reader=t.body.getReader(),this._headersCapability.resolve();const e=e=>t.headers.get(e),{allowRangeRequests:i,suggestedLength:s}=Fe({getResponseHeader:e,isHttp:this._stream.isHttp,rangeChunkSize:this._rangeChunkSize,disableRange:this._disableRange});this._isRangeSupported=i,this._contentLength=s||this._contentLength,this._filename=Re(e),!this._isStreamingSupported&&this._isRangeSupported&&this.cancel(new U("Streaming is disabled."))})).catch(this._headersCapability.reject),this.onProgress=null}get headersReady(){return this._headersCapability.promise}get filename(){return this._filename}get contentLength(){return this._contentLength}get isRangeSupported(){return this._isRangeSupported}get isStreamingSupported(){return this._isStreamingSupported}async read(){await this._headersCapability.promise;const{value:t,done:e}=await this._reader.read();return e?{value:t,done:e}:(this._loaded+=t.byteLength,this.onProgress?.({loaded:this._loaded,total:this._contentLength}),{value:Me(t),done:!1})}cancel(t){this._reader?.cancel(t),this._abortController.abort()}}class He{constructor(t,e,A){this._stream=t,this._reader=null,this._loaded=0;const i=t.source;this._withCredentials=i.withCredentials||!1,this._readCapability=Promise.withResolvers(),this._isStreamingSupported=!i.disableStream,this._abortController=new AbortController,this._headers=Ge(this._stream.httpHeaders),this._headers.append("Range",`bytes=${e}-${A-1}`);const s=i.url;fetch(s,ve(this._headers,this._withCredentials,this._abortController)).then((t=>{if(!Ne(t.status))throw xe(t.status,s);this._readCapability.resolve(),this._reader=t.body.getReader()})).catch(this._readCapability.reject),this.onProgress=null}get isStreamingSupported(){return this._isStreamingSupported}async read(){await this._readCapability.promise;const{value:t,done:e}=await this._reader.read();return e?{value:t,done:e}:(this._loaded+=t.byteLength,this.onProgress?.({loaded:this._loaded}),{value:Me(t),done:!1})}cancel(t){this._reader?.cancel(t),this._abortController.abort()}}class Je{constructor(t,e={}){this.url=t,this.isHttp=/^https?:/i.test(t),this.httpHeaders=this.isHttp&&e.httpHeaders||Object.create(null),this.withCredentials=e.withCredentials||!1,this.currXhrId=0,this.pendingRequests=Object.create(null)}requestRange(t,e,A){const i={begin:t,end:e};for(const t in A)i[t]=A[t];return this.request(i)}requestFull(t){return this.request(t)}request(t){const e=new XMLHttpRequest,A=this.currXhrId++,i=this.pendingRequests[A]={xhr:e};e.open("GET",this.url),e.withCredentials=this.withCredentials;for(const t in this.httpHeaders){const A=this.httpHeaders[t];void 0!==A&&e.setRequestHeader(t,A)}return this.isHttp&&"begin"in t&&"end"in t?(e.setRequestHeader("Range",`bytes=${t.begin}-${t.end-1}`),i.expectedStatus=206):i.expectedStatus=200,e.responseType="arraybuffer",t.onError&&(e.onerror=function(A){t.onError(e.status)}),e.onreadystatechange=this.onStateChange.bind(this,A),e.onprogress=this.onProgress.bind(this,A),i.onHeadersReceived=t.onHeadersReceived,i.onDone=t.onDone,i.onError=t.onError,i.onProgress=t.onProgress,e.send(null),A}onProgress(t,e){const A=this.pendingRequests[t];A&&A.onProgress?.(e)}onStateChange(t,e){const A=this.pendingRequests[t];if(!A)return;const i=A.xhr;if(i.readyState>=2&&A.onHeadersReceived&&(A.onHeadersReceived(),delete A.onHeadersReceived),4!==i.readyState)return;if(!(t in this.pendingRequests))return;if(delete this.pendingRequests[t],0===i.status&&this.isHttp)return void A.onError?.(i.status);const s=i.status||200;if((200!==s||206!==A.expectedStatus)&&s!==A.expectedStatus)return void A.onError?.(i.status);const a=function(t){const e=t.response;return"string"!=typeof e?e:J(e).buffer}(i);if(206===s){const t=i.getResponseHeader("Content-Range"),e=/bytes (\d+)-(\d+)\/(\d+)/.exec(t);A.onDone({begin:parseInt(e[1],10),chunk:a})}else a?A.onDone({begin:0,chunk:a}):A.onError?.(i.status)}getRequestXhr(t){return this.pendingRequests[t].xhr}isPendingRequest(t){return t in this.pendingRequests}abortRequest(t){const e=this.pendingRequests[t].xhr;delete this.pendingRequests[t],e.abort()}}class Ye{constructor(t){this._source=t,this._manager=new Je(t.url,{httpHeaders:t.httpHeaders,withCredentials:t.withCredentials}),this._rangeChunkSize=t.rangeChunkSize,this._fullRequestReader=null,this._rangeRequestReaders=[]}_onRangeRequestReaderClosed(t){const e=this._rangeRequestReaders.indexOf(t);e>=0&&this._rangeRequestReaders.splice(e,1)}getFullReader(){return k(!this._fullRequestReader,"PDFNetworkStream.getFullReader can only be called once."),this._fullRequestReader=new Te(this._manager,this._source),this._fullRequestReader}getRangeReader(t,e){const A=new Ke(this._manager,t,e);return A.onClosed=this._onRangeRequestReaderClosed.bind(this),this._rangeRequestReaders.push(A),A}cancelAllRequests(t){this._fullRequestReader?.cancel(t);for(const e of this._rangeRequestReaders.slice(0))e.cancel(t)}}class Te{constructor(t,e){this._manager=t;const A={onHeadersReceived:this._onHeadersReceived.bind(this),onDone:this._onDone.bind(this),onError:this._onError.bind(this),onProgress:this._onProgress.bind(this)};this._url=e.url,this._fullRequestId=t.requestFull(A),this._headersReceivedCapability=Promise.withResolvers(),this._disableRange=e.disableRange||!1,this._contentLength=e.length,this._rangeChunkSize=e.rangeChunkSize,this._rangeChunkSize||this._disableRange||(this._disableRange=!0),this._isStreamingSupported=!1,this._isRangeSupported=!1,this._cachedChunks=[],this._requests=[],this._done=!1,this._storedError=void 0,this._filename=null,this.onProgress=null}_onHeadersReceived(){const t=this._fullRequestId,e=this._manager.getRequestXhr(t),A=t=>e.getResponseHeader(t),{allowRangeRequests:i,suggestedLength:s}=Fe({getResponseHeader:A,isHttp:this._manager.isHttp,rangeChunkSize:this._rangeChunkSize,disableRange:this._disableRange});i&&(this._isRangeSupported=!0),this._contentLength=s||this._contentLength,this._filename=Re(A),this._isRangeSupported&&this._manager.abortRequest(t),this._headersReceivedCapability.resolve()}_onDone(t){if(t&&(this._requests.length>0?this._requests.shift().resolve({value:t.chunk,done:!1}):this._cachedChunks.push(t.chunk)),this._done=!0,!(this._cachedChunks.length>0)){for(const t of this._requests)t.resolve({value:void 0,done:!0});this._requests.length=0}}_onError(t){this._storedError=xe(t,this._url),this._headersReceivedCapability.reject(this._storedError);for(const t of this._requests)t.reject(this._storedError);this._requests.length=0,this._cachedChunks.length=0}_onProgress(t){this.onProgress?.({loaded:t.loaded,total:t.lengthComputable?t.total:this._contentLength})}get filename(){return this._filename}get isRangeSupported(){return this._isRangeSupported}get isStreamingSupported(){return this._isStreamingSupported}get contentLength(){return this._contentLength}get headersReady(){return this._headersReceivedCapability.promise}async read(){if(this._storedError)throw this._storedError;if(this._cachedChunks.length>0)return{value:this._cachedChunks.shift(),done:!1};if(this._done)return{value:void 0,done:!0};const t=Promise.withResolvers();return this._requests.push(t),t.promise}cancel(t){this._done=!0,this._headersReceivedCapability.reject(t);for(const t of this._requests)t.resolve({value:void 0,done:!0});this._requests.length=0,this._manager.isPendingRequest(this._fullRequestId)&&this._manager.abortRequest(this._fullRequestId),this._fullRequestReader=null}}class Ke{constructor(t,e,A){this._manager=t;const i={onDone:this._onDone.bind(this),onError:this._onError.bind(this),onProgress:this._onProgress.bind(this)};this._url=t.url,this._requestId=t.requestRange(e,A,i),this._requests=[],this._queuedChunk=null,this._done=!1,this._storedError=void 0,this.onProgress=null,this.onClosed=null}_close(){this.onClosed?.(this)}_onDone(t){const e=t.chunk;this._requests.length>0?this._requests.shift().resolve({value:e,done:!1}):this._queuedChunk=e,this._done=!0;for(const t of this._requests)t.resolve({value:void 0,done:!0});this._requests.length=0,this._close()}_onError(t){this._storedError=xe(t,this._url);for(const t of this._requests)t.reject(this._storedError);this._requests.length=0,this._queuedChunk=null}_onProgress(t){this.isStreamingSupported||this.onProgress?.({loaded:t.loaded})}get isStreamingSupported(){return!1}async read(){if(this._storedError)throw this._storedError;if(null!==this._queuedChunk){const t=this._queuedChunk;return this._queuedChunk=null,{value:t,done:!1}}if(this._done)return{value:void 0,done:!0};const t=Promise.withResolvers();return this._requests.push(t),t.promise}cancel(t){this._done=!0;for(const t of this._requests)t.resolve({value:void 0,done:!0});this._requests.length=0,this._manager.isPendingRequest(this._requestId)&&this._manager.abortRequest(this._requestId),this._close()}}const qe=/^file:\/\/\/[a-zA-Z]:\//;class Pe{constructor(t){this.source=t,this.url=function(t){const e=_t.get("url"),A=e.parse(t);return"file:"===A.protocol||A.host?A:/^[a-z]:[/\\]/i.test(t)?e.parse(`file:///${t}`):(A.host||(A.protocol="file:"),A)}(t.url),this.isHttp="http:"===this.url.protocol||"https:"===this.url.protocol,this.isFsUrl="file:"===this.url.protocol,this.httpHeaders=this.isHttp&&t.httpHeaders||{},this._fullRequestReader=null,this._rangeRequestReaders=[]}get _progressiveDataLength(){return this._fullRequestReader?._loaded??0}getFullReader(){return k(!this._fullRequestReader,"PDFNodeStream.getFullReader can only be called once."),this._fullRequestReader=this.isFsUrl?new Ve(this):new Ze(this),this._fullRequestReader}getRangeReader(t,e){if(e<=this._progressiveDataLength)return null;const A=this.isFsUrl?new Xe(this,t,e):new je(this,t,e);return this._rangeRequestReaders.push(A),A}cancelAllRequests(t){this._fullRequestReader?.cancel(t);for(const e of this._rangeRequestReaders.slice(0))e.cancel(t)}}class _e{constructor(t){this._url=t.url,this._done=!1,this._storedError=null,this.onProgress=null;const e=t.source;this._contentLength=e.length,this._loaded=0,this._filename=null,this._disableRange=e.disableRange||!1,this._rangeChunkSize=e.rangeChunkSize,this._rangeChunkSize||this._disableRange||(this._disableRange=!0),this._isStreamingSupported=!e.disableStream,this._isRangeSupported=!e.disableRange,this._readableStream=null,this._readCapability=Promise.withResolvers(),this._headersCapability=Promise.withResolvers()}get headersReady(){return this._headersCapability.promise}get filename(){return this._filename}get contentLength(){return this._contentLength}get isRangeSupported(){return this._isRangeSupported}get isStreamingSupported(){return this._isStreamingSupported}async read(){if(await this._readCapability.promise,this._done)return{value:void 0,done:!0};if(this._storedError)throw this._storedError;const t=this._readableStream.read();return null===t?(this._readCapability=Promise.withResolvers(),this.read()):(this._loaded+=t.length,this.onProgress?.({loaded:this._loaded,total:this._contentLength}),{value:new Uint8Array(t).buffer,done:!1})}cancel(t){this._readableStream?this._readableStream.destroy(t):this._error(t)}_error(t){this._storedError=t,this._readCapability.resolve()}_setReadableStream(t){this._readableStream=t,t.on("readable",(()=>{this._readCapability.resolve()})),t.on("end",(()=>{t.destroy(),this._done=!0,this._readCapability.resolve()})),t.on("error",(t=>{this._error(t)})),!this._isStreamingSupported&&this._isRangeSupported&&this._error(new U("streaming is disabled")),this._storedError&&this._readableStream.destroy(this._storedError)}}class Oe{constructor(t){this._url=t.url,this._done=!1,this._storedError=null,this.onProgress=null,this._loaded=0,this._readableStream=null,this._readCapability=Promise.withResolvers();const e=t.source;this._isStreamingSupported=!e.disableStream}get isStreamingSupported(){return this._isStreamingSupported}async read(){if(await this._readCapability.promise,this._done)return{value:void 0,done:!0};if(this._storedError)throw this._storedError;const t=this._readableStream.read();return null===t?(this._readCapability=Promise.withResolvers(),this.read()):(this._loaded+=t.length,this.onProgress?.({loaded:this._loaded}),{value:new Uint8Array(t).buffer,done:!1})}cancel(t){this._readableStream?this._readableStream.destroy(t):this._error(t)}_error(t){this._storedError=t,this._readCapability.resolve()}_setReadableStream(t){this._readableStream=t,t.on("readable",(()=>{this._readCapability.resolve()})),t.on("end",(()=>{t.destroy(),this._done=!0,this._readCapability.resolve()})),t.on("error",(t=>{this._error(t)})),this._storedError&&this._readableStream.destroy(this._storedError)}}function We(t,e){return{protocol:t.protocol,auth:t.auth,host:t.hostname,port:t.port,path:t.path,method:"GET",headers:e}}class Ze extends _e{constructor(t){super(t);const e=e=>{if(404===e.statusCode){const t=new G(`Missing PDF "${this._url}".`);return this._storedError=t,void this._headersCapability.reject(t)}this._headersCapability.resolve(),this._setReadableStream(e);const A=t=>this._readableStream.headers[t.toLowerCase()],{allowRangeRequests:i,suggestedLength:s}=Fe({getResponseHeader:A,isHttp:t.isHttp,rangeChunkSize:this._rangeChunkSize,disableRange:this._disableRange});this._isRangeSupported=i,this._contentLength=s||this._contentLength,this._filename=Re(A)};if(this._request=null,"http:"===this._url.protocol){const A=_t.get("http");this._request=A.request(We(this._url,t.httpHeaders),e)}else{const A=_t.get("https");this._request=A.request(We(this._url,t.httpHeaders),e)}this._request.on("error",(t=>{this._storedError=t,this._headersCapability.reject(t)})),this._request.end()}}class je extends Oe{constructor(t,e,A){super(t),this._httpHeaders={};for(const e in t.httpHeaders){const A=t.httpHeaders[e];void 0!==A&&(this._httpHeaders[e]=A)}this._httpHeaders.Range=`bytes=${e}-${A-1}`;const i=t=>{if(404!==t.statusCode)this._setReadableStream(t);else{const t=new G(`Missing PDF "${this._url}".`);this._storedError=t}};if(this._request=null,"http:"===this._url.protocol){const t=_t.get("http");this._request=t.request(We(this._url,this._httpHeaders),i)}else{const t=_t.get("https");this._request=t.request(We(this._url,this._httpHeaders),i)}this._request.on("error",(t=>{this._storedError=t})),this._request.end()}}class Ve extends _e{constructor(t){super(t);let e=decodeURIComponent(this._url.path);qe.test(this._url.href)&&(e=e.replace(/^\//,""));const A=_t.get("fs");A.promises.lstat(e).then((t=>{this._contentLength=t.size,this._setReadableStream(A.createReadStream(e)),this._headersCapability.resolve()}),(t=>{"ENOENT"===t.code&&(t=new G(`Missing PDF "${e}".`)),this._storedError=t,this._headersCapability.reject(t)}))}}class Xe extends Oe{constructor(t,e,A){super(t);let i=decodeURIComponent(this._url.path);qe.test(this._url.href)&&(i=i.replace(/^\//,""));const s=_t.get("fs");this._setReadableStream(s.createReadStream(i,{start:e,end:A-1}))}}const ze=30;class $e{#KA=Promise.withResolvers();#ge=null;#qA=!1;#PA=!!globalThis.FontInspector?.enabled;#_A=null;#OA=null;#WA=0;#ZA=0;#jA=null;#VA=null;#XA=0;#zA=0;#$A=Object.create(null);#ti=[];#ei=null;#Ai=[];#ii=new WeakMap;#si=null;static#ai=new Map;static#ni=new Map;static#ri=null;static#oi=new Set;constructor({textContentSource:t,container:e,viewport:A}){if(t instanceof ReadableStream)this.#ei=t;else{if("object"!=typeof t)throw new Error('No "textContentSource" parameter specified.');this.#ei=new ReadableStream({start(e){e.enqueue(t),e.close()}})}this.#ge=this.#VA=e,this.#zA=A.scale*(globalThis.devicePixelRatio||1),this.#XA=A.rotation,this.#OA={prevFontSize:null,prevFontFamily:null,div:null,properties:null,ctx:null};const{pageWidth:i,pageHeight:s,pageX:a,pageY:n}=A.rawDims;this.#si=[1,0,0,-1,-a,n+s],this.#ZA=i,this.#WA=s,$e.#gi(),pt(e,A),this.#KA.promise.catch((()=>{})).then((()=>{$e.#oi.delete(this),this.#OA=null,this.#$A=null}))}render(){const t=()=>{this.#jA.read().then((({value:e,done:A})=>{A?this.#KA.resolve():(this.#_A??=e.lang,Object.assign(this.#$A,e.styles),this.#ci(e.items),t())}),this.#KA.reject)};return this.#jA=this.#ei.getReader(),$e.#oi.add(this),t(),this.#KA.promise}update({viewport:t,onBefore:e=null}){const A=t.scale*(globalThis.devicePixelRatio||1),i=t.rotation;if(i!==this.#XA&&(e?.(),this.#XA=i,pt(this.#VA,{rotation:i})),A!==this.#zA){e?.(),this.#zA=A;const t={prevFontSize:null,prevFontFamily:null,div:null,properties:null,ctx:$e.#hi(this.#_A)};for(const e of this.#Ai)t.properties=this.#ii.get(e),t.div=e,this.#li(t)}}cancel(){const t=new U("TextLayer task cancelled.");this.#jA?.cancel(t).catch((()=>{})),this.#jA=null,this.#KA.reject(t)}get textDivs(){return this.#Ai}get textContentItemsStr(){return this.#ti}#ci(t){if(this.#qA)return;this.#OA.ctx??=$e.#hi(this.#_A);const e=this.#Ai,A=this.#ti;for(const i of t){if(e.length>1e5)return b("Ignoring additional textDivs for performance reasons."),void(this.#qA=!0);if(void 0!==i.str)A.push(i.str),this.#Ii(i);else if("beginMarkedContentProps"===i.type||"beginMarkedContent"===i.type){const t=this.#ge;this.#ge=document.createElement("span"),this.#ge.classList.add("markedContent"),null!==i.id&&this.#ge.setAttribute("id",`${i.id}`),t.append(this.#ge)}else"endMarkedContent"===i.type&&(this.#ge=this.#ge.parentNode)}}#Ii(t){const e=document.createElement("span"),A={angle:0,canvasWidth:0,hasText:""!==t.str,hasEOL:t.hasEOL,fontSize:0};this.#Ai.push(e);const i=q.transform(this.#si,t.transform);let s=Math.atan2(i[1],i[0]);const a=this.#$A[t.fontName];a.vertical&&(s+=Math.PI/2);const n=this.#PA&&a.fontSubstitution||a.fontFamily,r=Math.hypot(i[2],i[3]),o=r*$e.#Ci(n,this.#_A);let g,c;0===s?(g=i[4],c=i[5]-o):(g=i[4]+o*Math.sin(s),c=i[5]-o*Math.cos(s));const h="calc(var(--scale-factor)*",l=e.style;this.#ge===this.#VA?(l.left=`${(100*g/this.#ZA).toFixed(2)}%`,l.top=`${(100*c/this.#WA).toFixed(2)}%`):(l.left=`${h}${g.toFixed(2)}px)`,l.top=`${h}${c.toFixed(2)}px)`),l.fontSize=`${h}${($e.#ri*r).toFixed(2)}px)`,l.fontFamily=n,A.fontSize=r,e.setAttribute("role","presentation"),e.textContent=t.str,e.dir=t.dir,this.#PA&&(e.dataset.fontName=a.fontSubstitutionLoadedName||t.fontName),0!==s&&(A.angle=s*(180/Math.PI));let I=!1;if(t.str.length>1)I=!0;else if(" "!==t.str&&t.transform[0]!==t.transform[3]){const e=Math.abs(t.transform[0]),A=Math.abs(t.transform[3]);e!==A&&Math.max(e,A)/Math.min(e,A)>1.5&&(I=!0)}if(I&&(A.canvasWidth=a.vertical?t.height:t.width),this.#ii.set(e,A),this.#OA.div=e,this.#OA.properties=A,this.#li(this.#OA),A.hasText&&this.#ge.append(e),A.hasEOL){const t=document.createElement("br");t.setAttribute("role","presentation"),this.#ge.append(t)}}#li(t){const{div:e,properties:A,ctx:i,prevFontSize:s,prevFontFamily:a}=t,{style:n}=e;let r="";if($e.#ri>1&&(r=`scale(${1/$e.#ri})`),0!==A.canvasWidth&&A.hasText){const{fontFamily:o}=n,{canvasWidth:g,fontSize:c}=A;s===c&&a===o||(i.font=`${c*this.#zA}px ${o}`,t.prevFontSize=c,t.prevFontFamily=o);const{width:h}=i.measureText(e.textContent);h>0&&(r=`scaleX(${g*this.#zA/h}) ${r}`)}0!==A.angle&&(r=`rotate(${A.angle}deg) ${r}`),r.length>0&&(n.transform=r)}static cleanup(){if(!(this.#oi.size>0)){this.#ai.clear();for(const{canvas:t}of this.#ni.values())t.remove();this.#ni.clear()}}static#hi(t=null){let e=this.#ni.get(t||="");if(!e){const A=document.createElement("canvas");A.className="hiddenCanvasElement",A.lang=t,document.body.append(A),e=A.getContext("2d",{alpha:!1,willReadFrequently:!0}),this.#ni.set(t,e)}return e}static#gi(){if(null!==this.#ri)return;const t=document.createElement("div");t.style.opacity=0,t.style.lineHeight=1,t.style.fontSize="1px",t.textContent="X",document.body.append(t),this.#ri=t.getBoundingClientRect().height,t.remove()}static#Ci(t,e){const A=this.#ai.get(t);if(A)return A;const i=this.#hi(e),s=i.font;i.canvas.width=i.canvas.height=ze,i.font=`30px ${t}`;const a=i.measureText("");let n=a.fontBoundingBoxAscent,r=Math.abs(a.fontBoundingBoxDescent);if(n){const e=n/(n+r);return this.#ai.set(t,e),i.canvas.width=i.canvas.height=0,i.font=s,e}i.strokeStyle="red",i.clearRect(0,0,ze,ze),i.strokeText("g",0,0);let o=i.getImageData(0,0,ze,ze).data;r=0;for(let t=o.length-1-3;t>=0;t-=4)if(o[t]>0){r=Math.ceil(t/4/ze);break}i.clearRect(0,0,ze,ze),i.strokeText("A",0,ze),o=i.getImageData(0,0,ze,ze).data,n=0;for(let t=0,e=o.length;t<e;t+=4)if(o[t]>0){n=ze-Math.floor(t/4/ze);break}i.canvas.width=i.canvas.height=0,i.font=s;const g=n?n/(n+r):.8;return this.#ai.set(t,g),g}}function tA(){Ct("`renderTextLayer`, please use `TextLayer` instead.");const{textContentSource:t,container:e,viewport:A,...i}=arguments[0],s=Object.keys(i);s.length>0&&b("Ignoring `renderTextLayer` parameters: "+s.join(", "));const a=new $e({textContentSource:t,container:e,viewport:A}),{textDivs:n,textContentItemsStr:r}=a;return{promise:a.render(),textDivs:n,textContentItemsStr:r}}function eA(){Ct("`updateTextLayer`, please use `TextLayer` instead.")}class AA{static textContent(t){const e=[],A={items:e,styles:Object.create(null)};return function t(A){if(!A)return;let i=null;const s=A.name;if("#text"===s)i=A.value;else{if(!AA.shouldBuildText(s))return;A?.attributes?.textContent?i=A.attributes.textContent:A.value&&(i=A.value)}if(null!==i&&e.push({str:i}),A.children)for(const e of A.children)t(e)}(t),A}static shouldBuildText(t){return!("textarea"===t||"input"===t||"option"===t||"select"===t)}}const iA=65536,sA=o?class extends j{_createCanvas(t,e){return _t.get("canvas").createCanvas(t,e)}}:class extends j{constructor({ownerDocument:t=globalThis.document,enableHWA:e=!1}={}){super({enableHWA:e}),this._document=t}_createCanvas(t,e){const A=this._document.createElement("canvas");return A.width=t,A.height=e,A}},aA=o?class extends V{_fetchData(t,e){return Ot(t).then((t=>({cMapData:t,compressionType:e})))}}:At,nA=o?class extends Z{}:class extends Z{#Bi;#di;#ui;#Qi;#Ei;#ct=0;constructor({docId:t,ownerDocument:e=globalThis.document}={}){super(),this.#ui=t,this.#Qi=e}get#lt(){return this.#Bi||=new Map}get#fi(){return this.#Ei||=new Map}get#pi(){if(!this.#di){const t=this.#Qi.createElement("div"),{style:e}=t;e.visibility="hidden",e.contain="strict",e.width=e.height=0,e.position="absolute",e.top=e.left=0,e.zIndex=-1;const A=this.#Qi.createElementNS($,"svg");A.setAttribute("width",0),A.setAttribute("height",0),this.#di=this.#Qi.createElementNS($,"defs"),t.append(A),A.append(this.#di),this.#Qi.body.append(t)}return this.#di}#mi(t){if(1===t.length){const e=t[0],A=new Array(256);for(let t=0;t<256;t++)A[t]=e[t]/255;const i=A.join(",");return[i,i,i]}const[e,A,i]=t,s=new Array(256),a=new Array(256),n=new Array(256);for(let t=0;t<256;t++)s[t]=e[t]/255,a[t]=A[t]/255,n[t]=i[t]/255;return[s.join(","),a.join(","),n.join(",")]}addFilter(t){if(!t)return"none";let e=this.#lt.get(t);if(e)return e;const[A,i,s]=this.#mi(t),a=1===t.length?A:`${A}${i}${s}`;if(e=this.#lt.get(a),e)return this.#lt.set(t,e),e;const n=`g_${this.#ui}_transfer_map_${this.#ct++}`,r=`url(#${n})`;this.#lt.set(t,r),this.#lt.set(a,r);const o=this.#yi(n);return this.#wi(A,i,s,o),r}addHCMFilter(t,e){const A=`${t}-${e}`,i="base";let s=this.#fi.get(i);if(s?.key===A)return s.url;if(s?(s.filter?.remove(),s.key=A,s.url="none",s.filter=null):(s={key:A,url:"none",filter:null},this.#fi.set(i,s)),!t||!e)return s.url;const a=this.#bi(t);t=q.makeHexColor(...a);const n=this.#bi(e);if(e=q.makeHexColor(...n),this.#pi.style.color="","#000000"===t&&"#ffffff"===e||t===e)return s.url;const r=new Array(256);for(let t=0;t<=255;t++){const e=t/255;r[t]=e<=.03928?e/12.92:((e+.055)/1.055)**2.4}const o=r.join(","),g=`g_${this.#ui}_hcm_filter`,c=s.filter=this.#yi(g);this.#wi(o,o,o,c),this.#Di(c);const h=(t,e)=>{const A=a[t]/255,i=n[t]/255,s=new Array(e+1);for(let t=0;t<=e;t++)s[t]=A+t/e*(i-A);return s.join(",")};return this.#wi(h(0,5),h(1,5),h(2,5),c),s.url=`url(#${g})`,s.url}addAlphaFilter(t){let e=this.#lt.get(t);if(e)return e;const[A]=this.#mi([t]),i=`alpha_${A}`;if(e=this.#lt.get(i),e)return this.#lt.set(t,e),e;const s=`g_${this.#ui}_alpha_map_${this.#ct++}`,a=`url(#${s})`;this.#lt.set(t,a),this.#lt.set(i,a);const n=this.#yi(s);return this.#ki(A,n),a}addLuminosityFilter(t){let e,A,i=this.#lt.get(t||"luminosity");if(i)return i;if(t?([e]=this.#mi([t]),A=`luminosity_${e}`):A="luminosity",i=this.#lt.get(A),i)return this.#lt.set(t,i),i;const s=`g_${this.#ui}_luminosity_map_${this.#ct++}`,a=`url(#${s})`;this.#lt.set(t,a),this.#lt.set(A,a);const n=this.#yi(s);return this.#Si(n),t&&this.#ki(e,n),a}addHighlightHCMFilter(t,e,A,i,s){const a=`${e}-${A}-${i}-${s}`;let n=this.#fi.get(t);if(n?.key===a)return n.url;if(n?(n.filter?.remove(),n.key=a,n.url="none",n.filter=null):(n={key:a,url:"none",filter:null},this.#fi.set(t,n)),!e||!A)return n.url;const[r,o]=[e,A].map(this.#bi.bind(this));let g=Math.round(.2126*r[0]+.7152*r[1]+.0722*r[2]),c=Math.round(.2126*o[0]+.7152*o[1]+.0722*o[2]),[h,l]=[i,s].map(this.#bi.bind(this));c<g&&([g,c,h,l]=[c,g,l,h]),this.#pi.style.color="";const I=(t,e,A)=>{const i=new Array(256),s=(c-g)/A,a=t/255,n=(e-t)/(255*A);let r=0;for(let t=0;t<=A;t++){const e=Math.round(g+t*s),A=a+t*n;for(let t=r;t<=e;t++)i[t]=A;r=e+1}for(let t=r;t<256;t++)i[t]=i[r-1];return i.join(",")},C=`g_${this.#ui}_hcm_${t}_filter`,B=n.filter=this.#yi(C);return this.#Di(B),this.#wi(I(h[0],l[0],5),I(h[1],l[1],5),I(h[2],l[2],5),B),n.url=`url(#${C})`,n.url}destroy(t=!1){t&&0!==this.#fi.size||(this.#di&&(this.#di.parentNode.parentNode.remove(),this.#di=null),this.#Bi&&(this.#Bi.clear(),this.#Bi=null),this.#ct=0)}#Si(t){const e=this.#Qi.createElementNS($,"feColorMatrix");e.setAttribute("type","matrix"),e.setAttribute("values","0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.3 0.59 0.11 0 0"),t.append(e)}#Di(t){const e=this.#Qi.createElementNS($,"feColorMatrix");e.setAttribute("type","matrix"),e.setAttribute("values","0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0 0 0 1 0"),t.append(e)}#yi(t){const e=this.#Qi.createElementNS($,"filter");return e.setAttribute("color-interpolation-filters","sRGB"),e.setAttribute("id",t),this.#pi.append(e),e}#Fi(t,e,A){const i=this.#Qi.createElementNS($,e);i.setAttribute("type","discrete"),i.setAttribute("tableValues",A),t.append(i)}#wi(t,e,A,i){const s=this.#Qi.createElementNS($,"feComponentTransfer");i.append(s),this.#Fi(s,"feFuncR",t),this.#Fi(s,"feFuncG",e),this.#Fi(s,"feFuncB",A)}#ki(t,e){const A=this.#Qi.createElementNS($,"feComponentTransfer");e.append(A),this.#Fi(A,"feFuncA",t)}#bi(t){return this.#pi.style.color=t,Qt(getComputedStyle(this.#pi).getPropertyValue("color"))}},rA=o?class extends X{_fetchData(t){return Ot(t)}}:it;function oA(t={}){"string"==typeof t||t instanceof URL?t={url:t}:(t instanceof ArrayBuffer||ArrayBuffer.isView(t))&&(t={data:t});const e=new cA,{docId:A}=e,i=t.url?function(t){if(t instanceof URL)return t.href;try{return new URL(t,window.location).href}catch{if(o&&"string"==typeof t)return t}throw new Error("Invalid PDF url data: either string or URL-object is expected in the url property.")}(t.url):null,s=t.data?function(t){if(o&&"undefined"!=typeof Buffer&&t instanceof Buffer)throw new Error("Please provide binary data as `Uint8Array`, rather than `Buffer`.");if(t instanceof Uint8Array&&t.byteLength===t.buffer.byteLength)return t;if("string"==typeof t)return J(t);if(t instanceof ArrayBuffer||ArrayBuffer.isView(t)||"object"==typeof t&&!isNaN(t?.length))return new Uint8Array(t);throw new Error("Invalid PDF binary data: either TypedArray, string, or array-like object is expected in the data property.")}(t.data):null,a=t.httpHeaders||null,n=!0===t.withCredentials,r=t.password??null,g=t.range instanceof hA?t.range:null,c=Number.isInteger(t.rangeChunkSize)&&t.rangeChunkSize>0?t.rangeChunkSize:iA;let h=t.worker instanceof dA?t.worker:null;const l=t.verbosity,I="string"!=typeof t.docBaseUrl||rt(t.docBaseUrl)?null:t.docBaseUrl,C="string"==typeof t.cMapUrl?t.cMapUrl:null,B=!1!==t.cMapPacked,d=t.CMapReaderFactory||aA,u="string"==typeof t.standardFontDataUrl?t.standardFontDataUrl:null,Q=t.StandardFontDataFactory||rA,E=!0!==t.stopAtErrors,f=Number.isInteger(t.maxImageSize)&&t.maxImageSize>-1?t.maxImageSize:-1,p=!1!==t.isEvalSupported,y="boolean"==typeof t.isOffscreenCanvasSupported?t.isOffscreenCanvasSupported:!o,w=Number.isInteger(t.canvasMaxAreaInBytes)?t.canvasMaxAreaInBytes:-1,b="boolean"==typeof t.disableFontFace?t.disableFontFace:o,D=!0===t.fontExtraProperties,k=!0===t.enableXfa,S=t.ownerDocument||globalThis.document,F=!0===t.disableRange,R=!0===t.disableStream,x=!0===t.disableAutoFetch,N=!0===t.pdfBug,v=!0===t.enableHWA,G=g?g.length:t.length??NaN,M="boolean"==typeof t.useSystemFonts?t.useSystemFonts:!o&&!b,L="boolean"==typeof t.useWorkerFetch?t.useWorkerFetch:d===At&&Q===it&&C&&u&&lt(C,document.baseURI)&&lt(u,document.baseURI),U=t.canvasFactory||new sA({ownerDocument:S,enableHWA:v}),H=t.filterFactory||new nA({docId:A,ownerDocument:S});m(l);const Y={canvasFactory:U,filterFactory:H};if(L||(Y.cMapReaderFactory=new d({baseUrl:C,isCompressed:B}),Y.standardFontDataFactory=new Q({baseUrl:u})),!h){const t={verbosity:l,port:Ee.workerPort};h=t.port?dA.fromPort(t):new dA(t),e._worker=h}const T={docId:A,apiVersion:"4.4.168",data:s,password:r,disableAutoFetch:x,rangeChunkSize:c,length:G,docBaseUrl:I,enableXfa:k,evaluatorOptions:{maxImageSize:f,disableFontFace:b,ignoreErrors:E,isEvalSupported:p,isOffscreenCanvasSupported:y,canvasMaxAreaInBytes:w,fontExtraProperties:D,useSystemFonts:M,cMapUrl:L?C:null,standardFontDataUrl:L?u:null}},K={disableFontFace:b,fontExtraProperties:D,ownerDocument:S,pdfBug:N,styleElement:null,loadingParams:{disableAutoFetch:x,enableXfa:k}};return h.promise.then((function(){if(e.destroyed)throw new Error("Loading aborted");if(h.destroyed)throw new Error("Worker was destroyed");const t=h.messageHandler.sendWithPromise("GetDocRequest",T,s?[s.buffer]:null);let r;if(g)r=new De(g,{disableRange:F,disableStream:R});else if(!s){if(!i)throw new Error("getDocument - no `url` parameter provided.");l={url:i,length:G,httpHeaders:a,withCredentials:n,rangeChunkSize:c,disableRange:F,disableStream:R},r=o?"undefined"!=typeof fetch&&"undefined"!=typeof Response&&"body"in Response.prototype&&lt(l.url)?new Le(l):new Pe(l):lt(l.url)?new Le(l):new Ye(l)}var l;return t.then((t=>{if(e.destroyed)throw new Error("Loading aborted");if(h.destroyed)throw new Error("Worker was destroyed");const i=new pe(A,t,h.port),s=new uA(i,e,r,K,Y);e._transport=s,i.send("Ready",null)}))})).catch(e._capability.reject),e}function gA(t){return"object"==typeof t&&Number.isInteger(t?.num)&&t.num>=0&&Number.isInteger(t?.gen)&&t.gen>=0}class cA{static#ui=0;constructor(){this._capability=Promise.withResolvers(),this._transport=null,this._worker=null,this.docId="d"+cA.#ui++,this.destroyed=!1,this.onPassword=null,this.onProgress=null}get promise(){return this._capability.promise}async destroy(){this.destroyed=!0;try{this._worker?.port&&(this._worker._pendingDestroy=!0),await(this._transport?.destroy())}catch(t){throw this._worker?.port&&delete this._worker._pendingDestroy,t}this._transport=null,this._worker&&(this._worker.destroy(),this._worker=null)}}class hA{constructor(t,e,A=!1,i=null){this.length=t,this.initialData=e,this.progressiveDone=A,this.contentDispositionFilename=i,this._rangeListeners=[],this._progressListeners=[],this._progressiveReadListeners=[],this._progressiveDoneListeners=[],this._readyCapability=Promise.withResolvers()}addRangeListener(t){this._rangeListeners.push(t)}addProgressListener(t){this._progressListeners.push(t)}addProgressiveReadListener(t){this._progressiveReadListeners.push(t)}addProgressiveDoneListener(t){this._progressiveDoneListeners.push(t)}onDataRange(t,e){for(const A of this._rangeListeners)A(t,e)}onDataProgress(t,e){this._readyCapability.promise.then((()=>{for(const A of this._progressListeners)A(t,e)}))}onDataProgressiveRead(t){this._readyCapability.promise.then((()=>{for(const e of this._progressiveReadListeners)e(t)}))}onDataProgressiveDone(){this._readyCapability.promise.then((()=>{for(const t of this._progressiveDoneListeners)t()}))}transportReady(){this._readyCapability.resolve()}requestDataRange(t,e){D("Abstract method PDFDataRangeTransport.requestDataRange")}abort(){}}class lA{constructor(t,e){this._pdfInfo=t,this._transport=e}get annotationStorage(){return this._transport.annotationStorage}get filterFactory(){return this._transport.filterFactory}get numPages(){return this._pdfInfo.numPages}get fingerprints(){return this._pdfInfo.fingerprints}get isPureXfa(){return F(this,"isPureXfa",!!this._transport._htmlForXfa)}get allXfaHtml(){return this._transport._htmlForXfa}getPage(t){return this._transport.getPage(t)}getPageIndex(t){return this._transport.getPageIndex(t)}getDestinations(){return this._transport.getDestinations()}getDestination(t){return this._transport.getDestination(t)}getPageLabels(){return this._transport.getPageLabels()}getPageLayout(){return this._transport.getPageLayout()}getPageMode(){return this._transport.getPageMode()}getViewerPreferences(){return this._transport.getViewerPreferences()}getOpenAction(){return this._transport.getOpenAction()}getAttachments(){return this._transport.getAttachments()}getJSActions(){return this._transport.getDocJSActions()}getOutline(){return this._transport.getOutline()}getOptionalContentConfig({intent:t="display"}={}){const{renderingIntent:e}=this._transport.getRenderingIntent(t);return this._transport.getOptionalContentConfig(e)}getPermissions(){return this._transport.getPermissions()}getMetadata(){return this._transport.getMetadata()}getMarkInfo(){return this._transport.getMarkInfo()}getData(){return this._transport.getData()}saveDocument(){return this._transport.saveDocument()}getDownloadInfo(){return this._transport.downloadInfoCapability.promise}cleanup(t=!1){return this._transport.startCleanup(t||this.isPureXfa)}destroy(){return this.loadingTask.destroy()}cachedPageNumber(t){return this._transport.cachedPageNumber(t)}get loadingParams(){return this._transport.loadingParams}get loadingTask(){return this._transport.loadingTask}getFieldObjects(){return this._transport.getFieldObjects()}hasJSActions(){return this._transport.hasJSActions()}getCalculationOrderIds(){return this._transport.getCalculationOrderIds()}}class IA{#Ri=null;#xi=!1;constructor(t,e,A,i=!1){this._pageIndex=t,this._pageInfo=e,this._transport=A,this._stats=i?new ht:null,this._pdfBug=i,this.commonObjs=A.commonObjs,this.objs=new EA,this._maybeCleanupAfterRender=!1,this._intentStates=new Map,this.destroyed=!1}get pageNumber(){return this._pageIndex+1}get rotate(){return this._pageInfo.rotate}get ref(){return this._pageInfo.ref}get userUnit(){return this._pageInfo.userUnit}get view(){return this._pageInfo.view}getViewport({scale:t,rotation:e=this.rotate,offsetX:A=0,offsetY:i=0,dontFlip:s=!1}={}){return new at({viewBox:this.view,scale:t,rotation:e,offsetX:A,offsetY:i,dontFlip:s})}getAnnotations({intent:t="display"}={}){const{renderingIntent:e}=this._transport.getRenderingIntent(t);return this._transport.getAnnotations(this._pageIndex,e)}getJSActions(){return this._transport.getPageJSActions(this._pageIndex)}get filterFactory(){return this._transport.filterFactory}get isPureXfa(){return F(this,"isPureXfa",!!this._transport._htmlForXfa)}async getXfa(){return this._transport._htmlForXfa?.children[this._pageIndex]||null}render({canvasContext:t,viewport:e,intent:A="display",annotationMode:i=l.ENABLE,transform:s=null,background:a=null,optionalContentConfigPromise:n=null,annotationCanvasMap:r=null,pageColors:o=null,printAnnotationStorage:g=null}){this._stats?.time("Overall");const c=this._transport.getRenderingIntent(A,i,g),{renderingIntent:h,cacheKey:I}=c;this.#xi=!1,this.#Ni(),n||=this._transport.getOptionalContentConfig(h);let C=this._intentStates.get(I);C||(C=Object.create(null),this._intentStates.set(I,C)),C.streamReaderCancelTimeout&&(clearTimeout(C.streamReaderCancelTimeout),C.streamReaderCancelTimeout=null);const B=!!(4&h);C.displayReadyCapability||(C.displayReadyCapability=Promise.withResolvers(),C.operatorList={fnArray:[],argsArray:[],lastChunk:!1,separateAnnots:null},this._stats?.time("Page Request"),this._pumpOperatorList(c));const d=t=>{C.renderTasks.delete(u),(this._maybeCleanupAfterRender||B)&&(this.#xi=!0),this.#vi(!B),t?(u.capability.reject(t),this._abortOperatorList({intentState:C,reason:t instanceof Error?t:new Error(t)})):u.capability.resolve(),this._stats&&(this._stats.timeEnd("Rendering"),this._stats.timeEnd("Overall"),globalThis.Stats?.enabled&&globalThis.Stats.add(this.pageNumber,this._stats))},u=new pA({callback:d,params:{canvasContext:t,viewport:e,transform:s,background:a},objs:this.objs,commonObjs:this.commonObjs,annotationCanvasMap:r,operatorList:C.operatorList,pageIndex:this._pageIndex,canvasFactory:this._transport.canvasFactory,filterFactory:this._transport.filterFactory,useRequestAnimationFrame:!B,pdfBug:this._pdfBug,pageColors:o});(C.renderTasks||=new Set).add(u);const Q=u.task;return Promise.all([C.displayReadyCapability.promise,n]).then((([t,e])=>{if(this.destroyed)d();else{if(this._stats?.time("Rendering"),!(e.renderingIntent&h))throw new Error("Must use the same `intent`-argument when calling the `PDFPageProxy.render` and `PDFDocumentProxy.getOptionalContentConfig` methods.");u.initializeGraphics({transparency:t,optionalContentConfig:e}),u.operatorListChanged()}})).catch(d),Q}getOperatorList({intent:t="display",annotationMode:e=l.ENABLE,printAnnotationStorage:A=null}={}){const i=this._transport.getRenderingIntent(t,e,A,!0);let s,a=this._intentStates.get(i.cacheKey);return a||(a=Object.create(null),this._intentStates.set(i.cacheKey,a)),a.opListReadCapability||(s=Object.create(null),s.operatorListChanged=function(){a.operatorList.lastChunk&&(a.opListReadCapability.resolve(a.operatorList),a.renderTasks.delete(s))},a.opListReadCapability=Promise.withResolvers(),(a.renderTasks||=new Set).add(s),a.operatorList={fnArray:[],argsArray:[],lastChunk:!1,separateAnnots:null},this._stats?.time("Page Request"),this._pumpOperatorList(i)),a.opListReadCapability.promise}streamTextContent({includeMarkedContent:t=!1,disableNormalization:e=!1}={}){return this._transport.messageHandler.sendWithStream("GetTextContent",{pageIndex:this._pageIndex,includeMarkedContent:!0===t,disableNormalization:!0===e},{highWaterMark:100,size:t=>t.items.length})}getTextContent(t={}){if(this._transport._htmlForXfa)return this.getXfa().then((t=>AA.textContent(t)));const e=this.streamTextContent(t);return new Promise((function(t,A){const i=e.getReader(),s={items:[],styles:Object.create(null),lang:null};!function e(){i.read().then((function({value:A,done:i}){i?t(s):(s.lang??=A.lang,Object.assign(s.styles,A.styles),s.items.push(...A.items),e())}),A)}()}))}getStructTree(){return this._transport.getStructTree(this._pageIndex)}_destroy(){this.destroyed=!0;const t=[];for(const e of this._intentStates.values())if(this._abortOperatorList({intentState:e,reason:new Error("Page was destroyed."),force:!0}),!e.opListReadCapability)for(const A of e.renderTasks)t.push(A.completed),A.cancel();return this.objs.clear(),this.#xi=!1,this.#Ni(),Promise.all(t)}cleanup(t=!1){this.#xi=!0;const e=this.#vi(!1);return t&&e&&(this._stats&&=new ht),e}#vi(t=!1){if(this.#Ni(),!this.#xi||this.destroyed)return!1;if(t)return this.#Ri=setTimeout((()=>{this.#Ri=null,this.#vi(!1)}),5e3),!1;for(const{renderTasks:t,operatorList:e}of this._intentStates.values())if(t.size>0||!e.lastChunk)return!1;return this._intentStates.clear(),this.objs.clear(),this.#xi=!1,!0}#Ni(){this.#Ri&&(clearTimeout(this.#Ri),this.#Ri=null)}_startRenderPage(t,e){const A=this._intentStates.get(e);A&&(this._stats?.timeEnd("Page Request"),A.displayReadyCapability?.resolve(t))}_renderPageChunk(t,e){for(let A=0,i=t.length;A<i;A++)e.operatorList.fnArray.push(t.fnArray[A]),e.operatorList.argsArray.push(t.argsArray[A]);e.operatorList.lastChunk=t.lastChunk,e.operatorList.separateAnnots=t.separateAnnots;for(const t of e.renderTasks)t.operatorListChanged();t.lastChunk&&this.#vi(!0)}_pumpOperatorList({renderingIntent:t,cacheKey:e,annotationStorageSerializable:A}){const{map:i,transfer:s}=A,a=this._transport.messageHandler.sendWithStream("GetOperatorList",{pageIndex:this._pageIndex,intent:t,cacheKey:e,annotationStorage:i},s).getReader(),n=this._intentStates.get(e);n.streamReader=a;const r=()=>{a.read().then((({value:t,done:e})=>{e?n.streamReader=null:this._transport.destroyed||(this._renderPageChunk(t,n),r())}),(t=>{if(n.streamReader=null,!this._transport.destroyed){if(n.operatorList){n.operatorList.lastChunk=!0;for(const t of n.renderTasks)t.operatorListChanged();this.#vi(!0)}if(n.displayReadyCapability)n.displayReadyCapability.reject(t);else{if(!n.opListReadCapability)throw t;n.opListReadCapability.reject(t)}}}))};r()}_abortOperatorList({intentState:t,reason:e,force:A=!1}){if(t.streamReader){if(t.streamReaderCancelTimeout&&(clearTimeout(t.streamReaderCancelTimeout),t.streamReaderCancelTimeout=null),!A){if(t.renderTasks.size>0)return;if(e instanceof nt){let A=100;return e.extraDelay>0&&e.extraDelay<1e3&&(A+=e.extraDelay),void(t.streamReaderCancelTimeout=setTimeout((()=>{t.streamReaderCancelTimeout=null,this._abortOperatorList({intentState:t,reason:e,force:!0})}),A))}}if(t.streamReader.cancel(new U(e.message)).catch((()=>{})),t.streamReader=null,!this._transport.destroyed){for(const[e,A]of this._intentStates)if(A===t){this._intentStates.delete(e);break}this.cleanup()}}}get stats(){return this._stats}}class CA{#Gi=new Set;#Mi=Promise.resolve();postMessage(t,e){const A={data:structuredClone(t,e?{transfer:e}:null)};this.#Mi.then((()=>{for(const t of this.#Gi)t.call(this,A)}))}addEventListener(t,e){this.#Gi.add(e)}removeEventListener(t,e){this.#Gi.delete(e)}terminate(){this.#Gi.clear()}}const BA={isWorkerDisabled:!1,fakeWorkerId:0};o&&(BA.isWorkerDisabled=!0,Ee.workerSrc||="./pdf.worker.mjs"),BA.isSameOrigin=function(t,e){let A;try{if(A=new URL(t),!A.origin||"null"===A.origin)return!1}catch{return!1}const i=new URL(e,A);return A.origin===i.origin},BA.createCDNWrapper=function(t){const e=`await import("${t}");`;return URL.createObjectURL(new Blob([e],{type:"text/javascript"}))};class dA{static#Li;constructor({name:t=null,port:e=null,verbosity:A=y()}={}){if(this.name=t,this.destroyed=!1,this.verbosity=A,this._readyCapability=Promise.withResolvers(),this._port=null,this._webWorker=null,this._messageHandler=null,e){if(dA.#Li?.has(e))throw new Error("Cannot use more than one PDFWorker per port.");return(dA.#Li||=new WeakMap).set(e,this),void this._initializeFromPort(e)}this._initialize()}get promise(){return o?Promise.all([_t.promise,this._readyCapability.promise]):this._readyCapability.promise}#Ui(){this._readyCapability.resolve(),this._messageHandler.send("configure",{verbosity:this.verbosity})}get port(){return this._port}get messageHandler(){return this._messageHandler}_initializeFromPort(t){this._port=t,this._messageHandler=new pe("main","worker",t),this._messageHandler.on("ready",(function(){})),this.#Ui()}_initialize(){if(BA.isWorkerDisabled||dA.#Hi)return void this._setupFakeWorker();let{workerSrc:t}=dA;try{BA.isSameOrigin(window.location.href,t)||(t=BA.createCDNWrapper(new URL(t,window.location).href));const e=new Worker(t,{type:"module"}),A=new pe("main","worker",e),i=()=>{s.abort(),A.destroy(),e.terminate(),this.destroyed?this._readyCapability.reject(new Error("Worker was destroyed")):this._setupFakeWorker()},s=new AbortController;e.addEventListener("error",(()=>{this._webWorker||i()}),{signal:s.signal}),A.on("test",(t=>{s.abort(),!this.destroyed&&t?(this._messageHandler=A,this._port=e,this._webWorker=e,this.#Ui()):i()})),A.on("ready",(t=>{if(s.abort(),this.destroyed)i();else try{a()}catch{this._setupFakeWorker()}}));const a=()=>{const t=new Uint8Array;A.send("test",t,[t.buffer])};return void a()}catch{w("The worker has been disabled.")}this._setupFakeWorker()}_setupFakeWorker(){BA.isWorkerDisabled||(b("Setting up fake worker."),BA.isWorkerDisabled=!0),dA._setupFakeWorkerGlobal.then((t=>{if(this.destroyed)return void this._readyCapability.reject(new Error("Worker was destroyed"));const e=new CA;this._port=e;const A="fake"+BA.fakeWorkerId++,i=new pe(A+"_worker",A,e);t.setup(i,e),this._messageHandler=new pe(A,A+"_worker",e),this.#Ui()})).catch((t=>{this._readyCapability.reject(new Error(`Setting up fake worker failed: "${t.message}".`))}))}destroy(){this.destroyed=!0,this._webWorker&&(this._webWorker.terminate(),this._webWorker=null),dA.#Li?.delete(this._port),this._port=null,this._messageHandler&&(this._messageHandler.destroy(),this._messageHandler=null)}static fromPort(t){if(!t?.port)throw new Error("PDFWorker.fromPort - invalid method signature.");const e=this.#Li?.get(t.port);if(e){if(e._pendingDestroy)throw new Error("PDFWorker.fromPort - the worker is being destroyed.\nPlease remember to await `PDFDocumentLoadingTask.destroy()`-calls.");return e}return new dA(t)}static get workerSrc(){if(Ee.workerSrc)return Ee.workerSrc;throw new Error('No "GlobalWorkerOptions.workerSrc" specified.')}static get#Hi(){try{return globalThis.pdfjsWorker?.WorkerMessageHandler||null}catch{return null}}static get _setupFakeWorkerGlobal(){return F(this,"_setupFakeWorkerGlobal",(async()=>this.#Hi?this.#Hi:(await import(this.workerSrc)).WorkerMessageHandler)())}}class uA{#Ji=new Map;#Yi=new Map;#Ti=new Map;#Ki=new Map;#qi=null;constructor(t,e,A,i,s){this.messageHandler=t,this.loadingTask=e,this.commonObjs=new EA,this.fontLoader=new Tt({ownerDocument:i.ownerDocument,styleElement:i.styleElement}),this.loadingParams=i.loadingParams,this._params=i,this.canvasFactory=s.canvasFactory,this.filterFactory=s.filterFactory,this.cMapReaderFactory=s.cMapReaderFactory,this.standardFontDataFactory=s.standardFontDataFactory,this.destroyed=!1,this.destroyCapability=null,this._networkStream=A,this._fullReader=null,this._lastProgress=null,this.downloadInfoCapability=Promise.withResolvers(),this.setupMessageHandler()}#Pi(t,e=null){const A=this.#Ji.get(t);if(A)return A;const i=this.messageHandler.sendWithPromise(t,e);return this.#Ji.set(t,i),i}get annotationStorage(){return F(this,"annotationStorage",new Jt)}getRenderingIntent(t,e=l.ENABLE,A=null,i=!1){let s=2,a=Ht;switch(t){case"any":s=1;break;case"display":break;case"print":s=4;break;default:b(`getRenderingIntent - invalid intent: ${t}`)}switch(e){case l.DISABLE:s+=64;break;case l.ENABLE:break;case l.ENABLE_FORMS:s+=16;break;case l.ENABLE_STORAGE:s+=32,a=(4&s&&A instanceof Yt?A:this.annotationStorage).serializable;break;default:b(`getRenderingIntent - invalid annotationMode: ${e}`)}return i&&(s+=256),{renderingIntent:s,cacheKey:`${s}_${a.hash}`,annotationStorageSerializable:a}}destroy(){if(this.destroyCapability)return this.destroyCapability.promise;this.destroyed=!0,this.destroyCapability=Promise.withResolvers(),this.#qi?.reject(new Error("Worker was destroyed during onPassword callback"));const t=[];for(const e of this.#Yi.values())t.push(e._destroy());this.#Yi.clear(),this.#Ti.clear(),this.#Ki.clear(),this.hasOwnProperty("annotationStorage")&&this.annotationStorage.resetModified();const e=this.messageHandler.sendWithPromise("Terminate",null);return t.push(e),Promise.all(t).then((()=>{this.commonObjs.clear(),this.fontLoader.clear(),this.#Ji.clear(),this.filterFactory.destroy(),$e.cleanup(),this._networkStream?.cancelAllRequests(new U("Worker was terminated.")),this.messageHandler&&(this.messageHandler.destroy(),this.messageHandler=null),this.destroyCapability.resolve()}),this.destroyCapability.reject),this.destroyCapability.promise}setupMessageHandler(){const{messageHandler:t,loadingTask:e}=this;t.on("GetReader",((t,e)=>{k(this._networkStream,"GetReader - no `IPDFStream` instance available."),this._fullReader=this._networkStream.getFullReader(),this._fullReader.onProgress=t=>{this._lastProgress={loaded:t.loaded,total:t.total}},e.onPull=()=>{this._fullReader.read().then((function({value:t,done:A}){A?e.close():(k(t instanceof ArrayBuffer,"GetReader - expected an ArrayBuffer."),e.enqueue(new Uint8Array(t),1,[t]))})).catch((t=>{e.error(t)}))},e.onCancel=t=>{this._fullReader.cancel(t),e.ready.catch((t=>{if(!this.destroyed)throw t}))}})),t.on("ReaderHeadersReady",(t=>{const A=Promise.withResolvers(),i=this._fullReader;return i.headersReady.then((()=>{i.isStreamingSupported&&i.isRangeSupported||(this._lastProgress&&e.onProgress?.(this._lastProgress),i.onProgress=t=>{e.onProgress?.({loaded:t.loaded,total:t.total})}),A.resolve({isStreamingSupported:i.isStreamingSupported,isRangeSupported:i.isRangeSupported,contentLength:i.contentLength})}),A.reject),A.promise})),t.on("GetRangeReader",((t,e)=>{k(this._networkStream,"GetRangeReader - no `IPDFStream` instance available.");const A=this._networkStream.getRangeReader(t.begin,t.end);A?(e.onPull=()=>{A.read().then((function({value:t,done:A}){A?e.close():(k(t instanceof ArrayBuffer,"GetRangeReader - expected an ArrayBuffer."),e.enqueue(new Uint8Array(t),1,[t]))})).catch((t=>{e.error(t)}))},e.onCancel=t=>{A.cancel(t),e.ready.catch((t=>{if(!this.destroyed)throw t}))}):e.close()})),t.on("GetDoc",(({pdfInfo:t})=>{this._numPages=t.numPages,this._htmlForXfa=t.htmlForXfa,delete t.htmlForXfa,e._capability.resolve(new lA(t,this))})),t.on("DocException",(function(t){let A;switch(t.name){case"PasswordException":A=new x(t.message,t.code);break;case"InvalidPDFException":A=new v(t.message);break;case"MissingPDFException":A=new G(t.message);break;case"UnexpectedResponseException":A=new M(t.message,t.status);break;case"UnknownErrorException":A=new N(t.message,t.details);break;default:D("DocException - expected a valid Error.")}e._capability.reject(A)})),t.on("PasswordRequest",(t=>{if(this.#qi=Promise.withResolvers(),e.onPassword){const A=t=>{t instanceof Error?this.#qi.reject(t):this.#qi.resolve({password:t})};try{e.onPassword(A,t.code)}catch(t){this.#qi.reject(t)}}else this.#qi.reject(new x(t.message,t.code));return this.#qi.promise})),t.on("DataLoaded",(t=>{e.onProgress?.({loaded:t.length,total:t.length}),this.downloadInfoCapability.resolve(t)})),t.on("StartRenderPage",(t=>{this.destroyed||this.#Yi.get(t.pageIndex)._startRenderPage(t.transparency,t.cacheKey)})),t.on("commonobj",(([e,A,i])=>{if(this.destroyed)return null;if(this.commonObjs.has(e))return null;switch(A){case"Font":const{disableFontFace:s,fontExtraProperties:a,pdfBug:n}=this._params;if("error"in i){const t=i.error;b(`Error during font loading: ${t}`),this.commonObjs.resolve(e,t);break}const r=n&&globalThis.FontInspector?.enabled?(t,e)=>globalThis.FontInspector.fontAdded(t,e):null,o=new Kt(i,{disableFontFace:s,inspectFont:r});this.fontLoader.bind(o).catch((()=>t.sendWithPromise("FontFallback",{id:e}))).finally((()=>{!a&&o.data&&(o.data=null),this.commonObjs.resolve(e,o)}));break;case"CopyLocalImage":const{imageRef:g}=i;k(g,"The imageRef must be defined.");for(const t of this.#Yi.values())for(const[,A]of t.objs)if(A?.ref===g)return A.dataLen?(this.commonObjs.resolve(e,structuredClone(A)),A.dataLen):null;break;case"FontPath":case"Image":case"Pattern":this.commonObjs.resolve(e,i);break;default:throw new Error(`Got unknown common object type ${A}`)}return null})),t.on("obj",(([t,e,A,i])=>{if(this.destroyed)return;const s=this.#Yi.get(e);if(!s.objs.has(t))if(0!==s._intentStates.size)switch(A){case"Image":s.objs.resolve(t,i),i?.dataLen>1e7&&(s._maybeCleanupAfterRender=!0);break;case"Pattern":s.objs.resolve(t,i);break;default:throw new Error(`Got unknown object type ${A}`)}else i?.bitmap?.close()})),t.on("DocProgress",(t=>{this.destroyed||e.onProgress?.({loaded:t.loaded,total:t.total})})),t.on("FetchBuiltInCMap",(t=>this.destroyed?Promise.reject(new Error("Worker was destroyed.")):this.cMapReaderFactory?this.cMapReaderFactory.fetch(t):Promise.reject(new Error("CMapReaderFactory not initialized, see the `useWorkerFetch` parameter.")))),t.on("FetchStandardFontData",(t=>this.destroyed?Promise.reject(new Error("Worker was destroyed.")):this.standardFontDataFactory?this.standardFontDataFactory.fetch(t):Promise.reject(new Error("StandardFontDataFactory not initialized, see the `useWorkerFetch` parameter."))))}getData(){return this.messageHandler.sendWithPromise("GetData",null)}saveDocument(){this.annotationStorage.size<=0&&b("saveDocument called while `annotationStorage` is empty, please use the getData-method instead.");const{map:t,transfer:e}=this.annotationStorage.serializable;return this.messageHandler.sendWithPromise("SaveDocument",{isPureXfa:!!this._htmlForXfa,numPages:this._numPages,annotationStorage:t,filename:this._fullReader?.filename??null},e).finally((()=>{this.annotationStorage.resetModified()}))}getPage(t){if(!Number.isInteger(t)||t<=0||t>this._numPages)return Promise.reject(new Error("Invalid page request."));const e=t-1,A=this.#Ti.get(e);if(A)return A;const i=this.messageHandler.sendWithPromise("GetPage",{pageIndex:e}).then((A=>{if(this.destroyed)throw new Error("Transport destroyed");A.refStr&&this.#Ki.set(A.refStr,t);const i=new IA(e,A,this,this._params.pdfBug);return this.#Yi.set(e,i),i}));return this.#Ti.set(e,i),i}getPageIndex(t){return gA(t)?this.messageHandler.sendWithPromise("GetPageIndex",{num:t.num,gen:t.gen}):Promise.reject(new Error("Invalid pageIndex request."))}getAnnotations(t,e){return this.messageHandler.sendWithPromise("GetAnnotations",{pageIndex:t,intent:e})}getFieldObjects(){return this.#Pi("GetFieldObjects")}hasJSActions(){return this.#Pi("HasJSActions")}getCalculationOrderIds(){return this.messageHandler.sendWithPromise("GetCalculationOrderIds",null)}getDestinations(){return this.messageHandler.sendWithPromise("GetDestinations",null)}getDestination(t){return"string"!=typeof t?Promise.reject(new Error("Invalid destination request.")):this.messageHandler.sendWithPromise("GetDestination",{id:t})}getPageLabels(){return this.messageHandler.sendWithPromise("GetPageLabels",null)}getPageLayout(){return this.messageHandler.sendWithPromise("GetPageLayout",null)}getPageMode(){return this.messageHandler.sendWithPromise("GetPageMode",null)}getViewerPreferences(){return this.messageHandler.sendWithPromise("GetViewerPreferences",null)}getOpenAction(){return this.messageHandler.sendWithPromise("GetOpenAction",null)}getAttachments(){return this.messageHandler.sendWithPromise("GetAttachments",null)}getDocJSActions(){return this.#Pi("GetDocJSActions")}getPageJSActions(t){return this.messageHandler.sendWithPromise("GetPageJSActions",{pageIndex:t})}getStructTree(t){return this.messageHandler.sendWithPromise("GetStructTree",{pageIndex:t})}getOutline(){return this.messageHandler.sendWithPromise("GetOutline",null)}getOptionalContentConfig(t){return this.#Pi("GetOptionalContentConfig").then((e=>new be(e,t)))}getPermissions(){return this.messageHandler.sendWithPromise("GetPermissions",null)}getMetadata(){const t="GetMetadata",e=this.#Ji.get(t);if(e)return e;const A=this.messageHandler.sendWithPromise(t,null).then((t=>({info:t[0],metadata:t[1]?new me(t[1]):null,contentDispositionFilename:this._fullReader?.filename??null,contentLength:this._fullReader?.contentLength??null})));return this.#Ji.set(t,A),A}getMarkInfo(){return this.messageHandler.sendWithPromise("GetMarkInfo",null)}async startCleanup(t=!1){if(!this.destroyed){await this.messageHandler.sendWithPromise("Cleanup",null);for(const t of this.#Yi.values())if(!t.cleanup())throw new Error(`startCleanup: Page ${t.pageNumber} is currently rendering.`);this.commonObjs.clear(),t||this.fontLoader.clear(),this.#Ji.clear(),this.filterFactory.destroy(!0),$e.cleanup()}}cachedPageNumber(t){if(!gA(t))return null;const e=0===t.gen?`${t.num}R`:`${t.num}R${t.gen}`;return this.#Ki.get(e)??null}}const QA=Symbol("INITIAL_DATA");class EA{#_i=Object.create(null);#Oi(t){return this.#_i[t]||={...Promise.withResolvers(),data:QA}}get(t,e=null){if(e){const A=this.#Oi(t);return A.promise.then((()=>e(A.data))),null}const A=this.#_i[t];if(!A||A.data===QA)throw new Error(`Requesting object that isn't resolved yet ${t}.`);return A.data}has(t){const e=this.#_i[t];return!!e&&e.data!==QA}resolve(t,e=null){const A=this.#Oi(t);A.data=e,A.resolve()}clear(){for(const t in this.#_i){const{data:e}=this.#_i[t];e?.bitmap?.close()}this.#_i=Object.create(null)}*[Symbol.iterator](){for(const t in this.#_i){const{data:e}=this.#_i[t];e!==QA&&(yield[t,e])}}}class fA{#Wi=null;constructor(t){this.#Wi=t,this.onContinue=null}get promise(){return this.#Wi.capability.promise}cancel(t=0){this.#Wi.cancel(null,t)}get separateAnnots(){const{separateAnnots:t}=this.#Wi.operatorList;if(!t)return!1;const{annotationCanvasMap:e}=this.#Wi;return t.form||t.canvas&&e?.size>0}}class pA{#Zi=null;static#ji=new WeakSet;constructor({callback:t,params:e,objs:A,commonObjs:i,annotationCanvasMap:s,operatorList:a,pageIndex:n,canvasFactory:r,filterFactory:o,useRequestAnimationFrame:g=!1,pdfBug:c=!1,pageColors:h=null}){this.callback=t,this.params=e,this.objs=A,this.commonObjs=i,this.annotationCanvasMap=s,this.operatorListIdx=null,this.operatorList=a,this._pageIndex=n,this.canvasFactory=r,this.filterFactory=o,this._pdfBug=c,this.pageColors=h,this.running=!1,this.graphicsReadyCallback=null,this.graphicsReady=!1,this._useRequestAnimationFrame=!0===g&&"undefined"!=typeof window,this.cancelled=!1,this.capability=Promise.withResolvers(),this.task=new fA(this),this._cancelBound=this.cancel.bind(this),this._continueBound=this._continue.bind(this),this._scheduleNextBound=this._scheduleNext.bind(this),this._nextBound=this._next.bind(this),this._canvas=e.canvasContext.canvas}get completed(){return this.capability.promise.catch((function(){}))}initializeGraphics({transparency:t=!1,optionalContentConfig:e}){if(this.cancelled)return;if(this._canvas){if(pA.#ji.has(this._canvas))throw new Error("Cannot use the same canvas during multiple render() operations. Use different canvas or ensure previous operations were cancelled or completed.");pA.#ji.add(this._canvas)}this._pdfBug&&globalThis.StepperManager?.enabled&&(this.stepper=globalThis.StepperManager.create(this._pageIndex),this.stepper.init(this.operatorList),this.stepper.nextBreakPoint=this.stepper.getNextBreakPoint());const{canvasContext:A,viewport:i,transform:s,background:a}=this.params;this.gfx=new Qe(A,this.commonObjs,this.objs,this.canvasFactory,this.filterFactory,{optionalContentConfig:e},this.annotationCanvasMap,this.pageColors),this.gfx.beginDrawing({transform:s,viewport:i,transparency:t,background:a}),this.operatorListIdx=0,this.graphicsReady=!0,this.graphicsReadyCallback?.()}cancel(t=null,e=0){this.running=!1,this.cancelled=!0,this.gfx?.endDrawing(),this.#Zi&&(window.cancelAnimationFrame(this.#Zi),this.#Zi=null),pA.#ji.delete(this._canvas),this.callback(t||new nt(`Rendering cancelled, page ${this._pageIndex+1}`,e))}operatorListChanged(){this.graphicsReady?(this.stepper?.updateOperatorList(this.operatorList),this.running||this._continue()):this.graphicsReadyCallback||=this._continueBound}_continue(){this.running=!0,this.cancelled||(this.task.onContinue?this.task.onContinue(this._scheduleNextBound):this._scheduleNext())}_scheduleNext(){this._useRequestAnimationFrame?this.#Zi=window.requestAnimationFrame((()=>{this.#Zi=null,this._nextBound().catch(this._cancelBound)})):Promise.resolve().then(this._nextBound).catch(this._cancelBound)}async _next(){this.cancelled||(this.operatorListIdx=this.gfx.executeOperatorList(this.operatorList,this.operatorListIdx,this._continueBound,this.stepper),this.operatorListIdx===this.operatorList.argsArray.length&&(this.running=!1,this.operatorList.lastChunk&&(this.gfx.endDrawing(),pA.#ji.delete(this._canvas),this.callback())))}}const mA="4.4.168",yA="19fbc8998";function wA(t){return Math.floor(255*Math.max(0,Math.min(1,t))).toString(16).padStart(2,"0")}function bA(t){return Math.max(0,Math.min(255,255*t))}n(670);class DA{static CMYK_G([t,e,A,i]){return["G",1-Math.min(1,.3*t+.59*A+.11*e+i)]}static G_CMYK([t]){return["CMYK",0,0,0,1-t]}static G_RGB([t]){return["RGB",t,t,t]}static G_rgb([t]){return[t=bA(t),t,t]}static G_HTML([t]){const e=wA(t);return`#${e}${e}${e}`}static RGB_G([t,e,A]){return["G",.3*t+.59*e+.11*A]}static RGB_rgb(t){return t.map(bA)}static RGB_HTML(t){return`#${t.map(wA).join("")}`}static T_HTML(){return"#00000000"}static T_rgb(){return[null]}static CMYK_RGB([t,e,A,i]){return["RGB",1-Math.min(1,t+i),1-Math.min(1,A+i),1-Math.min(1,e+i)]}static CMYK_rgb([t,e,A,i]){return[bA(1-Math.min(1,t+i)),bA(1-Math.min(1,A+i)),bA(1-Math.min(1,e+i))]}static CMYK_HTML(t){const e=this.CMYK_RGB(t).slice(1);return this.RGB_HTML(e)}static RGB_CMYK([t,e,A]){const i=1-t,s=1-e,a=1-A;return["CMYK",i,s,a,Math.min(i,s,a)]}}class kA{static setupStorage(t,e,A,i,s){const a=i.getValue(e,{value:null});switch(A.name){case"textarea":if(null!==a.value&&(t.textContent=a.value),"print"===s)break;t.addEventListener("input",(t=>{i.setValue(e,{value:t.target.value})}));break;case"input":if("radio"===A.attributes.type||"checkbox"===A.attributes.type){if(a.value===A.attributes.xfaOn?t.setAttribute("checked",!0):a.value===A.attributes.xfaOff&&t.removeAttribute("checked"),"print"===s)break;t.addEventListener("change",(t=>{i.setValue(e,{value:t.target.checked?t.target.getAttribute("xfaOn"):t.target.getAttribute("xfaOff")})}))}else{if(null!==a.value&&t.setAttribute("value",a.value),"print"===s)break;t.addEventListener("input",(t=>{i.setValue(e,{value:t.target.value})}))}break;case"select":if(null!==a.value){t.setAttribute("value",a.value);for(const t of A.children)t.attributes.value===a.value?t.attributes.selected=!0:t.attributes.hasOwnProperty("selected")&&delete t.attributes.selected}t.addEventListener("input",(t=>{const A=t.target.options,s=-1===A.selectedIndex?"":A[A.selectedIndex].value;i.setValue(e,{value:s})}))}}static setAttributes({html:t,element:e,storage:A=null,intent:i,linkService:s}){const{attributes:a}=e,n=t instanceof HTMLAnchorElement;"radio"===a.type&&(a.name=`${a.name}-${i}`);for(const[e,A]of Object.entries(a))if(null!=A)switch(e){case"class":A.length&&t.setAttribute(e,A.join(" "));break;case"dataId":break;case"id":t.setAttribute("data-element-id",A);break;case"style":Object.assign(t.style,A);break;case"textContent":t.textContent=A;break;default:(!n||"href"!==e&&"newWindow"!==e)&&t.setAttribute(e,A)}n&&s.addLinkAttributes(t,a.href,a.newWindow),A&&a.dataId&&this.setupStorage(t,a.dataId,e,A)}static render(t){const e=t.annotationStorage,A=t.linkService,i=t.xfaHtml,s=t.intent||"display",a=document.createElement(i.name);i.attributes&&this.setAttributes({html:a,element:i,intent:s,linkService:A});const n="richText"!==s,r=t.div;if(r.append(a),t.viewport){const e=`matrix(${t.viewport.transform.join(",")})`;r.style.transform=e}n&&r.setAttribute("class","xfaLayer xfaFont");const o=[];if(0===i.children.length){if(i.value){const t=document.createTextNode(i.value);a.append(t),n&&AA.shouldBuildText(i.name)&&o.push(t)}return{textDivs:o}}const g=[[i,-1,a]];for(;g.length>0;){const[t,i,a]=g.at(-1);if(i+1===t.children.length){g.pop();continue}const r=t.children[++g.at(-1)[1]];if(null===r)continue;const{name:c}=r;if("#text"===c){const t=document.createTextNode(r.value);o.push(t),a.append(t);continue}const h=r?.attributes?.xmlns?document.createElementNS(r.attributes.xmlns,c):document.createElement(c);if(a.append(h),r.attributes&&this.setAttributes({html:h,element:r,storage:e,intent:s,linkService:A}),r.children?.length>0)g.push([r,-1,h]);else if(r.value){const t=document.createTextNode(r.value);n&&AA.shouldBuildText(c)&&o.push(t),h.append(t)}}for(const t of r.querySelectorAll(".xfaNonInteractive input, .xfaNonInteractive textarea"))t.setAttribute("readOnly",!0);return{textDivs:o}}static update(t){const e=`matrix(${t.viewport.transform.join(",")})`;t.div.style.transform=e,t.div.hidden=!1}}const SA=1e3,FA=new WeakSet;function RA(t){return{width:t[2]-t[0],height:t[3]-t[1]}}class xA{static create(t){switch(t.data.annotationType){case 2:return new vA(t);case 1:return new GA(t);case 20:switch(t.data.fieldType){case"Tx":return new LA(t);case"Btn":return t.data.radioButton?new JA(t):t.data.checkBox?new HA(t):new YA(t);case"Ch":return new TA(t);case"Sig":return new UA(t)}return new MA(t);case 16:return new KA(t);case 3:return new PA(t);case 4:return new _A(t);case 5:return new OA(t);case 6:return new WA(t);case 8:return new ZA(t);case 14:return new VA(t);case 15:return new XA(t);case 7:return new jA(t);case 9:return new zA(t);case 10:return new $A(t);case 11:return new ti(t);case 12:return new ei(t);case 13:return new Ai(t);case 17:return new ii(t);default:return new NA(t)}}}class NA{#Vi=null;#Xi=!1;#zi=null;constructor(t,{isRenderable:e=!1,ignoreBorder:A=!1,createQuadrilaterals:i=!1}={}){this.isRenderable=e,this.data=t.data,this.layer=t.layer,this.linkService=t.linkService,this.downloadManager=t.downloadManager,this.imageResourcesPath=t.imageResourcesPath,this.renderForms=t.renderForms,this.svgFactory=t.svgFactory,this.annotationStorage=t.annotationStorage,this.enableScripting=t.enableScripting,this.hasJSActions=t.hasJSActions,this._fieldObjects=t.fieldObjects,this.parent=t.parent,e&&(this.container=this._createContainer(A)),i&&this._createQuadrilaterals()}static _hasPopupData({titleObj:t,contentsObj:e,richText:A}){return!!(t?.str||e?.str||A?.str)}get hasPopupData(){return NA._hasPopupData(this.data)}updateEdited(t){if(!this.container)return;this.#Vi||={rect:this.data.rect.slice(0)};const{rect:e}=t;e&&this.#$i(e),this.#zi?.popup.updateEdited(t)}resetEdited(){this.#Vi&&(this.#$i(this.#Vi.rect),this.#zi?.popup.resetEdited(),this.#Vi=null)}#$i(t){const{container:{style:e},data:{rect:A,rotation:i},parent:{viewport:{rawDims:{pageWidth:s,pageHeight:a,pageX:n,pageY:r}}}}=this;A?.splice(0,4,...t);const{width:o,height:g}=RA(t);e.left=100*(t[0]-n)/s+"%",e.top=100*(a-t[3]+r)/a+"%",0===i?(e.width=100*o/s+"%",e.height=100*g/a+"%"):this.setRotation(i)}_createContainer(t){const{data:e,parent:{page:A,viewport:i}}=this,s=document.createElement("section");s.setAttribute("data-annotation-id",e.id),this instanceof MA||(s.tabIndex=SA);const{style:a}=s;if(a.zIndex=this.parent.zIndex++,e.popupRef&&s.setAttribute("aria-haspopup","dialog"),e.alternativeText&&(s.title=e.alternativeText),e.noRotate&&s.classList.add("norotate"),!e.rect||this instanceof KA){const{rotation:t}=e;return e.hasOwnCanvas||0===t||this.setRotation(t,s),s}const{width:n,height:r}=RA(e.rect);if(!t&&e.borderStyle.width>0){a.borderWidth=`${e.borderStyle.width}px`;const t=e.borderStyle.horizontalCornerRadius,A=e.borderStyle.verticalCornerRadius;if(t>0||A>0){const e=`calc(${t}px * var(--scale-factor)) / calc(${A}px * var(--scale-factor))`;a.borderRadius=e}else if(this instanceof JA){const t=`calc(${n}px * var(--scale-factor)) / calc(${r}px * var(--scale-factor))`;a.borderRadius=t}switch(e.borderStyle.style){case 1:a.borderStyle="solid";break;case 2:a.borderStyle="dashed";break;case 3:b("Unimplemented border style: beveled");break;case 4:b("Unimplemented border style: inset");break;case 5:a.borderBottomStyle="solid"}const i=e.borderColor||null;i?(this.#Xi=!0,a.borderColor=q.makeHexColor(0|i[0],0|i[1],0|i[2])):a.borderWidth=0}const o=q.normalizeRect([e.rect[0],A.view[3]-e.rect[1]+A.view[1],e.rect[2],A.view[3]-e.rect[3]+A.view[1]]),{pageWidth:g,pageHeight:c,pageX:h,pageY:l}=i.rawDims;a.left=100*(o[0]-h)/g+"%",a.top=100*(o[1]-l)/c+"%";const{rotation:I}=e;return e.hasOwnCanvas||0===I?(a.width=100*n/g+"%",a.height=100*r/c+"%"):this.setRotation(I,s),s}setRotation(t,e=this.container){if(!this.data.rect)return;const{pageWidth:A,pageHeight:i}=this.parent.viewport.rawDims,{width:s,height:a}=RA(this.data.rect);let n,r;t%180==0?(n=100*s/A,r=100*a/i):(n=100*a/A,r=100*s/i),e.style.width=`${n}%`,e.style.height=`${r}%`,e.setAttribute("data-main-rotation",(360-t)%360)}get _commonActions(){const t=(t,e,A)=>{const i=A.detail[t],s=i[0],a=i.slice(1);A.target.style[e]=DA[`${s}_HTML`](a),this.annotationStorage.setValue(this.data.id,{[e]:DA[`${s}_rgb`](a)})};return F(this,"_commonActions",{display:t=>{const{display:e}=t.detail,A=e%2==1;this.container.style.visibility=A?"hidden":"visible",this.annotationStorage.setValue(this.data.id,{noView:A,noPrint:1===e||2===e})},print:t=>{this.annotationStorage.setValue(this.data.id,{noPrint:!t.detail.print})},hidden:t=>{const{hidden:e}=t.detail;this.container.style.visibility=e?"hidden":"visible",this.annotationStorage.setValue(this.data.id,{noPrint:e,noView:e})},focus:t=>{setTimeout((()=>t.target.focus({preventScroll:!1})),0)},userName:t=>{t.target.title=t.detail.userName},readonly:t=>{t.target.disabled=t.detail.readonly},required:t=>{this._setRequired(t.target,t.detail.required)},bgColor:e=>{t("bgColor","backgroundColor",e)},fillColor:e=>{t("fillColor","backgroundColor",e)},fgColor:e=>{t("fgColor","color",e)},textColor:e=>{t("textColor","color",e)},borderColor:e=>{t("borderColor","borderColor",e)},strokeColor:e=>{t("strokeColor","borderColor",e)},rotation:t=>{const e=t.detail.rotation;this.setRotation(e),this.annotationStorage.setValue(this.data.id,{rotation:e})}})}_dispatchEventFromSandbox(t,e){const A=this._commonActions;for(const i of Object.keys(e.detail)){const s=t[i]||A[i];s?.(e)}}_setDefaultPropertiesFromJS(t){if(!this.enableScripting)return;const e=this.annotationStorage.getRawValue(this.data.id);if(!e)return;const A=this._commonActions;for(const[i,s]of Object.entries(e)){const a=A[i];a&&(a({detail:{[i]:s},target:t}),delete e[i])}}_createQuadrilaterals(){if(!this.container)return;const{quadPoints:t}=this.data;if(!t)return;const[e,A,i,s]=this.data.rect.map((t=>Math.fround(t)));if(8===t.length){const[a,n,r,o]=t.subarray(2,6);if(i===a&&s===n&&e===r&&A===o)return}const{style:a}=this.container;let n;if(this.#Xi){const{borderColor:t,borderWidth:e}=a;a.borderWidth=0,n=["url('data:image/svg+xml;utf8,",'<svg xmlns="http://www.w3.org/2000/svg"',' preserveAspectRatio="none" viewBox="0 0 1 1">',`<g fill="transparent" stroke="${t}" stroke-width="${e}">`],this.container.classList.add("hasBorder")}const r=i-e,o=s-A,{svgFactory:g}=this,c=g.createElement("svg");c.classList.add("quadrilateralsContainer"),c.setAttribute("width",0),c.setAttribute("height",0);const h=g.createElement("defs");c.append(h);const l=g.createElement("clipPath"),I=`clippath_${this.data.id}`;l.setAttribute("id",I),l.setAttribute("clipPathUnits","objectBoundingBox"),h.append(l);for(let A=2,i=t.length;A<i;A+=8){const i=t[A],a=t[A+1],c=t[A+2],h=t[A+3],I=g.createElement("rect"),C=(c-e)/r,B=(s-a)/o,d=(i-c)/r,u=(a-h)/o;I.setAttribute("x",C),I.setAttribute("y",B),I.setAttribute("width",d),I.setAttribute("height",u),l.append(I),n?.push(`<rect vector-effect="non-scaling-stroke" x="${C}" y="${B}" width="${d}" height="${u}"/>`)}this.#Xi&&(n.push("</g></svg>')"),a.backgroundImage=n.join("")),this.container.append(c),this.container.style.clipPath=`url(#${I})`}_createPopup(){const{container:t,data:e}=this;t.setAttribute("aria-haspopup","dialog");const A=this.#zi=new KA({data:{color:e.color,titleObj:e.titleObj,modificationDate:e.modificationDate,contentsObj:e.contentsObj,richText:e.richText,parentRect:e.rect,borderStyle:0,id:`popup_${e.id}`,rotation:e.rotation},parent:this.parent,elements:[this]});this.parent.div.append(A.render())}render(){D("Abstract method `AnnotationElement.render` called")}_getElementsByName(t,e=null){const A=[];if(this._fieldObjects){const i=this._fieldObjects[t];if(i)for(const{page:t,id:s,exportValues:a}of i){if(-1===t)continue;if(s===e)continue;const i="string"==typeof a?a:null,n=document.querySelector(`[data-element-id="${s}"]`);!n||FA.has(n)?A.push({id:s,exportValue:i,domElement:n}):b(`_getElementsByName - element not allowed: ${s}`)}return A}for(const i of document.getElementsByName(t)){const{exportValue:t}=i,s=i.getAttribute("data-element-id");s!==e&&FA.has(i)&&A.push({id:s,exportValue:t,domElement:i})}return A}show(){this.container&&(this.container.hidden=!1),this.popup?.maybeShow()}hide(){this.container&&(this.container.hidden=!0),this.popup?.forceHide()}getElementsToTriggerPopup(){return this.container}addHighlightArea(){const t=this.getElementsToTriggerPopup();if(Array.isArray(t))for(const e of t)e.classList.add("highlightArea");else t.classList.add("highlightArea")}get _isEditable(){return!1}_editOnDoubleClick(){if(!this._isEditable)return;const{annotationEditorType:t,data:{id:e}}=this;this.container.addEventListener("dblclick",(()=>{this.linkService.eventBus?.dispatch("switchannotationeditormode",{source:this,mode:t,editId:e})}))}}class vA extends NA{constructor(t,e=null){super(t,{isRenderable:!0,ignoreBorder:!!e?.ignoreBorder,createQuadrilaterals:!0}),this.isTooltipOnly=t.data.isTooltipOnly}render(){const{data:t,linkService:e}=this,A=document.createElement("a");A.setAttribute("data-element-id",t.id);let i=!1;return t.url?(e.addLinkAttributes(A,t.url,t.newWindow),i=!0):t.action?(this._bindNamedAction(A,t.action),i=!0):t.attachment?(this.#ts(A,t.attachment,t.attachmentDest),i=!0):t.setOCGState?(this.#es(A,t.setOCGState),i=!0):t.dest?(this._bindLink(A,t.dest),i=!0):(t.actions&&(t.actions.Action||t.actions["Mouse Up"]||t.actions["Mouse Down"])&&this.enableScripting&&this.hasJSActions&&(this._bindJSAction(A,t),i=!0),t.resetForm?(this._bindResetFormAction(A,t.resetForm),i=!0):this.isTooltipOnly&&!i&&(this._bindLink(A,""),i=!0)),this.container.classList.add("linkAnnotation"),i&&this.container.append(A),this.container}#As(){this.container.setAttribute("data-internal-link","")}_bindLink(t,e){t.href=this.linkService.getDestinationHash(e),t.onclick=()=>(e&&this.linkService.goToDestination(e),!1),(e||""===e)&&this.#As()}_bindNamedAction(t,e){t.href=this.linkService.getAnchorUrl(""),t.onclick=()=>(this.linkService.executeNamedAction(e),!1),this.#As()}#ts(t,e,A=null){t.href=this.linkService.getAnchorUrl(""),e.description&&(t.title=e.description),t.onclick=()=>(this.downloadManager?.openOrDownloadData(e.content,e.filename,A),!1),this.#As()}#es(t,e){t.href=this.linkService.getAnchorUrl(""),t.onclick=()=>(this.linkService.executeSetOCGState(e),!1),this.#As()}_bindJSAction(t,e){t.href=this.linkService.getAnchorUrl("");const A=new Map([["Action","onclick"],["Mouse Up","onmouseup"],["Mouse Down","onmousedown"]]);for(const i of Object.keys(e.actions)){const s=A.get(i);s&&(t[s]=()=>(this.linkService.eventBus?.dispatch("dispatcheventinsandbox",{source:this,detail:{id:e.id,name:i}}),!1))}t.onclick||(t.onclick=()=>!1),this.#As()}_bindResetFormAction(t,e){const A=t.onclick;if(A||(t.href=this.linkService.getAnchorUrl("")),this.#As(),!this._fieldObjects)return b('_bindResetFormAction - "resetForm" action not supported, ensure that the `fieldObjects` parameter is provided.'),void(A||(t.onclick=()=>!1));t.onclick=()=>{A?.();const{fields:t,refs:i,include:s}=e,a=[];if(0!==t.length||0!==i.length){const e=new Set(i);for(const A of t){const t=this._fieldObjects[A]||[];for(const{id:A}of t)e.add(A)}for(const t of Object.values(this._fieldObjects))for(const A of t)e.has(A.id)===s&&a.push(A)}else for(const t of Object.values(this._fieldObjects))a.push(...t);const n=this.annotationStorage,r=[];for(const t of a){const{id:e}=t;switch(r.push(e),t.type){case"text":{const A=t.defaultValue||"";n.setValue(e,{value:A});break}case"checkbox":case"radiobutton":{const A=t.defaultValue===t.exportValues;n.setValue(e,{value:A});break}case"combobox":case"listbox":{const A=t.defaultValue||"";n.setValue(e,{value:A});break}default:continue}const A=document.querySelector(`[data-element-id="${e}"]`);A&&(FA.has(A)?A.dispatchEvent(new Event("resetform")):b(`_bindResetFormAction - element not allowed: ${e}`))}return this.enableScripting&&this.linkService.eventBus?.dispatch("dispatcheventinsandbox",{source:this,detail:{id:"app",ids:r,name:"ResetForm"}}),!1}}}class GA extends NA{constructor(t){super(t,{isRenderable:!0})}render(){this.container.classList.add("textAnnotation");const t=document.createElement("img");return t.src=this.imageResourcesPath+"annotation-"+this.data.name.toLowerCase()+".svg",t.setAttribute("data-l10n-id","pdfjs-text-annotation-type"),t.setAttribute("data-l10n-args",JSON.stringify({type:this.data.name})),!this.data.popupRef&&this.hasPopupData&&this._createPopup(),this.container.append(t),this.container}}class MA extends NA{render(){return this.container}showElementAndHideCanvas(t){this.data.hasOwnCanvas&&("CANVAS"===t.previousSibling?.nodeName&&(t.previousSibling.hidden=!0),t.hidden=!1)}_getKeyModifier(t){return T.platform.isMac?t.metaKey:t.ctrlKey}_setEventListener(t,e,A,i,s){A.includes("mouse")?t.addEventListener(A,(t=>{this.linkService.eventBus?.dispatch("dispatcheventinsandbox",{source:this,detail:{id:this.data.id,name:i,value:s(t),shift:t.shiftKey,modifier:this._getKeyModifier(t)}})})):t.addEventListener(A,(t=>{if("blur"===A){if(!e.focused||!t.relatedTarget)return;e.focused=!1}else if("focus"===A){if(e.focused)return;e.focused=!0}s&&this.linkService.eventBus?.dispatch("dispatcheventinsandbox",{source:this,detail:{id:this.data.id,name:i,value:s(t)}})}))}_setEventListeners(t,e,A,i){for(const[s,a]of A)("Action"===a||this.data.actions?.[a])&&("Focus"!==a&&"Blur"!==a||(e||={focused:!1}),this._setEventListener(t,e,s,a,i),"Focus"!==a||this.data.actions?.Blur?"Blur"!==a||this.data.actions?.Focus||this._setEventListener(t,e,"focus","Focus",null):this._setEventListener(t,e,"blur","Blur",null))}_setBackgroundColor(t){const e=this.data.backgroundColor||null;t.style.backgroundColor=null===e?"transparent":q.makeHexColor(e[0],e[1],e[2])}_setTextStyle(t){const{fontColor:e}=this.data.defaultAppearanceData,A=this.data.defaultAppearanceData.fontSize||9,i=t.style;let s;const a=t=>Math.round(10*t)/10;if(this.data.multiLine){const t=Math.abs(this.data.rect[3]-this.data.rect[1]-2),e=t/(Math.round(t/(h*A))||1);s=Math.min(A,a(e/h))}else{const t=Math.abs(this.data.rect[3]-this.data.rect[1]-2);s=Math.min(A,a(t/h))}i.fontSize=`calc(${s}px * var(--scale-factor))`,i.color=q.makeHexColor(e[0],e[1],e[2]),null!==this.data.textAlignment&&(i.textAlign=["left","center","right"][this.data.textAlignment])}_setRequired(t,e){e?t.setAttribute("required",!0):t.removeAttribute("required"),t.setAttribute("aria-required",e)}}class LA extends MA{constructor(t){super(t,{isRenderable:t.renderForms||t.data.hasOwnCanvas||!t.data.hasAppearance&&!!t.data.fieldValue})}setPropertyOnSiblings(t,e,A,i){const s=this.annotationStorage;for(const a of this._getElementsByName(t.name,t.id))a.domElement&&(a.domElement[e]=A),s.setValue(a.id,{[i]:A})}render(){const t=this.annotationStorage,e=this.data.id;this.container.classList.add("textWidgetAnnotation");let A=null;if(this.renderForms){const i=t.getValue(e,{value:this.data.fieldValue});let s=i.value||"";const a=t.getValue(e,{charLimit:this.data.maxLen}).charLimit;a&&s.length>a&&(s=s.slice(0,a));let n=i.formattedValue||this.data.textContent?.join("\n")||null;n&&this.data.comb&&(n=n.replaceAll(/\s+/g,""));const r={userValue:s,formattedValue:n,lastCommittedValue:null,commitKey:1,focused:!1};this.data.multiLine?(A=document.createElement("textarea"),A.textContent=n??s,this.data.doNotScroll&&(A.style.overflowY="hidden")):(A=document.createElement("input"),A.type="text",A.setAttribute("value",n??s),this.data.doNotScroll&&(A.style.overflowX="hidden")),this.data.hasOwnCanvas&&(A.hidden=!0),FA.add(A),A.setAttribute("data-element-id",e),A.disabled=this.data.readOnly,A.name=this.data.fieldName,A.tabIndex=SA,this._setRequired(A,this.data.required),a&&(A.maxLength=a),A.addEventListener("input",(i=>{t.setValue(e,{value:i.target.value}),this.setPropertyOnSiblings(A,"value",i.target.value,"value"),r.formattedValue=null})),A.addEventListener("resetform",(t=>{const e=this.data.defaultFieldValue??"";A.value=r.userValue=e,r.formattedValue=null}));let o=t=>{const{formattedValue:e}=r;null!=e&&(t.target.value=e),t.target.scrollLeft=0};if(this.enableScripting&&this.hasJSActions){A.addEventListener("focus",(t=>{if(r.focused)return;const{target:e}=t;r.userValue&&(e.value=r.userValue),r.lastCommittedValue=e.value,r.commitKey=1,this.data.actions?.Focus||(r.focused=!0)})),A.addEventListener("updatefromsandbox",(A=>{this.showElementAndHideCanvas(A.target);const i={value(A){r.userValue=A.detail.value??"",t.setValue(e,{value:r.userValue.toString()}),A.target.value=r.userValue},formattedValue(A){const{formattedValue:i}=A.detail;r.formattedValue=i,null!=i&&A.target!==document.activeElement&&(A.target.value=i),t.setValue(e,{formattedValue:i})},selRange(t){t.target.setSelectionRange(...t.detail.selRange)},charLimit:A=>{const{charLimit:i}=A.detail,{target:s}=A;if(0===i)return void s.removeAttribute("maxLength");s.setAttribute("maxLength",i);let a=r.userValue;!a||a.length<=i||(a=a.slice(0,i),s.value=r.userValue=a,t.setValue(e,{value:a}),this.linkService.eventBus?.dispatch("dispatcheventinsandbox",{source:this,detail:{id:e,name:"Keystroke",value:a,willCommit:!0,commitKey:1,selStart:s.selectionStart,selEnd:s.selectionEnd}}))}};this._dispatchEventFromSandbox(i,A)})),A.addEventListener("keydown",(t=>{r.commitKey=1;let A=-1;if("Escape"===t.key?A=0:"Enter"!==t.key||this.data.multiLine?"Tab"===t.key&&(r.commitKey=3):A=2,-1===A)return;const{value:i}=t.target;r.lastCommittedValue!==i&&(r.lastCommittedValue=i,r.userValue=i,this.linkService.eventBus?.dispatch("dispatcheventinsandbox",{source:this,detail:{id:e,name:"Keystroke",value:i,willCommit:!0,commitKey:A,selStart:t.target.selectionStart,selEnd:t.target.selectionEnd}}))}));const i=o;o=null,A.addEventListener("blur",(t=>{if(!r.focused||!t.relatedTarget)return;this.data.actions?.Blur||(r.focused=!1);const{value:A}=t.target;r.userValue=A,r.lastCommittedValue!==A&&this.linkService.eventBus?.dispatch("dispatcheventinsandbox",{source:this,detail:{id:e,name:"Keystroke",value:A,willCommit:!0,commitKey:r.commitKey,selStart:t.target.selectionStart,selEnd:t.target.selectionEnd}}),i(t)})),this.data.actions?.Keystroke&&A.addEventListener("beforeinput",(t=>{r.lastCommittedValue=null;const{data:A,target:i}=t,{value:s,selectionStart:a,selectionEnd:n}=i;let o=a,g=n;switch(t.inputType){case"deleteWordBackward":{const t=s.substring(0,a).match(/\w*[^\w]*$/);t&&(o-=t[0].length);break}case"deleteWordForward":{const t=s.substring(a).match(/^[^\w]*\w*/);t&&(g+=t[0].length);break}case"deleteContentBackward":a===n&&(o-=1);break;case"deleteContentForward":a===n&&(g+=1)}t.preventDefault(),this.linkService.eventBus?.dispatch("dispatcheventinsandbox",{source:this,detail:{id:e,name:"Keystroke",value:s,change:A||"",willCommit:!1,selStart:o,selEnd:g}})})),this._setEventListeners(A,r,[["focus","Focus"],["blur","Blur"],["mousedown","Mouse Down"],["mouseenter","Mouse Enter"],["mouseleave","Mouse Exit"],["mouseup","Mouse Up"]],(t=>t.target.value))}if(o&&A.addEventListener("blur",o),this.data.comb){const t=(this.data.rect[2]-this.data.rect[0])/a;A.classList.add("comb"),A.style.letterSpacing=`calc(${t}px * var(--scale-factor) - 1ch)`}}else A=document.createElement("div"),A.textContent=this.data.fieldValue,A.style.verticalAlign="middle",A.style.display="table-cell",this.data.hasOwnCanvas&&(A.hidden=!0);return this._setTextStyle(A),this._setBackgroundColor(A),this._setDefaultPropertiesFromJS(A),this.container.append(A),this.container}}class UA extends MA{constructor(t){super(t,{isRenderable:!!t.data.hasOwnCanvas})}}class HA extends MA{constructor(t){super(t,{isRenderable:t.renderForms})}render(){const t=this.annotationStorage,e=this.data,A=e.id;let i=t.getValue(A,{value:e.exportValue===e.fieldValue}).value;"string"==typeof i&&(i="Off"!==i,t.setValue(A,{value:i})),this.container.classList.add("buttonWidgetAnnotation","checkBox");const s=document.createElement("input");return FA.add(s),s.setAttribute("data-element-id",A),s.disabled=e.readOnly,this._setRequired(s,this.data.required),s.type="checkbox",s.name=e.fieldName,i&&s.setAttribute("checked",!0),s.setAttribute("exportValue",e.exportValue),s.tabIndex=SA,s.addEventListener("change",(i=>{const{name:s,checked:a}=i.target;for(const i of this._getElementsByName(s,A)){const A=a&&i.exportValue===e.exportValue;i.domElement&&(i.domElement.checked=A),t.setValue(i.id,{value:A})}t.setValue(A,{value:a})})),s.addEventListener("resetform",(t=>{const A=e.defaultFieldValue||"Off";t.target.checked=A===e.exportValue})),this.enableScripting&&this.hasJSActions&&(s.addEventListener("updatefromsandbox",(e=>{const i={value(e){e.target.checked="Off"!==e.detail.value,t.setValue(A,{value:e.target.checked})}};this._dispatchEventFromSandbox(i,e)})),this._setEventListeners(s,null,[["change","Validate"],["change","Action"],["focus","Focus"],["blur","Blur"],["mousedown","Mouse Down"],["mouseenter","Mouse Enter"],["mouseleave","Mouse Exit"],["mouseup","Mouse Up"]],(t=>t.target.checked))),this._setBackgroundColor(s),this._setDefaultPropertiesFromJS(s),this.container.append(s),this.container}}class JA extends MA{constructor(t){super(t,{isRenderable:t.renderForms})}render(){this.container.classList.add("buttonWidgetAnnotation","radioButton");const t=this.annotationStorage,e=this.data,A=e.id;let i=t.getValue(A,{value:e.fieldValue===e.buttonValue}).value;if("string"==typeof i&&(i=i!==e.buttonValue,t.setValue(A,{value:i})),i)for(const i of this._getElementsByName(e.fieldName,A))t.setValue(i.id,{value:!1});const s=document.createElement("input");if(FA.add(s),s.setAttribute("data-element-id",A),s.disabled=e.readOnly,this._setRequired(s,this.data.required),s.type="radio",s.name=e.fieldName,i&&s.setAttribute("checked",!0),s.tabIndex=SA,s.addEventListener("change",(e=>{const{name:i,checked:s}=e.target;for(const e of this._getElementsByName(i,A))t.setValue(e.id,{value:!1});t.setValue(A,{value:s})})),s.addEventListener("resetform",(t=>{const A=e.defaultFieldValue;t.target.checked=null!=A&&A===e.buttonValue})),this.enableScripting&&this.hasJSActions){const i=e.buttonValue;s.addEventListener("updatefromsandbox",(e=>{const s={value:e=>{const s=i===e.detail.value;for(const i of this._getElementsByName(e.target.name)){const e=s&&i.id===A;i.domElement&&(i.domElement.checked=e),t.setValue(i.id,{value:e})}}};this._dispatchEventFromSandbox(s,e)})),this._setEventListeners(s,null,[["change","Validate"],["change","Action"],["focus","Focus"],["blur","Blur"],["mousedown","Mouse Down"],["mouseenter","Mouse Enter"],["mouseleave","Mouse Exit"],["mouseup","Mouse Up"]],(t=>t.target.checked))}return this._setBackgroundColor(s),this._setDefaultPropertiesFromJS(s),this.container.append(s),this.container}}class YA extends vA{constructor(t){super(t,{ignoreBorder:t.data.hasAppearance})}render(){const t=super.render();t.classList.add("buttonWidgetAnnotation","pushButton");const e=t.lastChild;return this.enableScripting&&this.hasJSActions&&e&&(this._setDefaultPropertiesFromJS(e),e.addEventListener("updatefromsandbox",(t=>{this._dispatchEventFromSandbox({},t)}))),t}}class TA extends MA{constructor(t){super(t,{isRenderable:t.renderForms})}render(){this.container.classList.add("choiceWidgetAnnotation");const t=this.annotationStorage,e=this.data.id,A=t.getValue(e,{value:this.data.fieldValue}),i=document.createElement("select");FA.add(i),i.setAttribute("data-element-id",e),i.disabled=this.data.readOnly,this._setRequired(i,this.data.required),i.name=this.data.fieldName,i.tabIndex=SA;let s=this.data.combo&&this.data.options.length>0;this.data.combo||(i.size=this.data.options.length,this.data.multiSelect&&(i.multiple=!0)),i.addEventListener("resetform",(t=>{const e=this.data.defaultFieldValue;for(const t of i.options)t.selected=t.value===e}));for(const t of this.data.options){const e=document.createElement("option");e.textContent=t.displayValue,e.value=t.exportValue,A.value.includes(t.exportValue)&&(e.setAttribute("selected",!0),s=!1),i.append(e)}let a=null;if(s){const t=document.createElement("option");t.value=" ",t.setAttribute("hidden",!0),t.setAttribute("selected",!0),i.prepend(t),a=()=>{t.remove(),i.removeEventListener("input",a),a=null},i.addEventListener("input",a)}const n=t=>{const e=t?"value":"textContent",{options:A,multiple:s}=i;return s?Array.prototype.filter.call(A,(t=>t.selected)).map((t=>t[e])):-1===A.selectedIndex?null:A[A.selectedIndex][e]};let r=n(!1);const o=t=>{const e=t.target.options;return Array.prototype.map.call(e,(t=>({displayValue:t.textContent,exportValue:t.value})))};return this.enableScripting&&this.hasJSActions?(i.addEventListener("updatefromsandbox",(A=>{const s={value(A){a?.();const s=A.detail.value,o=new Set(Array.isArray(s)?s:[s]);for(const t of i.options)t.selected=o.has(t.value);t.setValue(e,{value:n(!0)}),r=n(!1)},multipleSelection(t){i.multiple=!0},remove(A){const s=i.options,a=A.detail.remove;s[a].selected=!1,i.remove(a),s.length>0&&-1===Array.prototype.findIndex.call(s,(t=>t.selected))&&(s[0].selected=!0),t.setValue(e,{value:n(!0),items:o(A)}),r=n(!1)},clear(A){for(;0!==i.length;)i.remove(0);t.setValue(e,{value:null,items:[]}),r=n(!1)},insert(A){const{index:s,displayValue:a,exportValue:g}=A.detail.insert,c=i.children[s],h=document.createElement("option");h.textContent=a,h.value=g,c?c.before(h):i.append(h),t.setValue(e,{value:n(!0),items:o(A)}),r=n(!1)},items(A){const{items:s}=A.detail;for(;0!==i.length;)i.remove(0);for(const t of s){const{displayValue:e,exportValue:A}=t,s=document.createElement("option");s.textContent=e,s.value=A,i.append(s)}i.options.length>0&&(i.options[0].selected=!0),t.setValue(e,{value:n(!0),items:o(A)}),r=n(!1)},indices(A){const i=new Set(A.detail.indices);for(const t of A.target.options)t.selected=i.has(t.index);t.setValue(e,{value:n(!0)}),r=n(!1)},editable(t){t.target.disabled=!t.detail.editable}};this._dispatchEventFromSandbox(s,A)})),i.addEventListener("input",(A=>{const i=n(!0),s=n(!1);t.setValue(e,{value:i}),A.preventDefault(),this.linkService.eventBus?.dispatch("dispatcheventinsandbox",{source:this,detail:{id:e,name:"Keystroke",value:r,change:s,changeEx:i,willCommit:!1,commitKey:1,keyDown:!1}})})),this._setEventListeners(i,null,[["focus","Focus"],["blur","Blur"],["mousedown","Mouse Down"],["mouseenter","Mouse Enter"],["mouseleave","Mouse Exit"],["mouseup","Mouse Up"],["input","Action"],["input","Validate"]],(t=>t.target.value))):i.addEventListener("input",(function(A){t.setValue(e,{value:n(!0)})})),this.data.combo&&this._setTextStyle(i),this._setBackgroundColor(i),this._setDefaultPropertiesFromJS(i),this.container.append(i),this.container}}class KA extends NA{constructor(t){const{data:e,elements:A}=t;super(t,{isRenderable:NA._hasPopupData(e)}),this.elements=A,this.popup=null}render(){this.container.classList.add("popupAnnotation");const t=this.popup=new qA({container:this.container,color:this.data.color,titleObj:this.data.titleObj,modificationDate:this.data.modificationDate,contentsObj:this.data.contentsObj,richText:this.data.richText,rect:this.data.rect,parentRect:this.data.parentRect||null,parent:this.parent,elements:this.elements,open:this.data.open}),e=[];for(const A of this.elements)A.popup=t,e.push(A.data.id),A.addHighlightArea();return this.container.setAttribute("aria-controls",e.map((t=>`${W}${t}`)).join(",")),this.container}}class qA{#is=this.#ss.bind(this);#as=this.#ns.bind(this);#rs=this.#os.bind(this);#gs=this.#cs.bind(this);#hs=null;#ge=null;#ls=null;#Is=null;#Cs=null;#Bs=null;#ds=null;#us=!1;#Qs=null;#ut=null;#Es=null;#fs=null;#ps=null;#Vi=null;#ms=!1;constructor({container:t,color:e,elements:A,titleObj:i,modificationDate:s,contentsObj:a,richText:n,parent:r,rect:o,parentRect:g,open:c}){this.#ge=t,this.#ps=i,this.#ls=a,this.#fs=n,this.#Bs=r,this.#hs=e,this.#Es=o,this.#ds=g,this.#Cs=A,this.#Is=dt.toDateObject(s),this.trigger=A.flatMap((t=>t.getElementsToTriggerPopup()));for(const t of this.trigger)t.addEventListener("click",this.#gs),t.addEventListener("mouseenter",this.#rs),t.addEventListener("mouseleave",this.#as),t.classList.add("popupTriggerArea");for(const t of A)t.container?.addEventListener("keydown",this.#is);this.#ge.hidden=!0,c&&this.#cs()}render(){if(this.#Qs)return;const t=this.#Qs=document.createElement("div");if(t.className="popup",this.#hs){const e=t.style.outlineColor=q.makeHexColor(...this.#hs);if(CSS.supports("background-color","color-mix(in srgb, red 30%, white)"))t.style.backgroundColor=`color-mix(in srgb, ${e} 30%, white)`;else{const e=.7;t.style.backgroundColor=q.makeHexColor(...this.#hs.map((t=>Math.floor(e*(255-t)+t))))}}const e=document.createElement("span");e.className="header";const A=document.createElement("h1");if(e.append(A),({dir:A.dir,str:A.textContent}=this.#ps),t.append(e),this.#Is){const t=document.createElement("span");t.classList.add("popupDate"),t.setAttribute("data-l10n-id","pdfjs-annotation-date-string"),t.setAttribute("data-l10n-args",JSON.stringify({date:this.#Is.toLocaleDateString(),time:this.#Is.toLocaleTimeString()})),e.append(t)}const i=this.#ys;if(i)kA.render({xfaHtml:i,intent:"richText",div:t}),t.lastChild.classList.add("richText","popupContent");else{const e=this._formatContents(this.#ls);t.append(e)}this.#ge.append(t)}get#ys(){const t=this.#fs,e=this.#ls;return!t?.str||e?.str&&e.str!==t.str?null:this.#fs.html||null}get#ws(){return this.#ys?.attributes?.style?.fontSize||0}get#bs(){return this.#ys?.attributes?.style?.color||null}#Ds(t){const e=[],A={str:t,html:{name:"div",attributes:{dir:"auto"},children:[{name:"p",children:e}]}},i={style:{color:this.#bs,fontSize:this.#ws?`calc(${this.#ws}px * var(--scale-factor))`:""}};for(const A of t.split("\n"))e.push({name:"span",value:A,attributes:i});return A}_formatContents({str:t,dir:e}){const A=document.createElement("p");A.classList.add("popupContent"),A.dir=e;const i=t.split(/(?:\r\n?|\n)/);for(let t=0,e=i.length;t<e;++t){const s=i[t];A.append(document.createTextNode(s)),t<e-1&&A.append(document.createElement("br"))}return A}#ss(t){t.altKey||t.shiftKey||t.ctrlKey||t.metaKey||("Enter"===t.key||"Escape"===t.key&&this.#us)&&this.#cs()}updateEdited({rect:t,popupContent:e}){this.#Vi||={contentsObj:this.#ls,richText:this.#fs},t&&(this.#ut=null),e&&(this.#fs=this.#Ds(e),this.#ls=null),this.#Qs?.remove(),this.#Qs=null}resetEdited(){this.#Vi&&(({contentsObj:this.#ls,richText:this.#fs}=this.#Vi),this.#Vi=null,this.#Qs?.remove(),this.#Qs=null,this.#ut=null)}#ks(){if(null!==this.#ut)return;const{page:{view:t},viewport:{rawDims:{pageWidth:e,pageHeight:A,pageX:i,pageY:s}}}=this.#Bs;let a=!!this.#ds,n=a?this.#ds:this.#Es;for(const t of this.#Cs)if(!n||null!==q.intersect(t.data.rect,n)){n=t.data.rect,a=!0;break}const r=q.normalizeRect([n[0],t[3]-n[1]+t[1],n[2],t[3]-n[3]+t[1]]),o=a?n[2]-n[0]+5:0,g=r[0]+o,c=r[1];this.#ut=[100*(g-i)/e,100*(c-s)/A];const{style:h}=this.#ge;h.left=`${this.#ut[0]}%`,h.top=`${this.#ut[1]}%`}#cs(){this.#us=!this.#us,this.#us?(this.#os(),this.#ge.addEventListener("click",this.#gs),this.#ge.addEventListener("keydown",this.#is)):(this.#ns(),this.#ge.removeEventListener("click",this.#gs),this.#ge.removeEventListener("keydown",this.#is))}#os(){this.#Qs||this.render(),this.isVisible?this.#us&&this.#ge.classList.add("focused"):(this.#ks(),this.#ge.hidden=!1,this.#ge.style.zIndex=parseInt(this.#ge.style.zIndex)+1e3)}#ns(){this.#ge.classList.remove("focused"),!this.#us&&this.isVisible&&(this.#ge.hidden=!0,this.#ge.style.zIndex=parseInt(this.#ge.style.zIndex)-1e3)}forceHide(){this.#ms=this.isVisible,this.#ms&&(this.#ge.hidden=!0)}maybeShow(){this.#ms&&(this.#Qs||this.#os(),this.#ms=!1,this.#ge.hidden=!1)}get isVisible(){return!1===this.#ge.hidden}}class PA extends NA{constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0}),this.textContent=t.data.textContent,this.textPosition=t.data.textPosition,this.annotationEditorType=I.FREETEXT}render(){if(this.container.classList.add("freeTextAnnotation"),this.textContent){const t=document.createElement("div");t.classList.add("annotationTextContent"),t.setAttribute("role","comment");for(const e of this.textContent){const A=document.createElement("span");A.textContent=e,t.append(A)}this.container.append(t)}return!this.data.popupRef&&this.hasPopupData&&this._createPopup(),this._editOnDoubleClick(),this.container}get _isEditable(){return this.data.hasOwnCanvas}}class _A extends NA{#Ss=null;constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0})}render(){this.container.classList.add("lineAnnotation");const t=this.data,{width:e,height:A}=RA(t.rect),i=this.svgFactory.create(e,A,!0),s=this.#Ss=this.svgFactory.createElement("svg:line");return s.setAttribute("x1",t.rect[2]-t.lineCoordinates[0]),s.setAttribute("y1",t.rect[3]-t.lineCoordinates[1]),s.setAttribute("x2",t.rect[2]-t.lineCoordinates[2]),s.setAttribute("y2",t.rect[3]-t.lineCoordinates[3]),s.setAttribute("stroke-width",t.borderStyle.width||1),s.setAttribute("stroke","transparent"),s.setAttribute("fill","transparent"),i.append(s),this.container.append(i),!t.popupRef&&this.hasPopupData&&this._createPopup(),this.container}getElementsToTriggerPopup(){return this.#Ss}addHighlightArea(){this.container.classList.add("highlightArea")}}class OA extends NA{#Fs=null;constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0})}render(){this.container.classList.add("squareAnnotation");const t=this.data,{width:e,height:A}=RA(t.rect),i=this.svgFactory.create(e,A,!0),s=t.borderStyle.width,a=this.#Fs=this.svgFactory.createElement("svg:rect");return a.setAttribute("x",s/2),a.setAttribute("y",s/2),a.setAttribute("width",e-s),a.setAttribute("height",A-s),a.setAttribute("stroke-width",s||1),a.setAttribute("stroke","transparent"),a.setAttribute("fill","transparent"),i.append(a),this.container.append(i),!t.popupRef&&this.hasPopupData&&this._createPopup(),this.container}getElementsToTriggerPopup(){return this.#Fs}addHighlightArea(){this.container.classList.add("highlightArea")}}class WA extends NA{#Rs=null;constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0})}render(){this.container.classList.add("circleAnnotation");const t=this.data,{width:e,height:A}=RA(t.rect),i=this.svgFactory.create(e,A,!0),s=t.borderStyle.width,a=this.#Rs=this.svgFactory.createElement("svg:ellipse");return a.setAttribute("cx",e/2),a.setAttribute("cy",A/2),a.setAttribute("rx",e/2-s/2),a.setAttribute("ry",A/2-s/2),a.setAttribute("stroke-width",s||1),a.setAttribute("stroke","transparent"),a.setAttribute("fill","transparent"),i.append(a),this.container.append(i),!t.popupRef&&this.hasPopupData&&this._createPopup(),this.container}getElementsToTriggerPopup(){return this.#Rs}addHighlightArea(){this.container.classList.add("highlightArea")}}class ZA extends NA{#xs=null;constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0}),this.containerClassName="polylineAnnotation",this.svgElementName="svg:polyline"}render(){this.container.classList.add(this.containerClassName);const{data:{rect:t,vertices:e,borderStyle:A,popupRef:i}}=this;if(!e)return this.container;const{width:s,height:a}=RA(t),n=this.svgFactory.create(s,a,!0);let r=[];for(let A=0,i=e.length;A<i;A+=2){const i=e[A]-t[0],s=t[3]-e[A+1];r.push(`${i},${s}`)}r=r.join(" ");const o=this.#xs=this.svgFactory.createElement(this.svgElementName);return o.setAttribute("points",r),o.setAttribute("stroke-width",A.width||1),o.setAttribute("stroke","transparent"),o.setAttribute("fill","transparent"),n.append(o),this.container.append(n),!i&&this.hasPopupData&&this._createPopup(),this.container}getElementsToTriggerPopup(){return this.#xs}addHighlightArea(){this.container.classList.add("highlightArea")}}class jA extends ZA{constructor(t){super(t),this.containerClassName="polygonAnnotation",this.svgElementName="svg:polygon"}}class VA extends NA{constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0})}render(){return this.container.classList.add("caretAnnotation"),!this.data.popupRef&&this.hasPopupData&&this._createPopup(),this.container}}class XA extends NA{#Ns=[];constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0}),this.containerClassName="inkAnnotation",this.svgElementName="svg:polyline",this.annotationEditorType=I.INK}render(){this.container.classList.add(this.containerClassName);const{data:{rect:t,inkLists:e,borderStyle:A,popupRef:i}}=this,{width:s,height:a}=RA(t),n=this.svgFactory.create(s,a,!0);for(const s of e){let e=[];for(let A=0,i=s.length;A<i;A+=2){const i=s[A]-t[0],a=t[3]-s[A+1];e.push(`${i},${a}`)}e=e.join(" ");const a=this.svgFactory.createElement(this.svgElementName);this.#Ns.push(a),a.setAttribute("points",e),a.setAttribute("stroke-width",A.width||1),a.setAttribute("stroke","transparent"),a.setAttribute("fill","transparent"),!i&&this.hasPopupData&&this._createPopup(),n.append(a)}return this.container.append(n),this.container}getElementsToTriggerPopup(){return this.#Ns}addHighlightArea(){this.container.classList.add("highlightArea")}}class zA extends NA{constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0,createQuadrilaterals:!0})}render(){return!this.data.popupRef&&this.hasPopupData&&this._createPopup(),this.container.classList.add("highlightAnnotation"),this.container}}class $A extends NA{constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0,createQuadrilaterals:!0})}render(){return!this.data.popupRef&&this.hasPopupData&&this._createPopup(),this.container.classList.add("underlineAnnotation"),this.container}}class ti extends NA{constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0,createQuadrilaterals:!0})}render(){return!this.data.popupRef&&this.hasPopupData&&this._createPopup(),this.container.classList.add("squigglyAnnotation"),this.container}}class ei extends NA{constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0,createQuadrilaterals:!0})}render(){return!this.data.popupRef&&this.hasPopupData&&this._createPopup(),this.container.classList.add("strikeoutAnnotation"),this.container}}class Ai extends NA{constructor(t){super(t,{isRenderable:!0,ignoreBorder:!0})}render(){return this.container.classList.add("stampAnnotation"),!this.data.popupRef&&this.hasPopupData&&this._createPopup(),this.container}}class ii extends NA{#vs=null;constructor(t){super(t,{isRenderable:!0});const{file:e}=this.data;this.filename=e.filename,this.content=e.content,this.linkService.eventBus?.dispatch("fileattachmentannotation",{source:this,...e})}render(){this.container.classList.add("fileAttachmentAnnotation");const{container:t,data:e}=this;let A;e.hasAppearance||0===e.fillAlpha?A=document.createElement("div"):(A=document.createElement("img"),A.src=`${this.imageResourcesPath}annotation-${/paperclip/i.test(e.name)?"paperclip":"pushpin"}.svg`,e.fillAlpha&&e.fillAlpha<1&&(A.style=`filter: opacity(${Math.round(100*e.fillAlpha)}%);`)),A.addEventListener("dblclick",this.#Gs.bind(this)),this.#vs=A;const{isMac:i}=T.platform;return t.addEventListener("keydown",(t=>{"Enter"===t.key&&(i?t.metaKey:t.ctrlKey)&&this.#Gs()})),!e.popupRef&&this.hasPopupData?this._createPopup():A.classList.add("popupTriggerArea"),t.append(A),t}getElementsToTriggerPopup(){return this.#vs}addHighlightArea(){this.container.classList.add("highlightArea")}#Gs(){this.downloadManager?.openOrDownloadData(this.content,this.filename)}}class si{#Ms=null;#Ls=null;#Us=new Map;constructor({div:t,accessibilityManager:e,annotationCanvasMap:A,annotationEditorUIManager:i,page:s,viewport:a}){this.div=t,this.#Ms=e,this.#Ls=A,this.page=s,this.viewport=a,this.zIndex=0,this._annotationEditorUIManager=i}#Hs(t,e){const A=t.firstChild||t;A.id=`${W}${e}`,this.div.append(t),this.#Ms?.moveElementInDOM(this.div,t,A,!1)}async render(t){const{annotations:e}=t,A=this.div;pt(A,this.viewport);const i=new Map,s={data:null,layer:A,linkService:t.linkService,downloadManager:t.downloadManager,imageResourcesPath:t.imageResourcesPath||"",renderForms:!1!==t.renderForms,svgFactory:new st,annotationStorage:t.annotationStorage||new Jt,enableScripting:!0===t.enableScripting,hasJSActions:t.hasJSActions,fieldObjects:t.fieldObjects,parent:this,elements:null};for(const t of e){if(t.noHTML)continue;const e=16===t.annotationType;if(e){const e=i.get(t.id);if(!e)continue;s.elements=e}else{const{width:e,height:A}=RA(t.rect);if(e<=0||A<=0)continue}s.data=t;const A=xA.create(s);if(!A.isRenderable)continue;if(!e&&t.popupRef){const e=i.get(t.popupRef);e?e.push(A):i.set(t.popupRef,[A])}const a=A.render();t.hidden&&(a.style.visibility="hidden"),this.#Hs(a,t.id),A.annotationEditorType>0&&(this.#Us.set(A.data.id,A),this._annotationEditorUIManager?.renderAnnotationElement(A))}this.#Js()}update({viewport:t}){const e=this.div;this.viewport=t,pt(e,{rotation:t.rotation}),this.#Js(),e.hidden=!1}#Js(){if(!this.#Ls)return;const t=this.div;for(const[e,A]of this.#Ls){const i=t.querySelector(`[data-annotation-id="${e}"]`);if(!i)continue;A.className="annotationContent";const{firstChild:s}=i;s?"CANVAS"===s.nodeName?s.replaceWith(A):s.classList.contains("annotationContent")?s.after(A):s.before(A):i.append(A)}this.#Ls.clear()}getEditableAnnotations(){return Array.from(this.#Us.values())}getEditableAnnotation(t){return this.#Us.get(t)}}const ai=/\r\n?|\n/g;class ni extends Nt{#Ys=this.editorDivBlur.bind(this);#Ts=this.editorDivFocus.bind(this);#Ks=this.editorDivInput.bind(this);#qs=this.editorDivKeydown.bind(this);#Ps=this.editorDivPaste.bind(this);#hs;#_s="";#Os=`${this.id}-editor`;#ws;#Ws=null;static _freeTextDefaultContent="";static _internalPadding=0;static _defaultColor=null;static _defaultFontSize=10;static get _keyboardManager(){const t=ni.prototype,e=t=>t.isEmpty(),A=Rt.TRANSLATE_SMALL,i=Rt.TRANSLATE_BIG;return F(this,"_keyboardManager",new St([[["ctrl+s","mac+meta+s","ctrl+p","mac+meta+p"],t.commitOrRemove,{bubbles:!0}],[["ctrl+Enter","mac+meta+Enter","Escape","mac+Escape"],t.commitOrRemove],[["ArrowLeft","mac+ArrowLeft"],t._translateEmpty,{args:[-A,0],checker:e}],[["ctrl+ArrowLeft","mac+shift+ArrowLeft"],t._translateEmpty,{args:[-i,0],checker:e}],[["ArrowRight","mac+ArrowRight"],t._translateEmpty,{args:[A,0],checker:e}],[["ctrl+ArrowRight","mac+shift+ArrowRight"],t._translateEmpty,{args:[i,0],checker:e}],[["ArrowUp","mac+ArrowUp"],t._translateEmpty,{args:[0,-A],checker:e}],[["ctrl+ArrowUp","mac+shift+ArrowUp"],t._translateEmpty,{args:[0,-i],checker:e}],[["ArrowDown","mac+ArrowDown"],t._translateEmpty,{args:[0,A],checker:e}],[["ctrl+ArrowDown","mac+shift+ArrowDown"],t._translateEmpty,{args:[0,i],checker:e}]]))}static _type="freetext";static _editorType=I.FREETEXT;constructor(t){super({...t,name:"freeTextEditor"}),this.#hs=t.color||ni._defaultColor||Nt._defaultLineColor,this.#ws=t.fontSize||ni._defaultFontSize}static initialize(t,e){Nt.initialize(t,e,{strings:["pdfjs-free-text-default-content"]});const A=getComputedStyle(document.documentElement);this._internalPadding=parseFloat(A.getPropertyValue("--freetext-padding"))}static updateDefaultParams(t,e){switch(t){case C.FREETEXT_SIZE:ni._defaultFontSize=e;break;case C.FREETEXT_COLOR:ni._defaultColor=e}}updateParams(t,e){switch(t){case C.FREETEXT_SIZE:this.#Zs(e);break;case C.FREETEXT_COLOR:this.#js(e)}}static get defaultPropertiesToUpdate(){return[[C.FREETEXT_SIZE,ni._defaultFontSize],[C.FREETEXT_COLOR,ni._defaultColor||Nt._defaultLineColor]]}get propertiesToUpdate(){return[[C.FREETEXT_SIZE,this.#ws],[C.FREETEXT_COLOR,this.#hs]]}#Zs(t){const e=t=>{this.editorDiv.style.fontSize=`calc(${t}px * var(--scale-factor))`,this.translate(0,-(t-this.#ws)*this.parentScale),this.#ws=t,this.#Vs()},A=this.#ws;this.addCommands({cmd:e.bind(this,t),undo:e.bind(this,A),post:this._uiManager.updateUI.bind(this._uiManager,this),mustExec:!0,type:C.FREETEXT_SIZE,overwriteIfSameType:!0,keepUndo:!0})}#js(t){const e=t=>{this.#hs=this.editorDiv.style.color=t},A=this.#hs;this.addCommands({cmd:e.bind(this,t),undo:e.bind(this,A),post:this._uiManager.updateUI.bind(this._uiManager,this),mustExec:!0,type:C.FREETEXT_COLOR,overwriteIfSameType:!0,keepUndo:!0})}_translateEmpty(t,e){this._uiManager.translateSelectedEditors(t,e,!0)}getInitialTranslation(){const t=this.parentScale;return[-ni._internalPadding*t,-(ni._internalPadding+this.#ws)*t]}rebuild(){this.parent&&(super.rebuild(),null!==this.div&&(this.isAttachedToDOM||this.parent.add(this)))}enableEditMode(){if(this.isInEditMode())return;this.parent.setEditingState(!1),this.parent.updateToolbar(I.FREETEXT),super.enableEditMode(),this.overlayDiv.classList.remove("enabled"),this.editorDiv.contentEditable=!0,this._isDraggable=!1,this.div.removeAttribute("aria-activedescendant");const t=this._uiManager._signal;this.editorDiv.addEventListener("keydown",this.#qs,{signal:t}),this.editorDiv.addEventListener("focus",this.#Ts,{signal:t}),this.editorDiv.addEventListener("blur",this.#Ys,{signal:t}),this.editorDiv.addEventListener("input",this.#Ks,{signal:t}),this.editorDiv.addEventListener("paste",this.#Ps,{signal:t})}disableEditMode(){this.isInEditMode()&&(this.parent.setEditingState(!0),super.disableEditMode(),this.overlayDiv.classList.add("enabled"),this.editorDiv.contentEditable=!1,this.div.setAttribute("aria-activedescendant",this.#Os),this._isDraggable=!0,this.editorDiv.removeEventListener("keydown",this.#qs),this.editorDiv.removeEventListener("focus",this.#Ts),this.editorDiv.removeEventListener("blur",this.#Ys),this.editorDiv.removeEventListener("input",this.#Ks),this.editorDiv.removeEventListener("paste",this.#Ps),this.div.focus({preventScroll:!0}),this.isEditing=!1,this.parent.div.classList.add("freetextEditing"))}focusin(t){this._focusEventsAllowed&&(super.focusin(t),t.target!==this.editorDiv&&this.editorDiv.focus())}onceAdded(){this.width||(this.enableEditMode(),this.editorDiv.focus(),this._initialOptions?.isCentered&&this.center(),this._initialOptions=null)}isEmpty(){return!this.editorDiv||""===this.editorDiv.innerText.trim()}remove(){this.isEditing=!1,this.parent&&(this.parent.setEditingState(!0),this.parent.div.classList.add("freetextEditing")),super.remove()}#Xs(){const t=[];this.editorDiv.normalize();for(const e of this.editorDiv.childNodes)t.push(ni.#zs(e));return t.join("\n")}#Vs(){const[t,e]=this.parentDimensions;let A;if(this.isAttachedToDOM)A=this.div.getBoundingClientRect();else{const{currentLayer:t,div:e}=this,i=e.style.display,s=e.classList.contains("hidden");e.classList.remove("hidden"),e.style.display="hidden",t.div.append(this.div),A=e.getBoundingClientRect(),e.remove(),e.style.display=i,e.classList.toggle("hidden",s)}this.rotation%180==this.parentRotation%180?(this.width=A.width/t,this.height=A.height/e):(this.width=A.height/t,this.height=A.width/e),this.fixAndSetPosition()}commit(){if(!this.isInEditMode())return;super.commit(),this.disableEditMode();const t=this.#_s,e=this.#_s=this.#Xs().trimEnd();if(t===e)return;const A=t=>{this.#_s=t,t?(this.#$s(),this._uiManager.rebuild(this),this.#Vs()):this.remove()};this.addCommands({cmd:()=>{A(e)},undo:()=>{A(t)},mustExec:!1}),this.#Vs()}shouldGetKeyboardEvents(){return this.isInEditMode()}enterInEditMode(){this.enableEditMode(),this.editorDiv.focus()}dblclick(t){this.enterInEditMode()}keydown(t){t.target===this.div&&"Enter"===t.key&&(this.enterInEditMode(),t.preventDefault())}editorDivKeydown(t){ni._keyboardManager.exec(this,t)}editorDivFocus(t){this.isEditing=!0}editorDivBlur(t){this.isEditing=!1}editorDivInput(t){this.parent.div.classList.toggle("freetextEditing",this.isEmpty())}disableEditing(){this.editorDiv.setAttribute("role","comment"),this.editorDiv.removeAttribute("aria-multiline")}enableEditing(){this.editorDiv.setAttribute("role","textbox"),this.editorDiv.setAttribute("aria-multiline",!0)}render(){if(this.div)return this.div;let t,e;this.width&&(t=this.x,e=this.y),super.render(),this.editorDiv=document.createElement("div"),this.editorDiv.className="internal",this.editorDiv.setAttribute("id",this.#Os),this.editorDiv.setAttribute("data-l10n-id","pdfjs-free-text"),this.enableEditing(),Nt._l10nPromise.get("pdfjs-free-text-default-content").then((t=>this.editorDiv?.setAttribute("default-content",t))),this.editorDiv.contentEditable=!0;const{style:A}=this.editorDiv;if(A.fontSize=`calc(${this.#ws}px * var(--scale-factor))`,A.color=this.#hs,this.div.append(this.editorDiv),this.overlayDiv=document.createElement("div"),this.overlayDiv.classList.add("overlay","enabled"),this.div.append(this.overlayDiv),wt(this,this.div,["dblclick","keydown"]),this.width){const[A,i]=this.parentDimensions;if(this.annotationElementId){const{position:s}=this.#Ws;let[a,n]=this.getInitialTranslation();[a,n]=this.pageTranslationToScreen(a,n);const[r,o]=this.pageDimensions,[g,c]=this.pageTranslation;let h,l;switch(this.rotation){case 0:h=t+(s[0]-g)/r,l=e+this.height-(s[1]-c)/o;break;case 90:h=t+(s[0]-g)/r,l=e-(s[1]-c)/o,[a,n]=[n,-a];break;case 180:h=t-this.width+(s[0]-g)/r,l=e-(s[1]-c)/o,[a,n]=[-a,-n];break;case 270:h=t+(s[0]-g-this.height*o)/r,l=e+(s[1]-c-this.width*r)/o,[a,n]=[-n,a]}this.setAt(h*A,l*i,a,n)}else this.setAt(t*A,e*i,this.width*A,this.height*i);this.#$s(),this._isDraggable=!0,this.editorDiv.contentEditable=!1}else this._isDraggable=!1,this.editorDiv.contentEditable=!0;return this.div}static#zs(t){return(t.nodeType===Node.TEXT_NODE?t.nodeValue:t.innerText).replaceAll(ai,"")}editorDivPaste(t){const e=t.clipboardData||window.clipboardData,{types:A}=e;if(1===A.length&&"text/plain"===A[0])return;t.preventDefault();const i=ni.#ta(e.getData("text")||"").replaceAll(ai,"\n");if(!i)return;const s=window.getSelection();if(!s.rangeCount)return;this.editorDiv.normalize(),s.deleteFromDocument();const a=s.getRangeAt(0);if(!i.includes("\n"))return a.insertNode(document.createTextNode(i)),this.editorDiv.normalize(),void s.collapseToStart();const{startContainer:n,startOffset:r}=a,o=[],g=[];if(n.nodeType===Node.TEXT_NODE){const t=n.parentElement;if(g.push(n.nodeValue.slice(r).replaceAll(ai,"")),t!==this.editorDiv){let e=o;for(const A of this.editorDiv.childNodes)A!==t?e.push(ni.#zs(A)):e=g}o.push(n.nodeValue.slice(0,r).replaceAll(ai,""))}else if(n===this.editorDiv){let t=o,e=0;for(const A of this.editorDiv.childNodes)e++===r&&(t=g),t.push(ni.#zs(A))}this.#_s=`${o.join("\n")}${i}${g.join("\n")}`,this.#$s();const c=new Range;let h=o.reduce(((t,e)=>t+e.length),0);for(const{firstChild:t}of this.editorDiv.childNodes)if(t.nodeType===Node.TEXT_NODE){const e=t.nodeValue.length;if(h<=e){c.setStart(t,h),c.setEnd(t,h);break}h-=e}s.removeAllRanges(),s.addRange(c)}#$s(){if(this.editorDiv.replaceChildren(),this.#_s)for(const t of this.#_s.split("\n")){const e=document.createElement("div");e.append(t?document.createTextNode(t):document.createElement("br")),this.editorDiv.append(e)}}#ea(){return this.#_s.replaceAll(" "," ")}static#ta(t){return t.replaceAll(" "," ")}get contentDiv(){return this.editorDiv}static deserialize(t,e,A){let i=null;if(t instanceof PA){const{data:{defaultAppearanceData:{fontSize:e,fontColor:A},rect:s,rotation:a,id:n},textContent:r,textPosition:o,parent:{page:{pageNumber:g}}}=t;if(!r||0===r.length)return null;i=t={annotationType:I.FREETEXT,color:Array.from(A),fontSize:e,value:r.join("\n"),position:o,pageIndex:g-1,rect:s.slice(0),rotation:a,id:n,deleted:!1}}const s=super.deserialize(t,e,A);return s.#ws=t.fontSize,s.#hs=q.makeHexColor(...t.color),s.#_s=ni.#ta(t.value),s.annotationElementId=t.id||null,s.#Ws=i,s}serialize(t=!1){if(this.isEmpty())return null;if(this.deleted)return{pageIndex:this.pageIndex,id:this.annotationElementId,deleted:!0};const e=ni._internalPadding*this.parentScale,A=this.getRect(e,e),i=Nt._colorManager.convert(this.isAttachedToDOM?getComputedStyle(this.editorDiv).color:this.#hs),s={annotationType:I.FREETEXT,color:i,fontSize:this.#ws,value:this.#ea(),pageIndex:this.pageIndex,rect:A,rotation:this.rotation,structTreeParentId:this._structTreeParentId};return t?s:this.annotationElementId&&!this.#Aa(s)?null:(s.id=this.annotationElementId,s)}#Aa(t){const{value:e,fontSize:A,color:i,pageIndex:s}=this.#Ws;return this._hasBeenMoved||t.value!==e||t.fontSize!==A||t.color.some(((t,e)=>t!==i[e]))||t.pageIndex!==s}renderAnnotationElement(t){const e=super.renderAnnotationElement(t);if(this.deleted)return e;const{style:A}=e;A.fontSize=`calc(${this.#ws}px * var(--scale-factor))`,A.color=this.#hs,e.replaceChildren();for(const t of this.#_s.split("\n")){const A=document.createElement("div");A.append(t?document.createTextNode(t):document.createElement("br")),e.append(A)}const i=ni._internalPadding*this.parentScale;return t.updateEdited({rect:this.getRect(i,i),popupContent:this.#_s}),e}resetAnnotationElement(t){super.resetAnnotationElement(t),t.resetEdited()}}class ri{#ia;#sa=[];#aa=[];constructor(t,e=0,A=0,i=!0){let s=1/0,a=-1/0,n=1/0,r=-1/0;const o=10**-4;for(const{x:A,y:i,width:g,height:c}of t){const t=Math.floor((A-e)/o)*o,h=Math.ceil((A+g+e)/o)*o,l=Math.floor((i-e)/o)*o,I=Math.ceil((i+c+e)/o)*o,C=[t,l,I,!0],B=[h,l,I,!1];this.#sa.push(C,B),s=Math.min(s,t),a=Math.max(a,h),n=Math.min(n,l),r=Math.max(r,I)}const g=a-s+2*A,c=r-n+2*A,h=s-A,l=n-A,I=this.#sa.at(i?-1:-2),C=[I[0],I[2]];for(const t of this.#sa){const[e,A,i]=t;t[0]=(e-h)/g,t[1]=(A-l)/c,t[2]=(i-l)/c}this.#ia={x:h,y:l,width:g,height:c,lastPoint:C}}getOutlines(){this.#sa.sort(((t,e)=>t[0]-e[0]||t[1]-e[1]||t[2]-e[2]));const t=[];for(const e of this.#sa)e[3]?(t.push(...this.#na(e)),this.#ra(e)):(this.#oa(e),t.push(...this.#na(e)));return this.#ga(t)}#ga(t){const e=[],A=new Set;for(const A of t){const[t,i,s]=A;e.push([t,i,A],[t,s,A])}e.sort(((t,e)=>t[1]-e[1]||t[0]-e[0]));for(let t=0,i=e.length;t<i;t+=2){const i=e[t][2],s=e[t+1][2];i.push(s),s.push(i),A.add(i),A.add(s)}const i=[];let s;for(;A.size>0;){const t=A.values().next().value;let[e,a,n,r,o]=t;A.delete(t);let g=e,c=a;for(s=[e,n],i.push(s);;){let t;if(A.has(r))t=r;else{if(!A.has(o))break;t=o}A.delete(t),[e,a,n,r,o]=t,g!==e&&(s.push(g,c,e,c===a?a:n),g=e),c=c===a?n:a}s.push(g,c)}return new gi(i,this.#ia)}#ca(t){const e=this.#aa;let A=0,i=e.length-1;for(;A<=i;){const s=A+i>>1,a=e[s][0];if(a===t)return s;a<t?A=s+1:i=s-1}return i+1}#ra([,t,e]){const A=this.#ca(t);this.#aa.splice(A,0,[t,e])}#oa([,t,e]){const A=this.#ca(t);for(let i=A;i<this.#aa.length;i++){const[A,s]=this.#aa[i];if(A!==t)break;if(A===t&&s===e)return void this.#aa.splice(i,1)}for(let i=A-1;i>=0;i--){const[A,s]=this.#aa[i];if(A!==t)break;if(A===t&&s===e)return void this.#aa.splice(i,1)}}#na(t){const[e,A,i]=t,s=[[e,A,i]],a=this.#ca(i);for(let t=0;t<a;t++){const[A,i]=this.#aa[t];for(let t=0,a=s.length;t<a;t++){const[,n,r]=s[t];if(!(i<=n||r<=A))if(n>=A)if(r>i)s[t][1]=i;else{if(1===a)return[];s.splice(t,1),t--,a--}else s[t][2]=A,r>i&&s.push([e,i,r])}}return s}}class oi{toSVGPath(){throw new Error("Abstract method `toSVGPath` must be implemented.")}get box(){throw new Error("Abstract getter `box` must be implemented.")}serialize(t,e){throw new Error("Abstract method `serialize` must be implemented.")}get free(){return this instanceof hi}}class gi extends oi{#ia;#ha;constructor(t,e){super(),this.#ha=t,this.#ia=e}toSVGPath(){const t=[];for(const e of this.#ha){let[A,i]=e;t.push(`M${A} ${i}`);for(let s=2;s<e.length;s+=2){const a=e[s],n=e[s+1];a===A?(t.push(`V${n}`),i=n):n===i&&(t.push(`H${a}`),A=a)}t.push("Z")}return t.join(" ")}serialize([t,e,A,i],s){const a=[],n=A-t,r=i-e;for(const e of this.#ha){const A=new Array(e.length);for(let s=0;s<e.length;s+=2)A[s]=t+e[s]*n,A[s+1]=i-e[s+1]*r;a.push(A)}return a}get box(){return this.#ia}}class ci{#ia;#la=[];#Ia;#Ca;#Ba=[];#da=new Float64Array(18);#ua;#Qa;#Ea;#fa;#pa;#ma;#ya=[];static#wa=8;static#ba=2;static#Da=ci.#wa+ci.#ba;constructor({x:t,y:e},A,i,s,a,n=0){this.#ia=A,this.#ma=s*i,this.#Ca=a,this.#da.set([NaN,NaN,NaN,NaN,t,e],6),this.#Ia=n,this.#fa=ci.#wa*i,this.#Ea=ci.#Da*i,this.#pa=i,this.#ya.push(t,e)}get free(){return!0}isEmpty(){return isNaN(this.#da[8])}#ka(){const t=this.#da.subarray(4,6),e=this.#da.subarray(16,18),[A,i,s,a]=this.#ia;return[(this.#ua+(t[0]-e[0])/2-A)/s,(this.#Qa+(t[1]-e[1])/2-i)/a,(this.#ua+(e[0]-t[0])/2-A)/s,(this.#Qa+(e[1]-t[1])/2-i)/a]}add({x:t,y:e}){this.#ua=t,this.#Qa=e;const[A,i,s,a]=this.#ia;let[n,r,o,g]=this.#da.subarray(8,12);const c=t-o,h=e-g,l=Math.hypot(c,h);if(l<this.#Ea)return!1;const I=l-this.#fa,C=I/l,B=C*c,d=C*h;let u=n,Q=r;n=o,r=g,o+=B,g+=d,this.#ya?.push(t,e);const E=B/I,f=-d/I*this.#ma,p=E*this.#ma;return this.#da.set(this.#da.subarray(2,8),0),this.#da.set([o+f,g+p],4),this.#da.set(this.#da.subarray(14,18),12),this.#da.set([o-f,g-p],16),isNaN(this.#da[6])?(0===this.#Ba.length&&(this.#da.set([n+f,r+p],2),this.#Ba.push(NaN,NaN,NaN,NaN,(n+f-A)/s,(r+p-i)/a),this.#da.set([n-f,r-p],14),this.#la.push(NaN,NaN,NaN,NaN,(n-f-A)/s,(r-p-i)/a)),this.#da.set([u,Q,n,r,o,g],6),!this.isEmpty()):(this.#da.set([u,Q,n,r,o,g],6),Math.abs(Math.atan2(Q-r,u-n)-Math.atan2(d,B))<Math.PI/2?([n,r,o,g]=this.#da.subarray(2,6),this.#Ba.push(NaN,NaN,NaN,NaN,((n+o)/2-A)/s,((r+g)/2-i)/a),[n,r,u,Q]=this.#da.subarray(14,18),this.#la.push(NaN,NaN,NaN,NaN,((u+n)/2-A)/s,((Q+r)/2-i)/a),!0):([u,Q,n,r,o,g]=this.#da.subarray(0,6),this.#Ba.push(((u+5*n)/6-A)/s,((Q+5*r)/6-i)/a,((5*n+o)/6-A)/s,((5*r+g)/6-i)/a,((n+o)/2-A)/s,((r+g)/2-i)/a),[o,g,n,r,u,Q]=this.#da.subarray(12,18),this.#la.push(((u+5*n)/6-A)/s,((Q+5*r)/6-i)/a,((5*n+o)/6-A)/s,((5*r+g)/6-i)/a,((n+o)/2-A)/s,((r+g)/2-i)/a),!0))}toSVGPath(){if(this.isEmpty())return"";const t=this.#Ba,e=this.#la,A=this.#da.subarray(4,6),i=this.#da.subarray(16,18),[s,a,n,r]=this.#ia,[o,g,c,h]=this.#ka();if(isNaN(this.#da[6])&&!this.isEmpty())return`M${(this.#da[2]-s)/n} ${(this.#da[3]-a)/r} L${(this.#da[4]-s)/n} ${(this.#da[5]-a)/r} L${o} ${g} L${c} ${h} L${(this.#da[16]-s)/n} ${(this.#da[17]-a)/r} L${(this.#da[14]-s)/n} ${(this.#da[15]-a)/r} Z`;const l=[];l.push(`M${t[4]} ${t[5]}`);for(let e=6;e<t.length;e+=6)isNaN(t[e])?l.push(`L${t[e+4]} ${t[e+5]}`):l.push(`C${t[e]} ${t[e+1]} ${t[e+2]} ${t[e+3]} ${t[e+4]} ${t[e+5]}`);l.push(`L${(A[0]-s)/n} ${(A[1]-a)/r} L${o} ${g} L${c} ${h} L${(i[0]-s)/n} ${(i[1]-a)/r}`);for(let t=e.length-6;t>=6;t-=6)isNaN(e[t])?l.push(`L${e[t+4]} ${e[t+5]}`):l.push(`C${e[t]} ${e[t+1]} ${e[t+2]} ${e[t+3]} ${e[t+4]} ${e[t+5]}`);return l.push(`L${e[4]} ${e[5]} Z`),l.join(" ")}getOutlines(){const t=this.#Ba,e=this.#la,A=this.#da,i=A.subarray(4,6),s=A.subarray(16,18),[a,n,r,o]=this.#ia,g=new Float64Array((this.#ya?.length??0)+2);for(let t=0,e=g.length-2;t<e;t+=2)g[t]=(this.#ya[t]-a)/r,g[t+1]=(this.#ya[t+1]-n)/o;g[g.length-2]=(this.#ua-a)/r,g[g.length-1]=(this.#Qa-n)/o;const[c,h,l,I]=this.#ka();if(isNaN(A[6])&&!this.isEmpty()){const t=new Float64Array(36);return t.set([NaN,NaN,NaN,NaN,(A[2]-a)/r,(A[3]-n)/o,NaN,NaN,NaN,NaN,(A[4]-a)/r,(A[5]-n)/o,NaN,NaN,NaN,NaN,c,h,NaN,NaN,NaN,NaN,l,I,NaN,NaN,NaN,NaN,(A[16]-a)/r,(A[17]-n)/o,NaN,NaN,NaN,NaN,(A[14]-a)/r,(A[15]-n)/o],0),new hi(t,g,this.#ia,this.#pa,this.#Ia,this.#Ca)}const C=new Float64Array(this.#Ba.length+24+this.#la.length);let B=t.length;for(let e=0;e<B;e+=2)isNaN(t[e])?C[e]=C[e+1]=NaN:(C[e]=t[e],C[e+1]=t[e+1]);C.set([NaN,NaN,NaN,NaN,(i[0]-a)/r,(i[1]-n)/o,NaN,NaN,NaN,NaN,c,h,NaN,NaN,NaN,NaN,l,I,NaN,NaN,NaN,NaN,(s[0]-a)/r,(s[1]-n)/o],B),B+=24;for(let t=e.length-6;t>=6;t-=6)for(let A=0;A<6;A+=2)isNaN(e[t+A])?(C[B]=C[B+1]=NaN,B+=2):(C[B]=e[t+A],C[B+1]=e[t+A+1],B+=2);return C.set([NaN,NaN,NaN,NaN,e[4],e[5]],B),new hi(C,g,this.#ia,this.#pa,this.#Ia,this.#Ca)}}class hi extends oi{#ia;#Sa=null;#Ia;#Ca;#ya;#pa;#Fa;constructor(t,e,A,i,s,a){super(),this.#Fa=t,this.#ya=e,this.#ia=A,this.#pa=i,this.#Ia=s,this.#Ca=a,this.#Ra(a);const{x:n,y:r,width:o,height:g}=this.#Sa;for(let e=0,A=t.length;e<A;e+=2)t[e]=(t[e]-n)/o,t[e+1]=(t[e+1]-r)/g;for(let t=0,A=e.length;t<A;t+=2)e[t]=(e[t]-n)/o,e[t+1]=(e[t+1]-r)/g}toSVGPath(){const t=[`M${this.#Fa[4]} ${this.#Fa[5]}`];for(let e=6,A=this.#Fa.length;e<A;e+=6)isNaN(this.#Fa[e])?t.push(`L${this.#Fa[e+4]} ${this.#Fa[e+5]}`):t.push(`C${this.#Fa[e]} ${this.#Fa[e+1]} ${this.#Fa[e+2]} ${this.#Fa[e+3]} ${this.#Fa[e+4]} ${this.#Fa[e+5]}`);return t.push("Z"),t.join(" ")}serialize([t,e,A,i],s){const a=A-t,n=i-e;let r,o;switch(s){case 0:r=this.#xa(this.#Fa,t,i,a,-n),o=this.#xa(this.#ya,t,i,a,-n);break;case 90:r=this.#Na(this.#Fa,t,e,a,n),o=this.#Na(this.#ya,t,e,a,n);break;case 180:r=this.#xa(this.#Fa,A,e,-a,n),o=this.#xa(this.#ya,A,e,-a,n);break;case 270:r=this.#Na(this.#Fa,A,i,-a,-n),o=this.#Na(this.#ya,A,i,-a,-n)}return{outline:Array.from(r),points:[Array.from(o)]}}#xa(t,e,A,i,s){const a=new Float64Array(t.length);for(let n=0,r=t.length;n<r;n+=2)a[n]=e+t[n]*i,a[n+1]=A+t[n+1]*s;return a}#Na(t,e,A,i,s){const a=new Float64Array(t.length);for(let n=0,r=t.length;n<r;n+=2)a[n]=e+t[n+1]*i,a[n+1]=A+t[n]*s;return a}#Ra(t){const e=this.#Fa;let A=e[4],i=e[5],s=A,a=i,n=A,r=i,o=A,g=i;const c=t?Math.max:Math.min;for(let t=6,h=e.length;t<h;t+=6){if(isNaN(e[t]))s=Math.min(s,e[t+4]),a=Math.min(a,e[t+5]),n=Math.max(n,e[t+4]),r=Math.max(r,e[t+5]),g<e[t+5]?(o=e[t+4],g=e[t+5]):g===e[t+5]&&(o=c(o,e[t+4]));else{const h=q.bezierBoundingBox(A,i,...e.slice(t,t+6));s=Math.min(s,h[0]),a=Math.min(a,h[1]),n=Math.max(n,h[2]),r=Math.max(r,h[3]),g<h[3]?(o=h[2],g=h[3]):g===h[3]&&(o=c(o,h[2]))}A=e[t+4],i=e[t+5]}const h=s-this.#Ia,l=a-this.#Ia,I=n-s+2*this.#Ia,C=r-a+2*this.#Ia;this.#Sa={x:h,y:l,width:I,height:C,lastPoint:[o,g]}}get box(){return this.#Sa}getNewOutline(t,e){const{x:A,y:i,width:s,height:a}=this.#Sa,[n,r,o,g]=this.#ia,c=s*o,h=a*g,l=A*o+n,I=i*g+r,C=new ci({x:this.#ya[0]*c+l,y:this.#ya[1]*h+I},this.#ia,this.#pa,t,this.#Ca,e??this.#Ia);for(let t=2;t<this.#ya.length;t+=2)C.add({x:this.#ya[t]*c+l,y:this.#ya[t+1]*h+I});return C.getOutlines()}}class li{#is=this.#ss.bind(this);#va=this.#tt.bind(this);#Ga=null;#Ma=null;#La;#Ua=null;#Ha=!1;#Ja=!1;#z=null;#Ya;#nt=null;#Ta;static get _keyboardManager(){return F(this,"_keyboardManager",new St([[["Escape","mac+Escape"],li.prototype._hideDropdownFromKeyboard],[[" ","mac+ "],li.prototype._colorSelectFromKeyboard],[["ArrowDown","ArrowRight","mac+ArrowDown","mac+ArrowRight"],li.prototype._moveToNext],[["ArrowUp","ArrowLeft","mac+ArrowUp","mac+ArrowLeft"],li.prototype._moveToPrevious],[["Home","mac+Home"],li.prototype._moveToBeginning],[["End","mac+End"],li.prototype._moveToEnd]]))}constructor({editor:t=null,uiManager:e=null}){t?(this.#Ja=!1,this.#Ta=C.HIGHLIGHT_COLOR,this.#z=t):(this.#Ja=!0,this.#Ta=C.HIGHLIGHT_DEFAULT_COLOR),this.#nt=t?._uiManager||e,this.#Ya=this.#nt._eventBus,this.#La=t?.color||this.#nt?.highlightColors.values().next().value||"#FFFF98"}renderButton(){const t=this.#Ga=document.createElement("button");t.className="colorPicker",t.tabIndex="0",t.setAttribute("data-l10n-id","pdfjs-editor-colorpicker-button"),t.setAttribute("aria-haspopup",!0);const e=this.#nt._signal;t.addEventListener("click",this.#Ka.bind(this),{signal:e}),t.addEventListener("keydown",this.#is,{signal:e});const A=this.#Ma=document.createElement("span");return A.className="swatch",A.setAttribute("aria-hidden",!0),A.style.backgroundColor=this.#La,t.append(A),t}renderMainDropdown(){const t=this.#Ua=this.#qa();return t.setAttribute("aria-orientation","horizontal"),t.setAttribute("aria-labelledby","highlightColorPickerLabel"),t}#qa(){const t=document.createElement("div"),e=this.#nt._signal;t.addEventListener("contextmenu",It,{signal:e}),t.className="dropdown",t.role="listbox",t.setAttribute("aria-multiselectable",!1),t.setAttribute("aria-orientation","vertical"),t.setAttribute("data-l10n-id","pdfjs-editor-colorpicker-dropdown");for(const[A,i]of this.#nt.highlightColors){const s=document.createElement("button");s.tabIndex="0",s.role="option",s.setAttribute("data-color",i),s.title=A,s.setAttribute("data-l10n-id",`pdfjs-editor-colorpicker-${A}`);const a=document.createElement("span");s.append(a),a.className="swatch",a.style.backgroundColor=i,s.setAttribute("aria-selected",i===this.#La),s.addEventListener("click",this.#Pa.bind(this,i),{signal:e}),t.append(s)}return t.addEventListener("keydown",this.#is,{signal:e}),t}#Pa(t,e){e.stopPropagation(),this.#Ya.dispatch("switchannotationeditorparams",{source:this,type:this.#Ta,value:t})}_colorSelectFromKeyboard(t){if(t.target===this.#Ga)return void this.#Ka(t);const e=t.target.getAttribute("data-color");e&&this.#Pa(e,t)}_moveToNext(t){this.#_a?t.target!==this.#Ga?t.target.nextSibling?.focus():this.#Ua.firstChild?.focus():this.#Ka(t)}_moveToPrevious(t){t.target!==this.#Ua?.firstChild&&t.target!==this.#Ga?(this.#_a||this.#Ka(t),t.target.previousSibling?.focus()):this.#_a&&this._hideDropdownFromKeyboard()}_moveToBeginning(t){this.#_a?this.#Ua.firstChild?.focus():this.#Ka(t)}_moveToEnd(t){this.#_a?this.#Ua.lastChild?.focus():this.#Ka(t)}#ss(t){li._keyboardManager.exec(this,t)}#Ka(t){if(this.#_a)return void this.hideDropdown();if(this.#Ha=0===t.detail,window.addEventListener("pointerdown",this.#va,{signal:this.#nt._signal}),this.#Ua)return void this.#Ua.classList.remove("hidden");const e=this.#Ua=this.#qa();this.#Ga.append(e)}#tt(t){this.#Ua?.contains(t.target)||this.hideDropdown()}hideDropdown(){this.#Ua?.classList.add("hidden"),window.removeEventListener("pointerdown",this.#va)}get#_a(){return this.#Ua&&!this.#Ua.classList.contains("hidden")}_hideDropdownFromKeyboard(){this.#Ja||(this.#_a?(this.hideDropdown(),this.#Ga.focus({preventScroll:!0,focusVisible:this.#Ha})):this.#z?.unselect())}updateColor(t){if(this.#Ma&&(this.#Ma.style.backgroundColor=t),!this.#Ua)return;const e=this.#nt.highlightColors.values();for(const A of this.#Ua.children)A.setAttribute("aria-selected",e.next().value===t)}destroy(){this.#Ga?.remove(),this.#Ga=null,this.#Ma=null,this.#Ua?.remove(),this.#Ua=null}}class Ii extends Nt{#Oa=null;#Wa=0;#Za;#ja=null;#X=null;#Va=null;#Xa=null;#za=0;#$a=null;#tn=null;#ct=null;#en=!1;#te=this.#An.bind(this);#in=null;#sn;#an=null;#nn="";#ma;#rn="";static _defaultColor=null;static _defaultOpacity=1;static _defaultThickness=12;static _l10nPromise;static _type="highlight";static _editorType=I.HIGHLIGHT;static _freeHighlightId=-1;static _freeHighlight=null;static _freeHighlightClipId="";static get _keyboardManager(){const t=Ii.prototype;return F(this,"_keyboardManager",new St([[["ArrowLeft","mac+ArrowLeft"],t._moveCaret,{args:[0]}],[["ArrowRight","mac+ArrowRight"],t._moveCaret,{args:[1]}],[["ArrowUp","mac+ArrowUp"],t._moveCaret,{args:[2]}],[["ArrowDown","mac+ArrowDown"],t._moveCaret,{args:[3]}]]))}constructor(t){super({...t,name:"highlightEditor"}),this.color=t.color||Ii._defaultColor,this.#ma=t.thickness||Ii._defaultThickness,this.#sn=t.opacity||Ii._defaultOpacity,this.#Za=t.boxes||null,this.#rn=t.methodOfCreation||"",this.#nn=t.text||"",this._isDraggable=!1,t.highlightId>-1?(this.#en=!0,this.#on(t),this.#gn()):(this.#Oa=t.anchorNode,this.#Wa=t.anchorOffset,this.#Xa=t.focusNode,this.#za=t.focusOffset,this.#cn(),this.#gn(),this.rotate(this.rotation))}get telemetryInitialData(){return{action:"added",type:this.#en?"free_highlight":"highlight",color:this._uiManager.highlightColorNames.get(this.color),thickness:this.#ma,methodOfCreation:this.#rn}}get telemetryFinalData(){return{type:"highlight",color:this._uiManager.highlightColorNames.get(this.color)}}static computeTelemetryFinalData(t){return{numberOfColors:t.get("color").size}}#cn(){const t=new ri(this.#Za,.001);this.#tn=t.getOutlines(),({x:this.x,y:this.y,width:this.width,height:this.height}=this.#tn.box);const e=new ri(this.#Za,.0025,.001,"ltr"===this._uiManager.direction);this.#Va=e.getOutlines();const{lastPoint:A}=this.#Va.box;this.#in=[(A[0]-this.x)/this.width,(A[1]-this.y)/this.height]}#on({highlightOutlines:t,highlightId:e,clipPathId:A}){if(this.#tn=t,this.#Va=t.getNewOutline(this.#ma/2+1.5,.0025),e>=0)this.#ct=e,this.#ja=A,this.parent.drawLayer.finalizeLine(e,t),this.#an=this.parent.drawLayer.highlightOutline(this.#Va);else if(this.parent){const e=this.parent.viewport.rotation;this.parent.drawLayer.updateLine(this.#ct,t),this.parent.drawLayer.updateBox(this.#ct,Ii.#hn(this.#tn.box,(e-this.rotation+360)%360)),this.parent.drawLayer.updateLine(this.#an,this.#Va),this.parent.drawLayer.updateBox(this.#an,Ii.#hn(this.#Va.box,e))}const{x:i,y:s,width:a,height:n}=t.box;switch(this.rotation){case 0:this.x=i,this.y=s,this.width=a,this.height=n;break;case 90:{const[t,e]=this.parentDimensions;this.x=s,this.y=1-i,this.width=a*e/t,this.height=n*t/e;break}case 180:this.x=1-i,this.y=1-s,this.width=a,this.height=n;break;case 270:{const[t,e]=this.parentDimensions;this.x=1-s,this.y=i,this.width=a*e/t,this.height=n*t/e;break}}const{lastPoint:r}=this.#Va.box;this.#in=[(r[0]-i)/a,(r[1]-s)/n]}static initialize(t,e){Nt.initialize(t,e),Ii._defaultColor||=e.highlightColors?.values().next().value||"#fff066"}static updateDefaultParams(t,e){switch(t){case C.HIGHLIGHT_DEFAULT_COLOR:Ii._defaultColor=e;break;case C.HIGHLIGHT_THICKNESS:Ii._defaultThickness=e}}translateInPage(t,e){}get toolbarPosition(){return this.#in}updateParams(t,e){switch(t){case C.HIGHLIGHT_COLOR:this.#js(e);break;case C.HIGHLIGHT_THICKNESS:this.#ln(e)}}static get defaultPropertiesToUpdate(){return[[C.HIGHLIGHT_DEFAULT_COLOR,Ii._defaultColor],[C.HIGHLIGHT_THICKNESS,Ii._defaultThickness]]}get propertiesToUpdate(){return[[C.HIGHLIGHT_COLOR,this.color||Ii._defaultColor],[C.HIGHLIGHT_THICKNESS,this.#ma||Ii._defaultThickness],[C.HIGHLIGHT_FREE,this.#en]]}#js(t){const e=t=>{this.color=t,this.parent?.drawLayer.changeColor(this.#ct,t),this.#X?.updateColor(t)},A=this.color;this.addCommands({cmd:e.bind(this,t),undo:e.bind(this,A),post:this._uiManager.updateUI.bind(this._uiManager,this),mustExec:!0,type:C.HIGHLIGHT_COLOR,overwriteIfSameType:!0,keepUndo:!0}),this._reportTelemetry({action:"color_changed",color:this._uiManager.highlightColorNames.get(t)},!0)}#ln(t){const e=this.#ma,A=t=>{this.#ma=t,this.#In(t)};this.addCommands({cmd:A.bind(this,t),undo:A.bind(this,e),post:this._uiManager.updateUI.bind(this._uiManager,this),mustExec:!0,type:C.INK_THICKNESS,overwriteIfSameType:!0,keepUndo:!0}),this._reportTelemetry({action:"thickness_changed",thickness:t},!0)}async addEditToolbar(){const t=await super.addEditToolbar();return t?(this._uiManager.highlightColors&&(this.#X=new li({editor:this}),t.addColorPicker(this.#X)),t):null}disableEditing(){super.disableEditing(),this.div.classList.toggle("disabled",!0)}enableEditing(){super.enableEditing(),this.div.classList.toggle("disabled",!1)}fixAndSetPosition(){return super.fixAndSetPosition(this.#Cn())}getBaseTranslation(){return[0,0]}getRect(t,e){return super.getRect(t,e,this.#Cn())}onceAdded(){this.parent.addUndoableEditor(this),this.div.focus()}remove(){this.#Bn(),this._reportTelemetry({action:"deleted"}),super.remove()}rebuild(){this.parent&&(super.rebuild(),null!==this.div&&(this.#gn(),this.isAttachedToDOM||this.parent.add(this)))}setParent(t){let e=!1;this.parent&&!t?this.#Bn():t&&(this.#gn(t),e=!this.parent&&this.div?.classList.contains("selectedEditor")),super.setParent(t),this.show(this._isVisible),e&&this.select()}#In(t){if(!this.#en)return;this.#on({highlightOutlines:this.#tn.getNewOutline(t/2)}),this.fixAndSetPosition();const[e,A]=this.parentDimensions;this.setDims(this.width*e,this.height*A)}#Bn(){null!==this.#ct&&this.parent&&(this.parent.drawLayer.remove(this.#ct),this.#ct=null,this.parent.drawLayer.remove(this.#an),this.#an=null)}#gn(t=this.parent){null===this.#ct&&(({id:this.#ct,clipPathId:this.#ja}=t.drawLayer.highlight(this.#tn,this.color,this.#sn)),this.#an=t.drawLayer.highlightOutline(this.#Va),this.#$a&&(this.#$a.style.clipPath=this.#ja))}static#hn({x:t,y:e,width:A,height:i},s){switch(s){case 90:return{x:1-e-i,y:t,width:i,height:A};case 180:return{x:1-t-A,y:1-e-i,width:A,height:i};case 270:return{x:e,y:1-t-A,width:i,height:A}}return{x:t,y:e,width:A,height:i}}rotate(t){const{drawLayer:e}=this.parent;let A;this.#en?(t=(t-this.rotation+360)%360,A=Ii.#hn(this.#tn.box,t)):A=Ii.#hn(this,t),e.rotate(this.#ct,t),e.rotate(this.#an,t),e.updateBox(this.#ct,A),e.updateBox(this.#an,Ii.#hn(this.#Va.box,t))}render(){if(this.div)return this.div;const t=super.render();this.#nn&&(t.setAttribute("aria-label",this.#nn),t.setAttribute("role","mark")),this.#en?t.classList.add("free"):this.div.addEventListener("keydown",this.#te,{signal:this._uiManager._signal});const e=this.#$a=document.createElement("div");t.append(e),e.setAttribute("aria-hidden","true"),e.className="internal",e.style.clipPath=this.#ja;const[A,i]=this.parentDimensions;return this.setDims(this.width*A,this.height*i),wt(this,this.#$a,["pointerover","pointerleave"]),this.enableEditing(),t}pointerover(){this.parent.drawLayer.addClass(this.#an,"hovered")}pointerleave(){this.parent.drawLayer.removeClass(this.#an,"hovered")}#An(t){Ii._keyboardManager.exec(this,t)}_moveCaret(t){switch(this.parent.unselect(this),t){case 0:case 2:this.#dn(!0);break;case 1:case 3:this.#dn(!1)}}#dn(t){if(!this.#Oa)return;const e=window.getSelection();t?e.setPosition(this.#Oa,this.#Wa):e.setPosition(this.#Xa,this.#za)}select(){super.select(),this.#an&&(this.parent?.drawLayer.removeClass(this.#an,"hovered"),this.parent?.drawLayer.addClass(this.#an,"selected"))}unselect(){super.unselect(),this.#an&&(this.parent?.drawLayer.removeClass(this.#an,"selected"),this.#en||this.#dn(!1))}get _mustFixPosition(){return!this.#en}show(t=this._isVisible){super.show(t),this.parent&&(this.parent.drawLayer.show(this.#ct,t),this.parent.drawLayer.show(this.#an,t))}#Cn(){return this.#en?this.rotation:0}#un(){if(this.#en)return null;const[t,e]=this.pageDimensions,A=this.#Za,i=new Float32Array(8*A.length);let s=0;for(const{x:a,y:n,width:r,height:o}of A){const A=a*t,g=(1-n-o)*e;i[s]=i[s+4]=A,i[s+1]=i[s+3]=g,i[s+2]=i[s+6]=A+r*t,i[s+5]=i[s+7]=g+o*e,s+=8}return i}#Qn(t){return this.#tn.serialize(t,this.#Cn())}static startHighlighting(t,e,{target:A,x:i,y:s}){const{x:a,y:n,width:r,height:o}=A.getBoundingClientRect(),g=e=>{this.#En(t,e)},c=t._signal,h={capture:!0,passive:!1,signal:c},l=t=>{t.preventDefault(),t.stopPropagation()},I=e=>{A.removeEventListener("pointermove",g),window.removeEventListener("blur",I),window.removeEventListener("pointerup",I),window.removeEventListener("pointerdown",l,h),window.removeEventListener("contextmenu",It),this.#fn(t,e)};window.addEventListener("blur",I,{signal:c}),window.addEventListener("pointerup",I,{signal:c}),window.addEventListener("pointerdown",l,h),window.addEventListener("contextmenu",It,{signal:c}),A.addEventListener("pointermove",g,{signal:c}),this._freeHighlight=new ci({x:i,y:s},[a,n,r,o],t.scale,this._defaultThickness/2,e,.001),({id:this._freeHighlightId,clipPathId:this._freeHighlightClipId}=t.drawLayer.highlight(this._freeHighlight,this._defaultColor,this._defaultOpacity,!0))}static#En(t,e){this._freeHighlight.add(e)&&t.drawLayer.updatePath(this._freeHighlightId,this._freeHighlight)}static#fn(t,e){this._freeHighlight.isEmpty()?t.drawLayer.removeFreeHighlight(this._freeHighlightId):t.createAndAddNewEditor(e,!1,{highlightId:this._freeHighlightId,highlightOutlines:this._freeHighlight.getOutlines(),clipPathId:this._freeHighlightClipId,methodOfCreation:"main_toolbar"}),this._freeHighlightId=-1,this._freeHighlight=null,this._freeHighlightClipId=""}static deserialize(t,e,A){const i=super.deserialize(t,e,A),{rect:[s,a,n,r],color:o,quadPoints:g}=t;i.color=q.makeHexColor(...o),i.#sn=t.opacity;const[c,h]=i.pageDimensions;i.width=(n-s)/c,i.height=(r-a)/h;const l=i.#Za=[];for(let t=0;t<g.length;t+=8)l.push({x:(g[4]-n)/c,y:(r-(1-g[t+5]))/h,width:(g[t+2]-g[t])/c,height:(g[t+5]-g[t+1])/h});return i.#cn(),i}serialize(t=!1){if(this.isEmpty()||t)return null;const e=this.getRect(0,0),A=Nt._colorManager.convert(this.color);return{annotationType:I.HIGHLIGHT,color:A,opacity:this.#sn,thickness:this.#ma,quadPoints:this.#un(),outlines:this.#Qn(e),pageIndex:this.pageIndex,rect:e,rotation:this.#Cn(),structTreeParentId:this._structTreeParentId}}static canCreateNewEmptyEditor(){return!1}}class Ci extends Nt{#pn=0;#mn=0;#yn=this.canvasPointermove.bind(this);#wn=this.canvasPointerleave.bind(this);#bn=this.canvasPointerup.bind(this);#Dn=this.canvasPointerdown.bind(this);#kn=null;#Sn=new Path2D;#Fn=!1;#Rn=!1;#xn=!1;#Nn=null;#vn=0;#Gn=0;#Mn=null;static _defaultColor=null;static _defaultOpacity=1;static _defaultThickness=1;static _type="ink";static _editorType=I.INK;constructor(t){super({...t,name:"inkEditor"}),this.color=t.color||null,this.thickness=t.thickness||null,this.opacity=t.opacity||null,this.paths=[],this.bezierPath2D=[],this.allRawPaths=[],this.currentPath=[],this.scaleFactor=1,this.translationX=this.translationY=0,this.x=0,this.y=0,this._willKeepAspectRatio=!0}static initialize(t,e){Nt.initialize(t,e)}static updateDefaultParams(t,e){switch(t){case C.INK_THICKNESS:Ci._defaultThickness=e;break;case C.INK_COLOR:Ci._defaultColor=e;break;case C.INK_OPACITY:Ci._defaultOpacity=e/100}}updateParams(t,e){switch(t){case C.INK_THICKNESS:this.#ln(e);break;case C.INK_COLOR:this.#js(e);break;case C.INK_OPACITY:this.#Ln(e)}}static get defaultPropertiesToUpdate(){return[[C.INK_THICKNESS,Ci._defaultThickness],[C.INK_COLOR,Ci._defaultColor||Nt._defaultLineColor],[C.INK_OPACITY,Math.round(100*Ci._defaultOpacity)]]}get propertiesToUpdate(){return[[C.INK_THICKNESS,this.thickness||Ci._defaultThickness],[C.INK_COLOR,this.color||Ci._defaultColor||Nt._defaultLineColor],[C.INK_OPACITY,Math.round(100*(this.opacity??Ci._defaultOpacity))]]}#ln(t){const e=t=>{this.thickness=t,this.#Un()},A=this.thickness;this.addCommands({cmd:e.bind(this,t),undo:e.bind(this,A),post:this._uiManager.updateUI.bind(this._uiManager,this),mustExec:!0,type:C.INK_THICKNESS,overwriteIfSameType:!0,keepUndo:!0})}#js(t){const e=t=>{this.color=t,this.#Hn()},A=this.color;this.addCommands({cmd:e.bind(this,t),undo:e.bind(this,A),post:this._uiManager.updateUI.bind(this._uiManager,this),mustExec:!0,type:C.INK_COLOR,overwriteIfSameType:!0,keepUndo:!0})}#Ln(t){const e=t=>{this.opacity=t,this.#Hn()};t/=100;const A=this.opacity;this.addCommands({cmd:e.bind(this,t),undo:e.bind(this,A),post:this._uiManager.updateUI.bind(this._uiManager,this),mustExec:!0,type:C.INK_OPACITY,overwriteIfSameType:!0,keepUndo:!0})}rebuild(){this.parent&&(super.rebuild(),null!==this.div&&(this.canvas||(this.#Jn(),this.#Yn()),this.isAttachedToDOM||(this.parent.add(this),this.#Tn()),this.#Un()))}remove(){null!==this.canvas&&(this.isEmpty()||this.commit(),this.canvas.width=this.canvas.height=0,this.canvas.remove(),this.canvas=null,this.#kn&&(clearTimeout(this.#kn),this.#kn=null),this.#Nn?.disconnect(),this.#Nn=null,super.remove())}setParent(t){!this.parent&&t?this._uiManager.removeShouldRescale(this):this.parent&&null===t&&this._uiManager.addShouldRescale(this),super.setParent(t)}onScaleChanging(){const[t,e]=this.parentDimensions,A=this.width*t,i=this.height*e;this.setDimensions(A,i)}enableEditMode(){this.#Fn||null===this.canvas||(super.enableEditMode(),this._isDraggable=!1,this.canvas.addEventListener("pointerdown",this.#Dn,{signal:this._uiManager._signal}))}disableEditMode(){this.isInEditMode()&&null!==this.canvas&&(super.disableEditMode(),this._isDraggable=!this.isEmpty(),this.div.classList.remove("editing"),this.canvas.removeEventListener("pointerdown",this.#Dn))}onceAdded(){this._isDraggable=!this.isEmpty()}isEmpty(){return 0===this.paths.length||1===this.paths.length&&0===this.paths[0].length}#Kn(){const{parentRotation:t,parentDimensions:[e,A]}=this;switch(t){case 90:return[0,A,A,e];case 180:return[e,A,e,A];case 270:return[e,0,A,e];default:return[0,0,e,A]}}#qn(){const{ctx:t,color:e,opacity:A,thickness:i,parentScale:s,scaleFactor:a}=this;t.lineWidth=i*s/a,t.lineCap="round",t.lineJoin="round",t.miterLimit=10,t.strokeStyle=`${e}${function(t){return Math.round(Math.min(255,Math.max(1,255*t))).toString(16).padStart(2,"0")}(A)}`}#Pn(t,e){const A=this._uiManager._signal;this.canvas.addEventListener("contextmenu",It,{signal:A}),this.canvas.addEventListener("pointerleave",this.#wn,{signal:A}),this.canvas.addEventListener("pointermove",this.#yn,{signal:A}),this.canvas.addEventListener("pointerup",this.#bn,{signal:A}),this.canvas.removeEventListener("pointerdown",this.#Dn),this.isEditing=!0,this.#xn||(this.#xn=!0,this.#Tn(),this.thickness||=Ci._defaultThickness,this.color||=Ci._defaultColor||Nt._defaultLineColor,this.opacity??=Ci._defaultOpacity),this.currentPath.push([t,e]),this.#Rn=!1,this.#qn(),this.#Mn=()=>{this.#_n(),this.#Mn&&window.requestAnimationFrame(this.#Mn)},window.requestAnimationFrame(this.#Mn)}#On(t,e){const[A,i]=this.currentPath.at(-1);if(this.currentPath.length>1&&t===A&&e===i)return;const s=this.currentPath;let a=this.#Sn;if(s.push([t,e]),this.#Rn=!0,s.length<=2)return a.moveTo(...s[0]),void a.lineTo(t,e);3===s.length&&(this.#Sn=a=new Path2D,a.moveTo(...s[0])),this.#Wn(a,...s.at(-3),...s.at(-2),t,e)}#Zn(){if(0===this.currentPath.length)return;const t=this.currentPath.at(-1);this.#Sn.lineTo(...t)}#jn(t,e){let A;if(this.#Mn=null,t=Math.min(Math.max(t,0),this.canvas.width),e=Math.min(Math.max(e,0),this.canvas.height),this.#On(t,e),this.#Zn(),1!==this.currentPath.length)A=this.#Vn();else{const i=[t,e];A=[[i,i.slice(),i.slice(),i]]}const i=this.#Sn,s=this.currentPath;this.currentPath=[],this.#Sn=new Path2D,this.addCommands({cmd:()=>{this.allRawPaths.push(s),this.paths.push(A),this.bezierPath2D.push(i),this._uiManager.rebuild(this)},undo:()=>{this.allRawPaths.pop(),this.paths.pop(),this.bezierPath2D.pop(),0===this.paths.length?this.remove():(this.canvas||(this.#Jn(),this.#Yn()),this.#Un())},mustExec:!0})}#_n(){if(!this.#Rn)return;this.#Rn=!1;Math.ceil(this.thickness*this.parentScale);const t=this.currentPath.slice(-3),e=t.map((t=>t[0])),A=t.map((t=>t[1])),{ctx:i}=(Math.min(...e),Math.max(...e),Math.min(...A),Math.max(...A),this);i.save(),i.clearRect(0,0,this.canvas.width,this.canvas.height);for(const t of this.bezierPath2D)i.stroke(t);i.stroke(this.#Sn),i.restore()}#Wn(t,e,A,i,s,a,n){const r=(e+i)/2,o=(A+s)/2,g=(i+a)/2,c=(s+n)/2;t.bezierCurveTo(r+2*(i-r)/3,o+2*(s-o)/3,g+2*(i-g)/3,c+2*(s-c)/3,g,c)}#Vn(){const t=this.currentPath;if(t.length<=2)return[[t[0],t[0],t.at(-1),t.at(-1)]];const e=[];let A,[i,s]=t[0];for(A=1;A<t.length-2;A++){const[a,n]=t[A],[r,o]=t[A+1],g=(a+r)/2,c=(n+o)/2,h=[i+2*(a-i)/3,s+2*(n-s)/3],l=[g+2*(a-g)/3,c+2*(n-c)/3];e.push([[i,s],h,l,[g,c]]),[i,s]=[g,c]}const[a,n]=t[A],[r,o]=t[A+1],g=[i+2*(a-i)/3,s+2*(n-s)/3],c=[r+2*(a-r)/3,o+2*(n-o)/3];return e.push([[i,s],g,c,[r,o]]),e}#Hn(){if(this.isEmpty())return void this.#Xn();this.#qn();const{canvas:t,ctx:e}=this;e.setTransform(1,0,0,1,0,0),e.clearRect(0,0,t.width,t.height),this.#Xn();for(const t of this.bezierPath2D)e.stroke(t)}commit(){this.#Fn||(super.commit(),this.isEditing=!1,this.disableEditMode(),this.setInForeground(),this.#Fn=!0,this.div.classList.add("disabled"),this.#Un(!0),this.select(),this.parent.addInkEditorIfNeeded(!0),this.moveInDOM(),this.div.focus({preventScroll:!0}))}focusin(t){this._focusEventsAllowed&&(super.focusin(t),this.enableEditMode())}canvasPointerdown(t){0===t.button&&this.isInEditMode()&&!this.#Fn&&(this.setInForeground(),t.preventDefault(),this.div.contains(document.activeElement)||this.div.focus({preventScroll:!0}),this.#Pn(t.offsetX,t.offsetY))}canvasPointermove(t){t.preventDefault(),this.#On(t.offsetX,t.offsetY)}canvasPointerup(t){t.preventDefault(),this.#zn(t)}canvasPointerleave(t){this.#zn(t)}#zn(t){this.canvas.removeEventListener("pointerleave",this.#wn),this.canvas.removeEventListener("pointermove",this.#yn),this.canvas.removeEventListener("pointerup",this.#bn),this.canvas.addEventListener("pointerdown",this.#Dn,{signal:this._uiManager._signal}),this.#kn&&clearTimeout(this.#kn),this.#kn=setTimeout((()=>{this.#kn=null,this.canvas.removeEventListener("contextmenu",It)}),10),this.#jn(t.offsetX,t.offsetY),this.addToAnnotationStorage(),this.setInBackground()}#Jn(){this.canvas=document.createElement("canvas"),this.canvas.width=this.canvas.height=0,this.canvas.className="inkEditorCanvas",this.canvas.setAttribute("data-l10n-id","pdfjs-ink-canvas"),this.div.append(this.canvas),this.ctx=this.canvas.getContext("2d")}#Yn(){this.#Nn=new ResizeObserver((t=>{const e=t[0].contentRect;e.width&&e.height&&this.setDimensions(e.width,e.height)})),this.#Nn.observe(this.div),this._uiManager._signal.addEventListener("abort",(()=>{this.#Nn?.disconnect(),this.#Nn=null}),{once:!0})}get isResizable(){return!this.isEmpty()&&this.#Fn}render(){if(this.div)return this.div;let t,e;this.width&&(t=this.x,e=this.y),super.render(),this.div.setAttribute("data-l10n-id","pdfjs-ink");const[A,i,s,a]=this.#Kn();if(this.setAt(A,i,0,0),this.setDims(s,a),this.#Jn(),this.width){const[A,i]=this.parentDimensions;this.setAspectRatio(this.width*A,this.height*i),this.setAt(t*A,e*i,this.width*A,this.height*i),this.#xn=!0,this.#Tn(),this.setDims(this.width*A,this.height*i),this.#Hn(),this.div.classList.add("disabled")}else this.div.classList.add("editing"),this.enableEditMode();return this.#Yn(),this.div}#Tn(){if(!this.#xn)return;const[t,e]=this.parentDimensions;this.canvas.width=Math.ceil(this.width*t),this.canvas.height=Math.ceil(this.height*e),this.#Xn()}setDimensions(t,e){const A=Math.round(t),i=Math.round(e);if(this.#vn===A&&this.#Gn===i)return;this.#vn=A,this.#Gn=i,this.canvas.style.visibility="hidden";const[s,a]=this.parentDimensions;this.width=t/s,this.height=e/a,this.fixAndSetPosition(),this.#Fn&&this.#$n(t,e),this.#Tn(),this.#Hn(),this.canvas.style.visibility="visible",this.fixDims()}#$n(t,e){const A=this.#tr(),i=(t-A)/this.#mn,s=(e-A)/this.#pn;this.scaleFactor=Math.min(i,s)}#Xn(){const t=this.#tr()/2;this.ctx.setTransform(this.scaleFactor,0,0,this.scaleFactor,this.translationX*this.scaleFactor+t,this.translationY*this.scaleFactor+t)}static#er(t){const e=new Path2D;for(let A=0,i=t.length;A<i;A++){const[i,s,a,n]=t[A];0===A&&e.moveTo(...i),e.bezierCurveTo(s[0],s[1],a[0],a[1],n[0],n[1])}return e}static#Ar(t,e,A){const[i,s,a,n]=e;switch(A){case 0:for(let e=0,A=t.length;e<A;e+=2)t[e]+=i,t[e+1]=n-t[e+1];break;case 90:for(let e=0,A=t.length;e<A;e+=2){const A=t[e];t[e]=t[e+1]+i,t[e+1]=A+s}break;case 180:for(let e=0,A=t.length;e<A;e+=2)t[e]=a-t[e],t[e+1]+=s;break;case 270:for(let e=0,A=t.length;e<A;e+=2){const A=t[e];t[e]=a-t[e+1],t[e+1]=n-A}break;default:throw new Error("Invalid rotation")}return t}static#ir(t,e,A){const[i,s,a,n]=e;switch(A){case 0:for(let e=0,A=t.length;e<A;e+=2)t[e]-=i,t[e+1]=n-t[e+1];break;case 90:for(let e=0,A=t.length;e<A;e+=2){const A=t[e];t[e]=t[e+1]-s,t[e+1]=A-i}break;case 180:for(let e=0,A=t.length;e<A;e+=2)t[e]=a-t[e],t[e+1]-=s;break;case 270:for(let e=0,A=t.length;e<A;e+=2){const A=t[e];t[e]=n-t[e+1],t[e+1]=a-A}break;default:throw new Error("Invalid rotation")}return t}#sr(t,e,A,i){const s=[],a=this.thickness/2,n=t*e+a,r=t*A+a;for(const e of this.paths){const A=[],a=[];for(let i=0,s=e.length;i<s;i++){const[o,g,c,h]=e[i];if(o[0]===h[0]&&o[1]===h[1]&&1===s){const e=t*o[0]+n,i=t*o[1]+r;A.push(e,i),a.push(e,i);break}const l=t*o[0]+n,I=t*o[1]+r,C=t*g[0]+n,B=t*g[1]+r,d=t*c[0]+n,u=t*c[1]+r,Q=t*h[0]+n,E=t*h[1]+r;0===i&&(A.push(l,I),a.push(l,I)),A.push(C,B,d,u,Q,E),a.push(C,B),i===s-1&&a.push(Q,E)}s.push({bezier:Ci.#Ar(A,i,this.rotation),points:Ci.#Ar(a,i,this.rotation)})}return s}#ar(){let t=1/0,e=-1/0,A=1/0,i=-1/0;for(const s of this.paths)for(const[a,n,r,o]of s){const s=q.bezierBoundingBox(...a,...n,...r,...o);t=Math.min(t,s[0]),A=Math.min(A,s[1]),e=Math.max(e,s[2]),i=Math.max(i,s[3])}return[t,A,e,i]}#tr(){return this.#Fn?Math.ceil(this.thickness*this.parentScale):0}#Un(t=!1){if(this.isEmpty())return;if(!this.#Fn)return void this.#Hn();const e=this.#ar(),A=this.#tr();this.#mn=Math.max(Nt.MIN_SIZE,e[2]-e[0]),this.#pn=Math.max(Nt.MIN_SIZE,e[3]-e[1]);const i=Math.ceil(A+this.#mn*this.scaleFactor),s=Math.ceil(A+this.#pn*this.scaleFactor),[a,n]=this.parentDimensions;this.width=i/a,this.height=s/n,this.setAspectRatio(i,s);const r=this.translationX,o=this.translationY;this.translationX=-e[0],this.translationY=-e[1],this.#Tn(),this.#Hn(),this.#vn=i,this.#Gn=s,this.setDims(i,s);const g=t?A/this.scaleFactor/2:0;this.translate(r-this.translationX-g,o-this.translationY-g)}static deserialize(t,e,A){if(t instanceof XA)return null;const i=super.deserialize(t,e,A);i.thickness=t.thickness,i.color=q.makeHexColor(...t.color),i.opacity=t.opacity;const[s,a]=i.pageDimensions,n=i.width*s,r=i.height*a,o=i.parentScale,g=t.thickness/2;i.#Fn=!0,i.#vn=Math.round(n),i.#Gn=Math.round(r);const{paths:c,rect:h,rotation:l}=t;for(let{bezier:t}of c){t=Ci.#ir(t,h,l);const e=[];i.paths.push(e);let A=o*(t[0]-g),s=o*(t[1]-g);for(let i=2,a=t.length;i<a;i+=6){const a=o*(t[i]-g),n=o*(t[i+1]-g),r=o*(t[i+2]-g),c=o*(t[i+3]-g),h=o*(t[i+4]-g),l=o*(t[i+5]-g);e.push([[A,s],[a,n],[r,c],[h,l]]),A=h,s=l}const a=this.#er(e);i.bezierPath2D.push(a)}const I=i.#ar();return i.#mn=Math.max(Nt.MIN_SIZE,I[2]-I[0]),i.#pn=Math.max(Nt.MIN_SIZE,I[3]-I[1]),i.#$n(n,r),i}serialize(){if(this.isEmpty())return null;const t=this.getRect(0,0),e=Nt._colorManager.convert(this.ctx.strokeStyle);return{annotationType:I.INK,color:e,thickness:this.thickness,opacity:this.opacity,paths:this.#sr(this.scaleFactor/this.parentScale,this.translationX,this.translationY,t),pageIndex:this.pageIndex,rect:t,rotation:this.rotation,structTreeParentId:this._structTreeParentId}}}class Bi extends Nt{#nr=null;#rr=null;#or=null;#gr=null;#cr=null;#hr="";#lr=null;#Nn=null;#Ir=null;#Cr=!1;#Br=!1;static _type="stamp";static _editorType=I.STAMP;constructor(t){super({...t,name:"stampEditor"}),this.#gr=t.bitmapUrl,this.#cr=t.bitmapFile}static initialize(t,e){Nt.initialize(t,e)}static get supportedTypes(){return F(this,"supportedTypes",["apng","avif","bmp","gif","jpeg","png","svg+xml","webp","x-icon"].map((t=>`image/${t}`)))}static get supportedTypesStr(){return F(this,"supportedTypesStr",this.supportedTypes.join(","))}static isHandlingMimeForPasting(t){return this.supportedTypes.includes(t)}static paste(t,e){e.pasteEditor(I.STAMP,{bitmapFile:t.getAsFile()})}#dr(t,e=!1){t?(this.#nr=t.bitmap,e||(this.#rr=t.id,this.#Cr=t.isSvg),t.file&&(this.#hr=t.file.name),this.#Jn()):this.remove()}#ur(){this.#or=null,this._uiManager.enableWaiting(!1),this.#lr&&this.div.focus()}#Qr(){if(this.#rr)return this._uiManager.enableWaiting(!0),void this._uiManager.imageManager.getFromId(this.#rr).then((t=>this.#dr(t,!0))).finally((()=>this.#ur()));if(this.#gr){const t=this.#gr;return this.#gr=null,this._uiManager.enableWaiting(!0),void(this.#or=this._uiManager.imageManager.getFromUrl(t).then((t=>this.#dr(t))).finally((()=>this.#ur())))}if(this.#cr){const t=this.#cr;return this.#cr=null,this._uiManager.enableWaiting(!0),void(this.#or=this._uiManager.imageManager.getFromFile(t).then((t=>this.#dr(t))).finally((()=>this.#ur())))}const t=document.createElement("input");t.type="file",t.accept=Bi.supportedTypesStr;const e=this._uiManager._signal;this.#or=new Promise((A=>{t.addEventListener("change",(async()=>{if(t.files&&0!==t.files.length){this._uiManager.enableWaiting(!0);const e=await this._uiManager.imageManager.getFromFile(t.files[0]);this.#dr(e)}else this.remove();A()}),{signal:e}),t.addEventListener("cancel",(()=>{this.remove(),A()}),{signal:e})})).finally((()=>this.#ur())),t.click()}remove(){this.#rr&&(this.#nr=null,this._uiManager.imageManager.deleteId(this.#rr),this.#lr?.remove(),this.#lr=null,this.#Nn?.disconnect(),this.#Nn=null,this.#Ir&&(clearTimeout(this.#Ir),this.#Ir=null)),super.remove()}rebuild(){this.parent?(super.rebuild(),null!==this.div&&(this.#rr&&null===this.#lr&&this.#Qr(),this.isAttachedToDOM||this.parent.add(this))):this.#rr&&this.#Qr()}onceAdded(){this._isDraggable=!0,this.div.focus()}isEmpty(){return!(this.#or||this.#nr||this.#gr||this.#cr||this.#rr)}get isResizable(){return!0}render(){if(this.div)return this.div;let t,e;if(this.width&&(t=this.x,e=this.y),super.render(),this.div.hidden=!0,this.addAltTextButton(),this.#nr?this.#Jn():this.#Qr(),this.width){const[A,i]=this.parentDimensions;this.setAt(t*A,e*i,this.width*A,this.height*i)}return this.div}#Jn(){const{div:t}=this;let{width:e,height:A}=this.#nr;const[i,s]=this.pageDimensions,a=.75;if(this.width)e=this.width*i,A=this.height*s;else if(e>a*i||A>a*s){const t=Math.min(a*i/e,a*s/A);e*=t,A*=t}const[n,r]=this.parentDimensions;this.setDims(e*n/i,A*r/s),this._uiManager.enableWaiting(!1);const o=this.#lr=document.createElement("canvas");t.append(o),t.hidden=!1,this.#Er(e,A),this.#Yn(),this.#Br||(this.parent.addUndoableEditor(this),this.#Br=!0),this._reportTelemetry({action:"inserted_image"}),this.#hr&&o.setAttribute("aria-label",this.#hr)}#fr(t,e){const[A,i]=this.parentDimensions;this.width=t/A,this.height=e/i,this.setDims(t,e),this._initialOptions?.isCentered?this.center():this.fixAndSetPosition(),this._initialOptions=null,null!==this.#Ir&&clearTimeout(this.#Ir),this.#Ir=setTimeout((()=>{this.#Ir=null,this.#Er(t,e)}),200)}#pr(t,e){const{width:A,height:i}=this.#nr;let s=A,a=i,n=this.#nr;for(;s>2*t||a>2*e;){const A=s,i=a;s>2*t&&(s=s>=16384?Math.floor(s/2)-1:Math.ceil(s/2)),a>2*e&&(a=a>=16384?Math.floor(a/2)-1:Math.ceil(a/2));const r=new OffscreenCanvas(s,a);r.getContext("2d").drawImage(n,0,0,A,i,0,0,s,a),n=r.transferToImageBitmap()}return n}#Er(t,e){t=Math.ceil(t),e=Math.ceil(e);const A=this.#lr;if(!A||A.width===t&&A.height===e)return;A.width=t,A.height=e;const i=this.#Cr?this.#nr:this.#pr(t,e);if(this._uiManager.hasMLManager&&!this.hasAltText()){const A=new OffscreenCanvas(t,e).getContext("2d");A.drawImage(i,0,0,i.width,i.height,0,0,t,e),this._uiManager.mlGuess({service:"image-to-text",request:{data:A.getImageData(0,0,t,e).data,width:t,height:e,channels:4}}).then((t=>{const e=t?.output||"";this.parent&&e&&!this.hasAltText()&&(this.altTextData={altText:e,decorative:!1})}))}const s=A.getContext("2d");s.filter=this._uiManager.hcmFilter,s.drawImage(i,0,0,i.width,i.height,0,0,t,e)}getImageForAltText(){return this.#lr}#mr(t){if(t){if(this.#Cr){const t=this._uiManager.imageManager.getSvgUrl(this.#rr);if(t)return t}const t=document.createElement("canvas");return({width:t.width,height:t.height}=this.#nr),t.getContext("2d").drawImage(this.#nr,0,0),t.toDataURL()}if(this.#Cr){const[t,e]=this.pageDimensions,A=Math.round(this.width*t*tt.PDF_TO_CSS_UNITS),i=Math.round(this.height*e*tt.PDF_TO_CSS_UNITS),s=new OffscreenCanvas(A,i);return s.getContext("2d").drawImage(this.#nr,0,0,this.#nr.width,this.#nr.height,0,0,A,i),s.transferToImageBitmap()}return structuredClone(this.#nr)}#Yn(){this._uiManager._signal&&(this.#Nn=new ResizeObserver((t=>{const e=t[0].contentRect;e.width&&e.height&&this.#fr(e.width,e.height)})),this.#Nn.observe(this.div),this._uiManager._signal.addEventListener("abort",(()=>{this.#Nn?.disconnect(),this.#Nn=null}),{once:!0}))}static deserialize(t,e,A){if(t instanceof Ai)return null;const i=super.deserialize(t,e,A),{rect:s,bitmapUrl:a,bitmapId:n,isSvg:r,accessibilityData:o}=t;n&&A.imageManager.isValidId(n)?i.#rr=n:i.#gr=a,i.#Cr=r;const[g,c]=i.pageDimensions;return i.width=(s[2]-s[0])/g,i.height=(s[3]-s[1])/c,o&&(i.altTextData=o),i}serialize(t=!1,e=null){if(this.isEmpty())return null;const A={annotationType:I.STAMP,bitmapId:this.#rr,pageIndex:this.pageIndex,rect:this.getRect(0,0),rotation:this.rotation,isSvg:this.#Cr,structTreeParentId:this._structTreeParentId};if(t)return A.bitmapUrl=this.#mr(!0),A.accessibilityData=this.altTextData,A;const{decorative:i,altText:s}=this.altTextData;if(!i&&s&&(A.accessibilityData={type:"Figure",alt:s}),null===e)return A;e.stamps||=new Map;const a=this.#Cr?(A.rect[2]-A.rect[0])*(A.rect[3]-A.rect[1]):null;if(e.stamps.has(this.#rr)){if(this.#Cr){const t=e.stamps.get(this.#rr);a>t.area&&(t.area=a,t.serialized.bitmap.close(),t.serialized.bitmap=this.#mr(!1))}}else e.stamps.set(this.#rr,{area:a,serialized:A}),A.bitmap=this.#mr(!1);return A}}class di{#Ms;#yr=!1;#wr=null;#br=null;#Dr=null;#kr=null;#Sr=null;#Fr=new Map;#Rr=!1;#xr=!1;#Nr=!1;#vr=null;#nt;static _initialized=!1;static#Rt=new Map([ni,Ci,Bi,Ii].map((t=>[t._editorType,t])));constructor({uiManager:t,pageIndex:e,div:A,accessibilityManager:i,annotationLayer:s,drawLayer:a,textLayer:n,viewport:r,l10n:o}){const g=[...di.#Rt.values()];if(!di._initialized){di._initialized=!0;for(const e of g)e.initialize(o,t)}t.registerEditorTypes(g),this.#nt=t,this.pageIndex=e,this.div=A,this.#Ms=i,this.#wr=s,this.viewport=r,this.#vr=n,this.drawLayer=a,this.#nt.addLayer(this)}get isEmpty(){return 0===this.#Fr.size}get isInvisible(){return this.isEmpty&&this.#nt.getMode()===I.NONE}updateToolbar(t){this.#nt.updateToolbar(t)}updateMode(t=this.#nt.getMode()){switch(this.#Gr(),t){case I.NONE:return this.disableTextSelection(),this.togglePointerEvents(!1),this.toggleAnnotationLayerPointerEvents(!0),void this.disableClick();case I.INK:this.addInkEditorIfNeeded(!1),this.disableTextSelection(),this.togglePointerEvents(!0),this.disableClick();break;case I.HIGHLIGHT:this.enableTextSelection(),this.togglePointerEvents(!1),this.disableClick();break;default:this.disableTextSelection(),this.togglePointerEvents(!0),this.enableClick()}this.toggleAnnotationLayerPointerEvents(!1);const{classList:e}=this.div;for(const A of di.#Rt.values())e.toggle(`${A._type}Editing`,t===A._editorType);this.div.hidden=!1}hasTextLayer(t){return t===this.#vr?.div}addInkEditorIfNeeded(t){if(this.#nt.getMode()===I.INK){if(!t)for(const t of this.#Fr.values())if(t.isEmpty())return void t.setInBackground();this.createAndAddNewEditor({offsetX:0,offsetY:0},!1).setInBackground()}}setEditingState(t){this.#nt.setEditingState(t)}addCommands(t){this.#nt.addCommands(t)}togglePointerEvents(t=!1){this.div.classList.toggle("disabled",!t)}toggleAnnotationLayerPointerEvents(t=!1){this.#wr?.div.classList.toggle("disabled",!t)}enable(){this.div.tabIndex=0,this.togglePointerEvents(!0);const t=new Set;for(const e of this.#Fr.values())e.enableEditing(),e.show(!0),e.annotationElementId&&(this.#nt.removeChangedExistingAnnotation(e),t.add(e.annotationElementId));if(!this.#wr)return;const e=this.#wr.getEditableAnnotations();for(const A of e){if(A.hide(),this.#nt.isDeletedAnnotationElement(A.data.id))continue;if(t.has(A.data.id))continue;const e=this.deserialize(A);e&&(this.addOrRebuild(e),e.enableEditing())}}disable(){this.#Nr=!0,this.div.tabIndex=-1,this.togglePointerEvents(!1);const t=new Map,e=new Map;for(const A of this.#Fr.values())A.disableEditing(),A.annotationElementId&&(null===A.serialize()?(e.set(A.annotationElementId,A),this.getEditableAnnotation(A.annotationElementId)?.show(),A.remove()):t.set(A.annotationElementId,A));if(this.#wr){const A=this.#wr.getEditableAnnotations();for(const i of A){const{id:A}=i.data;if(this.#nt.isDeletedAnnotationElement(A))continue;let s=e.get(A);s?(s.resetAnnotationElement(i),s.show(!1),i.show()):(s=t.get(A),s&&(this.#nt.addChangedExistingAnnotation(s),s.renderAnnotationElement(i),s.show(!1)),i.show())}}this.#Gr(),this.isEmpty&&(this.div.hidden=!0);const{classList:A}=this.div;for(const t of di.#Rt.values())A.remove(`${t._type}Editing`);this.disableTextSelection(),this.toggleAnnotationLayerPointerEvents(!0),this.#Nr=!1}getEditableAnnotation(t){return this.#wr?.getEditableAnnotation(t)||null}setActiveEditor(t){this.#nt.getActive()!==t&&this.#nt.setActiveEditor(t)}enableTextSelection(){this.div.tabIndex=-1,this.#vr?.div&&!this.#kr&&(this.#kr=this.#Mr.bind(this),this.#vr.div.addEventListener("pointerdown",this.#kr,{signal:this.#nt._signal}),this.#vr.div.classList.add("highlighting"))}disableTextSelection(){this.div.tabIndex=0,this.#vr?.div&&this.#kr&&(this.#vr.div.removeEventListener("pointerdown",this.#kr),this.#kr=null,this.#vr.div.classList.remove("highlighting"))}#Mr(t){if(this.#nt.unselectAll(),t.target===this.#vr.div){const{isMac:e}=T.platform;if(0!==t.button||t.ctrlKey&&e)return;this.#nt.showAllEditors("highlight",!0,!0),this.#vr.div.classList.add("free"),Ii.startHighlighting(this,"ltr"===this.#nt.direction,t),this.#vr.div.addEventListener("pointerup",(()=>{this.#vr.div.classList.remove("free")}),{once:!0,signal:this.#nt._signal}),t.preventDefault()}}enableClick(){if(this.#Dr)return;const t=this.#nt._signal;this.#Dr=this.pointerdown.bind(this),this.#br=this.pointerup.bind(this),this.div.addEventListener("pointerdown",this.#Dr,{signal:t}),this.div.addEventListener("pointerup",this.#br,{signal:t})}disableClick(){this.#Dr&&(this.div.removeEventListener("pointerdown",this.#Dr),this.div.removeEventListener("pointerup",this.#br),this.#Dr=null,this.#br=null)}attach(t){this.#Fr.set(t.id,t);const{annotationElementId:e}=t;e&&this.#nt.isDeletedAnnotationElement(e)&&this.#nt.removeDeletedAnnotationElement(t)}detach(t){this.#Fr.delete(t.id),this.#Ms?.removePointerInTextLayer(t.contentDiv),!this.#Nr&&t.annotationElementId&&this.#nt.addDeletedAnnotationElement(t)}remove(t){this.detach(t),this.#nt.removeEditor(t),t.div.remove(),t.isAttachedToDOM=!1,this.#xr||this.addInkEditorIfNeeded(!1)}changeParent(t){t.parent!==this&&(t.parent&&t.annotationElementId&&(this.#nt.addDeletedAnnotationElement(t.annotationElementId),Nt.deleteAnnotationElement(t),t.annotationElementId=null),this.attach(t),t.parent?.detach(t),t.setParent(this),t.div&&t.isAttachedToDOM&&(t.div.remove(),this.div.append(t.div)))}add(t){if(t.parent!==this||!t.isAttachedToDOM){if(this.changeParent(t),this.#nt.addEditor(t),this.attach(t),!t.isAttachedToDOM){const e=t.render();this.div.append(e),t.isAttachedToDOM=!0}t.fixAndSetPosition(),t.onceAdded(),this.#nt.addToAnnotationStorage(t),t._reportTelemetry(t.telemetryInitialData)}}moveEditorInDOM(t){if(!t.isAttachedToDOM)return;const{activeElement:e}=document;t.div.contains(e)&&!this.#Sr&&(t._focusEventsAllowed=!1,this.#Sr=setTimeout((()=>{this.#Sr=null,t.div.contains(document.activeElement)?t._focusEventsAllowed=!0:(t.div.addEventListener("focusin",(()=>{t._focusEventsAllowed=!0}),{once:!0,signal:this.#nt._signal}),e.focus())}),0)),t._structTreeParentId=this.#Ms?.moveElementInDOM(this.div,t.div,t.contentDiv,!0)}addOrRebuild(t){t.needsToBeRebuilt()?(t.parent||=this,t.rebuild(),t.show()):this.add(t)}addUndoableEditor(t){this.addCommands({cmd:()=>t._uiManager.rebuild(t),undo:()=>{t.remove()},mustExec:!1})}getNextId(){return this.#nt.getId()}get#Lr(){return di.#Rt.get(this.#nt.getMode())}get _signal(){return this.#nt._signal}#Ur(t){const e=this.#Lr;return e?new e.prototype.constructor(t):null}canCreateNewEmptyEditor(){return this.#Lr?.canCreateNewEmptyEditor()}pasteEditor(t,e){this.#nt.updateToolbar(t),this.#nt.updateMode(t);const{offsetX:A,offsetY:i}=this.#Hr(),s=this.getNextId(),a=this.#Ur({parent:this,id:s,x:A,y:i,uiManager:this.#nt,isCentered:!0,...e});a&&this.add(a)}deserialize(t){return di.#Rt.get(t.annotationType??t.annotationEditorType)?.deserialize(t,this,this.#nt)||null}createAndAddNewEditor(t,e,A={}){const i=this.getNextId(),s=this.#Ur({parent:this,id:i,x:t.offsetX,y:t.offsetY,uiManager:this.#nt,isCentered:e,...A});return s&&this.add(s),s}#Hr(){const{x:t,y:e,width:A,height:i}=this.div.getBoundingClientRect(),s=Math.max(0,t),a=Math.max(0,e),n=(s+Math.min(window.innerWidth,t+A))/2-t,r=(a+Math.min(window.innerHeight,e+i))/2-e,[o,g]=this.viewport.rotation%180==0?[n,r]:[r,n];return{offsetX:o,offsetY:g}}addNewEditor(){this.createAndAddNewEditor(this.#Hr(),!0)}setSelected(t){this.#nt.setSelected(t)}toggleSelected(t){this.#nt.toggleSelected(t)}isSelected(t){return this.#nt.isSelected(t)}unselect(t){this.#nt.unselect(t)}pointerup(t){const{isMac:e}=T.platform;0!==t.button||t.ctrlKey&&e||t.target===this.div&&this.#Rr&&(this.#Rr=!1,this.#yr?this.#nt.getMode()!==I.STAMP?this.createAndAddNewEditor(t,!1):this.#nt.unselectAll():this.#yr=!0)}pointerdown(t){if(this.#nt.getMode()===I.HIGHLIGHT&&this.enableTextSelection(),this.#Rr)return void(this.#Rr=!1);const{isMac:e}=T.platform;if(0!==t.button||t.ctrlKey&&e)return;if(t.target!==this.div)return;this.#Rr=!0;const A=this.#nt.getActive();this.#yr=!A||A.isEmpty()}findNewParent(t,e,A){const i=this.#nt.findParent(e,A);return null!==i&&i!==this&&(i.changeParent(t),!0)}destroy(){this.#nt.getActive()?.parent===this&&(this.#nt.commitOrRemove(),this.#nt.setActiveEditor(null)),this.#Sr&&(clearTimeout(this.#Sr),this.#Sr=null);for(const t of this.#Fr.values())this.#Ms?.removePointerInTextLayer(t.contentDiv),t.setParent(null),t.isAttachedToDOM=!1,t.div.remove();this.div=null,this.#Fr.clear(),this.#nt.removeLayer(this)}#Gr(){this.#xr=!0;for(const t of this.#Fr.values())t.isEmpty()&&t.remove();this.#xr=!1}render({viewport:t}){this.viewport=t,pt(this.div,t);for(const t of this.#nt.getEditors(this.pageIndex))this.add(t),t.rebuild();this.updateMode()}update({viewport:t}){this.#nt.commitOrRemove(),this.#Gr();const e=this.viewport.rotation,A=t.rotation;if(this.viewport=t,pt(this.div,{rotation:A}),e!==A)for(const t of this.#Fr.values())t.rotate(A);this.addInkEditorIfNeeded(!1)}get pageDimensions(){const{pageWidth:t,pageHeight:e}=this.viewport.rawDims;return[t,e]}get scale(){return this.#nt.viewParameters.realScale}}class ui{#Bs=null;#ct=0;#Jr=new Map;#Yr=new Map;constructor({pageIndex:t}){this.pageIndex=t}setParent(t){if(this.#Bs){if(this.#Bs!==t){if(this.#Jr.size>0)for(const e of this.#Jr.values())e.remove(),t.append(e);this.#Bs=t}}else this.#Bs=t}static get _svgFactory(){return F(this,"_svgFactory",new st)}static#Tr(t,{x:e=0,y:A=0,width:i=1,height:s=1}={}){const{style:a}=t;a.top=100*A+"%",a.left=100*e+"%",a.width=100*i+"%",a.height=100*s+"%"}#Kr(t){const e=ui._svgFactory.create(1,1,!0);return this.#Bs.append(e),e.setAttribute("aria-hidden",!0),ui.#Tr(e,t),e}#qr(t,e){const A=ui._svgFactory.createElement("clipPath");t.append(A);const i=`clip_${e}`;A.setAttribute("id",i),A.setAttribute("clipPathUnits","objectBoundingBox");const s=ui._svgFactory.createElement("use");return A.append(s),s.setAttribute("href",`#${e}`),s.classList.add("clip"),i}highlight(t,e,A,i=!1){const s=this.#ct++,a=this.#Kr(t.box);a.classList.add("highlight"),t.free&&a.classList.add("free");const n=ui._svgFactory.createElement("defs");a.append(n);const r=ui._svgFactory.createElement("path");n.append(r);const o=`path_p${this.pageIndex}_${s}`;r.setAttribute("id",o),r.setAttribute("d",t.toSVGPath()),i&&this.#Yr.set(s,r);const g=this.#qr(n,o),c=ui._svgFactory.createElement("use");return a.append(c),a.setAttribute("fill",e),a.setAttribute("fill-opacity",A),c.setAttribute("href",`#${o}`),this.#Jr.set(s,a),{id:s,clipPathId:`url(#${g})`}}highlightOutline(t){const e=this.#ct++,A=this.#Kr(t.box);A.classList.add("highlightOutline");const i=ui._svgFactory.createElement("defs");A.append(i);const s=ui._svgFactory.createElement("path");i.append(s);const a=`path_p${this.pageIndex}_${e}`;let n;if(s.setAttribute("id",a),s.setAttribute("d",t.toSVGPath()),s.setAttribute("vector-effect","non-scaling-stroke"),t.free){A.classList.add("free");const t=ui._svgFactory.createElement("mask");i.append(t),n=`mask_p${this.pageIndex}_${e}`,t.setAttribute("id",n),t.setAttribute("maskUnits","objectBoundingBox");const s=ui._svgFactory.createElement("rect");t.append(s),s.setAttribute("width","1"),s.setAttribute("height","1"),s.setAttribute("fill","white");const r=ui._svgFactory.createElement("use");t.append(r),r.setAttribute("href",`#${a}`),r.setAttribute("stroke","none"),r.setAttribute("fill","black"),r.setAttribute("fill-rule","nonzero"),r.classList.add("mask")}const r=ui._svgFactory.createElement("use");A.append(r),r.setAttribute("href",`#${a}`),n&&r.setAttribute("mask",`url(#${n})`);const o=r.cloneNode();return A.append(o),r.classList.add("mainOutline"),o.classList.add("secondaryOutline"),this.#Jr.set(e,A),e}finalizeLine(t,e){const A=this.#Yr.get(t);this.#Yr.delete(t),this.updateBox(t,e.box),A.setAttribute("d",e.toSVGPath())}updateLine(t,e){this.#Jr.get(t).firstChild.firstChild.setAttribute("d",e.toSVGPath())}removeFreeHighlight(t){this.remove(t),this.#Yr.delete(t)}updatePath(t,e){this.#Yr.get(t).setAttribute("d",e.toSVGPath())}updateBox(t,e){ui.#Tr(this.#Jr.get(t),e)}show(t,e){this.#Jr.get(t).classList.toggle("hidden",!e)}rotate(t,e){this.#Jr.get(t).setAttribute("data-main-rotation",e)}changeColor(t,e){this.#Jr.get(t).setAttribute("fill",e)}changeOpacity(t,e){this.#Jr.get(t).setAttribute("fill-opacity",e)}addClass(t,e){this.#Jr.get(t).classList.add(e)}removeClass(t,e){this.#Jr.get(t).classList.remove(e)}remove(t){null!==this.#Bs&&(this.#Jr.get(t).remove(),this.#Jr.delete(t))}destroy(){this.#Bs=null;for(const t of this.#Jr.values())t.remove();this.#Jr.clear()}}var Qi=r.getDocument}}]);
//# sourceMappingURL=1959.88e09e6c98529a040c03.js.map

VaKeR 2022