/**
 * @licstart The following is the entire license notice for the
 * Javascript code in this page
 *
 * Copyright 2021 Mozilla Foundation
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 *
 * @licend The above is the entire license notice for the
 * Javascript code in this page
 */

(function webpackUniversalModuleDefinition(root, factory) {
	if(typeof exports === 'object' && typeof module === 'object')
		module.exports = factory();
	else if(typeof define === 'function' && define.amd)
		define("pdfjs-dist/build/pdf.sandbox", [], factory);
	else if(typeof exports === 'object')
		exports["pdfjs-dist/build/pdf.sandbox"] = factory();
	else
		root["pdfjs-dist/build/pdf.sandbox"] = root.pdfjsSandbox = factory();
})(this, function() {
return /******/ (() => { // webpackBootstrap
/******/ 	"use strict";
/******/ 	var __webpack_modules__ = ([
/* 0 */,
/* 1 */
/***/ ((__unused_webpack_module, exports) => {

Object.defineProperty(exports, "__esModule", ({value:true}));exports.default=void 0;var Module=function(){var _scriptDir=typeof document!=='undefined'&&document.currentScript?document.currentScript.src:undefined;return function(Module){Module=Module||{};var b;b||(b=typeof Module!=='undefined'?Module:{});var h,n;b.ready=new Promise(function(a,c){h=a;n=c;});var q={},r;for(r in b)b.hasOwnProperty(r)&&(q[r]=b[r]);var t="";"undefined"!==typeof document&&document.currentScript&&(t=document.currentScript.src);_scriptDir&&(t=_scriptDir);0!==t.indexOf("blob:")?t=t.substr(0,t.lastIndexOf("/")+1):t="";var aa=b.print||console.log.bind(console),u=b.printErr||console.warn.bind(console);for(r in q)q.hasOwnProperty(r)&&(b[r]=q[r]);q=null;var v;b.wasmBinary&&(v=b.wasmBinary);var noExitRuntime=b.noExitRuntime||!0;"object"!==typeof WebAssembly&&w("no native wasm support detected");var x,z=!1;function A(a){var c=b["_"+a];c||w("Assertion failed: Cannot call unknown function "+(a+", make sure it is exported"));return c;}function B(a,c,d,e){var f={string:function(l){var p=0;if(null!==l&&void 0!==l&&0!==l){var U=(l.length<<2)+1;p=C(U);D(l,E,p,U);}return p;},array:function(l){var p=C(l.length);F.set(l,p);return p;}},g=A(a),k=[];a=0;if(e)for(var m=0;m<e.length;m++){var y=f[d[m]];y?(0===a&&(a=G()),k[m]=y(e[m])):k[m]=e[m];}d=g.apply(null,k);d=function(l){return"string"===c?H(l):"boolean"===c?!!l:l;}(d);0!==a&&I(a);return d;}var J="undefined"!==typeof TextDecoder?new TextDecoder("utf8"):void 0;function K(a,c,d){var e=c+d;for(d=c;a[d]&&!(d>=e);)++d;if(16<d-c&&a.subarray&&J)return J.decode(a.subarray(c,d));for(e="";c<d;){var f=a[c++];if(f&128){var g=a[c++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|g);else{var k=a[c++]&63;f=224==(f&240)?(f&15)<<12|g<<6|k:(f&7)<<18|g<<12|k<<6|a[c++]&63;65536>f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023));}}else e+=String.fromCharCode(f);}return e;}function H(a){return a?K(E,a,void 0):"";}function D(a,c,d,e){if(0<e){e=d+e-1;for(var f=0;f<a.length;++f){var g=a.charCodeAt(f);if(55296<=g&&57343>=g){var k=a.charCodeAt(++f);g=65536+((g&1023)<<10)|k&1023;}if(127>=g){if(d>=e)break;c[d++]=g;}else{if(2047>=g){if(d+1>=e)break;c[d++]=192|g>>6;}else{if(65535>=g){if(d+2>=e)break;c[d++]=224|g>>12;}else{if(d+3>=e)break;c[d++]=240|g>>18;c[d++]=128|g>>12&63;}c[d++]=128|g>>6&63;}c[d++]=128|g&63;}}c[d]=0;}}function L(a){for(var c=0,d=0;d<a.length;++d){var e=a.charCodeAt(d);55296<=e&&57343>=e&&(e=65536+((e&1023)<<10)|a.charCodeAt(++d)&1023);127>=e?++c:c=2047>=e?c+2:65535>=e?c+3:c+4;}return c;}function ba(a){var c=L(a)+1,d=M(c);d&&D(a,F,d,c);return d;}var ca,F,E,N;function da(){var a=x.buffer;ca=a;b.HEAP8=F=new Int8Array(a);b.HEAP16=new Int16Array(a);b.HEAP32=N=new Int32Array(a);b.HEAPU8=E=new Uint8Array(a);b.HEAPU16=new Uint16Array(a);b.HEAPU32=new Uint32Array(a);b.HEAPF32=new Float32Array(a);b.HEAPF64=new Float64Array(a);}var O,ea=[],fa=[],ha=[],ia=[];function ja(){var a=b.preRun.shift();ea.unshift(a);}var P=0,Q=null,R=null;b.preloadedImages={};b.preloadedAudios={};function w(a){if(b.onAbort)b.onAbort(a);u(a);z=!0;a=new WebAssembly.RuntimeError("abort("+a+"). Build with -s ASSERTIONS=1 for more info.");n(a);throw a;}function S(a){return String.prototype.startsWith?a.startsWith("data:application/octet-stream;base64,"):0===a.indexOf("data:application/octet-stream;base64,");}var T="data:application/octet-stream;base64,[encoded data, 501428 characters]";if(!S(T)){var ka=T;T=b.locateFile?b.locateFile(ka,t):t+ka;}function la(){var a=T;try{if(a==T&&v)return new Uint8Array(v);if(S(a))try{var c=ma(a.slice(37)),d=new Uint8Array(c.length);for(a=0;a<c.length;++a)d[a]=c.charCodeAt(a);var e=d;}catch(g){throw Error("Converting base64 string to bytes failed.");}else e=void 0;var f=e;if(f)return f;throw"both async and sync fetching of the wasm failed";}catch(g){w(g);}}function na(){return v||"function"!==typeof fetch?Promise.resolve().then(function(){return la();}):fetch(T,{credentials:"same-origin"}).then(function(a){if(!a.ok)throw"failed to load wasm binary file at '"+T+"'";return a.arrayBuffer();}).catch(function(){return la();});}function V(a){for(;0<a.length;){var c=a.shift();if("function"==typeof c)c(b);else{var d=c.B;"number"===typeof d?void 0===c.A?O.get(d)():O.get(d)(c.A):d(void 0===c.A?null:c.A);}}}function W(a){var c=L(a)+1,d=M(c);D(a,E,d,c);return d;}function oa(){}var pa=[null,[],[]];function qa(){function a(k){return(k=k.toTimeString().match(/\(([A-Za-z ]+)\)$/))?k[1]:"GMT";}if(!ra){ra=!0;var c=new Date().getFullYear(),d=new Date(c,0,1),e=new Date(c,6,1);c=d.getTimezoneOffset();var f=e.getTimezoneOffset(),g=Math.max(c,f);N[sa()>>2]=60*g;N[ta()>>2]=Number(c!=f);d=a(d);e=a(e);d=ba(d);e=ba(e);f<c?(N[X()>>2]=d,N[X()+4>>2]=e):(N[X()>>2]=e,N[X()+4>>2]=d);}}var ra;oa=(a,c,d)=>{a=H(a);c=null!==c?JSON.parse(H(c)):[];try{const e=b.externalCall(a,c);return e?W(e):null;}catch(e){return b.HEAPU8[d]=1,W(e.message);}};var ma="function"===typeof atob?atob:function(a){var c="",d=0;a=a.replace(/[^A-Za-z0-9\+\/=]/g,"");do{var e="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var f="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var g="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));var k="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=".indexOf(a.charAt(d++));e=e<<2|f>>4;f=(f&15)<<4|g>>2;var m=(g&3)<<6|k;c+=String.fromCharCode(e);64!==g&&(c+=String.fromCharCode(f));64!==k&&(c+=String.fromCharCode(m));}while(d<a.length);return c;},ua={a:function(a,c,d,e){w("Assertion failed: "+H(a)+", at: "+[c?H(c):"unknown filename",d,e?H(e):"unknown function"]);},b:function(){w();},g:oa,f:function(a,c){a=H(a);let d;try{d=window.JSON.parse(a);}catch(e){d=a;}0!==c?window.alert(a):window.console.log("DUMP",d);},e:function(a){var c=E.length;a>>>=0;if(2147483648<a)return!1;for(var d=1;4>=d;d*=2){var e=c*(1+.2/d);e=Math.min(e,a+100663296);e=Math.max(a,e);0<e%65536&&(e+=65536-e%65536);a:{try{x.grow(Math.min(2147483648,e)-ca.byteLength+65535>>>16);da();var f=1;break a;}catch(g){}f=void 0;}if(f)return!0;}return!1;},d:function(a,c,d,e){for(var f=0,g=0;g<d;g++){for(var k=N[c+8*g>>2],m=N[c+(8*g+4)>>2],y=0;y<m;y++){var l=E[k+y],p=pa[a];0===l||10===l?((1===a?aa:u)(K(p,0)),p.length=0):p.push(l);}f+=m;}N[e>>2]=f;return 0;},c:function(a){var c=Date.now();N[a>>2]=c/1E3|0;N[a+4>>2]=c%1E3*1E3|0;return 0;},h:function(a,c){qa();a=new Date(1E3*N[a>>2]);N[c>>2]=a.getSeconds();N[c+4>>2]=a.getMinutes();N[c+8>>2]=a.getHours();N[c+12>>2]=a.getDate();N[c+16>>2]=a.getMonth();N[c+20>>2]=a.getFullYear()-1900;N[c+24>>2]=a.getDay();var d=new Date(a.getFullYear(),0,1);N[c+28>>2]=(a.getTime()-d.getTime())/864E5|0;N[c+36>>2]=-(60*a.getTimezoneOffset());var e=new Date(a.getFullYear(),6,1).getTimezoneOffset();d=d.getTimezoneOffset();a=(e!=d&&a.getTimezoneOffset()==Math.min(d,e))|0;N[c+32>>2]=a;a=N[X()+(a?4:0)>>2];N[c+40>>2]=a;return c;},i:function(a){a=H(a);window.console.log(a);},j:function(a,c,d,e){a=H(a);c=H(c);d=H(d);d=`Quickjs -- ${a}: ${c}\n${d}`;0!==e?window.alert(d):window.console.error(d);}};(function(){function a(f){b.asm=f.exports;x=b.asm.k;da();O=b.asm.t;fa.unshift(b.asm.l);P--;b.monitorRunDependencies&&b.monitorRunDependencies(P);0==P&&(null!==Q&&(clearInterval(Q),Q=null),R&&(f=R,R=null,f()));}function c(f){a(f.instance);}function d(f){return na().then(function(g){return WebAssembly.instantiate(g,e);}).then(f,function(g){u("failed to asynchronously prepare wasm: "+g);w(g);});}var e={a:ua};P++;b.monitorRunDependencies&&b.monitorRunDependencies(P);if(b.instantiateWasm)try{return b.instantiateWasm(e,a);}catch(f){return u("Module.instantiateWasm callback failed with error: "+f),!1;}(function(){return v||"function"!==typeof WebAssembly.instantiateStreaming||S(T)||"function"!==typeof fetch?d(c):fetch(T,{credentials:"same-origin"}).then(function(f){return WebAssembly.instantiateStreaming(f,e).then(c,function(g){u("wasm streaming compile failed: "+g);u("falling back to ArrayBuffer instantiation");return d(c);});});})().catch(n);return{};})();b.___wasm_call_ctors=function(){return(b.___wasm_call_ctors=b.asm.l).apply(null,arguments);};b._evalInSandbox=function(){return(b._evalInSandbox=b.asm.m).apply(null,arguments);};b._nukeSandbox=function(){return(b._nukeSandbox=b.asm.n).apply(null,arguments);};b._init=function(){return(b._init=b.asm.o).apply(null,arguments);};b._commFun=function(){return(b._commFun=b.asm.p).apply(null,arguments);};b._dumpMemoryUse=function(){return(b._dumpMemoryUse=b.asm.q).apply(null,arguments);};var M=b._malloc=function(){return(M=b._malloc=b.asm.r).apply(null,arguments);};b._free=function(){return(b._free=b.asm.s).apply(null,arguments);};var X=b.__get_tzname=function(){return(X=b.__get_tzname=b.asm.u).apply(null,arguments);},ta=b.__get_daylight=function(){return(ta=b.__get_daylight=b.asm.v).apply(null,arguments);},sa=b.__get_timezone=function(){return(sa=b.__get_timezone=b.asm.w).apply(null,arguments);},G=b.stackSave=function(){return(G=b.stackSave=b.asm.x).apply(null,arguments);},I=b.stackRestore=function(){return(I=b.stackRestore=b.asm.y).apply(null,arguments);},C=b.stackAlloc=function(){return(C=b.stackAlloc=b.asm.z).apply(null,arguments);};b.ccall=B;b.cwrap=function(a,c,d,e){d=d||[];var f=d.every(function(g){return"number"===g;});return"string"!==c&&f&&!e?A(a):function(){return B(a,c,d,arguments,e);};};b.stringToNewUTF8=W;var Y;R=function va(){Y||Z();Y||(R=va);};function Z(){function a(){if(!Y&&(Y=!0,b.calledRun=!0,!z)){V(fa);V(ha);h(b);if(b.onRuntimeInitialized)b.onRuntimeInitialized();if(b.postRun)for("function"==typeof b.postRun&&(b.postRun=[b.postRun]);b.postRun.length;){var c=b.postRun.shift();ia.unshift(c);}V(ia);}}if(!(0<P)){if(b.preRun)for("function"==typeof b.preRun&&(b.preRun=[b.preRun]);b.preRun.length;)ja();V(ea);0<P||(b.setStatus?(b.setStatus("Running..."),setTimeout(function(){setTimeout(function(){b.setStatus("");},1);a();},1)):a());}}b.run=Z;if(b.preInit)for("function"==typeof b.preInit&&(b.preInit=[b.preInit]);0<b.preInit.length;)b.preInit.pop()();Z();return Module.ready;};}();var _default=Module;exports.default=_default;

/***/ }),
/* 2 */
/***/ ((__unused_webpack_module, exports) => {



class SandboxSupportBase {
  constructor(win) {
    this.win = win;
    this.timeoutIds = new Map();
    this.commFun = null;
  }

  destroy() {
    this.commFunc = null;
    this.timeoutIds.forEach(([_, id]) => this.win.clearTimeout(id));
    this.timeoutIds = null;
  }

  exportValueToSandbox(val) {
    throw new Error("Not implemented");
  }

  importValueFromSandbox(val) {
    throw new Error("Not implemented");
  }

  createErrorForSandbox(errorMessage) {
    throw new Error("Not implemented");
  }

  callSandboxFunction(name, args) {
    try {
      args = this.exportValueToSandbox(args);
      this.commFun(name, args);
    } catch (e) {
      this.win.console.error(e);
    }
  }

  createSandboxExternals() {
    const externals = {
      setTimeout: (callbackId, nMilliseconds) => {
        if (typeof callbackId !== "number" || typeof nMilliseconds !== "number") {
          return;
        }

        const id = this.win.setTimeout(() => {
          this.timeoutIds.delete(callbackId);
          this.callSandboxFunction("timeoutCb", {
            callbackId,
            interval: false
          });
        }, nMilliseconds);
        this.timeoutIds.set(callbackId, id);
      },
      clearTimeout: id => {
        this.win.clearTimeout(this.timeoutIds.get(id));
        this.timeoutIds.delete(id);
      },
      setInterval: (callbackId, nMilliseconds) => {
        if (typeof callbackId !== "number" || typeof nMilliseconds !== "number") {
          return;
        }

        const id = this.win.setInterval(() => {
          this.callSandboxFunction("timeoutCb", {
            callbackId,
            interval: true
          });
        }, nMilliseconds);
        this.timeoutIds.set(callbackId, id);
      },
      clearInterval: id => {
        this.win.clearInterval(this.timeoutIds.get(id));
        this.timeoutIds.delete(id);
      },
      alert: cMsg => {
        if (typeof cMsg !== "string") {
          return;
        }

        this.win.alert(cMsg);
      },
      confirm: cMsg => {
        if (typeof cMsg !== "string") {
          return false;
        }

        return this.win.confirm(cMsg);
      },
      prompt: (cQuestion, cDefault) => {
        if (typeof cQuestion !== "string" || typeof cDefault !== "string") {
          return null;
        }

        return this.win.prompt(cQuestion, cDefault);
      },
      parseURL: cUrl => {
        const url = new this.win.URL(cUrl);
        const props = ["hash", "host", "hostname", "href", "origin", "password", "pathname", "port", "protocol", "search", "searchParams", "username"];
        return Object.fromEntries(props.map(name => [name, url[name].toString()]));
      },
      send: data => {
        if (!data) {
          return;
        }

        const event = new this.win.CustomEvent("updatefromsandbox", {
          detail: this.importValueFromSandbox(data)
        });
        this.win.dispatchEvent(event);
      }
    };
    Object.setPrototypeOf(externals, null);
    return (name, args) => {
      try {
        const result = externals[name](...args);
        return this.exportValueToSandbox(result);
      } catch (error) {
        throw this.createErrorForSandbox(error?.toString() ?? "");
      }
    };
  }

}

{
  exports.SandboxSupportBase = SandboxSupportBase;
}

/***/ })
/******/ 	]);
/************************************************************************/
/******/ 	// The module cache
/******/ 	var __webpack_module_cache__ = {};
/******/ 	
/******/ 	// The require function
/******/ 	function __w_pdfjs_require__(moduleId) {
/******/ 		// Check if module is in cache
/******/ 		var cachedModule = __webpack_module_cache__[moduleId];
/******/ 		if (cachedModule !== undefined) {
/******/ 			return cachedModule.exports;
/******/ 		}
/******/ 		// Create a new module (and put it into the cache)
/******/ 		var module = __webpack_module_cache__[moduleId] = {
/******/ 			// no module.id needed
/******/ 			// no module.loaded needed
/******/ 			exports: {}
/******/ 		};
/******/ 	
/******/ 		// Execute the module function
/******/ 		__webpack_modules__[moduleId](module, module.exports, __w_pdfjs_require__);
/******/ 	
/******/ 		// Return the exports of the module
/******/ 		return module.exports;
/******/ 	}
/******/ 	
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.
(() => {
var exports = __webpack_exports__;


Object.defineProperty(exports, "__esModule", ({
  value: true
}));
exports.QuickJSSandbox = QuickJSSandbox;

var _quickjsEval = _interopRequireDefault(__w_pdfjs_require__(1));

var _pdfSandboxExternal = __w_pdfjs_require__(2);

function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }

const pdfjsVersion = '2.10.377';
const pdfjsBuild = '156762c48';

class SandboxSupport extends _pdfSandboxExternal.SandboxSupportBase {
  exportValueToSandbox(val) {
    return JSON.stringify(val);
  }

  importValueFromSandbox(val) {
    return val;
  }

  createErrorForSandbox(errorMessage) {
    return new Error(errorMessage);
  }

}

class Sandbox {
  constructor(win, module) {
    this.support = new SandboxSupport(win, this);
    module.externalCall = this.support.createSandboxExternals();
    this._module = module;
    this._alertOnError = 0;
  }

  create(data) {
    const code = ['(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === \'object\' && typeof module === \'object\')\n\t\tmodule.exports = factory();\n\telse if(typeof define === \'function\' && define.amd)\n\t\tdefine("pdfjs-dist/build/pdf.scripting", [], factory);\n\telse if(typeof exports === \'object\')\n\t\texports["pdfjs-dist/build/pdf.scripting"] = factory();\n\telse\n\t\troot.pdfjsScripting = factory();\n})(this, function() {\nreturn /******/ (() => { // webpackBootstrap\n/******/ \t"use strict";\n/******/ \tvar __webpack_modules__ = ([\n/* 0 */,\n/* 1 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.initSandbox = initSandbox;\n\nvar _constants = __w_pdfjs_require__(2);\n\nvar _field = __w_pdfjs_require__(3);\n\nvar _aform = __w_pdfjs_require__(8);\n\nvar _app = __w_pdfjs_require__(9);\n\nvar _color = __w_pdfjs_require__(5);\n\nvar _console = __w_pdfjs_require__(13);\n\nvar _doc = __w_pdfjs_require__(14);\n\nvar _proxy = __w_pdfjs_require__(16);\n\nvar _util = __w_pdfjs_require__(17);\n\nfunction initSandbox(params) {\n  delete globalThis.pdfjsScripting;\n  const externalCall = globalThis.callExternalFunction;\n  delete globalThis.callExternalFunction;\n\n  const globalEval = code => globalThis.eval(code);\n\n  const send = data => externalCall("send", [data]);\n\n  const proxyHandler = new _proxy.ProxyHandler();\n  const {\n    data\n  } = params;\n  const doc = new _doc.Doc({\n    send,\n    globalEval,\n    ...data.docInfo\n  });\n  const _document = {\n    obj: doc,\n    wrapped: new Proxy(doc, proxyHandler)\n  };\n  const app = new _app.App({\n    send,\n    globalEval,\n    externalCall,\n    _document,\n    calculationOrder: data.calculationOrder,\n    proxyHandler,\n    ...data.appInfo\n  });\n  const util = new _util.Util({\n    externalCall\n  });\n  const appObjects = app._objects;\n\n  if (data.objects) {\n    const annotations = [];\n\n    for (const [name, objs] of Object.entries(data.objects)) {\n      annotations.length = 0;\n      let container = null;\n\n      for (const obj of objs) {\n        if (obj.type !== "") {\n          annotations.push(obj);\n        } else {\n          container = obj;\n        }\n      }\n\n      let obj = container;\n\n      if (annotations.length > 0) {\n        obj = annotations[0];\n        obj.send = send;\n      }\n\n      obj.globalEval = globalEval;\n      obj.doc = _document;\n      obj.fieldPath = name;\n      obj.appObjects = appObjects;\n      let field;\n\n      switch (obj.type) {\n        case "radiobutton":\n          {\n            const otherButtons = annotations.slice(1);\n            field = new _field.RadioButtonField(otherButtons, obj);\n            break;\n          }\n\n        case "checkbox":\n          {\n            const otherButtons = annotations.slice(1);\n            field = new _field.CheckboxField(otherButtons, obj);\n            break;\n          }\n\n        case "text":\n          if (annotations.length <= 1) {\n            field = new _field.Field(obj);\n            break;\n          }\n\n          obj.siblings = annotations.map(x => x.id).slice(1);\n          field = new _field.Field(obj);\n          break;\n\n        default:\n          field = new _field.Field(obj);\n      }\n\n      const wrapped = new Proxy(field, proxyHandler);\n\n      doc._addField(name, wrapped);\n\n      const _object = {\n        obj: field,\n        wrapped\n      };\n\n      for (const object of objs) {\n        appObjects[object.id] = _object;\n      }\n\n      if (container) {\n        appObjects[container.id] = _object;\n      }\n    }\n  }\n\n  const color = new _color.Color();\n  globalThis.event = null;\n  globalThis.global = Object.create(null);\n  globalThis.app = new Proxy(app, proxyHandler);\n  globalThis.color = new Proxy(color, proxyHandler);\n  globalThis.console = new Proxy(new _console.Console({\n    send\n  }), proxyHandler);\n  globalThis.util = new Proxy(util, proxyHandler);\n  globalThis.border = _constants.Border;\n  globalThis.cursor = _constants.Cursor;\n  globalThis.display = _constants.Display;\n  globalThis.font = _constants.Font;\n  globalThis.highlight = _constants.Highlight;\n  globalThis.position = _constants.Position;\n  globalThis.scaleHow = _constants.ScaleHow;\n  globalThis.scaleWhen = _constants.ScaleWhen;\n  globalThis.style = _constants.Style;\n  globalThis.trans = _constants.Trans;\n  globalThis.zoomtype = _constants.ZoomType;\n  globalThis.ADBE = {\n    Reader_Value_Asked: true,\n    Viewer_Value_Asked: true\n  };\n  const aform = new _aform.AForm(doc, app, util, color);\n\n  for (const name of Object.getOwnPropertyNames(_aform.AForm.prototype)) {\n    if (name !== "constructor" && !name.startsWith("_")) {\n      globalThis[name] = aform[name].bind(aform);\n    }\n  }\n\n  for (const [name, value] of Object.entries(_constants.GlobalConstants)) {\n    Object.defineProperty(globalThis, name, {\n      value,\n      writable: false\n    });\n  }\n\n  Object.defineProperties(globalThis, {\n    ColorConvert: {\n      value: color.convert.bind(color),\n      writable: true\n    },\n    ColorEqual: {\n      value: color.equal.bind(color),\n      writable: true\n    }\n  });\n  const properties = Object.create(null);\n\n  for (const name of Object.getOwnPropertyNames(_doc.Doc.prototype)) {\n    if (name === "constructor" || name.startsWith("_")) {\n      continue;\n    }\n\n    const descriptor = Object.getOwnPropertyDescriptor(_doc.Doc.prototype, name);\n\n    if (descriptor.get) {\n      properties[name] = {\n        get: descriptor.get.bind(doc),\n        set: descriptor.set.bind(doc)\n      };\n    } else {\n      properties[name] = {\n        value: _doc.Doc.prototype[name].bind(doc)\n      };\n    }\n  }\n\n  Object.defineProperties(globalThis, properties);\n  const functions = {\n    dispatchEvent: app._dispatchEvent.bind(app),\n    timeoutCb: app._evalCallback.bind(app)\n  };\n  return (name, args) => {\n    try {\n      functions[name](args);\n    } catch (error) {\n      const value = `${error.toString()}\\n${error.stack}`;\n      send({\n        command: "error",\n        value\n      });\n    }\n  };\n}\n\n/***/ }),\n/* 2 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.ZoomType = exports.Trans = exports.Style = exports.ScaleWhen = exports.ScaleHow = exports.Position = exports.Highlight = exports.GlobalConstants = exports.Font = exports.Display = exports.Cursor = exports.Border = void 0;\nconst Border = Object.freeze({\n  s: "solid",\n  d: "dashed",\n  b: "beveled",\n  i: "inset",\n  u: "underline"\n});\nexports.Border = Border;\nconst Cursor = Object.freeze({\n  visible: 0,\n  hidden: 1,\n  delay: 2\n});\nexports.Cursor = Cursor;\nconst Display = Object.freeze({\n  visible: 0,\n  hidden: 1,\n  noPrint: 2,\n  noView: 3\n});\nexports.Display = Display;\nconst Font = Object.freeze({\n  Times: "Times-Roman",\n  TimesB: "Times-Bold",\n  TimesI: "Times-Italic",\n  TimesBI: "Times-BoldItalic",\n  Helv: "Helvetica",\n  HelvB: "Helvetica-Bold",\n  HelvI: "Helvetica-Oblique",\n  HelvBI: "Helvetica-BoldOblique",\n  Cour: "Courier",\n  CourB: "Courier-Bold",\n  CourI: "Courier-Oblique",\n  CourBI: "Courier-BoldOblique",\n  Symbol: "Symbol",\n  ZapfD: "ZapfDingbats",\n  KaGo: "HeiseiKakuGo-W5-UniJIS-UCS2-H",\n  KaMi: "HeiseiMin-W3-UniJIS-UCS2-H"\n});\nexports.Font = Font;\nconst Highlight = Object.freeze({\n  n: "none",\n  i: "invert",\n  p: "push",\n  o: "outline"\n});\nexports.Highlight = Highlight;\nconst Position = Object.freeze({\n  textOnly: 0,\n  iconOnly: 1,\n  iconTextV: 2,\n  textIconV: 3,\n  iconTextH: 4,\n  textIconH: 5,\n  overlay: 6\n});\nexports.Position = Position;\nconst ScaleHow = Object.freeze({\n  proportional: 0,\n  anamorphic: 1\n});\nexports.ScaleHow = ScaleHow;\nconst ScaleWhen = Object.freeze({\n  always: 0,\n  never: 1,\n  tooBig: 2,\n  tooSmall: 3\n});\nexports.ScaleWhen = ScaleWhen;\nconst Style = Object.freeze({\n  ch: "check",\n  cr: "cross",\n  di: "diamond",\n  ci: "circle",\n  st: "star",\n  sq: "square"\n});\nexports.Style = Style;\nconst Trans = Object.freeze({\n  blindsH: "BlindsHorizontal",\n  blindsV: "BlindsVertical",\n  boxI: "BoxIn",\n  boxO: "BoxOut",\n  dissolve: "Dissolve",\n  glitterD: "GlitterDown",\n  glitterR: "GlitterRight",\n  glitterRD: "GlitterRightDown",\n  random: "Random",\n  replace: "Replace",\n  splitHI: "SplitHorizontalIn",\n  splitHO: "SplitHorizontalOut",\n  splitVI: "SplitVerticalIn",\n  splitVO: "SplitVerticalOut",\n  wipeD: "WipeDown",\n  wipeL: "WipeLeft",\n  wipeR: "WipeRight",\n  wipeU: "WipeUp"\n});\nexports.Trans = Trans;\nconst ZoomType = Object.freeze({\n  none: "NoVary",\n  fitP: "FitPage",\n  fitW: "FitWidth",\n  fitH: "FitHeight",\n  fitV: "FitVisibleWidth",\n  pref: "Preferred",\n  refW: "ReflowWidth"\n});\nexports.ZoomType = ZoomType;\nconst GlobalConstants = Object.freeze({\n  IDS_GREATER_THAN: "Invalid value: must be greater than or equal to % s.",\n  IDS_GT_AND_LT: "Invalid value: must be greater than or equal to % s " + "and less than or equal to % s.",\n  IDS_LESS_THAN: "Invalid value: must be less than or equal to % s.",\n  IDS_INVALID_MONTH: "** Invalid **",\n  IDS_INVALID_DATE: "Invalid date / time: please ensure that the date / time exists.Field",\n  IDS_INVALID_DATE2: " should match format ",\n  IDS_INVALID_VALUE: "The value entered does not match the format of the field",\n  IDS_AM: "am",\n  IDS_PM: "pm",\n  IDS_MONTH_INFO: "January[1] February[2] March[3] April[4] May[5] " + "June[6] July[7] August[8] September[9] October[10] " + "November[11] December[12] Sept[9] Jan[1] Feb[2] Mar[3] " + "Apr[4] Jun[6] Jul[7] Aug[8] Sep[9] Oct[10] Nov[11] Dec[12]",\n  IDS_STARTUP_CONSOLE_MSG: "** ^ _ ^ **",\n  RE_NUMBER_ENTRY_DOT_SEP: ["[+-]?\\\\d*\\\\.?\\\\d*"],\n  RE_NUMBER_COMMIT_DOT_SEP: ["[+-]?\\\\d+(\\\\.\\\\d+)?", "[+-]?\\\\.\\\\d+", "[+-]?\\\\d+\\\\."],\n  RE_NUMBER_ENTRY_COMMA_SEP: ["[+-]?\\\\d*,?\\\\d*"],\n  RE_NUMBER_COMMIT_COMMA_SEP: ["[+-]?\\\\d+([.,]\\\\d+)?", "[+-]?[.,]\\\\d+", "[+-]?\\\\d+[.,]"],\n  RE_ZIP_ENTRY: ["\\\\d{0,5}"],\n  RE_ZIP_COMMIT: ["\\\\d{5}"],\n  RE_ZIP4_ENTRY: ["\\\\d{0,5}(\\\\.|[- ])?\\\\d{0,4}"],\n  RE_ZIP4_COMMIT: ["\\\\d{5}(\\\\.|[- ])?\\\\d{4}"],\n  RE_PHONE_ENTRY: ["\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "\\\\(\\\\d{0,3}", "\\\\(\\\\d{0,3}\\\\)(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "\\\\(\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "\\\\d{0,3}\\\\)(\\\\.|[- ])?\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,4}", "011(\\\\.|[- \\\\d])*"],\n  RE_PHONE_COMMIT: ["\\\\d{3}(\\\\.|[- ])?\\\\d{4}", "\\\\d{3}(\\\\.|[- ])?\\\\d{3}(\\\\.|[- ])?\\\\d{4}", "\\\\(\\\\d{3}\\\\)(\\\\.|[- ])?\\\\d{3}(\\\\.|[- ])?\\\\d{4}", "011(\\\\.|[- \\\\d])*"],\n  RE_SSN_ENTRY: ["\\\\d{0,3}(\\\\.|[- ])?\\\\d{0,2}(\\\\.|[- ])?\\\\d{0,4}"],\n  RE_SSN_COMMIT: ["\\\\d{3}(\\\\.|[- ])?\\\\d{2}(\\\\.|[- ])?\\\\d{4}"]\n});\nexports.GlobalConstants = GlobalConstants;\n\n/***/ }),\n/* 3 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.RadioButtonField = exports.Field = exports.CheckboxField = void 0;\n\nvar _common = __w_pdfjs_require__(4);\n\nvar _color = __w_pdfjs_require__(5);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Field extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    this.alignment = data.alignment || "left";\n    this.borderStyle = data.borderStyle || "";\n    this.buttonAlignX = data.buttonAlignX || 50;\n    this.buttonAlignY = data.buttonAlignY || 50;\n    this.buttonFitBounds = data.buttonFitBounds;\n    this.buttonPosition = data.buttonPosition;\n    this.buttonScaleHow = data.buttonScaleHow;\n    this.ButtonScaleWhen = data.buttonScaleWhen;\n    this.calcOrderIndex = data.calcOrderIndex;\n    this.charLimit = data.charLimit;\n    this.comb = data.comb;\n    this.commitOnSelChange = data.commitOnSelChange;\n    this.currentValueIndices = data.currentValueIndices;\n    this.defaultStyle = data.defaultStyle;\n    this.defaultValue = data.defaultValue;\n    this.doNotScroll = data.doNotScroll;\n    this.doNotSpellCheck = data.doNotSpellCheck;\n    this.delay = data.delay;\n    this.display = data.display;\n    this.doc = data.doc.wrapped;\n    this.editable = data.editable;\n    this.exportValues = data.exportValues;\n    this.fileSelect = data.fileSelect;\n    this.hidden = data.hidden;\n    this.highlight = data.highlight;\n    this.lineWidth = data.lineWidth;\n    this.multiline = data.multiline;\n    this.multipleSelection = !!data.multipleSelection;\n    this.name = data.name;\n    this.password = data.password;\n    this.print = data.print;\n    this.radiosInUnison = data.radiosInUnison;\n    this.readonly = data.readonly;\n    this.rect = data.rect;\n    this.required = data.required;\n    this.richText = data.richText;\n    this.richValue = data.richValue;\n    this.rotation = data.rotation;\n    this.style = data.style;\n    this.submitName = data.submitName;\n    this.textFont = data.textFont;\n    this.textSize = data.textSize;\n    this.type = data.type;\n    this.userName = data.userName;\n    this._actions = (0, _common.createActionsMap)(data.actions);\n    this._browseForFileToSubmit = data.browseForFileToSubmit || null;\n    this._buttonCaption = null;\n    this._buttonIcon = null;\n    this._children = null;\n    this._currentValueIndices = data.currentValueIndices || 0;\n    this._document = data.doc;\n    this._fieldPath = data.fieldPath;\n    this._fillColor = data.fillColor || ["T"];\n    this._isChoice = Array.isArray(data.items);\n    this._items = data.items || [];\n    this._page = data.page || 0;\n    this._strokeColor = data.strokeColor || ["G", 0];\n    this._textColor = data.textColor || ["G", 0];\n    this._value = data.value || "";\n    this._kidIds = data.kidIds || null;\n    this._fieldType = (0, _common.getFieldType)(this._actions);\n    this._siblings = data.siblings || null;\n    this._globalEval = data.globalEval;\n    this._appObjects = data.appObjects;\n    this.valueAsString = data.valueAsString || this._value;\n  }\n\n  get currentValueIndices() {\n    if (!this._isChoice) {\n      return 0;\n    }\n\n    return this._currentValueIndices;\n  }\n\n  set currentValueIndices(indices) {\n    if (!this._isChoice) {\n      return;\n    }\n\n    if (!Array.isArray(indices)) {\n      indices = [indices];\n    }\n\n    if (!indices.every(i => typeof i === "number" && Number.isInteger(i) && i >= 0 && i < this.numItems)) {\n      return;\n    }\n\n    indices.sort();\n\n    if (this.multipleSelection) {\n      this._currentValueIndices = indices;\n      this._value = [];\n      indices.forEach(i => {\n        this._value.push(this._items[i].displayValue);\n      });\n    } else {\n      if (indices.length > 0) {\n        indices = indices.splice(1, indices.length - 1);\n        this._currentValueIndices = indices[0];\n        this._value = this._items[this._currentValueIndices];\n      }\n    }\n\n    this._send({\n      id: this._id,\n      indices\n    });\n  }\n\n  get fillColor() {\n    return this._fillColor;\n  }\n\n  set fillColor(color) {\n    if (_color.Color._isValidColor(color)) {\n      this._fillColor = color;\n    }\n  }\n\n  get bgColor() {\n    return this.fillColor;\n  }\n\n  set bgColor(color) {\n    this.fillColor = color;\n  }\n\n  get numItems() {\n    if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    return this._items.length;\n  }\n\n  set numItems(_) {\n    throw new Error("field.numItems is read-only");\n  }\n\n  get strokeColor() {\n    return this._strokeColor;\n  }\n\n  set strokeColor(color) {\n    if (_color.Color._isValidColor(color)) {\n      this._strokeColor = color;\n    }\n  }\n\n  get borderColor() {\n    return this.strokeColor;\n  }\n\n  set borderColor(color) {\n    this.strokeColor = color;\n  }\n\n  get page() {\n    return this._page;\n  }\n\n  set page(_) {\n    throw new Error("field.page is read-only");\n  }\n\n  get textColor() {\n    return this._textColor;\n  }\n\n  set textColor(color) {\n    if (_color.Color._isValidColor(color)) {\n      this._textColor = color;\n    }\n  }\n\n  get fgColor() {\n    return this.textColor;\n  }\n\n  set fgColor(color) {\n    this.textColor = color;\n  }\n\n  get value() {\n    return this._value;\n  }\n\n  set value(value) {\n    if (value === "") {\n      this._value = "";\n    } else if (typeof value === "string") {\n      switch (this._fieldType) {\n        case _common.FieldType.number:\n        case _common.FieldType.percent:\n          value = parseFloat(value);\n\n          if (!isNaN(value)) {\n            this._value = value;\n          }\n\n          break;\n\n        default:\n          this._value = value;\n      }\n    } else {\n      this._value = value;\n    }\n\n    if (this._isChoice) {\n      if (this.multipleSelection) {\n        const values = new Set(value);\n        this._currentValueIndices.length = 0;\n\n        this._items.forEach(({\n          displayValue\n        }, i) => {\n          if (values.has(displayValue)) {\n            this._currentValueIndices.push(i);\n          }\n        });\n      } else {\n        this._currentValueIndices = this._items.findIndex(({\n          displayValue\n        }) => value === displayValue);\n      }\n    }\n  }\n\n  get valueAsString() {\n    if (this._valueAsString === undefined) {\n      this._valueAsString = this._value ? this._value.toString() : "";\n    }\n\n    return this._valueAsString;\n  }\n\n  set valueAsString(val) {\n    this._valueAsString = val ? val.toString() : "";\n  }\n\n  browseForFileToSubmit() {\n    if (this._browseForFileToSubmit) {\n      this._browseForFileToSubmit();\n    }\n  }\n\n  buttonGetCaption(nFace = 0) {\n    if (this._buttonCaption) {\n      return this._buttonCaption[nFace];\n    }\n\n    return "";\n  }\n\n  buttonGetIcon(nFace = 0) {\n    if (this._buttonIcon) {\n      return this._buttonIcon[nFace];\n    }\n\n    return null;\n  }\n\n  buttonImportIcon(cPath = null, nPave = 0) {}\n\n  buttonSetCaption(cCaption, nFace = 0) {\n    if (!this._buttonCaption) {\n      this._buttonCaption = ["", "", ""];\n    }\n\n    this._buttonCaption[nFace] = cCaption;\n  }\n\n  buttonSetIcon(oIcon, nFace = 0) {\n    if (!this._buttonIcon) {\n      this._buttonIcon = [null, null, null];\n    }\n\n    this._buttonIcon[nFace] = oIcon;\n  }\n\n  checkThisBox(nWidget, bCheckIt = true) {}\n\n  clearItems() {\n    if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    this._items = [];\n\n    this._send({\n      id: this._id,\n      clear: null\n    });\n  }\n\n  deleteItemAt(nIdx = null) {\n    if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    if (!this.numItems) {\n      return;\n    }\n\n    if (nIdx === null) {\n      nIdx = Array.isArray(this._currentValueIndices) ? this._currentValueIndices[0] : this._currentValueIndices;\n      nIdx = nIdx || 0;\n    }\n\n    if (nIdx < 0 || nIdx >= this.numItems) {\n      nIdx = this.numItems - 1;\n    }\n\n    this._items.splice(nIdx, 1);\n\n    if (Array.isArray(this._currentValueIndices)) {\n      let index = this._currentValueIndices.findIndex(i => i >= nIdx);\n\n      if (index !== -1) {\n        if (this._currentValueIndices[index] === nIdx) {\n          this._currentValueIndices.splice(index, 1);\n        }\n\n        for (const ii = this._currentValueIndices.length; index < ii; index++) {\n          --this._currentValueIndices[index];\n        }\n      }\n    } else {\n      if (this._currentValueIndices === nIdx) {\n        this._currentValueIndices = this.numItems > 0 ? 0 : -1;\n      } else if (this._currentValueIndices > nIdx) {\n        --this._currentValueIndices;\n      }\n    }\n\n    this._send({\n      id: this._id,\n      remove: nIdx\n    });\n  }\n\n  getItemAt(nIdx = -1, bExportValue = false) {\n    if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    if (nIdx < 0 || nIdx >= this.numItems) {\n      nIdx = this.numItems - 1;\n    }\n\n    const item = this._items[nIdx];\n    return bExportValue ? item.exportValue : item.displayValue;\n  }\n\n  getArray() {\n    if (this._kidIds) {\n      return this._kidIds.map(id => this._appObjects[id].wrapped);\n    }\n\n    if (this._children === null) {\n      this._children = this._document.obj._getChildren(this._fieldPath);\n    }\n\n    return this._children;\n  }\n\n  getLock() {\n    return undefined;\n  }\n\n  isBoxChecked(nWidget) {\n    return false;\n  }\n\n  isDefaultChecked(nWidget) {\n    return false;\n  }\n\n  insertItemAt(cName, cExport = undefined, nIdx = 0) {\n    if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    if (!cName) {\n      return;\n    }\n\n    if (nIdx < 0 || nIdx > this.numItems) {\n      nIdx = this.numItems;\n    }\n\n    if (this._items.some(({\n      displayValue\n    }) => displayValue === cName)) {\n      return;\n    }\n\n    if (cExport === undefined) {\n      cExport = cName;\n    }\n\n    const data = {\n      displayValue: cName,\n      exportValue: cExport\n    };\n\n    this._items.splice(nIdx, 0, data);\n\n    if (Array.isArray(this._currentValueIndices)) {\n      let index = this._currentValueIndices.findIndex(i => i >= nIdx);\n\n      if (index !== -1) {\n        for (const ii = this._currentValueIndices.length; index < ii; index++) {\n          ++this._currentValueIndices[index];\n        }\n      }\n    } else if (this._currentValueIndices >= nIdx) {\n      ++this._currentValueIndices;\n    }\n\n    this._send({\n      id: this._id,\n      insert: {\n        index: nIdx,\n        ...data\n      }\n    });\n  }\n\n  setAction(cTrigger, cScript) {\n    if (typeof cTrigger !== "string" || typeof cScript !== "string") {\n      return;\n    }\n\n    if (!(cTrigger in this._actions)) {\n      this._actions[cTrigger] = [];\n    }\n\n    this._actions[cTrigger].push(cScript);\n  }\n\n  setFocus() {\n    this._send({\n      id: this._id,\n      focus: true\n    });\n  }\n\n  setItems(oArray) {\n    if (!this._isChoice) {\n      throw new Error("Not a choice widget");\n    }\n\n    this._items.length = 0;\n\n    for (const element of oArray) {\n      let displayValue, exportValue;\n\n      if (Array.isArray(element)) {\n        displayValue = element[0]?.toString() || "";\n        exportValue = element[1]?.toString() || "";\n      } else {\n        displayValue = exportValue = element?.toString() || "";\n      }\n\n      this._items.push({\n        displayValue,\n        exportValue\n      });\n    }\n\n    this._currentValueIndices = 0;\n\n    this._send({\n      id: this._id,\n      items: this._items\n    });\n  }\n\n  setLock() {}\n\n  signatureGetModifications() {}\n\n  signatureGetSeedValue() {}\n\n  signatureInfo() {}\n\n  signatureSetSeedValue() {}\n\n  signatureSign() {}\n\n  signatureValidate() {}\n\n  _isButton() {\n    return false;\n  }\n\n  _runActions(event) {\n    const eventName = event.name;\n\n    if (!this._actions.has(eventName)) {\n      return false;\n    }\n\n    const actions = this._actions.get(eventName);\n\n    try {\n      for (const action of actions) {\n        this._globalEval(action);\n      }\n    } catch (error) {\n      event.rc = false;\n      throw error;\n    }\n\n    return true;\n  }\n\n}\n\nexports.Field = Field;\n\nclass RadioButtonField extends Field {\n  constructor(otherButtons, data) {\n    super(data);\n    this.exportValues = [this.exportValues];\n    this._radioIds = [this._id];\n    this._radioActions = [this._actions];\n\n    for (const radioData of otherButtons) {\n      this.exportValues.push(radioData.exportValues);\n\n      this._radioIds.push(radioData.id);\n\n      this._radioActions.push((0, _common.createActionsMap)(radioData.actions));\n\n      if (this._value === radioData.exportValues) {\n        this._id = radioData.id;\n      }\n    }\n  }\n\n  get value() {\n    return this._value;\n  }\n\n  set value(value) {\n    if (value === null || value === undefined) {\n      this._value = "";\n    }\n\n    const i = this.exportValues.indexOf(value);\n\n    if (0 <= i && i < this._radioIds.length) {\n      this._id = this._radioIds[i];\n      this._value = value;\n    } else if (value === "Off" && this._radioIds.length === 2) {\n      const nextI = (1 + this._radioIds.indexOf(this._id)) % 2;\n      this._id = this._radioIds[nextI];\n      this._value = this.exportValues[nextI];\n    }\n  }\n\n  checkThisBox(nWidget, bCheckIt = true) {\n    if (nWidget < 0 || nWidget >= this._radioIds.length || !bCheckIt) {\n      return;\n    }\n\n    this._id = this._radioIds[nWidget];\n    this._value = this.exportValues[nWidget];\n\n    this._send({\n      id: this._id,\n      value: this._value\n    });\n  }\n\n  isBoxChecked(nWidget) {\n    return nWidget >= 0 && nWidget < this._radioIds.length && this._id === this._radioIds[nWidget];\n  }\n\n  isDefaultChecked(nWidget) {\n    return nWidget >= 0 && nWidget < this.exportValues.length && this.defaultValue === this.exportValues[nWidget];\n  }\n\n  _getExportValue(state) {\n    const i = this._radioIds.indexOf(this._id);\n\n    return this.exportValues[i];\n  }\n\n  _runActions(event) {\n    const i = this._radioIds.indexOf(this._id);\n\n    this._actions = this._radioActions[i];\n    return super._runActions(event);\n  }\n\n  _isButton() {\n    return true;\n  }\n\n}\n\nexports.RadioButtonField = RadioButtonField;\n\nclass CheckboxField extends RadioButtonField {\n  get value() {\n    return this._value;\n  }\n\n  set value(value) {\n    if (!value || value === "Off") {\n      this._value = "Off";\n    } else {\n      super.value = value;\n    }\n  }\n\n  _getExportValue(state) {\n    return state ? super._getExportValue(state) : "Off";\n  }\n\n  isBoxChecked(nWidget) {\n    if (this._value === "Off") {\n      return false;\n    }\n\n    return super.isBoxChecked(nWidget);\n  }\n\n  isDefaultChecked(nWidget) {\n    if (this.defaultValue === "Off") {\n      return this._value === "Off";\n    }\n\n    return super.isDefaultChecked(nWidget);\n  }\n\n  checkThisBox(nWidget, bCheckIt = true) {\n    if (nWidget < 0 || nWidget >= this._radioIds.length) {\n      return;\n    }\n\n    this._id = this._radioIds[nWidget];\n    this._value = bCheckIt ? this.exportValues[nWidget] : "Off";\n\n    this._send({\n      id: this._id,\n      value: this._value\n    });\n  }\n\n}\n\nexports.CheckboxField = CheckboxField;\n\n/***/ }),\n/* 4 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.createActionsMap = createActionsMap;\nexports.getFieldType = getFieldType;\nexports.FieldType = void 0;\nconst FieldType = {\n  none: 0,\n  number: 1,\n  percent: 2,\n  date: 3,\n  time: 4\n};\nexports.FieldType = FieldType;\n\nfunction createActionsMap(actions) {\n  const actionsMap = new Map();\n\n  if (actions) {\n    for (const [eventType, actionsForEvent] of Object.entries(actions)) {\n      actionsMap.set(eventType, actionsForEvent);\n    }\n  }\n\n  return actionsMap;\n}\n\nfunction getFieldType(actions) {\n  let format = actions.get("Format");\n\n  if (!format) {\n    return FieldType.none;\n  }\n\n  format = format[0];\n  format = format.trim();\n\n  if (format.startsWith("AFNumber_")) {\n    return FieldType.number;\n  }\n\n  if (format.startsWith("AFPercent_")) {\n    return FieldType.percent;\n  }\n\n  if (format.startsWith("AFDate_")) {\n    return FieldType.date;\n  }\n\n  if (format.startsWith("AFTime__")) {\n    return FieldType.time;\n  }\n\n  return FieldType.none;\n}\n\n/***/ }),\n/* 5 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Color = void 0;\n\nvar _scripting_utils = __w_pdfjs_require__(6);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Color extends _pdf_object.PDFObject {\n  constructor() {\n    super({});\n    this.transparent = ["T"];\n    this.black = ["G", 0];\n    this.white = ["G", 1];\n    this.red = ["RGB", 1, 0, 0];\n    this.green = ["RGB", 0, 1, 0];\n    this.blue = ["RGB", 0, 0, 1];\n    this.cyan = ["CMYK", 1, 0, 0, 0];\n    this.magenta = ["CMYK", 0, 1, 0, 0];\n    this.yellow = ["CMYK", 0, 0, 1, 0];\n    this.dkGray = ["G", 0.25];\n    this.gray = ["G", 0.5];\n    this.ltGray = ["G", 0.75];\n  }\n\n  static _isValidSpace(cColorSpace) {\n    return typeof cColorSpace === "string" && (cColorSpace === "T" || cColorSpace === "G" || cColorSpace === "RGB" || cColorSpace === "CMYK");\n  }\n\n  static _isValidColor(colorArray) {\n    if (!Array.isArray(colorArray) || colorArray.length === 0) {\n      return false;\n    }\n\n    const space = colorArray[0];\n\n    if (!Color._isValidSpace(space)) {\n      return false;\n    }\n\n    switch (space) {\n      case "T":\n        if (colorArray.length !== 1) {\n          return false;\n        }\n\n        break;\n\n      case "G":\n        if (colorArray.length !== 2) {\n          return false;\n        }\n\n        break;\n\n      case "RGB":\n        if (colorArray.length !== 4) {\n          return false;\n        }\n\n        break;\n\n      case "CMYK":\n        if (colorArray.length !== 5) {\n          return false;\n        }\n\n        break;\n\n      default:\n        return false;\n    }\n\n    return colorArray.slice(1).every(c => typeof c === "number" && c >= 0 && c <= 1);\n  }\n\n  static _getCorrectColor(colorArray) {\n    return Color._isValidColor(colorArray) ? colorArray : ["G", 0];\n  }\n\n  convert(colorArray, cColorSpace) {\n    if (!Color._isValidSpace(cColorSpace)) {\n      return this.black;\n    }\n\n    if (cColorSpace === "T") {\n      return ["T"];\n    }\n\n    colorArray = Color._getCorrectColor(colorArray);\n\n    if (colorArray[0] === cColorSpace) {\n      return colorArray;\n    }\n\n    if (colorArray[0] === "T") {\n      return this.convert(this.black, cColorSpace);\n    }\n\n    return _scripting_utils.ColorConverters[`${colorArray[0]}_${cColorSpace}`](colorArray.slice(1));\n  }\n\n  equal(colorArray1, colorArray2) {\n    colorArray1 = Color._getCorrectColor(colorArray1);\n    colorArray2 = Color._getCorrectColor(colorArray2);\n\n    if (colorArray1[0] === "T" || colorArray2[0] === "T") {\n      return colorArray1[0] === "T" && colorArray2[0] === "T";\n    }\n\n    if (colorArray1[0] !== colorArray2[0]) {\n      colorArray2 = this.convert(colorArray2, colorArray1[0]);\n    }\n\n    return colorArray1.slice(1).every((c, i) => c === colorArray2[i + 1]);\n  }\n\n}\n\nexports.Color = Color;\n\n/***/ }),\n/* 6 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.ColorConverters = void 0;\n\nfunction makeColorComp(n) {\n  return Math.floor(Math.max(0, Math.min(1, n)) * 255).toString(16).padStart(2, "0");\n}\n\nclass ColorConverters {\n  static CMYK_G([c, y, m, k]) {\n    return ["G", 1 - Math.min(1, 0.3 * c + 0.59 * m + 0.11 * y + k)];\n  }\n\n  static G_CMYK([g]) {\n    return ["CMYK", 0, 0, 0, 1 - g];\n  }\n\n  static G_RGB([g]) {\n    return ["RGB", g, g, g];\n  }\n\n  static G_HTML([g]) {\n    const G = makeColorComp(g);\n    return `#${G}${G}${G}`;\n  }\n\n  static RGB_G([r, g, b]) {\n    return ["G", 0.3 * r + 0.59 * g + 0.11 * b];\n  }\n\n  static RGB_HTML([r, g, b]) {\n    const R = makeColorComp(r);\n    const G = makeColorComp(g);\n    const B = makeColorComp(b);\n    return `#${R}${G}${B}`;\n  }\n\n  static T_HTML() {\n    return "#00000000";\n  }\n\n  static CMYK_RGB([c, y, m, k]) {\n    return ["RGB", 1 - Math.min(1, c + k), 1 - Math.min(1, m + k), 1 - Math.min(1, y + k)];\n  }\n\n  static CMYK_HTML(components) {\n    return this.RGB_HTML(this.CMYK_RGB(components));\n  }\n\n  static RGB_CMYK([r, g, b]) {\n    const c = 1 - r;\n    const m = 1 - g;\n    const y = 1 - b;\n    const k = Math.min(c, m, y);\n    return ["CMYK", c, m, y, k];\n  }\n\n}\n\nexports.ColorConverters = ColorConverters;\n\n/***/ }),\n/* 7 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.PDFObject = void 0;\n\nclass PDFObject {\n  constructor(data) {\n    this._expandos = Object.create(null);\n    this._send = data.send || null;\n    this._id = data.id || null;\n  }\n\n}\n\nexports.PDFObject = PDFObject;\n\n/***/ }),\n/* 8 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.AForm = void 0;\n\nvar _constants = __w_pdfjs_require__(2);\n\nclass AForm {\n  constructor(document, app, util, color) {\n    this._document = document;\n    this._app = app;\n    this._util = util;\n    this._color = color;\n    this._dateFormats = ["m/d", "m/d/yy", "mm/dd/yy", "mm/yy", "d-mmm", "d-mmm-yy", "dd-mmm-yy", "yy-mm-dd", "mmm-yy", "mmmm-yy", "mmm d, yyyy", "mmmm d, yyyy", "m/d/yy h:MM tt", "m/d/yy HH:MM"];\n    this._timeFormats = ["HH:MM", "h:MM tt", "HH:MM:ss", "h:MM:ss tt"];\n    this._emailRegex = new RegExp("^[a-zA-Z0-9.!#$%&\'*+\\\\/=?^_`{|}~-]+" + "@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?" + "(?:\\\\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$");\n  }\n\n  _mkTargetName(event) {\n    return event.target ? `[ ${event.target.name} ]` : "";\n  }\n\n  _parseDate(cFormat, cDate) {\n    const ddate = Date.parse(cDate);\n\n    if (isNaN(ddate)) {\n      try {\n        return this._util.scand(cFormat, cDate);\n      } catch (error) {\n        return null;\n      }\n    } else {\n      return new Date(ddate);\n    }\n  }\n\n  AFMergeChange(event = globalThis.event) {\n    if (event.willCommit) {\n      return event.value.toString();\n    }\n\n    return this._app._eventDispatcher.mergeChange(event);\n  }\n\n  AFParseDateEx(cString, cOrder) {\n    return this._parseDate(cOrder, cString);\n  }\n\n  AFExtractNums(str) {\n    if (typeof str === "number") {\n      return [str];\n    }\n\n    if (!str || typeof str !== "string") {\n      return null;\n    }\n\n    const first = str.charAt(0);\n\n    if (first === "." || first === ",") {\n      str = `0${str}`;\n    }\n\n    const numbers = str.match(/([0-9]+)/g);\n\n    if (numbers.length === 0) {\n      return null;\n    }\n\n    return numbers;\n  }\n\n  AFMakeNumber(str) {\n    if (typeof str === "number") {\n      return str;\n    }\n\n    if (typeof str !== "string") {\n      return null;\n    }\n\n    str = str.trim().replace(",", ".");\n    const number = parseFloat(str);\n\n    if (isNaN(number) || !isFinite(number)) {\n      return null;\n    }\n\n    return number;\n  }\n\n  AFMakeArrayFromList(string) {\n    if (typeof string === "string") {\n      return string.split(/, ?/g);\n    }\n\n    return string;\n  }\n\n  AFNumber_Format(nDec, sepStyle, negStyle, currStyle, strCurrency, bCurrencyPrepend) {\n    const event = globalThis.event;\n\n    if (!event.value) {\n      return;\n    }\n\n    let value = this.AFMakeNumber(event.value);\n\n    if (value === null) {\n      event.value = "";\n      return;\n    }\n\n    const sign = Math.sign(value);\n    const buf = [];\n    let hasParen = false;\n\n    if (sign === -1 && bCurrencyPrepend && negStyle === 0) {\n      buf.push("-");\n    }\n\n    if ((negStyle === 2 || negStyle === 3) && sign === -1) {\n      buf.push("(");\n      hasParen = true;\n    }\n\n    if (bCurrencyPrepend) {\n      buf.push(strCurrency);\n    }\n\n    sepStyle = Math.min(Math.max(0, Math.floor(sepStyle)), 4);\n    buf.push("%,", sepStyle, ".", nDec.toString(), "f");\n\n    if (!bCurrencyPrepend) {\n      buf.push(strCurrency);\n    }\n\n    if (hasParen) {\n      buf.push(")");\n    }\n\n    if (negStyle === 1 || negStyle === 3) {\n      event.target.textColor = sign === 1 ? this._color.black : this._color.red;\n    }\n\n    if ((negStyle !== 0 || bCurrencyPrepend) && sign === -1) {\n      value = -value;\n    }\n\n    const formatStr = buf.join("");\n    event.value = this._util.printf(formatStr, value);\n  }\n\n  AFNumber_Keystroke(nDec, sepStyle, negStyle, currStyle, strCurrency, bCurrencyPrepend) {\n    const event = globalThis.event;\n    let value = this.AFMergeChange(event);\n\n    if (!value) {\n      return;\n    }\n\n    value = value.trim();\n    let pattern;\n\n    if (sepStyle > 1) {\n      pattern = event.willCommit ? /^[+-]?([0-9]+(,[0-9]*)?|,[0-9]+)$/ : /^[+-]?[0-9]*,?[0-9]*$/;\n    } else {\n      pattern = event.willCommit ? /^[+-]?([0-9]+(\\.[0-9]*)?|\\.[0-9]+)$/ : /^[+-]?[0-9]*\\.?[0-9]*$/;\n    }\n\n    if (!pattern.test(value)) {\n      if (event.willCommit) {\n        const err = `${_constants.GlobalConstants.IDS_INVALID_VALUE} ${this._mkTargetName(event)}`;\n\n        this._app.alert(err);\n      }\n\n      event.rc = false;\n    }\n\n    if (event.willCommit && sepStyle > 1) {\n      event.value = parseFloat(value.replace(",", "."));\n    }\n  }\n\n  AFPercent_Format(nDec, sepStyle, percentPrepend = false) {\n    if (typeof nDec !== "number") {\n      return;\n    }\n\n    if (typeof sepStyle !== "number") {\n      return;\n    }\n\n    if (nDec < 0) {\n      throw new Error("Invalid nDec value in AFPercent_Format");\n    }\n\n    const event = globalThis.event;\n\n    if (nDec > 512) {\n      event.value = "%";\n      return;\n    }\n\n    nDec = Math.floor(nDec);\n    sepStyle = Math.min(Math.max(0, Math.floor(sepStyle)), 4);\n    let value = this.AFMakeNumber(event.value);\n\n    if (value === null) {\n      event.value = "%";\n      return;\n    }\n\n    const formatStr = `%,${sepStyle}.${nDec}f`;\n    value = this._util.printf(formatStr, value * 100);\n\n    if (percentPrepend) {\n      event.value = `%${value}`;\n    } else {\n      event.value = `${value}%`;\n    }\n  }\n\n  AFPercent_Keystroke(nDec, sepStyle) {\n    this.AFNumber_Keystroke(nDec, sepStyle, 0, 0, "", true);\n  }\n\n  AFDate_FormatEx(cFormat) {\n    const event = globalThis.event;\n    const value = event.value;\n\n    if (!value) {\n      return;\n    }\n\n    const date = this._parseDate(cFormat, value);\n\n    if (date !== null) {\n      event.value = this._util.printd(cFormat, date);\n    }\n  }\n\n  AFDate_Format(pdf) {\n    if (pdf >= 0 && pdf < this._dateFormats.length) {\n      this.AFDate_FormatEx(this._dateFormats[pdf]);\n    }\n  }\n\n  AFDate_KeystrokeEx(cFormat) {\n    const event = globalThis.event;\n\n    if (!event.willCommit) {\n      return;\n    }\n\n    const value = this.AFMergeChange(event);\n\n    if (!value) {\n      return;\n    }\n\n    if (this._parseDate(cFormat, value) === null) {\n      const invalid = _constants.GlobalConstants.IDS_INVALID_DATE;\n      const invalid2 = _constants.GlobalConstants.IDS_INVALID_DATE2;\n      const err = `${invalid} ${this._mkTargetName(event)}${invalid2}${cFormat}`;\n\n      this._app.alert(err);\n\n      event.rc = false;\n    }\n  }\n\n  AFDate_Keystroke(pdf) {\n    if (pdf >= 0 && pdf < this._dateFormats.length) {\n      this.AFDate_KeystrokeEx(this._dateFormats[pdf]);\n    }\n  }\n\n  AFRange_Validate(bGreaterThan, nGreaterThan, bLessThan, nLessThan) {\n    const event = globalThis.event;\n\n    if (!event.value) {\n      return;\n    }\n\n    const value = this.AFMakeNumber(event.value);\n\n    if (value === null) {\n      return;\n    }\n\n    bGreaterThan = !!bGreaterThan;\n    bLessThan = !!bLessThan;\n\n    if (bGreaterThan) {\n      nGreaterThan = this.AFMakeNumber(nGreaterThan);\n\n      if (nGreaterThan === null) {\n        return;\n      }\n    }\n\n    if (bLessThan) {\n      nLessThan = this.AFMakeNumber(nLessThan);\n\n      if (nLessThan === null) {\n        return;\n      }\n    }\n\n    let err = "";\n\n    if (bGreaterThan && bLessThan) {\n      if (value < nGreaterThan || value > nLessThan) {\n        err = this._util.printf(_constants.GlobalConstants.IDS_GT_AND_LT, nGreaterThan, nLessThan);\n      }\n    } else if (bGreaterThan) {\n      if (value < nGreaterThan) {\n        err = this._util.printf(_constants.GlobalConstants.IDS_GREATER_THAN, nGreaterThan);\n      }\n    } else if (value > nLessThan) {\n      err = this._util.printf(_constants.GlobalConstants.IDS_LESS_THAN, nLessThan);\n    }\n\n    if (err) {\n      this._app.alert(err);\n\n      event.rc = false;\n    }\n  }\n\n  AFSimple(cFunction, nValue1, nValue2) {\n    const value1 = this.AFMakeNumber(nValue1);\n\n    if (value1 === null) {\n      throw new Error("Invalid nValue1 in AFSimple");\n    }\n\n    const value2 = this.AFMakeNumber(nValue2);\n\n    if (value2 === null) {\n      throw new Error("Invalid nValue2 in AFSimple");\n    }\n\n    switch (cFunction) {\n      case "AVG":\n        return (value1 + value2) / 2;\n\n      case "SUM":\n        return value1 + value2;\n\n      case "PRD":\n        return value1 * value2;\n\n      case "MIN":\n        return Math.min(value1, value2);\n\n      case "MAX":\n        return Math.max(value1, value2);\n    }\n\n    throw new Error("Invalid cFunction in AFSimple");\n  }\n\n  AFSimple_Calculate(cFunction, cFields) {\n    const actions = {\n      AVG: args => args.reduce((acc, value) => acc + value, 0) / args.length,\n      SUM: args => args.reduce((acc, value) => acc + value, 0),\n      PRD: args => args.reduce((acc, value) => acc * value, 1),\n      MIN: args => args.reduce((acc, value) => Math.min(acc, value), Number.MAX_VALUE),\n      MAX: args => args.reduce((acc, value) => Math.max(acc, value), Number.MIN_VALUE)\n    };\n\n    if (!(cFunction in actions)) {\n      throw new TypeError("Invalid function in AFSimple_Calculate");\n    }\n\n    const event = globalThis.event;\n    const values = [];\n\n    for (const cField of cFields) {\n      const field = this._document.getField(cField);\n\n      const number = this.AFMakeNumber(field.value);\n\n      if (number !== null) {\n        values.push(number);\n      }\n    }\n\n    if (values.length === 0) {\n      event.value = cFunction === "PRD" ? 1 : 0;\n      return;\n    }\n\n    const res = actions[cFunction](values);\n    event.value = Math.round(1e6 * res) / 1e6;\n  }\n\n  AFSpecial_Format(psf) {\n    const event = globalThis.event;\n\n    if (!event.value) {\n      return;\n    }\n\n    psf = this.AFMakeNumber(psf);\n\n    if (psf === null) {\n      throw new Error("Invalid psf in AFSpecial_Format");\n    }\n\n    let formatStr = "";\n\n    switch (psf) {\n      case 0:\n        formatStr = "99999";\n        break;\n\n      case 1:\n        formatStr = "99999-9999";\n        break;\n\n      case 2:\n        if (this._util.printx("9999999999", event.value).length >= 10) {\n          formatStr = "(999) 999-9999";\n        } else {\n          formatStr = "999-9999";\n        }\n\n        break;\n\n      case 3:\n        formatStr = "999-99-9999";\n        break;\n\n      default:\n        throw new Error("Invalid psf in AFSpecial_Format");\n    }\n\n    event.value = this._util.printx(formatStr, event.value);\n  }\n\n  AFSpecial_KeystrokeEx(cMask) {\n    if (!cMask) {\n      return;\n    }\n\n    const event = globalThis.event;\n    const value = this.AFMergeChange(event);\n    const checkers = new Map([["9", char => char >= "0" && char <= "9"], ["A", char => "a" <= char && char <= "z" || "A" <= char && char <= "Z"], ["O", char => "a" <= char && char <= "z" || "A" <= char && char <= "Z" || "0" <= char && char <= "9"], ["X", char => true]]);\n\n    function _checkValidity(_value, _cMask) {\n      for (let i = 0, ii = value.length; i < ii; i++) {\n        const mask = _cMask.charAt(i);\n\n        const char = _value.charAt(i);\n\n        const checker = checkers.get(mask);\n\n        if (checker) {\n          if (!checker(char)) {\n            return false;\n          }\n        } else if (mask !== char) {\n          return false;\n        }\n      }\n\n      return true;\n    }\n\n    if (!value) {\n      return;\n    }\n\n    const err = `${_constants.GlobalConstants.IDS_INVALID_VALUE} = "${cMask}"`;\n\n    if (value.length > cMask.length) {\n      this._app.alert(err);\n\n      event.rc = false;\n      return;\n    }\n\n    if (event.willCommit) {\n      if (value.length < cMask.length) {\n        this._app.alert(err);\n\n        event.rc = false;\n        return;\n      }\n\n      if (!_checkValidity(value, cMask)) {\n        this._app.alert(err);\n\n        event.rc = false;\n        return;\n      }\n\n      event.value += cMask.substring(value.length);\n      return;\n    }\n\n    if (value.length < cMask.length) {\n      cMask = cMask.substring(0, value.length);\n    }\n\n    if (!_checkValidity(value, cMask)) {\n      this._app.alert(err);\n\n      event.rc = false;\n    }\n  }\n\n  AFSpecial_Keystroke(psf) {\n    const event = globalThis.event;\n\n    if (!event.value) {\n      return;\n    }\n\n    psf = this.AFMakeNumber(psf);\n\n    if (psf === null) {\n      throw new Error("Invalid psf in AFSpecial_Keystroke");\n    }\n\n    let formatStr;\n\n    switch (psf) {\n      case 0:\n        formatStr = "99999";\n        break;\n\n      case 1:\n        formatStr = "99999-9999";\n        break;\n\n      case 2:\n        const finalLen = event.value.length + event.change.length + event.selStart - event.selEnd;\n\n        if (finalLen >= 8) {\n          formatStr = "(999) 999-9999";\n        } else {\n          formatStr = "999-9999";\n        }\n\n        break;\n\n      case 3:\n        formatStr = "999-99-9999";\n        break;\n\n      default:\n        throw new Error("Invalid psf in AFSpecial_Keystroke");\n    }\n\n    this.AFSpecial_KeystrokeEx(formatStr);\n  }\n\n  AFTime_FormatEx(cFormat) {\n    this.AFDate_FormatEx(cFormat);\n  }\n\n  AFTime_Format(pdf) {\n    if (pdf >= 0 && pdf < this._timeFormats.length) {\n      this.AFDate_FormatEx(this._timeFormats[pdf]);\n    }\n  }\n\n  AFTime_KeystrokeEx(cFormat) {\n    this.AFDate_KeystrokeEx(cFormat);\n  }\n\n  AFTime_Keystroke(pdf) {\n    if (pdf >= 0 && pdf < this._timeFormats.length) {\n      this.AFDate_KeystrokeEx(this._timeFormats[pdf]);\n    }\n  }\n\n  eMailValidate(str) {\n    return this._emailRegex.test(str);\n  }\n\n}\n\nexports.AForm = AForm;\n\n/***/ }),\n/* 9 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.App = void 0;\n\nvar _color = __w_pdfjs_require__(5);\n\nvar _event = __w_pdfjs_require__(10);\n\nvar _fullscreen = __w_pdfjs_require__(11);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nvar _thermometer = __w_pdfjs_require__(12);\n\nconst VIEWER_TYPE = "PDF.js";\nconst VIEWER_VARIATION = "Full";\nconst VIEWER_VERSION = "10.0";\nconst FORMS_VERSION = undefined;\n\nclass App extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    this._constants = null;\n    this._focusRect = true;\n    this._fs = null;\n    this._language = App._getLanguage(data.language);\n    this._openInPlace = false;\n    this._platform = App._getPlatform(data.platform);\n    this._runtimeHighlight = false;\n    this._runtimeHighlightColor = ["T"];\n    this._thermometer = null;\n    this._toolbar = false;\n    this._document = data._document;\n    this._proxyHandler = data.proxyHandler;\n    this._objects = Object.create(null);\n    this._eventDispatcher = new _event.EventDispatcher(this._document, data.calculationOrder, this._objects);\n    this._timeoutIds = new WeakMap();\n\n    if (typeof FinalizationRegistry !== "undefined") {\n      this._timeoutIdsRegistry = new FinalizationRegistry(this._cleanTimeout.bind(this));\n    } else {\n      this._timeoutIdsRegistry = null;\n    }\n\n    this._timeoutCallbackIds = new Map();\n    this._timeoutCallbackId = 0;\n    this._globalEval = data.globalEval;\n    this._externalCall = data.externalCall;\n    this._document = data._document;\n  }\n\n  _dispatchEvent(pdfEvent) {\n    this._eventDispatcher.dispatch(pdfEvent);\n  }\n\n  _registerTimeoutCallback(cExpr) {\n    const id = this._timeoutCallbackId++;\n\n    this._timeoutCallbackIds.set(id, cExpr);\n\n    return id;\n  }\n\n  _unregisterTimeoutCallback(id) {\n    this._timeoutCallbackIds.delete(id);\n  }\n\n  _evalCallback({\n    callbackId,\n    interval\n  }) {\n    const expr = this._timeoutCallbackIds.get(callbackId);\n\n    if (!interval) {\n      this._unregisterTimeoutCallback(callbackId);\n    }\n\n    if (expr) {\n      this._globalEval(expr);\n    }\n  }\n\n  _registerTimeout(callbackId, interval) {\n    const timeout = Object.create(null);\n    const id = {\n      callbackId,\n      interval\n    };\n\n    this._timeoutIds.set(timeout, id);\n\n    if (this._timeoutIdsRegistry) {\n      this._timeoutIdsRegistry.register(timeout, id);\n    }\n\n    return timeout;\n  }\n\n  _unregisterTimeout(timeout) {\n    if (this._timeoutIdsRegistry) {\n      this._timeoutIdsRegistry.unregister(timeout);\n    }\n\n    const data = this._timeoutIds.get(timeout);\n\n    if (!data) {\n      return;\n    }\n\n    this._timeoutIds.delete(timeout);\n\n    this._cleanTimeout(data);\n  }\n\n  _cleanTimeout({\n    callbackId,\n    interval\n  }) {\n    this._unregisterTimeoutCallback(callbackId);\n\n    if (interval) {\n      this._externalCall("clearInterval", [callbackId]);\n    } else {\n      this._externalCall("clearTimeout", [callbackId]);\n    }\n  }\n\n  static _getPlatform(platform) {\n    if (typeof platform === "string") {\n      platform = platform.toLowerCase();\n\n      if (platform.includes("win")) {\n        return "WIN";\n      } else if (platform.includes("mac")) {\n        return "MAC";\n      }\n    }\n\n    return "UNIX";\n  }\n\n  static _getLanguage(language) {\n    const [main, sub] = language.toLowerCase().split(/[-_]/);\n\n    switch (main) {\n      case "zh":\n        if (sub === "cn" || sub === "sg") {\n          return "CHS";\n        }\n\n        return "CHT";\n\n      case "da":\n        return "DAN";\n\n      case "de":\n        return "DEU";\n\n      case "es":\n        return "ESP";\n\n      case "fr":\n        return "FRA";\n\n      case "it":\n        return "ITA";\n\n      case "ko":\n        return "KOR";\n\n      case "ja":\n        return "JPN";\n\n      case "nl":\n        return "NLD";\n\n      case "no":\n        return "NOR";\n\n      case "pt":\n        if (sub === "br") {\n          return "PTB";\n        }\n\n        return "ENU";\n\n      case "fi":\n        return "SUO";\n\n      case "SV":\n        return "SVE";\n\n      default:\n        return "ENU";\n    }\n  }\n\n  get activeDocs() {\n    return [this._document.wrapped];\n  }\n\n  set activeDocs(_) {\n    throw new Error("app.activeDocs is read-only");\n  }\n\n  get calculate() {\n    return this._document.obj.calculate;\n  }\n\n  set calculate(calculate) {\n    this._document.obj.calculate = calculate;\n  }\n\n  get constants() {\n    if (!this._constants) {\n      this._constants = Object.freeze({\n        align: Object.freeze({\n          left: 0,\n          center: 1,\n          right: 2,\n          top: 3,\n          bottom: 4\n        })\n      });\n    }\n\n    return this._constants;\n  }\n\n  set constants(_) {\n    throw new Error("app.constants is read-only");\n  }\n\n  get focusRect() {\n    return this._focusRect;\n  }\n\n  set focusRect(val) {\n    this._focusRect = val;\n  }\n\n  get formsVersion() {\n    return FORMS_VERSION;\n  }\n\n  set formsVersion(_) {\n    throw new Error("app.formsVersion is read-only");\n  }\n\n  get fromPDFConverters() {\n    return [];\n  }\n\n  set fromPDFConverters(_) {\n    throw new Error("app.fromPDFConverters is read-only");\n  }\n\n  get fs() {\n    if (this._fs === null) {\n      this._fs = new Proxy(new _fullscreen.FullScreen({\n        send: this._send\n      }), this._proxyHandler);\n    }\n\n    return this._fs;\n  }\n\n  set fs(_) {\n    throw new Error("app.fs is read-only");\n  }\n\n  get language() {\n    return this._language;\n  }\n\n  set language(_) {\n    throw new Error("app.language is read-only");\n  }\n\n  get media() {\n    return undefined;\n  }\n\n  set media(_) {\n    throw new Error("app.media is read-only");\n  }\n\n  get monitors() {\n    return [];\n  }\n\n  set monitors(_) {\n    throw new Error("app.monitors is read-only");\n  }\n\n  get numPlugins() {\n    return 0;\n  }\n\n  set numPlugins(_) {\n    throw new Error("app.numPlugins is read-only");\n  }\n\n  get openInPlace() {\n    return this._openInPlace;\n  }\n\n  set openInPlace(val) {\n    this._openInPlace = val;\n  }\n\n  get platform() {\n    return this._platform;\n  }\n\n  set platform(_) {\n    throw new Error("app.platform is read-only");\n  }\n\n  get plugins() {\n    return [];\n  }\n\n  set plugins(_) {\n    throw new Error("app.plugins is read-only");\n  }\n\n  get printColorProfiles() {\n    return [];\n  }\n\n  set printColorProfiles(_) {\n    throw new Error("app.printColorProfiles is read-only");\n  }\n\n  get printerNames() {\n    return [];\n  }\n\n  set printerNames(_) {\n    throw new Error("app.printerNames is read-only");\n  }\n\n  get runtimeHighlight() {\n    return this._runtimeHighlight;\n  }\n\n  set runtimeHighlight(val) {\n    this._runtimeHighlight = val;\n  }\n\n  get runtimeHighlightColor() {\n    return this._runtimeHighlightColor;\n  }\n\n  set runtimeHighlightColor(val) {\n    if (_color.Color._isValidColor(val)) {\n      this._runtimeHighlightColor = val;\n    }\n  }\n\n  get thermometer() {\n    if (this._thermometer === null) {\n      this._thermometer = new Proxy(new _thermometer.Thermometer({\n        send: this._send\n      }), this._proxyHandler);\n    }\n\n    return this._thermometer;\n  }\n\n  set thermometer(_) {\n    throw new Error("app.thermometer is read-only");\n  }\n\n  get toolbar() {\n    return this._toolbar;\n  }\n\n  set toolbar(val) {\n    this._toolbar = val;\n  }\n\n  get toolbarHorizontal() {\n    return this.toolbar;\n  }\n\n  set toolbarHorizontal(value) {\n    this.toolbar = value;\n  }\n\n  get toolbarVertical() {\n    return this.toolbar;\n  }\n\n  set toolbarVertical(value) {\n    this.toolbar = value;\n  }\n\n  get viewerType() {\n    return VIEWER_TYPE;\n  }\n\n  set viewerType(_) {\n    throw new Error("app.viewerType is read-only");\n  }\n\n  get viewerVariation() {\n    return VIEWER_VARIATION;\n  }\n\n  set viewerVariation(_) {\n    throw new Error("app.viewerVariation is read-only");\n  }\n\n  get viewerVersion() {\n    return VIEWER_VERSION;\n  }\n\n  set viewerVersion(_) {\n    throw new Error("app.viewerVersion is read-only");\n  }\n\n  addMenuItem() {}\n\n  addSubMenu() {}\n\n  addToolButton() {}\n\n  alert(cMsg, nIcon = 0, nType = 0, cTitle = "PDF.js", oDoc = null, oCheckbox = null) {\n    if (typeof cMsg === "object") {\n      nType = cMsg.nType;\n      cMsg = cMsg.cMsg;\n    }\n\n    cMsg = (cMsg || "").toString();\n    nType = typeof nType !== "number" || isNaN(nType) || nType < 0 || nType > 3 ? 0 : nType;\n\n    if (nType >= 2) {\n      return this._externalCall("confirm", [cMsg]) ? 4 : 3;\n    }\n\n    this._externalCall("alert", [cMsg]);\n\n    return 1;\n  }\n\n  beep() {}\n\n  beginPriv() {}\n\n  browseForDoc() {}\n\n  clearInterval(oInterval) {\n    this._unregisterTimeout(oInterval);\n  }\n\n  clearTimeOut(oTime) {\n    this._unregisterTimeout(oTime);\n  }\n\n  endPriv() {}\n\n  execDialog() {}\n\n  execMenuItem() {}\n\n  getNthPlugInName() {}\n\n  getPath() {}\n\n  goBack() {}\n\n  goForward() {}\n\n  hideMenuItem() {}\n\n  hideToolbarButton() {}\n\n  launchURL() {}\n\n  listMenuItems() {}\n\n  listToolbarButtons() {}\n\n  loadPolicyFile() {}\n\n  mailGetAddrs() {}\n\n  mailMsg() {}\n\n  newDoc() {}\n\n  newCollection() {}\n\n  newFDF() {}\n\n  openDoc() {}\n\n  openFDF() {}\n\n  popUpMenu() {}\n\n  popUpMenuEx() {}\n\n  removeToolButton() {}\n\n  response(cQuestion, cTitle = "", cDefault = "", bPassword = "", cLabel = "") {\n    if (typeof cQuestion === "object") {\n      cDefault = cQuestion.cDefault;\n      cQuestion = cQuestion.cQuestion;\n    }\n\n    cQuestion = (cQuestion || "").toString();\n    cDefault = (cDefault || "").toString();\n    return this._externalCall("prompt", [cQuestion, cDefault || ""]);\n  }\n\n  setInterval(cExpr, nMilliseconds = 0) {\n    if (typeof cExpr === "object") {\n      nMilliseconds = cExpr.nMilliseconds || 0;\n      cExpr = cExpr.cExpr;\n    }\n\n    if (typeof cExpr !== "string") {\n      throw new TypeError("First argument of app.setInterval must be a string");\n    }\n\n    if (typeof nMilliseconds !== "number") {\n      throw new TypeError("Second argument of app.setInterval must be a number");\n    }\n\n    const callbackId = this._registerTimeoutCallback(cExpr);\n\n    this._externalCall("setInterval", [callbackId, nMilliseconds]);\n\n    return this._registerTimeout(callbackId, true);\n  }\n\n  setTimeOut(cExpr, nMilliseconds = 0) {\n    if (typeof cExpr === "object") {\n      nMilliseconds = cExpr.nMilliseconds || 0;\n      cExpr = cExpr.cExpr;\n    }\n\n    if (typeof cExpr !== "string") {\n      throw new TypeError("First argument of app.setTimeOut must be a string");\n    }\n\n    if (typeof nMilliseconds !== "number") {\n      throw new TypeError("Second argument of app.setTimeOut must be a number");\n    }\n\n    const callbackId = this._registerTimeoutCallback(cExpr);\n\n    this._externalCall("setTimeout", [callbackId, nMilliseconds]);\n\n    return this._registerTimeout(callbackId, false);\n  }\n\n  trustedFunction() {}\n\n  trustPropagatorFunction() {}\n\n}\n\nexports.App = App;\n\n/***/ }),\n/* 10 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.EventDispatcher = exports.Event = void 0;\n\nclass Event {\n  constructor(data) {\n    this.change = data.change || "";\n    this.changeEx = data.changeEx || null;\n    this.commitKey = data.commitKey || 0;\n    this.fieldFull = data.fieldFull || false;\n    this.keyDown = data.keyDown || false;\n    this.modifier = data.modifier || false;\n    this.name = data.name;\n    this.rc = true;\n    this.richChange = data.richChange || [];\n    this.richChangeEx = data.richChangeEx || [];\n    this.richValue = data.richValue || [];\n    this.selEnd = data.selEnd || -1;\n    this.selStart = data.selStart || -1;\n    this.shift = data.shift || false;\n    this.source = data.source || null;\n    this.target = data.target || null;\n    this.targetName = "";\n    this.type = "Field";\n    this.value = data.value || "";\n    this.willCommit = data.willCommit || false;\n  }\n\n}\n\nexports.Event = Event;\n\nclass EventDispatcher {\n  constructor(document, calculationOrder, objects) {\n    this._document = document;\n    this._calculationOrder = calculationOrder;\n    this._objects = objects;\n    this._document.obj._eventDispatcher = this;\n  }\n\n  mergeChange(event) {\n    let value = event.value;\n\n    if (typeof value !== "string") {\n      value = value.toString();\n    }\n\n    const prefix = event.selStart >= 0 ? value.substring(0, event.selStart) : "";\n    const postfix = event.selEnd >= 0 && event.selEnd <= value.length ? value.substring(event.selEnd) : "";\n    return `${prefix}${event.change}${postfix}`;\n  }\n\n  dispatch(baseEvent) {\n    const id = baseEvent.id;\n\n    if (!(id in this._objects)) {\n      let event;\n\n      if (id === "doc" || id === "page") {\n        event = globalThis.event = new Event(baseEvent);\n        event.source = event.target = this._document.wrapped;\n        event.name = baseEvent.name;\n      }\n\n      if (id === "doc") {\n        this._document.obj._dispatchDocEvent(event.name);\n      } else if (id === "page") {\n        this._document.obj._dispatchPageEvent(event.name, baseEvent.actions, baseEvent.pageNumber);\n      }\n\n      return;\n    }\n\n    const name = baseEvent.name;\n    const source = this._objects[id];\n    const event = globalThis.event = new Event(baseEvent);\n    let savedChange;\n\n    if (source.obj._isButton()) {\n      source.obj._id = id;\n      event.value = source.obj._getExportValue(event.value);\n\n      if (name === "Action") {\n        source.obj._value = event.value;\n      }\n    }\n\n    switch (name) {\n      case "Keystroke":\n        savedChange = {\n          value: event.value,\n          change: event.change,\n          selStart: event.selStart,\n          selEnd: event.selEnd\n        };\n        break;\n\n      case "Blur":\n      case "Focus":\n        Object.defineProperty(event, "value", {\n          configurable: false,\n          writable: false,\n          enumerable: true,\n          value: event.value\n        });\n        break;\n\n      case "Validate":\n        this.runValidation(source, event);\n        return;\n\n      case "Action":\n        this.runActions(source, source, event, name);\n\n        if (this._document.obj.calculate) {\n          this.runCalculate(source, event);\n        }\n\n        return;\n    }\n\n    this.runActions(source, source, event, name);\n\n    if (name === "Keystroke") {\n      if (event.rc) {\n        if (event.willCommit) {\n          this.runValidation(source, event);\n        } else if (event.change !== savedChange.change || event.selStart !== savedChange.selStart || event.selEnd !== savedChange.selEnd) {\n          source.wrapped.value = this.mergeChange(event);\n        }\n      } else if (!event.willCommit) {\n        source.obj._send({\n          id: source.obj._id,\n          value: savedChange.value,\n          selRange: [savedChange.selStart, savedChange.selEnd]\n        });\n      }\n    }\n  }\n\n  runValidation(source, event) {\n    const hasRan = this.runActions(source, source, event, "Validate");\n\n    if (event.rc) {\n      if (hasRan) {\n        source.wrapped.value = event.value;\n        source.wrapped.valueAsString = event.value;\n      } else {\n        source.obj.value = event.value;\n        source.obj.valueAsString = event.value;\n      }\n\n      if (this._document.obj.calculate) {\n        this.runCalculate(source, event);\n      }\n\n      event.value = source.obj.value;\n      this.runActions(source, source, event, "Format");\n      source.wrapped.valueAsString = event.value;\n    }\n  }\n\n  runActions(source, target, event, eventName) {\n    event.source = source.wrapped;\n    event.target = target.wrapped;\n    event.name = eventName;\n    event.targetName = target.obj.name;\n    event.rc = true;\n    return target.obj._runActions(event);\n  }\n\n  calculateNow() {\n    if (!this._calculationOrder) {\n      return;\n    }\n\n    const first = this._calculationOrder[0];\n    const source = this._objects[first];\n    globalThis.event = new Event({});\n    this.runCalculate(source, globalThis.event);\n  }\n\n  runCalculate(source, event) {\n    if (!this._calculationOrder) {\n      return;\n    }\n\n    for (const targetId of this._calculationOrder) {\n      if (!(targetId in this._objects)) {\n        continue;\n      }\n\n      if (!this._document.obj.calculate) {\n        continue;\n      }\n\n      event.value = null;\n      const target = this._objects[targetId];\n      this.runActions(source, target, event, "Calculate");\n\n      if (!event.rc) {\n        continue;\n      }\n\n      if (event.value !== null) {\n        target.wrapped.value = event.value;\n      }\n\n      event.value = target.obj.value;\n      this.runActions(target, target, event, "Validate");\n\n      if (!event.rc) {\n        continue;\n      }\n\n      event.value = target.obj.value;\n      this.runActions(target, target, event, "Format");\n\n      if (event.value !== null) {\n        target.wrapped.valueAsString = event.value;\n      }\n    }\n  }\n\n}\n\nexports.EventDispatcher = EventDispatcher;\n\n/***/ }),\n/* 11 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.FullScreen = void 0;\n\nvar _constants = __w_pdfjs_require__(2);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass FullScreen extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    this._backgroundColor = [];\n    this._clickAdvances = true;\n    this._cursor = _constants.Cursor.hidden;\n    this._defaultTransition = "";\n    this._escapeExits = true;\n    this._isFullScreen = true;\n    this._loop = false;\n    this._timeDelay = 3600;\n    this._usePageTiming = false;\n    this._useTimer = false;\n  }\n\n  get backgroundColor() {\n    return this._backgroundColor;\n  }\n\n  set backgroundColor(_) {}\n\n  get clickAdvances() {\n    return this._clickAdvances;\n  }\n\n  set clickAdvances(_) {}\n\n  get cursor() {\n    return this._cursor;\n  }\n\n  set cursor(_) {}\n\n  get defaultTransition() {\n    return this._defaultTransition;\n  }\n\n  set defaultTransition(_) {}\n\n  get escapeExits() {\n    return this._escapeExits;\n  }\n\n  set escapeExits(_) {}\n\n  get isFullScreen() {\n    return this._isFullScreen;\n  }\n\n  set isFullScreen(_) {}\n\n  get loop() {\n    return this._loop;\n  }\n\n  set loop(_) {}\n\n  get timeDelay() {\n    return this._timeDelay;\n  }\n\n  set timeDelay(_) {}\n\n  get transitions() {\n    return ["Replace", "WipeRight", "WipeLeft", "WipeDown", "WipeUp", "SplitHorizontalIn", "SplitHorizontalOut", "SplitVerticalIn", "SplitVerticalOut", "BlindsHorizontal", "BlindsVertical", "BoxIn", "BoxOut", "GlitterRight", "GlitterDown", "GlitterRightDown", "Dissolve", "Random"];\n  }\n\n  set transitions(_) {\n    throw new Error("fullscreen.transitions is read-only");\n  }\n\n  get usePageTiming() {\n    return this._usePageTiming;\n  }\n\n  set usePageTiming(_) {}\n\n  get useTimer() {\n    return this._useTimer;\n  }\n\n  set useTimer(_) {}\n\n}\n\nexports.FullScreen = FullScreen;\n\n/***/ }),\n/* 12 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Thermometer = void 0;\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Thermometer extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    this._cancelled = false;\n    this._duration = 100;\n    this._text = "";\n    this._value = 0;\n  }\n\n  get cancelled() {\n    return this._cancelled;\n  }\n\n  set cancelled(_) {\n    throw new Error("thermometer.cancelled is read-only");\n  }\n\n  get duration() {\n    return this._duration;\n  }\n\n  set duration(val) {\n    this._duration = val;\n  }\n\n  get text() {\n    return this._text;\n  }\n\n  set text(val) {\n    this._text = val;\n  }\n\n  get value() {\n    return this._value;\n  }\n\n  set value(val) {\n    this._value = val;\n  }\n\n  begin() {}\n\n  end() {}\n\n}\n\nexports.Thermometer = Thermometer;\n\n/***/ }),\n/* 13 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Console = void 0;\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Console extends _pdf_object.PDFObject {\n  clear() {\n    this._send({\n      id: "clear"\n    });\n  }\n\n  hide() {}\n\n  println(msg) {\n    if (typeof msg === "string") {\n      this._send({\n        command: "println",\n        value: "PDF.js Console:: " + msg\n      });\n    }\n  }\n\n  show() {}\n\n}\n\nexports.Console = Console;\n\n/***/ }),\n/* 14 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Doc = void 0;\n\nvar _common = __w_pdfjs_require__(4);\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nvar _print_params = __w_pdfjs_require__(15);\n\nvar _constants = __w_pdfjs_require__(2);\n\nclass InfoProxyHandler {\n  static get(obj, prop) {\n    return obj[prop.toLowerCase()];\n  }\n\n  static set(obj, prop, value) {\n    throw new Error(`doc.info.${prop} is read-only`);\n  }\n\n}\n\nclass Doc extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    this._expandos = globalThis;\n    this._baseURL = data.baseURL || "";\n    this._calculate = true;\n    this._delay = false;\n    this._dirty = false;\n    this._disclosed = false;\n    this._media = undefined;\n    this._metadata = data.metadata || "";\n    this._noautocomplete = undefined;\n    this._nocache = undefined;\n    this._spellDictionaryOrder = [];\n    this._spellLanguageOrder = [];\n    this._printParams = null;\n    this._fields = new Map();\n    this._fieldNames = [];\n    this._event = null;\n    this._author = data.Author || "";\n    this._creator = data.Creator || "";\n    this._creationDate = this._getDate(data.CreationDate) || null;\n    this._docID = data.docID || ["", ""];\n    this._documentFileName = data.filename || "";\n    this._filesize = data.filesize || 0;\n    this._keywords = data.Keywords || "";\n    this._layout = data.layout || "";\n    this._modDate = this._getDate(data.ModDate) || null;\n    this._numFields = 0;\n    this._numPages = data.numPages || 1;\n    this._pageNum = data.pageNum || 0;\n    this._producer = data.Producer || "";\n    this._subject = data.Subject || "";\n    this._title = data.Title || "";\n    this._URL = data.URL || "";\n    this._info = new Proxy({\n      title: this._title,\n      author: this._author,\n      authors: data.authors || [this._author],\n      subject: this._subject,\n      keywords: this._keywords,\n      creator: this._creator,\n      producer: this._producer,\n      creationdate: this._creationDate,\n      moddate: this._modDate,\n      trapped: data.Trapped || "Unknown"\n    }, InfoProxyHandler);\n    this._zoomType = _constants.ZoomType.none;\n    this._zoom = data.zoom || 100;\n    this._actions = (0, _common.createActionsMap)(data.actions);\n    this._globalEval = data.globalEval;\n    this._pageActions = new Map();\n  }\n\n  _dispatchDocEvent(name) {\n    if (name === "Open") {\n      const dontRun = new Set(["WillClose", "WillSave", "DidSave", "WillPrint", "DidPrint", "OpenAction"]);\n\n      for (const actionName of this._actions.keys()) {\n        if (!dontRun.has(actionName)) {\n          this._runActions(actionName);\n        }\n      }\n\n      this._runActions("OpenAction");\n    } else {\n      this._runActions(name);\n    }\n  }\n\n  _dispatchPageEvent(name, actions, pageNumber) {\n    if (name === "PageOpen") {\n      if (!this._pageActions.has(pageNumber)) {\n        this._pageActions.set(pageNumber, (0, _common.createActionsMap)(actions));\n      }\n\n      this._pageNum = pageNumber - 1;\n    }\n\n    actions = this._pageActions.get(pageNumber)?.get(name);\n\n    if (actions) {\n      for (const action of actions) {\n        this._globalEval(action);\n      }\n    }\n  }\n\n  _runActions(name) {\n    const actions = this._actions.get(name);\n\n    if (actions) {\n      for (const action of actions) {\n        this._globalEval(action);\n      }\n    }\n  }\n\n  _addField(name, field) {\n    this._fields.set(name, field);\n\n    this._fieldNames.push(name);\n\n    this._numFields++;\n  }\n\n  _getDate(date) {\n    if (!date || date.length < 15 || !date.startsWith("D:")) {\n      return date;\n    }\n\n    date = date.substring(2);\n    const year = date.substring(0, 4);\n    const month = date.substring(4, 6);\n    const day = date.substring(6, 8);\n    const hour = date.substring(8, 10);\n    const minute = date.substring(10, 12);\n    const o = date.charAt(12);\n    let second, offsetPos;\n\n    if (o === "Z" || o === "+" || o === "-") {\n      second = "00";\n      offsetPos = 12;\n    } else {\n      second = date.substring(12, 14);\n      offsetPos = 14;\n    }\n\n    const offset = date.substring(offsetPos).replaceAll("\'", "");\n    return new Date(`${year}-${month}-${day}T${hour}:${minute}:${second}${offset}`);\n  }\n\n  get author() {\n    return this._author;\n  }\n\n  set author(_) {\n    throw new Error("doc.author is read-only");\n  }\n\n  get baseURL() {\n    return this._baseURL;\n  }\n\n  set baseURL(baseURL) {\n    this._baseURL = baseURL;\n  }\n\n  get bookmarkRoot() {\n    return undefined;\n  }\n\n  set bookmarkRoot(_) {\n    throw new Error("doc.bookmarkRoot is read-only");\n  }\n\n  get calculate() {\n    return this._calculate;\n  }\n\n  set calculate(calculate) {\n    this._calculate = calculate;\n  }\n\n  get creator() {\n    return this._creator;\n  }\n\n  set creator(_) {\n    throw new Error("doc.creator is read-only");\n  }\n\n  get dataObjects() {\n    return [];\n  }\n\n  set dataObjects(_) {\n    throw new Error("doc.dataObjects is read-only");\n  }\n\n  get delay() {\n    return this._delay;\n  }\n\n  set delay(delay) {\n    this._delay = delay;\n  }\n\n  get dirty() {\n    return this._dirty;\n  }\n\n  set dirty(dirty) {\n    this._dirty = dirty;\n  }\n\n  get disclosed() {\n    return this._disclosed;\n  }\n\n  set disclosed(disclosed) {\n    this._disclosed = disclosed;\n  }\n\n  get docID() {\n    return this._docID;\n  }\n\n  set docID(_) {\n    throw new Error("doc.docID is read-only");\n  }\n\n  get documentFileName() {\n    return this._documentFileName;\n  }\n\n  set documentFileName(_) {\n    throw new Error("doc.documentFileName is read-only");\n  }\n\n  get dynamicXFAForm() {\n    return false;\n  }\n\n  set dynamicXFAForm(_) {\n    throw new Error("doc.dynamicXFAForm is read-only");\n  }\n\n  get external() {\n    return true;\n  }\n\n  set external(_) {\n    throw new Error("doc.external is read-only");\n  }\n\n  get filesize() {\n    return this._filesize;\n  }\n\n  set filesize(_) {\n    throw new Error("doc.filesize is read-only");\n  }\n\n  get hidden() {\n    return false;\n  }\n\n  set hidden(_) {\n    throw new Error("doc.hidden is read-only");\n  }\n\n  get hostContainer() {\n    return undefined;\n  }\n\n  set hostContainer(_) {\n    throw new Error("doc.hostContainer is read-only");\n  }\n\n  get icons() {\n    return undefined;\n  }\n\n  set icons(_) {\n    throw new Error("doc.icons is read-only");\n  }\n\n  get info() {\n    return this._info;\n  }\n\n  set info(_) {\n    throw new Error("doc.info is read-only");\n  }\n\n  get innerAppWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set innerAppWindowRect(_) {\n    throw new Error("doc.innerAppWindowRect is read-only");\n  }\n\n  get innerDocWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set innerDocWindowRect(_) {\n    throw new Error("doc.innerDocWindowRect is read-only");\n  }\n\n  get isModal() {\n    return false;\n  }\n\n  set isModal(_) {\n    throw new Error("doc.isModal is read-only");\n  }\n\n  get keywords() {\n    return this._keywords;\n  }\n\n  set keywords(_) {\n    throw new Error("doc.keywords is read-only");\n  }\n\n  get layout() {\n    return this._layout;\n  }\n\n  set layout(value) {\n    if (typeof value !== "string") {\n      return;\n    }\n\n    if (value !== "SinglePage" && value !== "OneColumn" && value !== "TwoColumnLeft" && value !== "TwoPageLeft" && value !== "TwoColumnRight" && value !== "TwoPageRight") {\n      value = "SinglePage";\n    }\n\n    this._send({\n      command: "layout",\n      value\n    });\n\n    this._layout = value;\n  }\n\n  get media() {\n    return this._media;\n  }\n\n  set media(media) {\n    this._media = media;\n  }\n\n  get metadata() {\n    return this._metadata;\n  }\n\n  set metadata(metadata) {\n    this._metadata = metadata;\n  }\n\n  get modDate() {\n    return this._modDate;\n  }\n\n  set modDate(_) {\n    throw new Error("doc.modDate is read-only");\n  }\n\n  get mouseX() {\n    return 0;\n  }\n\n  set mouseX(_) {\n    throw new Error("doc.mouseX is read-only");\n  }\n\n  get mouseY() {\n    return 0;\n  }\n\n  set mouseY(_) {\n    throw new Error("doc.mouseY is read-only");\n  }\n\n  get noautocomplete() {\n    return this._noautocomplete;\n  }\n\n  set noautocomplete(noautocomplete) {\n    this._noautocomplete = noautocomplete;\n  }\n\n  get nocache() {\n    return this._nocache;\n  }\n\n  set nocache(nocache) {\n    this._nocache = nocache;\n  }\n\n  get numFields() {\n    return this._numFields;\n  }\n\n  set numFields(_) {\n    throw new Error("doc.numFields is read-only");\n  }\n\n  get numPages() {\n    return this._numPages;\n  }\n\n  set numPages(_) {\n    throw new Error("doc.numPages is read-only");\n  }\n\n  get numTemplates() {\n    return 0;\n  }\n\n  set numTemplates(_) {\n    throw new Error("doc.numTemplates is read-only");\n  }\n\n  get outerAppWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set outerAppWindowRect(_) {\n    throw new Error("doc.outerAppWindowRect is read-only");\n  }\n\n  get outerDocWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set outerDocWindowRect(_) {\n    throw new Error("doc.outerDocWindowRect is read-only");\n  }\n\n  get pageNum() {\n    return this._pageNum;\n  }\n\n  set pageNum(value) {\n    if (typeof value !== "number" || value < 0 || value >= this._numPages) {\n      return;\n    }\n\n    this._send({\n      command: "page-num",\n      value\n    });\n\n    this._pageNum = value;\n  }\n\n  get pageWindowRect() {\n    return [0, 0, 0, 0];\n  }\n\n  set pageWindowRect(_) {\n    throw new Error("doc.pageWindowRect is read-only");\n  }\n\n  get path() {\n    return "";\n  }\n\n  set path(_) {\n    throw new Error("doc.path is read-only");\n  }\n\n  get permStatusReady() {\n    return true;\n  }\n\n  set permStatusReady(_) {\n    throw new Error("doc.permStatusReady is read-only");\n  }\n\n  get producer() {\n    return this._producer;\n  }\n\n  set producer(_) {\n    throw new Error("doc.producer is read-only");\n  }\n\n  get requiresFullSave() {\n    return false;\n  }\n\n  set requiresFullSave(_) {\n    throw new Error("doc.requiresFullSave is read-only");\n  }\n\n  get securityHandler() {\n    return null;\n  }\n\n  set securityHandler(_) {\n    throw new Error("doc.securityHandler is read-only");\n  }\n\n  get selectedAnnots() {\n    return [];\n  }\n\n  set selectedAnnots(_) {\n    throw new Error("doc.selectedAnnots is read-only");\n  }\n\n  get sounds() {\n    return [];\n  }\n\n  set sounds(_) {\n    throw new Error("doc.sounds is read-only");\n  }\n\n  get spellDictionaryOrder() {\n    return this._spellDictionaryOrder;\n  }\n\n  set spellDictionaryOrder(spellDictionaryOrder) {\n    this._spellDictionaryOrder = spellDictionaryOrder;\n  }\n\n  get spellLanguageOrder() {\n    return this._spellLanguageOrder;\n  }\n\n  set spellLanguageOrder(spellLanguageOrder) {\n    this._spellLanguageOrder = spellLanguageOrder;\n  }\n\n  get subject() {\n    return this._subject;\n  }\n\n  set subject(_) {\n    throw new Error("doc.subject is read-only");\n  }\n\n  get templates() {\n    return [];\n  }\n\n  set templates(_) {\n    throw new Error("doc.templates is read-only");\n  }\n\n  get title() {\n    return this._title;\n  }\n\n  set title(_) {\n    throw new Error("doc.title is read-only");\n  }\n\n  get URL() {\n    return this._URL;\n  }\n\n  set URL(_) {\n    throw new Error("doc.URL is read-only");\n  }\n\n  get viewState() {\n    return undefined;\n  }\n\n  set viewState(_) {\n    throw new Error("doc.viewState is read-only");\n  }\n\n  get xfa() {\n    return this._xfa;\n  }\n\n  set xfa(_) {\n    throw new Error("doc.xfa is read-only");\n  }\n\n  get XFAForeground() {\n    return false;\n  }\n\n  set XFAForeground(_) {\n    throw new Error("doc.XFAForeground is read-only");\n  }\n\n  get zoomType() {\n    return this._zoomType;\n  }\n\n  set zoomType(type) {\n    if (typeof type !== "string") {\n      return;\n    }\n\n    switch (type) {\n      case _constants.ZoomType.none:\n        this._send({\n          command: "zoom",\n          value: 1\n        });\n\n        break;\n\n      case _constants.ZoomType.fitP:\n        this._send({\n          command: "zoom",\n          value: "page-fit"\n        });\n\n        break;\n\n      case _constants.ZoomType.fitW:\n        this._send({\n          command: "zoom",\n          value: "page-width"\n        });\n\n        break;\n\n      case _constants.ZoomType.fitH:\n        this._send({\n          command: "zoom",\n          value: "page-height"\n        });\n\n        break;\n\n      case _constants.ZoomType.fitV:\n        this._send({\n          command: "zoom",\n          value: "auto"\n        });\n\n        break;\n\n      case _constants.ZoomType.pref:\n      case _constants.ZoomType.refW:\n        break;\n\n      default:\n        return;\n    }\n\n    this._zoomType = type;\n  }\n\n  get zoom() {\n    return this._zoom;\n  }\n\n  set zoom(value) {\n    if (typeof value !== "number" || value < 8.33 || value > 6400) {\n      return;\n    }\n\n    this._send({\n      command: "zoom",\n      value: value / 100\n    });\n  }\n\n  addAnnot() {}\n\n  addField() {}\n\n  addIcon() {}\n\n  addLink() {}\n\n  addRecipientListCryptFilter() {}\n\n  addRequirement() {}\n\n  addScript() {}\n\n  addThumbnails() {}\n\n  addWatermarkFromFile() {}\n\n  addWatermarkFromText() {}\n\n  addWeblinks() {}\n\n  bringToFront() {}\n\n  calculateNow() {\n    this._eventDispatcher.calculateNow();\n  }\n\n  closeDoc() {}\n\n  colorConvertPage() {}\n\n  createDataObject() {}\n\n  createTemplate() {}\n\n  deletePages() {}\n\n  deleteSound() {}\n\n  embedDocAsDataObject() {}\n\n  embedOutputIntent() {}\n\n  encryptForRecipients() {}\n\n  encryptUsingPolicy() {}\n\n  exportAsFDF() {}\n\n  exportAsFDFStr() {}\n\n  exportAsText() {}\n\n  exportAsXFDF() {}\n\n  exportAsXFDFStr() {}\n\n  exportDataObject() {}\n\n  exportXFAData() {}\n\n  extractPages() {}\n\n  flattenPages() {}\n\n  getAnnot() {}\n\n  getAnnots() {}\n\n  getAnnot3D() {}\n\n  getAnnots3D() {}\n\n  getColorConvertAction() {}\n\n  getDataObject() {}\n\n  getDataObjectContents() {}\n\n  getField(cName) {\n    if (typeof cName === "object") {\n      cName = cName.cName;\n    }\n\n    if (typeof cName !== "string") {\n      throw new TypeError("Invalid field name: must be a string");\n    }\n\n    const searchedField = this._fields.get(cName);\n\n    if (searchedField) {\n      return searchedField;\n    }\n\n    const parts = cName.split("#");\n    let childIndex = NaN;\n\n    if (parts.length === 2) {\n      childIndex = Math.floor(parseFloat(parts[1]));\n      cName = parts[0];\n    }\n\n    for (const [name, field] of this._fields.entries()) {\n      if (name.endsWith(cName)) {\n        if (!isNaN(childIndex)) {\n          const children = this._getChildren(name);\n\n          if (childIndex < 0 || childIndex >= children.length) {\n            childIndex = 0;\n          }\n\n          if (childIndex < children.length) {\n            this._fields.set(cName, children[childIndex]);\n\n            return children[childIndex];\n          }\n        }\n\n        this._fields.set(cName, field);\n\n        return field;\n      }\n    }\n\n    return null;\n  }\n\n  _getChildren(fieldName) {\n    const len = fieldName.length;\n    const children = [];\n    const pattern = /^\\.[^.]+$/;\n\n    for (const [name, field] of this._fields.entries()) {\n      if (name.startsWith(fieldName)) {\n        const finalPart = name.slice(len);\n\n        if (finalPart.match(pattern)) {\n          children.push(field);\n        }\n      }\n    }\n\n    return children;\n  }\n\n  getIcon() {}\n\n  getLegalWarnings() {}\n\n  getLinks() {}\n\n  getNthFieldName(nIndex) {\n    if (typeof nIndex === "object") {\n      nIndex = nIndex.nIndex;\n    }\n\n    if (typeof nIndex !== "number") {\n      throw new TypeError("Invalid field index: must be a number");\n    }\n\n    if (0 <= nIndex && nIndex < this.numFields) {\n      return this._fieldNames[Math.trunc(nIndex)];\n    }\n\n    return null;\n  }\n\n  getNthTemplate() {\n    return null;\n  }\n\n  getOCGs() {}\n\n  getOCGOrder() {}\n\n  getPageBox() {}\n\n  getPageLabel() {}\n\n  getPageNthWord() {}\n\n  getPageNthWordQuads() {}\n\n  getPageNumWords() {}\n\n  getPageRotation() {}\n\n  getPageTransition() {}\n\n  getPrintParams() {\n    if (!this._printParams) {\n      this._printParams = new _print_params.PrintParams({\n        lastPage: this._numPages - 1\n      });\n    }\n\n    return this._printParams;\n  }\n\n  getSound() {}\n\n  getTemplate() {}\n\n  getURL() {}\n\n  gotoNamedDest() {}\n\n  importAnFDF() {}\n\n  importAnXFDF() {}\n\n  importDataObject() {}\n\n  importIcon() {}\n\n  importSound() {}\n\n  importTextData() {}\n\n  importXFAData() {}\n\n  insertPages() {}\n\n  mailDoc() {}\n\n  mailForm() {}\n\n  movePage() {}\n\n  newPage() {}\n\n  openDataObject() {}\n\n  print(bUI = true, nStart = 0, nEnd = -1, bSilent = false, bShrinkToFit = false, bPrintAsImage = false, bReverse = false, bAnnotations = true, printParams = null) {\n    if (typeof bUI === "object") {\n      nStart = bUI.nStart;\n      nEnd = bUI.nEnd;\n      bSilent = bUI.bSilent;\n      bShrinkToFit = bUI.bShrinkToFit;\n      bPrintAsImage = bUI.bPrintAsImage;\n      bReverse = bUI.bReverse;\n      bAnnotations = bUI.bAnnotations;\n      printParams = bUI.printParams;\n      bUI = bUI.bUI;\n    }\n\n    if (printParams) {\n      nStart = printParams.firstPage;\n      nEnd = printParams.lastPage;\n    }\n\n    if (typeof nStart === "number") {\n      nStart = Math.max(0, Math.trunc(nStart));\n    } else {\n      nStart = 0;\n    }\n\n    if (typeof nEnd === "number") {\n      nEnd = Math.max(0, Math.trunc(nEnd));\n    } else {\n      nEnd = -1;\n    }\n\n    this._send({\n      command: "print",\n      start: nStart,\n      end: nEnd\n    });\n  }\n\n  removeDataObject() {}\n\n  removeField() {}\n\n  removeIcon() {}\n\n  removeLinks() {}\n\n  removeRequirement() {}\n\n  removeScript() {}\n\n  removeTemplate() {}\n\n  removeThumbnails() {}\n\n  removeWeblinks() {}\n\n  replacePages() {}\n\n  resetForm(aFields = null) {\n    if (aFields && !Array.isArray(aFields) && typeof aFields === "object") {\n      aFields = aFields.aFields;\n    }\n\n    let mustCalculate = false;\n\n    if (aFields) {\n      for (const fieldName of aFields) {\n        if (!fieldName) {\n          continue;\n        }\n\n        const field = this.getField(fieldName);\n\n        if (!field) {\n          continue;\n        }\n\n        field.value = field.defaultValue;\n        field.valueAsString = field.value;\n        mustCalculate = true;\n      }\n    } else {\n      mustCalculate = this._fields.size !== 0;\n\n      for (const field of this._fields.values()) {\n        field.value = field.defaultValue;\n        field.valueAsString = field.value;\n      }\n    }\n\n    if (mustCalculate) {\n      this.calculateNow();\n    }\n  }\n\n  saveAs() {}\n\n  scroll() {}\n\n  selectPageNthWord() {}\n\n  setAction() {}\n\n  setDataObjectContents() {}\n\n  setOCGOrder() {}\n\n  setPageAction() {}\n\n  setPageBoxes() {}\n\n  setPageLabels() {}\n\n  setPageRotations() {}\n\n  setPageTabOrder() {}\n\n  setPageTransitions() {}\n\n  spawnPageFromTemplate() {}\n\n  submitForm() {}\n\n  syncAnnotScan() {}\n\n}\n\nexports.Doc = Doc;\n\n/***/ }),\n/* 15 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.PrintParams = void 0;\n\nclass PrintParams {\n  constructor(data) {\n    this.binaryOk = true;\n    this.bitmapDPI = 150;\n    this.booklet = {\n      binding: 0,\n      duplexMode: 0,\n      subsetFrom: 0,\n      subsetTo: -1\n    };\n    this.colorOverride = 0;\n    this.colorProfile = "";\n    this.constants = Object.freeze({\n      bookletBindings: Object.freeze({\n        Left: 0,\n        Right: 1,\n        LeftTall: 2,\n        RightTall: 3\n      }),\n      bookletDuplexMode: Object.freeze({\n        BothSides: 0,\n        FrontSideOnly: 1,\n        BasicSideOnly: 2\n      }),\n      colorOverrides: Object.freeze({\n        auto: 0,\n        gray: 1,\n        mono: 2\n      }),\n      fontPolicies: Object.freeze({\n        everyPage: 0,\n        jobStart: 1,\n        pageRange: 2\n      }),\n      handling: Object.freeze({\n        none: 0,\n        fit: 1,\n        shrink: 2,\n        tileAll: 3,\n        tileLarge: 4,\n        nUp: 5,\n        booklet: 6\n      }),\n      interactionLevel: Object.freeze({\n        automatic: 0,\n        full: 1,\n        silent: 2\n      }),\n      nUpPageOrders: Object.freeze({\n        Horizontal: 0,\n        HorizontalReversed: 1,\n        Vertical: 2\n      }),\n      printContents: Object.freeze({\n        doc: 0,\n        docAndComments: 1,\n        formFieldsOnly: 2\n      }),\n      flagValues: Object.freeze({\n        applyOverPrint: 1,\n        applySoftProofSettings: 1 << 1,\n        applyWorkingColorSpaces: 1 << 2,\n        emitHalftones: 1 << 3,\n        emitPostScriptXObjects: 1 << 4,\n        emitFormsAsPSForms: 1 << 5,\n        maxJP2KRes: 1 << 6,\n        setPageSize: 1 << 7,\n        suppressBG: 1 << 8,\n        suppressCenter: 1 << 9,\n        suppressCJKFontSubst: 1 << 10,\n        suppressCropClip: 1 << 1,\n        suppressRotate: 1 << 12,\n        suppressTransfer: 1 << 13,\n        suppressUCR: 1 << 14,\n        useTrapAnnots: 1 << 15,\n        usePrintersMarks: 1 << 16\n      }),\n      rasterFlagValues: Object.freeze({\n        textToOutline: 1,\n        strokesToOutline: 1 << 1,\n        allowComplexClip: 1 << 2,\n        preserveOverprint: 1 << 3\n      }),\n      subsets: Object.freeze({\n        all: 0,\n        even: 1,\n        odd: 2\n      }),\n      tileMarks: Object.freeze({\n        none: 0,\n        west: 1,\n        east: 2\n      }),\n      usages: Object.freeze({\n        auto: 0,\n        use: 1,\n        noUse: 2\n      })\n    });\n    this.downloadFarEastFonts = false;\n    this.fileName = "";\n    this.firstPage = 0;\n    this.flags = 0;\n    this.fontPolicy = 0;\n    this.gradientDPI = 150;\n    this.interactive = 1;\n    this.lastPage = data.lastPage;\n    this.npUpAutoRotate = false;\n    this.npUpNumPagesH = 2;\n    this.npUpNumPagesV = 2;\n    this.npUpPageBorder = false;\n    this.npUpPageOrder = 0;\n    this.pageHandling = 0;\n    this.pageSubset = 0;\n    this.printAsImage = false;\n    this.printContent = 0;\n    this.printerName = "";\n    this.psLevel = 0;\n    this.rasterFlags = 0;\n    this.reversePages = false;\n    this.tileLabel = false;\n    this.tileMark = 0;\n    this.tileOverlap = 0;\n    this.tileScale = 1.0;\n    this.transparencyLevel = 75;\n    this.usePrinterCRD = 0;\n    this.useT1Conversion = 0;\n  }\n\n}\n\nexports.PrintParams = PrintParams;\n\n/***/ }),\n/* 16 */\n/***/ ((__unused_webpack_module, exports) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.ProxyHandler = void 0;\n\nclass ProxyHandler {\n  constructor() {\n    this.nosend = new Set(["delay"]);\n  }\n\n  get(obj, prop) {\n    if (prop in obj._expandos) {\n      const val = obj._expandos[prop];\n\n      if (typeof val === "function") {\n        return val.bind(obj);\n      }\n\n      return val;\n    }\n\n    if (typeof prop === "string" && !prop.startsWith("_") && prop in obj) {\n      const val = obj[prop];\n\n      if (typeof val === "function") {\n        return val.bind(obj);\n      }\n\n      return val;\n    }\n\n    return undefined;\n  }\n\n  set(obj, prop, value) {\n    if (obj._kidIds) {\n      obj._kidIds.forEach(id => {\n        obj._appObjects[id].wrapped[prop] = value;\n      });\n    }\n\n    if (typeof prop === "string" && !prop.startsWith("_") && prop in obj) {\n      const old = obj[prop];\n      obj[prop] = value;\n\n      if (!this.nosend.has(prop) && obj._send && obj._id !== null && typeof old !== "function") {\n        const data = {\n          id: obj._id\n        };\n        data[prop] = obj[prop];\n\n        if (!obj._siblings) {\n          obj._send(data);\n        } else {\n          data.siblings = obj._siblings;\n\n          obj._send(data);\n        }\n      }\n    } else {\n      obj._expandos[prop] = value;\n    }\n\n    return true;\n  }\n\n  has(obj, prop) {\n    return prop in obj._expandos || typeof prop === "string" && !prop.startsWith("_") && prop in obj;\n  }\n\n  getPrototypeOf(obj) {\n    return null;\n  }\n\n  setPrototypeOf(obj, proto) {\n    return false;\n  }\n\n  isExtensible(obj) {\n    return true;\n  }\n\n  preventExtensions(obj) {\n    return false;\n  }\n\n  getOwnPropertyDescriptor(obj, prop) {\n    if (prop in obj._expandos) {\n      return {\n        configurable: true,\n        enumerable: true,\n        value: obj._expandos[prop]\n      };\n    }\n\n    if (typeof prop === "string" && !prop.startsWith("_") && prop in obj) {\n      return {\n        configurable: true,\n        enumerable: true,\n        value: obj[prop]\n      };\n    }\n\n    return undefined;\n  }\n\n  defineProperty(obj, key, descriptor) {\n    Object.defineProperty(obj._expandos, key, descriptor);\n    return true;\n  }\n\n  deleteProperty(obj, prop) {\n    if (prop in obj._expandos) {\n      delete obj._expandos[prop];\n    }\n  }\n\n  ownKeys(obj) {\n    const fromExpandos = Reflect.ownKeys(obj._expandos);\n    const fromObj = Reflect.ownKeys(obj).filter(k => !k.startsWith("_"));\n    return fromExpandos.concat(fromObj);\n  }\n\n}\n\nexports.ProxyHandler = ProxyHandler;\n\n/***/ }),\n/* 17 */\n/***/ ((__unused_webpack_module, exports, __w_pdfjs_require__) => {\n\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nexports.Util = void 0;\n\nvar _pdf_object = __w_pdfjs_require__(7);\n\nclass Util extends _pdf_object.PDFObject {\n  constructor(data) {\n    super(data);\n    this._scandCache = new Map();\n    this._months = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];\n    this._days = ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"];\n    this.MILLISECONDS_IN_DAY = 86400000;\n    this.MILLISECONDS_IN_WEEK = 604800000;\n    this._externalCall = data.externalCall;\n  }\n\n  printf(...args) {\n    if (args.length === 0) {\n      throw new Error("Invalid number of params in printf");\n    }\n\n    if (typeof args[0] !== "string") {\n      throw new TypeError("First argument of printf must be a string");\n    }\n\n    const pattern = /%(,[0-4])?([+ 0#]+)?([0-9]+)?(\\.[0-9]+)?(.)/g;\n    const PLUS = 1;\n    const SPACE = 2;\n    const ZERO = 4;\n    const HASH = 8;\n    let i = 0;\n    return args[0].replace(pattern, function (match, nDecSep, cFlags, nWidth, nPrecision, cConvChar) {\n      if (cConvChar !== "d" && cConvChar !== "f" && cConvChar !== "s" && cConvChar !== "x") {\n        const buf = ["%"];\n\n        for (const str of [nDecSep, cFlags, nWidth, nPrecision, cConvChar]) {\n          if (str) {\n            buf.push(str);\n          }\n        }\n\n        return buf.join("");\n      }\n\n      i++;\n\n      if (i === args.length) {\n        throw new Error("Not enough arguments in printf");\n      }\n\n      const arg = args[i];\n\n      if (cConvChar === "s") {\n        return arg.toString();\n      }\n\n      let flags = 0;\n\n      if (cFlags) {\n        for (const flag of cFlags) {\n          switch (flag) {\n            case "+":\n              flags |= PLUS;\n              break;\n\n            case " ":\n              flags |= SPACE;\n              break;\n\n            case "0":\n              flags |= ZERO;\n              break;\n\n            case "#":\n              flags |= HASH;\n              break;\n          }\n        }\n      }\n\n      cFlags = flags;\n\n      if (nWidth) {\n        nWidth = parseInt(nWidth);\n      }\n\n      let intPart = Math.trunc(arg);\n\n      if (cConvChar === "x") {\n        let hex = Math.abs(intPart).toString(16).toUpperCase();\n\n        if (nWidth !== undefined) {\n          hex = hex.padStart(nWidth, cFlags & ZERO ? "0" : " ");\n        }\n\n        if (cFlags & HASH) {\n          hex = `0x${hex}`;\n        }\n\n        return hex;\n      }\n\n      if (nPrecision) {\n        nPrecision = parseInt(nPrecision.substring(1));\n      }\n\n      nDecSep = nDecSep ? nDecSep.substring(1) : "0";\n      const separators = {\n        0: [",", "."],\n        1: ["", "."],\n        2: [".", ","],\n        3: ["", ","],\n        4: ["\'", "."]\n      };\n      const [thousandSep, decimalSep] = separators[nDecSep];\n      let decPart = "";\n\n      if (cConvChar === "f") {\n        if (nPrecision !== undefined) {\n          decPart = Math.abs(arg - intPart).toFixed(nPrecision);\n        } else {\n          decPart = Math.abs(arg - intPart).toString();\n        }\n\n        if (decPart.length > 2) {\n          decPart = `${decimalSep}${decPart.substring(2)}`;\n        } else if (cFlags & HASH) {\n          decPart = ".";\n        } else {\n          decPart = "";\n        }\n      }\n\n      let sign = "";\n\n      if (intPart < 0) {\n        sign = "-";\n        intPart = -intPart;\n      } else if (cFlags & PLUS) {\n        sign = "+";\n      } else if (cFlags & SPACE) {\n        sign = " ";\n      }\n\n      if (thousandSep && intPart >= 1000) {\n        const buf = [];\n\n        while (true) {\n          buf.push((intPart % 1000).toString().padStart(3, "0"));\n          intPart = Math.trunc(intPart / 1000);\n\n          if (intPart < 1000) {\n            buf.push(intPart.toString());\n            break;\n          }\n        }\n\n        intPart = buf.reverse().join(thousandSep);\n      } else {\n        intPart = intPart.toString();\n      }\n\n      let n = `${intPart}${decPart}`;\n\n      if (nWidth !== undefined) {\n        n = n.padStart(nWidth - sign.length, cFlags & ZERO ? "0" : " ");\n      }\n\n      return `${sign}${n}`;\n    });\n  }\n\n  iconStreamFromIcon() {}\n\n  printd(cFormat, oDate) {\n    switch (cFormat) {\n      case 0:\n        return this.printd("D:yyyymmddHHMMss", oDate);\n\n      case 1:\n        return this.printd("yyyy.mm.dd HH:MM:ss", oDate);\n\n      case 2:\n        return this.printd("m/d/yy h:MM:ss tt", oDate);\n    }\n\n    const handlers = {\n      mmmm: data => {\n        return this._months[data.month];\n      },\n      mmm: data => {\n        return this._months[data.month].substring(0, 3);\n      },\n      mm: data => {\n        return (data.month + 1).toString().padStart(2, "0");\n      },\n      m: data => {\n        return (data.month + 1).toString();\n      },\n      dddd: data => {\n        return this._days[data.dayOfWeek];\n      },\n      ddd: data => {\n        return this._days[data.dayOfWeek].substring(0, 3);\n      },\n      dd: data => {\n        return data.day.toString().padStart(2, "0");\n      },\n      d: data => {\n        return data.day.toString();\n      },\n      yyyy: data => {\n        return data.year.toString();\n      },\n      yy: data => {\n        return (data.year % 100).toString().padStart(2, "0");\n      },\n      HH: data => {\n        return data.hours.toString().padStart(2, "0");\n      },\n      H: data => {\n        return data.hours.toString();\n      },\n      hh: data => {\n        return (1 + (data.hours + 11) % 12).toString().padStart(2, "0");\n      },\n      h: data => {\n        return (1 + (data.hours + 11) % 12).toString();\n      },\n      MM: data => {\n        return data.minutes.toString().padStart(2, "0");\n      },\n      M: data => {\n        return data.minutes.toString();\n      },\n      ss: data => {\n        return data.seconds.toString().padStart(2, "0");\n      },\n      s: data => {\n        return data.seconds.toString();\n      },\n      tt: data => {\n        return data.hours < 12 ? "am" : "pm";\n      },\n      t: data => {\n        return data.hours < 12 ? "a" : "p";\n      }\n    };\n    const data = {\n      year: oDate.getFullYear(),\n      month: oDate.getMonth(),\n      day: oDate.getDate(),\n      dayOfWeek: oDate.getDay(),\n      hours: oDate.getHours(),\n      minutes: oDate.getMinutes(),\n      seconds: oDate.getSeconds()\n    };\n    const patterns = /(mmmm|mmm|mm|m|dddd|ddd|dd|d|yyyy|yy|HH|H|hh|h|MM|M|ss|s|tt|t|\\\\.)/g;\n    return cFormat.replace(patterns, function (match, pattern) {\n      if (pattern in handlers) {\n        return handlers[pattern](data);\n      }\n\n      return pattern.charCodeAt(1);\n    });\n  }\n\n  printx(cFormat, cSource) {\n    const handlers = [x => x, x => x.toUpperCase(), x => x.toLowerCase()];\n    const buf = [];\n    let i = 0;\n    const ii = cSource.length;\n    let currCase = handlers[0];\n    let escaped = false;\n\n    for (const command of cFormat) {\n      if (escaped) {\n        buf.push(command);\n        escaped = false;\n        continue;\n      }\n\n      if (i >= ii) {\n        break;\n      }\n\n      switch (command) {\n        case "?":\n          buf.push(currCase(cSource.charAt(i++)));\n          break;\n\n        case "X":\n          while (i < ii) {\n            const char = cSource.charAt(i++);\n\n            if ("a" <= char && char <= "z" || "A" <= char && char <= "Z" || "0" <= char && char <= "9") {\n              buf.push(currCase(char));\n              break;\n            }\n          }\n\n          break;\n\n        case "A":\n          while (i < ii) {\n            const char = cSource.charAt(i++);\n\n            if ("a" <= char && char <= "z" || "A" <= char && char <= "Z") {\n              buf.push(currCase(char));\n              break;\n            }\n          }\n\n          break;\n\n        case "9":\n          while (i < ii) {\n            const char = cSource.charAt(i++);\n\n            if ("0" <= char && char <= "9") {\n              buf.push(char);\n              break;\n            }\n          }\n\n          break;\n\n        case "*":\n          while (i < ii) {\n            buf.push(currCase(cSource.charAt(i++)));\n          }\n\n          break;\n\n        case "\\\\":\n          escaped = true;\n          break;\n\n        case ">":\n          currCase = handlers[1];\n          break;\n\n        case "<":\n          currCase = handlers[2];\n          break;\n\n        case "=":\n          currCase = handlers[0];\n          break;\n\n        default:\n          buf.push(command);\n      }\n    }\n\n    return buf.join("");\n  }\n\n  scand(cFormat, cDate) {\n    if (cDate === "") {\n      return new Date();\n    }\n\n    switch (cFormat) {\n      case 0:\n        return this.scand("D:yyyymmddHHMMss", cDate);\n\n      case 1:\n        return this.scand("yyyy.mm.dd HH:MM:ss", cDate);\n\n      case 2:\n        return this.scand("m/d/yy h:MM:ss tt", cDate);\n    }\n\n    if (!this._scandCache.has(cFormat)) {\n      const months = this._months;\n      const days = this._days;\n      const handlers = {\n        mmmm: {\n          pattern: `(${months.join("|")})`,\n          action: (value, data) => {\n            data.month = months.indexOf(value);\n          }\n        },\n        mmm: {\n          pattern: `(${months.map(month => month.substring(0, 3)).join("|")})`,\n          action: (value, data) => {\n            data.month = months.findIndex(month => month.substring(0, 3) === value);\n          }\n        },\n        mm: {\n          pattern: `([0-9]{2})`,\n          action: (value, data) => {\n            data.month = parseInt(value) - 1;\n          }\n        },\n        m: {\n          pattern: `([0-9]{1,2})`,\n          action: (value, data) => {\n            data.month = parseInt(value) - 1;\n          }\n        },\n        dddd: {\n          pattern: `(${days.join("|")})`,\n          action: (value, data) => {\n            data.day = days.indexOf(value);\n          }\n        },\n        ddd: {\n          pattern: `(${days.map(day => day.substring(0, 3)).join("|")})`,\n          action: (value, data) => {\n            data.day = days.findIndex(day => day.substring(0, 3) === value);\n          }\n        },\n        dd: {\n          pattern: "([0-9]{2})",\n          action: (value, data) => {\n            data.day = parseInt(value);\n          }\n        },\n        d: {\n          pattern: "([0-9]{1,2})",\n          action: (value, data) => {\n            data.day = parseInt(value);\n          }\n        },\n        yyyy: {\n          pattern: "([0-9]{4})",\n          action: (value, data) => {\n            data.year = parseInt(value);\n          }\n        },\n        yy: {\n          pattern: "([0-9]{2})",\n          action: (value, data) => {\n            data.year = 2000 + parseInt(value);\n          }\n        },\n        HH: {\n          pattern: "([0-9]{2})",\n          action: (value, data) => {\n            data.hours = parseInt(value);\n          }\n        },\n        H: {\n          pattern: "([0-9]{1,2})",\n          action: (value, data) => {\n            data.hours = parseInt(value);\n          }\n        },\n        hh: {\n          pattern: "([0-9]{2})",\n          action: (value, data) => {\n            data.hours = parseInt(value);\n          }\n        },\n        h: {\n          pattern: "([0-9]{1,2})",\n          action: (value, data) => {\n            data.hours = parseInt(value);\n          }\n        },\n        MM: {\n          pattern: "([0-9]{2})",\n          action: (value, data) => {\n            data.minutes = parseInt(value);\n          }\n        },\n        M: {\n          pattern: "([0-9]{1,2})",\n          action: (value, data) => {\n            data.minutes = parseInt(value);\n          }\n        },\n        ss: {\n          pattern: "([0-9]{2})",\n          action: (value, data) => {\n            data.seconds = parseInt(value);\n          }\n        },\n        s: {\n          pattern: "([0-9]{1,2})",\n          action: (value, data) => {\n            data.seconds = parseInt(value);\n          }\n        },\n        tt: {\n          pattern: "([aApP][mM])",\n          action: (value, data) => {\n            const char = value.charAt(0);\n            data.am = char === "a" || char === "A";\n          }\n        },\n        t: {\n          pattern: "([aApP])",\n          action: (value, data) => {\n            data.am = value === "a" || value === "A";\n          }\n        }\n      };\n      const escapedFormat = cFormat.replace(/[.*+\\-?^${}()|[\\]\\\\]/g, "\\\\$&");\n      const patterns = /(mmmm|mmm|mm|m|dddd|ddd|dd|d|yyyy|yy|HH|H|hh|h|MM|M|ss|s|tt|t)/g;\n      const actions = [];\n      const re = escapedFormat.replace(patterns, function (match, patternElement) {\n        const {\n          pattern,\n          action\n        } = handlers[patternElement];\n        actions.push(action);\n        return pattern;\n      });\n\n      this._scandCache.set(cFormat, [re, actions]);\n    }\n\n    const [re, actions] = this._scandCache.get(cFormat);\n\n    const matches = new RegExp(re, "g").exec(cDate);\n\n    if (!matches || matches.length !== actions.length + 1) {\n      return null;\n    }\n\n    const data = {\n      year: 0,\n      month: 0,\n      day: 0,\n      hours: 0,\n      minutes: 0,\n      seconds: 0,\n      am: null\n    };\n    actions.forEach((action, i) => action(matches[i + 1], data));\n\n    if (data.am !== null) {\n      data.hours = data.hours % 12 + (data.am ? 0 : 12);\n    }\n\n    return new Date(data.year, data.month, data.day, data.hours, data.minutes, data.seconds);\n  }\n\n  spansToXML() {}\n\n  stringFromStream() {}\n\n  xmlToSpans() {}\n\n}\n\nexports.Util = Util;\n\n/***/ })\n/******/ \t]);\n/************************************************************************/\n/******/ \t// The module cache\n/******/ \tvar __webpack_module_cache__ = {};\n/******/ \t\n/******/ \t// The require function\n/******/ \tfunction __w_pdfjs_require__(moduleId) {\n/******/ \t\t// Check if module is in cache\n/******/ \t\tvar cachedModule = __webpack_module_cache__[moduleId];\n/******/ \t\tif (cachedModule !== undefined) {\n/******/ \t\t\treturn cachedModule.exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = __webpack_module_cache__[moduleId] = {\n/******/ \t\t\t// no module.id needed\n/******/ \t\t\t// no module.loaded needed\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/ \t\n/******/ \t\t// Execute the module function\n/******/ \t\t__webpack_modules__[moduleId](module, module.exports, __w_pdfjs_require__);\n/******/ \t\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/ \t\n/************************************************************************/\nvar __webpack_exports__ = {};\n// This entry need to be wrapped in an IIFE because it need to be isolated against other modules in the chunk.\n(() => {\nvar exports = __webpack_exports__;\n\n\nObject.defineProperty(exports, "__esModule", ({\n  value: true\n}));\nObject.defineProperty(exports, "initSandbox", ({\n  enumerable: true,\n  get: function () {\n    return _initialization.initSandbox;\n  }\n}));\n\nvar _initialization = __w_pdfjs_require__(1);\n\nconst pdfjsVersion = \'2.10.377\';\nconst pdfjsBuild = \'156762c48\';\n})();\n\n/******/ \treturn __webpack_exports__;\n/******/ })()\n;\n});'];
    code.push("delete dump;");
    let success = false;
    let buf = 0;

    try {
      const sandboxData = JSON.stringify(data);
      code.push(`pdfjsScripting.initSandbox({ data: ${sandboxData} })`);
      buf = this._module.stringToNewUTF8(code.join("\n"));
      success = !!this._module.ccall("init", "number", ["number", "number"], [buf, this._alertOnError]);
    } catch (error) {
      console.error(error);
    } finally {
      if (buf) {
        this._module.ccall("free", "number", ["number"], [buf]);
      }
    }

    if (success) {
      this.support.commFun = this._module.cwrap("commFun", null, ["string", "string"]);
    } else {
      this.nukeSandbox();
      throw new Error("Cannot start sandbox");
    }
  }

  dispatchEvent(event) {
    this.support.callSandboxFunction("dispatchEvent", event);
  }

  dumpMemoryUse() {
    if (this._module) {
      this._module.ccall("dumpMemoryUse", null, []);
    }
  }

  nukeSandbox() {
    if (this._module !== null) {
      this.support.destroy();
      this.support = null;

      this._module.ccall("nukeSandbox", null, []);

      this._module = null;
    }
  }

  evalForTesting(code, key) {
    throw new Error("Not implemented: evalForTesting");
  }

}

function QuickJSSandbox() {
  return (0, _quickjsEval.default)().then(module => {
    return new Sandbox(window, module);
  });
}
})();

/******/ 	return __webpack_exports__;
/******/ })()
;
});
//# sourceMappingURL=pdf.sandbox.js.map