securityos/node_modules/pdfjs-dist/image_decoders/pdf.image_decoders.min.js

22 lines
115 KiB
JavaScript
Raw Permalink Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

/**
* @licstart The following is the entire license notice for the
* JavaScript code in this page
*
* Copyright 2023 Mozilla Foundation
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*
* @licend The above is the entire license notice for the
* JavaScript code in this page
*/
!function webpackUniversalModuleDefinition(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=e.pdfjsImageDecoders=t():"function"==typeof define&&define.amd?define("pdfjs-dist/image_decoders/pdf.image_decoders",[],(()=>e.pdfjsImageDecoders=t())):"object"==typeof exports?exports["pdfjs-dist/image_decoders/pdf.image_decoders"]=e.pdfjsImageDecoders=t():e["pdfjs-dist/image_decoders/pdf.image_decoders"]=e.pdfjsImageDecoders=t()}(globalThis,(()=>(()=>{"use strict";var e=[,(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.VerbosityLevel=t.Util=t.UnknownErrorException=t.UnexpectedResponseException=t.TextRenderingMode=t.RenderingIntentFlag=t.PromiseCapability=t.PermissionFlag=t.PasswordResponses=t.PasswordException=t.PageActionEventType=t.OPS=t.MissingPDFException=t.MAX_IMAGE_SIZE_TO_CACHE=t.LINE_FACTOR=t.LINE_DESCENT_FACTOR=t.InvalidPDFException=t.ImageKind=t.IDENTITY_MATRIX=t.FormatError=t.FeatureTest=t.FONT_IDENTITY_MATRIX=t.DocumentActionEventType=t.CMapCompressionType=t.BaseException=t.BASELINE_FACTOR=t.AnnotationType=t.AnnotationReplyType=t.AnnotationPrefix=t.AnnotationMode=t.AnnotationFlag=t.AnnotationFieldFlag=t.AnnotationEditorType=t.AnnotationEditorPrefix=t.AnnotationEditorParamsType=t.AnnotationBorderStyleType=t.AnnotationActionEventType=t.AbortException=void 0;t.assert=function assert(e,t){e||unreachable(t)};t.bytesToString=bytesToString;t.createValidAbsoluteUrl=function createValidAbsoluteUrl(e,t=null,n=null){if(!e)return null;try{if(n&&"string"==typeof e){if(n.addDefaultProtocol&&e.startsWith("www.")){const t=e.match(/\./g);t?.length>=2&&(e=`http://${e}`)}if(n.tryConvertEncoding)try{e=stringToUTF8String(e)}catch{}}const i=t?new URL(e,t):new URL(e);if(function _isValidProtocol(e){switch(e?.protocol){case"http:":case"https:":case"ftp:":case"mailto:":case"tel:":return!0;default:return!1}}(i))return i}catch{}return null};t.getModificationDate=function getModificationDate(e=new Date){return[e.getUTCFullYear().toString(),(e.getUTCMonth()+1).toString().padStart(2,"0"),e.getUTCDate().toString().padStart(2,"0"),e.getUTCHours().toString().padStart(2,"0"),e.getUTCMinutes().toString().padStart(2,"0"),e.getUTCSeconds().toString().padStart(2,"0")].join("")};t.getUuid=function getUuid(){if("undefined"!=typeof crypto&&"function"==typeof crypto?.randomUUID)return crypto.randomUUID();const e=new Uint8Array(32);if("undefined"!=typeof crypto&&"function"==typeof crypto?.getRandomValues)crypto.getRandomValues(e);else for(let t=0;t<32;t++)e[t]=Math.floor(255*Math.random());return bytesToString(e)};t.getVerbosityLevel=function getVerbosityLevel(){return r};t.info=function info(e){r>=i.INFOS&&console.log(`Info: ${e}`)};t.isArrayBuffer=function isArrayBuffer(e){return"object"==typeof e&&void 0!==e?.byteLength};t.isArrayEqual=function isArrayEqual(e,t){if(e.length!==t.length)return!1;for(let n=0,i=e.length;n<i;n++)if(e[n]!==t[n])return!1;return!0};t.isNodeJS=void 0;t.normalizeUnicode=function normalizeUnicode(e){if(!c){c=/([\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;l=new Map([["ſt","ſt"]])}return e.replaceAll(c,((e,t,n)=>t?t.normalize("NFKC"):l.get(n)))};t.objectFromMap=function objectFromMap(e){const t=Object.create(null);for(const[n,i]of e)t[n]=i;return t};t.objectSize=function objectSize(e){return Object.keys(e).length};t.setVerbosityLevel=function setVerbosityLevel(e){Number.isInteger(e)&&(r=e)};t.shadow=shadow;t.string32=function string32(e){return String.fromCharCode(e>>24&255,e>>16&255,e>>8&255,255&e)};t.stringToBytes=stringToBytes;t.stringToPDFString=function stringToPDFString(e){if(e[0]>="ï"){let t;"þ"===e[0]&&"ÿ"===e[1]?t="utf-16be":"ÿ"===e[0]&&"þ"===e[1]?t="utf-16le":"ï"===e[0]&&"»"===e[1]&&"¿"===e[2]&&(t="utf-8");if(t)try{const n=new TextDecoder(t,{fatal:!0}),i=stringToBytes(e);return n.decode(i)}catch(e){warn(`stringToPDFString: "${e}".`)}}const t=[];for(let n=0,i=e.length;n<i;n++){const i=a[e.charCodeAt(n)];t.push(i?String.fromCharCode(i):e.charAt(n))}return t.join("")};t.stringToUTF8String=stringToUTF8String;t.unreachable=unreachable;t.utf8StringToString=function utf8StringToString(e){return unescape(encodeURIComponent(e))};t.warn=warn;const n=!("object"!=typeof process||process+""!="[object process]"||process.versions.nw||process.versions.electron&&process.type&&"browser"!==process.type);t.isNodeJS=n;t.IDENTITY_MATRIX=[1,0,0,1,0,0];t.FONT_IDENTITY_MATRIX=[.001,0,0,.001,0,0];t.MAX_IMAGE_SIZE_TO_CACHE=1e7;t.LINE_FACTOR=1.35;t.LINE_DESCENT_FACTOR=.35;t.BASELINE_FACTOR=.25925925925925924;t.RenderingIntentFlag={ANY:1,DISPLAY:2,PRINT:4,SAVE:8,ANNOTATIONS_FORMS:16,ANNOTATIONS_STORAGE:32,ANNOTATIONS_DISABLE:64,OPLIST:256};t.AnnotationMode={DISABLE:0,ENABLE:1,ENABLE_FORMS:2,ENABLE_STORAGE:3};t.AnnotationEditorPrefix="pdfjs_internal_editor_";t.AnnotationEditorType={DISABLE:-1,NONE:0,FREETEXT:3,STAMP:13,INK:15};t.AnnotationEditorParamsType={RESIZE:1,CREATE:2,FREETEXT_SIZE:11,FREETEXT_COLOR:12,FREETEXT_OPACITY:13,INK_COLOR:21,INK_THICKNESS:22,INK_OPACITY:23};t.PermissionFlag={PRINT:4,MODIFY_CONTENTS:8,COPY:16,MODIFY_ANNOTATIONS:32,FILL_INTERACTIVE_FORMS:256,COPY_FOR_ACCESSIBILITY:512,ASSEMBLE:1024,PRINT_HIGH_QUALITY:2048};t.TextRenderingMode={FILL:0,STROKE:1,FILL_STROKE:2,INVISIBLE:3,FILL_ADD_TO_PATH:4,STROKE_ADD_TO_PATH:5,FILL_STROKE_ADD_TO_PATH:6,ADD_TO_PATH:7,FILL_STROKE_MASK:3,ADD_TO_PATH_FLAG:4};t.ImageKind={GRAYSCALE_1BPP:1,RGB_24BPP:2,RGBA_32BPP:3};t.AnnotationType={TEXT:1,LINK:2,FREETEXT:3,LINE:4,SQUARE:5,CIRCLE:6,POLYGON:7,POLYLINE:8,HIGHLIGHT:9,UNDERLINE:10,SQUIGGLY:11,STRIKEOUT:12,STAMP:13,CARET:14,INK:15,POPUP:16,FILEATTACHMENT:17,SOUND:18,MOVIE:19,WIDGET:20,SCREEN:21,PRINTERMARK:22,TRAPNET:23,WATERMARK:24,THREED:25,REDACT:26};t.AnnotationReplyType={GROUP:"Group",REPLY:"R"};t.AnnotationFlag={INVISIBLE:1,HIDDEN:2,PRINT:4,NOZOOM:8,NOROTATE:16,NOVIEW:32,READONLY:64,LOCKED:128,TOGGLENOVIEW:256,LOCKEDCONTENTS:512};t.AnnotationFieldFlag={READONLY:1,REQUIRED:2,NOEXPORT:4,MULTILINE:4096,PASSWORD:8192,NOTOGGLETOOFF:16384,RADIO:32768,PUSHBUTTON:65536,COMBO:131072,EDIT:262144,SORT:524288,FILESELECT:1048576,MULTISELECT:2097152,DONOTSPELLCHECK:4194304,DONOTSCROLL:8388608,COMB:16777216,RICHTEXT:33554432,RADIOSINUNISON:33554432,COMMITONSELCHANGE:67108864};t.AnnotationBorderStyleType={SOLID:1,DASHED:2,BEVELED:3,INSET:4,UNDERLINE:5};t.AnnotationActionEventType={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"};t.DocumentActionEventType={WC:"WillClose",WS:"WillSave",DS:"DidSave",WP:"WillPrint",DP:"DidPrint"};t.PageActionEventType={O:"PageOpen",C:"PageClose"};const i={ERRORS:0,WARNINGS:1,INFOS:5};t.VerbosityLevel=i;t.CMapCompressionType={NONE:0,BINARY:1};t.OPS={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};t.PasswordResponses={NEED_PASSWORD:1,INCORRECT_PASSWORD:2};let r=i.WARNINGS;function warn(e){r>=i.WARNINGS&&console.log(`Warning: ${e}`)}function unreachable(e){throw new Error(e)}function shadow(e,t,n,i=!1){Object.defineProperty(e,t,{value:n,enumerable:!i,configurable:!0,writable:!1});return n}const s=function BaseExceptionClosure(){function BaseException(e,t){this.constructor===BaseException&&unreachable("Cannot initialize BaseException.");this.message=e;this.name=t}BaseException.prototype=new Error;BaseException.constructor=BaseException;return BaseException}();t.BaseException=s;t.PasswordException=class PasswordException extends s{constructor(e,t){super(e,"PasswordException");this.code=t}};t.UnknownErrorException=class UnknownErrorException extends s{constructor(e,t){super(e,"UnknownErrorException");this.details=t}};t.InvalidPDFException=class InvalidPDFException extends s{constructor(e){super(e,"InvalidPDFException")}};t.MissingPDFException=class MissingPDFException extends s{constructor(e){super(e,"MissingPDFException")}};t.UnexpectedResponseException=class UnexpectedResponseException extends s{constructor(e,t){super(e,"UnexpectedResponseException");this.status=t}};t.FormatError=class FormatError extends s{constructor(e){super(e,"FormatError")}};t.AbortException=class AbortException extends s{constructor(e){super(e,"AbortException")}};function bytesToString(e){"object"==typeof e&&void 0!==e?.length||unreachable("Invalid argument for bytesToString");const t=e.length,n=8192;if(t<n)return String.fromCharCode.apply(null,e);const i=[];for(let r=0;r<t;r+=n){const s=Math.min(r+n,t),o=e.subarray(r,s);i.push(String.fromCharCode.apply(null,o))}return i.join("")}function stringToBytes(e){"string"!=typeof e&&unreachable("Invalid argument for stringToBytes");const t=e.length,n=new Uint8Array(t);for(let i=0;i<t;++i)n[i]=255&e.charCodeAt(i);return n}t.FeatureTest=class FeatureTest{static get isLittleEndian(){return shadow(this,"isLittleEndian",function isLittleEndian(){const e=new Uint8Array(4);e[0]=1;return 1===new Uint32Array(e.buffer,0,1)[0]}())}static get isEvalSupported(){return shadow(this,"isEvalSupported",function isEvalSupported(){try{new Function("");return!0}catch{return!1}}())}static get isOffscreenCanvasSupported(){return shadow(this,"isOffscreenCanvasSupported","undefined"!=typeof OffscreenCanvas)}static get platform(){return"undefined"==typeof navigator?shadow(this,"platform",{isWin:!1,isMac:!1}):shadow(this,"platform",{isWin:navigator.platform.includes("Win"),isMac:navigator.platform.includes("Mac")})}static get isCSSRoundSupported(){return shadow(this,"isCSSRoundSupported",globalThis.CSS?.supports?.("width: round(1.5px, 1px)"))}};const o=[...Array(256).keys()].map((e=>e.toString(16).padStart(2,"0")));t.Util=class Util{static makeHexColor(e,t,n){return`#${o[e]}${o[t]}${o[n]}`}static scaleMinMax(e,t){let n;if(e[0]){if(e[0]<0){n=t[0];t[0]=t[1];t[1]=n}t[0]*=e[0];t[1]*=e[0];if(e[3]<0){n=t[2];t[2]=t[3];t[3]=n}t[2]*=e[3];t[3]*=e[3]}else{n=t[0];t[0]=t[2];t[2]=n;n=t[1];t[1]=t[3];t[3]=n;if(e[1]<0){n=t[2];t[2]=t[3];t[3]=n}t[2]*=e[1];t[3]*=e[1];if(e[2]<0){n=t[0];t[0]=t[1];t[1]=n}t[0]*=e[2];t[1]*=e[2]}t[0]+=e[4];t[1]+=e[4];t[2]+=e[5];t[3]+=e[5]}static transform(e,t){return[e[0]*t[0]+e[2]*t[1],e[1]*t[0]+e[3]*t[1],e[0]*t[2]+e[2]*t[3],e[1]*t[2]+e[3]*t[3],e[0]*t[4]+e[2]*t[5]+e[4],e[1]*t[4]+e[3]*t[5]+e[5]]}static applyTransform(e,t){return[e[0]*t[0]+e[1]*t[2]+t[4],e[0]*t[1]+e[1]*t[3]+t[5]]}static applyInverseTransform(e,t){const n=t[0]*t[3]-t[1]*t[2];return[(e[0]*t[3]-e[1]*t[2]+t[2]*t[5]-t[4]*t[3])/n,(-e[0]*t[1]+e[1]*t[0]+t[4]*t[1]-t[5]*t[0])/n]}static getAxialAlignedBoundingBox(e,t){const n=this.applyTransform(e,t),i=this.applyTransform(e.slice(2,4),t),r=this.applyTransform([e[0],e[3]],t),s=this.applyTransform([e[2],e[1]],t);return[Math.min(n[0],i[0],r[0],s[0]),Math.min(n[1],i[1],r[1],s[1]),Math.max(n[0],i[0],r[0],s[0]),Math.max(n[1],i[1],r[1],s[1])]}static inverseTransform(e){const t=e[0]*e[3]-e[1]*e[2];return[e[3]/t,-e[1]/t,-e[2]/t,e[0]/t,(e[2]*e[5]-e[4]*e[3])/t,(e[4]*e[1]-e[5]*e[0])/t]}static singularValueDecompose2dScale(e){const t=[e[0],e[2],e[1],e[3]],n=e[0]*t[0]+e[1]*t[2],i=e[0]*t[1]+e[1]*t[3],r=e[2]*t[0]+e[3]*t[2],s=e[2]*t[1]+e[3]*t[3],o=(n+s)/2,a=Math.sqrt((n+s)**2-4*(n*s-r*i))/2,c=o+a||1,l=o-a||1;return[Math.sqrt(c),Math.sqrt(l)]}static normalizeRect(e){const t=e.slice(0);if(e[0]>e[2]){t[0]=e[2];t[2]=e[0]}if(e[1]>e[3]){t[1]=e[3];t[3]=e[1]}return t}static intersect(e,t){const n=Math.max(Math.min(e[0],e[2]),Math.min(t[0],t[2])),i=Math.min(Math.max(e[0],e[2]),Math.max(t[0],t[2]));if(n>i)return null;const r=Math.max(Math.min(e[1],e[3]),Math.min(t[1],t[3])),s=Math.min(Math.max(e[1],e[3]),Math.max(t[1],t[3]));return r>s?null:[n,r,i,s]}static bezierBoundingBox(e,t,n,i,r,s,o,a){const c=[],l=[[],[]];let f,d,h,u,p,g,m,b;for(let l=0;l<2;++l){if(0===l){d=6*e-12*n+6*r;f=-3*e+9*n-9*r+3*o;h=3*n-3*e}else{d=6*t-12*i+6*s;f=-3*t+9*i-9*s+3*a;h=3*i-3*t}if(Math.abs(f)<1e-12){if(Math.abs(d)<1e-12)continue;u=-h/d;0<u&&u<1&&c.push(u)}else{m=d*d-4*h*f;b=Math.sqrt(m);if(!(m<0)){p=(-d+b)/(2*f);0<p&&p<1&&c.push(p);g=(-d-b)/(2*f);0<g&&g<1&&c.push(g)}}}let x,y=c.length;const w=y;for(;y--;){u=c[y];x=1-u;l[0][y]=x*x*x*e+3*x*x*u*n+3*x*u*u*r+u*u*u*o;l[1][y]=x*x*x*t+3*x*x*u*i+3*x*u*u*s+u*u*u*a}l[0][w]=e;l[1][w]=t;l[0][w+1]=o;l[1][w+1]=a;l[0].length=l[1].length=w+2;return[Math.min(...l[0]),Math.min(...l[1]),Math.max(...l[0]),Math.max(...l[1])]}};const a=[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 stringToUTF8String(e){return decodeURIComponent(escape(e))}t.PromiseCapability=class PromiseCapability{#e=!1;constructor(){this.promise=new Promise(((e,t)=>{this.resolve=t=>{this.#e=!0;e(t)};this.reject=e=>{this.#e=!0;t(e)}}))}get settled(){return this.#e}};let c=null,l=null;t.AnnotationPrefix="pdfjs_internal_id_"},(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});t.Jbig2Image=void 0;var i=n(1),r=n(3),s=n(6),o=n(7);class Jbig2Error extends i.BaseException{constructor(e){super(`JBIG2 error: ${e}`,"Jbig2Error")}}class ContextCache{getContexts(e){return e in this?this[e]:this[e]=new Int8Array(65536)}}class DecodingContext{constructor(e,t,n){this.data=e;this.start=t;this.end=n}get decoder(){const e=new s.ArithmeticDecoder(this.data,this.start,this.end);return(0,i.shadow)(this,"decoder",e)}get contextCache(){const e=new ContextCache;return(0,i.shadow)(this,"contextCache",e)}}const a=2**31-1,c=-(2**31);function decodeInteger(e,t,n){const i=e.getContexts(t);let r=1;function readBits(e){let t=0;for(let s=0;s<e;s++){const e=n.readBit(i,r);r=r<256?r<<1|e:511&(r<<1|e)|256;t=t<<1|e}return t>>>0}const s=readBits(1),o=readBits(1)?readBits(1)?readBits(1)?readBits(1)?readBits(1)?readBits(32)+4436:readBits(12)+340:readBits(8)+84:readBits(6)+20:readBits(4)+4:readBits(2);let l;0===s?l=o:o>0&&(l=-o);return l>=c&&l<=a?l:null}function decodeIAID(e,t,n){const i=e.getContexts("IAID");let r=1;for(let e=0;e<n;e++){r=r<<1|t.readBit(i,r)}return n<31?r&(1<<n)-1:2147483647&r}const l=["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"],f=[[{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}]],d=[{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}]}],h=[39717,1941,229,405],u=[32,8];function decodeBitmap(e,t,n,i,r,s,o,a){if(e){return decodeMMRBitmap(new Reader(a.data,a.start,a.end),t,n,!1)}if(0===i&&!s&&!r&&4===o.length&&3===o[0].x&&-1===o[0].y&&-3===o[1].x&&-1===o[1].y&&2===o[2].x&&-2===o[2].y&&-2===o[3].x&&-2===o[3].y)return function decodeBitmapTemplate0(e,t,n){const i=n.decoder,r=n.contextCache.getContexts("GB"),s=[];let o,a,c,l,f,d,h;for(a=0;a<t;a++){f=s[a]=new Uint8Array(e);d=a<1?f:s[a-1];h=a<2?f:s[a-2];o=h[0]<<13|h[1]<<12|h[2]<<11|d[0]<<7|d[1]<<6|d[2]<<5|d[3]<<4;for(c=0;c<e;c++){f[c]=l=i.readBit(r,o);o=(31735&o)<<1|(c+3<e?h[c+3]<<11:0)|(c+4<e?d[c+4]<<4:0)|l}}return s}(t,n,a);const c=!!s,l=f[i].concat(o);l.sort((function(e,t){return e.y-t.y||e.x-t.x}));const d=l.length,u=new Int8Array(d),p=new Int8Array(d),g=[];let m,b,x=0,y=0,w=0,T=0;for(b=0;b<d;b++){u[b]=l[b].x;p[b]=l[b].y;y=Math.min(y,l[b].x);w=Math.max(w,l[b].x);T=Math.min(T,l[b].y);b<d-1&&l[b].y===l[b+1].y&&l[b].x===l[b+1].x-1?x|=1<<d-1-b:g.push(b)}const C=g.length,S=new Int8Array(C),I=new Int8Array(C),E=new Uint16Array(C);for(m=0;m<C;m++){b=g[m];S[m]=l[b].x;I[m]=l[b].y;E[m]=1<<d-1-b}const P=-y,k=-T,B=t-w,A=h[i];let _=new Uint8Array(t);const R=[],M=a.decoder,v=a.contextCache.getContexts("GB");let L,D,O,F,U,N=0,H=0;for(let e=0;e<n;e++){if(r){N^=M.readBit(v,A);if(N){R.push(_);continue}}_=new Uint8Array(_);R.push(_);for(L=0;L<t;L++){if(c&&s[e][L]){_[L]=0;continue}if(L>=P&&L<B&&e>=k){H=H<<1&x;for(b=0;b<C;b++){D=e+I[b];O=L+S[b];F=R[D][O];if(F){F=E[b];H|=F}}}else{H=0;U=d-1;for(b=0;b<d;b++,U--){O=L+u[b];if(O>=0&&O<t){D=e+p[b];if(D>=0){F=R[D][O];F&&(H|=F<<U)}}}}const n=M.readBit(v,H);_[L]=n}}return R}function decodeRefinement(e,t,n,i,r,s,o,a,c){let l=d[n].coding;0===n&&(l=l.concat([a[0]]));const f=l.length,h=new Int32Array(f),p=new Int32Array(f);let g;for(g=0;g<f;g++){h[g]=l[g].x;p[g]=l[g].y}let m=d[n].reference;0===n&&(m=m.concat([a[1]]));const b=m.length,x=new Int32Array(b),y=new Int32Array(b);for(g=0;g<b;g++){x[g]=m[g].x;y[g]=m[g].y}const w=i[0].length,T=i.length,C=u[n],S=[],I=c.decoder,E=c.contextCache.getContexts("GR");let P=0;for(let n=0;n<t;n++){if(o){P^=I.readBit(E,C);if(P)throw new Jbig2Error("prediction is not supported")}const t=new Uint8Array(e);S.push(t);for(let o=0;o<e;o++){let a,c,l=0;for(g=0;g<f;g++){a=n+p[g];c=o+h[g];a<0||c<0||c>=e?l<<=1:l=l<<1|S[a][c]}for(g=0;g<b;g++){a=n+y[g]-s;c=o+x[g]-r;a<0||a>=T||c<0||c>=w?l<<=1:l=l<<1|i[a][c]}const d=I.readBit(E,l);t[o]=d}}return S}function decodeTextRegion(e,t,n,i,r,s,o,a,c,l,f,d,h,u,p,g,m,b,x){if(e&&t)throw new Jbig2Error("refinement with Huffman is not supported");const y=[];let w,T;for(w=0;w<i;w++){T=new Uint8Array(n);if(r)for(let e=0;e<n;e++)T[e]=r;y.push(T)}const C=m.decoder,S=m.contextCache;let I=e?-u.tableDeltaT.decode(x):-decodeInteger(S,"IADT",C),E=0;w=0;for(;w<s;){I+=e?u.tableDeltaT.decode(x):decodeInteger(S,"IADT",C);E+=e?u.tableFirstS.decode(x):decodeInteger(S,"IAFS",C);let i=E;for(;;){let r=0;o>1&&(r=e?x.readBits(b):decodeInteger(S,"IAIT",C));const s=o*I+r,E=e?u.symbolIDTable.decode(x):decodeIAID(S,C,c),P=t&&(e?x.readBit():decodeInteger(S,"IARI",C));let k=a[E],B=k[0].length,A=k.length;if(P){const e=decodeInteger(S,"IARDW",C),t=decodeInteger(S,"IARDH",C);B+=e;A+=t;k=decodeRefinement(B,A,p,k,(e>>1)+decodeInteger(S,"IARDX",C),(t>>1)+decodeInteger(S,"IARDY",C),!1,g,m)}const _=s-(1&d?0:A-1),R=i-(2&d?B-1:0);let M,v,L;if(l){for(M=0;M<A;M++){T=y[R+M];if(!T)continue;L=k[M];const e=Math.min(n-_,B);switch(h){case 0:for(v=0;v<e;v++)T[_+v]|=L[v];break;case 2:for(v=0;v<e;v++)T[_+v]^=L[v];break;default:throw new Jbig2Error(`operator ${h} is not supported`)}}i+=A-1}else{for(v=0;v<A;v++){T=y[_+v];if(T){L=k[v];switch(h){case 0:for(M=0;M<B;M++)T[R+M]|=L[M];break;case 2:for(M=0;M<B;M++)T[R+M]^=L[M];break;default:throw new Jbig2Error(`operator ${h} is not supported`)}}}i+=B-1}w++;const D=e?u.tableDeltaS.decode(x):decodeInteger(S,"IADS",C);if(null===D)break;i+=D+f}}return y}function readSegmentHeader(e,t){const n={};n.number=(0,r.readUint32)(e,t);const i=e[t+4],s=63&i;if(!l[s])throw new Jbig2Error("invalid segment type: "+s);n.type=s;n.typeName=l[s];n.deferredNonRetain=!!(128&i);const o=!!(64&i),a=e[t+5];let c=a>>5&7;const f=[31&a];let d=t+6;if(7===a){c=536870911&(0,r.readUint32)(e,d-1);d+=3;let t=c+7>>3;f[0]=e[d++];for(;--t>0;)f.push(e[d++])}else if(5===a||6===a)throw new Jbig2Error("invalid referred-to flags");n.retainBits=f;let h=4;n.number<=256?h=1:n.number<=65536&&(h=2);const u=[];let g,m;for(g=0;g<c;g++){let t;t=1===h?e[d]:2===h?(0,r.readUint16)(e,d):(0,r.readUint32)(e,d);u.push(t);d+=h}n.referredTo=u;if(o){n.pageAssociation=(0,r.readUint32)(e,d);d+=4}else n.pageAssociation=e[d++];n.length=(0,r.readUint32)(e,d);d+=4;if(4294967295===n.length){if(38!==s)throw new Jbig2Error("invalid unknown segment length");{const t=readRegionSegmentInformation(e,d),i=!!(1&e[d+p]),r=6,s=new Uint8Array(r);if(!i){s[0]=255;s[1]=172}s[2]=t.height>>>24&255;s[3]=t.height>>16&255;s[4]=t.height>>8&255;s[5]=255&t.height;for(g=d,m=e.length;g<m;g++){let t=0;for(;t<r&&s[t]===e[g+t];)t++;if(t===r){n.length=g+r;break}}if(4294967295===n.length)throw new Jbig2Error("segment end was not found")}}n.headerEnd=d;return n}function readSegments(e,t,n,i){const r=[];let s=n;for(;s<i;){const n=readSegmentHeader(t,s);s=n.headerEnd;const i={header:n,data:t};if(!e.randomAccess){i.start=s;s+=n.length;i.end=s}r.push(i);if(51===n.type)break}if(e.randomAccess)for(let e=0,t=r.length;e<t;e++){r[e].start=s;s+=r[e].header.length;r[e].end=s}return r}function readRegionSegmentInformation(e,t){return{width:(0,r.readUint32)(e,t),height:(0,r.readUint32)(e,t+4),x:(0,r.readUint32)(e,t+8),y:(0,r.readUint32)(e,t+12),combinationOperator:7&e[t+16]}}const p=17;function processSegment(e,t){const n=e.header,i=e.data,s=e.end;let o,a,c,l,f=e.start;switch(n.type){case 0:const e={},t=(0,r.readUint16)(i,f);e.huffman=!!(1&t);e.refinement=!!(2&t);e.huffmanDHSelector=t>>2&3;e.huffmanDWSelector=t>>4&3;e.bitmapSizeSelector=t>>6&1;e.aggregationInstancesSelector=t>>7&1;e.bitmapCodingContextUsed=!!(256&t);e.bitmapCodingContextRetained=!!(512&t);e.template=t>>10&3;e.refinementTemplate=t>>12&1;f+=2;if(!e.huffman){l=0===e.template?4:1;a=[];for(c=0;c<l;c++){a.push({x:(0,r.readInt8)(i,f),y:(0,r.readInt8)(i,f+1)});f+=2}e.at=a}if(e.refinement&&!e.refinementTemplate){a=[];for(c=0;c<2;c++){a.push({x:(0,r.readInt8)(i,f),y:(0,r.readInt8)(i,f+1)});f+=2}e.refinementAt=a}e.numberOfExportedSymbols=(0,r.readUint32)(i,f);f+=4;e.numberOfNewSymbols=(0,r.readUint32)(i,f);f+=4;o=[e,n.number,n.referredTo,i,f,s];break;case 6:case 7:const d={};d.info=readRegionSegmentInformation(i,f);f+=p;const h=(0,r.readUint16)(i,f);f+=2;d.huffman=!!(1&h);d.refinement=!!(2&h);d.logStripSize=h>>2&3;d.stripSize=1<<d.logStripSize;d.referenceCorner=h>>4&3;d.transposed=!!(64&h);d.combinationOperator=h>>7&3;d.defaultPixelValue=h>>9&1;d.dsOffset=h<<17>>27;d.refinementTemplate=h>>15&1;if(d.huffman){const e=(0,r.readUint16)(i,f);f+=2;d.huffmanFS=3&e;d.huffmanDS=e>>2&3;d.huffmanDT=e>>4&3;d.huffmanRefinementDW=e>>6&3;d.huffmanRefinementDH=e>>8&3;d.huffmanRefinementDX=e>>10&3;d.huffmanRefinementDY=e>>12&3;d.huffmanRefinementSizeSelector=!!(16384&e)}if(d.refinement&&!d.refinementTemplate){a=[];for(c=0;c<2;c++){a.push({x:(0,r.readInt8)(i,f),y:(0,r.readInt8)(i,f+1)});f+=2}d.refinementAt=a}d.numberOfSymbolInstances=(0,r.readUint32)(i,f);f+=4;o=[d,n.referredTo,i,f,s];break;case 16:const u={},g=i[f++];u.mmr=!!(1&g);u.template=g>>1&3;u.patternWidth=i[f++];u.patternHeight=i[f++];u.maxPatternIndex=(0,r.readUint32)(i,f);f+=4;o=[u,n.number,i,f,s];break;case 22:case 23:const m={};m.info=readRegionSegmentInformation(i,f);f+=p;const b=i[f++];m.mmr=!!(1&b);m.template=b>>1&3;m.enableSkip=!!(8&b);m.combinationOperator=b>>4&7;m.defaultPixelValue=b>>7&1;m.gridWidth=(0,r.readUint32)(i,f);f+=4;m.gridHeight=(0,r.readUint32)(i,f);f+=4;m.gridOffsetX=4294967295&(0,r.readUint32)(i,f);f+=4;m.gridOffsetY=4294967295&(0,r.readUint32)(i,f);f+=4;m.gridVectorX=(0,r.readUint16)(i,f);f+=2;m.gridVectorY=(0,r.readUint16)(i,f);f+=2;o=[m,n.referredTo,i,f,s];break;case 38:case 39:const x={};x.info=readRegionSegmentInformation(i,f);f+=p;const y=i[f++];x.mmr=!!(1&y);x.template=y>>1&3;x.prediction=!!(8&y);if(!x.mmr){l=0===x.template?4:1;a=[];for(c=0;c<l;c++){a.push({x:(0,r.readInt8)(i,f),y:(0,r.readInt8)(i,f+1)});f+=2}x.at=a}o=[x,i,f,s];break;case 48:const w={width:(0,r.readUint32)(i,f),height:(0,r.readUint32)(i,f+4),resolutionX:(0,r.readUint32)(i,f+8),resolutionY:(0,r.readUint32)(i,f+12)};4294967295===w.height&&delete w.height;const T=i[f+16];(0,r.readUint16)(i,f+17);w.lossless=!!(1&T);w.refinement=!!(2&T);w.defaultPixelValue=T>>2&1;w.combinationOperator=T>>3&3;w.requiresBuffer=!!(32&T);w.combinationOperatorOverride=!!(64&T);o=[w];break;case 49:case 50:case 51:case 62:break;case 53:o=[n.number,i,f,s];break;default:throw new Jbig2Error(`segment type ${n.typeName}(${n.type}) is not implemented`)}const d="on"+n.typeName;d in t&&t[d].apply(t,o)}function processSegments(e,t){for(let n=0,i=e.length;n<i;n++)processSegment(e[n],t)}class SimpleSegmentVisitor{onPageInformation(e){this.currentPageInfo=e;const t=e.width+7>>3,n=new Uint8ClampedArray(t*e.height);e.defaultPixelValue&&n.fill(255);this.buffer=n}drawBitmap(e,t){const n=this.currentPageInfo,i=e.width,r=e.height,s=n.width+7>>3,o=n.combinationOperatorOverride?e.combinationOperator:n.combinationOperator,a=this.buffer,c=128>>(7&e.x);let l,f,d,h,u=e.y*s+(e.x>>3);switch(o){case 0:for(l=0;l<r;l++){d=c;h=u;for(f=0;f<i;f++){t[l][f]&&(a[h]|=d);d>>=1;if(!d){d=128;h++}}u+=s}break;case 2:for(l=0;l<r;l++){d=c;h=u;for(f=0;f<i;f++){t[l][f]&&(a[h]^=d);d>>=1;if(!d){d=128;h++}}u+=s}break;default:throw new Jbig2Error(`operator ${o} is not supported`)}}onImmediateGenericRegion(e,t,n,i){const r=e.info,s=new DecodingContext(t,n,i),o=decodeBitmap(e.mmr,r.width,r.height,e.template,e.prediction,null,e.at,s);this.drawBitmap(r,o)}onImmediateLosslessGenericRegion(){this.onImmediateGenericRegion(...arguments)}onSymbolDictionary(e,t,n,i,s,o){let a,c;if(e.huffman){a=function getSymbolDictionaryHuffmanTables(e,t,n){let i,r,s,o,a=0;switch(e.huffmanDHSelector){case 0:case 1:i=getStandardTable(e.huffmanDHSelector+4);break;case 3:i=getCustomHuffmanTable(a,t,n);a++;break;default:throw new Jbig2Error("invalid Huffman DH selector")}switch(e.huffmanDWSelector){case 0:case 1:r=getStandardTable(e.huffmanDWSelector+2);break;case 3:r=getCustomHuffmanTable(a,t,n);a++;break;default:throw new Jbig2Error("invalid Huffman DW selector")}if(e.bitmapSizeSelector){s=getCustomHuffmanTable(a,t,n);a++}else s=getStandardTable(1);o=e.aggregationInstancesSelector?getCustomHuffmanTable(a,t,n):getStandardTable(1);return{tableDeltaHeight:i,tableDeltaWidth:r,tableBitmapSize:s,tableAggregateInstances:o}}(e,n,this.customTables);c=new Reader(i,s,o)}let l=this.symbols;l||(this.symbols=l={});const f=[];for(const e of n){const t=l[e];t&&f.push(...t)}const d=new DecodingContext(i,s,o);l[t]=function decodeSymbolDictionary(e,t,n,i,s,o,a,c,l,f,d,h){if(e&&t)throw new Jbig2Error("symbol refinement with Huffman is not supported");const u=[];let p=0,g=(0,r.log2)(n.length+i);const m=d.decoder,b=d.contextCache;let x,y;if(e){x=getStandardTable(1);y=[];g=Math.max(g,1)}for(;u.length<i;){p+=e?o.tableDeltaHeight.decode(h):decodeInteger(b,"IADH",m);let i=0,r=0;const s=e?y.length:0;for(;;){const s=e?o.tableDeltaWidth.decode(h):decodeInteger(b,"IADW",m);if(null===s)break;i+=s;r+=i;let x;if(t){const r=decodeInteger(b,"IAAI",m);if(r>1)x=decodeTextRegion(e,t,i,p,0,r,1,n.concat(u),g,0,0,1,0,o,l,f,d,0,h);else{const e=decodeIAID(b,m,g),t=decodeInteger(b,"IARDX",m),r=decodeInteger(b,"IARDY",m);x=decodeRefinement(i,p,l,e<n.length?n[e]:u[e-n.length],t,r,!1,f,d)}u.push(x)}else if(e)y.push(i);else{x=decodeBitmap(!1,i,p,a,!1,null,c,d);u.push(x)}}if(e&&!t){const e=o.tableBitmapSize.decode(h);h.byteAlign();let t;if(0===e)t=readUncompressedBitmap(h,r,p);else{const n=h.end,i=h.position+e;h.end=i;t=decodeMMRBitmap(h,r,p,!1);h.end=n;h.position=i}const n=y.length;if(s===n-1)u.push(t);else{let e,i,r,o,a,c=0;for(e=s;e<n;e++){o=y[e];r=c+o;a=[];for(i=0;i<p;i++)a.push(t[i].subarray(c,r));u.push(a);c=r}}}}const w=[],T=[];let C,S,I=!1;const E=n.length+i;for(;T.length<E;){let t=e?x.decode(h):decodeInteger(b,"IAEX",m);for(;t--;)T.push(I);I=!I}for(C=0,S=n.length;C<S;C++)T[C]&&w.push(n[C]);for(let e=0;e<i;C++,e++)T[C]&&w.push(u[e]);return w}(e.huffman,e.refinement,f,e.numberOfNewSymbols,e.numberOfExportedSymbols,a,e.template,e.at,e.refinementTemplate,e.refinementAt,d,c)}onImmediateTextRegion(e,t,n,i,s){const o=e.info;let a,c;const l=this.symbols,f=[];for(const e of t){const t=l[e];t&&f.push(...t)}const d=(0,r.log2)(f.length);if(e.huffman){c=new Reader(n,i,s);a=function getTextRegionHuffmanTables(e,t,n,i,r){const s=[];for(let e=0;e<=34;e++){const t=r.readBits(4);s.push(new HuffmanLine([e,t,0,0]))}const o=new HuffmanTable(s,!1);s.length=0;for(let e=0;e<i;){const t=o.decode(r);if(t>=32){let n,i,o;switch(t){case 32:if(0===e)throw new Jbig2Error("no previous value in symbol ID table");i=r.readBits(2)+3;n=s[e-1].prefixLength;break;case 33:i=r.readBits(3)+3;n=0;break;case 34:i=r.readBits(7)+11;n=0;break;default:throw new Jbig2Error("invalid code length in symbol ID table")}for(o=0;o<i;o++){s.push(new HuffmanLine([e,n,0,0]));e++}}else{s.push(new HuffmanLine([e,t,0,0]));e++}}r.byteAlign();const a=new HuffmanTable(s,!1);let c,l,f,d=0;switch(e.huffmanFS){case 0:case 1:c=getStandardTable(e.huffmanFS+6);break;case 3:c=getCustomHuffmanTable(d,t,n);d++;break;default:throw new Jbig2Error("invalid Huffman FS selector")}switch(e.huffmanDS){case 0:case 1:case 2:l=getStandardTable(e.huffmanDS+8);break;case 3:l=getCustomHuffmanTable(d,t,n);d++;break;default:throw new Jbig2Error("invalid Huffman DS selector")}switch(e.huffmanDT){case 0:case 1:case 2:f=getStandardTable(e.huffmanDT+11);break;case 3:f=getCustomHuffmanTable(d,t,n);d++;break;default:throw new Jbig2Error("invalid Huffman DT selector")}if(e.refinement)throw new Jbig2Error("refinement with Huffman is not supported");return{symbolIDTable:a,tableFirstS:c,tableDeltaS:l,tableDeltaT:f}}(e,t,this.customTables,f.length,c)}const h=new DecodingContext(n,i,s),u=decodeTextRegion(e.huffman,e.refinement,o.width,o.height,e.defaultPixelValue,e.numberOfSymbolInstances,e.stripSize,f,d,e.transposed,e.dsOffset,e.referenceCorner,e.combinationOperator,a,e.refinementTemplate,e.refinementAt,h,e.logStripSize,c);this.drawBitmap(o,u)}onImmediateLosslessTextRegion(){this.onImmediateTextRegion(...arguments)}onPatternDictionary(e,t,n,i,r){let s=this.patterns;s||(this.patterns=s={});const o=new DecodingContext(n,i,r);s[t]=function decodePatternDictionary(e,t,n,i,r,s){const o=[];if(!e){o.push({x:-t,y:0});0===r&&o.push({x:-3,y:-1},{x:2,y:-2},{x:-2,y:-2})}const a=decodeBitmap(e,(i+1)*t,n,r,!1,null,o,s),c=[];for(let e=0;e<=i;e++){const i=[],r=t*e,s=r+t;for(let e=0;e<n;e++)i.push(a[e].subarray(r,s));c.push(i)}return c}(e.mmr,e.patternWidth,e.patternHeight,e.maxPatternIndex,e.template,o)}onImmediateHalftoneRegion(e,t,n,i,s){const o=this.patterns[t[0]],a=e.info,c=new DecodingContext(n,i,s),l=function decodeHalftoneRegion(e,t,n,i,s,o,a,c,l,f,d,h,u,p,g){if(a)throw new Jbig2Error("skip is not supported");if(0!==c)throw new Jbig2Error(`operator "${c}" is not supported in halftone region`);const m=[];let b,x,y;for(b=0;b<s;b++){y=new Uint8Array(i);if(o)for(x=0;x<i;x++)y[x]=o;m.push(y)}const w=t.length,T=t[0],C=T[0].length,S=T.length,I=(0,r.log2)(w),E=[];if(!e){E.push({x:n<=1?3:2,y:-1});0===n&&E.push({x:-3,y:-1},{x:2,y:-2},{x:-2,y:-2})}const P=[];let k,B,A,_,R,M,v,L,D,O,F;e&&(k=new Reader(g.data,g.start,g.end));for(b=I-1;b>=0;b--){B=e?decodeMMRBitmap(k,l,f,!0):decodeBitmap(!1,l,f,n,!1,null,E,g);P[b]=B}for(A=0;A<f;A++)for(_=0;_<l;_++){R=0;M=0;for(x=I-1;x>=0;x--){R^=P[x][A][_];M|=R<<x}v=t[M];L=d+A*p+_*u>>8;D=h+A*u-_*p>>8;if(L>=0&&L+C<=i&&D>=0&&D+S<=s)for(b=0;b<S;b++){F=m[D+b];O=v[b];for(x=0;x<C;x++)F[L+x]|=O[x]}else{let e,t;for(b=0;b<S;b++){t=D+b;if(!(t<0||t>=s)){F=m[t];O=v[b];for(x=0;x<C;x++){e=L+x;e>=0&&e<i&&(F[e]|=O[x])}}}}}return m}(e.mmr,o,e.template,a.width,a.height,e.defaultPixelValue,e.enableSkip,e.combinationOperator,e.gridWidth,e.gridHeight,e.gridOffsetX,e.gridOffsetY,e.gridVectorX,e.gridVectorY,c);this.drawBitmap(a,l)}onImmediateLosslessHalftoneRegion(){this.onImmediateHalftoneRegion(...arguments)}onTables(e,t,n,i){let s=this.customTables;s||(this.customTables=s={});s[e]=function decodeTablesSegment(e,t,n){const i=e[t],s=4294967295&(0,r.readUint32)(e,t+1),o=4294967295&(0,r.readUint32)(e,t+5),a=new Reader(e,t+9,n),c=1+(i>>1&7),l=1+(i>>4&7),f=[];let d,h,u=s;do{d=a.readBits(c);h=a.readBits(l);f.push(new HuffmanLine([u,d,h,0]));u+=1<<h}while(u<o);d=a.readBits(c);f.push(new HuffmanLine([s-1,d,32,0,"lower"]));d=a.readBits(c);f.push(new HuffmanLine([o,d,32,0]));if(1&i){d=a.readBits(c);f.push(new HuffmanLine([d,0]))}return new HuffmanTable(f,!1)}(t,n,i)}}class HuffmanLine{constructor(e){if(2===e.length){this.isOOB=!0;this.rangeLow=0;this.prefixLength=e[0];this.rangeLength=0;this.prefixCode=e[1];this.isLowerRange=!1}else{this.isOOB=!1;this.rangeLow=e[0];this.prefixLength=e[1];this.rangeLength=e[2];this.prefixCode=e[3];this.isLowerRange="lower"===e[4]}}}class HuffmanTreeNode{constructor(e){this.children=[];if(e){this.isLeaf=!0;this.rangeLength=e.rangeLength;this.rangeLow=e.rangeLow;this.isLowerRange=e.isLowerRange;this.isOOB=e.isOOB}else this.isLeaf=!1}buildTree(e,t){const n=e.prefixCode>>t&1;if(t<=0)this.children[n]=new HuffmanTreeNode(e);else{let i=this.children[n];i||(this.children[n]=i=new HuffmanTreeNode(null));i.buildTree(e,t-1)}}decodeNode(e){if(this.isLeaf){if(this.isOOB)return null;const t=e.readBits(this.rangeLength);return this.rangeLow+(this.isLowerRange?-t:t)}const t=this.children[e.readBit()];if(!t)throw new Jbig2Error("invalid Huffman data");return t.decodeNode(e)}}class HuffmanTable{constructor(e,t){t||this.assignPrefixCodes(e);this.rootNode=new HuffmanTreeNode(null);for(let t=0,n=e.length;t<n;t++){const n=e[t];n.prefixLength>0&&this.rootNode.buildTree(n,n.prefixLength-1)}}decode(e){return this.rootNode.decodeNode(e)}assignPrefixCodes(e){const t=e.length;let n=0;for(let i=0;i<t;i++)n=Math.max(n,e[i].prefixLength);const i=new Uint32Array(n+1);for(let n=0;n<t;n++)i[e[n].prefixLength]++;let r,s,o,a=1,c=0;i[0]=0;for(;a<=n;){c=c+i[a-1]<<1;r=c;s=0;for(;s<t;){o=e[s];if(o.prefixLength===a){o.prefixCode=r;r++}s++}a++}}}const g={};function getStandardTable(e){let t,n=g[e];if(n)return n;switch(e){case 1:t=[[0,1,4,0],[16,2,8,2],[272,3,16,6],[65808,3,32,7]];break;case 2:t=[[0,1,0,0],[1,2,0,2],[2,3,0,6],[3,4,3,14],[11,5,6,30],[75,6,32,62],[6,63]];break;case 3:t=[[-256,8,8,254],[0,1,0,0],[1,2,0,2],[2,3,0,6],[3,4,3,14],[11,5,6,30],[-257,8,32,255,"lower"],[75,7,32,126],[6,62]];break;case 4:t=[[1,1,0,0],[2,2,0,2],[3,3,0,6],[4,4,3,14],[12,5,6,30],[76,5,32,31]];break;case 5:t=[[-255,7,8,126],[1,1,0,0],[2,2,0,2],[3,3,0,6],[4,4,3,14],[12,5,6,30],[-256,7,32,127,"lower"],[76,6,32,62]];break;case 6:t=[[-2048,5,10,28],[-1024,4,9,8],[-512,4,8,9],[-256,4,7,10],[-128,5,6,29],[-64,5,5,30],[-32,4,5,11],[0,2,7,0],[128,3,7,2],[256,3,8,3],[512,4,9,12],[1024,4,10,13],[-2049,6,32,62,"lower"],[2048,6,32,63]];break;case 7:t=[[-1024,4,9,8],[-512,3,8,0],[-256,4,7,9],[-128,5,6,26],[-64,5,5,27],[-32,4,5,10],[0,4,5,11],[32,5,5,28],[64,5,6,29],[128,4,7,12],[256,3,8,1],[512,3,9,2],[1024,3,10,3],[-1025,5,32,30,"lower"],[2048,5,32,31]];break;case 8:t=[[-15,8,3,252],[-7,9,1,508],[-5,8,1,253],[-3,9,0,509],[-2,7,0,124],[-1,4,0,10],[0,2,1,0],[2,5,0,26],[3,6,0,58],[4,3,4,4],[20,6,1,59],[22,4,4,11],[38,4,5,12],[70,5,6,27],[134,5,7,28],[262,6,7,60],[390,7,8,125],[646,6,10,61],[-16,9,32,510,"lower"],[1670,9,32,511],[2,1]];break;case 9:t=[[-31,8,4,252],[-15,9,2,508],[-11,8,2,253],[-7,9,1,509],[-5,7,1,124],[-3,4,1,10],[-1,3,1,2],[1,3,1,3],[3,5,1,26],[5,6,1,58],[7,3,5,4],[39,6,2,59],[43,4,5,11],[75,4,6,12],[139,5,7,27],[267,5,8,28],[523,6,8,60],[779,7,9,125],[1291,6,11,61],[-32,9,32,510,"lower"],[3339,9,32,511],[2,0]];break;case 10:t=[[-21,7,4,122],[-5,8,0,252],[-4,7,0,123],[-3,5,0,24],[-2,2,2,0],[2,5,0,25],[3,6,0,54],[4,7,0,124],[5,8,0,253],[6,2,6,1],[70,5,5,26],[102,6,5,55],[134,6,6,56],[198,6,7,57],[326,6,8,58],[582,6,9,59],[1094,6,10,60],[2118,7,11,125],[-22,8,32,254,"lower"],[4166,8,32,255],[2,2]];break;case 11:t=[[1,1,0,0],[2,2,1,2],[4,4,0,12],[5,4,1,13],[7,5,1,28],[9,5,2,29],[13,6,2,60],[17,7,2,122],[21,7,3,123],[29,7,4,124],[45,7,5,125],[77,7,6,126],[141,7,32,127]];break;case 12:t=[[1,1,0,0],[2,2,0,2],[3,3,1,6],[5,5,0,28],[6,5,1,29],[8,6,1,60],[10,7,0,122],[11,7,1,123],[13,7,2,124],[17,7,3,125],[25,7,4,126],[41,8,5,254],[73,8,32,255]];break;case 13:t=[[1,1,0,0],[2,3,0,4],[3,4,0,12],[4,5,0,28],[5,4,1,13],[7,3,3,5],[15,6,1,58],[17,6,2,59],[21,6,3,60],[29,6,4,61],[45,6,5,62],[77,7,6,126],[141,7,32,127]];break;case 14:t=[[-2,3,0,4],[-1,3,0,5],[0,1,0,0],[1,3,0,6],[2,3,0,7]];break;case 15:t=[[-24,7,4,124],[-8,6,2,60],[-4,5,1,28],[-2,4,0,12],[-1,3,0,4],[0,1,0,0],[1,3,0,5],[2,4,0,13],[3,5,1,29],[5,6,2,61],[9,7,4,125],[-25,7,32,126,"lower"],[25,7,32,127]];break;default:throw new Jbig2Error(`standard table B.${e} does not exist`)}for(let e=0,n=t.length;e<n;e++)t[e]=new HuffmanLine(t[e]);n=new HuffmanTable(t,!0);g[e]=n;return n}class Reader{constructor(e,t,n){this.data=e;this.start=t;this.end=n;this.position=t;this.shift=-1;this.currentByte=0}readBit(){if(this.shift<0){if(this.position>=this.end)throw new Jbig2Error("end of data while reading bit");this.currentByte=this.data[this.position++];this.shift=7}const e=this.currentByte>>this.shift&1;this.shift--;return e}readBits(e){let t,n=0;for(t=e-1;t>=0;t--)n|=this.readBit()<<t;return n}byteAlign(){this.shift=-1}next(){return this.position>=this.end?-1:this.data[this.position++]}}function getCustomHuffmanTable(e,t,n){let i=0;for(let r=0,s=t.length;r<s;r++){const s=n[t[r]];if(s){if(e===i)return s;i++}}throw new Jbig2Error("can't find custom Huffman table")}function readUncompressedBitmap(e,t,n){const i=[];for(let r=0;r<n;r++){const n=new Uint8Array(t);i.push(n);for(let i=0;i<t;i++)n[i]=e.readBit();e.byteAlign()}return i}function decodeMMRBitmap(e,t,n,i){const r={K:-1,Columns:t,Rows:n,BlackIs1:!0,EndOfBlock:i},s=new o.CCITTFaxDecoder(e,r),a=[];let c,l=!1;for(let e=0;e<n;e++){const e=new Uint8Array(t);a.push(e);let n=-1;for(let i=0;i<t;i++){if(n<0){c=s.readNextChar();if(-1===c){c=0;l=!0}n=7}e[i]=c>>n&1;n--}}if(i&&!l){const e=5;for(let t=0;t<e&&-1!==s.readNextChar();t++);}return a}t.Jbig2Image=class Jbig2Image{parseChunks(e){return function parseJbig2Chunks(e){const t=new SimpleSegmentVisitor;for(let n=0,i=e.length;n<i;n++){const i=e[n];processSegments(readSegments({},i.data,i.start,i.end),t)}return t.buffer}(e)}parse(e){const{imgData:t,width:n,height:i}=function parseJbig2(e){const t=e.length;let n=0;if(151!==e[n]||74!==e[n+1]||66!==e[n+2]||50!==e[n+3]||13!==e[n+4]||10!==e[n+5]||26!==e[n+6]||10!==e[n+7])throw new Jbig2Error("parseJbig2 - invalid header.");const i=Object.create(null);n+=8;const s=e[n++];i.randomAccess=!(1&s);if(!(2&s)){i.numberOfPages=(0,r.readUint32)(e,n);n+=4}const o=readSegments(i,e,n,t),a=new SimpleSegmentVisitor;processSegments(o,a);const{width:c,height:l}=a.currentPageInfo,f=a.buffer,d=new Uint8ClampedArray(c*l);let h=0,u=0;for(let e=0;e<l;e++){let e,t=0;for(let n=0;n<c;n++){if(!t){t=128;e=f[u++]}d[h++]=e&t?0:255;t>>=1}}return{imgData:d,width:c,height:l}}(e);this.width=n;this.height=i;return t}}},(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});t.XRefParseException=t.XRefEntryException=t.ParserEOFException=t.PDF_VERSION_REGEXP=t.MissingDataException=void 0;t.arrayBuffersToBytes=function arrayBuffersToBytes(e){const t=e.length;if(0===t)return new Uint8Array(0);if(1===t)return new Uint8Array(e[0]);let n=0;for(let i=0;i<t;i++)n+=e[i].byteLength;const i=new Uint8Array(n);let r=0;for(let n=0;n<t;n++){const t=new Uint8Array(e[n]);i.set(t,r);r+=t.byteLength}return i};t.collectActions=function collectActions(e,t,n){const s=Object.create(null),o=getInheritableProperty({dict:t,key:"AA",stopWhenFound:!1});if(o)for(let t=o.length-1;t>=0;t--){const i=o[t];if(i instanceof r.Dict)for(const t of i.getKeys()){const o=n[t];if(!o)continue;const a=[];_collectJS(i.getRaw(t),e,a,new r.RefSet);a.length>0&&(s[o]=a)}}if(t.has("A")){const n=[];_collectJS(t.get("A"),e,n,new r.RefSet);n.length>0&&(s.Action=n)}return(0,i.objectSize)(s)>0?s:null};t.encodeToXmlString=function encodeToXmlString(e){const t=[];let n=0;for(let i=0,r=e.length;i<r;i++){const r=e.codePointAt(i);if(32<=r&&r<=126){const s=a[r];if(s){n<i&&t.push(e.substring(n,i));t.push(s);n=i+1}}else{n<i&&t.push(e.substring(n,i));t.push(`&#x${r.toString(16).toUpperCase()};`);r>55295&&(r<57344||r>65533)&&i++;n=i+1}}if(0===t.length)return e;n<e.length&&t.push(e.substring(n,e.length));return t.join("")};t.escapePDFName=function escapePDFName(e){const t=[];let n=0;for(let i=0,r=e.length;i<r;i++){const r=e.charCodeAt(i);if(r<33||r>126||35===r||40===r||41===r||60===r||62===r||91===r||93===r||123===r||125===r||47===r||37===r){n<i&&t.push(e.substring(n,i));t.push(`#${r.toString(16)}`);n=i+1}}if(0===t.length)return e;n<e.length&&t.push(e.substring(n,e.length));return t.join("")};t.escapeString=function escapeString(e){return e.replaceAll(/([()\\\n\r])/g,(e=>"\n"===e?"\\n":"\r"===e?"\\r":`\\${e}`))};t.getInheritableProperty=getInheritableProperty;t.getLookupTableFactory=function getLookupTableFactory(e){let t;return function(){if(e){t=Object.create(null);e(t);e=null}return t}};t.getNewAnnotationsMap=function getNewAnnotationsMap(e){if(!e)return null;const t=new Map;for(const[n,r]of e){if(!n.startsWith(i.AnnotationEditorPrefix))continue;let e=t.get(r.pageIndex);if(!e){e=[];t.set(r.pageIndex,e)}e.push(r)}return t.size>0?t:null};t.getRotationMatrix=function getRotationMatrix(e,t,n){switch(e){case 90:return[0,1,-1,0,t,0];case 180:return[-1,0,0,-1,t,n];case 270:return[0,-1,1,0,0,n];default:throw new Error("Invalid rotation")}};t.isAscii=function isAscii(e){return/^[\x00-\x7F]*$/.test(e)};t.isWhiteSpace=function isWhiteSpace(e){return 32===e||9===e||13===e||10===e};t.log2=function log2(e){if(e<=0)return 0;return Math.ceil(Math.log2(e))};t.numberToString=function numberToString(e){if(Number.isInteger(e))return e.toString();const t=Math.round(100*e);if(t%100==0)return(t/100).toString();if(t%10==0)return e.toFixed(1);return e.toFixed(2)};t.parseXFAPath=function parseXFAPath(e){const t=/(.+)\[(\d+)\]$/;return e.split(".").map((e=>{const n=e.match(t);return n?{name:n[1],pos:parseInt(n[2],10)}:{name:e,pos:0}}))};t.readInt8=function readInt8(e,t){return e[t]<<24>>24};t.readUint16=function readUint16(e,t){return e[t]<<8|e[t+1]};t.readUint32=function readUint32(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>0};t.recoverJsURL=function recoverJsURL(e){const t=new RegExp("^\\s*("+["app.launchURL","window.open","xfa.host.gotoURL"].join("|").replaceAll(".","\\.")+")\\((?:'|\")([^'\"]*)(?:'|\")(?:,\\s*(\\w+)\\)|\\))","i").exec(e);if(t?.[2]){const e=t[2];let n=!1;"true"===t[3]&&"app.launchURL"===t[1]&&(n=!0);return{url:e,newWindow:n}}return null};t.stringToUTF16HexString=function stringToUTF16HexString(e){const t=[];for(let n=0,i=e.length;n<i;n++){const i=e.charCodeAt(n);t.push((i>>8&255).toString(16).padStart(2,"0"),(255&i).toString(16).padStart(2,"0"))}return t.join("")};t.stringToUTF16String=function stringToUTF16String(e,t=!1){const n=[];t&&n.push("þÿ");for(let t=0,i=e.length;t<i;t++){const i=e.charCodeAt(t);n.push(String.fromCharCode(i>>8&255),String.fromCharCode(255&i))}return n.join("")};t.toRomanNumerals=function toRomanNumerals(e,t=!1){(0,i.assert)(Number.isInteger(e)&&e>0,"The number should be a positive integer.");const n=[];let r;for(;e>=1e3;){e-=1e3;n.push("M")}r=e/100|0;e%=100;n.push(o[r]);r=e/10|0;e%=10;n.push(o[10+r]);n.push(o[20+e]);const s=n.join("");return t?s.toLowerCase():s};t.validateCSSFont=function validateCSSFont(e){const t=new Set(["100","200","300","400","500","600","700","800","900","1000","normal","bold","bolder","lighter"]),{fontFamily:n,fontWeight:i,italicAngle:r}=e;if(!validateFontName(n,!0))return!1;const s=i?i.toString():"";e.fontWeight=t.has(s)?s:"400";const o=parseFloat(r);e.italicAngle=isNaN(o)||o<-90||o>90?"14":r.toString();return!0};t.validateFontName=validateFontName;var i=n(1),r=n(4),s=n(5);t.PDF_VERSION_REGEXP=/^[1-9]\.\d$/;class MissingDataException extends i.BaseException{constructor(e,t){super(`Missing data [${e}, ${t})`,"MissingDataException");this.begin=e;this.end=t}}t.MissingDataException=MissingDataException;class ParserEOFException extends i.BaseException{constructor(e){super(e,"ParserEOFException")}}t.ParserEOFException=ParserEOFException;class XRefEntryException extends i.BaseException{constructor(e){super(e,"XRefEntryException")}}t.XRefEntryException=XRefEntryException;class XRefParseException extends i.BaseException{constructor(e){super(e,"XRefParseException")}}t.XRefParseException=XRefParseException;function getInheritableProperty({dict:e,key:t,getArray:n=!1,stopWhenFound:i=!0}){let s;const o=new r.RefSet;for(;e instanceof r.Dict&&(!e.objId||!o.has(e.objId));){e.objId&&o.put(e.objId);const r=n?e.getArray(t):e.get(t);if(void 0!==r){if(i)return r;(s||=[]).push(r)}e=e.get("Parent")}return s}const o=["","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 _collectJS(e,t,n,o){if(!e)return;let a=null;if(e instanceof r.Ref){if(o.has(e))return;a=e;o.put(a);e=t.fetch(e)}if(Array.isArray(e))for(const i of e)_collectJS(i,t,n,o);else if(e instanceof r.Dict){if((0,r.isName)(e.get("S"),"JavaScript")){const t=e.get("JS");let r;t instanceof s.BaseStream?r=t.getString():"string"==typeof t&&(r=t);r&&=(0,i.stringToPDFString)(r).replaceAll("\0","");r&&n.push(r)}_collectJS(e.getRaw("Next"),t,n,o)}a&&o.remove(a)}const a={60:"&lt;",62:"&gt;",38:"&amp;",34:"&quot;",39:"&apos;"};function validateFontName(e,t=!1){const n=/^("|').*("|')$/.exec(e);if(n&&n[1]===n[2]){if(new RegExp(`[^\\\\]${n[1]}`).test(e.slice(1,-1))){t&&(0,i.warn)(`FontFamily contains unescaped ${n[1]}: ${e}.`);return!1}}else for(const n of e.split(/[ \t]+/))if(/^(\d|(-(\d|-)))/.test(n)||!/^[\w-\\]+$/.test(n)){t&&(0,i.warn)(`FontFamily contains invalid <custom-ident>: ${e}.`);return!1}return!0}},(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});t.RefSetCache=t.RefSet=t.Ref=t.Name=t.EOF=t.Dict=t.Cmd=t.CIRCULAR_REF=void 0;t.clearPrimitiveCaches=function clearPrimitiveCaches(){o=Object.create(null);a=Object.create(null);c=Object.create(null)};t.isCmd=function isCmd(e,t){return e instanceof Cmd&&(void 0===t||e.cmd===t)};t.isDict=function isDict(e,t){return e instanceof Dict&&(void 0===t||isName(e.get("Type"),t))};t.isName=isName;t.isRefsEqual=function isRefsEqual(e,t){return e.num===t.num&&e.gen===t.gen};var i=n(1);const r=Symbol("CIRCULAR_REF");t.CIRCULAR_REF=r;const s=Symbol("EOF");t.EOF=s;let o=Object.create(null),a=Object.create(null),c=Object.create(null);class Name{constructor(e){this.name=e}static get(e){return a[e]||=new Name(e)}}t.Name=Name;class Cmd{constructor(e){this.cmd=e}static get(e){return o[e]||=new Cmd(e)}}t.Cmd=Cmd;const l=function nonSerializableClosure(){return l};class Dict{constructor(e=null){this._map=Object.create(null);this.xref=e;this.objId=null;this.suppressEncryption=!1;this.__nonSerializable__=l}assignXref(e){this.xref=e}get size(){return Object.keys(this._map).length}get(e,t,n){let i=this._map[e];if(void 0===i&&void 0!==t){i=this._map[t];void 0===i&&void 0!==n&&(i=this._map[n])}return i instanceof Ref&&this.xref?this.xref.fetch(i,this.suppressEncryption):i}async getAsync(e,t,n){let i=this._map[e];if(void 0===i&&void 0!==t){i=this._map[t];void 0===i&&void 0!==n&&(i=this._map[n])}return i instanceof Ref&&this.xref?this.xref.fetchAsync(i,this.suppressEncryption):i}getArray(e,t,n){let i=this._map[e];if(void 0===i&&void 0!==t){i=this._map[t];void 0===i&&void 0!==n&&(i=this._map[n])}i instanceof Ref&&this.xref&&(i=this.xref.fetch(i,this.suppressEncryption));if(Array.isArray(i)){i=i.slice();for(let e=0,t=i.length;e<t;e++)i[e]instanceof Ref&&this.xref&&(i[e]=this.xref.fetch(i[e],this.suppressEncryption))}return i}getRaw(e){return this._map[e]}getKeys(){return Object.keys(this._map)}getRawValues(){return Object.values(this._map)}set(e,t){this._map[e]=t}has(e){return void 0!==this._map[e]}forEach(e){for(const t in this._map)e(t,this.get(t))}static get empty(){const e=new Dict(null);e.set=(e,t)=>{(0,i.unreachable)("Should not call `set` on the empty dictionary.")};return(0,i.shadow)(this,"empty",e)}static merge({xref:e,dictArray:t,mergeSubDicts:n=!1}){const i=new Dict(e),r=new Map;for(const e of t)if(e instanceof Dict)for(const[t,i]of Object.entries(e._map)){let e=r.get(t);if(void 0===e){e=[];r.set(t,e)}else if(!(n&&i instanceof Dict))continue;e.push(i)}for(const[t,n]of r){if(1===n.length||!(n[0]instanceof Dict)){i._map[t]=n[0];continue}const r=new Dict(e);for(const e of n)for(const[t,n]of Object.entries(e._map))void 0===r._map[t]&&(r._map[t]=n);r.size>0&&(i._map[t]=r)}r.clear();return i.size>0?i:Dict.empty}clone(){const e=new Dict(this.xref);for(const t of this.getKeys())e.set(t,this.getRaw(t));return e}}t.Dict=Dict;class Ref{constructor(e,t){this.num=e;this.gen=t}toString(){return 0===this.gen?`${this.num}R`:`${this.num}R${this.gen}`}static fromString(e){const t=c[e];if(t)return t;const n=/^(\d+)R(\d*)$/.exec(e);return n&&"0"!==n[1]?c[e]=new Ref(parseInt(n[1]),n[2]?parseInt(n[2]):0):null}static get(e,t){const n=0===t?`${e}R`:`${e}R${t}`;return c[n]||=new Ref(e,t)}}t.Ref=Ref;class RefSet{constructor(e=null){this._set=new Set(e?._set)}has(e){return this._set.has(e.toString())}put(e){this._set.add(e.toString())}remove(e){this._set.delete(e.toString())}[Symbol.iterator](){return this._set.values()}clear(){this._set.clear()}}t.RefSet=RefSet;class RefSetCache{constructor(){this._map=new Map}get size(){return this._map.size}get(e){return this._map.get(e.toString())}has(e){return this._map.has(e.toString())}put(e,t){this._map.set(e.toString(),t)}putAlias(e,t){this._map.set(e.toString(),this.get(t))}[Symbol.iterator](){return this._map.values()}clear(){this._map.clear()}}t.RefSetCache=RefSetCache;function isName(e,t){return e instanceof Name&&(void 0===t||e.name===t)}},(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});t.BaseStream=void 0;var i=n(1);class BaseStream{constructor(){this.constructor===BaseStream&&(0,i.unreachable)("Cannot initialize BaseStream.")}get length(){(0,i.unreachable)("Abstract getter `length` accessed")}get isEmpty(){(0,i.unreachable)("Abstract getter `isEmpty` accessed")}get isDataLoaded(){return(0,i.shadow)(this,"isDataLoaded",!0)}getByte(){(0,i.unreachable)("Abstract method `getByte` called")}getBytes(e){(0,i.unreachable)("Abstract method `getBytes` called")}peekByte(){const e=this.getByte();-1!==e&&this.pos--;return e}peekBytes(e){const t=this.getBytes(e);this.pos-=t.length;return t}getUint16(){const e=this.getByte(),t=this.getByte();return-1===e||-1===t?-1:(e<<8)+t}getInt32(){return(this.getByte()<<24)+(this.getByte()<<16)+(this.getByte()<<8)+this.getByte()}getByteRange(e,t){(0,i.unreachable)("Abstract method `getByteRange` called")}getString(e){return(0,i.bytesToString)(this.getBytes(e))}skip(e){this.pos+=e||1}reset(){(0,i.unreachable)("Abstract method `reset` called")}moveStart(){(0,i.unreachable)("Abstract method `moveStart` called")}makeSubStream(e,t,n=null){(0,i.unreachable)("Abstract method `makeSubStream` called")}getBaseStreams(){return null}}t.BaseStream=BaseStream},(e,t)=>{Object.defineProperty(t,"__esModule",{value:!0});t.ArithmeticDecoder=void 0;const n=[{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}];t.ArithmeticDecoder=class ArithmeticDecoder{constructor(e,t,n){this.data=e;this.bp=t;this.dataEnd=n;this.chigh=e[t];this.clow=0;this.byteIn();this.chigh=this.chigh<<7&65535|this.clow>>9&127;this.clow=this.clow<<7&65535;this.ct-=7;this.a=32768}byteIn(){const e=this.data;let t=this.bp;if(255===e[t])if(e[t+1]>143){this.clow+=65280;this.ct=8}else{t++;this.clow+=e[t]<<9;this.ct=7;this.bp=t}else{t++;this.clow+=t<this.dataEnd?e[t]<<8:65280;this.ct=8;this.bp=t}if(this.clow>65535){this.chigh+=this.clow>>16;this.clow&=65535}}readBit(e,t){let i=e[t]>>1,r=1&e[t];const s=n[i],o=s.qe;let a,c=this.a-o;if(this.chigh<o)if(c<o){c=o;a=r;i=s.nmps}else{c=o;a=1^r;1===s.switchFlag&&(r=a);i=s.nlps}else{this.chigh-=o;if(0!=(32768&c)){this.a=c;return r}if(c<o){a=1^r;1===s.switchFlag&&(r=a);i=s.nlps}else{a=r;i=s.nmps}}do{0===this.ct&&this.byteIn();c<<=1;this.chigh=this.chigh<<1&65535|this.clow>>15&1;this.clow=this.clow<<1&65535;this.ct--}while(0==(32768&c));this.a=c;e[t]=i<<1|r;return a}}},(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});t.CCITTFaxDecoder=void 0;var i=n(1);const r=-1,s=[[-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]],o=[[-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]],a=[[-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]],c=[[-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]],l=[[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]],f=[[-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]];t.CCITTFaxDecoder=class CCITTFaxDecoder{constructor(e,t={}){if(!e||"function"!=typeof e.next)throw new Error('CCITTFaxDecoder - invalid "source" parameter.');this.source=e;this.eof=!1;this.encoding=t.K||0;this.eoline=t.EndOfLine||!1;this.byteAlign=t.EncodedByteAlign||!1;this.columns=t.Columns||1728;this.rows=t.Rows||0;this.eoblock=t.EndOfBlock??!0;this.black=t.BlackIs1||!1;this.codingLine=new Uint32Array(this.columns+1);this.refLine=new Uint32Array(this.columns+2);this.codingLine[0]=this.columns;this.codingPos=0;this.row=0;this.nextLine2D=this.encoding<0;this.inputBits=0;this.inputBuf=0;this.outputBits=0;this.rowsDone=!1;let n;for(;0===(n=this._lookBits(12));)this._eatBits(1);1===n&&this._eatBits(12);if(this.encoding>0){this.nextLine2D=!this._lookBits(1);this._eatBits(1)}}readNextChar(){if(this.eof)return-1;const e=this.refLine,t=this.codingLine,n=this.columns;let s,o,a,c,l;if(0===this.outputBits){this.rowsDone&&(this.eof=!0);if(this.eof)return-1;this.err=!1;let a,l,f;if(this.nextLine2D){for(c=0;t[c]<n;++c)e[c]=t[c];e[c++]=n;e[c]=n;t[0]=0;this.codingPos=0;s=0;o=0;for(;t[this.codingPos]<n;){a=this._getTwoDimCode();switch(a){case 0:this._addPixels(e[s+1],o);e[s+1]<n&&(s+=2);break;case 1:a=l=0;if(o){do{a+=f=this._getBlackCode()}while(f>=64);do{l+=f=this._getWhiteCode()}while(f>=64)}else{do{a+=f=this._getWhiteCode()}while(f>=64);do{l+=f=this._getBlackCode()}while(f>=64)}this._addPixels(t[this.codingPos]+a,o);t[this.codingPos]<n&&this._addPixels(t[this.codingPos]+l,1^o);for(;e[s]<=t[this.codingPos]&&e[s]<n;)s+=2;break;case 7:this._addPixels(e[s]+3,o);o^=1;if(t[this.codingPos]<n){++s;for(;e[s]<=t[this.codingPos]&&e[s]<n;)s+=2}break;case 5:this._addPixels(e[s]+2,o);o^=1;if(t[this.codingPos]<n){++s;for(;e[s]<=t[this.codingPos]&&e[s]<n;)s+=2}break;case 3:this._addPixels(e[s]+1,o);o^=1;if(t[this.codingPos]<n){++s;for(;e[s]<=t[this.codingPos]&&e[s]<n;)s+=2}break;case 2:this._addPixels(e[s],o);o^=1;if(t[this.codingPos]<n){++s;for(;e[s]<=t[this.codingPos]&&e[s]<n;)s+=2}break;case 8:this._addPixelsNeg(e[s]-3,o);o^=1;if(t[this.codingPos]<n){s>0?--s:++s;for(;e[s]<=t[this.codingPos]&&e[s]<n;)s+=2}break;case 6:this._addPixelsNeg(e[s]-2,o);o^=1;if(t[this.codingPos]<n){s>0?--s:++s;for(;e[s]<=t[this.codingPos]&&e[s]<n;)s+=2}break;case 4:this._addPixelsNeg(e[s]-1,o);o^=1;if(t[this.codingPos]<n){s>0?--s:++s;for(;e[s]<=t[this.codingPos]&&e[s]<n;)s+=2}break;case r:this._addPixels(n,0);this.eof=!0;break;default:(0,i.info)("bad 2d code");this._addPixels(n,0);this.err=!0}}}else{t[0]=0;this.codingPos=0;o=0;for(;t[this.codingPos]<n;){a=0;if(o)do{a+=f=this._getBlackCode()}while(f>=64);else do{a+=f=this._getWhiteCode()}while(f>=64);this._addPixels(t[this.codingPos]+a,o);o^=1}}let d=!1;this.byteAlign&&(this.inputBits&=-8);if(this.eoblock||this.row!==this.rows-1){a=this._lookBits(12);if(this.eoline)for(;a!==r&&1!==a;){this._eatBits(1);a=this._lookBits(12)}else for(;0===a;){this._eatBits(1);a=this._lookBits(12)}if(1===a){this._eatBits(12);d=!0}else a===r&&(this.eof=!0)}else this.rowsDone=!0;if(!this.eof&&this.encoding>0&&!this.rowsDone){this.nextLine2D=!this._lookBits(1);this._eatBits(1)}if(this.eoblock&&d&&this.byteAlign){a=this._lookBits(12);if(1===a){this._eatBits(12);if(this.encoding>0){this._lookBits(1);this._eatBits(1)}if(this.encoding>=0)for(c=0;c<4;++c){a=this._lookBits(12);1!==a&&(0,i.info)("bad rtc code: "+a);this._eatBits(12);if(this.encoding>0){this._lookBits(1);this._eatBits(1)}}this.eof=!0}}else if(this.err&&this.eoline){for(;;){a=this._lookBits(13);if(a===r){this.eof=!0;return-1}if(a>>1==1)break;this._eatBits(1)}this._eatBits(12);if(this.encoding>0){this._eatBits(1);this.nextLine2D=!(1&a)}}this.outputBits=t[0]>0?t[this.codingPos=0]:t[this.codingPos=1];this.row++}if(this.outputBits>=8){l=1&this.codingPos?0:255;this.outputBits-=8;if(0===this.outputBits&&t[this.codingPos]<n){this.codingPos++;this.outputBits=t[this.codingPos]-t[this.codingPos-1]}}else{a=8;l=0;do{if("number"!=typeof this.outputBits)throw new i.FormatError('Invalid /CCITTFaxDecode data, "outputBits" must be a number.');if(this.outputBits>a){l<<=a;1&this.codingPos||(l|=255>>8-a);this.outputBits-=a;a=0}else{l<<=this.outputBits;1&this.codingPos||(l|=255>>8-this.outputBits);a-=this.outputBits;this.outputBits=0;if(t[this.codingPos]<n){this.codingPos++;this.outputBits=t[this.codingPos]-t[this.codingPos-1]}else if(a>0){l<<=a;a=0}}}while(a)}this.black&&(l^=255);return l}_addPixels(e,t){const n=this.codingLine;let r=this.codingPos;if(e>n[r]){if(e>this.columns){(0,i.info)("row is wrong length");this.err=!0;e=this.columns}1&r^t&&++r;n[r]=e}this.codingPos=r}_addPixelsNeg(e,t){const n=this.codingLine;let r=this.codingPos;if(e>n[r]){if(e>this.columns){(0,i.info)("row is wrong length");this.err=!0;e=this.columns}1&r^t&&++r;n[r]=e}else if(e<n[r]){if(e<0){(0,i.info)("invalid code");this.err=!0;e=0}for(;r>0&&e<n[r-1];)--r;n[r]=e}this.codingPos=r}_findTableCode(e,t,n,i){const s=i||0;for(let i=e;i<=t;++i){let e=this._lookBits(i);if(e===r)return[!0,1,!1];i<t&&(e<<=t-i);if(!s||e>=s){const t=n[e-s];if(t[0]===i){this._eatBits(i);return[!0,t[1],!0]}}}return[!1,0,!1]}_getTwoDimCode(){let e,t=0;if(this.eoblock){t=this._lookBits(7);e=s[t];if(e?.[0]>0){this._eatBits(e[0]);return e[1]}}else{const e=this._findTableCode(1,7,s);if(e[0]&&e[2])return e[1]}(0,i.info)("Bad two dim code");return r}_getWhiteCode(){let e,t=0;if(this.eoblock){t=this._lookBits(12);if(t===r)return 1;e=t>>5==0?o[t]:a[t>>3];if(e[0]>0){this._eatBits(e[0]);return e[1]}}else{let e=this._findTableCode(1,9,a);if(e[0])return e[1];e=this._findTableCode(11,12,o);if(e[0])return e[1]}(0,i.info)("bad white code");this._eatBits(1);return 1}_getBlackCode(){let e,t;if(this.eoblock){e=this._lookBits(13);if(e===r)return 1;t=e>>7==0?c[e]:e>>9==0&&e>>7!=0?l[(e>>1)-64]:f[e>>7];if(t[0]>0){this._eatBits(t[0]);return t[1]}}else{let e=this._findTableCode(2,6,f);if(e[0])return e[1];e=this._findTableCode(7,12,l,64);if(e[0])return e[1];e=this._findTableCode(10,13,c);if(e[0])return e[1]}(0,i.info)("bad black code");this._eatBits(1);return 1}_lookBits(e){let t;for(;this.inputBits<e;){if(-1===(t=this.source.next()))return 0===this.inputBits?r:this.inputBuf<<e-this.inputBits&65535>>16-e;this.inputBuf=this.inputBuf<<8|t;this.inputBits+=8}return this.inputBuf>>this.inputBits-e&65535>>16-e}_eatBits(e){(this.inputBits-=e)<0&&(this.inputBits=0)}}},(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});t.JpegImage=void 0;var i=n(1),r=n(9),s=n(3);class JpegError extends i.BaseException{constructor(e){super(`JPEG error: ${e}`,"JpegError")}}class DNLMarkerError extends i.BaseException{constructor(e,t){super(e,"DNLMarkerError");this.scanLines=t}}class EOIMarkerError extends i.BaseException{constructor(e){super(e,"EOIMarkerError")}}const o=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]),a=4017,c=799,l=3406,f=2276,d=1567,h=3784,u=5793,p=2896;function buildHuffmanTable(e,t){let n,i,r=0,s=16;for(;s>0&&!e[s-1];)s--;const o=[{children:[],index:0}];let a,c=o[0];for(n=0;n<s;n++){for(i=0;i<e[n];i++){c=o.pop();c.children[c.index]=t[r];for(;c.index>0;)c=o.pop();c.index++;o.push(c);for(;o.length<=n;){o.push(a={children:[],index:0});c.children[c.index]=a.children;c=a}r++}if(n+1<s){o.push(a={children:[],index:0});c.children[c.index]=a.children;c=a}}return o[0].children}function getBlockBufferOffset(e,t,n){return 64*((e.blocksPerLine+1)*t+n)}function decodeScan(e,t,n,r,a,c,l,f,d,h=!1){const u=n.mcusPerLine,p=n.progressive,g=t;let m=0,b=0;function readBit(){if(b>0){b--;return m>>b&1}m=e[t++];if(255===m){const i=e[t++];if(i){if(220===i&&h){t+=2;const i=(0,s.readUint16)(e,t);t+=2;if(i>0&&i!==n.scanLines)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",i)}else if(217===i){if(h){const e=T*(8===n.precision?8:0);if(e>0&&Math.round(n.scanLines/e)>=5)throw new DNLMarkerError("Found EOI marker (0xFFD9) while parsing scan data, possibly caused by incorrect `scanLines` parameter",e)}throw new EOIMarkerError("Found EOI marker (0xFFD9) while parsing scan data")}throw new JpegError(`unexpected marker ${(m<<8|i).toString(16)}`)}}b=7;return m>>>7}function decodeHuffman(e){let t=e;for(;;){t=t[readBit()];switch(typeof t){case"number":return t;case"object":continue}throw new JpegError("invalid huffman sequence")}}function receive(e){let t=0;for(;e>0;){t=t<<1|readBit();e--}return t}function receiveAndExtend(e){if(1===e)return 1===readBit()?1:-1;const t=receive(e);return t>=1<<e-1?t:t+(-1<<e)+1}let x=0;let y,w=0;let T=0;function decodeMcu(e,t,n,i,r){const s=n%u;T=(n/u|0)*e.v+i;const o=s*e.h+r;t(e,getBlockBufferOffset(e,T,o))}function decodeBlock(e,t,n){T=n/e.blocksPerLine|0;const i=n%e.blocksPerLine;t(e,getBlockBufferOffset(e,T,i))}const C=r.length;let S,I,E,P,k,B;B=p?0===c?0===f?function decodeDCFirst(e,t){const n=decodeHuffman(e.huffmanTableDC),i=0===n?0:receiveAndExtend(n)<<d;e.blockData[t]=e.pred+=i}:function decodeDCSuccessive(e,t){e.blockData[t]|=readBit()<<d}:0===f?function decodeACFirst(e,t){if(x>0){x--;return}let n=c;const i=l;for(;n<=i;){const i=decodeHuffman(e.huffmanTableAC),r=15&i,s=i>>4;if(0===r){if(s<15){x=receive(s)+(1<<s)-1;break}n+=16;continue}n+=s;const a=o[n];e.blockData[t+a]=receiveAndExtend(r)*(1<<d);n++}}:function decodeACSuccessive(e,t){let n=c;const i=l;let r,s,a=0;for(;n<=i;){const i=t+o[n],c=e.blockData[i]<0?-1:1;switch(w){case 0:s=decodeHuffman(e.huffmanTableAC);r=15&s;a=s>>4;if(0===r)if(a<15){x=receive(a)+(1<<a);w=4}else{a=16;w=1}else{if(1!==r)throw new JpegError("invalid ACn encoding");y=receiveAndExtend(r);w=a?2:3}continue;case 1:case 2:if(e.blockData[i])e.blockData[i]+=c*(readBit()<<d);else{a--;0===a&&(w=2===w?3:0)}break;case 3:if(e.blockData[i])e.blockData[i]+=c*(readBit()<<d);else{e.blockData[i]=y<<d;w=0}break;case 4:e.blockData[i]&&(e.blockData[i]+=c*(readBit()<<d))}n++}if(4===w){x--;0===x&&(w=0)}}:function decodeBaseline(e,t){const n=decodeHuffman(e.huffmanTableDC),i=0===n?0:receiveAndExtend(n);e.blockData[t]=e.pred+=i;let r=1;for(;r<64;){const n=decodeHuffman(e.huffmanTableAC),i=15&n,s=n>>4;if(0===i){if(s<15)break;r+=16;continue}r+=s;const a=o[r];e.blockData[t+a]=receiveAndExtend(i);r++}};let A,_=0;const R=1===C?r[0].blocksPerLine*r[0].blocksPerColumn:u*n.mcusPerColumn;let M,v;for(;_<=R;){const n=a?Math.min(R-_,a):R;if(n>0){for(I=0;I<C;I++)r[I].pred=0;x=0;if(1===C){S=r[0];for(k=0;k<n;k++){decodeBlock(S,B,_);_++}}else for(k=0;k<n;k++){for(I=0;I<C;I++){S=r[I];M=S.h;v=S.v;for(E=0;E<v;E++)for(P=0;P<M;P++)decodeMcu(S,B,_,E,P)}_++}}b=0;A=findNextFileMarker(e,t);if(!A)break;if(A.invalid){const e=n>0?"unexpected":"excessive";(0,i.warn)(`decodeScan - ${e} MCU data, current marker is: ${A.invalid}`);t=A.offset}if(!(A.marker>=65488&&A.marker<=65495))break;t+=2}return t-g}function quantizeAndInverse(e,t,n){const i=e.quantizationTable,r=e.blockData;let s,o,g,m,b,x,y,w,T,C,S,I,E,P,k,B,A;if(!i)throw new JpegError("missing required Quantization Table.");for(let e=0;e<64;e+=8){T=r[t+e];C=r[t+e+1];S=r[t+e+2];I=r[t+e+3];E=r[t+e+4];P=r[t+e+5];k=r[t+e+6];B=r[t+e+7];T*=i[e];if(0!=(C|S|I|E|P|k|B)){C*=i[e+1];S*=i[e+2];I*=i[e+3];E*=i[e+4];P*=i[e+5];k*=i[e+6];B*=i[e+7];s=u*T+128>>8;o=u*E+128>>8;g=S;m=k;b=p*(C-B)+128>>8;w=p*(C+B)+128>>8;x=I<<4;y=P<<4;s=s+o+1>>1;o=s-o;A=g*h+m*d+128>>8;g=g*d-m*h+128>>8;m=A;b=b+y+1>>1;y=b-y;w=w+x+1>>1;x=w-x;s=s+m+1>>1;m=s-m;o=o+g+1>>1;g=o-g;A=b*f+w*l+2048>>12;b=b*l-w*f+2048>>12;w=A;A=x*c+y*a+2048>>12;x=x*a-y*c+2048>>12;y=A;n[e]=s+w;n[e+7]=s-w;n[e+1]=o+y;n[e+6]=o-y;n[e+2]=g+x;n[e+5]=g-x;n[e+3]=m+b;n[e+4]=m-b}else{A=u*T+512>>10;n[e]=A;n[e+1]=A;n[e+2]=A;n[e+3]=A;n[e+4]=A;n[e+5]=A;n[e+6]=A;n[e+7]=A}}for(let e=0;e<8;++e){T=n[e];C=n[e+8];S=n[e+16];I=n[e+24];E=n[e+32];P=n[e+40];k=n[e+48];B=n[e+56];if(0!=(C|S|I|E|P|k|B)){s=u*T+2048>>12;o=u*E+2048>>12;g=S;m=k;b=p*(C-B)+2048>>12;w=p*(C+B)+2048>>12;x=I;y=P;s=4112+(s+o+1>>1);o=s-o;A=g*h+m*d+2048>>12;g=g*d-m*h+2048>>12;m=A;b=b+y+1>>1;y=b-y;w=w+x+1>>1;x=w-x;s=s+m+1>>1;m=s-m;o=o+g+1>>1;g=o-g;A=b*f+w*l+2048>>12;b=b*l-w*f+2048>>12;w=A;A=x*c+y*a+2048>>12;x=x*a-y*c+2048>>12;y=A;T=s+w;B=s-w;C=o+y;k=o-y;S=g+x;P=g-x;I=m+b;E=m-b;T<16?T=0:T>=4080?T=255:T>>=4;C<16?C=0:C>=4080?C=255:C>>=4;S<16?S=0:S>=4080?S=255:S>>=4;I<16?I=0:I>=4080?I=255:I>>=4;E<16?E=0:E>=4080?E=255:E>>=4;P<16?P=0:P>=4080?P=255:P>>=4;k<16?k=0:k>=4080?k=255:k>>=4;B<16?B=0:B>=4080?B=255:B>>=4;r[t+e]=T;r[t+e+8]=C;r[t+e+16]=S;r[t+e+24]=I;r[t+e+32]=E;r[t+e+40]=P;r[t+e+48]=k;r[t+e+56]=B}else{A=u*T+8192>>14;A=A<-2040?0:A>=2024?255:A+2056>>4;r[t+e]=A;r[t+e+8]=A;r[t+e+16]=A;r[t+e+24]=A;r[t+e+32]=A;r[t+e+40]=A;r[t+e+48]=A;r[t+e+56]=A}}}function buildComponentData(e,t){const n=t.blocksPerLine,i=t.blocksPerColumn,r=new Int16Array(64);for(let e=0;e<i;e++)for(let i=0;i<n;i++){quantizeAndInverse(t,getBlockBufferOffset(t,e,i),r)}return t.blockData}function findNextFileMarker(e,t,n=t){const i=e.length-1;let r=n<t?n:t;if(t>=i)return null;const o=(0,s.readUint16)(e,t);if(o>=65472&&o<=65534)return{invalid:null,marker:o,offset:t};let a=(0,s.readUint16)(e,r);for(;!(a>=65472&&a<=65534);){if(++r>=i)return null;a=(0,s.readUint16)(e,r)}return{invalid:o.toString(16),marker:a,offset:r}}t.JpegImage=class JpegImage{constructor({decodeTransform:e=null,colorTransform:t=-1}={}){this._decodeTransform=e;this._colorTransform=t}parse(e,{dnlScanLines:t=null}={}){function readDataBlock(){const t=(0,s.readUint16)(e,a);a+=2;let n=a+t-2;const r=findNextFileMarker(e,n,a);if(r?.invalid){(0,i.warn)("readDataBlock - incorrect length, current marker is: "+r.invalid);n=r.offset}const o=e.subarray(a,n);a+=o.length;return o}function prepareComponents(e){const t=Math.ceil(e.samplesPerLine/8/e.maxH),n=Math.ceil(e.scanLines/8/e.maxV);for(const i of e.components){const r=Math.ceil(Math.ceil(e.samplesPerLine/8)*i.h/e.maxH),s=Math.ceil(Math.ceil(e.scanLines/8)*i.v/e.maxV),o=t*i.h,a=64*(n*i.v)*(o+1);i.blockData=new Int16Array(a);i.blocksPerLine=r;i.blocksPerColumn=s}e.mcusPerLine=t;e.mcusPerColumn=n}let n,r,a=0,c=null,l=null,f=0;const d=[],h=[],u=[];let p=(0,s.readUint16)(e,a);a+=2;if(65496!==p)throw new JpegError("SOI not found");p=(0,s.readUint16)(e,a);a+=2;e:for(;65497!==p;){let g,m,b;switch(p){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 x=readDataBlock();65504===p&&74===x[0]&&70===x[1]&&73===x[2]&&70===x[3]&&0===x[4]&&(c={version:{major:x[5],minor:x[6]},densityUnits:x[7],xDensity:x[8]<<8|x[9],yDensity:x[10]<<8|x[11],thumbWidth:x[12],thumbHeight:x[13],thumbData:x.subarray(14,14+3*x[12]*x[13])});65518===p&&65===x[0]&&100===x[1]&&111===x[2]&&98===x[3]&&101===x[4]&&(l={version:x[5]<<8|x[6],flags0:x[7]<<8|x[8],flags1:x[9]<<8|x[10],transformCode:x[11]});break;case 65499:const y=(0,s.readUint16)(e,a);a+=2;const w=y+a-2;let T;for(;a<w;){const t=e[a++],n=new Uint16Array(64);if(t>>4==0)for(m=0;m<64;m++){T=o[m];n[T]=e[a++]}else{if(t>>4!=1)throw new JpegError("DQT - invalid table spec");for(m=0;m<64;m++){T=o[m];n[T]=(0,s.readUint16)(e,a);a+=2}}d[15&t]=n}break;case 65472:case 65473:case 65474:if(n)throw new JpegError("Only single frame JPEGs supported");a+=2;n={};n.extended=65473===p;n.progressive=65474===p;n.precision=e[a++];const C=(0,s.readUint16)(e,a);a+=2;n.scanLines=t||C;n.samplesPerLine=(0,s.readUint16)(e,a);a+=2;n.components=[];n.componentIds={};const S=e[a++];let I=0,E=0;for(g=0;g<S;g++){const t=e[a],i=e[a+1]>>4,r=15&e[a+1];I<i&&(I=i);E<r&&(E=r);const s=e[a+2];b=n.components.push({h:i,v:r,quantizationId:s,quantizationTable:null});n.componentIds[t]=b-1;a+=3}n.maxH=I;n.maxV=E;prepareComponents(n);break;case 65476:const P=(0,s.readUint16)(e,a);a+=2;for(g=2;g<P;){const t=e[a++],n=new Uint8Array(16);let i=0;for(m=0;m<16;m++,a++)i+=n[m]=e[a];const r=new Uint8Array(i);for(m=0;m<i;m++,a++)r[m]=e[a];g+=17+i;(t>>4==0?u:h)[15&t]=buildHuffmanTable(n,r)}break;case 65501:a+=2;r=(0,s.readUint16)(e,a);a+=2;break;case 65498:const k=1==++f&&!t;a+=2;const B=e[a++],A=[];for(g=0;g<B;g++){const t=e[a++],i=n.componentIds[t],r=n.components[i];r.index=t;const s=e[a++];r.huffmanTableDC=u[s>>4];r.huffmanTableAC=h[15&s];A.push(r)}const _=e[a++],R=e[a++],M=e[a++];try{const t=decodeScan(e,a,n,A,r,_,R,M>>4,15&M,k);a+=t}catch(t){if(t instanceof DNLMarkerError){(0,i.warn)(`${t.message} -- attempting to re-parse the JPEG image.`);return this.parse(e,{dnlScanLines:t.scanLines})}if(t instanceof EOIMarkerError){(0,i.warn)(`${t.message} -- ignoring the rest of the image data.`);break e}throw t}break;case 65500:a+=4;break;case 65535:255!==e[a]&&a--;break;default:const v=findNextFileMarker(e,a-2,a-3);if(v?.invalid){(0,i.warn)("JpegImage.parse - unexpected data, current marker is: "+v.invalid);a=v.offset;break}if(!v||a>=e.length-1){(0,i.warn)("JpegImage.parse - reached the end of the image data without finding an EOI marker (0xFFD9).");break e}throw new JpegError("JpegImage.parse - unknown marker: "+p.toString(16))}p=(0,s.readUint16)(e,a);a+=2}this.width=n.samplesPerLine;this.height=n.scanLines;this.jfif=c;this.adobe=l;this.components=[];for(const e of n.components){const t=d[e.quantizationId];t&&(e.quantizationTable=t);this.components.push({index:e.index,output:buildComponentData(0,e),scaleX:e.h/n.maxH,scaleY:e.v/n.maxV,blocksPerLine:e.blocksPerLine,blocksPerColumn:e.blocksPerColumn})}this.numComponents=this.components.length}_getLinearizedBlockData(e,t,n=!1){const i=this.width/e,r=this.height/t;let s,o,a,c,l,f,d,h,u,p,g,m=0;const b=this.components.length,x=e*t*b,y=new Uint8ClampedArray(x),w=new Uint32Array(e),T=4294967288;let C;for(d=0;d<b;d++){s=this.components[d];o=s.scaleX*i;a=s.scaleY*r;m=d;g=s.output;c=s.blocksPerLine+1<<3;if(o!==C){for(l=0;l<e;l++){h=0|l*o;w[l]=(h&T)<<3|7&h}C=o}for(f=0;f<t;f++){h=0|f*a;p=c*(h&T)|(7&h)<<3;for(l=0;l<e;l++){y[m]=g[p+w[l]];m+=b}}}let S=this._decodeTransform;n||4!==b||S||(S=new Int32Array([-256,255,-256,255,-256,255,-256,255]));if(S)for(d=0;d<x;)for(h=0,u=0;h<b;h++,d++,u+=2)y[d]=(y[d]*S[u]>>8)+S[u+1];return y}get _isColorConversionNeeded(){return this.adobe?!!this.adobe.transformCode:3===this.numComponents?0!==this._colorTransform&&(82!==this.components[0].index||71!==this.components[1].index||66!==this.components[2].index):1===this._colorTransform}_convertYccToRgb(e){let t,n,i;for(let r=0,s=e.length;r<s;r+=3){t=e[r];n=e[r+1];i=e[r+2];e[r]=t-179.456+1.402*i;e[r+1]=t+135.459-.344*n-.714*i;e[r+2]=t-226.816+1.772*n}return e}_convertYccToRgba(e,t){for(let n=0,i=0,r=e.length;n<r;n+=3,i+=4){const r=e[n],s=e[n+1],o=e[n+2];t[i]=r-179.456+1.402*o;t[i+1]=r+135.459-.344*s-.714*o;t[i+2]=r-226.816+1.772*s;t[i+3]=255}return t}_convertYcckToRgb(e){let t,n,i,r,s=0;for(let o=0,a=e.length;o<a;o+=4){t=e[o];n=e[o+1];i=e[o+2];r=e[o+3];e[s++]=n*(-660635669420364e-19*n+.000437130475926232*i-54080610064599e-18*t+.00048449797120281*r-.154362151871126)-122.67195406894+i*(-.000957964378445773*i+.000817076911346625*t-.00477271405408747*r+1.53380253221734)+t*(.000961250184130688*t-.00266257332283933*r+.48357088451265)+r*(-.000336197177618394*r+.484791561490776);e[s++]=107.268039397724+n*(219927104525741e-19*n-.000640992018297945*i+.000659397001245577*t+.000426105652938837*r-.176491792462875)+i*(-.000778269941513683*i+.00130872261408275*t+.000770482631801132*r-.151051492775562)+t*(.00126935368114843*t-.00265090189010898*r+.25802910206845)+r*(-.000318913117588328*r-.213742400323665);e[s++]=n*(-.000570115196973677*n-263409051004589e-19*i+.0020741088115012*t-.00288260236853442*r+.814272968359295)-20.810012546947+i*(-153496057440975e-19*i-.000132689043961446*t+.000560833691242812*r-.195152027534049)+t*(.00174418132927582*t-.00255243321439347*r+.116935020465145)+r*(-.000343531996510555*r+.24165260232407)}return e.subarray(0,s)}_convertYcckToRgba(e){for(let t=0,n=e.length;t<n;t+=4){const n=e[t],i=e[t+1],r=e[t+2],s=e[t+3];e[t]=i*(-660635669420364e-19*i+.000437130475926232*r-54080610064599e-18*n+.00048449797120281*s-.154362151871126)-122.67195406894+r*(-.000957964378445773*r+.000817076911346625*n-.00477271405408747*s+1.53380253221734)+n*(.000961250184130688*n-.00266257332283933*s+.48357088451265)+s*(-.000336197177618394*s+.484791561490776);e[t+1]=107.268039397724+i*(219927104525741e-19*i-.000640992018297945*r+.000659397001245577*n+.000426105652938837*s-.176491792462875)+r*(-.000778269941513683*r+.00130872261408275*n+.000770482631801132*s-.151051492775562)+n*(.00126935368114843*n-.00265090189010898*s+.25802910206845)+s*(-.000318913117588328*s-.213742400323665);e[t+2]=i*(-.000570115196973677*i-263409051004589e-19*r+.0020741088115012*n-.00288260236853442*s+.814272968359295)-20.810012546947+r*(-153496057440975e-19*r-.000132689043961446*n+.000560833691242812*s-.195152027534049)+n*(.00174418132927582*n-.00255243321439347*s+.116935020465145)+s*(-.000343531996510555*s+.24165260232407);e[t+3]=255}return e}_convertYcckToCmyk(e){let t,n,i;for(let r=0,s=e.length;r<s;r+=4){t=e[r];n=e[r+1];i=e[r+2];e[r]=434.456-t-1.402*i;e[r+1]=119.541-t+.344*n+.714*i;e[r+2]=481.816-t-1.772*n}return e}_convertCmykToRgb(e){let t,n,i,r,s=0;for(let o=0,a=e.length;o<a;o+=4){t=e[o];n=e[o+1];i=e[o+2];r=e[o+3];e[s++]=255+t*(-6747147073602441e-20*t+.0008379262121013727*n+.0002894718188643294*i+.003264231057537806*r-1.1185611867203937)+n*(26374107616089405e-21*n-8626949158638572e-20*i-.0002748769067499491*r-.02155688794978967)+i*(-3878099212869363e-20*i-.0003267808279485286*r+.0686742238595345)-r*(.0003361971776183937*r+.7430659151342254);e[s++]=255+t*(.00013596372813588848*t+.000924537132573585*n+.00010567359618683593*i+.0004791864687436512*r-.3109689587515875)+n*(-.00023545346108370344*n+.0002702845253534714*i+.0020200308977307156*r-.7488052167015494)+i*(6834815998235662e-20*i+.00015168452363460973*r-.09751927774728933)-r*(.0003189131175883281*r+.7364883807733168);e[s++]=255+t*(13598650411385307e-21*t+.00012423956175490851*n+.0004751985097583589*i-36729317476630422e-22*r-.05562186980264034)+n*(.00016141380598724676*n+.0009692239130725186*i+.0007782692450036253*r-.44015232367526463)+i*(5.068882914068769e-7*i+.0017778369011375071*r-.7591454649749609)-r*(.0003435319965105553*r+.7063770186160144)}return e.subarray(0,s)}_convertCmykToRgba(e){for(let t=0,n=e.length;t<n;t+=4){const n=e[t],i=e[t+1],r=e[t+2],s=e[t+3];e[t]=255+n*(-6747147073602441e-20*n+.0008379262121013727*i+.0002894718188643294*r+.003264231057537806*s-1.1185611867203937)+i*(26374107616089405e-21*i-8626949158638572e-20*r-.0002748769067499491*s-.02155688794978967)+r*(-3878099212869363e-20*r-.0003267808279485286*s+.0686742238595345)-s*(.0003361971776183937*s+.7430659151342254);e[t+1]=255+n*(.00013596372813588848*n+.000924537132573585*i+.00010567359618683593*r+.0004791864687436512*s-.3109689587515875)+i*(-.00023545346108370344*i+.0002702845253534714*r+.0020200308977307156*s-.7488052167015494)+r*(6834815998235662e-20*r+.00015168452363460973*s-.09751927774728933)-s*(.0003189131175883281*s+.7364883807733168);e[t+2]=255+n*(13598650411385307e-21*n+.00012423956175490851*i+.0004751985097583589*r-36729317476630422e-22*s-.05562186980264034)+i*(.00016141380598724676*i+.0009692239130725186*r+.0007782692450036253*s-.44015232367526463)+r*(5.068882914068769e-7*r+.0017778369011375071*s-.7591454649749609)-s*(.0003435319965105553*s+.7063770186160144);e[t+3]=255}return e}getData({width:e,height:t,forceRGBA:n=!1,forceRGB:i=!1,isSourcePDF:s=!1}){if(this.numComponents>4)throw new JpegError("Unsupported color mode");const o=this._getLinearizedBlockData(e,t,s);if(1===this.numComponents&&(n||i)){const e=o.length*(n?4:3),t=new Uint8ClampedArray(e);let i=0;if(n)(0,r.grayToRGBA)(o,new Uint32Array(t.buffer));else for(const e of o){t[i++]=e;t[i++]=e;t[i++]=e}return t}if(3===this.numComponents&&this._isColorConversionNeeded){if(n){const e=new Uint8ClampedArray(o.length/3*4);return this._convertYccToRgba(o,e)}return this._convertYccToRgb(o)}if(4===this.numComponents){if(this._isColorConversionNeeded)return n?this._convertYcckToRgba(o):i?this._convertYcckToRgb(o):this._convertYcckToCmyk(o);if(n)return this._convertCmykToRgba(o);if(i)return this._convertCmykToRgb(o)}return o}}},(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});t.convertBlackAndWhiteToRGBA=convertBlackAndWhiteToRGBA;t.convertToRGBA=function convertToRGBA(e){switch(e.kind){case i.ImageKind.GRAYSCALE_1BPP:return convertBlackAndWhiteToRGBA(e);case i.ImageKind.RGB_24BPP:return function convertRGBToRGBA({src:e,srcPos:t=0,dest:n,destPos:r=0,width:s,height:o}){let a=0;const c=e.length>>2,l=new Uint32Array(e.buffer,t,c);if(i.FeatureTest.isLittleEndian){for(;a<c-2;a+=3,r+=4){const e=l[a],t=l[a+1],i=l[a+2];n[r]=4278190080|e;n[r+1]=e>>>24|t<<8|4278190080;n[r+2]=t>>>16|i<<16|4278190080;n[r+3]=i>>>8|4278190080}for(let t=4*a,i=e.length;t<i;t+=3)n[r++]=e[t]|e[t+1]<<8|e[t+2]<<16|4278190080}else{for(;a<c-2;a+=3,r+=4){const e=l[a],t=l[a+1],i=l[a+2];n[r]=255|e;n[r+1]=e<<24|t>>>8|255;n[r+2]=t<<16|i>>>16|255;n[r+3]=i<<8|255}for(let t=4*a,i=e.length;t<i;t+=3)n[r++]=e[t]<<24|e[t+1]<<16|e[t+2]<<8|255}return{srcPos:t,destPos:r}}(e)}return null};t.grayToRGBA=function grayToRGBA(e,t){if(i.FeatureTest.isLittleEndian)for(let n=0,i=e.length;n<i;n++)t[n]=65793*e[n]|4278190080;else for(let n=0,i=e.length;n<i;n++)t[n]=16843008*e[n]|255};var i=n(1);function convertBlackAndWhiteToRGBA({src:e,srcPos:t=0,dest:n,width:r,height:s,nonBlackColor:o=4294967295,inverseDecode:a=!1}){const c=i.FeatureTest.isLittleEndian?4278190080:255,[l,f]=a?[o,c]:[c,o],d=r>>3,h=7&r,u=e.length;n=new Uint32Array(n.buffer);let p=0;for(let i=0;i<s;i++){for(const i=t+d;t<i;t++){const i=t<u?e[t]:255;n[p++]=128&i?f:l;n[p++]=64&i?f:l;n[p++]=32&i?f:l;n[p++]=16&i?f:l;n[p++]=8&i?f:l;n[p++]=4&i?f:l;n[p++]=2&i?f:l;n[p++]=1&i?f:l}if(0===h)continue;const i=t<u?e[t++]:255;for(let e=0;e<h;e++)n[p++]=i&1<<7-e?f:l}return{srcPos:t,destPos:p}}},(e,t,n)=>{Object.defineProperty(t,"__esModule",{value:!0});t.JpxImage=void 0;var i=n(1),r=n(3),s=n(6);class JpxError extends i.BaseException{constructor(e){super(`JPX error: ${e}`,"JpxError")}}const o={LL:0,LH:1,HL:1,HH:2};t.JpxImage=class JpxImage{constructor(){this.failOnCorruptedImage=!1}parse(e){if(65359===(0,r.readUint16)(e,0)){this.parseCodestream(e,0,e.length);return}const t=e.length;let n=0;for(;n<t;){let s=8,o=(0,r.readUint32)(e,n);const a=(0,r.readUint32)(e,n+4);n+=s;if(1===o){o=4294967296*(0,r.readUint32)(e,n)+(0,r.readUint32)(e,n+4);n+=8;s+=8}0===o&&(o=t-n+s);if(o<s)throw new JpxError("Invalid box field size");const c=o-s;let l=!0;switch(a){case 1785737832:l=!1;break;case 1668246642:const t=e[n];if(1===t){const t=(0,r.readUint32)(e,n+3);switch(t){case 16:case 17:case 18:break;default:(0,i.warn)("Unknown colorspace "+t)}}else 2===t&&(0,i.info)("ICC profile not supported");break;case 1785737827:this.parseCodestream(e,n,n+c);break;case 1783636e3:218793738!==(0,r.readUint32)(e,n)&&(0,i.warn)("Invalid JP2 signature");break;case 1783634458:case 1718909296:case 1920099697:case 1919251232:case 1768449138:break;default:const s=String.fromCharCode(a>>24&255,a>>16&255,a>>8&255,255&a);(0,i.warn)(`Unsupported header type ${a} (${s}).`)}l&&(n+=c)}}parseImageProperties(e){let t=e.getByte();for(;t>=0;){const n=t;t=e.getByte();if(65361===(n<<8|t)){e.skip(4);const t=e.getInt32()>>>0,n=e.getInt32()>>>0,i=e.getInt32()>>>0,r=e.getInt32()>>>0;e.skip(16);const s=e.getUint16();this.width=t-i;this.height=n-r;this.componentsCount=s;this.bitsPerComponent=8;return}}throw new JpxError("No size marker found in JPX stream")}parseCodestream(e,t,n){const s={};let o=!1;try{let a=t;for(;a+1<n;){const t=(0,r.readUint16)(e,a);a+=2;let n,c,l,f,d,h,u=0;switch(t){case 65359:s.mainHeader=!0;break;case 65497:break;case 65361:u=(0,r.readUint16)(e,a);const p={};p.Xsiz=(0,r.readUint32)(e,a+4);p.Ysiz=(0,r.readUint32)(e,a+8);p.XOsiz=(0,r.readUint32)(e,a+12);p.YOsiz=(0,r.readUint32)(e,a+16);p.XTsiz=(0,r.readUint32)(e,a+20);p.YTsiz=(0,r.readUint32)(e,a+24);p.XTOsiz=(0,r.readUint32)(e,a+28);p.YTOsiz=(0,r.readUint32)(e,a+32);const g=(0,r.readUint16)(e,a+36);p.Csiz=g;const m=[];n=a+38;for(let t=0;t<g;t++){const t={precision:1+(127&e[n]),isSigned:!!(128&e[n]),XRsiz:e[n+1],YRsiz:e[n+2]};n+=3;calculateComponentDimensions(t,p);m.push(t)}s.SIZ=p;s.components=m;calculateTileGrids(s,m);s.QCC=[];s.COC=[];break;case 65372:u=(0,r.readUint16)(e,a);const b={};n=a+2;c=e[n++];switch(31&c){case 0:f=8;d=!0;break;case 1:f=16;d=!1;break;case 2:f=16;d=!0;break;default:throw new Error("Invalid SQcd value "+c)}b.noQuantization=8===f;b.scalarExpounded=d;b.guardBits=c>>5;l=[];for(;n<u+a;){const t={};if(8===f){t.epsilon=e[n++]>>3;t.mu=0}else{t.epsilon=e[n]>>3;t.mu=(7&e[n])<<8|e[n+1];n+=2}l.push(t)}b.SPqcds=l;if(s.mainHeader)s.QCD=b;else{s.currentTile.QCD=b;s.currentTile.QCC=[]}break;case 65373:u=(0,r.readUint16)(e,a);const x={};n=a+2;let y;if(s.SIZ.Csiz<257)y=e[n++];else{y=(0,r.readUint16)(e,n);n+=2}c=e[n++];switch(31&c){case 0:f=8;d=!0;break;case 1:f=16;d=!1;break;case 2:f=16;d=!0;break;default:throw new Error("Invalid SQcd value "+c)}x.noQuantization=8===f;x.scalarExpounded=d;x.guardBits=c>>5;l=[];for(;n<u+a;){const t={};if(8===f){t.epsilon=e[n++]>>3;t.mu=0}else{t.epsilon=e[n]>>3;t.mu=(7&e[n])<<8|e[n+1];n+=2}l.push(t)}x.SPqcds=l;s.mainHeader?s.QCC[y]=x:s.currentTile.QCC[y]=x;break;case 65362:u=(0,r.readUint16)(e,a);const w={};n=a+2;const T=e[n++];w.entropyCoderWithCustomPrecincts=!!(1&T);w.sopMarkerUsed=!!(2&T);w.ephMarkerUsed=!!(4&T);w.progressionOrder=e[n++];w.layersCount=(0,r.readUint16)(e,n);n+=2;w.multipleComponentTransform=e[n++];w.decompositionLevelsCount=e[n++];w.xcb=2+(15&e[n++]);w.ycb=2+(15&e[n++]);const C=e[n++];w.selectiveArithmeticCodingBypass=!!(1&C);w.resetContextProbabilities=!!(2&C);w.terminationOnEachCodingPass=!!(4&C);w.verticallyStripe=!!(8&C);w.predictableTermination=!!(16&C);w.segmentationSymbolUsed=!!(32&C);w.reversibleTransformation=e[n++];if(w.entropyCoderWithCustomPrecincts){const t=[];for(;n<u+a;){const i=e[n++];t.push({PPx:15&i,PPy:i>>4})}w.precinctsSizes=t}const S=[];w.selectiveArithmeticCodingBypass&&S.push("selectiveArithmeticCodingBypass");w.terminationOnEachCodingPass&&S.push("terminationOnEachCodingPass");w.verticallyStripe&&S.push("verticallyStripe");w.predictableTermination&&S.push("predictableTermination");if(S.length>0){o=!0;(0,i.warn)(`JPX: Unsupported COD options (${S.join(", ")}).`)}if(s.mainHeader)s.COD=w;else{s.currentTile.COD=w;s.currentTile.COC=[]}break;case 65424:u=(0,r.readUint16)(e,a);h={};h.index=(0,r.readUint16)(e,a+2);h.length=(0,r.readUint32)(e,a+4);h.dataEnd=h.length+a-2;h.partIndex=e[a+8];h.partsCount=e[a+9];s.mainHeader=!1;if(0===h.partIndex){h.COD=s.COD;h.COC=s.COC.slice(0);h.QCD=s.QCD;h.QCC=s.QCC.slice(0)}s.currentTile=h;break;case 65427:h=s.currentTile;if(0===h.partIndex){initializeTile(s,h.index);buildPackets(s)}u=h.dataEnd-a;parseTilePackets(s,e,a,u);break;case 65363:(0,i.warn)("JPX: Codestream code 0xFF53 (COC) is not implemented.");case 65365:case 65367:case 65368:case 65380:u=(0,r.readUint16)(e,a);break;default:throw new Error("Unknown codestream code: "+t.toString(16))}a+=u}}catch(e){if(o||this.failOnCorruptedImage)throw new JpxError(e.message);(0,i.warn)(`JPX: Trying to recover from: "${e.message}".`)}this.tiles=function transformComponents(e){const t=e.SIZ,n=e.components,i=t.Csiz,r=[];for(let t=0,s=e.tiles.length;t<s;t++){const s=e.tiles[t],o=[];for(let t=0;t<i;t++)o[t]=transformTile(e,s,t);const a=o[0],c=new Uint8ClampedArray(a.items.length*i),l={left:a.left,top:a.top,width:a.width,height:a.height,items:c};let f,d,h,u,p,g,m,b=0;if(s.codingStyleDefaultParameters.multipleComponentTransform){const e=4===i,t=o[0].items,r=o[1].items,a=o[2].items,l=e?o[3].items:null;f=n[0].precision-8;d=.5+(128<<f);const x=s.components[0],y=i-3;u=t.length;if(x.codingStyleParameters.reversibleTransformation)for(h=0;h<u;h++,b+=y){p=t[h]+d;g=r[h];m=a[h];const e=p-(m+g>>2);c[b++]=e+m>>f;c[b++]=e>>f;c[b++]=e+g>>f}else for(h=0;h<u;h++,b+=y){p=t[h]+d;g=r[h];m=a[h];c[b++]=p+1.402*m>>f;c[b++]=p-.34413*g-.71414*m>>f;c[b++]=p+1.772*g>>f}if(e)for(h=0,b=3;h<u;h++,b+=4)c[b]=l[h]+d>>f}else for(let e=0;e<i;e++){const t=o[e].items;f=n[e].precision-8;d=.5+(128<<f);for(b=e,h=0,u=t.length;h<u;h++){c[b]=t[h]+d>>f;b+=i}}r.push(l)}return r}(s);this.width=s.SIZ.Xsiz-s.SIZ.XOsiz;this.height=s.SIZ.Ysiz-s.SIZ.YOsiz;this.componentsCount=s.SIZ.Csiz}};function calculateComponentDimensions(e,t){e.x0=Math.ceil(t.XOsiz/e.XRsiz);e.x1=Math.ceil(t.Xsiz/e.XRsiz);e.y0=Math.ceil(t.YOsiz/e.YRsiz);e.y1=Math.ceil(t.Ysiz/e.YRsiz);e.width=e.x1-e.x0;e.height=e.y1-e.y0}function calculateTileGrids(e,t){const n=e.SIZ,i=[];let r;const s=Math.ceil((n.Xsiz-n.XTOsiz)/n.XTsiz),o=Math.ceil((n.Ysiz-n.YTOsiz)/n.YTsiz);for(let e=0;e<o;e++)for(let t=0;t<s;t++){r={};r.tx0=Math.max(n.XTOsiz+t*n.XTsiz,n.XOsiz);r.ty0=Math.max(n.YTOsiz+e*n.YTsiz,n.YOsiz);r.tx1=Math.min(n.XTOsiz+(t+1)*n.XTsiz,n.Xsiz);r.ty1=Math.min(n.YTOsiz+(e+1)*n.YTsiz,n.Ysiz);r.width=r.tx1-r.tx0;r.height=r.ty1-r.ty0;r.components=[];i.push(r)}e.tiles=i;for(let e=0,s=n.Csiz;e<s;e++){const n=t[e];for(let t=0,s=i.length;t<s;t++){const s={};r=i[t];s.tcx0=Math.ceil(r.tx0/n.XRsiz);s.tcy0=Math.ceil(r.ty0/n.YRsiz);s.tcx1=Math.ceil(r.tx1/n.XRsiz);s.tcy1=Math.ceil(r.ty1/n.YRsiz);s.width=s.tcx1-s.tcx0;s.height=s.tcy1-s.tcy0;r.components[e]=s}}}function getBlocksDimensions(e,t,n){const i=t.codingStyleParameters,r={};if(i.entropyCoderWithCustomPrecincts){r.PPx=i.precinctsSizes[n].PPx;r.PPy=i.precinctsSizes[n].PPy}else{r.PPx=15;r.PPy=15}r.xcb_=n>0?Math.min(i.xcb,r.PPx-1):Math.min(i.xcb,r.PPx);r.ycb_=n>0?Math.min(i.ycb,r.PPy-1):Math.min(i.ycb,r.PPy);return r}function buildPrecincts(e,t,n){const i=1<<n.PPx,r=1<<n.PPy,s=0===t.resLevel,o=1<<n.PPx+(s?0:-1),a=1<<n.PPy+(s?0:-1),c=t.trx1>t.trx0?Math.ceil(t.trx1/i)-Math.floor(t.trx0/i):0,l=t.try1>t.try0?Math.ceil(t.try1/r)-Math.floor(t.try0/r):0,f=c*l;t.precinctParameters={precinctWidth:i,precinctHeight:r,numprecinctswide:c,numprecinctshigh:l,numprecincts:f,precinctWidthInSubband:o,precinctHeightInSubband:a}}function buildCodeblocks(e,t,n){const i=n.xcb_,r=n.ycb_,s=1<<i,o=1<<r,a=t.tbx0>>i,c=t.tby0>>r,l=t.tbx1+s-1>>i,f=t.tby1+o-1>>r,d=t.resolution.precinctParameters,h=[],u=[];let p,g,m,b;for(g=c;g<f;g++)for(p=a;p<l;p++){m={cbx:p,cby:g,tbx0:s*p,tby0:o*g,tbx1:s*(p+1),tby1:o*(g+1)};m.tbx0_=Math.max(t.tbx0,m.tbx0);m.tby0_=Math.max(t.tby0,m.tby0);m.tbx1_=Math.min(t.tbx1,m.tbx1);m.tby1_=Math.min(t.tby1,m.tby1);b=Math.floor((m.tbx0_-t.tbx0)/d.precinctWidthInSubband)+Math.floor((m.tby0_-t.tby0)/d.precinctHeightInSubband)*d.numprecinctswide;m.precinctNumber=b;m.subbandType=t.type;m.Lblock=3;if(m.tbx1_<=m.tbx0_||m.tby1_<=m.tby0_)continue;h.push(m);let e=u[b];if(void 0!==e){p<e.cbxMin?e.cbxMin=p:p>e.cbxMax&&(e.cbxMax=p);g<e.cbyMin?e.cbxMin=g:g>e.cbyMax&&(e.cbyMax=g)}else u[b]=e={cbxMin:p,cbyMin:g,cbxMax:p,cbyMax:g};m.precinct=e}t.codeblockParameters={codeblockWidth:i,codeblockHeight:r,numcodeblockwide:l-a+1,numcodeblockhigh:f-c+1};t.codeblocks=h;t.precincts=u}function createPacket(e,t,n){const i=[],r=e.subbands;for(let e=0,n=r.length;e<n;e++){const n=r[e].codeblocks;for(let e=0,r=n.length;e<r;e++){const r=n[e];r.precinctNumber===t&&i.push(r)}}return{layerNumber:n,codeblocks:i}}function LayerResolutionComponentPositionIterator(e){const t=e.SIZ,n=e.currentTile.index,i=e.tiles[n],r=i.codingStyleDefaultParameters.layersCount,s=t.Csiz;let o=0;for(let e=0;e<s;e++)o=Math.max(o,i.components[e].codingStyleParameters.decompositionLevelsCount);let a=0,c=0,l=0,f=0;this.nextPacket=function JpxImage_nextPacket(){for(;a<r;a++){for(;c<=o;c++){for(;l<s;l++){const e=i.components[l];if(c>e.codingStyleParameters.decompositionLevelsCount)continue;const t=e.resolutions[c],n=t.precinctParameters.numprecincts;for(;f<n;){const e=createPacket(t,f,a);f++;return e}f=0}l=0}c=0}throw new JpxError("Out of packets")}}function ResolutionLayerComponentPositionIterator(e){const t=e.SIZ,n=e.currentTile.index,i=e.tiles[n],r=i.codingStyleDefaultParameters.layersCount,s=t.Csiz;let o=0;for(let e=0;e<s;e++)o=Math.max(o,i.components[e].codingStyleParameters.decompositionLevelsCount);let a=0,c=0,l=0,f=0;this.nextPacket=function JpxImage_nextPacket(){for(;a<=o;a++){for(;c<r;c++){for(;l<s;l++){const e=i.components[l];if(a>e.codingStyleParameters.decompositionLevelsCount)continue;const t=e.resolutions[a],n=t.precinctParameters.numprecincts;for(;f<n;){const e=createPacket(t,f,c);f++;return e}f=0}l=0}c=0}throw new JpxError("Out of packets")}}function ResolutionPositionComponentLayerIterator(e){const t=e.SIZ,n=e.currentTile.index,i=e.tiles[n],r=i.codingStyleDefaultParameters.layersCount,s=t.Csiz;let o,a,c,l,f=0;for(c=0;c<s;c++){const e=i.components[c];f=Math.max(f,e.codingStyleParameters.decompositionLevelsCount)}const d=new Int32Array(f+1);for(a=0;a<=f;++a){let e=0;for(c=0;c<s;++c){const t=i.components[c].resolutions;a<t.length&&(e=Math.max(e,t[a].precinctParameters.numprecincts))}d[a]=e}o=0;a=0;c=0;l=0;this.nextPacket=function JpxImage_nextPacket(){for(;a<=f;a++){for(;l<d[a];l++){for(;c<s;c++){const e=i.components[c];if(a>e.codingStyleParameters.decompositionLevelsCount)continue;const t=e.resolutions[a],n=t.precinctParameters.numprecincts;if(!(l>=n)){for(;o<r;){const e=createPacket(t,l,o);o++;return e}o=0}}c=0}l=0}throw new JpxError("Out of packets")}}function PositionComponentResolutionLayerIterator(e){const t=e.SIZ,n=e.currentTile.index,i=e.tiles[n],r=i.codingStyleDefaultParameters.layersCount,s=t.Csiz,o=getPrecinctSizesInImageScale(i),a=o;let c=0,l=0,f=0,d=0,h=0;this.nextPacket=function JpxImage_nextPacket(){for(;h<a.maxNumHigh;h++){for(;d<a.maxNumWide;d++){for(;f<s;f++){const e=i.components[f],t=e.codingStyleParameters.decompositionLevelsCount;for(;l<=t;l++){const t=e.resolutions[l],n=o.components[f].resolutions[l],i=getPrecinctIndexIfExist(d,h,n,a,t);if(null!==i){for(;c<r;){const e=createPacket(t,i,c);c++;return e}c=0}}l=0}f=0}d=0}throw new JpxError("Out of packets")}}function ComponentPositionResolutionLayerIterator(e){const t=e.SIZ,n=e.currentTile.index,i=e.tiles[n],r=i.codingStyleDefaultParameters.layersCount,s=t.Csiz,o=getPrecinctSizesInImageScale(i);let a=0,c=0,l=0,f=0,d=0;this.nextPacket=function JpxImage_nextPacket(){for(;l<s;++l){const e=i.components[l],t=o.components[l],n=e.codingStyleParameters.decompositionLevelsCount;for(;d<t.maxNumHigh;d++){for(;f<t.maxNumWide;f++){for(;c<=n;c++){const n=e.resolutions[c],i=t.resolutions[c],s=getPrecinctIndexIfExist(f,d,i,t,n);if(null!==s){for(;a<r;){const e=createPacket(n,s,a);a++;return e}a=0}}c=0}f=0}d=0}throw new JpxError("Out of packets")}}function getPrecinctIndexIfExist(e,t,n,i,r){const s=e*i.minWidth,o=t*i.minHeight;if(s%n.width!=0||o%n.height!=0)return null;const a=o/n.width*r.precinctParameters.numprecinctswide;return s/n.height+a}function getPrecinctSizesInImageScale(e){const t=e.components.length;let n=Number.MAX_VALUE,i=Number.MAX_VALUE,r=0,s=0;const o=new Array(t);for(let a=0;a<t;a++){const t=e.components[a],c=t.codingStyleParameters.decompositionLevelsCount,l=new Array(c+1);let f=Number.MAX_VALUE,d=Number.MAX_VALUE,h=0,u=0,p=1;for(let e=c;e>=0;--e){const n=t.resolutions[e],i=p*n.precinctParameters.precinctWidth,r=p*n.precinctParameters.precinctHeight;f=Math.min(f,i);d=Math.min(d,r);h=Math.max(h,n.precinctParameters.numprecinctswide);u=Math.max(u,n.precinctParameters.numprecinctshigh);l[e]={width:i,height:r};p<<=1}n=Math.min(n,f);i=Math.min(i,d);r=Math.max(r,h);s=Math.max(s,u);o[a]={resolutions:l,minWidth:f,minHeight:d,maxNumWide:h,maxNumHigh:u}}return{components:o,minWidth:n,minHeight:i,maxNumWide:r,maxNumHigh:s}}function buildPackets(e){const t=e.SIZ,n=e.currentTile.index,i=e.tiles[n],r=t.Csiz;for(let e=0;e<r;e++){const t=i.components[e],n=t.codingStyleParameters.decompositionLevelsCount,r=[],s=[];for(let e=0;e<=n;e++){const i=getBlocksDimensions(0,t,e),o={},a=1<<n-e;o.trx0=Math.ceil(t.tcx0/a);o.try0=Math.ceil(t.tcy0/a);o.trx1=Math.ceil(t.tcx1/a);o.try1=Math.ceil(t.tcy1/a);o.resLevel=e;buildPrecincts(0,o,i);r.push(o);let c;if(0===e){c={};c.type="LL";c.tbx0=Math.ceil(t.tcx0/a);c.tby0=Math.ceil(t.tcy0/a);c.tbx1=Math.ceil(t.tcx1/a);c.tby1=Math.ceil(t.tcy1/a);c.resolution=o;buildCodeblocks(0,c,i);s.push(c);o.subbands=[c]}else{const r=1<<n-e+1,a=[];c={};c.type="HL";c.tbx0=Math.ceil(t.tcx0/r-.5);c.tby0=Math.ceil(t.tcy0/r);c.tbx1=Math.ceil(t.tcx1/r-.5);c.tby1=Math.ceil(t.tcy1/r);c.resolution=o;buildCodeblocks(0,c,i);s.push(c);a.push(c);c={};c.type="LH";c.tbx0=Math.ceil(t.tcx0/r);c.tby0=Math.ceil(t.tcy0/r-.5);c.tbx1=Math.ceil(t.tcx1/r);c.tby1=Math.ceil(t.tcy1/r-.5);c.resolution=o;buildCodeblocks(0,c,i);s.push(c);a.push(c);c={};c.type="HH";c.tbx0=Math.ceil(t.tcx0/r-.5);c.tby0=Math.ceil(t.tcy0/r-.5);c.tbx1=Math.ceil(t.tcx1/r-.5);c.tby1=Math.ceil(t.tcy1/r-.5);c.resolution=o;buildCodeblocks(0,c,i);s.push(c);a.push(c);o.subbands=a}}t.resolutions=r;t.subbands=s}const s=i.codingStyleDefaultParameters.progressionOrder;switch(s){case 0:i.packetsIterator=new LayerResolutionComponentPositionIterator(e);break;case 1:i.packetsIterator=new ResolutionLayerComponentPositionIterator(e);break;case 2:i.packetsIterator=new ResolutionPositionComponentLayerIterator(e);break;case 3:i.packetsIterator=new PositionComponentResolutionLayerIterator(e);break;case 4:i.packetsIterator=new ComponentPositionResolutionLayerIterator(e);break;default:throw new JpxError(`Unsupported progression order ${s}`)}}function parseTilePackets(e,t,n,i){let s,o=0,a=0,c=!1;function readBits(e){for(;a<e;){const e=t[n+o];o++;if(c){s=s<<7|e;a+=7;c=!1}else{s=s<<8|e;a+=8}255===e&&(c=!0)}a-=e;return s>>>a&(1<<e)-1}function skipMarkerIfEqual(e){if(255===t[n+o-1]&&t[n+o]===e){skipBytes(1);return!0}if(255===t[n+o]&&t[n+o+1]===e){skipBytes(2);return!0}return!1}function skipBytes(e){o+=e}function alignToByte(){a=0;if(c){o++;c=!1}}function readCodingpasses(){if(0===readBits(1))return 1;if(0===readBits(1))return 2;let e=readBits(2);if(e<3)return e+3;e=readBits(5);if(e<31)return e+6;e=readBits(7);return e+37}const l=e.currentTile.index,f=e.tiles[l],d=e.COD.sopMarkerUsed,h=e.COD.ephMarkerUsed,u=f.packetsIterator;for(;o<i;){alignToByte();d&&skipMarkerIfEqual(145)&&skipBytes(4);const e=u.nextPacket();if(!readBits(1))continue;const i=e.layerNumber,s=[];let a;for(let t=0,n=e.codeblocks.length;t<n;t++){a=e.codeblocks[t];let n=a.precinct;const o=a.cbx-n.cbxMin,c=a.cby-n.cbyMin;let l,f,d=!1,h=!1;if(void 0!==a.included)d=!!readBits(1);else{n=a.precinct;let e;if(void 0!==n.inclusionTree)e=n.inclusionTree;else{const t=n.cbxMax-n.cbxMin+1,r=n.cbyMax-n.cbyMin+1;e=new InclusionTree(t,r,i);f=new TagTree(t,r);n.inclusionTree=e;n.zeroBitPlanesTree=f;for(let e=0;e<i;e++)if(0!==readBits(1))throw new JpxError("Invalid tag tree")}if(e.reset(o,c,i))for(;;){if(!readBits(1)){e.incrementValue(i);break}l=!e.nextLevel();if(l){a.included=!0;d=h=!0;break}}}if(!d)continue;if(h){f=n.zeroBitPlanesTree;f.reset(o,c);for(;;)if(readBits(1)){l=!f.nextLevel();if(l)break}else f.incrementValue();a.zeroBitPlanes=f.value}const u=readCodingpasses();for(;readBits(1);)a.Lblock++;const p=(0,r.log2)(u),g=readBits((u<1<<p?p-1:p)+a.Lblock);s.push({codeblock:a,codingpasses:u,dataLength:g})}alignToByte();h&&skipMarkerIfEqual(146);for(;s.length>0;){const e=s.shift();a=e.codeblock;void 0===a.data&&(a.data=[]);a.data.push({data:t,start:n+o,end:n+o+e.dataLength,codingpasses:e.codingpasses});o+=e.dataLength}}return o}function copyCoefficients(e,t,n,i,r,o,a,c,l){const f=i.tbx0,d=i.tby0,h=i.tbx1-i.tbx0,u=i.codeblocks,p="H"===i.type.charAt(0)?1:0,g="H"===i.type.charAt(1)?t:0;for(let n=0,m=u.length;n<m;++n){const m=u[n],b=m.tbx1_-m.tbx0_,x=m.tby1_-m.tby0_;if(0===b||0===x)continue;if(void 0===m.data)continue;const y=new BitModel(b,x,m.subbandType,m.zeroBitPlanes,o);let w=2;const T=m.data;let C,S,I,E=0,P=0;for(C=0,S=T.length;C<S;C++){I=T[C];E+=I.end-I.start;P+=I.codingpasses}const k=new Uint8Array(E);let B=0;for(C=0,S=T.length;C<S;C++){I=T[C];const e=I.data.subarray(I.start,I.end);k.set(e,B);B+=e.length}const A=new s.ArithmeticDecoder(k,0,E);y.setDecoder(A);for(C=0;C<P;C++){switch(w){case 0:y.runSignificancePropagationPass();break;case 1:y.runMagnitudeRefinementPass();break;case 2:y.runCleanupPass();c&&y.checkSegmentationSymbol()}l&&y.reset();w=(w+1)%3}let _=m.tbx0_-f+(m.tby0_-d)*h;const R=y.coefficentsSign,M=y.coefficentsMagnitude,v=y.bitsDecoded,L=a?0:.5;let D,O,F;B=0;const U="LL"!==i.type;for(C=0;C<x;C++){const n=2*(_/h|0)*(t-h)+p+g;for(D=0;D<b;D++){O=M[B];if(0!==O){O=(O+L)*r;0!==R[B]&&(O=-O);F=v[B];e[U?n+(_<<1):_]=a&&F>=o?O:O*(1<<o-F)}_++;B++}_+=h-b}}}function transformTile(e,t,n){const i=t.components[n],r=i.codingStyleParameters,s=i.quantizationParameters,a=r.decompositionLevelsCount,c=s.SPqcds,l=s.scalarExpounded,f=s.guardBits,d=r.segmentationSymbolUsed,h=r.resetContextProbabilities,u=e.components[n].precision,p=r.reversibleTransformation,g=p?new ReversibleTransform:new IrreversibleTransform,m=[];let b=0;for(let e=0;e<=a;e++){const t=i.resolutions[e],n=t.trx1-t.trx0,r=t.try1-t.try0,s=new Float32Array(n*r);for(let i=0,r=t.subbands.length;i<r;i++){let r,a;if(l){r=c[b].mu;a=c[b].epsilon;b++}else{r=c[0].mu;a=c[0].epsilon+(e>0?1-e:0)}const g=t.subbands[i],m=o[g.type];copyCoefficients(s,n,0,g,p?1:2**(u+m-a)*(1+r/2048),f+a-1,p,d,h)}m.push({width:n,height:r,items:s})}const x=g.calculate(m,i.tcx0,i.tcy0);return{left:i.tcx0,top:i.tcy0,width:x.width,height:x.height,items:x.items}}function initializeTile(e,t){const n=e.SIZ.Csiz,i=e.tiles[t];for(let t=0;t<n;t++){const n=i.components[t],r=void 0!==e.currentTile.QCC[t]?e.currentTile.QCC[t]:e.currentTile.QCD;n.quantizationParameters=r;const s=void 0!==e.currentTile.COC[t]?e.currentTile.COC[t]:e.currentTile.COD;n.codingStyleParameters=s}i.codingStyleDefaultParameters=e.currentTile.COD}class TagTree{constructor(e,t){const n=(0,r.log2)(Math.max(e,t))+1;this.levels=[];for(let i=0;i<n;i++){const n={width:e,height:t,items:[]};this.levels.push(n);e=Math.ceil(e/2);t=Math.ceil(t/2)}}reset(e,t){let n,i=0,r=0;for(;i<this.levels.length;){n=this.levels[i];const s=e+t*n.width;if(void 0!==n.items[s]){r=n.items[s];break}n.index=s;e>>=1;t>>=1;i++}i--;n=this.levels[i];n.items[n.index]=r;this.currentLevel=i;delete this.value}incrementValue(){const e=this.levels[this.currentLevel];e.items[e.index]++}nextLevel(){let e=this.currentLevel,t=this.levels[e];const n=t.items[t.index];e--;if(e<0){this.value=n;return!1}this.currentLevel=e;t=this.levels[e];t.items[t.index]=n;return!0}}class InclusionTree{constructor(e,t,n){const i=(0,r.log2)(Math.max(e,t))+1;this.levels=[];for(let r=0;r<i;r++){const i=new Uint8Array(e*t);for(let e=0,t=i.length;e<t;e++)i[e]=n;const r={width:e,height:t,items:i};this.levels.push(r);e=Math.ceil(e/2);t=Math.ceil(t/2)}}reset(e,t,n){let i=0;for(;i<this.levels.length;){const r=this.levels[i],s=e+t*r.width;r.index=s;const o=r.items[s];if(255===o)break;if(o>n){this.currentLevel=i;this.propagateValues();return!1}e>>=1;t>>=1;i++}this.currentLevel=i-1;return!0}incrementValue(e){const t=this.levels[this.currentLevel];t.items[t.index]=e+1;this.propagateValues()}propagateValues(){let e=this.currentLevel,t=this.levels[e];const n=t.items[t.index];for(;--e>=0;){t=this.levels[e];t.items[t.index]=n}}nextLevel(){let e=this.currentLevel,t=this.levels[e];const n=t.items[t.index];t.items[t.index]=255;e--;if(e<0)return!1;this.currentLevel=e;t=this.levels[e];t.items[t.index]=n;return!0}}class BitModel{static UNIFORM_CONTEXT=17;static RUNLENGTH_CONTEXT=18;static LLAndLHContextsLabel=new Uint8Array([0,5,8,0,3,7,8,0,4,7,8,0,0,0,0,0,1,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8,0,0,0,0,0,2,6,8,0,3,7,8,0,4,7,8]);static HLContextLabel=new Uint8Array([0,3,4,0,5,7,7,0,8,8,8,0,0,0,0,0,1,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8,0,0,0,0,0,2,3,4,0,6,7,7,0,8,8,8]);static HHContextLabel=new Uint8Array([0,1,2,0,1,2,2,0,2,2,2,0,0,0,0,0,3,4,5,0,4,5,5,0,5,5,5,0,0,0,0,0,6,7,7,0,7,7,7,0,7,7,7,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8,0,0,0,0,0,8,8,8,0,8,8,8,0,8,8,8]);constructor(e,t,n,i,r){this.width=e;this.height=t;let s;s="HH"===n?BitModel.HHContextLabel:"HL"===n?BitModel.HLContextLabel:BitModel.LLAndLHContextsLabel;this.contextLabelTable=s;const o=e*t;this.neighborsSignificance=new Uint8Array(o);this.coefficentsSign=new Uint8Array(o);let a;a=r>14?new Uint32Array(o):r>6?new Uint16Array(o):new Uint8Array(o);this.coefficentsMagnitude=a;this.processingFlags=new Uint8Array(o);const c=new Uint8Array(o);if(0!==i)for(let e=0;e<o;e++)c[e]=i;this.bitsDecoded=c;this.reset()}setDecoder(e){this.decoder=e}reset(){this.contexts=new Int8Array(19);this.contexts[0]=8;this.contexts[BitModel.UNIFORM_CONTEXT]=92;this.contexts[BitModel.RUNLENGTH_CONTEXT]=6}setNeighborsSignificance(e,t,n){const i=this.neighborsSignificance,r=this.width,s=this.height,o=t>0,a=t+1<r;let c;if(e>0){c=n-r;o&&(i[c-1]+=16);a&&(i[c+1]+=16);i[c]+=4}if(e+1<s){c=n+r;o&&(i[c-1]+=16);a&&(i[c+1]+=16);i[c]+=4}o&&(i[n-1]+=1);a&&(i[n+1]+=1);i[n]|=128}runSignificancePropagationPass(){const e=this.decoder,t=this.width,n=this.height,i=this.coefficentsMagnitude,r=this.coefficentsSign,s=this.neighborsSignificance,o=this.processingFlags,a=this.contexts,c=this.contextLabelTable,l=this.bitsDecoded;for(let f=0;f<n;f+=4)for(let d=0;d<t;d++){let h=f*t+d;for(let u=0;u<4;u++,h+=t){const t=f+u;if(t>=n)break;o[h]&=-2;if(i[h]||!s[h])continue;const p=c[s[h]];if(e.readBit(a,p)){const e=this.decodeSignBit(t,d,h);r[h]=e;i[h]=1;this.setNeighborsSignificance(t,d,h);o[h]|=2}l[h]++;o[h]|=1}}}decodeSignBit(e,t,n){const i=this.width,r=this.height,s=this.coefficentsMagnitude,o=this.coefficentsSign;let a,c,l,f,d,h;f=t>0&&0!==s[n-1];if(t+1<i&&0!==s[n+1]){l=o[n+1];if(f){c=o[n-1];a=1-l-c}else a=1-l-l}else if(f){c=o[n-1];a=1-c-c}else a=0;const u=3*a;f=e>0&&0!==s[n-i];if(e+1<r&&0!==s[n+i]){l=o[n+i];if(f){c=o[n-i];a=1-l-c+u}else a=1-l-l+u}else if(f){c=o[n-i];a=1-c-c+u}else a=u;if(a>=0){d=9+a;h=this.decoder.readBit(this.contexts,d)}else{d=9-a;h=1^this.decoder.readBit(this.contexts,d)}return h}runMagnitudeRefinementPass(){const e=this.decoder,t=this.width,n=this.height,i=this.coefficentsMagnitude,r=this.neighborsSignificance,s=this.contexts,o=this.bitsDecoded,a=this.processingFlags,c=t*n,l=4*t;for(let n,f=0;f<c;f=n){n=Math.min(c,f+l);for(let c=0;c<t;c++)for(let l=f+c;l<n;l+=t){if(!i[l]||0!=(1&a[l]))continue;let t=16;if(0!=(2&a[l])){a[l]^=2;t=0===(127&r[l])?15:14}const n=e.readBit(s,t);i[l]=i[l]<<1|n;o[l]++;a[l]|=1}}}runCleanupPass(){const e=this.decoder,t=this.width,n=this.height,i=this.neighborsSignificance,r=this.coefficentsMagnitude,s=this.coefficentsSign,o=this.contexts,a=this.contextLabelTable,c=this.bitsDecoded,l=this.processingFlags,f=t,d=2*t,h=3*t;let u;for(let p=0;p<n;p=u){u=Math.min(p+4,n);const g=p*t,m=p+3<n;for(let n=0;n<t;n++){const b=g+n;let x,y=0,w=b,T=p;if(m&&0===l[b]&&0===l[b+f]&&0===l[b+d]&&0===l[b+h]&&0===i[b]&&0===i[b+f]&&0===i[b+d]&&0===i[b+h]){if(!e.readBit(o,BitModel.RUNLENGTH_CONTEXT)){c[b]++;c[b+f]++;c[b+d]++;c[b+h]++;continue}y=e.readBit(o,BitModel.UNIFORM_CONTEXT)<<1|e.readBit(o,BitModel.UNIFORM_CONTEXT);if(0!==y){T=p+y;w+=y*t}x=this.decodeSignBit(T,n,w);s[w]=x;r[w]=1;this.setNeighborsSignificance(T,n,w);l[w]|=2;w=b;for(let e=p;e<=T;e++,w+=t)c[w]++;y++}for(T=p+y;T<u;T++,w+=t){if(r[w]||0!=(1&l[w]))continue;const t=a[i[w]];if(1===e.readBit(o,t)){x=this.decodeSignBit(T,n,w);s[w]=x;r[w]=1;this.setNeighborsSignificance(T,n,w);l[w]|=2}c[w]++}}}}checkSegmentationSymbol(){const e=this.decoder,t=this.contexts;if(10!==(e.readBit(t,BitModel.UNIFORM_CONTEXT)<<3|e.readBit(t,BitModel.UNIFORM_CONTEXT)<<2|e.readBit(t,BitModel.UNIFORM_CONTEXT)<<1|e.readBit(t,BitModel.UNIFORM_CONTEXT)))throw new JpxError("Invalid segmentation symbol")}}class Transform{constructor(){this.constructor===Transform&&(0,i.unreachable)("Cannot initialize Transform.")}calculate(e,t,n){let i=e[0];for(let r=1,s=e.length;r<s;r++)i=this.iterate(i,e[r],t,n);return i}extend(e,t,n){let i=t-1,r=t+1,s=t+n-2,o=t+n;e[i--]=e[r++];e[o++]=e[s--];e[i--]=e[r++];e[o++]=e[s--];e[i--]=e[r++];e[o++]=e[s--];e[i]=e[r];e[o]=e[s]}filter(e,t,n){(0,i.unreachable)("Abstract method `filter` called")}iterate(e,t,n,i){const r=e.width,s=e.height;let o=e.items;const a=t.width,c=t.height,l=t.items;let f,d,h,u,p,g;for(h=0,f=0;f<s;f++){u=2*f*a;for(d=0;d<r;d++,h++,u+=2)l[u]=o[h]}o=e.items=null;const m=new Float32Array(a+8);if(1===a){if(0!=(1&n))for(g=0,h=0;g<c;g++,h+=a)l[h]*=.5}else for(g=0,h=0;g<c;g++,h+=a){m.set(l.subarray(h,h+a),4);this.extend(m,4,a);this.filter(m,4,a);l.set(m.subarray(4,4+a),h)}let b=16;const x=[];for(f=0;f<b;f++)x.push(new Float32Array(c+8));let y,w=0;e=4+c;if(1===c){if(0!=(1&i))for(p=0;p<a;p++)l[p]*=.5}else for(p=0;p<a;p++){if(0===w){b=Math.min(a-p,b);for(h=p,u=4;u<e;h+=a,u++)for(y=0;y<b;y++)x[y][u]=l[h+y];w=b}w--;const t=x[w];this.extend(t,4,c);this.filter(t,4,c);if(0===w){h=p-b+1;for(u=4;u<e;h+=a,u++)for(y=0;y<b;y++)l[h+y]=x[y][u]}}return{width:a,height:c,items:l}}}class IrreversibleTransform extends Transform{filter(e,t,n){const i=n>>1;let r,s,o,a;const c=-1.586134342059924,l=-.052980118572961,f=.882911075530934,d=.443506852043971,h=1.230174104914001;r=(t|=0)-3;for(s=i+4;s--;r+=2)e[r]*=.8128930661159609;r=t-2;o=d*e[r-1];for(s=i+3;s--;r+=2){a=d*e[r+1];e[r]=h*e[r]-o-a;if(!s--)break;r+=2;o=d*e[r+1];e[r]=h*e[r]-o-a}r=t-1;o=f*e[r-1];for(s=i+2;s--;r+=2){a=f*e[r+1];e[r]-=o+a;if(!s--)break;r+=2;o=f*e[r+1];e[r]-=o+a}r=t;o=l*e[r-1];for(s=i+1;s--;r+=2){a=l*e[r+1];e[r]-=o+a;if(!s--)break;r+=2;o=l*e[r+1];e[r]-=o+a}if(0!==i){r=t+1;o=c*e[r-1];for(s=i;s--;r+=2){a=c*e[r+1];e[r]-=o+a;if(!s--)break;r+=2;o=c*e[r+1];e[r]-=o+a}}}}class ReversibleTransform extends Transform{filter(e,t,n){const i=n>>1;let r,s;for(r=t|=0,s=i+1;s--;r+=2)e[r]-=e[r-1]+e[r+1]+2>>2;for(r=t+1,s=i;s--;r+=2)e[r]+=e[r-1]+e[r+1]>>1}}}],t={};function __w_pdfjs_require__(n){var i=t[n];if(void 0!==i)return i.exports;var r=t[n]={exports:{}};e[n](r,r.exports,__w_pdfjs_require__);return r.exports}var n={};(()=>{var e=n;Object.defineProperty(e,"__esModule",{value:!0});Object.defineProperty(e,"Jbig2Image",{enumerable:!0,get:function(){return i.Jbig2Image}});Object.defineProperty(e,"JpegImage",{enumerable:!0,get:function(){return r.JpegImage}});Object.defineProperty(e,"JpxImage",{enumerable:!0,get:function(){return s.JpxImage}});Object.defineProperty(e,"getVerbosityLevel",{enumerable:!0,get:function(){return t.getVerbosityLevel}});Object.defineProperty(e,"setVerbosityLevel",{enumerable:!0,get:function(){return t.setVerbosityLevel}});var t=__w_pdfjs_require__(1),i=__w_pdfjs_require__(2),r=__w_pdfjs_require__(8),s=__w_pdfjs_require__(10)})();return n})()));