21 | var e={9306:(e,t,r)=>{var n=r(4901),i=r(6823),o=TypeError;e.exports=function(e){if(n(e))return e;throw new o(i(e)+" is not a function")}},3506:(e,t,r)=>{var n=r(3925),i=String,o=TypeError;e.exports=function(e){if(n(e))return e;throw new o("Can't set "+i(e)+" as a prototype")}},7080:(e,t,r)=>{var n=r(4402).has;e.exports=function(e){n(e);return e}},679:(e,t,r)=>{var n=r(1625),i=TypeError;e.exports=function(e,t){if(n(t,e))return e;throw new i("Incorrect invocation")}},8551:(e,t,r)=>{var n=r(34),i=String,o=TypeError;e.exports=function(e){if(n(e))return e;throw new o(i(e)+" is not an object")}},7811:e=>{e.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},7394:(e,t,r)=>{var n=r(6706),i=r(4576),o=TypeError;e.exports=n(ArrayBuffer.prototype,"byteLength","get")||function(e){if("ArrayBuffer"!==i(e))throw new o("ArrayBuffer expected");return e.byteLength}},3238:(e,t,r)=>{var n=r(9504),i=r(7394),o=n(ArrayBuffer.prototype.slice);e.exports=function(e){if(0!==i(e))return!1;try{o(e,0,0);return!1}catch(e){return!0}}},5636:(e,t,r)=>{var n=r(4475),i=r(9504),o=r(6706),s=r(7696),a=r(3238),c=r(7394),l=r(4483),f=r(1548),u=n.structuredClone,h=n.ArrayBuffer,d=n.DataView,p=n.TypeError,g=Math.min,m=h.prototype,b=d.prototype,y=i(m.slice),x=o(m,"resizable","get"),w=o(m,"maxByteLength","get"),v=i(b.getInt8),k=i(b.setInt8);e.exports=(f||l)&&function(e,t,r){var n,i=c(e),o=void 0===t?i:s(t),m=!x||!x(e);if(a(e))throw new p("ArrayBuffer is detached");if(f){e=u(e,{transfer:[e]});if(i===o&&(r||m))return e}if(i>=o&&(!r||m))n=y(e,0,o);else{var b=r&&!m&&w?{maxByteLength:w(e)}:void 0;n=new h(o,b);for(var _=new d(e),C=new d(n),I=g(o,i),T=0;T<I;T++)k(C,T,v(_,T))}f||l(e);return n}},4644:(e,t,r)=>{var n,i,o,s=r(7811),a=r(3724),c=r(4475),l=r(4901),f=r(34),u=r(9297),h=r(6955),d=r(6823),p=r(6699),g=r(6840),m=r(2106),b=r(1625),y=r(2787),x=r(2967),w=r(8227),v=r(3392),k=r(1181),_=k.enforce,C=k.get,I=c.Int8Array,T=I&&I.prototype,P=c.Uint8ClampedArray,S=P&&P.prototype,B=I&&y(I),A=T&&y(T),O=Object.prototype,L=c.TypeError,E=w("toStringTag"),M=v("TYPED_ARRAY_TAG"),D="TypedArrayConstructor",U=s&&!!x&&"Opera"!==h(c.opera),R=!1,z={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},H={BigInt64Array:8,BigUint64Array:8},getTypedArrayConstructor=function(e){var t=y(e);if(f(t)){var r=C(t);return r&&u(r,D)?r[D]:getTypedArrayConstructor(t)}},isTypedArray=function(e){if(!f(e))return!1;var t=h(e);return u(z,t)||u(H,t)};for(n in z)(o=(i=c[n])&&i.prototype)?_(o)[D]=i:U=!1;for(n in H)(o=(i=c[n])&&i.prototype)&&(_(o)[D]=i);if(!U||!l(B)||B===Function.prototype){B=function TypedArray(){throw new L("Incorrect invocation")};if(U)for(n in z)c[n]&&x(c[n],B)}if(!U||!A||A===O){A=B.prototype;if(U)for(n in z)c[n]&&x(c[n].prototype,A)}U&&y(S)!==A&&x(S,A);if(a&&!u(A,E)){R=!0;m(A,E,{configurable:!0,get:function(){return f(this)?this[M]:void 0}});for(n in z)c[n]&&p(c[n],M,n)}e.exports={NATIVE_ARRAY_BUFFER_VIEWS:U,TYPED_ARRAY_TAG:R&&M,aTypedArray:function(e){if(isTypedArray(e))return e;throw new L("Target is not a typed array")},aTypedArrayConstructor:function(e){if(l(e)&&(!x||b(B,e)))return e;throw new L(d(e)+" is not a typed array constructor")},exportTypedArrayMethod:function(e,t,r,n){if(a){if(r)for(var i in z){var o=c[i];if(o&&u(o.prototype,e))try{delete o.prototype[e]}catch(r){try{o.prototype[e]=t}catch(e){}}}A[e]&&!r||g(A,e,r?t:U&&T[e]||t,n)}},exportTypedArrayStaticMethod:function(e,t,r){var n,i;if(a){if(x){if(r)for(n in z)if((i=c[n])&&u(i,e))try{delete i[e]}catch(e){}if(B[e]&&!r)return;try{return g(B,e,r?t:U&&B[e]||t)}catch(e){}}for(n in z)!(i=c[n])||i[e]&&!r||g(i,e,t)}},getTypedArrayConstructor,isView:function isView(e){if(!f(e))return!1;var t=h(e);return"DataView"===t||u(z,t)||u(H,t)},isTypedArray,TypedArray:B,TypedArrayPrototype:A}},5370:(e,t,r)=>{var n=r(6198);e.exports=function(e,t,r){for(var i=0,o=arguments.length>2?r:n(t),s=new e(o);o>i;)s[i]=t[i++];return s}},9617:(e,t,r)=>{var n=r(5397),i=r(5610),o=r(6198),createMethod=function(e){return function(t,r,s){var a=n(t),c=o(a);if(0===c)return!e&&-1;var l,f=i(s,c);if(e&&r!=r){for(;c>f;)if((l=a[f++])!=l)return!0}else for(;c>f;f++)if((e||f in a)&&a[f]===r)return e||f||0;return!e&&-1}};e.exports={includes:createMethod(!0),indexOf:createMethod(!1)}},4527:(e,t,r)=>{var n=r(3724),i=r(4376),o=TypeError,s=Object.getOwnPropertyDescriptor,a=n&&!function(){if(void 0!==this)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}();e.exports=a?function(e,t){if(i(e)&&!s(e,"length").writable)throw new o("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t}},7628:(e,t,r)=>{var n=r(6198);e.exports=function(e,t){for(var r=n(e),i=new t(r),o=0;o<r;o++)i[o]=e[r-o-1];return i}},9928:(e,t,r)=>{var n=r(6198),i=r(1291),o=RangeError;e.exports=function(e,t,r,s){var a=n(e),c=i(r),l=c<0?a+c:c;if(l>=a||l<0)throw new o("Incorrect index");for(var f=new t(a),u=0;u<a;u++)f[u]=u===l?s:e[u];return f}},6319:(e,t,r)=>{var n=r(8551),i=r(9539);e.exports=function(e,t,r,o){try{return o?t(n(r)[0],r[1]):t(r)}catch(t){i(e,"throw",t)}}},4576:(e,t,r)=>{var n=r(9504),i=n({}.toString),o=n("".slice);e.exports=function(e){return o(i(e),8,-1)}},6955:(e,t,r)=>{var n=r(2140),i=r(4901),o=r(4576),s=r(8227)("toStringTag"),a=Object,c="Arguments"===o(function(){return arguments}());e.exports=n?o:function(e){var t,r,n;return void 0===e?"Undefined":null===e?"Null":"string"==typeof(r=function(e,t){try{return e[t]}catch(e){}}(t=a(e),s))?r:c?o(t):"Object"===(n=o(t))&&i(t.callee)?"Arguments":n}},7740:(e,t,r)=>{var n=r(9297),i=r(5031),o=r(7347),s=r(4913);e.exports=function(e,t,r){for(var a=i(t),c=s.f,l=o.f,f=0;f<a.length;f++){var u=a[f];n(e,u)||r&&n(r,u)||c(e,u,l(t,u))}}},2211:(e,t,r)=>{var n=r(9039);e.exports=!n((function(){function F(){}F.prototype.constructor=null;return Object.getPrototypeOf(new F)!==F.prototype}))},2529:e=>{e.exports=function(e,t){return{value:e,done:t}}},6699:(e,t,r)=>{var n=r(3724),i=r(4913),o=r(6980);e.exports=n?function(e,t,r){return i.f(e,t,o(1,r))}:function(e,t,r){e[t]=r;return e}},6980:e=>{e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},4659:(e,t,r)=>{var n=r(3724),i=r(4913),o=r(6980);e.exports=function(e,t,r){n?i.f(e,t,o(0,r)):e[t]=r}},2106:(e,t,r)=>{var n=r(283),i=r(4913);e.exports=function(e,t,r){r.get&&n(r.get,t,{getter:!0});r.set&&n(r.set,t,{setter:!0});return i.f(e,t,r)}},6840:(e,t,r)=>{var n=r(4901),i=r(4913),o=r(283),s=r(9433);e.exports=function(e,t,r,a){a||(a={});var c=a.enumerable,l=void 0!==a.name?a.name:t;n(r)&&o(r,l,a);if(a.global)c?e[t]=r:s(t,r);else{try{a.unsafe?e[t]&&(c=!0):delete e[t]}catch(e){}c?e[t]=r:i.f(e,t,{value:r,enumerable:!1,configurable:!a.nonConfigurable,writable:!a.nonWritable})}return e}},6279:(e,t,r)=>{var n=r(6840);e.exports=function(e,t,r){for(var i in t)n(e,i,t[i],r);return e}},9433:(e,t,r)=>{var n=r(4475),i=Object.defineProperty;e.exports=function(e,t){try{i(n,e,{value:t,configurable:!0,writable:!0})}catch(r){n[e]=t}return t}},3724:(e,t,r)=>{var n=r(9039);e.exports=!n((function(){return 7!==Object.defineProperty({},1,{get:function(){return 7}})[1]}))},4483:(e,t,r)=>{var n,i,o,s,a=r(4475),c=r(9714),l=r(1548),f=a.structuredClone,u=a.ArrayBuffer,h=a.MessageChannel,d=!1;if(l)d=function(e){f(e,{transfer:[e]})};else if(u)try{h||(n=c("worker_threads"))&&(h=n.MessageChannel);if(h){i=new h;o=new u(2);s=function(e){i.port1.postMessage(null,[e])};if(2===o.byteLength){s(o);0===o.byteLength&&(d=s)}}}catch(e){}e.exports=d},4055:(e,t,r)=>{var n=r(4475),i=r(34),o=n.document,s=i(o)&&i(o.createElement);e.exports=function(e){return s?o.createElement(e):{}}},6837:e=>{var t=TypeError;e.exports=function(e){if(e>9007199254740991)throw t("Maximum allowed index exceeded");return e}},7290:(e,t,r)=>{var n=r(516),i=r(9088);e.exports=!n&&!i&&"object"==typeof window&&"object"==typeof document},516:e=>{e.exports="object"==typeof Deno&&Deno&&"object"==typeof Deno.version},9088:(e,t,r)=>{var n=r(4475),i=r(4576);e.exports="process"===i(n.process)},9392:e=>{e.exports="undefined"!=typeof navigator&&String(navigator.userAgent)||""},7388:(e,t,r)=>{var n,i,o=r(4475),s=r(9392),a=o.process,c=o.Deno,l=a&&a.versions||c&&c.version,f=l&&l.v8;f&&(i=(n=f.split("."))[0]>0&&n[0]<4?1:+(n[0]+n[1]));!i&&s&&(!(n=s.match(/Edge\/(\d+)/))||n[1]>=74)&&(n=s.match(/Chrome\/(\d+)/))&&(i=+n[1]);e.exports=i},8727:e=>{e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},6518:(e,t,r)=>{var n=r(4475),i=r(7347).f,o=r(6699),s=r(6840),a=r(9433),c=r(7740),l=r(2796);e.exports=function(e,t){var r,f,u,h,d,p=e.target,g=e.global,m=e.stat;if(r=g?n:m?n[p]||a(p,{}):n[p]&&n[p].prototype)for(f in t){h=t[f];u=e.dontCallGetSet?(d=i(r,f))&&d.value:r[f];if(!l(g?f:p+(m?".":"#")+f,e.forced)&&void 0!==u){if(typeof h==typeof u)continue;c(h,u)}(e.sham||u&&u.sham)&&o(h,"sham",!0);s(r,f,h,e)}}},9039:e=>{e.exports=function(e){try{return!!e()}catch(e){return!0}}},616:(e,t,r)=>{var n=r(9039);e.exports=!n((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},9565:(e,t,r)=>{var n=r(616),i=Function.prototype.call;e.exports=n?i.bind(i):function(){return i.apply(i,arguments)}},350:(e,t,r)=>{var n=r(3724),i=r(9297),o=Function.prototype,s=n&&Object.getOwnPropertyDescriptor,a=i(o,"name"),c=a&&"something"===function something(){}.name,l=a&&(!n||n&&s(o,"name").configurable);e.exports={EXISTS:a,PROPER:c,CONFIGURABLE:l}},6706:(e,t,r)=>{var n=r(9504),i=r(9306);e.exports=function(e,t,r){try{return n(i(Object.getOwnPropertyDescriptor(e,t)[r]))}catch(e){}}},9504:(e,t,r)=>{var n=r(616),i=Function.prototype,o=i.call,s=n&&i.bind.bind(o,o);e.exports=n?s:function(e){return function(){return o.apply(e,arguments)}}},7751:(e,t,r)=>{var n=r(4475),i=r(4901);e.exports=function(e,t){return arguments.length<2?(r=n[e],i(r)?r:void 0):n[e]&&n[e][t];var r}},1767:e=>{e.exports=function(e){return{iterator:e,next:e.next,done:!1}}},5966:(e,t,r)=>{var n=r(9306),i=r(4117);e.exports=function(e,t){var r=e[t];return i(r)?void 0:n(r)}},3789:(e,t,r)=>{var n=r(9306),i=r(8551),o=r(9565),s=r(1291),a=r(1767),c="Invalid size",l=RangeError,f=TypeError,u=Math.max,SetRecord=function(e,t){this.set=e;this.size=u(t,0);this.has=n(e.has);this.keys=n(e.keys)};SetRecord.prototype={getIterator:function(){return a(i(o(this.keys,this.set)))},includes:function(e){return o(this.has,this.set,e)}};e.exports=function(e){i(e);var t=+e.size;if(t!=t)throw new f(c);var r=s(t);if(r<0)throw new l(c);return new SetRecord(e,r)}},4475:function(e){var check=function(e){return e&&e.Math===Math&&e};e.exports=check("object"==typeof globalThis&&globalThis)||check("object"==typeof window&&window)||check("object"==typeof self&&self)||check("object"==typeof global&&global)||check("object"==typeof this&&this)||function(){return this}()||Function("return this")()},9297:(e,t,r)=>{var n=r(9504),i=r(8981),o=n({}.hasOwnProperty);e.exports=Object.hasOwn||function hasOwn(e,t){return o(i(e),t)}},421:e=>{e.exports={}},397:(e,t,r)=>{var n=r(7751);e.exports=n("document","documentElement")},5917:(e,t,r)=>{var n=r(3724),i=r(9039),o=r(4055);e.exports=!n&&!i((function(){return 7!==Object.defineProperty(o("div"),"a",{get:function(){return 7}}).a}))},7055:(e,t,r)=>{var n=r(9504),i=r(9039),o=r(4576),s=Object,a=n("".split);e.exports=i((function(){return!s("z").propertyIsEnumerable(0)}))?function(e){return"String"===o(e)?a(e,""):s(e)}:s},3706:(e,t,r)=>{var n=r(9504),i=r(4901),o=r(7629),s=n(Function.toString);i(o.inspectSource)||(o.inspectSource=function(e){return s(e)});e.exports=o.inspectSource},1181:(e,t,r)=>{var n,i,o,s=r(8622),a=r(4475),c=r(34),l=r(6699),f=r(9297),u=r(7629),h=r(6119),d=r(421),p="Object already initialized",g=a.TypeError,m=a.WeakMap;if(s||u.state){var b=u.state||(u.state=new m);b.get=b.get;b.has=b.has;b.set=b.set;n=function(e,t){if(b.has(e))throw new g(p);t.facade=e;b.set(e,t);return t};i=function(e){return b.get(e)||{}};o=function(e){return b.has(e)}}else{var y=h("state");d[y]=!0;n=function(e,t){if(f(e,y))throw new g(p);t.facade=e;l(e,y,t);return t};i=function(e){return f(e,y)?e[y]:{}};o=function(e){return f(e,y)}}e.exports={set:n,get:i,has:o,enforce:function(e){return o(e)?i(e):n(e,{})},getterFor:function(e){return function(t){var r;if(!c(t)||(r=i(t)).type!==e)throw new g("Incompatible receiver, "+e+" required");return r}}}},4376:(e,t,r)=>{var n=r(4576);e.exports=Array.isArray||function isArray(e){return"Array"===n(e)}},1108:(e,t,r)=>{var n=r(6955);e.exports=function(e){var t=n(e);return"BigInt64Array"===t||"BigUint64Array"===t}},4901:e=>{var t="object"==typeof document&&document.all;e.exports=void 0===t&&void 0!==t?function(e){return"function"==typeof e||e===t}:function(e){return"function"==typeof e}},2796:(e,t,r)=>{var n=r(9039),i=r(4901),o=/#|\.prototype\./,isForced=function(e,t){var r=a[s(e)];return r===l||r!==c&&(i(t)?n(t):!!t)},s=isForced.normalize=function(e){return String(e).replace(o,".").toLowerCase()},a=isForced.data={},c=isForced.NATIVE="N",l=isForced.POLYFILL="P";e.exports=isForced},4117:e=>{e.exports=function(e){return null==e}},34:(e,t,r)=>{var n=r(4901);e.exports=function(e){return"object"==typeof e?null!==e:n(e)}},3925:(e,t,r)=>{var n=r(34);e.exports=function(e){return n(e)||null===e}},6395:e=>{e.exports=!1},757:(e,t,r)=>{var n=r(7751),i=r(4901),o=r(1625),s=r(7040),a=Object;e.exports=s?function(e){return"symbol"==typeof e}:function(e){var t=n("Symbol");return i(t)&&o(t.prototype,a(e))}},507:(e,t,r)=>{var n=r(9565);e.exports=function(e,t,r){for(var i,o,s=r?e:e.iterator,a=e.next;!(i=n(a,s)).done;)if(void 0!==(o=t(i.value)))return o}},9539:(e,t,r)=>{var n=r(9565),i=r(8551),o=r(5966);e.exports=function(e,t,r){var s,a;i(e);try{if(!(s=o(e,"return"))){if("throw"===t)throw r;return r}s=n(s,e)}catch(e){a=!0;s=e}if("throw"===t)throw r;if(a)throw s;i(s);return r}},9462:(e,t,r)=>{var n=r(9565),i=r(2360),o=r(6699),s=r(6279),a=r(8227),c=r(1181),l=r(5966),f=r(7657).IteratorPrototype,u=r(2529),h=r(9539),d=a("toStringTag"),p="IteratorHelper",g="WrapForValidIterator",m=c.set,createIteratorProxyPrototype=function(e){var t=c.getterFor(e?g:p);return s(i(f),{next:function next(){var r=t(this);if(e)return r.nextHandler();try{var n=r.done?void 0:r.nextHandler();return u(n,r.done)}catch(e){r.done=!0;throw e}},return:function(){var r=t(this),i=r.iterator;r.done=!0;if(e){var o=l(i,"return");return o?n(o,i):u(void 0,!0)}if(r.inner)try{h(r.inner.iterator,"normal")}catch(e){return h(i,"throw",e)}h(i,"normal");return u(void 0,!0)}})},b=createIteratorProxyPrototype(!0),y=createIteratorProxyPrototype(!1);o(y,d,"Iterator Helper");e.exports=function(e,t){var r=function Iterator(r,n){if(n){n.iterator=r.iterator;n.next=r.next}else n=r;n.type=t?g:p;n.nextHandler=e;n.counter=0;n.done=!1;m(this,n)};r.prototype=t?b:y;return r}},713:(e,t,r)=>{var n=r(9565),i=r(9306),o=r(8551),s=r(1767),a=r(9462),c=r(6319),l=a((function(){var e=this.iterator,t=o(n(this.next,e));if(!(this.done=!!t.done))return c(e,this.mapper,[t.value,this.counter++],!0)}));e.exports=function map(e){o(this);i(e);return new l(s(this),{mapper:e})}},7657:(e,t,r)=>{var n,i,o,s=r(9039),a=r(4901),c=r(34),l=r(2360),f=r(2787),u=r(6840),h=r(8227),d=r(6395),p=h("iterator"),g=!1;[].keys&&("next"in(o=[].keys())?(i=f(f(o)))!==Object.prototype&&(n=i):g=!0);!c(n)||s((function(){var e={};return n[p].call(e)!==e}))?n={}:d&&(n=l(n));a(n[p])||u(n,p,(function(){return this}));e.exports={IteratorPrototype:n,BUGGY_SAFARI_ITERATORS:g}},6198:(e,t,r)=>{var n=r(8014);e.exports=function(e){return n(e.length)}},283:(e,t,r)=>{var n=r(9504),i=r(9039),o=r(4901),s=r(9297),a=r(3724),c=r(350).CONFIGURABLE,l=r(3706),f=r(1181),u=f.enforce,h=f.get,d=String,p=Object.defineProperty,g=n("".slice),m=n("".replace),b=n([].join),y=a&&!i((function(){return 8!==p((function(){}),"length",{value:8}).length})),x=String(String).split("String"),w=e.exports=function(e,t,r){"Symbol("===g(d(t),0,7)&&(t="["+m(d(t),/^Symbol\(([^)]*)\).*$/,"$1")+"]");r&&r.getter&&(t="get "+t);r&&r.setter&&(t="set "+t);(!s(e,"name")||c&&e.name!==t)&&(a?p(e,"name",{value:t,configurable:!0}):e.name=t);y&&r&&s(r,"arity")&&e.length!==r.arity&&p(e,"length",{value:r.arity});try{r&&s(r,"constructor")&&r.constructor?a&&p(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=void 0)}catch(e){}var n=u(e);s(n,"source")||(n.source=b(x,"string"==typeof t?t:""));return e};Function.prototype.toString=w((function toString(){return o(this)&&h(this).source||l(this)}),"toString")},741:e=>{var t=Math.ceil,r=Math.floor;e.exports=Math.trunc||function trunc(e){var n=+e;return(n>0?r:t)(n)}},2360:(e,t,r)=>{var n,i=r(8551),o=r(6801),s=r(8727),a=r(421),c=r(397),l=r(4055),f=r(6119),u="prototype",h="script",d=f("IE_PROTO"),EmptyConstructor=function(){},scriptTag=function(e){return"<"+h+">"+e+"</"+h+">"},NullProtoObjectViaActiveX=function(e){e.write(scriptTag(""));e.close();var t=e.parentWindow.Object;e=null;return t},NullProtoObject=function(){try{n=new ActiveXObject("htmlfile")}catch(e){}NullProtoObject="undefined"!=typeof document?document.domain&&n?NullProtoObjectViaActiveX(n):function(){var e,t=l("iframe"),r="java"+h+":";t.style.display="none";c.appendChild(t);t.src=String(r);(e=t.contentWindow.document).open();e.write(scriptTag("document.F=Object"));e.close();return e.F}():NullProtoObjectViaActiveX(n);for(var e=s.length;e--;)delete NullProtoObject[u][s[e]];return NullProtoObject()};a[d]=!0;e.exports=Object.create||function create(e,t){var r;if(null!==e){EmptyConstructor[u]=i(e);r=new EmptyConstructor;EmptyConstructor[u]=null;r[d]=e}else r=NullProtoObject();return void 0===t?r:o.f(r,t)}},6801:(e,t,r)=>{var n=r(3724),i=r(8686),o=r(4913),s=r(8551),a=r(5397),c=r(1072);t.f=n&&!i?Object.defineProperties:function defineProperties(e,t){s(e);for(var r,n=a(t),i=c(t),l=i.length,f=0;l>f;)o.f(e,r=i[f++],n[r]);return e}},4913:(e,t,r)=>{var n=r(3724),i=r(5917),o=r(8686),s=r(8551),a=r(6969),c=TypeError,l=Object.defineProperty,f=Object.getOwnPropertyDescriptor,u="enumerable",h="configurable",d="writable";t.f=n?o?function defineProperty(e,t,r){s(e);t=a(t);s(r);if("function"==typeof e&&"prototype"===t&&"value"in r&&d in r&&!r[d]){var n=f(e,t);if(n&&n[d]){e[t]=r.value;r={configurable:h in r?r[h]:n[h],enumerable:u in r?r[u]:n[u],writable:!1}}}return l(e,t,r)}:l:function defineProperty(e,t,r){s(e);t=a(t);s(r);if(i)try{return l(e,t,r)}catch(e){}if("get"in r||"set"in r)throw new c("Accessors not supported");"value"in r&&(e[t]=r.value);return e}},7347:(e,t,r)=>{var n=r(3724),i=r(9565),o=r(8773),s=r(6980),a=r(5397),c=r(6969),l=r(9297),f=r(5917),u=Object.getOwnPropertyDescriptor;t.f=n?u:function getOwnPropertyDescriptor(e,t){e=a(e);t=c(t);if(f)try{return u(e,t)}catch(e){}if(l(e,t))return s(!i(o.f,e,t),e[t])}},8480:(e,t,r)=>{var n=r(1828),i=r(8727).concat("length","prototype");t.f=Object.getOwnPropertyNames||function getOwnPropertyNames(e){return n(e,i)}},3717:(e,t)=>{t.f=Object.getOwnPropertySymbols},2787:(e,t,r)=>{var n=r(9297),i=r(4901),o=r(8981),s=r(6119),a=r(2211),c=s("IE_PROTO"),l=Object,f=l.prototype;e.exports=a?l.getPrototypeOf:function(e){var t=o(e);if(n(t,c))return t[c];var r=t.constructor;return i(r)&&t instanceof r?r.prototype:t instanceof l?f:null}},1625:(e,t,r)=>{var n=r(9504);e.exports=n({}.isPrototypeOf)},1828:(e,t,r)=>{var n=r(9504),i=r(9297),o=r(5397),s=r(9617).indexOf,a=r(421),c=n([].push);e.exports=function(e,t){var r,n=o(e),l=0,f=[];for(r in n)!i(a,r)&&i(n,r)&&c(f,r);for(;t.length>l;)i(n,r=t[l++])&&(~s(f,r)||c(f,r));return f}},1072:(e,t,r)=>{var n=r(1828),i=r(8727);e.exports=Object.keys||function keys(e){return n(e,i)}},8773:(e,t)=>{var r={}.propertyIsEnumerable,n=Object.getOwnPropertyDescriptor,i=n&&!r.call({1:2},1);t.f=i?function propertyIsEnumerable(e){var t=n(this,e);return!!t&&t.enumerable}:r},2967:(e,t,r)=>{var n=r(6706),i=r(34),o=r(7750),s=r(3506);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,r={};try{(e=n(Object.prototype,"__proto__","set"))(r,[]);t=r instanceof Array}catch(e){}return function setPrototypeOf(r,n){o(r);s(n);if(!i(r))return r;t?e(r,n):r.__proto__=n;return r}}():void 0)},4270:(e,t,r)=>{var n=r(9565),i=r(4901),o=r(34),s=TypeError;e.exports=function(e,t){var r,a;if("string"===t&&i(r=e.toString)&&!o(a=n(r,e)))return a;if(i(r=e.valueOf)&&!o(a=n(r,e)))return a;if("string"!==t&&i(r=e.toString)&&!o(a=n(r,e)))return a;throw new s("Can't convert object to primitive value")}},5031:(e,t,r)=>{var n=r(7751),i=r(9504),o=r(8480),s=r(3717),a=r(8551),c=i([].concat);e.exports=n("Reflect","ownKeys")||function ownKeys(e){var t=o.f(a(e)),r=s.f;return r?c(t,r(e)):t}},7750:(e,t,r)=>{var n=r(4117),i=TypeError;e.exports=function(e){if(n(e))throw new i("Can't call method on "+e);return e}},9286:(e,t,r)=>{var n=r(4402),i=r(8469),o=n.Set,s=n.add;e.exports=function(e){var t=new o;i(e,(function(e){s(t,e)}));return t}},3440:(e,t,r)=>{var n=r(7080),i=r(4402),o=r(9286),s=r(5170),a=r(3789),c=r(8469),l=r(507),f=i.has,u=i.remove;e.exports=function difference(e){var t=n(this),r=a(e),i=o(t);s(t)<=r.size?c(t,(function(e){r.includes(e)&&u(i,e)})):l(r.getIterator(),(function(e){f(t,e)&&u(i,e)}));return i}},4402:(e,t,r)=>{var n=r(9504),i=Set.prototype;e.exports={Set,add:n(i.add),has:n(i.has),remove:n(i.delete),proto:i}},8750:(e,t,r)=>{var n=r(7080),i=r(4402),o=r(5170),s=r(3789),a=r(8469),c=r(507),l=i.Set,f=i.add,u=i.has;e.exports=function intersection(e){var t=n(this),r=s(e),i=new l;o(t)>r.size?c(r.getIterator(),(function(e){u(t,e)&&f(i,e)})):a(t,(function(e){r.includes(e)&&f(i,e)}));return i}},4449:(e,t,r)=>{var n=r(7080),i=r(4402).has,o=r(5170),s=r(3789),a=r(8469),c=r(507),l=r(9539);e.exports=function isDisjointFrom(e){var t=n(this),r=s(e);if(o(t)<=r.size)return!1!==a(t,(function(e){if(r.includes(e))return!1}),!0);var f=r.getIterator();return!1!==c(f,(function(e){if(i(t,e))return l(f,"normal",!1)}))}},3838:(e,t,r)=>{var n=r(7080),i=r(5170),o=r(8469),s=r(3789);e.exports=function isSubsetOf(e){var t=n(this),r=s(e);return!(i(t)>r.size)&&!1!==o(t,(function(e){if(!r.includes(e))return!1}),!0)}},8527:(e,t,r)=>{var n=r(7080),i=r(4402).has,o=r(5170),s=r(3789),a=r(507),c=r(9539);e.exports=function isSupersetOf(e){var t=n(this),r=s(e);if(o(t)<r.size)return!1;var l=r.getIterator();return!1!==a(l,(function(e){if(!i(t,e))return c(l,"normal",!1)}))}},8469:(e,t,r)=>{var n=r(9504),i=r(507),o=r(4402),s=o.Set,a=o.proto,c=n(a.forEach),l=n(a.keys),f=l(new s).next;e.exports=function(e,t,r){return r?i({iterator:l(e),next:f},t):c(e,t)}},4916:(e,t,r)=>{var n=r(7751),createSetLike=function(e){return{size:e,has:function(){return!1},keys:function(){return{next:function(){return{done:!0}}}}}};e.exports=function(e){var t=n("Set");try{(new t)[e](createSetLike(0));try{(new t)[e](createSetLike(-1));return!1}catch(e){return!0}}catch(e){return!1}}},5170:(e,t,r)=>{var n=r(6706),i=r(4402);e.exports=n(i.proto,"size","get")||function(e){return e.size}},3650:(e,t,r)=>{var n=r(7080),i=r(4402),o=r(9286),s=r(3789),a=r(507),c=i.add,l=i.has,f=i.remove;e.exports=function symmetricDifference(e){var t=n(this),r=s(e).getIterator(),i=o(t);a(r,(function(e){l(t,e)?f(i,e):c(i,e)}));return i}},4204:(e,t,r)=>{var n=r(7080),i=r(4402).add,o=r(9286),s=r(3789),a=r(507);e.exports=function union(e){var t=n(this),r=s(e).getIterator(),c=o(t);a(r,(function(e){i(c,e)}));return c}},6119:(e,t,r)=>{var n=r(5745),i=r(3392),o=n("keys");e.exports=function(e){return o[e]||(o[e]=i(e))}},7629:(e,t,r)=>{var n=r(6395),i=r(4475),o=r(9433),s="__core-js_shared__",a=e.exports=i[s]||o(s,{});(a.versions||(a.versions=[])).push({version:"3.36.1",mode:n?"pure":"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.36.1/LICENSE",source:"https://github.com/zloirock/core-js"})},5745:(e,t,r)=>{var n=r(7629);e.exports=function(e,t){return n[e]||(n[e]=t||{})}},1548:(e,t,r)=>{var n=r(4475),i=r(9039),o=r(7388),s=r(7290),a=r(516),c=r(9088),l=n.structuredClone;e.exports=!!l&&!i((function(){if(a&&o>92||c&&o>94||s&&o>97)return!1;var e=new ArrayBuffer(8),t=l(e,{transfer:[e]});return 0!==e.byteLength||8!==t.byteLength}))},4495:(e,t,r)=>{var n=r(7388),i=r(9039),o=r(4475).String;e.exports=!!Object.getOwnPropertySymbols&&!i((function(){var e=Symbol("symbol detection");return!o(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&n&&n<41}))},5610:(e,t,r)=>{var n=r(1291),i=Math.max,o=Math.min;e.exports=function(e,t){var r=n(e);return r<0?i(r+t,0):o(r,t)}},5854:(e,t,r)=>{var n=r(2777),i=TypeError;e.exports=function(e){var t=n(e,"number");if("number"==typeof t)throw new i("Can't convert number to bigint");return BigInt(t)}},7696:(e,t,r)=>{var n=r(1291),i=r(8014),o=RangeError;e.exports=function(e){if(void 0===e)return 0;var t=n(e),r=i(t);if(t!==r)throw new o("Wrong length or index");return r}},5397:(e,t,r)=>{var n=r(7055),i=r(7750);e.exports=function(e){return n(i(e))}},1291:(e,t,r)=>{var n=r(741);e.exports=function(e){var t=+e;return t!=t||0===t?0:n(t)}},8014:(e,t,r)=>{var n=r(1291),i=Math.min;e.exports=function(e){var t=n(e);return t>0?i(t,9007199254740991):0}},8981:(e,t,r)=>{var n=r(7750),i=Object;e.exports=function(e){return i(n(e))}},2777:(e,t,r)=>{var n=r(9565),i=r(34),o=r(757),s=r(5966),a=r(4270),c=r(8227),l=TypeError,f=c("toPrimitive");e.exports=function(e,t){if(!i(e)||o(e))return e;var r,c=s(e,f);if(c){void 0===t&&(t="default");r=n(c,e,t);if(!i(r)||o(r))return r;throw new l("Can't convert object to primitive value")}void 0===t&&(t="number");return a(e,t)}},6969:(e,t,r)=>{var n=r(2777),i=r(757);e.exports=function(e){var t=n(e,"string");return i(t)?t:t+""}},2140:(e,t,r)=>{var n={};n[r(8227)("toStringTag")]="z";e.exports="[object z]"===String(n)},655:(e,t,r)=>{var n=r(6955),i=String;e.exports=function(e){if("Symbol"===n(e))throw new TypeError("Cannot convert a Symbol value to a string");return i(e)}},9714:(e,t,r)=>{var n=r(9088);e.exports=function(e){try{if(n)return Function('return require("'+e+'")')()}catch(e){}}},6823:e=>{var t=String;e.exports=function(e){try{return t(e)}catch(e){return"Object"}}},3392:(e,t,r)=>{var n=r(9504),i=0,o=Math.random(),s=n(1..toString);e.exports=function(e){return"Symbol("+(void 0===e?"":e)+")_"+s(++i+o,36)}},7040:(e,t,r)=>{var n=r(4495);e.exports=n&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},8686:(e,t,r)=>{var n=r(3724),i=r(9039);e.exports=n&&i((function(){return 42!==Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},2812:e=>{var t=TypeError;e.exports=function(e,r){if(e<r)throw new t("Not enough arguments");return e}},8622:(e,t,r)=>{var n=r(4475),i=r(4901),o=n.WeakMap;e.exports=i(o)&&/native code/.test(String(o))},8227:(e,t,r)=>{var n=r(4475),i=r(5745),o=r(9297),s=r(3392),a=r(4495),c=r(7040),l=n.Symbol,f=i("wks"),u=c?l.for||l:l&&l.withoutSetter||s;e.exports=function(e){o(f,e)||(f[e]=a&&o(l,e)?l[e]:u("Symbol."+e));return f[e]}},6573:(e,t,r)=>{var n=r(3724),i=r(2106),o=r(3238),s=ArrayBuffer.prototype;n&&!("detached"in s)&&i(s,"detached",{configurable:!0,get:function detached(){return o(this)}})},7936:(e,t,r)=>{var n=r(6518),i=r(5636);i&&n({target:"ArrayBuffer",proto:!0},{transferToFixedLength:function transferToFixedLength(){return i(this,arguments.length?arguments[0]:void 0,!1)}})},8100:(e,t,r)=>{var n=r(6518),i=r(5636);i&&n({target:"ArrayBuffer",proto:!0},{transfer:function transfer(){return i(this,arguments.length?arguments[0]:void 0,!0)}})},4114:(e,t,r)=>{var n=r(6518),i=r(8981),o=r(6198),s=r(4527),a=r(6837);n({target:"Array",proto:!0,arity:1,forced:r(9039)((function(){return 4294967297!==[].push.call({length:4294967296},1)}))||!function(){try{Object.defineProperty([],"length",{writable:!1}).push()}catch(e){return e instanceof TypeError}}()},{push:function push(e){var t=i(this),r=o(t),n=arguments.length;a(r+n);for(var c=0;c<n;c++){t[r]=arguments[c];r++}s(t,r);return r}})},7467:(e,t,r)=>{var n=r(7628),i=r(4644),o=i.aTypedArray,s=i.exportTypedArrayMethod,a=i.getTypedArrayConstructor;s("toReversed",(function toReversed(){return n(o(this),a(this))}))},4732:(e,t,r)=>{var n=r(4644),i=r(9504),o=r(9306),s=r(5370),a=n.aTypedArray,c=n.getTypedArrayConstructor,l=n.exportTypedArrayMethod,f=i(n.TypedArrayPrototype.sort);l("toSorted",(function toSorted(e){void 0!==e&&o(e);var t=a(this),r=s(c(t),t);return f(r,e)}))},9577:(e,t,r)=>{var n=r(9928),i=r(4644),o=r(1108),s=r(1291),a=r(5854),c=i.aTypedArray,l=i.getTypedArrayConstructor,f=i.exportTypedArrayMethod,u=!!function(){try{new Int8Array(1).with(2,{valueOf:function(){throw 8}})}catch(e){return 8===e}}();f("with",{with:function(e,t){var r=c(this),i=s(e),f=o(r)?a(t):+t;return n(r,l(r),i,f)}}.with,!u)},8992:(e,t,r)=>{var n=r(6518),i=r(4475),o=r(679),s=r(8551),a=r(4901),c=r(2787),l=r(2106),f=r(4659),u=r(9039),h=r(9297),d=r(8227),p=r(7657).IteratorPrototype,g=r(3724),m=r(6395),b="constructor",y="Iterator",x=d("toStringTag"),w=TypeError,v=i[y],k=m||!a(v)||v.prototype!==p||!u((function(){v({})})),_=function Iterator(){o(this,p);if(c(this)===p)throw new w("Abstract class Iterator not directly constructable")},defineIteratorPrototypeAccessor=function(e,t){g?l(p,e,{configurable:!0,get:function(){return t},set:function(t){s(this);if(this===p)throw new w("You can't redefine this property");h(this,e)?this[e]=t:f(this,e,t)}}):p[e]=t};h(p,x)||defineIteratorPrototypeAccessor(x,y);!k&&h(p,b)&&p[b]!==Object||defineIteratorPrototypeAccessor(b,_);_.prototype=p;n({global:!0,constructor:!0,forced:k},{Iterator:_})},4520:(e,t,r)=>{var n=r(6518),i=r(9565),o=r(9306),s=r(8551),a=r(1767),c=r(9462),l=r(6319),f=r(6395),u=c((function(){for(var e,t,r=this.iterator,n=this.predicate,o=this.next;;){e=s(i(o,r));if(this.done=!!e.done)return;t=e.value;if(l(r,n,[t,this.counter++],!0))return t}}));n({target:"Iterator",proto:!0,real:!0,forced:f},{filter:function filter(e){s(this);o(e);return new u(a(this),{predicate:e})}})},1454:(e,t,r)=>{var n=r(6518),i=r(713);n({target:"Iterator",proto:!0,real:!0,forced:r(6395)},{map:i})},3375:(e,t,r)=>{var n=r(6518),i=r(3440);n({target:"Set",proto:!0,real:!0,forced:!r(4916)("difference")},{difference:i})},9225:(e,t,r)=>{var n=r(6518),i=r(9039),o=r(8750);n({target:"Set",proto:!0,real:!0,forced:!r(4916)("intersection")||i((function(){return"3,2"!==String(Array.from(new Set([1,2,3]).intersection(new Set([3,2]))))}))},{intersection:o})},3972:(e,t,r)=>{var n=r(6518),i=r(4449);n({target:"Set",proto:!0,real:!0,forced:!r(4916)("isDisjointFrom")},{isDisjointFrom:i})},9209:(e,t,r)=>{var n=r(6518),i=r(3838);n({target:"Set",proto:!0,real:!0,forced:!r(4916)("isSubsetOf")},{isSubsetOf:i})},5714:(e,t,r)=>{var n=r(6518),i=r(8527);n({target:"Set",proto:!0,real:!0,forced:!r(4916)("isSupersetOf")},{isSupersetOf:i})},7561:(e,t,r)=>{var n=r(6518),i=r(3650);n({target:"Set",proto:!0,real:!0,forced:!r(4916)("symmetricDifference")},{symmetricDifference:i})},6197:(e,t,r)=>{var n=r(6518),i=r(4204);n({target:"Set",proto:!0,real:!0,forced:!r(4916)("union")},{union:i})},4603:(e,t,r)=>{var n=r(6840),i=r(9504),o=r(655),s=r(2812),a=URLSearchParams,c=a.prototype,l=i(c.append),f=i(c.delete),u=i(c.forEach),h=i([].push),d=new a("a=1&a=2&b=3");d.delete("a",1);d.delete("b",void 0);d+""!="a=2"&&n(c,"delete",(function(e){var t=arguments.length,r=t<2?void 0:arguments[1];if(t&&void 0===r)return f(this,e);var n=[];u(this,(function(e,t){h(n,{key:t,value:e})}));s(t,1);for(var i,a=o(e),c=o(r),d=0,p=0,g=!1,m=n.length;d<m;){i=n[d++];if(g||i.key===a){g=!0;f(this,i.key)}else p++}for(;p<m;)(i=n[p++]).key===a&&i.value===c||l(this,i.key,i.value)}),{enumerable:!0,unsafe:!0})},7566:(e,t,r)=>{var n=r(6840),i=r(9504),o=r(655),s=r(2812),a=URLSearchParams,c=a.prototype,l=i(c.getAll),f=i(c.has),u=new a("a=1");!u.has("a",2)&&u.has("a",void 0)||n(c,"has",(function has(e){var t=arguments.length,r=t<2?void 0:arguments[1];if(t&&void 0===r)return f(this,e);var n=l(this,e);s(t,1);for(var i=o(r),a=0;a<n.length;)if(n[a++]===i)return!0;return!1}),{enumerable:!0,unsafe:!0})},8721:(e,t,r)=>{var n=r(3724),i=r(9504),o=r(2106),s=URLSearchParams.prototype,a=i(s.forEach);n&&!("size"in s)&&o(s,"size",{get:function size(){var e=0;a(this,(function(){e++}));return e},configurable:!0,enumerable:!0})}},t={};function __webpack_require__(r){var n=t[r];if(void 0!==n)return n.exports;var i=t[r]={exports:{}};e[r].call(i.exports,i,i.exports,__webpack_require__);return i.exports}__webpack_require__.d=(e,t)=>{for(var r in t)__webpack_require__.o(t,r)&&!__webpack_require__.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})};__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var __webpack_exports__={};(()=>{__webpack_require__.d(__webpack_exports__,{Jbig2Image:()=>Jbig2Image,JpegImage:()=>JpegImage,JpxImage:()=>JpxImage,VerbosityLevel:()=>e,getVerbosityLevel:()=>getVerbosityLevel,setVerbosityLevel:()=>setVerbosityLevel});__webpack_require__(4114),__webpack_require__(6573),__webpack_require__(8100),__webpack_require__(7936),__webpack_require__(7467),__webpack_require__(4732),__webpack_require__(9577),__webpack_require__(4603),__webpack_require__(7566),__webpack_require__(8721);"object"!=typeof process||process+""!="[object process]"||process.versions.nw||process.versions.electron&&process.type&&process.type;const e={ERRORS:0,WARNINGS:1,INFOS:5};let t=e.WARNINGS;function setVerbosityLevel(e){Number.isInteger(e)&&(t=e)}function getVerbosityLevel(){return t}function info(r){t>=e.INFOS&&console.log(`Info: ${r}`)}function util_warn(r){t>=e.WARNINGS&&console.log(`Warning: ${r}`)}function util_unreachable(e){throw new Error(e)}function util_shadow(e,t,r){let n=arguments.length>3&&void 0!==arguments[3]&&arguments[3];Object.defineProperty(e,t,{value:r,enumerable:!n,configurable:!0,writable:!1});return r}const r=function BaseExceptionClosure(){function BaseException(e,t){this.constructor===BaseException&&util_unreachable("Cannot initialize BaseException.");this.message=e;this.name=t}BaseException.prototype=new Error;BaseException.constructor=BaseException;return BaseException}();class FormatError extends r{constructor(e){super(e,"FormatError")}}class util_FeatureTest{static get isLittleEndian(){return util_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 util_shadow(this,"isEvalSupported",function isEvalSupported(){try{new Function("");return!0}catch{return!1}}())}static get isOffscreenCanvasSupported(){return util_shadow(this,"isOffscreenCanvasSupported","undefined"!=typeof OffscreenCanvas)}static get platform(){return"undefined"!=typeof navigator&&"string"==typeof navigator?.platform?util_shadow(this,"platform",{isMac:navigator.platform.includes("Mac")}):util_shadow(this,"platform",{isMac:!1})}static get isCSSRoundSupported(){return util_shadow(this,"isCSSRoundSupported",globalThis.CSS?.supports?.("width: round(1.5px, 1px)"))}}Array.from(Array(256).keys(),(e=>e.toString(16).padStart(2,"0")));__webpack_require__(1454),__webpack_require__(3375),__webpack_require__(9225),__webpack_require__(3972),__webpack_require__(9209),__webpack_require__(5714),__webpack_require__(7561),__webpack_require__(6197);Symbol("CIRCULAR_REF"),Symbol("EOF");Object.create(null),Object.create(null),Object.create(null);Symbol.iterator;Symbol.iterator;function log2(e){return e<=0?0:Math.ceil(Math.log2(e))}function readInt8(e,t){return e[t]<<24>>24}function readUint16(e,t){return e[t]<<8|e[t+1]}function readUint32(e,t){return(e[t]<<24|e[t+1]<<16|e[t+2]<<8|e[t+3])>>>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}];class ArithmeticDecoder{constructor(e,t,r){this.data=e;this.bp=t;this.dataEnd=r;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 r=e[t]>>1,i=1&e[t];const o=n[r],s=o.qe;let a,c=this.a-s;if(this.chigh<s)if(c<s){c=s;a=i;r=o.nmps}else{c=s;a=1^i;1===o.switchFlag&&(i=a);r=o.nlps}else{this.chigh-=s;if(0!=(32768&c)){this.a=c;return i}if(c<s){a=1^i;1===o.switchFlag&&(i=a);r=o.nlps}else{a=i;r=o.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]=r<<1|i;return a}}const i=-1,o=[[-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]],s=[[-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]];class CCITTFaxDecoder{constructor(e){let t,r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!e||"function"!=typeof e.next)throw new Error('CCITTFaxDecoder - invalid "source" parameter.');this.source=e;this.eof=!1;this.encoding=r.K||0;this.eoline=r.EndOfLine||!1;this.byteAlign=r.EncodedByteAlign||!1;this.columns=r.Columns||1728;this.rows=r.Rows||0;this.eoblock=r.EndOfBlock??!0;this.black=r.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;for(;0===(t=this._lookBits(12));)this._eatBits(1);1===t&&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,r=this.columns;let n,o,s,a,c;if(0===this.outputBits){this.rowsDone&&(this.eof=!0);if(this.eof)return-1;this.err=!1;let s,c,l;if(this.nextLine2D){for(a=0;t[a]<r;++a)e[a]=t[a];e[a++]=r;e[a]=r;t[0]=0;this.codingPos=0;n=0;o=0;for(;t[this.codingPos]<r;){s=this._getTwoDimCode();switch(s){case 0:this._addPixels(e[n+1],o);e[n+1]<r&&(n+=2);break;case 1:s=c=0;if(o){do{s+=l=this._getBlackCode()}while(l>=64);do{c+=l=this._getWhiteCode()}while(l>=64)}else{do{s+=l=this._getWhiteCode()}while(l>=64);do{c+=l=this._getBlackCode()}while(l>=64)}this._addPixels(t[this.codingPos]+s,o);t[this.codingPos]<r&&this._addPixels(t[this.codingPos]+c,1^o);for(;e[n]<=t[this.codingPos]&&e[n]<r;)n+=2;break;case 7:this._addPixels(e[n]+3,o);o^=1;if(t[this.codingPos]<r){++n;for(;e[n]<=t[this.codingPos]&&e[n]<r;)n+=2}break;case 5:this._addPixels(e[n]+2,o);o^=1;if(t[this.codingPos]<r){++n;for(;e[n]<=t[this.codingPos]&&e[n]<r;)n+=2}break;case 3:this._addPixels(e[n]+1,o);o^=1;if(t[this.codingPos]<r){++n;for(;e[n]<=t[this.codingPos]&&e[n]<r;)n+=2}break;case 2:this._addPixels(e[n],o);o^=1;if(t[this.codingPos]<r){++n;for(;e[n]<=t[this.codingPos]&&e[n]<r;)n+=2}break;case 8:this._addPixelsNeg(e[n]-3,o);o^=1;if(t[this.codingPos]<r){n>0?--n:++n;for(;e[n]<=t[this.codingPos]&&e[n]<r;)n+=2}break;case 6:this._addPixelsNeg(e[n]-2,o);o^=1;if(t[this.codingPos]<r){n>0?--n:++n;for(;e[n]<=t[this.codingPos]&&e[n]<r;)n+=2}break;case 4:this._addPixelsNeg(e[n]-1,o);o^=1;if(t[this.codingPos]<r){n>0?--n:++n;for(;e[n]<=t[this.codingPos]&&e[n]<r;)n+=2}break;case i:this._addPixels(r,0);this.eof=!0;break;default:info("bad 2d code");this._addPixels(r,0);this.err=!0}}}else{t[0]=0;this.codingPos=0;o=0;for(;t[this.codingPos]<r;){s=0;if(o)do{s+=l=this._getBlackCode()}while(l>=64);else do{s+=l=this._getWhiteCode()}while(l>=64);this._addPixels(t[this.codingPos]+s,o);o^=1}}let f=!1;this.byteAlign&&(this.inputBits&=-8);if(this.eoblock||this.row!==this.rows-1){s=this._lookBits(12);if(this.eoline)for(;s!==i&&1!==s;){this._eatBits(1);s=this._lookBits(12)}else for(;0===s;){this._eatBits(1);s=this._lookBits(12)}if(1===s){this._eatBits(12);f=!0}else s===i&&(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&&f&&this.byteAlign){s=this._lookBits(12);if(1===s){this._eatBits(12);if(this.encoding>0){this._lookBits(1);this._eatBits(1)}if(this.encoding>=0)for(a=0;a<4;++a){s=this._lookBits(12);1!==s&&info("bad rtc code: "+s);this._eatBits(12);if(this.encoding>0){this._lookBits(1);this._eatBits(1)}}this.eof=!0}}else if(this.err&&this.eoline){for(;;){s=this._lookBits(13);if(s===i){this.eof=!0;return-1}if(s>>1==1)break;this._eatBits(1)}this._eatBits(12);if(this.encoding>0){this._eatBits(1);this.nextLine2D=!(1&s)}}this.outputBits=t[0]>0?t[this.codingPos=0]:t[this.codingPos=1];this.row++}if(this.outputBits>=8){c=1&this.codingPos?0:255;this.outputBits-=8;if(0===this.outputBits&&t[this.codingPos]<r){this.codingPos++;this.outputBits=t[this.codingPos]-t[this.codingPos-1]}}else{s=8;c=0;do{if("number"!=typeof this.outputBits)throw new FormatError('Invalid /CCITTFaxDecode data, "outputBits" must be a number.');if(this.outputBits>s){c<<=s;1&this.codingPos||(c|=255>>8-s);this.outputBits-=s;s=0}else{c<<=this.outputBits;1&this.codingPos||(c|=255>>8-this.outputBits);s-=this.outputBits;this.outputBits=0;if(t[this.codingPos]<r){this.codingPos++;this.outputBits=t[this.codingPos]-t[this.codingPos-1]}else if(s>0){c<<=s;s=0}}}while(s)}this.black&&(c^=255);return c}_addPixels(e,t){const r=this.codingLine;let n=this.codingPos;if(e>r[n]){if(e>this.columns){info("row is wrong length");this.err=!0;e=this.columns}1&n^t&&++n;r[n]=e}this.codingPos=n}_addPixelsNeg(e,t){const r=this.codingLine;let n=this.codingPos;if(e>r[n]){if(e>this.columns){info("row is wrong length");this.err=!0;e=this.columns}1&n^t&&++n;r[n]=e}else if(e<r[n]){if(e<0){info("invalid code");this.err=!0;e=0}for(;n>0&&e<r[n-1];)--n;r[n]=e}this.codingPos=n}_findTableCode(e,t,r,n){const o=n||0;for(let n=e;n<=t;++n){let e=this._lookBits(n);if(e===i)return[!0,1,!1];n<t&&(e<<=t-n);if(!o||e>=o){const t=r[e-o];if(t[0]===n){this._eatBits(n);return[!0,t[1],!0]}}}return[!1,0,!1]}_getTwoDimCode(){let e,t=0;if(this.eoblock){t=this._lookBits(7);e=o[t];if(e?.[0]>0){this._eatBits(e[0]);return e[1]}}else{const e=this._findTableCode(1,7,o);if(e[0]&&e[2])return e[1]}info("Bad two dim code");return i}_getWhiteCode(){let e,t=0;if(this.eoblock){t=this._lookBits(12);if(t===i)return 1;e=t>>5==0?s[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,s);if(e[0])return e[1]}info("bad white code");this._eatBits(1);return 1}_getBlackCode(){let e,t;if(this.eoblock){e=this._lookBits(13);if(e===i)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]}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?i:this.inputBuf<<e-this.inputBits&65535>>16-e;this.inputBuf=this.inputBuf<<8|t;this.inputBits+=8}return this.inputBuf>>this.inputBits-e&65535>>16-e}_eatBits(e){(this.inputBits-=e)<0&&(this.inputBits=0)}}class Jbig2Error extends r{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,r){this.data=e;this.start=t;this.end=r}get decoder(){return util_shadow(this,"decoder",new ArithmeticDecoder(this.data,this.start,this.end))}get contextCache(){return util_shadow(this,"contextCache",new ContextCache)}}const u=2**31-1,h=-(2**31);function decodeInteger(e,t,r){const n=e.getContexts(t);let i=1;function readBits(e){let t=0;for(let o=0;o<e;o++){const e=r.readBit(n,i);i=i<256?i<<1|e:511&(i<<1|e)|256;t=t<<1|e}return t>>>0}const o=readBits(1),s=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 a;0===o?a=s:s>0&&(a=-s);return a>=h&&a<=u?a:null}function decodeIAID(e,t,r){const n=e.getContexts("IAID");let i=1;for(let e=0;e<r;e++){i=i<<1|t.readBit(n,i)}return r<31?i&(1<<r)-1:2147483647&i}const d=["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"],p=[[{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}]],g=[{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}]}],m=[39717,1941,229,405],b=[32,8];function decodeBitmap(e,t,r,n,i,o,s,a){if(e){return decodeMMRBitmap(new Reader(a.data,a.start,a.end),t,r,!1)}if(0===n&&!o&&!i&&4===s.length&&3===s[0].x&&-1===s[0].y&&-3===s[1].x&&-1===s[1].y&&2===s[2].x&&-2===s[2].y&&-2===s[3].x&&-2===s[3].y)return function decodeBitmapTemplate0(e,t,r){const n=r.decoder,i=r.contextCache.getContexts("GB"),o=[];let s,a,c,l,f,u,h;for(a=0;a<t;a++){f=o[a]=new Uint8Array(e);u=a<1?f:o[a-1];h=a<2?f:o[a-2];s=h[0]<<13|h[1]<<12|h[2]<<11|u[0]<<7|u[1]<<6|u[2]<<5|u[3]<<4;for(c=0;c<e;c++){f[c]=l=n.readBit(i,s);s=(31735&s)<<1|(c+3<e?h[c+3]<<11:0)|(c+4<e?u[c+4]<<4:0)|l}}return o}(t,r,a);const c=!!o,l=p[n].concat(s);l.sort((function(e,t){return e.y-t.y||e.x-t.x}));const f=l.length,u=new Int8Array(f),h=new Int8Array(f),d=[];let g,b,y=0,x=0,w=0,v=0;for(b=0;b<f;b++){u[b]=l[b].x;h[b]=l[b].y;x=Math.min(x,l[b].x);w=Math.max(w,l[b].x);v=Math.min(v,l[b].y);b<f-1&&l[b].y===l[b+1].y&&l[b].x===l[b+1].x-1?y|=1<<f-1-b:d.push(b)}const k=d.length,_=new Int8Array(k),C=new Int8Array(k),I=new Uint16Array(k);for(g=0;g<k;g++){b=d[g];_[g]=l[b].x;C[g]=l[b].y;I[g]=1<<f-1-b}const T=-x,P=-v,S=t-w,B=m[n];let A=new Uint8Array(t);const O=[],L=a.decoder,E=a.contextCache.getContexts("GB");let M,D,U,R,z,H=0,N=0;for(let e=0;e<r;e++){if(i){H^=L.readBit(E,B);if(H){O.push(A);continue}}A=new Uint8Array(A);O.push(A);for(M=0;M<t;M++){if(c&&o[e][M]){A[M]=0;continue}if(M>=T&&M<S&&e>=P){N=N<<1&y;for(b=0;b<k;b++){D=e+C[b];U=M+_[b];R=O[D][U];if(R){R=I[b];N|=R}}}else{N=0;z=f-1;for(b=0;b<f;b++,z--){U=M+u[b];if(U>=0&&U<t){D=e+h[b];if(D>=0){R=O[D][U];R&&(N|=R<<z)}}}}const r=L.readBit(E,N);A[M]=r}}return O}function decodeRefinement(e,t,r,n,i,o,s,a,c){let l=g[r].coding;0===r&&(l=l.concat([a[0]]));const f=l.length,u=new Int32Array(f),h=new Int32Array(f);let d;for(d=0;d<f;d++){u[d]=l[d].x;h[d]=l[d].y}let p=g[r].reference;0===r&&(p=p.concat([a[1]]));const m=p.length,y=new Int32Array(m),x=new Int32Array(m);for(d=0;d<m;d++){y[d]=p[d].x;x[d]=p[d].y}const w=n[0].length,v=n.length,k=b[r],_=[],C=c.decoder,I=c.contextCache.getContexts("GR");let T=0;for(let r=0;r<t;r++){if(s){T^=C.readBit(I,k);if(T)throw new Jbig2Error("prediction is not supported")}const t=new Uint8Array(e);_.push(t);for(let s=0;s<e;s++){let a,c,l=0;for(d=0;d<f;d++){a=r+h[d];c=s+u[d];a<0||c<0||c>=e?l<<=1:l=l<<1|_[a][c]}for(d=0;d<m;d++){a=r+x[d]-o;c=s+y[d]-i;a<0||a>=v||c<0||c>=w?l<<=1:l=l<<1|n[a][c]}const p=C.readBit(I,l);t[s]=p}}return _}function decodeTextRegion(e,t,r,n,i,o,s,a,c,l,f,u,h,d,p,g,m,b,y){if(e&&t)throw new Jbig2Error("refinement with Huffman is not supported");const x=[];let w,v;for(w=0;w<n;w++){v=new Uint8Array(r);if(i)for(let e=0;e<r;e++)v[e]=i;x.push(v)}const k=m.decoder,_=m.contextCache;let C=e?-d.tableDeltaT.decode(y):-decodeInteger(_,"IADT",k),I=0;w=0;for(;w<o;){C+=e?d.tableDeltaT.decode(y):decodeInteger(_,"IADT",k);I+=e?d.tableFirstS.decode(y):decodeInteger(_,"IAFS",k);let n=I;for(;;){let i=0;s>1&&(i=e?y.readBits(b):decodeInteger(_,"IAIT",k));const o=s*C+i,I=e?d.symbolIDTable.decode(y):decodeIAID(_,k,c),T=t&&(e?y.readBit():decodeInteger(_,"IARI",k));let P=a[I],S=P[0].length,B=P.length;if(T){const e=decodeInteger(_,"IARDW",k),t=decodeInteger(_,"IARDH",k);S+=e;B+=t;P=decodeRefinement(S,B,p,P,(e>>1)+decodeInteger(_,"IARDX",k),(t>>1)+decodeInteger(_,"IARDY",k),!1,g,m)}let A=0;l?1&u?A=B-1:n+=B-1:u>1?n+=S-1:A=S-1;const O=o-(1&u?0:B-1),L=n-(2&u?S-1:0);let E,M,D;if(l)for(E=0;E<B;E++){v=x[L+E];if(!v)continue;D=P[E];const e=Math.min(r-O,S);switch(h){case 0:for(M=0;M<e;M++)v[O+M]|=D[M];break;case 2:for(M=0;M<e;M++)v[O+M]^=D[M];break;default:throw new Jbig2Error(`operator ${h} is not supported`)}}else for(M=0;M<B;M++){v=x[O+M];if(v){D=P[M];switch(h){case 0:for(E=0;E<S;E++)v[L+E]|=D[E];break;case 2:for(E=0;E<S;E++)v[L+E]^=D[E];break;default:throw new Jbig2Error(`operator ${h} is not supported`)}}}w++;const U=e?d.tableDeltaS.decode(y):decodeInteger(_,"IADS",k);if(null===U)break;n+=A+U+f}}return x}function readSegmentHeader(e,t){const r={};r.number=readUint32(e,t);const n=e[t+4],i=63&n;if(!d[i])throw new Jbig2Error("invalid segment type: "+i);r.type=i;r.typeName=d[i];r.deferredNonRetain=!!(128&n);const o=!!(64&n),s=e[t+5];let a=s>>5&7;const c=[31&s];let l=t+6;if(7===s){a=536870911&readUint32(e,l-1);l+=3;let t=a+7>>3;c[0]=e[l++];for(;--t>0;)c.push(e[l++])}else if(5===s||6===s)throw new Jbig2Error("invalid referred-to flags");r.retainBits=c;let f=4;r.number<=256?f=1:r.number<=65536&&(f=2);const u=[];let h,p;for(h=0;h<a;h++){let t;t=1===f?e[l]:2===f?readUint16(e,l):readUint32(e,l);u.push(t);l+=f}r.referredTo=u;if(o){r.pageAssociation=readUint32(e,l);l+=4}else r.pageAssociation=e[l++];r.length=readUint32(e,l);l+=4;if(4294967295===r.length){if(38!==i)throw new Jbig2Error("invalid unknown segment length");{const t=readRegionSegmentInformation(e,l),n=!!(1&e[l+y]),i=6,o=new Uint8Array(i);if(!n){o[0]=255;o[1]=172}o[2]=t.height>>>24&255;o[3]=t.height>>16&255;o[4]=t.height>>8&255;o[5]=255&t.height;for(h=l,p=e.length;h<p;h++){let t=0;for(;t<i&&o[t]===e[h+t];)t++;if(t===i){r.length=h+i;break}}if(4294967295===r.length)throw new Jbig2Error("segment end was not found")}}r.headerEnd=l;return r}function readSegments(e,t,r,n){const i=[];let o=r;for(;o<n;){const r=readSegmentHeader(t,o);o=r.headerEnd;const n={header:r,data:t};if(!e.randomAccess){n.start=o;o+=r.length;n.end=o}i.push(n);if(51===r.type)break}if(e.randomAccess)for(let e=0,t=i.length;e<t;e++){i[e].start=o;o+=i[e].header.length;i[e].end=o}return i}function readRegionSegmentInformation(e,t){return{width:readUint32(e,t),height:readUint32(e,t+4),x:readUint32(e,t+8),y:readUint32(e,t+12),combinationOperator:7&e[t+16]}}const y=17;function processSegment(e,t){const r=e.header,n=e.data,i=e.end;let o,s,a,c,l=e.start;switch(r.type){case 0:const e={},t=readUint16(n,l);e.huffman=!!(1&t);e.refinement=!!(2&t);e.huffmanDHSelector=t>>2&3;e.huffmanDWSelector=t>>4&3;e.bitmapSizeSelector=t>>6&1;e.aggregationInstancesSelector=t>>7&1;e.bitmapCodingContextUsed=!!(256&t);e.bitmapCodingContextRetained=!!(512&t);e.template=t>>10&3;e.refinementTemplate=t>>12&1;l+=2;if(!e.huffman){c=0===e.template?4:1;s=[];for(a=0;a<c;a++){s.push({x:readInt8(n,l),y:readInt8(n,l+1)});l+=2}e.at=s}if(e.refinement&&!e.refinementTemplate){s=[];for(a=0;a<2;a++){s.push({x:readInt8(n,l),y:readInt8(n,l+1)});l+=2}e.refinementAt=s}e.numberOfExportedSymbols=readUint32(n,l);l+=4;e.numberOfNewSymbols=readUint32(n,l);l+=4;o=[e,r.number,r.referredTo,n,l,i];break;case 6:case 7:const f={};f.info=readRegionSegmentInformation(n,l);l+=y;const u=readUint16(n,l);l+=2;f.huffman=!!(1&u);f.refinement=!!(2&u);f.logStripSize=u>>2&3;f.stripSize=1<<f.logStripSize;f.referenceCorner=u>>4&3;f.transposed=!!(64&u);f.combinationOperator=u>>7&3;f.defaultPixelValue=u>>9&1;f.dsOffset=u<<17>>27;f.refinementTemplate=u>>15&1;if(f.huffman){const e=readUint16(n,l);l+=2;f.huffmanFS=3&e;f.huffmanDS=e>>2&3;f.huffmanDT=e>>4&3;f.huffmanRefinementDW=e>>6&3;f.huffmanRefinementDH=e>>8&3;f.huffmanRefinementDX=e>>10&3;f.huffmanRefinementDY=e>>12&3;f.huffmanRefinementSizeSelector=!!(16384&e)}if(f.refinement&&!f.refinementTemplate){s=[];for(a=0;a<2;a++){s.push({x:readInt8(n,l),y:readInt8(n,l+1)});l+=2}f.refinementAt=s}f.numberOfSymbolInstances=readUint32(n,l);l+=4;o=[f,r.referredTo,n,l,i];break;case 16:const h={},d=n[l++];h.mmr=!!(1&d);h.template=d>>1&3;h.patternWidth=n[l++];h.patternHeight=n[l++];h.maxPatternIndex=readUint32(n,l);l+=4;o=[h,r.number,n,l,i];break;case 22:case 23:const p={};p.info=readRegionSegmentInformation(n,l);l+=y;const g=n[l++];p.mmr=!!(1&g);p.template=g>>1&3;p.enableSkip=!!(8&g);p.combinationOperator=g>>4&7;p.defaultPixelValue=g>>7&1;p.gridWidth=readUint32(n,l);l+=4;p.gridHeight=readUint32(n,l);l+=4;p.gridOffsetX=4294967295&readUint32(n,l);l+=4;p.gridOffsetY=4294967295&readUint32(n,l);l+=4;p.gridVectorX=readUint16(n,l);l+=2;p.gridVectorY=readUint16(n,l);l+=2;o=[p,r.referredTo,n,l,i];break;case 38:case 39:const m={};m.info=readRegionSegmentInformation(n,l);l+=y;const b=n[l++];m.mmr=!!(1&b);m.template=b>>1&3;m.prediction=!!(8&b);if(!m.mmr){c=0===m.template?4:1;s=[];for(a=0;a<c;a++){s.push({x:readInt8(n,l),y:readInt8(n,l+1)});l+=2}m.at=s}o=[m,n,l,i];break;case 48:const x={width:readUint32(n,l),height:readUint32(n,l+4),resolutionX:readUint32(n,l+8),resolutionY:readUint32(n,l+12)};4294967295===x.height&&delete x.height;const w=n[l+16];readUint16(n,l+17);x.lossless=!!(1&w);x.refinement=!!(2&w);x.defaultPixelValue=w>>2&1;x.combinationOperator=w>>3&3;x.requiresBuffer=!!(32&w);x.combinationOperatorOverride=!!(64&w);o=[x];break;case 49:case 50:case 51:case 62:break;case 53:o=[r.number,n,l,i];break;default:throw new Jbig2Error(`segment type ${r.typeName}(${r.type}) is not implemented`)}const f="on"+r.typeName;f in t&&t[f].apply(t,o)}function processSegments(e,t){for(let r=0,n=e.length;r<n;r++)processSegment(e[r],t)}class SimpleSegmentVisitor{onPageInformation(e){this.currentPageInfo=e;const t=e.width+7>>3,r=new Uint8ClampedArray(t*e.height);e.defaultPixelValue&&r.fill(255);this.buffer=r}drawBitmap(e,t){const r=this.currentPageInfo,n=e.width,i=e.height,o=r.width+7>>3,s=r.combinationOperatorOverride?e.combinationOperator:r.combinationOperator,a=this.buffer,c=128>>(7&e.x);let l,f,u,h,d=e.y*o+(e.x>>3);switch(s){case 0:for(l=0;l<i;l++){u=c;h=d;for(f=0;f<n;f++){t[l][f]&&(a[h]|=u);u>>=1;if(!u){u=128;h++}}d+=o}break;case 2:for(l=0;l<i;l++){u=c;h=d;for(f=0;f<n;f++){t[l][f]&&(a[h]^=u);u>>=1;if(!u){u=128;h++}}d+=o}break;default:throw new Jbig2Error(`operator ${s} is not supported`)}}onImmediateGenericRegion(e,t,r,n){const i=e.info,o=new DecodingContext(t,r,n),s=decodeBitmap(e.mmr,i.width,i.height,e.template,e.prediction,null,e.at,o);this.drawBitmap(i,s)}onImmediateLosslessGenericRegion(){this.onImmediateGenericRegion(...arguments)}onSymbolDictionary(e,t,r,n,i,o){let s,a;if(e.huffman){s=function getSymbolDictionaryHuffmanTables(e,t,r){let n,i,o,s,a=0;switch(e.huffmanDHSelector){case 0:case 1:n=getStandardTable(e.huffmanDHSelector+4);break;case 3:n=getCustomHuffmanTable(a,t,r);a++;break;default:throw new Jbig2Error("invalid Huffman DH selector")}switch(e.huffmanDWSelector){case 0:case 1:i=getStandardTable(e.huffmanDWSelector+2);break;case 3:i=getCustomHuffmanTable(a,t,r);a++;break;default:throw new Jbig2Error("invalid Huffman DW selector")}if(e.bitmapSizeSelector){o=getCustomHuffmanTable(a,t,r);a++}else o=getStandardTable(1);s=e.aggregationInstancesSelector?getCustomHuffmanTable(a,t,r):getStandardTable(1);return{tableDeltaHeight:n,tableDeltaWidth:i,tableBitmapSize:o,tableAggregateInstances:s}}(e,r,this.customTables);a=new Reader(n,i,o)}let c=this.symbols;c||(this.symbols=c={});const l=[];for(const e of r){const t=c[e];t&&l.push(...t)}const f=new DecodingContext(n,i,o);c[t]=function decodeSymbolDictionary(e,t,r,n,i,o,s,a,c,l,f,u){if(e&&t)throw new Jbig2Error("symbol refinement with Huffman is not supported");const h=[];let d=0,p=log2(r.length+n);const g=f.decoder,m=f.contextCache;let b,y;if(e){b=getStandardTable(1);y=[];p=Math.max(p,1)}for(;h.length<n;){d+=e?o.tableDeltaHeight.decode(u):decodeInteger(m,"IADH",g);let n=0,i=0;const b=e?y.length:0;for(;;){const b=e?o.tableDeltaWidth.decode(u):decodeInteger(m,"IADW",g);if(null===b)break;n+=b;i+=n;let x;if(t){const i=decodeInteger(m,"IAAI",g);if(i>1)x=decodeTextRegion(e,t,n,d,0,i,1,r.concat(h),p,0,0,1,0,o,c,l,f,0,u);else{const e=decodeIAID(m,g,p),t=decodeInteger(m,"IARDX",g),i=decodeInteger(m,"IARDY",g);x=decodeRefinement(n,d,c,e<r.length?r[e]:h[e-r.length],t,i,!1,l,f)}h.push(x)}else if(e)y.push(n);else{x=decodeBitmap(!1,n,d,s,!1,null,a,f);h.push(x)}}if(e&&!t){const e=o.tableBitmapSize.decode(u);u.byteAlign();let t;if(0===e)t=readUncompressedBitmap(u,i,d);else{const r=u.end,n=u.position+e;u.end=n;t=decodeMMRBitmap(u,i,d,!1);u.end=r;u.position=n}const r=y.length;if(b===r-1)h.push(t);else{let e,n,i,o,s,a=0;for(e=b;e<r;e++){o=y[e];i=a+o;s=[];for(n=0;n<d;n++)s.push(t[n].subarray(a,i));h.push(s);a=i}}}}const x=[],w=[];let v,k,_=!1;const C=r.length+n;for(;w.length<C;){let t=e?b.decode(u):decodeInteger(m,"IAEX",g);for(;t--;)w.push(_);_=!_}for(v=0,k=r.length;v<k;v++)w[v]&&x.push(r[v]);for(let e=0;e<n;v++,e++)w[v]&&x.push(h[e]);return x}(e.huffman,e.refinement,l,e.numberOfNewSymbols,e.numberOfExportedSymbols,s,e.template,e.at,e.refinementTemplate,e.refinementAt,f,a)}onImmediateTextRegion(e,t,r,n,i){const o=e.info;let s,a;const c=this.symbols,l=[];for(const e of t){const t=c[e];t&&l.push(...t)}const f=log2(l.length);if(e.huffman){a=new Reader(r,n,i);s=function getTextRegionHuffmanTables(e,t,r,n,i){const o=[];for(let e=0;e<=34;e++){const t=i.readBits(4);o.push(new HuffmanLine([e,t,0,0]))}const s=new HuffmanTable(o,!1);o.length=0;for(let e=0;e<n;){const t=s.decode(i);if(t>=32){let r,n,s;switch(t){case 32:if(0===e)throw new Jbig2Error("no previous value in symbol ID table");n=i.readBits(2)+3;r=o[e-1].prefixLength;break;case 33:n=i.readBits(3)+3;r=0;break;case 34:n=i.readBits(7)+11;r=0;break;default:throw new Jbig2Error("invalid code length in symbol ID table")}for(s=0;s<n;s++){o.push(new HuffmanLine([e,r,0,0]));e++}}else{o.push(new HuffmanLine([e,t,0,0]));e++}}i.byteAlign();const a=new HuffmanTable(o,!1);let c,l,f,u=0;switch(e.huffmanFS){case 0:case 1:c=getStandardTable(e.huffmanFS+6);break;case 3:c=getCustomHuffmanTable(u,t,r);u++;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(u,t,r);u++;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(u,t,r);u++;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,l.length,a)}const u=new DecodingContext(r,n,i),h=decodeTextRegion(e.huffman,e.refinement,o.width,o.height,e.defaultPixelValue,e.numberOfSymbolInstances,e.stripSize,l,f,e.transposed,e.dsOffset,e.referenceCorner,e.combinationOperator,s,e.refinementTemplate,e.refinementAt,u,e.logStripSize,a);this.drawBitmap(o,h)}onImmediateLosslessTextRegion(){this.onImmediateTextRegion(...arguments)}onPatternDictionary(e,t,r,n,i){let o=this.patterns;o||(this.patterns=o={});const s=new DecodingContext(r,n,i);o[t]=function decodePatternDictionary(e,t,r,n,i,o){const s=[];if(!e){s.push({x:-t,y:0});0===i&&s.push({x:-3,y:-1},{x:2,y:-2},{x:-2,y:-2})}const a=decodeBitmap(e,(n+1)*t,r,i,!1,null,s,o),c=[];for(let e=0;e<=n;e++){const n=[],i=t*e,o=i+t;for(let e=0;e<r;e++)n.push(a[e].subarray(i,o));c.push(n)}return c}(e.mmr,e.patternWidth,e.patternHeight,e.maxPatternIndex,e.template,s)}onImmediateHalftoneRegion(e,t,r,n,i){const o=this.patterns[t[0]],s=e.info,a=new DecodingContext(r,n,i),c=function decodeHalftoneRegion(e,t,r,n,i,o,s,a,c,l,f,u,h,d,p){if(s)throw new Jbig2Error("skip is not supported");if(0!==a)throw new Jbig2Error(`operator "${a}" is not supported in halftone region`);const g=[];let m,b,y;for(m=0;m<i;m++){y=new Uint8Array(n);if(o)for(b=0;b<n;b++)y[b]=o;g.push(y)}const x=t.length,w=t[0],v=w[0].length,k=w.length,_=log2(x),C=[];if(!e){C.push({x:r<=1?3:2,y:-1});0===r&&C.push({x:-3,y:-1},{x:2,y:-2},{x:-2,y:-2})}const I=[];let T,P,S,B,A,O,L,E,M,D,U;e&&(T=new Reader(p.data,p.start,p.end));for(m=_-1;m>=0;m--){P=e?decodeMMRBitmap(T,c,l,!0):decodeBitmap(!1,c,l,r,!1,null,C,p);I[m]=P}for(S=0;S<l;S++)for(B=0;B<c;B++){A=0;O=0;for(b=_-1;b>=0;b--){A^=I[b][S][B];O|=A<<b}L=t[O];E=f+S*d+B*h>>8;M=u+S*h-B*d>>8;if(E>=0&&E+v<=n&&M>=0&&M+k<=i)for(m=0;m<k;m++){U=g[M+m];D=L[m];for(b=0;b<v;b++)U[E+b]|=D[b]}else{let e,t;for(m=0;m<k;m++){t=M+m;if(!(t<0||t>=i)){U=g[t];D=L[m];for(b=0;b<v;b++){e=E+b;e>=0&&e<n&&(U[e]|=D[b])}}}}}return g}(e.mmr,o,e.template,s.width,s.height,e.defaultPixelValue,e.enableSkip,e.combinationOperator,e.gridWidth,e.gridHeight,e.gridOffsetX,e.gridOffsetY,e.gridVectorX,e.gridVectorY,a);this.drawBitmap(s,c)}onImmediateLosslessHalftoneRegion(){this.onImmediateHalftoneRegion(...arguments)}onTables(e,t,r,n){let i=this.customTables;i||(this.customTables=i={});i[e]=function decodeTablesSegment(e,t,r){const n=e[t],i=4294967295&readUint32(e,t+1),o=4294967295&readUint32(e,t+5),s=new Reader(e,t+9,r),a=1+(n>>1&7),c=1+(n>>4&7),l=[];let f,u,h=i;do{f=s.readBits(a);u=s.readBits(c);l.push(new HuffmanLine([h,f,u,0]));h+=1<<u}while(h<o);f=s.readBits(a);l.push(new HuffmanLine([i-1,f,32,0,"lower"]));f=s.readBits(a);l.push(new HuffmanLine([o,f,32,0]));if(1&n){f=s.readBits(a);l.push(new HuffmanLine([f,0]))}return new HuffmanTable(l,!1)}(t,r,n)}}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 r=e.prefixCode>>t&1;if(t<=0)this.children[r]=new HuffmanTreeNode(e);else{let n=this.children[r];n||(this.children[r]=n=new HuffmanTreeNode(null));n.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,r=e.length;t<r;t++){const r=e[t];r.prefixLength>0&&this.rootNode.buildTree(r,r.prefixLength-1)}}decode(e){return this.rootNode.decodeNode(e)}assignPrefixCodes(e){const t=e.length;let r=0;for(let n=0;n<t;n++)r=Math.max(r,e[n].prefixLength);const n=new Uint32Array(r+1);for(let r=0;r<t;r++)n[e[r].prefixLength]++;let i,o,s,a=1,c=0;n[0]=0;for(;a<=r;){c=c+n[a-1]<<1;i=c;o=0;for(;o<t;){s=e[o];if(s.prefixLength===a){s.prefixCode=i;i++}o++}a++}}}const x={};function getStandardTable(e){let t,r=x[e];if(r)return r;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,r=t.length;e<r;e++)t[e]=new HuffmanLine(t[e]);r=new HuffmanTable(t,!0);x[e]=r;return r}class Reader{constructor(e,t,r){this.data=e;this.start=t;this.end=r;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,r=0;for(t=e-1;t>=0;t--)r|=this.readBit()<<t;return r}byteAlign(){this.shift=-1}next(){return this.position>=this.end?-1:this.data[this.position++]}}function getCustomHuffmanTable(e,t,r){let n=0;for(let i=0,o=t.length;i<o;i++){const o=r[t[i]];if(o){if(e===n)return o;n++}}throw new Jbig2Error("can't find custom Huffman table")}function readUncompressedBitmap(e,t,r){const n=[];for(let i=0;i<r;i++){const r=new Uint8Array(t);n.push(r);for(let n=0;n<t;n++)r[n]=e.readBit();e.byteAlign()}return n}function decodeMMRBitmap(e,t,r,n){const i=new CCITTFaxDecoder(e,{K:-1,Columns:t,Rows:r,BlackIs1:!0,EndOfBlock:n}),o=[];let s,a=!1;for(let e=0;e<r;e++){const e=new Uint8Array(t);o.push(e);let r=-1;for(let n=0;n<t;n++){if(r<0){s=i.readNextChar();if(-1===s){s=0;a=!0}r=7}e[n]=s>>r&1;r--}}if(n&&!a){const e=5;for(let t=0;t<e&&-1!==i.readNextChar();t++);}return o}class Jbig2Image{parseChunks(e){return function parseJbig2Chunks(e){const t=new SimpleSegmentVisitor;for(let r=0,n=e.length;r<n;r++){const n=e[r];processSegments(readSegments({},n.data,n.start,n.end),t)}return t.buffer}(e)}parse(e){const{imgData:t,width:r,height:n}=function parseJbig2(e){const t=e.length;let r=0;if(151!==e[r]||74!==e[r+1]||66!==e[r+2]||50!==e[r+3]||13!==e[r+4]||10!==e[r+5]||26!==e[r+6]||10!==e[r+7])throw new Jbig2Error("parseJbig2 - invalid header.");const n=Object.create(null);r+=8;const i=e[r++];n.randomAccess=!(1&i);if(!(2&i)){n.numberOfPages=readUint32(e,r);r+=4}const o=readSegments(n,e,r,t),s=new SimpleSegmentVisitor;processSegments(o,s);const{width:a,height:c}=s.currentPageInfo,l=s.buffer,f=new Uint8ClampedArray(a*c);let u=0,h=0;for(let e=0;e<c;e++){let e,t=0;for(let r=0;r<a;r++){if(!t){t=128;e=l[h++]}f[u++]=e&t?0:255;t>>=1}}return{imgData:f,width:a,height:c}}(e);this.width=r;this.height=n;return t}}class JpegError extends r{constructor(e){super(`JPEG error: ${e}`,"JpegError")}}class DNLMarkerError extends r{constructor(e,t){super(e,"DNLMarkerError");this.scanLines=t}}class EOIMarkerError extends r{constructor(e){super(e,"EOIMarkerError")}}const w=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]),v=4017,k=799,_=3406,C=2276,I=1567,T=3784,P=5793,S=2896;function buildHuffmanTable(e,t){let r,n,i=0,o=16;for(;o>0&&!e[o-1];)o--;const s=[{children:[],index:0}];let a,c=s[0];for(r=0;r<o;r++){for(n=0;n<e[r];n++){c=s.pop();c.children[c.index]=t[i];for(;c.index>0;)c=s.pop();c.index++;s.push(c);for(;s.length<=r;){s.push(a={children:[],index:0});c.children[c.index]=a.children;c=a}i++}if(r+1<o){s.push(a={children:[],index:0});c.children[c.index]=a.children;c=a}}return s[0].children}function getBlockBufferOffset(e,t,r){return 64*((e.blocksPerLine+1)*t+r)}function decodeScan(e,t,r,n,i,o,s,a,c){let l=arguments.length>9&&void 0!==arguments[9]&&arguments[9];const f=r.mcusPerLine,u=r.progressive,h=t;let d=0,p=0;function readBit(){if(p>0){p--;return d>>p&1}d=e[t++];if(255===d){const n=e[t++];if(n){if(220===n&&l){const n=readUint16(e,t+=2);t+=2;if(n>0&&n!==r.scanLines)throw new DNLMarkerError("Found DNL marker (0xFFDC) while parsing scan data",n)}else if(217===n){if(l){const e=y*(8===r.precision?8:0);if(e>0&&Math.round(r.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 ${(d<<8|n).toString(16)}`)}}p=7;return d>>>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 g=0;let m,b=0;let y=0;function decodeMcu(e,t,r,n,i){const o=r%f;y=(r/f|0)*e.v+n;const s=o*e.h+i;t(e,getBlockBufferOffset(e,y,s))}function decodeBlock(e,t,r){y=r/e.blocksPerLine|0;const n=r%e.blocksPerLine;t(e,getBlockBufferOffset(e,y,n))}const x=n.length;let v,k,_,C,I,T;T=u?0===o?0===a?function decodeDCFirst(e,t){const r=decodeHuffman(e.huffmanTableDC),n=0===r?0:receiveAndExtend(r)<<c;e.blockData[t]=e.pred+=n}:function decodeDCSuccessive(e,t){e.blockData[t]|=readBit()<<c}:0===a?function decodeACFirst(e,t){if(g>0){g--;return}let r=o;const n=s;for(;r<=n;){const n=decodeHuffman(e.huffmanTableAC),i=15&n,o=n>>4;if(0===i){if(o<15){g=receive(o)+(1<<o)-1;break}r+=16;continue}r+=o;const s=w[r];e.blockData[t+s]=receiveAndExtend(i)*(1<<c);r++}}:function decodeACSuccessive(e,t){let r=o;const n=s;let i,a,l=0;for(;r<=n;){const n=t+w[r],o=e.blockData[n]<0?-1:1;switch(b){case 0:a=decodeHuffman(e.huffmanTableAC);i=15&a;l=a>>4;if(0===i)if(l<15){g=receive(l)+(1<<l);b=4}else{l=16;b=1}else{if(1!==i)throw new JpegError("invalid ACn encoding");m=receiveAndExtend(i);b=l?2:3}continue;case 1:case 2:if(e.blockData[n])e.blockData[n]+=o*(readBit()<<c);else{l--;0===l&&(b=2===b?3:0)}break;case 3:if(e.blockData[n])e.blockData[n]+=o*(readBit()<<c);else{e.blockData[n]=m<<c;b=0}break;case 4:e.blockData[n]&&(e.blockData[n]+=o*(readBit()<<c))}r++}if(4===b){g--;0===g&&(b=0)}}:function decodeBaseline(e,t){const r=decodeHuffman(e.huffmanTableDC),n=0===r?0:receiveAndExtend(r);e.blockData[t]=e.pred+=n;let i=1;for(;i<64;){const r=decodeHuffman(e.huffmanTableAC),n=15&r,o=r>>4;if(0===n){if(o<15)break;i+=16;continue}i+=o;const s=w[i];e.blockData[t+s]=receiveAndExtend(n);i++}};let P,S=0;const B=1===x?n[0].blocksPerLine*n[0].blocksPerColumn:f*r.mcusPerColumn;let A,O;for(;S<=B;){const r=i?Math.min(B-S,i):B;if(r>0){for(k=0;k<x;k++)n[k].pred=0;g=0;if(1===x){v=n[0];for(I=0;I<r;I++){decodeBlock(v,T,S);S++}}else for(I=0;I<r;I++){for(k=0;k<x;k++){v=n[k];A=v.h;O=v.v;for(_=0;_<O;_++)for(C=0;C<A;C++)decodeMcu(v,T,S,_,C)}S++}}p=0;P=findNextFileMarker(e,t);if(!P)break;if(P.invalid){util_warn(`decodeScan - ${r>0?"unexpected":"excessive"} MCU data, current marker is: ${P.invalid}`);t=P.offset}if(!(P.marker>=65488&&P.marker<=65495))break;t+=2}return t-h}function quantizeAndInverse(e,t,r){const n=e.quantizationTable,i=e.blockData;let o,s,a,c,l,f,u,h,d,p,g,m,b,y,x,w,B;if(!n)throw new JpegError("missing required Quantization Table.");for(let e=0;e<64;e+=8){d=i[t+e];p=i[t+e+1];g=i[t+e+2];m=i[t+e+3];b=i[t+e+4];y=i[t+e+5];x=i[t+e+6];w=i[t+e+7];d*=n[e];if(0!=(p|g|m|b|y|x|w)){p*=n[e+1];g*=n[e+2];m*=n[e+3];b*=n[e+4];y*=n[e+5];x*=n[e+6];w*=n[e+7];o=P*d+128>>8;s=P*b+128>>8;a=g;c=x;l=S*(p-w)+128>>8;h=S*(p+w)+128>>8;f=m<<4;u=y<<4;o=o+s+1>>1;s=o-s;B=a*T+c*I+128>>8;a=a*I-c*T+128>>8;c=B;l=l+u+1>>1;u=l-u;h=h+f+1>>1;f=h-f;o=o+c+1>>1;c=o-c;s=s+a+1>>1;a=s-a;B=l*C+h*_+2048>>12;l=l*_-h*C+2048>>12;h=B;B=f*k+u*v+2048>>12;f=f*v-u*k+2048>>12;u=B;r[e]=o+h;r[e+7]=o-h;r[e+1]=s+u;r[e+6]=s-u;r[e+2]=a+f;r[e+5]=a-f;r[e+3]=c+l;r[e+4]=c-l}else{B=P*d+512>>10;r[e]=B;r[e+1]=B;r[e+2]=B;r[e+3]=B;r[e+4]=B;r[e+5]=B;r[e+6]=B;r[e+7]=B}}for(let e=0;e<8;++e){d=r[e];p=r[e+8];g=r[e+16];m=r[e+24];b=r[e+32];y=r[e+40];x=r[e+48];w=r[e+56];if(0!=(p|g|m|b|y|x|w)){o=P*d+2048>>12;s=P*b+2048>>12;a=g;c=x;l=S*(p-w)+2048>>12;h=S*(p+w)+2048>>12;f=m;u=y;o=4112+(o+s+1>>1);s=o-s;B=a*T+c*I+2048>>12;a=a*I-c*T+2048>>12;c=B;l=l+u+1>>1;u=l-u;h=h+f+1>>1;f=h-f;o=o+c+1>>1;c=o-c;s=s+a+1>>1;a=s-a;B=l*C+h*_+2048>>12;l=l*_-h*C+2048>>12;h=B;B=f*k+u*v+2048>>12;f=f*v-u*k+2048>>12;u=B;d=o+h;w=o-h;p=s+u;x=s-u;g=a+f;y=a-f;m=c+l;b=c-l;d<16?d=0:d>=4080?d=255:d>>=4;p<16?p=0:p>=4080?p=255:p>>=4;g<16?g=0:g>=4080?g=255:g>>=4;m<16?m=0:m>=4080?m=255:m>>=4;b<16?b=0:b>=4080?b=255:b>>=4;y<16?y=0:y>=4080?y=255:y>>=4;x<16?x=0:x>=4080?x=255:x>>=4;w<16?w=0:w>=4080?w=255:w>>=4;i[t+e]=d;i[t+e+8]=p;i[t+e+16]=g;i[t+e+24]=m;i[t+e+32]=b;i[t+e+40]=y;i[t+e+48]=x;i[t+e+56]=w}else{B=P*d+8192>>14;B=B<-2040?0:B>=2024?255:B+2056>>4;i[t+e]=B;i[t+e+8]=B;i[t+e+16]=B;i[t+e+24]=B;i[t+e+32]=B;i[t+e+40]=B;i[t+e+48]=B;i[t+e+56]=B}}}function buildComponentData(e,t){const r=t.blocksPerLine,n=t.blocksPerColumn,i=new Int16Array(64);for(let e=0;e<n;e++)for(let n=0;n<r;n++){quantizeAndInverse(t,getBlockBufferOffset(t,e,n),i)}return t.blockData}function findNextFileMarker(e,t){let r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t;const n=e.length-1;let i=r<t?r:t;if(t>=n)return null;const o=readUint16(e,t);if(o>=65472&&o<=65534)return{invalid:null,marker:o,offset:t};let s=readUint16(e,i);for(;!(s>=65472&&s<=65534);){if(++i>=n)return null;s=readUint16(e,i)}return{invalid:o.toString(16),marker:s,offset:i}}class JpegImage{constructor(){let{decodeTransform:e=null,colorTransform:t=-1}=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};this._decodeTransform=e;this._colorTransform=t}parse(e){let{dnlScanLines:t=null}=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};function readDataBlock(){const t=readUint16(e,i);i+=2;let r=i+t-2;const n=findNextFileMarker(e,r,i);if(n?.invalid){util_warn("readDataBlock - incorrect length, current marker is: "+n.invalid);r=n.offset}const o=e.subarray(i,r);i+=o.length;return o}function prepareComponents(e){const t=Math.ceil(e.samplesPerLine/8/e.maxH),r=Math.ceil(e.scanLines/8/e.maxV);for(const n of e.components){const i=Math.ceil(Math.ceil(e.samplesPerLine/8)*n.h/e.maxH),o=Math.ceil(Math.ceil(e.scanLines/8)*n.v/e.maxV),s=t*n.h,a=64*(r*n.v)*(s+1);n.blockData=new Int16Array(a);n.blocksPerLine=i;n.blocksPerColumn=o}e.mcusPerLine=t;e.mcusPerColumn=r}let r,n,i=0,o=null,s=null,a=0;const c=[],l=[],f=[];let u=readUint16(e,i);i+=2;if(65496!==u)throw new JpegError("SOI not found");u=readUint16(e,i);i+=2;e:for(;65497!==u;){let h,d,p;switch(u){case 65504:case 65505:case 65506:case 65507:case 65508:case 65509:case 65510:case 65511:case 65512:case 65513:case 65514:case 65515:case 65516:case 65517:case 65518:case 65519:case 65534:const g=readDataBlock();65504===u&&74===g[0]&&70===g[1]&&73===g[2]&&70===g[3]&&0===g[4]&&(o={version:{major:g[5],minor:g[6]},densityUnits:g[7],xDensity:g[8]<<8|g[9],yDensity:g[10]<<8|g[11],thumbWidth:g[12],thumbHeight:g[13],thumbData:g.subarray(14,14+3*g[12]*g[13])});65518===u&&65===g[0]&&100===g[1]&&111===g[2]&&98===g[3]&&101===g[4]&&(s={version:g[5]<<8|g[6],flags0:g[7]<<8|g[8],flags1:g[9]<<8|g[10],transformCode:g[11]});break;case 65499:const m=readUint16(e,i);i+=2;const b=m+i-2;let y;for(;i<b;){const t=e[i++],r=new Uint16Array(64);if(t>>4==0)for(d=0;d<64;d++){y=w[d];r[y]=e[i++]}else{if(t>>4!=1)throw new JpegError("DQT - invalid table spec");for(d=0;d<64;d++){y=w[d];r[y]=readUint16(e,i);i+=2}}c[15&t]=r}break;case 65472:case 65473:case 65474:if(r)throw new JpegError("Only single frame JPEGs supported");i+=2;r={};r.extended=65473===u;r.progressive=65474===u;r.precision=e[i++];const x=readUint16(e,i);i+=2;r.scanLines=t||x;r.samplesPerLine=readUint16(e,i);i+=2;r.components=[];r.componentIds={};const v=e[i++];let k=0,_=0;for(h=0;h<v;h++){const t=e[i],n=e[i+1]>>4,o=15&e[i+1];k<n&&(k=n);_<o&&(_=o);const s=e[i+2];p=r.components.push({h:n,v:o,quantizationId:s,quantizationTable:null});r.componentIds[t]=p-1;i+=3}r.maxH=k;r.maxV=_;prepareComponents(r);break;case 65476:const C=readUint16(e,i);i+=2;for(h=2;h<C;){const t=e[i++],r=new Uint8Array(16);let n=0;for(d=0;d<16;d++,i++)n+=r[d]=e[i];const o=new Uint8Array(n);for(d=0;d<n;d++,i++)o[d]=e[i];h+=17+n;(t>>4==0?f:l)[15&t]=buildHuffmanTable(r,o)}break;case 65501:i+=2;n=readUint16(e,i);i+=2;break;case 65498:const I=1==++a&&!t;i+=2;const T=e[i++],P=[];for(h=0;h<T;h++){const t=e[i++],n=r.componentIds[t],o=r.components[n];o.index=t;const s=e[i++];o.huffmanTableDC=f[s>>4];o.huffmanTableAC=l[15&s];P.push(o)}const S=e[i++],B=e[i++],A=e[i++];try{const t=decodeScan(e,i,r,P,n,S,B,A>>4,15&A,I);i+=t}catch(t){if(t instanceof DNLMarkerError){util_warn(`${t.message} -- attempting to re-parse the JPEG image.`);return this.parse(e,{dnlScanLines:t.scanLines})}if(t instanceof EOIMarkerError){util_warn(`${t.message} -- ignoring the rest of the image data.`);break e}throw t}break;case 65500:i+=4;break;case 65535:255!==e[i]&&i--;break;default:const O=findNextFileMarker(e,i-2,i-3);if(O?.invalid){util_warn("JpegImage.parse - unexpected data, current marker is: "+O.invalid);i=O.offset;break}if(!O||i>=e.length-1){util_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: "+u.toString(16))}u=readUint16(e,i);i+=2}if(!r)throw new JpegError("JpegImage.parse - no frame data found.");this.width=r.samplesPerLine;this.height=r.scanLines;this.jfif=o;this.adobe=s;this.components=[];for(const e of r.components){const t=c[e.quantizationId];t&&(e.quantizationTable=t);this.components.push({index:e.index,output:buildComponentData(0,e),scaleX:e.h/r.maxH,scaleY:e.v/r.maxV,blocksPerLine:e.blocksPerLine,blocksPerColumn:e.blocksPerColumn})}this.numComponents=this.components.length}_getLinearizedBlockData(e,t){let r=arguments.length>2&&void 0!==arguments[2]&&arguments[2];const n=this.width/e,i=this.height/t;let o,s,a,c,l,f,u,h,d,p,g,m=0;const b=this.components.length,y=e*t*b,x=new Uint8ClampedArray(y),w=new Uint32Array(e),v=4294967288;let k;for(u=0;u<b;u++){o=this.components[u];s=o.scaleX*n;a=o.scaleY*i;m=u;g=o.output;c=o.blocksPerLine+1<<3;if(s!==k){for(l=0;l<e;l++){h=0|l*s;w[l]=(h&v)<<3|7&h}k=s}for(f=0;f<t;f++){h=0|f*a;p=c*(h&v)|(7&h)<<3;for(l=0;l<e;l++){x[m]=g[p+w[l]];m+=b}}}let _=this._decodeTransform;r||4!==b||_||(_=new Int32Array([-256,255,-256,255,-256,255,-256,255]));if(_)for(u=0;u<y;)for(h=0,d=0;h<b;h++,u++,d+=2)x[u]=(x[u]*_[d]>>8)+_[d+1];return x}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,r,n;for(let i=0,o=e.length;i<o;i+=3){t=e[i];r=e[i+1];n=e[i+2];e[i]=t-179.456+1.402*n;e[i+1]=t+135.459-.344*r-.714*n;e[i+2]=t-226.816+1.772*r}return e}_convertYccToRgba(e,t){for(let r=0,n=0,i=e.length;r<i;r+=3,n+=4){const i=e[r],o=e[r+1],s=e[r+2];t[n]=i-179.456+1.402*s;t[n+1]=i+135.459-.344*o-.714*s;t[n+2]=i-226.816+1.772*o;t[n+3]=255}return t}_convertYcckToRgb(e){let t,r,n,i,o=0;for(let s=0,a=e.length;s<a;s+=4){t=e[s];r=e[s+1];n=e[s+2];i=e[s+3];e[o++]=r*(-660635669420364e-19*r+.000437130475926232*n-54080610064599e-18*t+.00048449797120281*i-.154362151871126)-122.67195406894+n*(-.000957964378445773*n+.000817076911346625*t-.00477271405408747*i+1.53380253221734)+t*(.000961250184130688*t-.00266257332283933*i+.48357088451265)+i*(-.000336197177618394*i+.484791561490776);e[o++]=107.268039397724+r*(219927104525741e-19*r-.000640992018297945*n+.000659397001245577*t+.000426105652938837*i-.176491792462875)+n*(-.000778269941513683*n+.00130872261408275*t+.000770482631801132*i-.151051492775562)+t*(.00126935368114843*t-.00265090189010898*i+.25802910206845)+i*(-.000318913117588328*i-.213742400323665);e[o++]=r*(-.000570115196973677*r-263409051004589e-19*n+.0020741088115012*t-.00288260236853442*i+.814272968359295)-20.810012546947+n*(-153496057440975e-19*n-.000132689043961446*t+.000560833691242812*i-.195152027534049)+t*(.00174418132927582*t-.00255243321439347*i+.116935020465145)+i*(-.000343531996510555*i+.24165260232407)}return e.subarray(0,o)}_convertYcckToRgba(e){for(let t=0,r=e.length;t<r;t+=4){const r=e[t],n=e[t+1],i=e[t+2],o=e[t+3];e[t]=n*(-660635669420364e-19*n+.000437130475926232*i-54080610064599e-18*r+.00048449797120281*o-.154362151871126)-122.67195406894+i*(-.000957964378445773*i+.000817076911346625*r-.00477271405408747*o+1.53380253221734)+r*(.000961250184130688*r-.00266257332283933*o+.48357088451265)+o*(-.000336197177618394*o+.484791561490776);e[t+1]=107.268039397724+n*(219927104525741e-19*n-.000640992018297945*i+.000659397001245577*r+.000426105652938837*o-.176491792462875)+i*(-.000778269941513683*i+.00130872261408275*r+.000770482631801132*o-.151051492775562)+r*(.00126935368114843*r-.00265090189010898*o+.25802910206845)+o*(-.000318913117588328*o-.213742400323665);e[t+2]=n*(-.000570115196973677*n-263409051004589e-19*i+.0020741088115012*r-.00288260236853442*o+.814272968359295)-20.810012546947+i*(-153496057440975e-19*i-.000132689043961446*r+.000560833691242812*o-.195152027534049)+r*(.00174418132927582*r-.00255243321439347*o+.116935020465145)+o*(-.000343531996510555*o+.24165260232407);e[t+3]=255}return e}_convertYcckToCmyk(e){let t,r,n;for(let i=0,o=e.length;i<o;i+=4){t=e[i];r=e[i+1];n=e[i+2];e[i]=434.456-t-1.402*n;e[i+1]=119.541-t+.344*r+.714*n;e[i+2]=481.816-t-1.772*r}return e}_convertCmykToRgb(e){let t,r,n,i,o=0;for(let s=0,a=e.length;s<a;s+=4){t=e[s];r=e[s+1];n=e[s+2];i=e[s+3];e[o++]=255+t*(-6747147073602441e-20*t+.0008379262121013727*r+.0002894718188643294*n+.003264231057537806*i-1.1185611867203937)+r*(26374107616089405e-21*r-8626949158638572e-20*n-.0002748769067499491*i-.02155688794978967)+n*(-3878099212869363e-20*n-.0003267808279485286*i+.0686742238595345)-i*(.0003361971776183937*i+.7430659151342254);e[o++]=255+t*(.00013596372813588848*t+.000924537132573585*r+.00010567359618683593*n+.0004791864687436512*i-.3109689587515875)+r*(-.00023545346108370344*r+.0002702845253534714*n+.0020200308977307156*i-.7488052167015494)+n*(6834815998235662e-20*n+.00015168452363460973*i-.09751927774728933)-i*(.0003189131175883281*i+.7364883807733168);e[o++]=255+t*(13598650411385307e-21*t+.00012423956175490851*r+.0004751985097583589*n-36729317476630422e-22*i-.05562186980264034)+r*(.00016141380598724676*r+.0009692239130725186*n+.0007782692450036253*i-.44015232367526463)+n*(5.068882914068769e-7*n+.0017778369011375071*i-.7591454649749609)-i*(.0003435319965105553*i+.7063770186160144)}return e.subarray(0,o)}_convertCmykToRgba(e){for(let t=0,r=e.length;t<r;t+=4){const r=e[t],n=e[t+1],i=e[t+2],o=e[t+3];e[t]=255+r*(-6747147073602441e-20*r+.0008379262121013727*n+.0002894718188643294*i+.003264231057537806*o-1.1185611867203937)+n*(26374107616089405e-21*n-8626949158638572e-20*i-.0002748769067499491*o-.02155688794978967)+i*(-3878099212869363e-20*i-.0003267808279485286*o+.0686742238595345)-o*(.0003361971776183937*o+.7430659151342254);e[t+1]=255+r*(.00013596372813588848*r+.000924537132573585*n+.00010567359618683593*i+.0004791864687436512*o-.3109689587515875)+n*(-.00023545346108370344*n+.0002702845253534714*i+.0020200308977307156*o-.7488052167015494)+i*(6834815998235662e-20*i+.00015168452363460973*o-.09751927774728933)-o*(.0003189131175883281*o+.7364883807733168);e[t+2]=255+r*(13598650411385307e-21*r+.00012423956175490851*n+.0004751985097583589*i-36729317476630422e-22*o-.05562186980264034)+n*(.00016141380598724676*n+.0009692239130725186*i+.0007782692450036253*o-.44015232367526463)+i*(5.068882914068769e-7*i+.0017778369011375071*o-.7591454649749609)-o*(.0003435319965105553*o+.7063770186160144);e[t+3]=255}return e}getData(e){let{width:t,height:r,forceRGBA:n=!1,forceRGB:i=!1,isSourcePDF:o=!1}=e;if(this.numComponents>4)throw new JpegError("Unsupported color mode");const s=this._getLinearizedBlockData(t,r,o);if(1===this.numComponents&&(n||i)){const e=s.length*(n?4:3),t=new Uint8ClampedArray(e);let r=0;if(n)!function grayToRGBA(e,t){if(util_FeatureTest.isLittleEndian)for(let r=0,n=e.length;r<n;r++)t[r]=65793*e[r]|4278190080;else for(let r=0,n=e.length;r<n;r++)t[r]=16843008*e[r]|255}(s,new Uint32Array(t.buffer));else for(const e of s){t[r++]=e;t[r++]=e;t[r++]=e}return t}if(3===this.numComponents&&this._isColorConversionNeeded){if(n){const e=new Uint8ClampedArray(s.length/3*4);return this._convertYccToRgba(s,e)}return this._convertYccToRgb(s)}if(4===this.numComponents){if(this._isColorConversionNeeded)return n?this._convertYcckToRgba(s):i?this._convertYcckToRgb(s):this._convertYcckToCmyk(s);if(n)return this._convertCmykToRgba(s);if(i)return this._convertCmykToRgb(s)}return s}}__webpack_require__(8992),__webpack_require__(4520);class JpxError extends r{constructor(e){super(`JPX error: ${e}`,"JpxError")}}const B={LL:0,LH:1,HL:1,HH:2};class JpxImage{constructor(){this.failOnCorruptedImage=!1}parse(e){if(65359===readUint16(e,0)){this.parseCodestream(e,0,e.length);return}const t=e.length;let r=0;for(;r<t;){let n=8,i=readUint32(e,r);const o=readUint32(e,r+4);r+=n;if(1===i){i=4294967296*readUint32(e,r)+readUint32(e,r+4);r+=8;n+=8}0===i&&(i=t-r+n);if(i<n)throw new JpxError("Invalid box field size");const s=i-n;let a=!0;switch(o){case 1785737832:a=!1;break;case 1668246642:const t=e[r];if(1===t){const t=readUint32(e,r+3);switch(t){case 16:case 17:case 18:break;default:util_warn("Unknown colorspace "+t)}}else 2===t&&info("ICC profile not supported");break;case 1785737827:this.parseCodestream(e,r,r+s);break;case 1783636e3:218793738!==readUint32(e,r)&&util_warn("Invalid JP2 signature");break;case 1783634458:case 1718909296:case 1920099697:case 1919251232:case 1768449138:break;default:util_warn(`Unsupported header type ${o} (${String.fromCharCode(o>>24&255,o>>16&255,o>>8&255,255&o)}).`)}a&&(r+=s)}}parseImageProperties(e){let t=e.getByte();for(;t>=0;){const r=t;t=e.getByte();if(65361===(r<<8|t)){e.skip(4);const t=e.getInt32()>>>0,r=e.getInt32()>>>0,n=e.getInt32()>>>0,i=e.getInt32()>>>0;e.skip(16);const o=e.getUint16();this.width=t-n;this.height=r-i;this.componentsCount=o;this.bitsPerComponent=8;return}}throw new JpxError("No size marker found in JPX stream")}parseCodestream(e,t,r){const n={};let i=!1;try{let o=t;for(;o+1<r;){const t=readUint16(e,o);o+=2;let r,s,a,c,l,f,u=0;switch(t){case 65359:n.mainHeader=!0;break;case 65497:break;case 65361:u=readUint16(e,o);const h={};h.Xsiz=readUint32(e,o+4);h.Ysiz=readUint32(e,o+8);h.XOsiz=readUint32(e,o+12);h.YOsiz=readUint32(e,o+16);h.XTsiz=readUint32(e,o+20);h.YTsiz=readUint32(e,o+24);h.XTOsiz=readUint32(e,o+28);h.YTOsiz=readUint32(e,o+32);const d=readUint16(e,o+36);h.Csiz=d;const p=[];r=o+38;for(let t=0;t<d;t++){const t={precision:1+(127&e[r]),isSigned:!!(128&e[r]),XRsiz:e[r+1],YRsiz:e[r+2]};r+=3;calculateComponentDimensions(t,h);p.push(t)}n.SIZ=h;n.components=p;calculateTileGrids(n,p);n.QCC=[];n.COC=[];break;case 65372:u=readUint16(e,o);const g={};r=o+2;s=e[r++];switch(31&s){case 0:c=8;l=!0;break;case 1:c=16;l=!1;break;case 2:c=16;l=!0;break;default:throw new Error("Invalid SQcd value "+s)}g.noQuantization=8===c;g.scalarExpounded=l;g.guardBits=s>>5;a=[];for(;r<u+o;){const t={};if(8===c){t.epsilon=e[r++]>>3;t.mu=0}else{t.epsilon=e[r]>>3;t.mu=(7&e[r])<<8|e[r+1];r+=2}a.push(t)}g.SPqcds=a;if(n.mainHeader)n.QCD=g;else{n.currentTile.QCD=g;n.currentTile.QCC=[]}break;case 65373:u=readUint16(e,o);const m={};r=o+2;let b;if(n.SIZ.Csiz<257)b=e[r++];else{b=readUint16(e,r);r+=2}s=e[r++];switch(31&s){case 0:c=8;l=!0;break;case 1:c=16;l=!1;break;case 2:c=16;l=!0;break;default:throw new Error("Invalid SQcd value "+s)}m.noQuantization=8===c;m.scalarExpounded=l;m.guardBits=s>>5;a=[];for(;r<u+o;){const t={};if(8===c){t.epsilon=e[r++]>>3;t.mu=0}else{t.epsilon=e[r]>>3;t.mu=(7&e[r])<<8|e[r+1];r+=2}a.push(t)}m.SPqcds=a;n.mainHeader?n.QCC[b]=m:n.currentTile.QCC[b]=m;break;case 65362:u=readUint16(e,o);const y={};r=o+2;const x=e[r++];y.entropyCoderWithCustomPrecincts=!!(1&x);y.sopMarkerUsed=!!(2&x);y.ephMarkerUsed=!!(4&x);y.progressionOrder=e[r++];y.layersCount=readUint16(e,r);r+=2;y.multipleComponentTransform=e[r++];y.decompositionLevelsCount=e[r++];y.xcb=2+(15&e[r++]);y.ycb=2+(15&e[r++]);const w=e[r++];y.selectiveArithmeticCodingBypass=!!(1&w);y.resetContextProbabilities=!!(2&w);y.terminationOnEachCodingPass=!!(4&w);y.verticallyStripe=!!(8&w);y.predictableTermination=!!(16&w);y.segmentationSymbolUsed=!!(32&w);y.reversibleTransformation=e[r++];if(y.entropyCoderWithCustomPrecincts){const t=[];for(;r<u+o;){const n=e[r++];t.push({PPx:15&n,PPy:n>>4})}y.precinctsSizes=t}const v=[];y.selectiveArithmeticCodingBypass&&v.push("selectiveArithmeticCodingBypass");y.terminationOnEachCodingPass&&v.push("terminationOnEachCodingPass");y.verticallyStripe&&v.push("verticallyStripe");y.predictableTermination&&v.push("predictableTermination");if(v.length>0){i=!0;util_warn(`JPX: Unsupported COD options (${v.join(", ")}).`)}if(n.mainHeader)n.COD=y;else{n.currentTile.COD=y;n.currentTile.COC=[]}break;case 65424:u=readUint16(e,o);f={};f.index=readUint16(e,o+2);f.length=readUint32(e,o+4);f.dataEnd=f.length+o-2;f.partIndex=e[o+8];f.partsCount=e[o+9];n.mainHeader=!1;if(0===f.partIndex){f.COD=n.COD;f.COC=n.COC.slice(0);f.QCD=n.QCD;f.QCC=n.QCC.slice(0)}n.currentTile=f;break;case 65427:f=n.currentTile;if(0===f.partIndex){initializeTile(n,f.index);buildPackets(n)}u=f.dataEnd-o;parseTilePackets(n,e,o,u);break;case 65363:util_warn("JPX: Codestream code 0xFF53 (COC) is not implemented.");case 65365:case 65367:case 65368:case 65380:u=readUint16(e,o);break;default:throw new Error("Unknown codestream code: "+t.toString(16))}o+=u}}catch(e){if(i||this.failOnCorruptedImage)throw new JpxError(e.message);util_warn(`JPX: Trying to recover from: "${e.message}".`)}this.tiles=function transformComponents(e){const t=e.SIZ,r=e.components,n=t.Csiz,i=[];for(let t=0,o=e.tiles.length;t<o;t++){const o=e.tiles[t],s=[];for(let t=0;t<n;t++)s[t]=transformTile(e,o,t);const a=s[0],c=new Uint8ClampedArray(a.items.length*n),l={left:a.left,top:a.top,width:a.width,height:a.height,items:c};let f,u,h,d,p,g,m,b=0;if(o.codingStyleDefaultParameters.multipleComponentTransform){const e=4===n,t=s[0].items,i=s[1].items,a=s[2].items,l=e?s[3].items:null;f=r[0].precision-8;u=.5+(128<<f);const y=o.components[0],x=n-3;d=t.length;if(y.codingStyleParameters.reversibleTransformation)for(h=0;h<d;h++,b+=x){p=t[h]+u;g=i[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<d;h++,b+=x){p=t[h]+u;g=i[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<d;h++,b+=4)c[b]=l[h]+u>>f}else for(let e=0;e<n;e++){const t=s[e].items;f=r[e].precision-8;u=.5+(128<<f);for(b=e,h=0,d=t.length;h<d;h++){c[b]=t[h]+u>>f;b+=n}}i.push(l)}return i}(n);this.width=n.SIZ.Xsiz-n.SIZ.XOsiz;this.height=n.SIZ.Ysiz-n.SIZ.YOsiz;this.componentsCount=n.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 r=e.SIZ,n=[];let i;const o=Math.ceil((r.Xsiz-r.XTOsiz)/r.XTsiz),s=Math.ceil((r.Ysiz-r.YTOsiz)/r.YTsiz);for(let e=0;e<s;e++)for(let t=0;t<o;t++){i={};i.tx0=Math.max(r.XTOsiz+t*r.XTsiz,r.XOsiz);i.ty0=Math.max(r.YTOsiz+e*r.YTsiz,r.YOsiz);i.tx1=Math.min(r.XTOsiz+(t+1)*r.XTsiz,r.Xsiz);i.ty1=Math.min(r.YTOsiz+(e+1)*r.YTsiz,r.Ysiz);i.width=i.tx1-i.tx0;i.height=i.ty1-i.ty0;i.components=[];n.push(i)}e.tiles=n;for(let e=0,o=r.Csiz;e<o;e++){const r=t[e];for(let t=0,o=n.length;t<o;t++){const o={};i=n[t];o.tcx0=Math.ceil(i.tx0/r.XRsiz);o.tcy0=Math.ceil(i.ty0/r.YRsiz);o.tcx1=Math.ceil(i.tx1/r.XRsiz);o.tcy1=Math.ceil(i.ty1/r.YRsiz);o.width=o.tcx1-o.tcx0;o.height=o.tcy1-o.tcy0;i.components[e]=o}}}function getBlocksDimensions(e,t,r){const n=t.codingStyleParameters,i={};if(n.entropyCoderWithCustomPrecincts){i.PPx=n.precinctsSizes[r].PPx;i.PPy=n.precinctsSizes[r].PPy}else{i.PPx=15;i.PPy=15}i.xcb_=r>0?Math.min(n.xcb,i.PPx-1):Math.min(n.xcb,i.PPx);i.ycb_=r>0?Math.min(n.ycb,i.PPy-1):Math.min(n.ycb,i.PPy);return i}function buildPrecincts(e,t,r){const n=1<<r.PPx,i=1<<r.PPy,o=0===t.resLevel,s=1<<r.PPx+(o?0:-1),a=1<<r.PPy+(o?0:-1),c=t.trx1>t.trx0?Math.ceil(t.trx1/n)-Math.floor(t.trx0/n):0,l=t.try1>t.try0?Math.ceil(t.try1/i)-Math.floor(t.try0/i):0,f=c*l;t.precinctParameters={precinctWidth:n,precinctHeight:i,numprecinctswide:c,numprecinctshigh:l,numprecincts:f,precinctWidthInSubband:s,precinctHeightInSubband:a}}function buildCodeblocks(e,t,r){const n=r.xcb_,i=r.ycb_,o=1<<n,s=1<<i,a=t.tbx0>>n,c=t.tby0>>i,l=t.tbx1+o-1>>n,f=t.tby1+s-1>>i,u=t.resolution.precinctParameters,h=[],d=[];let p,g,m,b;for(g=c;g<f;g++)for(p=a;p<l;p++){m={cbx:p,cby:g,tbx0:o*p,tby0:s*g,tbx1:o*(p+1),tby1:s*(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)/u.precinctWidthInSubband)+Math.floor((m.tby0_-t.tby0)/u.precinctHeightInSubband)*u.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=d[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 d[b]=e={cbxMin:p,cbyMin:g,cbxMax:p,cbyMax:g};m.precinct=e}t.codeblockParameters={codeblockWidth:n,codeblockHeight:i,numcodeblockwide:l-a+1,numcodeblockhigh:f-c+1};t.codeblocks=h;t.precincts=d}function createPacket(e,t,r){const n=[],i=e.subbands;for(let e=0,r=i.length;e<r;e++){const r=i[e].codeblocks;for(let e=0,i=r.length;e<i;e++){const i=r[e];i.precinctNumber===t&&n.push(i)}}return{layerNumber:r,codeblocks:n}}function LayerResolutionComponentPositionIterator(e){const t=e.SIZ,r=e.currentTile.index,n=e.tiles[r],i=n.codingStyleDefaultParameters.layersCount,o=t.Csiz;let s=0;for(let e=0;e<o;e++)s=Math.max(s,n.components[e].codingStyleParameters.decompositionLevelsCount);let a=0,c=0,l=0,f=0;this.nextPacket=function JpxImage_nextPacket(){for(;a<i;a++){for(;c<=s;c++){for(;l<o;l++){const e=n.components[l];if(c>e.codingStyleParameters.decompositionLevelsCount)continue;const t=e.resolutions[c],r=t.precinctParameters.numprecincts;for(;f<r;){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,r=e.currentTile.index,n=e.tiles[r],i=n.codingStyleDefaultParameters.layersCount,o=t.Csiz;let s=0;for(let e=0;e<o;e++)s=Math.max(s,n.components[e].codingStyleParameters.decompositionLevelsCount);let a=0,c=0,l=0,f=0;this.nextPacket=function JpxImage_nextPacket(){for(;a<=s;a++){for(;c<i;c++){for(;l<o;l++){const e=n.components[l];if(a>e.codingStyleParameters.decompositionLevelsCount)continue;const t=e.resolutions[a],r=t.precinctParameters.numprecincts;for(;f<r;){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,r=e.currentTile.index,n=e.tiles[r],i=n.codingStyleDefaultParameters.layersCount,o=t.Csiz;let s,a,c,l,f=0;for(c=0;c<o;c++){const e=n.components[c];f=Math.max(f,e.codingStyleParameters.decompositionLevelsCount)}const u=new Int32Array(f+1);for(a=0;a<=f;++a){let e=0;for(c=0;c<o;++c){const t=n.components[c].resolutions;a<t.length&&(e=Math.max(e,t[a].precinctParameters.numprecincts))}u[a]=e}s=0;a=0;c=0;l=0;this.nextPacket=function JpxImage_nextPacket(){for(;a<=f;a++){for(;l<u[a];l++){for(;c<o;c++){const e=n.components[c];if(a>e.codingStyleParameters.decompositionLevelsCount)continue;const t=e.resolutions[a],r=t.precinctParameters.numprecincts;if(!(l>=r)){for(;s<i;){const e=createPacket(t,l,s);s++;return e}s=0}}c=0}l=0}throw new JpxError("Out of packets")}}function PositionComponentResolutionLayerIterator(e){const t=e.SIZ,r=e.currentTile.index,n=e.tiles[r],i=n.codingStyleDefaultParameters.layersCount,o=t.Csiz,s=getPrecinctSizesInImageScale(n),a=s;let c=0,l=0,f=0,u=0,h=0;this.nextPacket=function JpxImage_nextPacket(){for(;h<a.maxNumHigh;h++){for(;u<a.maxNumWide;u++){for(;f<o;f++){const e=n.components[f],t=e.codingStyleParameters.decompositionLevelsCount;for(;l<=t;l++){const t=e.resolutions[l],r=s.components[f].resolutions[l],n=getPrecinctIndexIfExist(u,h,r,a,t);if(null!==n){for(;c<i;){const e=createPacket(t,n,c);c++;return e}c=0}}l=0}f=0}u=0}throw new JpxError("Out of packets")}}function ComponentPositionResolutionLayerIterator(e){const t=e.SIZ,r=e.currentTile.index,n=e.tiles[r],i=n.codingStyleDefaultParameters.layersCount,o=t.Csiz,s=getPrecinctSizesInImageScale(n);let a=0,c=0,l=0,f=0,u=0;this.nextPacket=function JpxImage_nextPacket(){for(;l<o;++l){const e=n.components[l],t=s.components[l],r=e.codingStyleParameters.decompositionLevelsCount;for(;u<t.maxNumHigh;u++){for(;f<t.maxNumWide;f++){for(;c<=r;c++){const r=e.resolutions[c],n=t.resolutions[c],o=getPrecinctIndexIfExist(f,u,n,t,r);if(null!==o){for(;a<i;){const e=createPacket(r,o,a);a++;return e}a=0}}c=0}f=0}u=0}throw new JpxError("Out of packets")}}function getPrecinctIndexIfExist(e,t,r,n,i){const o=e*n.minWidth,s=t*n.minHeight;if(o%r.width!=0||s%r.height!=0)return null;const a=s/r.width*i.precinctParameters.numprecinctswide;return o/r.height+a}function getPrecinctSizesInImageScale(e){const t=e.components.length;let r=Number.MAX_VALUE,n=Number.MAX_VALUE,i=0,o=0;const s=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,u=Number.MAX_VALUE,h=0,d=0,p=1;for(let e=c;e>=0;--e){const r=t.resolutions[e],n=p*r.precinctParameters.precinctWidth,i=p*r.precinctParameters.precinctHeight;f=Math.min(f,n);u=Math.min(u,i);h=Math.max(h,r.precinctParameters.numprecinctswide);d=Math.max(d,r.precinctParameters.numprecinctshigh);l[e]={width:n,height:i};p<<=1}r=Math.min(r,f);n=Math.min(n,u);i=Math.max(i,h);o=Math.max(o,d);s[a]={resolutions:l,minWidth:f,minHeight:u,maxNumWide:h,maxNumHigh:d}}return{components:s,minWidth:r,minHeight:n,maxNumWide:i,maxNumHigh:o}}function buildPackets(e){const t=e.SIZ,r=e.currentTile.index,n=e.tiles[r],i=t.Csiz;for(let e=0;e<i;e++){const t=n.components[e],r=t.codingStyleParameters.decompositionLevelsCount,i=[],o=[];for(let e=0;e<=r;e++){const n=getBlocksDimensions(0,t,e),s={},a=1<<r-e;s.trx0=Math.ceil(t.tcx0/a);s.try0=Math.ceil(t.tcy0/a);s.trx1=Math.ceil(t.tcx1/a);s.try1=Math.ceil(t.tcy1/a);s.resLevel=e;buildPrecincts(0,s,n);i.push(s);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=s;buildCodeblocks(0,c,n);o.push(c);s.subbands=[c]}else{const i=1<<r-e+1,a=[];c={};c.type="HL";c.tbx0=Math.ceil(t.tcx0/i-.5);c.tby0=Math.ceil(t.tcy0/i);c.tbx1=Math.ceil(t.tcx1/i-.5);c.tby1=Math.ceil(t.tcy1/i);c.resolution=s;buildCodeblocks(0,c,n);o.push(c);a.push(c);c={};c.type="LH";c.tbx0=Math.ceil(t.tcx0/i);c.tby0=Math.ceil(t.tcy0/i-.5);c.tbx1=Math.ceil(t.tcx1/i);c.tby1=Math.ceil(t.tcy1/i-.5);c.resolution=s;buildCodeblocks(0,c,n);o.push(c);a.push(c);c={};c.type="HH";c.tbx0=Math.ceil(t.tcx0/i-.5);c.tby0=Math.ceil(t.tcy0/i-.5);c.tbx1=Math.ceil(t.tcx1/i-.5);c.tby1=Math.ceil(t.tcy1/i-.5);c.resolution=s;buildCodeblocks(0,c,n);o.push(c);a.push(c);s.subbands=a}}t.resolutions=i;t.subbands=o}const o=n.codingStyleDefaultParameters.progressionOrder;switch(o){case 0:n.packetsIterator=new LayerResolutionComponentPositionIterator(e);break;case 1:n.packetsIterator=new ResolutionLayerComponentPositionIterator(e);break;case 2:n.packetsIterator=new ResolutionPositionComponentLayerIterator(e);break;case 3:n.packetsIterator=new PositionComponentResolutionLayerIterator(e);break;case 4:n.packetsIterator=new ComponentPositionResolutionLayerIterator(e);break;default:throw new JpxError(`Unsupported progression order ${o}`)}}function parseTilePackets(e,t,r,n){let i,o=0,s=0,a=!1;function readBits(e){for(;s<e;){const e=t[r+o];o++;if(a){i=i<<7|e;s+=7;a=!1}else{i=i<<8|e;s+=8}255===e&&(a=!0)}s-=e;return i>>>s&(1<<e)-1}function skipMarkerIfEqual(e){if(255===t[r+o-1]&&t[r+o]===e){skipBytes(1);return!0}if(255===t[r+o]&&t[r+o+1]===e){skipBytes(2);return!0}return!1}function skipBytes(e){o+=e}function alignToByte(){s=0;if(a){o++;a=!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 c=e.currentTile.index,l=e.tiles[c],f=e.COD.sopMarkerUsed,u=e.COD.ephMarkerUsed,h=l.packetsIterator;for(;o<n;){alignToByte();f&&skipMarkerIfEqual(145)&&skipBytes(4);const e=h.nextPacket();if(!readBits(1))continue;const n=e.layerNumber,i=[];let s;for(let t=0,r=e.codeblocks.length;t<r;t++){s=e.codeblocks[t];let r=s.precinct;const o=s.cbx-r.cbxMin,a=s.cby-r.cbyMin;let c,l,f=!1,u=!1;if(void 0!==s.included)f=!!readBits(1);else{r=s.precinct;let e;if(void 0!==r.inclusionTree)e=r.inclusionTree;else{const t=r.cbxMax-r.cbxMin+1,i=r.cbyMax-r.cbyMin+1;e=new InclusionTree(t,i,n);l=new TagTree(t,i);r.inclusionTree=e;r.zeroBitPlanesTree=l;for(let e=0;e<n;e++)if(0!==readBits(1))throw new JpxError("Invalid tag tree")}if(e.reset(o,a,n))for(;;){if(!readBits(1)){e.incrementValue(n);break}c=!e.nextLevel();if(c){s.included=!0;f=u=!0;break}}}if(!f)continue;if(u){l=r.zeroBitPlanesTree;l.reset(o,a);for(;;)if(readBits(1)){c=!l.nextLevel();if(c)break}else l.incrementValue();s.zeroBitPlanes=l.value}const h=readCodingpasses();for(;readBits(1);)s.Lblock++;const d=log2(h),p=readBits((h<1<<d?d-1:d)+s.Lblock);i.push({codeblock:s,codingpasses:h,dataLength:p})}alignToByte();u&&skipMarkerIfEqual(146);for(;i.length>0;){const e=i.shift();s=e.codeblock;void 0===s.data&&(s.data=[]);s.data.push({data:t,start:r+o,end:r+o+e.dataLength,codingpasses:e.codingpasses});o+=e.dataLength}}return o}function copyCoefficients(e,t,r,n,i,o,s,a,c){const l=n.tbx0,f=n.tby0,u=n.tbx1-n.tbx0,h=n.codeblocks,d="H"===n.type.charAt(0)?1:0,p="H"===n.type.charAt(1)?t:0;for(let r=0,g=h.length;r<g;++r){const g=h[r],m=g.tbx1_-g.tbx0_,b=g.tby1_-g.tby0_;if(0===m||0===b)continue;if(void 0===g.data)continue;const y=new BitModel(m,b,g.subbandType,g.zeroBitPlanes,o);let x=2;const w=g.data;let v,k,_,C=0,I=0;for(v=0,k=w.length;v<k;v++){_=w[v];C+=_.end-_.start;I+=_.codingpasses}const T=new Uint8Array(C);let P=0;for(v=0,k=w.length;v<k;v++){_=w[v];const e=_.data.subarray(_.start,_.end);T.set(e,P);P+=e.length}const S=new ArithmeticDecoder(T,0,C);y.setDecoder(S);for(v=0;v<I;v++){switch(x){case 0:y.runSignificancePropagationPass();break;case 1:y.runMagnitudeRefinementPass();break;case 2:y.runCleanupPass();a&&y.checkSegmentationSymbol()}c&&y.reset();x=(x+1)%3}let B=g.tbx0_-l+(g.tby0_-f)*u;const A=y.coefficentsSign,O=y.coefficentsMagnitude,L=y.bitsDecoded,E=s?0:.5;let M,D,U;P=0;const R="LL"!==n.type;for(v=0;v<b;v++){const r=2*(B/u|0)*(t-u)+d+p;for(M=0;M<m;M++){D=O[P];if(0!==D){D=(D+E)*i;0!==A[P]&&(D=-D);U=L[P];e[R?r+(B<<1):B]=s&&U>=o?D:D*(1<<o-U)}B++;P++}B+=u-m}}}function transformTile(e,t,r){const n=t.components[r],i=n.codingStyleParameters,o=n.quantizationParameters,s=i.decompositionLevelsCount,a=o.SPqcds,c=o.scalarExpounded,l=o.guardBits,f=i.segmentationSymbolUsed,u=i.resetContextProbabilities,h=e.components[r].precision,d=i.reversibleTransformation,p=d?new ReversibleTransform:new IrreversibleTransform,g=[];let m=0;for(let e=0;e<=s;e++){const t=n.resolutions[e],r=t.trx1-t.trx0,i=t.try1-t.try0,o=new Float32Array(r*i);for(let n=0,i=t.subbands.length;n<i;n++){let i,s;if(c){i=a[m].mu;s=a[m].epsilon;m++}else{i=a[0].mu;s=a[0].epsilon+(e>0?1-e:0)}const p=t.subbands[n],g=B[p.type];copyCoefficients(o,r,0,p,d?1:2**(h+g-s)*(1+i/2048),l+s-1,d,f,u)}g.push({width:r,height:i,items:o})}const b=p.calculate(g,n.tcx0,n.tcy0);return{left:n.tcx0,top:n.tcy0,width:b.width,height:b.height,items:b.items}}function initializeTile(e,t){const r=e.SIZ.Csiz,n=e.tiles[t];for(let t=0;t<r;t++){const r=n.components[t],i=void 0!==e.currentTile.QCC[t]?e.currentTile.QCC[t]:e.currentTile.QCD;r.quantizationParameters=i;const o=void 0!==e.currentTile.COC[t]?e.currentTile.COC[t]:e.currentTile.COD;r.codingStyleParameters=o}n.codingStyleDefaultParameters=e.currentTile.COD}class TagTree{constructor(e,t){const r=log2(Math.max(e,t))+1;this.levels=[];for(let n=0;n<r;n++){const r={width:e,height:t,items:[]};this.levels.push(r);e=Math.ceil(e/2);t=Math.ceil(t/2)}}reset(e,t){let r,n=0,i=0;for(;n<this.levels.length;){r=this.levels[n];const o=e+t*r.width;if(void 0!==r.items[o]){i=r.items[o];break}r.index=o;e>>=1;t>>=1;n++}n--;r=this.levels[n];r.items[r.index]=i;this.currentLevel=n;delete this.value}incrementValue(){const e=this.levels[this.currentLevel];e.items[e.index]++}nextLevel(){let e=this.currentLevel,t=this.levels[e];const r=t.items[t.index];e--;if(e<0){this.value=r;return!1}this.currentLevel=e;t=this.levels[e];t.items[t.index]=r;return!0}}class InclusionTree{constructor(e,t,r){const n=log2(Math.max(e,t))+1;this.levels=[];for(let i=0;i<n;i++){const n=new Uint8Array(e*t);for(let e=0,t=n.length;e<t;e++)n[e]=r;const i={width:e,height:t,items:n};this.levels.push(i);e=Math.ceil(e/2);t=Math.ceil(t/2)}}reset(e,t,r){let n=0;for(;n<this.levels.length;){const i=this.levels[n],o=e+t*i.width;i.index=o;const s=i.items[o];if(255===s)break;if(s>r){this.currentLevel=n;this.propagateValues();return!1}e>>=1;t>>=1;n++}this.currentLevel=n-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 r=t.items[t.index];for(;--e>=0;){t=this.levels[e];t.items[t.index]=r}}nextLevel(){let e=this.currentLevel,t=this.levels[e];const r=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]=r;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,r,n,i){this.width=e;this.height=t;let o;o="HH"===r?BitModel.HHContextLabel:"HL"===r?BitModel.HLContextLabel:BitModel.LLAndLHContextsLabel;this.contextLabelTable=o;const s=e*t;this.neighborsSignificance=new Uint8Array(s);this.coefficentsSign=new Uint8Array(s);let a;a=i>14?new Uint32Array(s):i>6?new Uint16Array(s):new Uint8Array(s);this.coefficentsMagnitude=a;this.processingFlags=new Uint8Array(s);const c=new Uint8Array(s);if(0!==n)for(let e=0;e<s;e++)c[e]=n;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,r){const n=this.neighborsSignificance,i=this.width,o=this.height,s=t>0,a=t+1<i;let c;if(e>0){c=r-i;s&&(n[c-1]+=16);a&&(n[c+1]+=16);n[c]+=4}if(e+1<o){c=r+i;s&&(n[c-1]+=16);a&&(n[c+1]+=16);n[c]+=4}s&&(n[r-1]+=1);a&&(n[r+1]+=1);n[r]|=128}runSignificancePropagationPass(){const e=this.decoder,t=this.width,r=this.height,n=this.coefficentsMagnitude,i=this.coefficentsSign,o=this.neighborsSignificance,s=this.processingFlags,a=this.contexts,c=this.contextLabelTable,l=this.bitsDecoded;for(let f=0;f<r;f+=4)for(let u=0;u<t;u++){let h=f*t+u;for(let d=0;d<4;d++,h+=t){const t=f+d;if(t>=r)break;s[h]&=-2;if(n[h]||!o[h])continue;const p=c[o[h]];if(e.readBit(a,p)){const e=this.decodeSignBit(t,u,h);i[h]=e;n[h]=1;this.setNeighborsSignificance(t,u,h);s[h]|=2}l[h]++;s[h]|=1}}}decodeSignBit(e,t,r){const n=this.width,i=this.height,o=this.coefficentsMagnitude,s=this.coefficentsSign;let a,c,l,f,u,h;f=t>0&&0!==o[r-1];if(t+1<n&&0!==o[r+1]){l=s[r+1];if(f){c=s[r-1];a=1-l-c}else a=1-l-l}else if(f){c=s[r-1];a=1-c-c}else a=0;const d=3*a;f=e>0&&0!==o[r-n];if(e+1<i&&0!==o[r+n]){l=s[r+n];if(f){c=s[r-n];a=1-l-c+d}else a=1-l-l+d}else if(f){c=s[r-n];a=1-c-c+d}else a=d;if(a>=0){u=9+a;h=this.decoder.readBit(this.contexts,u)}else{u=9-a;h=1^this.decoder.readBit(this.contexts,u)}return h}runMagnitudeRefinementPass(){const e=this.decoder,t=this.width,r=this.height,n=this.coefficentsMagnitude,i=this.neighborsSignificance,o=this.contexts,s=this.bitsDecoded,a=this.processingFlags,c=t*r,l=4*t;for(let r,f=0;f<c;f=r){r=Math.min(c,f+l);for(let c=0;c<t;c++)for(let l=f+c;l<r;l+=t){if(!n[l]||0!=(1&a[l]))continue;let t=16;if(0!=(2&a[l])){a[l]^=2;t=0===(127&i[l])?15:14}const r=e.readBit(o,t);n[l]=n[l]<<1|r;s[l]++;a[l]|=1}}}runCleanupPass(){const e=this.decoder,t=this.width,r=this.height,n=this.neighborsSignificance,i=this.coefficentsMagnitude,o=this.coefficentsSign,s=this.contexts,a=this.contextLabelTable,c=this.bitsDecoded,l=this.processingFlags,f=t,u=2*t,h=3*t;let d;for(let p=0;p<r;p=d){d=Math.min(p+4,r);const g=p*t,m=p+3<r;for(let r=0;r<t;r++){const b=g+r;let y,x=0,w=b,v=p;if(m&&0===l[b]&&0===l[b+f]&&0===l[b+u]&&0===l[b+h]&&0===n[b]&&0===n[b+f]&&0===n[b+u]&&0===n[b+h]){if(!e.readBit(s,BitModel.RUNLENGTH_CONTEXT)){c[b]++;c[b+f]++;c[b+u]++;c[b+h]++;continue}x=e.readBit(s,BitModel.UNIFORM_CONTEXT)<<1|e.readBit(s,BitModel.UNIFORM_CONTEXT);if(0!==x){v=p+x;w+=x*t}y=this.decodeSignBit(v,r,w);o[w]=y;i[w]=1;this.setNeighborsSignificance(v,r,w);l[w]|=2;w=b;for(let e=p;e<=v;e++,w+=t)c[w]++;x++}for(v=p+x;v<d;v++,w+=t){if(i[w]||0!=(1&l[w]))continue;const t=a[n[w]];if(1===e.readBit(s,t)){y=this.decodeSignBit(v,r,w);o[w]=y;i[w]=1;this.setNeighborsSignificance(v,r,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&&util_unreachable("Cannot initialize Transform.")}calculate(e,t,r){let n=e[0];for(let i=1,o=e.length;i<o;i++)n=this.iterate(n,e[i],t,r);return n}extend(e,t,r){let n=t-1,i=t+1,o=t+r-2,s=t+r;e[n--]=e[i++];e[s++]=e[o--];e[n--]=e[i++];e[s++]=e[o--];e[n--]=e[i++];e[s++]=e[o--];e[n]=e[i];e[s]=e[o]}filter(e,t,r){util_unreachable("Abstract method `filter` called")}iterate(e,t,r,n){const i=e.width,o=e.height;let s=e.items;const a=t.width,c=t.height,l=t.items;let f,u,h,d,p,g;for(h=0,f=0;f<o;f++){d=2*f*a;for(u=0;u<i;u++,h++,d+=2)l[d]=s[h]}s=e.items=null;const m=new Float32Array(a+8);if(1===a){if(0!=(1&r))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 y=[];for(f=0;f<b;f++)y.push(new Float32Array(c+8));let x,w=0;e=4+c;if(1===c){if(0!=(1&n))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,d=4;d<e;h+=a,d++)for(x=0;x<b;x++)y[x][d]=l[h+x];w=b}w--;const t=y[w];this.extend(t,4,c);this.filter(t,4,c);if(0===w){h=p-b+1;for(d=4;d<e;h+=a,d++)for(x=0;x<b;x++)l[h+x]=y[x][d]}}return{width:a,height:c,items:l}}}class IrreversibleTransform extends Transform{filter(e,t,r){const n=r>>1;let i,o,s,a;const c=-1.586134342059924,l=-.052980118572961,f=.882911075530934,u=.443506852043971,h=1.230174104914001;i=(t|=0)-3;for(o=n+4;o--;i+=2)e[i]*=.8128930661159609;i=t-2;s=u*e[i-1];for(o=n+3;o--;i+=2){a=u*e[i+1];e[i]=h*e[i]-s-a;if(!o--)break;i+=2;s=u*e[i+1];e[i]=h*e[i]-s-a}i=t-1;s=f*e[i-1];for(o=n+2;o--;i+=2){a=f*e[i+1];e[i]-=s+a;if(!o--)break;i+=2;s=f*e[i+1];e[i]-=s+a}i=t;s=l*e[i-1];for(o=n+1;o--;i+=2){a=l*e[i+1];e[i]-=s+a;if(!o--)break;i+=2;s=l*e[i+1];e[i]-=s+a}if(0!==n){i=t+1;s=c*e[i-1];for(o=n;o--;i+=2){a=c*e[i+1];e[i]-=s+a;if(!o--)break;i+=2;s=c*e[i+1];e[i]-=s+a}}}}class ReversibleTransform extends Transform{filter(e,t,r){const n=r>>1;let i,o;for(i=t|=0,o=n+1;o--;i+=2)e[i]-=e[i-1]+e[i+1]+2>>2;for(i=t+1,o=n;o--;i+=2)e[i]+=e[i-1]+e[i+1]>>1}}})();var r=__webpack_exports__.Jbig2Image,n=__webpack_exports__.JpegImage,i=__webpack_exports__.JpxImage,o=__webpack_exports__.VerbosityLevel,s=__webpack_exports__.getVerbosityLevel,a=__webpack_exports__.setVerbosityLevel;export{r as Jbig2Image,n as JpegImage,i as JpxImage,o as VerbosityLevel,s as getVerbosityLevel,a as setVerbosityLevel}; |